solid-logic 3.0.9-c8d34ed5 → 3.0.9-dad75a1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -2
- package/dist/acl/aclLogic.d.ts +5 -0
- package/{lib → dist}/acl/aclLogic.d.ts.map +1 -1
- package/{lib → dist}/authSession/authSession.d.ts.map +1 -1
- package/{lib → dist}/authn/SolidAuthnLogic.d.ts +3 -3
- package/{lib → dist}/authn/SolidAuthnLogic.d.ts.map +1 -1
- package/{lib → dist}/authn/authUtil.d.ts +1 -1
- package/{lib → dist}/chat/chatLogic.d.ts +1 -1
- package/{lib → dist}/inbox/inboxLogic.d.ts +1 -1
- package/{lib → dist}/inbox/inboxLogic.d.ts.map +1 -1
- package/{lib → dist}/index.d.ts +1 -1
- package/{lib → dist}/index.d.ts.map +1 -1
- package/{lib → dist}/logic/CustomError.d.ts.map +1 -1
- package/dist/logic/solidLogic.d.ts +6 -0
- package/{lib → dist}/logic/solidLogic.d.ts.map +1 -1
- package/{lib → dist}/profile/profileLogic.d.ts +1 -1
- package/dist/solid-logic.js +35 -0
- package/dist/solid-logic.js.map +1 -0
- package/{lib → dist}/types.d.ts +2 -2
- package/{lib → dist}/util/containerLogic.d.ts +1 -1
- package/{lib → dist}/util/containerLogic.d.ts.map +1 -1
- package/dist/util/debug.d.ts.map +1 -0
- package/{lib → dist}/util/utilityLogic.d.ts +1 -1
- package/{lib → dist}/util/utilityLogic.d.ts.map +1 -1
- package/{lib → dist}/util/utils.d.ts +1 -1
- package/{lib → dist}/util/utils.d.ts.map +1 -1
- package/package.json +51 -18
- package/eslint.config.js +0 -29
- package/jest.config.js +0 -10
- package/lib/acl/aclLogic.d.ts +0 -5
- package/lib/acl/aclLogic.js +0 -168
- package/lib/acl/aclLogic.js.map +0 -1
- package/lib/authSession/authSession.js +0 -6
- package/lib/authSession/authSession.js.map +0 -1
- package/lib/authn/SolidAuthnLogic.js +0 -193
- package/lib/authn/SolidAuthnLogic.js.map +0 -1
- package/lib/authn/authUtil.js +0 -105
- package/lib/authn/authUtil.js.map +0 -1
- package/lib/chat/chatLogic.js +0 -272
- package/lib/chat/chatLogic.js.map +0 -1
- package/lib/inbox/inboxLogic.js +0 -139
- package/lib/inbox/inboxLogic.js.map +0 -1
- package/lib/index.js +0 -29
- package/lib/index.js.map +0 -1
- package/lib/issuer/issuerLogic.js +0 -52
- package/lib/issuer/issuerLogic.js.map +0 -1
- package/lib/logic/CustomError.js +0 -89
- package/lib/logic/CustomError.js.map +0 -1
- package/lib/logic/solidLogic.d.ts +0 -6
- package/lib/logic/solidLogic.js +0 -102
- package/lib/logic/solidLogic.js.map +0 -1
- package/lib/logic/solidLogicSingleton.js +0 -94
- package/lib/logic/solidLogicSingleton.js.map +0 -1
- package/lib/profile/profileLogic.js +0 -259
- package/lib/profile/profileLogic.js.map +0 -1
- package/lib/typeIndex/typeIndexLogic.js +0 -399
- package/lib/typeIndex/typeIndexLogic.js.map +0 -1
- package/lib/types.js +0 -3
- package/lib/types.js.map +0 -1
- package/lib/util/containerLogic.js +0 -102
- package/lib/util/containerLogic.js.map +0 -1
- package/lib/util/debug.d.ts.map +0 -1
- package/lib/util/debug.js +0 -40
- package/lib/util/debug.js.map +0 -1
- package/lib/util/ns.js +0 -44
- package/lib/util/ns.js.map +0 -1
- package/lib/util/utilityLogic.js +0 -284
- package/lib/util/utilityLogic.js.map +0 -1
- package/lib/util/utils.js +0 -47
- package/lib/util/utils.js.map +0 -1
- package/src/acl/aclLogic.ts +0 -156
- package/src/authSession/authSession.ts +0 -7
- package/src/authn/SolidAuthnLogic.ts +0 -127
- package/src/authn/authUtil.ts +0 -70
- package/src/chat/chatLogic.ts +0 -226
- package/src/inbox/inboxLogic.ts +0 -59
- package/src/index.ts +0 -21
- package/src/issuer/issuerLogic.ts +0 -40
- package/src/logic/CustomError.ts +0 -29
- package/src/logic/solidLogic.ts +0 -76
- package/src/logic/solidLogicSingleton.ts +0 -20
- package/src/profile/profileLogic.ts +0 -125
- package/src/typeIndex/typeIndexLogic.ts +0 -198
- package/src/types.ts +0 -122
- package/src/util/containerLogic.ts +0 -53
- package/src/util/debug.ts +0 -20
- package/src/util/ns.ts +0 -5
- package/src/util/utilityLogic.ts +0 -156
- package/src/util/utils.ts +0 -52
- package/test/aclLogic.test.ts +0 -24
- package/test/authUtil.test.ts +0 -23
- package/test/chatLogic.test.ts +0 -316
- package/test/container.test.ts +0 -58
- package/test/helpers/dataSetup.ts +0 -134
- package/test/helpers/setup.ts +0 -17
- package/test/inboxLogic.test.ts +0 -218
- package/test/logic.test.ts +0 -29
- package/test/profileLogic.test.ts +0 -246
- package/test/solidAuthLogic.test.ts +0 -49
- package/test/typeIndexLogic.test.ts +0 -255
- package/test/utilityLogic.test.ts +0 -179
- package/test/utils.test.ts +0 -32
- package/tsconfig.json +0 -75
- /package/{lib → dist}/authSession/authSession.d.ts +0 -0
- /package/{lib → dist}/authn/authUtil.d.ts.map +0 -0
- /package/{lib → dist}/chat/chatLogic.d.ts.map +0 -0
- /package/{lib → dist}/issuer/issuerLogic.d.ts +0 -0
- /package/{lib → dist}/issuer/issuerLogic.d.ts.map +0 -0
- /package/{lib → dist}/logic/CustomError.d.ts +0 -0
- /package/{lib → dist}/logic/solidLogicSingleton.d.ts +0 -0
- /package/{lib → dist}/logic/solidLogicSingleton.d.ts.map +0 -0
- /package/{lib → dist}/profile/profileLogic.d.ts.map +0 -0
- /package/{lib → dist}/typeIndex/typeIndexLogic.d.ts +0 -0
- /package/{lib → dist}/typeIndex/typeIndexLogic.d.ts.map +0 -0
- /package/{lib → dist}/types.d.ts.map +0 -0
- /package/{lib → dist}/util/debug.d.ts +0 -0
- /package/{lib → dist}/util/ns.d.ts +0 -0
- /package/{lib → dist}/util/ns.d.ts.map +0 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import e,{EventEmitter as t}from"events";import A from"assert";import r from"net";import i from"http";import n from"stream";import a,{Buffer as o}from"buffer";import*as s from"util";import d,{promisify as p}from"util";import l from"querystring";import c from"stream/web";import g from"node:stream";import h from"node:util";import u from"node:events";import E from"worker_threads";import m from"perf_hooks";import C from"util/types";import f from"tls";import Q from"async_hooks";import I from"console";import B from"url";import y from"zlib";import w from"string_decoder";import v from"diagnostics_channel";import S from"punycode";import b from"https";import*as D from"crypto";import{KeyObject as F,createPublicKey as R,createPrivateKey as k,createSecretKey as N,constants as _,generateKeyPair as U}from"crypto";import*as T from"rdflib";import{sym as L,graph as M,Namespace as x,serialize as V,namedNode as H,NamedNode as P,st as J,term as Y}from"rdflib";import G from"solid-namespace";function O(...e){console.log(...e)}function q(...e){console.warn(...e)}var W="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function j(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var K,Z,X,z,$,ee,te,Ae,re,ie,ne={};function ae(){return Z?K:(Z=1,K={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")})}function oe(){if(z)return X;z=1;class e extends Error{constructor(e){super(e),this.name="UndiciError",this.code="UND_ERR"}}class t extends e{constructor(e){super(e),Error.captureStackTrace(this,t),this.name="ConnectTimeoutError",this.message=e||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}}class A extends e{constructor(e){super(e),Error.captureStackTrace(this,A),this.name="HeadersTimeoutError",this.message=e||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}}class r extends e{constructor(e){super(e),Error.captureStackTrace(this,r),this.name="HeadersOverflowError",this.message=e||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}}class i extends e{constructor(e){super(e),Error.captureStackTrace(this,i),this.name="BodyTimeoutError",this.message=e||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}}class n extends e{constructor(e,t,A,r){super(e),Error.captureStackTrace(this,n),this.name="ResponseStatusCodeError",this.message=e||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=r,this.status=t,this.statusCode=t,this.headers=A}}class a extends e{constructor(e){super(e),Error.captureStackTrace(this,a),this.name="InvalidArgumentError",this.message=e||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}}class o extends e{constructor(e){super(e),Error.captureStackTrace(this,o),this.name="InvalidReturnValueError",this.message=e||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}}class s extends e{constructor(e){super(e),Error.captureStackTrace(this,s),this.name="AbortError",this.message=e||"Request aborted",this.code="UND_ERR_ABORTED"}}class d extends e{constructor(e){super(e),Error.captureStackTrace(this,d),this.name="InformationalError",this.message=e||"Request information",this.code="UND_ERR_INFO"}}class p extends e{constructor(e){super(e),Error.captureStackTrace(this,p),this.name="RequestContentLengthMismatchError",this.message=e||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}}class l extends e{constructor(e){super(e),Error.captureStackTrace(this,l),this.name="ResponseContentLengthMismatchError",this.message=e||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}}class c extends e{constructor(e){super(e),Error.captureStackTrace(this,c),this.name="ClientDestroyedError",this.message=e||"The client is destroyed",this.code="UND_ERR_DESTROYED"}}class g extends e{constructor(e){super(e),Error.captureStackTrace(this,g),this.name="ClientClosedError",this.message=e||"The client is closed",this.code="UND_ERR_CLOSED"}}class h extends e{constructor(e,t){super(e),Error.captureStackTrace(this,h),this.name="SocketError",this.message=e||"Socket error",this.code="UND_ERR_SOCKET",this.socket=t}}class u extends e{constructor(e){super(e),Error.captureStackTrace(this,u),this.name="NotSupportedError",this.message=e||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}}class E extends Error{constructor(e,t,A){super(e),Error.captureStackTrace(this,E),this.name="HTTPParserError",this.code=t?`HPE_${t}`:void 0,this.data=A?A.toString():void 0}}class m extends e{constructor(e){super(e),Error.captureStackTrace(this,m),this.name="ResponseExceededMaxSizeError",this.message=e||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}}class C extends e{constructor(e,t,{headers:A,data:r}){super(e),Error.captureStackTrace(this,C),this.name="RequestRetryError",this.message=e||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=t,this.data=r,this.headers=A}}return X={HTTPParserError:E,UndiciError:e,HeadersTimeoutError:A,HeadersOverflowError:r,BodyTimeoutError:i,RequestContentLengthMismatchError:p,ConnectTimeoutError:t,ResponseStatusCodeError:n,InvalidArgumentError:a,InvalidReturnValueError:o,RequestAbortedError:s,ClientDestroyedError:c,ClientClosedError:g,InformationalError:d,SocketError:h,NotSupportedError:u,ResponseContentLengthMismatchError:l,BalancedPoolMissingUpstreamError:class extends e{constructor(e){super(e),Error.captureStackTrace(this,u),this.name="MissingUpstreamError",this.message=e||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}},ResponseExceededMaxSizeError:m,RequestRetryError:C},X}function se(){if(Ae)return te;Ae=1;const e=A,{kDestroyed:t,kBodyUsed:o}=ae(),{IncomingMessage:s}=i,p=n,g=r,{InvalidArgumentError:h}=oe(),{Blob:u}=a,E=d,{stringify:m}=l,{headerNameLowerCasedRecord:C}=function(){if(ee)return $;ee=1;const e={},t=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let A=0;A<t.length;++A){const r=t[A],i=r.toLowerCase();e[r]=e[i]=i}return Object.setPrototypeOf(e,null),$={wellknownHeaderNames:t,headerNameLowerCasedRecord:e}}(),[f,Q]=process.versions.node.split(".").map(e=>Number(e));function I(e){return e&&"object"==typeof e&&"function"==typeof e.pipe&&"function"==typeof e.on}function B(e){return u&&e instanceof u||e&&"object"==typeof e&&("function"==typeof e.stream||"function"==typeof e.arrayBuffer)&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function y(e){if("string"==typeof e){if(e=new URL(e),!/^https?:/.test(e.origin||e.protocol))throw new h("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||"object"!=typeof e)throw new h("Invalid URL: The URL argument must be a non-null object.");if(!/^https?:/.test(e.origin||e.protocol))throw new h("Invalid URL protocol: the URL must start with `http:` or `https:`.");if(!(e instanceof URL)){if(null!=e.port&&""!==e.port&&!Number.isFinite(parseInt(e.port)))throw new h("Invalid URL: port must be a valid integer or a string representation of an integer.");if(null!=e.path&&"string"!=typeof e.path)throw new h("Invalid URL path: the path must be a string or null/undefined.");if(null!=e.pathname&&"string"!=typeof e.pathname)throw new h("Invalid URL pathname: the pathname must be a string or null/undefined.");if(null!=e.hostname&&"string"!=typeof e.hostname)throw new h("Invalid URL hostname: the hostname must be a string or null/undefined.");if(null!=e.origin&&"string"!=typeof e.origin)throw new h("Invalid URL origin: the origin must be a string or null/undefined.");const t=null!=e.port?e.port:"https:"===e.protocol?443:80;let A=null!=e.origin?e.origin:`${e.protocol}//${e.hostname}:${t}`,r=null!=e.path?e.path:`${e.pathname||""}${e.search||""}`;A.endsWith("/")&&(A=A.substring(0,A.length-1)),r&&!r.startsWith("/")&&(r=`/${r}`),e=new URL(A+r)}return e}function w(e){return!e||!(!e.destroyed&&!e[t])}function v(e){const t=e&&e._readableState;return w(e)&&t&&!t.endEmitted}const S=/timeout=(\d+)/;function b(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}let D;const F=!!String.prototype.toWellFormed;const R=Object.create(null);return R.enumerable=!0,te={kEnumerableProperty:R,nop:function(){},isDisturbed:function(e){return!(!e||!(p.isDisturbed?p.isDisturbed(e)||e[o]:e[o]||e.readableDidRead||e._readableState&&e._readableState.dataEmitted||v(e)))},isErrored:function(e){return!(!e||!(p.isErrored?p.isErrored(e):/state: 'errored'/.test(E.inspect(e))))},isReadable:function(e){return!(!e||!(p.isReadable?p.isReadable(e):/state: 'readable'/.test(E.inspect(e))))},toUSVString:function(e){return F?`${e}`.toWellFormed():E.toUSVString?E.toUSVString(e):`${e}`},isReadableAborted:v,isBlobLike:B,parseOrigin:function(e){if("/"!==(e=y(e)).pathname||e.search||e.hash)throw new h("invalid url");return e},parseURL:y,getServerName:function(t){if(!t)return null;e.strictEqual(typeof t,"string");const A=function(t){if("["===t[0]){const A=t.indexOf("]");return e(-1!==A),t.substring(1,A)}const A=t.indexOf(":");return-1===A?t:t.substring(0,A)}(t);return g.isIP(A)?"":A},isStream:I,isIterable:function(e){return!(null==e||"function"!=typeof e[Symbol.iterator]&&"function"!=typeof e[Symbol.asyncIterator])},isAsyncIterable:function(e){return!(null==e||"function"!=typeof e[Symbol.asyncIterator])},isDestroyed:w,headerNameToString:function(e){return C[e]||e.toLowerCase()},parseRawHeaders:function(e){const t=[];let A=!1,r=-1;for(let i=0;i<e.length;i+=2){const n=e[i+0].toString(),a=e[i+1].toString("utf8");14!==n.length||"content-length"!==n&&"content-length"!==n.toLowerCase()?19!==n.length||"content-disposition"!==n&&"content-disposition"!==n.toLowerCase()?t.push(n,a):r=t.push(n,a)-1:(t.push(n,a),A=!0)}return A&&-1!==r&&(t[r]=Buffer.from(t[r]).toString("latin1")),t},parseHeaders:function(e,t={}){if(!Array.isArray(e))return e;for(let A=0;A<e.length;A+=2){const r=e[A].toString().toLowerCase();let i=t[r];i?(Array.isArray(i)||(i=[i],t[r]=i),i.push(e[A+1].toString("utf8"))):Array.isArray(e[A+1])?t[r]=e[A+1].map(e=>e.toString("utf8")):t[r]=e[A+1].toString("utf8")}return"content-length"in t&&"content-disposition"in t&&(t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")),t},parseKeepAliveTimeout:function(e){const t=e.toString().match(S);return t?1e3*parseInt(t[1],10):null},destroy:function(e,A){null!=e&&I(e)&&!w(e)&&("function"==typeof e.destroy?(Object.getPrototypeOf(e).constructor===s&&(e.socket=null),e.destroy(A)):A&&process.nextTick((e,t)=>{e.emit("error",t)},e,A),!0!==e.destroyed&&(e[t]=!0))},bodyLength:function(e){if(null==e)return 0;if(I(e)){const t=e._readableState;return t&&!1===t.objectMode&&!0===t.ended&&Number.isFinite(t.length)?t.length:null}return B(e)?null!=e.size?e.size:null:b(e)?e.byteLength:null},deepClone:function(e){return JSON.parse(JSON.stringify(e))},ReadableStreamFrom:function(e){if(D||(D=c.ReadableStream),D.from)return D.from(async function*(e){for await(const t of e)yield Buffer.isBuffer(t)?t:Buffer.from(t)}(e));let t;return new D({async start(){t=e[Symbol.asyncIterator]()},async pull(e){const{done:A,value:r}=await t.next();if(A)queueMicrotask(()=>{e.close()});else{const t=Buffer.isBuffer(r)?r:Buffer.from(r);e.enqueue(new Uint8Array(t))}return e.desiredSize>0},async cancel(e){await t.return()}},0)},isBuffer:b,validateHandler:function(e,t,A){if(!e||"object"!=typeof e)throw new h("handler must be an object");if("function"!=typeof e.onConnect)throw new h("invalid onConnect method");if("function"!=typeof e.onError)throw new h("invalid onError method");if("function"!=typeof e.onBodySent&&void 0!==e.onBodySent)throw new h("invalid onBodySent method");if(A||"CONNECT"===t){if("function"!=typeof e.onUpgrade)throw new h("invalid onUpgrade method")}else{if("function"!=typeof e.onHeaders)throw new h("invalid onHeaders method");if("function"!=typeof e.onData)throw new h("invalid onData method");if("function"!=typeof e.onComplete)throw new h("invalid onComplete method")}},getSocketInfo:function(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}},isFormDataLike:function(e){return e&&"object"==typeof e&&"function"==typeof e.append&&"function"==typeof e.delete&&"function"==typeof e.get&&"function"==typeof e.getAll&&"function"==typeof e.has&&"function"==typeof e.set&&"FormData"===e[Symbol.toStringTag]},buildURL:function(e,t){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');const A=m(t);return A&&(e+="?"+A),e},throwIfAborted:function(e){if(e)if("function"==typeof e.throwIfAborted)e.throwIfAborted();else if(e.aborted){const e=new Error("The operation was aborted");throw e.name="AbortError",e}},addAbortListener:function(e,t){return"addEventListener"in e?(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)):(e.addListener("abort",t),()=>e.removeListener("abort",t))},parseRangeHeader:function(e){if(null==e||""===e)return{start:0,end:null,size:null};const t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null},nodeMajor:f,nodeMinor:Q,nodeHasAutoSelectFamily:f>18||18===f&&Q>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]},te}function de(){if(ie)return re;ie=1;let e,t=Date.now();const A=[];function r(){t=Date.now();let e=A.length,r=0;for(;r<e;){const i=A[r];0===i.state?i.state=t+i.delay:i.state>0&&t>=i.state&&(i.state=-1,i.callback(i.opaque)),-1===i.state?(i.state=-2,r!==e-1?A[r]=A.pop():A.pop(),e-=1):r+=1}A.length>0&&i()}function i(){e&&e.refresh?e.refresh():(clearTimeout(e),e=setTimeout(r,1e3),e.unref&&e.unref())}class n{constructor(e,t,A){this.callback=e,this.delay=t,this.opaque=A,this.state=-2,this.refresh()}refresh(){-2===this.state&&(A.push(this),e&&1!==A.length||i()),this.state=0}clear(){this.state=-1}}return re={setTimeout:(e,t,A)=>t<1e3?setTimeout(e,t,A):new n(e,t,A),clearTimeout(e){e instanceof n?e.clear():clearTimeout(e)}}}var pe,le,ce,ge,he,ue,Ee,me,Ce,fe,Qe,Ie,Be,ye,we,ve,Se,be,De,Fe,Re,ke,Ne,_e,Ue,Te,Le,Me,xe,Ve,He,Pe,Je,Ye,Ge,Oe,qe,We,je,Ke,Ze,Xe,ze,$e,et,tt,At,rt,it,nt={exports:{}};function at(){if(le)return pe;le=1;const e=u.EventEmitter;function t(e){if("string"==typeof e&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");const t=e.length;if(0===t)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(t);for(var A=0;A<t-1;++A)this._occ[e[A]]=t-1-A}return(0,h.inherits)(t,e),t.prototype.reset=function(){this._lookbehind_size=0,this.matches=0,this._bufpos=0},t.prototype.push=function(e,t){Buffer.isBuffer(e)||(e=Buffer.from(e,"binary"));const A=e.length;let r;for(this._bufpos=t||0;r!==A&&this.matches<this.maxMatches;)r=this._sbmh_feed(e);return r},t.prototype._sbmh_feed=function(e){const t=e.length,A=this._needle,r=A.length,i=A[r-1];let n,a=-this._lookbehind_size;if(a<0){for(;a<0&&a<=t-r;){if(n=this._sbmh_lookup_char(e,a+r-1),n===i&&this._sbmh_memcmp(e,a,r-1))return this._lookbehind_size=0,++this.matches,this.emit("info",!0),this._bufpos=a+r;a+=this._occ[n]}if(a<0)for(;a<0&&!this._sbmh_memcmp(e,a,t-a);)++a;if(!(a>=0)){const A=this._lookbehind_size+a;return A>0&&this.emit("info",!1,this._lookbehind,0,A),this._lookbehind.copy(this._lookbehind,0,A,this._lookbehind_size-A),this._lookbehind_size-=A,e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0}if(a+=(a>=0)*this._bufpos,-1!==e.indexOf(A,a))return a=e.indexOf(A,a),++this.matches,a>0?this.emit("info",!0,e,this._bufpos,a):this.emit("info",!0),this._bufpos=a+r;for(a=t-r;a<t&&(e[a]!==A[0]||0!==Buffer.compare(e.subarray(a,a+t-a),A.subarray(0,t-a)));)++a;return a<t&&(e.copy(this._lookbehind,0,a,a+(t-a)),this._lookbehind_size=t-a),a>0&&this.emit("info",!1,e,this._bufpos,a<t?a:t),this._bufpos=t,t},t.prototype._sbmh_lookup_char=function(e,t){return t<0?this._lookbehind[this._lookbehind_size+t]:e[t]},t.prototype._sbmh_memcmp=function(e,t,A){for(var r=0;r<A;++r)if(this._sbmh_lookup_char(e,t+r)!==this._needle[r])return!1;return!0},pe=t}function ot(){return ue?he:(ue=1,he=function(e,t,A){if(!e||void 0===e[t]||null===e[t])return A;if("number"!=typeof e[t]||isNaN(e[t]))throw new TypeError("Limit "+t+" is not a valid number");return e[t]})}function st(){if(fe)return Ce;fe=1;const e=g.Writable,t=h.inherits,A=at(),r=function(){if(ge)return ce;ge=1;const e=h.inherits,t=g.Readable;function A(e){t.call(this,e)}return e(A,t),A.prototype._read=function(e){},ce=A}(),i=function(){if(me)return Ee;me=1;const e=u.EventEmitter,t=h.inherits,A=ot(),r=at(),i=Buffer.from("\r\n\r\n"),n=/\r\n/g,a=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function o(t){e.call(this),t=t||{};const n=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=A(t,"maxHeaderPairs",2e3),this.maxHeaderSize=A(t,"maxHeaderSize",81920),this.buffer="",this.header={},this.finished=!1,this.ss=new r(i),this.ss.on("info",function(e,t,A,r){t&&!n.maxed&&(n.nread+r-A>=n.maxHeaderSize?(r=n.maxHeaderSize-n.nread+A,n.nread=n.maxHeaderSize,n.maxed=!0):n.nread+=r-A,n.buffer+=t.toString("binary",A,r)),e&&n._finish()})}return t(o,e),o.prototype.push=function(e){const t=this.ss.push(e);if(this.finished)return t},o.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()},o.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;const e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)},o.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;const e=this.buffer.split(n),t=e.length;let A,r;for(var i=0;i<t;++i){if(0===e[i].length)continue;if(("\t"===e[i][0]||" "===e[i][0])&&r){this.header[r][this.header[r].length-1]+=e[i];continue}const t=e[i].indexOf(":");if(-1===t||0===t)return;if(A=a.exec(e[i]),r=A[1].toLowerCase(),this.header[r]=this.header[r]||[],this.header[r].push(A[2]||""),++this.npairs===this.maxHeaderPairs)break}},Ee=o}(),n=Buffer.from("-"),a=Buffer.from("\r\n"),o=function(){};function s(t){if(!(this instanceof s))return new s(t);if(e.call(this,t),!t||!t.headerFirst&&"string"!=typeof t.boundary)throw new TypeError("Boundary required");"string"==typeof t.boundary?this.setBoundary(t.boundary):this._bparser=void 0,this._headerFirst=t.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:t.partHwm},this._pause=!1;const A=this;this._hparser=new i(t),this._hparser.on("header",function(e){A._inHeader=!1,A._part.emit("header",e)})}return t(s,e),s.prototype.emit=function(t){if("finish"!==t||this._realFinish)e.prototype.emit.apply(this,arguments);else if(!this._finished){const e=this;process.nextTick(function(){if(e.emit("error",new Error("Unexpected end of multipart data")),e._part&&!e._ignoreData){const t=e._isPreamble?"Preamble":"Part";return e._part.emit("error",new Error(t+" terminated early due to unexpected end of multipart data")),e._part.push(null),void process.nextTick(function(){e._realFinish=!0,e.emit("finish"),e._realFinish=!1})}e._realFinish=!0,e.emit("finish"),e._realFinish=!1})}},s.prototype._write=function(e,t,A){if(!this._hparser&&!this._bparser)return A();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new r(this._partOpts),0!==this.listenerCount("preamble")?this.emit("preamble",this._part):this._ignore());const t=this._hparser.push(e);if(this._inHeader||void 0===t||!(t<e.length))return A();e=e.slice(t)}this._firstWrite&&(this._bparser.push(a),this._firstWrite=!1),this._bparser.push(e),this._pause?this._cb=A:A()},s.prototype.reset=function(){this._part=void 0,this._bparser=void 0,this._hparser=void 0},s.prototype.setBoundary=function(e){const t=this;this._bparser=new A("\r\n--"+e),this._bparser.on("info",function(e,A,r,i){t._oninfo(e,A,r,i)})},s.prototype._ignore=function(){this._part&&!this._ignoreData&&(this._ignoreData=!0,this._part.on("error",o),this._part.resume())},s.prototype._oninfo=function(e,t,A,i){let a;const o=this;let s,d=0,p=!0;if(!this._part&&this._justMatched&&t){for(;this._dashes<2&&A+d<i;){if(45!==t[A+d]){this._dashes&&(a=n),this._dashes=0;break}++d,++this._dashes}if(2===this._dashes&&(A+d<i&&0!==this.listenerCount("trailer")&&this.emit("trailer",t.slice(A+d,i)),this.reset(),this._finished=!0,0===o._parts&&(o._realFinish=!0,o.emit("finish"),o._realFinish=!1)),this._dashes)return}this._justMatched&&(this._justMatched=!1),this._part||(this._part=new r(this._partOpts),this._part._read=function(e){o._unpause()},this._isPreamble&&0!==this.listenerCount("preamble")?this.emit("preamble",this._part):!0!==this._isPreamble&&0!==this.listenerCount("part")?this.emit("part",this._part):this._ignore(),this._isPreamble||(this._inHeader=!0)),t&&A<i&&!this._ignoreData&&(this._isPreamble||!this._inHeader?(a&&(p=this._part.push(a)),p=this._part.push(t.slice(A,i)),p||(this._pause=!0)):!this._isPreamble&&this._inHeader&&(a&&this._hparser.push(a),s=this._hparser.push(t.slice(A,i)),!this._inHeader&&void 0!==s&&s<i&&this._oninfo(!1,t,A+s,i))),e&&(this._hparser.reset(),this._isPreamble?this._isPreamble=!1:A!==i&&(++this._parts,this._part.on("end",function(){0===--o._parts&&(o._finished?(o._realFinish=!0,o.emit("finish"),o._realFinish=!1):o._unpause())})),this._part.push(null),this._part=void 0,this._ignoreData=!1,this._justMatched=!0,this._dashes=0)},s.prototype._unpause=function(){if(this._pause&&(this._pause=!1,this._cb)){const e=this._cb;this._cb=void 0,e()}},Ce=s}function dt(){if(Ie)return Qe;Ie=1;const e=new TextDecoder("utf-8"),t=new Map([["utf-8",e],["utf8",e]]);const A={utf8:(e,t)=>0===e.length?"":("string"==typeof e&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>0===e.length?"":"string"==typeof e?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>0===e.length?"":("string"==typeof e&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>0===e.length?"":("string"==typeof e&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,A)=>{if(0===e.length)return"";if("string"==typeof e&&(e=Buffer.from(e,A)),t.has(this.toString()))try{return t.get(this).decode(e)}catch{}return"string"==typeof e?e:e.toString()}};return Qe=function(e,t,r){return e?function(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return A.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return A.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return A.utf16le;case"base64":return A.base64;default:if(void 0===t){t=!0,e=e.toLowerCase();continue}return A.other.bind(e)}}(r)(e,t):e}}function pt(){if(ye)return Be;ye=1;const e=dt(),t=/%[a-fA-F0-9][a-fA-F0-9]/g,A={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"","%08":"\b","%09":"\t","%0a":"\n","%0A":"\n","%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"","%1B":"","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"","%7F":"","%80":"","%81":"","%82":"","%83":"","%84":"","%85":"
","%86":"","%87":"","%88":"","%89":"","%8a":"","%8A":"","%8b":"","%8B":"","%8c":"","%8C":"","%8d":"","%8D":"","%8e":"","%8E":"","%8f":"","%8F":"","%90":"","%91":"","%92":"","%93":"","%94":"","%95":"","%96":"","%97":"","%98":"","%99":"","%9a":"","%9A":"","%9b":"","%9B":"","%9c":"","%9C":"","%9d":"","%9D":"","%9e":"","%9E":"","%9f":"","%9F":"","%a0":" ","%A0":" ","%a1":"¡","%A1":"¡","%a2":"¢","%A2":"¢","%a3":"£","%A3":"£","%a4":"¤","%A4":"¤","%a5":"¥","%A5":"¥","%a6":"¦","%A6":"¦","%a7":"§","%A7":"§","%a8":"¨","%A8":"¨","%a9":"©","%A9":"©","%aa":"ª","%Aa":"ª","%aA":"ª","%AA":"ª","%ab":"«","%Ab":"«","%aB":"«","%AB":"«","%ac":"¬","%Ac":"¬","%aC":"¬","%AC":"¬","%ad":"","%Ad":"","%aD":"","%AD":"","%ae":"®","%Ae":"®","%aE":"®","%AE":"®","%af":"¯","%Af":"¯","%aF":"¯","%AF":"¯","%b0":"°","%B0":"°","%b1":"±","%B1":"±","%b2":"²","%B2":"²","%b3":"³","%B3":"³","%b4":"´","%B4":"´","%b5":"µ","%B5":"µ","%b6":"¶","%B6":"¶","%b7":"·","%B7":"·","%b8":"¸","%B8":"¸","%b9":"¹","%B9":"¹","%ba":"º","%Ba":"º","%bA":"º","%BA":"º","%bb":"»","%Bb":"»","%bB":"»","%BB":"»","%bc":"¼","%Bc":"¼","%bC":"¼","%BC":"¼","%bd":"½","%Bd":"½","%bD":"½","%BD":"½","%be":"¾","%Be":"¾","%bE":"¾","%BE":"¾","%bf":"¿","%Bf":"¿","%bF":"¿","%BF":"¿","%c0":"À","%C0":"À","%c1":"Á","%C1":"Á","%c2":"Â","%C2":"Â","%c3":"Ã","%C3":"Ã","%c4":"Ä","%C4":"Ä","%c5":"Å","%C5":"Å","%c6":"Æ","%C6":"Æ","%c7":"Ç","%C7":"Ç","%c8":"È","%C8":"È","%c9":"É","%C9":"É","%ca":"Ê","%Ca":"Ê","%cA":"Ê","%CA":"Ê","%cb":"Ë","%Cb":"Ë","%cB":"Ë","%CB":"Ë","%cc":"Ì","%Cc":"Ì","%cC":"Ì","%CC":"Ì","%cd":"Í","%Cd":"Í","%cD":"Í","%CD":"Í","%ce":"Î","%Ce":"Î","%cE":"Î","%CE":"Î","%cf":"Ï","%Cf":"Ï","%cF":"Ï","%CF":"Ï","%d0":"Ð","%D0":"Ð","%d1":"Ñ","%D1":"Ñ","%d2":"Ò","%D2":"Ò","%d3":"Ó","%D3":"Ó","%d4":"Ô","%D4":"Ô","%d5":"Õ","%D5":"Õ","%d6":"Ö","%D6":"Ö","%d7":"×","%D7":"×","%d8":"Ø","%D8":"Ø","%d9":"Ù","%D9":"Ù","%da":"Ú","%Da":"Ú","%dA":"Ú","%DA":"Ú","%db":"Û","%Db":"Û","%dB":"Û","%DB":"Û","%dc":"Ü","%Dc":"Ü","%dC":"Ü","%DC":"Ü","%dd":"Ý","%Dd":"Ý","%dD":"Ý","%DD":"Ý","%de":"Þ","%De":"Þ","%dE":"Þ","%DE":"Þ","%df":"ß","%Df":"ß","%dF":"ß","%DF":"ß","%e0":"à","%E0":"à","%e1":"á","%E1":"á","%e2":"â","%E2":"â","%e3":"ã","%E3":"ã","%e4":"ä","%E4":"ä","%e5":"å","%E5":"å","%e6":"æ","%E6":"æ","%e7":"ç","%E7":"ç","%e8":"è","%E8":"è","%e9":"é","%E9":"é","%ea":"ê","%Ea":"ê","%eA":"ê","%EA":"ê","%eb":"ë","%Eb":"ë","%eB":"ë","%EB":"ë","%ec":"ì","%Ec":"ì","%eC":"ì","%EC":"ì","%ed":"í","%Ed":"í","%eD":"í","%ED":"í","%ee":"î","%Ee":"î","%eE":"î","%EE":"î","%ef":"ï","%Ef":"ï","%eF":"ï","%EF":"ï","%f0":"ð","%F0":"ð","%f1":"ñ","%F1":"ñ","%f2":"ò","%F2":"ò","%f3":"ó","%F3":"ó","%f4":"ô","%F4":"ô","%f5":"õ","%F5":"õ","%f6":"ö","%F6":"ö","%f7":"÷","%F7":"÷","%f8":"ø","%F8":"ø","%f9":"ù","%F9":"ù","%fa":"ú","%Fa":"ú","%fA":"ú","%FA":"ú","%fb":"û","%Fb":"û","%fB":"û","%FB":"û","%fc":"ü","%Fc":"ü","%fC":"ü","%FC":"ü","%fd":"ý","%Fd":"ý","%fD":"ý","%FD":"ý","%fe":"þ","%Fe":"þ","%fE":"þ","%FE":"þ","%ff":"ÿ","%Ff":"ÿ","%fF":"ÿ","%FF":"ÿ"};function r(e){return A[e]}return Be=function(A){const i=[];let n=0,a="",o=!1,s=!1,d=0,p="";const l=A.length;for(var c=0;c<l;++c){const l=A[c];if("\\"===l&&o){if(!s){s=!0;continue}s=!1}else if('"'===l){if(!s){o?(o=!1,n=0):o=!0;continue}s=!1}else{if(s&&o&&(p+="\\"),s=!1,(2===n||3===n)&&"'"===l){2===n?(n=3,a=p.substring(1)):n=1,p="";continue}if(0===n&&("*"===l||"="===l)&&i.length){n="*"===l?2:1,i[d]=[p,void 0],p="";continue}if(!o&&";"===l){n=0,a?(p.length&&(p=e(p.replace(t,r),"binary",a)),a=""):p.length&&(p=e(p,"binary","utf8")),void 0===i[d]?i[d]=p:i[d][1]=p,p="",++d;continue}if(!o&&(" "===l||"\t"===l))continue}p+=l}return a&&p.length?p=e(p.replace(t,r),"binary",a):p&&(p=e(p,"binary","utf8")),void 0===i[d]?p&&(i[d]=p):i[d][1]=p,i}}function lt(){return ve?we:(ve=1,we=function(e){if("string"!=typeof e)return"";for(var t=e.length-1;t>=0;--t)switch(e.charCodeAt(t)){case 47:case 92:return".."===(e=e.slice(t+1))||"."===e?"":e}return".."===e||"."===e?"":e})}function ct(){if(ke)return Re;ke=1;const e=function(){if(Fe)return De;Fe=1;const e=/\+/g,t=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function A(){this.buffer=void 0}return A.prototype.write=function(A){let r="",i=0,n=0;const a=(A=A.replace(e," ")).length;for(;i<a;++i)void 0!==this.buffer?t[A.charCodeAt(i)]?(this.buffer+=A[i],++n,2===this.buffer.length&&(r+=String.fromCharCode(parseInt(this.buffer,16)),this.buffer=void 0)):(r+="%"+this.buffer,this.buffer=void 0,--i):"%"===A[i]&&(i>n&&(r+=A.substring(n,i),n=i),this.buffer="",++n);return n<a&&void 0===this.buffer&&(r+=A.substring(n)),r},A.prototype.reset=function(){this.buffer=void 0},De=A}(),t=dt(),A=ot(),r=/^charset$/i;function i(t,i){const n=i.limits,a=i.parsedConType;let o;this.boy=t,this.fieldSizeLimit=A(n,"fieldSize",1048576),this.fieldNameSizeLimit=A(n,"fieldNameSize",100),this.fieldsLimit=A(n,"fields",1/0);for(var s=0,d=a.length;s<d;++s)if(Array.isArray(a[s])&&r.test(a[s][0])){o=a[s][1].toLowerCase();break}void 0===o&&(o=i.defCharset||"utf8"),this.decoder=new e,this.charset=o,this._fields=0,this._state="key",this._checkingBytes=!0,this._bytesKey=0,this._bytesVal=0,this._key="",this._val="",this._keyTrunc=!1,this._valTrunc=!1,this._hitLimit=!1}return i.detect=/^application\/x-www-form-urlencoded/i,i.prototype.write=function(e,A){if(this._fields===this.fieldsLimit)return this.boy.hitFieldsLimit||(this.boy.hitFieldsLimit=!0,this.boy.emit("fieldsLimit")),A();let r,i,n,a=0;const o=e.length;for(;a<o;)if("key"===this._state){for(r=i=void 0,n=a;n<o;++n){if(this._checkingBytes||++a,61===e[n]){r=n;break}if(38===e[n]){i=n;break}if(this._checkingBytes&&this._bytesKey===this.fieldNameSizeLimit){this._hitLimit=!0;break}this._checkingBytes&&++this._bytesKey}if(void 0!==r)r>a&&(this._key+=this.decoder.write(e.toString("binary",a,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),a=r+1;else if(void 0!==i){let r;++this._fields;const n=this._keyTrunc;if(r=i>a?this._key+=this.decoder.write(e.toString("binary",a,i)):this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),r.length&&this.boy.emit("field",t(r,"binary",this.charset),"",n,!1),a=i+1,this._fields===this.fieldsLimit)return A()}else this._hitLimit?(n>a&&(this._key+=this.decoder.write(e.toString("binary",a,n))),a=n,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(a<o&&(this._key+=this.decoder.write(e.toString("binary",a))),a=o)}else{for(i=void 0,n=a;n<o;++n){if(this._checkingBytes||++a,38===e[n]){i=n;break}if(this._checkingBytes&&this._bytesVal===this.fieldSizeLimit){this._hitLimit=!0;break}this._checkingBytes&&++this._bytesVal}if(void 0!==i){if(++this._fields,i>a&&(this._val+=this.decoder.write(e.toString("binary",a,i))),this.boy.emit("field",t(this._key,"binary",this.charset),t(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),a=i+1,this._fields===this.fieldsLimit)return A()}else this._hitLimit?(n>a&&(this._val+=this.decoder.write(e.toString("binary",a,n))),a=n,(""===this._val&&0===this.fieldSizeLimit||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(a<o&&(this._val+=this.decoder.write(e.toString("binary",a))),a=o)}A()},i.prototype.end=function(){this.boy._done||("key"===this._state&&this._key.length>0?this.boy.emit("field",t(this._key,"binary",this.charset),"",this._keyTrunc,!1):"val"===this._state&&this.boy.emit("field",t(this._key,"binary",this.charset),t(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))},Re=i}function gt(){if(Ne)return nt.exports;Ne=1;const e=g.Writable,{inherits:t}=h,A=st(),r=function(){if(be)return Se;be=1;const{Readable:e}=g,{inherits:t}=h,A=st(),r=pt(),i=dt(),n=lt(),a=ot(),o=/^boundary$/i,s=/^form-data$/i,d=/^charset$/i,p=/^filename$/i,l=/^name$/i;function c(e,t){let c,g;const h=this;let m;const C=t.limits,f=t.isPartAFile||((e,t,A)=>"application/octet-stream"===t||void 0!==A),Q=t.parsedConType||[],I=t.defCharset||"utf8",B=t.preservePath,y={highWaterMark:t.fileHwm};for(c=0,g=Q.length;c<g;++c)if(Array.isArray(Q[c])&&o.test(Q[c][0])){m=Q[c][1];break}function w(){0===L&&M&&!e._done&&(M=!1,h.end())}if("string"!=typeof m)throw new Error("Multipart: Boundary not found");const v=a(C,"fieldSize",1048576),S=a(C,"fileSize",1/0),b=a(C,"files",1/0),D=a(C,"fields",1/0),F=a(C,"parts",1/0),R=a(C,"headerPairs",2e3),k=a(C,"headerSize",81920);let N,_,U=0,T=0,L=0,M=!1;this._needDrain=!1,this._pause=!1,this._cb=void 0,this._nparts=0,this._boy=e;const x={boundary:m,maxHeaderPairs:R,maxHeaderSize:k,partHwm:y.highWaterMark,highWaterMark:t.highWaterMark};this.parser=new A(x),this.parser.on("drain",function(){if(h._needDrain=!1,h._cb&&!h._pause){const e=h._cb;h._cb=void 0,e()}}).on("part",function t(A){if(++h._nparts>F)return h.parser.removeListener("part",t),h.parser.on("part",u),e.hitPartsLimit=!0,e.emit("partsLimit"),u(A);if(_){const e=_;e.emit("end"),e.removeAllListeners("end")}A.on("header",function(t){let a,o,m,C,Q,F,R,k,M=0;if(t["content-type"]&&(m=r(t["content-type"][0]),m[0]))for(a=m[0].toLowerCase(),c=0,g=m.length;c<g;++c)if(d.test(m[c][0])){C=m[c][1].toLowerCase();break}if(void 0===a&&(a="text/plain"),void 0===C&&(C=I),!t["content-disposition"])return u(A);if(m=r(t["content-disposition"][0]),!s.test(m[0]))return u(A);for(c=0,g=m.length;c<g;++c)l.test(m[c][0])?o=m[c][1]:p.test(m[c][0])&&(F=m[c][1],B||(F=n(F)));if(Q=t["content-transfer-encoding"]?t["content-transfer-encoding"][0].toLowerCase():"7bit",f(o,a,F)){if(U===b)return e.hitFilesLimit||(e.hitFilesLimit=!0,e.emit("filesLimit")),u(A);if(++U,0===e.listenerCount("file"))return void h.parser._ignore();++L;const t=new E(y);N=t,t.on("end",function(){if(--L,h._pause=!1,w(),h._cb&&!h._needDrain){const e=h._cb;h._cb=void 0,e()}}),t._read=function(e){if(h._pause&&(h._pause=!1,h._cb&&!h._needDrain)){const e=h._cb;h._cb=void 0,e()}},e.emit("file",o,t,F,Q,a),R=function(e){if((M+=e.length)>S){const r=S-M+e.length;return r>0&&t.push(e.slice(0,r)),t.truncated=!0,t.bytesRead=S,A.removeAllListeners("data"),void t.emit("limit")}t.push(e)||(h._pause=!0),t.bytesRead=M},k=function(){N=void 0,t.push(null)}}else{if(T===D)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),u(A);++T,++L;let t="",r=!1;_=A,R=function(e){if((M+=e.length)>v){const i=v-(M-e.length);t+=e.toString("binary",0,i),r=!0,A.removeAllListeners("data")}else t+=e.toString("binary")},k=function(){_=void 0,t.length&&(t=i(t,"binary",C)),e.emit("field",o,t,!1,r,Q,a),--L,w()}}A._readableState.sync=!1,A.on("data",R),A.on("end",k)}).on("error",function(e){N&&N.emit("error",e)})}).on("error",function(t){e.emit("error",t)}).on("finish",function(){M=!0,w()})}function u(e){e.resume()}function E(t){e.call(this,t),this.bytesRead=0,this.truncated=!1}return c.detect=/^multipart\/form-data/i,c.prototype.write=function(e,t){const A=this.parser.write(e);A&&!this._pause?t():(this._needDrain=!A,this._cb=t)},c.prototype.end=function(){const e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})},t(E,e),E.prototype._read=function(e){},Se=c}(),i=ct(),n=pt();function a(t){if(!(this instanceof a))return new a(t);if("object"!=typeof t)throw new TypeError("Busboy expected an options-Object.");if("object"!=typeof t.headers)throw new TypeError("Busboy expected an options-Object with headers-attribute.");if("string"!=typeof t.headers["content-type"])throw new TypeError("Missing Content-Type-header.");const{headers:A,...r}=t;this.opts={autoDestroy:!1,...r},e.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(A),this._finished=!1}return t(a,e),a.prototype.emit=function(t){if("finish"===t){if(!this._done)return void this._parser?.end();if(this._finished)return;this._finished=!0}e.prototype.emit.apply(this,arguments)},a.prototype.getParserByHeaders=function(e){const t=n(e["content-type"]),A={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(r.detect.test(t[0]))return new r(this,A);if(i.detect.test(t[0]))return new i(this,A);throw new Error("Unsupported Content-Type.")},a.prototype._write=function(e,t,A){this._parser.write(e,A)},nt.exports=a,nt.exports.default=a,nt.exports.Busboy=a,nt.exports.Dicer=A,nt.exports}function ht(){if(Ue)return _e;Ue=1;const{MessageChannel:e,receiveMessageOnPort:t}=E,A=["GET","HEAD","POST"],r=new Set(A),i=[301,302,303,307,308],n=new Set(i),a=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"],o=new Set(a),s=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],d=new Set(s),p=["GET","HEAD","OPTIONS","TRACE"],l=new Set(p),c=["CONNECT","TRACE","TRACK"],g=new Set(c),h=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],u=new Set(h),m=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})();let C;const f=globalThis.structuredClone??function(A,r=void 0){if(0===arguments.length)throw new TypeError("missing argument");return C||(C=new e),C.port1.unref(),C.port2.unref(),C.port1.postMessage(A,r?.transfer),t(C.port2).message};return _e={DOMException:m,structuredClone:f,subresource:h,forbiddenMethods:c,requestBodyHeader:["content-encoding","content-language","content-location","content-type","content-length"],referrerPolicy:s,requestRedirect:["follow","manual","error"],requestMode:["navigate","same-origin","no-cors","cors"],requestCredentials:["omit","same-origin","include"],requestCache:["default","no-store","reload","no-cache","force-cache","only-if-cached"],redirectStatus:i,corsSafeListedMethods:A,nullBodyStatus:[101,204,205,304],safeMethods:p,badPorts:a,requestDuplex:["half"],subresourceSet:u,badPortsSet:o,redirectStatusSet:n,corsSafeListedMethodsSet:r,safeMethodsSet:l,forbiddenMethodsSet:g,referrerPolicySet:d}}function ut(){if(Le)return Te;Le=1;const e=Symbol.for("undici.globalOrigin.1");return Te={getGlobalOrigin:function(){return globalThis[e]},setGlobalOrigin:function(t){if(void 0===t)return void Object.defineProperty(globalThis,e,{value:void 0,writable:!0,enumerable:!1,configurable:!1});const A=new URL(t);if("http:"!==A.protocol&&"https:"!==A.protocol)throw new TypeError(`Only http & https urls are allowed, received ${A.protocol}`);Object.defineProperty(globalThis,e,{value:A,writable:!0,enumerable:!1,configurable:!1})}}}function Et(){if(xe)return Me;xe=1;const{redirectStatusSet:e,referrerPolicySet:t,badPortsSet:r}=ht(),{getGlobalOrigin:i}=ut(),{performance:n}=m,{isBlobLike:a,toUSVString:o,ReadableStreamFrom:s}=se(),d=A,{isUint8Array:p}=C;let l,g=[];try{l=require("crypto");const e=["sha256","sha384","sha512"];g=l.getHashes().filter(t=>e.includes(t))}catch{}function h(e){const t=e.urlList,A=t.length;return 0===A?null:t[A-1].toString()}function u(e){return e.urlList[e.urlList.length-1]}function E(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function f(e){if(0===e.length)return!1;for(let t=0;t<e.length;++t)if(!E(e.charCodeAt(t)))return!1;return!0}function Q(e){return!(e.startsWith("\t")||e.startsWith(" ")||e.endsWith("\t")||e.endsWith(" "))&&!(e.includes("\0")||e.includes("\r")||e.includes("\n"))}function I(e,t){return d(e instanceof URL),"file:"===e.protocol||"about:"===e.protocol||"blank:"===e.protocol?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function B(e){return e instanceof URL&&("about:blank"===e.href||"about:srcdoc"===e.href||("data:"===e.protocol||("file:"===e.protocol||function(e){if(null==e||"null"===e)return!1;const t=new URL(e);if("https:"===t.protocol||"wss:"===t.protocol)return!0;if(/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(t.hostname)||"localhost"===t.hostname||t.hostname.includes("localhost.")||t.hostname.endsWith(".localhost"))return!0;return!1}(e.origin))))}const y=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function w(e){const t=[];let A=!0;for(const r of e.split(" ")){A=!1;const e=y.exec(r);if(null===e||void 0===e.groups||void 0===e.groups.algo)continue;const i=e.groups.algo.toLowerCase();g.includes(i)&&t.push(e.groups)}return!0===A?"no metadata":t}function v(e,t){if(e.length!==t.length)return!1;for(let A=0;A<e.length;++A)if(e[A]!==t[A]){if("+"===e[A]&&"-"===t[A]||"/"===e[A]&&"_"===t[A])continue;return!1}return!0}function S(e,t){return e.origin===t.origin&&"null"===e.origin||e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}const b={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(b,null);const D=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));let F=globalThis.ReadableStream;async function R(e){const t=[];let A=0;for(;;){const{done:r,value:i}=await e.read();if(r)return Buffer.concat(t,A);if(!p(i))throw new TypeError("Received non-Uint8Array chunk");t.push(i),A+=i.length}}function k(e){return"string"==typeof e?e.startsWith("https:"):"https:"===e.protocol}function N(e){d("protocol"in e);const t=e.protocol;return"http:"===t||"https:"===t}const _=Object.hasOwn||((e,t)=>Object.prototype.hasOwnProperty.call(e,t));return Me={isAborted:function(e){return"aborted"===e.controller.state},isCancelled:function(e){return"aborted"===e.controller.state||"terminated"===e.controller.state},createDeferredPromise:function(){let e,t;return{promise:new Promise((A,r)=>{e=A,t=r}),resolve:e,reject:t}},ReadableStreamFrom:s,toUSVString:o,tryUpgradeRequestToAPotentiallyTrustworthyURL:function(e){},coarsenedSharedCurrentTime:function(e){return n.now()},determineRequestsReferrer:function(e){const t=e.referrerPolicy;d(t);let A=null;if("client"===e.referrer){const e=i();if(!e||"null"===e.origin)return"no-referrer";A=new URL(e)}else e.referrer instanceof URL&&(A=e.referrer);let r=I(A);const n=I(A,!0);r.toString().length>4096&&(r=n);const a=S(e,r),o=B(r)&&!B(e.url);switch(t){case"origin":return null!=n?n:I(A,!0);case"unsafe-url":return r;case"same-origin":return a?n:"no-referrer";case"origin-when-cross-origin":return a?r:n;case"strict-origin-when-cross-origin":{const t=u(e);return S(r,t)?r:B(r)&&!B(t)?"no-referrer":n}default:return o?"no-referrer":n}},makePolicyContainer:function(){return{referrerPolicy:"strict-origin-when-cross-origin"}},clonePolicyContainer:function(e){return{referrerPolicy:e.referrerPolicy}},appendFetchMetadata:function(e){let t=null;t=e.mode,e.headersList.set("sec-fetch-mode",t)},appendRequestOriginHeader:function(e){let t=e.origin;if("cors"===e.responseTainting||"websocket"===e.mode)t&&e.headersList.append("origin",t);else if("GET"!==e.method&&"HEAD"!==e.method){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&k(e.origin)&&!k(u(e))&&(t=null);break;case"same-origin":S(e,u(e))||(t=null)}t&&e.headersList.append("origin",t)}},TAOCheck:function(){return"success"},corsCheck:function(){return"success"},crossOriginResourcePolicyCheck:function(){return"allowed"},createOpaqueTimingInfo:function(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}},setRequestReferrerPolicyOnRedirect:function(e,A){const{headersList:r}=A,i=(r.get("referrer-policy")??"").split(",");let n="";if(i.length>0)for(let e=i.length;0!==e;e--){const A=i[e-1].trim();if(t.has(A)){n=A;break}}""!==n&&(e.referrerPolicy=n)},isValidHTTPToken:f,requestBadPort:function(e){const t=u(e);return N(t)&&r.has(t.port)?"blocked":"allowed"},requestCurrentURL:u,responseURL:h,responseLocationURL:function(t,A){if(!e.has(t.status))return null;let r=t.headersList.get("location");return null!==r&&Q(r)&&(r=new URL(r,h(t))),r&&!r.hash&&(r.hash=A),r},isBlobLike:a,isURLPotentiallyTrustworthy:B,isValidReasonPhrase:function(e){for(let t=0;t<e.length;++t){const A=e.charCodeAt(t);if(!(9===A||A>=32&&A<=126||A>=128&&A<=255))return!1}return!0},sameOrigin:S,normalizeMethod:function(e){return b[e.toLowerCase()]??e},serializeJavascriptValueToJSONString:function(e){const t=JSON.stringify(e);if(void 0===t)throw new TypeError("Value is not JSON serializable");return d("string"==typeof t),t},makeIterator:function(e,t,A){const r={index:0,kind:A,target:e},i={next(){if(Object.getPrototypeOf(this)!==i)throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);const{index:e,kind:A,target:n}=r,a=n();if(e>=a.length)return{value:void 0,done:!0};const o=a[e];return r.index=e+1,function(e,t){let A;switch(t){case"key":A=e[0];break;case"value":A=e[1];break;case"key+value":A=e}return{value:A,done:!1}}(o,A)},[Symbol.toStringTag]:`${t} Iterator`};return Object.setPrototypeOf(i,D),Object.setPrototypeOf({},i)},isValidHeaderName:function(e){return f(e)},isValidHeaderValue:Q,hasOwn:_,isErrorLike:function(e){return e instanceof Error||"Error"===e?.constructor?.name||"DOMException"===e?.constructor?.name},fullyReadBody:async function(e,t,A){const r=t,i=A;let n;try{n=e.stream.getReader()}catch(e){return void i(e)}try{r(await R(n))}catch(e){i(e)}},bytesMatch:function(e,t){if(void 0===l)return!0;const A=w(t);if("no metadata"===A)return!0;if(0===A.length)return!0;const r=function(e){let t=e[0].algo;if("5"===t[3])return t;for(let A=1;A<e.length;++A){const r=e[A];if("5"===r.algo[3]){t="sha512";break}"3"!==t[3]&&("3"===r.algo[3]&&(t="sha384"))}return t}(A),i=function(e,t){if(1===e.length)return e;let A=0;for(let r=0;r<e.length;++r)e[r].algo===t&&(e[A++]=e[r]);return e.length=A,e}(A,r);for(const t of i){const A=t.algo,r=t.hash;let i=l.createHash(A).update(e).digest("base64");if("="===i[i.length-1]&&(i="="===i[i.length-2]?i.slice(0,-2):i.slice(0,-1)),v(i,r))return!0}return!1},isReadableStreamLike:function(e){return F||(F=c.ReadableStream),e instanceof F||"ReadableStream"===e[Symbol.toStringTag]&&"function"==typeof e.tee},readableStreamClose:function(e){try{e.close()}catch(e){if(!e.message.includes("Controller is already closed"))throw e}},isomorphicEncode:function(e){for(let t=0;t<e.length;t++)d(e.charCodeAt(t)<=255);return e},isomorphicDecode:function(e){return e.length<65535?String.fromCharCode(...e):e.reduce((e,t)=>e+String.fromCharCode(t),"")},urlIsLocal:function(e){d("protocol"in e);const t=e.protocol;return"about:"===t||"blob:"===t||"data:"===t},urlHasHttpsScheme:k,urlIsHttpHttpsScheme:N,readAllBytes:R,normalizeMethodRecord:b,parseMetadata:w},Me}function mt(){return He?Ve:(He=1,Ve={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")})}function Ct(){if(Je)return Pe;Je=1;const{types:e}=d,{hasOwn:t,toUSVString:A}=Et(),r={converters:{},util:{},errors:{}};return r.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)},r.errors.conversionFailed=function(e){const t=1===e.types.length?"":" one of",A=`${e.argument} could not be converted to${t}: ${e.types.join(", ")}.`;return r.errors.exception({header:e.prefix,message:A})},r.errors.invalidArgument=function(e){return r.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})},r.brandCheck=function(e,t,A=void 0){if(!1===A?.strict||e instanceof t)return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag];throw new TypeError("Illegal invocation")},r.argumentLengthCheck=function({length:e},t,A){if(e<t)throw r.errors.exception({message:`${t} argument${1!==t?"s":""} required, but${e?" only":""} ${e} found.`,...A})},r.illegalConstructor=function(){throw r.errors.exception({header:"TypeError",message:"Illegal constructor"})},r.util.Type=function(e){switch(typeof e){case"undefined":return"Undefined";case"boolean":return"Boolean";case"string":return"String";case"symbol":return"Symbol";case"number":return"Number";case"bigint":return"BigInt";case"function":case"object":return null===e?"Null":"Object"}},r.util.ConvertToInt=function(e,t,A,i={}){let n,a;64===t?(n=Math.pow(2,53)-1,a="unsigned"===A?0:Math.pow(-2,53)+1):"unsigned"===A?(a=0,n=Math.pow(2,t)-1):(a=Math.pow(-2,t)-1,n=Math.pow(2,t-1)-1);let o=Number(e);if(0===o&&(o=0),!0===i.enforceRange){if(Number.isNaN(o)||o===Number.POSITIVE_INFINITY||o===Number.NEGATIVE_INFINITY)throw r.errors.exception({header:"Integer conversion",message:`Could not convert ${e} to an integer.`});if(o=r.util.IntegerPart(o),o<a||o>n)throw r.errors.exception({header:"Integer conversion",message:`Value must be between ${a}-${n}, got ${o}.`});return o}return Number.isNaN(o)||!0!==i.clamp?Number.isNaN(o)||0===o&&Object.is(0,o)||o===Number.POSITIVE_INFINITY||o===Number.NEGATIVE_INFINITY?0:(o=r.util.IntegerPart(o),o%=Math.pow(2,t),"signed"===A&&o>=Math.pow(2,t)-1?o-Math.pow(2,t):o):(o=Math.min(Math.max(o,a),n),o=Math.floor(o)%2==0?Math.floor(o):Math.ceil(o),o)},r.util.IntegerPart=function(e){const t=Math.floor(Math.abs(e));return e<0?-1*t:t},r.sequenceConverter=function(e){return t=>{if("Object"!==r.util.Type(t))throw r.errors.exception({header:"Sequence",message:`Value of type ${r.util.Type(t)} is not an Object.`});const A=t?.[Symbol.iterator]?.(),i=[];if(void 0===A||"function"!=typeof A.next)throw r.errors.exception({header:"Sequence",message:"Object is not an iterator."});for(;;){const{done:t,value:r}=A.next();if(t)break;i.push(e(r))}return i}},r.recordConverter=function(t,A){return i=>{if("Object"!==r.util.Type(i))throw r.errors.exception({header:"Record",message:`Value of type ${r.util.Type(i)} is not an Object.`});const n={};if(!e.isProxy(i)){const e=Object.keys(i);for(const r of e){const e=t(r),a=A(i[r]);n[e]=a}return n}const a=Reflect.ownKeys(i);for(const e of a){const r=Reflect.getOwnPropertyDescriptor(i,e);if(r?.enumerable){const r=t(e),a=A(i[e]);n[r]=a}}return n}},r.interfaceConverter=function(e){return(t,A={})=>{if(!1!==A.strict&&!(t instanceof e))throw r.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`});return t}},r.dictionaryConverter=function(e){return A=>{const i=r.util.Type(A),n={};if("Null"===i||"Undefined"===i)return n;if("Object"!==i)throw r.errors.exception({header:"Dictionary",message:`Expected ${A} to be one of: Null, Undefined, Object.`});for(const i of e){const{key:e,defaultValue:a,required:o,converter:s}=i;if(!0===o&&!t(A,e))throw r.errors.exception({header:"Dictionary",message:`Missing required key "${e}".`});let d=A[e];const p=t(i,"defaultValue");if(p&&null!==d&&(d=d??a),o||p||void 0!==d){if(d=s(d),i.allowedValues&&!i.allowedValues.includes(d))throw r.errors.exception({header:"Dictionary",message:`${d} is not an accepted type. Expected one of ${i.allowedValues.join(", ")}.`});n[e]=d}}return n}},r.nullableConverter=function(e){return t=>null===t?t:e(t)},r.converters.DOMString=function(e,t={}){if(null===e&&t.legacyNullToEmptyString)return"";if("symbol"==typeof e)throw new TypeError("Could not convert argument of type symbol to string.");return String(e)},r.converters.ByteString=function(e){const t=r.converters.DOMString(e);for(let e=0;e<t.length;e++)if(t.charCodeAt(e)>255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${e} has a value of ${t.charCodeAt(e)} which is greater than 255.`);return t},r.converters.USVString=A,r.converters.boolean=function(e){return Boolean(e)},r.converters.any=function(e){return e},r.converters["long long"]=function(e){return r.util.ConvertToInt(e,64,"signed")},r.converters["unsigned long long"]=function(e){return r.util.ConvertToInt(e,64,"unsigned")},r.converters["unsigned long"]=function(e){return r.util.ConvertToInt(e,32,"unsigned")},r.converters["unsigned short"]=function(e,t){return r.util.ConvertToInt(e,16,"unsigned",t)},r.converters.ArrayBuffer=function(t,A={}){if("Object"!==r.util.Type(t)||!e.isAnyArrayBuffer(t))throw r.errors.conversionFailed({prefix:`${t}`,argument:`${t}`,types:["ArrayBuffer"]});if(!1===A.allowShared&&e.isSharedArrayBuffer(t))throw r.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return t},r.converters.TypedArray=function(t,A,i={}){if("Object"!==r.util.Type(t)||!e.isTypedArray(t)||t.constructor.name!==A.name)throw r.errors.conversionFailed({prefix:`${A.name}`,argument:`${t}`,types:[A.name]});if(!1===i.allowShared&&e.isSharedArrayBuffer(t.buffer))throw r.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return t},r.converters.DataView=function(t,A={}){if("Object"!==r.util.Type(t)||!e.isDataView(t))throw r.errors.exception({header:"DataView",message:"Object is not a DataView."});if(!1===A.allowShared&&e.isSharedArrayBuffer(t.buffer))throw r.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});return t},r.converters.BufferSource=function(t,A={}){if(e.isAnyArrayBuffer(t))return r.converters.ArrayBuffer(t,A);if(e.isTypedArray(t))return r.converters.TypedArray(t,t.constructor);if(e.isDataView(t))return r.converters.DataView(t,A);throw new TypeError(`Could not convert ${t} to a BufferSource.`)},r.converters["sequence<ByteString>"]=r.sequenceConverter(r.converters.ByteString),r.converters["sequence<sequence<ByteString>>"]=r.sequenceConverter(r.converters["sequence<ByteString>"]),r.converters["record<ByteString, ByteString>"]=r.recordConverter(r.converters.ByteString,r.converters.ByteString),Pe={webidl:r}}function ft(){if(Ge)return Ye;Ge=1;const e=A,{atob:t}=a,{isomorphicDecode:r}=Et(),i=new TextEncoder,n=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/,o=/(\u000A|\u000D|\u0009|\u0020)/,s=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function d(e,t=!1){if(!t)return e.href;const A=e.href,r=e.hash.length;return 0===r?A:A.substring(0,A.length-r)}function p(e,t,A){let r="";for(;A.position<t.length&&e(t[A.position]);)r+=t[A.position],A.position++;return r}function l(e,t,A){const r=t.indexOf(e,A.position),i=A.position;return-1===r?(A.position=t.length,t.slice(i)):(A.position=r,t.slice(i,A.position))}function c(e){return function(e){const t=[];for(let A=0;A<e.length;A++){const r=e[A];if(37!==r)t.push(r);else if(37!==r||/^[0-9A-Fa-f]{2}$/i.test(String.fromCharCode(e[A+1],e[A+2]))){const r=String.fromCharCode(e[A+1],e[A+2]),i=Number.parseInt(r,16);t.push(i),A+=2}else t.push(37)}return Uint8Array.from(t)}(i.encode(e))}function g(e){const t={position:0},A=l("/",e=E(e,!0,!0),t);if(0===A.length||!n.test(A))return"failure";if(t.position>e.length)return"failure";t.position++;let r=l(";",e,t);if(r=E(r,!1,!0),0===r.length||!n.test(r))return"failure";const i=A.toLowerCase(),a=r.toLowerCase(),d={type:i,subtype:a,parameters:new Map,essence:`${i}/${a}`};for(;t.position<e.length;){t.position++,p(e=>o.test(e),e,t);let A=p(e=>";"!==e&&"="!==e,e,t);if(A=A.toLowerCase(),t.position<e.length){if(";"===e[t.position])continue;t.position++}if(t.position>e.length)break;let r=null;if('"'===e[t.position])r=h(e,t,!0),l(";",e,t);else if(r=l(";",e,t),r=E(r,!1,!0),0===r.length)continue;0===A.length||!n.test(A)||0!==r.length&&!s.test(r)||d.parameters.has(A)||d.parameters.set(A,r)}return d}function h(t,A,r){const i=A.position;let n="";for(e('"'===t[A.position]),A.position++;n+=p(e=>'"'!==e&&"\\"!==e,t,A),!(A.position>=t.length);){const r=t[A.position];if(A.position++,"\\"!==r){e('"'===r);break}if(A.position>=t.length){n+="\\";break}n+=t[A.position],A.position++}return r?n:t.slice(i,A.position)}function u(e){return"\r"===e||"\n"===e||"\t"===e||" "===e}function E(e,t=!0,A=!0){let r=0,i=e.length-1;if(t)for(;r<e.length&&u(e[r]);r++);if(A)for(;i>0&&u(e[i]);i--);return e.slice(r,i+1)}function m(e){return"\r"===e||"\n"===e||"\t"===e||"\f"===e||" "===e}return Ye={dataURLProcessor:function(A){e("data:"===A.protocol);let i=d(A,!0);i=i.slice(5);const n={position:0};let a=l(",",i,n);const o=a.length;if(a=function(e,t=!0,A=!0){let r=0,i=e.length-1;if(t)for(;r<e.length&&m(e[r]);r++);if(A)for(;i>0&&m(e[i]);i--);return e.slice(r,i+1)}(a,!0,!0),n.position>=i.length)return"failure";n.position++;let s=c(i.slice(o+1));if(/;(\u0020){0,}base64$/i.test(a)){if(s=function(e){(e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,"")).length%4==0&&(e=e.replace(/=?=$/,""));if(e.length%4==1)return"failure";if(/[^+/0-9A-Za-z]/.test(e))return"failure";const A=t(e),r=new Uint8Array(A.length);for(let e=0;e<A.length;e++)r[e]=A.charCodeAt(e);return r}(r(s)),"failure"===s)return"failure";a=a.slice(0,-6),a=a.replace(/(\u0020)+$/,""),a=a.slice(0,-1)}a.startsWith(";")&&(a="text/plain"+a);let p=g(a);return"failure"===p&&(p=g("text/plain;charset=US-ASCII")),{mimeType:p,body:s}},URLSerializer:d,collectASequenceOfCodePoints:p,collectASequenceOfCodePointsFast:l,stringPercentDecode:c,parseMIMEType:g,collectAnHTTPQuotedString:h,serializeAMimeType:function(t){e("failure"!==t);const{parameters:A,essence:r}=t;let i=r;for(let[e,t]of A.entries())i+=";",i+=e,i+="=",n.test(t)||(t=t.replace(/(\\|")/g,"\\$1"),t='"'+t,t+='"'),i+=t;return i}},Ye}function Qt(){if(qe)return Oe;qe=1;const{Blob:e,File:t}=a,{types:A}=d,{kState:r}=mt(),{isBlobLike:i}=Et(),{webidl:n}=Ct(),{parseMIMEType:o,serializeAMimeType:s}=ft(),{kEnumerableProperty:p}=se(),l=new TextEncoder;class c extends e{constructor(e,t,a={}){n.argumentLengthCheck(arguments,2,{header:"File constructor"}),e=n.converters["sequence<BlobPart>"](e);const d=t=n.converters.USVString(t);let p,c=(a=n.converters.FilePropertyBag(a)).type;e:{if(c){if(c=o(c),"failure"===c){c="";break e}c=s(c).toLowerCase()}p=a.lastModified}super(function(e,t){const r=[];for(const n of e)if("string"==typeof n){let e=n;"native"===t.endings&&(e=h(e)),r.push(l.encode(e))}else A.isAnyArrayBuffer(n)||A.isTypedArray(n)?n.buffer?r.push(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)):r.push(new Uint8Array(n)):i(n)&&r.push(n);return r}(e,a),{type:c}),this[r]={name:d,lastModified:p,type:c}}get name(){return n.brandCheck(this,c),this[r].name}get lastModified(){return n.brandCheck(this,c),this[r].lastModified}get type(){return n.brandCheck(this,c),this[r].type}}class g{constructor(e,t,A={}){const i=t,n=A.type,a=A.lastModified??Date.now();this[r]={blobLike:e,name:i,type:n,lastModified:a}}stream(...e){return n.brandCheck(this,g),this[r].blobLike.stream(...e)}arrayBuffer(...e){return n.brandCheck(this,g),this[r].blobLike.arrayBuffer(...e)}slice(...e){return n.brandCheck(this,g),this[r].blobLike.slice(...e)}text(...e){return n.brandCheck(this,g),this[r].blobLike.text(...e)}get size(){return n.brandCheck(this,g),this[r].blobLike.size}get type(){return n.brandCheck(this,g),this[r].blobLike.type}get name(){return n.brandCheck(this,g),this[r].name}get lastModified(){return n.brandCheck(this,g),this[r].lastModified}get[Symbol.toStringTag](){return"File"}}function h(e){let t="\n";return"win32"===process.platform&&(t="\r\n"),e.replace(/\r?\n/g,t)}return Object.defineProperties(c.prototype,{[Symbol.toStringTag]:{value:"File",configurable:!0},name:p,lastModified:p}),n.converters.Blob=n.interfaceConverter(e),n.converters.BlobPart=function(e,t){if("Object"===n.util.Type(e)){if(i(e))return n.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||A.isAnyArrayBuffer(e))return n.converters.BufferSource(e,t)}return n.converters.USVString(e,t)},n.converters["sequence<BlobPart>"]=n.sequenceConverter(n.converters.BlobPart),n.converters.FilePropertyBag=n.dictionaryConverter([{key:"lastModified",converter:n.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:n.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>("native"!==(e=(e=n.converters.DOMString(e)).toLowerCase())&&(e="transparent"),e),defaultValue:"transparent"}]),Oe={File:c,FileLike:g,isFileLike:function(e){return t&&e instanceof t||e instanceof c||e&&("function"==typeof e.stream||"function"==typeof e.arrayBuffer)&&"File"===e[Symbol.toStringTag]}}}function It(){if(je)return We;je=1;const{isBlobLike:e,toUSVString:t,makeIterator:A}=Et(),{kState:r}=mt(),{File:i,FileLike:n,isFileLike:o}=Qt(),{webidl:s}=Ct(),{Blob:d,File:p}=a,l=p??i;class c{constructor(e){if(void 0!==e)throw s.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[r]=[]}append(t,A,i=void 0){if(s.brandCheck(this,c),s.argumentLengthCheck(arguments,2,{header:"FormData.append"}),3===arguments.length&&!e(A))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");const n=g(t=s.converters.USVString(t),A=e(A)?s.converters.Blob(A,{strict:!1}):s.converters.USVString(A),i=3===arguments.length?s.converters.USVString(i):void 0);this[r].push(n)}delete(e){s.brandCheck(this,c),s.argumentLengthCheck(arguments,1,{header:"FormData.delete"}),e=s.converters.USVString(e),this[r]=this[r].filter(t=>t.name!==e)}get(e){s.brandCheck(this,c),s.argumentLengthCheck(arguments,1,{header:"FormData.get"}),e=s.converters.USVString(e);const t=this[r].findIndex(t=>t.name===e);return-1===t?null:this[r][t].value}getAll(e){return s.brandCheck(this,c),s.argumentLengthCheck(arguments,1,{header:"FormData.getAll"}),e=s.converters.USVString(e),this[r].filter(t=>t.name===e).map(e=>e.value)}has(e){return s.brandCheck(this,c),s.argumentLengthCheck(arguments,1,{header:"FormData.has"}),e=s.converters.USVString(e),-1!==this[r].findIndex(t=>t.name===e)}set(A,i,n=void 0){if(s.brandCheck(this,c),s.argumentLengthCheck(arguments,2,{header:"FormData.set"}),3===arguments.length&&!e(i))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");A=s.converters.USVString(A),i=e(i)?s.converters.Blob(i,{strict:!1}):s.converters.USVString(i),n=3===arguments.length?t(n):void 0;const a=g(A,i,n),o=this[r].findIndex(e=>e.name===A);-1!==o?this[r]=[...this[r].slice(0,o),a,...this[r].slice(o+1).filter(e=>e.name!==A)]:this[r].push(a)}entries(){return s.brandCheck(this,c),A(()=>this[r].map(e=>[e.name,e.value]),"FormData","key+value")}keys(){return s.brandCheck(this,c),A(()=>this[r].map(e=>[e.name,e.value]),"FormData","key")}values(){return s.brandCheck(this,c),A(()=>this[r].map(e=>[e.name,e.value]),"FormData","value")}forEach(e,t=globalThis){if(s.brandCheck(this,c),s.argumentLengthCheck(arguments,1,{header:"FormData.forEach"}),"function"!=typeof e)throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");for(const[A,r]of this)e.apply(t,[r,A,this])}}function g(e,t,A){if(e=Buffer.from(e).toString("utf8"),"string"==typeof t)t=Buffer.from(t).toString("utf8");else if(o(t)||(t=t instanceof d?new l([t],"blob",{type:t.type}):new n(t,"blob",{type:t.type})),void 0!==A){const e={type:t.type,lastModified:t.lastModified};t=p&&t instanceof p||t instanceof i?new l([t],A,e):new n(t,A,e)}return{name:e,value:t}}return c.prototype[Symbol.iterator]=c.prototype.entries,Object.defineProperties(c.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:!0}}),We={FormData:c}}function Bt(){if(Ze)return Ke;Ze=1;const e=gt(),t=se(),{ReadableStreamFrom:r,isBlobLike:i,isReadableStreamLike:n,readableStreamClose:o,createDeferredPromise:s,fullyReadBody:d}=Et(),{FormData:p}=It(),{kState:l}=mt(),{webidl:g}=Ct(),{DOMException:h,structuredClone:u}=ht(),{Blob:E,File:m}=a,{kBodyUsed:f}=ae(),Q=A,{isErrored:I}=se(),{isUint8Array:B,isArrayBuffer:y}=C,{File:w}=Qt(),{parseMIMEType:v,serializeAMimeType:S}=ft();let b;try{const e=require("node:crypto");b=t=>e.randomInt(0,t)}catch{b=e=>Math.floor(Math.random(e))}let D=globalThis.ReadableStream;const F=m??w,R=new TextEncoder,k=new TextDecoder;function N(e,A=!1){D||(D=c.ReadableStream);let a=null;a=e instanceof D?e:i(e)?e.stream():new D({async pull(e){e.enqueue("string"==typeof d?R.encode(d):d),queueMicrotask(()=>o(e))},start(){},type:void 0}),Q(n(a));let s=null,d=null,p=null,l=null;if("string"==typeof e)d=e,l="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)d=e.toString(),l="application/x-www-form-urlencoded;charset=UTF-8";else if(y(e))d=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))d=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(t.isFormDataLike(e)){const t=`----formdata-undici-0${`${b(1e11)}`.padStart(11,"0")}`,A=`--${t}\r\nContent-Disposition: form-data`
|
|
2
|
+
/*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */,r=e=>e.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),i=e=>e.replace(/\r?\n|\r/g,"\r\n"),n=[],a=new Uint8Array([13,10]);p=0;let o=!1;for(const[t,s]of e)if("string"==typeof s){const e=R.encode(A+`; name="${r(i(t))}"`+`\r\n\r\n${i(s)}\r\n`);n.push(e),p+=e.byteLength}else{const e=R.encode(`${A}; name="${r(i(t))}"`+(s.name?`; filename="${r(s.name)}"`:"")+"\r\n"+`Content-Type: ${s.type||"application/octet-stream"}\r\n\r\n`);n.push(e,s,a),"number"==typeof s.size?p+=e.byteLength+s.size+a.byteLength:o=!0}const c=R.encode(`--${t}--`);n.push(c),p+=c.byteLength,o&&(p=null),d=e,s=async function*(){for(const e of n)e.stream?yield*e.stream():yield e},l="multipart/form-data; boundary="+t}else if(i(e))d=e,p=e.size,e.type&&(l=e.type);else if("function"==typeof e[Symbol.asyncIterator]){if(A)throw new TypeError("keepalive");if(t.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");a=e instanceof D?e:r(e)}if(("string"==typeof d||t.isBuffer(d))&&(p=Buffer.byteLength(d)),null!=s){let t;a=new D({async start(){t=s(e)[Symbol.asyncIterator]()},async pull(e){const{value:A,done:r}=await t.next();return r?queueMicrotask(()=>{e.close()}):I(a)||e.enqueue(new Uint8Array(A)),e.desiredSize>0},async cancel(e){await t.return()},type:void 0})}return[{stream:a,source:d,length:p},l]}async function*_(e){if(e)if(B(e))yield e;else{const A=e.stream;if(t.isDisturbed(A))throw new TypeError("The body has already been consumed.");if(A.locked)throw new TypeError("The stream is locked.");A[f]=!0,yield*A}}function U(e){if(e.aborted)throw new h("The operation was aborted.","AbortError")}function T(t){const A={blob(){return L(this,e=>{let t=function(e){const{headersList:t}=e[l],A=t.get("content-type");if(null===A)return"failure";return v(A)}(this);return"failure"===t?t="":t&&(t=S(t)),new E([e],{type:t})},t)},arrayBuffer(){return L(this,e=>new Uint8Array(e).buffer,t)},text(){return L(this,M,t)},json(){return L(this,x,t)},async formData(){g.brandCheck(this,t),U(this[l]);const A=this.headers.get("Content-Type");if(/multipart\/form-data/.test(A)){const t={};for(const[e,A]of this.headers)t[e.toLowerCase()]=A;const A=new p;let r;try{r=new e({headers:t,preservePath:!0})}catch(e){throw new h(`${e}`,"AbortError")}r.on("field",(e,t)=>{A.append(e,t)}),r.on("file",(e,t,r,i,n)=>{const a=[];if("base64"===i||"base64"===i.toLowerCase()){let i="";t.on("data",e=>{i+=e.toString().replace(/[\r\n]/gm,"");const t=i.length-i.length%4;a.push(Buffer.from(i.slice(0,t),"base64")),i=i.slice(t)}),t.on("end",()=>{a.push(Buffer.from(i,"base64")),A.append(e,new F(a,r,{type:n}))})}else t.on("data",e=>{a.push(e)}),t.on("end",()=>{A.append(e,new F(a,r,{type:n}))})});const i=new Promise((e,t)=>{r.on("finish",e),r.on("error",e=>t(new TypeError(e)))});if(null!==this.body)for await(const e of _(this[l].body))r.write(e);return r.end(),await i,A}if(/application\/x-www-form-urlencoded/.test(A)){let e;try{let t="";const A=new TextDecoder("utf-8",{ignoreBOM:!0});for await(const e of _(this[l].body)){if(!B(e))throw new TypeError("Expected Uint8Array chunk");t+=A.decode(e,{stream:!0})}t+=A.decode(),e=new URLSearchParams(t)}catch(e){throw Object.assign(new TypeError,{cause:e})}const t=new p;for(const[A,r]of e)t.append(A,r);return t}throw await Promise.resolve(),U(this[l]),g.errors.exception({header:`${t.name}.formData`,message:"Could not parse content as FormData."})}};return A}async function L(e,A,r){if(g.brandCheck(e,r),U(e[l]),function(e){return null!=e&&(e.stream.locked||t.isDisturbed(e.stream))}(e[l].body))throw new TypeError("Body is unusable");const i=s(),n=e=>i.reject(e),a=e=>{try{i.resolve(A(e))}catch(e){n(e)}};return null==e[l].body?(a(new Uint8Array),i.promise):(await d(e[l].body,a,n),i.promise)}function M(e){if(0===e.length)return"";239===e[0]&&187===e[1]&&191===e[2]&&(e=e.subarray(3));return k.decode(e)}function x(e){return JSON.parse(M(e))}return Ke={extractBody:N,safelyExtractBody:function(e,A=!1){return D||(D=c.ReadableStream),e instanceof D&&(Q(!t.isDisturbed(e),"The body has already been consumed."),Q(!e.locked,"The stream is locked.")),N(e,A)},cloneBody:function(e){const[t,A]=e.stream.tee(),r=u(A,{transfer:[A]}),[,i]=r.tee();return e.stream=t,{stream:i,length:e.length,source:e.source}},mixinBody:function(e){Object.assign(e.prototype,T(e))}}}function yt(){if(et)return $e;et=1;const t=e;return $e=class extends t{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}}}function wt(){if(At)return tt;At=1;const e=yt(),{ClientDestroyedError:t,ClientClosedError:A,InvalidArgumentError:r}=oe(),{kDestroy:i,kClose:n,kDispatch:a,kInterceptors:o}=ae(),s=Symbol("destroyed"),d=Symbol("closed"),p=Symbol("onDestroyed"),l=Symbol("onClosed"),c=Symbol("Intercepted Dispatch");return tt=class extends e{constructor(){super(),this[s]=!1,this[p]=null,this[d]=!1,this[l]=[]}get destroyed(){return this[s]}get closed(){return this[d]}get interceptors(){return this[o]}set interceptors(e){if(e)for(let t=e.length-1;t>=0;t--){if("function"!=typeof this[o][t])throw new r("interceptor must be an function")}this[o]=e}close(e){if(void 0===e)return new Promise((e,t)=>{this.close((A,r)=>A?t(A):e(r))});if("function"!=typeof e)throw new r("invalid callback");if(this[s])return void queueMicrotask(()=>e(new t,null));if(this[d])return void(this[l]?this[l].push(e):queueMicrotask(()=>e(null,null)));this[d]=!0,this[l].push(e);const A=()=>{const e=this[l];this[l]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[n]().then(()=>this.destroy()).then(()=>{queueMicrotask(A)})}destroy(e,A){if("function"==typeof e&&(A=e,e=null),void 0===A)return new Promise((t,A)=>{this.destroy(e,(e,r)=>e?A(e):t(r))});if("function"!=typeof A)throw new r("invalid callback");if(this[s])return void(this[p]?this[p].push(A):queueMicrotask(()=>A(null,null)));e||(e=new t),this[s]=!0,this[p]=this[p]||[],this[p].push(A);const n=()=>{const e=this[p];this[p]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[i](e).then(()=>{queueMicrotask(n)})}[c](e,t){if(!this[o]||0===this[o].length)return this[c]=this[a],this[a](e,t);let A=this[a].bind(this);for(let e=this[o].length-1;e>=0;e--)A=this[o][e](A);return this[c]=A,A(e,t)}dispatch(e,i){if(!i||"object"!=typeof i)throw new r("handler must be an object");try{if(!e||"object"!=typeof e)throw new r("opts must be an object.");if(this[s]||this[p])throw new t;if(this[d])throw new A;return this[c](e,i)}catch(e){if("function"!=typeof i.onError)throw new r("invalid onError method");return i.onError(e),!1}}}}function vt(){if(it)return rt;it=1;const e=r,t=A,i=se(),{InvalidArgumentError:n,ConnectTimeoutError:a}=oe();let o,s;return s=W.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE?class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new W.FinalizationRegistry(e=>{if(this._sessionCache.size<this._maxCachedSessions)return;const t=this._sessionCache.get(e);void 0!==t&&void 0===t.deref()&&this._sessionCache.delete(e)})}get(e){const t=this._sessionCache.get(e);return t?t.deref():null}set(e,t){0!==this._maxCachedSessions&&(this._sessionCache.set(e,new WeakRef(t)),this._sessionRegistry.register(t,e))}}:class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map}get(e){return this._sessionCache.get(e)}set(e,t){if(0!==this._maxCachedSessions){if(this._sessionCache.size>=this._maxCachedSessions){const{value:e}=this._sessionCache.keys().next();this._sessionCache.delete(e)}this._sessionCache.set(e,t)}}},rt=function({allowH2:A,maxCachedSessions:r,socketPath:d,timeout:p,...l}){if(null!=r&&(!Number.isInteger(r)||r<0))throw new n("maxCachedSessions must be a positive integer or zero");const c={path:d,...l},g=new s(null==r?100:r);return p=null==p?1e4:p,A=null!=A&&A,function({hostname:r,host:n,protocol:s,port:d,servername:l,localAddress:h,httpSocket:u},E){let m;if("https:"===s){o||(o=f);const e=(l=l||c.servername||i.getServerName(n)||null)||r,a=g.get(e)||null;t(e),m=o.connect({highWaterMark:16384,...c,servername:l,session:a,localAddress:h,ALPNProtocols:A?["http/1.1","h2"]:["http/1.1"],socket:u,port:d||443,host:r}),m.on("session",function(t){g.set(e,t)})}else t(!u,"httpSocket can only be sent on TLS update"),m=e.connect({highWaterMark:65536,...c,localAddress:h,port:d||80,host:r});if(null==c.keepAlive||c.keepAlive){const e=void 0===c.keepAliveInitialDelay?6e4:c.keepAliveInitialDelay;m.setKeepAlive(!0,e)}const C=function(e,t){if(!t)return()=>{};let A=null,r=null;const i=setTimeout(()=>{A=setImmediate(()=>{"win32"===process.platform?r=setImmediate(()=>e()):e()})},t);return()=>{clearTimeout(i),clearImmediate(A),clearImmediate(r)}}(()=>function(e){i.destroy(e,new a)}(m),p);return m.setNoDelay(!0).once("https:"===s?"secureConnect":"connect",function(){if(C(),E){const e=E;E=null,e(null,this)}}).on("error",function(e){if(C(),E){const t=E;E=null,t(e)}}),m}},rt}var St,bt,Dt,Ft,Rt,kt,Nt,_t,Ut,Tt,Lt,Mt,xt,Vt,Ht,Pt,Jt,Yt,Gt,Ot,qt,Wt,jt,Kt,Zt,Xt,zt={},$t={};function eA(){return bt||(bt=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SPECIAL_HEADERS=e.HEADER_STATE=e.MINOR=e.MAJOR=e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS=e.TOKEN=e.STRICT_TOKEN=e.HEX=e.URL_CHAR=e.STRICT_URL_CHAR=e.USERINFO_CHARS=e.MARK=e.ALPHANUM=e.NUM=e.HEX_MAP=e.NUM_MAP=e.ALPHA=e.FINISH=e.H_METHOD_MAP=e.METHOD_MAP=e.METHODS_RTSP=e.METHODS_ICE=e.METHODS_HTTP=e.METHODS=e.LENIENT_FLAGS=e.FLAGS=e.TYPE=e.ERROR=void 0;const t=(St||(St=1,Object.defineProperty($t,"__esModule",{value:!0}),$t.enumToMap=void 0,$t.enumToMap=function(e){const t={};return Object.keys(e).forEach(A=>{const r=e[A];"number"==typeof r&&(t[A]=r)}),t}),$t);var A,r,i,n,a,o;(A=e.ERROR||(e.ERROR={}))[A.OK=0]="OK",A[A.INTERNAL=1]="INTERNAL",A[A.STRICT=2]="STRICT",A[A.LF_EXPECTED=3]="LF_EXPECTED",A[A.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",A[A.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",A[A.INVALID_METHOD=6]="INVALID_METHOD",A[A.INVALID_URL=7]="INVALID_URL",A[A.INVALID_CONSTANT=8]="INVALID_CONSTANT",A[A.INVALID_VERSION=9]="INVALID_VERSION",A[A.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",A[A.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",A[A.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",A[A.INVALID_STATUS=13]="INVALID_STATUS",A[A.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",A[A.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",A[A.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",A[A.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",A[A.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",A[A.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",A[A.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",A[A.PAUSED=21]="PAUSED",A[A.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",A[A.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",A[A.USER=24]="USER",function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"}(e.TYPE||(e.TYPE={})),(r=e.FLAGS||(e.FLAGS={}))[r.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",r[r.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",r[r.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",r[r.CHUNKED=8]="CHUNKED",r[r.UPGRADE=16]="UPGRADE",r[r.CONTENT_LENGTH=32]="CONTENT_LENGTH",r[r.SKIPBODY=64]="SKIPBODY",r[r.TRAILING=128]="TRAILING",r[r.TRANSFER_ENCODING=512]="TRANSFER_ENCODING",(i=e.LENIENT_FLAGS||(e.LENIENT_FLAGS={}))[i.HEADERS=1]="HEADERS",i[i.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",i[i.KEEP_ALIVE=4]="KEEP_ALIVE",function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"}(n=e.METHODS||(e.METHODS={})),e.METHODS_HTTP=[n.DELETE,n.GET,n.HEAD,n.POST,n.PUT,n.CONNECT,n.OPTIONS,n.TRACE,n.COPY,n.LOCK,n.MKCOL,n.MOVE,n.PROPFIND,n.PROPPATCH,n.SEARCH,n.UNLOCK,n.BIND,n.REBIND,n.UNBIND,n.ACL,n.REPORT,n.MKACTIVITY,n.CHECKOUT,n.MERGE,n["M-SEARCH"],n.NOTIFY,n.SUBSCRIBE,n.UNSUBSCRIBE,n.PATCH,n.PURGE,n.MKCALENDAR,n.LINK,n.UNLINK,n.PRI,n.SOURCE],e.METHODS_ICE=[n.SOURCE],e.METHODS_RTSP=[n.OPTIONS,n.DESCRIBE,n.ANNOUNCE,n.SETUP,n.PLAY,n.PAUSE,n.TEARDOWN,n.GET_PARAMETER,n.SET_PARAMETER,n.REDIRECT,n.RECORD,n.FLUSH,n.GET,n.POST],e.METHOD_MAP=t.enumToMap(n),e.H_METHOD_MAP={},Object.keys(e.METHOD_MAP).forEach(t=>{/^H/.test(t)&&(e.H_METHOD_MAP[t]=e.METHOD_MAP[t])}),(a=e.FINISH||(e.FINISH={}))[a.SAFE=0]="SAFE",a[a.SAFE_WITH_CB=1]="SAFE_WITH_CB",a[a.UNSAFE=2]="UNSAFE",e.ALPHA=[];for(let t="A".charCodeAt(0);t<="Z".charCodeAt(0);t++)e.ALPHA.push(String.fromCharCode(t)),e.ALPHA.push(String.fromCharCode(t+32));e.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},e.NUM=["0","1","2","3","4","5","6","7","8","9"],e.ALPHANUM=e.ALPHA.concat(e.NUM),e.MARK=["-","_",".","!","~","*","'","(",")"],e.USERINFO_CHARS=e.ALPHANUM.concat(e.MARK).concat(["%",";",":","&","=","+","$",","]),e.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(e.ALPHANUM),e.URL_CHAR=e.STRICT_URL_CHAR.concat(["\t","\f"]);for(let t=128;t<=255;t++)e.URL_CHAR.push(t);e.HEX=e.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]),e.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(e.ALPHANUM),e.TOKEN=e.STRICT_TOKEN.concat([" "]),e.HEADER_CHARS=["\t"];for(let t=32;t<=255;t++)127!==t&&e.HEADER_CHARS.push(t);e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS.filter(e=>44!==e),e.MAJOR=e.NUM_MAP,e.MINOR=e.MAJOR,function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"}(o=e.HEADER_STATE||(e.HEADER_STATE={})),e.SPECIAL_HEADERS={connection:o.CONNECTION,"content-length":o.CONTENT_LENGTH,"proxy-connection":o.CONNECTION,"transfer-encoding":o.TRANSFER_ENCODING,upgrade:o.UPGRADE}}(zt)),zt}function tA(){if(Ft)return Dt;Ft=1;const t=se(),{kBodyUsed:r}=ae(),i=A,{InvalidArgumentError:n}=oe(),a=e,o=[300,301,302,303,307,308],s=Symbol("body");class d{constructor(e){this[s]=e,this[r]=!1}async*[Symbol.asyncIterator](){i(!this[r],"disturbed"),this[r]=!0,yield*this[s]}}function p(e,A,r){if(4===e.length)return"host"===t.headerNameToString(e);if(A&&t.headerNameToString(e).startsWith("content-"))return!0;if(r&&(13===e.length||6===e.length||19===e.length)){const A=t.headerNameToString(e);return"authorization"===A||"cookie"===A||"proxy-authorization"===A}return!1}return Dt=class{constructor(e,A,o,s){if(null!=A&&(!Number.isInteger(A)||A<0))throw new n("maxRedirections must be a positive number");t.validateHandler(s,o.method,o.upgrade),this.dispatch=e,this.location=null,this.abort=null,this.opts={...o,maxRedirections:0},this.maxRedirections=A,this.handler=s,this.history=[],t.isStream(this.opts.body)?(0===t.bodyLength(this.opts.body)&&this.opts.body.on("data",function(){i(!1)}),"boolean"!=typeof this.opts.body.readableDidRead&&(this.opts.body[r]=!1,a.prototype.on.call(this.opts.body,"data",function(){this[r]=!0}))):(this.opts.body&&"function"==typeof this.opts.body.pipeTo||this.opts.body&&"string"!=typeof this.opts.body&&!ArrayBuffer.isView(this.opts.body)&&t.isIterable(this.opts.body))&&(this.opts.body=new d(this.opts.body))}onConnect(e){this.abort=e,this.handler.onConnect(e,{history:this.history})}onUpgrade(e,t,A){this.handler.onUpgrade(e,t,A)}onError(e){this.handler.onError(e)}onHeaders(e,A,r,n){if(this.location=this.history.length>=this.maxRedirections||t.isDisturbed(this.opts.body)?null:function(e,t){if(-1===o.indexOf(e))return null;for(let e=0;e<t.length;e+=2)if("location"===t[e].toString().toLowerCase())return t[e+1]}(e,A),this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(e,A,r,n);const{origin:a,pathname:s,search:d}=t.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),l=d?`${s}${d}`:s;this.opts.headers=function(e,t,A){const r=[];if(Array.isArray(e))for(let i=0;i<e.length;i+=2)p(e[i],t,A)||r.push(e[i],e[i+1]);else if(e&&"object"==typeof e)for(const i of Object.keys(e))p(i,t,A)||r.push(i,e[i]);else i(null==e,"headers must be an object or an array");return r}(this.opts.headers,303===e,this.opts.origin!==a),this.opts.path=l,this.opts.origin=a,this.opts.maxRedirections=0,this.opts.query=null,303===e&&"HEAD"!==this.opts.method&&(this.opts.method="GET",this.opts.body=null)}onData(e){if(!this.location)return this.handler.onData(e)}onComplete(e){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(e)}onBodySent(e){this.handler.onBodySent&&this.handler.onBodySent(e)}},Dt}function AA(){if(kt)return Rt;kt=1;const e=tA();return Rt=function({maxRedirections:t}){return A=>function(r,i){const{maxRedirections:n=t}=r;if(!n)return A(r,i);const a=new e(A,n,r,i);return r={...r,maxRedirections:0},A(r,a)}}}function rA(){return _t?Nt:(_t=1,Nt="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8=")}function iA(){if(Mt)return Lt;Mt=1;const e=A,t=r,a=i,{pipeline:o}=n,s=se(),d=de(),p=function(){if(ze)return Xe;ze=1;const{InvalidArgumentError:e,NotSupportedError:t}=oe(),r=A,{kHTTP2BuildRequest:i,kHTTP2CopyHeaders:n,kHTTP1BuildRequest:a}=ae(),o=se(),s=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,d=/[^\t\x20-\x7e\x80-\xff]/,p=/[^\u0021-\u00ff]/,l=Symbol("handler"),c={};let g;try{const e=require("diagnostics_channel");c.create=e.channel("undici:request:create"),c.bodySent=e.channel("undici:request:bodySent"),c.headers=e.channel("undici:request:headers"),c.trailers=e.channel("undici:request:trailers"),c.error=e.channel("undici:request:error")}catch{c.create={hasSubscribers:!1},c.bodySent={hasSubscribers:!1},c.headers={hasSubscribers:!1},c.trailers={hasSubscribers:!1},c.error={hasSubscribers:!1}}class h{constructor(t,{path:A,method:r,body:i,headers:n,query:a,idempotent:d,blocking:h,upgrade:u,headersTimeout:m,bodyTimeout:C,reset:f,throwOnError:Q,expectContinue:I},B){if("string"!=typeof A)throw new e("path must be a string");if("/"!==A[0]&&!A.startsWith("http://")&&!A.startsWith("https://")&&"CONNECT"!==r)throw new e("path must be an absolute URL or start with a slash");if(null!==p.exec(A))throw new e("invalid request path");if("string"!=typeof r)throw new e("method must be a string");if(null===s.exec(r))throw new e("invalid request method");if(u&&"string"!=typeof u)throw new e("upgrade must be a string");if(null!=m&&(!Number.isFinite(m)||m<0))throw new e("invalid headersTimeout");if(null!=C&&(!Number.isFinite(C)||C<0))throw new e("invalid bodyTimeout");if(null!=f&&"boolean"!=typeof f)throw new e("invalid reset");if(null!=I&&"boolean"!=typeof I)throw new e("invalid expectContinue");if(this.headersTimeout=m,this.bodyTimeout=C,this.throwOnError=!0===Q,this.method=r,this.abort=null,null==i)this.body=null;else if(o.isStream(i)){this.body=i;const e=this.body._readableState;e&&e.autoDestroy||(this.endHandler=function(){o.destroy(this)},this.body.on("end",this.endHandler)),this.errorHandler=e=>{this.abort?this.abort(e):this.error=e},this.body.on("error",this.errorHandler)}else if(o.isBuffer(i))this.body=i.byteLength?i:null;else if(ArrayBuffer.isView(i))this.body=i.buffer.byteLength?Buffer.from(i.buffer,i.byteOffset,i.byteLength):null;else if(i instanceof ArrayBuffer)this.body=i.byteLength?Buffer.from(i):null;else if("string"==typeof i)this.body=i.length?Buffer.from(i):null;else{if(!(o.isFormDataLike(i)||o.isIterable(i)||o.isBlobLike(i)))throw new e("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");this.body=i}if(this.completed=!1,this.aborted=!1,this.upgrade=u||null,this.path=a?o.buildURL(A,a):A,this.origin=t,this.idempotent=null==d?"HEAD"===r||"GET"===r:d,this.blocking=null!=h&&h,this.reset=null==f?null:f,this.host=null,this.contentLength=null,this.contentType=null,this.headers="",this.expectContinue=null!=I&&I,Array.isArray(n)){if(n.length%2!=0)throw new e("headers array must be even");for(let e=0;e<n.length;e+=2)E(this,n[e],n[e+1])}else if(n&&"object"==typeof n){const e=Object.keys(n);for(let t=0;t<e.length;t++){const A=e[t];E(this,A,n[A])}}else if(null!=n)throw new e("headers must be an object or an array");if(o.isFormDataLike(this.body)){if(o.nodeMajor<16||16===o.nodeMajor&&o.nodeMinor<8)throw new e("Form-Data bodies are only supported in node v16.8 and newer.");g||(g=Bt().extractBody);const[t,A]=g(i);null==this.contentType&&(this.contentType=A,this.headers+=`content-type: ${A}\r\n`),this.body=t.stream,this.contentLength=t.length}else o.isBlobLike(i)&&null==this.contentType&&i.type&&(this.contentType=i.type,this.headers+=`content-type: ${i.type}\r\n`);o.validateHandler(B,r,u),this.servername=o.getServerName(this.host),this[l]=B,c.create.hasSubscribers&&c.create.publish({request:this})}onBodySent(e){if(this[l].onBodySent)try{return this[l].onBodySent(e)}catch(e){this.abort(e)}}onRequestSent(){if(c.bodySent.hasSubscribers&&c.bodySent.publish({request:this}),this[l].onRequestSent)try{return this[l].onRequestSent()}catch(e){this.abort(e)}}onConnect(e){if(r(!this.aborted),r(!this.completed),!this.error)return this.abort=e,this[l].onConnect(e);e(this.error)}onHeaders(e,t,A,i){r(!this.aborted),r(!this.completed),c.headers.hasSubscribers&&c.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:i}});try{return this[l].onHeaders(e,t,A,i)}catch(e){this.abort(e)}}onData(e){r(!this.aborted),r(!this.completed);try{return this[l].onData(e)}catch(e){return this.abort(e),!1}}onUpgrade(e,t,A){return r(!this.aborted),r(!this.completed),this[l].onUpgrade(e,t,A)}onComplete(e){this.onFinally(),r(!this.aborted),this.completed=!0,c.trailers.hasSubscribers&&c.trailers.publish({request:this,trailers:e});try{return this[l].onComplete(e)}catch(e){this.onError(e)}}onError(e){if(this.onFinally(),c.error.hasSubscribers&&c.error.publish({request:this,error:e}),!this.aborted)return this.aborted=!0,this[l].onError(e)}onFinally(){this.errorHandler&&(this.body.off("error",this.errorHandler),this.errorHandler=null),this.endHandler&&(this.body.off("end",this.endHandler),this.endHandler=null)}addHeader(e,t){return E(this,e,t),this}static[a](e,t,A){return new h(e,t,A)}static[i](t,A,r){const i=A.headers;A={...A,headers:null};const n=new h(t,A,r);if(n.headers={},Array.isArray(i)){if(i.length%2!=0)throw new e("headers array must be even");for(let e=0;e<i.length;e+=2)E(n,i[e],i[e+1],!0)}else if(i&&"object"==typeof i){const e=Object.keys(i);for(let t=0;t<e.length;t++){const A=e[t];E(n,A,i[A],!0)}}else if(null!=i)throw new e("headers must be an object or an array");return n}static[n](e){const t=e.split("\r\n"),A={};for(const e of t){const[t,r]=e.split(": ");null!=r&&0!==r.length&&(A[t]?A[t]+=`,${r}`:A[t]=r)}return A}}function u(t,A,r){if(A&&"object"==typeof A)throw new e(`invalid ${t} header`);if(A=null!=A?`${A}`:"",null!==d.exec(A))throw new e(`invalid ${t} header`);return r?A:`${t}: ${A}\r\n`}function E(A,r,i,n=!1){if(i&&"object"==typeof i&&!Array.isArray(i))throw new e(`invalid ${r} header`);if(void 0!==i)if(null===A.host&&4===r.length&&"host"===r.toLowerCase()){if(null!==d.exec(i))throw new e(`invalid ${r} header`);A.host=i}else if(null===A.contentLength&&14===r.length&&"content-length"===r.toLowerCase()){if(A.contentLength=parseInt(i,10),!Number.isFinite(A.contentLength))throw new e("invalid content-length header")}else if(null===A.contentType&&12===r.length&&"content-type"===r.toLowerCase())A.contentType=i,n?A.headers[r]=u(r,i,n):A.headers+=u(r,i);else{if(17===r.length&&"transfer-encoding"===r.toLowerCase())throw new e("invalid transfer-encoding header");if(10===r.length&&"connection"===r.toLowerCase()){const t="string"==typeof i?i.toLowerCase():null;if("close"!==t&&"keep-alive"!==t)throw new e("invalid connection header");"close"===t&&(A.reset=!0)}else{if(10===r.length&&"keep-alive"===r.toLowerCase())throw new e("invalid keep-alive header");if(7===r.length&&"upgrade"===r.toLowerCase())throw new e("invalid upgrade header");if(6===r.length&&"expect"===r.toLowerCase())throw new t("expect header not supported");if(null===s.exec(r))throw new e("invalid header key");if(Array.isArray(i))for(let e=0;e<i.length;e++)n?A.headers[r]?A.headers[r]+=`,${u(r,i[e],n)}`:A.headers[r]=u(r,i[e],n):A.headers+=u(r,i[e]);else n?A.headers[r]=u(r,i,n):A.headers+=u(r,i)}}}return Xe=h}(),l=wt(),{RequestContentLengthMismatchError:c,ResponseContentLengthMismatchError:g,InvalidArgumentError:h,RequestAbortedError:u,HeadersTimeoutError:E,HeadersOverflowError:m,SocketError:C,InformationalError:f,BodyTimeoutError:Q,HTTPParserError:I,ResponseExceededMaxSizeError:B,ClientDestroyedError:y}=oe(),w=vt(),{kUrl:v,kReset:S,kServerName:b,kClient:D,kBusy:F,kParser:R,kConnect:k,kBlocking:N,kResuming:_,kRunning:U,kPending:T,kSize:L,kWriting:M,kQueue:x,kConnected:V,kConnecting:H,kNeedDrain:P,kNoRef:J,kKeepAliveDefaultTimeout:Y,kHostHeader:G,kPendingIdx:O,kRunningIdx:q,kError:W,kPipelining:j,kSocket:K,kKeepAliveTimeoutValue:Z,kMaxHeadersSize:X,kKeepAliveMaxTimeout:z,kKeepAliveTimeoutThreshold:$,kHeadersTimeout:ee,kBodyTimeout:te,kStrictContentLength:Ae,kConnector:re,kMaxRedirections:ie,kMaxRequests:ne,kCounter:pe,kClose:le,kDestroy:ce,kDispatch:ge,kInterceptors:he,kLocalAddress:ue,kMaxResponseSize:Ee,kHTTPConnVersion:me,kHost:Ce,kHTTP2Session:fe,kHTTP2SessionState:Qe,kHTTP2BuildRequest:Ie,kHTTP2CopyHeaders:Be,kHTTP1BuildRequest:ye}=ae();let we;try{we=require("http2")}catch{we={constants:{}}}const{constants:{HTTP2_HEADER_AUTHORITY:ve,HTTP2_HEADER_METHOD:Se,HTTP2_HEADER_PATH:be,HTTP2_HEADER_SCHEME:De,HTTP2_HEADER_CONTENT_LENGTH:Fe,HTTP2_HEADER_EXPECT:Re,HTTP2_HEADER_STATUS:ke}}=we;let Ne=!1;const _e=Buffer[Symbol.species],Ue=Symbol("kClosedResolve"),Te={};try{const e=require("diagnostics_channel");Te.sendHeaders=e.channel("undici:client:sendHeaders"),Te.beforeConnect=e.channel("undici:client:beforeConnect"),Te.connectError=e.channel("undici:client:connectError"),Te.connected=e.channel("undici:client:connected")}catch{Te.sendHeaders={hasSubscribers:!1},Te.beforeConnect={hasSubscribers:!1},Te.connectError={hasSubscribers:!1},Te.connected={hasSubscribers:!1}}function Le(t){e("ERR_TLS_CERT_ALTNAME_INVALID"!==t.code),this[K][W]=t,rt(this[D],t)}function Me(e,t,A){const r=new f(`HTTP/2: "frameError" received - type ${e}, code ${t}`);0===A&&(this[K][W]=r,rt(this[D],r))}function xe(){s.destroy(this,new C("other side closed")),s.destroy(this[K],new C("other side closed"))}function Ve(t){const A=this[D],r=new f(`HTTP/2: "GOAWAY" frame received with code ${t}`);if(A[K]=null,A[fe]=null,A.destroyed){e(0===this[T]);const t=A[x].splice(A[q]);for(let e=0;e<t.length;e++){ut(this,t[e],r)}}else if(A[U]>0){const e=A[x][A[q]];A[x][A[q]++]=null,ut(A,e,r)}A[O]=A[q],e(0===A[U]),A.emit("disconnect",A[v],[A],r),st(A)}const He=eA(),Pe=AA(),Je=Buffer.alloc(0);let Ye=null,Ge=async function(){const t=process.env.JEST_WORKER_ID?rA():void 0;let A;try{A=await WebAssembly.compile(Buffer.from(Tt?Ut:(Tt=1,Ut="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="),"base64"))}catch(e){A=await WebAssembly.compile(Buffer.from(t||rA(),"base64"))}return await WebAssembly.instantiate(A,{env:{wasm_on_url:(e,t,A)=>0,wasm_on_status:(t,A,r)=>{e.strictEqual(Oe.ptr,t);const i=A-je+qe.byteOffset;return Oe.onStatus(new _e(qe.buffer,i,r))||0},wasm_on_message_begin:t=>(e.strictEqual(Oe.ptr,t),Oe.onMessageBegin()||0),wasm_on_header_field:(t,A,r)=>{e.strictEqual(Oe.ptr,t);const i=A-je+qe.byteOffset;return Oe.onHeaderField(new _e(qe.buffer,i,r))||0},wasm_on_header_value:(t,A,r)=>{e.strictEqual(Oe.ptr,t);const i=A-je+qe.byteOffset;return Oe.onHeaderValue(new _e(qe.buffer,i,r))||0},wasm_on_headers_complete:(t,A,r,i)=>(e.strictEqual(Oe.ptr,t),Oe.onHeadersComplete(A,Boolean(r),Boolean(i))||0),wasm_on_body:(t,A,r)=>{e.strictEqual(Oe.ptr,t);const i=A-je+qe.byteOffset;return Oe.onBody(new _e(qe.buffer,i,r))||0},wasm_on_message_complete:t=>(e.strictEqual(Oe.ptr,t),Oe.onMessageComplete()||0)}})}();Ge.catch();let Oe=null,qe=null,We=0,je=null;const Ke=1,Ze=3;class $e{constructor(t,A,{exports:r}){e(Number.isFinite(t[X])&&t[X]>0),this.llhttp=r,this.ptr=this.llhttp.llhttp_alloc(He.TYPE.RESPONSE),this.client=t,this.socket=A,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=t[X],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=t[Ee]}setTimeout(e,t){this.timeoutType=t,e!==this.timeoutValue?(d.clearTimeout(this.timeout),e?(this.timeout=d.setTimeout(et,e,this),this.timeout.unref&&this.timeout.unref()):this.timeout=null,this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh()}resume(){!this.socket.destroyed&&this.paused&&(e(null!=this.ptr),e(null==Oe),this.llhttp.llhttp_resume(this.ptr),e(2===this.timeoutType),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Je),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){const e=this.socket.read();if(null===e)break;this.execute(e)}}execute(t){e(null!=this.ptr),e(null==Oe),e(!this.paused);const{socket:A,llhttp:r}=this;t.length>We&&(je&&r.free(je),We=4096*Math.ceil(t.length/4096),je=r.malloc(We)),new Uint8Array(r.memory.buffer,je,We).set(t);try{let e;try{qe=t,Oe=this,e=r.llhttp_execute(this.ptr,je,t.length)}catch(e){throw e}finally{Oe=null,qe=null}const i=r.llhttp_get_error_pos(this.ptr)-je;if(e===He.ERROR.PAUSED_UPGRADE)this.onUpgrade(t.slice(i));else if(e===He.ERROR.PAUSED)this.paused=!0,A.unshift(t.slice(i));else if(e!==He.ERROR.OK){const A=r.llhttp_get_error_reason(this.ptr);let n="";if(A){const e=new Uint8Array(r.memory.buffer,A).indexOf(0);n="Response does not match the HTTP/1.1 protocol ("+Buffer.from(r.memory.buffer,A,e).toString()+")"}throw new I(n,He.ERROR[e],t.slice(i))}}catch(e){s.destroy(A,e)}}destroy(){e(null!=this.ptr),e(null==Oe),this.llhttp.llhttp_free(this.ptr),this.ptr=null,d.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(e){this.statusText=e.toString()}onMessageBegin(){const{socket:e,client:t}=this;if(e.destroyed)return-1;return t[x][t[q]]?void 0:-1}onHeaderField(e){const t=this.headers.length;1&t?this.headers[t-1]=Buffer.concat([this.headers[t-1],e]):this.headers.push(e),this.trackHeader(e.length)}onHeaderValue(e){let t=this.headers.length;1&~t?this.headers[t-1]=Buffer.concat([this.headers[t-1],e]):(this.headers.push(e),t+=1);const A=this.headers[t-2];10===A.length&&"keep-alive"===A.toString().toLowerCase()?this.keepAlive+=e.toString():10===A.length&&"connection"===A.toString().toLowerCase()?this.connection+=e.toString():14===A.length&&"content-length"===A.toString().toLowerCase()&&(this.contentLength+=e.toString()),this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&s.destroy(this.socket,new m)}onUpgrade(t){const{upgrade:A,client:r,socket:i,headers:n,statusCode:a}=this;e(A);const o=r[x][r[q]];e(o),e(!i.destroyed),e(i===r[K]),e(!this.paused),e(o.upgrade||"CONNECT"===o.method),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,e(this.headers.length%2==0),this.headers=[],this.headersSize=0,i.unshift(t),i[R].destroy(),i[R]=null,i[D]=null,i[W]=null,i.removeListener("error",At).removeListener("readable",tt).removeListener("end",it).removeListener("close",nt),r[K]=null,r[x][r[q]++]=null,r.emit("disconnect",r[v],[r],new f("upgrade"));try{o.onUpgrade(a,n,i)}catch(e){s.destroy(i,e)}st(r)}onHeadersComplete(t,A,r){const{client:i,socket:n,headers:a,statusText:o}=this;if(n.destroyed)return-1;const d=i[x][i[q]];if(!d)return-1;if(e(!this.upgrade),e(this.statusCode<200),100===t)return s.destroy(n,new C("bad response",s.getSocketInfo(n))),-1;if(A&&!d.upgrade)return s.destroy(n,new C("bad upgrade",s.getSocketInfo(n))),-1;if(e.strictEqual(this.timeoutType,Ke),this.statusCode=t,this.shouldKeepAlive=r||"HEAD"===d.method&&!n[S]&&"keep-alive"===this.connection.toLowerCase(),this.statusCode>=200){const e=null!=d.bodyTimeout?d.bodyTimeout:i[te];this.setTimeout(e,2)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if("CONNECT"===d.method)return e(1===i[U]),this.upgrade=!0,2;if(A)return e(1===i[U]),this.upgrade=!0,2;if(e(this.headers.length%2==0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&i[j]){const e=this.keepAlive?s.parseKeepAliveTimeout(this.keepAlive):null;if(null!=e){const t=Math.min(e-i[$],i[z]);t<=0?n[S]=!0:i[Z]=t}else i[Z]=i[Y]}else n[S]=!0;const p=!1===d.onHeaders(t,a,this.resume,o);return d.aborted?-1:"HEAD"===d.method||t<200?1:(n[N]&&(n[N]=!1,st(i)),p?He.ERROR.PAUSED:0)}onBody(t){const{client:A,socket:r,statusCode:i,maxResponseSize:n}=this;if(r.destroyed)return-1;const a=A[x][A[q]];return e(a),e.strictEqual(this.timeoutType,2),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),e(i>=200),n>-1&&this.bytesRead+t.length>n?(s.destroy(r,new B),-1):(this.bytesRead+=t.length,!1===a.onData(t)?He.ERROR.PAUSED:void 0)}onMessageComplete(){const{client:t,socket:A,statusCode:r,upgrade:i,headers:n,contentLength:a,bytesRead:o,shouldKeepAlive:d}=this;if(A.destroyed&&(!r||d))return-1;if(i)return;const p=t[x][t[q]];return e(p),e(r>=100),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",e(this.headers.length%2==0),this.headers=[],this.headersSize=0,r<200?void 0:"HEAD"!==p.method&&a&&o!==parseInt(a,10)?(s.destroy(A,new g),-1):(p.onComplete(n),t[x][t[q]++]=null,A[M]?(e.strictEqual(t[U],0),s.destroy(A,new f("reset")),He.ERROR.PAUSED):d?A[S]&&0===t[U]?(s.destroy(A,new f("reset")),He.ERROR.PAUSED):void(1===t[j]?setImmediate(st,t):st(t)):(s.destroy(A,new f("reset")),He.ERROR.PAUSED))}}function et(t){const{socket:A,timeoutType:r,client:i}=t;r===Ke?(!A[M]||A.writableNeedDrain||i[U]>1)&&(e(!t.paused,"cannot be paused while waiting for headers"),s.destroy(A,new E)):2===r?t.paused||s.destroy(A,new Q):r===Ze&&(e(0===i[U]&&i[Z]),s.destroy(A,new f("socket idle timeout")))}function tt(){const{[R]:e}=this;e&&e.readMore()}function At(t){const{[D]:A,[R]:r}=this;e("ERR_TLS_CERT_ALTNAME_INVALID"!==t.code),"h2"===A[me]||"ECONNRESET"!==t.code||!r.statusCode||r.shouldKeepAlive?(this[W]=t,rt(this[D],t)):r.onMessageComplete()}function rt(t,A){if(0===t[U]&&"UND_ERR_INFO"!==A.code&&"UND_ERR_SOCKET"!==A.code){e(t[O]===t[q]);const r=t[x].splice(t[q]);for(let e=0;e<r.length;e++){ut(t,r[e],A)}e(0===t[L])}}function it(){const{[R]:e,[D]:t}=this;"h2"===t[me]||!e.statusCode||e.shouldKeepAlive?s.destroy(this,new C("other side closed",s.getSocketInfo(this))):e.onMessageComplete()}function nt(){const{[D]:t,[R]:A}=this;"h1"===t[me]&&A&&(this[W]||!A.statusCode||A.shouldKeepAlive||A.onMessageComplete(),this[R].destroy(),this[R]=null);const r=this[W]||new C("closed",s.getSocketInfo(this));if(t[K]=null,t.destroyed){e(0===t[T]);const A=t[x].splice(t[q]);for(let e=0;e<A.length;e++){ut(t,A[e],r)}}else if(t[U]>0&&"UND_ERR_INFO"!==r.code){const e=t[x][t[q]];t[x][t[q]++]=null,ut(t,e,r)}t[O]=t[q],e(0===t[U]),t.emit("disconnect",t[v],[t],r),st(t)}async function at(A){e(!A[H]),e(!A[K]);let{host:r,hostname:i,protocol:n,port:a}=A[v];if("["===i[0]){const A=i.indexOf("]");e(-1!==A);const r=i.substring(1,A);e(t.isIP(r)),i=r}A[H]=!0,Te.beforeConnect.hasSubscribers&&Te.beforeConnect.publish({connectParams:{host:r,hostname:i,protocol:n,port:a,servername:A[b],localAddress:A[ue]},connector:A[re]});try{const t=await new Promise((e,t)=>{A[re]({host:r,hostname:i,protocol:n,port:a,servername:A[b],localAddress:A[ue]},(A,r)=>{A?t(A):e(r)})});if(A.destroyed)return void s.destroy(t.on("error",()=>{}),new y);A[H]=!1,e(t);if("h2"===t.alpnProtocol){Ne||(Ne=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));const e=we.connect(A[v],{createConnection:()=>t,peerMaxConcurrentStreams:A[Qe].maxConcurrentStreams});A[me]="h2",e[D]=A,e[K]=t,e.on("error",Le),e.on("frameError",Me),e.on("end",xe),e.on("goaway",Ve),e.on("close",nt),e.unref(),A[fe]=e,t[fe]=e}else Ye||(Ye=await Ge,Ge=null),t[J]=!1,t[M]=!1,t[S]=!1,t[N]=!1,t[R]=new $e(A,t,Ye);t[pe]=0,t[ne]=A[ne],t[D]=A,t[W]=null,t.on("error",At).on("readable",tt).on("end",it).on("close",nt),A[K]=t,Te.connected.hasSubscribers&&Te.connected.publish({connectParams:{host:r,hostname:i,protocol:n,port:a,servername:A[b],localAddress:A[ue]},connector:A[re],socket:t}),A.emit("connect",A[v],[A])}catch(t){if(A.destroyed)return;if(A[H]=!1,Te.connectError.hasSubscribers&&Te.connectError.publish({connectParams:{host:r,hostname:i,protocol:n,port:a,servername:A[b],localAddress:A[ue]},connector:A[re],error:t}),"ERR_TLS_CERT_ALTNAME_INVALID"===t.code)for(e(0===A[U]);A[T]>0&&A[x][A[O]].servername===A[b];){const e=A[x][A[O]++];ut(A,e,t)}else rt(A,t);A.emit("connectionError",A[v],[A],t)}st(A)}function ot(e){e[P]=0,e.emit("drain",e[v],[e])}function st(t,A){2!==t[_]&&(t[_]=2,function(t,A){for(;;){if(t.destroyed)return void e(0===t[T]);if(t[Ue]&&!t[L])return t[Ue](),void(t[Ue]=null);const r=t[K];if(r&&!r.destroyed&&"h2"!==r.alpnProtocol)if(0===t[L]?!r[J]&&r.unref&&(r.unref(),r[J]=!0):r[J]&&r.ref&&(r.ref(),r[J]=!1),0===t[L])r[R].timeoutType!==Ze&&r[R].setTimeout(t[Z],Ze);else if(t[U]>0&&r[R].statusCode<200&&r[R].timeoutType!==Ke){const e=t[x][t[q]],A=null!=e.headersTimeout?e.headersTimeout:t[ee];r[R].setTimeout(A,Ke)}if(t[F])t[P]=2;else if(2===t[P]){A?(t[P]=1,process.nextTick(ot,t)):ot(t);continue}if(0===t[T])return;if(t[U]>=(t[j]||1))return;const i=t[x][t[O]];if("https:"===t[v].protocol&&t[b]!==i.servername){if(t[U]>0)return;if(t[b]=i.servername,r&&r.servername!==i.servername)return void s.destroy(r,new f("servername changed"))}if(t[H])return;if(!r&&!t[fe])return void at(t);if(r.destroyed||r[M]||r[S]||r[N])return;if(t[U]>0&&!i.idempotent)return;if(t[U]>0&&(i.upgrade||"CONNECT"===i.method))return;if(t[U]>0&&0!==s.bodyLength(i.body)&&(s.isStream(i.body)||s.isAsyncIterable(i.body)))return;!i.aborted&&pt(t,i)?t[O]++:t[x].splice(t[O],1)}}(t,A),t[_]=0,t[q]>256&&(t[x].splice(0,t[q]),t[O]-=t[q],t[q]=0))}function dt(e){return"GET"!==e&&"HEAD"!==e&&"OPTIONS"!==e&&"TRACE"!==e&&"CONNECT"!==e}function pt(t,A){if("h2"===t[me])return void function(t,A,r){const{body:i,method:n,path:a,host:o,upgrade:d,expectContinue:l,signal:g,headers:h}=r;let E,m;E="string"==typeof h?p[Be](h.trim()):h;if(d)return ut(t,r,new Error("Upgrade not supported for H2")),!1;try{r.onConnect(e=>{r.aborted||r.completed||ut(t,r,e||new u)})}catch(e){ut(t,r,e)}if(r.aborted)return!1;const C=t[Qe];if(E[ve]=o||t[Ce],E[Se]=n,"CONNECT"===n)return A.ref(),m=A.request(E,{endStream:!1,signal:g}),m.id&&!m.pending?(r.onUpgrade(null,null,m),++C.openStreams):m.once("ready",()=>{r.onUpgrade(null,null,m),++C.openStreams}),m.once("close",()=>{C.openStreams-=1,0===C.openStreams&&A.unref()}),!0;E[be]=a,E[De]="https";const Q="PUT"===n||"POST"===n||"PATCH"===n;i&&"function"==typeof i.read&&i.read(0);let I=s.bodyLength(i);null==I&&(I=r.contentLength);0!==I&&Q||(I=null);if(dt(n)&&I>0&&null!=r.contentLength&&r.contentLength!==I){if(t[Ae])return ut(t,r,new c),!1;process.emitWarning(new c)}null!=I&&(e(i,"no body must not have content length"),E[Fe]=`${I}`);A.ref();const B="GET"===n||"HEAD"===n;l?(E[Re]="100-continue",m=A.request(E,{endStream:B,signal:g}),m.once("continue",y)):(m=A.request(E,{endStream:B,signal:g}),y());return++C.openStreams,m.once("response",e=>{const{[ke]:t,...A}=e;!1===r.onHeaders(Number(t),A,m.resume.bind(m),"")&&m.pause()}),m.once("end",()=>{r.onComplete([])}),m.on("data",e=>{!1===r.onData(e)&&m.pause()}),m.once("close",()=>{C.openStreams-=1,0===C.openStreams&&A.unref()}),m.once("error",function(e){!t[fe]||t[fe].destroyed||this.closed||this.destroyed||(C.streams-=1,s.destroy(m,e))}),m.once("frameError",(e,A)=>{const i=new f(`HTTP/2: "frameError" received - type ${e}, code ${A}`);ut(t,r,i),!t[fe]||t[fe].destroyed||this.closed||this.destroyed||(C.streams-=1,s.destroy(m,i))}),!0;function y(){i?s.isBuffer(i)?(e(I===i.byteLength,"buffer body must have content length"),m.cork(),m.write(i),m.uncork(),m.end(),r.onBodySent(i),r.onRequestSent()):s.isBlobLike(i)?"function"==typeof i.stream?gt({client:t,request:r,contentLength:I,h2stream:m,expectsPayload:Q,body:i.stream(),socket:t[K],header:""}):ct({body:i,client:t,request:r,contentLength:I,expectsPayload:Q,h2stream:m,header:"",socket:t[K]}):s.isStream(i)?lt({body:i,client:t,request:r,contentLength:I,expectsPayload:Q,socket:t[K],h2stream:m,header:""}):s.isIterable(i)?gt({body:i,client:t,request:r,contentLength:I,expectsPayload:Q,header:"",h2stream:m,socket:t[K]}):e(!1):r.onRequestSent()}}(t,t[fe],A);const{body:r,method:i,path:n,host:a,upgrade:o,headers:d,blocking:l,reset:g}=A,h="PUT"===i||"POST"===i||"PATCH"===i;r&&"function"==typeof r.read&&r.read(0);const E=s.bodyLength(r);let m=E;if(null===m&&(m=A.contentLength),0!==m||h||(m=null),dt(i)&&m>0&&null!==A.contentLength&&A.contentLength!==m){if(t[Ae])return ut(t,A,new c),!1;process.emitWarning(new c)}const C=t[K];try{A.onConnect(e=>{A.aborted||A.completed||(ut(t,A,e||new u),s.destroy(C,new f("aborted")))})}catch(e){ut(t,A,e)}if(A.aborted)return!1;"HEAD"===i&&(C[S]=!0),(o||"CONNECT"===i)&&(C[S]=!0),null!=g&&(C[S]=g),t[ne]&&C[pe]++>=t[ne]&&(C[S]=!0),l&&(C[N]=!0);let Q=`${i} ${n} HTTP/1.1\r\n`;return Q+="string"==typeof a?`host: ${a}\r\n`:t[G],o?Q+=`connection: upgrade\r\nupgrade: ${o}\r\n`:t[j]&&!C[S]?Q+="connection: keep-alive\r\n":Q+="connection: close\r\n",d&&(Q+=d),Te.sendHeaders.hasSubscribers&&Te.sendHeaders.publish({request:A,headers:Q,socket:C}),r&&0!==E?s.isBuffer(r)?(e(m===r.byteLength,"buffer body must have content length"),C.cork(),C.write(`${Q}content-length: ${m}\r\n\r\n`,"latin1"),C.write(r),C.uncork(),A.onBodySent(r),A.onRequestSent(),h||(C[S]=!0)):s.isBlobLike(r)?"function"==typeof r.stream?gt({body:r.stream(),client:t,request:A,socket:C,contentLength:m,header:Q,expectsPayload:h}):ct({body:r,client:t,request:A,socket:C,contentLength:m,header:Q,expectsPayload:h}):s.isStream(r)?lt({body:r,client:t,request:A,socket:C,contentLength:m,header:Q,expectsPayload:h}):s.isIterable(r)?gt({body:r,client:t,request:A,socket:C,contentLength:m,header:Q,expectsPayload:h}):e(!1):(0===m?C.write(`${Q}content-length: 0\r\n\r\n`,"latin1"):(e(null===m,"no body must not have content length"),C.write(`${Q}\r\n`,"latin1")),A.onRequestSent()),!0}function lt({h2stream:t,body:A,client:r,request:i,socket:n,contentLength:a,header:d,expectsPayload:p}){if(e(0!==a||0===r[U],"stream body cannot be pipelined"),"h2"===r[me]){const C=o(A,t,e=>{e?(s.destroy(A,e),s.destroy(t,e)):i.onRequestSent()});function f(e){i.onBodySent(e)}return C.on("data",f),void C.once("end",()=>{C.removeListener("data",f),s.destroy(C)})}let l=!1;const c=new ht({socket:n,request:i,contentLength:a,client:r,expectsPayload:p,header:d}),g=function(e){if(!l)try{!c.write(e)&&this.pause&&this.pause()}catch(e){s.destroy(this,e)}},h=function(){l||A.resume&&A.resume()},E=function(){if(l)return;const e=new u;queueMicrotask(()=>m(e))},m=function(t){if(!l){if(l=!0,e(n.destroyed||n[M]&&r[U]<=1),n.off("drain",h).off("error",m),A.removeListener("data",g).removeListener("end",m).removeListener("error",m).removeListener("close",E),!t)try{c.end()}catch(e){t=e}c.destroy(t),!t||"UND_ERR_INFO"===t.code&&"reset"===t.message?s.destroy(A):s.destroy(A,t)}};A.on("data",g).on("end",m).on("error",m).on("close",E),A.resume&&A.resume(),n.on("drain",h).on("error",m)}async function ct({h2stream:t,body:A,client:r,request:i,socket:n,contentLength:a,header:o,expectsPayload:d}){e(a===A.size,"blob body must have content length");const p="h2"===r[me];try{if(null!=a&&a!==A.size)throw new c;const e=Buffer.from(await A.arrayBuffer());p?(t.cork(),t.write(e),t.uncork()):(n.cork(),n.write(`${o}content-length: ${a}\r\n\r\n`,"latin1"),n.write(e),n.uncork()),i.onBodySent(e),i.onRequestSent(),d||(n[S]=!0),st(r)}catch(e){s.destroy(p?t:n,e)}}async function gt({h2stream:t,body:A,client:r,request:i,socket:n,contentLength:a,header:o,expectsPayload:s}){e(0!==a||0===r[U],"iterator body cannot be pipelined");let d=null;function p(){if(d){const e=d;d=null,e()}}const l=()=>new Promise((t,A)=>{e(null===d),n[W]?A(n[W]):d=t});if("h2"===r[me]){t.on("close",p).on("drain",p);try{for await(const e of A){if(n[W])throw n[W];const A=t.write(e);i.onBodySent(e),A||await l()}}catch(e){t.destroy(e)}finally{i.onRequestSent(),t.end(),t.off("close",p).off("drain",p)}return}n.on("close",p).on("drain",p);const c=new ht({socket:n,request:i,contentLength:a,client:r,expectsPayload:s,header:o});try{for await(const e of A){if(n[W])throw n[W];c.write(e)||await l()}c.end()}catch(e){c.destroy(e)}finally{n.off("close",p).off("drain",p)}}class ht{constructor({socket:e,request:t,contentLength:A,client:r,expectsPayload:i,header:n}){this.socket=e,this.request=t,this.contentLength=A,this.client=r,this.bytesWritten=0,this.expectsPayload=i,this.header=n,e[M]=!0}write(e){const{socket:t,request:A,contentLength:r,client:i,bytesWritten:n,expectsPayload:a,header:o}=this;if(t[W])throw t[W];if(t.destroyed)return!1;const s=Buffer.byteLength(e);if(!s)return!0;if(null!==r&&n+s>r){if(i[Ae])throw new c;process.emitWarning(new c)}t.cork(),0===n&&(a||(t[S]=!0),null===r?t.write(`${o}transfer-encoding: chunked\r\n`,"latin1"):t.write(`${o}content-length: ${r}\r\n\r\n`,"latin1")),null===r&&t.write(`\r\n${s.toString(16)}\r\n`,"latin1"),this.bytesWritten+=s;const d=t.write(e);return t.uncork(),A.onBodySent(e),d||t[R].timeout&&t[R].timeoutType===Ke&&t[R].timeout.refresh&&t[R].timeout.refresh(),d}end(){const{socket:e,contentLength:t,client:A,bytesWritten:r,expectsPayload:i,header:n,request:a}=this;if(a.onRequestSent(),e[M]=!1,e[W])throw e[W];if(!e.destroyed){if(0===r?i?e.write(`${n}content-length: 0\r\n\r\n`,"latin1"):e.write(`${n}\r\n`,"latin1"):null===t&&e.write("\r\n0\r\n\r\n","latin1"),null!==t&&r!==t){if(A[Ae])throw new c;process.emitWarning(new c)}e[R].timeout&&e[R].timeoutType===Ke&&e[R].timeout.refresh&&e[R].timeout.refresh(),st(A)}}destroy(t){const{socket:A,client:r}=this;A[M]=!1,t&&(e(r[U]<=1,"pipeline should only contain this request"),s.destroy(A,t))}}function ut(t,A,r){try{A.onError(r),e(A.aborted)}catch(r){t.emit("error",r)}}return Lt=class extends l{constructor(e,{interceptors:A,maxHeaderSize:r,headersTimeout:i,socketTimeout:n,requestTimeout:o,connectTimeout:d,bodyTimeout:p,idleTimeout:l,keepAlive:c,keepAliveTimeout:g,maxKeepAliveTimeout:u,keepAliveMaxTimeout:E,keepAliveTimeoutThreshold:m,socketPath:C,pipelining:f,tls:Q,strictContentLength:I,maxCachedSessions:B,maxRedirections:y,connect:S,maxRequestsPerClient:D,localAddress:F,maxResponseSize:R,autoSelectFamily:k,autoSelectFamilyAttemptTimeout:N,allowH2:U,maxConcurrentStreams:T}={}){if(super(),void 0!==c)throw new h("unsupported keepAlive, use pipelining=0 instead");if(void 0!==n)throw new h("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(void 0!==o)throw new h("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(void 0!==l)throw new h("unsupported idleTimeout, use keepAliveTimeout instead");if(void 0!==u)throw new h("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(null!=r&&!Number.isFinite(r))throw new h("invalid maxHeaderSize");if(null!=C&&"string"!=typeof C)throw new h("invalid socketPath");if(null!=d&&(!Number.isFinite(d)||d<0))throw new h("invalid connectTimeout");if(null!=g&&(!Number.isFinite(g)||g<=0))throw new h("invalid keepAliveTimeout");if(null!=E&&(!Number.isFinite(E)||E<=0))throw new h("invalid keepAliveMaxTimeout");if(null!=m&&!Number.isFinite(m))throw new h("invalid keepAliveTimeoutThreshold");if(null!=i&&(!Number.isInteger(i)||i<0))throw new h("headersTimeout must be a positive integer or zero");if(null!=p&&(!Number.isInteger(p)||p<0))throw new h("bodyTimeout must be a positive integer or zero");if(null!=S&&"function"!=typeof S&&"object"!=typeof S)throw new h("connect must be a function or an object");if(null!=y&&(!Number.isInteger(y)||y<0))throw new h("maxRedirections must be a positive number");if(null!=D&&(!Number.isInteger(D)||D<0))throw new h("maxRequestsPerClient must be a positive number");if(null!=F&&("string"!=typeof F||0===t.isIP(F)))throw new h("localAddress must be valid string IP address");if(null!=R&&(!Number.isInteger(R)||R<-1))throw new h("maxResponseSize must be a positive number");if(null!=N&&(!Number.isInteger(N)||N<-1))throw new h("autoSelectFamilyAttemptTimeout must be a positive number");if(null!=U&&"boolean"!=typeof U)throw new h("allowH2 must be a valid boolean value");if(null!=T&&("number"!=typeof T||T<1))throw new h("maxConcurrentStreams must be a possitive integer, greater than 0");"function"!=typeof S&&(S=w({...Q,maxCachedSessions:B,allowH2:U,socketPath:C,timeout:d,...s.nodeHasAutoSelectFamily&&k?{autoSelectFamily:k,autoSelectFamilyAttemptTimeout:N}:void 0,...S})),this[he]=A&&A.Client&&Array.isArray(A.Client)?A.Client:[Pe({maxRedirections:y})],this[v]=s.parseOrigin(e),this[re]=S,this[K]=null,this[j]=null!=f?f:1,this[X]=r||a.maxHeaderSize,this[Y]=null==g?4e3:g,this[z]=null==E?6e5:E,this[$]=null==m?1e3:m,this[Z]=this[Y],this[b]=null,this[ue]=null!=F?F:null,this[_]=0,this[P]=0,this[G]=`host: ${this[v].hostname}${this[v].port?`:${this[v].port}`:""}\r\n`,this[te]=null!=p?p:3e5,this[ee]=null!=i?i:3e5,this[Ae]=null==I||I,this[ie]=y,this[ne]=D,this[Ue]=null,this[Ee]=R>-1?R:-1,this[me]="h1",this[fe]=null,this[Qe]=U?{openStreams:0,maxConcurrentStreams:null!=T?T:100}:null,this[Ce]=`${this[v].hostname}${this[v].port?`:${this[v].port}`:""}`,this[x]=[],this[q]=0,this[O]=0}get pipelining(){return this[j]}set pipelining(e){this[j]=e,st(this,!0)}get[T](){return this[x].length-this[O]}get[U](){return this[O]-this[q]}get[L](){return this[x].length-this[q]}get[V](){return!!this[K]&&!this[H]&&!this[K].destroyed}get[F](){const e=this[K];return e&&(e[S]||e[M]||e[N])||this[L]>=(this[j]||1)||this[T]>0}[k](e){at(this),this.once("connect",e)}[ge](e,t){const A=e.origin||this[v].origin,r="h2"===this[me]?p[Ie](A,e,t):p[ye](A,e,t);return this[x].push(r),this[_]||(null==s.bodyLength(r.body)&&s.isIterable(r.body)?(this[_]=1,process.nextTick(st,this)):st(this,!0)),this[_]&&2!==this[P]&&this[F]&&(this[P]=2),this[P]<2}async[le](){return new Promise(e=>{this[L]?this[Ue]=e:e(null)})}async[ce](e){return new Promise(t=>{const A=this[x].splice(this[O]);for(let t=0;t<A.length;t++){ut(this,A[t],e)}const r=()=>{this[Ue]&&(this[Ue](),this[Ue]=null),t()};null!=this[fe]&&(s.destroy(this[fe],e),this[fe]=null,this[Qe]=null),this[K]?s.destroy(this[K].on("close",r),e):queueMicrotask(r),st(this)})}},Lt}function nA(){if(Yt)return Jt;Yt=1;const e=wt(),t=function(){if(Vt)return xt;Vt=1;const e=2047;class t{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&e)===this.bottom}push(t){this.list[this.top]=t,this.top=this.top+1&e}shift(){const t=this.list[this.bottom];return void 0===t?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&e,t)}}return xt=class{constructor(){this.head=this.tail=new t}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new t),this.head.push(e)}shift(){const e=this.tail,t=e.shift();return e.isEmpty()&&null!==e.next&&(this.tail=e.next),t}}}(),{kConnected:A,kSize:r,kRunning:i,kPending:n,kQueued:a,kBusy:o,kFree:s,kUrl:d,kClose:p,kDestroy:l,kDispatch:c}=ae(),g=function(){if(Pt)return Ht;Pt=1;const{kFree:e,kConnected:t,kPending:A,kQueued:r,kRunning:i,kSize:n}=ae(),a=Symbol("pool");return Ht=class{constructor(e){this[a]=e}get connected(){return this[a][t]}get free(){return this[a][e]}get pending(){return this[a][A]}get queued(){return this[a][r]}get running(){return this[a][i]}get size(){return this[a][n]}},Ht}(),h=Symbol("clients"),u=Symbol("needDrain"),E=Symbol("queue"),m=Symbol("closed resolve"),C=Symbol("onDrain"),f=Symbol("onConnect"),Q=Symbol("onDisconnect"),I=Symbol("onConnectionError"),B=Symbol("get dispatcher"),y=Symbol("add client"),w=Symbol("remove client"),v=Symbol("stats");return Jt={PoolBase:class extends e{constructor(){super(),this[E]=new t,this[h]=[],this[a]=0;const e=this;this[C]=function(t,A){const r=e[E];let i=!1;for(;!i;){const t=r.shift();if(!t)break;e[a]--,i=!this.dispatch(t.opts,t.handler)}this[u]=i,!this[u]&&e[u]&&(e[u]=!1,e.emit("drain",t,[e,...A])),e[m]&&r.isEmpty()&&Promise.all(e[h].map(e=>e.close())).then(e[m])},this[f]=(t,A)=>{e.emit("connect",t,[e,...A])},this[Q]=(t,A,r)=>{e.emit("disconnect",t,[e,...A],r)},this[I]=(t,A,r)=>{e.emit("connectionError",t,[e,...A],r)},this[v]=new g(this)}get[o](){return this[u]}get[A](){return this[h].filter(e=>e[A]).length}get[s](){return this[h].filter(e=>e[A]&&!e[u]).length}get[n](){let e=this[a];for(const{[n]:t}of this[h])e+=t;return e}get[i](){let e=0;for(const{[i]:t}of this[h])e+=t;return e}get[r](){let e=this[a];for(const{[r]:t}of this[h])e+=t;return e}get stats(){return this[v]}async[p](){return this[E].isEmpty()?Promise.all(this[h].map(e=>e.close())):new Promise(e=>{this[m]=e})}async[l](e){for(;;){const t=this[E].shift();if(!t)break;t.handler.onError(e)}return Promise.all(this[h].map(t=>t.destroy(e)))}[c](e,t){const A=this[B]();return A?A.dispatch(e,t)||(A[u]=!0,this[u]=!this[B]()):(this[u]=!0,this[E].push({opts:e,handler:t}),this[a]++),!this[u]}[y](e){return e.on("drain",this[C]).on("connect",this[f]).on("disconnect",this[Q]).on("connectionError",this[I]),this[h].push(e),this[u]&&process.nextTick(()=>{this[u]&&this[C](e[d],[this,e])}),this}[w](e){e.close(()=>{const t=this[h].indexOf(e);-1!==t&&this[h].splice(t,1)}),this[u]=this[h].some(e=>!e[u]&&!0!==e.closed&&!0!==e.destroyed)}},kClients:h,kNeedDrain:u,kAddClient:y,kRemoveClient:w,kGetDispatcher:B},Jt}function aA(){if(Ot)return Gt;Ot=1;const{PoolBase:e,kClients:t,kNeedDrain:A,kAddClient:r,kGetDispatcher:i}=nA(),n=iA(),{InvalidArgumentError:a}=oe(),o=se(),{kUrl:s,kInterceptors:d}=ae(),p=vt(),l=Symbol("options"),c=Symbol("connections"),g=Symbol("factory");function h(e,t){return new n(e,t)}return Gt=class extends e{constructor(e,{connections:A,factory:r=h,connect:i,connectTimeout:n,tls:u,maxCachedSessions:E,socketPath:m,autoSelectFamily:C,autoSelectFamilyAttemptTimeout:f,allowH2:Q,...I}={}){if(super(),null!=A&&(!Number.isFinite(A)||A<0))throw new a("invalid connections");if("function"!=typeof r)throw new a("factory must be a function.");if(null!=i&&"function"!=typeof i&&"object"!=typeof i)throw new a("connect must be a function or an object");"function"!=typeof i&&(i=p({...u,maxCachedSessions:E,allowH2:Q,socketPath:m,timeout:n,...o.nodeHasAutoSelectFamily&&C?{autoSelectFamily:C,autoSelectFamilyAttemptTimeout:f}:void 0,...i})),this[d]=I.interceptors&&I.interceptors.Pool&&Array.isArray(I.interceptors.Pool)?I.interceptors.Pool:[],this[c]=A||null,this[s]=o.parseOrigin(e),this[l]={...o.deepClone(I),connect:i,allowH2:Q},this[l].interceptors=I.interceptors?{...I.interceptors}:void 0,this[g]=r,this.on("connectionError",(e,A,r)=>{for(const e of A){const A=this[t].indexOf(e);-1!==A&&this[t].splice(A,1)}})}[i](){let e=this[t].find(e=>!e[A]);return e||((!this[c]||this[t].length<this[c])&&(e=this[g](this[s],this[l]),this[r](e)),e)}},Gt}function oA(){if(Kt)return jt;Kt=1;const{kConnected:e,kSize:t}=ae();class A{constructor(e){this.value=e}deref(){return 0===this.value[e]&&0===this.value[t]?void 0:this.value}}class r{constructor(e){this.finalizer=e}register(A,r){A.on&&A.on("disconnect",()=>{0===A[e]&&0===A[t]&&this.finalizer(r)})}}return jt=function(){return process.env.NODE_V8_COVERAGE?{WeakRef:A,FinalizationRegistry:r}:{WeakRef:W.WeakRef||A,FinalizationRegistry:W.FinalizationRegistry||r}}}function sA(){if(Xt)return Zt;Xt=1;const{InvalidArgumentError:e}=oe(),{kClients:t,kRunning:A,kClose:r,kDestroy:i,kDispatch:n,kInterceptors:a}=ae(),o=wt(),s=aA(),d=iA(),p=se(),l=AA(),{WeakRef:c,FinalizationRegistry:g}=oA()(),h=Symbol("onConnect"),u=Symbol("onDisconnect"),E=Symbol("onConnectionError"),m=Symbol("maxRedirections"),C=Symbol("onDrain"),f=Symbol("factory"),Q=Symbol("finalizer"),I=Symbol("options");function B(e,t){return t&&1===t.connections?new d(e,t):new s(e,t)}return Zt=class extends o{constructor({factory:A=B,maxRedirections:r=0,connect:i,...n}={}){if(super(),"function"!=typeof A)throw new e("factory must be a function.");if(null!=i&&"function"!=typeof i&&"object"!=typeof i)throw new e("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new e("maxRedirections must be a positive number");i&&"function"!=typeof i&&(i={...i}),this[a]=n.interceptors&&n.interceptors.Agent&&Array.isArray(n.interceptors.Agent)?n.interceptors.Agent:[l({maxRedirections:r})],this[I]={...p.deepClone(n),connect:i},this[I].interceptors=n.interceptors?{...n.interceptors}:void 0,this[m]=r,this[f]=A,this[t]=new Map,this[Q]=new g(e=>{const A=this[t].get(e);void 0!==A&&void 0===A.deref()&&this[t].delete(e)});const o=this;this[C]=(e,t)=>{o.emit("drain",e,[o,...t])},this[h]=(e,t)=>{o.emit("connect",e,[o,...t])},this[u]=(e,t,A)=>{o.emit("disconnect",e,[o,...t],A)},this[E]=(e,t,A)=>{o.emit("connectionError",e,[o,...t],A)}}get[A](){let e=0;for(const r of this[t].values()){const t=r.deref();t&&(e+=t[A])}return e}[n](A,r){let i;if(!A.origin||!("string"==typeof A.origin||A.origin instanceof URL))throw new e("opts.origin must be a non-empty string or URL.");i=String(A.origin);const n=this[t].get(i);let a=n?n.deref():null;return a||(a=this[f](A.origin,this[I]).on("drain",this[C]).on("connect",this[h]).on("disconnect",this[u]).on("connectionError",this[E]),this[t].set(i,new c(a)),this[Q].register(a,i)),a.dispatch(A,r)}async[r](){const e=[];for(const A of this[t].values()){const t=A.deref();t&&e.push(t.close())}await Promise.all(e)}async[i](e){const A=[];for(const r of this[t].values()){const t=r.deref();t&&A.push(t.destroy(e))}await Promise.all(A)}},Zt}var dA,pA,lA,cA,gA,hA,uA,EA,mA,CA,fA,QA,IA,BA,yA,wA,vA,SA,bA,DA,FA,RA,kA={},NA={exports:{}};function _A(){if(pA)return dA;pA=1;const e=A,{Readable:t}=n,{RequestAbortedError:r,NotSupportedError:i,InvalidArgumentError:a}=oe(),o=se(),{ReadableStreamFrom:s,toUSVString:d}=se();let p;const l=Symbol("kConsume"),c=Symbol("kReading"),g=Symbol("kBody"),h=Symbol("abort"),u=Symbol("kContentType"),E=()=>{};function m(e){return o.isDisturbed(e)||function(e){return e[g]&&!0===e[g].locked||e[l]}(e)}async function C(t,A){if(m(t))throw new TypeError("unusable");return e(!t[l]),new Promise((e,i)=>{t[l]={type:A,stream:t,resolve:e,reject:i,length:0,body:[]},t.on("error",function(e){B(this[l],e)}).on("close",function(){null!==this[l].body&&B(this[l],new r)}),process.nextTick(f,t[l])})}function f(e){if(null===e.body)return;const{_readableState:t}=e.stream;for(const A of t.buffer)I(e,A);for(t.endEmitted?Q(this[l]):e.stream.on("end",function(){Q(this[l])}),e.stream.resume();null!=e.stream.read(););}function Q(e){const{type:t,body:A,resolve:r,stream:i,length:n}=e;try{if("text"===t)r(d(Buffer.concat(A)));else if("json"===t)r(JSON.parse(Buffer.concat(A)));else if("arrayBuffer"===t){const e=new Uint8Array(n);let t=0;for(const r of A)e.set(r,t),t+=r.byteLength;r(e.buffer)}else"blob"===t&&(p||(p=require("buffer").Blob),r(new p(A,{type:i[u]})));B(e)}catch(e){i.destroy(e)}}function I(e,t){e.length+=t.length,e.body.push(t)}function B(e,t){null!==e.body&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}return dA=class extends t{constructor({resume:e,abort:t,contentType:A="",highWaterMark:r=65536}){super({autoDestroy:!0,read:e,highWaterMark:r}),this._readableState.dataEmitted=!1,this[h]=t,this[l]=null,this[g]=null,this[u]=A,this[c]=!1}destroy(e){return this.destroyed?this:(e||this._readableState.endEmitted||(e=new r),e&&this[h](),super.destroy(e))}emit(e,...t){return"data"===e?this._readableState.dataEmitted=!0:"error"===e&&(this._readableState.errorEmitted=!0),super.emit(e,...t)}on(e,...t){return"data"!==e&&"readable"!==e||(this[c]=!0),super.on(e,...t)}addListener(e,...t){return this.on(e,...t)}off(e,...t){const A=super.off(e,...t);return"data"!==e&&"readable"!==e||(this[c]=this.listenerCount("data")>0||this.listenerCount("readable")>0),A}removeListener(e,...t){return this.off(e,...t)}push(e){return this[l]&&null!==e&&0===this.readableLength?(I(this[l],e),!this[c]||super.push(e)):super.push(e)}async text(){return C(this,"text")}async json(){return C(this,"json")}async blob(){return C(this,"blob")}async arrayBuffer(){return C(this,"arrayBuffer")}async formData(){throw new i}get bodyUsed(){return o.isDisturbed(this)}get body(){return this[g]||(this[g]=s(this),this[l]&&(this[g].getReader(),e(this[g].locked))),this[g]}dump(e){let t=e&&Number.isFinite(e.limit)?e.limit:262144;const A=e&&e.signal;if(A)try{if("object"!=typeof A||!("aborted"in A))throw new a("signal must be an AbortSignal");o.throwIfAborted(A)}catch(e){return Promise.reject(e)}return this.closed?Promise.resolve(null):new Promise((e,r)=>{const i=A?o.addAbortListener(A,()=>{this.destroy()}):E;this.on("close",function(){i(),A&&A.aborted?r(A.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"})):e(null)}).on("error",E).on("data",function(e){t-=e.length,t<=0&&this.destroy()}).resume()})}}}function UA(){if(cA)return lA;cA=1;const e=A,{ResponseStatusCodeError:t}=oe(),{toUSVString:r}=se();return lA={getResolveErrorBodyCallback:async function({callback:A,body:i,contentType:n,statusCode:a,statusMessage:o,headers:s}){e(i);let d=[],p=0;for await(const e of i)if(d.push(e),p+=e.length,p>131072){d=null;break}if(204!==a&&n&&d){try{if(n.startsWith("application/json")){const e=JSON.parse(r(Buffer.concat(d)));return void process.nextTick(A,new t(`Response status code ${a}${o?`: ${o}`:""}`,a,s,e))}if(n.startsWith("text/")){const e=r(Buffer.concat(d));return void process.nextTick(A,new t(`Response status code ${a}${o?`: ${o}`:""}`,a,s,e))}}catch(e){}process.nextTick(A,new t(`Response status code ${a}${o?`: ${o}`:""}`,a,s))}else process.nextTick(A,new t(`Response status code ${a}${o?`: ${o}`:""}`,a,s))}},lA}function TA(){if(hA)return gA;hA=1;const{addAbortListener:e}=se(),{RequestAbortedError:t}=oe(),A=Symbol("kListener"),r=Symbol("kSignal");function i(e){e.abort?e.abort():e.onError(new t)}return gA={addSignal:function(t,n){t[r]=null,t[A]=null,n&&(n.aborted?i(t):(t[r]=n,t[A]=()=>{i(t)},e(t[r],t[A])))},removeSignal:function(e){e[r]&&("removeEventListener"in e[r]?e[r].removeEventListener("abort",e[A]):e[r].removeListener("abort",e[A]),e[r]=null,e[A]=null)}}}function LA(){return wA||(wA=1,kA.request=function(){if(uA)return NA.exports;uA=1;const e=_A(),{InvalidArgumentError:t,RequestAbortedError:A}=oe(),r=se(),{getResolveErrorBodyCallback:i}=UA(),{AsyncResource:n}=Q,{addSignal:a,removeSignal:o}=TA();class s extends n{constructor(e,A){if(!e||"object"!=typeof e)throw new t("invalid opts");const{signal:i,method:n,opaque:o,body:s,onInfo:d,responseHeaders:p,throwOnError:l,highWaterMark:c}=e;try{if("function"!=typeof A)throw new t("invalid callback");if(c&&("number"!=typeof c||c<0))throw new t("invalid highWaterMark");if(i&&"function"!=typeof i.on&&"function"!=typeof i.addEventListener)throw new t("signal must be an EventEmitter or EventTarget");if("CONNECT"===n)throw new t("invalid method");if(d&&"function"!=typeof d)throw new t("invalid onInfo callback");super("UNDICI_REQUEST")}catch(e){throw r.isStream(s)&&r.destroy(s.on("error",r.nop),e),e}this.responseHeaders=p||null,this.opaque=o||null,this.callback=A,this.res=null,this.abort=null,this.body=s,this.trailers={},this.context=null,this.onInfo=d||null,this.throwOnError=l,this.highWaterMark=c,r.isStream(s)&&s.on("error",e=>{this.onError(e)}),a(this,i)}onConnect(e,t){if(!this.callback)throw new A;this.abort=e,this.context=t}onHeaders(t,A,n,a){const{callback:o,opaque:s,abort:d,context:p,responseHeaders:l,highWaterMark:c}=this,g="raw"===l?r.parseRawHeaders(A):r.parseHeaders(A);if(t<200)return void(this.onInfo&&this.onInfo({statusCode:t,headers:g}));const h=("raw"===l?r.parseHeaders(A):g)["content-type"],u=new e({resume:n,abort:d,contentType:h,highWaterMark:c});this.callback=null,this.res=u,null!==o&&(this.throwOnError&&t>=400?this.runInAsyncScope(i,null,{callback:o,body:u,contentType:h,statusCode:t,statusMessage:a,headers:g}):this.runInAsyncScope(o,null,null,{statusCode:t,headers:g,trailers:this.trailers,opaque:s,body:u,context:p}))}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;o(this),r.parseHeaders(e,this.trailers),t.push(null)}onError(e){const{res:t,callback:A,body:i,opaque:n}=this;o(this),A&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(A,null,e,{opaque:n})})),t&&(this.res=null,queueMicrotask(()=>{r.destroy(t,e)})),i&&(this.body=null,r.destroy(i,e))}}return NA.exports=function e(t,A){if(void 0===A)return new Promise((A,r)=>{e.call(this,t,(e,t)=>e?r(e):A(t))});try{this.dispatch(t,new s(t,A))}catch(e){if("function"!=typeof A)throw e;const r=t&&t.opaque;queueMicrotask(()=>A(e,{opaque:r}))}},NA.exports.RequestHandler=s,NA.exports}(),kA.stream=function(){if(mA)return EA;mA=1;const{finished:e,PassThrough:t}=n,{InvalidArgumentError:A,InvalidReturnValueError:r,RequestAbortedError:i}=oe(),a=se(),{getResolveErrorBodyCallback:o}=UA(),{AsyncResource:s}=Q,{addSignal:d,removeSignal:p}=TA();class l extends s{constructor(e,t,r){if(!e||"object"!=typeof e)throw new A("invalid opts");const{signal:i,method:n,opaque:o,body:s,onInfo:p,responseHeaders:l,throwOnError:c}=e;try{if("function"!=typeof r)throw new A("invalid callback");if("function"!=typeof t)throw new A("invalid factory");if(i&&"function"!=typeof i.on&&"function"!=typeof i.addEventListener)throw new A("signal must be an EventEmitter or EventTarget");if("CONNECT"===n)throw new A("invalid method");if(p&&"function"!=typeof p)throw new A("invalid onInfo callback");super("UNDICI_STREAM")}catch(e){throw a.isStream(s)&&a.destroy(s.on("error",a.nop),e),e}this.responseHeaders=l||null,this.opaque=o||null,this.factory=t,this.callback=r,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=s,this.onInfo=p||null,this.throwOnError=c||!1,a.isStream(s)&&s.on("error",e=>{this.onError(e)}),d(this,i)}onConnect(e,t){if(!this.callback)throw new i;this.abort=e,this.context=t}onHeaders(A,i,n,s){const{factory:d,opaque:p,context:l,callback:c,responseHeaders:g}=this,h="raw"===g?a.parseRawHeaders(i):a.parseHeaders(i);if(A<200)return void(this.onInfo&&this.onInfo({statusCode:A,headers:h}));let u;if(this.factory=null,this.throwOnError&&A>=400){const e=("raw"===g?a.parseHeaders(i):h)["content-type"];u=new t,this.callback=null,this.runInAsyncScope(o,null,{callback:c,body:u,contentType:e,statusCode:A,statusMessage:s,headers:h})}else{if(null===d)return;if(u=this.runInAsyncScope(d,null,{statusCode:A,headers:h,opaque:p,context:l}),!u||"function"!=typeof u.write||"function"!=typeof u.end||"function"!=typeof u.on)throw new r("expected Writable");e(u,{readable:!1},e=>{const{callback:t,res:A,opaque:r,trailers:i,abort:n}=this;this.res=null,!e&&A.readable||a.destroy(A,e),this.callback=null,this.runInAsyncScope(t,null,e||null,{opaque:r,trailers:i}),e&&n()})}return u.on("drain",n),this.res=u,!0!==(void 0!==u.writableNeedDrain?u.writableNeedDrain:u._writableState&&u._writableState.needDrain)}onData(e){const{res:t}=this;return!t||t.write(e)}onComplete(e){const{res:t}=this;p(this),t&&(this.trailers=a.parseHeaders(e),t.end())}onError(e){const{res:t,callback:A,opaque:r,body:i}=this;p(this),this.factory=null,t?(this.res=null,a.destroy(t,e)):A&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(A,null,e,{opaque:r})})),i&&(this.body=null,a.destroy(i,e))}}return EA=function e(t,A,r){if(void 0===r)return new Promise((r,i)=>{e.call(this,t,A,(e,t)=>e?i(e):r(t))});try{this.dispatch(t,new l(t,A,r))}catch(e){if("function"!=typeof r)throw e;const A=t&&t.opaque;queueMicrotask(()=>r(e,{opaque:A}))}}}(),kA.pipeline=function(){if(fA)return CA;fA=1;const{Readable:e,Duplex:t,PassThrough:r}=n,{InvalidArgumentError:i,InvalidReturnValueError:a,RequestAbortedError:o}=oe(),s=se(),{AsyncResource:d}=Q,{addSignal:p,removeSignal:l}=TA(),c=A,g=Symbol("resume");class h extends e{constructor(){super({autoDestroy:!0}),this[g]=null}_read(){const{[g]:e}=this;e&&(this[g]=null,e())}_destroy(e,t){this._read(),t(e)}}class u extends e{constructor(e){super({autoDestroy:!0}),this[g]=e}_read(){this[g]()}_destroy(e,t){e||this._readableState.endEmitted||(e=new o),t(e)}}class E extends d{constructor(e,A){if(!e||"object"!=typeof e)throw new i("invalid opts");if("function"!=typeof A)throw new i("invalid handler");const{signal:r,method:n,opaque:a,onInfo:d,responseHeaders:c}=e;if(r&&"function"!=typeof r.on&&"function"!=typeof r.addEventListener)throw new i("signal must be an EventEmitter or EventTarget");if("CONNECT"===n)throw new i("invalid method");if(d&&"function"!=typeof d)throw new i("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=a||null,this.responseHeaders=c||null,this.handler=A,this.abort=null,this.context=null,this.onInfo=d||null,this.req=(new h).on("error",s.nop),this.ret=new t({readableObjectMode:e.objectMode,autoDestroy:!0,read:()=>{const{body:e}=this;e&&e.resume&&e.resume()},write:(e,t,A)=>{const{req:r}=this;r.push(e,t)||r._readableState.destroyed?A():r[g]=A},destroy:(e,t)=>{const{body:A,req:r,res:i,ret:n,abort:a}=this;e||n._readableState.endEmitted||(e=new o),a&&e&&a(),s.destroy(A,e),s.destroy(r,e),s.destroy(i,e),l(this),t(e)}}).on("prefinish",()=>{const{req:e}=this;e.push(null)}),this.res=null,p(this,r)}onConnect(e,t){const{ret:A,res:r}=this;if(c(!r,"pipeline cannot be retried"),A.destroyed)throw new o;this.abort=e,this.context=t}onHeaders(e,t,A){const{opaque:r,handler:i,context:n}=this;if(e<200){if(this.onInfo){const A="raw"===this.responseHeaders?s.parseRawHeaders(t):s.parseHeaders(t);this.onInfo({statusCode:e,headers:A})}return}let d;this.res=new u(A);try{this.handler=null;const A="raw"===this.responseHeaders?s.parseRawHeaders(t):s.parseHeaders(t);d=this.runInAsyncScope(i,null,{statusCode:e,headers:A,opaque:r,body:this.res,context:n})}catch(e){throw this.res.on("error",s.nop),e}if(!d||"function"!=typeof d.on)throw new a("expected Readable");d.on("data",e=>{const{ret:t,body:A}=this;!t.push(e)&&A.pause&&A.pause()}).on("error",e=>{const{ret:t}=this;s.destroy(t,e)}).on("end",()=>{const{ret:e}=this;e.push(null)}).on("close",()=>{const{ret:e}=this;e._readableState.ended||s.destroy(e,new o)}),this.body=d}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;t.push(null)}onError(e){const{ret:t}=this;this.handler=null,s.destroy(t,e)}}return CA=function(e,t){try{const A=new E(e,t);return this.dispatch({...e,body:A.req},A),A.ret}catch(e){return(new r).destroy(e)}}}(),kA.upgrade=function(){if(IA)return QA;IA=1;const{InvalidArgumentError:e,RequestAbortedError:t,SocketError:r}=oe(),{AsyncResource:i}=Q,n=se(),{addSignal:a,removeSignal:o}=TA(),s=A;class d extends i{constructor(t,A){if(!t||"object"!=typeof t)throw new e("invalid opts");if("function"!=typeof A)throw new e("invalid callback");const{signal:r,opaque:i,responseHeaders:n}=t;if(r&&"function"!=typeof r.on&&"function"!=typeof r.addEventListener)throw new e("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=n||null,this.opaque=i||null,this.callback=A,this.abort=null,this.context=null,a(this,r)}onConnect(e,A){if(!this.callback)throw new t;this.abort=e,this.context=null}onHeaders(){throw new r("bad upgrade",null)}onUpgrade(e,t,A){const{callback:r,opaque:i,context:a}=this;s.strictEqual(e,101),o(this),this.callback=null;const d="raw"===this.responseHeaders?n.parseRawHeaders(t):n.parseHeaders(t);this.runInAsyncScope(r,null,null,{headers:d,socket:A,opaque:i,context:a})}onError(e){const{callback:t,opaque:A}=this;o(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,e,{opaque:A})}))}}return QA=function e(t,A){if(void 0===A)return new Promise((A,r)=>{e.call(this,t,(e,t)=>e?r(e):A(t))});try{const e=new d(t,A);this.dispatch({...t,method:t.method||"GET",upgrade:t.protocol||"Websocket"},e)}catch(e){if("function"!=typeof A)throw e;const r=t&&t.opaque;queueMicrotask(()=>A(e,{opaque:r}))}}}(),kA.connect=function(){if(yA)return BA;yA=1;const{AsyncResource:e}=Q,{InvalidArgumentError:t,RequestAbortedError:A,SocketError:r}=oe(),i=se(),{addSignal:n,removeSignal:a}=TA();class o extends e{constructor(e,A){if(!e||"object"!=typeof e)throw new t("invalid opts");if("function"!=typeof A)throw new t("invalid callback");const{signal:r,opaque:i,responseHeaders:a}=e;if(r&&"function"!=typeof r.on&&"function"!=typeof r.addEventListener)throw new t("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=i||null,this.responseHeaders=a||null,this.callback=A,this.abort=null,n(this,r)}onConnect(e,t){if(!this.callback)throw new A;this.abort=e,this.context=t}onHeaders(){throw new r("bad connect",null)}onUpgrade(e,t,A){const{callback:r,opaque:n,context:o}=this;a(this),this.callback=null;let s=t;null!=s&&(s="raw"===this.responseHeaders?i.parseRawHeaders(t):i.parseHeaders(t)),this.runInAsyncScope(r,null,null,{statusCode:e,headers:s,socket:A,opaque:n,context:o})}onError(e){const{callback:t,opaque:A}=this;a(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,e,{opaque:A})}))}}return BA=function e(t,A){if(void 0===A)return new Promise((A,r)=>{e.call(this,t,(e,t)=>e?r(e):A(t))});try{const e=new o(t,A);this.dispatch({...t,method:"CONNECT"},e)}catch(e){if("function"!=typeof A)throw e;const r=t&&t.opaque;queueMicrotask(()=>A(e,{opaque:r}))}},BA}()),kA}function MA(){if(SA)return vA;SA=1;const{UndiciError:e}=oe();class t extends e{constructor(e){super(e),Error.captureStackTrace(this,t),this.name="MockNotMatchedError",this.message=e||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}}return vA={MockNotMatchedError:t}}function xA(){return DA?bA:(DA=1,bA={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")})}function VA(){if(RA)return FA;RA=1;const{MockNotMatchedError:e}=MA(),{kDispatches:t,kMockAgent:A,kOriginalDispatch:r,kOrigin:n,kGetNetConnect:a}=xA(),{buildURL:o,nop:s}=se(),{STATUS_CODES:p}=i,{types:{isPromise:l}}=d;function c(e,t){return"string"==typeof e?e===t:e instanceof RegExp?e.test(t):"function"==typeof e&&!0===e(t)}function g(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLocaleLowerCase(),t]))}function h(e,t){if(!Array.isArray(e))return"function"==typeof e.get?e.get(t):g(e)[t.toLocaleLowerCase()];for(let A=0;A<e.length;A+=2)if(e[A].toLocaleLowerCase()===t.toLocaleLowerCase())return e[A+1]}function u(e){const t=e.slice(),A=[];for(let e=0;e<t.length;e+=2)A.push([t[e],t[e+1]]);return Object.fromEntries(A)}function E(e,t){if("function"==typeof e.headers)return Array.isArray(t)&&(t=u(t)),e.headers(t?g(t):{});if(void 0===e.headers)return!0;if("object"!=typeof t||"object"!=typeof e.headers)return!1;for(const[A,r]of Object.entries(e.headers)){if(!c(r,h(t,A)))return!1}return!0}function m(e){if("string"!=typeof e)return e;const t=e.split("?");if(2!==t.length)return e;const A=new URLSearchParams(t.pop());return A.sort(),[...t,A.toString()].join("?")}function C(e){return Buffer.isBuffer(e)?e:"object"==typeof e?JSON.stringify(e):e.toString()}function f(t,A){const r=A.query?o(A.path,A.query):A.path,i="string"==typeof r?m(r):r;let n=t.filter(({consumed:e})=>!e).filter(({path:e})=>c(m(e),i));if(0===n.length)throw new e(`Mock dispatch not matched for path '${i}'`);if(n=n.filter(({method:e})=>c(e,A.method)),0===n.length)throw new e(`Mock dispatch not matched for method '${A.method}'`);if(n=n.filter(({body:e})=>void 0===e||c(e,A.body)),0===n.length)throw new e(`Mock dispatch not matched for body '${A.body}'`);if(n=n.filter(e=>E(e,A.headers)),0===n.length)throw new e(`Mock dispatch not matched for headers '${"object"==typeof A.headers?JSON.stringify(A.headers):A.headers}'`);return n[0]}function Q(e,t){const A=e.findIndex(e=>!!e.consumed&&function(e,{path:t,method:A,body:r,headers:i}){const n=c(e.path,t),a=c(e.method,A),o=void 0===e.body||c(e.body,r),s=E(e,i);return n&&a&&o&&s}(e,t));-1!==A&&e.splice(A,1)}function I(e){const{path:t,method:A,body:r,headers:i,query:n}=e;return{path:t,method:A,body:r,headers:i,query:n}}function B(e){return Object.entries(e).reduce((e,[t,A])=>[...e,Buffer.from(`${t}`),Array.isArray(A)?A.map(e=>Buffer.from(`${e}`)):Buffer.from(`${A}`)],[])}function y(e){return p[e]||"unknown"}function w(e,A){const r=I(e),i=f(this[t],r);i.timesInvoked++,i.data.callback&&(i.data={...i.data,...i.data.callback(e)});const{data:{statusCode:n,data:a,headers:o,trailers:d,error:p},delay:c,persist:g}=i,{timesInvoked:h,times:E}=i;if(i.consumed=!g&&h>=E,i.pending=h<E,null!==p)return Q(this[t],r),A.onError(p),!0;function m(t,i=a){const p=Array.isArray(e.headers)?u(e.headers):e.headers,c="function"==typeof i?i({...e,headers:p}):i;if(l(c))return void c.then(e=>m(t,e));const g=C(c),h=B(o),E=B(d);A.abort=s,A.onHeaders(n,h,w,y(n)),A.onData(Buffer.from(g)),A.onComplete(E),Q(t,r)}function w(){}return"number"==typeof c&&c>0?setTimeout(()=>{m(this[t])},c):m(this[t]),!0}function v(e,t){const A=new URL(t);return!0===e||!(!Array.isArray(e)||!e.some(e=>c(e,A.host)))}return FA={getResponseData:C,getMockDispatch:f,addMockDispatch:function(e,t,A){const r={timesInvoked:0,times:1,persist:!1,consumed:!1,...t,pending:!0,data:{error:null,..."function"==typeof A?{callback:A}:{...A}}};return e.push(r),r},deleteMockDispatch:Q,buildKey:I,generateKeyValues:B,matchValue:c,getResponse:async function(e){const t=[];for await(const A of e)t.push(A);return Buffer.concat(t).toString("utf8")},getStatusText:y,mockDispatch:w,buildMockDispatch:function(){const t=this[A],i=this[n],o=this[r];return function(A,r){if(t.isMockActive)try{w.call(this,A,r)}catch(n){if(!(n instanceof e))throw n;{const s=t[a]();if(!1===s)throw new e(`${n.message}: subsequent request to origin ${i} was not allowed (net.connect disabled)`);if(!v(s,i))throw new e(`${n.message}: subsequent request to origin ${i} was not allowed (net.connect is not enabled for this origin)`);o.call(this,A,r)}}else o.call(this,A,r)}},checkNetConnect:v,buildMockOptions:function(e){if(e){const{agent:t,...A}=e;return A}},getHeaderByName:h},FA}var HA,PA,JA,YA,GA,OA,qA,WA,jA,KA,ZA,XA,zA,$A,er,tr,Ar,rr,ir,nr,ar,or,sr,dr,pr,lr,cr,gr,hr,ur,Er,mr,Cr,fr,Qr,Ir,Br,yr,wr,vr,Sr,br,Dr,Fr,Rr,kr,Nr,_r,Ur,Tr,Lr,Mr,xr,Vr,Hr,Pr,Jr,Yr,Gr,Or,qr,Wr,jr,Kr,Zr,Xr,zr,$r,ei,ti,Ai={};function ri(){if(HA)return Ai;HA=1;const{getResponseData:e,buildKey:t,addMockDispatch:A}=VA(),{kDispatches:r,kDispatchKey:i,kDefaultHeaders:n,kDefaultTrailers:a,kContentLength:o,kMockDispatch:s}=xA(),{InvalidArgumentError:d}=oe(),{buildURL:p}=se();class l{constructor(e){this[s]=e}delay(e){if("number"!=typeof e||!Number.isInteger(e)||e<=0)throw new d("waitInMs must be a valid integer > 0");return this[s].delay=e,this}persist(){return this[s].persist=!0,this}times(e){if("number"!=typeof e||!Number.isInteger(e)||e<=0)throw new d("repeatTimes must be a valid integer > 0");return this[s].times=e,this}}return Ai.MockInterceptor=class{constructor(e,A){if("object"!=typeof e)throw new d("opts must be an object");if(void 0===e.path)throw new d("opts.path must be defined");if(void 0===e.method&&(e.method="GET"),"string"==typeof e.path)if(e.query)e.path=p(e.path,e.query);else{const t=new URL(e.path,"data://");e.path=t.pathname+t.search}"string"==typeof e.method&&(e.method=e.method.toUpperCase()),this[i]=t(e),this[r]=A,this[n]={},this[a]={},this[o]=!1}createMockScopeDispatchData(t,A,r={}){const i=e(A),s=this[o]?{"content-length":i.length}:{};return{statusCode:t,data:A,headers:{...this[n],...s,...r.headers},trailers:{...this[a],...r.trailers}}}validateReplyParameters(e,t,A){if(void 0===e)throw new d("statusCode must be defined");if(void 0===t)throw new d("data must be defined");if("object"!=typeof A)throw new d("responseOptions must be an object")}reply(e){if("function"==typeof e){const t=t=>{const A=e(t);if("object"!=typeof A)throw new d("reply options callback must return an object");const{statusCode:r,data:i="",responseOptions:n={}}=A;return this.validateReplyParameters(r,i,n),{...this.createMockScopeDispatchData(r,i,n)}},n=A(this[r],this[i],t);return new l(n)}const[t,n="",a={}]=[...arguments];this.validateReplyParameters(t,n,a);const o=this.createMockScopeDispatchData(t,n,a),s=A(this[r],this[i],o);return new l(s)}replyWithError(e){if(void 0===e)throw new d("error must be defined");const t=A(this[r],this[i],{error:e});return new l(t)}defaultReplyHeaders(e){if(void 0===e)throw new d("headers must be defined");return this[n]=e,this}defaultReplyTrailers(e){if(void 0===e)throw new d("trailers must be defined");return this[a]=e,this}replyContentLength(){return this[o]=!0,this}},Ai.MockScope=l,Ai}function ii(){if(JA)return PA;JA=1;const{promisify:e}=d,t=iA(),{buildMockDispatch:A}=VA(),{kDispatches:r,kMockAgent:i,kClose:n,kOriginalClose:a,kOrigin:o,kOriginalDispatch:s,kConnected:p}=xA(),{MockInterceptor:l}=ri(),c=ae(),{InvalidArgumentError:g}=oe();class h extends t{constructor(e,t){if(super(e,t),!t||!t.agent||"function"!=typeof t.agent.dispatch)throw new g("Argument opts.agent must implement Agent");this[i]=t.agent,this[o]=e,this[r]=[],this[p]=1,this[s]=this.dispatch,this[a]=this.close.bind(this),this.dispatch=A.call(this),this.close=this[n]}get[c.kConnected](){return this[p]}intercept(e){return new l(e,this[r])}async[n](){await e(this[a])(),this[p]=0,this[i][c.kClients].delete(this[o])}}return PA=h}function ni(){if(GA)return YA;GA=1;const{promisify:e}=d,t=aA(),{buildMockDispatch:A}=VA(),{kDispatches:r,kMockAgent:i,kClose:n,kOriginalClose:a,kOrigin:o,kOriginalDispatch:s,kConnected:p}=xA(),{MockInterceptor:l}=ri(),c=ae(),{InvalidArgumentError:g}=oe();class h extends t{constructor(e,t){if(super(e,t),!t||!t.agent||"function"!=typeof t.agent.dispatch)throw new g("Argument opts.agent must implement Agent");this[i]=t.agent,this[o]=e,this[r]=[],this[p]=1,this[s]=this.dispatch,this[a]=this.close.bind(this),this.dispatch=A.call(this),this.close=this[n]}get[c.kConnected](){return this[p]}intercept(e){return new l(e,this[r])}async[n](){await e(this[a])(),this[p]=0,this[i][c.kClients].delete(this[o])}}return YA=h}function ai(){if(ZA)return KA;ZA=1;const{kClients:e}=ae(),t=sA(),{kAgent:A,kMockAgentSet:r,kMockAgentGet:i,kDispatches:a,kIsMockActive:o,kNetConnect:s,kGetNetConnect:d,kOptions:p,kFactory:l}=xA(),c=ii(),g=ni(),{matchValue:h,buildMockOptions:u}=VA(),{InvalidArgumentError:E,UndiciError:m}=oe(),C=yt(),f=function(){if(qA)return OA;qA=1;const e={pronoun:"it",is:"is",was:"was",this:"this"},t={pronoun:"they",is:"are",was:"were",this:"these"};return OA=class{constructor(e,t){this.singular=e,this.plural=t}pluralize(A){const r=1===A;return{...r?e:t,count:A,noun:r?this.singular:this.plural}}}}(),Q=function(){if(jA)return WA;jA=1;const{Transform:e}=n,{Console:t}=I;return WA=class{constructor({disableColors:A}={}){this.transform=new e({transform(e,t,A){A(null,e)}}),this.logger=new t({stdout:this.transform,inspectOptions:{colors:!A&&!process.env.CI}})}format(e){const t=e.map(({method:e,path:t,data:{statusCode:A},persist:r,times:i,timesInvoked:n,origin:a})=>({Method:e,Origin:a,Path:t,"Status code":A,Persistent:r?"✅":"❌",Invocations:n,Remaining:r?1/0:i-n}));return this.logger.table(t),this.transform.read().toString()}}}();class B{constructor(e){this.value=e}deref(){return this.value}}return KA=class extends C{constructor(r){if(super(r),this[s]=!0,this[o]=!0,r&&r.agent&&"function"!=typeof r.agent.dispatch)throw new E("Argument opts.agent must implement Agent");const i=r&&r.agent?r.agent:new t(r);this[A]=i,this[e]=i[e],this[p]=u(r)}get(e){let t=this[i](e);return t||(t=this[l](e),this[r](e,t)),t}dispatch(e,t){return this.get(e.origin),this[A].dispatch(e,t)}async close(){await this[A].close(),this[e].clear()}deactivate(){this[o]=!1}activate(){this[o]=!0}enableNetConnect(e){if("string"==typeof e||"function"==typeof e||e instanceof RegExp)Array.isArray(this[s])?this[s].push(e):this[s]=[e];else{if(void 0!==e)throw new E("Unsupported matcher. Must be one of String|Function|RegExp.");this[s]=!0}}disableNetConnect(){this[s]=!1}get isMockActive(){return this[o]}[r](t,A){this[e].set(t,new B(A))}[l](e){const t=Object.assign({agent:this},this[p]);return this[p]&&1===this[p].connections?new c(e,t):new g(e,t)}[i](t){const A=this[e].get(t);if(A)return A.deref();if("string"!=typeof t){const e=this[l]("http://localhost:9999");return this[r](t,e),e}for(const[A,i]of Array.from(this[e])){const e=i.deref();if(e&&"string"!=typeof A&&h(A,t)){const A=this[l](t);return this[r](t,A),A[a]=e[a],A}}}[d](){return this[s]}pendingInterceptors(){const t=this[e];return Array.from(t.entries()).flatMap(([e,t])=>t.deref()[a].map(t=>({...t,origin:e}))).filter(({pending:e})=>e)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new Q}={}){const t=this.pendingInterceptors();if(0===t.length)return;const A=new f("interceptor","interceptors").pluralize(t.length);throw new m(`\n${A.count} ${A.noun} ${A.is} pending:\n\n${e.format(t)}\n`.trim())}},KA}function oi(){if(zA)return XA;zA=1;const{kProxy:e,kClose:t,kDestroy:A,kInterceptors:r}=ae(),{URL:i}=B,n=sA(),a=aA(),o=wt(),{InvalidArgumentError:s,RequestAbortedError:d}=oe(),p=vt(),l=Symbol("proxy agent"),c=Symbol("proxy client"),g=Symbol("proxy headers"),h=Symbol("request tls settings"),u=Symbol("proxy tls settings"),E=Symbol("connect endpoint function");function m(e,t){return new a(e,t)}return XA=class extends o{constructor(t){if(super(t),this[e]=function(e){if("string"==typeof e&&(e={uri:e}),!e||!e.uri)throw new s("Proxy opts.uri is mandatory");return{uri:e.uri,protocol:e.protocol||"https"}}(t),this[l]=new n(t),this[r]=t.interceptors&&t.interceptors.ProxyAgent&&Array.isArray(t.interceptors.ProxyAgent)?t.interceptors.ProxyAgent:[],"string"==typeof t&&(t={uri:t}),!t||!t.uri)throw new s("Proxy opts.uri is mandatory");const{clientFactory:A=m}=t;if("function"!=typeof A)throw new s("Proxy opts.clientFactory must be a function.");this[h]=t.requestTls,this[u]=t.proxyTls,this[g]=t.headers||{};const a=new i(t.uri),{origin:o,port:C,host:f,username:Q,password:I}=a;if(t.auth&&t.token)throw new s("opts.auth cannot be used in combination with opts.token");t.auth?this[g]["proxy-authorization"]=`Basic ${t.auth}`:t.token?this[g]["proxy-authorization"]=t.token:Q&&I&&(this[g]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(Q)}:${decodeURIComponent(I)}`).toString("base64")}`);const B=p({...t.proxyTls});this[E]=p({...t.requestTls}),this[c]=A(a,{connect:B}),this[l]=new n({...t,connect:async(e,t)=>{let A=e.host;e.port||(A+=":"+("https:"===e.protocol?443:80));try{const{socket:r,statusCode:i}=await this[c].connect({origin:o,port:C,path:A,signal:e.signal,headers:{...this[g],host:f}});if(200!==i&&(r.on("error",()=>{}).destroy(),t(new d(`Proxy response (${i}) !== 200 when HTTP Tunneling`))),"https:"!==e.protocol)return void t(null,r);let n;n=this[h]?this[h].servername:e.servername,this[E]({...e,servername:n,httpSocket:r},t)}catch(e){t(e)}}})}dispatch(e,t){const{host:A}=new i(e.origin),r=function(e){if(Array.isArray(e)){const t={};for(let A=0;A<e.length;A+=2)t[e[A]]=e[A+1];return t}return e}(e.headers);return function(e){const t=e&&Object.keys(e).find(e=>"proxy-authorization"===e.toLowerCase());if(t)throw new s("Proxy-Authorization should be sent in ProxyAgent constructor")}(r),this[l].dispatch({...e,headers:{...r,host:A}},t)}async[t](){await this[l].close(),await this[c].close()}async[A](){await this[l].destroy(),await this[c].destroy()}},XA}function si(){if(er)return $A;er=1;const e=A,{kRetryHandlerDefaultRetry:t}=ae(),{RequestRetryError:r}=oe(),{isDisturbed:i,parseHeaders:n,parseRangeHeader:a}=se();class o{constructor(e,A){const{retryOptions:r,...i}=e,{retry:n,maxRetries:a,maxTimeout:s,minTimeout:d,timeoutFactor:p,methods:l,errorCodes:c,retryAfter:g,statusCodes:h}=r??{};this.dispatch=A.dispatch,this.handler=A.handler,this.opts=i,this.abort=null,this.aborted=!1,this.retryOpts={retry:n??o[t],retryAfter:g??!0,maxTimeout:s??3e4,timeout:d??500,timeoutFactor:p??2,maxRetries:a??5,methods:l??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:h??[500,502,503,504,429],errorCodes:c??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]},this.retryCount=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(e=>{this.aborted=!0,this.abort?this.abort(e):this.reason=e})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(e,t,A){this.handler.onUpgrade&&this.handler.onUpgrade(e,t,A)}onConnect(e){this.aborted?e(this.reason):this.abort=e}onBodySent(e){if(this.handler.onBodySent)return this.handler.onBodySent(e)}static[t](e,{state:t,opts:A},r){const{statusCode:i,code:n,headers:a}=e,{method:o,retryOptions:s}=A,{maxRetries:d,timeout:p,maxTimeout:l,timeoutFactor:c,statusCodes:g,errorCodes:h,methods:u}=s;let{counter:E,currentTimeout:m}=t;if(m=null!=m&&m>0?m:p,n&&"UND_ERR_REQ_RETRY"!==n&&"UND_ERR_SOCKET"!==n&&!h.includes(n))return void r(e);if(Array.isArray(u)&&!u.includes(o))return void r(e);if(null!=i&&Array.isArray(g)&&!g.includes(i))return void r(e);if(E>d)return void r(e);let C=null!=a&&a["retry-after"];C&&(C=Number(C),C=isNaN(C)?function(e){const t=Date.now();return new Date(e).getTime()-t}(C):1e3*C);const f=C>0?Math.min(C,l):Math.min(m*c**E,l);t.currentTimeout=f,setTimeout(()=>r(null),f)}onHeaders(t,A,i,o){const s=n(A);if(this.retryCount+=1,t>=300)return this.abort(new r("Request failed",t,{headers:s,count:this.retryCount})),!1;if(null!=this.resume){if(this.resume=null,206!==t)return!0;const A=a(s["content-range"]);if(!A)return this.abort(new r("Content-Range mismatch",t,{headers:s,count:this.retryCount})),!1;if(null!=this.etag&&this.etag!==s.etag)return this.abort(new r("ETag mismatch",t,{headers:s,count:this.retryCount})),!1;const{start:n,size:o,end:d=o}=A;return e(this.start===n,"content-range mismatch"),e(null==this.end||this.end===d,"content-range mismatch"),this.resume=i,!0}if(null==this.end){if(206===t){const r=a(s["content-range"]);if(null==r)return this.handler.onHeaders(t,A,i,o);const{start:n,size:d,end:p=d}=r;e(null!=n&&Number.isFinite(n)&&this.start!==n,"content-range mismatch"),e(Number.isFinite(n)),e(null!=p&&Number.isFinite(p)&&this.end!==p,"invalid content-length"),this.start=n,this.end=p}if(null==this.end){const e=s["content-length"];this.end=null!=e?Number(e):null}return e(Number.isFinite(this.start)),e(null==this.end||Number.isFinite(this.end),"invalid content-length"),this.resume=i,this.etag=null!=s.etag?s.etag:null,this.handler.onHeaders(t,A,i,o)}const d=new r("Request failed",t,{headers:s,count:this.retryCount});return this.abort(d),!1}onData(e){return this.start+=e.length,this.handler.onData(e)}onComplete(e){return this.retryCount=0,this.handler.onComplete(e)}onError(e){if(this.aborted||i(this.opts.body))return this.handler.onError(e);this.retryOpts.retry(e,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},function(e){if(null!=e||this.aborted||i(this.opts.body))return this.handler.onError(e);0!==this.start&&(this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}});try{this.dispatch(this.opts,this)}catch(e){this.handler.onError(e)}}.bind(this))}}return $A=o}function di(){if(Ar)return tr;Ar=1;const e=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:t}=oe(),A=sA();function r(A){if(!A||"function"!=typeof A.dispatch)throw new t("Argument agent must implement Agent");Object.defineProperty(globalThis,e,{value:A,writable:!0,enumerable:!1,configurable:!1})}function i(){return globalThis[e]}return void 0===i()&&r(new A),tr={setGlobalDispatcher:r,getGlobalDispatcher:i}}function pi(){if(ar)return nr;ar=1;const{kHeadersList:e,kConstruct:t}=ae(),{kGuard:r}=mt(),{kEnumerableProperty:i}=se(),{makeIterator:n,isValidHeaderName:a,isValidHeaderValue:o}=Et(),s=d,{webidl:p}=Ct(),l=A,c=Symbol("headers map"),g=Symbol("headers map sorted");function h(e){return 10===e||13===e||9===e||32===e}function u(e){let t=0,A=e.length;for(;A>t&&h(e.charCodeAt(A-1));)--A;for(;A>t&&h(e.charCodeAt(t));)++t;return 0===t&&A===e.length?e:e.substring(t,A)}function E(e,t){if(Array.isArray(t))for(let A=0;A<t.length;++A){const r=t[A];if(2!==r.length)throw p.errors.exception({header:"Headers constructor",message:`expected name/value pair to be length 2, found ${r.length}.`});m(e,r[0],r[1])}else{if("object"!=typeof t||null===t)throw p.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]});{const A=Object.keys(t);for(let r=0;r<A.length;++r)m(e,A[r],t[A[r]])}}}function m(t,A,i){if(i=u(i),!a(A))throw p.errors.invalidArgument({prefix:"Headers.append",value:A,type:"header name"});if(!o(i))throw p.errors.invalidArgument({prefix:"Headers.append",value:i,type:"header value"});if("immutable"===t[r])throw new TypeError("immutable");return t[r],t[e].append(A,i)}class C{cookies=null;constructor(e){e instanceof C?(this[c]=new Map(e[c]),this[g]=e[g],this.cookies=null===e.cookies?null:[...e.cookies]):(this[c]=new Map(e),this[g]=null)}contains(e){return e=e.toLowerCase(),this[c].has(e)}clear(){this[c].clear(),this[g]=null,this.cookies=null}append(e,t){this[g]=null;const A=e.toLowerCase(),r=this[c].get(A);if(r){const e="cookie"===A?"; ":", ";this[c].set(A,{name:r.name,value:`${r.value}${e}${t}`})}else this[c].set(A,{name:e,value:t});"set-cookie"===A&&(this.cookies??=[],this.cookies.push(t))}set(e,t){this[g]=null;const A=e.toLowerCase();"set-cookie"===A&&(this.cookies=[t]),this[c].set(A,{name:e,value:t})}delete(e){this[g]=null,"set-cookie"===(e=e.toLowerCase())&&(this.cookies=null),this[c].delete(e)}get(e){const t=this[c].get(e.toLowerCase());return void 0===t?null:t.value}*[Symbol.iterator](){for(const[e,{value:t}]of this[c])yield[e,t]}get entries(){const e={};if(this[c].size)for(const{name:t,value:A}of this[c].values())e[t]=A;return e}}class f{constructor(A=void 0){A!==t&&(this[e]=new C,this[r]="none",void 0!==A&&E(this,A=p.converters.HeadersInit(A)))}append(e,t){return p.brandCheck(this,f),p.argumentLengthCheck(arguments,2,{header:"Headers.append"}),m(this,e=p.converters.ByteString(e),t=p.converters.ByteString(t))}delete(t){if(p.brandCheck(this,f),p.argumentLengthCheck(arguments,1,{header:"Headers.delete"}),t=p.converters.ByteString(t),!a(t))throw p.errors.invalidArgument({prefix:"Headers.delete",value:t,type:"header name"});if("immutable"===this[r])throw new TypeError("immutable");this[r],this[e].contains(t)&&this[e].delete(t)}get(t){if(p.brandCheck(this,f),p.argumentLengthCheck(arguments,1,{header:"Headers.get"}),t=p.converters.ByteString(t),!a(t))throw p.errors.invalidArgument({prefix:"Headers.get",value:t,type:"header name"});return this[e].get(t)}has(t){if(p.brandCheck(this,f),p.argumentLengthCheck(arguments,1,{header:"Headers.has"}),t=p.converters.ByteString(t),!a(t))throw p.errors.invalidArgument({prefix:"Headers.has",value:t,type:"header name"});return this[e].contains(t)}set(t,A){if(p.brandCheck(this,f),p.argumentLengthCheck(arguments,2,{header:"Headers.set"}),t=p.converters.ByteString(t),A=u(A=p.converters.ByteString(A)),!a(t))throw p.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header name"});if(!o(A))throw p.errors.invalidArgument({prefix:"Headers.set",value:A,type:"header value"});if("immutable"===this[r])throw new TypeError("immutable");this[r],this[e].set(t,A)}getSetCookie(){p.brandCheck(this,f);const t=this[e].cookies;return t?[...t]:[]}get[g](){if(this[e][g])return this[e][g];const t=[],A=[...this[e]].sort((e,t)=>e[0]<t[0]?-1:1),r=this[e].cookies;for(let e=0;e<A.length;++e){const[i,n]=A[e];if("set-cookie"===i)for(let e=0;e<r.length;++e)t.push([i,r[e]]);else l(null!==n),t.push([i,n])}return this[e][g]=t,t}keys(){if(p.brandCheck(this,f),"immutable"===this[r]){const e=this[g];return n(()=>e,"Headers","key")}return n(()=>[...this[g].values()],"Headers","key")}values(){if(p.brandCheck(this,f),"immutable"===this[r]){const e=this[g];return n(()=>e,"Headers","value")}return n(()=>[...this[g].values()],"Headers","value")}entries(){if(p.brandCheck(this,f),"immutable"===this[r]){const e=this[g];return n(()=>e,"Headers","key+value")}return n(()=>[...this[g].values()],"Headers","key+value")}forEach(e,t=globalThis){if(p.brandCheck(this,f),p.argumentLengthCheck(arguments,1,{header:"Headers.forEach"}),"function"!=typeof e)throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.");for(const[A,r]of this)e.apply(t,[r,A,this])}[Symbol.for("nodejs.util.inspect.custom")](){return p.brandCheck(this,f),this[e]}}return f.prototype[Symbol.iterator]=f.prototype.entries,Object.defineProperties(f.prototype,{append:i,delete:i,get:i,has:i,set:i,getSetCookie:i,keys:i,values:i,entries:i,forEach:i,[Symbol.iterator]:{enumerable:!1},[Symbol.toStringTag]:{value:"Headers",configurable:!0},[s.inspect.custom]:{enumerable:!1}}),p.converters.HeadersInit=function(e){if("Object"===p.util.Type(e))return e[Symbol.iterator]?p.converters["sequence<sequence<ByteString>>"](e):p.converters["record<ByteString, ByteString>"](e);throw p.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})},nr={fill:E,Headers:f,HeadersList:C}}function li(){if(sr)return or;sr=1;const{Headers:e,HeadersList:t,fill:r}=pi(),{extractBody:i,cloneBody:n,mixinBody:a}=Bt(),o=se(),{kEnumerableProperty:s}=o,{isValidReasonPhrase:p,isCancelled:l,isAborted:g,isBlobLike:h,serializeJavascriptValueToJSONString:u,isErrorLike:E,isomorphicEncode:m}=Et(),{redirectStatusSet:C,nullBodyStatus:f,DOMException:Q}=ht(),{kState:I,kHeaders:B,kGuard:y,kRealm:w}=mt(),{webidl:v}=Ct(),{FormData:S}=It(),{getGlobalOrigin:b}=ut(),{URLSerializer:D}=ft(),{kHeadersList:F,kConstruct:R}=ae(),k=A,{types:N}=d,_=globalThis.ReadableStream||c.ReadableStream,U=new TextEncoder("utf-8");class T{static error(){const e={settingsObject:{}},t=new T;return t[I]=x(),t[w]=e,t[B][F]=t[I].headersList,t[B][y]="immutable",t[B][w]=e,t}static json(e,t={}){v.argumentLengthCheck(arguments,1,{header:"Response.json"}),null!==t&&(t=v.converters.ResponseInit(t));const A=U.encode(u(e)),r=i(A),n={settingsObject:{}},a=new T;return a[w]=n,a[B][y]="response",a[B][w]=n,P(a,t,{body:r[0],type:"application/json"}),a}static redirect(e,t=302){const A={settingsObject:{}};let r;v.argumentLengthCheck(arguments,1,{header:"Response.redirect"}),e=v.converters.USVString(e),t=v.converters["unsigned short"](t);try{r=new URL(e,b())}catch(t){throw Object.assign(new TypeError("Failed to parse URL from "+e),{cause:t})}if(!C.has(t))throw new RangeError("Invalid status code "+t);const i=new T;i[w]=A,i[B][y]="immutable",i[B][w]=A,i[I].status=t;const n=m(D(r));return i[I].headersList.append("location",n),i}constructor(t=null,A={}){null!==t&&(t=v.converters.BodyInit(t)),A=v.converters.ResponseInit(A),this[w]={settingsObject:{}},this[I]=M({}),this[B]=new e(R),this[B][y]="response",this[B][F]=this[I].headersList,this[B][w]=this[w];let r=null;if(null!=t){const[e,A]=i(t);r={body:e,type:A}}P(this,A,r)}get type(){return v.brandCheck(this,T),this[I].type}get url(){v.brandCheck(this,T);const e=this[I].urlList,t=e[e.length-1]??null;return null===t?"":D(t,!0)}get redirected(){return v.brandCheck(this,T),this[I].urlList.length>1}get status(){return v.brandCheck(this,T),this[I].status}get ok(){return v.brandCheck(this,T),this[I].status>=200&&this[I].status<=299}get statusText(){return v.brandCheck(this,T),this[I].statusText}get headers(){return v.brandCheck(this,T),this[B]}get body(){return v.brandCheck(this,T),this[I].body?this[I].body.stream:null}get bodyUsed(){return v.brandCheck(this,T),!!this[I].body&&o.isDisturbed(this[I].body.stream)}clone(){if(v.brandCheck(this,T),this.bodyUsed||this.body&&this.body.locked)throw v.errors.exception({header:"Response.clone",message:"Body has already been consumed."});const e=L(this[I]),t=new T;return t[I]=e,t[w]=this[w],t[B][F]=e.headersList,t[B][y]=this[B][y],t[B][w]=this[B][w],t}}function L(e){if(e.internalResponse)return H(L(e.internalResponse),e.type);const t=M({...e,body:null});return null!=e.body&&(t.body=n(e.body)),t}function M(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new t(e.headersList):new t,urlList:e.urlList?[...e.urlList]:[]}}function x(e){return M({type:"error",status:0,error:E(e)?e:new Error(e?String(e):e),aborted:e&&"AbortError"===e.name})}function V(e,t){return t={internalResponse:e,...t},new Proxy(e,{get:(e,A)=>A in t?t[A]:e[A],set:(e,A,r)=>(k(!(A in t)),e[A]=r,!0)})}function H(e,t){return"basic"===t?V(e,{type:"basic",headersList:e.headersList}):"cors"===t?V(e,{type:"cors",headersList:e.headersList}):"opaque"===t?V(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null}):"opaqueredirect"===t?V(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null}):void k(!1)}function P(e,t,A){if(null!==t.status&&(t.status<200||t.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in t&&null!=t.statusText&&!p(String(t.statusText)))throw new TypeError("Invalid statusText");if("status"in t&&null!=t.status&&(e[I].status=t.status),"statusText"in t&&null!=t.statusText&&(e[I].statusText=t.statusText),"headers"in t&&null!=t.headers&&r(e[B],t.headers),A){if(f.includes(e.status))throw v.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status});e[I].body=A.body,null==A.type||e[I].headersList.contains("Content-Type")||e[I].headersList.append("content-type",A.type)}}return a(T),Object.defineProperties(T.prototype,{type:s,url:s,status:s,ok:s,redirected:s,statusText:s,headers:s,clone:s,body:s,bodyUsed:s,[Symbol.toStringTag]:{value:"Response",configurable:!0}}),Object.defineProperties(T,{json:s,redirect:s,error:s}),v.converters.ReadableStream=v.interfaceConverter(_),v.converters.FormData=v.interfaceConverter(S),v.converters.URLSearchParams=v.interfaceConverter(URLSearchParams),v.converters.XMLHttpRequestBodyInit=function(e){return"string"==typeof e?v.converters.USVString(e):h(e)?v.converters.Blob(e,{strict:!1}):N.isArrayBuffer(e)||N.isTypedArray(e)||N.isDataView(e)?v.converters.BufferSource(e):o.isFormDataLike(e)?v.converters.FormData(e,{strict:!1}):e instanceof URLSearchParams?v.converters.URLSearchParams(e):v.converters.DOMString(e)},v.converters.BodyInit=function(e){return e instanceof _?v.converters.ReadableStream(e):e?.[Symbol.asyncIterator]?e:v.converters.XMLHttpRequestBodyInit(e)},v.converters.ResponseInit=v.dictionaryConverter([{key:"status",converter:v.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:v.converters.ByteString,defaultValue:""},{key:"headers",converter:v.converters.HeadersInit}]),or={makeNetworkError:x,makeResponse:M,makeAppropriateNetworkError:function(e,t=null){return k(l(e)),g(e)?x(Object.assign(new Q("The operation was aborted.","AbortError"),{cause:t})):x(Object.assign(new Q("Request was cancelled."),{cause:t}))},filterResponse:H,Response:T,cloneResponse:L}}function ci(){if(pr)return dr;pr=1;const{extractBody:t,mixinBody:r,cloneBody:i}=Bt(),{Headers:n,fill:a,HeadersList:o}=pi(),{FinalizationRegistry:s}=oA()(),d=se(),{isValidHTTPToken:p,sameOrigin:l,normalizeMethod:g,makePolicyContainer:h,normalizeMethodRecord:u}=Et(),{forbiddenMethodsSet:E,corsSafeListedMethodsSet:m,referrerPolicy:C,requestRedirect:f,requestMode:Q,requestCredentials:I,requestCache:B,requestDuplex:y}=ht(),{kEnumerableProperty:w}=d,{kHeaders:v,kSignal:S,kState:b,kGuard:D,kRealm:F}=mt(),{webidl:R}=Ct(),{getGlobalOrigin:k}=ut(),{URLSerializer:N}=ft(),{kHeadersList:_,kConstruct:U}=ae(),T=A,{getMaxListeners:L,setMaxListeners:M,getEventListeners:x,defaultMaxListeners:V}=e;let H=globalThis.TransformStream;const P=Symbol("abortController"),J=new s(({signal:e,abort:t})=>{e.removeEventListener("abort",t)});class Y{constructor(e,A={}){if(e===U)return;R.argumentLengthCheck(arguments,1,{header:"Request constructor"}),e=R.converters.RequestInfo(e),A=R.converters.RequestInit(A),this[F]={settingsObject:{baseUrl:k(),get origin(){return this.baseUrl?.origin},policyContainer:h()}};let r=null,i=null;const s=this[F].settingsObject.baseUrl;let C=null;if("string"==typeof e){let t;try{t=new URL(e,s)}catch(t){throw new TypeError("Failed to parse URL from "+e,{cause:t})}if(t.username||t.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e);r=G({urlList:[t]}),i="cors"}else T(e instanceof Y),r=e[b],C=e[S];const f=this[F].settingsObject.origin;let Q="client";if("EnvironmentSettingsObject"===r.window?.constructor?.name&&l(r.window,f)&&(Q=r.window),null!=A.window)throw new TypeError(`'window' option '${Q}' must be null`);"window"in A&&(Q="no-window"),r=G({method:r.method,headersList:r.headersList,unsafeRequest:r.unsafeRequest,client:this[F].settingsObject,window:Q,priority:r.priority,origin:r.origin,referrer:r.referrer,referrerPolicy:r.referrerPolicy,mode:r.mode,credentials:r.credentials,cache:r.cache,redirect:r.redirect,integrity:r.integrity,keepalive:r.keepalive,reloadNavigation:r.reloadNavigation,historyNavigation:r.historyNavigation,urlList:[...r.urlList]});const I=0!==Object.keys(A).length;if(I&&("navigate"===r.mode&&(r.mode="same-origin"),r.reloadNavigation=!1,r.historyNavigation=!1,r.origin="client",r.referrer="client",r.referrerPolicy="",r.url=r.urlList[r.urlList.length-1],r.urlList=[r.url]),void 0!==A.referrer){const e=A.referrer;if(""===e)r.referrer="no-referrer";else{let t;try{t=new URL(e,s)}catch(t){throw new TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}"about:"===t.protocol&&"client"===t.hostname||f&&!l(t,this[F].settingsObject.baseUrl)?r.referrer="client":r.referrer=t}}let B;if(void 0!==A.referrerPolicy&&(r.referrerPolicy=A.referrerPolicy),B=void 0!==A.mode?A.mode:i,"navigate"===B)throw R.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(null!=B&&(r.mode=B),void 0!==A.credentials&&(r.credentials=A.credentials),void 0!==A.cache&&(r.cache=A.cache),"only-if-cached"===r.cache&&"same-origin"!==r.mode)throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(void 0!==A.redirect&&(r.redirect=A.redirect),null!=A.integrity&&(r.integrity=String(A.integrity)),void 0!==A.keepalive&&(r.keepalive=Boolean(A.keepalive)),void 0!==A.method){let e=A.method;if(!p(e))throw new TypeError(`'${e}' is not a valid HTTP method.`);if(E.has(e.toUpperCase()))throw new TypeError(`'${e}' HTTP method is unsupported.`);e=u[e]??g(e),r.method=e}void 0!==A.signal&&(C=A.signal),this[b]=r;const y=new AbortController;if(this[S]=y.signal,this[S][F]=this[F],null!=C){if(!C||"boolean"!=typeof C.aborted||"function"!=typeof C.addEventListener)throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(C.aborted)y.abort(C.reason);else{this[P]=y;const e=new WeakRef(y),t=function(){const t=e.deref();void 0!==t&&t.abort(this.reason)};try{("function"==typeof L&&L(C)===V||x(C,"abort").length>=V)&&M(100,C)}catch{}d.addAbortListener(C,t),J.register(y,{signal:C,abort:t})}}if(this[v]=new n(U),this[v][_]=r.headersList,this[v][D]="request",this[v][F]=this[F],"no-cors"===B){if(!m.has(r.method))throw new TypeError(`'${r.method} is unsupported in no-cors mode.`);this[v][D]="request-no-cors"}if(I){const e=this[v][_],t=void 0!==A.headers?A.headers:new o(e);if(e.clear(),t instanceof o){for(const[A,r]of t)e.append(A,r);e.cookies=t.cookies}else a(this[v],t)}const w=e instanceof Y?e[b].body:null;if(!(null==A.body&&null==w||"GET"!==r.method&&"HEAD"!==r.method))throw new TypeError("Request with GET/HEAD method cannot have body.");let N=null;if(null!=A.body){const[e,i]=t(A.body,r.keepalive);N=e,i&&!this[v][_].contains("content-type")&&this[v].append("content-type",i)}const O=N??w;if(null!=O&&null==O.source){if(null!=N&&null==A.duplex)throw new TypeError("RequestInit: duplex option is required when sending a body.");if("same-origin"!==r.mode&&"cors"!==r.mode)throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');r.useCORSPreflightFlag=!0}let q=O;if(null==N&&null!=w){if(d.isDisturbed(w.stream)||w.stream.locked)throw new TypeError("Cannot construct a Request with a Request object that has already been used.");H||(H=c.TransformStream);const e=new H;w.stream.pipeThrough(e),q={source:w.source,length:w.length,stream:e.readable}}this[b].body=q}get method(){return R.brandCheck(this,Y),this[b].method}get url(){return R.brandCheck(this,Y),N(this[b].url)}get headers(){return R.brandCheck(this,Y),this[v]}get destination(){return R.brandCheck(this,Y),this[b].destination}get referrer(){return R.brandCheck(this,Y),"no-referrer"===this[b].referrer?"":"client"===this[b].referrer?"about:client":this[b].referrer.toString()}get referrerPolicy(){return R.brandCheck(this,Y),this[b].referrerPolicy}get mode(){return R.brandCheck(this,Y),this[b].mode}get credentials(){return this[b].credentials}get cache(){return R.brandCheck(this,Y),this[b].cache}get redirect(){return R.brandCheck(this,Y),this[b].redirect}get integrity(){return R.brandCheck(this,Y),this[b].integrity}get keepalive(){return R.brandCheck(this,Y),this[b].keepalive}get isReloadNavigation(){return R.brandCheck(this,Y),this[b].reloadNavigation}get isHistoryNavigation(){return R.brandCheck(this,Y),this[b].historyNavigation}get signal(){return R.brandCheck(this,Y),this[S]}get body(){return R.brandCheck(this,Y),this[b].body?this[b].body.stream:null}get bodyUsed(){return R.brandCheck(this,Y),!!this[b].body&&d.isDisturbed(this[b].body.stream)}get duplex(){return R.brandCheck(this,Y),"half"}clone(){if(R.brandCheck(this,Y),this.bodyUsed||this.body?.locked)throw new TypeError("unusable");const e=function(e){const t=G({...e,body:null});null!=e.body&&(t.body=i(e.body));return t}(this[b]),t=new Y(U);t[b]=e,t[F]=this[F],t[v]=new n(U),t[v][_]=e.headersList,t[v][D]=this[v][D],t[v][F]=this[v][F];const A=new AbortController;return this.signal.aborted?A.abort(this.signal.reason):d.addAbortListener(this.signal,()=>{A.abort(this.signal.reason)}),t[S]=A.signal,t}}function G(e){const t={method:"GET",localURLsOnly:!1,unsafeRequest:!1,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:!1,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:!1,credentials:"same-origin",useCredentials:!1,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:!1,historyNavigation:!1,userActivation:!1,taintedOrigin:!1,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:!1,done:!1,timingAllowFailed:!1,...e,headersList:e.headersList?new o(e.headersList):new o};return t.url=t.urlList[0],t}return r(Y),Object.defineProperties(Y.prototype,{method:w,url:w,headers:w,redirect:w,clone:w,signal:w,duplex:w,destination:w,body:w,bodyUsed:w,isHistoryNavigation:w,isReloadNavigation:w,keepalive:w,integrity:w,cache:w,credentials:w,attribute:w,referrerPolicy:w,referrer:w,mode:w,[Symbol.toStringTag]:{value:"Request",configurable:!0}}),R.converters.Request=R.interfaceConverter(Y),R.converters.RequestInfo=function(e){return"string"==typeof e?R.converters.USVString(e):e instanceof Y?R.converters.Request(e):R.converters.USVString(e)},R.converters.AbortSignal=R.interfaceConverter(AbortSignal),R.converters.RequestInit=R.dictionaryConverter([{key:"method",converter:R.converters.ByteString},{key:"headers",converter:R.converters.HeadersInit},{key:"body",converter:R.nullableConverter(R.converters.BodyInit)},{key:"referrer",converter:R.converters.USVString},{key:"referrerPolicy",converter:R.converters.DOMString,allowedValues:C},{key:"mode",converter:R.converters.DOMString,allowedValues:Q},{key:"credentials",converter:R.converters.DOMString,allowedValues:I},{key:"cache",converter:R.converters.DOMString,allowedValues:B},{key:"redirect",converter:R.converters.DOMString,allowedValues:f},{key:"integrity",converter:R.converters.DOMString},{key:"keepalive",converter:R.converters.boolean},{key:"signal",converter:R.nullableConverter(e=>R.converters.AbortSignal(e,{strict:!1}))},{key:"window",converter:R.converters.any},{key:"duplex",converter:R.converters.DOMString,allowedValues:y}]),dr={Request:Y,makeRequest:G}}function gi(){if(cr)return lr;cr=1;const{Response:t,makeNetworkError:r,makeAppropriateNetworkError:o,filterResponse:s,makeResponse:d}=li(),{Headers:p}=pi(),{Request:l,makeRequest:g}=ci(),h=y,{bytesMatch:u,makePolicyContainer:E,clonePolicyContainer:m,requestBadPort:C,TAOCheck:f,appendRequestOriginHeader:Q,responseLocationURL:I,requestCurrentURL:B,setRequestReferrerPolicyOnRedirect:w,tryUpgradeRequestToAPotentiallyTrustworthyURL:v,createOpaqueTimingInfo:S,appendFetchMetadata:b,corsCheck:D,crossOriginResourcePolicyCheck:F,determineRequestsReferrer:R,coarsenedSharedCurrentTime:k,createDeferredPromise:N,isBlobLike:_,sameOrigin:U,isCancelled:T,isAborted:L,isErrorLike:M,fullyReadBody:x,readableStreamClose:V,isomorphicEncode:H,urlIsLocal:P,urlIsHttpHttpsScheme:J,urlHasHttpsScheme:Y}=Et(),{kState:G,kHeaders:O,kGuard:q,kRealm:W}=mt(),j=A,{safelyExtractBody:K}=Bt(),{redirectStatusSet:Z,nullBodyStatus:X,safeMethodsSet:z,requestBodyHeader:$,subresourceSet:ee,DOMException:te}=ht(),{kHeadersList:Ae}=ae(),re=e,{Readable:ie,pipeline:ne}=n,{addAbortListener:oe,isErrored:de,isReadable:pe,nodeMajor:le,nodeMinor:ce}=se(),{dataURLProcessor:ge,serializeAMimeType:he}=ft(),{TransformStream:ue}=c,{getGlobalDispatcher:Ee}=di(),{webidl:me}=Ct(),{STATUS_CODES:Ce}=i,fe=["GET","HEAD"];let Qe,Ie=globalThis.ReadableStream;class Be extends re{constructor(e){super(),this.dispatcher=e,this.connection=null,this.dump=!1,this.state="ongoing",this.setMaxListeners(21)}terminate(e){"ongoing"===this.state&&(this.state="terminated",this.connection?.destroy(e),this.emit("terminated",e))}abort(e){"ongoing"===this.state&&(this.state="aborted",e||(e=new te("The operation was aborted.","AbortError")),this.serializedAbortReason=e,this.connection?.destroy(e),this.emit("terminated",e))}}function ye(e,t="other"){if("error"===e.type&&e.aborted)return;if(!e.urlList?.length)return;const A=e.urlList[0];let r=e.timingInfo,i=e.cacheState;J(A)&&null!==r&&(e.timingAllowPassed||(r=S({startTime:r.startTime}),i=""),r.endTime=k(),e.timingInfo=r,function(e,t,A,r,i){(le>18||18===le&&ce>=2)&&performance.markResourceTiming(e,t.href,A,r,i)}(r,A,t,globalThis,i))}function we(e,t,A,r){if(r||(r=new te("The operation was aborted.","AbortError")),e.reject(r),null!=t.body&&pe(t.body?.stream)&&t.body.stream.cancel(r).catch(e=>{if("ERR_INVALID_STATE"!==e.code)throw e}),null==A)return;const i=A[G];null!=i.body&&pe(i.body?.stream)&&i.body.stream.cancel(r).catch(e=>{if("ERR_INVALID_STATE"!==e.code)throw e})}function ve({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:A,processResponse:r,processResponseEndOfBody:i,processResponseConsumeBody:n,useParallelQueue:a=!1,dispatcher:o}){let s=null,d=!1;null!=e.client&&(s=e.client.globalObject,d=e.client.crossOriginIsolatedCapability);const p=k(d),l=S({startTime:p}),c={controller:new Be(o),request:e,timingInfo:l,processRequestBodyChunkLength:t,processRequestEndOfBody:A,processResponse:r,processResponseConsumeBody:n,processResponseEndOfBody:i,taskDestination:s,crossOriginIsolatedCapability:d};if(j(!e.body||e.body.stream),"client"===e.window&&(e.window="Window"===e.client?.globalObject?.constructor?.name?e.client:"no-window"),"client"===e.origin&&(e.origin=e.client?.origin),"client"===e.policyContainer&&(null!=e.client?e.policyContainer=m(e.client.policyContainer):e.policyContainer=E()),!e.headersList.contains("accept")){const t="*/*";e.headersList.append("accept",t)}return e.headersList.contains("accept-language")||e.headersList.append("accept-language","*"),e.priority,ee.has(e.destination),Se(c).catch(e=>{c.controller.terminate(e)}),c.controller}async function Se(e,t=!1){const A=e.request;let i=null;if(A.localURLsOnly&&!P(B(A))&&(i=r("local URLs only")),v(A),"blocked"===C(A)&&(i=r("bad port")),""===A.referrerPolicy&&(A.referrerPolicy=A.policyContainer.referrerPolicy),"no-referrer"!==A.referrer&&(A.referrer=R(A)),null===i&&(i=await(async()=>{const t=B(A);return U(t,A.url)&&"basic"===A.responseTainting||"data:"===t.protocol||"navigate"===A.mode||"websocket"===A.mode?(A.responseTainting="basic",await be(e)):"same-origin"===A.mode?r('request mode cannot be "same-origin"'):"no-cors"===A.mode?"follow"!==A.redirect?r('redirect mode cannot be "follow" for "no-cors" request'):(A.responseTainting="opaque",await be(e)):J(B(A))?(A.responseTainting="cors",await Re(e)):r("URL scheme must be a HTTP(S) scheme")})()),t)return i;0===i.status||i.internalResponse||(A.responseTainting,"basic"===A.responseTainting?i=s(i,"basic"):"cors"===A.responseTainting?i=s(i,"cors"):"opaque"===A.responseTainting?i=s(i,"opaque"):j(!1));let n=0===i.status?i:i.internalResponse;if(0===n.urlList.length&&n.urlList.push(...A.urlList),A.timingAllowFailed||(i.timingAllowPassed=!0),"opaque"===i.type&&206===n.status&&n.rangeRequested&&!A.headers.contains("range")&&(i=n=r()),0===i.status||"HEAD"!==A.method&&"CONNECT"!==A.method&&!X.includes(n.status)||(n.body=null,e.controller.dump=!0),A.integrity){const t=t=>Fe(e,r(t));if("opaque"===A.responseTainting||null==i.body)return void t(i.error);const n=r=>{u(r,A.integrity)?(i.body=K(r)[0],Fe(e,i)):t("integrity mismatch")};await x(i.body,n,t)}else Fe(e,i)}function be(e){if(T(e)&&0===e.request.redirectCount)return Promise.resolve(o(e));const{request:t}=e,{protocol:A}=B(t);switch(A){case"about:":return Promise.resolve(r("about scheme is not supported"));case"blob:":{Qe||(Qe=a.resolveObjectURL);const e=B(t);if(0!==e.search.length)return Promise.resolve(r("NetworkError when attempting to fetch resource."));const A=Qe(e.toString());if("GET"!==t.method||!_(A))return Promise.resolve(r("invalid method"));const i=K(A),n=i[0],o=H(`${n.length}`),s=i[1]??"",p=d({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:o}],["content-type",{name:"Content-Type",value:s}]]});return p.body=n,Promise.resolve(p)}case"data:":{const e=B(t),A=ge(e);if("failure"===A)return Promise.resolve(r("failed to fetch the data URL"));const i=he(A.mimeType);return Promise.resolve(d({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:i}]],body:K(A.body)[0]}))}case"file:":return Promise.resolve(r("not implemented... yet..."));case"http:":case"https:":return Re(e).catch(e=>r(e));default:return Promise.resolve(r("unknown scheme"))}}function De(e,t){e.request.done=!0,null!=e.processResponseDone&&queueMicrotask(()=>e.processResponseDone(t))}function Fe(e,t){"error"===t.type&&(t.urlList=[e.request.urlList[0]],t.timingInfo=S({startTime:e.timingInfo.startTime}));const A=()=>{e.request.done=!0,null!=e.processResponseEndOfBody&&queueMicrotask(()=>e.processResponseEndOfBody(t))};if(null!=e.processResponse&&queueMicrotask(()=>e.processResponse(t)),null==t.body)A();else{const e=(e,t)=>{t.enqueue(e)},r=new ue({start(){},transform:e,flush:A},{size:()=>1},{size:()=>1});t.body={stream:t.body.stream.pipeThrough(r)}}if(null!=e.processResponseConsumeBody){const A=A=>e.processResponseConsumeBody(t,A),r=A=>e.processResponseConsumeBody(t,A);return null!=t.body?x(t.body,A,r):(queueMicrotask(()=>A(null)),Promise.resolve())}}async function Re(e){const t=e.request;let A=null,i=null;const n=e.timingInfo;if(t.serviceWorkers,null===A){if("follow"===t.redirect&&(t.serviceWorkers="none"),i=A=await ke(e),"cors"===t.responseTainting&&"failure"===D(t,A))return r("cors failure");"failure"===f(t,A)&&(t.timingAllowFailed=!0)}return"opaque"!==t.responseTainting&&"opaque"!==A.type||"blocked"!==F(t.origin,t.client,t.destination,i)?(Z.has(i.status)&&("manual"!==t.redirect&&e.controller.connection.destroy(),"error"===t.redirect?A=r("unexpected redirect"):"manual"===t.redirect?A=i:"follow"===t.redirect?A=await function(e,t){const A=e.request,i=t.internalResponse?t.internalResponse:t;let n;try{if(n=I(i,B(A).hash),null==n)return t}catch(e){return Promise.resolve(r(e))}if(!J(n))return Promise.resolve(r("URL scheme must be a HTTP(S) scheme"));if(20===A.redirectCount)return Promise.resolve(r("redirect count exceeded"));if(A.redirectCount+=1,"cors"===A.mode&&(n.username||n.password)&&!U(A,n))return Promise.resolve(r('cross origin not allowed for request mode "cors"'));if("cors"===A.responseTainting&&(n.username||n.password))return Promise.resolve(r('URL cannot contain credentials for request mode "cors"'));if(303!==i.status&&null!=A.body&&null==A.body.source)return Promise.resolve(r());if([301,302].includes(i.status)&&"POST"===A.method||303===i.status&&!fe.includes(A.method)){A.method="GET",A.body=null;for(const e of $)A.headersList.delete(e)}U(B(A),n)||(A.headersList.delete("authorization"),A.headersList.delete("proxy-authorization",!0),A.headersList.delete("cookie"),A.headersList.delete("host"));null!=A.body&&(j(null!=A.body.source),A.body=K(A.body.source)[0]);const a=e.timingInfo;a.redirectEndTime=a.postRedirectStartTime=k(e.crossOriginIsolatedCapability),0===a.redirectStartTime&&(a.redirectStartTime=a.startTime);return A.urlList.push(n),w(A,i),Se(e,!0)}(e,A):j(!1)),A.timingInfo=n,A):r("blocked")}async function ke(e,t=!1,A=!1){const i=e.request;let n=null,a=null,s=null;"no-window"===i.window&&"error"===i.redirect?(n=e,a=i):(a=g(i),n={...e},n.request=a);const l="include"===i.credentials||"same-origin"===i.credentials&&"basic"===i.responseTainting,u=a.body?a.body.length:null;let E=null;if(null==a.body&&["POST","PUT"].includes(a.method)&&(E="0"),null!=u&&(E=H(`${u}`)),null!=E&&a.headersList.append("content-length",E),null!=u&&a.keepalive,a.referrer instanceof URL&&a.headersList.append("referer",H(a.referrer.href)),Q(a),b(a),a.headersList.contains("user-agent")||a.headersList.append("user-agent","undefined"==typeof esbuildDetection?"undici":"node"),"default"===a.cache&&(a.headersList.contains("if-modified-since")||a.headersList.contains("if-none-match")||a.headersList.contains("if-unmodified-since")||a.headersList.contains("if-match")||a.headersList.contains("if-range"))&&(a.cache="no-store"),"no-cache"!==a.cache||a.preventNoCacheCacheControlHeaderModification||a.headersList.contains("cache-control")||a.headersList.append("cache-control","max-age=0"),"no-store"!==a.cache&&"reload"!==a.cache||(a.headersList.contains("pragma")||a.headersList.append("pragma","no-cache"),a.headersList.contains("cache-control")||a.headersList.append("cache-control","no-cache")),a.headersList.contains("range")&&a.headersList.append("accept-encoding","identity"),a.headersList.contains("accept-encoding")||(Y(B(a))?a.headersList.append("accept-encoding","br, gzip, deflate"):a.headersList.append("accept-encoding","gzip, deflate")),a.headersList.delete("host"),a.cache="no-store","no-store"!==a.mode&&a.mode,null==s){if("only-if-cached"===a.mode)return r("only if cached");const e=await async function(e){j(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(e){this.destroyed||(this.destroyed=!0,this.abort?.(e??new te("The operation was aborted.","AbortError")))}};const t=e.request;let A=null;const i=e.timingInfo;t.cache="no-store",t.mode;let n=null;if(null==t.body&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(null!=t.body){const A=async function*(t){T(e)||(yield t,e.processRequestBodyChunkLength?.(t.byteLength))},r=()=>{T(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},i=t=>{T(e)||("AbortError"===t.name?e.controller.abort():e.controller.terminate(t))};n=async function*(){try{for await(const e of t.body.stream)yield*A(e);r()}catch(e){i(e)}}()}try{const{body:t,status:r,statusText:i,headersList:a,socket:o}=await u({body:n});if(o)A=d({status:r,statusText:i,headersList:a,socket:o});else{const n=t[Symbol.asyncIterator]();e.controller.next=()=>n.next(),A=d({status:r,statusText:i,headersList:a})}}catch(t){return"AbortError"===t.name?(e.controller.connection.destroy(),o(e,t)):r(t)}const a=()=>{e.controller.resume()},s=t=>{e.controller.abort(t)};Ie||(Ie=c.ReadableStream);const l=new Ie({async start(t){e.controller.controller=t},async pull(e){await a()},async cancel(e){await s(e)}},{highWaterMark:0,size:()=>1});function g(t){L(e)?(A.aborted=!0,pe(l)&&e.controller.controller.error(e.controller.serializedAbortReason)):pe(l)&&e.controller.controller.error(new TypeError("terminated",{cause:M(t)?t:void 0})),e.controller.connection.destroy()}return A.body={stream:l},e.controller.on("terminated",g),e.controller.resume=async()=>{for(;;){let t,r;try{const{done:A,value:r}=await e.controller.next();if(L(e))break;t=A?void 0:r}catch(A){e.controller.ended&&!i.encodedBodySize?t=void 0:(t=A,r=!0)}if(void 0===t)return V(e.controller.controller),void De(e,A);if(i.decodedBodySize+=t?.byteLength??0,r)return void e.controller.terminate(t);if(e.controller.controller.enqueue(new Uint8Array(t)),de(l))return void e.controller.terminate();if(!e.controller.controller.desiredSize)return}},A;async function u({body:A}){const r=B(t),n=e.controller.dispatcher;return new Promise((a,o)=>n.dispatch({path:r.pathname+r.search,origin:r.origin,method:t.method,body:e.controller.dispatcher.isMockActive?t.body&&(t.body.source||t.body.stream):A,headers:t.headersList.entries,maxRedirections:0,upgrade:"websocket"===t.mode?"websocket":void 0},{body:null,abort:null,onConnect(t){const{connection:A}=e.controller;A.destroyed?t(new te("The operation was aborted.","AbortError")):(e.controller.on("terminated",t),this.abort=A.abort=t)},onHeaders(e,A,r,i){if(e<200)return;let n=[],o="";const s=new p;if(Array.isArray(A))for(let e=0;e<A.length;e+=2){const t=A[e+0].toString("latin1"),r=A[e+1].toString("latin1");"content-encoding"===t.toLowerCase()?n=r.toLowerCase().split(",").map(e=>e.trim()):"location"===t.toLowerCase()&&(o=r),s[Ae].append(t,r)}else{const e=Object.keys(A);for(const t of e){const e=A[t];"content-encoding"===t.toLowerCase()?n=e.toLowerCase().split(",").map(e=>e.trim()).reverse():"location"===t.toLowerCase()&&(o=e),s[Ae].append(t,e)}}this.body=new ie({read:r});const d=[],l="follow"===t.redirect&&o&&Z.has(e);if("HEAD"!==t.method&&"CONNECT"!==t.method&&!X.includes(e)&&!l)for(const e of n)if("x-gzip"===e||"gzip"===e)d.push(h.createGunzip({flush:h.constants.Z_SYNC_FLUSH,finishFlush:h.constants.Z_SYNC_FLUSH}));else if("deflate"===e)d.push(h.createInflate());else{if("br"!==e){d.length=0;break}d.push(h.createBrotliDecompress())}return a({status:e,statusText:i,headersList:s[Ae],body:d.length?ne(this.body,...d,()=>{}):this.body.on("error",()=>{})}),!0},onData(t){if(e.controller.dump)return;const A=t;return i.encodedBodySize+=A.byteLength,this.body.push(A)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.ended=!0,this.body.push(null)},onError(t){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(t),e.controller.terminate(t),o(t)},onUpgrade(e,t,A){if(101!==e)return;const r=new p;for(let e=0;e<t.length;e+=2){const A=t[e+0].toString("latin1"),i=t[e+1].toString("latin1");r[Ae].append(A,i)}return a({status:e,statusText:Ce[e],headersList:r[Ae],socket:A}),!0}}))}}(n,l,A);!z.has(a.method)&&e.status>=200&&e.status,null==s&&(s=e)}if(s.urlList=[...a.urlList],a.headersList.contains("range")&&(s.rangeRequested=!0),s.requestIncludesCredentials=l,407===s.status)return"no-window"===i.window?r():T(e)?o(e):r("proxy authentication required");if(421===s.status&&!A&&(null==i.body||null!=i.body.source)){if(T(e))return o(e);e.controller.connection.destroy(),s=await ke(e,t,!0)}return s}return lr={fetch:function(e,A={}){me.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});const r=N();let i;try{i=new l(e,A)}catch(e){return r.reject(e),r.promise}const n=i[G];if(i.signal.aborted)return we(r,n,null,i.signal.reason),r.promise;const a=n.client.globalObject;"ServiceWorkerGlobalScope"===a?.constructor?.name&&(n.serviceWorkers="none");let o=null,s=!1,d=null;return oe(i.signal,()=>{s=!0,j(null!=d),d.abort(i.signal.reason),we(r,n,o,i.signal.reason)}),d=ve({request:n,processResponseEndOfBody:e=>ye(e,"fetch"),processResponse:e=>s?Promise.resolve():e.aborted?(we(r,n,o,d.serializedAbortReason),Promise.resolve()):"error"===e.type?(r.reject(Object.assign(new TypeError("fetch failed"),{cause:e.error})),Promise.resolve()):(o=new t,o[G]=e,o[W]=null,o[O][Ae]=e.headersList,o[O][q]="immutable",o[O][W]=null,void r.resolve(o)),dispatcher:A.dispatcher??Ee()}),r.promise},Fetch:Be,fetching:ve,finalizeAndReportTiming:ye},lr}function hi(){return hr?gr:(hr=1,gr={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")})}function ui(){if(Qr)return fr;Qr=1;const{kState:e,kError:t,kResult:A,kAborted:r,kLastProgressEventFired:i}=hi(),{ProgressEvent:n}=function(){if(Er)return ur;Er=1;const{webidl:e}=Ct(),t=Symbol("ProgressEvent state");class A extends Event{constructor(A,r={}){super(A=e.converters.DOMString(A),r=e.converters.ProgressEventInit(r??{})),this[t]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return e.brandCheck(this,A),this[t].lengthComputable}get loaded(){return e.brandCheck(this,A),this[t].loaded}get total(){return e.brandCheck(this,A),this[t].total}}return e.converters.ProgressEventInit=e.dictionaryConverter([{key:"lengthComputable",converter:e.converters.boolean,defaultValue:!1},{key:"loaded",converter:e.converters["unsigned long long"],defaultValue:0},{key:"total",converter:e.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:e.converters.boolean,defaultValue:!1},{key:"cancelable",converter:e.converters.boolean,defaultValue:!1},{key:"composed",converter:e.converters.boolean,defaultValue:!1}]),ur={ProgressEvent:A}}(),{getEncoding:o}=Cr?mr:(Cr=1,mr={getEncoding:function(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}}),{DOMException:s}=ht(),{serializeAMimeType:p,parseMIMEType:l}=ft(),{types:c}=d,{StringDecoder:g}=w,{btoa:h}=a;function u(e,t){const A=new n(e,{bubbles:!1,cancelable:!1});t.dispatchEvent(A)}function E(e,t,A,r){switch(t){case"DataURL":{let t="data:";const r=l(A||"application/octet-stream");"failure"!==r&&(t+=p(r)),t+=";base64,";const i=new g("latin1");for(const A of e)t+=h(i.write(A));return t+=h(i.end()),t}case"Text":{let t="failure";if(r&&(t=o(r)),"failure"===t&&A){const e=l(A);"failure"!==e&&(t=o(e.parameters.get("charset")))}return"failure"===t&&(t="UTF-8"),function(e,t){const A=m(e),r=function(e){const[t,A,r]=e;if(239===t&&187===A&&191===r)return"UTF-8";if(254===t&&255===A)return"UTF-16BE";if(255===t&&254===A)return"UTF-16LE";return null}(A);let i=0;null!==r&&(t=r,i="UTF-8"===r?3:2);const n=A.slice(i);return new TextDecoder(t).decode(n)}(e,t)}case"ArrayBuffer":return m(e).buffer;case"BinaryString":{let t="";const A=new g("latin1");for(const r of e)t+=A.write(r);return t+=A.end(),t}}}function m(e){const t=e.reduce((e,t)=>e+t.byteLength,0);let A=0;return e.reduce((e,t)=>(e.set(t,A),A+=t.byteLength,e),new Uint8Array(t))}return fr={staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},readOperation:function(n,a,o,d){if("loading"===n[e])throw new s("Invalid state","InvalidStateError");n[e]="loading",n[A]=null,n[t]=null;const p=a.stream().getReader(),l=[];let g=p.read(),h=!0;(async()=>{for(;!n[r];)try{const{done:s,value:m}=await g;if(h&&!n[r]&&queueMicrotask(()=>{u("loadstart",n)}),h=!1,!s&&c.isUint8Array(m))l.push(m),(void 0===n[i]||Date.now()-n[i]>=50)&&!n[r]&&(n[i]=Date.now(),queueMicrotask(()=>{u("progress",n)})),g=p.read();else if(s){queueMicrotask(()=>{n[e]="done";try{const e=E(l,o,a.type,d);if(n[r])return;n[A]=e,u("load",n)}catch(e){n[t]=e,u("error",n)}"loading"!==n[e]&&u("loadend",n)});break}}catch(A){if(n[r])return;queueMicrotask(()=>{n[e]="done",n[t]=A,u("error",n),"loading"!==n[e]&&u("loadend",n)});break}})()},fireAProgressEvent:u}}function Ei(){return wr?yr:(wr=1,yr={kConstruct:ae().kConstruct})}function mi(){if(Dr)return br;Dr=1;const{kConstruct:e}=Ei(),{urlEquals:t,fieldValues:r}=function(){if(Sr)return vr;Sr=1;const e=A,{URLSerializer:t}=ft(),{isValidHeaderName:r}=Et();return vr={urlEquals:function(e,A,r=!1){return t(e,r)===t(A,r)},fieldValues:function(t){e(null!==t);const A=[];for(let e of t.split(","))e=e.trim(),e.length&&r(e)&&A.push(e);return A}}}(),{kEnumerableProperty:i,isDisturbed:n}=se(),{kHeadersList:a}=ae(),{webidl:o}=Ct(),{Response:s,cloneResponse:d}=li(),{Request:p}=ci(),{kState:l,kHeaders:c,kGuard:g,kRealm:h}=mt(),{fetching:u}=gi(),{urlIsHttpHttpsScheme:E,createDeferredPromise:m,readAllBytes:C}=Et(),f=A,{getGlobalDispatcher:Q}=di();class I{#e;constructor(){arguments[0]!==e&&o.illegalConstructor(),this.#e=arguments[1]}async match(e,t={}){o.brandCheck(this,I),o.argumentLengthCheck(arguments,1,{header:"Cache.match"}),e=o.converters.RequestInfo(e),t=o.converters.CacheQueryOptions(t);const A=await this.matchAll(e,t);if(0!==A.length)return A[0]}async matchAll(e=void 0,t={}){o.brandCheck(this,I),void 0!==e&&(e=o.converters.RequestInfo(e)),t=o.converters.CacheQueryOptions(t);let A=null;if(void 0!==e)if(e instanceof p){if(A=e[l],"GET"!==A.method&&!t.ignoreMethod)return[]}else"string"==typeof e&&(A=new p(e)[l]);const r=[];if(void 0===e)for(const e of this.#e)r.push(e[1]);else{const e=this.#t(A,t);for(const t of e)r.push(t[1])}const i=[];for(const e of r){const t=new s(e.body?.source??null),A=t[l].body;t[l]=e,t[l].body=A,t[c][a]=e.headersList,t[c][g]="immutable",i.push(t)}return Object.freeze(i)}async add(e){o.brandCheck(this,I),o.argumentLengthCheck(arguments,1,{header:"Cache.add"});const t=[e=o.converters.RequestInfo(e)],A=this.addAll(t);return await A}async addAll(e){o.brandCheck(this,I),o.argumentLengthCheck(arguments,1,{header:"Cache.addAll"}),e=o.converters["sequence<RequestInfo>"](e);const t=[],A=[];for(const t of e){if("string"==typeof t)continue;const e=t[l];if(!E(e.url)||"GET"!==e.method)throw o.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}const i=[];for(const n of e){const e=new p(n)[l];if(!E(e.url))throw o.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."});e.initiator="fetch",e.destination="subresource",A.push(e);const a=m();i.push(u({request:e,dispatcher:Q(),processResponse(e){if("error"===e.type||206===e.status||e.status<200||e.status>299)a.reject(o.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(e.headersList.contains("vary")){const t=r(e.headersList.get("vary"));for(const e of t)if("*"===e){a.reject(o.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(const e of i)e.abort();return}}},processResponseEndOfBody(e){e.aborted?a.reject(new DOMException("aborted","AbortError")):a.resolve(e)}})),t.push(a.promise)}const n=Promise.all(t),a=await n,s=[];let d=0;for(const e of a){const t={type:"put",request:A[d],response:e};s.push(t),d++}const c=m();let g=null;try{this.#A(s)}catch(e){g=e}return queueMicrotask(()=>{null===g?c.resolve(void 0):c.reject(g)}),c.promise}async put(e,t){o.brandCheck(this,I),o.argumentLengthCheck(arguments,2,{header:"Cache.put"}),e=o.converters.RequestInfo(e),t=o.converters.Response(t);let A=null;if(A=e instanceof p?e[l]:new p(e)[l],!E(A.url)||"GET"!==A.method)throw o.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"});const i=t[l];if(206===i.status)throw o.errors.exception({header:"Cache.put",message:"Got 206 status"});if(i.headersList.contains("vary")){const e=r(i.headersList.get("vary"));for(const t of e)if("*"===t)throw o.errors.exception({header:"Cache.put",message:"Got * vary field value"})}if(i.body&&(n(i.body.stream)||i.body.stream.locked))throw o.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"});const a=d(i),s=m();if(null!=i.body){const e=i.body.stream.getReader();C(e).then(s.resolve,s.reject)}else s.resolve(void 0);const c=[],g={type:"put",request:A,response:a};c.push(g);const h=await s.promise;null!=a.body&&(a.body.source=h);const u=m();let f=null;try{this.#A(c)}catch(e){f=e}return queueMicrotask(()=>{null===f?u.resolve():u.reject(f)}),u.promise}async delete(e,t={}){o.brandCheck(this,I),o.argumentLengthCheck(arguments,1,{header:"Cache.delete"}),e=o.converters.RequestInfo(e),t=o.converters.CacheQueryOptions(t);let A=null;if(e instanceof p){if(A=e[l],"GET"!==A.method&&!t.ignoreMethod)return!1}else f("string"==typeof e),A=new p(e)[l];const r=[],i={type:"delete",request:A,options:t};r.push(i);const n=m();let a,s=null;try{a=this.#A(r)}catch(e){s=e}return queueMicrotask(()=>{null===s?n.resolve(!!a?.length):n.reject(s)}),n.promise}async keys(e=void 0,t={}){o.brandCheck(this,I),void 0!==e&&(e=o.converters.RequestInfo(e)),t=o.converters.CacheQueryOptions(t);let A=null;if(void 0!==e)if(e instanceof p){if(A=e[l],"GET"!==A.method&&!t.ignoreMethod)return[]}else"string"==typeof e&&(A=new p(e)[l]);const r=m(),i=[];if(void 0===e)for(const e of this.#e)i.push(e[0]);else{const e=this.#t(A,t);for(const t of e)i.push(t[0])}return queueMicrotask(()=>{const e=[];for(const t of i){const A=new p("https://a");A[l]=t,A[c][a]=t.headersList,A[c][g]="immutable",A[h]=t.client,e.push(A)}r.resolve(Object.freeze(e))}),r.promise}#A(e){const t=this.#e,A=[...t],r=[],i=[];try{for(const A of e){if("delete"!==A.type&&"put"!==A.type)throw o.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if("delete"===A.type&&null!=A.response)throw o.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#t(A.request,A.options,r).length)throw new DOMException("???","InvalidStateError");let e;if("delete"===A.type){if(e=this.#t(A.request,A.options),0===e.length)return[];for(const A of e){const e=t.indexOf(A);f(-1!==e),t.splice(e,1)}}else if("put"===A.type){if(null==A.response)throw o.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});const i=A.request;if(!E(i.url))throw o.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if("GET"!==i.method)throw o.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(null!=A.options)throw o.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});e=this.#t(A.request);for(const A of e){const e=t.indexOf(A);f(-1!==e),t.splice(e,1)}t.push([A.request,A.response]),r.push([A.request,A.response])}i.push([A.request,A.response])}return i}catch(e){throw this.#e.length=0,this.#e=A,e}}#t(e,t,A){const r=[],i=A??this.#e;for(const A of i){const[i,n]=A;this.#r(e,i,n,t)&&r.push(A)}return r}#r(e,A,i=null,n){const a=new URL(e.url),o=new URL(A.url);if(n?.ignoreSearch&&(o.search="",a.search=""),!t(a,o,!0))return!1;if(null==i||n?.ignoreVary||!i.headersList.contains("vary"))return!0;const s=r(i.headersList.get("vary"));for(const t of s){if("*"===t)return!1;if(A.headersList.get(t)!==e.headersList.get(t))return!1}return!0}}Object.defineProperties(I.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:i,matchAll:i,add:i,addAll:i,put:i,delete:i,keys:i});const B=[{key:"ignoreSearch",converter:o.converters.boolean,defaultValue:!1},{key:"ignoreMethod",converter:o.converters.boolean,defaultValue:!1},{key:"ignoreVary",converter:o.converters.boolean,defaultValue:!1}];return o.converters.CacheQueryOptions=o.dictionaryConverter(B),o.converters.MultiCacheQueryOptions=o.dictionaryConverter([...B,{key:"cacheName",converter:o.converters.DOMString}]),o.converters.Response=o.interfaceConverter(s),o.converters["sequence<RequestInfo>"]=o.sequenceConverter(o.converters.RequestInfo),br={Cache:I}}function Ci(){if(Ur)return _r;function e(e){for(const t of e){const e=t.charCodeAt(0);if(e<=32||e>127||"("===t||")"===t||">"===t||"<"===t||"@"===t||","===t||";"===t||":"===t||"\\"===t||'"'===t||"/"===t||"["===t||"]"===t||"?"===t||"="===t||"{"===t||"}"===t)throw new Error("Invalid cookie name")}}function t(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||34===e||44===e||59===e||92===e||e>126)throw new Error("Invalid header value")}}function A(e){for(const t of e){if(t.charCodeAt(0)<33||";"===t)throw new Error("Invalid cookie path")}}function r(e){"number"==typeof e&&(e=new Date(e));return`${["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][e.getUTCDay()]}, ${e.getUTCDate().toString().padStart(2,"0")} ${["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][e.getUTCMonth()]} ${e.getUTCFullYear()} ${e.getUTCHours().toString().padStart(2,"0")}:${e.getUTCMinutes().toString().padStart(2,"0")}:${e.getUTCSeconds().toString().padStart(2,"0")} GMT`}return Ur=1,_r={isCTLExcludingHtab:function(e){if(0===e.length)return!1;for(const t of e){const e=t.charCodeAt(0);if(e>=0||e<=8||e>=10||e<=31||127===e)return!1}},validateCookieName:e,validateCookiePath:A,validateCookieValue:t,toIMFDate:r,stringify:function(i){if(0===i.name.length)return null;e(i.name),t(i.value);const n=[`${i.name}=${i.value}`];i.name.startsWith("__Secure-")&&(i.secure=!0),i.name.startsWith("__Host-")&&(i.secure=!0,i.domain=null,i.path="/"),i.secure&&n.push("Secure"),i.httpOnly&&n.push("HttpOnly"),"number"==typeof i.maxAge&&(!function(e){if(e<0)throw new Error("Invalid cookie max-age")}(i.maxAge),n.push(`Max-Age=${i.maxAge}`)),i.domain&&(!function(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-"))throw new Error("Invalid cookie domain")}(i.domain),n.push(`Domain=${i.domain}`)),i.path&&(A(i.path),n.push(`Path=${i.path}`)),i.expires&&"Invalid Date"!==i.expires.toString()&&n.push(`Expires=${r(i.expires)}`),i.sameSite&&n.push(`SameSite=${i.sameSite}`);for(const e of i.unparsed){if(!e.includes("="))throw new Error("Invalid unparsed");const[t,...A]=e.split("=");n.push(`${t.trim()}=${A.join("=")}`)}return n.join("; ")}}}function fi(){if(Lr)return Tr;Lr=1;const{maxNameValuePairSize:e,maxAttributeValueSize:t}=Nr?kr:(Nr=1,kr={maxAttributeValueSize:1024,maxNameValuePairSize:4096}),{isCTLExcludingHtab:r}=Ci(),{collectASequenceOfCodePointsFast:i}=ft(),n=A;function a(e,A={}){if(0===e.length)return A;n(";"===e[0]);let r="";(e=e.slice(1)).includes(";")?(r=i(";",e,{position:0}),e=e.slice(r.length)):(r=e,e="");let o="",s="";if(r.includes("=")){const e={position:0};o=i("=",r,e),s=r.slice(e.position+1)}else o=r;if(o=o.trim(),s=s.trim(),s.length>t)return a(e,A);const d=o.toLowerCase();if("expires"===d){const e=new Date(s);A.expires=e}else if("max-age"===d){const t=s.charCodeAt(0);if((t<48||t>57)&&"-"!==s[0])return a(e,A);if(!/^\d+$/.test(s))return a(e,A);const r=Number(s);A.maxAge=r}else if("domain"===d){let e=s;"."===e[0]&&(e=e.slice(1)),e=e.toLowerCase(),A.domain=e}else if("path"===d){let e="";e=0===s.length||"/"!==s[0]?"/":s,A.path=e}else if("secure"===d)A.secure=!0;else if("httponly"===d)A.httpOnly=!0;else if("samesite"===d){let e="Default";const t=s.toLowerCase();t.includes("none")&&(e="None"),t.includes("strict")&&(e="Strict"),t.includes("lax")&&(e="Lax"),A.sameSite=e}else A.unparsed??=[],A.unparsed.push(`${o}=${s}`);return a(e,A)}return Tr={parseSetCookie:function(t){if(r(t))return null;let A="",n="",o="",s="";if(t.includes(";")){const e={position:0};A=i(";",t,e),n=t.slice(e.position)}else A=t;if(A.includes("=")){const e={position:0};o=i("=",A,e),s=A.slice(e.position+1)}else s=A;return o=o.trim(),s=s.trim(),o.length+s.length>e?null:{name:o,value:s,...a(n)}},parseUnparsedAttributes:a}}function Qi(){if(Hr)return Vr;Hr=1;const e=Buffer.allocUnsafe(0);return Vr={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:e}}function Ii(){return Jr?Pr:(Jr=1,Pr={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")})}function Bi(){if(Gr)return Yr;Gr=1;const{webidl:e}=Ct(),{kEnumerableProperty:t}=se(),{MessagePort:A}=E;class r extends Event{#i;constructor(t,A={}){e.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"}),super(t=e.converters.DOMString(t),A=e.converters.MessageEventInit(A)),this.#i=A}get data(){return e.brandCheck(this,r),this.#i.data}get origin(){return e.brandCheck(this,r),this.#i.origin}get lastEventId(){return e.brandCheck(this,r),this.#i.lastEventId}get source(){return e.brandCheck(this,r),this.#i.source}get ports(){return e.brandCheck(this,r),Object.isFrozen(this.#i.ports)||Object.freeze(this.#i.ports),this.#i.ports}initMessageEvent(t,A=!1,i=!1,n=null,a="",o="",s=null,d=[]){return e.brandCheck(this,r),e.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"}),new r(t,{bubbles:A,cancelable:i,data:n,origin:a,lastEventId:o,source:s,ports:d})}}class i extends Event{#i;constructor(t,A={}){e.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"}),super(t=e.converters.DOMString(t),A=e.converters.CloseEventInit(A)),this.#i=A}get wasClean(){return e.brandCheck(this,i),this.#i.wasClean}get code(){return e.brandCheck(this,i),this.#i.code}get reason(){return e.brandCheck(this,i),this.#i.reason}}class n extends Event{#i;constructor(t,A){e.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"}),super(t,A),t=e.converters.DOMString(t),A=e.converters.ErrorEventInit(A??{}),this.#i=A}get message(){return e.brandCheck(this,n),this.#i.message}get filename(){return e.brandCheck(this,n),this.#i.filename}get lineno(){return e.brandCheck(this,n),this.#i.lineno}get colno(){return e.brandCheck(this,n),this.#i.colno}get error(){return e.brandCheck(this,n),this.#i.error}}Object.defineProperties(r.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:t,origin:t,lastEventId:t,source:t,ports:t,initMessageEvent:t}),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:t,code:t,wasClean:t}),Object.defineProperties(n.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:t,filename:t,lineno:t,colno:t,error:t}),e.converters.MessagePort=e.interfaceConverter(A),e.converters["sequence<MessagePort>"]=e.sequenceConverter(e.converters.MessagePort);const a=[{key:"bubbles",converter:e.converters.boolean,defaultValue:!1},{key:"cancelable",converter:e.converters.boolean,defaultValue:!1},{key:"composed",converter:e.converters.boolean,defaultValue:!1}];return e.converters.MessageEventInit=e.dictionaryConverter([...a,{key:"data",converter:e.converters.any,defaultValue:null},{key:"origin",converter:e.converters.USVString,defaultValue:""},{key:"lastEventId",converter:e.converters.DOMString,defaultValue:""},{key:"source",converter:e.nullableConverter(e.converters.MessagePort),defaultValue:null},{key:"ports",converter:e.converters["sequence<MessagePort>"],get defaultValue(){return[]}}]),e.converters.CloseEventInit=e.dictionaryConverter([...a,{key:"wasClean",converter:e.converters.boolean,defaultValue:!1},{key:"code",converter:e.converters["unsigned short"],defaultValue:0},{key:"reason",converter:e.converters.USVString,defaultValue:""}]),e.converters.ErrorEventInit=e.dictionaryConverter([...a,{key:"message",converter:e.converters.DOMString,defaultValue:""},{key:"filename",converter:e.converters.USVString,defaultValue:""},{key:"lineno",converter:e.converters["unsigned long"],defaultValue:0},{key:"colno",converter:e.converters["unsigned long"],defaultValue:0},{key:"error",converter:e.converters.any}]),Yr={MessageEvent:r,CloseEvent:i,ErrorEvent:n}}function yi(){if(qr)return Or;qr=1;const{kReadyState:e,kController:t,kResponse:A,kBinaryType:r,kWebSocketURL:i}=Ii(),{states:n,opcodes:a}=Qi(),{MessageEvent:o,ErrorEvent:s}=Bi();function d(e,t,A=Event,r){const i=new A(e,r);t.dispatchEvent(i)}function p(e,r){const{[t]:i,[A]:n}=e;i.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),r&&d("error",e,s,{error:new Error(r)})}return Or={isEstablished:function(t){return t[e]===n.OPEN},isClosing:function(t){return t[e]===n.CLOSING},isClosed:function(t){return t[e]===n.CLOSED},fireEvent:d,isValidSubprotocol:function(e){if(0===e.length)return!1;for(const t of e){const e=t.charCodeAt(0);if(e<33||e>126||"("===t||")"===t||"<"===t||">"===t||"@"===t||","===t||";"===t||":"===t||"\\"===t||'"'===t||"/"===t||"["===t||"]"===t||"?"===t||"="===t||"{"===t||"}"===t||32===e||9===e)return!1}return!0},isValidStatusCode:function(e){return e>=1e3&&e<1015?1004!==e&&1005!==e&&1006!==e:e>=3e3&&e<=4999},failWebsocketConnection:p,websocketMessageReceived:function(t,A,s){if(t[e]!==n.OPEN)return;let l;if(A===a.TEXT)try{l=new TextDecoder("utf-8",{fatal:!0}).decode(s)}catch{return void p(t,"Received invalid UTF-8 in text frame.")}else A===a.BINARY&&(l="blob"===t[r]?new Blob([s]):new Uint8Array(s).buffer);d("message",t,o,{origin:t[i].origin,data:l})}}}function wi(){if(Zr)return Kr;Zr=1;const{maxUnsigned16Bit:e}=Qi();let t;try{t=require("crypto")}catch{}return Kr={WebsocketFrameSend:class{constructor(e){this.frameData=e,this.maskKey=t.randomBytes(4)}createFrame(t){const A=this.frameData?.byteLength??0;let r=A,i=6;A>e?(i+=8,r=127):A>125&&(i+=2,r=126);const n=Buffer.allocUnsafe(A+i);n[0]=n[1]=0,n[0]|=128,n[0]=(240&n[0])+t,
|
|
3
|
+
/*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */
|
|
4
|
+
n[i-4]=this.maskKey[0],n[i-3]=this.maskKey[1],n[i-2]=this.maskKey[2],n[i-1]=this.maskKey[3],n[1]=r,126===r?n.writeUInt16BE(A,2):127===r&&(n[2]=n[3]=0,n.writeUIntBE(A,4,6)),n[1]|=128;for(let e=0;e<A;e++)n[i+e]=this.frameData[e]^this.maskKey[e%4];return n}}}}function vi(){if(ei)return $r;ei=1;const{webidl:e}=Ct(),{DOMException:t}=ht(),{URLSerializer:A}=ft(),{getGlobalOrigin:r}=ut(),{staticPropertyDescriptors:i,states:a,opcodes:o,emptyBuffer:s}=Qi(),{kWebSocketURL:p,kReadyState:l,kController:c,kBinaryType:g,kResponse:h,kSentClose:u,kByteParser:E}=Ii(),{isEstablished:m,isClosing:C,isValidSubprotocol:f,failWebsocketConnection:Q,fireEvent:I}=yi(),{establishWebSocketConnection:B}=function(){if(jr)return Wr;jr=1;const e=v,{uid:t,states:A}=Qi(),{kReadyState:r,kSentClose:i,kByteParser:n,kReceivedClose:a}=Ii(),{fireEvent:o,failWebsocketConnection:s}=yi(),{CloseEvent:d}=Bi(),{makeRequest:p}=ci(),{fetching:l}=gi(),{Headers:c}=pi(),{getGlobalDispatcher:g}=di(),{kHeadersList:h}=ae(),u={};let E;u.open=e.channel("undici:websocket:open"),u.close=e.channel("undici:websocket:close"),u.socketError=e.channel("undici:websocket:socket_error");try{E=require("crypto")}catch{}function m(e){this.ws[n].write(e)||this.pause()}function C(){const{ws:e}=this,t=e[i]&&e[a];let s=1005,p="";const l=e[n].closingInfo;l?(s=l.code??1005,p=l.reason):e[i]||(s=1006),e[r]=A.CLOSED,o("close",e,d,{wasClean:t,code:s,reason:p}),u.close.hasSubscribers&&u.close.publish({websocket:e,code:s,reason:p})}function f(e){const{ws:t}=this;t[r]=A.CLOSING,u.socketError.hasSubscribers&&u.socketError.publish(e),this.destroy()}return Wr={establishWebSocketConnection:function(e,A,r,i,n){const a=e;a.protocol="ws:"===e.protocol?"http:":"https:";const o=p({urlList:[a],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(n.headers){const e=new c(n.headers)[h];o.headersList=e}const d=E.randomBytes(16).toString("base64");o.headersList.append("sec-websocket-key",d),o.headersList.append("sec-websocket-version","13");for(const e of A)o.headersList.append("sec-websocket-protocol",e);const Q=l({request:o,useParallelQueue:!0,dispatcher:n.dispatcher??g(),processResponse(e){if("error"===e.type||101!==e.status)return void s(r,"Received network error or non-101 status code.");if(0!==A.length&&!e.headersList.get("Sec-WebSocket-Protocol"))return void s(r,"Server did not respond with sent protocols.");if("websocket"!==e.headersList.get("Upgrade")?.toLowerCase())return void s(r,'Server did not set Upgrade header to "websocket".');if("upgrade"!==e.headersList.get("Connection")?.toLowerCase())return void s(r,'Server did not set Connection header to "upgrade".');if(e.headersList.get("Sec-WebSocket-Accept")!==E.createHash("sha1").update(d+t).digest("base64"))return void s(r,"Incorrect hash received in Sec-WebSocket-Accept header.");const n=e.headersList.get("Sec-WebSocket-Extensions");if(null!==n&&""!==n)return void s(r,"Received different permessage-deflate than the one set.");const a=e.headersList.get("Sec-WebSocket-Protocol");null===a||a===o.headersList.get("Sec-WebSocket-Protocol")?(e.socket.on("data",m),e.socket.on("close",C),e.socket.on("error",f),u.open.hasSubscribers&&u.open.publish({address:e.socket.address(),protocol:a,extensions:n}),i(e)):s(r,"Protocol was not set in the opening handshake.")}});return Q}},Wr}(),{WebsocketFrameSend:y}=wi(),{ByteParser:w}=function(){if(zr)return Xr;zr=1;const{Writable:e}=n,t=v,{parserStates:A,opcodes:r,states:i,emptyBuffer:a}=Qi(),{kReadyState:o,kSentClose:s,kResponse:d,kReceivedClose:p}=Ii(),{isValidStatusCode:l,failWebsocketConnection:c,websocketMessageReceived:g}=yi(),{WebsocketFrameSend:h}=wi(),u={};return u.ping=t.channel("undici:websocket:ping"),u.pong=t.channel("undici:websocket:pong"),Xr={ByteParser:class extends e{#n=[];#a=0;#o=A.INFO;#s={};#d=[];constructor(e){super(),this.ws=e}_write(e,t,A){this.#n.push(e),this.#a+=e.length,this.run(A)}run(e){for(;;){if(this.#o===A.INFO){if(this.#a<2)return e();const t=this.consume(2);if(this.#s.fin=!!(128&t[0]),this.#s.opcode=15&t[0],this.#s.originalOpcode??=this.#s.opcode,this.#s.fragmented=!this.#s.fin&&this.#s.opcode!==r.CONTINUATION,this.#s.fragmented&&this.#s.opcode!==r.BINARY&&this.#s.opcode!==r.TEXT)return void c(this.ws,"Invalid frame type was fragmented.");const n=127&t[1];if(n<=125?(this.#s.payloadLength=n,this.#o=A.READ_DATA):126===n?this.#o=A.PAYLOADLENGTH_16:127===n&&(this.#o=A.PAYLOADLENGTH_64),this.#s.fragmented&&n>125)return void c(this.ws,"Fragmented frame exceeded 125 bytes.");if((this.#s.opcode===r.PING||this.#s.opcode===r.PONG||this.#s.opcode===r.CLOSE)&&n>125)return void c(this.ws,"Payload length for control frame exceeded 125 bytes.");if(this.#s.opcode===r.CLOSE){if(1===n)return void c(this.ws,"Received close frame with a 1-byte body.");const e=this.consume(n);if(this.#s.closeInfo=this.parseCloseBody(!1,e),!this.ws[s]){const e=Buffer.allocUnsafe(2);e.writeUInt16BE(this.#s.closeInfo.code,0);const t=new h(e);this.ws[d].socket.write(t.createFrame(r.CLOSE),e=>{e||(this.ws[s]=!0)})}return this.ws[o]=i.CLOSING,this.ws[p]=!0,void this.end()}if(this.#s.opcode===r.PING){const t=this.consume(n);if(!this.ws[p]){const e=new h(t);this.ws[d].socket.write(e.createFrame(r.PONG)),u.ping.hasSubscribers&&u.ping.publish({payload:t})}if(this.#o=A.INFO,this.#a>0)continue;return void e()}if(this.#s.opcode===r.PONG){const t=this.consume(n);if(u.pong.hasSubscribers&&u.pong.publish({payload:t}),this.#a>0)continue;return void e()}}else if(this.#o===A.PAYLOADLENGTH_16){if(this.#a<2)return e();const t=this.consume(2);this.#s.payloadLength=t.readUInt16BE(0),this.#o=A.READ_DATA}else if(this.#o===A.PAYLOADLENGTH_64){if(this.#a<8)return e();const t=this.consume(8),r=t.readUInt32BE(0);if(r>2**31-1)return void c(this.ws,"Received payload length > 2^31 bytes.");const i=t.readUInt32BE(4);this.#s.payloadLength=(r<<8)+i,this.#o=A.READ_DATA}else if(this.#o===A.READ_DATA){if(this.#a<this.#s.payloadLength)return e();if(this.#a>=this.#s.payloadLength){const e=this.consume(this.#s.payloadLength);if(this.#d.push(e),!this.#s.fragmented||this.#s.fin&&this.#s.opcode===r.CONTINUATION){const e=Buffer.concat(this.#d);g(this.ws,this.#s.originalOpcode,e),this.#s={},this.#d.length=0}this.#o=A.INFO}}if(!(this.#a>0)){e();break}}}consume(e){if(e>this.#a)return null;if(0===e)return a;if(this.#n[0].length===e)return this.#a-=this.#n[0].length,this.#n.shift();const t=Buffer.allocUnsafe(e);let A=0;for(;A!==e;){const r=this.#n[0],{length:i}=r;if(i+A===e){t.set(this.#n.shift(),A);break}if(i+A>e){t.set(r.subarray(0,e-A),A),this.#n[0]=r.subarray(e-A);break}t.set(this.#n.shift(),A),A+=r.length}return this.#a-=e,t}parseCloseBody(e,t){let A;if(t.length>=2&&(A=t.readUInt16BE(0)),e)return l(A)?{code:A}:null;let r=t.subarray(2);if(239===r[0]&&187===r[1]&&191===r[2]&&(r=r.subarray(3)),void 0!==A&&!l(A))return null;try{r=new TextDecoder("utf-8",{fatal:!0}).decode(r)}catch{return null}return{code:A,reason:r}}get closingInfo(){return this.#s.closeInfo}}},Xr}(),{kEnumerableProperty:S,isBlobLike:b}=se(),{getGlobalDispatcher:D}=di(),{types:F}=d;let R=!1;class k extends EventTarget{#p={open:null,error:null,close:null,message:null};#l=0;#c="";#g="";constructor(A,i=[]){super(),e.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"}),R||(R=!0,process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"}));const n=e.converters["DOMString or sequence<DOMString> or WebSocketInit"](i);A=e.converters.USVString(A),i=n.protocols;const a=r();let o;try{o=new URL(A,a)}catch(e){throw new t(e,"SyntaxError")}if("http:"===o.protocol?o.protocol="ws:":"https:"===o.protocol&&(o.protocol="wss:"),"ws:"!==o.protocol&&"wss:"!==o.protocol)throw new t(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new t("Got fragment","SyntaxError");if("string"==typeof i&&(i=[i]),i.length!==new Set(i.map(e=>e.toLowerCase())).size)throw new t("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(i.length>0&&!i.every(e=>f(e)))throw new t("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[p]=new URL(o.href),this[c]=B(o,i,this,e=>this.#h(e),n),this[l]=k.CONNECTING,this[g]="blob"}close(A=void 0,r=void 0){if(e.brandCheck(this,k),void 0!==A&&(A=e.converters["unsigned short"](A,{clamp:!0})),void 0!==r&&(r=e.converters.USVString(r)),void 0!==A&&1e3!==A&&(A<3e3||A>4999))throw new t("invalid code","InvalidAccessError");let i=0;if(void 0!==r&&(i=Buffer.byteLength(r),i>123))throw new t(`Reason must be less than 123 bytes; received ${i}`,"SyntaxError");if(this[l]===k.CLOSING||this[l]===k.CLOSED);else if(m(this))if(C(this))this[l]=k.CLOSING;else{const e=new y;void 0!==A&&void 0===r?(e.frameData=Buffer.allocUnsafe(2),e.frameData.writeUInt16BE(A,0)):void 0!==A&&void 0!==r?(e.frameData=Buffer.allocUnsafe(2+i),e.frameData.writeUInt16BE(A,0),e.frameData.write(r,2,"utf-8")):e.frameData=s;this[h].socket.write(e.createFrame(o.CLOSE),e=>{e||(this[u]=!0)}),this[l]=a.CLOSING}else Q(this,"Connection was closed before it was established."),this[l]=k.CLOSING}send(A){if(e.brandCheck(this,k),e.argumentLengthCheck(arguments,1,{header:"WebSocket.send"}),A=e.converters.WebSocketSendData(A),this[l]===k.CONNECTING)throw new t("Sent before connected.","InvalidStateError");if(!m(this)||C(this))return;const r=this[h].socket;if("string"==typeof A){const e=Buffer.from(A),t=new y(e).createFrame(o.TEXT);this.#l+=e.byteLength,r.write(t,()=>{this.#l-=e.byteLength})}else if(F.isArrayBuffer(A)){const e=Buffer.from(A),t=new y(e).createFrame(o.BINARY);this.#l+=e.byteLength,r.write(t,()=>{this.#l-=e.byteLength})}else if(ArrayBuffer.isView(A)){const e=Buffer.from(A,A.byteOffset,A.byteLength),t=new y(e).createFrame(o.BINARY);this.#l+=e.byteLength,r.write(t,()=>{this.#l-=e.byteLength})}else if(b(A)){const e=new y;A.arrayBuffer().then(t=>{const A=Buffer.from(t);e.frameData=A;const i=e.createFrame(o.BINARY);this.#l+=A.byteLength,r.write(i,()=>{this.#l-=A.byteLength})})}}get readyState(){return e.brandCheck(this,k),this[l]}get bufferedAmount(){return e.brandCheck(this,k),this.#l}get url(){return e.brandCheck(this,k),A(this[p])}get extensions(){return e.brandCheck(this,k),this.#g}get protocol(){return e.brandCheck(this,k),this.#c}get onopen(){return e.brandCheck(this,k),this.#p.open}set onopen(t){e.brandCheck(this,k),this.#p.open&&this.removeEventListener("open",this.#p.open),"function"==typeof t?(this.#p.open=t,this.addEventListener("open",t)):this.#p.open=null}get onerror(){return e.brandCheck(this,k),this.#p.error}set onerror(t){e.brandCheck(this,k),this.#p.error&&this.removeEventListener("error",this.#p.error),"function"==typeof t?(this.#p.error=t,this.addEventListener("error",t)):this.#p.error=null}get onclose(){return e.brandCheck(this,k),this.#p.close}set onclose(t){e.brandCheck(this,k),this.#p.close&&this.removeEventListener("close",this.#p.close),"function"==typeof t?(this.#p.close=t,this.addEventListener("close",t)):this.#p.close=null}get onmessage(){return e.brandCheck(this,k),this.#p.message}set onmessage(t){e.brandCheck(this,k),this.#p.message&&this.removeEventListener("message",this.#p.message),"function"==typeof t?(this.#p.message=t,this.addEventListener("message",t)):this.#p.message=null}get binaryType(){return e.brandCheck(this,k),this[g]}set binaryType(t){e.brandCheck(this,k),this[g]="blob"!==t&&"arraybuffer"!==t?"blob":t}#h(e){this[h]=e;const t=new w(this);t.on("drain",function(){this.ws[h].socket.resume()}),e.socket.ws=this,this[E]=t,this[l]=a.OPEN;const A=e.headersList.get("sec-websocket-extensions");null!==A&&(this.#g=A);const r=e.headersList.get("sec-websocket-protocol");null!==r&&(this.#c=r),I("open",this)}}return k.CONNECTING=k.prototype.CONNECTING=a.CONNECTING,k.OPEN=k.prototype.OPEN=a.OPEN,k.CLOSING=k.prototype.CLOSING=a.CLOSING,k.CLOSED=k.prototype.CLOSED=a.CLOSED,Object.defineProperties(k.prototype,{CONNECTING:i,OPEN:i,CLOSING:i,CLOSED:i,url:S,readyState:S,bufferedAmount:S,onopen:S,onerror:S,onclose:S,close:S,onmessage:S,binaryType:S,send:S,extensions:S,protocol:S,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(k,{CONNECTING:i,OPEN:i,CLOSING:i,CLOSED:i}),e.converters["sequence<DOMString>"]=e.sequenceConverter(e.converters.DOMString),e.converters["DOMString or sequence<DOMString>"]=function(t){return"Object"===e.util.Type(t)&&Symbol.iterator in t?e.converters["sequence<DOMString>"](t):e.converters.DOMString(t)},e.converters.WebSocketInit=e.dictionaryConverter([{key:"protocols",converter:e.converters["DOMString or sequence<DOMString>"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return D()}},{key:"headers",converter:e.nullableConverter(e.converters.HeadersInit)}]),e.converters["DOMString or sequence<DOMString> or WebSocketInit"]=function(t){return"Object"!==e.util.Type(t)||Symbol.iterator in t?{protocols:e.converters["DOMString or sequence<DOMString>"](t)}:e.converters.WebSocketInit(t)},e.converters.WebSocketSendData=function(t){if("Object"===e.util.Type(t)){if(b(t))return e.converters.Blob(t,{strict:!1});if(ArrayBuffer.isView(t)||F.isAnyArrayBuffer(t))return e.converters.BufferSource(t)}return e.converters.USVString(t)},$r={WebSocket:k}}var Si,bi,Di=function(){if(ti)return ne;ti=1;const e=iA(),t=yt(),A=oe(),r=aA(),i=function(){if(Wt)return qt;Wt=1;const{BalancedPoolMissingUpstreamError:e,InvalidArgumentError:t}=oe(),{PoolBase:A,kClients:r,kNeedDrain:i,kAddClient:n,kRemoveClient:a,kGetDispatcher:o}=nA(),s=aA(),{kUrl:d,kInterceptors:p}=ae(),{parseOrigin:l}=se(),c=Symbol("factory"),g=Symbol("options"),h=Symbol("kGreatestCommonDivisor"),u=Symbol("kCurrentWeight"),E=Symbol("kIndex"),m=Symbol("kWeight"),C=Symbol("kMaxWeightPerServer"),f=Symbol("kErrorPenalty");function Q(e,t){return 0===t?e:Q(t,e%t)}function I(e,t){return new s(e,t)}return qt=class extends A{constructor(e=[],{factory:A=I,...r}={}){if(super(),this[g]=r,this[E]=-1,this[u]=0,this[C]=this[g].maxWeightPerServer||100,this[f]=this[g].errorPenalty||15,Array.isArray(e)||(e=[e]),"function"!=typeof A)throw new t("factory must be a function.");this[p]=r.interceptors&&r.interceptors.BalancedPool&&Array.isArray(r.interceptors.BalancedPool)?r.interceptors.BalancedPool:[],this[c]=A;for(const t of e)this.addUpstream(t);this._updateBalancedPoolStats()}addUpstream(e){const t=l(e).origin;if(this[r].find(e=>e[d].origin===t&&!0!==e.closed&&!0!==e.destroyed))return this;const A=this[c](t,Object.assign({},this[g]));this[n](A),A.on("connect",()=>{A[m]=Math.min(this[C],A[m]+this[f])}),A.on("connectionError",()=>{A[m]=Math.max(1,A[m]-this[f]),this._updateBalancedPoolStats()}),A.on("disconnect",(...e)=>{const t=e[2];t&&"UND_ERR_SOCKET"===t.code&&(A[m]=Math.max(1,A[m]-this[f]),this._updateBalancedPoolStats())});for(const e of this[r])e[m]=this[C];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){this[h]=this[r].map(e=>e[m]).reduce(Q,0)}removeUpstream(e){const t=l(e).origin,A=this[r].find(e=>e[d].origin===t&&!0!==e.closed&&!0!==e.destroyed);return A&&this[a](A),this}get upstreams(){return this[r].filter(e=>!0!==e.closed&&!0!==e.destroyed).map(e=>e[d].origin)}[o](){if(0===this[r].length)throw new e;if(!this[r].find(e=>!e[i]&&!0!==e.closed&&!0!==e.destroyed))return;const t=this[r].map(e=>e[i]).reduce((e,t)=>e&&t,!0);if(t)return;let A=0,n=this[r].findIndex(e=>!e[i]);for(;A++<this[r].length;){this[E]=(this[E]+1)%this[r].length;const e=this[r][this[E]];if(e[m]>this[r][n][m]&&!e[i]&&(n=this[E]),0===this[E]&&(this[u]=this[u]-this[h],this[u]<=0&&(this[u]=this[C])),e[m]>=this[u]&&!e[i])return e}return this[u]=this[r][n][m],this[E]=n,this[r][n]}},qt}(),n=sA(),a=se(),{InvalidArgumentError:o}=A,s=LA(),d=vt(),p=ii(),l=ai(),c=ni(),g=MA(),h=oi(),u=si(),{getGlobalDispatcher:E,setGlobalDispatcher:m}=di(),C=ir?rr:(ir=1,rr=class{constructor(e){this.handler=e}onConnect(...e){return this.handler.onConnect(...e)}onError(...e){return this.handler.onError(...e)}onUpgrade(...e){return this.handler.onUpgrade(...e)}onHeaders(...e){return this.handler.onHeaders(...e)}onData(...e){return this.handler.onData(...e)}onComplete(...e){return this.handler.onComplete(...e)}onBodySent(...e){return this.handler.onBodySent(...e)}}),f=tA(),Q=AA();let I;try{require("crypto"),I=!0}catch{I=!1}function B(e){return(t,A,r)=>{if("function"==typeof A&&(r=A,A=null),!t||"string"!=typeof t&&"object"!=typeof t&&!(t instanceof URL))throw new o("invalid url");if(null!=A&&"object"!=typeof A)throw new o("invalid opts");if(A&&null!=A.path){if("string"!=typeof A.path)throw new o("invalid opts.path");let e=A.path;A.path.startsWith("/")||(e=`/${e}`),t=new URL(a.parseOrigin(t).origin+e)}else A||(A="object"==typeof t?t:{}),t=a.parseURL(t);const{agent:i,dispatcher:n=E()}=A;if(i)throw new o("unsupported opts.agent. Did you mean opts.client?");return e.call(n,{...A,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:A.method||(A.body?"PUT":"GET")},r)}}if(Object.assign(t.prototype,s),ne.Dispatcher=t,ne.Client=e,ne.Pool=r,ne.BalancedPool=i,ne.Agent=n,ne.ProxyAgent=h,ne.RetryHandler=u,ne.DecoratorHandler=C,ne.RedirectHandler=f,ne.createRedirectInterceptor=Q,ne.buildConnector=d,ne.errors=A,ne.setGlobalDispatcher=m,ne.getGlobalDispatcher=E,a.nodeMajor>16||16===a.nodeMajor&&a.nodeMinor>=8){let e=null;ne.fetch=async function(t){e||(e=gi().fetch);try{return await e(...arguments)}catch(e){throw"object"==typeof e&&Error.captureStackTrace(e,this),e}},ne.Headers=pi().Headers,ne.Response=li().Response,ne.Request=ci().Request,ne.FormData=It().FormData,ne.File=Qt().File,ne.FileReader=function(){if(Br)return Ir;Br=1;const{staticPropertyDescriptors:e,readOperation:t,fireAProgressEvent:A}=ui(),{kState:r,kError:i,kResult:n,kEvents:a,kAborted:o}=hi(),{webidl:s}=Ct(),{kEnumerableProperty:d}=se();class p extends EventTarget{constructor(){super(),this[r]="empty",this[n]=null,this[i]=null,this[a]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(e){s.brandCheck(this,p),s.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"}),e=s.converters.Blob(e,{strict:!1}),t(this,e,"ArrayBuffer")}readAsBinaryString(e){s.brandCheck(this,p),s.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"}),e=s.converters.Blob(e,{strict:!1}),t(this,e,"BinaryString")}readAsText(e,A=void 0){s.brandCheck(this,p),s.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"}),e=s.converters.Blob(e,{strict:!1}),void 0!==A&&(A=s.converters.DOMString(A)),t(this,e,"Text",A)}readAsDataURL(e){s.brandCheck(this,p),s.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"}),e=s.converters.Blob(e,{strict:!1}),t(this,e,"DataURL")}abort(){"empty"!==this[r]&&"done"!==this[r]?("loading"===this[r]&&(this[r]="done",this[n]=null),this[o]=!0,A("abort",this),"loading"!==this[r]&&A("loadend",this)):this[n]=null}get readyState(){switch(s.brandCheck(this,p),this[r]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return s.brandCheck(this,p),this[n]}get error(){return s.brandCheck(this,p),this[i]}get onloadend(){return s.brandCheck(this,p),this[a].loadend}set onloadend(e){s.brandCheck(this,p),this[a].loadend&&this.removeEventListener("loadend",this[a].loadend),"function"==typeof e?(this[a].loadend=e,this.addEventListener("loadend",e)):this[a].loadend=null}get onerror(){return s.brandCheck(this,p),this[a].error}set onerror(e){s.brandCheck(this,p),this[a].error&&this.removeEventListener("error",this[a].error),"function"==typeof e?(this[a].error=e,this.addEventListener("error",e)):this[a].error=null}get onloadstart(){return s.brandCheck(this,p),this[a].loadstart}set onloadstart(e){s.brandCheck(this,p),this[a].loadstart&&this.removeEventListener("loadstart",this[a].loadstart),"function"==typeof e?(this[a].loadstart=e,this.addEventListener("loadstart",e)):this[a].loadstart=null}get onprogress(){return s.brandCheck(this,p),this[a].progress}set onprogress(e){s.brandCheck(this,p),this[a].progress&&this.removeEventListener("progress",this[a].progress),"function"==typeof e?(this[a].progress=e,this.addEventListener("progress",e)):this[a].progress=null}get onload(){return s.brandCheck(this,p),this[a].load}set onload(e){s.brandCheck(this,p),this[a].load&&this.removeEventListener("load",this[a].load),"function"==typeof e?(this[a].load=e,this.addEventListener("load",e)):this[a].load=null}get onabort(){return s.brandCheck(this,p),this[a].abort}set onabort(e){s.brandCheck(this,p),this[a].abort&&this.removeEventListener("abort",this[a].abort),"function"==typeof e?(this[a].abort=e,this.addEventListener("abort",e)):this[a].abort=null}}return p.EMPTY=p.prototype.EMPTY=0,p.LOADING=p.prototype.LOADING=1,p.DONE=p.prototype.DONE=2,Object.defineProperties(p.prototype,{EMPTY:e,LOADING:e,DONE:e,readAsArrayBuffer:d,readAsBinaryString:d,readAsText:d,readAsDataURL:d,abort:d,readyState:d,result:d,error:d,onloadstart:d,onprogress:d,onload:d,onabort:d,onerror:d,onloadend:d,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(p,{EMPTY:e,LOADING:e,DONE:e}),Ir={FileReader:p}}().FileReader;const{setGlobalOrigin:t,getGlobalOrigin:A}=ut();ne.setGlobalOrigin=t,ne.getGlobalOrigin=A;const{CacheStorage:r}=function(){if(Rr)return Fr;Rr=1;const{kConstruct:e}=Ei(),{Cache:t}=mi(),{webidl:A}=Ct(),{kEnumerableProperty:r}=se();class i{#u=new Map;constructor(){arguments[0]!==e&&A.illegalConstructor()}async match(r,n={}){if(A.brandCheck(this,i),A.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"}),r=A.converters.RequestInfo(r),null!=(n=A.converters.MultiCacheQueryOptions(n)).cacheName){if(this.#u.has(n.cacheName)){const A=this.#u.get(n.cacheName),i=new t(e,A);return await i.match(r,n)}}else for(const A of this.#u.values()){const i=new t(e,A),a=await i.match(r,n);if(void 0!==a)return a}}async has(e){return A.brandCheck(this,i),A.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"}),e=A.converters.DOMString(e),this.#u.has(e)}async open(r){if(A.brandCheck(this,i),A.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"}),r=A.converters.DOMString(r),this.#u.has(r)){const A=this.#u.get(r);return new t(e,A)}const n=[];return this.#u.set(r,n),new t(e,n)}async delete(e){return A.brandCheck(this,i),A.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"}),e=A.converters.DOMString(e),this.#u.delete(e)}async keys(){return A.brandCheck(this,i),[...this.#u.keys()]}}return Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:r,has:r,open:r,delete:r,keys:r}),Fr={CacheStorage:i}}(),{kConstruct:i}=Ei();ne.caches=new r(i)}if(a.nodeMajor>=16){const{deleteCookie:e,getCookies:t,getSetCookies:A,setCookie:r}=function(){if(xr)return Mr;xr=1;const{parseSetCookie:e}=fi(),{stringify:t}=Ci(),{webidl:A}=Ct(),{Headers:r}=pi();function i(e,i){A.argumentLengthCheck(arguments,2,{header:"setCookie"}),A.brandCheck(e,r,{strict:!1}),i=A.converters.Cookie(i),t(i)&&e.append("Set-Cookie",t(i))}return A.converters.DeleteCookieAttributes=A.dictionaryConverter([{converter:A.nullableConverter(A.converters.DOMString),key:"path",defaultValue:null},{converter:A.nullableConverter(A.converters.DOMString),key:"domain",defaultValue:null}]),A.converters.Cookie=A.dictionaryConverter([{converter:A.converters.DOMString,key:"name"},{converter:A.converters.DOMString,key:"value"},{converter:A.nullableConverter(e=>"number"==typeof e?A.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:null},{converter:A.nullableConverter(A.converters["long long"]),key:"maxAge",defaultValue:null},{converter:A.nullableConverter(A.converters.DOMString),key:"domain",defaultValue:null},{converter:A.nullableConverter(A.converters.DOMString),key:"path",defaultValue:null},{converter:A.nullableConverter(A.converters.boolean),key:"secure",defaultValue:null},{converter:A.nullableConverter(A.converters.boolean),key:"httpOnly",defaultValue:null},{converter:A.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:A.sequenceConverter(A.converters.DOMString),key:"unparsed",defaultValue:[]}]),Mr={getCookies:function(e){A.argumentLengthCheck(arguments,1,{header:"getCookies"}),A.brandCheck(e,r,{strict:!1});const t=e.get("cookie"),i={};if(!t)return i;for(const e of t.split(";")){const[t,...A]=e.split("=");i[t.trim()]=A.join("=")}return i},deleteCookie:function(e,t,n){A.argumentLengthCheck(arguments,2,{header:"deleteCookie"}),A.brandCheck(e,r,{strict:!1}),t=A.converters.DOMString(t),n=A.converters.DeleteCookieAttributes(n),i(e,{name:t,value:"",expires:new Date(0),...n})},getSetCookies:function(t){A.argumentLengthCheck(arguments,1,{header:"getSetCookies"}),A.brandCheck(t,r,{strict:!1});const i=t.getSetCookie();return i?i.map(t=>e(t)):[]},setCookie:i},Mr}();ne.deleteCookie=e,ne.getCookies=t,ne.getSetCookies=A,ne.setCookie=r;const{parseMIMEType:i,serializeAMimeType:n}=ft();ne.parseMIMEType=i,ne.serializeAMimeType=n}if(a.nodeMajor>=18&&I){const{WebSocket:e}=vi();ne.WebSocket=e}return ne.request=B(s.request),ne.stream=B(s.stream),ne.pipeline=B(s.pipeline),ne.connect=B(s.connect),ne.upgrade=B(s.upgrade),ne.MockClient=p,ne.MockPool=c,ne.MockAgent=l,ne.mockErrors=g,ne}(),Fi={},Ri={exports:{}};function ki(){if(bi)return Si;bi=1;var e={};function t(e){return e<0?-1:1}function A(e,A){A.unsigned||--e;const r=A.unsigned?0:-Math.pow(2,e),i=Math.pow(2,e)-1,n=A.moduloBitLength?Math.pow(2,A.moduloBitLength):Math.pow(2,e),a=A.moduloBitLength?Math.pow(2,A.moduloBitLength-1):Math.pow(2,e-1);return function(e,o){o||(o={});let s=+e;if(o.enforceRange){if(!Number.isFinite(s))throw new TypeError("Argument is not a finite number");if(s=t(s)*Math.floor(Math.abs(s)),s<r||s>i)throw new TypeError("Argument is not in byte range");return s}if(!isNaN(s)&&o.clamp)return s=function(e){return e%1!=.5||1&e?Math.round(e):Math.floor(e)}(s),s<r&&(s=r),s>i&&(s=i),s;if(!Number.isFinite(s)||0===s)return 0;if(s=t(s)*Math.floor(Math.abs(s)),s%=n,!A.unsigned&&s>=a)return s-n;if(A.unsigned)if(s<0)s+=n;else if(-0===s)return 0;return s}}return Si=e,e.void=function(){},e.boolean=function(e){return!!e},e.byte=A(8,{unsigned:!1}),e.octet=A(8,{unsigned:!0}),e.short=A(16,{unsigned:!1}),e["unsigned short"]=A(16,{unsigned:!0}),e.long=A(32,{unsigned:!1}),e["unsigned long"]=A(32,{unsigned:!0}),e["long long"]=A(32,{unsigned:!1,moduloBitLength:64}),e["unsigned long long"]=A(32,{unsigned:!0,moduloBitLength:64}),e.double=function(e){const t=+e;if(!Number.isFinite(t))throw new TypeError("Argument is not a finite floating-point value");return t},e["unrestricted double"]=function(e){const t=+e;if(isNaN(t))throw new TypeError("Argument is NaN");return t},e.float=e.double,e["unrestricted float"]=e["unrestricted double"],e.DOMString=function(e,t){return t||(t={}),t.treatNullAsEmptyString&&null===e?"":String(e)},e.ByteString=function(e,t){const A=String(e);let r;for(let e=0;void 0!==(r=A.codePointAt(e));++e)if(r>255)throw new TypeError("Argument is not a valid bytestring");return A},e.USVString=function(e){const t=String(e),A=t.length,r=[];for(let e=0;e<A;++e){const i=t.charCodeAt(e);if(i<55296||i>57343)r.push(String.fromCodePoint(i));else if(56320<=i&&i<=57343)r.push(String.fromCodePoint(65533));else if(e===A-1)r.push(String.fromCodePoint(65533));else{const A=t.charCodeAt(e+1);if(56320<=A&&A<=57343){const t=1023&i,n=1023&A;r.push(String.fromCodePoint(65536+1024*t+n)),++e}else r.push(String.fromCodePoint(65533))}}return r.join("")},e.Date=function(e,t){if(!(e instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(e))return e},e.RegExp=function(e,t){return e instanceof RegExp||(e=new RegExp(e)),e},Si}var Ni,_i={exports:{}};function Ui(){return Ni||(Ni=1,(e=_i).exports.mixin=function(e,t){const A=Object.getOwnPropertyNames(t);for(let r=0;r<A.length;++r)Object.defineProperty(e,A[r],Object.getOwnPropertyDescriptor(t,A[r]))},e.exports.wrapperSymbol=Symbol("wrapper"),e.exports.implSymbol=Symbol("impl"),e.exports.wrapperForImpl=function(t){return t[e.exports.wrapperSymbol]},e.exports.implForWrapper=function(t){return t[e.exports.implSymbol]}),_i.exports;var e}var Ti,Li,Mi,xi,Vi,Hi={},Pi={exports:{}},Ji={},Yi=[[[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"]];function Gi(){if(Ti)return Ji;Ti=1;var e=S,t=Yi,A={TRANSITIONAL:0,NONTRANSITIONAL:1};function r(e){return e.split("\0").map(function(e){return e.normalize("NFC")}).join("\0")}function i(e){for(var A=0,r=t.length-1;A<=r;){var i=Math.floor((A+r)/2),n=t[i];if(n[0][0]<=e&&n[0][1]>=e)return n;n[0][0]>e?r=i-1:A=i+1}return null}var n=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function a(e){return e.replace(n,"_").length}var o=/[\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 s(t,n){"xn--"===t.substr(0,4)&&(t=e.toUnicode(t));var s=!1;(r(t)!==t||"-"===t[3]&&"-"===t[4]||"-"===t[0]||"-"===t[t.length-1]||-1!==t.indexOf(".")||0===t.search(o))&&(s=!0);for(var p=a(t),l=0;l<p;++l){var c=i(t.codePointAt(l));if(d===A.TRANSITIONAL&&"valid"!==c[1]||d===A.NONTRANSITIONAL&&"valid"!==c[1]&&"deviation"!==c[1]){s=!0;break}}return{label:t,error:s}}function d(e,t,n){var o=function(e,t,r){for(var n=!1,o="",s=a(e),d=0;d<s;++d){var p=e.codePointAt(d),l=i(p);switch(l[1]){case"disallowed":n=!0,o+=String.fromCodePoint(p);break;case"ignored":break;case"mapped":o+=String.fromCodePoint.apply(String,l[2]);break;case"deviation":o+=r===A.TRANSITIONAL?String.fromCodePoint.apply(String,l[2]):String.fromCodePoint(p);break;case"valid":o+=String.fromCodePoint(p);break;case"disallowed_STD3_mapped":t?(n=!0,o+=String.fromCodePoint(p)):o+=String.fromCodePoint.apply(String,l[2]);break;case"disallowed_STD3_valid":t&&(n=!0),o+=String.fromCodePoint(p)}}return{string:o,error:n}}(e,t,n);o.string=r(o.string);for(var d=o.string.split("."),p=0;p<d.length;++p)try{var l=s(d[p]);d[p]=l.label,o.error=o.error||l.error}catch(e){o.error=!0}return{string:d.join("."),error:o.error}}return Ji.toASCII=function(t,A,r,i){var n=d(t,A,r),a=n.string.split(".");if(a=a.map(function(t){try{return e.toASCII(t)}catch(e){return n.error=!0,t}}),i){var o=a.slice(0,a.length-1).join(".").length;(o.length>253||0===o.length)&&(n.error=!0);for(var s=0;s<a.length;++s)if(a.length>63||0===a.length){n.error=!0;break}}return n.error?null:a.join(".")},Ji.toUnicode=function(e,t){var r=d(e,t,A.NONTRANSITIONAL);return{domain:r.string,error:r.error}},Ji.PROCESSING_OPTIONS=A,Ji}function Oi(){return Li||(Li=1,function(e){const t=S,A=Gi(),r={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},i=Symbol("failure");function n(e){return t.ucs2.decode(e).length}function a(e,t){const A=e[t];return isNaN(A)?void 0:String.fromCodePoint(A)}function o(e){return e>=48&&e<=57}function s(e){return e>=65&&e<=90||e>=97&&e<=122}function d(e){return o(e)||e>=65&&e<=70||e>=97&&e<=102}function p(e){return"."===e||"%2e"===e.toLowerCase()}function l(e){return 2===e.length&&s(e.codePointAt(0))&&(":"===e[1]||"|"===e[1])}function c(e){return void 0!==r[e]}function g(e){return c(e.scheme)}function h(e){let t=e.toString(16).toUpperCase();return 1===t.length&&(t="0"+t),"%"+t}function u(e){return e<=31||e>126}const E=new Set([32,34,35,60,62,63,96,123,125]);function m(e){return u(e)||E.has(e)}const C=new Set([47,58,59,61,64,91,92,93,94,124]);function f(e){return m(e)||C.has(e)}function Q(e,t){const A=String.fromCodePoint(e);return t(e)?function(e){const t=new Buffer(e);let A="";for(let e=0;e<t.length;++e)A+=h(t[e]);return A}(A):A}function I(e){let t=10;if(e.length>=2&&"0"===e.charAt(0)&&"x"===e.charAt(1).toLowerCase()?(e=e.substring(2),t=16):e.length>=2&&"0"===e.charAt(0)&&(e=e.substring(1),t=8),""===e)return 0;return(10===t?/[^0-9]/:16===t?/[^0-9A-Fa-f]/:/[^0-7]/).test(e)?i:parseInt(e,t)}function B(e,r){if("["===e[0])return"]"!==e[e.length-1]?i:function(e){const A=[0,0,0,0,0,0,0,0];let r=0,n=null,s=0;if(58===(e=t.ucs2.decode(e))[s]){if(58!==e[s+1])return i;s+=2,++r,n=r}for(;s<e.length;){if(8===r)return i;if(58===e[s]){if(null!==n)return i;++s,++r,n=r;continue}let t=0,p=0;for(;p<4&&d(e[s]);)t=16*t+parseInt(a(e,s),16),++s,++p;if(46===e[s]){if(0===p)return i;if(s-=p,r>6)return i;let t=0;for(;void 0!==e[s];){let n=null;if(t>0){if(!(46===e[s]&&t<4))return i;++s}if(!o(e[s]))return i;for(;o(e[s]);){const t=parseInt(a(e,s));if(null===n)n=t;else{if(0===n)return i;n=10*n+t}if(n>255)return i;++s}A[r]=256*A[r]+n,++t,2!==t&&4!==t||++r}if(4!==t)return i;break}if(58===e[s]){if(++s,void 0===e[s])return i}else if(void 0!==e[s])return i;A[r]=t,++r}if(null!==n){let e=r-n;for(r=7;0!==r&&e>0;){const t=A[n+e-1];A[n+e-1]=A[r],A[r]=t,--r,--e}}else if(null===n&&8!==r)return i;return A}(e.substring(1,e.length-1));if(!r)return function(e){if(A=e,-1!==A.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/))return i;var A;let r="";const n=t.ucs2.decode(e);for(let e=0;e<n.length;++e)r+=Q(n[e],u);return r}(e);const n=function(e){const t=new Buffer(e),A=[];for(let e=0;e<t.length;++e)37!==t[e]?A.push(t[e]):37===t[e]&&d(t[e+1])&&d(t[e+2])?(A.push(parseInt(t.slice(e+1,e+3).toString(),16)),e+=2):A.push(t[e]);return new Buffer(A).toString()}(e),s=A.toASCII(n,!1,A.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if(null===s)return i;if(-1!==s.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/))return i;const p=function(e){const t=e.split(".");if(""===t[t.length-1]&&t.length>1&&t.pop(),t.length>4)return e;const A=[];for(const r of t){if(""===r)return e;const t=I(r);if(t===i)return e;A.push(t)}for(let e=0;e<A.length-1;++e)if(A[e]>255)return i;if(A[A.length-1]>=Math.pow(256,5-A.length))return i;let r=A.pop(),n=0;for(const e of A)r+=e*Math.pow(256,3-n),++n;return r}(s);return"number"==typeof p||p===i?p:s}function y(e){return"number"==typeof e?function(e){let t="",A=e;for(let e=1;e<=4;++e)t=String(A%256)+t,4!==e&&(t="."+t),A=Math.floor(A/256);return t}(e):e instanceof Array?"["+function(e){let t="";const A=function(e){let t=null,A=1,r=null,i=0;for(let n=0;n<e.length;++n)0!==e[n]?(i>A&&(t=r,A=i),r=null,i=0):(null===r&&(r=n),++i);return i>A&&(t=r,A=i),{idx:t,len:A}}(e).idx;let r=!1;for(let i=0;i<=7;++i)if(!r||0!==e[i]){if(r&&(r=!1),A===i){t+=0===i?"::":":",r=!0;continue}t+=e[i].toString(16),7!==i&&(t+=":")}return t}(e)+"]":e}function w(e){const t=e.path;var A;0!==t.length&&("file"===e.scheme&&1===t.length&&(A=t[0],/^[A-Za-z]:$/.test(A))||t.pop())}function v(e){return""!==e.username||""!==e.password}function b(e,A,r,n,a){if(this.pointer=0,this.input=e,this.base=A||null,this.encodingOverride=r||"utf-8",this.stateOverride=a,this.url=n,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 e=function(e){return e.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}(this.input);e!==this.input&&(this.parseError=!0),this.input=e}const o=function(e){return e.replace(/\u0009|\u000A|\u000D/g,"")}(this.input);for(o!==this.input&&(this.parseError=!0),this.input=o,this.state=a||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=t.ucs2.decode(this.input);this.pointer<=this.input.length;++this.pointer){const e=this.input[this.pointer],t=isNaN(e)?void 0:String.fromCodePoint(e),A=this["parse "+this.state](e,t);if(!A)break;if(A===i){this.failure=!0;break}}}b.prototype["parse scheme start"]=function(e,t){if(s(e))this.buffer+=t.toLowerCase(),this.state="scheme";else{if(this.stateOverride)return this.parseError=!0,i;this.state="no scheme",--this.pointer}return!0},b.prototype["parse scheme"]=function(e,t){if(function(e){return s(e)||o(e)}(e)||43===e||45===e||46===e)this.buffer+=t.toLowerCase();else if(58===e){if(this.stateOverride){if(g(this.url)&&!c(this.buffer))return!1;if(!g(this.url)&&c(this.buffer))return!1;if((v(this.url)||null!==this.url.port)&&"file"===this.buffer)return!1;if("file"===this.url.scheme&&(""===this.url.host||null===this.url.host))return!1}if(this.url.scheme=this.buffer,this.buffer="",this.stateOverride)return!1;"file"===this.url.scheme?(47===this.input[this.pointer+1]&&47===this.input[this.pointer+2]||(this.parseError=!0),this.state="file"):g(this.url)&&null!==this.base&&this.base.scheme===this.url.scheme?this.state="special relative or authority":g(this.url)?this.state="special authority slashes":47===this.input[this.pointer+1]?(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)return this.parseError=!0,i;this.buffer="",this.state="no scheme",this.pointer=-1}return!0},b.prototype["parse no scheme"]=function(e){return null===this.base||this.base.cannotBeABaseURL&&35!==e?i:(this.base.cannotBeABaseURL&&35===e?(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"):"file"===this.base.scheme?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)},b.prototype["parse special relative or authority"]=function(e){return 47===e&&47===this.input[this.pointer+1]?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0},b.prototype["parse path or authority"]=function(e){return 47===e?this.state="authority":(this.state="path",--this.pointer),!0},b.prototype["parse relative"]=function(e){return this.url.scheme=this.base.scheme,isNaN(e)?(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):47===e?this.state="relative slash":63===e?(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"):35===e?(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"):g(this.url)&&92===e?(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},b.prototype["parse relative slash"]=function(e){return!g(this.url)||47!==e&&92!==e?47===e?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):(92===e&&(this.parseError=!0),this.state="special authority ignore slashes"),!0},b.prototype["parse special authority slashes"]=function(e){return 47===e&&47===this.input[this.pointer+1]?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0},b.prototype["parse special authority ignore slashes"]=function(e){return 47!==e&&92!==e?(this.state="authority",--this.pointer):this.parseError=!0,!0},b.prototype["parse authority"]=function(e,t){if(64===e){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;const e=n(this.buffer);for(let t=0;t<e;++t){const e=this.buffer.codePointAt(t);if(58===e&&!this.passwordTokenSeenFlag){this.passwordTokenSeenFlag=!0;continue}const A=Q(e,f);this.passwordTokenSeenFlag?this.url.password+=A:this.url.username+=A}this.buffer=""}else if(isNaN(e)||47===e||63===e||35===e||g(this.url)&&92===e){if(this.atFlag&&""===this.buffer)return this.parseError=!0,i;this.pointer-=n(this.buffer)+1,this.buffer="",this.state="host"}else this.buffer+=t;return!0},b.prototype["parse hostname"]=b.prototype["parse host"]=function(e,t){if(this.stateOverride&&"file"===this.url.scheme)--this.pointer,this.state="file host";else if(58!==e||this.arrFlag)if(isNaN(e)||47===e||63===e||35===e||g(this.url)&&92===e){if(--this.pointer,g(this.url)&&""===this.buffer)return this.parseError=!0,i;if(this.stateOverride&&""===this.buffer&&(v(this.url)||null!==this.url.port))return this.parseError=!0,!1;const e=B(this.buffer,g(this.url));if(e===i)return i;if(this.url.host=e,this.buffer="",this.state="path start",this.stateOverride)return!1}else 91===e?this.arrFlag=!0:93===e&&(this.arrFlag=!1),this.buffer+=t;else{if(""===this.buffer)return this.parseError=!0,i;const e=B(this.buffer,g(this.url));if(e===i)return i;if(this.url.host=e,this.buffer="",this.state="port","hostname"===this.stateOverride)return!1}return!0},b.prototype["parse port"]=function(e,t){if(o(e))this.buffer+=t;else{if(!(isNaN(e)||47===e||63===e||35===e||g(this.url)&&92===e||this.stateOverride))return this.parseError=!0,i;if(""!==this.buffer){const e=parseInt(this.buffer);if(e>Math.pow(2,16)-1)return this.parseError=!0,i;this.url.port=e===(A=this.url.scheme,r[A])?null:e,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}var A;return!0};const D=new Set([47,92,63,35]);b.prototype["parse file"]=function(e){var t,A;return this.url.scheme="file",47===e||92===e?(92===e&&(this.parseError=!0),this.state="file slash"):null!==this.base&&"file"===this.base.scheme?isNaN(e)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):63===e?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):35===e?(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||(t=e,A=this.input[this.pointer+1],!s(t)||58!==A&&124!==A)||this.input.length-this.pointer-1>=2&&!D.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),w(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0},b.prototype["parse file slash"]=function(e){var t;return 47===e||92===e?(92===e&&(this.parseError=!0),this.state="file host"):(null!==this.base&&"file"===this.base.scheme&&(2===(t=this.base.path[0]).length&&s(t.codePointAt(0))&&":"===t[1]?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0},b.prototype["parse file host"]=function(e,t){if(isNaN(e)||47===e||92===e||63===e||35===e)if(--this.pointer,!this.stateOverride&&l(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 e=B(this.buffer,g(this.url));if(e===i)return i;if("localhost"===e&&(e=""),this.url.host=e,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=t;return!0},b.prototype["parse path start"]=function(e){return g(this.url)?(92===e&&(this.parseError=!0),this.state="path",47!==e&&92!==e&&--this.pointer):this.stateOverride||63!==e?this.stateOverride||35!==e?void 0!==e&&(this.state="path",47!==e&&--this.pointer):(this.url.fragment="",this.state="fragment"):(this.url.query="",this.state="query"),!0},b.prototype["parse path"]=function(e){if(isNaN(e)||47===e||g(this.url)&&92===e||!this.stateOverride&&(63===e||35===e)){if(g(this.url)&&92===e&&(this.parseError=!0),".."===(t=(t=this.buffer).toLowerCase())||"%2e."===t||".%2e"===t||"%2e%2e"===t?(w(this.url),47===e||g(this.url)&&92===e||this.url.path.push("")):!p(this.buffer)||47===e||g(this.url)&&92===e?p(this.buffer)||("file"===this.url.scheme&&0===this.url.path.length&&l(this.buffer)&&(""!==this.url.host&&null!==this.url.host&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)):this.url.path.push(""),this.buffer="","file"===this.url.scheme&&(void 0===e||63===e||35===e))for(;this.url.path.length>1&&""===this.url.path[0];)this.parseError=!0,this.url.path.shift();63===e&&(this.url.query="",this.state="query"),35===e&&(this.url.fragment="",this.state="fragment")}else 37!==e||d(this.input[this.pointer+1])&&d(this.input[this.pointer+2])||(this.parseError=!0),this.buffer+=Q(e,m);var t;return!0},b.prototype["parse cannot-be-a-base-URL path"]=function(e){return 63===e?(this.url.query="",this.state="query"):35===e?(this.url.fragment="",this.state="fragment"):(isNaN(e)||37===e||(this.parseError=!0),37!==e||d(this.input[this.pointer+1])&&d(this.input[this.pointer+2])||(this.parseError=!0),isNaN(e)||(this.url.path[0]=this.url.path[0]+Q(e,u))),!0},b.prototype["parse query"]=function(e,t){if(isNaN(e)||!this.stateOverride&&35===e){g(this.url)&&"ws"!==this.url.scheme&&"wss"!==this.url.scheme||(this.encodingOverride="utf-8");const t=new Buffer(this.buffer);for(let e=0;e<t.length;++e)t[e]<33||t[e]>126||34===t[e]||35===t[e]||60===t[e]||62===t[e]?this.url.query+=h(t[e]):this.url.query+=String.fromCodePoint(t[e]);this.buffer="",35===e&&(this.url.fragment="",this.state="fragment")}else 37!==e||d(this.input[this.pointer+1])&&d(this.input[this.pointer+2])||(this.parseError=!0),this.buffer+=t;return!0},b.prototype["parse fragment"]=function(e){return isNaN(e)||(0===e?this.parseError=!0:(37!==e||d(this.input[this.pointer+1])&&d(this.input[this.pointer+2])||(this.parseError=!0),this.url.fragment+=Q(e,u))),!0},e.exports.serializeURL=function(e,t){let A=e.scheme+":";if(null!==e.host?(A+="//",""===e.username&&""===e.password||(A+=e.username,""!==e.password&&(A+=":"+e.password),A+="@"),A+=y(e.host),null!==e.port&&(A+=":"+e.port)):null===e.host&&"file"===e.scheme&&(A+="//"),e.cannotBeABaseURL)A+=e.path[0];else for(const t of e.path)A+="/"+t;return null!==e.query&&(A+="?"+e.query),t||null===e.fragment||(A+="#"+e.fragment),A},e.exports.serializeURLOrigin=function(t){switch(t.scheme){case"blob":try{return e.exports.serializeURLOrigin(e.exports.parseURL(t.path[0]))}catch(e){return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return function(e){let t=e.scheme+"://";return t+=y(e.host),null!==e.port&&(t+=":"+e.port),t}({scheme:t.scheme,host:t.host,port:t.port});case"file":return"file://";default:return"null"}},e.exports.basicURLParse=function(e,t){void 0===t&&(t={});const A=new b(e,t.baseURL,t.encodingOverride,t.url,t.stateOverride);return A.failure?"failure":A.url},e.exports.setTheUsername=function(e,A){e.username="";const r=t.ucs2.decode(A);for(let t=0;t<r.length;++t)e.username+=Q(r[t],f)},e.exports.setThePassword=function(e,A){e.password="";const r=t.ucs2.decode(A);for(let t=0;t<r.length;++t)e.password+=Q(r[t],f)},e.exports.serializeHost=y,e.exports.cannotHaveAUsernamePasswordPort=function(e){return null===e.host||""===e.host||e.cannotBeABaseURL||"file"===e.scheme},e.exports.serializeInteger=function(e){return String(e)},e.exports.parseURL=function(t,A){return void 0===A&&(A={}),e.exports.basicURLParse(t,{baseURL:A.baseURL,encodingOverride:A.encodingOverride})}}(Pi)),Pi.exports}function qi(){return xi||(xi=1,function(e){const t=ki(),A=Ui(),r=function(){if(Mi)return Hi;Mi=1;const e=Oi();return Hi.implementation=class{constructor(t){const A=t[0],r=t[1];let i=null;if(void 0!==r&&(i=e.basicURLParse(r),"failure"===i))throw new TypeError("Invalid base URL");const n=e.basicURLParse(A,{baseURL:i});if("failure"===n)throw new TypeError("Invalid URL");this._url=n}get href(){return e.serializeURL(this._url)}set href(t){const A=e.basicURLParse(t);if("failure"===A)throw new TypeError("Invalid URL");this._url=A}get origin(){return e.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(t){e.basicURLParse(t+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(t){e.cannotHaveAUsernamePasswordPort(this._url)||e.setTheUsername(this._url,t)}get password(){return this._url.password}set password(t){e.cannotHaveAUsernamePasswordPort(this._url)||e.setThePassword(this._url,t)}get host(){const t=this._url;return null===t.host?"":null===t.port?e.serializeHost(t.host):e.serializeHost(t.host)+":"+e.serializeInteger(t.port)}set host(t){this._url.cannotBeABaseURL||e.basicURLParse(t,{url:this._url,stateOverride:"host"})}get hostname(){return null===this._url.host?"":e.serializeHost(this._url.host)}set hostname(t){this._url.cannotBeABaseURL||e.basicURLParse(t,{url:this._url,stateOverride:"hostname"})}get port(){return null===this._url.port?"":e.serializeInteger(this._url.port)}set port(t){e.cannotHaveAUsernamePasswordPort(this._url)||(""===t?this._url.port=null:e.basicURLParse(t,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:0===this._url.path.length?"":"/"+this._url.path.join("/")}set pathname(t){this._url.cannotBeABaseURL||(this._url.path=[],e.basicURLParse(t,{url:this._url,stateOverride:"path start"}))}get search(){return null===this._url.query||""===this._url.query?"":"?"+this._url.query}set search(t){const A=this._url;if(""===t)return void(A.query=null);const r="?"===t[0]?t.substring(1):t;A.query="",e.basicURLParse(r,{url:A,stateOverride:"query"})}get hash(){return null===this._url.fragment||""===this._url.fragment?"":"#"+this._url.fragment}set hash(t){if(""===t)return void(this._url.fragment=null);const A="#"===t[0]?t.substring(1):t;this._url.fragment="",e.basicURLParse(A,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}},Hi}(),i=A.implSymbol;function n(A){if(!this||this[i]||!(this instanceof n))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 r=[];for(let e=0;e<arguments.length&&e<2;++e)r[e]=arguments[e];r[0]=t.USVString(r[0]),void 0!==r[1]&&(r[1]=t.USVString(r[1])),e.exports.setup(this,r)}n.prototype.toJSON=function(){if(!this||!e.exports.is(this))throw new TypeError("Illegal invocation");const t=[];for(let e=0;e<arguments.length&&e<0;++e)t[e]=arguments[e];return this[i].toJSON.apply(this[i],t)},Object.defineProperty(n.prototype,"href",{get(){return this[i].href},set(e){e=t.USVString(e),this[i].href=e},enumerable:!0,configurable:!0}),n.prototype.toString=function(){if(!this||!e.exports.is(this))throw new TypeError("Illegal invocation");return this.href},Object.defineProperty(n.prototype,"origin",{get(){return this[i].origin},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"protocol",{get(){return this[i].protocol},set(e){e=t.USVString(e),this[i].protocol=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"username",{get(){return this[i].username},set(e){e=t.USVString(e),this[i].username=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"password",{get(){return this[i].password},set(e){e=t.USVString(e),this[i].password=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"host",{get(){return this[i].host},set(e){e=t.USVString(e),this[i].host=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hostname",{get(){return this[i].hostname},set(e){e=t.USVString(e),this[i].hostname=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"port",{get(){return this[i].port},set(e){e=t.USVString(e),this[i].port=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"pathname",{get(){return this[i].pathname},set(e){e=t.USVString(e),this[i].pathname=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"search",{get(){return this[i].search},set(e){e=t.USVString(e),this[i].search=e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hash",{get(){return this[i].hash},set(e){e=t.USVString(e),this[i].hash=e},enumerable:!0,configurable:!0}),e.exports={is:e=>!!e&&e[i]instanceof r.implementation,create(e,t){let A=Object.create(n.prototype);return this.setup(A,e,t),A},setup(e,t,n){n||(n={}),n.wrapper=e,e[i]=new r.implementation(t,n),e[i][A.wrapperSymbol]=e},interface:n,expose:{Window:{URL:n},Worker:{URL:n}}}}(Ri)),Ri.exports}var Wi=j((Vi||(Vi=1,Fi.URL=qi().interface,Fi.serializeURL=Oi().serializeURL,Fi.serializeURLOrigin=Oi().serializeURLOrigin,Fi.basicURLParse=Oi().basicURLParse,Fi.setTheUsername=Oi().setTheUsername,Fi.setThePassword=Oi().setThePassword,Fi.serializeHost=Oi().serializeHost,Fi.serializeInteger=Oi().serializeInteger,Fi.parseURL=Oi().parseURL),Fi));const ji=n.Readable,Ki=Symbol("buffer"),Zi=Symbol("type");class Xi{constructor(){this[Zi]="";const e=arguments[0],t=arguments[1],A=[];let r=0;if(e){const t=e,i=Number(t.length);for(let e=0;e<i;e++){const i=t[e];let n;n=i instanceof Buffer?i:ArrayBuffer.isView(i)?Buffer.from(i.buffer,i.byteOffset,i.byteLength):i instanceof ArrayBuffer?Buffer.from(i):i instanceof Xi?i[Ki]:Buffer.from("string"==typeof i?i:String(i)),r+=n.length,A.push(n)}}this[Ki]=Buffer.concat(A);let i=t&&void 0!==t.type&&String(t.type).toLowerCase();i&&!/[^\u0020-\u007E]/.test(i)&&(this[Zi]=i)}get size(){return this[Ki].length}get type(){return this[Zi]}text(){return Promise.resolve(this[Ki].toString())}arrayBuffer(){const e=this[Ki],t=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return Promise.resolve(t)}stream(){const e=new ji;return e._read=function(){},e.push(this[Ki]),e.push(null),e}toString(){return"[object Blob]"}slice(){const e=this.size,t=arguments[0],A=arguments[1];let r,i;r=void 0===t?0:t<0?Math.max(e+t,0):Math.min(t,e),i=void 0===A?e:A<0?Math.max(e+A,0):Math.min(A,e);const n=Math.max(i-r,0),a=this[Ki].slice(r,r+n),o=new Xi([],{type:arguments[2]});return o[Ki]=a,o}}function zi(e,t,A){Error.call(this,e),this.message=e,this.type=t,A&&(this.code=this.errno=A.code),Error.captureStackTrace(this,this.constructor)}let $i;Object.defineProperties(Xi.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}}),Object.defineProperty(Xi.prototype,Symbol.toStringTag,{value:"Blob",writable:!1,enumerable:!1,configurable:!0}),zi.prototype=Object.create(Error.prototype),zi.prototype.constructor=zi,zi.prototype.name="FetchError";try{$i=require("encoding").convert}catch(e){}const en=Symbol("Body internals"),tn=n.PassThrough;function An(e){var t=this,A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=A.size;let i=void 0===r?0:r;var a=A.timeout;let o=void 0===a?0:a;null==e?e=null:nn(e)?e=Buffer.from(e.toString()):an(e)||Buffer.isBuffer(e)||("[object ArrayBuffer]"===Object.prototype.toString.call(e)?e=Buffer.from(e):ArrayBuffer.isView(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof n||(e=Buffer.from(String(e)))),this[en]={body:e,disturbed:!1,error:null},this.size=i,this.timeout=o,e instanceof n&&e.on("error",function(e){const A="AbortError"===e.name?e:new zi(`Invalid response body while trying to fetch ${t.url}: ${e.message}`,"system",e);t[en].error=A})}function rn(){var e=this;if(this[en].disturbed)return An.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[en].disturbed=!0,this[en].error)return An.Promise.reject(this[en].error);let t=this.body;if(null===t)return An.Promise.resolve(Buffer.alloc(0));if(an(t)&&(t=t.stream()),Buffer.isBuffer(t))return An.Promise.resolve(t);if(!(t instanceof n))return An.Promise.resolve(Buffer.alloc(0));let A=[],r=0,i=!1;return new An.Promise(function(n,a){let o;e.timeout&&(o=setTimeout(function(){i=!0,a(new zi(`Response timeout while trying to fetch ${e.url} (over ${e.timeout}ms)`,"body-timeout"))},e.timeout)),t.on("error",function(t){"AbortError"===t.name?(i=!0,a(t)):a(new zi(`Invalid response body while trying to fetch ${e.url}: ${t.message}`,"system",t))}),t.on("data",function(t){if(!i&&null!==t){if(e.size&&r+t.length>e.size)return i=!0,void a(new zi(`content size at ${e.url} over limit: ${e.size}`,"max-size"));r+=t.length,A.push(t)}}),t.on("end",function(){if(!i){clearTimeout(o);try{n(Buffer.concat(A,r))}catch(t){a(new zi(`Could not create Buffer from response body for ${e.url}: ${t.message}`,"system",t))}}})})}function nn(e){return"object"==typeof e&&"function"==typeof e.append&&"function"==typeof e.delete&&"function"==typeof e.get&&"function"==typeof e.getAll&&"function"==typeof e.has&&"function"==typeof e.set&&("URLSearchParams"===e.constructor.name||"[object URLSearchParams]"===Object.prototype.toString.call(e)||"function"==typeof e.sort)}function an(e){return"object"==typeof e&&"function"==typeof e.arrayBuffer&&"string"==typeof e.type&&"function"==typeof e.stream&&"function"==typeof e.constructor&&"string"==typeof e.constructor.name&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function on(e){let t,A,r=e.body;if(e.bodyUsed)throw new Error("cannot clone body after it is used");return r instanceof n&&"function"!=typeof r.getBoundary&&(t=new tn,A=new tn,r.pipe(t),r.pipe(A),e[en].body=t,r=A),r}function sn(e){return null===e?null:"string"==typeof e?"text/plain;charset=UTF-8":nn(e)?"application/x-www-form-urlencoded;charset=UTF-8":an(e)?e.type||null:Buffer.isBuffer(e)||"[object ArrayBuffer]"===Object.prototype.toString.call(e)||ArrayBuffer.isView(e)?null:"function"==typeof e.getBoundary?`multipart/form-data;boundary=${e.getBoundary()}`:e instanceof n?null:"text/plain;charset=UTF-8"}function dn(e){const t=e.body;return null===t?0:an(t)?t.size:Buffer.isBuffer(t)?t.length:t&&"function"==typeof t.getLengthSync&&(t._lengthRetrievers&&0==t._lengthRetrievers.length||t.hasKnownLength&&t.hasKnownLength())?t.getLengthSync():null}An.prototype={get body(){return this[en].body},get bodyUsed(){return this[en].disturbed},arrayBuffer(){return rn.call(this).then(function(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)})},blob(){let e=this.headers&&this.headers.get("content-type")||"";return rn.call(this).then(function(t){return Object.assign(new Xi([],{type:e.toLowerCase()}),{[Ki]:t})})},json(){var e=this;return rn.call(this).then(function(t){try{return JSON.parse(t.toString())}catch(t){return An.Promise.reject(new zi(`invalid json response body at ${e.url} reason: ${t.message}`,"invalid-json"))}})},text(){return rn.call(this).then(function(e){return e.toString()})},buffer(){return rn.call(this)},textConverted(){var e=this;return rn.call(this).then(function(t){return function(e,t){if("function"!=typeof $i)throw new Error("The package `encoding` must be installed to use the textConverted() function");const A=t.get("content-type");let r,i,n="utf-8";A&&(r=/charset=([^;]*)/i.exec(A));i=e.slice(0,1024).toString(),!r&&i&&(r=/<meta.+?charset=(['"])(.+?)\1/i.exec(i));!r&&i&&(r=/<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(i),r||(r=/<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(i),r&&r.pop()),r&&(r=/charset=(.*)/i.exec(r.pop())));!r&&i&&(r=/<\?xml.+?encoding=(['"])(.+?)\1/i.exec(i));r&&(n=r.pop(),"gb2312"!==n&&"gbk"!==n||(n="gb18030"));return $i(e,"UTF-8",n).toString()}(t,e.headers)})}},Object.defineProperties(An.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}}),An.mixIn=function(e){for(const t of Object.getOwnPropertyNames(An.prototype))if(!(t in e)){const A=Object.getOwnPropertyDescriptor(An.prototype,t);Object.defineProperty(e,t,A)}},An.Promise=global.Promise;const pn=/[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/,ln=/[^\t\x20-\x7e\x80-\xff]/;function cn(e){if(e=`${e}`,pn.test(e)||""===e)throw new TypeError(`${e} is not a legal HTTP header name`)}function gn(e){if(e=`${e}`,ln.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)}function hn(e,t){t=t.toLowerCase();for(const A in e)if(A.toLowerCase()===t)return A}const un=Symbol("map");class En{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;if(this[un]=Object.create(null),e instanceof En){const t=e.raw(),A=Object.keys(t);for(const e of A)for(const A of t[e])this.append(e,A);return}if(null==e);else{if("object"!=typeof e)throw new TypeError("Provided initializer must be an object");{const t=e[Symbol.iterator];if(null!=t){if("function"!=typeof t)throw new TypeError("Header pairs must be iterable");const A=[];for(const t of e){if("object"!=typeof t||"function"!=typeof t[Symbol.iterator])throw new TypeError("Each header pair must be iterable");A.push(Array.from(t))}for(const e of A){if(2!==e.length)throw new TypeError("Each header pair must be a name/value tuple");this.append(e[0],e[1])}}else for(const t of Object.keys(e)){const A=e[t];this.append(t,A)}}}}get(e){cn(e=`${e}`);const t=hn(this[un],e);return void 0===t?null:this[un][t].join(", ")}forEach(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,A=mn(this),r=0;for(;r<A.length;){var i=A[r];const n=i[0],a=i[1];e.call(t,a,n,this),A=mn(this),r++}}set(e,t){t=`${t}`,cn(e=`${e}`),gn(t);const A=hn(this[un],e);this[un][void 0!==A?A:e]=[t]}append(e,t){t=`${t}`,cn(e=`${e}`),gn(t);const A=hn(this[un],e);void 0!==A?this[un][A].push(t):this[un][e]=[t]}has(e){return cn(e=`${e}`),void 0!==hn(this[un],e)}delete(e){cn(e=`${e}`);const t=hn(this[un],e);void 0!==t&&delete this[un][t]}raw(){return this[un]}keys(){return fn(this,"key")}values(){return fn(this,"value")}[Symbol.iterator](){return fn(this,"key+value")}}function mn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"key+value";return Object.keys(e[un]).sort().map("key"===t?function(e){return e.toLowerCase()}:"value"===t?function(t){return e[un][t].join(", ")}:function(t){return[t.toLowerCase(),e[un][t].join(", ")]})}En.prototype.entries=En.prototype[Symbol.iterator],Object.defineProperty(En.prototype,Symbol.toStringTag,{value:"Headers",writable:!1,enumerable:!1,configurable:!0}),Object.defineProperties(En.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}});const Cn=Symbol("internal");function fn(e,t){const A=Object.create(Qn);return A[Cn]={target:e,kind:t,index:0},A}const Qn=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==Qn)throw new TypeError("Value of `this` is not a HeadersIterator");var e=this[Cn];const t=e.target,A=e.kind,r=e.index,i=mn(t,A);return r>=i.length?{value:void 0,done:!0}:(this[Cn].index=r+1,{value:i[r],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));function In(e){const t=Object.assign({__proto__:null},e[un]),A=hn(e[un],"Host");return void 0!==A&&(t[A]=t[A][0]),t}Object.defineProperty(Qn,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});const Bn=Symbol("Response internals"),yn=i.STATUS_CODES;class wn{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};An.call(this,e,t);const A=t.status||200,r=new En(t.headers);if(null!=e&&!r.has("Content-Type")){const t=sn(e);t&&r.append("Content-Type",t)}this[Bn]={url:t.url,status:A,statusText:t.statusText||yn[A],headers:r,counter:t.counter}}get url(){return this[Bn].url||""}get status(){return this[Bn].status}get ok(){return this[Bn].status>=200&&this[Bn].status<300}get redirected(){return this[Bn].counter>0}get statusText(){return this[Bn].statusText}get headers(){return this[Bn].headers}clone(){return new wn(on(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}}An.mixIn(wn.prototype),Object.defineProperties(wn.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}}),Object.defineProperty(wn.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});const vn=Symbol("Request internals"),Sn=B.URL||Wi.URL,bn=B.parse,Dn=B.format;function Fn(e){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(e)&&(e=new Sn(e).toString()),bn(e)}const Rn="destroy"in n.Readable.prototype;function kn(e){return"object"==typeof e&&"object"==typeof e[vn]}class Nn{constructor(e){let t,A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};kn(e)?t=Fn(e.url):(t=e&&e.href?Fn(e.href):Fn(`${e}`),e={});let r=A.method||e.method||"GET";if(r=r.toUpperCase(),(null!=A.body||kn(e)&&null!==e.body)&&("GET"===r||"HEAD"===r))throw new TypeError("Request with GET/HEAD method cannot have body");let i=null!=A.body?A.body:kn(e)&&null!==e.body?on(e):null;An.call(this,i,{timeout:A.timeout||e.timeout||0,size:A.size||e.size||0});const n=new En(A.headers||e.headers||{});if(null!=i&&!n.has("Content-Type")){const e=sn(i);e&&n.append("Content-Type",e)}let a=kn(e)?e.signal:null;if("signal"in A&&(a=A.signal),null!=a&&!function(e){const t=e&&"object"==typeof e&&Object.getPrototypeOf(e);return!(!t||"AbortSignal"!==t.constructor.name)}(a))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[vn]={method:r,redirect:A.redirect||e.redirect||"follow",headers:n,parsedURL:t,signal:a},this.follow=void 0!==A.follow?A.follow:void 0!==e.follow?e.follow:20,this.compress=void 0!==A.compress?A.compress:void 0===e.compress||e.compress,this.counter=A.counter||e.counter||0,this.agent=A.agent||e.agent}get method(){return this[vn].method}get url(){return Dn(this[vn].parsedURL)}get headers(){return this[vn].headers}get redirect(){return this[vn].redirect}get signal(){return this[vn].signal}clone(){return new Nn(this)}}function _n(e){Error.call(this,e),this.type="aborted",this.message=e,Error.captureStackTrace(this,this.constructor)}An.mixIn(Nn.prototype),Object.defineProperty(Nn.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0}),Object.defineProperties(Nn.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}}),_n.prototype=Object.create(Error.prototype),_n.prototype.constructor=_n,_n.prototype.name="AbortError";const Un=B.URL||Wi.URL,Tn=n.PassThrough;function Ln(e,t){if(!Ln.Promise)throw new Error("native promise missing, set fetch.Promise to your favorite alternative");return An.Promise=Ln.Promise,new Ln.Promise(function(A,r){const a=new Nn(e,t),o=function(e){const t=e[vn].parsedURL,A=new En(e[vn].headers);if(A.has("Accept")||A.set("Accept","*/*"),!t.protocol||!t.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(t.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(e.signal&&e.body instanceof n.Readable&&!Rn)throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let r=null;if(null==e.body&&/^(POST|PUT)$/i.test(e.method)&&(r="0"),null!=e.body){const t=dn(e);"number"==typeof t&&(r=String(t))}r&&A.set("Content-Length",r),A.has("User-Agent")||A.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),e.compress&&!A.has("Accept-Encoding")&&A.set("Accept-Encoding","gzip,deflate");let i=e.agent;return"function"==typeof i&&(i=i(t)),Object.assign({},t,{method:e.method,headers:In(A),agent:i})}(a),s=("https:"===o.protocol?b:i).request,d=a.signal;let p=null;const l=function(){let e=new _n("The user aborted a request.");r(e),a.body&&a.body instanceof n.Readable&&Mn(a.body,e),p&&p.body&&p.body.emit("error",e)};if(d&&d.aborted)return void l();const c=function(){l(),u()},g=s(o);let h;function u(){g.abort(),d&&d.removeEventListener("abort",c),clearTimeout(h)}d&&d.addEventListener("abort",c),a.timeout&&g.once("socket",function(e){h=setTimeout(function(){r(new zi(`network timeout at: ${a.url}`,"request-timeout")),u()},a.timeout)}),g.on("error",function(e){r(new zi(`request to ${a.url} failed, reason: ${e.message}`,"system",e)),p&&p.body&&Mn(p.body,e),u()}),function(e,t){let A;e.on("socket",function(e){A=e}),e.on("response",function(e){const r=e.headers;"chunked"!==r["transfer-encoding"]||r["content-length"]||e.once("close",function(e){if(A&&A.listenerCount("data")>0&&!e){const e=new Error("Premature close");e.code="ERR_STREAM_PREMATURE_CLOSE",t(e)}})})}(g,function(e){d&&d.aborted||p&&p.body&&Mn(p.body,e)}),parseInt(process.version.substring(1))<14&&g.on("socket",function(e){e.addListener("close",function(t){const A=e.listenerCount("data")>0;if(p&&A&&!t&&(!d||!d.aborted)){const e=new Error("Premature close");e.code="ERR_STREAM_PREMATURE_CLOSE",p.body.emit("error",e)}})}),g.on("response",function(e){clearTimeout(h);const t=function(e){const t=new En;for(const A of Object.keys(e))if(!pn.test(A))if(Array.isArray(e[A]))for(const r of e[A])ln.test(r)||(void 0===t[un][A]?t[un][A]=[r]:t[un][A].push(r));else ln.test(e[A])||(t[un][A]=[e[A]]);return t}(e.headers);if(Ln.isRedirect(e.statusCode)){const n=t.get("Location");let o=null;try{o=null===n?null:new Un(n,a.url).toString()}catch(e){if("manual"!==a.redirect)return r(new zi(`uri requested responds with an invalid redirect URL: ${n}`,"invalid-redirect")),void u()}switch(a.redirect){case"error":return r(new zi(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),void u();case"manual":if(null!==o)try{t.set("Location",o)}catch(e){r(e)}break;case"follow":if(null===o)break;if(a.counter>=a.follow)return r(new zi(`maximum redirect reached at: ${a.url}`,"max-redirect")),void u();const n={headers:new En(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout,size:a.size};if(!function(e,t){const A=new Un(t).hostname,r=new Un(e).hostname;return A===r||"."===A[A.length-r.length-1]&&A.endsWith(r)}(a.url,o)||(i=a.url,new Un(o).protocol!==new Un(i).protocol))for(const e of["authorization","www-authenticate","cookie","cookie2"])n.headers.delete(e);return 303!==e.statusCode&&a.body&&null===dn(a)?(r(new zi("Cannot follow redirect with body being a readable stream","unsupported-redirect")),void u()):(303!==e.statusCode&&(301!==e.statusCode&&302!==e.statusCode||"POST"!==a.method)||(n.method="GET",n.body=void 0,n.headers.delete("content-length")),A(Ln(new Nn(o,n))),void u())}}var i;e.once("end",function(){d&&d.removeEventListener("abort",c)});let n=e.pipe(new Tn);const o={url:a.url,status:e.statusCode,statusText:e.statusMessage,headers:t,size:a.size,timeout:a.timeout,counter:a.counter},s=t.get("Content-Encoding");if(!a.compress||"HEAD"===a.method||null===s||204===e.statusCode||304===e.statusCode)return p=new wn(n,o),void A(p);const l={flush:y.Z_SYNC_FLUSH,finishFlush:y.Z_SYNC_FLUSH};if("gzip"==s||"x-gzip"==s)return n=n.pipe(y.createGunzip(l)),p=new wn(n,o),void A(p);if("deflate"==s||"x-deflate"==s){const t=e.pipe(new Tn);return t.once("data",function(e){n=8==(15&e[0])?n.pipe(y.createInflate()):n.pipe(y.createInflateRaw()),p=new wn(n,o),A(p)}),void t.on("end",function(){p||(p=new wn(n,o),A(p))})}if("br"==s&&"function"==typeof y.createBrotliDecompress)return n=n.pipe(y.createBrotliDecompress()),p=new wn(n,o),void A(p);p=new wn(n,o),A(p)}),function(e,t){const A=t.body;null===A?e.end():an(A)?A.stream().pipe(e):Buffer.isBuffer(A)?(e.write(A),e.end()):A.pipe(e)}(g,a)})}function Mn(e,t){e.destroy?e.destroy(t):(e.emit("error",t),e.end())}Ln.isRedirect=function(e){return 301===e||302===e||303===e||307===e||308===e},Ln.Promise=global.Promise;const xn=process.versions.node.split("."),Vn=Number(xn[0]),Hn=Number(xn[1]);let Pn;Pn=Vn>=18?globalThis:Vn>16||16===Vn&&Hn>=8?{fetch:Di.fetch,Headers:Di.Headers,Request:Di.Request,Response:Di.Response}:{fetch:Ln,Headers:En,Request:Nn,Response:wn},Pn.fetch;const{fetch:Jn,Request:Yn,Response:Gn,Headers:On}=Pn,qn=new TextEncoder,Wn=new TextDecoder;function jn(...e){const t=e.reduce((e,{length:t})=>e+t,0),A=new Uint8Array(t);let r=0;return e.forEach(e=>{A.set(e,r),r+=e.length}),A}let Kn;Kn=o.isEncoding("base64url")?e=>o.from(e).toString("base64url"):e=>o.from(e).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_");const Zn=e=>o.from(function(e){let t=e;return t instanceof Uint8Array&&(t=Wn.decode(t)),t}(e),"base64");class Xn extends Error{static get code(){return"ERR_JOSE_GENERIC"}constructor(e){var t;super(e),this.code="ERR_JOSE_GENERIC",this.name=this.constructor.name,null===(t=Error.captureStackTrace)||void 0===t||t.call(Error,this,this.constructor)}}class zn extends Xn{static get code(){return"ERR_JWT_CLAIM_VALIDATION_FAILED"}constructor(e,t="unspecified",A="unspecified"){super(e),this.code="ERR_JWT_CLAIM_VALIDATION_FAILED",this.claim=t,this.reason=A}}class $n extends Xn{static get code(){return"ERR_JWT_EXPIRED"}constructor(e,t="unspecified",A="unspecified"){super(e),this.code="ERR_JWT_EXPIRED",this.claim=t,this.reason=A}}class ea extends Xn{constructor(){super(...arguments),this.code="ERR_JOSE_ALG_NOT_ALLOWED"}static get code(){return"ERR_JOSE_ALG_NOT_ALLOWED"}}class ta extends Xn{constructor(){super(...arguments),this.code="ERR_JOSE_NOT_SUPPORTED"}static get code(){return"ERR_JOSE_NOT_SUPPORTED"}}class Aa extends Xn{constructor(){super(...arguments),this.code="ERR_JWS_INVALID"}static get code(){return"ERR_JWS_INVALID"}}class ra extends Xn{constructor(){super(...arguments),this.code="ERR_JWT_INVALID"}static get code(){return"ERR_JWT_INVALID"}}class ia extends Xn{constructor(){super(...arguments),this.code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED",this.message="signature verification failed"}static get code(){return"ERR_JWS_SIGNATURE_VERIFICATION_FAILED"}}var na=s.types.isKeyObject?e=>s.types.isKeyObject(e):e=>null!=e&&e instanceof F;const aa=D.webcrypto,oa=s.types.isCryptoKey?e=>s.types.isCryptoKey(e):e=>!1;function sa(e,t="algorithm.name"){return new TypeError(`CryptoKey does not support this operation, its ${t} must be ${e}`)}function da(e,t){return e.name===t}function pa(e){return parseInt(e.name.slice(4),10)}function la(e,t,...A){switch(t){case"HS256":case"HS384":case"HS512":{if(!da(e.algorithm,"HMAC"))throw sa("HMAC");const A=parseInt(t.slice(2),10);if(pa(e.algorithm.hash)!==A)throw sa(`SHA-${A}`,"algorithm.hash");break}case"RS256":case"RS384":case"RS512":{if(!da(e.algorithm,"RSASSA-PKCS1-v1_5"))throw sa("RSASSA-PKCS1-v1_5");const A=parseInt(t.slice(2),10);if(pa(e.algorithm.hash)!==A)throw sa(`SHA-${A}`,"algorithm.hash");break}case"PS256":case"PS384":case"PS512":{if(!da(e.algorithm,"RSA-PSS"))throw sa("RSA-PSS");const A=parseInt(t.slice(2),10);if(pa(e.algorithm.hash)!==A)throw sa(`SHA-${A}`,"algorithm.hash");break}case"EdDSA":if("Ed25519"!==e.algorithm.name&&"Ed448"!==e.algorithm.name)throw sa("Ed25519 or Ed448");break;case"ES256":case"ES384":case"ES512":{if(!da(e.algorithm,"ECDSA"))throw sa("ECDSA");const A=function(e){switch(e){case"ES256":return"P-256";case"ES384":return"P-384";case"ES512":return"P-521";default:throw new Error("unreachable")}}(t);if(e.algorithm.namedCurve!==A)throw sa(A,"algorithm.namedCurve");break}default:throw new TypeError("CryptoKey does not support this operation")}!function(e,t){if(t.length&&!t.some(t=>e.usages.includes(t))){let e="CryptoKey does not support this operation, its usages must include ";if(t.length>2){const A=t.pop();e+=`one of ${t.join(", ")}, or ${A}.`}else 2===t.length?e+=`one of ${t[0]} or ${t[1]}.`:e+=`${t[0]}.`;throw new TypeError(e)}}(e,A)}function ca(e,t,...A){if(A.length>2){const t=A.pop();e+=`one of type ${A.join(", ")}, or ${t}.`}else 2===A.length?e+=`one of type ${A[0]} or ${A[1]}.`:e+=`of type ${A[0]}.`;return null==t?e+=` Received ${t}`:"function"==typeof t&&t.name?e+=` Received function ${t.name}`:"object"==typeof t&&null!=t&&t.constructor&&t.constructor.name&&(e+=` Received an instance of ${t.constructor.name}`),e}var ga=(e,...t)=>ca("Key must be ",e,...t);function ha(e,t,...A){return ca(`Key for the ${e} algorithm must be `,t,...A)}var ua=e=>na(e)||oa(e);const Ea=["KeyObject"];(globalThis.CryptoKey||(null==aa?void 0:aa.CryptoKey))&&Ea.push("CryptoKey");var ma=(...e)=>{const t=e.filter(Boolean);if(0===t.length||1===t.length)return!0;let A;for(const e of t){const t=Object.keys(e);if(A&&0!==A.size)for(const e of t){if(A.has(e))return!1;A.add(e)}else A=new Set(t)}return!0};function Ca(e){if("object"!=typeof(t=e)||null===t||"[object Object]"!==Object.prototype.toString.call(e))return!1;var t;if(null===Object.getPrototypeOf(e))return!0;let A=e;for(;null!==Object.getPrototypeOf(A);)A=Object.getPrototypeOf(A);return Object.getPrototypeOf(e)===A}const fa=o.from([42,134,72,206,61,3,1,7]),Qa=o.from([43,129,4,0,34]),Ia=o.from([43,129,4,0,35]),Ba=o.from([43,129,4,0,10]),ya=new WeakMap,wa=(e,t)=>{var A;let r;if(oa(e))r=F.from(e);else{if(!na(e))throw new TypeError(ga(e,...Ea));r=e}if("secret"===r.type)throw new TypeError('only "private" or "public" type keys can be used for this operation');switch(r.asymmetricKeyType){case"ed25519":case"ed448":return`Ed${r.asymmetricKeyType.slice(2)}`;case"x25519":case"x448":return`X${r.asymmetricKeyType.slice(1)}`;case"ec":{if(ya.has(r))return ya.get(r);let e=null===(A=r.asymmetricKeyDetails)||void 0===A?void 0:A.namedCurve;if(e||"private"!==r.type){if(!e){const t=r.export({format:"der",type:"spki"}),A=t[1]<128?14:15,i=t[A],n=t.slice(A+1,A+1+i);if(n.equals(fa))e="prime256v1";else if(n.equals(Qa))e="secp384r1";else if(n.equals(Ia))e="secp521r1";else{if(!n.equals(Ba))throw new ta("Unsupported key curve for this operation");e="secp256k1"}}}else e=wa(R(r),!0);if(t)return e;const i=(e=>{switch(e){case"prime256v1":return"P-256";case"secp384r1":return"P-384";case"secp521r1":return"P-521";case"secp256k1":return"secp256k1";default:throw new ta("Unsupported key curve for this operation")}})(e);return ya.set(r,i),i}default:throw new TypeError("Invalid asymmetric key type for this operation")}};function va(e,t){ya.set(e,t)}const Sa=new WeakMap,ba=(e,t)=>{let A=e.readUInt8(1);if(!(128&A))return 0===t?A:ba(e.subarray(2+A),t-1);const r=127&A;A=0;for(let t=0;t<r;t++){A<<=8;A|=e.readUInt8(2+t)}return 0===t?A:ba(e.subarray(2+A),t-1)},Da=e=>{var t,A;if(Sa.has(e))return Sa.get(e);const r=null!==(A=null===(t=e.asymmetricKeyDetails)||void 0===t?void 0:t.modulusLength)&&void 0!==A?A:((e,t)=>{const A=e.readUInt8(1);if(!(128&A))return ba(e.subarray(2),t);const r=127&A;return ba(e.subarray(2+r),t)})(e.export({format:"der",type:"pkcs1"}),"private"===e.type?1:0)-1<<3;return Sa.set(e,r),r},Fa=(e,t)=>{Sa.set(e,t)};var Ra=(e,t)=>{if(Da(e)<2048)throw new TypeError(`${t} requires key modulusLength to be 2048 bits or larger`)};const ka=o.from([0]),Na=o.from([2]),_a=o.from([3]),Ua=o.from([48]),Ta=o.from([4]),La=e=>{if(e<128)return o.from([e]);const t=o.alloc(5);t.writeUInt32BE(e,1);let A=1;for(;0===t[A];)A++;return t[A-1]=128|5-A,t.slice(A-1)},Ma=new Map([["P-256",o.from("06 08 2A 86 48 CE 3D 03 01 07".replace(/ /g,""),"hex")],["secp256k1",o.from("06 05 2B 81 04 00 0A".replace(/ /g,""),"hex")],["P-384",o.from("06 05 2B 81 04 00 22".replace(/ /g,""),"hex")],["P-521",o.from("06 05 2B 81 04 00 23".replace(/ /g,""),"hex")],["ecPublicKey",o.from("06 07 2A 86 48 CE 3D 02 01".replace(/ /g,""),"hex")],["X25519",o.from("06 03 2B 65 6E".replace(/ /g,""),"hex")],["X448",o.from("06 03 2B 65 6F".replace(/ /g,""),"hex")],["Ed25519",o.from("06 03 2B 65 70".replace(/ /g,""),"hex")],["Ed448",o.from("06 03 2B 65 71".replace(/ /g,""),"hex")]]);class xa{constructor(){this.length=0,this.elements=[]}oidFor(e){const t=Ma.get(e);if(!t)throw new ta("Invalid or unsupported OID");this.elements.push(t),this.length+=t.length}zero(){this.elements.push(Na,o.from([1]),ka),this.length+=3}one(){this.elements.push(Na,o.from([1]),o.from([1])),this.length+=3}unsignedInteger(e){if(128&e[0]){const t=La(e.length+1);this.elements.push(Na,t,ka,e),this.length+=2+t.length+e.length}else{let t=0;for(;0===e[t]&&!(128&e[t+1]);)t++;const A=La(e.length-t);this.elements.push(Na,La(e.length-t),e.slice(t)),this.length+=1+A.length+e.length-t}}octStr(e){const t=La(e.length);this.elements.push(Ta,La(e.length),e),this.length+=1+t.length+e.length}bitStr(e){const t=La(e.length+1);this.elements.push(_a,La(e.length+1),ka,e),this.length+=1+t.length+e.length+1}add(e){this.elements.push(e),this.length+=e.length}end(e=Ua){const t=La(this.length);return o.concat([e,t,...this.elements],1+t.length+this.length)}}const[Va,Ha]=process.versions.node.split(".").map(e=>parseInt(e,10)),Pa=Va>=16||15===Va&&Ha>=13,Ja=!("electron"in process.versions)&&(Va>=17||16===Va&&Ha>=9),Ya=Va>=16||15===Va&&Ha>=9,Ga=Va>=16||15===Va&&Ha>=12;var Oa=e=>{if(Ga&&"oct"!==e.kty)return e.d?k({format:"jwk",key:e}):R({format:"jwk",key:e});switch(e.kty){case"oct":return N(Zn(e.k));case"RSA":{const t=new xa,A=void 0!==e.d,r=o.from(e.n,"base64"),i=o.from(e.e,"base64");A?(t.zero(),t.unsignedInteger(r),t.unsignedInteger(i),t.unsignedInteger(o.from(e.d,"base64")),t.unsignedInteger(o.from(e.p,"base64")),t.unsignedInteger(o.from(e.q,"base64")),t.unsignedInteger(o.from(e.dp,"base64")),t.unsignedInteger(o.from(e.dq,"base64")),t.unsignedInteger(o.from(e.qi,"base64"))):(t.unsignedInteger(r),t.unsignedInteger(i));const n={key:t.end(),format:"der",type:"pkcs1"},a=A?k(n):R(n);return Fa(a,r.length<<3),a}case"EC":{const t=new xa,A=void 0!==e.d,r=o.concat([o.alloc(1,4),o.from(e.x,"base64"),o.from(e.y,"base64")]);if(A){t.zero();const A=new xa;A.oidFor("ecPublicKey"),A.oidFor(e.crv),t.add(A.end());const i=new xa;i.one(),i.octStr(o.from(e.d,"base64"));const n=new xa;n.bitStr(r);const a=n.end(o.from([161]));i.add(a);const s=i.end(),d=new xa;d.add(s);const p=d.end(o.from([4]));t.add(p);const l=t.end(),c=k({key:l,format:"der",type:"pkcs8"});return va(c,e.crv),c}const i=new xa;i.oidFor("ecPublicKey"),i.oidFor(e.crv),t.add(i.end()),t.bitStr(r);const n=t.end(),a=R({key:n,format:"der",type:"spki"});return va(a,e.crv),a}case"OKP":{const t=new xa;if(void 0!==e.d){t.zero();const A=new xa;A.oidFor(e.crv),t.add(A.end());const r=new xa;r.octStr(o.from(e.d,"base64"));const i=r.end(o.from([4]));t.add(i);const n=t.end();return k({key:n,format:"der",type:"pkcs8"})}const A=new xa;A.oidFor(e.crv),t.add(A.end()),t.bitStr(o.from(e.x,"base64"));const r=t.end();return R({key:r,format:"der",type:"spki"})}default:throw new ta('Invalid or unsupported JWK "kty" (Key Type) Parameter value')}};var qa=(e,t,A)=>{e.startsWith("HS")||"dir"===e||e.startsWith("PBES2")||/^A\d{3}(?:GCM)?KW$/.test(e)?((e,t)=>{if(!(t instanceof Uint8Array)){if(!ua(t))throw new TypeError(ha(e,t,...Ea,"Uint8Array"));if("secret"!==t.type)throw new TypeError(`${Ea.join(" or ")} instances for symmetric algorithms must be of type "secret"`)}})(e,t):((e,t,A)=>{if(!ua(t))throw new TypeError(ha(e,t,...Ea));if("secret"===t.type)throw new TypeError(`${Ea.join(" or ")} instances for asymmetric algorithms must not be of type "secret"`);if("sign"===A&&"public"===t.type)throw new TypeError(`${Ea.join(" or ")} instances for asymmetric algorithm signing must be of type "private"`);if("decrypt"===A&&"public"===t.type)throw new TypeError(`${Ea.join(" or ")} instances for asymmetric algorithm decryption must be of type "private"`);if(t.algorithm&&"verify"===A&&"private"===t.type)throw new TypeError(`${Ea.join(" or ")} instances for asymmetric algorithm verifying must be of type "public"`);if(t.algorithm&&"encrypt"===A&&"private"===t.type)throw new TypeError(`${Ea.join(" or ")} instances for asymmetric algorithm encryption must be of type "public"`)})(e,t,A)};function Wa(e,t,A,r,i){if(void 0!==i.crit&&void 0===r.crit)throw new e('"crit" (Critical) Header Parameter MUST be integrity protected');if(!r||void 0===r.crit)return new Set;if(!Array.isArray(r.crit)||0===r.crit.length||r.crit.some(e=>"string"!=typeof e||0===e.length))throw new e('"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present');let n;n=void 0!==A?new Map([...Object.entries(A),...t.entries()]):t;for(const t of r.crit){if(!n.has(t))throw new ta(`Extension Header Parameter "${t}" is not recognized`);if(void 0===i[t])throw new e(`Extension Header Parameter "${t}" is missing`);if(n.get(t)&&void 0===r[t])throw new e(`Extension Header Parameter "${t}" MUST be integrity protected`)}return new Set(r.crit)}var ja=(e,t)=>{if(void 0!==t&&(!Array.isArray(t)||t.some(e=>"string"!=typeof e)))throw new TypeError(`"${e}" option must be an array of strings`);if(t)return new Set(t)};class Ka{constructor(e){if(48!==e[0])throw new TypeError;this.buffer=e,this.offset=1;if(this.decodeLength()!==e.length-this.offset)throw new TypeError}decodeLength(){let e=this.buffer[this.offset++];if(128&e){const t=-129&e;e=0;for(let A=0;A<t;A++)e=e<<8|this.buffer[this.offset+A];this.offset+=t}return e}unsignedInteger(){if(2!==this.buffer[this.offset++])throw new TypeError;let e=this.decodeLength();0===this.buffer[this.offset]&&(this.offset++,e--);const t=this.buffer.slice(this.offset,this.offset+e);return this.offset+=e,t}end(){if(this.offset!==this.buffer.length)throw new TypeError}}const Za=e=>{let t;if(oa(e)){if(!e.extractable)throw new TypeError("CryptoKey is not extractable");t=F.from(e)}else{if(!na(e)){if(e instanceof Uint8Array)return{kty:"oct",k:Kn(e)};throw new TypeError(ga(e,...Ea,"Uint8Array"))}t=e}if(Ya){if("secret"!==t.type&&!["rsa","ec","ed25519","x25519","ed448","x448"].includes(t.asymmetricKeyType))throw new ta("Unsupported key asymmetricKeyType");return t.export({format:"jwk"})}switch(t.type){case"secret":return{kty:"oct",k:Kn(t.export())};case"private":case"public":switch(t.asymmetricKeyType){case"rsa":{const e=t.export({format:"der",type:"pkcs1"}),A=new Ka(e);"private"===t.type&&A.unsignedInteger();const r=Kn(A.unsignedInteger()),i=Kn(A.unsignedInteger());let n;return"private"===t.type&&(n={d:Kn(A.unsignedInteger()),p:Kn(A.unsignedInteger()),q:Kn(A.unsignedInteger()),dp:Kn(A.unsignedInteger()),dq:Kn(A.unsignedInteger()),qi:Kn(A.unsignedInteger())}),A.end(),{kty:"RSA",n:r,e:i,...n}}case"ec":{const e=wa(t);let A,r,i;switch(e){case"secp256k1":A=64,r=33,i=-1;break;case"P-256":A=64,r=36,i=-1;break;case"P-384":A=96,r=35,i=-3;break;case"P-521":A=132,r=35,i=-3;break;default:throw new ta("Unsupported curve")}if("public"===t.type){const r=t.export({type:"spki",format:"der"});return{kty:"EC",crv:e,x:Kn(r.subarray(-A,-A/2)),y:Kn(r.subarray(-A/2))}}const n=t.export({type:"pkcs8",format:"der"});return n.length<100&&(r+=i),{...Za(R(t)),d:Kn(n.subarray(r,r+A/2))}}case"ed25519":case"x25519":{const e=wa(t);if("public"===t.type){const A=t.export({type:"spki",format:"der"});return{kty:"OKP",crv:e,x:Kn(A.subarray(-32))}}const A=t.export({type:"pkcs8",format:"der"});return{...Za(R(t)),d:Kn(A.subarray(-32))}}case"ed448":case"x448":{const e=wa(t);if("public"===t.type){const A=t.export({type:"spki",format:"der"});return{kty:"OKP",crv:e,x:Kn(A.subarray("Ed448"===e?-57:-56))}}const A=t.export({type:"pkcs8",format:"der"});return{...Za(R(t)),d:Kn(A.subarray("Ed448"===e?-57:-56))}}default:throw new ta("Unsupported key asymmetricKeyType")}default:throw new ta("Unsupported key type")}};var Xa=Za;async function za(e){return Xa(e)}function $a(e){switch(e){case"PS256":case"RS256":case"ES256":case"ES256K":return"sha256";case"PS384":case"RS384":case"ES384":return"sha384";case"PS512":case"RS512":case"ES512":return"sha512";case"EdDSA":return;default:throw new ta(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}const eo={padding:_.RSA_PKCS1_PSS_PADDING,saltLength:_.RSA_PSS_SALTLEN_DIGEST},to=new Map([["ES256","P-256"],["ES256K","secp256k1"],["ES384","P-384"],["ES512","P-521"]]);function Ao(e,t){switch(e){case"EdDSA":if(!["ed25519","ed448"].includes(t.asymmetricKeyType))throw new TypeError("Invalid key for this operation, its asymmetricKeyType must be ed25519 or ed448");return t;case"RS256":case"RS384":case"RS512":if("rsa"!==t.asymmetricKeyType)throw new TypeError("Invalid key for this operation, its asymmetricKeyType must be rsa");return Ra(t,e),t;case Ja&&"PS256":case Ja&&"PS384":case Ja&&"PS512":if("rsa-pss"===t.asymmetricKeyType){const{hashAlgorithm:A,mgf1HashAlgorithm:r,saltLength:i}=t.asymmetricKeyDetails,n=parseInt(e.slice(-3),10);if(void 0!==A&&(A!==`sha${n}`||r!==A))throw new TypeError(`Invalid key for this operation, its RSA-PSS parameters do not meet the requirements of "alg" ${e}`);if(void 0!==i&&i>n>>3)throw new TypeError(`Invalid key for this operation, its RSA-PSS parameter saltLength does not meet the requirements of "alg" ${e}`)}else if("rsa"!==t.asymmetricKeyType)throw new TypeError("Invalid key for this operation, its asymmetricKeyType must be rsa or rsa-pss");return Ra(t,e),{key:t,...eo};case!Ja&&"PS256":case!Ja&&"PS384":case!Ja&&"PS512":if("rsa"!==t.asymmetricKeyType)throw new TypeError("Invalid key for this operation, its asymmetricKeyType must be rsa");return Ra(t,e),{key:t,...eo};case"ES256":case"ES256K":case"ES384":case"ES512":{if("ec"!==t.asymmetricKeyType)throw new TypeError("Invalid key for this operation, its asymmetricKeyType must be ec");const A=wa(t),r=to.get(e);if(A!==r)throw new TypeError(`Invalid key curve for the algorithm, its curve must be ${r}, got ${A}`);return{dsaEncoding:"ieee-p1363",key:t}}default:throw new ta(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}function ro(e,t,A){if(t instanceof Uint8Array){if(!e.startsWith("HS"))throw new TypeError(ga(t,...Ea));return N(t)}if(t instanceof F)return t;if(oa(t))return la(t,e,A),F.from(t);throw new TypeError(ga(t,...Ea,"Uint8Array"))}let io;io=D.sign.length>3?p(D.sign):D.sign;var no=async(e,t,A)=>{const r=ro(e,t,"sign");if(e.startsWith("HS")){const t=D.createHmac(function(e){switch(e){case"HS256":return"sha256";case"HS384":return"sha384";case"HS512":return"sha512";default:throw new ta(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}(e),r);return t.update(A),t.digest()}return io($a(e),A,Ao(e,r))};let ao;ao=D.verify.length>4&&Pa?p(D.verify):D.verify;var oo=async(e,t,A,r)=>{const i=ro(e,t,"verify");if(e.startsWith("HS")){const t=await no(e,i,r),n=A;try{return D.timingSafeEqual(n,t)}catch{return!1}}const n=$a(e),a=Ao(e,i);try{return await ao(n,r,a,A)}catch{return!1}};async function so(e,t,A){if(e instanceof Uint8Array&&(e=Wn.decode(e)),"string"!=typeof e)throw new Aa("Compact JWS must be a string or Uint8Array");const{0:r,1:i,2:n,length:a}=e.split(".");if(3!==a)throw new Aa("Invalid Compact JWS");const o=await async function(e,t,A){var r;if(!Ca(e))throw new Aa("Flattened JWS must be an object");if(void 0===e.protected&&void 0===e.header)throw new Aa('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==e.protected&&"string"!=typeof e.protected)throw new Aa("JWS Protected Header incorrect type");if(void 0===e.payload)throw new Aa("JWS Payload missing");if("string"!=typeof e.signature)throw new Aa("JWS Signature missing or incorrect type");if(void 0!==e.header&&!Ca(e.header))throw new Aa("JWS Unprotected Header incorrect type");let i={};if(e.protected)try{const t=Zn(e.protected);i=JSON.parse(Wn.decode(t))}catch{throw new Aa("JWS Protected Header is invalid")}if(!ma(i,e.header))throw new Aa("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");const n={...i,...e.header};let a=!0;if(Wa(Aa,new Map([["b64",!0]]),null==A?void 0:A.crit,i,n).has("b64")&&(a=i.b64,"boolean"!=typeof a))throw new Aa('The "b64" (base64url-encode payload) Header Parameter must be a boolean');const{alg:o}=n;if("string"!=typeof o||!o)throw new Aa('JWS "alg" (Algorithm) Header Parameter missing or invalid');const s=A&&ja("algorithms",A.algorithms);if(s&&!s.has(o))throw new ea('"alg" (Algorithm) Header Parameter not allowed');if(a){if("string"!=typeof e.payload)throw new Aa("JWS Payload must be a string")}else if("string"!=typeof e.payload&&!(e.payload instanceof Uint8Array))throw new Aa("JWS Payload must be a string or an Uint8Array instance");let d=!1;"function"==typeof t&&(t=await t(i,e),d=!0),qa(o,t,"verify");const p=jn(qn.encode(null!==(r=e.protected)&&void 0!==r?r:""),qn.encode("."),"string"==typeof e.payload?qn.encode(e.payload):e.payload);let l,c;try{l=Zn(e.signature)}catch{throw new Aa("Failed to base64url decode the signature")}if(!await oo(o,t,l,p))throw new ia;if(a)try{c=Zn(e.payload)}catch{throw new Aa("Failed to base64url decode the payload")}else c="string"==typeof e.payload?qn.encode(e.payload):e.payload;const g={payload:c};return void 0!==e.protected&&(g.protectedHeader=i),void 0!==e.header&&(g.unprotectedHeader=e.header),d?{...g,key:t}:g}({payload:i,protected:r,signature:n},t,A),s={payload:o.payload,protectedHeader:o.protectedHeader};return"function"==typeof t?{...s,key:o.key}:s}var po=e=>Math.floor(e.getTime()/1e3);const lo=86400,co=/^(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)$/i;var go=e=>{const t=co.exec(e);if(!t)throw new TypeError("Invalid time period format");const A=parseFloat(t[1]);switch(t[2].toLowerCase()){case"sec":case"secs":case"second":case"seconds":case"s":return Math.round(A);case"minute":case"minutes":case"min":case"mins":case"m":return Math.round(60*A);case"hour":case"hours":case"hr":case"hrs":case"h":return Math.round(3600*A);case"day":case"days":case"d":return Math.round(A*lo);case"week":case"weeks":case"w":return Math.round(604800*A);default:return Math.round(31557600*A)}};const ho=e=>e.toLowerCase().replace(/^application\//,"");var uo=(e,t,A={})=>{const{typ:r}=A;if(r&&("string"!=typeof e.typ||ho(e.typ)!==ho(r)))throw new zn('unexpected "typ" JWT header value',"typ","check_failed");let i;try{i=JSON.parse(Wn.decode(t))}catch{}if(!Ca(i))throw new ra("JWT Claims Set must be a top-level JSON object");const{requiredClaims:n=[],issuer:a,subject:o,audience:s,maxTokenAge:d}=A;void 0!==d&&n.push("iat"),void 0!==s&&n.push("aud"),void 0!==o&&n.push("sub"),void 0!==a&&n.push("iss");for(const e of new Set(n.reverse()))if(!(e in i))throw new zn(`missing required "${e}" claim`,e,"missing");if(a&&!(Array.isArray(a)?a:[a]).includes(i.iss))throw new zn('unexpected "iss" claim value',"iss","check_failed");if(o&&i.sub!==o)throw new zn('unexpected "sub" claim value',"sub","check_failed");if(s&&(p=i.aud,l="string"==typeof s?[s]:s,!("string"==typeof p?l.includes(p):Array.isArray(p)&&l.some(Set.prototype.has.bind(new Set(p))))))throw new zn('unexpected "aud" claim value',"aud","check_failed");var p,l;let c;switch(typeof A.clockTolerance){case"string":c=go(A.clockTolerance);break;case"number":c=A.clockTolerance;break;case"undefined":c=0;break;default:throw new TypeError("Invalid clockTolerance option type")}const{currentDate:g}=A,h=po(g||new Date);if((void 0!==i.iat||d)&&"number"!=typeof i.iat)throw new zn('"iat" claim must be a number',"iat","invalid");if(void 0!==i.nbf){if("number"!=typeof i.nbf)throw new zn('"nbf" claim must be a number',"nbf","invalid");if(i.nbf>h+c)throw new zn('"nbf" claim timestamp check failed',"nbf","check_failed")}if(void 0!==i.exp){if("number"!=typeof i.exp)throw new zn('"exp" claim must be a number',"exp","invalid");if(i.exp<=h-c)throw new $n('"exp" claim timestamp check failed',"exp","check_failed")}if(d){const e=h-i.iat;if(e-c>("number"==typeof d?d:go(d)))throw new $n('"iat" claim timestamp check failed (too far in the past)',"iat","check_failed");if(e<0-c)throw new zn('"iat" claim timestamp check failed (it should be in the past)',"iat","check_failed")}return i};class Eo{constructor(e){if(!(e instanceof Uint8Array))throw new TypeError("payload must be an instance of Uint8Array");this._payload=e}setProtectedHeader(e){if(this._protectedHeader)throw new TypeError("setProtectedHeader can only be called once");return this._protectedHeader=e,this}setUnprotectedHeader(e){if(this._unprotectedHeader)throw new TypeError("setUnprotectedHeader can only be called once");return this._unprotectedHeader=e,this}async sign(e,t){if(!this._protectedHeader&&!this._unprotectedHeader)throw new Aa("either setProtectedHeader or setUnprotectedHeader must be called before #sign()");if(!ma(this._protectedHeader,this._unprotectedHeader))throw new Aa("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");const A={...this._protectedHeader,...this._unprotectedHeader};let r=!0;if(Wa(Aa,new Map([["b64",!0]]),null==t?void 0:t.crit,this._protectedHeader,A).has("b64")&&(r=this._protectedHeader.b64,"boolean"!=typeof r))throw new Aa('The "b64" (base64url-encode payload) Header Parameter must be a boolean');const{alg:i}=A;if("string"!=typeof i||!i)throw new Aa('JWS "alg" (Algorithm) Header Parameter missing or invalid');qa(i,e,"sign");let n,a=this._payload;r&&(a=qn.encode(Kn(a))),n=this._protectedHeader?qn.encode(Kn(JSON.stringify(this._protectedHeader))):qn.encode("");const o=jn(n,qn.encode("."),a),s=await no(i,e,o),d={signature:Kn(s),payload:""};return r&&(d.payload=Wn.decode(a)),this._unprotectedHeader&&(d.header=this._unprotectedHeader),this._protectedHeader&&(d.protected=Wn.decode(n)),d}}class mo{constructor(e){this._flattened=new Eo(e)}setProtectedHeader(e){return this._flattened.setProtectedHeader(e),this}async sign(e,t){const A=await this._flattened.sign(e,t);if(void 0===A.payload)throw new TypeError("use the flattened module for creating JWS with b64: false");return`${A.protected}.${A.payload}.${A.signature}`}}class Co{constructor(e){if(!Ca(e))throw new TypeError("JWT Claims Set MUST be an object");this._payload=e}setIssuer(e){return this._payload={...this._payload,iss:e},this}setSubject(e){return this._payload={...this._payload,sub:e},this}setAudience(e){return this._payload={...this._payload,aud:e},this}setJti(e){return this._payload={...this._payload,jti:e},this}setNotBefore(e){return this._payload="number"==typeof e?{...this._payload,nbf:e}:{...this._payload,nbf:po(new Date)+go(e)},this}setExpirationTime(e){return this._payload="number"==typeof e?{...this._payload,exp:e}:{...this._payload,exp:po(new Date)+go(e)},this}setIssuedAt(e){return this._payload=void 0===e?{...this._payload,iat:po(new Date)}:{...this._payload,iat:e},this}}class fo extends Co{setProtectedHeader(e){return this._protectedHeader=e,this}async sign(e,t){var A;const r=new mo(qn.encode(JSON.stringify(this._payload)));if(r.setProtectedHeader(this._protectedHeader),Array.isArray(null===(A=this._protectedHeader)||void 0===A?void 0:A.crit)&&this._protectedHeader.crit.includes("b64")&&!1===this._protectedHeader.b64)throw new ra("JWTs MUST NOT use unencoded payload");return r.sign(e,t)}}const Qo=p(U);async function Io(e,t){return async function(e,t){var A,r;switch(e){case"RS256":case"RS384":case"RS512":case"PS256":case"PS384":case"PS512":case"RSA-OAEP":case"RSA-OAEP-256":case"RSA-OAEP-384":case"RSA-OAEP-512":case"RSA1_5":{const e=null!==(A=null==t?void 0:t.modulusLength)&&void 0!==A?A:2048;if("number"!=typeof e||e<2048)throw new ta("Invalid or unsupported modulusLength option provided, 2048 bits or larger keys must be used");const r=await Qo("rsa",{modulusLength:e,publicExponent:65537});return Fa(r.privateKey,e),Fa(r.publicKey,e),r}case"ES256":return Qo("ec",{namedCurve:"P-256"});case"ES256K":return Qo("ec",{namedCurve:"secp256k1"});case"ES384":return Qo("ec",{namedCurve:"P-384"});case"ES512":return Qo("ec",{namedCurve:"P-521"});case"EdDSA":switch(null==t?void 0:t.crv){case void 0:case"Ed25519":return Qo("ed25519");case"Ed448":return Qo("ed448");default:throw new ta("Invalid or unsupported crv option provided, supported values are Ed25519 and Ed448")}case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":const e=null!==(r=null==t?void 0:t.crv)&&void 0!==r?r:"P-256";switch(e){case void 0:case"P-256":case"P-384":case"P-521":return Qo("ec",{namedCurve:e});case"X25519":return Qo("x25519");case"X448":return Qo("x448");default:throw new ta("Invalid or unsupported crv option provided, supported values are P-256, P-384, P-521, X25519, and X448")}default:throw new ta('Invalid or unsupported JWK "alg" (Algorithm) Parameter value')}}(e,t)}let Bo;const yo=new Uint8Array(16);function wo(){if(!Bo&&(Bo="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Bo))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Bo(yo)}const vo=[];for(let e=0;e<256;++e)vo.push((e+256).toString(16).slice(1));var So={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function bo(e,t,A){if(So.randomUUID&&!t&&!e)return So.randomUUID();const r=(e=e||{}).random||(e.rng||wo)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,t){A=A||0;for(let e=0;e<16;++e)t[A+e]=r[e];return t}return function(e,t=0){return vo[e[t+0]]+vo[e[t+1]]+vo[e[t+2]]+vo[e[t+3]]+"-"+vo[e[t+4]]+vo[e[t+5]]+"-"+vo[e[t+6]]+vo[e[t+7]]+"-"+vo[e[t+8]]+vo[e[t+9]]+"-"+vo[e[t+10]]+vo[e[t+11]]+vo[e[t+12]]+vo[e[t+13]]+vo[e[t+14]]+vo[e[t+15]]}(r)}const Do="solidClientAuthn:",Fo=["ES256","RS256"],Ro="error",ko="login",No="logout",_o="newRefreshToken",Uo="sessionExpired",To="sessionExtended",Lo="sessionRestore",Mo="timeoutSet",xo=["openid","offline_access","webid"].join(" ");class Vo{constructor(e){this.handleables=e,this.handleables=e}async getProperHandler(e){const t=await Promise.all(this.handleables.map(t=>t.canHandle(...e)));for(let e=0;e<t.length;e+=1)if(t[e])return this.handleables[e];return null}async canHandle(...e){return null!==await this.getProperHandler(e)}async handle(...e){const t=await this.getProperHandler(e);if(t)return t.handle(...e);throw new Error(`[${this.constructor.name}] cannot find a suitable handler for: ${e.map(e=>{try{return JSON.stringify(e)}catch(t){return e.toString()}}).join(", ")}`)}}async function Ho(e,t,A,r){const i=await async function(e,t){const A=await Jn.call(globalThis,e);if(200!==A.status)throw new Error(`Could not fetch JWKS for [${t}] at [${e}]: ${A.status} ${A.statusText}`);let r;try{r=(await A.json()).keys[0]}catch(A){throw new Error(`Malformed JWKS for [${t}] at [${e}]: ${A.message}`)}return r}(t,A);let n;try{const{payload:t}=await async function(e,t,A){var r;const i=await so(e,t,A);if((null===(r=i.protectedHeader.crit)||void 0===r?void 0:r.includes("b64"))&&!1===i.protectedHeader.b64)throw new ra("JWTs MUST NOT use unencoded payload");const n={payload:uo(i.protectedHeader,i.payload,A),protectedHeader:i.protectedHeader};return"function"==typeof t?{...n,key:i.key}:n}(e,await async function(e,t,A){var r;if(!Ca(e))throw new TypeError("JWK must be an object");switch(t||(t=e.alg),e.kty){case"oct":if("string"!=typeof e.k||!e.k)throw new TypeError('missing "k" (Key Value) Parameter value');return null!=A||(A=!0!==e.ext),A?Oa({...e,alg:t,ext:null!==(r=e.ext)&&void 0!==r&&r}):Zn(e.k);case"RSA":if(void 0!==e.oth)throw new ta('RSA JWK "oth" (Other Primes Info) Parameter value is not supported');case"EC":case"OKP":return Oa({...e,alg:t});default:throw new ta('Unsupported "kty" (Key Type) Parameter value')}}(i),{issuer:A,audience:r});n=t}catch(e){throw new Error(`Token verification failed: ${e.stack}`)}if("string"==typeof n.webid)return n.webid;if("string"!=typeof n.sub)throw new Error(`The token ${JSON.stringify(n)} is invalid: it has no 'webid' claim and no 'sub' claim.`);try{return new URL(n.sub),n.sub}catch(e){throw new Error(`The token has no 'webid' claim, and its 'sub' claim of [${n.sub}] is invalid as a URL - error [${e}].`)}}function Po(e){try{const t=new URL(e),A=!t.searchParams.has("code")&&!t.searchParams.has("state"),r=""===t.hash;return A&&r}catch(e){return!1}}function Jo(e){const t=new URL(e);return t.searchParams.delete("state"),t.searchParams.delete("code"),t.searchParams.delete("error"),t.searchParams.delete("error_description"),t.searchParams.delete("iss"),t}class Yo{constructor(e,t){this.storageUtility=e,this.redirector=t,this.storageUtility=e,this.redirector=t}async canHandle(e){return!!(e.issuerConfiguration.grantTypesSupported&&e.issuerConfiguration.grantTypesSupported.indexOf("authorization_code")>-1)}async handleRedirect({oidcLoginOptions:e,state:t,codeVerifier:A,targetUrl:r}){await Promise.all([this.storageUtility.setForUser(t,{sessionId:e.sessionId}),this.storageUtility.setForUser(e.sessionId,{codeVerifier:A,issuer:e.issuer.toString(),redirectUrl:e.redirectUrl,dpop:e.dpop?"true":"false"})]),this.redirector.redirect(r,{handleRedirect:e.handleRedirect})}}class Go{constructor(e){this.sessionInfoManager=e,this.sessionInfoManager=e}async canHandle(){return!0}async handle(e){await this.sessionInfoManager.clear(e)}}class Oo{constructor(e){this.redirector=e,this.redirector=e}async canHandle(e,t){return"idp"===(null==t?void 0:t.logoutType)}async handle(e,t){if("idp"!==(null==t?void 0:t.logoutType))throw new Error("Attempting to call idp logout handler to perform app logout");if(void 0===t.toLogoutUrl)throw new Error("Cannot perform IDP logout. Did you log in using the OIDC authentication flow?");this.redirector.redirect(t.toLogoutUrl(t),{handleRedirect:t.handleRedirect})}}class qo{constructor(e,t){this.handlers=[new Go(e),new Oo(t)]}async canHandle(){return!0}async handle(e,t){for(const A of this.handlers)await A.canHandle(e,t)&&await A.handle(e,t)}}function Wo(){return{isLoggedIn:!1,sessionId:bo(),fetch:(...e)=>Jn.call(globalThis,...e)}}async function jo(e,t){await Promise.all([t.deleteAllUserData(e,{secure:!1}),t.deleteAllUserData(e,{secure:!0})])}class Ko{constructor(e){this.storageUtility=e,this.storageUtility=e}update(e,t){throw new Error("Not Implemented")}get(e){throw new Error("Not implemented")}async getAll(){throw new Error("Not implemented")}async clear(e){return jo(e,this.storageUtility)}async register(e){throw new Error("Not implemented")}async getRegisteredSessionIdAll(){throw new Error("Not implemented")}async clearAll(){throw new Error("Not implemented")}}function Zo({endSessionEndpoint:e,idTokenHint:t}){if(void 0!==e)return function({state:A,postLogoutUrl:r}){return function({endSessionEndpoint:e,idTokenHint:t,postLogoutRedirectUri:A,state:r}){const i=new URL(e);return void 0!==t&&i.searchParams.append("id_token_hint",t),void 0!==A&&(i.searchParams.append("post_logout_redirect_uri",A),void 0!==r&&i.searchParams.append("state",r)),i.toString()}({endSessionEndpoint:e,idTokenHint:t,state:A,postLogoutRedirectUri:r})}}function Xo(e){try{return new URL(e),!0}catch(e){return!1}}async function zo(e,t,A,r){const i=function(e,t){return void 0===e.clientId||Xo(e.clientId)?t.scopesSupported.includes("webid")&&void 0!==e.clientId&&Xo(e.clientId)?"solid-oidc":"dynamic":"static"}(e,t);return"dynamic"===i?r.getClient({sessionId:e.sessionId,clientName:e.clientName,redirectUrl:e.redirectUrl},t):(await A.setForUser(e.sessionId,{clientId:e.clientId}),e.clientSecret&&await A.setForUser(e.sessionId,{clientSecret:e.clientSecret}),e.clientName&&await A.setForUser(e.sessionId,{clientName:e.clientName}),{clientId:e.clientId,clientSecret:e.clientSecret,clientName:e.clientName,clientType:i})}const $o=(e,t)=>Jn.call(globalThis,e,t);class es{constructor(e,t,A,r,i){this.loginHandler=e,this.redirectHandler=t,this.logoutHandler=A,this.sessionInfoManager=r,this.issuerConfigFetcher=i,this.fetch=$o,this.logout=async(e,t)=>{await this.logoutHandler.handle(e,"idp"===(null==t?void 0:t.logoutType)?{...t,toLogoutUrl:this.boundLogout}:t),this.fetch=$o,delete this.boundLogout},this.getSessionInfo=async e=>this.sessionInfoManager.get(e),this.getAllSessionInfo=async()=>this.sessionInfoManager.getAll(),this.loginHandler=e,this.redirectHandler=t,this.logoutHandler=A,this.sessionInfoManager=r,this.issuerConfigFetcher=i}}async function ts(e,t,A){try{const[r,i,n,a]=await Promise.all([t.getForUser(e,"issuer",{errorIfNull:!0}),t.getForUser(e,"codeVerifier"),t.getForUser(e,"redirectUrl"),t.getForUser(e,"dpop",{errorIfNull:!0})]);await t.deleteForUser(e,"codeVerifier");return{codeVerifier:i,redirectUrl:n,issuerConfig:await A.fetchConfig(r),dpop:"true"===a}}catch(t){throw new Error(`Failed to retrieve OIDC context from storage associated with session [${e}]: ${t}`)}}class As{constructor(e,t){this.secureStorage=e,this.insecureStorage=t,this.secureStorage=e,this.insecureStorage=t}getKey(e){return`solidClientAuthenticationUser:${e}`}async getUserData(e,t){const A=await(t?this.secureStorage:this.insecureStorage).get(this.getKey(e));if(void 0===A)return{};try{return JSON.parse(A)}catch(r){throw new Error(`Data for user [${e}] in [${t?"secure":"unsecure"}] storage is corrupted - expected valid JSON, but got: ${A}`)}}async setUserData(e,t,A){await(A?this.secureStorage:this.insecureStorage).set(this.getKey(e),JSON.stringify(t))}async get(e,t){const A=await((null==t?void 0:t.secure)?this.secureStorage:this.insecureStorage).get(e);if(void 0===A&&(null==t?void 0:t.errorIfNull))throw new Error(`[${e}] is not stored`);return A}async set(e,t,A){return((null==A?void 0:A.secure)?this.secureStorage:this.insecureStorage).set(e,t)}async delete(e,t){return((null==t?void 0:t.secure)?this.secureStorage:this.insecureStorage).delete(e)}async getForUser(e,t,A){const r=await this.getUserData(e,null==A?void 0:A.secure);let i;if(r&&r[t]||(i=void 0),i=r[t],void 0===i&&(null==A?void 0:A.errorIfNull))throw new Error(`Field [${t}] for user [${e}] is not stored`);return i||void 0}async setForUser(e,t,A){let r;try{r=await this.getUserData(e,null==A?void 0:A.secure)}catch(e){r={}}await this.setUserData(e,{...r,...t},null==A?void 0:A.secure)}async deleteForUser(e,t,A){const r=await this.getUserData(e,null==A?void 0:A.secure);delete r[t],await this.setUserData(e,r,null==A?void 0:A.secure)}async deleteAllUserData(e,t){await((null==t?void 0:t.secure)?this.secureStorage:this.insecureStorage).delete(this.getKey(e))}}class rs{constructor(){this.map={}}async get(e){return this.map[e]||void 0}async set(e,t){this.map[e]=t}async delete(e){delete this.map[e]}}class is extends Error{constructor(e){super(e)}}class ns extends Error{constructor(e){super(`Invalid response from OIDC provider: missing fields ${e}`),this.missingFields=e}}class as extends Error{constructor(e,t,A){super(e),this.error=t,this.errorDescription=A}}function os(e){const t=new URL(e);return new URL(t.pathname,t.origin).toString()}async function ss(e,t,A){return new fo({htu:os(e),htm:t.toUpperCase(),jti:bo()}).setProtectedHeader({alg:Fo[0],jwk:A.publicKey,typ:"dpop+jwt"}).setIssuedAt().sign(A.privateKey,{})}async function ds(e,t,A,r){if(void 0!==A)return async function(e,t,A,r){var i;const n=new On(null==r?void 0:r.headers);return n.set("Authorization",`DPoP ${t}`),n.set("DPoP",await ss(e,null!==(i=null==r?void 0:r.method)&&void 0!==i?i:"get",A)),{...r,headers:n}}(e,t,A,r);const i=new On(null==r?void 0:r.headers);return i.set("Authorization",`Bearer ${t}`),{...r,headers:i}}async function ps(e,t,A,r,i){return e(A,await ds(A.toString(),t,i,r))}const ls=e=>void 0!==e?e-5>0?e-5:e:600;async function cs(e,t,A){var r;let i,n=t;const a=null==A?void 0:A.refreshOptions;if(void 0!==a){const e=async()=>{var t,r,o,s;try{const{accessToken:r,refreshToken:o,expiresIn:s}=await async function(e,t,A){var r;const i=await e.tokenRefresher.refresh(e.sessionId,e.refreshToken,t);return null==A||A.emit(To,null!==(r=i.expiresIn)&&void 0!==r?r:600),"string"==typeof i.refreshToken&&(null==A||A.emit(_o,i.refreshToken)),{accessToken:i.accessToken,refreshToken:i.refreshToken,expiresIn:i.expiresIn}}(a,A.dpopKey,A.eventEmitter);n=r,void 0!==o&&(a.refreshToken=o),clearTimeout(i),i=setTimeout(e,1e3*ls(s)),null===(t=A.eventEmitter)||void 0===t||t.emit(Mo,i)}catch(e){e instanceof as&&(null===(r=null==A?void 0:A.eventEmitter)||void 0===r||r.emit(Ro,e.error,e.errorDescription),null===(o=null==A?void 0:A.eventEmitter)||void 0===o||o.emit(Uo)),e instanceof ns&&e.missingFields.includes("access_token")&&(null===(s=null==A?void 0:A.eventEmitter)||void 0===s||s.emit(Uo))}};i=setTimeout(e,1e3*ls(A.expiresIn)),null===(r=A.eventEmitter)||void 0===r||r.emit(Mo,i)}else if(void 0!==A&&void 0!==A.eventEmitter){const e=setTimeout(()=>{A.eventEmitter.emit(Uo)},1e3*ls(A.expiresIn));A.eventEmitter.emit(Mo,e)}return async(t,r)=>{let i=await ps(e,n,t,r,null==A?void 0:A.dpopKey);const a=!i.ok&&(o=i.status,![401,403].includes(o));var o;if(i.ok||a)return i;return i.url!==t&&void 0!==(null==A?void 0:A.dpopKey)&&(i=await ps(e,n,i.url,r,A.dpopKey)),i}}var gs,hs={exports:{}};var us=gs?hs.exports:(gs=1,hs.exports=function(e){var t={};function A(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,A),i.l=!0,i.exports}return A.m=e,A.c=t,A.d=function(e,t,r){A.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},A.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},A.t=function(e,t){if(1&t&&(e=A(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(A.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)A.d(r,i,function(t){return e[t]}.bind(null,i));return r},A.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return A.d(t,"a",t),t},A.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},A.p="",A(A.s=22)}([function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i={debug:function(){},info:function(){},warn:function(){},error:function(){}},n=void 0,a=void 0;(t.Log=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.reset=function(){a=3,n=i},e.debug=function(){if(a>=4){for(var e=arguments.length,t=Array(e),A=0;A<e;A++)t[A]=arguments[A];n.debug.apply(n,Array.from(t))}},e.info=function(){if(a>=3){for(var e=arguments.length,t=Array(e),A=0;A<e;A++)t[A]=arguments[A];n.info.apply(n,Array.from(t))}},e.warn=function(){if(a>=2){for(var e=arguments.length,t=Array(e),A=0;A<e;A++)t[A]=arguments[A];n.warn.apply(n,Array.from(t))}},e.error=function(){if(a>=1){for(var e=arguments.length,t=Array(e),A=0;A<e;A++)t[A]=arguments[A];n.error.apply(n,Array.from(t))}},r(e,null,[{key:"NONE",get:function(){return 0}},{key:"ERROR",get:function(){return 1}},{key:"WARN",get:function(){return 2}},{key:"INFO",get:function(){return 3}},{key:"DEBUG",get:function(){return 4}},{key:"level",get:function(){return a},set:function(e){if(!(0<=e&&e<=4))throw new Error("Invalid log level");a=e}},{key:"logger",get:function(){return n},set:function(e){if(!e.debug&&e.info&&(e.debug=e.info),!(e.debug&&e.info&&e.warn&&e.error))throw new Error("Invalid logger");n=e}}]),e}()).reset()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i={setInterval:function(e){function t(t,A){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e,t){return setInterval(e,t)}),clearInterval:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){return clearInterval(e)})},n=!1,a=null;t.Global=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e._testing=function(){n=!0},e.setXMLHttpRequest=function(e){a=e},r(e,null,[{key:"location",get:function(){if(!n)return location}},{key:"localStorage",get:function(){if(!n&&"undefined"!=typeof window)return localStorage}},{key:"sessionStorage",get:function(){if(!n&&"undefined"!=typeof window)return sessionStorage}},{key:"XMLHttpRequest",get:function(){if(!n&&"undefined"!=typeof window)return a||XMLHttpRequest}},{key:"timer",get:function(){if(!n)return i}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.MetadataService=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(7),a=".well-known/openid-configuration";t.MetadataService=function(){function e(t){var A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.JsonService;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw i.Log.error("MetadataService: No settings passed to MetadataService"),new Error("settings");this._settings=t,this._jsonService=new A(["application/jwk-set+json"])}return e.prototype.resetSigningKeys=function(){this._settings=this._settings||{},this._settings.signingKeys=void 0},e.prototype.getMetadata=function(){var e=this;return this._settings.metadata?(i.Log.debug("MetadataService.getMetadata: Returning metadata from settings"),Promise.resolve(this._settings.metadata)):this.metadataUrl?(i.Log.debug("MetadataService.getMetadata: getting metadata from",this.metadataUrl),this._jsonService.getJson(this.metadataUrl).then(function(t){i.Log.debug("MetadataService.getMetadata: json received");var A=e._settings.metadataSeed||{};return e._settings.metadata=Object.assign({},A,t),e._settings.metadata})):(i.Log.error("MetadataService.getMetadata: No authority or metadataUrl configured on settings"),Promise.reject(new Error("No authority or metadataUrl configured on settings")))},e.prototype.getIssuer=function(){return this._getMetadataProperty("issuer")},e.prototype.getAuthorizationEndpoint=function(){return this._getMetadataProperty("authorization_endpoint")},e.prototype.getUserInfoEndpoint=function(){return this._getMetadataProperty("userinfo_endpoint")},e.prototype.getTokenEndpoint=function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._getMetadataProperty("token_endpoint",e)},e.prototype.getCheckSessionIframe=function(){return this._getMetadataProperty("check_session_iframe",!0)},e.prototype.getEndSessionEndpoint=function(){return this._getMetadataProperty("end_session_endpoint",!0)},e.prototype.getRevocationEndpoint=function(){return this._getMetadataProperty("revocation_endpoint",!0)},e.prototype.getKeysEndpoint=function(){return this._getMetadataProperty("jwks_uri",!0)},e.prototype._getMetadataProperty=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return i.Log.debug("MetadataService.getMetadataProperty for: "+e),this.getMetadata().then(function(A){if(i.Log.debug("MetadataService.getMetadataProperty: metadata recieved"),void 0===A[e]){if(!0===t)return void i.Log.warn("MetadataService.getMetadataProperty: Metadata does not contain optional property "+e);throw i.Log.error("MetadataService.getMetadataProperty: Metadata does not contain property "+e),new Error("Metadata does not contain property "+e)}return A[e]})},e.prototype.getSigningKeys=function(){var e=this;return this._settings.signingKeys?(i.Log.debug("MetadataService.getSigningKeys: Returning signingKeys from settings"),Promise.resolve(this._settings.signingKeys)):this._getMetadataProperty("jwks_uri").then(function(t){return i.Log.debug("MetadataService.getSigningKeys: jwks_uri received",t),e._jsonService.getJson(t).then(function(t){if(i.Log.debug("MetadataService.getSigningKeys: key set received",t),!t.keys)throw i.Log.error("MetadataService.getSigningKeys: Missing keys on keyset"),new Error("Missing keys on keyset");return e._settings.signingKeys=t.keys,e._settings.signingKeys})})},r(e,[{key:"metadataUrl",get:function(){return this._metadataUrl||(this._settings.metadataUrl?this._metadataUrl=this._settings.metadataUrl:(this._metadataUrl=this._settings.authority,this._metadataUrl&&this._metadataUrl.indexOf(a)<0&&("/"!==this._metadataUrl[this._metadataUrl.length-1]&&(this._metadataUrl+="/"),this._metadataUrl+=a))),this._metadataUrl}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.UrlUtility=void 0;var r=A(0),i=A(1);t.UrlUtility=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.addQueryParam=function(e,t,A){return e.indexOf("?")<0&&(e+="?"),"?"!==e[e.length-1]&&(e+="&"),e+=encodeURIComponent(t),(e+="=")+encodeURIComponent(A)},e.parseUrlFragment=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#",A=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.Global;"string"!=typeof e&&(e=A.location.href);var n=e.lastIndexOf(t);n>=0&&(e=e.substr(n+1)),"?"===t&&(n=e.indexOf("#"))>=0&&(e=e.substr(0,n));for(var a,o={},s=/([^&=]+)=([^&]*)/g,d=0;a=s.exec(e);)if(o[decodeURIComponent(a[1])]=decodeURIComponent(a[2].replace(/\+/g," ")),d++>50)return r.Log.error("UrlUtility.parseUrlFragment: response exceeded expected number of parameters",e),{error:"Response exceeded expected number of parameters"};for(var p in o)return o;return{}},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.JoseUtil=void 0;var r=A(26),i=function(e){return e&&e.__esModule?e:{default:e}}(A(33));t.JoseUtil=(0,i.default)({jws:r.jws,KeyUtil:r.KeyUtil,X509:r.X509,crypto:r.crypto,hextob64u:r.hextob64u,b64tohex:r.b64tohex,AllowedSigningAlgs:r.AllowedSigningAlgs})},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.OidcClientSettings=void 0;var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),n=A(0),a=A(23),o=A(6),s=A(24),d=A(2),p=".well-known/openid-configuration";t.OidcClientSettings=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},A=t.authority,i=t.metadataUrl,n=t.metadata,p=t.signingKeys,l=t.metadataSeed,c=t.client_id,g=t.client_secret,h=t.response_type,u=void 0===h?"id_token":h,E=t.scope,m=void 0===E?"openid":E,C=t.redirect_uri,f=t.post_logout_redirect_uri,Q=t.client_authentication,I=void 0===Q?"client_secret_post":Q,B=t.prompt,y=t.display,w=t.max_age,v=t.ui_locales,S=t.acr_values,b=t.resource,D=t.response_mode,F=t.filterProtocolClaims,R=void 0===F||F,k=t.loadUserInfo,N=void 0===k||k,_=t.staleStateAge,U=void 0===_?900:_,T=t.clockSkew,L=void 0===T?300:T,M=t.clockService,x=void 0===M?new a.ClockService:M,V=t.userInfoJwtIssuer,H=void 0===V?"OP":V,P=t.mergeClaims,J=void 0!==P&&P,Y=t.stateStore,G=void 0===Y?new o.WebStorageStateStore:Y,O=t.ResponseValidatorCtor,q=void 0===O?s.ResponseValidator:O,W=t.MetadataServiceCtor,j=void 0===W?d.MetadataService:W,K=t.extraQueryParams,Z=void 0===K?{}:K,X=t.extraTokenParams,z=void 0===X?{}:X;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this._authority=A,this._metadataUrl=i,this._metadata=n,this._metadataSeed=l,this._signingKeys=p,this._client_id=c,this._client_secret=g,this._response_type=u,this._scope=m,this._redirect_uri=C,this._post_logout_redirect_uri=f,this._client_authentication=I,this._prompt=B,this._display=y,this._max_age=w,this._ui_locales=v,this._acr_values=S,this._resource=b,this._response_mode=D,this._filterProtocolClaims=!!R,this._loadUserInfo=!!N,this._staleStateAge=U,this._clockSkew=L,this._clockService=x,this._userInfoJwtIssuer=H,this._mergeClaims=!!J,this._stateStore=G,this._validator=new q(this),this._metadataService=new j(this),this._extraQueryParams="object"===(void 0===Z?"undefined":r(Z))?Z:{},this._extraTokenParams="object"===(void 0===z?"undefined":r(z))?z:{}}return e.prototype.getEpochTime=function(){return this._clockService.getEpochTime()},i(e,[{key:"client_id",get:function(){return this._client_id},set:function(e){if(this._client_id)throw n.Log.error("OidcClientSettings.set_client_id: client_id has already been assigned."),new Error("client_id has already been assigned.");this._client_id=e}},{key:"client_secret",get:function(){return this._client_secret}},{key:"response_type",get:function(){return this._response_type}},{key:"scope",get:function(){return this._scope}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"post_logout_redirect_uri",get:function(){return this._post_logout_redirect_uri}},{key:"client_authentication",get:function(){return this._client_authentication}},{key:"prompt",get:function(){return this._prompt}},{key:"display",get:function(){return this._display}},{key:"max_age",get:function(){return this._max_age}},{key:"ui_locales",get:function(){return this._ui_locales}},{key:"acr_values",get:function(){return this._acr_values}},{key:"resource",get:function(){return this._resource}},{key:"response_mode",get:function(){return this._response_mode}},{key:"authority",get:function(){return this._authority},set:function(e){if(this._authority)throw n.Log.error("OidcClientSettings.set_authority: authority has already been assigned."),new Error("authority has already been assigned.");this._authority=e}},{key:"metadataUrl",get:function(){return this._metadataUrl||(this._metadataUrl=this.authority,this._metadataUrl&&this._metadataUrl.indexOf(p)<0&&("/"!==this._metadataUrl[this._metadataUrl.length-1]&&(this._metadataUrl+="/"),this._metadataUrl+=p)),this._metadataUrl}},{key:"metadata",get:function(){return this._metadata},set:function(e){this._metadata=e}},{key:"metadataSeed",get:function(){return this._metadataSeed},set:function(e){this._metadataSeed=e}},{key:"signingKeys",get:function(){return this._signingKeys},set:function(e){this._signingKeys=e}},{key:"filterProtocolClaims",get:function(){return this._filterProtocolClaims}},{key:"loadUserInfo",get:function(){return this._loadUserInfo}},{key:"staleStateAge",get:function(){return this._staleStateAge}},{key:"clockSkew",get:function(){return this._clockSkew}},{key:"userInfoJwtIssuer",get:function(){return this._userInfoJwtIssuer}},{key:"mergeClaims",get:function(){return this._mergeClaims}},{key:"stateStore",get:function(){return this._stateStore}},{key:"validator",get:function(){return this._validator}},{key:"metadataService",get:function(){return this._metadataService}},{key:"extraQueryParams",get:function(){return this._extraQueryParams},set:function(e){"object"===(void 0===e?"undefined":r(e))?this._extraQueryParams=e:this._extraQueryParams={}}},{key:"extraTokenParams",get:function(){return this._extraTokenParams},set:function(e){"object"===(void 0===e?"undefined":r(e))?this._extraTokenParams=e:this._extraTokenParams={}}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.WebStorageStateStore=void 0;var r=A(0),i=A(1);t.WebStorageStateStore=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},A=t.prefix,r=void 0===A?"oidc.":A,n=t.store,a=void 0===n?i.Global.localStorage:n;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this._store=a,this._prefix=r}return e.prototype.set=function(e,t){return r.Log.debug("WebStorageStateStore.set",e),e=this._prefix+e,this._store.setItem(e,t),Promise.resolve()},e.prototype.get=function(e){r.Log.debug("WebStorageStateStore.get",e),e=this._prefix+e;var t=this._store.getItem(e);return Promise.resolve(t)},e.prototype.remove=function(e){r.Log.debug("WebStorageStateStore.remove",e),e=this._prefix+e;var t=this._store.getItem(e);return this._store.removeItem(e),Promise.resolve(t)},e.prototype.getAllKeys=function(){r.Log.debug("WebStorageStateStore.getAllKeys");for(var e=[],t=0;t<this._store.length;t++){var A=this._store.key(t);0===A.indexOf(this._prefix)&&e.push(A.substr(this._prefix.length))}return Promise.resolve(e)},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.JsonService=void 0;var r=A(0),i=A(1);t.JsonService=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.Global.XMLHttpRequest,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),t&&Array.isArray(t)?this._contentTypes=t.slice():this._contentTypes=[],this._contentTypes.push("application/json"),r&&this._contentTypes.push("application/jwt"),this._XMLHttpRequest=A,this._jwtHandler=r}return e.prototype.getJson=function(e,t){var A=this;if(!e)throw r.Log.error("JsonService.getJson: No url passed"),new Error("url");return r.Log.debug("JsonService.getJson, url: ",e),new Promise(function(i,n){var a=new A._XMLHttpRequest;a.open("GET",e);var o=A._contentTypes,s=A._jwtHandler;a.onload=function(){if(r.Log.debug("JsonService.getJson: HTTP response received, status",a.status),200===a.status){var t=a.getResponseHeader("Content-Type");if(t){var A=o.find(function(e){if(t.startsWith(e))return!0});if("application/jwt"==A)return void s(a).then(i,n);if(A)try{return void i(JSON.parse(a.responseText))}catch(e){return r.Log.error("JsonService.getJson: Error parsing JSON response",e.message),void n(e)}}n(Error("Invalid response Content-Type: "+t+", from URL: "+e))}else n(Error(a.statusText+" ("+a.status+")"))},a.onerror=function(){r.Log.error("JsonService.getJson: network error"),n(Error("Network Error"))},t&&(r.Log.debug("JsonService.getJson: token passed, setting Authorization header"),a.setRequestHeader("Authorization","Bearer "+t)),a.send()})},e.prototype.postForm=function(e,t,A){var i=this;if(!e)throw r.Log.error("JsonService.postForm: No url passed"),new Error("url");return r.Log.debug("JsonService.postForm, url: ",e),new Promise(function(n,a){var o=new i._XMLHttpRequest;o.open("POST",e);var s=i._contentTypes;o.onload=function(){if(r.Log.debug("JsonService.postForm: HTTP response received, status",o.status),200!==o.status){if(400===o.status&&(A=o.getResponseHeader("Content-Type"))&&s.find(function(e){if(A.startsWith(e))return!0}))try{var t=JSON.parse(o.responseText);if(t&&t.error)return r.Log.error("JsonService.postForm: Error from server: ",t.error),void a(new Error(t.error))}catch(e){return r.Log.error("JsonService.postForm: Error parsing JSON response",e.message),void a(e)}a(Error(o.statusText+" ("+o.status+")"))}else{var A;if((A=o.getResponseHeader("Content-Type"))&&s.find(function(e){if(A.startsWith(e))return!0}))try{return void n(JSON.parse(o.responseText))}catch(e){return r.Log.error("JsonService.postForm: Error parsing JSON response",e.message),void a(e)}a(Error("Invalid response Content-Type: "+A+", from URL: "+e))}},o.onerror=function(){r.Log.error("JsonService.postForm: network error"),a(Error("Network Error"))};var d="";for(var p in t){var l=t[p];l&&(d.length>0&&(d+="&"),d+=encodeURIComponent(p),d+="=",d+=encodeURIComponent(l))}o.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),void 0!==A&&o.setRequestHeader("Authorization","Basic "+btoa(A)),o.send(d)})},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SigninRequest=void 0;var r=A(0),i=A(3),n=A(13);t.SigninRequest=function(){function e(t){var A=t.url,a=t.client_id,o=t.redirect_uri,s=t.response_type,d=t.scope,p=t.authority,l=t.data,c=t.prompt,g=t.display,h=t.max_age,u=t.ui_locales,E=t.id_token_hint,m=t.login_hint,C=t.acr_values,f=t.resource,Q=t.response_mode,I=t.request,B=t.request_uri,y=t.extraQueryParams,w=t.request_type,v=t.client_secret,S=t.extraTokenParams,b=t.skipUserInfo;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!A)throw r.Log.error("SigninRequest.ctor: No url passed"),new Error("url");if(!a)throw r.Log.error("SigninRequest.ctor: No client_id passed"),new Error("client_id");if(!o)throw r.Log.error("SigninRequest.ctor: No redirect_uri passed"),new Error("redirect_uri");if(!s)throw r.Log.error("SigninRequest.ctor: No response_type passed"),new Error("response_type");if(!d)throw r.Log.error("SigninRequest.ctor: No scope passed"),new Error("scope");if(!p)throw r.Log.error("SigninRequest.ctor: No authority passed"),new Error("authority");var D=e.isOidc(s),F=e.isCode(s);Q||(Q=e.isCode(s)?"query":null),this.state=new n.SigninState({nonce:D,data:l,client_id:a,authority:p,redirect_uri:o,code_verifier:F,request_type:w,response_mode:Q,client_secret:v,scope:d,extraTokenParams:S,skipUserInfo:b}),A=i.UrlUtility.addQueryParam(A,"client_id",a),A=i.UrlUtility.addQueryParam(A,"redirect_uri",o),A=i.UrlUtility.addQueryParam(A,"response_type",s),A=i.UrlUtility.addQueryParam(A,"scope",d),A=i.UrlUtility.addQueryParam(A,"state",this.state.id),D&&(A=i.UrlUtility.addQueryParam(A,"nonce",this.state.nonce)),F&&(A=i.UrlUtility.addQueryParam(A,"code_challenge",this.state.code_challenge),A=i.UrlUtility.addQueryParam(A,"code_challenge_method","S256"));var R={prompt:c,display:g,max_age:h,ui_locales:u,id_token_hint:E,login_hint:m,acr_values:C,resource:f,request:I,request_uri:B,response_mode:Q};for(var k in R)R[k]&&(A=i.UrlUtility.addQueryParam(A,k,R[k]));for(var N in y)A=i.UrlUtility.addQueryParam(A,N,y[N]);this.url=A}return e.isOidc=function(e){return!!e.split(/\s+/g).filter(function(e){return"id_token"===e})[0]},e.isOAuth=function(e){return!!e.split(/\s+/g).filter(function(e){return"token"===e})[0]},e.isCode=function(e){return!!e.split(/\s+/g).filter(function(e){return"code"===e})[0]},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.State=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=function(e){return e&&e.__esModule?e:{default:e}}(A(14));t.State=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},A=t.id,r=t.data,i=t.created,a=t.request_type;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this._id=A||(0,n.default)(),this._data=r,this._created="number"==typeof i&&i>0?i:parseInt(Date.now()/1e3),this._request_type=a}return e.prototype.toStorageString=function(){return i.Log.debug("State.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type})},e.fromStorageString=function(t){return i.Log.debug("State.fromStorageString"),new e(JSON.parse(t))},e.clearStaleState=function(t,A){var r=Date.now()/1e3-A;return t.getAllKeys().then(function(A){i.Log.debug("State.clearStaleState: got keys",A);for(var n=[],a=function(a){var o=A[a];s=t.get(o).then(function(A){var n=!1;if(A)try{var a=e.fromStorageString(A);i.Log.debug("State.clearStaleState: got item from key: ",o,a.created),a.created<=r&&(n=!0)}catch(e){i.Log.error("State.clearStaleState: Error parsing state for key",o,e.message),n=!0}else i.Log.debug("State.clearStaleState: no item in storage for key: ",o),n=!0;if(n)return i.Log.debug("State.clearStaleState: removed item for key: ",o),t.remove(o)}),n.push(s)},o=0;o<A.length;o++){var s;a(o)}return i.Log.debug("State.clearStaleState: waiting on promise count:",n.length),Promise.all(n)})},r(e,[{key:"id",get:function(){return this._id}},{key:"data",get:function(){return this._data}},{key:"created",get:function(){return this._created}},{key:"request_type",get:function(){return this._request_type}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.OidcClient=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(5),a=A(12),o=A(8),s=A(34),d=A(35),p=A(36),l=A(13),c=A(9);t.OidcClient=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),t instanceof n.OidcClientSettings?this._settings=t:this._settings=new n.OidcClientSettings(t)}return e.prototype.createSigninRequest=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},A=t.response_type,r=t.scope,n=t.redirect_uri,a=t.data,s=t.state,d=t.prompt,p=t.display,l=t.max_age,c=t.ui_locales,g=t.id_token_hint,h=t.login_hint,u=t.acr_values,E=t.resource,m=t.request,C=t.request_uri,f=t.response_mode,Q=t.extraQueryParams,I=t.extraTokenParams,B=t.request_type,y=t.skipUserInfo,w=arguments[1];i.Log.debug("OidcClient.createSigninRequest");var v=this._settings.client_id;A=A||this._settings.response_type,r=r||this._settings.scope,n=n||this._settings.redirect_uri,d=d||this._settings.prompt,p=p||this._settings.display,l=l||this._settings.max_age,c=c||this._settings.ui_locales,u=u||this._settings.acr_values,E=E||this._settings.resource,f=f||this._settings.response_mode,Q=Q||this._settings.extraQueryParams,I=I||this._settings.extraTokenParams;var S=this._settings.authority;return o.SigninRequest.isCode(A)&&"code"!==A?Promise.reject(new Error("OpenID Connect hybrid flow is not supported")):this._metadataService.getAuthorizationEndpoint().then(function(t){i.Log.debug("OidcClient.createSigninRequest: Received authorization endpoint",t);var b=new o.SigninRequest({url:t,client_id:v,redirect_uri:n,response_type:A,scope:r,data:a||s,authority:S,prompt:d,display:p,max_age:l,ui_locales:c,id_token_hint:g,login_hint:h,acr_values:u,resource:E,request:m,request_uri:C,extraQueryParams:Q,extraTokenParams:I,request_type:B,response_mode:f,client_secret:e._settings.client_secret,skipUserInfo:y}),D=b.state;return(w=w||e._stateStore).set(D.id,D.toStorageString()).then(function(){return b})})},e.prototype.readSigninResponseState=function(e,t){var A=arguments.length>2&&void 0!==arguments[2]&&arguments[2];i.Log.debug("OidcClient.readSigninResponseState");var r="query"===this._settings.response_mode||!this._settings.response_mode&&o.SigninRequest.isCode(this._settings.response_type)?"?":"#",n=new s.SigninResponse(e,r);return n.state?(t=t||this._stateStore,(A?t.remove.bind(t):t.get.bind(t))(n.state).then(function(e){if(!e)throw i.Log.error("OidcClient.readSigninResponseState: No matching state found in storage"),new Error("No matching state found in storage");return{state:l.SigninState.fromStorageString(e),response:n}})):(i.Log.error("OidcClient.readSigninResponseState: No state in response"),Promise.reject(new Error("No state in response")))},e.prototype.processSigninResponse=function(e,t){var A=this;return i.Log.debug("OidcClient.processSigninResponse"),this.readSigninResponseState(e,t,!0).then(function(e){var t=e.state,r=e.response;return i.Log.debug("OidcClient.processSigninResponse: Received state from storage; validating response"),A._validator.validateSigninResponse(t,r)})},e.prototype.createSignoutRequest=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},A=t.id_token_hint,r=t.data,n=t.state,a=t.post_logout_redirect_uri,o=t.extraQueryParams,s=t.request_type,p=arguments[1];return i.Log.debug("OidcClient.createSignoutRequest"),a=a||this._settings.post_logout_redirect_uri,o=o||this._settings.extraQueryParams,this._metadataService.getEndSessionEndpoint().then(function(t){if(!t)throw i.Log.error("OidcClient.createSignoutRequest: No end session endpoint url returned"),new Error("no end session endpoint");i.Log.debug("OidcClient.createSignoutRequest: Received end session endpoint",t);var l=new d.SignoutRequest({url:t,id_token_hint:A,post_logout_redirect_uri:a,data:r||n,extraQueryParams:o,request_type:s}),c=l.state;return c&&(i.Log.debug("OidcClient.createSignoutRequest: Signout request has state to persist"),(p=p||e._stateStore).set(c.id,c.toStorageString())),l})},e.prototype.readSignoutResponseState=function(e,t){var A=arguments.length>2&&void 0!==arguments[2]&&arguments[2];i.Log.debug("OidcClient.readSignoutResponseState");var r=new p.SignoutResponse(e);if(!r.state)return i.Log.debug("OidcClient.readSignoutResponseState: No state in response"),r.error?(i.Log.warn("OidcClient.readSignoutResponseState: Response was error: ",r.error),Promise.reject(new a.ErrorResponse(r))):Promise.resolve({state:void 0,response:r});var n=r.state;return t=t||this._stateStore,(A?t.remove.bind(t):t.get.bind(t))(n).then(function(e){if(!e)throw i.Log.error("OidcClient.readSignoutResponseState: No matching state found in storage"),new Error("No matching state found in storage");return{state:c.State.fromStorageString(e),response:r}})},e.prototype.processSignoutResponse=function(e,t){var A=this;return i.Log.debug("OidcClient.processSignoutResponse"),this.readSignoutResponseState(e,t,!0).then(function(e){var t=e.state,r=e.response;return t?(i.Log.debug("OidcClient.processSignoutResponse: Received state from storage; validating response"),A._validator.validateSignoutResponse(t,r)):(i.Log.debug("OidcClient.processSignoutResponse: No state from storage; skipping validating response"),r)})},e.prototype.clearStaleState=function(e){return i.Log.debug("OidcClient.clearStaleState"),e=e||this._stateStore,c.State.clearStaleState(e,this.settings.staleStateAge)},r(e,[{key:"_stateStore",get:function(){return this.settings.stateStore}},{key:"_validator",get:function(){return this.settings.validator}},{key:"_metadataService",get:function(){return this.settings.metadataService}},{key:"settings",get:function(){return this._settings}},{key:"metadataService",get:function(){return this._metadataService}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.TokenClient=void 0;var r=A(7),i=A(2),n=A(0);t.TokenClient=function(){function e(t){var A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.JsonService,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw n.Log.error("TokenClient.ctor: No settings passed"),new Error("settings");this._settings=t,this._jsonService=new A,this._metadataService=new a(this._settings)}return e.prototype.exchangeCode=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).grant_type=t.grant_type||"authorization_code",t.client_id=t.client_id||this._settings.client_id,t.client_secret=t.client_secret||this._settings.client_secret,t.redirect_uri=t.redirect_uri||this._settings.redirect_uri;var A=void 0,r=t._client_authentication||this._settings._client_authentication;return delete t._client_authentication,t.code?t.redirect_uri?t.code_verifier?t.client_id?t.client_secret||"client_secret_basic"!=r?("client_secret_basic"==r&&(A=t.client_id+":"+t.client_secret,delete t.client_id,delete t.client_secret),this._metadataService.getTokenEndpoint(!1).then(function(r){return n.Log.debug("TokenClient.exchangeCode: Received token endpoint"),e._jsonService.postForm(r,t,A).then(function(e){return n.Log.debug("TokenClient.exchangeCode: response received"),e})})):(n.Log.error("TokenClient.exchangeCode: No client_secret passed"),Promise.reject(new Error("A client_secret is required"))):(n.Log.error("TokenClient.exchangeCode: No client_id passed"),Promise.reject(new Error("A client_id is required"))):(n.Log.error("TokenClient.exchangeCode: No code_verifier passed"),Promise.reject(new Error("A code_verifier is required"))):(n.Log.error("TokenClient.exchangeCode: No redirect_uri passed"),Promise.reject(new Error("A redirect_uri is required"))):(n.Log.error("TokenClient.exchangeCode: No code passed"),Promise.reject(new Error("A code is required")))},e.prototype.exchangeRefreshToken=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).grant_type=t.grant_type||"refresh_token",t.client_id=t.client_id||this._settings.client_id,t.client_secret=t.client_secret||this._settings.client_secret;var A=void 0,r=t._client_authentication||this._settings._client_authentication;return delete t._client_authentication,t.refresh_token?t.client_id?("client_secret_basic"==r&&(A=t.client_id+":"+t.client_secret,delete t.client_id,delete t.client_secret),this._metadataService.getTokenEndpoint(!1).then(function(r){return n.Log.debug("TokenClient.exchangeRefreshToken: Received token endpoint"),e._jsonService.postForm(r,t,A).then(function(e){return n.Log.debug("TokenClient.exchangeRefreshToken: response received"),e})})):(n.Log.error("TokenClient.exchangeRefreshToken: No client_id passed"),Promise.reject(new Error("A client_id is required"))):(n.Log.error("TokenClient.exchangeRefreshToken: No refresh_token passed"),Promise.reject(new Error("A refresh_token is required")))},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorResponse=void 0;var r=A(0);t.ErrorResponse=function(e){function t(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=A.error,n=A.error_description,a=A.error_uri,o=A.state,s=A.session_state;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),!i)throw r.Log.error("No error passed to ErrorResponse"),new Error("error");var d=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,n||i));return d.name="ErrorResponse",d.error=i,d.error_description=n,d.error_uri=a,d.state=o,d.session_state=s,d}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t}(Error)},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SigninState=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(9),a=A(4),o=function(e){return e&&e.__esModule?e:{default:e}}(A(14));t.SigninState=function(e){function t(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=A.nonce,i=A.authority,n=A.client_id,s=A.redirect_uri,d=A.code_verifier,p=A.response_mode,l=A.client_secret,c=A.scope,g=A.extraTokenParams,h=A.skipUserInfo;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var u=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,arguments[0]));if(!0===r?u._nonce=(0,o.default)():r&&(u._nonce=r),!0===d?u._code_verifier=(0,o.default)()+(0,o.default)()+(0,o.default)():d&&(u._code_verifier=d),u.code_verifier){var E=a.JoseUtil.hashString(u.code_verifier,"SHA256");u._code_challenge=a.JoseUtil.hexToBase64Url(E)}return u._redirect_uri=s,u._authority=i,u._client_id=n,u._response_mode=p,u._client_secret=l,u._scope=c,u._extraTokenParams=g,u._skipUserInfo=h,u}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.toStorageString=function(){return i.Log.debug("SigninState.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type,nonce:this.nonce,code_verifier:this.code_verifier,redirect_uri:this.redirect_uri,authority:this.authority,client_id:this.client_id,response_mode:this.response_mode,client_secret:this.client_secret,scope:this.scope,extraTokenParams:this.extraTokenParams,skipUserInfo:this.skipUserInfo})},t.fromStorageString=function(e){return i.Log.debug("SigninState.fromStorageString"),new t(JSON.parse(e))},r(t,[{key:"nonce",get:function(){return this._nonce}},{key:"authority",get:function(){return this._authority}},{key:"client_id",get:function(){return this._client_id}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"code_verifier",get:function(){return this._code_verifier}},{key:"code_challenge",get:function(){return this._code_challenge}},{key:"response_mode",get:function(){return this._response_mode}},{key:"client_secret",get:function(){return this._client_secret}},{key:"scope",get:function(){return this._scope}},{key:"extraTokenParams",get:function(){return this._extraTokenParams}},{key:"skipUserInfo",get:function(){return this._skipUserInfo}}]),t}(n.State)},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return("undefined"!=r&&null!==r&&void 0!==r.getRandomValues?i:n)().replace(/-/g,"")};var r="undefined"!=typeof window?window.crypto||window.msCrypto:null;function i(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,function(e){return(e^r.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16)})}function n(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,function(e){return(e^16*Math.random()>>e/4).toString(16)})}e.exports=t.default},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.User=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0);t.User=function(){function e(t){var A=t.id_token,r=t.session_state,i=t.access_token,n=t.refresh_token,a=t.token_type,o=t.scope,s=t.profile,d=t.expires_at,p=t.state;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.id_token=A,this.session_state=r,this.access_token=i,this.refresh_token=n,this.token_type=a,this.scope=o,this.profile=s,this.expires_at=d,this.state=p}return e.prototype.toStorageString=function(){return i.Log.debug("User.toStorageString"),JSON.stringify({id_token:this.id_token,session_state:this.session_state,access_token:this.access_token,refresh_token:this.refresh_token,token_type:this.token_type,scope:this.scope,profile:this.profile,expires_at:this.expires_at})},e.fromStorageString=function(t){return i.Log.debug("User.fromStorageString"),new e(JSON.parse(t))},r(e,[{key:"expires_in",get:function(){if(this.expires_at){var e=parseInt(Date.now()/1e3);return this.expires_at-e}},set:function(e){var t=parseInt(e);if("number"==typeof t&&t>0){var A=parseInt(Date.now()/1e3);this.expires_at=A+t}}},{key:"expired",get:function(){var e=this.expires_in;if(void 0!==e)return e<=0}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.AccessTokenEvents=void 0;var r=A(0),i=A(46);t.AccessTokenEvents=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},A=t.accessTokenExpiringNotificationTime,r=void 0===A?60:A,n=t.accessTokenExpiringTimer,a=void 0===n?new i.Timer("Access token expiring"):n,o=t.accessTokenExpiredTimer,s=void 0===o?new i.Timer("Access token expired"):o;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this._accessTokenExpiringNotificationTime=r,this._accessTokenExpiring=a,this._accessTokenExpired=s}return e.prototype.load=function(e){if(e.access_token&&void 0!==e.expires_in){var t=e.expires_in;if(r.Log.debug("AccessTokenEvents.load: access token present, remaining duration:",t),t>0){var A=t-this._accessTokenExpiringNotificationTime;A<=0&&(A=1),r.Log.debug("AccessTokenEvents.load: registering expiring timer in:",A),this._accessTokenExpiring.init(A)}else r.Log.debug("AccessTokenEvents.load: canceling existing expiring timer becase we're past expiration."),this._accessTokenExpiring.cancel();var i=t+1;r.Log.debug("AccessTokenEvents.load: registering expired timer in:",i),this._accessTokenExpired.init(i)}else this._accessTokenExpiring.cancel(),this._accessTokenExpired.cancel()},e.prototype.unload=function(){r.Log.debug("AccessTokenEvents.unload: canceling existing access token timers"),this._accessTokenExpiring.cancel(),this._accessTokenExpired.cancel()},e.prototype.addAccessTokenExpiring=function(e){this._accessTokenExpiring.addHandler(e)},e.prototype.removeAccessTokenExpiring=function(e){this._accessTokenExpiring.removeHandler(e)},e.prototype.addAccessTokenExpired=function(e){this._accessTokenExpired.addHandler(e)},e.prototype.removeAccessTokenExpired=function(e){this._accessTokenExpired.removeHandler(e)},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.Event=void 0;var r=A(0);t.Event=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._name=t,this._callbacks=[]}return e.prototype.addHandler=function(e){this._callbacks.push(e)},e.prototype.removeHandler=function(e){var t=this._callbacks.findIndex(function(t){return t===e});t>=0&&this._callbacks.splice(t,1)},e.prototype.raise=function(){r.Log.debug("Event: Raising event: "+this._name);for(var e=0;e<this._callbacks.length;e++){var t;(t=this._callbacks)[e].apply(t,arguments)}},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SessionMonitor=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(19),a=A(1);t.SessionMonitor=function(){function e(t){var A=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.CheckSessionIFrame,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.Global.timer;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw i.Log.error("SessionMonitor.ctor: No user manager passed to SessionMonitor"),new Error("userManager");this._userManager=t,this._CheckSessionIFrameCtor=r,this._timer=o,this._userManager.events.addUserLoaded(this._start.bind(this)),this._userManager.events.addUserUnloaded(this._stop.bind(this)),Promise.resolve(this._userManager.getUser().then(function(e){e?A._start(e):A._settings.monitorAnonymousSession&&A._userManager.querySessionStatus().then(function(e){var t={session_state:e.session_state};e.sub&&e.sid&&(t.profile={sub:e.sub,sid:e.sid}),A._start(t)}).catch(function(e){i.Log.error("SessionMonitor ctor: error from querySessionStatus:",e.message)})}).catch(function(e){i.Log.error("SessionMonitor ctor: error from getUser:",e.message)}))}return e.prototype._start=function(e){var t=this,A=e.session_state;A&&(e.profile?(this._sub=e.profile.sub,this._sid=e.profile.sid,i.Log.debug("SessionMonitor._start: session_state:",A,", sub:",this._sub)):(this._sub=void 0,this._sid=void 0,i.Log.debug("SessionMonitor._start: session_state:",A,", anonymous user")),this._checkSessionIFrame?this._checkSessionIFrame.start(A):this._metadataService.getCheckSessionIframe().then(function(e){if(e){i.Log.debug("SessionMonitor._start: Initializing check session iframe");var r=t._client_id,n=t._checkSessionInterval,a=t._stopCheckSessionOnError;t._checkSessionIFrame=new t._CheckSessionIFrameCtor(t._callback.bind(t),r,e,n,a),t._checkSessionIFrame.load().then(function(){t._checkSessionIFrame.start(A)})}else i.Log.warn("SessionMonitor._start: No check session iframe found in the metadata")}).catch(function(e){i.Log.error("SessionMonitor._start: Error from getCheckSessionIframe:",e.message)}))},e.prototype._stop=function(){var e=this;if(this._sub=void 0,this._sid=void 0,this._checkSessionIFrame&&(i.Log.debug("SessionMonitor._stop"),this._checkSessionIFrame.stop()),this._settings.monitorAnonymousSession)var t=this._timer.setInterval(function(){e._timer.clearInterval(t),e._userManager.querySessionStatus().then(function(t){var A={session_state:t.session_state};t.sub&&t.sid&&(A.profile={sub:t.sub,sid:t.sid}),e._start(A)}).catch(function(e){i.Log.error("SessionMonitor: error from querySessionStatus:",e.message)})},1e3)},e.prototype._callback=function(){var e=this;this._userManager.querySessionStatus().then(function(t){var A=!0;t?t.sub===e._sub?(A=!1,e._checkSessionIFrame.start(t.session_state),t.sid===e._sid?i.Log.debug("SessionMonitor._callback: Same sub still logged in at OP, restarting check session iframe; session_state:",t.session_state):(i.Log.debug("SessionMonitor._callback: Same sub still logged in at OP, session state has changed, restarting check session iframe; session_state:",t.session_state),e._userManager.events._raiseUserSessionChanged())):i.Log.debug("SessionMonitor._callback: Different subject signed into OP:",t.sub):i.Log.debug("SessionMonitor._callback: Subject no longer signed into OP"),A&&(e._sub?(i.Log.debug("SessionMonitor._callback: SessionMonitor._callback; raising signed out event"),e._userManager.events._raiseUserSignedOut()):(i.Log.debug("SessionMonitor._callback: SessionMonitor._callback; raising signed in event"),e._userManager.events._raiseUserSignedIn()))}).catch(function(t){e._sub&&(i.Log.debug("SessionMonitor._callback: Error calling queryCurrentSigninSession; raising signed out event",t.message),e._userManager.events._raiseUserSignedOut())})},r(e,[{key:"_settings",get:function(){return this._userManager.settings}},{key:"_metadataService",get:function(){return this._userManager.metadataService}},{key:"_client_id",get:function(){return this._settings.client_id}},{key:"_checkSessionInterval",get:function(){return this._settings.checkSessionInterval}},{key:"_stopCheckSessionOnError",get:function(){return this._settings.stopCheckSessionOnError}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.CheckSessionIFrame=void 0;var r=A(0);t.CheckSessionIFrame=function(){function e(t,A,r,i){var n=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this._callback=t,this._client_id=A,this._url=r,this._interval=i||2e3,this._stopOnError=n;var a=r.indexOf("/",r.indexOf("//")+2);this._frame_origin=r.substr(0,a),this._frame=window.document.createElement("iframe"),this._frame.style.visibility="hidden",this._frame.style.position="absolute",this._frame.style.display="none",this._frame.width=0,this._frame.height=0,this._frame.src=r}return e.prototype.load=function(){var e=this;return new Promise(function(t){e._frame.onload=function(){t()},window.document.body.appendChild(e._frame),e._boundMessageEvent=e._message.bind(e),window.addEventListener("message",e._boundMessageEvent,!1)})},e.prototype._message=function(e){e.origin===this._frame_origin&&e.source===this._frame.contentWindow&&("error"===e.data?(r.Log.error("CheckSessionIFrame: error message from check session op iframe"),this._stopOnError&&this.stop()):"changed"===e.data?(r.Log.debug("CheckSessionIFrame: changed message from check session op iframe"),this.stop(),this._callback()):r.Log.debug("CheckSessionIFrame: "+e.data+" message from check session op iframe"))},e.prototype.start=function(e){var t=this;if(this._session_state!==e){r.Log.debug("CheckSessionIFrame.start"),this.stop(),this._session_state=e;var A=function(){t._frame.contentWindow.postMessage(t._client_id+" "+t._session_state,t._frame_origin)};A(),this._timer=window.setInterval(A,this._interval)}},e.prototype.stop=function(){this._session_state=null,this._timer&&(r.Log.debug("CheckSessionIFrame.stop"),window.clearInterval(this._timer),this._timer=null)},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.TokenRevocationClient=void 0;var r=A(0),i=A(2),n=A(1);t.TokenRevocationClient=function(){function e(t){var A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.Global.XMLHttpRequest,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw r.Log.error("TokenRevocationClient.ctor: No settings provided"),new Error("No settings provided.");this._settings=t,this._XMLHttpRequestCtor=A,this._metadataService=new a(this._settings)}return e.prototype.revoke=function(e,t){var A=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"access_token";if(!e)throw r.Log.error("TokenRevocationClient.revoke: No token provided"),new Error("No token provided.");if("access_token"!==i&&"refresh_token"!=i)throw r.Log.error("TokenRevocationClient.revoke: Invalid token type"),new Error("Invalid token type.");return this._metadataService.getRevocationEndpoint().then(function(n){if(n){r.Log.debug("TokenRevocationClient.revoke: Revoking "+i);var a=A._settings.client_id,o=A._settings.client_secret;return A._revoke(n,a,o,e,i)}if(t)throw r.Log.error("TokenRevocationClient.revoke: Revocation not supported"),new Error("Revocation not supported")})},e.prototype._revoke=function(e,t,A,i,n){var a=this;return new Promise(function(o,s){var d=new a._XMLHttpRequestCtor;d.open("POST",e),d.onload=function(){r.Log.debug("TokenRevocationClient.revoke: HTTP response received, status",d.status),200===d.status?o():s(Error(d.statusText+" ("+d.status+")"))},d.onerror=function(){r.Log.debug("TokenRevocationClient.revoke: Network Error."),s("Network Error")};var p="client_id="+encodeURIComponent(t);A&&(p+="&client_secret="+encodeURIComponent(A)),p+="&token_type_hint="+encodeURIComponent(n),p+="&token="+encodeURIComponent(i),d.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),d.send(p)})},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.CordovaPopupWindow=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0);t.CordovaPopupWindow=function(){function e(t){var A=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._promise=new Promise(function(e,t){A._resolve=e,A._reject=t}),this.features=t.popupWindowFeatures||"location=no,toolbar=no,zoom=no",this.target=t.popupWindowTarget||"_blank",this.redirect_uri=t.startUrl,i.Log.debug("CordovaPopupWindow.ctor: redirect_uri: "+this.redirect_uri)}return e.prototype._isInAppBrowserInstalled=function(e){return["cordova-plugin-inappbrowser","cordova-plugin-inappbrowser.inappbrowser","org.apache.cordova.inappbrowser"].some(function(t){return e.hasOwnProperty(t)})},e.prototype.navigate=function(e){if(e&&e.url){if(!window.cordova)return this._error("cordova is undefined");var t=window.cordova.require("cordova/plugin_list").metadata;if(!1===this._isInAppBrowserInstalled(t))return this._error("InAppBrowser plugin not found");this._popup=cordova.InAppBrowser.open(e.url,this.target,this.features),this._popup?(i.Log.debug("CordovaPopupWindow.navigate: popup successfully created"),this._exitCallbackEvent=this._exitCallback.bind(this),this._loadStartCallbackEvent=this._loadStartCallback.bind(this),this._popup.addEventListener("exit",this._exitCallbackEvent,!1),this._popup.addEventListener("loadstart",this._loadStartCallbackEvent,!1)):this._error("Error opening popup window")}else this._error("No url provided");return this.promise},e.prototype._loadStartCallback=function(e){0===e.url.indexOf(this.redirect_uri)&&this._success({url:e.url})},e.prototype._exitCallback=function(e){this._error(e)},e.prototype._success=function(e){this._cleanup(),i.Log.debug("CordovaPopupWindow: Successful response from cordova popup window"),this._resolve(e)},e.prototype._error=function(e){this._cleanup(),i.Log.error(e),this._reject(new Error(e))},e.prototype.close=function(){this._cleanup()},e.prototype._cleanup=function(){this._popup&&(i.Log.debug("CordovaPopupWindow: cleaning up popup"),this._popup.removeEventListener("exit",this._exitCallbackEvent,!1),this._popup.removeEventListener("loadstart",this._loadStartCallbackEvent,!1),this._popup.close()),this._popup=null},r(e,[{key:"promise",get:function(){return this._promise}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0});var r=A(0),i=A(10),n=A(5),a=A(6),o=A(37),s=A(38),d=A(16),p=A(2),l=A(48),c=A(49),g=A(19),h=A(20),u=A(18),E=A(1),m=A(15),C=A(50);t.default={Version:C.Version,Log:r.Log,OidcClient:i.OidcClient,OidcClientSettings:n.OidcClientSettings,WebStorageStateStore:a.WebStorageStateStore,InMemoryWebStorage:o.InMemoryWebStorage,UserManager:s.UserManager,AccessTokenEvents:d.AccessTokenEvents,MetadataService:p.MetadataService,CordovaPopupNavigator:l.CordovaPopupNavigator,CordovaIFrameNavigator:c.CordovaIFrameNavigator,CheckSessionIFrame:g.CheckSessionIFrame,TokenRevocationClient:h.TokenRevocationClient,SessionMonitor:u.SessionMonitor,Global:E.Global,User:m.User},e.exports=t.default},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.ClockService=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.prototype.getEpochTime=function(){return Promise.resolve(Date.now()/1e3|0)},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseValidator=void 0;var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=A(0),n=A(2),a=A(25),o=A(11),s=A(12),d=A(4),p=["nonce","at_hash","iat","nbf","exp","aud","iss","c_hash"];t.ResponseValidator=function(){function e(t){var A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.MetadataService,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.UserInfoService,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:d.JoseUtil,p=arguments.length>4&&void 0!==arguments[4]?arguments[4]:o.TokenClient;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw i.Log.error("ResponseValidator.ctor: No settings passed to ResponseValidator"),new Error("settings");this._settings=t,this._metadataService=new A(this._settings),this._userInfoService=new r(this._settings),this._joseUtil=s,this._tokenClient=new p(this._settings)}return e.prototype.validateSigninResponse=function(e,t){var A=this;return i.Log.debug("ResponseValidator.validateSigninResponse"),this._processSigninParams(e,t).then(function(t){return i.Log.debug("ResponseValidator.validateSigninResponse: state processed"),A._validateTokens(e,t).then(function(t){return i.Log.debug("ResponseValidator.validateSigninResponse: tokens validated"),A._processClaims(e,t).then(function(e){return i.Log.debug("ResponseValidator.validateSigninResponse: claims processed"),e})})})},e.prototype.validateSignoutResponse=function(e,t){return e.id!==t.state?(i.Log.error("ResponseValidator.validateSignoutResponse: State does not match"),Promise.reject(new Error("State does not match"))):(i.Log.debug("ResponseValidator.validateSignoutResponse: state validated"),t.state=e.data,t.error?(i.Log.warn("ResponseValidator.validateSignoutResponse: Response was error",t.error),Promise.reject(new s.ErrorResponse(t))):Promise.resolve(t))},e.prototype._processSigninParams=function(e,t){if(e.id!==t.state)return i.Log.error("ResponseValidator._processSigninParams: State does not match"),Promise.reject(new Error("State does not match"));if(!e.client_id)return i.Log.error("ResponseValidator._processSigninParams: No client_id on state"),Promise.reject(new Error("No client_id on state"));if(!e.authority)return i.Log.error("ResponseValidator._processSigninParams: No authority on state"),Promise.reject(new Error("No authority on state"));if(this._settings.authority){if(this._settings.authority&&this._settings.authority!==e.authority)return i.Log.error("ResponseValidator._processSigninParams: authority mismatch on settings vs. signin state"),Promise.reject(new Error("authority mismatch on settings vs. signin state"))}else this._settings.authority=e.authority;if(this._settings.client_id){if(this._settings.client_id&&this._settings.client_id!==e.client_id)return i.Log.error("ResponseValidator._processSigninParams: client_id mismatch on settings vs. signin state"),Promise.reject(new Error("client_id mismatch on settings vs. signin state"))}else this._settings.client_id=e.client_id;return i.Log.debug("ResponseValidator._processSigninParams: state validated"),t.state=e.data,t.error?(i.Log.warn("ResponseValidator._processSigninParams: Response was error",t.error),Promise.reject(new s.ErrorResponse(t))):e.nonce&&!t.id_token?(i.Log.error("ResponseValidator._processSigninParams: Expecting id_token in response"),Promise.reject(new Error("No id_token in response"))):!e.nonce&&t.id_token?(i.Log.error("ResponseValidator._processSigninParams: Not expecting id_token in response"),Promise.reject(new Error("Unexpected id_token in response"))):e.code_verifier&&!t.code?(i.Log.error("ResponseValidator._processSigninParams: Expecting code in response"),Promise.reject(new Error("No code in response"))):!e.code_verifier&&t.code?(i.Log.error("ResponseValidator._processSigninParams: Not expecting code in response"),Promise.reject(new Error("Unexpected code in response"))):(t.scope||(t.scope=e.scope),Promise.resolve(t))},e.prototype._processClaims=function(e,t){var A=this;if(t.isOpenIdConnect){if(i.Log.debug("ResponseValidator._processClaims: response is OIDC, processing claims"),t.profile=this._filterProtocolClaims(t.profile),!0!==e.skipUserInfo&&this._settings.loadUserInfo&&t.access_token)return i.Log.debug("ResponseValidator._processClaims: loading user info"),this._userInfoService.getClaims(t.access_token).then(function(e){return i.Log.debug("ResponseValidator._processClaims: user info claims received from user info endpoint"),e.sub!==t.profile.sub?(i.Log.error("ResponseValidator._processClaims: sub from user info endpoint does not match sub in id_token"),Promise.reject(new Error("sub from user info endpoint does not match sub in id_token"))):(t.profile=A._mergeClaims(t.profile,e),i.Log.debug("ResponseValidator._processClaims: user info claims received, updated profile:",t.profile),t)});i.Log.debug("ResponseValidator._processClaims: not loading user info")}else i.Log.debug("ResponseValidator._processClaims: response is not OIDC, not processing claims");return Promise.resolve(t)},e.prototype._mergeClaims=function(e,t){var A=Object.assign({},e);for(var i in t){var n=t[i];Array.isArray(n)||(n=[n]);for(var a=0;a<n.length;a++){var o=n[a];A[i]?Array.isArray(A[i])?A[i].indexOf(o)<0&&A[i].push(o):A[i]!==o&&("object"===(void 0===o?"undefined":r(o))&&this._settings.mergeClaims?A[i]=this._mergeClaims(A[i],o):A[i]=[A[i],o]):A[i]=o}}return A},e.prototype._filterProtocolClaims=function(e){i.Log.debug("ResponseValidator._filterProtocolClaims, incoming claims:",e);var t=Object.assign({},e);return this._settings._filterProtocolClaims?(p.forEach(function(e){delete t[e]}),i.Log.debug("ResponseValidator._filterProtocolClaims: protocol claims filtered",t)):i.Log.debug("ResponseValidator._filterProtocolClaims: protocol claims not filtered"),t},e.prototype._validateTokens=function(e,t){return t.code?(i.Log.debug("ResponseValidator._validateTokens: Validating code"),this._processCode(e,t)):t.id_token?t.access_token?(i.Log.debug("ResponseValidator._validateTokens: Validating id_token and access_token"),this._validateIdTokenAndAccessToken(e,t)):(i.Log.debug("ResponseValidator._validateTokens: Validating id_token"),this._validateIdToken(e,t)):(i.Log.debug("ResponseValidator._validateTokens: No code to process or id_token to validate"),Promise.resolve(t))},e.prototype._processCode=function(e,t){var A=this,n={client_id:e.client_id,client_secret:e.client_secret,code:t.code,redirect_uri:e.redirect_uri,code_verifier:e.code_verifier};return e.extraTokenParams&&"object"===r(e.extraTokenParams)&&Object.assign(n,e.extraTokenParams),this._tokenClient.exchangeCode(n).then(function(r){for(var n in r)t[n]=r[n];return t.id_token?(i.Log.debug("ResponseValidator._processCode: token response successful, processing id_token"),A._validateIdTokenAttributes(e,t)):(i.Log.debug("ResponseValidator._processCode: token response successful, returning response"),t)})},e.prototype._validateIdTokenAttributes=function(e,t){var A=this;return this._metadataService.getIssuer().then(function(r){var n=e.client_id,a=A._settings.clockSkew;return i.Log.debug("ResponseValidator._validateIdTokenAttributes: Validaing JWT attributes; using clock skew (in seconds) of: ",a),A._settings.getEpochTime().then(function(o){return A._joseUtil.validateJwtAttributes(t.id_token,r,n,a,o).then(function(A){return e.nonce&&e.nonce!==A.nonce?(i.Log.error("ResponseValidator._validateIdTokenAttributes: Invalid nonce in id_token"),Promise.reject(new Error("Invalid nonce in id_token"))):A.sub?(t.profile=A,t):(i.Log.error("ResponseValidator._validateIdTokenAttributes: No sub present in id_token"),Promise.reject(new Error("No sub present in id_token")))})})})},e.prototype._validateIdTokenAndAccessToken=function(e,t){var A=this;return this._validateIdToken(e,t).then(function(e){return A._validateAccessToken(e)})},e.prototype._getSigningKeyForJwt=function(e){var t=this;return this._metadataService.getSigningKeys().then(function(A){var r=e.header.kid;if(!A)return i.Log.error("ResponseValidator._validateIdToken: No signing keys from metadata"),Promise.reject(new Error("No signing keys from metadata"));i.Log.debug("ResponseValidator._validateIdToken: Received signing keys");var n=void 0;if(r)n=A.filter(function(e){return e.kid===r})[0];else{if((A=t._filterByAlg(A,e.header.alg)).length>1)return i.Log.error("ResponseValidator._validateIdToken: No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));n=A[0]}return Promise.resolve(n)})},e.prototype._getSigningKeyForJwtWithSingleRetry=function(e){var t=this;return this._getSigningKeyForJwt(e).then(function(A){return A?Promise.resolve(A):(t._metadataService.resetSigningKeys(),t._getSigningKeyForJwt(e))})},e.prototype._validateIdToken=function(e,t){var A=this;if(!e.nonce)return i.Log.error("ResponseValidator._validateIdToken: No nonce on state"),Promise.reject(new Error("No nonce on state"));var r=this._joseUtil.parseJwt(t.id_token);return r&&r.header&&r.payload?e.nonce!==r.payload.nonce?(i.Log.error("ResponseValidator._validateIdToken: Invalid nonce in id_token"),Promise.reject(new Error("Invalid nonce in id_token"))):this._metadataService.getIssuer().then(function(n){return i.Log.debug("ResponseValidator._validateIdToken: Received issuer"),A._getSigningKeyForJwtWithSingleRetry(r).then(function(a){if(!a)return i.Log.error("ResponseValidator._validateIdToken: No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys"));var o=e.client_id,s=A._settings.clockSkew;return i.Log.debug("ResponseValidator._validateIdToken: Validaing JWT; using clock skew (in seconds) of: ",s),A._joseUtil.validateJwt(t.id_token,a,n,o,s).then(function(){return i.Log.debug("ResponseValidator._validateIdToken: JWT validation successful"),r.payload.sub?(t.profile=r.payload,t):(i.Log.error("ResponseValidator._validateIdToken: No sub present in id_token"),Promise.reject(new Error("No sub present in id_token")))})})}):(i.Log.error("ResponseValidator._validateIdToken: Failed to parse id_token",r),Promise.reject(new Error("Failed to parse id_token")))},e.prototype._filterByAlg=function(e,t){var A=null;if(t.startsWith("RS"))A="RSA";else if(t.startsWith("PS"))A="PS";else{if(!t.startsWith("ES"))return i.Log.debug("ResponseValidator._filterByAlg: alg not supported: ",t),[];A="EC"}return i.Log.debug("ResponseValidator._filterByAlg: Looking for keys that match kty: ",A),e=e.filter(function(e){return e.kty===A}),i.Log.debug("ResponseValidator._filterByAlg: Number of keys that match kty: ",A,e.length),e},e.prototype._validateAccessToken=function(e){if(!e.profile)return i.Log.error("ResponseValidator._validateAccessToken: No profile loaded from id_token"),Promise.reject(new Error("No profile loaded from id_token"));if(!e.profile.at_hash)return i.Log.error("ResponseValidator._validateAccessToken: No at_hash in id_token"),Promise.reject(new Error("No at_hash in id_token"));if(!e.id_token)return i.Log.error("ResponseValidator._validateAccessToken: No id_token"),Promise.reject(new Error("No id_token"));var t=this._joseUtil.parseJwt(e.id_token);if(!t||!t.header)return i.Log.error("ResponseValidator._validateAccessToken: Failed to parse id_token",t),Promise.reject(new Error("Failed to parse id_token"));var A=t.header.alg;if(!A||5!==A.length)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",A),Promise.reject(new Error("Unsupported alg: "+A));var r=A.substr(2,3);if(!r)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",A,r),Promise.reject(new Error("Unsupported alg: "+A));if(256!==(r=parseInt(r))&&384!==r&&512!==r)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",A,r),Promise.reject(new Error("Unsupported alg: "+A));var n="sha"+r,a=this._joseUtil.hashString(e.access_token,n);if(!a)return i.Log.error("ResponseValidator._validateAccessToken: access_token hash failed:",n),Promise.reject(new Error("Failed to validate at_hash"));var o=a.substr(0,a.length/2),s=this._joseUtil.hexToBase64Url(o);return s!==e.profile.at_hash?(i.Log.error("ResponseValidator._validateAccessToken: Failed to validate at_hash",s,e.profile.at_hash),Promise.reject(new Error("Failed to validate at_hash"))):(i.Log.debug("ResponseValidator._validateAccessToken: success"),Promise.resolve(e))},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.UserInfoService=void 0;var r=A(7),i=A(2),n=A(0),a=A(4);t.UserInfoService=function(){function e(t){var A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.JsonService,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.JoseUtil;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw n.Log.error("UserInfoService.ctor: No settings passed"),new Error("settings");this._settings=t,this._jsonService=new A(void 0,void 0,this._getClaimsFromJwt.bind(this)),this._metadataService=new o(this._settings),this._joseUtil=s}return e.prototype.getClaims=function(e){var t=this;return e?this._metadataService.getUserInfoEndpoint().then(function(A){return n.Log.debug("UserInfoService.getClaims: received userinfo url",A),t._jsonService.getJson(A,e).then(function(e){return n.Log.debug("UserInfoService.getClaims: claims received",e),e})}):(n.Log.error("UserInfoService.getClaims: No token passed"),Promise.reject(new Error("A token is required")))},e.prototype._getClaimsFromJwt=function e(t){var A=this;try{var r=this._joseUtil.parseJwt(t.responseText);if(!r||!r.header||!r.payload)return n.Log.error("UserInfoService._getClaimsFromJwt: Failed to parse JWT",r),Promise.reject(new Error("Failed to parse id_token"));var i=r.header.kid,a=void 0;switch(this._settings.userInfoJwtIssuer){case"OP":a=this._metadataService.getIssuer();break;case"ANY":a=Promise.resolve(r.payload.iss);break;default:a=Promise.resolve(this._settings.userInfoJwtIssuer)}return a.then(function(e){return n.Log.debug("UserInfoService._getClaimsFromJwt: Received issuer:"+e),A._metadataService.getSigningKeys().then(function(a){if(!a)return n.Log.error("UserInfoService._getClaimsFromJwt: No signing keys from metadata"),Promise.reject(new Error("No signing keys from metadata"));n.Log.debug("UserInfoService._getClaimsFromJwt: Received signing keys");var o=void 0;if(i)o=a.filter(function(e){return e.kid===i})[0];else{if((a=A._filterByAlg(a,r.header.alg)).length>1)return n.Log.error("UserInfoService._getClaimsFromJwt: No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));o=a[0]}if(!o)return n.Log.error("UserInfoService._getClaimsFromJwt: No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys"));var s=A._settings.client_id,d=A._settings.clockSkew;return n.Log.debug("UserInfoService._getClaimsFromJwt: Validaing JWT; using clock skew (in seconds) of: ",d),A._joseUtil.validateJwt(t.responseText,o,e,s,d,void 0,!0).then(function(){return n.Log.debug("UserInfoService._getClaimsFromJwt: JWT validation successful"),r.payload})})})}catch(e){return n.Log.error("UserInfoService._getClaimsFromJwt: Error parsing JWT response",e.message),void reject(e)}},e.prototype._filterByAlg=function(e,t){var A=null;if(t.startsWith("RS"))A="RSA";else if(t.startsWith("PS"))A="PS";else{if(!t.startsWith("ES"))return n.Log.debug("UserInfoService._filterByAlg: alg not supported: ",t),[];A="EC"}return n.Log.debug("UserInfoService._filterByAlg: Looking for keys that match kty: ",A),e=e.filter(function(e){return e.kty===A}),n.Log.debug("UserInfoService._filterByAlg: Number of keys that match kty: ",A,e.length),e},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.AllowedSigningAlgs=t.b64tohex=t.hextob64u=t.crypto=t.X509=t.KeyUtil=t.jws=void 0;var r=A(27);t.jws=r.jws,t.KeyUtil=r.KEYUTIL,t.X509=r.X509,t.crypto=r.crypto,t.hextob64u=r.hextob64u,t.b64tohex=r.b64tohex,t.AllowedSigningAlgs=["RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"]},function(e,t,A){(function(e){Object.defineProperty(t,"__esModule",{value:!0});var A,r,i,n,a,o,s,d,p,l,c,g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h={userAgent:!1},u={},E=E||(A=Math,i=(r={}).lib={},n=i.Base=function(){function e(){}return{extend:function(t){e.prototype=this;var A=new e;return t&&A.mixIn(t),A.hasOwnProperty("init")||(A.init=function(){A.$super.init.apply(this,arguments)}),A.init.prototype=A,A.$super=this,A},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),a=i.WordArray=n.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||s).stringify(this)},concat:function(e){var t=this.words,A=e.words,r=this.sigBytes,i=e.sigBytes;if(this.clamp(),r%4)for(var n=0;n<i;n++){var a=A[n>>>2]>>>24-n%4*8&255;t[r+n>>>2]|=a<<24-(r+n)%4*8}else for(n=0;n<i;n+=4)t[r+n>>>2]=A[n>>>2];return this.sigBytes+=i,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=A.ceil(t/4)},clone:function(){var e=n.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],r=0;r<e;r+=4)t.push(4294967296*A.random()|0);return new a.init(t,e)}}),o=r.enc={},s=o.Hex={stringify:function(e){for(var t=e.words,A=e.sigBytes,r=[],i=0;i<A;i++){var n=t[i>>>2]>>>24-i%4*8&255;r.push((n>>>4).toString(16)),r.push((15&n).toString(16))}return r.join("")},parse:function(e){for(var t=e.length,A=[],r=0;r<t;r+=2)A[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new a.init(A,t/2)}},d=o.Latin1={stringify:function(e){for(var t=e.words,A=e.sigBytes,r=[],i=0;i<A;i++){var n=t[i>>>2]>>>24-i%4*8&255;r.push(String.fromCharCode(n))}return r.join("")},parse:function(e){for(var t=e.length,A=[],r=0;r<t;r++)A[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new a.init(A,t)}},p=o.Utf8={stringify:function(e){try{return decodeURIComponent(escape(d.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return d.parse(unescape(encodeURIComponent(e)))}},l=i.BufferedBlockAlgorithm=n.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=p.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,r=t.words,i=t.sigBytes,n=this.blockSize,o=i/(4*n),s=(o=e?A.ceil(o):A.max((0|o)-this._minBufferSize,0))*n,d=A.min(4*s,i);if(s){for(var p=0;p<s;p+=n)this._doProcessBlock(r,p);var l=r.splice(0,s);t.sigBytes-=d}return new a.init(l,d)},clone:function(){var e=n.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0}),i.Hasher=l.extend({cfg:n.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(e){return function(t,A){return new e.init(A).finalize(t)}},_createHmacHelper:function(e){return function(t,A){return new c.HMAC.init(e,A).finalize(t)}}}),c=r.algo={},r);!function(){var e,t=(e=E).lib,A=t.Base,r=t.WordArray;(e=e.x64={}).Word=A.extend({init:function(e,t){this.high=e,this.low=t}}),e.WordArray=A.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:8*e.length},toX32:function(){for(var e=this.words,t=e.length,A=[],i=0;i<t;i++){var n=e[i];A.push(n.high),A.push(n.low)}return r.create(A,this.sigBytes)},clone:function(){for(var e=A.clone.call(this),t=e.words=this.words.slice(0),r=t.length,i=0;i<r;i++)t[i]=t[i].clone();return e}})}(),function(){var e=E,t=e.lib.WordArray;e.enc.Base64={stringify:function(e){var t=e.words,A=e.sigBytes,r=this._map;e.clamp(),e=[];for(var i=0;i<A;i+=3)for(var n=(t[i>>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,a=0;4>a&&i+.75*a<A;a++)e.push(r.charAt(n>>>6*(3-a)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var A=e.length,r=this._map;(i=r.charAt(64))&&-1!=(i=e.indexOf(i))&&(A=i);for(var i=[],n=0,a=0;a<A;a++)if(a%4){var o=r.indexOf(e.charAt(a-1))<<a%4*2,s=r.indexOf(e.charAt(a))>>>6-a%4*2;i[n>>>2]|=(o|s)<<24-n%4*8,n++}return t.create(i,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),function(e){for(var t=E,A=(i=t.lib).WordArray,r=i.Hasher,i=t.algo,n=[],a=[],o=function(e){return 4294967296*(e-(0|e))|0},s=2,d=0;64>d;){var p;e:{p=s;for(var l=e.sqrt(p),c=2;c<=l;c++)if(!(p%c)){p=!1;break e}p=!0}p&&(8>d&&(n[d]=o(e.pow(s,.5))),a[d]=o(e.pow(s,1/3)),d++),s++}var g=[];i=i.SHA256=r.extend({_doReset:function(){this._hash=new A.init(n.slice(0))},_doProcessBlock:function(e,t){for(var A=this._hash.words,r=A[0],i=A[1],n=A[2],o=A[3],s=A[4],d=A[5],p=A[6],l=A[7],c=0;64>c;c++){if(16>c)g[c]=0|e[t+c];else{var h=g[c-15],u=g[c-2];g[c]=((h<<25|h>>>7)^(h<<14|h>>>18)^h>>>3)+g[c-7]+((u<<15|u>>>17)^(u<<13|u>>>19)^u>>>10)+g[c-16]}h=l+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&d^~s&p)+a[c]+g[c],u=((r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22))+(r&i^r&n^i&n),l=p,p=d,d=s,s=o+h|0,o=n,n=i,i=r,r=h+u|0}A[0]=A[0]+r|0,A[1]=A[1]+i|0,A[2]=A[2]+n|0,A[3]=A[3]+o|0,A[4]=A[4]+s|0,A[5]=A[5]+d|0,A[6]=A[6]+p|0,A[7]=A[7]+l|0},_doFinalize:function(){var t=this._data,A=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return A[i>>>5]|=128<<24-i%32,A[14+(i+64>>>9<<4)]=e.floor(r/4294967296),A[15+(i+64>>>9<<4)]=r,t.sigBytes=4*A.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}}),t.SHA256=r._createHelper(i),t.HmacSHA256=r._createHmacHelper(i)}(Math),function(){function e(){return r.create.apply(r,arguments)}for(var t=E,A=t.lib.Hasher,r=(n=t.x64).Word,i=n.WordArray,n=t.algo,a=[e(1116352408,3609767458),e(1899447441,602891725),e(3049323471,3964484399),e(3921009573,2173295548),e(961987163,4081628472),e(1508970993,3053834265),e(2453635748,2937671579),e(2870763221,3664609560),e(3624381080,2734883394),e(310598401,1164996542),e(607225278,1323610764),e(1426881987,3590304994),e(1925078388,4068182383),e(2162078206,991336113),e(2614888103,633803317),e(3248222580,3479774868),e(3835390401,2666613458),e(4022224774,944711139),e(264347078,2341262773),e(604807628,2007800933),e(770255983,1495990901),e(1249150122,1856431235),e(1555081692,3175218132),e(1996064986,2198950837),e(2554220882,3999719339),e(2821834349,766784016),e(2952996808,2566594879),e(3210313671,3203337956),e(3336571891,1034457026),e(3584528711,2466948901),e(113926993,3758326383),e(338241895,168717936),e(666307205,1188179964),e(773529912,1546045734),e(1294757372,1522805485),e(1396182291,2643833823),e(1695183700,2343527390),e(1986661051,1014477480),e(2177026350,1206759142),e(2456956037,344077627),e(2730485921,1290863460),e(2820302411,3158454273),e(3259730800,3505952657),e(3345764771,106217008),e(3516065817,3606008344),e(3600352804,1432725776),e(4094571909,1467031594),e(275423344,851169720),e(430227734,3100823752),e(506948616,1363258195),e(659060556,3750685593),e(883997877,3785050280),e(958139571,3318307427),e(1322822218,3812723403),e(1537002063,2003034995),e(1747873779,3602036899),e(1955562222,1575990012),e(2024104815,1125592928),e(2227730452,2716904306),e(2361852424,442776044),e(2428436474,593698344),e(2756734187,3733110249),e(3204031479,2999351573),e(3329325298,3815920427),e(3391569614,3928383900),e(3515267271,566280711),e(3940187606,3454069534),e(4118630271,4000239992),e(116418474,1914138554),e(174292421,2731055270),e(289380356,3203993006),e(460393269,320620315),e(685471733,587496836),e(852142971,1086792851),e(1017036298,365543100),e(1126000580,2618297676),e(1288033470,3409855158),e(1501505948,4234509866),e(1607167915,987167468),e(1816402316,1246189591)],o=[],s=0;80>s;s++)o[s]=e();n=n.SHA512=A.extend({_doReset:function(){this._hash=new i.init([new r.init(1779033703,4089235720),new r.init(3144134277,2227873595),new r.init(1013904242,4271175723),new r.init(2773480762,1595750129),new r.init(1359893119,2917565137),new r.init(2600822924,725511199),new r.init(528734635,4215389547),new r.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var A=(l=this._hash.words)[0],r=l[1],i=l[2],n=l[3],s=l[4],d=l[5],p=l[6],l=l[7],c=A.high,g=A.low,h=r.high,u=r.low,E=i.high,m=i.low,C=n.high,f=n.low,Q=s.high,I=s.low,B=d.high,y=d.low,w=p.high,v=p.low,S=l.high,b=l.low,D=c,F=g,R=h,k=u,N=E,_=m,U=C,T=f,L=Q,M=I,x=B,V=y,H=w,P=v,J=S,Y=b,G=0;80>G;G++){var O=o[G];if(16>G)var q=O.high=0|e[t+2*G],W=O.low=0|e[t+2*G+1];else{q=((W=(q=o[G-15]).high)>>>1|(j=q.low)<<31)^(W>>>8|j<<24)^W>>>7;var j=(j>>>1|W<<31)^(j>>>8|W<<24)^(j>>>7|W<<25),K=((W=(K=o[G-2]).high)>>>19|(Z=K.low)<<13)^(W<<3|Z>>>29)^W>>>6,Z=(Z>>>19|W<<13)^(Z<<3|W>>>29)^(Z>>>6|W<<26),X=(W=o[G-7]).high,z=($=o[G-16]).high,$=$.low;q=(q=(q=q+X+((W=j+W.low)>>>0<j>>>0?1:0))+K+((W+=Z)>>>0<Z>>>0?1:0))+z+((W+=$)>>>0<$>>>0?1:0),O.high=q,O.low=W}X=L&x^~L&H,$=M&V^~M&P,O=D&R^D&N^R&N;var ee=F&k^F&_^k&_,te=(j=(D>>>28|F<<4)^(D<<30|F>>>2)^(D<<25|F>>>7),K=(F>>>28|D<<4)^(F<<30|D>>>2)^(F<<25|D>>>7),(Z=a[G]).high),Ae=Z.low;z=J+((L>>>14|M<<18)^(L>>>18|M<<14)^(L<<23|M>>>9))+((Z=Y+((M>>>14|L<<18)^(M>>>18|L<<14)^(M<<23|L>>>9)))>>>0<Y>>>0?1:0),J=H,Y=P,H=x,P=V,x=L,V=M,L=U+(z=(z=(z=z+X+((Z+=$)>>>0<$>>>0?1:0))+te+((Z+=Ae)>>>0<Ae>>>0?1:0))+q+((Z+=W)>>>0<W>>>0?1:0))+((M=T+Z|0)>>>0<T>>>0?1:0)|0,U=N,T=_,N=R,_=k,R=D,k=F,D=z+(O=j+O+((W=K+ee)>>>0<K>>>0?1:0))+((F=Z+W|0)>>>0<Z>>>0?1:0)|0}g=A.low=g+F,A.high=c+D+(g>>>0<F>>>0?1:0),u=r.low=u+k,r.high=h+R+(u>>>0<k>>>0?1:0),m=i.low=m+_,i.high=E+N+(m>>>0<_>>>0?1:0),f=n.low=f+T,n.high=C+U+(f>>>0<T>>>0?1:0),I=s.low=I+M,s.high=Q+L+(I>>>0<M>>>0?1:0),y=d.low=y+V,d.high=B+x+(y>>>0<V>>>0?1:0),v=p.low=v+P,p.high=w+H+(v>>>0<P>>>0?1:0),b=l.low=b+Y,l.high=S+J+(b>>>0<Y>>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,A=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(r+128>>>10<<5)]=Math.floor(A/4294967296),t[31+(r+128>>>10<<5)]=A,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=A.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32}),t.SHA512=A._createHelper(n),t.HmacSHA512=A._createHmacHelper(n)}(),function(){var e=E,t=(i=e.x64).Word,A=i.WordArray,r=(i=e.algo).SHA512,i=i.SHA384=r.extend({_doReset:function(){this._hash=new A.init([new t.init(3418070365,3238371032),new t.init(1654270250,914150663),new t.init(2438529370,812702999),new t.init(355462360,4144912697),new t.init(1731405415,4290775857),new t.init(2394180231,1750603025),new t.init(3675008525,1694076839),new t.init(1203062813,3204075428)])},_doFinalize:function(){var e=r._doFinalize.call(this);return e.sigBytes-=16,e}});e.SHA384=r._createHelper(i),e.HmacSHA384=r._createHmacHelper(i)}();
|
|
5
|
+
/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/
|
|
6
|
+
*/
|
|
7
|
+
var m,C="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function f(e){var t,A,r="";for(t=0;t+3<=e.length;t+=3)A=parseInt(e.substring(t,t+3),16),r+=C.charAt(A>>6)+C.charAt(63&A);for(t+1==e.length?(A=parseInt(e.substring(t,t+1),16),r+=C.charAt(A<<2)):t+2==e.length&&(A=parseInt(e.substring(t,t+2),16),r+=C.charAt(A>>2)+C.charAt((3&A)<<4));(3&r.length)>0;)r+="=";return r}function Q(e){var t,A,r,i="",n=0;for(t=0;t<e.length&&"="!=e.charAt(t);++t)(r=C.indexOf(e.charAt(t)))<0||(0==n?(i+=b(r>>2),A=3&r,n=1):1==n?(i+=b(A<<2|r>>4),A=15&r,n=2):2==n?(i+=b(A),i+=b(r>>2),A=3&r,n=3):(i+=b(A<<2|r>>4),i+=b(15&r),n=0));return 1==n&&(i+=b(A<<2)),i}function I(e){var t,A=Q(e),r=new Array;for(t=0;2*t<A.length;++t)r[t]=parseInt(A.substring(2*t,2*t+2),16);return r}function B(e,t,A){null!=e&&("number"==typeof e?this.fromNumber(e,t,A):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function y(){return new B(null)}"Microsoft Internet Explorer"==h.appName?(B.prototype.am=function(e,t,A,r,i,n){for(var a=32767&t,o=t>>15;--n>=0;){var s=32767&this[e],d=this[e++]>>15,p=o*s+d*a;i=((s=a*s+((32767&p)<<15)+A[r]+(1073741823&i))>>>30)+(p>>>15)+o*d+(i>>>30),A[r++]=1073741823&s}return i},m=30):"Netscape"!=h.appName?(B.prototype.am=function(e,t,A,r,i,n){for(;--n>=0;){var a=t*this[e++]+A[r]+i;i=Math.floor(a/67108864),A[r++]=67108863&a}return i},m=26):(B.prototype.am=function(e,t,A,r,i,n){for(var a=16383&t,o=t>>14;--n>=0;){var s=16383&this[e],d=this[e++]>>14,p=o*s+d*a;i=((s=a*s+((16383&p)<<14)+A[r]+i)>>28)+(p>>14)+o*d,A[r++]=268435455&s}return i},m=28),B.prototype.DB=m,B.prototype.DM=(1<<m)-1,B.prototype.DV=1<<m,B.prototype.FV=Math.pow(2,52),B.prototype.F1=52-m,B.prototype.F2=2*m-52;var w,v,S=new Array;for(w="0".charCodeAt(0),v=0;v<=9;++v)S[w++]=v;for(w="a".charCodeAt(0),v=10;v<36;++v)S[w++]=v;for(w="A".charCodeAt(0),v=10;v<36;++v)S[w++]=v;function b(e){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(e)}function D(e,t){var A=S[e.charCodeAt(t)];return null==A?-1:A}function F(e){var t=y();return t.fromInt(e),t}function R(e){var t,A=1;return 0!=(t=e>>>16)&&(e=t,A+=16),0!=(t=e>>8)&&(e=t,A+=8),0!=(t=e>>4)&&(e=t,A+=4),0!=(t=e>>2)&&(e=t,A+=2),0!=(t=e>>1)&&(e=t,A+=1),A}function k(e){this.m=e}function N(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function _(e,t){return e&t}function U(e,t){return e|t}function T(e,t){return e^t}function L(e,t){return e&~t}function M(e){if(0==e)return-1;var t=0;return!(65535&e)&&(e>>=16,t+=16),!(255&e)&&(e>>=8,t+=8),!(15&e)&&(e>>=4,t+=4),!(3&e)&&(e>>=2,t+=2),!(1&e)&&++t,t}function x(e){for(var t=0;0!=e;)e&=e-1,++t;return t}function V(){}function H(e){return e}function P(e){this.r2=y(),this.q3=y(),B.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}k.prototype.convert=function(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e},k.prototype.revert=function(e){return e},k.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},k.prototype.mulTo=function(e,t,A){e.multiplyTo(t,A),this.reduce(A)},k.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},N.prototype.convert=function(e){var t=y();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(B.ZERO)>0&&this.m.subTo(t,t),t},N.prototype.revert=function(e){var t=y();return e.copyTo(t),this.reduce(t),t},N.prototype.reduce=function(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t<this.m.t;++t){var A=32767&e[t],r=A*this.mpl+((A*this.mph+(e[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(e[A=t+this.m.t]+=this.m.am(0,r,e,t,0,this.m.t);e[A]>=e.DV;)e[A]-=e.DV,e[++A]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},N.prototype.mulTo=function(e,t,A){e.multiplyTo(t,A),this.reduce(A)},N.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},B.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s},B.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+this.DV:this.t=0},B.prototype.fromString=function(e,t){var A;if(16==t)A=4;else if(8==t)A=3;else if(256==t)A=8;else if(2==t)A=1;else if(32==t)A=5;else{if(4!=t)return void this.fromRadix(e,t);A=2}this.t=0,this.s=0;for(var r=e.length,i=!1,n=0;--r>=0;){var a=8==A?255&e[r]:D(e,r);a<0?"-"==e.charAt(r)&&(i=!0):(i=!1,0==n?this[this.t++]=a:n+A>this.DB?(this[this.t-1]|=(a&(1<<this.DB-n)-1)<<n,this[this.t++]=a>>this.DB-n):this[this.t-1]|=a<<n,(n+=A)>=this.DB&&(n-=this.DB))}8==A&&!!(128&e[0])&&(this.s=-1,n>0&&(this[this.t-1]|=(1<<this.DB-n)-1<<n)),this.clamp(),i&&B.ZERO.subTo(this,this)},B.prototype.clamp=function(){for(var e=this.s&this.DM;this.t>0&&this[this.t-1]==e;)--this.t},B.prototype.dlShiftTo=function(e,t){var A;for(A=this.t-1;A>=0;--A)t[A+e]=this[A];for(A=e-1;A>=0;--A)t[A]=0;t.t=this.t+e,t.s=this.s},B.prototype.drShiftTo=function(e,t){for(var A=e;A<this.t;++A)t[A-e]=this[A];t.t=Math.max(this.t-e,0),t.s=this.s},B.prototype.lShiftTo=function(e,t){var A,r=e%this.DB,i=this.DB-r,n=(1<<i)-1,a=Math.floor(e/this.DB),o=this.s<<r&this.DM;for(A=this.t-1;A>=0;--A)t[A+a+1]=this[A]>>i|o,o=(this[A]&n)<<r;for(A=a-1;A>=0;--A)t[A]=0;t[a]=o,t.t=this.t+a+1,t.s=this.s,t.clamp()},B.prototype.rShiftTo=function(e,t){t.s=this.s;var A=Math.floor(e/this.DB);if(A>=this.t)t.t=0;else{var r=e%this.DB,i=this.DB-r,n=(1<<r)-1;t[0]=this[A]>>r;for(var a=A+1;a<this.t;++a)t[a-A-1]|=(this[a]&n)<<i,t[a-A]=this[a]>>r;r>0&&(t[this.t-A-1]|=(this.s&n)<<i),t.t=this.t-A,t.clamp()}},B.prototype.subTo=function(e,t){for(var A=0,r=0,i=Math.min(e.t,this.t);A<i;)r+=this[A]-e[A],t[A++]=r&this.DM,r>>=this.DB;if(e.t<this.t){for(r-=e.s;A<this.t;)r+=this[A],t[A++]=r&this.DM,r>>=this.DB;r+=this.s}else{for(r+=this.s;A<e.t;)r-=e[A],t[A++]=r&this.DM,r>>=this.DB;r-=e.s}t.s=r<0?-1:0,r<-1?t[A++]=this.DV+r:r>0&&(t[A++]=r),t.t=A,t.clamp()},B.prototype.multiplyTo=function(e,t){var A=this.abs(),r=e.abs(),i=A.t;for(t.t=i+r.t;--i>=0;)t[i]=0;for(i=0;i<r.t;++i)t[i+A.t]=A.am(0,r[i],t,i,0,A.t);t.s=0,t.clamp(),this.s!=e.s&&B.ZERO.subTo(t,t)},B.prototype.squareTo=function(e){for(var t=this.abs(),A=e.t=2*t.t;--A>=0;)e[A]=0;for(A=0;A<t.t-1;++A){var r=t.am(A,t[A],e,2*A,0,1);(e[A+t.t]+=t.am(A+1,2*t[A],e,2*A+1,r,t.t-A-1))>=t.DV&&(e[A+t.t]-=t.DV,e[A+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(A,t[A],e,2*A,0,1)),e.s=0,e.clamp()},B.prototype.divRemTo=function(e,t,A){var r=e.abs();if(!(r.t<=0)){var i=this.abs();if(i.t<r.t)return null!=t&&t.fromInt(0),void(null!=A&&this.copyTo(A));null==A&&(A=y());var n=y(),a=this.s,o=e.s,s=this.DB-R(r[r.t-1]);s>0?(r.lShiftTo(s,n),i.lShiftTo(s,A)):(r.copyTo(n),i.copyTo(A));var d=n.t,p=n[d-1];if(0!=p){var l=p*(1<<this.F1)+(d>1?n[d-2]>>this.F2:0),c=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,u=A.t,E=u-d,m=null==t?y():t;for(n.dlShiftTo(E,m),A.compareTo(m)>=0&&(A[A.t++]=1,A.subTo(m,A)),B.ONE.dlShiftTo(d,m),m.subTo(n,n);n.t<d;)n[n.t++]=0;for(;--E>=0;){var C=A[--u]==p?this.DM:Math.floor(A[u]*c+(A[u-1]+h)*g);if((A[u]+=n.am(0,C,A,E,0,d))<C)for(n.dlShiftTo(E,m),A.subTo(m,A);A[u]<--C;)A.subTo(m,A)}null!=t&&(A.drShiftTo(d,t),a!=o&&B.ZERO.subTo(t,t)),A.t=d,A.clamp(),s>0&&A.rShiftTo(s,A),a<0&&B.ZERO.subTo(A,A)}}},B.prototype.invDigit=function(){if(this.t<1)return 0;var e=this[0];if(!(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},B.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},B.prototype.exp=function(e,t){if(e>4294967295||e<1)return B.ONE;var A=y(),r=y(),i=t.convert(this),n=R(e)-1;for(i.copyTo(A);--n>=0;)if(t.sqrTo(A,r),(e&1<<n)>0)t.mulTo(r,i,A);else{var a=A;A=r,r=a}return t.revert(A)},B.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var A,r=(1<<t)-1,i=!1,n="",a=this.t,o=this.DB-a*this.DB%t;if(a-- >0)for(o<this.DB&&(A=this[a]>>o)>0&&(i=!0,n=b(A));a>=0;)o<t?(A=(this[a]&(1<<o)-1)<<t-o,A|=this[--a]>>(o+=this.DB-t)):(A=this[a]>>(o-=t)&r,o<=0&&(o+=this.DB,--a)),A>0&&(i=!0),i&&(n+=b(A));return i?n:"0"},B.prototype.negate=function(){var e=y();return B.ZERO.subTo(this,e),e},B.prototype.abs=function(){return this.s<0?this.negate():this},B.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var A=this.t;if(0!=(t=A-e.t))return this.s<0?-t:t;for(;--A>=0;)if(0!=(t=this[A]-e[A]))return t;return 0},B.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+R(this[this.t-1]^this.s&this.DM)},B.prototype.mod=function(e){var t=y();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(B.ZERO)>0&&e.subTo(t,t),t},B.prototype.modPowInt=function(e,t){var A;return A=e<256||t.isEven()?new k(t):new N(t),this.exp(e,A)},B.ZERO=F(0),B.ONE=F(1),V.prototype.convert=H,V.prototype.revert=H,V.prototype.mulTo=function(e,t,A){e.multiplyTo(t,A)},V.prototype.sqrTo=function(e,t){e.squareTo(t)},P.prototype.convert=function(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=y();return e.copyTo(t),this.reduce(t),t},P.prototype.revert=function(e){return e},P.prototype.reduce=function(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)},P.prototype.mulTo=function(e,t,A){e.multiplyTo(t,A),this.reduce(A)},P.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)};var J,Y,G,O=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],q=(1<<26)/O[O.length-1];
|
|
8
|
+
/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/
|
|
9
|
+
*/function W(){this.i=0,this.j=0,this.S=new Array}
|
|
10
|
+
/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/
|
|
11
|
+
*/
|
|
12
|
+
function j(){!function(e){Y[G++]^=255&e,Y[G++]^=e>>8&255,Y[G++]^=e>>16&255,Y[G++]^=e>>24&255,G>=256&&(G-=256)}((new Date).getTime())}if(B.prototype.chunkSize=function(e){return Math.floor(Math.LN2*this.DB/Math.log(e))},B.prototype.toRadix=function(e){if(null==e&&(e=10),0==this.signum()||e<2||e>36)return"0";var t=this.chunkSize(e),A=Math.pow(e,t),r=F(A),i=y(),n=y(),a="";for(this.divRemTo(r,i,n);i.signum()>0;)a=(A+n.intValue()).toString(e).substr(1)+a,i.divRemTo(r,i,n);return n.intValue().toString(e)+a},B.prototype.fromRadix=function(e,t){this.fromInt(0),null==t&&(t=10);for(var A=this.chunkSize(t),r=Math.pow(t,A),i=!1,n=0,a=0,o=0;o<e.length;++o){var s=D(e,o);s<0?"-"==e.charAt(o)&&0==this.signum()&&(i=!0):(a=t*a+s,++n>=A&&(this.dMultiply(r),this.dAddOffset(a,0),n=0,a=0))}n>0&&(this.dMultiply(Math.pow(t,n)),this.dAddOffset(a,0)),i&&B.ZERO.subTo(this,this)},B.prototype.fromNumber=function(e,t,A){if("number"==typeof t)if(e<2)this.fromInt(1);else for(this.fromNumber(e,A),this.testBit(e-1)||this.bitwiseTo(B.ONE.shiftLeft(e-1),U,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(B.ONE.shiftLeft(e-1),this);else{var r=new Array,i=7&e;r.length=1+(e>>3),t.nextBytes(r),i>0?r[0]&=(1<<i)-1:r[0]=0,this.fromString(r,256)}},B.prototype.bitwiseTo=function(e,t,A){var r,i,n=Math.min(e.t,this.t);for(r=0;r<n;++r)A[r]=t(this[r],e[r]);if(e.t<this.t){for(i=e.s&this.DM,r=n;r<this.t;++r)A[r]=t(this[r],i);A.t=this.t}else{for(i=this.s&this.DM,r=n;r<e.t;++r)A[r]=t(i,e[r]);A.t=e.t}A.s=t(this.s,e.s),A.clamp()},B.prototype.changeBit=function(e,t){var A=B.ONE.shiftLeft(e);return this.bitwiseTo(A,t,A),A},B.prototype.addTo=function(e,t){for(var A=0,r=0,i=Math.min(e.t,this.t);A<i;)r+=this[A]+e[A],t[A++]=r&this.DM,r>>=this.DB;if(e.t<this.t){for(r+=e.s;A<this.t;)r+=this[A],t[A++]=r&this.DM,r>>=this.DB;r+=this.s}else{for(r+=this.s;A<e.t;)r+=e[A],t[A++]=r&this.DM,r>>=this.DB;r+=e.s}t.s=r<0?-1:0,r>0?t[A++]=r:r<-1&&(t[A++]=this.DV+r),t.t=A,t.clamp()},B.prototype.dMultiply=function(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()},B.prototype.dAddOffset=function(e,t){if(0!=e){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}},B.prototype.multiplyLowerTo=function(e,t,A){var r,i=Math.min(this.t+e.t,t);for(A.s=0,A.t=i;i>0;)A[--i]=0;for(r=A.t-this.t;i<r;++i)A[i+this.t]=this.am(0,e[i],A,i,0,this.t);for(r=Math.min(e.t,t);i<r;++i)this.am(0,e[i],A,i,0,t-i);A.clamp()},B.prototype.multiplyUpperTo=function(e,t,A){--t;var r=A.t=this.t+e.t-t;for(A.s=0;--r>=0;)A[r]=0;for(r=Math.max(t-this.t,0);r<e.t;++r)A[this.t+r-t]=this.am(t-r,e[r],A,0,0,this.t+r-t);A.clamp(),A.drShiftTo(1,A)},B.prototype.modInt=function(e){if(e<=0)return 0;var t=this.DV%e,A=this.s<0?e-1:0;if(this.t>0)if(0==t)A=this[0]%e;else for(var r=this.t-1;r>=0;--r)A=(t*A+this[r])%e;return A},B.prototype.millerRabin=function(e){var t=this.subtract(B.ONE),A=t.getLowestSetBit();if(A<=0)return!1;var r=t.shiftRight(A);(e=e+1>>1)>O.length&&(e=O.length);for(var i=y(),n=0;n<e;++n){i.fromInt(O[Math.floor(Math.random()*O.length)]);var a=i.modPow(r,this);if(0!=a.compareTo(B.ONE)&&0!=a.compareTo(t)){for(var o=1;o++<A&&0!=a.compareTo(t);)if(0==(a=a.modPowInt(2,this)).compareTo(B.ONE))return!1;if(0!=a.compareTo(t))return!1}}return!0},B.prototype.clone=
|
|
13
|
+
/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/
|
|
14
|
+
*/
|
|
15
|
+
function(){var e=y();return this.copyTo(e),e},B.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this[0];if(0==this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]},B.prototype.byteValue=function(){return 0==this.t?this.s:this[0]<<24>>24},B.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},B.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},B.prototype.toByteArray=function(){var e=this.t,t=new Array;t[0]=this.s;var A,r=this.DB-e*this.DB%8,i=0;if(e-- >0)for(r<this.DB&&(A=this[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=A|this.s<<this.DB-r);e>=0;)r<8?(A=(this[e]&(1<<r)-1)<<8-r,A|=this[--e]>>(r+=this.DB-8)):(A=this[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),!!(128&A)&&(A|=-256),0==i&&(128&this.s)!=(128&A)&&++i,(i>0||A!=this.s)&&(t[i++]=A);return t},B.prototype.equals=function(e){return 0==this.compareTo(e)},B.prototype.min=function(e){return this.compareTo(e)<0?this:e},B.prototype.max=function(e){return this.compareTo(e)>0?this:e},B.prototype.and=function(e){var t=y();return this.bitwiseTo(e,_,t),t},B.prototype.or=function(e){var t=y();return this.bitwiseTo(e,U,t),t},B.prototype.xor=function(e){var t=y();return this.bitwiseTo(e,T,t),t},B.prototype.andNot=function(e){var t=y();return this.bitwiseTo(e,L,t),t},B.prototype.not=function(){for(var e=y(),t=0;t<this.t;++t)e[t]=this.DM&~this[t];return e.t=this.t,e.s=~this.s,e},B.prototype.shiftLeft=function(e){var t=y();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t},B.prototype.shiftRight=function(e){var t=y();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t},B.prototype.getLowestSetBit=function(){for(var e=0;e<this.t;++e)if(0!=this[e])return e*this.DB+M(this[e]);return this.s<0?this.t*this.DB:-1},B.prototype.bitCount=function(){for(var e=0,t=this.s&this.DM,A=0;A<this.t;++A)e+=x(this[A]^t);return e},B.prototype.testBit=function(e){var t=Math.floor(e/this.DB);return t>=this.t?0!=this.s:!!(this[t]&1<<e%this.DB)},B.prototype.setBit=function(e){return this.changeBit(e,U)},B.prototype.clearBit=function(e){return this.changeBit(e,L)},B.prototype.flipBit=function(e){return this.changeBit(e,T)},B.prototype.add=function(e){var t=y();return this.addTo(e,t),t},B.prototype.subtract=function(e){var t=y();return this.subTo(e,t),t},B.prototype.multiply=function(e){var t=y();return this.multiplyTo(e,t),t},B.prototype.divide=function(e){var t=y();return this.divRemTo(e,t,null),t},B.prototype.remainder=function(e){var t=y();return this.divRemTo(e,null,t),t},B.prototype.divideAndRemainder=function(e){var t=y(),A=y();return this.divRemTo(e,t,A),new Array(t,A)},B.prototype.modPow=function(e,t){var A,r,i=e.bitLength(),n=F(1);if(i<=0)return n;A=i<18?1:i<48?3:i<144?4:i<768?5:6,r=i<8?new k(t):t.isEven()?new P(t):new N(t);var a=new Array,o=3,s=A-1,d=(1<<A)-1;if(a[1]=r.convert(this),A>1){var p=y();for(r.sqrTo(a[1],p);o<=d;)a[o]=y(),r.mulTo(p,a[o-2],a[o]),o+=2}var l,c,g=e.t-1,h=!0,u=y();for(i=R(e[g])-1;g>=0;){for(i>=s?l=e[g]>>i-s&d:(l=(e[g]&(1<<i+1)-1)<<s-i,g>0&&(l|=e[g-1]>>this.DB+i-s)),o=A;!(1&l);)l>>=1,--o;if((i-=o)<0&&(i+=this.DB,--g),h)a[l].copyTo(n),h=!1;else{for(;o>1;)r.sqrTo(n,u),r.sqrTo(u,n),o-=2;o>0?r.sqrTo(n,u):(c=n,n=u,u=c),r.mulTo(u,a[l],n)}for(;g>=0&&!(e[g]&1<<i);)r.sqrTo(n,u),c=n,n=u,u=c,--i<0&&(i=this.DB-1,--g)}return r.revert(n)},B.prototype.modInverse=function(e){var t=e.isEven();if(this.isEven()&&t||0==e.signum())return B.ZERO;for(var A=e.clone(),r=this.clone(),i=F(1),n=F(0),a=F(0),o=F(1);0!=A.signum();){for(;A.isEven();)A.rShiftTo(1,A),t?(i.isEven()&&n.isEven()||(i.addTo(this,i),n.subTo(e,n)),i.rShiftTo(1,i)):n.isEven()||n.subTo(e,n),n.rShiftTo(1,n);for(;r.isEven();)r.rShiftTo(1,r),t?(a.isEven()&&o.isEven()||(a.addTo(this,a),o.subTo(e,o)),a.rShiftTo(1,a)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);A.compareTo(r)>=0?(A.subTo(r,A),t&&i.subTo(a,i),n.subTo(o,n)):(r.subTo(A,r),t&&a.subTo(i,a),o.subTo(n,o))}return 0!=r.compareTo(B.ONE)?B.ZERO:o.compareTo(e)>=0?o.subtract(e):o.signum()<0?(o.addTo(e,o),o.signum()<0?o.add(e):o):o},B.prototype.pow=function(e){return this.exp(e,new V)},B.prototype.gcd=function(e){var t=this.s<0?this.negate():this.clone(),A=e.s<0?e.negate():e.clone();if(t.compareTo(A)<0){var r=t;t=A,A=r}var i=t.getLowestSetBit(),n=A.getLowestSetBit();if(n<0)return t;for(i<n&&(n=i),n>0&&(t.rShiftTo(n,t),A.rShiftTo(n,A));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=A.getLowestSetBit())>0&&A.rShiftTo(i,A),t.compareTo(A)>=0?(t.subTo(A,t),t.rShiftTo(1,t)):(A.subTo(t,A),A.rShiftTo(1,A));return n>0&&A.lShiftTo(n,A),A},B.prototype.isProbablePrime=function(e){var t,A=this.abs();if(1==A.t&&A[0]<=O[O.length-1]){for(t=0;t<O.length;++t)if(A[0]==O[t])return!0;return!1}if(A.isEven())return!1;for(t=1;t<O.length;){for(var r=O[t],i=t+1;i<O.length&&r<q;)r*=O[i++];for(r=A.modInt(r);t<i;)if(r%O[t++]==0)return!1}return A.millerRabin(e)},B.prototype.square=function(){var e=y();return this.squareTo(e),e},W.prototype.init=function(e){var t,A,r;for(t=0;t<256;++t)this.S[t]=t;for(A=0,t=0;t<256;++t)A=A+this.S[t]+e[t%e.length]&255,r=this.S[t],this.S[t]=this.S[A],this.S[A]=r;this.i=0,this.j=0},W.prototype.next=function(){var e;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,e=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=e,this.S[e+this.S[this.i]&255]},null==Y){var K;if(Y=new Array,G=0,void 0!==u&&(void 0!==u.crypto||void 0!==u.msCrypto)){var Z=u.crypto||u.msCrypto;if(Z.getRandomValues){var X=new Uint8Array(32);for(Z.getRandomValues(X),K=0;K<32;++K)Y[G++]=X[K]}else if("Netscape"==h.appName&&h.appVersion<"5"){var z=u.crypto.random(32);for(K=0;K<z.length;++K)Y[G++]=255&z.charCodeAt(K)}}for(;G<256;)K=Math.floor(65536*Math.random()),Y[G++]=K>>>8,Y[G++]=255&K;G=0,j()}function $(){if(null==J){for(j(),(J=new W).init(Y),G=0;G<Y.length;++G)Y[G]=0;G=0}return J.next()}function ee(){}
|
|
16
|
+
/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/
|
|
17
|
+
*/function te(e,t){return new B(e,t)}function Ae(e,t,A){for(var r="",i=0;r.length<t;)r+=A(String.fromCharCode.apply(String,e.concat([(4278190080&i)>>24,(16711680&i)>>16,(65280&i)>>8,255&i]))),i+=1;return r}function re(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null
|
|
18
|
+
/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/
|
|
19
|
+
*/}function ie(e,t){this.x=t,this.q=e}function ne(e,t,A,r){this.curve=e,this.x=t,this.y=A,this.z=null==r?B.ONE:r,this.zinv=null}function ae(e,t,A){this.q=e,this.a=this.fromBigInteger(t),this.b=this.fromBigInteger(A),this.infinity=new ne(this,null,null)}ee.prototype.nextBytes=function(e){var t;for(t=0;t<e.length;++t)e[t]=$()},re.prototype.doPublic=function(e){return e.modPowInt(this.e,this.n)},re.prototype.setPublic=function(e,t){if(this.isPublic=!0,this.isPrivate=!1,"string"!=typeof e)this.n=e,this.e=t;else{if(!(null!=e&&null!=t&&e.length>0&&t.length>0))throw"Invalid RSA public key";this.n=te(e,16),this.e=parseInt(t,16)}},re.prototype.encrypt=function(e){var t=function(e,t){if(t<e.length+11)throw"Message too long for RSA";for(var A=new Array,r=e.length-1;r>=0&&t>0;){var i=e.charCodeAt(r--);i<128?A[--t]=i:i>127&&i<2048?(A[--t]=63&i|128,A[--t]=i>>6|192):(A[--t]=63&i|128,A[--t]=i>>6&63|128,A[--t]=i>>12|224)}A[--t]=0;for(var n=new ee,a=new Array;t>2;){for(a[0]=0;0==a[0];)n.nextBytes(a);A[--t]=a[0]}return A[--t]=2,A[--t]=0,new B(A)}(e,this.n.bitLength()+7>>3);if(null==t)return null;var A=this.doPublic(t);if(null==A)return null;var r=A.toString(16);return 1&r.length?"0"+r:r},re.prototype.encryptOAEP=function(e,t,A){var r=function(e,t,A,r){var i=se.crypto.MessageDigest,n=se.crypto.Util,a=null;if(A||(A="sha1"),"string"==typeof A&&(a=i.getCanonicalAlgName(A),r=i.getHashLength(a),A=function(e){return Be(n.hashHex(ye(e),a))}),e.length+2*r+2>t)throw"Message too long for RSA";var o,s="";for(o=0;o<t-e.length-2*r-2;o+=1)s+="\0";var d=A("")+s+""+e,p=new Array(r);(new ee).nextBytes(p);var l=Ae(p,d.length,A),c=[];for(o=0;o<d.length;o+=1)c[o]=d.charCodeAt(o)^l.charCodeAt(o);var g=Ae(c,p.length,A),h=[0];for(o=0;o<p.length;o+=1)h[o+1]=p[o]^g.charCodeAt(o);return new B(h.concat(c))}(e,this.n.bitLength()+7>>3,t,A);if(null==r)return null;var i=this.doPublic(r);if(null==i)return null;var n=i.toString(16);return 1&n.length?"0"+n:n},re.prototype.type="RSA",ie.prototype.equals=function(e){return e==this||this.q.equals(e.q)&&this.x.equals(e.x)},ie.prototype.toBigInteger=function(){return this.x},ie.prototype.negate=function(){return new ie(this.q,this.x.negate().mod(this.q))},ie.prototype.add=function(e){return new ie(this.q,this.x.add(e.toBigInteger()).mod(this.q))},ie.prototype.subtract=function(e){return new ie(this.q,this.x.subtract(e.toBigInteger()).mod(this.q))},ie.prototype.multiply=function(e){return new ie(this.q,this.x.multiply(e.toBigInteger()).mod(this.q))},ie.prototype.square=function(){return new ie(this.q,this.x.square().mod(this.q))},ie.prototype.divide=function(e){return new ie(this.q,this.x.multiply(e.toBigInteger().modInverse(this.q)).mod(this.q))},ne.prototype.getX=function(){return null==this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.x.toBigInteger().multiply(this.zinv).mod(this.curve.q))},ne.prototype.getY=function(){return null==this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.y.toBigInteger().multiply(this.zinv).mod(this.curve.q))},ne.prototype.equals=function(e){return e==this||(this.isInfinity()?e.isInfinity():e.isInfinity()?this.isInfinity():!!e.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(e.z)).mod(this.curve.q).equals(B.ZERO)&&e.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(e.z)).mod(this.curve.q).equals(B.ZERO))},ne.prototype.isInfinity=function(){return null==this.x&&null==this.y||this.z.equals(B.ZERO)&&!this.y.toBigInteger().equals(B.ZERO)},ne.prototype.negate=function(){return new ne(this.curve,this.x,this.y.negate(),this.z)},ne.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(e.z)).mod(this.curve.q),A=e.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(e.z)).mod(this.curve.q);if(B.ZERO.equals(A))return B.ZERO.equals(t)?this.twice():this.curve.getInfinity();var r=new B("3"),i=this.x.toBigInteger(),n=this.y.toBigInteger(),a=(e.x.toBigInteger(),e.y.toBigInteger(),A.square()),o=a.multiply(A),s=i.multiply(a),d=t.square().multiply(this.z),p=d.subtract(s.shiftLeft(1)).multiply(e.z).subtract(o).multiply(A).mod(this.curve.q),l=s.multiply(r).multiply(t).subtract(n.multiply(o)).subtract(d.multiply(t)).multiply(e.z).add(t.multiply(o)).mod(this.curve.q),c=o.multiply(this.z).multiply(e.z).mod(this.curve.q);return new ne(this.curve,this.curve.fromBigInteger(p),this.curve.fromBigInteger(l),c)},ne.prototype.twice=function(){if(this.isInfinity())return this;if(0==this.y.toBigInteger().signum())return this.curve.getInfinity();var e=new B("3"),t=this.x.toBigInteger(),A=this.y.toBigInteger(),r=A.multiply(this.z),i=r.multiply(A).mod(this.curve.q),n=this.curve.a.toBigInteger(),a=t.square().multiply(e);B.ZERO.equals(n)||(a=a.add(this.z.square().multiply(n)));var o=(a=a.mod(this.curve.q)).square().subtract(t.shiftLeft(3).multiply(i)).shiftLeft(1).multiply(r).mod(this.curve.q),s=a.multiply(e).multiply(t).subtract(i.shiftLeft(1)).shiftLeft(2).multiply(i).subtract(a.square().multiply(a)).mod(this.curve.q),d=r.square().multiply(r).shiftLeft(3).mod(this.curve.q);return new ne(this.curve,this.curve.fromBigInteger(o),this.curve.fromBigInteger(s),d)},ne.prototype.multiply=function(e){if(this.isInfinity())return this;if(0==e.signum())return this.curve.getInfinity();var t,A=e,r=A.multiply(new B("3")),i=this.negate(),n=this,a=this.curve.q.subtract(e),o=a.multiply(new B("3")),s=new ne(this.curve,this.x,this.y),d=s.negate();for(t=r.bitLength()-2;t>0;--t){n=n.twice();var p=r.testBit(t);p!=A.testBit(t)&&(n=n.add(p?this:i))}for(t=o.bitLength()-2;t>0;--t){s=s.twice();var l=o.testBit(t);l!=a.testBit(t)&&(s=s.add(l?s:d))}return n},ne.prototype.multiplyTwo=function(e,t,A){var r;r=e.bitLength()>A.bitLength()?e.bitLength()-1:A.bitLength()-1;for(var i=this.curve.getInfinity(),n=this.add(t);r>=0;)i=i.twice(),e.testBit(r)?i=A.testBit(r)?i.add(n):i.add(this):A.testBit(r)&&(i=i.add(t)),--r;return i},ae.prototype.getQ=function(){return this.q},ae.prototype.getA=function(){return this.a},ae.prototype.getB=function(){return this.b},ae.prototype.equals=function(e){return e==this||this.q.equals(e.q)&&this.a.equals(e.a)&&this.b.equals(e.b)},ae.prototype.getInfinity=function(){return this.infinity},ae.prototype.fromBigInteger=function(e){return new ie(this.q,e)},ae.prototype.decodePointHex=function(e){switch(parseInt(e.substr(0,2),16)){case 0:return this.infinity;case 2:case 3:default:return null;case 4:case 6:case 7:var t=(e.length-2)/2,A=e.substr(2,t),r=e.substr(t+2,t);return new ne(this,this.fromBigInteger(new B(A,16)),this.fromBigInteger(new B(r,16)))}},
|
|
20
|
+
/*! (c) Stefan Thomas | https://github.com/bitcoinjs/bitcoinjs-lib
|
|
21
|
+
*/
|
|
22
|
+
ie.prototype.getByteLength=function(){return Math.floor((this.toBigInteger().bitLength()+7)/8)},ne.prototype.getEncoded=function(e){var t=function(e,t){var A=e.toByteArrayUnsigned();if(t<A.length)A=A.slice(A.length-t);else for(;t>A.length;)A.unshift(0);return A},A=this.getX().toBigInteger(),r=this.getY().toBigInteger(),i=t(A,32);return e?r.isEven()?i.unshift(2):i.unshift(3):(i.unshift(4),i=i.concat(t(r,32))),i},ne.decodeFrom=function(e,t){t[0];var A=t.length-1,r=t.slice(1,1+A/2),i=t.slice(1+A/2,1+A);r.unshift(0),i.unshift(0);var n=new B(r),a=new B(i);return new ne(e,e.fromBigInteger(n),e.fromBigInteger(a))},ne.decodeFromHex=function(e,t){t.substr(0,2);var A=t.length-2,r=t.substr(2,A/2),i=t.substr(2+A/2,A/2),n=new B(r,16),a=new B(i,16);return new ne(e,e.fromBigInteger(n),e.fromBigInteger(a))},ne.prototype.add2D=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;if(this.x.equals(e.x))return this.y.equals(e.y)?this.twice():this.curve.getInfinity();var t=e.x.subtract(this.x),A=e.y.subtract(this.y).divide(t),r=A.square().subtract(this.x).subtract(e.x),i=A.multiply(this.x.subtract(r)).subtract(this.y);return new ne(this.curve,r,i)},ne.prototype.twice2D=function(){if(this.isInfinity())return this;if(0==this.y.toBigInteger().signum())return this.curve.getInfinity();var e=this.curve.fromBigInteger(B.valueOf(2)),t=this.curve.fromBigInteger(B.valueOf(3)),A=this.x.square().multiply(t).add(this.curve.a).divide(this.y.multiply(e)),r=A.square().subtract(this.x.multiply(e)),i=A.multiply(this.x.subtract(r)).subtract(this.y);return new ne(this.curve,r,i)},ne.prototype.multiply2D=function(e){if(this.isInfinity())return this;if(0==e.signum())return this.curve.getInfinity();var t,A=e,r=A.multiply(new B("3")),i=this.negate(),n=this;for(t=r.bitLength()-2;t>0;--t){n=n.twice();var a=r.testBit(t);a!=A.testBit(t)&&(n=n.add2D(a?this:i))}return n},ne.prototype.isOnCurve=function(){var e=this.getX().toBigInteger(),t=this.getY().toBigInteger(),A=this.curve.getA().toBigInteger(),r=this.curve.getB().toBigInteger(),i=this.curve.getQ(),n=t.multiply(t).mod(i),a=e.multiply(e).multiply(e).add(A.multiply(e)).add(r).mod(i);return n.equals(a)},ne.prototype.toString=function(){return"("+this.getX().toBigInteger().toString()+","+this.getY().toBigInteger().toString()+")"},ne.prototype.validate=function(){var e=this.curve.getQ();if(this.isInfinity())throw new Error("Point is at infinity.");var t=this.getX().toBigInteger(),A=this.getY().toBigInteger();if(t.compareTo(B.ONE)<0||t.compareTo(e.subtract(B.ONE))>0)throw new Error("x coordinate out of bounds");if(A.compareTo(B.ONE)<0||A.compareTo(e.subtract(B.ONE))>0)throw new Error("y coordinate out of bounds");if(!this.isOnCurve())throw new Error("Point is not on the curve.");if(this.multiply(e).isInfinity())throw new Error("Point is not a scalar multiple of G.");return!0};
|
|
23
|
+
/*! Mike Samuel (c) 2009 | code.google.com/p/json-sans-eval
|
|
24
|
+
*/
|
|
25
|
+
var oe=function(){var e=new RegExp('(?:false|true|null|[\\{\\}\\[\\]]|(?:-?\\b(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\\b)|(?:"(?:[^\\0-\\x08\\x0a-\\x1f"\\\\]|\\\\(?:["/\\\\bfnrt]|u[0-9A-Fa-f]{4}))*"))',"g"),t=new RegExp("\\\\(?:([^u])|u(.{4}))","g"),A={'"':'"',"/":"/","\\":"\\",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function r(e,t,r){return t?A[t]:String.fromCharCode(parseInt(r,16))}var i=new String(""),n=Object.hasOwnProperty;return function(A,a){var o,s,d=A.match(e),p=d[0],l=!1;"{"===p?o={}:"["===p?o=[]:(o=[],l=!0);for(var c=[o],h=1-l,u=d.length;h<u;++h){var E;switch((p=d[h]).charCodeAt(0)){default:(E=c[0])[s||E.length]=+p,s=void 0;break;case 34:if(-1!==(p=p.substring(1,p.length-1)).indexOf("\\")&&(p=p.replace(t,r)),E=c[0],!s){if(!(E instanceof Array)){s=p||i;break}s=E.length}E[s]=p,s=void 0;break;case 91:E=c[0],c.unshift(E[s||E.length]=[]),s=void 0;break;case 93:case 125:c.shift();break;case 102:(E=c[0])[s||E.length]=!1,s=void 0;break;case 110:(E=c[0])[s||E.length]=null,s=void 0;break;case 116:(E=c[0])[s||E.length]=!0,s=void 0;break;case 123:E=c[0],c.unshift(E[s||E.length]={}),s=void 0}}if(l){if(1!==c.length)throw new Error;o=o[0]}else if(c.length)throw new Error;return a&&(o=function e(t,A){var r=t[A];if(r&&"object"===(void 0===r?"undefined":g(r))){var i=null;for(var o in r)if(n.call(r,o)&&r!==t){var s=e(r,o);void 0!==s?r[o]=s:(i||(i=[]),i.push(o))}if(i)for(var d=i.length;--d>=0;)delete r[i[d]]}return a.call(t,A,r)}({"":o},"")),o}}();void 0!==se&&se||(t.KJUR=se={}),void 0!==se.asn1&&se.asn1||(se.asn1={}),se.asn1.ASN1Util=new function(){this.integerToByteHex=function(e){var t=e.toString(16);return t.length%2==1&&(t="0"+t),t},this.bigIntToMinTwosComplementsHex=function(e){var t=e.toString(16);if("-"!=t.substr(0,1))t.length%2==1?t="0"+t:t.match(/^[0-7]/)||(t="00"+t);else{var A=t.substr(1).length;A%2==1?A+=1:t.match(/^[0-7]/)||(A+=2);for(var r="",i=0;i<A;i++)r+="f";t=new B(r,16).xor(e).add(B.ONE).toString(16).replace(/^-/,"")}return t},this.getPEMStringFromHex=function(e,t){return be(e,t)},this.newObject=function(e){var t=se.asn1,A=t.ASN1Object,r=t.DERBoolean,i=t.DERInteger,n=t.DERBitString,a=t.DEROctetString,o=t.DERNull,s=t.DERObjectIdentifier,d=t.DEREnumerated,p=t.DERUTF8String,l=t.DERNumericString,c=t.DERPrintableString,g=t.DERTeletexString,h=t.DERIA5String,u=t.DERUTCTime,E=t.DERGeneralizedTime,m=t.DERVisibleString,C=t.DERBMPString,f=t.DERSequence,Q=t.DERSet,I=t.DERTaggedObject,B=t.ASN1Util.newObject;if(e instanceof t.ASN1Object)return e;var y=Object.keys(e);if(1!=y.length)throw new Error("key of param shall be only one.");var w=y[0];if(-1==":asn1:bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:visstr:bmpstr:seq:set:tag:".indexOf(":"+w+":"))throw new Error("undefined key: "+w);if("bool"==w)return new r(e[w]);if("int"==w)return new i(e[w]);if("bitstr"==w)return new n(e[w]);if("octstr"==w)return new a(e[w]);if("null"==w)return new o(e[w]);if("oid"==w)return new s(e[w]);if("enum"==w)return new d(e[w]);if("utf8str"==w)return new p(e[w]);if("numstr"==w)return new l(e[w]);if("prnstr"==w)return new c(e[w]);if("telstr"==w)return new g(e[w]);if("ia5str"==w)return new h(e[w]);if("utctime"==w)return new u(e[w]);if("gentime"==w)return new E(e[w]);if("visstr"==w)return new m(e[w]);if("bmpstr"==w)return new C(e[w]);if("asn1"==w)return new A(e[w]);if("seq"==w){for(var v=e[w],S=[],b=0;b<v.length;b++){var D=B(v[b]);S.push(D)}return new f({array:S})}if("set"==w){for(v=e[w],S=[],b=0;b<v.length;b++)D=B(v[b]),S.push(D);return new Q({array:S})}if("tag"==w){var F=e[w];if("[object Array]"===Object.prototype.toString.call(F)&&3==F.length){var R=B(F[2]);return new I({tag:F[0],explicit:F[1],obj:R})}return new I(F)}},this.jsonToASN1HEX=function(e){return this.newObject(e).getEncodedHex()}},se.asn1.ASN1Util.oidHexToInt=function(e){for(var t="",A=parseInt(e.substr(0,2),16),r=(t=Math.floor(A/40)+"."+A%40,""),i=2;i<e.length;i+=2){var n=("00000000"+parseInt(e.substr(i,2),16).toString(2)).slice(-8);r+=n.substr(1,7),"0"==n.substr(0,1)&&(t=t+"."+new B(r,2).toString(10),r="")}return t},se.asn1.ASN1Util.oidIntToHex=function(e){var t=function(e){var t=e.toString(16);return 1==t.length&&(t="0"+t),t},A=function(e){var A="",r=new B(e,10).toString(2),i=7-r.length%7;7==i&&(i=0);for(var n="",a=0;a<i;a++)n+="0";for(r=n+r,a=0;a<r.length-1;a+=7){var o=r.substr(a,7);a!=r.length-7&&(o="1"+o),A+=t(parseInt(o,2))}return A};if(!e.match(/^[0-9.]+$/))throw"malformed oid string: "+e;var r="",i=e.split("."),n=40*parseInt(i[0])+parseInt(i[1]);r+=t(n),i.splice(0,2);for(var a=0;a<i.length;a++)r+=A(i[a]);return r},se.asn1.ASN1Object=function(e){this.params=null,this.getLengthHexFromValue=function(){if(void 0===this.hV||null==this.hV)throw new Error("this.hV is null or undefined");if(this.hV.length%2==1)throw new Error("value hex must be even length: n=0,v="+this.hV);var e=this.hV.length/2,t=e.toString(16);if(t.length%2==1&&(t="0"+t),e<128)return t;var A=t.length/2;if(A>15)throw"ASN.1 length too long to represent by 8x: n = "+e.toString(16);return(128+A).toString(16)+t},this.getEncodedHex=function(){return(null==this.hTLV||this.isModified)&&(this.hV=this.getFreshValueHex(),this.hL=this.getLengthHexFromValue(),this.hTLV=this.hT+this.hL+this.hV,this.isModified=!1),this.hTLV},this.getValueHex=function(){return this.getEncodedHex(),this.hV},this.getFreshValueHex=function(){return""},this.setByParam=function(e){this.params=e},null!=e&&null!=e.tlv&&(this.hTLV=e.tlv,this.isModified=!1)},se.asn1.DERAbstractString=function(e){se.asn1.DERAbstractString.superclass.constructor.call(this),this.getString=function(){return this.s},this.setString=function(e){this.hTLV=null,this.isModified=!0,this.s=e,this.hV=Qe(this.s).toLowerCase()},this.setStringHex=function(e){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=e},this.getFreshValueHex=function(){return this.hV},void 0!==e&&("string"==typeof e?this.setString(e):void 0!==e.str?this.setString(e.str):void 0!==e.hex&&this.setStringHex(e.hex))},Pe(se.asn1.DERAbstractString,se.asn1.ASN1Object),se.asn1.DERAbstractTime=function(e){se.asn1.DERAbstractTime.superclass.constructor.call(this),this.localDateToUTC=function(e){var t=e.getTime()+6e4*e.getTimezoneOffset();return new Date(t)},this.formatDate=function(e,t,A){var r=this.zeroPadding,i=this.localDateToUTC(e),n=String(i.getFullYear());"utc"==t&&(n=n.substr(2,2));var a=n+r(String(i.getMonth()+1),2)+r(String(i.getDate()),2)+r(String(i.getHours()),2)+r(String(i.getMinutes()),2)+r(String(i.getSeconds()),2);if(!0===A){var o=i.getMilliseconds();if(0!=o){var s=r(String(o),3);a=a+"."+(s=s.replace(/[0]+$/,""))}}return a+"Z"},this.zeroPadding=function(e,t){return e.length>=t?e:new Array(t-e.length+1).join("0")+e},this.getString=function(){return this.s},this.setString=function(e){this.hTLV=null,this.isModified=!0,this.s=e,this.hV=ue(e)},this.setByDateValue=function(e,t,A,r,i,n){var a=new Date(Date.UTC(e,t-1,A,r,i,n,0));this.setByDate(a)},this.getFreshValueHex=function(){return this.hV}},Pe(se.asn1.DERAbstractTime,se.asn1.ASN1Object),se.asn1.DERAbstractStructured=function(e){se.asn1.DERAbstractString.superclass.constructor.call(this),this.setByASN1ObjectArray=function(e){this.hTLV=null,this.isModified=!0,this.asn1Array=e},this.appendASN1Object=function(e){this.hTLV=null,this.isModified=!0,this.asn1Array.push(e)},this.asn1Array=new Array,void 0!==e&&void 0!==e.array&&(this.asn1Array=e.array)},Pe(se.asn1.DERAbstractStructured,se.asn1.ASN1Object),se.asn1.DERBoolean=function(e){se.asn1.DERBoolean.superclass.constructor.call(this),this.hT="01",this.hTLV=0==e?"010100":"0101ff"},Pe(se.asn1.DERBoolean,se.asn1.ASN1Object),se.asn1.DERInteger=function(e){se.asn1.DERInteger.superclass.constructor.call(this),this.hT="02",this.setByBigInteger=function(e){this.hTLV=null,this.isModified=!0,this.hV=se.asn1.ASN1Util.bigIntToMinTwosComplementsHex(e)},this.setByInteger=function(e){var t=new B(String(e),10);this.setByBigInteger(t)},this.setValueHex=function(e){this.hV=e},this.getFreshValueHex=function(){return this.hV},void 0!==e&&(void 0!==e.bigint?this.setByBigInteger(e.bigint):void 0!==e.int?this.setByInteger(e.int):"number"==typeof e?this.setByInteger(e):void 0!==e.hex&&this.setValueHex(e.hex))},Pe(se.asn1.DERInteger,se.asn1.ASN1Object),se.asn1.DERBitString=function(e){if(void 0!==e&&void 0!==e.obj){var t=se.asn1.ASN1Util.newObject(e.obj);e.hex="00"+t.getEncodedHex()}se.asn1.DERBitString.superclass.constructor.call(this),this.hT="03",this.setHexValueIncludingUnusedBits=function(e){this.hTLV=null,this.isModified=!0,this.hV=e},this.setUnusedBitsAndHexValue=function(e,t){if(e<0||7<e)throw"unused bits shall be from 0 to 7: u = "+e;var A="0"+e;this.hTLV=null,this.isModified=!0,this.hV=A+t},this.setByBinaryString=function(e){var t=8-(e=e.replace(/0+$/,"")).length%8;8==t&&(t=0);for(var A=0;A<=t;A++)e+="0";var r="";for(A=0;A<e.length-1;A+=8){var i=e.substr(A,8),n=parseInt(i,2).toString(16);1==n.length&&(n="0"+n),r+=n}this.hTLV=null,this.isModified=!0,this.hV="0"+t+r},this.setByBooleanArray=function(e){for(var t="",A=0;A<e.length;A++)1==e[A]?t+="1":t+="0";this.setByBinaryString(t)},this.newFalseArray=function(e){for(var t=new Array(e),A=0;A<e;A++)t[A]=!1;return t},this.getFreshValueHex=function(){return this.hV},void 0!==e&&("string"==typeof e&&e.toLowerCase().match(/^[0-9a-f]+$/)?this.setHexValueIncludingUnusedBits(e):void 0!==e.hex?this.setHexValueIncludingUnusedBits(e.hex):void 0!==e.bin?this.setByBinaryString(e.bin):void 0!==e.array&&this.setByBooleanArray(e.array))},Pe(se.asn1.DERBitString,se.asn1.ASN1Object),se.asn1.DEROctetString=function(e){if(void 0!==e&&void 0!==e.obj){var t=se.asn1.ASN1Util.newObject(e.obj);e.hex=t.getEncodedHex()}se.asn1.DEROctetString.superclass.constructor.call(this,e),this.hT="04"},Pe(se.asn1.DEROctetString,se.asn1.DERAbstractString),se.asn1.DERNull=function(){se.asn1.DERNull.superclass.constructor.call(this),this.hT="05",this.hTLV="0500"},Pe(se.asn1.DERNull,se.asn1.ASN1Object),se.asn1.DERObjectIdentifier=function(e){se.asn1.DERObjectIdentifier.superclass.constructor.call(this),this.hT="06",this.setValueHex=function(e){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=e},this.setValueOidString=function(e){var t=function(e){var t=function(e){var t=e.toString(16);return 1==t.length&&(t="0"+t),t},A=function(e){var A="",r=parseInt(e,10).toString(2),i=7-r.length%7;7==i&&(i=0);for(var n="",a=0;a<i;a++)n+="0";for(r=n+r,a=0;a<r.length-1;a+=7){var o=r.substr(a,7);a!=r.length-7&&(o="1"+o),A+=t(parseInt(o,2))}return A};try{if(!e.match(/^[0-9.]+$/))return null;var r="",i=e.split("."),n=40*parseInt(i[0],10)+parseInt(i[1],10);r+=t(n),i.splice(0,2);for(var a=0;a<i.length;a++)r+=A(i[a]);return r}catch(e){return null}}(e);if(null==t)throw new Error("malformed oid string: "+e);this.hTLV=null,this.isModified=!0,this.s=null,this.hV=t},this.setValueName=function(e){var t=se.asn1.x509.OID.name2oid(e);if(""===t)throw new Error("DERObjectIdentifier oidName undefined: "+e);this.setValueOidString(t)},this.setValueNameOrOid=function(e){e.match(/^[0-2].[0-9.]+$/)?this.setValueOidString(e):this.setValueName(e)},this.getFreshValueHex=function(){return this.hV},this.setByParam=function(e){"string"==typeof e?this.setValueNameOrOid(e):void 0!==e.oid?this.setValueNameOrOid(e.oid):void 0!==e.name?this.setValueNameOrOid(e.name):void 0!==e.hex&&this.setValueHex(e.hex)},void 0!==e&&this.setByParam(e)},Pe(se.asn1.DERObjectIdentifier,se.asn1.ASN1Object),se.asn1.DEREnumerated=function(e){se.asn1.DEREnumerated.superclass.constructor.call(this),this.hT="0a",this.setByBigInteger=function(e){this.hTLV=null,this.isModified=!0,this.hV=se.asn1.ASN1Util.bigIntToMinTwosComplementsHex(e)},this.setByInteger=function(e){var t=new B(String(e),10);this.setByBigInteger(t)},this.setValueHex=function(e){this.hV=e},this.getFreshValueHex=function(){return this.hV},void 0!==e&&(void 0!==e.int?this.setByInteger(e.int):"number"==typeof e?this.setByInteger(e):void 0!==e.hex&&this.setValueHex(e.hex))},Pe(se.asn1.DEREnumerated,se.asn1.ASN1Object),se.asn1.DERUTF8String=function(e){se.asn1.DERUTF8String.superclass.constructor.call(this,e),this.hT="0c"},Pe(se.asn1.DERUTF8String,se.asn1.DERAbstractString),se.asn1.DERNumericString=function(e){se.asn1.DERNumericString.superclass.constructor.call(this,e),this.hT="12"},Pe(se.asn1.DERNumericString,se.asn1.DERAbstractString),se.asn1.DERPrintableString=function(e){se.asn1.DERPrintableString.superclass.constructor.call(this,e),this.hT="13"},Pe(se.asn1.DERPrintableString,se.asn1.DERAbstractString),se.asn1.DERTeletexString=function(e){se.asn1.DERTeletexString.superclass.constructor.call(this,e),this.hT="14"},Pe(se.asn1.DERTeletexString,se.asn1.DERAbstractString),se.asn1.DERIA5String=function(e){se.asn1.DERIA5String.superclass.constructor.call(this,e),this.hT="16"},Pe(se.asn1.DERIA5String,se.asn1.DERAbstractString),se.asn1.DERVisibleString=function(e){se.asn1.DERIA5String.superclass.constructor.call(this,e),this.hT="1a"},Pe(se.asn1.DERVisibleString,se.asn1.DERAbstractString),se.asn1.DERBMPString=function(e){se.asn1.DERBMPString.superclass.constructor.call(this,e),this.hT="1e"},Pe(se.asn1.DERBMPString,se.asn1.DERAbstractString),se.asn1.DERUTCTime=function(e){se.asn1.DERUTCTime.superclass.constructor.call(this,e),this.hT="17",this.setByDate=function(e){this.hTLV=null,this.isModified=!0,this.date=e,this.s=this.formatDate(this.date,"utc"),this.hV=ue(this.s)},this.getFreshValueHex=function(){return void 0===this.date&&void 0===this.s&&(this.date=new Date,this.s=this.formatDate(this.date,"utc"),this.hV=ue(this.s)),this.hV},void 0!==e&&(void 0!==e.str?this.setString(e.str):"string"==typeof e&&e.match(/^[0-9]{12}Z$/)?this.setString(e):void 0!==e.hex?this.setStringHex(e.hex):void 0!==e.date&&this.setByDate(e.date))},Pe(se.asn1.DERUTCTime,se.asn1.DERAbstractTime),se.asn1.DERGeneralizedTime=function(e){se.asn1.DERGeneralizedTime.superclass.constructor.call(this,e),this.hT="18",this.withMillis=!1,this.setByDate=function(e){this.hTLV=null,this.isModified=!0,this.date=e,this.s=this.formatDate(this.date,"gen",this.withMillis),this.hV=ue(this.s)},this.getFreshValueHex=function(){return void 0===this.date&&void 0===this.s&&(this.date=new Date,this.s=this.formatDate(this.date,"gen",this.withMillis),this.hV=ue(this.s)),this.hV},void 0!==e&&(void 0!==e.str?this.setString(e.str):"string"==typeof e&&e.match(/^[0-9]{14}Z$/)?this.setString(e):void 0!==e.hex?this.setStringHex(e.hex):void 0!==e.date&&this.setByDate(e.date),!0===e.millis&&(this.withMillis=!0))},Pe(se.asn1.DERGeneralizedTime,se.asn1.DERAbstractTime),se.asn1.DERSequence=function(e){se.asn1.DERSequence.superclass.constructor.call(this,e),this.hT="30",this.getFreshValueHex=function(){for(var e="",t=0;t<this.asn1Array.length;t++)e+=this.asn1Array[t].getEncodedHex();return this.hV=e,this.hV}},Pe(se.asn1.DERSequence,se.asn1.DERAbstractStructured),se.asn1.DERSet=function(e){se.asn1.DERSet.superclass.constructor.call(this,e),this.hT="31",this.sortFlag=!0,this.getFreshValueHex=function(){for(var e=new Array,t=0;t<this.asn1Array.length;t++){var A=this.asn1Array[t];e.push(A.getEncodedHex())}return 1==this.sortFlag&&e.sort(),this.hV=e.join(""),this.hV},void 0!==e&&void 0!==e.sortflag&&0==e.sortflag&&(this.sortFlag=!1)},Pe(se.asn1.DERSet,se.asn1.DERAbstractStructured),se.asn1.DERTaggedObject=function(e){se.asn1.DERTaggedObject.superclass.constructor.call(this);var t=se.asn1;this.hT="a0",this.hV="",this.isExplicit=!0,this.asn1Object=null,this.setASN1Object=function(e,t,A){this.hT=t,this.isExplicit=e,this.asn1Object=A,this.isExplicit?(this.hV=this.asn1Object.getEncodedHex(),this.hTLV=null,this.isModified=!0):(this.hV=null,this.hTLV=A.getEncodedHex(),this.hTLV=this.hTLV.replace(/^../,t),this.isModified=!1)},this.getFreshValueHex=function(){return this.hV},this.setByParam=function(e){null!=e.tag&&(this.hT=e.tag),null!=e.explicit&&(this.isExplicit=e.explicit),null!=e.tage&&(this.hT=e.tage,this.isExplicit=!0),null!=e.tagi&&(this.hT=e.tagi,this.isExplicit=!1),null!=e.obj&&(e.obj instanceof t.ASN1Object?(this.asn1Object=e.obj,this.setASN1Object(this.isExplicit,this.hT,this.asn1Object)):"object"==g(e.obj)&&(this.asn1Object=t.ASN1Util.newObject(e.obj),this.setASN1Object(this.isExplicit,this.hT,this.asn1Object)))},null!=e&&this.setByParam(e)},Pe(se.asn1.DERTaggedObject,se.asn1.ASN1Object);var se,de,pe,le=new function(){};function ce(e){for(var t=new Array,A=0;A<e.length;A++)t[A]=e.charCodeAt(A);return t}function ge(e){for(var t="",A=0;A<e.length;A++)t+=String.fromCharCode(e[A]);return t}function he(e){for(var t="",A=0;A<e.length;A++){var r=e[A].toString(16);1==r.length&&(r="0"+r),t+=r}return t}function ue(e){return he(ce(e))}function Ee(e){return(e=(e=e.replace(/\=/g,"")).replace(/\+/g,"-")).replace(/\//g,"_")}function me(e){return e.length%4==2?e+="==":e.length%4==3&&(e+="="),(e=e.replace(/-/g,"+")).replace(/_/g,"/")}function Ce(e){return e.length%2==1&&(e="0"+e),Ee(f(e))}function fe(e){return Q(me(e))}function Qe(e){return ke(Me(e))}function Ie(e){return decodeURIComponent(Ne(e))}function Be(e){for(var t="",A=0;A<e.length-1;A+=2)t+=String.fromCharCode(parseInt(e.substr(A,2),16));return t}function ye(e){for(var t="",A=0;A<e.length;A++)t+=("0"+e.charCodeAt(A).toString(16)).slice(-2);return t}function we(e){return f(e)}function ve(e){var t=we(e).replace(/(.{64})/g,"$1\r\n");return t.replace(/\r\n$/,"")}function Se(e){return Q(e.replace(/[^0-9A-Za-z\/+=]*/g,""))}function be(e,t){return"-----BEGIN "+t+"-----\r\n"+ve(e)+"\r\n-----END "+t+"-----\r\n"}function De(e,t){if(-1==e.indexOf("-----BEGIN "))throw"can't find PEM header: "+t;return Se(e=void 0!==t?(e=e.replace(new RegExp("^[^]*-----BEGIN "+t+"-----"),"")).replace(new RegExp("-----END "+t+"-----[^]*$"),""):(e=e.replace(/^[^]*-----BEGIN [^-]+-----/,"")).replace(/-----END [^-]+-----[^]*$/,""))}function Fe(e){var t,A,r,i,n,a,o,s,d,p,l;if(l=e.match(/^(\d{2}|\d{4})(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)(|\.\d+)Z$/))return s=l[1],t=parseInt(s),2===s.length&&(50<=t&&t<100?t=1900+t:0<=t&&t<50&&(t=2e3+t)),A=parseInt(l[2])-1,r=parseInt(l[3]),i=parseInt(l[4]),n=parseInt(l[5]),a=parseInt(l[6]),o=0,""!==(d=l[7])&&(p=(d.substr(1)+"00").substr(0,3),o=parseInt(p)),Date.UTC(t,A,r,i,n,a,o);throw"unsupported zulu format: "+e}function Re(e){return~~(Fe(e)/1e3)}function ke(e){return e.replace(/%/g,"")}function Ne(e){return e.replace(/(..)/g,"%$1")}function _e(e){var t="malformed IPv6 address";if(!e.match(/^[0-9A-Fa-f:]+$/))throw t;var A=(e=e.toLowerCase()).split(":").length-1;if(A<2)throw t;var r=":".repeat(7-A+2),i=(e=e.replace("::",r)).split(":");if(8!=i.length)throw t;for(var n=0;n<8;n++)i[n]=("0000"+i[n]).slice(-4);return i.join("")}function Ue(e){if(!e.match(/^[0-9A-Fa-f]{32}$/))throw"malformed IPv6 address octet";for(var t=(e=e.toLowerCase()).match(/.{1,4}/g),A=0;A<8;A++)t[A]=t[A].replace(/^0+/,""),""==t[A]&&(t[A]="0");var r=(e=":"+t.join(":")+":").match(/:(0:){2,}/g);if(null===r)return e.slice(1,-1);var i="";for(A=0;A<r.length;A++)r[A].length>i.length&&(i=r[A]);return(e=e.replace(i,"::")).slice(1,-1)}function Te(e){var t="malformed hex value";if(!e.match(/^([0-9A-Fa-f][0-9A-Fa-f]){1,}$/))throw t;if(8!=e.length)return 32==e.length?Ue(e):e;try{return parseInt(e.substr(0,2),16)+"."+parseInt(e.substr(2,2),16)+"."+parseInt(e.substr(4,2),16)+"."+parseInt(e.substr(6,2),16)}catch(e){throw t}}function Le(e){return e.match(/.{4}/g).map(function(e){var t=parseInt(e.substr(0,2),16),A=parseInt(e.substr(2),16);if(0==t&A<128)return String.fromCharCode(A);if(t<8){var r=128|63&A;return Ie((192|(7&t)<<3|(192&A)>>6).toString(16)+r.toString(16))}r=128|(15&t)<<2|(192&A)>>6;var i=128|63&A;return Ie((224|(240&t)>>4).toString(16)+r.toString(16)+i.toString(16))}).join("")}function Me(e){for(var t=encodeURIComponent(e),A="",r=0;r<t.length;r++)"%"==t[r]?(A+=t.substr(r,3),r+=2):A=A+"%"+ue(t[r]);return A}function xe(e){return!(e.length%2!=0||!e.match(/^[0-9a-f]+$/)&&!e.match(/^[0-9A-F]+$/))}function Ve(e){return e.length%2==1?"0"+e:e.substr(0,1)>"7"?"00"+e:e}le.getLblen=function(e,t){if("8"!=e.substr(t+2,1))return 1;var A=parseInt(e.substr(t+3,1));return 0==A?-1:0<A&&A<10?A+1:-2},le.getL=function(e,t){var A=le.getLblen(e,t);return A<1?"":e.substr(t+2,2*A)},le.getVblen=function(e,t){var A;return""==(A=le.getL(e,t))?-1:("8"===A.substr(0,1)?new B(A.substr(2),16):new B(A,16)).intValue()},le.getVidx=function(e,t){var A=le.getLblen(e,t);return A<0?A:t+2*(A+1)},le.getV=function(e,t){var A=le.getVidx(e,t),r=le.getVblen(e,t);return e.substr(A,2*r)},le.getTLV=function(e,t){return e.substr(t,2)+le.getL(e,t)+le.getV(e,t)},le.getTLVblen=function(e,t){return 2+2*le.getLblen(e,t)+2*le.getVblen(e,t)},le.getNextSiblingIdx=function(e,t){return le.getVidx(e,t)+2*le.getVblen(e,t)},le.getChildIdx=function(e,t){var A,r,i,n=le,a=[];A=n.getVidx(e,t),r=2*n.getVblen(e,t),"03"==e.substr(t,2)&&(A+=2,r-=2),i=0;for(var o=A;i<=r;){var s=n.getTLVblen(e,o);if((i+=s)<=r&&a.push(o),o+=s,i>=r)break}return a},le.getNthChildIdx=function(e,t,A){return le.getChildIdx(e,t)[A]},le.getIdxbyList=function(e,t,A,r){var i,n,a=le;return 0==A.length?void 0!==r&&e.substr(t,2)!==r?-1:t:(i=A.shift())>=(n=a.getChildIdx(e,t)).length?-1:a.getIdxbyList(e,n[i],A,r)},le.getIdxbyListEx=function(e,t,A,r){var i,n,a=le;if(0==A.length)return void 0!==r&&e.substr(t,2)!==r?-1:t;i=A.shift(),n=a.getChildIdx(e,t);for(var o=0,s=0;s<n.length;s++){var d=e.substr(n[s],2);if("number"==typeof i&&!a.isContextTag(d)&&o==i||"string"==typeof i&&a.isContextTag(d,i))return a.getIdxbyListEx(e,n[s],A,r);a.isContextTag(d)||o++}return-1},le.getTLVbyList=function(e,t,A,r){var i=le,n=i.getIdxbyList(e,t,A,r);return-1==n||n>=e.length?null:i.getTLV(e,n)},le.getTLVbyListEx=function(e,t,A,r){var i=le,n=i.getIdxbyListEx(e,t,A,r);return-1==n?null:i.getTLV(e,n)},le.getVbyList=function(e,t,A,r,i){var n,a,o=le;return-1==(n=o.getIdxbyList(e,t,A,r))||n>=e.length?null:(a=o.getV(e,n),!0===i&&(a=a.substr(2)),a)},le.getVbyListEx=function(e,t,A,r,i){var n,a,o=le;return-1==(n=o.getIdxbyListEx(e,t,A,r))?null:(a=o.getV(e,n),"03"==e.substr(n,2)&&!1!==i&&(a=a.substr(2)),a)},le.getInt=function(e,t,A){null==A&&(A=-1);try{var r=e.substr(t,2);if("02"!=r&&"03"!=r)return A;var i=le.getV(e,t);return"02"==r?parseInt(i,16):function(e){try{var t=e.substr(0,2);if("00"==t)return parseInt(e.substr(2),16);var A=parseInt(t,16),r=e.substr(2),i=parseInt(r,16).toString(2);return"0"==i&&(i="00000000"),i=i.slice(0,0-A),parseInt(i,2)}catch(e){return-1}}(i)}catch(e){return A}},le.getOID=function(e,t,A){null==A&&(A=null);try{return"06"!=e.substr(t,2)?A:function(e){if(!xe(e))return null;try{var t=[],A=e.substr(0,2),r=parseInt(A,16);t[0]=new String(Math.floor(r/40)),t[1]=new String(r%40);for(var i=e.substr(2),n=[],a=0;a<i.length/2;a++)n.push(parseInt(i.substr(2*a,2),16));var o=[],s="";for(a=0;a<n.length;a++)128&n[a]?s+=He((127&n[a]).toString(2),7):(s+=He((127&n[a]).toString(2),7),o.push(new String(parseInt(s,2))),s="");var d=t.join(".");return o.length>0&&(d=d+"."+o.join(".")),d}catch(e){return null}}(le.getV(e,t))}catch(e){return A}},le.getOIDName=function(e,t,A){null==A&&(A=null);try{var r=le.getOID(e,t,A);if(r==A)return A;var i=se.asn1.x509.OID.oid2name(r);return""==i?r:i}catch(e){return A}},le.getString=function(e,t,A){null==A&&(A=null);try{return Be(le.getV(e,t))}catch(e){return A}},le.hextooidstr=function(e){var t=function(e,t){return e.length>=t?e:new Array(t-e.length+1).join("0")+e},A=[],r=e.substr(0,2),i=parseInt(r,16);A[0]=new String(Math.floor(i/40)),A[1]=new String(i%40);for(var n=e.substr(2),a=[],o=0;o<n.length/2;o++)a.push(parseInt(n.substr(2*o,2),16));var s=[],d="";for(o=0;o<a.length;o++)128&a[o]?d+=t((127&a[o]).toString(2),7):(d+=t((127&a[o]).toString(2),7),s.push(new String(parseInt(d,2))),d="");var p=A.join(".");return s.length>0&&(p=p+"."+s.join(".")),p},le.dump=function(e,t,A,r){var i=le,n=i.getV,a=i.dump,o=i.getChildIdx,s=e;e instanceof se.asn1.ASN1Object&&(s=e.getEncodedHex());var d=function(e,t){return e.length<=2*t?e:e.substr(0,t)+"..(total "+e.length/2+"bytes).."+e.substr(e.length-t,t)};void 0===t&&(t={ommit_long_octet:32}),void 0===A&&(A=0),void 0===r&&(r="");var p,l=t.ommit_long_octet;if("01"==(p=s.substr(A,2)))return"00"==(c=n(s,A))?r+"BOOLEAN FALSE\n":r+"BOOLEAN TRUE\n";if("02"==p)return r+"INTEGER "+d(c=n(s,A),l)+"\n";if("03"==p){var c=n(s,A);return i.isASN1HEX(c.substr(2))?(I=r+"BITSTRING, encapsulates\n")+a(c.substr(2),t,0,r+" "):r+"BITSTRING "+d(c,l)+"\n"}if("04"==p)return c=n(s,A),i.isASN1HEX(c)?(I=r+"OCTETSTRING, encapsulates\n")+a(c,t,0,r+" "):r+"OCTETSTRING "+d(c,l)+"\n";if("05"==p)return r+"NULL\n";if("06"==p){var g=n(s,A),h=se.asn1.ASN1Util.oidHexToInt(g),u=se.asn1.x509.OID.oid2name(h),E=h.replace(/\./g," ");return""!=u?r+"ObjectIdentifier "+u+" ("+E+")\n":r+"ObjectIdentifier ("+E+")\n"}if("0a"==p)return r+"ENUMERATED "+parseInt(n(s,A))+"\n";if("0c"==p)return r+"UTF8String '"+Ie(n(s,A))+"'\n";if("13"==p)return r+"PrintableString '"+Ie(n(s,A))+"'\n";if("14"==p)return r+"TeletexString '"+Ie(n(s,A))+"'\n";if("16"==p)return r+"IA5String '"+Ie(n(s,A))+"'\n";if("17"==p)return r+"UTCTime "+Ie(n(s,A))+"\n";if("18"==p)return r+"GeneralizedTime "+Ie(n(s,A))+"\n";if("1a"==p)return r+"VisualString '"+Ie(n(s,A))+"'\n";if("1e"==p)return r+"BMPString '"+Le(n(s,A))+"'\n";if("30"==p){if("3000"==s.substr(A,4))return r+"SEQUENCE {}\n";I=r+"SEQUENCE\n";var m=t;if((2==(Q=o(s,A)).length||3==Q.length)&&"06"==s.substr(Q[0],2)&&"04"==s.substr(Q[Q.length-1],2)){u=i.oidname(n(s,Q[0]));var C=JSON.parse(JSON.stringify(t));C.x509ExtName=u,m=C}for(var f=0;f<Q.length;f++)I+=a(s,m,Q[f],r+" ");return I}if("31"==p){I=r+"SET\n";var Q=o(s,A);for(f=0;f<Q.length;f++)I+=a(s,t,Q[f],r+" ");return I}if(128&(p=parseInt(p,16))){var I,B=31&p;if(32&p){for(I=r+"["+B+"]\n",Q=o(s,A),f=0;f<Q.length;f++)I+=a(s,t,Q[f],r+" ");return I}return c=n(s,A),le.isASN1HEX(c)?(I=r+"["+B+"]\n")+a(c,t,0,r+" "):(("68747470"==c.substr(0,8)||"subjectAltName"===t.x509ExtName&&2==B)&&(c=Ie(c)),r+"["+B+"] "+c+"\n")}return r+"UNKNOWN("+p+") "+n(s,A)+"\n"},le.isContextTag=function(e,t){var A,r;e=e.toLowerCase();try{A=parseInt(e,16)}catch(e){return-1}if(void 0===t)return 128==(192&A);try{return null!=t.match(/^\[[0-9]+\]$/)&&!((r=parseInt(t.substr(1,t.length-1),10))>31)&&128==(192&A)&&(31&A)==r}catch(e){return!1}},le.isASN1HEX=function(e){var t=le;if(e.length%2==1)return!1;var A=t.getVblen(e,0),r=e.substr(0,2),i=t.getL(e,0);return e.length-r.length-i.length==2*A},le.checkStrictDER=function(e,t,A,r,i){var n=le;if(void 0===A){if("string"!=typeof e)throw new Error("not hex string");if(e=e.toLowerCase(),!se.lang.String.isHex(e))throw new Error("not hex string");A=e.length,i=(r=e.length/2)<128?1:Math.ceil(r.toString(16))+1}if(n.getL(e,t).length>2*i)throw new Error("L of TLV too long: idx="+t);var a=n.getVblen(e,t);if(a>r)throw new Error("value of L too long than hex: idx="+t);var o=n.getTLV(e,t),s=o.length-2-n.getL(e,t).length;if(s!==2*a)throw new Error("V string length and L's value not the same:"+s+"/"+2*a);if(0===t&&e.length!=o.length)throw new Error("total length and TLV length unmatch:"+e.length+"!="+o.length);var d=e.substr(t,2);if("02"===d){var p=n.getVidx(e,t);if("00"==e.substr(p,2)&&e.charCodeAt(p+2)<56)throw new Error("not least zeros for DER INTEGER")}if(32&parseInt(d,16)){for(var l=n.getVblen(e,t),c=0,g=n.getChildIdx(e,t),h=0;h<g.length;h++)c+=n.getTLV(e,g[h]).length,n.checkStrictDER(e,g[h],A,r,i);if(2*l!=c)throw new Error("sum of children's TLV length and L unmatch: "+2*l+"!="+c)}},le.oidname=function(e){var t=se.asn1;se.lang.String.isHex(e)&&(e=t.ASN1Util.oidHexToInt(e));var A=t.x509.OID.oid2name(e);return""===A&&(A=e),A},void 0!==se&&se||(t.KJUR=se={}),void 0!==se.lang&&se.lang||(se.lang={}),se.lang.String=function(){},"function"==typeof e?(t.utf8tob64u=de=function(t){return Ee(e.from(t,"utf8").toString("base64"))},t.b64utoutf8=pe=function(t){return e.from(me(t),"base64").toString("utf8")}):(t.utf8tob64u=de=function(e){return Ce(ke(Me(e)))},t.b64utoutf8=pe=function(e){return decodeURIComponent(Ne(fe(e)))}),se.lang.String.isInteger=function(e){return!!e.match(/^[0-9]+$/)||!!e.match(/^-[0-9]+$/)},se.lang.String.isHex=function(e){return xe(e)},se.lang.String.isBase64=function(e){return!(!(e=e.replace(/\s+/g,"")).match(/^[0-9A-Za-z+\/]+={0,3}$/)||e.length%4!=0)},se.lang.String.isBase64URL=function(e){return!e.match(/[+/=]/)&&(e=me(e),se.lang.String.isBase64(e))},se.lang.String.isIntegerArray=function(e){return!!(e=e.replace(/\s+/g,"")).match(/^\[[0-9,]+\]$/)},se.lang.String.isPrintable=function(e){return null!==e.match(/^[0-9A-Za-z '()+,-./:=?]*$/)},se.lang.String.isIA5=function(e){return null!==e.match(/^[\x20-\x21\x23-\x7f]*$/)},se.lang.String.isMail=function(e){return null!==e.match(/^[A-Za-z0-9]{1}[A-Za-z0-9_.-]*@{1}[A-Za-z0-9_.-]{1,}\.[A-Za-z0-9]{1,}$/)};var He=function(e,t,A){return null==A&&(A="0"),e.length>=t?e:new Array(t-e.length+1).join(A)+e};function Pe(e,t){var A=function(){};A.prototype=t.prototype,e.prototype=new A,e.prototype.constructor=e,e.superclass=t.prototype,t.prototype.constructor==Object.prototype.constructor&&(t.prototype.constructor=t)}void 0!==se&&se||(t.KJUR=se={}),void 0!==se.crypto&&se.crypto||(se.crypto={}),se.crypto.Util=new function(){this.DIGESTINFOHEAD={sha1:"3021300906052b0e03021a05000414",sha224:"302d300d06096086480165030402040500041c",sha256:"3031300d060960864801650304020105000420",sha384:"3041300d060960864801650304020205000430",sha512:"3051300d060960864801650304020305000440",md2:"3020300c06082a864886f70d020205000410",md5:"3020300c06082a864886f70d020505000410",ripemd160:"3021300906052b2403020105000414"},this.DEFAULTPROVIDER={md5:"cryptojs",sha1:"cryptojs",sha224:"cryptojs",sha256:"cryptojs",sha384:"cryptojs",sha512:"cryptojs",ripemd160:"cryptojs",hmacmd5:"cryptojs",hmacsha1:"cryptojs",hmacsha224:"cryptojs",hmacsha256:"cryptojs",hmacsha384:"cryptojs",hmacsha512:"cryptojs",hmacripemd160:"cryptojs",MD5withRSA:"cryptojs/jsrsa",SHA1withRSA:"cryptojs/jsrsa",SHA224withRSA:"cryptojs/jsrsa",SHA256withRSA:"cryptojs/jsrsa",SHA384withRSA:"cryptojs/jsrsa",SHA512withRSA:"cryptojs/jsrsa",RIPEMD160withRSA:"cryptojs/jsrsa",MD5withECDSA:"cryptojs/jsrsa",SHA1withECDSA:"cryptojs/jsrsa",SHA224withECDSA:"cryptojs/jsrsa",SHA256withECDSA:"cryptojs/jsrsa",SHA384withECDSA:"cryptojs/jsrsa",SHA512withECDSA:"cryptojs/jsrsa",RIPEMD160withECDSA:"cryptojs/jsrsa",SHA1withDSA:"cryptojs/jsrsa",SHA224withDSA:"cryptojs/jsrsa",SHA256withDSA:"cryptojs/jsrsa",MD5withRSAandMGF1:"cryptojs/jsrsa",SHAwithRSAandMGF1:"cryptojs/jsrsa",SHA1withRSAandMGF1:"cryptojs/jsrsa",SHA224withRSAandMGF1:"cryptojs/jsrsa",SHA256withRSAandMGF1:"cryptojs/jsrsa",SHA384withRSAandMGF1:"cryptojs/jsrsa",SHA512withRSAandMGF1:"cryptojs/jsrsa",RIPEMD160withRSAandMGF1:"cryptojs/jsrsa"},this.CRYPTOJSMESSAGEDIGESTNAME={md5:E.algo.MD5,sha1:E.algo.SHA1,sha224:E.algo.SHA224,sha256:E.algo.SHA256,sha384:E.algo.SHA384,sha512:E.algo.SHA512,ripemd160:E.algo.RIPEMD160},this.getDigestInfoHex=function(e,t){if(void 0===this.DIGESTINFOHEAD[t])throw"alg not supported in Util.DIGESTINFOHEAD: "+t;return this.DIGESTINFOHEAD[t]+e},this.getPaddedDigestInfoHex=function(e,t,A){var r=this.getDigestInfoHex(e,t),i=A/4;if(r.length+22>i)throw"key is too short for SigAlg: keylen="+A+","+t;for(var n="0001",a="00"+r,o="",s=i-4-a.length,d=0;d<s;d+=2)o+="ff";return n+o+a},this.hashString=function(e,t){return new se.crypto.MessageDigest({alg:t}).digestString(e)},this.hashHex=function(e,t){return new se.crypto.MessageDigest({alg:t}).digestHex(e)},this.sha1=function(e){return this.hashString(e,"sha1")},this.sha256=function(e){return this.hashString(e,"sha256")},this.sha256Hex=function(e){return this.hashHex(e,"sha256")},this.sha512=function(e){return this.hashString(e,"sha512")},this.sha512Hex=function(e){return this.hashHex(e,"sha512")},this.isKey=function(e){return e instanceof re||e instanceof se.crypto.DSA||e instanceof se.crypto.ECDSA}},se.crypto.Util.md5=function(e){return new se.crypto.MessageDigest({alg:"md5",prov:"cryptojs"}).digestString(e)},se.crypto.Util.ripemd160=function(e){return new se.crypto.MessageDigest({alg:"ripemd160",prov:"cryptojs"}).digestString(e)},se.crypto.Util.SECURERANDOMGEN=new ee,se.crypto.Util.getRandomHexOfNbytes=function(e){var t=new Array(e);return se.crypto.Util.SECURERANDOMGEN.nextBytes(t),he(t)},se.crypto.Util.getRandomBigIntegerOfNbytes=function(e){return new B(se.crypto.Util.getRandomHexOfNbytes(e),16)},se.crypto.Util.getRandomHexOfNbits=function(e){var t=e%8,A=new Array((e-t)/8+1);return se.crypto.Util.SECURERANDOMGEN.nextBytes(A),A[0]=(255<<t&255^255)&A[0],he(A)},se.crypto.Util.getRandomBigIntegerOfNbits=function(e){return new B(se.crypto.Util.getRandomHexOfNbits(e),16)},se.crypto.Util.getRandomBigIntegerZeroToMax=function(e){for(var t=e.bitLength();;){var A=se.crypto.Util.getRandomBigIntegerOfNbits(t);if(-1!=e.compareTo(A))return A}},se.crypto.Util.getRandomBigIntegerMinToMax=function(e,t){var A=e.compareTo(t);if(1==A)throw"biMin is greater than biMax";if(0==A)return e;var r=t.subtract(e);return se.crypto.Util.getRandomBigIntegerZeroToMax(r).add(e)},se.crypto.MessageDigest=function(e){this.setAlgAndProvider=function(e,t){if(null!==(e=se.crypto.MessageDigest.getCanonicalAlgName(e))&&void 0===t&&(t=se.crypto.Util.DEFAULTPROVIDER[e]),-1!=":md5:sha1:sha224:sha256:sha384:sha512:ripemd160:".indexOf(e)&&"cryptojs"==t){try{this.md=se.crypto.Util.CRYPTOJSMESSAGEDIGESTNAME[e].create()}catch(t){throw"setAlgAndProvider hash alg set fail alg="+e+"/"+t}this.updateString=function(e){this.md.update(e)},this.updateHex=function(e){var t=E.enc.Hex.parse(e);this.md.update(t)},this.digest=function(){return this.md.finalize().toString(E.enc.Hex)},this.digestString=function(e){return this.updateString(e),this.digest()},this.digestHex=function(e){return this.updateHex(e),this.digest()}}if(-1!=":sha256:".indexOf(e)&&"sjcl"==t){try{this.md=new sjcl.hash.sha256}catch(t){throw"setAlgAndProvider hash alg set fail alg="+e+"/"+t}this.updateString=function(e){this.md.update(e)},this.updateHex=function(e){var t=sjcl.codec.hex.toBits(e);this.md.update(t)},this.digest=function(){var e=this.md.finalize();return sjcl.codec.hex.fromBits(e)},this.digestString=function(e){return this.updateString(e),this.digest()},this.digestHex=function(e){return this.updateHex(e),this.digest()}}},this.updateString=function(e){throw"updateString(str) not supported for this alg/prov: "+this.algName+"/"+this.provName},this.updateHex=function(e){throw"updateHex(hex) not supported for this alg/prov: "+this.algName+"/"+this.provName},this.digest=function(){throw"digest() not supported for this alg/prov: "+this.algName+"/"+this.provName},this.digestString=function(e){throw"digestString(str) not supported for this alg/prov: "+this.algName+"/"+this.provName},this.digestHex=function(e){throw"digestHex(hex) not supported for this alg/prov: "+this.algName+"/"+this.provName},void 0!==e&&void 0!==e.alg&&(this.algName=e.alg,void 0===e.prov&&(this.provName=se.crypto.Util.DEFAULTPROVIDER[this.algName]),this.setAlgAndProvider(this.algName,this.provName))},se.crypto.MessageDigest.getCanonicalAlgName=function(e){return"string"==typeof e&&(e=(e=e.toLowerCase()).replace(/-/,"")),e},se.crypto.MessageDigest.getHashLength=function(e){var t=se.crypto.MessageDigest,A=t.getCanonicalAlgName(e);if(void 0===t.HASHLENGTH[A])throw"not supported algorithm: "+e;return t.HASHLENGTH[A]},se.crypto.MessageDigest.HASHLENGTH={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,ripemd160:20},se.crypto.Mac=function(e){this.setAlgAndProvider=function(e,t){if(null==(e=e.toLowerCase())&&(e="hmacsha1"),"hmac"!=(e=e.toLowerCase()).substr(0,4))throw"setAlgAndProvider unsupported HMAC alg: "+e;void 0===t&&(t=se.crypto.Util.DEFAULTPROVIDER[e]),this.algProv=e+"/"+t;var A=e.substr(4);if(-1!=":md5:sha1:sha224:sha256:sha384:sha512:ripemd160:".indexOf(A)&&"cryptojs"==t){try{var r=se.crypto.Util.CRYPTOJSMESSAGEDIGESTNAME[A];this.mac=E.algo.HMAC.create(r,this.pass)}catch(e){throw"setAlgAndProvider hash alg set fail hashAlg="+A+"/"+e}this.updateString=function(e){this.mac.update(e)},this.updateHex=function(e){var t=E.enc.Hex.parse(e);this.mac.update(t)},this.doFinal=function(){return this.mac.finalize().toString(E.enc.Hex)},this.doFinalString=function(e){return this.updateString(e),this.doFinal()},this.doFinalHex=function(e){return this.updateHex(e),this.doFinal()}}},this.updateString=function(e){throw"updateString(str) not supported for this alg/prov: "+this.algProv},this.updateHex=function(e){throw"updateHex(hex) not supported for this alg/prov: "+this.algProv},this.doFinal=function(){throw"digest() not supported for this alg/prov: "+this.algProv},this.doFinalString=function(e){throw"digestString(str) not supported for this alg/prov: "+this.algProv},this.doFinalHex=function(e){throw"digestHex(hex) not supported for this alg/prov: "+this.algProv},this.setPassword=function(e){if("string"==typeof e){var t=e;return e.length%2!=1&&e.match(/^[0-9A-Fa-f]+$/)||(t=ye(e)),void(this.pass=E.enc.Hex.parse(t))}if("object"!=(void 0===e?"undefined":g(e)))throw"KJUR.crypto.Mac unsupported password type: "+e;if(t=null,void 0!==e.hex){if(e.hex.length%2!=0||!e.hex.match(/^[0-9A-Fa-f]+$/))throw"Mac: wrong hex password: "+e.hex;t=e.hex}if(void 0!==e.utf8&&(t=Qe(e.utf8)),void 0!==e.rstr&&(t=ye(e.rstr)),void 0!==e.b64&&(t=Q(e.b64)),void 0!==e.b64u&&(t=fe(e.b64u)),null==t)throw"KJUR.crypto.Mac unsupported password type: "+e;this.pass=E.enc.Hex.parse(t)},void 0!==e&&(void 0!==e.pass&&this.setPassword(e.pass),void 0!==e.alg&&(this.algName=e.alg,void 0===e.prov&&(this.provName=se.crypto.Util.DEFAULTPROVIDER[this.algName]),this.setAlgAndProvider(this.algName,this.provName)))},se.crypto.Signature=function(e){var t=null;if(this._setAlgNames=function(){var e=this.algName.match(/^(.+)with(.+)$/);e&&(this.mdAlgName=e[1].toLowerCase(),this.pubkeyAlgName=e[2].toLowerCase(),"rsaandmgf1"==this.pubkeyAlgName&&"sha"==this.mdAlgName&&(this.mdAlgName="sha1"))},this._zeroPaddingOfSignature=function(e,t){for(var A="",r=t/4-e.length,i=0;i<r;i++)A+="0";return A+e},this.setAlgAndProvider=function(e,t){if(this._setAlgNames(),"cryptojs/jsrsa"!=t)throw new Error("provider not supported: "+t);if(-1!=":md5:sha1:sha224:sha256:sha384:sha512:ripemd160:".indexOf(this.mdAlgName)){try{this.md=new se.crypto.MessageDigest({alg:this.mdAlgName})}catch(e){throw new Error("setAlgAndProvider hash alg set fail alg="+this.mdAlgName+"/"+e)}this.init=function(e,t){var A=null;try{A=void 0===t?Je.getKey(e):Je.getKey(e,t)}catch(e){throw"init failed:"+e}if(!0===A.isPrivate)this.prvKey=A,this.state="SIGN";else{if(!0!==A.isPublic)throw"init failed.:"+A;this.pubKey=A,this.state="VERIFY"}},this.updateString=function(e){this.md.updateString(e)},this.updateHex=function(e){this.md.updateHex(e)},this.sign=function(){if(this.sHashHex=this.md.digest(),void 0===this.prvKey&&void 0!==this.ecprvhex&&void 0!==this.eccurvename&&void 0!==se.crypto.ECDSA&&(this.prvKey=new se.crypto.ECDSA({curve:this.eccurvename,prv:this.ecprvhex})),this.prvKey instanceof re&&"rsaandmgf1"===this.pubkeyAlgName)this.hSign=this.prvKey.signWithMessageHashPSS(this.sHashHex,this.mdAlgName,this.pssSaltLen);else if(this.prvKey instanceof re&&"rsa"===this.pubkeyAlgName)this.hSign=this.prvKey.signWithMessageHash(this.sHashHex,this.mdAlgName);else if(this.prvKey instanceof se.crypto.ECDSA)this.hSign=this.prvKey.signWithMessageHash(this.sHashHex);else{if(!(this.prvKey instanceof se.crypto.DSA))throw"Signature: unsupported private key alg: "+this.pubkeyAlgName;this.hSign=this.prvKey.signWithMessageHash(this.sHashHex)}return this.hSign},this.signString=function(e){return this.updateString(e),this.sign()},this.signHex=function(e){return this.updateHex(e),this.sign()},this.verify=function(e){if(this.sHashHex=this.md.digest(),void 0===this.pubKey&&void 0!==this.ecpubhex&&void 0!==this.eccurvename&&void 0!==se.crypto.ECDSA&&(this.pubKey=new se.crypto.ECDSA({curve:this.eccurvename,pub:this.ecpubhex})),this.pubKey instanceof re&&"rsaandmgf1"===this.pubkeyAlgName)return this.pubKey.verifyWithMessageHashPSS(this.sHashHex,e,this.mdAlgName,this.pssSaltLen);if(this.pubKey instanceof re&&"rsa"===this.pubkeyAlgName)return this.pubKey.verifyWithMessageHash(this.sHashHex,e);if(void 0!==se.crypto.ECDSA&&this.pubKey instanceof se.crypto.ECDSA)return this.pubKey.verifyWithMessageHash(this.sHashHex,e);if(void 0!==se.crypto.DSA&&this.pubKey instanceof se.crypto.DSA)return this.pubKey.verifyWithMessageHash(this.sHashHex,e);throw"Signature: unsupported public key alg: "+this.pubkeyAlgName}}},this.init=function(e,t){throw"init(key, pass) not supported for this alg:prov="+this.algProvName},this.updateString=function(e){throw"updateString(str) not supported for this alg:prov="+this.algProvName},this.updateHex=function(e){throw"updateHex(hex) not supported for this alg:prov="+this.algProvName},this.sign=function(){throw"sign() not supported for this alg:prov="+this.algProvName},this.signString=function(e){throw"digestString(str) not supported for this alg:prov="+this.algProvName},this.signHex=function(e){throw"digestHex(hex) not supported for this alg:prov="+this.algProvName},this.verify=function(e){throw"verify(hSigVal) not supported for this alg:prov="+this.algProvName},this.initParams=e,void 0!==e&&(void 0!==e.alg&&(this.algName=e.alg,void 0===e.prov?this.provName=se.crypto.Util.DEFAULTPROVIDER[this.algName]:this.provName=e.prov,this.algProvName=this.algName+":"+this.provName,this.setAlgAndProvider(this.algName,this.provName),this._setAlgNames()),void 0!==e.psssaltlen&&(this.pssSaltLen=e.psssaltlen),void 0!==e.prvkeypem)){if(void 0!==e.prvkeypas)throw"both prvkeypem and prvkeypas parameters not supported";try{t=Je.getKey(e.prvkeypem),this.init(t)}catch(e){throw"fatal error to load pem private key: "+e}}},se.crypto.Cipher=function(e){},se.crypto.Cipher.encrypt=function(e,t,A){if(t instanceof re&&t.isPublic){var r=se.crypto.Cipher.getAlgByKeyAndName(t,A);if("RSA"===r)return t.encrypt(e);if("RSAOAEP"===r)return t.encryptOAEP(e,"sha1");var i=r.match(/^RSAOAEP(\d+)$/);if(null!==i)return t.encryptOAEP(e,"sha"+i[1]);throw"Cipher.encrypt: unsupported algorithm for RSAKey: "+A}throw"Cipher.encrypt: unsupported key or algorithm"},se.crypto.Cipher.decrypt=function(e,t,A){if(t instanceof re&&t.isPrivate){var r=se.crypto.Cipher.getAlgByKeyAndName(t,A);if("RSA"===r)return t.decrypt(e);if("RSAOAEP"===r)return t.decryptOAEP(e,"sha1");var i=r.match(/^RSAOAEP(\d+)$/);if(null!==i)return t.decryptOAEP(e,"sha"+i[1]);throw"Cipher.decrypt: unsupported algorithm for RSAKey: "+A}throw"Cipher.decrypt: unsupported key or algorithm"},se.crypto.Cipher.getAlgByKeyAndName=function(e,t){if(e instanceof re){if(-1!=":RSA:RSAOAEP:RSAOAEP224:RSAOAEP256:RSAOAEP384:RSAOAEP512:".indexOf(t))return t;if(null==t)return"RSA";throw"getAlgByKeyAndName: not supported algorithm name for RSAKey: "+t}throw"getAlgByKeyAndName: not supported algorithm name: "+t},se.crypto.OID=new function(){this.oidhex2name={"2a864886f70d010101":"rsaEncryption","2a8648ce3d0201":"ecPublicKey","2a8648ce380401":"dsa","2a8648ce3d030107":"secp256r1","2b8104001f":"secp192k1","2b81040021":"secp224r1","2b8104000a":"secp256k1","2b81040023":"secp521r1","2b81040022":"secp384r1","2a8648ce380403":"SHA1withDSA","608648016503040301":"SHA224withDSA","608648016503040302":"SHA256withDSA"}},void 0!==se&&se||(t.KJUR=se={}),void 0!==se.crypto&&se.crypto||(se.crypto={}),se.crypto.ECDSA=function(e){var t=Error,A=B,r=ne,i=se.crypto.ECDSA,n=se.crypto.ECParameterDB,a=i.getName,o=le,s=o.getVbyListEx,d=o.isASN1HEX,p=new ee;this.type="EC",this.isPrivate=!1,this.isPublic=!1,this.getBigRandom=function(e){return new A(e.bitLength(),p).mod(e.subtract(A.ONE)).add(A.ONE)},this.setNamedCurve=function(e){this.ecparams=n.getByName(e),this.prvKeyHex=null,this.pubKeyHex=null,this.curveName=e},this.setPrivateKeyHex=function(e){this.isPrivate=!0,this.prvKeyHex=e},this.setPublicKeyHex=function(e){this.isPublic=!0,this.pubKeyHex=e},this.getPublicKeyXYHex=function(){var e=this.pubKeyHex;if("04"!==e.substr(0,2))throw"this method supports uncompressed format(04) only";var t=this.ecparams.keylen/4;if(e.length!==2+2*t)throw"malformed public key hex length";var A={};return A.x=e.substr(2,t),A.y=e.substr(2+t),A},this.getShortNISTPCurveName=function(){var e=this.curveName;return"secp256r1"===e||"NIST P-256"===e||"P-256"===e||"prime256v1"===e?"P-256":"secp384r1"===e||"NIST P-384"===e||"P-384"===e?"P-384":null},this.generateKeyPairHex=function(){var e=this.ecparams.n,t=this.getBigRandom(e),A=this.ecparams.G.multiply(t),r=A.getX().toBigInteger(),i=A.getY().toBigInteger(),n=this.ecparams.keylen/4,a=("0000000000"+t.toString(16)).slice(-n),o="04"+("0000000000"+r.toString(16)).slice(-n)+("0000000000"+i.toString(16)).slice(-n);return this.setPrivateKeyHex(a),this.setPublicKeyHex(o),{ecprvhex:a,ecpubhex:o}},this.signWithMessageHash=function(e){return this.signHex(e,this.prvKeyHex)},this.signHex=function(e,t){var r=new A(t,16),n=this.ecparams.n,a=new A(e.substring(0,this.ecparams.keylen/4),16);do{var o=this.getBigRandom(n),s=this.ecparams.G.multiply(o).getX().toBigInteger().mod(n)}while(s.compareTo(A.ZERO)<=0);var d=o.modInverse(n).multiply(a.add(r.multiply(s))).mod(n);return i.biRSSigToASN1Sig(s,d)},this.sign=function(e,t){var r=t,i=this.ecparams.n,n=A.fromByteArrayUnsigned(e);do{var a=this.getBigRandom(i),o=this.ecparams.G.multiply(a).getX().toBigInteger().mod(i)}while(o.compareTo(B.ZERO)<=0);var s=a.modInverse(i).multiply(n.add(r.multiply(o))).mod(i);return this.serializeSig(o,s)},this.verifyWithMessageHash=function(e,t){return this.verifyHex(e,t,this.pubKeyHex)},this.verifyHex=function(e,t,n){try{var a,o,s=i.parseSigHex(t);a=s.r,o=s.s;var d=r.decodeFromHex(this.ecparams.curve,n),p=new A(e.substring(0,this.ecparams.keylen/4),16);return this.verifyRaw(p,a,o,d)}catch(e){return!1}},this.verify=function(e,t,i){var n,a,o;if(Bitcoin.Util.isArray(t)){var s=this.parseSig(t);n=s.r,a=s.s}else{if("object"!==(void 0===t?"undefined":g(t))||!t.r||!t.s)throw"Invalid value for signature";n=t.r,a=t.s}if(i instanceof ne)o=i;else{if(!Bitcoin.Util.isArray(i))throw"Invalid format for pubkey value, must be byte array or ECPointFp";o=r.decodeFrom(this.ecparams.curve,i)}var d=A.fromByteArrayUnsigned(e);return this.verifyRaw(d,n,a,o)},this.verifyRaw=function(e,t,r,i){var n=this.ecparams.n,a=this.ecparams.G;if(t.compareTo(A.ONE)<0||t.compareTo(n)>=0)return!1;if(r.compareTo(A.ONE)<0||r.compareTo(n)>=0)return!1;var o=r.modInverse(n),s=e.multiply(o).mod(n),d=t.multiply(o).mod(n);return a.multiply(s).add(i.multiply(d)).getX().toBigInteger().mod(n).equals(t)},this.serializeSig=function(e,t){var A=e.toByteArraySigned(),r=t.toByteArraySigned(),i=[];return i.push(2),i.push(A.length),(i=i.concat(A)).push(2),i.push(r.length),(i=i.concat(r)).unshift(i.length),i.unshift(48),i},this.parseSig=function(e){var t;if(48!=e[0])throw new Error("Signature not a valid DERSequence");if(2!=e[t=2])throw new Error("First element in signature must be a DERInteger");var r=e.slice(t+2,t+2+e[t+1]);if(2!=e[t+=2+e[t+1]])throw new Error("Second element in signature must be a DERInteger");var i=e.slice(t+2,t+2+e[t+1]);return t+=2+e[t+1],{r:A.fromByteArrayUnsigned(r),s:A.fromByteArrayUnsigned(i)}},this.parseSigCompact=function(e){if(65!==e.length)throw"Signature has the wrong length";var t=e[0]-27;if(t<0||t>7)throw"Invalid signature type";var r=this.ecparams.n;return{r:A.fromByteArrayUnsigned(e.slice(1,33)).mod(r),s:A.fromByteArrayUnsigned(e.slice(33,65)).mod(r),i:t}},this.readPKCS5PrvKeyHex=function(e){if(!1===d(e))throw new Error("not ASN.1 hex string");var t,A,r;try{t=s(e,0,["[0]",0],"06"),A=s(e,0,[1],"04");try{r=s(e,0,["[1]",0],"03")}catch(e){}}catch(e){throw new Error("malformed PKCS#1/5 plain ECC private key")}if(this.curveName=a(t),void 0===this.curveName)throw"unsupported curve name";this.setNamedCurve(this.curveName),this.setPublicKeyHex(r),this.setPrivateKeyHex(A),this.isPublic=!1},this.readPKCS8PrvKeyHex=function(e){if(!1===d(e))throw new t("not ASN.1 hex string");var A,r,i;try{s(e,0,[1,0],"06"),A=s(e,0,[1,1],"06"),r=s(e,0,[2,0,1],"04");try{i=s(e,0,[2,0,"[1]",0],"03")}catch(e){}}catch(e){throw new t("malformed PKCS#8 plain ECC private key")}if(this.curveName=a(A),void 0===this.curveName)throw new t("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(i),this.setPrivateKeyHex(r),this.isPublic=!1},this.readPKCS8PubKeyHex=function(e){if(!1===d(e))throw new t("not ASN.1 hex string");var A,r;try{s(e,0,[0,0],"06"),A=s(e,0,[0,1],"06"),r=s(e,0,[1],"03")}catch(e){throw new t("malformed PKCS#8 ECC public key")}if(this.curveName=a(A),null===this.curveName)throw new t("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(r)},this.readCertPubKeyHex=function(e,A){if(!1===d(e))throw new t("not ASN.1 hex string");var r,i;try{r=s(e,0,[0,5,0,1],"06"),i=s(e,0,[0,5,1],"03")}catch(e){throw new t("malformed X.509 certificate ECC public key")}if(this.curveName=a(r),null===this.curveName)throw new t("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(i)},void 0!==e&&void 0!==e.curve&&(this.curveName=e.curve),void 0===this.curveName&&(this.curveName="secp256r1"),this.setNamedCurve(this.curveName),void 0!==e&&(void 0!==e.prv&&this.setPrivateKeyHex(e.prv),void 0!==e.pub&&this.setPublicKeyHex(e.pub))},se.crypto.ECDSA.parseSigHex=function(e){var t=se.crypto.ECDSA.parseSigHexInHexRS(e);return{r:new B(t.r,16),s:new B(t.s,16)}},se.crypto.ECDSA.parseSigHexInHexRS=function(e){var t=le,A=t.getChildIdx,r=t.getV;if(t.checkStrictDER(e,0),"30"!=e.substr(0,2))throw new Error("signature is not a ASN.1 sequence");var i=A(e,0);if(2!=i.length)throw new Error("signature shall have two elements");var n=i[0],a=i[1];if("02"!=e.substr(n,2))throw new Error("1st item not ASN.1 integer");if("02"!=e.substr(a,2))throw new Error("2nd item not ASN.1 integer");return{r:r(e,n),s:r(e,a)}},se.crypto.ECDSA.asn1SigToConcatSig=function(e){var t=se.crypto.ECDSA.parseSigHexInHexRS(e),A=t.r,r=t.s;if("00"==A.substr(0,2)&&A.length%32==2&&(A=A.substr(2)),"00"==r.substr(0,2)&&r.length%32==2&&(r=r.substr(2)),A.length%32==30&&(A="00"+A),r.length%32==30&&(r="00"+r),A.length%32!=0)throw"unknown ECDSA sig r length error";if(r.length%32!=0)throw"unknown ECDSA sig s length error";return A+r},se.crypto.ECDSA.concatSigToASN1Sig=function(e){if(e.length/2*8%128!=0)throw"unknown ECDSA concatinated r-s sig length error";var t=e.substr(0,e.length/2),A=e.substr(e.length/2);return se.crypto.ECDSA.hexRSSigToASN1Sig(t,A)},se.crypto.ECDSA.hexRSSigToASN1Sig=function(e,t){var A=new B(e,16),r=new B(t,16);return se.crypto.ECDSA.biRSSigToASN1Sig(A,r)},se.crypto.ECDSA.biRSSigToASN1Sig=function(e,t){var A=se.asn1,r=new A.DERInteger({bigint:e}),i=new A.DERInteger({bigint:t});return new A.DERSequence({array:[r,i]}).getEncodedHex()},se.crypto.ECDSA.getName=function(e){return"2b8104001f"===e?"secp192k1":"2a8648ce3d030107"===e?"secp256r1":"2b8104000a"===e?"secp256k1":"2b81040021"===e?"secp224r1":"2b81040022"===e?"secp384r1":-1!=="|secp256r1|NIST P-256|P-256|prime256v1|".indexOf(e)?"secp256r1":-1!=="|secp256k1|".indexOf(e)?"secp256k1":-1!=="|secp224r1|NIST P-224|P-224|".indexOf(e)?"secp224r1":-1!=="|secp384r1|NIST P-384|P-384|".indexOf(e)?"secp384r1":null},void 0!==se&&se||(t.KJUR=se={}),void 0!==se.crypto&&se.crypto||(se.crypto={}),se.crypto.ECParameterDB=new function(){var e={},t={};function A(e){return new B(e,16)}this.getByName=function(A){var r=A;if(void 0!==t[r]&&(r=t[A]),void 0!==e[r])return e[r];throw"unregistered EC curve name: "+r},this.regist=function(r,i,n,a,o,s,d,p,l,c,g,h){e[r]={};var u=A(n),E=A(a),m=A(o),C=A(s),f=A(d),Q=new ae(u,E,m),I=Q.decodePointHex("04"+p+l);e[r].name=r,e[r].keylen=i,e[r].curve=Q,e[r].G=I,e[r].n=C,e[r].h=f,e[r].oid=g,e[r].info=h;for(var B=0;B<c.length;B++)t[c[B]]=r}},se.crypto.ECParameterDB.regist("secp128r1",128,"FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF","FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFC","E87579C11079F43DD824993C2CEE5ED3","FFFFFFFE0000000075A30D1B9038A115","1","161FF7528B899B2D0C28607CA52C5B86","CF5AC8395BAFEB13C02DA292DDED7A83",[],"","secp128r1 : SECG curve over a 128 bit prime field"),se.crypto.ECParameterDB.regist("secp160k1",160,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFAC73","0","7","0100000000000000000001B8FA16DFAB9ACA16B6B3","1","3B4C382CE37AA192A4019E763036F4F5DD4D7EBB","938CF935318FDCED6BC28286531733C3F03C4FEE",[],"","secp160k1 : SECG curve over a 160 bit prime field"),se.crypto.ECParameterDB.regist("secp160r1",160,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFC","1C97BEFC54BD7A8B65ACF89F81D4D4ADC565FA45","0100000000000000000001F4C8F927AED3CA752257","1","4A96B5688EF573284664698968C38BB913CBFC82","23A628553168947D59DCC912042351377AC5FB32",[],"","secp160r1 : SECG curve over a 160 bit prime field"),se.crypto.ECParameterDB.regist("secp192k1",192,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFEE37","0","3","FFFFFFFFFFFFFFFFFFFFFFFE26F2FC170F69466A74DEFD8D","1","DB4FF10EC057E9AE26B07D0280B7F4341DA5D1B1EAE06C7D","9B2F2F6D9C5628A7844163D015BE86344082AA88D95E2F9D",[]),se.crypto.ECParameterDB.regist("secp192r1",192,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFC","64210519E59C80E70FA7E9AB72243049FEB8DEECC146B9B1","FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22831","1","188DA80EB03090F67CBF20EB43A18800F4FF0AFD82FF1012","07192B95FFC8DA78631011ED6B24CDD573F977A11E794811",[]),se.crypto.ECParameterDB.regist("secp224r1",224,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000001","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFE","B4050A850C04B3ABF54132565044B0B7D7BFD8BA270B39432355FFB4","FFFFFFFFFFFFFFFFFFFFFFFFFFFF16A2E0B8F03E13DD29455C5C2A3D","1","B70E0CBD6BB4BF7F321390B94A03C1D356C21122343280D6115C1D21","BD376388B5F723FB4C22DFE6CD4375A05A07476444D5819985007E34",[]),se.crypto.ECParameterDB.regist("secp256k1",256,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F","0","7","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141","1","79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798","483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8",[]),se.crypto.ECParameterDB.regist("secp256r1",256,"FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF","FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC","5AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604B","FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551","1","6B17D1F2E12C4247F8BCE6E563A440F277037D812DEB33A0F4A13945D898C296","4FE342E2FE1A7F9B8EE7EB4A7C0F9E162BCE33576B315ECECBB6406837BF51F5",["NIST P-256","P-256","prime256v1"]),se.crypto.ECParameterDB.regist("secp384r1",384,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFC","B3312FA7E23EE7E4988E056BE3F82D19181D9C6EFE8141120314088F5013875AC656398D8A2ED19D2A85C8EDD3EC2AEF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7634D81F4372DDF581A0DB248B0A77AECEC196ACCC52973","1","AA87CA22BE8B05378EB1C71EF320AD746E1D3B628BA79B9859F741E082542A385502F25DBF55296C3A545E3872760AB7","3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f",["NIST P-384","P-384"]),se.crypto.ECParameterDB.regist("secp521r1",521,"1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF","1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC","051953EB9618E1C9A1F929A21A0B68540EEA2DA725B99B315F3B8B489918EF109E156193951EC7E937B1652C0BD3BB1BF073573DF883D2C34F1EF451FD46B503F00","1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386409","1","C6858E06B70404E9CD9E3ECB662395B4429C648139053FB521F828AF606B4D3DBAA14B5E77EFE75928FE1DC127A2FFA8DE3348B3C1856A429BF97E7E31C2E5BD66","011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650",["NIST P-521","P-521"]);var Je=function(){var e=function(e,A,r){return t(E.AES,e,A,r)},t=function(e,t,A,r){var i=E.enc.Hex.parse(t),n=E.enc.Hex.parse(A),a=E.enc.Hex.parse(r),o={};o.key=n,o.iv=a,o.ciphertext=i;var s=e.decrypt(o,n,{iv:a});return E.enc.Hex.stringify(s)},A=function(e,t,A){return r(E.AES,e,t,A)},r=function(e,t,A,r){var i=E.enc.Hex.parse(t),n=E.enc.Hex.parse(A),a=E.enc.Hex.parse(r),o=e.encrypt(i,n,{iv:a}),s=E.enc.Hex.parse(o.toString());return E.enc.Base64.stringify(s)},i={"AES-256-CBC":{proc:e,eproc:A,keylen:32,ivlen:16},"AES-192-CBC":{proc:e,eproc:A,keylen:24,ivlen:16},"AES-128-CBC":{proc:e,eproc:A,keylen:16,ivlen:16},"DES-EDE3-CBC":{proc:function(e,A,r){return t(E.TripleDES,e,A,r)},eproc:function(e,t,A){return r(E.TripleDES,e,t,A)},keylen:24,ivlen:8},"DES-CBC":{proc:function(e,A,r){return t(E.DES,e,A,r)},eproc:function(e,t,A){return r(E.DES,e,t,A)},keylen:8,ivlen:8}},n=function(e){var t={},A=e.match(new RegExp("DEK-Info: ([^,]+),([0-9A-Fa-f]+)","m"));A&&(t.cipher=A[1],t.ivsalt=A[2]);var r=e.match(new RegExp("-----BEGIN ([A-Z]+) PRIVATE KEY-----"));r&&(t.type=r[1]);var i=-1,n=0;-1!=e.indexOf("\r\n\r\n")&&(i=e.indexOf("\r\n\r\n"),n=2),-1!=e.indexOf("\n\n")&&(i=e.indexOf("\n\n"),n=1);var a=e.indexOf("-----END");if(-1!=i&&-1!=a){var o=e.substring(i+2*n,a-n);o=o.replace(/\s+/g,""),t.data=o}return t},a=function(e,t,A){for(var r=A.substring(0,16),n=E.enc.Hex.parse(r),a=E.enc.Utf8.parse(t),o=i[e].keylen+i[e].ivlen,s="",d=null;;){var p=E.algo.MD5.create();if(null!=d&&p.update(d),p.update(a),p.update(n),d=p.finalize(),(s+=E.enc.Hex.stringify(d)).length>=2*o)break}var l={};return l.keyhex=s.substr(0,2*i[e].keylen),l.ivhex=s.substr(2*i[e].keylen,2*i[e].ivlen),l},o=function(e,t,A,r){var n=E.enc.Base64.parse(e),a=E.enc.Hex.stringify(n);return(0,i[t].proc)(a,A,r)};return{version:"1.0.0",parsePKCS5PEM:function(e){return n(e)},getKeyAndUnusedIvByPasscodeAndIvsalt:function(e,t,A){return a(e,t,A)},decryptKeyB64:function(e,t,A,r){return o(e,t,A,r)},getDecryptedKeyHex:function(e,t){var A=n(e),r=A.cipher,i=A.ivsalt,s=A.data,d=a(r,t,i).keyhex;return o(s,r,d,i)},getEncryptedPKCS5PEMFromPrvKeyHex:function(e,t,A,r,n){var o="";if(void 0!==r&&null!=r||(r="AES-256-CBC"),void 0===i[r])throw new Error("KEYUTIL unsupported algorithm: "+r);void 0!==n&&null!=n||(n=function(e){var t=E.lib.WordArray.random(e);return E.enc.Hex.stringify(t)}(i[r].ivlen).toUpperCase());var s=function(e,t,A,r){return(0,i[t].eproc)(e,A,r)}(t,r,a(r,A,n).keyhex,n);return o="-----BEGIN "+e+" PRIVATE KEY-----\r\n",o+="Proc-Type: 4,ENCRYPTED\r\n",o+="DEK-Info: "+r+","+n+"\r\n",o+="\r\n",(o+=s.replace(/(.{64})/g,"$1\r\n"))+"\r\n-----END "+e+" PRIVATE KEY-----\r\n"},parseHexOfEncryptedPKCS8:function(e){var t=le,A=t.getChildIdx,r=t.getV,i={},n=A(e,0);if(2!=n.length)throw new Error("malformed format: SEQUENCE(0).items != 2: "+n.length);i.ciphertext=r(e,n[1]);var a=A(e,n[0]);if(2!=a.length)throw new Error("malformed format: SEQUENCE(0.0).items != 2: "+a.length);if("2a864886f70d01050d"!=r(e,a[0]))throw new Error("this only supports pkcs5PBES2");var o=A(e,a[1]);if(2!=a.length)throw new Error("malformed format: SEQUENCE(0.0.1).items != 2: "+o.length);var s=A(e,o[1]);if(2!=s.length)throw new Error("malformed format: SEQUENCE(0.0.1.1).items != 2: "+s.length);if("2a864886f70d0307"!=r(e,s[0]))throw"this only supports TripleDES";i.encryptionSchemeAlg="TripleDES",i.encryptionSchemeIV=r(e,s[1]);var d=A(e,o[0]);if(2!=d.length)throw new Error("malformed format: SEQUENCE(0.0.1.0).items != 2: "+d.length);if("2a864886f70d01050c"!=r(e,d[0]))throw new Error("this only supports pkcs5PBKDF2");var p=A(e,d[1]);if(p.length<2)throw new Error("malformed format: SEQUENCE(0.0.1.0.1).items < 2: "+p.length);i.pbkdf2Salt=r(e,p[0]);var l=r(e,p[1]);try{i.pbkdf2Iter=parseInt(l,16)}catch(e){throw new Error("malformed format pbkdf2Iter: "+l)}return i},getPBKDF2KeyHexFromParam:function(e,t){var A=E.enc.Hex.parse(e.pbkdf2Salt),r=e.pbkdf2Iter,i=E.PBKDF2(t,A,{keySize:6,iterations:r});return E.enc.Hex.stringify(i)},_getPlainPKCS8HexFromEncryptedPKCS8PEM:function(e,t){var A=De(e,"ENCRYPTED PRIVATE KEY"),r=this.parseHexOfEncryptedPKCS8(A),i=Je.getPBKDF2KeyHexFromParam(r,t),n={};n.ciphertext=E.enc.Hex.parse(r.ciphertext);var a=E.enc.Hex.parse(i),o=E.enc.Hex.parse(r.encryptionSchemeIV),s=E.TripleDES.decrypt(n,a,{iv:o});return E.enc.Hex.stringify(s)},getKeyFromEncryptedPKCS8PEM:function(e,t){var A=this._getPlainPKCS8HexFromEncryptedPKCS8PEM(e,t);return this.getKeyFromPlainPrivatePKCS8Hex(A)},parsePlainPrivatePKCS8Hex:function(e){var t=le,A=t.getChildIdx,r=t.getV,i={algparam:null};if("30"!=e.substr(0,2))throw new Error("malformed plain PKCS8 private key(code:001)");var n=A(e,0);if(n.length<3)throw new Error("malformed plain PKCS8 private key(code:002)");if("30"!=e.substr(n[1],2))throw new Error("malformed PKCS8 private key(code:003)");var a=A(e,n[1]);if(2!=a.length)throw new Error("malformed PKCS8 private key(code:004)");if("06"!=e.substr(a[0],2))throw new Error("malformed PKCS8 private key(code:005)");if(i.algoid=r(e,a[0]),"06"==e.substr(a[1],2)&&(i.algparam=r(e,a[1])),"04"!=e.substr(n[2],2))throw new Error("malformed PKCS8 private key(code:006)");return i.keyidx=t.getVidx(e,n[2]),i},getKeyFromPlainPrivatePKCS8PEM:function(e){var t=De(e,"PRIVATE KEY");return this.getKeyFromPlainPrivatePKCS8Hex(t)},getKeyFromPlainPrivatePKCS8Hex:function(e){var t,A=this.parsePlainPrivatePKCS8Hex(e);if("2a864886f70d010101"==A.algoid)t=new re;else if("2a8648ce380401"==A.algoid)t=new se.crypto.DSA;else{if("2a8648ce3d0201"!=A.algoid)throw new Error("unsupported private key algorithm");t=new se.crypto.ECDSA}return t.readPKCS8PrvKeyHex(e),t},_getKeyFromPublicPKCS8Hex:function(e){var t,A=le.getVbyList(e,0,[0,0],"06");if("2a864886f70d010101"===A)t=new re;else if("2a8648ce380401"===A)t=new se.crypto.DSA;else{if("2a8648ce3d0201"!==A)throw new Error("unsupported PKCS#8 public key hex");t=new se.crypto.ECDSA}return t.readPKCS8PubKeyHex(e),t},parsePublicRawRSAKeyHex:function(e){var t=le,A=t.getChildIdx,r=t.getV,i={};if("30"!=e.substr(0,2))throw new Error("malformed RSA key(code:001)");var n=A(e,0);if(2!=n.length)throw new Error("malformed RSA key(code:002)");if("02"!=e.substr(n[0],2))throw new Error("malformed RSA key(code:003)");if(i.n=r(e,n[0]),"02"!=e.substr(n[1],2))throw new Error("malformed RSA key(code:004)");return i.e=r(e,n[1]),i},parsePublicPKCS8Hex:function(e){var t=le,A=t.getChildIdx,r=t.getV,i={algparam:null},n=A(e,0);if(2!=n.length)throw new Error("outer DERSequence shall have 2 elements: "+n.length);var a=n[0];if("30"!=e.substr(a,2))throw new Error("malformed PKCS8 public key(code:001)");var o=A(e,a);if(2!=o.length)throw new Error("malformed PKCS8 public key(code:002)");if("06"!=e.substr(o[0],2))throw new Error("malformed PKCS8 public key(code:003)");if(i.algoid=r(e,o[0]),"06"==e.substr(o[1],2)?i.algparam=r(e,o[1]):"30"==e.substr(o[1],2)&&(i.algparam={},i.algparam.p=t.getVbyList(e,o[1],[0],"02"),i.algparam.q=t.getVbyList(e,o[1],[1],"02"),i.algparam.g=t.getVbyList(e,o[1],[2],"02")),"03"!=e.substr(n[1],2))throw new Error("malformed PKCS8 public key(code:004)");return i.key=r(e,n[1]).substr(2),i}}}();function Ye(e,t){for(var A="",r=t/4-e.length,i=0;i<r;i++)A+="0";return A+e}function Ge(e,t,A){for(var r="",i=0;r.length<t;)r+=Be(A(ye(e+String.fromCharCode.apply(String,[(4278190080&i)>>24,(16711680&i)>>16,(65280&i)>>8,255&i])))),i+=1;return r}function Oe(e){for(var t in se.crypto.Util.DIGESTINFOHEAD){var A=se.crypto.Util.DIGESTINFOHEAD[t],r=A.length;if(e.substring(0,r)==A)return[t,e.substring(r)]}return[]}function qe(e){var t,A=le,r=A.getChildIdx,i=A.getV,n=A.getTLV,a=A.getVbyList,o=A.getVbyListEx,s=A.getTLVbyList,d=A.getTLVbyListEx,p=A.getIdxbyList,l=A.getIdxbyListEx,c=A.getVidx,g=A.getInt,h=A.oidname,u=A.hextooidstr,E=De;try{t=se.asn1.x509.AlgorithmIdentifier.PSSNAME2ASN1TLV}catch(e){}this.HEX2STAG={"0c":"utf8",13:"prn",16:"ia5","1a":"vis","1e":"bmp"},this.hex=null,this.version=0,this.foffset=0,this.aExtInfo=null,this.getVersion=function(){if(null===this.hex||0!==this.version)return this.version;var e=s(this.hex,0,[0,0]);if("a0"==e.substr(0,2)){var t=s(e,0,[0]),A=g(t,0);if(A<0||2<A)throw new Error("malformed version field");return this.version=A+1,this.version}return this.version=1,this.foffset=-1,1},this.getSerialNumberHex=function(){return o(this.hex,0,[0,0],"02")},this.getSignatureAlgorithmField=function(){var e=d(this.hex,0,[0,1]);return this.getAlgorithmIdentifierName(e)},this.getAlgorithmIdentifierName=function(e){for(var A in t)if(e===t[A])return A;return h(o(e,0,[0],"06"))},this.getIssuer=function(){return this.getX500Name(this.getIssuerHex())},this.getIssuerHex=function(){return s(this.hex,0,[0,3+this.foffset],"30")},this.getIssuerString=function(){return this.getIssuer().str},this.getSubject=function(){return this.getX500Name(this.getSubjectHex())},this.getSubjectHex=function(){return s(this.hex,0,[0,5+this.foffset],"30")},this.getSubjectString=function(){return this.getSubject().str},this.getNotBefore=function(){var e=a(this.hex,0,[0,4+this.foffset,0]);return e=e.replace(/(..)/g,"%$1"),decodeURIComponent(e)},this.getNotAfter=function(){var e=a(this.hex,0,[0,4+this.foffset,1]);return e=e.replace(/(..)/g,"%$1"),decodeURIComponent(e)},this.getPublicKeyHex=function(){return A.getTLVbyList(this.hex,0,[0,6+this.foffset],"30")},this.getPublicKeyIdx=function(){return p(this.hex,0,[0,6+this.foffset],"30")},this.getPublicKeyContentIdx=function(){var e=this.getPublicKeyIdx();return p(this.hex,e,[1,0],"30")},this.getPublicKey=function(){return Je.getKey(this.getPublicKeyHex(),null,"pkcs8pub")},this.getSignatureAlgorithmName=function(){var e=s(this.hex,0,[1],"30");return this.getAlgorithmIdentifierName(e)},this.getSignatureValueHex=function(){return a(this.hex,0,[2],"03",!0)},this.verifySignature=function(e){var t=this.getSignatureAlgorithmField(),A=this.getSignatureValueHex(),r=s(this.hex,0,[0],"30"),i=new se.crypto.Signature({alg:t});return i.init(e),i.updateHex(r),i.verify(A)},this.parseExt=function(e){var t,n,o;if(void 0===e){if(o=this.hex,3!==this.version)return-1;t=p(o,0,[0,7,0],"30"),n=r(o,t)}else{o=De(e);var s=p(o,0,[0,3,0,0],"06");if("2a864886f70d01090e"!=i(o,s))return void(this.aExtInfo=new Array);t=p(o,0,[0,3,0,1,0],"30"),n=r(o,t),this.hex=o}this.aExtInfo=new Array;for(var d=0;d<n.length;d++){var l={critical:!1},g=0;3===r(o,n[d]).length&&(l.critical=!0,g=1),l.oid=A.hextooidstr(a(o,n[d],[0],"06"));var h=p(o,n[d],[1+g]);l.vidx=c(o,h),this.aExtInfo.push(l)}},this.getExtInfo=function(e){var t=this.aExtInfo,A=e;if(e.match(/^[0-9.]+$/)||(A=se.asn1.x509.OID.name2oid(e)),""!==A)for(var r=0;r<t.length;r++)if(t[r].oid===A)return t[r]},this.getExtBasicConstraints=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("basicConstraints");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var r={extname:"basicConstraints"};if(t&&(r.critical=!0),"3000"===e)return r;if("30030101ff"===e)return r.cA=!0,r;if("30060101ff02"===e.substr(0,12)){var a=i(e,10),o=parseInt(a,16);return r.cA=!0,r.pathLen=o,r}throw new Error("hExtV parse error: "+e)},this.getExtKeyUsage=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("keyUsage");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var r={extname:"keyUsage"};return t&&(r.critical=!0),r.names=this.getExtKeyUsageString(e).split(","),r},this.getExtKeyUsageBin=function(e){if(void 0===e){var t=this.getExtInfo("keyUsage");if(void 0===t)return"";e=n(this.hex,t.vidx)}if(8!=e.length&&10!=e.length)throw new Error("malformed key usage value: "+e);var A="000000000000000"+parseInt(e.substr(6),16).toString(2);return 8==e.length&&(A=A.slice(-8)),10==e.length&&(A=A.slice(-16)),""==(A=A.replace(/0+$/,""))&&(A="0"),A},this.getExtKeyUsageString=function(e){for(var t=this.getExtKeyUsageBin(e),A=new Array,r=0;r<t.length;r++)"1"==t.substr(r,1)&&A.push(qe.KEYUSAGE_NAME[r]);return A.join(",")},this.getExtSubjectKeyIdentifier=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("subjectKeyIdentifier");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var r={extname:"subjectKeyIdentifier"};t&&(r.critical=!0);var a=i(e,0);return r.kid={hex:a},r},this.getExtAuthorityKeyIdentifier=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("authorityKeyIdentifier");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var a={extname:"authorityKeyIdentifier"};t&&(a.critical=!0);for(var o=r(e,0),s=0;s<o.length;s++){var d=e.substr(o[s],2);if("80"===d&&(a.kid={hex:i(e,o[s])}),"a1"===d){var p=n(e,o[s]),l=this.getGeneralNames(p);a.issuer=l[0].dn}"82"===d&&(a.sn={hex:i(e,o[s])})}return a},this.getExtExtKeyUsage=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("extKeyUsage");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var a={extname:"extKeyUsage",array:[]};t&&(a.critical=!0);for(var o=r(e,0),s=0;s<o.length;s++)a.array.push(h(i(e,o[s])));return a},this.getExtExtKeyUsageName=function(){var e=this.getExtInfo("extKeyUsage");if(void 0===e)return e;var t=new Array,A=n(this.hex,e.vidx);if(""===A)return t;for(var a=r(A,0),o=0;o<a.length;o++)t.push(h(i(A,a[o])));return t},this.getExtSubjectAltName=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("subjectAltName");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var r={extname:"subjectAltName",array:[]};return t&&(r.critical=!0),r.array=this.getGeneralNames(e),r},this.getExtIssuerAltName=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("issuerAltName");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var r={extname:"issuerAltName",array:[]};return t&&(r.critical=!0),r.array=this.getGeneralNames(e),r},this.getGeneralNames=function(e){for(var t=r(e,0),A=[],i=0;i<t.length;i++){var a=this.getGeneralName(n(e,t[i]));void 0!==a&&A.push(a)}return A},this.getGeneralName=function(e){var t=e.substr(0,2),A=i(e,0),r=Be(A);return"81"==t?{rfc822:r}:"82"==t?{dns:r}:"86"==t?{uri:r}:"87"==t?{ip:Te(A)}:"a4"==t?{dn:this.getX500Name(A)}:void 0},this.getExtSubjectAltName2=function(){var e,t,A,a=this.getExtInfo("subjectAltName");if(void 0===a)return a;for(var o=new Array,s=n(this.hex,a.vidx),d=r(s,0),p=0;p<d.length;p++)A=s.substr(d[p],2),e=i(s,d[p]),"81"===A&&(t=Ie(e),o.push(["MAIL",t])),"82"===A&&(t=Ie(e),o.push(["DNS",t])),"84"===A&&(t=qe.hex2dn(e,0),o.push(["DN",t])),"86"===A&&(t=Ie(e),o.push(["URI",t])),"87"===A&&(t=Te(e),o.push(["IP",t]));return o},this.getExtCRLDistributionPoints=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("cRLDistributionPoints");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var i={extname:"cRLDistributionPoints",array:[]};t&&(i.critical=!0);for(var a=r(e,0),o=0;o<a.length;o++){var s=n(e,a[o]);i.array.push(this.getDistributionPoint(s))}return i},this.getDistributionPoint=function(e){for(var t={},A=r(e,0),i=0;i<A.length;i++){var a=e.substr(A[i],2),o=n(e,A[i]);"a0"==a&&(t.dpname=this.getDistributionPointName(o))}return t},this.getDistributionPointName=function(e){for(var t={},A=r(e,0),i=0;i<A.length;i++){var a=e.substr(A[i],2),o=n(e,A[i]);"a0"==a&&(t.full=this.getGeneralNames(o))}return t},this.getExtCRLDistributionPointsURI=function(){var e=this.getExtInfo("cRLDistributionPoints");if(void 0===e)return e;for(var t=new Array,A=r(this.hex,e.vidx),i=0;i<A.length;i++)try{var n=Ie(a(this.hex,A[i],[0,0,0],"86"));t.push(n)}catch(e){}return t},this.getExtAIAInfo=function(){var e=this.getExtInfo("authorityInfoAccess");if(void 0===e)return e;for(var t={ocsp:[],caissuer:[]},A=r(this.hex,e.vidx),i=0;i<A.length;i++){var n=a(this.hex,A[i],[0],"06"),o=a(this.hex,A[i],[1],"86");"2b06010505073001"===n&&t.ocsp.push(Ie(o)),"2b06010505073002"===n&&t.caissuer.push(Ie(o))}return t},this.getExtAuthorityInfoAccess=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("authorityInfoAccess");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var i={extname:"authorityInfoAccess",array:[]};t&&(i.critical=!0);for(var s=r(e,0),d=0;d<s.length;d++){var p=o(e,s[d],[0],"06"),l=Ie(a(e,s[d],[1],"86"));if("2b06010505073001"==p)i.array.push({ocsp:l});else{if("2b06010505073002"!=p)throw new Error("unknown method: "+p);i.array.push({caissuer:l})}}return i},this.getExtCertificatePolicies=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("certificatePolicies");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var i={extname:"certificatePolicies",array:[]};t&&(i.critical=!0);for(var a=r(e,0),o=0;o<a.length;o++){var s=n(e,a[o]),d=this.getPolicyInformation(s);i.array.push(d)}return i},this.getPolicyInformation=function(e){var t={},A=a(e,0,[0],"06");t.policyoid=h(A);var i=l(e,0,[1],"30");if(-1!=i){t.array=[];for(var o=r(e,i),s=0;s<o.length;s++){var d=n(e,o[s]),p=this.getPolicyQualifierInfo(d);t.array.push(p)}}return t},this.getPolicyQualifierInfo=function(e){var t={},A=a(e,0,[0],"06");if("2b06010505070201"===A){var r=o(e,0,[1],"16");t.cps=Be(r)}else if("2b06010505070202"===A){var i=s(e,0,[1],"30");t.unotice=this.getUserNotice(i)}return t},this.getUserNotice=function(e){for(var t={},A=r(e,0),i=0;i<A.length;i++){var a=n(e,A[i]);"30"!=a.substr(0,2)&&(t.exptext=this.getDisplayText(a))}return t},this.getDisplayText=function(e){var t={};return t.type={"0c":"utf8",16:"ia5","1a":"vis","1e":"bmp"}[e.substr(0,2)],t.str=Be(i(e,0)),t},this.getExtCRLNumber=function(e,t){var A={extname:"cRLNumber"};if(t&&(A.critical=!0),"02"==e.substr(0,2))return A.num={hex:i(e,0)},A;throw new Error("hExtV parse error: "+e)},this.getExtCRLReason=function(e,t){var A={extname:"cRLReason"};if(t&&(A.critical=!0),"0a"==e.substr(0,2))return A.code=parseInt(i(e,0),16),A;throw new Error("hExtV parse error: "+e)},this.getExtOcspNonce=function(e,t){var A={extname:"ocspNonce"};t&&(A.critical=!0);var r=i(e,0);return A.hex=r,A},this.getExtOcspNoCheck=function(e,t){var A={extname:"ocspNoCheck"};return t&&(A.critical=!0),A},this.getExtAdobeTimeStamp=function(e,t){if(void 0===e&&void 0===t){var A=this.getExtInfo("adobeTimeStamp");if(void 0===A)return;e=n(this.hex,A.vidx),t=A.critical}var i={extname:"adobeTimeStamp"};t&&(i.critical=!0);var a=r(e,0);if(a.length>1){var o=n(e,a[1]),s=this.getGeneralName(o);null!=s.uri&&(i.uri=s.uri)}if(a.length>2){var d=n(e,a[2]);"0101ff"==d&&(i.reqauth=!0),"010100"==d&&(i.reqauth=!1)}return i},this.getX500NameRule=function(e){for(var t=null,A=[],r=0;r<e.length;r++)for(var i=e[r],n=0;n<i.length;n++)A.push(i[n]);for(r=0;r<A.length;r++){var a=A[r],o=a.ds,s=a.value,d=a.type;if("prn"!=o&&"utf8"!=o&&"ia5"!=o)return"mixed";if("ia5"==o){if("CN"!=d)return"mixed";if(se.lang.String.isMail(s))continue;return"mixed"}if("C"==d){if("prn"==o)continue;return"mixed"}if(null==t)t=o;else if(t!==o)return"mixed"}return null==t?"prn":t},this.getX500Name=function(e){var t=this.getX500NameArray(e);return{array:t,str:this.dnarraytostr(t)}},this.getX500NameArray=function(e){for(var t=[],A=r(e,0),i=0;i<A.length;i++)t.push(this.getRDN(n(e,A[i])));return t},this.getRDN=function(e){for(var t=[],A=r(e,0),i=0;i<A.length;i++)t.push(this.getAttrTypeAndValue(n(e,A[i])));return t},this.getAttrTypeAndValue=function(e){var t={type:null,value:null,ds:null},A=r(e,0),i=a(e,A[0],[],"06"),n=a(e,A[1],[]),o=se.asn1.ASN1Util.oidHexToInt(i);return t.type=se.asn1.x509.OID.oid2atype(o),t.ds=this.HEX2STAG[e.substr(A[1],2)],"bmp"!=t.ds?t.value=Ie(n):t.value=Le(n),t},this.readCertPEM=function(e){this.readCertHex(E(e))},this.readCertHex=function(e){this.hex=e,this.getVersion();try{p(this.hex,0,[0,7],"a3"),this.parseExt()}catch(e){}},this.getParam=function(){var e={};return e.version=this.getVersion(),e.serial={hex:this.getSerialNumberHex()},e.sigalg=this.getSignatureAlgorithmField(),e.issuer=this.getIssuer(),e.notbefore=this.getNotBefore(),e.notafter=this.getNotAfter(),e.subject=this.getSubject(),e.sbjpubkey=be(this.getPublicKeyHex(),"PUBLIC KEY"),this.aExtInfo.length>0&&(e.ext=this.getExtParamArray()),e.sighex=this.getSignatureValueHex(),e},this.getExtParamArray=function(e){null==e&&-1!=l(this.hex,0,[0,"[3]"])&&(e=d(this.hex,0,[0,"[3]",0],"30"));for(var t=[],A=r(e,0),i=0;i<A.length;i++){var a=n(e,A[i]),o=this.getExtParam(a);null!=o&&t.push(o)}return t},this.getExtParam=function(e){var t=r(e,0).length;if(2!=t&&3!=t)throw new Error("wrong number elements in Extension: "+t+" "+e);var A=u(a(e,0,[0],"06")),i=!1;3==t&&"0101ff"==s(e,0,[1])&&(i=!0);var n=s(e,0,[t-1,0]),o=void 0;if("2.5.29.14"==A?o=this.getExtSubjectKeyIdentifier(n,i):"2.5.29.15"==A?o=this.getExtKeyUsage(n,i):"2.5.29.17"==A?o=this.getExtSubjectAltName(n,i):"2.5.29.18"==A?o=this.getExtIssuerAltName(n,i):"2.5.29.19"==A?o=this.getExtBasicConstraints(n,i):"2.5.29.31"==A?o=this.getExtCRLDistributionPoints(n,i):"2.5.29.32"==A?o=this.getExtCertificatePolicies(n,i):"2.5.29.35"==A?o=this.getExtAuthorityKeyIdentifier(n,i):"2.5.29.37"==A?o=this.getExtExtKeyUsage(n,i):"1.3.6.1.5.5.7.1.1"==A?o=this.getExtAuthorityInfoAccess(n,i):"2.5.29.20"==A?o=this.getExtCRLNumber(n,i):"2.5.29.21"==A?o=this.getExtCRLReason(n,i):"1.3.6.1.5.5.7.48.1.2"==A?o=this.getExtOcspNonce(n,i):"1.3.6.1.5.5.7.48.1.5"==A?o=this.getExtOcspNoCheck(n,i):"1.2.840.113583.1.1.9.1"==A&&(o=this.getExtAdobeTimeStamp(n,i)),null!=o)return o;var d={extname:A,extn:n};return i&&(d.critical=!0),d},this.findExt=function(e,t){for(var A=0;A<e.length;A++)if(e[A].extname==t)return e[A];return null},this.updateExtCDPFullURI=function(e,t){var A=this.findExt(e,"cRLDistributionPoints");if(null!=A&&null!=A.array)for(var r=A.array,i=0;i<r.length;i++)if(null!=r[i].dpname&&null!=r[i].dpname.full)for(var n=r[i].dpname.full,a=0;a<n.length;a++){var o=n[i];null!=o.uri&&(o.uri=t)}},this.updateExtAIAOCSP=function(e,t){var A=this.findExt(e,"authorityInfoAccess");if(null!=A&&null!=A.array)for(var r=A.array,i=0;i<r.length;i++)null!=r[i].ocsp&&(r[i].ocsp=t)},this.updateExtAIACAIssuer=function(e,t){var A=this.findExt(e,"authorityInfoAccess");if(null!=A&&null!=A.array)for(var r=A.array,i=0;i<r.length;i++)null!=r[i].caissuer&&(r[i].caissuer=t)},this.dnarraytostr=function(e){return"/"+e.map(function(e){return function(e){return e.map(function(e){return function(e){return e.type+"="+e.value}(e).replace(/\+/,"\\+")}).join("+")}(e).replace(/\//,"\\/")}).join("/")},this.getInfo=function(){var e,t,A,r=function(e){return JSON.stringify(e.array).replace(/[\[\]\{\}\"]/g,"")},i=function(e){for(var t="",A=e.array,r=0;r<A.length;r++){var i=A[r];if(t+=" policy oid: "+i.policyoid+"\n",void 0!==i.array)for(var n=0;n<i.array.length;n++){var a=i.array[n];void 0!==a.cps&&(t+=" cps: "+a.cps+"\n")}}return t},n=function(e){for(var t="",A=e.array,r=0;r<A.length;r++){var i=A[r];try{void 0!==i.dpname.full[0].uri&&(t+=" "+i.dpname.full[0].uri+"\n")}catch(e){}try{void 0!==i.dname.full[0].dn.hex&&(t+=" "+qe.hex2dn(i.dpname.full[0].dn.hex)+"\n")}catch(e){}}return t},a=function(e){for(var t="",A=e.array,r=0;r<A.length;r++){var i=A[r];void 0!==i.caissuer&&(t+=" caissuer: "+i.caissuer+"\n"),void 0!==i.ocsp&&(t+=" ocsp: "+i.ocsp+"\n")}return t};if(e="Basic Fields\n",e+=" serial number: "+this.getSerialNumberHex()+"\n",e+=" signature algorithm: "+this.getSignatureAlgorithmField()+"\n",e+=" issuer: "+this.getIssuerString()+"\n",e+=" notBefore: "+this.getNotBefore()+"\n",e+=" notAfter: "+this.getNotAfter()+"\n",e+=" subject: "+this.getSubjectString()+"\n",e+=" subject public key info: \n",e+=" key algorithm: "+(t=this.getPublicKey()).type+"\n","RSA"===t.type&&(e+=" n="+Ve(t.n.toString(16)).substr(0,16)+"...\n",e+=" e="+Ve(t.e.toString(16))+"\n"),null!=(A=this.aExtInfo)){e+="X509v3 Extensions:\n";for(var o=0;o<A.length;o++){var s=A[o],d=se.asn1.x509.OID.oid2name(s.oid);""===d&&(d=s.oid);var p="";if(!0===s.critical&&(p="CRITICAL"),e+=" "+d+" "+p+":\n","basicConstraints"===d){var l=this.getExtBasicConstraints();void 0===l.cA?e+=" {}\n":(e+=" cA=true",void 0!==l.pathLen&&(e+=", pathLen="+l.pathLen),e+="\n")}else if("keyUsage"===d)e+=" "+this.getExtKeyUsageString()+"\n";else if("subjectKeyIdentifier"===d)e+=" "+this.getExtSubjectKeyIdentifier().kid.hex+"\n";else if("authorityKeyIdentifier"===d){var c=this.getExtAuthorityKeyIdentifier();void 0!==c.kid&&(e+=" kid="+c.kid.hex+"\n")}else"extKeyUsage"===d?e+=" "+this.getExtExtKeyUsage().array.join(", ")+"\n":"subjectAltName"===d?e+=" "+r(this.getExtSubjectAltName())+"\n":"cRLDistributionPoints"===d?e+=n(this.getExtCRLDistributionPoints()):"authorityInfoAccess"===d?e+=a(this.getExtAuthorityInfoAccess()):"certificatePolicies"===d&&(e+=i(this.getExtCertificatePolicies()))}}return(e+="signature algorithm: "+this.getSignatureAlgorithmName()+"\n")+"signature: "+this.getSignatureValueHex().substr(0,16)+"...\n"},"string"==typeof e&&(-1!=e.indexOf("-----BEGIN")?this.readCertPEM(e):se.lang.String.isHex(e)&&this.readCertHex(e))}Je.getKey=function(e,t,A){var r,i=(m=le).getChildIdx,n=(m.getV,m.getVbyList),a=se.crypto,o=a.ECDSA,s=a.DSA,d=re,p=De,l=Je;if(void 0!==d&&e instanceof d)return e;if(void 0!==o&&e instanceof o)return e;if(void 0!==s&&e instanceof s)return e;if(void 0!==e.curve&&void 0!==e.xy&&void 0===e.d)return new o({pub:e.xy,curve:e.curve});if(void 0!==e.curve&&void 0!==e.d)return new o({prv:e.d,curve:e.curve});if(void 0===e.kty&&void 0!==e.n&&void 0!==e.e&&void 0===e.d)return(F=new d).setPublic(e.n,e.e),F;if(void 0===e.kty&&void 0!==e.n&&void 0!==e.e&&void 0!==e.d&&void 0!==e.p&&void 0!==e.q&&void 0!==e.dp&&void 0!==e.dq&&void 0!==e.co&&void 0===e.qi)return(F=new d).setPrivateEx(e.n,e.e,e.d,e.p,e.q,e.dp,e.dq,e.co),F;if(void 0===e.kty&&void 0!==e.n&&void 0!==e.e&&void 0!==e.d&&void 0===e.p)return(F=new d).setPrivate(e.n,e.e,e.d),F;if(void 0!==e.p&&void 0!==e.q&&void 0!==e.g&&void 0!==e.y&&void 0===e.x)return(F=new s).setPublic(e.p,e.q,e.g,e.y),F;if(void 0!==e.p&&void 0!==e.q&&void 0!==e.g&&void 0!==e.y&&void 0!==e.x)return(F=new s).setPrivate(e.p,e.q,e.g,e.y,e.x),F;if("RSA"===e.kty&&void 0!==e.n&&void 0!==e.e&&void 0===e.d)return(F=new d).setPublic(fe(e.n),fe(e.e)),F;if("RSA"===e.kty&&void 0!==e.n&&void 0!==e.e&&void 0!==e.d&&void 0!==e.p&&void 0!==e.q&&void 0!==e.dp&&void 0!==e.dq&&void 0!==e.qi)return(F=new d).setPrivateEx(fe(e.n),fe(e.e),fe(e.d),fe(e.p),fe(e.q),fe(e.dp),fe(e.dq),fe(e.qi)),F;if("RSA"===e.kty&&void 0!==e.n&&void 0!==e.e&&void 0!==e.d)return(F=new d).setPrivate(fe(e.n),fe(e.e),fe(e.d)),F;if("EC"===e.kty&&void 0!==e.crv&&void 0!==e.x&&void 0!==e.y&&void 0===e.d){var c=(D=new o({curve:e.crv})).ecparams.keylen/4,g="04"+("0000000000"+fe(e.x)).slice(-c)+("0000000000"+fe(e.y)).slice(-c);return D.setPublicKeyHex(g),D}if("EC"===e.kty&&void 0!==e.crv&&void 0!==e.x&&void 0!==e.y&&void 0!==e.d){c=(D=new o({curve:e.crv})).ecparams.keylen/4,g="04"+("0000000000"+fe(e.x)).slice(-c)+("0000000000"+fe(e.y)).slice(-c);var h=("0000000000"+fe(e.d)).slice(-c);return D.setPublicKeyHex(g),D.setPrivateKeyHex(h),D}if("pkcs5prv"===A){var u,E=e,m=le;if(9===(u=i(E,0)).length)(F=new d).readPKCS5PrvKeyHex(E);else if(6===u.length)(F=new s).readPKCS5PrvKeyHex(E);else{if(!(u.length>2&&"04"===E.substr(u[1],2)))throw new Error("unsupported PKCS#1/5 hexadecimal key");(F=new o).readPKCS5PrvKeyHex(E)}return F}if("pkcs8prv"===A)return l.getKeyFromPlainPrivatePKCS8Hex(e);if("pkcs8pub"===A)return l._getKeyFromPublicPKCS8Hex(e);if("x509pub"===A)return qe.getPublicKeyFromCertHex(e);if(-1!=e.indexOf("-END CERTIFICATE-",0)||-1!=e.indexOf("-END X509 CERTIFICATE-",0)||-1!=e.indexOf("-END TRUSTED CERTIFICATE-",0))return qe.getPublicKeyFromCertPEM(e);if(-1!=e.indexOf("-END PUBLIC KEY-")){var C=De(e,"PUBLIC KEY");return l._getKeyFromPublicPKCS8Hex(C)}if(-1!=e.indexOf("-END RSA PRIVATE KEY-")&&-1==e.indexOf("4,ENCRYPTED")){var f=p(e,"RSA PRIVATE KEY");return l.getKey(f,null,"pkcs5prv")}if(-1!=e.indexOf("-END DSA PRIVATE KEY-")&&-1==e.indexOf("4,ENCRYPTED")){var Q=n(r=p(e,"DSA PRIVATE KEY"),0,[1],"02"),I=n(r,0,[2],"02"),y=n(r,0,[3],"02"),w=n(r,0,[4],"02"),v=n(r,0,[5],"02");return(F=new s).setPrivate(new B(Q,16),new B(I,16),new B(y,16),new B(w,16),new B(v,16)),F}if(-1!=e.indexOf("-END EC PRIVATE KEY-")&&-1==e.indexOf("4,ENCRYPTED"))return f=p(e,"EC PRIVATE KEY"),l.getKey(f,null,"pkcs5prv");if(-1!=e.indexOf("-END PRIVATE KEY-"))return l.getKeyFromPlainPrivatePKCS8PEM(e);if(-1!=e.indexOf("-END RSA PRIVATE KEY-")&&-1!=e.indexOf("4,ENCRYPTED")){var S=l.getDecryptedKeyHex(e,t),b=new re;return b.readPKCS5PrvKeyHex(S),b}if(-1!=e.indexOf("-END EC PRIVATE KEY-")&&-1!=e.indexOf("4,ENCRYPTED")){var D,F=n(r=l.getDecryptedKeyHex(e,t),0,[1],"04"),R=n(r,0,[2,0],"06"),k=n(r,0,[3,0],"03").substr(2);if(void 0===se.crypto.OID.oidhex2name[R])throw new Error("undefined OID(hex) in KJUR.crypto.OID: "+R);return(D=new o({curve:se.crypto.OID.oidhex2name[R]})).setPublicKeyHex(k),D.setPrivateKeyHex(F),D.isPublic=!1,D}if(-1!=e.indexOf("-END DSA PRIVATE KEY-")&&-1!=e.indexOf("4,ENCRYPTED"))return Q=n(r=l.getDecryptedKeyHex(e,t),0,[1],"02"),I=n(r,0,[2],"02"),y=n(r,0,[3],"02"),w=n(r,0,[4],"02"),v=n(r,0,[5],"02"),(F=new s).setPrivate(new B(Q,16),new B(I,16),new B(y,16),new B(w,16),new B(v,16)),F;if(-1!=e.indexOf("-END ENCRYPTED PRIVATE KEY-"))return l.getKeyFromEncryptedPKCS8PEM(e,t);throw new Error("not supported argument")},Je.generateKeypair=function(e,t){if("RSA"==e){var A=t;(a=new re).generate(A,"10001"),a.isPrivate=!0,a.isPublic=!0;var r=new re,i=a.n.toString(16),n=a.e.toString(16);return r.setPublic(i,n),r.isPrivate=!1,r.isPublic=!0,(o={}).prvKeyObj=a,o.pubKeyObj=r,o}if("EC"==e){var a,o,s=t,d=new se.crypto.ECDSA({curve:s}).generateKeyPairHex();return(a=new se.crypto.ECDSA({curve:s})).setPublicKeyHex(d.ecpubhex),a.setPrivateKeyHex(d.ecprvhex),a.isPrivate=!0,a.isPublic=!1,(r=new se.crypto.ECDSA({curve:s})).setPublicKeyHex(d.ecpubhex),r.isPrivate=!1,r.isPublic=!0,(o={}).prvKeyObj=a,o.pubKeyObj=r,o}throw new Error("unknown algorithm: "+e)},Je.getPEM=function(e,t,A,r,i,n){var a=se,o=a.asn1,s=o.DERObjectIdentifier,d=o.DERInteger,p=o.ASN1Util.newObject,l=o.x509.SubjectPublicKeyInfo,c=a.crypto,g=c.DSA,h=c.ECDSA,u=re;function m(e){return p({seq:[{int:0},{int:{bigint:e.n}},{int:e.e},{int:{bigint:e.d}},{int:{bigint:e.p}},{int:{bigint:e.q}},{int:{bigint:e.dmp1}},{int:{bigint:e.dmq1}},{int:{bigint:e.coeff}}]})}function C(e){return p({seq:[{int:1},{octstr:{hex:e.prvKeyHex}},{tag:["a0",!0,{oid:{name:e.curveName}}]},{tag:["a1",!0,{bitstr:{hex:"00"+e.pubKeyHex}}]}]})}function f(e){return p({seq:[{int:0},{int:{bigint:e.p}},{int:{bigint:e.q}},{int:{bigint:e.g}},{int:{bigint:e.y}},{int:{bigint:e.x}}]})}if((void 0!==u&&e instanceof u||void 0!==g&&e instanceof g||void 0!==h&&e instanceof h)&&1==e.isPublic&&(void 0===t||"PKCS8PUB"==t))return be(y=new l(e).getEncodedHex(),"PUBLIC KEY");if("PKCS1PRV"==t&&void 0!==u&&e instanceof u&&(void 0===A||null==A)&&1==e.isPrivate)return be(y=m(e).getEncodedHex(),"RSA PRIVATE KEY");if("PKCS1PRV"==t&&void 0!==h&&e instanceof h&&(void 0===A||null==A)&&1==e.isPrivate){var Q=new s({name:e.curveName}).getEncodedHex(),I=C(e).getEncodedHex(),B="";return(B+=be(Q,"EC PARAMETERS"))+be(I,"EC PRIVATE KEY")}if("PKCS1PRV"==t&&void 0!==g&&e instanceof g&&(void 0===A||null==A)&&1==e.isPrivate)return be(y=f(e).getEncodedHex(),"DSA PRIVATE KEY");if("PKCS5PRV"==t&&void 0!==u&&e instanceof u&&void 0!==A&&null!=A&&1==e.isPrivate){var y=m(e).getEncodedHex();return void 0===r&&(r="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("RSA",y,A,r,n)}if("PKCS5PRV"==t&&void 0!==h&&e instanceof h&&void 0!==A&&null!=A&&1==e.isPrivate)return y=C(e).getEncodedHex(),void 0===r&&(r="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("EC",y,A,r,n);if("PKCS5PRV"==t&&void 0!==g&&e instanceof g&&void 0!==A&&null!=A&&1==e.isPrivate)return y=f(e).getEncodedHex(),void 0===r&&(r="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("DSA",y,A,r,n);var w=function(e,t){var A=v(e,t);return new p({seq:[{seq:[{oid:{name:"pkcs5PBES2"}},{seq:[{seq:[{oid:{name:"pkcs5PBKDF2"}},{seq:[{octstr:{hex:A.pbkdf2Salt}},{int:A.pbkdf2Iter}]}]},{seq:[{oid:{name:"des-EDE3-CBC"}},{octstr:{hex:A.encryptionSchemeIV}}]}]}]},{octstr:{hex:A.ciphertext}}]}).getEncodedHex()},v=function(e,t){var A=E.lib.WordArray.random(8),r=E.lib.WordArray.random(8),i=E.PBKDF2(t,A,{keySize:6,iterations:100}),n=E.enc.Hex.parse(e),a=E.TripleDES.encrypt(n,i,{iv:r})+"",o={};return o.ciphertext=a,o.pbkdf2Salt=E.enc.Hex.stringify(A),o.pbkdf2Iter=100,o.encryptionSchemeAlg="DES-EDE3-CBC",o.encryptionSchemeIV=E.enc.Hex.stringify(r),o};if("PKCS8PRV"==t&&null!=u&&e instanceof u&&1==e.isPrivate){var S=m(e).getEncodedHex();return y=p({seq:[{int:0},{seq:[{oid:{name:"rsaEncryption"}},{null:!0}]},{octstr:{hex:S}}]}).getEncodedHex(),void 0===A||null==A?be(y,"PRIVATE KEY"):be(I=w(y,A),"ENCRYPTED PRIVATE KEY")}if("PKCS8PRV"==t&&void 0!==h&&e instanceof h&&1==e.isPrivate)return S=new p({seq:[{int:1},{octstr:{hex:e.prvKeyHex}},{tag:["a1",!0,{bitstr:{hex:"00"+e.pubKeyHex}}]}]}).getEncodedHex(),y=p({seq:[{int:0},{seq:[{oid:{name:"ecPublicKey"}},{oid:{name:e.curveName}}]},{octstr:{hex:S}}]}).getEncodedHex(),void 0===A||null==A?be(y,"PRIVATE KEY"):be(I=w(y,A),"ENCRYPTED PRIVATE KEY");if("PKCS8PRV"==t&&void 0!==g&&e instanceof g&&1==e.isPrivate)return S=new d({bigint:e.x}).getEncodedHex(),y=p({seq:[{int:0},{seq:[{oid:{name:"dsa"}},{seq:[{int:{bigint:e.p}},{int:{bigint:e.q}},{int:{bigint:e.g}}]}]},{octstr:{hex:S}}]}).getEncodedHex(),void 0===A||null==A?be(y,"PRIVATE KEY"):be(I=w(y,A),"ENCRYPTED PRIVATE KEY");throw new Error("unsupported object nor format")},Je.getKeyFromCSRPEM=function(e){var t=De(e,"CERTIFICATE REQUEST");return Je.getKeyFromCSRHex(t)},Je.getKeyFromCSRHex=function(e){var t=Je.parseCSRHex(e);return Je.getKey(t.p8pubkeyhex,null,"pkcs8pub")},Je.parseCSRHex=function(e){var t=le,A=t.getChildIdx,r=t.getTLV,i={},n=e;if("30"!=n.substr(0,2))throw new Error("malformed CSR(code:001)");var a=A(n,0);if(a.length<1)throw new Error("malformed CSR(code:002)");if("30"!=n.substr(a[0],2))throw new Error("malformed CSR(code:003)");var o=A(n,a[0]);if(o.length<3)throw new Error("malformed CSR(code:004)");return i.p8pubkeyhex=r(n,o[2]),i},Je.getKeyID=function(e){var t=Je,A=le;"string"==typeof e&&-1!=e.indexOf("BEGIN ")&&(e=t.getKey(e));var r=De(t.getPEM(e)),i=A.getIdxbyList(r,0,[1]),n=A.getV(r,i).substring(2);return se.crypto.Util.hashHex(n,"sha1")},Je.getJWKFromKey=function(e){var t={};if(e instanceof re&&e.isPrivate)return t.kty="RSA",t.n=Ce(e.n.toString(16)),t.e=Ce(e.e.toString(16)),t.d=Ce(e.d.toString(16)),t.p=Ce(e.p.toString(16)),t.q=Ce(e.q.toString(16)),t.dp=Ce(e.dmp1.toString(16)),t.dq=Ce(e.dmq1.toString(16)),t.qi=Ce(e.coeff.toString(16)),t;if(e instanceof re&&e.isPublic)return t.kty="RSA",t.n=Ce(e.n.toString(16)),t.e=Ce(e.e.toString(16)),t;if(e instanceof se.crypto.ECDSA&&e.isPrivate){if("P-256"!==(r=e.getShortNISTPCurveName())&&"P-384"!==r)throw new Error("unsupported curve name for JWT: "+r);var A=e.getPublicKeyXYHex();return t.kty="EC",t.crv=r,t.x=Ce(A.x),t.y=Ce(A.y),t.d=Ce(e.prvKeyHex),t}if(e instanceof se.crypto.ECDSA&&e.isPublic){var r;if("P-256"!==(r=e.getShortNISTPCurveName())&&"P-384"!==r)throw new Error("unsupported curve name for JWT: "+r);return A=e.getPublicKeyXYHex(),t.kty="EC",t.crv=r,t.x=Ce(A.x),t.y=Ce(A.y),t}throw new Error("not supported key object")},re.getPosArrayOfChildrenFromHex=function(e){return le.getChildIdx(e,0)},re.getHexValueArrayOfChildrenFromHex=function(e){var t,A=le.getV,r=A(e,(t=re.getPosArrayOfChildrenFromHex(e))[0]),i=A(e,t[1]),n=A(e,t[2]),a=A(e,t[3]),o=A(e,t[4]),s=A(e,t[5]),d=A(e,t[6]),p=A(e,t[7]),l=A(e,t[8]);return(t=new Array).push(r,i,n,a,o,s,d,p,l),t},re.prototype.readPrivateKeyFromPEMString=function(e){var t=De(e),A=re.getHexValueArrayOfChildrenFromHex(t);this.setPrivateEx(A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])},re.prototype.readPKCS5PrvKeyHex=function(e){var t=re.getHexValueArrayOfChildrenFromHex(e);this.setPrivateEx(t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])},re.prototype.readPKCS8PrvKeyHex=function(e){var t,A,r,i,n,a,o,s,d=le,p=d.getVbyListEx;if(!1===d.isASN1HEX(e))throw new Error("not ASN.1 hex string");try{t=p(e,0,[2,0,1],"02"),A=p(e,0,[2,0,2],"02"),r=p(e,0,[2,0,3],"02"),i=p(e,0,[2,0,4],"02"),n=p(e,0,[2,0,5],"02"),a=p(e,0,[2,0,6],"02"),o=p(e,0,[2,0,7],"02"),s=p(e,0,[2,0,8],"02")}catch(e){throw new Error("malformed PKCS#8 plain RSA private key")}this.setPrivateEx(t,A,r,i,n,a,o,s)},re.prototype.readPKCS5PubKeyHex=function(e){var t=le,A=t.getV;if(!1===t.isASN1HEX(e))throw new Error("keyHex is not ASN.1 hex string");var r=t.getChildIdx(e,0);if(2!==r.length||"02"!==e.substr(r[0],2)||"02"!==e.substr(r[1],2))throw new Error("wrong hex for PKCS#5 public key");var i=A(e,r[0]),n=A(e,r[1]);this.setPublic(i,n)},re.prototype.readPKCS8PubKeyHex=function(e){var t=le;if(!1===t.isASN1HEX(e))throw new Error("not ASN.1 hex string");if("06092a864886f70d010101"!==t.getTLVbyListEx(e,0,[0,0]))throw new Error("not PKCS8 RSA public key");var A=t.getTLVbyListEx(e,0,[1,0]);this.readPKCS5PubKeyHex(A)},re.prototype.readCertPubKeyHex=function(e,t){var A,r;(A=new qe).readCertHex(e),r=A.getPublicKeyHex(),this.readPKCS8PubKeyHex(r)},re.prototype.sign=function(e,t){var A=function(e){return se.crypto.Util.hashString(e,t)}(e);return this.signWithMessageHash(A,t)},re.prototype.signWithMessageHash=function(e,t){var A=te(se.crypto.Util.getPaddedDigestInfoHex(e,t,this.n.bitLength()),16);return Ye(this.doPrivate(A).toString(16),this.n.bitLength())},re.prototype.signPSS=function(e,t,A){var r=function(e){return se.crypto.Util.hashHex(e,t)}(ye(e));return void 0===A&&(A=-1),this.signWithMessageHashPSS(r,t,A)},re.prototype.signWithMessageHashPSS=function(e,t,A){var r,i=Be(e),n=i.length,a=this.n.bitLength()-1,o=Math.ceil(a/8),s=function(e){return se.crypto.Util.hashHex(e,t)};if(-1===A||void 0===A)A=n;else if(-2===A)A=o-n-2;else if(A<-2)throw new Error("invalid salt length");if(o<n+A+2)throw new Error("data too long");var d="";A>0&&(d=new Array(A),(new ee).nextBytes(d),d=String.fromCharCode.apply(String,d));var p=Be(s(ye("\0\0\0\0\0\0\0\0"+i+d))),l=[];for(r=0;r<o-A-n-2;r+=1)l[r]=0;var c=String.fromCharCode.apply(String,l)+""+d,g=Ge(p,c.length,s),h=[];for(r=0;r<c.length;r+=1)h[r]=c.charCodeAt(r)^g.charCodeAt(r);var u=65280>>8*o-a&255;for(h[0]&=~u,r=0;r<n;r++)h.push(p.charCodeAt(r));return h.push(188),Ye(this.doPrivate(new B(h)).toString(16),this.n.bitLength())},re.prototype.verify=function(e,t){if(null==(t=t.toLowerCase()).match(/^[0-9a-f]+$/))return!1;var A=te(t,16),r=this.n.bitLength();if(A.bitLength()>r)return!1;var i=this.doPublic(A).toString(16);if(i.length+3!=r/4)return!1;var n=Oe(i.replace(/^1f+00/,""));if(0==n.length)return!1;var a=n[0];return n[1]==function(e){return se.crypto.Util.hashString(e,a)}(e)},re.prototype.verifyWithMessageHash=function(e,t){if(t.length!=Math.ceil(this.n.bitLength()/4))return!1;var A=te(t,16);if(A.bitLength()>this.n.bitLength())return 0;var r=Oe(this.doPublic(A).toString(16).replace(/^1f+00/,""));return 0!=r.length&&(r[0],r[1]==e)},re.prototype.verifyPSS=function(e,t,A,r){var i=function(e){return se.crypto.Util.hashHex(e,A)}(ye(e));return void 0===r&&(r=-1),this.verifyWithMessageHashPSS(i,t,A,r)},re.prototype.verifyWithMessageHashPSS=function(e,t,A,r){if(t.length!=Math.ceil(this.n.bitLength()/4))return!1;var i,n=new B(t,16),a=function(e){return se.crypto.Util.hashHex(e,A)},o=Be(e),s=o.length,d=this.n.bitLength()-1,p=Math.ceil(d/8);if(-1===r||void 0===r)r=s;else if(-2===r)r=p-s-2;else if(r<-2)throw new Error("invalid salt length");if(p<s+r+2)throw new Error("data too long");var l=this.doPublic(n).toByteArray();for(i=0;i<l.length;i+=1)l[i]&=255;for(;l.length<p;)l.unshift(0);if(188!==l[p-1])throw new Error("encoded message does not end in 0xbc");var c=(l=String.fromCharCode.apply(String,l)).substr(0,p-s-1),g=l.substr(c.length,s),h=65280>>8*p-d&255;if(0!=(c.charCodeAt(0)&h))throw new Error("bits beyond keysize not zero");var u=Ge(g,c.length,a),E=[];for(i=0;i<c.length;i+=1)E[i]=c.charCodeAt(i)^u.charCodeAt(i);E[0]&=~h;var m=p-s-r-2;for(i=0;i<m;i+=1)if(0!==E[i])throw new Error("leftmost octets not zero");if(1!==E[m])throw new Error("0x01 marker not found");return g===Be(a(ye("\0\0\0\0\0\0\0\0"+o+String.fromCharCode.apply(String,E.slice(-r)))))},re.SALT_LEN_HLEN=-1,re.SALT_LEN_MAX=-2,re.SALT_LEN_RECOVER=-2,qe.hex2dn=function(e,t){void 0===t&&(t=0);var A=new qe;return le.getTLV(e,t),A.getX500Name(e).str},qe.hex2rdn=function(e,t){if(void 0===t&&(t=0),"31"!==e.substr(t,2))throw new Error("malformed RDN");for(var A=new Array,r=le.getChildIdx(e,t),i=0;i<r.length;i++)A.push(qe.hex2attrTypeValue(e,r[i]));return(A=A.map(function(e){return e.replace("+","\\+")})).join("+")},qe.hex2attrTypeValue=function(e,t){var A=le,r=A.getV;if(void 0===t&&(t=0),"30"!==e.substr(t,2))throw new Error("malformed attribute type and value");var i=A.getChildIdx(e,t);2!==i.length||e.substr(i[0],2);var n=r(e,i[0]),a=se.asn1.ASN1Util.oidHexToInt(n);return se.asn1.x509.OID.oid2atype(a)+"="+Be(r(e,i[1]))},qe.getPublicKeyFromCertHex=function(e){var t=new qe;return t.readCertHex(e),t.getPublicKey()},qe.getPublicKeyFromCertPEM=function(e){var t=new qe;return t.readCertPEM(e),t.getPublicKey()},qe.getPublicKeyInfoPropOfCertPEM=function(e){var t,A,r=le.getVbyList,i={algparam:null};return(t=new qe).readCertPEM(e),A=t.getPublicKeyHex(),i.keyhex=r(A,0,[1],"03").substr(2),i.algoid=r(A,0,[0,0],"06"),"2a8648ce3d0201"===i.algoid&&(i.algparam=r(A,0,[0,1],"06")),i},qe.KEYUSAGE_NAME=["digitalSignature","nonRepudiation","keyEncipherment","dataEncipherment","keyAgreement","keyCertSign","cRLSign","encipherOnly","decipherOnly"],void 0!==se&&se||(t.KJUR=se={}),void 0!==se.jws&&se.jws||(se.jws={}),se.jws.JWS=function(){var e=se.jws.JWS.isSafeJSONString;this.parseJWS=function(t,A){if(void 0===this.parsedJWS||!A&&void 0===this.parsedJWS.sigvalH){var r=t.match(/^([^.]+)\.([^.]+)\.([^.]+)$/);if(null==r)throw"JWS signature is not a form of 'Head.Payload.SigValue'.";var i=r[1],n=r[2],a=r[3],o=i+"."+n;if(this.parsedJWS={},this.parsedJWS.headB64U=i,this.parsedJWS.payloadB64U=n,this.parsedJWS.sigvalB64U=a,this.parsedJWS.si=o,!A){var s=fe(a),d=te(s,16);this.parsedJWS.sigvalH=s,this.parsedJWS.sigvalBI=d}var p=pe(i),l=pe(n);if(this.parsedJWS.headS=p,this.parsedJWS.payloadS=l,!e(p,this.parsedJWS,"headP"))throw"malformed JSON string for JWS Head: "+p}}},se.jws.JWS.sign=function(e,t,A,r,i){var n,a,o,s=se,d=s.jws.JWS,p=d.readSafeJSONString,l=d.isSafeJSONString,c=s.crypto,h=(c.ECDSA,c.Mac),u=c.Signature,E=JSON;if("string"!=typeof t&&"object"!=(void 0===t?"undefined":g(t)))throw"spHeader must be JSON string or object: "+t;if("object"==(void 0===t?"undefined":g(t))&&(a=t,n=E.stringify(a)),"string"==typeof t){if(!l(n=t))throw"JWS Head is not safe JSON string: "+n;a=p(n)}if(o=A,"object"==(void 0===A?"undefined":g(A))&&(o=E.stringify(A)),""!=e&&null!=e||void 0===a.alg||(e=a.alg),""!=e&&null!=e&&void 0===a.alg&&(a.alg=e,n=E.stringify(a)),e!==a.alg)throw"alg and sHeader.alg doesn't match: "+e+"!="+a.alg;var m=null;if(void 0===d.jwsalg2sigalg[e])throw"unsupported alg name: "+e;m=d.jwsalg2sigalg[e];var C=de(n)+"."+de(o),f="";if("Hmac"==m.substr(0,4)){if(void 0===r)throw"mac key shall be specified for HS* alg";var Q=new h({alg:m,prov:"cryptojs",pass:r});Q.updateString(C),f=Q.doFinal()}else if(-1!=m.indexOf("withECDSA")){(B=new u({alg:m})).init(r,i),B.updateString(C);var I=B.sign();f=se.crypto.ECDSA.asn1SigToConcatSig(I)}else{var B;"none"!=m&&((B=new u({alg:m})).init(r,i),B.updateString(C),f=B.sign())}return C+"."+Ce(f)},se.jws.JWS.verify=function(e,t,A){var r,i=se,n=i.jws.JWS,a=n.readSafeJSONString,o=i.crypto,s=o.ECDSA,d=o.Mac,p=o.Signature;void 0!==g(re)&&(r=re);var l=e.split(".");if(3!==l.length)return!1;var c,h=l[0]+"."+l[1],u=fe(l[2]),E=a(pe(l[0])),m=null;if(void 0===E.alg)throw"algorithm not specified in header";if(c=(m=E.alg).substr(0,2),null!=A&&"[object Array]"===Object.prototype.toString.call(A)&&A.length>0&&-1==(":"+A.join(":")+":").indexOf(":"+m+":"))throw"algorithm '"+m+"' not accepted in the list";if("none"!=m&&null===t)throw"key shall be specified to verify.";if("string"==typeof t&&-1!=t.indexOf("-----BEGIN ")&&(t=Je.getKey(t)),!("RS"!=c&&"PS"!=c||t instanceof r))throw"key shall be a RSAKey obj for RS* and PS* algs";if("ES"==c&&!(t instanceof s))throw"key shall be a ECDSA obj for ES* algs";var C=null;if(void 0===n.jwsalg2sigalg[E.alg])throw"unsupported alg name: "+m;if("none"==(C=n.jwsalg2sigalg[m]))throw"not supported";if("Hmac"==C.substr(0,4)){if(void 0===t)throw"hexadecimal key shall be specified for HMAC";var f=new d({alg:C,pass:t});return f.updateString(h),u==f.doFinal()}if(-1!=C.indexOf("withECDSA")){var Q,I=null;try{I=s.concatSigToASN1Sig(u)}catch(e){return!1}return(Q=new p({alg:C})).init(t),Q.updateString(h),Q.verify(I)}return(Q=new p({alg:C})).init(t),Q.updateString(h),Q.verify(u)},se.jws.JWS.parse=function(e){var t,A,r,i=e.split("."),n={};if(2!=i.length&&3!=i.length)throw"malformed sJWS: wrong number of '.' splitted elements";return t=i[0],A=i[1],3==i.length&&(r=i[2]),n.headerObj=se.jws.JWS.readSafeJSONString(pe(t)),n.payloadObj=se.jws.JWS.readSafeJSONString(pe(A)),n.headerPP=JSON.stringify(n.headerObj,null," "),null==n.payloadObj?n.payloadPP=pe(A):n.payloadPP=JSON.stringify(n.payloadObj,null," "),void 0!==r&&(n.sigHex=fe(r)),n},se.jws.JWS.verifyJWT=function(e,t,A){var r=se.jws,i=r.JWS,n=i.readSafeJSONString,a=i.inArray,o=i.includedArray,s=e.split("."),d=s[0],p=s[1],l=(fe(s[2]),n(pe(d))),c=n(pe(p));if(void 0===l.alg)return!1;if(void 0===A.alg)throw"acceptField.alg shall be specified";if(!a(l.alg,A.alg))return!1;if(void 0!==c.iss&&"object"===g(A.iss)&&!a(c.iss,A.iss))return!1;if(void 0!==c.sub&&"object"===g(A.sub)&&!a(c.sub,A.sub))return!1;if(void 0!==c.aud&&"object"===g(A.aud))if("string"==typeof c.aud){if(!a(c.aud,A.aud))return!1}else if("object"==g(c.aud)&&!o(c.aud,A.aud))return!1;var h=r.IntDate.getNow();return void 0!==A.verifyAt&&"number"==typeof A.verifyAt&&(h=A.verifyAt),void 0!==A.gracePeriod&&"number"==typeof A.gracePeriod||(A.gracePeriod=0),!(void 0!==c.exp&&"number"==typeof c.exp&&c.exp+A.gracePeriod<h||void 0!==c.nbf&&"number"==typeof c.nbf&&h<c.nbf-A.gracePeriod||void 0!==c.iat&&"number"==typeof c.iat&&h<c.iat-A.gracePeriod||void 0!==c.jti&&void 0!==A.jti&&c.jti!==A.jti||!i.verify(e,t,A.alg))},se.jws.JWS.includedArray=function(e,t){var A=se.jws.JWS.inArray;if(null===e)return!1;if("object"!==(void 0===e?"undefined":g(e)))return!1;if("number"!=typeof e.length)return!1;for(var r=0;r<e.length;r++)if(!A(e[r],t))return!1;return!0},se.jws.JWS.inArray=function(e,t){if(null===t)return!1;if("object"!==(void 0===t?"undefined":g(t)))return!1;if("number"!=typeof t.length)return!1;for(var A=0;A<t.length;A++)if(t[A]==e)return!0;return!1},se.jws.JWS.jwsalg2sigalg={HS256:"HmacSHA256",HS384:"HmacSHA384",HS512:"HmacSHA512",RS256:"SHA256withRSA",RS384:"SHA384withRSA",RS512:"SHA512withRSA",ES256:"SHA256withECDSA",ES384:"SHA384withECDSA",PS256:"SHA256withRSAandMGF1",PS384:"SHA384withRSAandMGF1",PS512:"SHA512withRSAandMGF1",none:"none"},se.jws.JWS.isSafeJSONString=function(e,t,A){var r=null;try{return"object"!=(void 0===(r=oe(e))?"undefined":g(r))||r.constructor===Array?0:(t&&(t[A]=r),1)}catch(e){return 0}},se.jws.JWS.readSafeJSONString=function(e){var t=null;try{return"object"!=(void 0===(t=oe(e))?"undefined":g(t))||t.constructor===Array?null:t}catch(e){return null}},se.jws.JWS.getEncodedSignatureValueFromJWS=function(e){var t=e.match(/^[^.]+\.[^.]+\.([^.]+)$/);if(null==t)throw"JWS signature is not a form of 'Head.Payload.SigValue'.";return t[1]},se.jws.JWS.getJWKthumbprint=function(e){if("RSA"!==e.kty&&"EC"!==e.kty&&"oct"!==e.kty)throw"unsupported algorithm for JWK Thumprint";var t="{";if("RSA"===e.kty){if("string"!=typeof e.n||"string"!=typeof e.e)throw"wrong n and e value for RSA key";t+='"e":"'+e.e+'",',t+='"kty":"'+e.kty+'",',t+='"n":"'+e.n+'"}'}else if("EC"===e.kty){if("string"!=typeof e.crv||"string"!=typeof e.x||"string"!=typeof e.y)throw"wrong crv, x and y value for EC key";t+='"crv":"'+e.crv+'",',t+='"kty":"'+e.kty+'",',t+='"x":"'+e.x+'",',t+='"y":"'+e.y+'"}'}else if("oct"===e.kty){if("string"!=typeof e.k)throw"wrong k value for oct(symmetric) key";t+='"kty":"'+e.kty+'",',t+='"k":"'+e.k+'"}'}var A=ye(t);return Ce(se.crypto.Util.hashHex(A,"sha256"))},se.jws.IntDate={},se.jws.IntDate.get=function(e){var t=se.jws.IntDate,A=t.getNow,r=t.getZulu;if("now"==e)return A();if("now + 1hour"==e)return A()+3600;if("now + 1day"==e)return A()+86400;if("now + 1month"==e)return A()+2592e3;if("now + 1year"==e)return A()+31536e3;if(e.match(/Z$/))return r(e);if(e.match(/^[0-9]+$/))return parseInt(e);throw"unsupported format: "+e},se.jws.IntDate.getZulu=function(e){return Re(e)},se.jws.IntDate.getNow=function(){return~~(new Date/1e3)},se.jws.IntDate.intDate2UTCString=function(e){return new Date(1e3*e).toUTCString()},se.jws.IntDate.intDate2Zulu=function(e){var t=new Date(1e3*e);return("0000"+t.getUTCFullYear()).slice(-4)+("00"+(t.getUTCMonth()+1)).slice(-2)+("00"+t.getUTCDate()).slice(-2)+("00"+t.getUTCHours()).slice(-2)+("00"+t.getUTCMinutes()).slice(-2)+("00"+t.getUTCSeconds()).slice(-2)+"Z"},t.SecureRandom=ee,t.rng_seed_time=j,t.BigInteger=B,t.RSAKey=re;var We=se.crypto.EDSA;t.EDSA=We;var je=se.crypto.DSA;t.DSA=je;var Ke=se.crypto.Signature;t.Signature=Ke;var Ze=se.crypto.MessageDigest;t.MessageDigest=Ze;var Xe=se.crypto.Mac;t.Mac=Xe;var ze=se.crypto.Cipher;t.Cipher=ze,t.KEYUTIL=Je,t.ASN1HEX=le,t.X509=qe,t.CryptoJS=E,t.b64tohex=Q,t.b64toBA=I,t.stoBA=ce,t.BAtos=ge,t.BAtohex=he,t.stohex=ue,t.stob64=function(e){return f(ue(e))},t.stob64u=function(e){return Ee(f(ue(e)))},t.b64utos=function(e){return ge(I(me(e)))},t.b64tob64u=Ee,t.b64utob64=me,t.hex2b64=f,t.hextob64u=Ce,t.b64utohex=fe,t.utf8tob64u=de,t.b64utoutf8=pe,t.utf8tob64=function(e){return f(ke(Me(e)))},t.b64toutf8=function(e){return decodeURIComponent(Ne(Q(e)))},t.utf8tohex=Qe,t.hextoutf8=Ie,t.hextorstr=Be,t.rstrtohex=ye,t.hextob64=we,t.hextob64nl=ve,t.b64nltohex=Se,t.hextopem=be,t.pemtohex=De,t.hextoArrayBuffer=function(e){if(e.length%2!=0)throw"input is not even length";if(null==e.match(/^[0-9A-Fa-f]+$/))throw"input is not hexadecimal";for(var t=new ArrayBuffer(e.length/2),A=new DataView(t),r=0;r<e.length/2;r++)A.setUint8(r,parseInt(e.substr(2*r,2),16));return t},t.ArrayBuffertohex=function(e){for(var t="",A=new DataView(e),r=0;r<e.byteLength;r++)t+=("00"+A.getUint8(r).toString(16)).slice(-2);return t},t.zulutomsec=Fe,t.zulutosec=Re,t.zulutodate=function(e){return new Date(Fe(e))},t.datetozulu=function(e,t,A){var r,i=e.getUTCFullYear();if(t){if(i<1950||2049<i)throw"not proper year for UTCTime: "+i;r=(""+i).slice(-2)}else r=("000"+i).slice(-4);if(r+=("0"+(e.getUTCMonth()+1)).slice(-2),r+=("0"+e.getUTCDate()).slice(-2),r+=("0"+e.getUTCHours()).slice(-2),r+=("0"+e.getUTCMinutes()).slice(-2),r+=("0"+e.getUTCSeconds()).slice(-2),A){var n=e.getUTCMilliseconds();0!==n&&(r+="."+(n=(n=("00"+n).slice(-3)).replace(/0+$/g,"")))}return r+"Z"},t.uricmptohex=ke,t.hextouricmp=Ne,t.ipv6tohex=_e,t.hextoipv6=Ue,t.hextoip=Te,t.iptohex=function(e){var t="malformed IP address";if(!(e=e.toLowerCase(e)).match(/^[0-9.]+$/)){if(e.match(/^[0-9a-f:]+$/)&&-1!==e.indexOf(":"))return _e(e);throw t}var A=e.split(".");if(4!==A.length)throw t;var r="";try{for(var i=0;i<4;i++)r+=("0"+parseInt(A[i]).toString(16)).slice(-2);return r}catch(e){throw t}},t.encodeURIComponentAll=Me,t.newline_toUnix=function(e){return e.replace(/\r\n/gm,"\n")},t.newline_toDos=function(e){return(e=e.replace(/\r\n/gm,"\n")).replace(/\n/gm,"\r\n")},t.hextoposhex=Ve,t.intarystrtohex=function(e){e=(e=(e=e.replace(/^\s*\[\s*/,"")).replace(/\s*\]\s*$/,"")).replace(/\s*/g,"");try{return e.split(/,/).map(function(e,t,A){var r=parseInt(e);if(r<0||255<r)throw"integer not in range 0-255";return("00"+r.toString(16)).slice(-2)}).join("")}catch(e){throw"malformed integer array string: "+e}},t.strdiffidx=function(e,t){var A=e.length;e.length>t.length&&(A=t.length);for(var r=0;r<A;r++)if(e.charCodeAt(r)!=t.charCodeAt(r))return r;return e.length!=t.length?A:-1},t.KJUR=se;var $e=se.crypto;t.crypto=$e;var et=se.asn1;t.asn1=et;var tt=se.jws;t.jws=tt;var At=se.lang;t.lang=At}).call(this,A(28).Buffer)},function(e,t,A){(function(e){
|
|
26
|
+
/*!
|
|
27
|
+
* The buffer module from node.js, for the browser.
|
|
28
|
+
*
|
|
29
|
+
* @author Feross Aboukhadijeh <http://feross.org>
|
|
30
|
+
* @license MIT
|
|
31
|
+
*/
|
|
32
|
+
var r=A(30),i=A(31),n=A(32);function a(){return s.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function o(e,t){if(a()<t)throw new RangeError("Invalid typed array length");return s.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=s.prototype:(null===e&&(e=new s(t)),e.length=t),e}function s(e,t,A){if(!(s.TYPED_ARRAY_SUPPORT||this instanceof s))return new s(e,t,A);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return l(this,e)}return d(this,e,t,A)}function d(e,t,A,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,A,r){if(t.byteLength,A<0||t.byteLength<A)throw new RangeError("'offset' is out of bounds");if(t.byteLength<A+(r||0))throw new RangeError("'length' is out of bounds");return t=void 0===A&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,A):new Uint8Array(t,A,r),s.TYPED_ARRAY_SUPPORT?(e=t).__proto__=s.prototype:e=c(e,t),e}(e,t,A,r):"string"==typeof t?function(e,t,A){if("string"==typeof A&&""!==A||(A="utf8"),!s.isEncoding(A))throw new TypeError('"encoding" must be a valid string encoding');var r=0|h(t,A),i=(e=o(e,r)).write(t,A);return i!==r&&(e=e.slice(0,i)),e}(e,t,A):function(e,t){if(s.isBuffer(t)){var A=0|g(t.length);return 0===(e=o(e,A)).length||t.copy(e,0,0,A),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||function(e){return e!=e}(t.length)?o(e,0):c(e,t);if("Buffer"===t.type&&n(t.data))return c(e,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function p(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function l(e,t){if(p(t),e=o(e,t<0?0:0|g(t)),!s.TYPED_ARRAY_SUPPORT)for(var A=0;A<t;++A)e[A]=0;return e}function c(e,t){var A=t.length<0?0:0|g(t.length);e=o(e,A);for(var r=0;r<A;r+=1)e[r]=255&t[r];return e}function g(e){if(e>=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function h(e,t){if(s.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var A=e.length;if(0===A)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return A;case"utf8":case"utf-8":case void 0:return P(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*A;case"hex":return A>>>1;case"base64":return J(e).length;default:if(r)return P(e).length;t=(""+t).toLowerCase(),r=!0}}function u(e,t,A){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===A||A>this.length)&&(A=this.length),A<=0)return"";if((A>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return R(this,t,A);case"utf8":case"utf-8":return S(this,t,A);case"ascii":return D(this,t,A);case"latin1":case"binary":return F(this,t,A);case"base64":return v(this,t,A);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,A);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function E(e,t,A){var r=e[t];e[t]=e[A],e[A]=r}function m(e,t,A,r,i){if(0===e.length)return-1;if("string"==typeof A?(r=A,A=0):A>2147483647?A=2147483647:A<-2147483648&&(A=-2147483648),A=+A,isNaN(A)&&(A=i?0:e.length-1),A<0&&(A=e.length+A),A>=e.length){if(i)return-1;A=e.length-1}else if(A<0){if(!i)return-1;A=0}if("string"==typeof t&&(t=s.from(t,r)),s.isBuffer(t))return 0===t.length?-1:C(e,t,A,r,i);if("number"==typeof t)return t&=255,s.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,A):Uint8Array.prototype.lastIndexOf.call(e,t,A):C(e,[t],A,r,i);throw new TypeError("val must be string, number or Buffer")}function C(e,t,A,r,i){var n,a=1,o=e.length,s=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,A/=2}function d(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var p=-1;for(n=A;n<o;n++)if(d(e,n)===d(t,-1===p?0:n-p)){if(-1===p&&(p=n),n-p+1===s)return p*a}else-1!==p&&(n-=n-p),p=-1}else for(A+s>o&&(A=o-s),n=A;n>=0;n--){for(var l=!0,c=0;c<s;c++)if(d(e,n+c)!==d(t,c)){l=!1;break}if(l)return n}return-1}function f(e,t,A,r){A=Number(A)||0;var i=e.length-A;r?(r=Number(r))>i&&(r=i):r=i;var n=t.length;if(n%2!=0)throw new TypeError("Invalid hex string");r>n/2&&(r=n/2);for(var a=0;a<r;++a){var o=parseInt(t.substr(2*a,2),16);if(isNaN(o))return a;e[A+a]=o}return a}function Q(e,t,A,r){return Y(P(t,e.length-A),e,A,r)}function I(e,t,A,r){return Y(function(e){for(var t=[],A=0;A<e.length;++A)t.push(255&e.charCodeAt(A));return t}(t),e,A,r)}function B(e,t,A,r){return I(e,t,A,r)}function y(e,t,A,r){return Y(J(t),e,A,r)}function w(e,t,A,r){return Y(function(e,t){for(var A,r,i,n=[],a=0;a<e.length&&!((t-=2)<0);++a)r=(A=e.charCodeAt(a))>>8,i=A%256,n.push(i),n.push(r);return n}(t,e.length-A),e,A,r)}function v(e,t,A){return 0===t&&A===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,A))}function S(e,t,A){A=Math.min(e.length,A);for(var r=[],i=t;i<A;){var n,a,o,s,d=e[i],p=null,l=d>239?4:d>223?3:d>191?2:1;if(i+l<=A)switch(l){case 1:d<128&&(p=d);break;case 2:128==(192&(n=e[i+1]))&&(s=(31&d)<<6|63&n)>127&&(p=s);break;case 3:n=e[i+1],a=e[i+2],128==(192&n)&&128==(192&a)&&(s=(15&d)<<12|(63&n)<<6|63&a)>2047&&(s<55296||s>57343)&&(p=s);break;case 4:n=e[i+1],a=e[i+2],o=e[i+3],128==(192&n)&&128==(192&a)&&128==(192&o)&&(s=(15&d)<<18|(63&n)<<12|(63&a)<<6|63&o)>65535&&s<1114112&&(p=s)}null===p?(p=65533,l=1):p>65535&&(p-=65536,r.push(p>>>10&1023|55296),p=56320|1023&p),r.push(p),i+=l}return function(e){var t=e.length;if(t<=b)return String.fromCharCode.apply(String,e);for(var A="",r=0;r<t;)A+=String.fromCharCode.apply(String,e.slice(r,r+=b));return A}(r)}t.Buffer=s,t.SlowBuffer=function(e){return+e!=e&&(e=0),s.alloc(+e)},t.INSPECT_MAX_BYTES=50,s.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=a(),s.poolSize=8192,s._augment=function(e){return e.__proto__=s.prototype,e},s.from=function(e,t,A){return d(null,e,t,A)},s.TYPED_ARRAY_SUPPORT&&(s.prototype.__proto__=Uint8Array.prototype,s.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&s[Symbol.species]===s&&Object.defineProperty(s,Symbol.species,{value:null,configurable:!0})),s.alloc=function(e,t,A){return function(e,t,A,r){return p(t),t<=0?o(e,t):void 0!==A?"string"==typeof r?o(e,t).fill(A,r):o(e,t).fill(A):o(e,t)}(null,e,t,A)},s.allocUnsafe=function(e){return l(null,e)},s.allocUnsafeSlow=function(e){return l(null,e)},s.isBuffer=function(e){return!(null==e||!e._isBuffer)},s.compare=function(e,t){if(!s.isBuffer(e)||!s.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var A=e.length,r=t.length,i=0,n=Math.min(A,r);i<n;++i)if(e[i]!==t[i]){A=e[i],r=t[i];break}return A<r?-1:r<A?1:0},s.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},s.concat=function(e,t){if(!n(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return s.alloc(0);var A;if(void 0===t)for(t=0,A=0;A<e.length;++A)t+=e[A].length;var r=s.allocUnsafe(t),i=0;for(A=0;A<e.length;++A){var a=e[A];if(!s.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,i),i+=a.length}return r},s.byteLength=h,s.prototype._isBuffer=!0,s.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)E(this,t,t+1);return this},s.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)E(this,t,t+3),E(this,t+1,t+2);return this},s.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)E(this,t,t+7),E(this,t+1,t+6),E(this,t+2,t+5),E(this,t+3,t+4);return this},s.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?S(this,0,e):u.apply(this,arguments)},s.prototype.equals=function(e){if(!s.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===s.compare(this,e)},s.prototype.inspect=function(){var e="",A=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,A).match(/.{2}/g).join(" "),this.length>A&&(e+=" ... ")),"<Buffer "+e+">"},s.prototype.compare=function(e,t,A,r,i){if(!s.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===A&&(A=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||A>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=A)return 0;if(r>=i)return-1;if(t>=A)return 1;if(this===e)return 0;for(var n=(i>>>=0)-(r>>>=0),a=(A>>>=0)-(t>>>=0),o=Math.min(n,a),d=this.slice(r,i),p=e.slice(t,A),l=0;l<o;++l)if(d[l]!==p[l]){n=d[l],a=p[l];break}return n<a?-1:a<n?1:0},s.prototype.includes=function(e,t,A){return-1!==this.indexOf(e,t,A)},s.prototype.indexOf=function(e,t,A){return m(this,e,t,A,!0)},s.prototype.lastIndexOf=function(e,t,A){return m(this,e,t,A,!1)},s.prototype.write=function(e,t,A,r){if(void 0===t)r="utf8",A=this.length,t=0;else if(void 0===A&&"string"==typeof t)r=t,A=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(A)?(A|=0,void 0===r&&(r="utf8")):(r=A,A=void 0)}var i=this.length-t;if((void 0===A||A>i)&&(A=i),e.length>0&&(A<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var n=!1;;)switch(r){case"hex":return f(this,e,t,A);case"utf8":case"utf-8":return Q(this,e,t,A);case"ascii":return I(this,e,t,A);case"latin1":case"binary":return B(this,e,t,A);case"base64":return y(this,e,t,A);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return w(this,e,t,A);default:if(n)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),n=!0}},s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var b=4096;function D(e,t,A){var r="";A=Math.min(e.length,A);for(var i=t;i<A;++i)r+=String.fromCharCode(127&e[i]);return r}function F(e,t,A){var r="";A=Math.min(e.length,A);for(var i=t;i<A;++i)r+=String.fromCharCode(e[i]);return r}function R(e,t,A){var r=e.length;(!t||t<0)&&(t=0),(!A||A<0||A>r)&&(A=r);for(var i="",n=t;n<A;++n)i+=H(e[n]);return i}function k(e,t,A){for(var r=e.slice(t,A),i="",n=0;n<r.length;n+=2)i+=String.fromCharCode(r[n]+256*r[n+1]);return i}function N(e,t,A){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>A)throw new RangeError("Trying to access beyond buffer length")}function _(e,t,A,r,i,n){if(!s.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<n)throw new RangeError('"value" argument is out of bounds');if(A+r>e.length)throw new RangeError("Index out of range")}function U(e,t,A,r){t<0&&(t=65535+t+1);for(var i=0,n=Math.min(e.length-A,2);i<n;++i)e[A+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function T(e,t,A,r){t<0&&(t=4294967295+t+1);for(var i=0,n=Math.min(e.length-A,4);i<n;++i)e[A+i]=t>>>8*(r?i:3-i)&255}function L(e,t,A,r,i,n){if(A+r>e.length)throw new RangeError("Index out of range");if(A<0)throw new RangeError("Index out of range")}function M(e,t,A,r,n){return n||L(e,0,A,4),i.write(e,t,A,r,23,4),A+4}function x(e,t,A,r,n){return n||L(e,0,A,8),i.write(e,t,A,r,52,8),A+8}s.prototype.slice=function(e,t){var A,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e),s.TYPED_ARRAY_SUPPORT)(A=this.subarray(e,t)).__proto__=s.prototype;else{var i=t-e;A=new s(i,void 0);for(var n=0;n<i;++n)A[n]=this[n+e]}return A},s.prototype.readUIntLE=function(e,t,A){e|=0,t|=0,A||N(e,t,this.length);for(var r=this[e],i=1,n=0;++n<t&&(i*=256);)r+=this[e+n]*i;return r},s.prototype.readUIntBE=function(e,t,A){e|=0,t|=0,A||N(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUInt8=function(e,t){return t||N(e,1,this.length),this[e]},s.prototype.readUInt16LE=function(e,t){return t||N(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUInt16BE=function(e,t){return t||N(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUInt32LE=function(e,t){return t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},s.prototype.readUInt32BE=function(e,t){return t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readIntLE=function(e,t,A){e|=0,t|=0,A||N(e,t,this.length);for(var r=this[e],i=1,n=0;++n<t&&(i*=256);)r+=this[e+n]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},s.prototype.readIntBE=function(e,t,A){e|=0,t|=0,A||N(e,t,this.length);for(var r=t,i=1,n=this[e+--r];r>0&&(i*=256);)n+=this[e+--r]*i;return n>=(i*=128)&&(n-=Math.pow(2,8*t)),n},s.prototype.readInt8=function(e,t){return t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},s.prototype.readInt16LE=function(e,t){t||N(e,2,this.length);var A=this[e]|this[e+1]<<8;return 32768&A?4294901760|A:A},s.prototype.readInt16BE=function(e,t){t||N(e,2,this.length);var A=this[e+1]|this[e]<<8;return 32768&A?4294901760|A:A},s.prototype.readInt32LE=function(e,t){return t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readFloatLE=function(e,t){return t||N(e,4,this.length),i.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return t||N(e,4,this.length),i.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return t||N(e,8,this.length),i.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return t||N(e,8,this.length),i.read(this,e,!1,52,8)},s.prototype.writeUIntLE=function(e,t,A,r){e=+e,t|=0,A|=0,r||_(this,e,t,A,Math.pow(2,8*A)-1,0);var i=1,n=0;for(this[t]=255&e;++n<A&&(i*=256);)this[t+n]=e/i&255;return t+A},s.prototype.writeUIntBE=function(e,t,A,r){e=+e,t|=0,A|=0,r||_(this,e,t,A,Math.pow(2,8*A)-1,0);var i=A-1,n=1;for(this[t+i]=255&e;--i>=0&&(n*=256);)this[t+i]=e/n&255;return t+A},s.prototype.writeUInt8=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,1,255,0),s.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},s.prototype.writeUInt16LE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},s.prototype.writeUInt16BE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},s.prototype.writeUInt32LE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):T(this,e,t,!0),t+4},s.prototype.writeUInt32BE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):T(this,e,t,!1),t+4},s.prototype.writeIntLE=function(e,t,A,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*A-1);_(this,e,t,A,i-1,-i)}var n=0,a=1,o=0;for(this[t]=255&e;++n<A&&(a*=256);)e<0&&0===o&&0!==this[t+n-1]&&(o=1),this[t+n]=(e/a|0)-o&255;return t+A},s.prototype.writeIntBE=function(e,t,A,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*A-1);_(this,e,t,A,i-1,-i)}var n=A-1,a=1,o=0;for(this[t+n]=255&e;--n>=0&&(a*=256);)e<0&&0===o&&0!==this[t+n+1]&&(o=1),this[t+n]=(e/a|0)-o&255;return t+A},s.prototype.writeInt8=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,1,127,-128),s.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},s.prototype.writeInt16LE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},s.prototype.writeInt16BE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},s.prototype.writeInt32LE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,4,2147483647,-2147483648),s.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):T(this,e,t,!0),t+4},s.prototype.writeInt32BE=function(e,t,A){return e=+e,t|=0,A||_(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):T(this,e,t,!1),t+4},s.prototype.writeFloatLE=function(e,t,A){return M(this,e,t,!0,A)},s.prototype.writeFloatBE=function(e,t,A){return M(this,e,t,!1,A)},s.prototype.writeDoubleLE=function(e,t,A){return x(this,e,t,!0,A)},s.prototype.writeDoubleBE=function(e,t,A){return x(this,e,t,!1,A)},s.prototype.copy=function(e,t,A,r){if(A||(A=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<A&&(r=A),r===A)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(A<0||A>=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-A&&(r=e.length-t+A);var i,n=r-A;if(this===e&&A<t&&t<r)for(i=n-1;i>=0;--i)e[i+t]=this[i+A];else if(n<1e3||!s.TYPED_ARRAY_SUPPORT)for(i=0;i<n;++i)e[i+t]=this[i+A];else Uint8Array.prototype.set.call(e,this.subarray(A,A+n),t);return n},s.prototype.fill=function(e,t,A,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,A=this.length):"string"==typeof A&&(r=A,A=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!s.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<A)throw new RangeError("Out of range index");if(A<=t)return this;var n;if(t>>>=0,A=void 0===A?this.length:A>>>0,e||(e=0),"number"==typeof e)for(n=t;n<A;++n)this[n]=e;else{var a=s.isBuffer(e)?e:P(new s(e,r).toString()),o=a.length;for(n=0;n<A-t;++n)this[n+t]=a[n%o]}return this};var V=/[^+\/0-9A-Za-z-_]/g;function H(e){return e<16?"0"+e.toString(16):e.toString(16)}function P(e,t){var A;t=t||1/0;for(var r=e.length,i=null,n=[],a=0;a<r;++a){if((A=e.charCodeAt(a))>55295&&A<57344){if(!i){if(A>56319){(t-=3)>-1&&n.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&n.push(239,191,189);continue}i=A;continue}if(A<56320){(t-=3)>-1&&n.push(239,191,189),i=A;continue}A=65536+(i-55296<<10|A-56320)}else i&&(t-=3)>-1&&n.push(239,191,189);if(i=null,A<128){if((t-=1)<0)break;n.push(A)}else if(A<2048){if((t-=2)<0)break;n.push(A>>6|192,63&A|128)}else if(A<65536){if((t-=3)<0)break;n.push(A>>12|224,A>>6&63|128,63&A|128)}else{if(!(A<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;n.push(A>>18|240,A>>12&63|128,A>>6&63|128,63&A|128)}}return n}function J(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(V,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function Y(e,t,A,r){for(var i=0;i<r&&!(i+A>=t.length||i>=e.length);++i)t[i+A]=e[i];return i}}).call(this,A(29))},function(e,t){var A;A=function(){return this}();try{A=A||new Function("return this")()}catch(e){"object"==typeof window&&(A=window)}e.exports=A},function(e,t,A){t.byteLength=function(e){var t=s(e),A=t[0],r=t[1];return 3*(A+r)/4-r},t.toByteArray=function(e){var t,A,r=s(e),a=r[0],o=r[1],d=new n(function(e,t,A){return 3*(t+A)/4-A}(0,a,o)),p=0,l=o>0?a-4:a;for(A=0;A<l;A+=4)t=i[e.charCodeAt(A)]<<18|i[e.charCodeAt(A+1)]<<12|i[e.charCodeAt(A+2)]<<6|i[e.charCodeAt(A+3)],d[p++]=t>>16&255,d[p++]=t>>8&255,d[p++]=255&t;return 2===o&&(t=i[e.charCodeAt(A)]<<2|i[e.charCodeAt(A+1)]>>4,d[p++]=255&t),1===o&&(t=i[e.charCodeAt(A)]<<10|i[e.charCodeAt(A+1)]<<4|i[e.charCodeAt(A+2)]>>2,d[p++]=t>>8&255,d[p++]=255&t),d},t.fromByteArray=function(e){for(var t,A=e.length,i=A%3,n=[],a=16383,o=0,s=A-i;o<s;o+=a)n.push(d(e,o,o+a>s?s:o+a));return 1===i?(t=e[A-1],n.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[A-2]<<8)+e[A-1],n.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),n.join("")};for(var r=[],i=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],i[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var A=e.indexOf("=");return-1===A&&(A=t),[A,A===t?0:4-A%4]}function d(e,t,A){for(var i,n,a=[],o=t;o<A;o+=3)i=(e[o]<<16&16711680)+(e[o+1]<<8&65280)+(255&e[o+2]),a.push(r[(n=i)>>18&63]+r[n>>12&63]+r[n>>6&63]+r[63&n]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){
|
|
33
|
+
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
34
|
+
t.read=function(e,t,A,r,i){var n,a,o=8*i-r-1,s=(1<<o)-1,d=s>>1,p=-7,l=A?i-1:0,c=A?-1:1,g=e[t+l];for(l+=c,n=g&(1<<-p)-1,g>>=-p,p+=o;p>0;n=256*n+e[t+l],l+=c,p-=8);for(a=n&(1<<-p)-1,n>>=-p,p+=r;p>0;a=256*a+e[t+l],l+=c,p-=8);if(0===n)n=1-d;else{if(n===s)return a?NaN:1/0*(g?-1:1);a+=Math.pow(2,r),n-=d}return(g?-1:1)*a*Math.pow(2,n-r)},t.write=function(e,t,A,r,i,n){var a,o,s,d=8*n-i-1,p=(1<<d)-1,l=p>>1,c=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,g=r?0:n-1,h=r?1:-1,u=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,a=p):(a=Math.floor(Math.log(t)/Math.LN2),t*(s=Math.pow(2,-a))<1&&(a--,s*=2),(t+=a+l>=1?c/s:c*Math.pow(2,1-l))*s>=2&&(a++,s/=2),a+l>=p?(o=0,a=p):a+l>=1?(o=(t*s-1)*Math.pow(2,i),a+=l):(o=t*Math.pow(2,l-1)*Math.pow(2,i),a=0));i>=8;e[A+g]=255&o,g+=h,o/=256,i-=8);for(a=a<<i|o,d+=i;d>0;e[A+g]=255&a,g+=h,a/=256,d-=8);e[A+g-h]|=128*u}},function(e,t){var A={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==A.call(e)}},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=e.jws,A=e.KeyUtil,i=e.X509,n=e.crypto,a=e.hextob64u,o=e.b64tohex,s=e.AllowedSigningAlgs;return function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.parseJwt=function e(A){r.Log.debug("JoseUtil.parseJwt");try{var i=t.JWS.parse(A);return{header:i.headerObj,payload:i.payloadObj}}catch(e){r.Log.error(e)}},e.validateJwt=function(t,n,a,s,d,p,l){r.Log.debug("JoseUtil.validateJwt");try{if("RSA"===n.kty)if(n.e&&n.n)n=A.getKey(n);else{if(!n.x5c||!n.x5c.length)return r.Log.error("JoseUtil.validateJwt: RSA key missing key material",n),Promise.reject(new Error("RSA key missing key material"));var c=o(n.x5c[0]);n=i.getPublicKeyFromCertHex(c)}else{if("EC"!==n.kty)return r.Log.error("JoseUtil.validateJwt: Unsupported key type",n&&n.kty),Promise.reject(new Error(n.kty));if(!(n.crv&&n.x&&n.y))return r.Log.error("JoseUtil.validateJwt: EC key missing key material",n),Promise.reject(new Error("EC key missing key material"));n=A.getKey(n)}return e._validateJwt(t,n,a,s,d,p,l)}catch(e){return r.Log.error(e&&e.message||e),Promise.reject("JWT validation failed")}},e.validateJwtAttributes=function(t,A,i,n,a,o){n||(n=0),a||(a=parseInt(Date.now()/1e3));var s=e.parseJwt(t).payload;if(!s.iss)return r.Log.error("JoseUtil._validateJwt: issuer was not provided"),Promise.reject(new Error("issuer was not provided"));if(s.iss!==A)return r.Log.error("JoseUtil._validateJwt: Invalid issuer in token",s.iss),Promise.reject(new Error("Invalid issuer in token: "+s.iss));if(!s.aud)return r.Log.error("JoseUtil._validateJwt: aud was not provided"),Promise.reject(new Error("aud was not provided"));if(!(s.aud===i||Array.isArray(s.aud)&&s.aud.indexOf(i)>=0))return r.Log.error("JoseUtil._validateJwt: Invalid audience in token",s.aud),Promise.reject(new Error("Invalid audience in token: "+s.aud));if(s.azp&&s.azp!==i)return r.Log.error("JoseUtil._validateJwt: Invalid azp in token",s.azp),Promise.reject(new Error("Invalid azp in token: "+s.azp));if(!o){var d=a+n,p=a-n;if(!s.iat)return r.Log.error("JoseUtil._validateJwt: iat was not provided"),Promise.reject(new Error("iat was not provided"));if(d<s.iat)return r.Log.error("JoseUtil._validateJwt: iat is in the future",s.iat),Promise.reject(new Error("iat is in the future: "+s.iat));if(s.nbf&&d<s.nbf)return r.Log.error("JoseUtil._validateJwt: nbf is in the future",s.nbf),Promise.reject(new Error("nbf is in the future: "+s.nbf));if(!s.exp)return r.Log.error("JoseUtil._validateJwt: exp was not provided"),Promise.reject(new Error("exp was not provided"));if(s.exp<p)return r.Log.error("JoseUtil._validateJwt: exp is in the past",s.exp),Promise.reject(new Error("exp is in the past:"+s.exp))}return Promise.resolve(s)},e._validateJwt=function(A,i,n,a,o,d,p){return e.validateJwtAttributes(A,n,a,o,d,p).then(function(e){try{return t.JWS.verify(A,i,s)?e:(r.Log.error("JoseUtil._validateJwt: signature validation failed"),Promise.reject(new Error("signature validation failed")))}catch(e){return r.Log.error(e&&e.message||e),Promise.reject(new Error("signature validation failed"))}})},e.hashString=function e(t,A){try{return n.Util.hashString(t,A)}catch(e){r.Log.error(e)}},e.hexToBase64Url=function e(t){try{return a(t)}catch(e){r.Log.error(e)}},e}()};var r=A(0);e.exports=t.default},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SigninResponse=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(3);t.SigninResponse=function(){function e(t){var A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#";!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);var r=i.UrlUtility.parseUrlFragment(t,A);this.error=r.error,this.error_description=r.error_description,this.error_uri=r.error_uri,this.code=r.code,this.state=r.state,this.id_token=r.id_token,this.session_state=r.session_state,this.access_token=r.access_token,this.token_type=r.token_type,this.scope=r.scope,this.profile=void 0,this.expires_in=r.expires_in}return r(e,[{key:"expires_in",get:function(){if(this.expires_at){var e=parseInt(Date.now()/1e3);return this.expires_at-e}},set:function(e){var t=parseInt(e);if("number"==typeof t&&t>0){var A=parseInt(Date.now()/1e3);this.expires_at=A+t}}},{key:"expired",get:function(){var e=this.expires_in;if(void 0!==e)return e<=0}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}},{key:"isOpenIdConnect",get:function(){return this.scopes.indexOf("openid")>=0||!!this.id_token}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SignoutRequest=void 0;var r=A(0),i=A(3),n=A(9);t.SignoutRequest=function e(t){var A=t.url,a=t.id_token_hint,o=t.post_logout_redirect_uri,s=t.data,d=t.extraQueryParams,p=t.request_type;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!A)throw r.Log.error("SignoutRequest.ctor: No url passed"),new Error("url");for(var l in a&&(A=i.UrlUtility.addQueryParam(A,"id_token_hint",a)),o&&(A=i.UrlUtility.addQueryParam(A,"post_logout_redirect_uri",o),s&&(this.state=new n.State({data:s,request_type:p}),A=i.UrlUtility.addQueryParam(A,"state",this.state.id))),d)A=i.UrlUtility.addQueryParam(A,l,d[l]);this.url=A}},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SignoutResponse=void 0;var r=A(3);t.SignoutResponse=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);var A=r.UrlUtility.parseUrlFragment(t,"?");this.error=A.error,this.error_description=A.error_description,this.error_uri=A.error_uri,this.state=A.state}},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.InMemoryWebStorage=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0);t.InMemoryWebStorage=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._data={}}return e.prototype.getItem=function(e){return i.Log.debug("InMemoryWebStorage.getItem",e),this._data[e]},e.prototype.setItem=function(e,t){i.Log.debug("InMemoryWebStorage.setItem",e),this._data[e]=t},e.prototype.removeItem=function(e){i.Log.debug("InMemoryWebStorage.removeItem",e),delete this._data[e]},e.prototype.key=function(e){return Object.getOwnPropertyNames(this._data)[e]},r(e,[{key:"length",get:function(){return Object.getOwnPropertyNames(this._data).length}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.UserManager=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(10),a=A(39),o=A(15),s=A(45),d=A(47),p=A(18),l=A(8),c=A(20),g=A(11),h=A(4);t.UserManager=function(e){function t(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d.SilentRenewService,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:p.SessionMonitor,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.TokenRevocationClient,l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:g.TokenClient,u=arguments.length>5&&void 0!==arguments[5]?arguments[5]:h.JoseUtil;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,t),A instanceof a.UserManagerSettings||(A=new a.UserManagerSettings(A));var E=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,A));return E._events=new s.UserManagerEvents(A),E._silentRenewService=new r(E),E.settings.automaticSilentRenew&&(i.Log.debug("UserManager.ctor: automaticSilentRenew is configured, setting up silent renew"),E.startSilentRenew()),E.settings.monitorSession&&(i.Log.debug("UserManager.ctor: monitorSession is configured, setting up session monitor"),E._sessionMonitor=new n(E)),E._tokenRevocationClient=new o(E._settings),E._tokenClient=new l(E._settings),E._joseUtil=u,E}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.getUser=function(){var e=this;return this._loadUser().then(function(t){return t?(i.Log.info("UserManager.getUser: user loaded"),e._events.load(t,!1),t):(i.Log.info("UserManager.getUser: user not found in storage"),null)})},t.prototype.removeUser=function(){var e=this;return this.storeUser(null).then(function(){i.Log.info("UserManager.removeUser: user removed from storage"),e._events.unload()})},t.prototype.signinRedirect=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).request_type="si:r";var t={useReplaceToNavigate:e.useReplaceToNavigate};return this._signinStart(e,this._redirectNavigator,t).then(function(){i.Log.info("UserManager.signinRedirect: successful")})},t.prototype.signinRedirectCallback=function(e){return this._signinEnd(e||this._redirectNavigator.url).then(function(e){return e.profile&&e.profile.sub?i.Log.info("UserManager.signinRedirectCallback: successful, signed in sub: ",e.profile.sub):i.Log.info("UserManager.signinRedirectCallback: no sub"),e})},t.prototype.signinPopup=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).request_type="si:p";var t=e.redirect_uri||this.settings.popup_redirect_uri||this.settings.redirect_uri;return t?(e.redirect_uri=t,e.display="popup",this._signin(e,this._popupNavigator,{startUrl:t,popupWindowFeatures:e.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:e.popupWindowTarget||this.settings.popupWindowTarget}).then(function(e){return e&&(e.profile&&e.profile.sub?i.Log.info("UserManager.signinPopup: signinPopup successful, signed in sub: ",e.profile.sub):i.Log.info("UserManager.signinPopup: no sub")),e})):(i.Log.error("UserManager.signinPopup: No popup_redirect_uri or redirect_uri configured"),Promise.reject(new Error("No popup_redirect_uri or redirect_uri configured")))},t.prototype.signinPopupCallback=function(e){return this._signinCallback(e,this._popupNavigator).then(function(e){return e&&(e.profile&&e.profile.sub?i.Log.info("UserManager.signinPopupCallback: successful, signed in sub: ",e.profile.sub):i.Log.info("UserManager.signinPopupCallback: no sub")),e}).catch(function(e){i.Log.error(e.message)})},t.prototype.signinSilent=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t=Object.assign({},t),this._loadUser().then(function(A){return A&&A.refresh_token?(t.refresh_token=A.refresh_token,e._useRefreshToken(t)):(t.request_type="si:s",t.id_token_hint=t.id_token_hint||e.settings.includeIdTokenInSilentRenew&&A&&A.id_token,A&&e._settings.validateSubOnSilentRenew&&(i.Log.debug("UserManager.signinSilent, subject prior to silent renew: ",A.profile.sub),t.current_sub=A.profile.sub),e._signinSilentIframe(t))})},t.prototype._useRefreshToken=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._tokenClient.exchangeRefreshToken(t).then(function(t){return t?t.access_token?e._loadUser().then(function(A){if(A){var r=Promise.resolve();return t.id_token&&(r=e._validateIdTokenFromTokenRefreshToken(A.profile,t.id_token)),r.then(function(){return i.Log.debug("UserManager._useRefreshToken: refresh token response success"),A.id_token=t.id_token||A.id_token,A.access_token=t.access_token,A.refresh_token=t.refresh_token||A.refresh_token,A.expires_in=t.expires_in,e.storeUser(A).then(function(){return e._events.load(A),A})})}return null}):(i.Log.error("UserManager._useRefreshToken: No access token returned from token endpoint"),Promise.reject("No access token returned from token endpoint")):(i.Log.error("UserManager._useRefreshToken: No response returned from token endpoint"),Promise.reject("No response returned from token endpoint"))})},t.prototype._validateIdTokenFromTokenRefreshToken=function(e,t){var A=this;return this._metadataService.getIssuer().then(function(r){return A.settings.getEpochTime().then(function(n){return A._joseUtil.validateJwtAttributes(t,r,A._settings.client_id,A._settings.clockSkew,n).then(function(t){return t?t.sub!==e.sub?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: sub in id_token does not match current sub"),Promise.reject(new Error("sub in id_token does not match current sub"))):t.auth_time&&t.auth_time!==e.auth_time?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: auth_time in id_token does not match original auth_time"),Promise.reject(new Error("auth_time in id_token does not match original auth_time"))):t.azp&&t.azp!==e.azp?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: azp in id_token does not match original azp"),Promise.reject(new Error("azp in id_token does not match original azp"))):!t.azp&&e.azp?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: azp not in id_token, but present in original id_token"),Promise.reject(new Error("azp not in id_token, but present in original id_token"))):void 0:(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: Failed to validate id_token"),Promise.reject(new Error("Failed to validate id_token")))})})})},t.prototype._signinSilentIframe=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.redirect_uri||this.settings.silent_redirect_uri||this.settings.redirect_uri;return t?(e.redirect_uri=t,e.prompt=e.prompt||"none",this._signin(e,this._iframeNavigator,{startUrl:t,silentRequestTimeout:e.silentRequestTimeout||this.settings.silentRequestTimeout}).then(function(e){return e&&(e.profile&&e.profile.sub?i.Log.info("UserManager.signinSilent: successful, signed in sub: ",e.profile.sub):i.Log.info("UserManager.signinSilent: no sub")),e})):(i.Log.error("UserManager.signinSilent: No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured")))},t.prototype.signinSilentCallback=function(e){return this._signinCallback(e,this._iframeNavigator).then(function(e){return e&&(e.profile&&e.profile.sub?i.Log.info("UserManager.signinSilentCallback: successful, signed in sub: ",e.profile.sub):i.Log.info("UserManager.signinSilentCallback: no sub")),e})},t.prototype.signinCallback=function(e){var t=this;return this.readSigninResponseState(e).then(function(A){var r=A.state;return A.response,"si:r"===r.request_type?t.signinRedirectCallback(e):"si:p"===r.request_type?t.signinPopupCallback(e):"si:s"===r.request_type?t.signinSilentCallback(e):Promise.reject(new Error("invalid response_type in state"))})},t.prototype.signoutCallback=function(e,t){var A=this;return this.readSignoutResponseState(e).then(function(r){var i=r.state,n=r.response;return i?"so:r"===i.request_type?A.signoutRedirectCallback(e):"so:p"===i.request_type?A.signoutPopupCallback(e,t):Promise.reject(new Error("invalid response_type in state")):n})},t.prototype.querySessionStatus=function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="si:s";var A=t.redirect_uri||this.settings.silent_redirect_uri||this.settings.redirect_uri;return A?(t.redirect_uri=A,t.prompt="none",t.response_type=t.response_type||this.settings.query_status_response_type,t.scope=t.scope||"openid",t.skipUserInfo=!0,this._signinStart(t,this._iframeNavigator,{startUrl:A,silentRequestTimeout:t.silentRequestTimeout||this.settings.silentRequestTimeout}).then(function(t){return e.processSigninResponse(t.url).then(function(e){if(i.Log.debug("UserManager.querySessionStatus: got signin response"),e.session_state&&e.profile.sub)return i.Log.info("UserManager.querySessionStatus: querySessionStatus success for sub: ",e.profile.sub),{session_state:e.session_state,sub:e.profile.sub,sid:e.profile.sid};i.Log.info("querySessionStatus successful, user not authenticated")}).catch(function(t){if(t.session_state&&e.settings.monitorAnonymousSession&&("login_required"==t.message||"consent_required"==t.message||"interaction_required"==t.message||"account_selection_required"==t.message))return i.Log.info("UserManager.querySessionStatus: querySessionStatus success for anonymous user"),{session_state:t.session_state};throw t})})):(i.Log.error("UserManager.querySessionStatus: No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured")))},t.prototype._signin=function(e,t){var A=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._signinStart(e,t,r).then(function(t){return A._signinEnd(t.url,e)})},t.prototype._signinStart=function(e,t){var A=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.prepare(r).then(function(t){return i.Log.debug("UserManager._signinStart: got navigator window handle"),A.createSigninRequest(e).then(function(e){return i.Log.debug("UserManager._signinStart: got signin request"),r.url=e.url,r.id=e.state.id,t.navigate(r)}).catch(function(e){throw t.close&&(i.Log.debug("UserManager._signinStart: Error after preparing navigator, closing navigator window"),t.close()),e})})},t.prototype._signinEnd=function(e){var t=this,A=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.processSigninResponse(e).then(function(e){i.Log.debug("UserManager._signinEnd: got signin response");var r=new o.User(e);if(A.current_sub){if(A.current_sub!==r.profile.sub)return i.Log.debug("UserManager._signinEnd: current user does not match user returned from signin. sub from signin: ",r.profile.sub),Promise.reject(new Error("login_required"));i.Log.debug("UserManager._signinEnd: current user matches user returned from signin")}return t.storeUser(r).then(function(){return i.Log.debug("UserManager._signinEnd: user stored"),t._events.load(r),r})})},t.prototype._signinCallback=function(e,t){i.Log.debug("UserManager._signinCallback");var A="query"===this._settings.response_mode||!this._settings.response_mode&&l.SigninRequest.isCode(this._settings.response_type)?"?":"#";return t.callback(e,void 0,A)},t.prototype.signoutRedirect=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).request_type="so:r";var t=e.post_logout_redirect_uri||this.settings.post_logout_redirect_uri;t&&(e.post_logout_redirect_uri=t);var A={useReplaceToNavigate:e.useReplaceToNavigate};return this._signoutStart(e,this._redirectNavigator,A).then(function(){i.Log.info("UserManager.signoutRedirect: successful")})},t.prototype.signoutRedirectCallback=function(e){return this._signoutEnd(e||this._redirectNavigator.url).then(function(e){return i.Log.info("UserManager.signoutRedirectCallback: successful"),e})},t.prototype.signoutPopup=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).request_type="so:p";var t=e.post_logout_redirect_uri||this.settings.popup_post_logout_redirect_uri||this.settings.post_logout_redirect_uri;return e.post_logout_redirect_uri=t,e.display="popup",e.post_logout_redirect_uri&&(e.state=e.state||{}),this._signout(e,this._popupNavigator,{startUrl:t,popupWindowFeatures:e.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:e.popupWindowTarget||this.settings.popupWindowTarget}).then(function(){i.Log.info("UserManager.signoutPopup: successful")})},t.prototype.signoutPopupCallback=function(e,t){return void 0===t&&"boolean"==typeof e&&(t=e,e=null),this._popupNavigator.callback(e,t,"?").then(function(){i.Log.info("UserManager.signoutPopupCallback: successful")})},t.prototype._signout=function(e,t){var A=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._signoutStart(e,t,r).then(function(e){return A._signoutEnd(e.url)})},t.prototype._signoutStart=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this,A=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return arguments[1].prepare(A).then(function(r){return i.Log.debug("UserManager._signoutStart: got navigator window handle"),t._loadUser().then(function(n){return i.Log.debug("UserManager._signoutStart: loaded current user from storage"),(t._settings.revokeAccessTokenOnSignout?t._revokeInternal(n):Promise.resolve()).then(function(){var a=e.id_token_hint||n&&n.id_token;return a&&(i.Log.debug("UserManager._signoutStart: Setting id_token into signout request"),e.id_token_hint=a),t.removeUser().then(function(){return i.Log.debug("UserManager._signoutStart: user removed, creating signout request"),t.createSignoutRequest(e).then(function(e){return i.Log.debug("UserManager._signoutStart: got signout request"),A.url=e.url,e.state&&(A.id=e.state.id),r.navigate(A)})})})}).catch(function(e){throw r.close&&(i.Log.debug("UserManager._signoutStart: Error after preparing navigator, closing navigator window"),r.close()),e})})},t.prototype._signoutEnd=function(e){return this.processSignoutResponse(e).then(function(e){return i.Log.debug("UserManager._signoutEnd: got signout response"),e})},t.prototype.revokeAccessToken=function(){var e=this;return this._loadUser().then(function(t){return e._revokeInternal(t,!0).then(function(A){if(A)return i.Log.debug("UserManager.revokeAccessToken: removing token properties from user and re-storing"),t.access_token=null,t.refresh_token=null,t.expires_at=null,t.token_type=null,e.storeUser(t).then(function(){i.Log.debug("UserManager.revokeAccessToken: user stored"),e._events.load(t)})})}).then(function(){i.Log.info("UserManager.revokeAccessToken: access token revoked successfully")})},t.prototype._revokeInternal=function(e,t){var A=this;if(e){var r=e.access_token,n=e.refresh_token;return this._revokeAccessTokenInternal(r,t).then(function(e){return A._revokeRefreshTokenInternal(n,t).then(function(t){return e||t||i.Log.debug("UserManager.revokeAccessToken: no need to revoke due to no token(s), or JWT format"),e||t})})}return Promise.resolve(!1)},t.prototype._revokeAccessTokenInternal=function(e,t){return!e||e.indexOf(".")>=0?Promise.resolve(!1):this._tokenRevocationClient.revoke(e,t).then(function(){return!0})},t.prototype._revokeRefreshTokenInternal=function(e,t){return e?this._tokenRevocationClient.revoke(e,t,"refresh_token").then(function(){return!0}):Promise.resolve(!1)},t.prototype.startSilentRenew=function(){this._silentRenewService.start()},t.prototype.stopSilentRenew=function(){this._silentRenewService.stop()},t.prototype._loadUser=function(){return this._userStore.get(this._userStoreKey).then(function(e){return e?(i.Log.debug("UserManager._loadUser: user storageString loaded"),o.User.fromStorageString(e)):(i.Log.debug("UserManager._loadUser: no user storageString"),null)})},t.prototype.storeUser=function(e){if(e){i.Log.debug("UserManager.storeUser: storing user");var t=e.toStorageString();return this._userStore.set(this._userStoreKey,t)}return i.Log.debug("storeUser.storeUser: removing user"),this._userStore.remove(this._userStoreKey)},r(t,[{key:"_redirectNavigator",get:function(){return this.settings.redirectNavigator}},{key:"_popupNavigator",get:function(){return this.settings.popupNavigator}},{key:"_iframeNavigator",get:function(){return this.settings.iframeNavigator}},{key:"_userStore",get:function(){return this.settings.userStore}},{key:"events",get:function(){return this._events}},{key:"_userStoreKey",get:function(){return"user:"+this.settings.authority+":"+this.settings.client_id}}]),t}(n.OidcClient)},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.UserManagerSettings=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=(A(0),A(5)),n=A(40),a=A(41),o=A(43),s=A(6),d=A(1),p=A(8);t.UserManagerSettings=function(e){function t(){var A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=A.popup_redirect_uri,i=A.popup_post_logout_redirect_uri,l=A.popupWindowFeatures,c=A.popupWindowTarget,g=A.silent_redirect_uri,h=A.silentRequestTimeout,u=A.automaticSilentRenew,E=void 0!==u&&u,m=A.validateSubOnSilentRenew,C=void 0!==m&&m,f=A.includeIdTokenInSilentRenew,Q=void 0===f||f,I=A.monitorSession,B=void 0===I||I,y=A.monitorAnonymousSession,w=void 0!==y&&y,v=A.checkSessionInterval,S=void 0===v?2e3:v,b=A.stopCheckSessionOnError,D=void 0===b||b,F=A.query_status_response_type,R=A.revokeAccessTokenOnSignout,k=void 0!==R&&R,N=A.accessTokenExpiringNotificationTime,_=void 0===N?60:N,U=A.redirectNavigator,T=void 0===U?new n.RedirectNavigator:U,L=A.popupNavigator,M=void 0===L?new a.PopupNavigator:L,x=A.iframeNavigator,V=void 0===x?new o.IFrameNavigator:x,H=A.userStore,P=void 0===H?new s.WebStorageStateStore({store:d.Global.sessionStorage}):H;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var J=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,arguments[0]));return J._popup_redirect_uri=r,J._popup_post_logout_redirect_uri=i,J._popupWindowFeatures=l,J._popupWindowTarget=c,J._silent_redirect_uri=g,J._silentRequestTimeout=h,J._automaticSilentRenew=E,J._validateSubOnSilentRenew=C,J._includeIdTokenInSilentRenew=Q,J._accessTokenExpiringNotificationTime=_,J._monitorSession=B,J._monitorAnonymousSession=w,J._checkSessionInterval=S,J._stopCheckSessionOnError=D,F?J._query_status_response_type=F:arguments[0]&&arguments[0].response_type?J._query_status_response_type=p.SigninRequest.isOidc(arguments[0].response_type)?"id_token":"code":J._query_status_response_type="id_token",J._revokeAccessTokenOnSignout=k,J._redirectNavigator=T,J._popupNavigator=M,J._iframeNavigator=V,J._userStore=P,J}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,[{key:"popup_redirect_uri",get:function(){return this._popup_redirect_uri}},{key:"popup_post_logout_redirect_uri",get:function(){return this._popup_post_logout_redirect_uri}},{key:"popupWindowFeatures",get:function(){return this._popupWindowFeatures}},{key:"popupWindowTarget",get:function(){return this._popupWindowTarget}},{key:"silent_redirect_uri",get:function(){return this._silent_redirect_uri}},{key:"silentRequestTimeout",get:function(){return this._silentRequestTimeout}},{key:"automaticSilentRenew",get:function(){return this._automaticSilentRenew}},{key:"validateSubOnSilentRenew",get:function(){return this._validateSubOnSilentRenew}},{key:"includeIdTokenInSilentRenew",get:function(){return this._includeIdTokenInSilentRenew}},{key:"accessTokenExpiringNotificationTime",get:function(){return this._accessTokenExpiringNotificationTime}},{key:"monitorSession",get:function(){return this._monitorSession}},{key:"monitorAnonymousSession",get:function(){return this._monitorAnonymousSession}},{key:"checkSessionInterval",get:function(){return this._checkSessionInterval}},{key:"stopCheckSessionOnError",get:function(){return this._stopCheckSessionOnError}},{key:"query_status_response_type",get:function(){return this._query_status_response_type}},{key:"revokeAccessTokenOnSignout",get:function(){return this._revokeAccessTokenOnSignout}},{key:"redirectNavigator",get:function(){return this._redirectNavigator}},{key:"popupNavigator",get:function(){return this._popupNavigator}},{key:"iframeNavigator",get:function(){return this._iframeNavigator}},{key:"userStore",get:function(){return this._userStore}}]),t}(i.OidcClientSettings)},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.RedirectNavigator=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0);t.RedirectNavigator=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.prototype.prepare=function(){return Promise.resolve(this)},e.prototype.navigate=function(e){return e&&e.url?(e.useReplaceToNavigate?window.location.replace(e.url):window.location=e.url,Promise.resolve()):(i.Log.error("RedirectNavigator.navigate: No url provided"),Promise.reject(new Error("No url provided")))},r(e,[{key:"url",get:function(){return window.location.href}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.PopupNavigator=void 0;var r=A(0),i=A(42);t.PopupNavigator=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.prototype.prepare=function(e){var t=new i.PopupWindow(e);return Promise.resolve(t)},e.prototype.callback=function e(t,A,n){r.Log.debug("PopupNavigator.callback");try{return i.PopupWindow.notifyOpener(t,A,n),Promise.resolve()}catch(e){return Promise.reject(e)}},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.PopupWindow=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(3);t.PopupWindow=function(){function e(t){var A=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._promise=new Promise(function(e,t){A._resolve=e,A._reject=t});var r=t.popupWindowTarget||"_blank",n=t.popupWindowFeatures||"location=no,toolbar=no,width=500,height=500,left=100,top=100;";this._popup=window.open("",r,n),this._popup&&(i.Log.debug("PopupWindow.ctor: popup successfully created"),this._checkForPopupClosedTimer=window.setInterval(this._checkForPopupClosed.bind(this),500))}return e.prototype.navigate=function(e){return this._popup?e&&e.url?(i.Log.debug("PopupWindow.navigate: Setting URL in popup"),this._id=e.id,this._id&&(window["popupCallback_"+e.id]=this._callback.bind(this)),this._popup.focus(),this._popup.window.location=e.url):(this._error("PopupWindow.navigate: no url provided"),this._error("No url provided")):this._error("PopupWindow.navigate: Error opening popup window"),this.promise},e.prototype._success=function(e){i.Log.debug("PopupWindow.callback: Successful response from popup window"),this._cleanup(),this._resolve(e)},e.prototype._error=function(e){i.Log.error("PopupWindow.error: ",e),this._cleanup(),this._reject(new Error(e))},e.prototype.close=function(){this._cleanup(!1)},e.prototype._cleanup=function(e){i.Log.debug("PopupWindow.cleanup"),window.clearInterval(this._checkForPopupClosedTimer),this._checkForPopupClosedTimer=null,delete window["popupCallback_"+this._id],this._popup&&!e&&this._popup.close(),this._popup=null},e.prototype._checkForPopupClosed=function(){this._popup&&!this._popup.closed||this._error("Popup window closed")},e.prototype._callback=function(e,t){this._cleanup(t),e?(i.Log.debug("PopupWindow.callback success"),this._success({url:e})):(i.Log.debug("PopupWindow.callback: Invalid response from popup"),this._error("Invalid response from popup"))},e.notifyOpener=function(e,t,A){if(window.opener){if(e=e||window.location.href){var r=n.UrlUtility.parseUrlFragment(e,A);if(r.state){var a="popupCallback_"+r.state,o=window.opener[a];o?(i.Log.debug("PopupWindow.notifyOpener: passing url message to opener"),o(e,t)):i.Log.warn("PopupWindow.notifyOpener: no matching callback found on opener")}else i.Log.warn("PopupWindow.notifyOpener: no state found in response url")}}else i.Log.warn("PopupWindow.notifyOpener: no window.opener. Can't complete notification.")},r(e,[{key:"promise",get:function(){return this._promise}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.IFrameNavigator=void 0;var r=A(0),i=A(44);t.IFrameNavigator=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.prototype.prepare=function(e){var t=new i.IFrameWindow(e);return Promise.resolve(t)},e.prototype.callback=function e(t){r.Log.debug("IFrameNavigator.callback");try{return i.IFrameWindow.notifyParent(t),Promise.resolve()}catch(e){return Promise.reject(e)}},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.IFrameWindow=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0);t.IFrameWindow=function(){function e(t){var A=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._promise=new Promise(function(e,t){A._resolve=e,A._reject=t}),this._boundMessageEvent=this._message.bind(this),window.addEventListener("message",this._boundMessageEvent,!1),this._frame=window.document.createElement("iframe"),this._frame.style.visibility="hidden",this._frame.style.position="absolute",this._frame.width=0,this._frame.height=0,window.document.body.appendChild(this._frame)}return e.prototype.navigate=function(e){if(e&&e.url){var t=e.silentRequestTimeout||1e4;i.Log.debug("IFrameWindow.navigate: Using timeout of:",t),this._timer=window.setTimeout(this._timeout.bind(this),t),this._frame.src=e.url}else this._error("No url provided");return this.promise},e.prototype._success=function(e){this._cleanup(),i.Log.debug("IFrameWindow: Successful response from frame window"),this._resolve(e)},e.prototype._error=function(e){this._cleanup(),i.Log.error(e),this._reject(new Error(e))},e.prototype.close=function(){this._cleanup()},e.prototype._cleanup=function(){this._frame&&(i.Log.debug("IFrameWindow: cleanup"),window.removeEventListener("message",this._boundMessageEvent,!1),window.clearTimeout(this._timer),window.document.body.removeChild(this._frame),this._timer=null,this._frame=null,this._boundMessageEvent=null)},e.prototype._timeout=function(){i.Log.debug("IFrameWindow.timeout"),this._error("Frame window timed out")},e.prototype._message=function(e){if(i.Log.debug("IFrameWindow.message"),this._timer&&e.origin===this._origin&&e.source===this._frame.contentWindow&&"string"==typeof e.data&&(e.data.startsWith("http://")||e.data.startsWith("https://"))){var t=e.data;t?this._success({url:t}):this._error("Invalid response from frame")}},e.notifyParent=function(e){i.Log.debug("IFrameWindow.notifyParent"),(e=e||window.location.href)&&(i.Log.debug("IFrameWindow.notifyParent: posting url message to parent"),window.parent.postMessage(e,location.protocol+"//"+location.host))},r(e,[{key:"promise",get:function(){return this._promise}},{key:"_origin",get:function(){return location.protocol+"//"+location.host}}]),e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.UserManagerEvents=void 0;var r=A(0),i=A(16),n=A(17);t.UserManagerEvents=function(e){function t(A){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var r=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,A));return r._userLoaded=new n.Event("User loaded"),r._userUnloaded=new n.Event("User unloaded"),r._silentRenewError=new n.Event("Silent renew error"),r._userSignedIn=new n.Event("User signed in"),r._userSignedOut=new n.Event("User signed out"),r._userSessionChanged=new n.Event("User session changed"),r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.load=function(t){var A=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r.Log.debug("UserManagerEvents.load"),e.prototype.load.call(this,t),A&&this._userLoaded.raise(t)},t.prototype.unload=function(){r.Log.debug("UserManagerEvents.unload"),e.prototype.unload.call(this),this._userUnloaded.raise()},t.prototype.addUserLoaded=function(e){this._userLoaded.addHandler(e)},t.prototype.removeUserLoaded=function(e){this._userLoaded.removeHandler(e)},t.prototype.addUserUnloaded=function(e){this._userUnloaded.addHandler(e)},t.prototype.removeUserUnloaded=function(e){this._userUnloaded.removeHandler(e)},t.prototype.addSilentRenewError=function(e){this._silentRenewError.addHandler(e)},t.prototype.removeSilentRenewError=function(e){this._silentRenewError.removeHandler(e)},t.prototype._raiseSilentRenewError=function(e){r.Log.debug("UserManagerEvents._raiseSilentRenewError",e.message),this._silentRenewError.raise(e)},t.prototype.addUserSignedIn=function(e){this._userSignedIn.addHandler(e)},t.prototype.removeUserSignedIn=function(e){this._userSignedIn.removeHandler(e)},t.prototype._raiseUserSignedIn=function(){r.Log.debug("UserManagerEvents._raiseUserSignedIn"),this._userSignedIn.raise()},t.prototype.addUserSignedOut=function(e){this._userSignedOut.addHandler(e)},t.prototype.removeUserSignedOut=function(e){this._userSignedOut.removeHandler(e)},t.prototype._raiseUserSignedOut=function(){r.Log.debug("UserManagerEvents._raiseUserSignedOut"),this._userSignedOut.raise()},t.prototype.addUserSessionChanged=function(e){this._userSessionChanged.addHandler(e)},t.prototype.removeUserSessionChanged=function(e){this._userSessionChanged.removeHandler(e)},t.prototype._raiseUserSessionChanged=function(){r.Log.debug("UserManagerEvents._raiseUserSessionChanged"),this._userSessionChanged.raise()},t}(i.AccessTokenEvents)},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.Timer=void 0;var r=function(){function e(e,t){for(var A=0;A<t.length;A++){var r=t[A];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,A,r){return A&&e(t.prototype,A),r&&e(t,r),t}}(),i=A(0),n=A(1),a=A(17);t.Timer=function(e){function t(A){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.Global.timer,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var a=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,e.call(this,A));return a._timer=r,a._nowFunc=i||function(){return Date.now()/1e3},a}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.init=function(e){e<=0&&(e=1),e=parseInt(e);var t=this.now+e;if(this.expiration===t&&this._timerHandle)i.Log.debug("Timer.init timer "+this._name+" skipping initialization since already initialized for expiration:",this.expiration);else{this.cancel(),i.Log.debug("Timer.init timer "+this._name+" for duration:",e),this._expiration=t;var A=5;e<A&&(A=e),this._timerHandle=this._timer.setInterval(this._callback.bind(this),1e3*A)}},t.prototype.cancel=function(){this._timerHandle&&(i.Log.debug("Timer.cancel: ",this._name),this._timer.clearInterval(this._timerHandle),this._timerHandle=null)},t.prototype._callback=function(){var t=this._expiration-this.now;i.Log.debug("Timer.callback; "+this._name+" timer expires in:",t),this._expiration<=this.now&&(this.cancel(),e.prototype.raise.call(this))},r(t,[{key:"now",get:function(){return parseInt(this._nowFunc())}},{key:"expiration",get:function(){return this._expiration}}]),t}(a.Event)},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SilentRenewService=void 0;var r=A(0);t.SilentRenewService=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._userManager=t}return e.prototype.start=function(){this._callback||(this._callback=this._tokenExpiring.bind(this),this._userManager.events.addAccessTokenExpiring(this._callback),this._userManager.getUser().then(function(e){}).catch(function(e){r.Log.error("SilentRenewService.start: Error from getUser:",e.message)}))},e.prototype.stop=function(){this._callback&&(this._userManager.events.removeAccessTokenExpiring(this._callback),delete this._callback)},e.prototype._tokenExpiring=function(){var e=this;this._userManager.signinSilent().then(function(e){r.Log.debug("SilentRenewService._tokenExpiring: Silent token renewal successful")},function(t){r.Log.error("SilentRenewService._tokenExpiring: Error from signinSilent:",t.message),e._userManager.events._raiseSilentRenewError(t)})},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.CordovaPopupNavigator=void 0;var r=A(21);t.CordovaPopupNavigator=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.prototype.prepare=function(e){var t=new r.CordovaPopupWindow(e);return Promise.resolve(t)},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.CordovaIFrameNavigator=void 0;var r=A(21);t.CordovaIFrameNavigator=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return e.prototype.prepare=function(e){e.popupWindowFeatures="hidden=yes";var t=new r.CordovaPopupWindow(e);return Promise.resolve(t)},e}()},function(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.Version="1.11.6"}]));async function Es(e,t){var A;if(!t.registrationEndpoint)throw new Error("Dynamic Registration could not be completed because the issuer has no registration endpoint.");if(!Array.isArray(t.idTokenSigningAlgValuesSupported))throw new Error("The OIDC issuer discovery profile is missing the 'id_token_signing_alg_values_supported' value, which is mandatory.");const r=function(e,t){var A;return null!==(A=t.find(t=>e.includes(t)))&&void 0!==A?A:null}(t.idTokenSigningAlgValuesSupported,Fo),i={client_name:e.clientName,application_type:"web",redirect_uris:[null===(A=e.redirectUrl)||void 0===A?void 0:A.toString()],subject_type:"public",token_endpoint_auth_method:"client_secret_basic",id_token_signed_response_alg:r,grant_types:["authorization_code","refresh_token"]},n=await fetch(t.registrationEndpoint.toString(),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(n.ok){const t=await n.json();return function(e,t){if(void 0===e.client_id)throw new Error(`Dynamic client registration failed: no client_id has been found on ${JSON.stringify(e)}`);if(t.redirectUrl&&(void 0===e.redirect_uris||e.redirect_uris[0]!==t.redirectUrl.toString()))throw new Error(`Dynamic client registration failed: the returned redirect URIs ${JSON.stringify(e.redirect_uris)} don't match the provided ${JSON.stringify([t.redirectUrl.toString()])}`)}(t,e),{clientId:t.client_id,clientSecret:t.client_secret,idTokenSignedResponseAlg:t.id_token_signed_response_alg,clientType:"dynamic"}}throw 400===n.status&&function(e,t){var A,r,i,n;if("invalid_redirect_uri"===e.error)throw new Error(`Dynamic client registration failed: the provided redirect uri [${null===(A=t.redirectUrl)||void 0===A?void 0:A.toString()}] is invalid - ${null!==(r=e.error_description)&&void 0!==r?r:""}`);if("invalid_client_metadata"===e.error)throw new Error(`Dynamic client registration failed: the provided client metadata ${JSON.stringify(t)} is invalid - ${null!==(i=e.error_description)&&void 0!==i?i:""}`);throw new Error(`Dynamic client registration failed: ${e.error} - ${null!==(n=e.error_description)&&void 0!==n?n:""}`)}(await n.json(),e),new Error(`Dynamic client registration failed: the server returned ${n.status} ${n.statusText} - ${await n.text()}`)}function ms(e){return void 0!==e.error_description&&"string"==typeof e.error_description}function Cs(e,t){if(void 0!==(A=e).error&&"string"==typeof A.error)throw new as(`Token endpoint returned error [${e.error}]${ms(e)?`: ${e.error_description}`:""}${function(e){return void 0!==e.error_uri&&"string"==typeof e.error_uri}(e)?` (see ${e.error_uri})`:""}`,e.error,ms(e)?e.error_description:void 0);var A;if(!function(e){return void 0!==e.access_token&&"string"==typeof e.access_token}(e))throw new ns(["access_token"]);if(!function(e){return void 0!==e.id_token&&"string"==typeof e.id_token}(e))throw new ns(["id_token"]);if(!function(e){return void 0!==e.token_type&&"string"==typeof e.token_type}(e))throw new ns(["token_type"]);if(!function(e){return void 0===e.expires_in||"number"==typeof e.expires_in}(e))throw new ns(["expires_in"]);if(!t&&"bearer"!==e.token_type.toLowerCase())throw new Error(`Invalid token endpoint response: requested a [Bearer] token, but got a 'token_type' value of [${e.token_type}].`);return e}async function fs(e,t,A,r){!function(e,t){if(t.grantType&&(!e.grantTypesSupported||!e.grantTypesSupported.includes(t.grantType)))throw new Error(`The issuer [${e.issuer}] does not support the [${t.grantType}] grant`);if(!e.tokenEndpoint)throw new Error(`This issuer [${e.issuer}] does not have a token endpoint`)}(e,A);const i={"content-type":"application/x-www-form-urlencoded"};let n;r&&(n=await async function(){const{privateKey:e,publicKey:t}=await Io(Fo[0]),A={privateKey:e,publicKey:await za(t)};return[A.publicKey.alg]=Fo,A}(),i.DPoP=await ss(e.tokenEndpoint,"POST",n)),t.clientSecret&&(i.Authorization=`Basic ${btoa(`${t.clientId}:${t.clientSecret}`)}`);const a={grant_type:A.grantType,redirect_uri:A.redirectUrl,code:A.code,code_verifier:A.codeVerifier,client_id:t.clientId},o={method:"POST",headers:i,body:new URLSearchParams(a).toString()},s=await Jn(e.tokenEndpoint,o),d=Cs(await s.json(),r),p=await Ho(d.id_token,e.jwksUri,e.issuer,t.clientId);return{accessToken:d.access_token,idToken:d.id_token,refreshToken:(l=d,void 0!==l.refresh_token&&"string"==typeof l.refresh_token?d.refresh_token:void 0),webId:p,dpopKey:n,expiresIn:d.expires_in};var l}async function Qs(e,t,A,r){if(void 0===A.clientId)throw new Error("No client ID available when trying to refresh the access token.");const i={grant_type:"refresh_token",refresh_token:e,scope:xo};let n={};void 0!==r&&(n={DPoP:await ss(t.tokenEndpoint,"POST",r)});let a={};void 0!==A.clientSecret?a={Authorization:`Basic ${btoa(`${A.clientId}:${A.clientSecret}`)}`}:(e=>{try{return new URL(e),!0}catch(e){return!1}})(A.clientId)&&(i.client_id=A.clientId);const o=await Jn(t.tokenEndpoint,{method:"POST",body:new URLSearchParams(i).toString(),headers:{...n,...a,"Content-Type":"application/x-www-form-urlencoded"}});let s;try{s=await o.json()}catch(e){throw new Error(`The token endpoint of issuer ${t.issuer} returned a malformed response.`)}const d=Cs(s,void 0!==r),p=await Ho(d.id_token,t.jwksUri,t.issuer,A.clientId);return{accessToken:d.access_token,idToken:d.id_token,refreshToken:"string"==typeof d.refresh_token?d.refresh_token:void 0,webId:p,dpopKey:r,expiresIn:d.expires_in}}class Is extends As{constructor(e,t){super(e,t)}}class Bs extends es{constructor(){super(...arguments),this.login=async(e,t)=>{var A,r;await this.sessionInfoManager.clear(e.sessionId);const i=null!==(A=e.redirectUrl)&&void 0!==A?A:function(e){const t=Jo(e);return t.hash="",e.includes(`${t.origin}/`)?t.href:`${t.origin}${t.href.substring(t.origin.length+1)}`}(window.location.href);if(!Po(i))throw new Error(`${i} is not a valid redirect URL, it is either a malformed IRI, includes a hash fragment, or reserved query parameters ('code' or 'state').`);await this.loginHandler.handle({...e,redirectUrl:i,clientName:null!==(r=e.clientName)&&void 0!==r?r:e.clientId,eventEmitter:t})},this.validateCurrentSession=async e=>{const t=await this.sessionInfoManager.get(e);return void 0===t||void 0===t.clientAppId||void 0===t.issuer?null:t},this.handleIncomingRedirect=async(e,t)=>{try{const A=await this.redirectHandler.handle(e,t);return this.fetch=A.fetch.bind(window),this.boundLogout=A.getLogoutUrl,await this.cleanUrlAfterRedirect(e),{isLoggedIn:A.isLoggedIn,webId:A.webId,sessionId:A.sessionId,expirationDate:A.expirationDate}}catch(A){return await this.cleanUrlAfterRedirect(e),void t.emit(Ro,"redirect",A)}}}async cleanUrlAfterRedirect(e){const t=Jo(e).href;for(window.history.replaceState(null,"",t);window.location.href!==t;)await new Promise(e=>{setTimeout(()=>e(),1)})}}function ys(e){return"string"==typeof e.oidcIssuer}function ws(e){return"string"==typeof e.redirectUrl}class vs{constructor(e,t,A,r){this.storageUtility=e,this.oidcHandler=t,this.issuerConfigFetcher=A,this.clientRegistrar=r,this.storageUtility=e,this.oidcHandler=t,this.issuerConfigFetcher=A,this.clientRegistrar=r}async canHandle(e){return ys(e)&&ws(e)}async handle(e){if(!ys(e))throw new is(`OidcLoginHandler requires an OIDC issuer: missing property 'oidcIssuer' in ${JSON.stringify(e)}`);if(!ws(e))throw new is(`OidcLoginHandler requires a redirect URL: missing property 'redirectUrl' in ${JSON.stringify(e)}`);const t=await this.issuerConfigFetcher.fetchConfig(e.oidcIssuer),A=await zo(e,t,this.storageUtility,this.clientRegistrar),r={issuer:t.issuer,dpop:"dpop"===e.tokenType.toLowerCase(),...e,issuerConfiguration:t,client:A};return this.oidcHandler.handle(r)}}class Ss extends Yo{async handle(e){var t;const A={authority:e.issuer.toString(),client_id:e.client.clientId,client_secret:e.client.clientSecret,redirect_uri:e.redirectUrl.toString(),post_logout_redirect_uri:e.redirectUrl.toString(),response_type:"code",scope:xo,filterProtocolClaims:!0,loadUserInfo:!1,code_verifier:!0,prompt:null!==(t=e.prompt)&&void 0!==t?t:"consent"},r=new us.OidcClient(A);try{const t=await r.createSigninRequest();return await this.handleRedirect({oidcLoginOptions:e,state:t.state._id,codeVerifier:t.state._code_verifier,targetUrl:t.url.toString()})}catch(e){console.error(e)}}}const bs={issuer:{toKey:"issuer",convertToUrl:!0},authorization_endpoint:{toKey:"authorizationEndpoint",convertToUrl:!0},token_endpoint:{toKey:"tokenEndpoint",convertToUrl:!0},userinfo_endpoint:{toKey:"userinfoEndpoint",convertToUrl:!0},jwks_uri:{toKey:"jwksUri",convertToUrl:!0},registration_endpoint:{toKey:"registrationEndpoint",convertToUrl:!0},end_session_endpoint:{toKey:"endSessionEndpoint",convertToUrl:!0},scopes_supported:{toKey:"scopesSupported"},response_types_supported:{toKey:"responseTypesSupported"},response_modes_supported:{toKey:"responseModesSupported"},grant_types_supported:{toKey:"grantTypesSupported"},acr_values_supported:{toKey:"acrValuesSupported"},subject_types_supported:{toKey:"subjectTypesSupported"},id_token_signing_alg_values_supported:{toKey:"idTokenSigningAlgValuesSupported"},id_token_encryption_alg_values_supported:{toKey:"idTokenEncryptionAlgValuesSupported"},id_token_encryption_enc_values_supported:{toKey:"idTokenEncryptionEncValuesSupported"},userinfo_signing_alg_values_supported:{toKey:"userinfoSigningAlgValuesSupported"},userinfo_encryption_alg_values_supported:{toKey:"userinfoEncryptionAlgValuesSupported"},userinfo_encryption_enc_values_supported:{toKey:"userinfoEncryptionEncValuesSupported"},request_object_signing_alg_values_supported:{toKey:"requestObjectSigningAlgValuesSupported"},request_object_encryption_alg_values_supported:{toKey:"requestObjectEncryptionAlgValuesSupported"},request_object_encryption_enc_values_supported:{toKey:"requestObjectEncryptionEncValuesSupported"},token_endpoint_auth_methods_supported:{toKey:"tokenEndpointAuthMethodsSupported"},token_endpoint_auth_signing_alg_values_supported:{toKey:"tokenEndpointAuthSigningAlgValuesSupported"},display_values_supported:{toKey:"displayValuesSupported"},claim_types_supported:{toKey:"claimTypesSupported"},claims_supported:{toKey:"claimsSupported"},service_documentation:{toKey:"serviceDocumentation"},claims_locales_supported:{toKey:"claimsLocalesSupported"},ui_locales_supported:{toKey:"uiLocalesSupported"},claims_parameter_supported:{toKey:"claimsParameterSupported"},request_parameter_supported:{toKey:"requestParameterSupported"},request_uri_parameter_supported:{toKey:"requestUriParameterSupported"},require_request_uri_registration:{toKey:"requireRequestUriRegistration"},op_policy_uri:{toKey:"opPolicyUri",convertToUrl:!0},op_tos_uri:{toKey:"opTosUri",convertToUrl:!0}};class Ds{constructor(e){this.storageUtility=e,this.storageUtility=e}static getLocalStorageKey(e){return`issuerConfig:${e}`}async fetchConfig(e){let t;const A=new URL(".well-known/openid-configuration",e.endsWith("/")?e:`${e}/`).href,r=await Jn.call(globalThis,A);try{t=function(e){const t={};return Object.keys(e).forEach(A=>{bs[A]&&(t[bs[A].toKey]=e[A])}),Array.isArray(t.scopesSupported)||(t.scopesSupported=["openid"]),t}(await r.json())}catch(t){throw new is(`[${e.toString()}] has an invalid configuration: ${t.message}`)}return await this.storageUtility.set(Ds.getLocalStorageKey(e),JSON.stringify(t)),t}}async function Fs(e,t){await jo(e,t),await async function(){const e=new us.OidcClient({response_mode:"query"});await e.clearStaleState(new us.WebStorageStateStore({}));const t=window.localStorage,A=[];for(let e=0;e<=t.length;e+=1){const r=t.key(e);r&&(r.match(/^oidc\..+$/)||r.match(/^solidClientAuthenticationUser:.+$/))&&A.push(r)}A.forEach(e=>t.removeItem(e))}()}class Rs extends Ko{async get(e){const[t,A,r,i,n,a,o,s]=await Promise.all([this.storageUtility.getForUser(e,"isLoggedIn",{secure:!0}),this.storageUtility.getForUser(e,"webId",{secure:!0}),this.storageUtility.getForUser(e,"clientId",{secure:!1}),this.storageUtility.getForUser(e,"clientSecret",{secure:!1}),this.storageUtility.getForUser(e,"redirectUrl",{secure:!1}),this.storageUtility.getForUser(e,"refreshToken",{secure:!0}),this.storageUtility.getForUser(e,"issuer",{secure:!1}),this.storageUtility.getForUser(e,"tokenType",{secure:!1})]);if("string"!=typeof n||Po(n)){if(void 0!==s&&("string"!=typeof(d=s)||!["DPoP","Bearer"].includes(d)))throw new Error(`Tokens of type [${s}] are not supported.`);var d;if(void 0!==r||void 0!==t||void 0!==A||void 0!==a)return{sessionId:e,webId:A,isLoggedIn:"true"===t,redirectUrl:n,refreshToken:a,issuer:o,clientAppId:r,clientAppSecret:i,tokenType:null!=s?s:"DPoP"}}else await Promise.all([this.storageUtility.deleteAllUserData(e,{secure:!1}),this.storageUtility.deleteAllUserData(e,{secure:!0})])}async clear(e){return Fs(e,this.storageUtility)}}class ks{async canHandle(e){try{return new URL(e),!0}catch(t){throw new Error(`[${e}] is not a valid URL, and cannot be used as a redirect URL: ${t}`)}}async handle(e){return Wo()}}const Ns=(...e)=>Jn.call(globalThis,...e);class _s{constructor(e,t,A,r,i){this.storageUtility=e,this.sessionInfoManager=t,this.issuerConfigFetcher=A,this.clientRegistrar=r,this.tokerRefresher=i,this.storageUtility=e,this.sessionInfoManager=t,this.issuerConfigFetcher=A,this.clientRegistrar=r,this.tokerRefresher=i}async canHandle(e){try{const t=new URL(e);return null!==t.searchParams.get("code")&&null!==t.searchParams.get("state")}catch(t){throw new Error(`[${e}] is not a valid URL, and cannot be used as a redirect URL: ${t}`)}}async handle(e,t){if(!await this.canHandle(e))throw new Error(`AuthCodeRedirectHandler cannot handle [${e}]: it is missing one of [code, state].`);const A=new URL(e),r=A.searchParams.get("state"),i=await this.storageUtility.getForUser(r,"sessionId",{errorIfNull:!0}),{issuerConfig:n,codeVerifier:a,redirectUrl:o,dpop:s}=await ts(i,this.storageUtility,this.issuerConfigFetcher),d=A.searchParams.get("iss");if("string"==typeof d&&d!==n.issuer)throw new Error(`The value of the iss parameter (${d}) does not match the issuer identifier of the authorization server (${n.issuer}). See [rfc9207](https://www.rfc-editor.org/rfc/rfc9207.html#section-2.3-3.1.1)`);if(void 0===a)throw new Error(`The code verifier for session ${i} is missing from storage.`);if(void 0===o)throw new Error(`The redirect URL for session ${i} is missing from storage.`);const p=await this.clientRegistrar.getClient({sessionId:i},n);let l;const c=Date.now();let g;s?(l=await async function(e,t,A){return fs(e,t,A,!0)}(n,p,{grantType:"authorization_code",code:A.searchParams.get("code"),codeVerifier:a,redirectUrl:o}),window.localStorage.removeItem(`oidc.${r}`)):l=await async function(e){let t;try{const A=new us.OidcClient({response_mode:"query",loadUserInfo:!1});if(t=await A.processSigninResponse(e),void 0===A.settings.metadata)throw new Error("Cannot retrieve issuer metadata from client information in storage.");if(void 0===A.settings.metadata.jwks_uri)throw new Error("Missing some issuer metadata from client information in storage: 'jwks_uri' is undefined");if(void 0===A.settings.metadata.issuer)throw new Error("Missing some issuer metadata from client information in storage: 'issuer' is undefined");if(void 0===A.settings.client_id)throw new Error("Missing some client information in storage: 'client_id' is undefined");const r=await Ho(t.id_token,A.settings.metadata.jwks_uri,A.settings.metadata.issuer,A.settings.client_id);return{accessToken:t.access_token,idToken:t.id_token,webId:r,refreshToken:t.refresh_token}}catch(t){throw new Error(`Problem handling Auth Code Grant (Flow) redirect - URL [${e}]: ${t}`)}}(A.toString()),void 0!==l.refreshToken&&(g={sessionId:i,refreshToken:l.refreshToken,tokenRefresher:this.tokerRefresher});const h=await cs(Ns,l.accessToken,{dpopKey:l.dpopKey,refreshOptions:g,eventEmitter:t,expiresIn:l.expiresIn});await this.storageUtility.setForUser(i,{webId:l.webId,isLoggedIn:"true"},{secure:!0});const u=await this.sessionInfoManager.get(i);if(!u)throw new Error(`Could not retrieve session: [${i}].`);return Object.assign(u,{fetch:h,getLogoutUrl:Zo({idTokenHint:l.idToken,endSessionEndpoint:n.endSessionEndpoint}),expirationDate:"number"==typeof l.expiresIn?c+1e3*l.expiresIn:void 0})}}class Us extends Vo{constructor(e){super(e)}}class Ts{get storage(){return window.localStorage}async get(e){return this.storage.getItem(e)||void 0}async set(e,t){this.storage.setItem(e,t)}async delete(e){this.storage.removeItem(e)}}class Ls{redirect(e,t){t&&t.handleRedirect?t.handleRedirect(e):t&&t.redirectByReplacingState?window.history.replaceState({},"",e):window.location.href=e}}class Ms{constructor(e){this.storageUtility=e,this.storageUtility=e}async getClient(e,t){const[A,r]=await Promise.all([this.storageUtility.getForUser(e.sessionId,"clientId",{secure:!1}),this.storageUtility.getForUser(e.sessionId,"clientSecret",{secure:!1})]);if(A)return{clientId:A,clientSecret:r,clientType:"dynamic"};try{const A=await Es(e,t),r={clientId:A.clientId};return A.clientSecret&&(r.clientSecret=A.clientSecret),A.idTokenSignedResponseAlg&&(r.idTokenSignedResponseAlg=A.idTokenSignedResponseAlg),await this.storageUtility.setForUser(e.sessionId,r,{secure:!1}),A}catch(e){throw new Error(`Client registration failed: [${e}]`)}}}class xs{async canHandle(e){try{return new URL(e).searchParams.has("error")}catch(t){throw new Error(`[${e}] is not a valid URL, and cannot be used as a redirect URL: ${t}`)}}async handle(e,t){if(void 0!==t){const A=new URL(e),r=A.searchParams.get("error"),i=A.searchParams.get("error_description");t.emit(Ro,r,i)}return Wo()}}class Vs{constructor(e,t,A){this.storageUtility=e,this.issuerConfigFetcher=t,this.clientRegistrar=A,this.storageUtility=e,this.issuerConfigFetcher=t,this.clientRegistrar=A}async refresh(e,t,A,r){const i=await ts(e,this.storageUtility,this.issuerConfigFetcher),n=await this.clientRegistrar.getClient({sessionId:e},i.issuerConfig);if(void 0===t)throw new Error(`Session [${e}] has no refresh token to allow it to refresh its access token.`);if(i.dpop&&void 0===A)throw new Error(`For session [${e}], the key bound to the DPoP access token must be provided to refresh said access token.`);const a=await Qs(t,i.issuerConfig,n,A);return void 0!==a.refreshToken&&(null==r||r.emit(_o,a.refreshToken),await this.storageUtility.setForUser(e,{refreshToken:a.refreshToken})),a}}function Hs(e){const t=new rs,A=e.secureStorage||t,r=e.insecureStorage||new Ts,i=new Is(A,r),n=new Ds(i),a=new Ms(i),o=new Rs(i),s=new Vs(i,n,a),d=new Ls,p=new vs(i,new Ss(i,d),n,a),l=new Us([new xs,new _s(i,o,n,a,s),new ks]);return new Bs(p,l,new qo(o,d),o,n)}const Ps=`${Do}currentSession`,Js=`${Do}currentUrl`;class Ys extends e{constructor(e={},A=void 0){var r,i;super(),this.tokenRequestInProgress=!1,this.login=async e=>{var t;return await this.clientAuthentication.login({sessionId:this.info.sessionId,...e,tokenType:null!==(t=e.tokenType)&&void 0!==t?t:"DPoP"},this.events),new Promise(()=>{})},this.fetch=(e,t)=>this.clientAuthentication.fetch(e,t),this.internalLogout=async(e,t)=>{window.localStorage.removeItem(Ps),await this.clientAuthentication.logout(this.info.sessionId,t),this.info.isLoggedIn=!1,e&&this.events.emit(No)},this.logout=async e=>this.internalLogout(!0,e),this.handleIncomingRedirect=async(e={})=>{var t;if(this.info.isLoggedIn)return this.info;if(this.tokenRequestInProgress)return;const A="string"==typeof e?{url:e}:e,r=null!==(t=A.url)&&void 0!==t?t:window.location.href;this.tokenRequestInProgress=!0;const i=await this.clientAuthentication.handleIncomingRedirect(r,this.events);if(function(e){return!!(null==e?void 0:e.isLoggedIn)}(i)){this.setSessionInfo(i);const e=window.localStorage.getItem(Js);null===e?this.events.emit(ko):(window.localStorage.removeItem(Js),this.events.emit(Lo,e))}else if(!0===A.restorePreviousSession){const e=window.localStorage.getItem(Ps);if(null!==e){const t=await async function(e,t,A){var r;const i=await t.validateCurrentSession(e);return null!==i&&(window.localStorage.setItem(Js,window.location.href),await t.login({sessionId:e,prompt:"none",oidcIssuer:i.issuer,redirectUrl:i.redirectUrl,clientId:i.clientAppId,clientSecret:i.clientAppSecret,tokenType:null!==(r=i.tokenType)&&void 0!==r?r:"DPoP"},A.events),!0)}(e,this.clientAuthentication,this);if(t)return new Promise(()=>{})}}return this.tokenRequestInProgress=!1,i},this.events=new Proxy(this,(r=Ys.prototype,i="events only implements ISessionEventListener",{get(e,A,n){if(!Object.getOwnPropertyNames(t).includes(A)&&Object.getOwnPropertyNames(r).includes(A))throw new Error(`${i}: [${A}] is not supported`);return Reflect.get(e,A,n)}})),e.clientAuthentication?this.clientAuthentication=e.clientAuthentication:e.secureStorage&&e.insecureStorage?this.clientAuthentication=Hs({secureStorage:e.secureStorage,insecureStorage:e.insecureStorage}):this.clientAuthentication=Hs({}),e.sessionInfo?this.info={sessionId:e.sessionInfo.sessionId,isLoggedIn:!1,webId:e.sessionInfo.webId}:this.info={sessionId:null!=A?A:bo(),isLoggedIn:!1},this.events.on(ko,()=>window.localStorage.setItem(Ps,this.info.sessionId)),this.events.on(Uo,()=>this.internalLogout(!1)),this.events.on(Ro,()=>this.internalLogout(!1))}onLogin(e){this.events.on(ko,e)}onLogout(e){this.events.on(No,e)}onError(e){this.events.on(Ro,e)}onSessionRestore(e){this.events.on(Lo,e)}onSessionExpiration(e){this.events.on(Uo,e)}setSessionInfo(e){this.info.isLoggedIn=e.isLoggedIn,this.info.webId=e.webId,this.info.sessionId=e.sessionId,this.info.expirationDate=e.expirationDate,this.events.on(To,e=>{this.info.expirationDate=Date.now()+1e3*e})}}const Gs=new Ys({clientAuthentication:Hs({})},"mySession"),Os=G(T),qs=L("http://www.iana.org/assignments/link-relations/acl");function Ws(e){const t=Os;function A(e,A,r,i={}){const n=i.public||[],a=M(),o=x("http://www.w3.org/ns/auth/acl#");let s=a.sym(`${r}#a1`);const d=a.sym(r),p=a.sym(e);if(a.add(s,t.rdf("type"),o("Authorization"),d),a.add(s,o("accessTo"),p,d),i.defaultForNew&&a.add(s,o("default"),p,d),a.add(s,o("agent"),A,d),a.add(s,o("mode"),o("Read"),d),a.add(s,o("mode"),o("Write"),d),a.add(s,o("mode"),o("Control"),d),n.length){s=a.sym(`${r}#a2`),a.add(s,t.rdf("type"),o("Authorization"),d),a.add(s,o("accessTo"),p,d),a.add(s,o("agentClass"),t.foaf("Agent"),d);for(let e=0;e<n.length;e++)a.add(s,o("mode"),o(n[e]),d)}return V(d,a,r)}return{findAclDocUrl:async function(t){await e.fetcher.load(t);const A=e.any(t,qs);if(!A)throw new Error(`No ACL link discovered for ${t}`);return A.value},setACLUserPublic:function(t,r,i){const n=e.any(e.sym(t),qs);return Promise.resolve().then(()=>n||function(t){const A=e.fetcher;if(!A)throw new Error("Cannot fetch ACL rel, store has no fetcher");return A.load(t).then(A=>{if(!A.ok)throw new Error("fetchACLRel: While loading:"+A.error);const r=e.any(e.sym(t),qs);if(!r)throw new Error("fetchACLRel: No Link rel=ACL header for "+t);return r})}(t).catch(e=>{throw new Error(`Error fetching rel=ACL header for ${t}: ${e}`)})).then(n=>{const a=A(t,r,n.uri,i);if(!e.fetcher)throw new Error("Cannot PUT this, store has no fetcher");return e.fetcher.webOperation("PUT",n.uri,{data:a,contentType:"text/turtle"}).then(e=>{if(!e.ok)throw new Error("Error writing ACL text: "+e.error);return n})})},genACLText:A}}const js=()=>{let{SolidAppContext:e}=window;if(e||={},e.viewingNoAuthPage=!1,e.noAuth&&window.document){if(window.document.location.href.startsWith(e.noAuth)){e.viewingNoAuthPage=!0;const t=new URLSearchParams(window.document.location.search);if(t){let A=e.viewedPage=t.get("uri")||null;if(A&&(A=decodeURI(A),!A.startsWith(e.noAuth))){const t=A.split(/\//);e.idp=t[0]+"//"+t[2],e.viewingNoAuthPage=!1}}}}return e};function Ks(){const{$SolidTestEnvironment:e}=window;if(void 0!==e&&e.username)return O("Assuming the user is "+e.username),L(e.username);if("undefined"!=typeof document&&document.location&&"http://localhost"===(""+document.location).slice(0,16)){const e=document.getElementById("appTarget");if(!e)return null;const t=e.getAttribute("testID");return t?(O("Assuming user is "+t),L(t)):null}return null}class Zs{session;constructor(e){this.session=e}get authSession(){return this.session}currentUser(){const e=js();return e.viewingNoAuthPage?L(e.webId):this&&this.session&&this.session.info&&this.session.info.webId&&this.session.info.isLoggedIn?L(this.session.info.webId):Ks()}async checkUser(e){const t=new URL(window.location.href).hash;t&&window.localStorage.setItem("preLoginRedirectHash",t),this.session.onSessionRestore(e=>{document.location.toString()!==e&&history.replaceState(null,"",e)});const A=new URL(window.location.href);A.hash="",await this.session.handleIncomingRedirect({restorePreviousSession:!0,url:A.href});const r=window.localStorage.getItem("preLoginRedirectHash");if(r){const e=new URL(window.location.href);e.hash!==r&&(history.pushState?history.pushState(null,document.title,r):location.hash=r,e.hash=r),window.localStorage.setItem("preLoginRedirectHash","")}let i=Ks();if(i)return Promise.resolve(e?e(i):i);const n=this.webIdFromSession(this.session.info);return n&&(i=this.saveUser(n)),i&&O(`(Logged in as ${i} by authentication)`),Promise.resolve(e?e(i):i)}saveUser(e,t){let A;if(e){A="string"==typeof e?e:e.uri;const r=H(A);return t&&(t.me=r),r}return null}webIdFromSession(e){return e?.webId&&e.isLoggedIn?e.webId:null}}function Xs(e){return L(e.uri+"#id"+Date.now())}function zs(e){return!e||`${window.location.origin}/`!==new URL(e.value).origin}const $s="index.ttl#this";function ed(e,t){const A=Os;async function r(t,A,r){await e.fetcher.load(t);const i=e.any(t,new P("http://www.iana.org/assignments/link-relations/acl"));if(!i)throw new Error("Chat ACL doc not found!");const n=`\n @prefix acl: <http://www.w3.org/ns/auth/acl#>.\n <#owner>\n a acl:Authorization;\n acl:agent <${A.value}>;\n acl:accessTo <.>;\n acl:default <.>;\n acl:mode\n acl:Read, acl:Write, acl:Control.\n <#invitee>\n a acl:Authorization;\n acl:agent <${r.value}>;\n acl:accessTo <.>;\n acl:default <.>;\n acl:mode\n acl:Read, acl:Append.\n `;await e.fetcher.webOperation("PUT",i.value,{data:n,contentType:"text/turtle"})}async function i(t,r){const i=e.any(r,A.solid("privateTypeIndex"));if(!i)throw new Error("Private type index not found!");await e.fetcher.load(i);const n=Xs(i),a=[J(n,A.rdf("type"),A.solid("TypeRegistration"),i.doc()),J(n,A.solid("forClass"),A.meeting("LongChat"),i.doc()),J(n,A.solid("instance"),t,i.doc())];await new Promise((t,A)=>{e.updater.update([],a,function(e,r,i){r?t(null):A(new Error(i))})})}async function n(A){const r=await t.loadMe(),i=function(e,t){const A=new URL(`IndividualChats/${new URL(e.value).host}/`,t.value).toString();return new P(A)}(A,await t.getPodRoot(r));let n=!0;try{await e.fetcher.load(new P(i.value+"index.ttl#this"))}catch(e){n=!1}return{me:r,chatContainer:i,exists:n}}async function a(e,t){return(await o({me:t,newBase:e.value})).newInstance}function o(t){const r=e,i=r.updater;if(t.me&&!t.me.uri)throw new Error("chat mintNew: Invalid userid "+t.me);const n=t.newInstance=t.newInstance||r.sym(t.newBase+$s),a=n.doc();return r.add(n,A.rdf("type"),A.meeting("LongChat"),a),r.add(n,A.dc("title"),"Chat channel",a),r.add(n,A.dc("created"),Y(new Date(Date.now())),a),t.me&&r.add(n,A.dc("author"),t.me,a),new Promise(function(e,A){i?.put(a,r.statementsMatching(void 0,void 0,void 0,a),"text/turtle",function(r,i,a){i?e({...t,newInstance:n}):A(new Error("FAILED to save new chat channel at: "+r+" : "+a))})})}async function s(t,r){await e.fetcher.load(t.doc());const i=e.any(t,A.ldp("inbox"),void 0,t.doc());if(!i)throw new Error(`Invitee inbox not found! ${t.value}`);const n=`\n <> a <http://www.w3.org/ns/pim/meeting#LongChatInvite> ;\n ${A.rdf("seeAlso")} <${r.value}> .\n `,a=await(e.fetcher?.webOperation("POST",i.value,{data:n,contentType:"text/turtle"})),o=a?.headers.get("location");if(!o)throw new Error(`Invite sending returned a ${a?.status}`)}return{setAcl:r,addToPrivateTypeIndex:i,findChat:n,createChatThing:a,getChat:async function(e,t=!0){const{me:A,chatContainer:o,exists:d}=await n(e);if(d)return new P(o.value+$s);if(t){const t=await a(o,A);return await s(e,t),await r(o,A,e),await i(t,A),t}return null},sendInvite:s,mintNew:o}}function td(e,t,A,r,i){return{createInboxFor:async function(e,i){const n=await t.loadMe(),a=`${(await t.getPodRoot(n)).value}p2p-inboxes/${encodeURIComponent(i)}/`;return await r.createContainer(a),await A.setSinglePeerAccess({ownerWebId:n.value,peerWebId:e,accessToModes:"acl:Append",target:a}),a},getNewMessages:async function(e){e||(e=await t.loadMe());const A=await t.getMainInbox(e);return(await r.getContainerMembers(A)).filter(e=>!r.isContainer(e))},markAsRead:async function(t,A){const r=await e.fetcher._fetch(t);if(200!==r.status)throw new Error(`Not OK! ${t}`);const i=function(e,t){const A=t.getUTCFullYear(),r=("0"+(t.getUTCMonth()+1)).slice(-2),i=("0"+t.getUTCDate()).slice(-2),n=e.split("/"),a=n[n.length-1];return new URL(`./archive/${A}/${r}/${i}/${a}`,e).toString()}(t,A),n={method:"PUT",body:await r.text(),headers:[["Content-Type",r.headers.get("Content-Type")||"application/octet-stream"]]};"2"===(await e.fetcher._fetch(i,n)).status.toString()[0]&&await e.fetcher._fetch(t,{method:"DELETE"})}}}class Ad extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype),this.name=new.target.name}}class rd extends Ad{}class id extends Ad{}class nd extends Ad{}class ad extends Ad{}class od extends Ad{}class sd extends Ad{}class dd extends Ad{status;constructor(e,t){super(t),this.status=e}}function pd(e,t,A){const r=Os;async function i(t){await n(t);const i=function(e){const t=e.uri.replace("/profile/","/").replace("/public/","/").split("/").slice(0,-1).join("/")+"/Settings/";return L(t+"Preferences.ttl")}(t);let a;try{a=await A.followOrCreateLink(t,r.space("preferencesFile"),i,t.doc())}catch(e){if(q(`User ${t} has no pointer in profile to preferences file.`),e instanceof od)throw e;if(e instanceof sd)throw e;if(e instanceof rd)throw e;if(e instanceof id)throw e;if(e instanceof nd)throw e;if(e instanceof dd)throw e;throw e}try{await e.fetcher.load(a)}catch(e){const A=`Unable to load preference of user ${t}: ${e}`;if(q(A),401===e.response.status)throw new rd;if(403===e.response.status){if(zs(a))throw new id;throw new nd}throw new Error(A)}return a}async function n(t){if(!t)throw new Error("loadProfile: no user given.");try{await e.fetcher.load(t.doc())}catch(e){throw new Error(`Unable to load profile of user ${t}: ${e}`)}return t.doc()}function a(t){return e.any(t,r.space("storage"),void 0,t.doc())}return{loadMe:async function(){const A=t.currentUser();if(null===A)throw new Error("Current user not found! Not logged in?");return await e.fetcher.load(A.doc()),A},getPodRoot:function(e){const t=a(e);if(!t)throw new Error("User pod root not found!");return t},getMainInbox:async function(t){await e.fetcher.load(t);const A=e.any(t,r.ldp("inbox"),void 0,t.doc());if(!A)throw new Error("User main inbox not found!");return A},findStorage:a,loadPreferences:i,loadProfile:n,silencedLoadPreferences:async function(e){try{return await i(e)}catch(e){return}}}}const ld=function(e,t){O("SolidLogic: Unique instance created. There should only be one of these.");const A=T.graph();T.fetcher(A,{fetch:e.fetch}),A.updater=new T.UpdateManager(A),A.features=[];const r=new Zs(t),i=Ws(A),n=function(e){function t(t){return e.statementsMatching(t,L("http://www.w3.org/ns/ldp#contains"),void 0).map(e=>e.object)}function A(e){const t=e.value;return"/"===t.charAt(t.length-1)}return{isContainer:A,createContainer:async function(t){if(!A(L(t)))throw new Error(`Not a container URL ${t}`);const r=await e.fetcher._fetch(t,{method:"PUT",headers:{"Content-Type":"text/turtle","If-None-Match":"*",Link:'<http://www.w3.org/ns/ldp#BasicContainer>; rel="type"'},body:" "});if("2"!==r.status.toString()[0])throw new Error(`Not OK: got ${r.status} response while creating container at ${t}`)},getContainerElements:t,getContainerMembers:async function(A){return await e.fetcher.load(A),t(A)}}}(A),a=function(e,t,A){async function r(t){let A;try{A=await e.fetcher.load(t)}catch(A){if(404!==A.response.status){if(401===A.response.status)throw new rd;if(403===A.response.status){if(zs(t))throw new id;throw new nd}const e="createIfNotExists doc load error NOT 404: "+t+": "+A;throw new dd(A.status,A.message+e)}try{await e.fetcher.webOperation("PUT",t,{data:"",contentType:"text/turtle"})}catch(e){throw new sd("createIfNotExists: PUT FAILED: "+t+": "+e)}await e.fetcher.load(t)}return A}return{recursiveDelete:async function r(i){try{if(A.isContainer(i)){const n=await t.findAclDocUrl(i);await e.fetcher._fetch(n,{method:"DELETE"});const a=await A.getContainerMembers(i);await Promise.all(a.map(e=>r(e)))}const n=i.value;return e.fetcher._fetch(n,{method:"DELETE"})}catch(e){O(`Please manually remove ${i.value} from your system.`,e)}},setSinglePeerAccess:async function(A){let r=["@prefix acl: <http://www.w3.org/ns/auth/acl#>.","",`<#alice> a acl:Authorization;\n acl:agent <${A.ownerWebId}>;`,` acl:accessTo <${A.target}>;`,` acl:default <${A.target}>;`," acl:mode acl:Read, acl:Write, acl:Control.",""].join("\n");A.accessToModes&&(r+=["<#bobAccessTo> a acl:Authorization;",` acl:agent <${A.peerWebId}>;`,` acl:accessTo <${A.target}>;`,` acl:mode ${A.accessToModes}.`,""].join("\n")),A.defaultModes&&(r+=["<#bobDefault> a acl:Authorization;",` acl:agent <${A.peerWebId}>;`,` acl:default <${A.target}>;`,` acl:mode ${A.defaultModes}.`,""].join("\n"));const i=await t.findAclDocUrl(L(A.target));return e.fetcher._fetch(i,{method:"PUT",body:r,headers:[["Content-Type","text/turtle"]]})},createEmptyRdfDoc:async function(t,A){await e.fetcher.webOperation("PUT",t.uri,{data:`# ${new Date} ${A}\n `,contentType:"text/turtle"})},followOrCreateLink:async function(t,A,i,n){await e.fetcher.load(n);const a=e.any(t,A,null,n);if(a)return a;if(!e.updater.editable(n)){const e=`followOrCreateLink: cannot edit ${n.value}`;throw q(e),new od(e)}try{await e.updater.update([],[J(t,A,i,n)])}catch(e){throw q(`followOrCreateLink: Error making link in ${n} to ${i}: ${e}`),new sd(e)}try{await r(i)}catch(e){throw q(`followOrCreateLink: Error loading or saving new linked document: ${i}: ${e}`),e}return i},loadOrCreateIfNotExists:r}}(A,i,n),o=pd(A,r,a),s=ed(A,o),d=td(A,o,a,n),p=function(e,t,A,r){const i=Os;async function n(t){if(!t)throw new Error("loadTypeIndexesFor: No user given");const n=await A.loadProfile(t),a=d(t);let o;try{o=await r.followOrCreateLink(t,i.solid("publicTypeIndex"),a,n)}catch(e){q(`User ${t} has no pointer in profile to publicTypeIndex file.`)}const s=o?[{label:"public",index:o,agent:t}]:[];let l,c;try{l=await A.silencedLoadPreferences(t)}catch(e){l=null}if(l){const A=p(l);let a;try{a=e.any(t,i.solid("privateTypeIndex"),void 0,n)||await r.followOrCreateLink(t,i.solid("privateTypeIndex"),A,l)}catch(e){q(`User ${t} has no pointer in preference file to privateTypeIndex file.`)}c=a?[{label:"private",index:a,agent:t}]:[]}else c=[];const g=s.concat(c);if(0===g.length)return g;const h=g.map(e=>e.index);try{await e.fetcher.load(h)}catch(e){q("Problems loading type index: ",e)}return g}async function a(t){let r;try{r=await A.silencedLoadPreferences(t)}catch(e){q(`User ${t} has no pointer in profile to preferences file.`)}if(r){const A=e.each(t,i.solid("community"),void 0,r).concat(e.each(t,i.solid("community"),void 0,t.doc()));let a=[];for(const e of A)a=a.concat(await n(e));return a}return[]}async function o(e){return(await n(e)).concat((await a(e)).flat())}async function s(e,t){const A=await o(t);let r=[];for(const t of A){const A=await l(t,e);r=r.concat(A)}return r}function d(e){return L(e.doc().dir()?.uri+"publicTypeIndex.ttl")}function p(e){return L(e.doc().dir()?.uri+"privateTypeIndex.ttl")}async function l(t,A){const r=t.index,n=[],a=e.statementsMatching(null,i.solid("instance"),null,r).concat(e.statementsMatching(null,i.solid("instanceContainer"),null,r)).map(e=>e.subject);for(const o of a){const a=e.any(o,i.solid("forClass"),null,r);if(!A||a.sameTerm(A)){const A=e.each(o,i.solid("instance"),null,r);for(const e of A)n.push({instance:e,type:a,scope:t});const s=e.each(o,i.solid("instanceContainer"),null,r);for(const A of s)await e.fetcher.load(A),n.push({instance:L(A.value),type:a,scope:t})}}return n}return{registerInTypeIndex:async function(t,A,r){const n=Xs(A),a=[J(n,i.rdf("type"),i.solid("TypeRegistration"),A),J(n,i.solid("forClass"),r,A),J(n,i.solid("instance"),t,A)];try{await e.updater.update([],a)}catch(e){const r=`Unable to register ${t} in index ${A}: ${e}`;return console.warn(r),null}return n},getRegistrations:function(t,A){return e.each(void 0,i.solid("instance"),t).filter(t=>e.holds(t,i.solid("forClass"),A))},loadTypeIndexesFor:n,loadCommunityTypeIndexes:a,loadAllTypeIndexes:o,getScopedAppInstances:s,getAppInstances:async function(e){const A=t.currentUser();if(!A)throw new Error("getAppInstances: Must be logged in to find apps.");return(await s(e,A)).map(e=>e.instance)},suggestPublicTypeIndex:d,suggestPrivateTypeIndex:p,deleteTypeIndexRegistration:async function(t){const A=e.the(null,i.solid("instance"),t.instance,t.scope.index);if(!A)throw new Error(`deleteTypeIndexRegistration: No registration found for ${t.instance}`);const r=e.statementsMatching(A,null,null,t.scope.index);await e.updater.update(r,[])},getScopedAppsFromIndex:l}}(A,r,o,a);return O("SolidAuthnLogic initialized"),{store:A,authn:r,acl:i,inbox:d,chat:s,profile:o,typeIndex:p,load:function(e){return A.fetcher.load(e)},updatePromise:function(e,t=[]){return new Promise((r,i)=>{A.updater.update(e,t,function(e,t,A){t?r():i(new Error(A))})})},clearStore:function(){A.statements.slice().forEach(A.remove.bind(A))}}}({fetch:async(e,t)=>{const A=t&&t.credentials&&"omit"==t.credentials;return Gs.info.webId&&!A?Gs.fetch(e,t):window.fetch(e,t)}},Gs);O("Unique quadstore initialized.");const cd=[{name:"Solid Community",uri:"https://solidcommunity.net"},{name:"Solid Web",uri:"https://solidweb.org"},{name:"Inrupt.net",uri:"https://inrupt.net"},{name:"pod.Inrupt.com",uri:"https://login.inrupt.com"}];function gd(){const e=[...cd],{host:t,origin:A}=new URL(location.href),r=e.map(({uri:e})=>new URL(e).host);return r.includes(t)||r.some(e=>function(e,t){const A=e.length-t.length-1;return A>0&&"."===e[A]&&e.endsWith(t)}(t,e))||e.unshift({name:t,uri:A}),e}const hd=ld.authn,ud=ld.authn.authSession,Ed=ld.store;export{qs as ACL_LINK,id as CrossOriginForbiddenError,dd as FetchError,od as NotEditableError,ad as NotFoundError,nd as SameOriginForbiddenError,rd as UnauthorizedError,sd as WebOperationError,js as appContext,ud as authSession,hd as authn,gd as getSuggestedIssuers,Ks as offlineTestID,ld as solidLogicSingleton,Ed as store};
|
|
35
|
+
//# sourceMappingURL=solid-logic.js.map
|