From 3c52eb65bc74dcf4f14e5b9609a65148b688ed81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Fri, 16 Sep 2022 14:41:47 +0200 Subject: [PATCH 01/57] fix: does not crash SMTPclient errors --- dist/app.js | 55758 +++++++++++++++++++++++++---------------------- server/deps.ts | 28 +- 2 files changed, 29202 insertions(+), 26584 deletions(-) diff --git a/dist/app.js b/dist/app.js index 07d10ad..9082bb1 100644 --- a/dist/app.js +++ b/dist/app.js @@ -159,11 +159,11 @@ class Cookies { if (!digest2) { return; } - const data2 = `${name}=${value5}`; + const data1 = `${name}=${value5}`; if (!this.#keys) { throw new TypeError("keys required for signed cookies"); } - const index = await this.#keys.indexOf(data2, digest2); + const index = await this.#keys.indexOf(data1, digest2); if (index < 0) { this.delete(nameSig, { path: "/", @@ -171,7 +171,7 @@ class Cookies { }); } else { if (index) { - this.set(nameSig, await this.#keys.sign(data2), { + this.set(nameSig, await this.#keys.sign(data1), { signed: false }); } @@ -252,6 +252,27 @@ class Cookies { return `${options.stylize(this.constructor.name, "special")} ${inspect2([], newOptions)}`; } } +function deferred() { + let methods; + let state2 = "pending"; + const promise = new Promise((resolve10, reject1)=>{ + methods = { + async resolve (value10) { + await value10; + state2 = "fulfilled"; + resolve10(value10); + }, + reject (reason) { + state2 = "rejected"; + reject1(reason); + } + }; + }); + Object.defineProperty(promise, "state", { + get: ()=>state2 + }); + return Object.assign(promise, methods); +} function equalsNaive(a6, b2) { if (a6.length !== b2.length) return false; for(let i10 = 0; i10 < b2.length; i10++){ @@ -259,7 +280,7 @@ function equalsNaive(a6, b2) { } return true; } -function equalsSimd(a7, b3) { +function equals32Bit(a7, b3) { if (a7.length !== b3.length) return false; const len1 = a7.length; const compressable = Math.floor(len1 / 4); @@ -275,7 +296,7 @@ function equalsSimd(a7, b3) { } function equals(a8, b4) { if (a8.length < 1000) return equalsNaive(a8, b4); - return equalsSimd(a8, b4); + return equals32Bit(a8, b4); } function concat(...buf) { let length = 0; @@ -299,6 +320,49 @@ function copy(src, dst, off = 0) { dst.set(src, off); return src.byteLength; } +const { Deno: Deno5 } = globalThis; +typeof Deno5?.noColor === "boolean" ? Deno5.noColor : true; +new RegExp([ + "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", + "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", +].join("|"), "g"); +var DiffType; +(function(DiffType4) { + DiffType4["removed"] = "removed"; + DiffType4["common"] = "common"; + DiffType4["added"] = "added"; +})(DiffType || (DiffType = {})); +class AssertionError extends Error { + name = "AssertionError"; + constructor(message){ + super(message); + } +} +function assert(expr, msg = "") { + if (!expr) { + throw new AssertionError(msg); + } +} +function timingSafeEqual(a9, b6) { + if (a9.byteLength !== b6.byteLength) { + return false; + } + if (!(a9 instanceof DataView)) { + a9 = new DataView(ArrayBuffer.isView(a9) ? a9.buffer : a9); + } + if (!(b6 instanceof DataView)) { + b6 = new DataView(ArrayBuffer.isView(b6) ? b6.buffer : b6); + } + assert(a9 instanceof DataView); + assert(b6 instanceof DataView); + const length = a9.byteLength; + let out = 0; + let i12 = -1; + while(++i12 < length){ + out |= a9.getUint8(i12) ^ b6.getUint8(i12); + } + return out === 0; +} const base64abc = [ "A", "B", @@ -365,25 +429,25 @@ const base64abc = [ "+", "/", ]; -function encode(data3) { - const uint8 = typeof data3 === "string" ? new TextEncoder().encode(data3) : data3 instanceof Uint8Array ? data3 : new Uint8Array(data3); - let result = "", i12; +function encode(data2) { + const uint8 = typeof data2 === "string" ? new TextEncoder().encode(data2) : data2 instanceof Uint8Array ? data2 : new Uint8Array(data2); + let result = "", i13; const l5 = uint8.length; - for(i12 = 2; i12 < l5; i12 += 3){ - result += base64abc[uint8[i12 - 2] >> 2]; - result += base64abc[(uint8[i12 - 2] & 0x03) << 4 | uint8[i12 - 1] >> 4]; - result += base64abc[(uint8[i12 - 1] & 0x0f) << 2 | uint8[i12] >> 6]; - result += base64abc[uint8[i12] & 0x3f]; - } - if (i12 === l5 + 1) { - result += base64abc[uint8[i12 - 2] >> 2]; - result += base64abc[(uint8[i12 - 2] & 0x03) << 4]; + for(i13 = 2; i13 < l5; i13 += 3){ + result += base64abc[uint8[i13 - 2] >> 2]; + result += base64abc[(uint8[i13 - 2] & 0x03) << 4 | uint8[i13 - 1] >> 4]; + result += base64abc[(uint8[i13 - 1] & 0x0f) << 2 | uint8[i13] >> 6]; + result += base64abc[uint8[i13] & 0x3f]; + } + if (i13 === l5 + 1) { + result += base64abc[uint8[i13 - 2] >> 2]; + result += base64abc[(uint8[i13 - 2] & 0x03) << 4]; result += "=="; } - if (i12 === l5) { - result += base64abc[uint8[i12 - 2] >> 2]; - result += base64abc[(uint8[i12 - 2] & 0x03) << 4 | uint8[i12 - 1] >> 4]; - result += base64abc[(uint8[i12 - 1] & 0x0f) << 2]; + if (i13 === l5) { + result += base64abc[uint8[i13 - 2] >> 2]; + result += base64abc[(uint8[i13 - 2] & 0x03) << 4 | uint8[i13 - 1] >> 4]; + result += base64abc[(uint8[i13 - 1] & 0x0f) << 2]; result += "="; } return result; @@ -392,8 +456,8 @@ function decode(b64) { const binString = atob(b64); const size = binString.length; const bytes1 = new Uint8Array(size); - for(let i13 = 0; i13 < size; i13++){ - bytes1[i13] = binString.charCodeAt(i13); + for(let i14 = 0; i14 < size; i14++){ + bytes1[i14] = binString.charCodeAt(i14); } return bytes1; } @@ -466,263 +530,503 @@ var Status; Status2[Status2["NotExtended"] = 510] = "NotExtended"; Status2[Status2["NetworkAuthenticationRequired"] = 511] = "NetworkAuthenticationRequired"; })(Status || (Status = {})); -const STATUS_TEXT = new Map([ - [ - Status.Continue, - "Continue" - ], - [ - Status.SwitchingProtocols, - "Switching Protocols" - ], - [ - Status.Processing, - "Processing" - ], - [ - Status.EarlyHints, - "Early Hints" - ], - [ - Status.OK, - "OK" - ], - [ - Status.Created, - "Created" - ], - [ - Status.Accepted, - "Accepted" - ], - [ - Status.NonAuthoritativeInfo, - "Non-Authoritative Information" - ], - [ - Status.NoContent, - "No Content" - ], - [ - Status.ResetContent, - "Reset Content" - ], - [ - Status.PartialContent, - "Partial Content" - ], - [ - Status.MultiStatus, - "Multi-Status" - ], - [ - Status.AlreadyReported, - "Already Reported" - ], - [ - Status.IMUsed, - "IM Used" - ], - [ - Status.MultipleChoices, - "Multiple Choices" - ], - [ - Status.MovedPermanently, - "Moved Permanently" - ], - [ - Status.Found, - "Found" - ], - [ - Status.SeeOther, - "See Other" - ], - [ - Status.NotModified, - "Not Modified" - ], - [ - Status.UseProxy, - "Use Proxy" - ], - [ - Status.TemporaryRedirect, - "Temporary Redirect" - ], - [ - Status.PermanentRedirect, - "Permanent Redirect" - ], - [ - Status.BadRequest, - "Bad Request" - ], - [ - Status.Unauthorized, - "Unauthorized" - ], - [ - Status.PaymentRequired, - "Payment Required" - ], - [ - Status.Forbidden, - "Forbidden" - ], - [ - Status.NotFound, - "Not Found" - ], - [ - Status.MethodNotAllowed, - "Method Not Allowed" - ], - [ - Status.NotAcceptable, - "Not Acceptable" - ], - [ - Status.ProxyAuthRequired, - "Proxy Authentication Required" - ], - [ - Status.RequestTimeout, - "Request Timeout" - ], - [ - Status.Conflict, - "Conflict" - ], - [ - Status.Gone, - "Gone" - ], - [ - Status.LengthRequired, - "Length Required" - ], - [ - Status.PreconditionFailed, - "Precondition Failed" - ], - [ - Status.RequestEntityTooLarge, - "Request Entity Too Large" - ], - [ - Status.RequestURITooLong, - "Request URI Too Long" - ], - [ - Status.UnsupportedMediaType, - "Unsupported Media Type" - ], - [ - Status.RequestedRangeNotSatisfiable, - "Requested Range Not Satisfiable" - ], - [ - Status.ExpectationFailed, - "Expectation Failed" - ], - [ - Status.Teapot, - "I'm a teapot" - ], - [ - Status.MisdirectedRequest, - "Misdirected Request" - ], - [ - Status.UnprocessableEntity, - "Unprocessable Entity" - ], - [ - Status.Locked, - "Locked" - ], - [ - Status.FailedDependency, - "Failed Dependency" - ], - [ - Status.TooEarly, - "Too Early" - ], - [ - Status.UpgradeRequired, - "Upgrade Required" - ], - [ - Status.PreconditionRequired, - "Precondition Required" - ], - [ - Status.TooManyRequests, - "Too Many Requests" - ], - [ - Status.RequestHeaderFieldsTooLarge, - "Request Header Fields Too Large" - ], - [ - Status.UnavailableForLegalReasons, - "Unavailable For Legal Reasons" - ], - [ - Status.InternalServerError, - "Internal Server Error" - ], - [ - Status.NotImplemented, - "Not Implemented" - ], - [ - Status.BadGateway, - "Bad Gateway" - ], - [ - Status.ServiceUnavailable, - "Service Unavailable" - ], - [ - Status.GatewayTimeout, - "Gateway Timeout" - ], - [ - Status.HTTPVersionNotSupported, - "HTTP Version Not Supported" - ], - [ - Status.VariantAlsoNegotiates, - "Variant Also Negotiates" - ], - [ - Status.InsufficientStorage, - "Insufficient Storage" - ], - [ - Status.LoopDetected, - "Loop Detected" - ], - [ - Status.NotExtended, - "Not Extended" - ], - [ - Status.NetworkAuthenticationRequired, - "Network Authentication Required" - ], -]); +const STATUS_TEXT = { + [Status.Accepted]: "Accepted", + [Status.AlreadyReported]: "Already Reported", + [Status.BadGateway]: "Bad Gateway", + [Status.BadRequest]: "Bad Request", + [Status.Conflict]: "Conflict", + [Status.Continue]: "Continue", + [Status.Created]: "Created", + [Status.EarlyHints]: "Early Hints", + [Status.ExpectationFailed]: "Expectation Failed", + [Status.FailedDependency]: "Failed Dependency", + [Status.Forbidden]: "Forbidden", + [Status.Found]: "Found", + [Status.GatewayTimeout]: "Gateway Timeout", + [Status.Gone]: "Gone", + [Status.HTTPVersionNotSupported]: "HTTP Version Not Supported", + [Status.IMUsed]: "IM Used", + [Status.InsufficientStorage]: "Insufficient Storage", + [Status.InternalServerError]: "Internal Server Error", + [Status.LengthRequired]: "Length Required", + [Status.Locked]: "Locked", + [Status.LoopDetected]: "Loop Detected", + [Status.MethodNotAllowed]: "Method Not Allowed", + [Status.MisdirectedRequest]: "Misdirected Request", + [Status.MovedPermanently]: "Moved Permanently", + [Status.MultiStatus]: "Multi Status", + [Status.MultipleChoices]: "Multiple Choices", + [Status.NetworkAuthenticationRequired]: "Network Authentication Required", + [Status.NoContent]: "No Content", + [Status.NonAuthoritativeInfo]: "Non Authoritative Info", + [Status.NotAcceptable]: "Not Acceptable", + [Status.NotExtended]: "Not Extended", + [Status.NotFound]: "Not Found", + [Status.NotImplemented]: "Not Implemented", + [Status.NotModified]: "Not Modified", + [Status.OK]: "OK", + [Status.PartialContent]: "Partial Content", + [Status.PaymentRequired]: "Payment Required", + [Status.PermanentRedirect]: "Permanent Redirect", + [Status.PreconditionFailed]: "Precondition Failed", + [Status.PreconditionRequired]: "Precondition Required", + [Status.Processing]: "Processing", + [Status.ProxyAuthRequired]: "Proxy Auth Required", + [Status.RequestEntityTooLarge]: "Request Entity Too Large", + [Status.RequestHeaderFieldsTooLarge]: "Request Header Fields Too Large", + [Status.RequestTimeout]: "Request Timeout", + [Status.RequestURITooLong]: "Request URI Too Long", + [Status.RequestedRangeNotSatisfiable]: "Requested Range Not Satisfiable", + [Status.ResetContent]: "Reset Content", + [Status.SeeOther]: "See Other", + [Status.ServiceUnavailable]: "Service Unavailable", + [Status.SwitchingProtocols]: "Switching Protocols", + [Status.Teapot]: "I'm a teapot", + [Status.TemporaryRedirect]: "Temporary Redirect", + [Status.TooEarly]: "Too Early", + [Status.TooManyRequests]: "Too Many Requests", + [Status.Unauthorized]: "Unauthorized", + [Status.UnavailableForLegalReasons]: "Unavailable For Legal Reasons", + [Status.UnprocessableEntity]: "Unprocessable Entity", + [Status.UnsupportedMediaType]: "Unsupported Media Type", + [Status.UpgradeRequired]: "Upgrade Required", + [Status.UseProxy]: "Use Proxy", + [Status.VariantAlsoNegotiates]: "Variant Also Negotiates" +}; +function isClientErrorStatus(status) { + return status >= 400 && status < 500; +} +const ERROR_STATUS_MAP = { + "BadRequest": 400, + "Unauthorized": 401, + "PaymentRequired": 402, + "Forbidden": 403, + "NotFound": 404, + "MethodNotAllowed": 405, + "NotAcceptable": 406, + "ProxyAuthRequired": 407, + "RequestTimeout": 408, + "Conflict": 409, + "Gone": 410, + "LengthRequired": 411, + "PreconditionFailed": 412, + "RequestEntityTooLarge": 413, + "RequestURITooLong": 414, + "UnsupportedMediaType": 415, + "RequestedRangeNotSatisfiable": 416, + "ExpectationFailed": 417, + "Teapot": 418, + "MisdirectedRequest": 421, + "UnprocessableEntity": 422, + "Locked": 423, + "FailedDependency": 424, + "UpgradeRequired": 426, + "PreconditionRequired": 428, + "TooManyRequests": 429, + "RequestHeaderFieldsTooLarge": 431, + "UnavailableForLegalReasons": 451, + "InternalServerError": 500, + "NotImplemented": 501, + "BadGateway": 502, + "ServiceUnavailable": 503, + "GatewayTimeout": 504, + "HTTPVersionNotSupported": 505, + "VariantAlsoNegotiates": 506, + "InsufficientStorage": 507, + "LoopDetected": 508, + "NotExtended": 510, + "NetworkAuthenticationRequired": 511 +}; +class HttpError extends Error { + #status = Status.InternalServerError; + #expose; + #headers; + constructor(message = "Http Error", options){ + super(message, options); + this.#expose = options?.expose === undefined ? isClientErrorStatus(this.status) : options.expose; + if (options?.headers) { + this.#headers = new Headers(options.headers); + } + } + get expose() { + return this.#expose; + } + get headers() { + return this.#headers; + } + get status() { + return this.#status; + } +} +function createHttpErrorConstructor(status) { + const name = `${Status[status]}Error`; + const ErrorCtor = class extends HttpError { + constructor(message = STATUS_TEXT[status], options){ + super(message, options); + Object.defineProperty(this, "name", { + configurable: true, + enumerable: false, + value: name, + writable: true + }); + } + get status() { + return status; + } + }; + return ErrorCtor; +} +const errors = {}; +for (const [key, value] of Object.entries(ERROR_STATUS_MAP)){ + errors[key] = createHttpErrorConstructor(value); +} +function createHttpError(status = Status.InternalServerError, message, options) { + return new errors[Status[status]](message, options); +} +function isHttpError(value1) { + return value1 instanceof HttpError; +} +function compareSpecs(a10, b7) { + return b7.q - a10.q || (b7.s ?? 0) - (a10.s ?? 0) || (a10.o ?? 0) - (b7.o ?? 0) || a10.i - b7.i || 0; +} +function isQuality(spec) { + return spec.q > 0; +} +const simpleEncodingRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/; +function parseEncoding(str1, i15) { + const match2 = simpleEncodingRegExp.exec(str1); + if (!match2) { + return undefined; + } + const encoding = match2[1]; + let q1 = 1; + if (match2[2]) { + const params = match2[2].split(";"); + for (const param of params){ + const p5 = param.trim().split("="); + if (p5[0] === "q") { + q1 = parseFloat(p5[1]); + break; + } + } + } + return { + encoding, + q: q1, + i: i15 + }; +} +function specify(encoding, spec, i16 = -1) { + if (!spec.encoding) { + return; + } + let s4 = 0; + if (spec.encoding.toLocaleLowerCase() === encoding.toLocaleLowerCase()) { + s4 = 1; + } else if (spec.encoding !== "*") { + return; + } + return { + i: i16, + o: spec.i, + q: spec.q, + s: s4 + }; +} +function parseAcceptEncoding(accept) { + const accepts1 = accept.split(","); + const parsedAccepts = []; + let hasIdentity = false; + let minQuality = 1; + for(let i17 = 0; i17 < accepts1.length; i17++){ + const encoding = parseEncoding(accepts1[i17].trim(), i17); + if (encoding) { + parsedAccepts.push(encoding); + hasIdentity = hasIdentity || !!specify("identity", encoding); + minQuality = Math.min(minQuality, encoding.q || 1); + } + } + if (!hasIdentity) { + parsedAccepts.push({ + encoding: "identity", + q: minQuality, + i: accepts1.length - 1 + }); + } + return parsedAccepts; +} +function getEncodingPriority(encoding, accepted, index) { + let priority = { + o: -1, + q: 0, + s: 0, + i: 0 + }; + for (const s5 of accepted){ + const spec = specify(encoding, s5, index); + if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { + priority = spec; + } + } + return priority; +} +function preferredEncodings(accept, provided) { + const accepts2 = parseAcceptEncoding(accept); + if (!provided) { + return accepts2.filter(isQuality).sort(compareSpecs).map((spec)=>spec.encoding); + } + const priorities = provided.map((type, index)=>getEncodingPriority(type, accepts2, index)); + return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); +} +const SIMPLE_LANGUAGE_REGEXP = /^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/; +function parseLanguage(str2, i18) { + const match3 = SIMPLE_LANGUAGE_REGEXP.exec(str2); + if (!match3) { + return undefined; + } + const [, prefix, suffix] = match3; + const full = suffix ? `${prefix}-${suffix}` : prefix; + let q2 = 1; + if (match3[3]) { + const params = match3[3].split(";"); + for (const param of params){ + const [key8, value11] = param.trim().split("="); + if (key8 === "q") { + q2 = parseFloat(value11); + break; + } + } + } + return { + prefix, + suffix, + full, + q: q2, + i: i18 + }; +} +function parseAcceptLanguage(accept) { + const accepts3 = accept.split(","); + const result = []; + for(let i19 = 0; i19 < accepts3.length; i19++){ + const language = parseLanguage(accepts3[i19].trim(), i19); + if (language) { + result.push(language); + } + } + return result; +} +function specify1(language, spec, i20) { + const p6 = parseLanguage(language, i20); + if (!p6) { + return undefined; + } + let s6 = 0; + if (spec.full.toLowerCase() === p6.full.toLowerCase()) { + s6 |= 4; + } else if (spec.prefix.toLowerCase() === p6.prefix.toLowerCase()) { + s6 |= 2; + } else if (spec.full.toLowerCase() === p6.prefix.toLowerCase()) { + s6 |= 1; + } else if (spec.full !== "*") { + return; + } + return { + i: i20, + o: spec.i, + q: spec.q, + s: s6 + }; +} +function getLanguagePriority(language, accepted, index) { + let priority = { + i: -1, + o: -1, + q: 0, + s: 0 + }; + for (const accepts4 of accepted){ + const spec = specify1(language, accepts4, index); + if (spec && ((priority.s ?? 0) - (spec.s ?? 0) || priority.q - spec.q || (priority.o ?? 0) - (spec.o ?? 0)) < 0) { + priority = spec; + } + } + return priority; +} +function preferredLanguages(accept = "*", provided) { + const accepts5 = parseAcceptLanguage(accept); + if (!provided) { + return accepts5.filter(isQuality).sort(compareSpecs).map((spec)=>spec.full); + } + const priorities = provided.map((type, index)=>getLanguagePriority(type, accepts5, index)); + return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); +} +const simpleMediaTypeRegExp = /^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/; +function quoteCount(str3) { + let count = 0; + let index = 0; + while((index = str3.indexOf(`"`, index)) !== -1){ + count++; + index++; + } + return count; +} +function splitMediaTypes(accept) { + const accepts6 = accept.split(","); + let j1 = 0; + for(let i21 = 1; i21 < accepts6.length; i21++){ + if (quoteCount(accepts6[j1]) % 2 === 0) { + accepts6[++j1] = accepts6[i21]; + } else { + accepts6[j1] += `,${accepts6[i21]}`; + } + } + accepts6.length = j1 + 1; + return accepts6; +} +function splitParameters(str4) { + const parameters = str4.split(";"); + let j2 = 0; + for(let i22 = 1; i22 < parameters.length; i22++){ + if (quoteCount(parameters[j2]) % 2 === 0) { + parameters[++j2] = parameters[i22]; + } else { + parameters[j2] += `;${parameters[i22]}`; + } + } + parameters.length = j2 + 1; + return parameters.map((p7)=>p7.trim()); +} +function splitKeyValuePair(str5) { + const [key9, value12] = str5.split("="); + return [ + key9.toLowerCase(), + value12 + ]; +} +function parseMediaType(str6, i23) { + const match4 = simpleMediaTypeRegExp.exec(str6); + if (!match4) { + return; + } + const params = Object.create(null); + let q3 = 1; + const [, type, subtype, parameters] = match4; + if (parameters) { + const kvps = splitParameters(parameters).map(splitKeyValuePair); + for (const [key10, val] of kvps){ + const value13 = val && val[0] === `"` && val[val.length - 1] === `"` ? val.substr(1, val.length - 2) : val; + if (key10 === "q" && value13) { + q3 = parseFloat(value13); + break; + } + params[key10] = value13; + } + } + return { + type, + subtype, + params, + q: q3, + i: i23 + }; +} +function parseAccept(accept) { + const accepts7 = splitMediaTypes(accept); + const mediaTypes = []; + for(let i24 = 0; i24 < accepts7.length; i24++){ + const mediaType = parseMediaType(accepts7[i24].trim(), i24); + if (mediaType) { + mediaTypes.push(mediaType); + } + } + return mediaTypes; +} +function getFullType(spec) { + return `${spec.type}/${spec.subtype}`; +} +function specify2(type, spec, index) { + const p8 = parseMediaType(type, index); + if (!p8) { + return; + } + let s7 = 0; + if (spec.type.toLowerCase() === p8.type.toLowerCase()) { + s7 |= 4; + } else if (spec.type !== "*") { + return; + } + if (spec.subtype.toLowerCase() === p8.subtype.toLowerCase()) { + s7 |= 2; + } else if (spec.subtype !== "*") { + return; + } + const keys = Object.keys(spec.params); + if (keys.length) { + if (keys.every((key11)=>(spec.params[key11] || "").toLowerCase() === (p8.params[key11] || "").toLowerCase())) { + s7 |= 1; + } else { + return; + } + } + return { + i: index, + o: spec.o, + q: spec.q, + s: s7 + }; +} +function getMediaTypePriority(type, accepted, index) { + let priority = { + o: -1, + q: 0, + s: 0, + i: index + }; + for (const accepts8 of accepted){ + const spec = specify2(type, accepts8, index); + if (spec && ((priority.s || 0) - (spec.s || 0) || (priority.q || 0) - (spec.q || 0) || (priority.o || 0) - (spec.o || 0)) < 0) { + priority = spec; + } + } + return priority; +} +function preferredMediaTypes(accept, provided) { + const accepts9 = parseAccept(accept === undefined ? "*/*" : accept || ""); + if (!provided) { + return accepts9.filter(isQuality).sort(compareSpecs).map(getFullType); + } + const priorities = provided.map((type, index)=>{ + return getMediaTypePriority(type, accepts9, index); + }); + return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); +} +function accepts(request, ...types1) { + const accept = request.headers.get("accept"); + return types1.length ? accept ? preferredMediaTypes(accept, types1)[0] : types1[0] : accept ? preferredMediaTypes(accept) : [ + "*/*" + ]; +} +function acceptsEncodings(request, ...encodings1) { + const acceptEncoding = request.headers.get("accept-encoding"); + return encodings1.length ? acceptEncoding ? preferredEncodings(acceptEncoding, encodings1)[0] : encodings1[0] : acceptEncoding ? preferredEncodings(acceptEncoding) : [ + "*" + ]; +} +function acceptsLanguages(request, ...langs) { + const acceptLanguage = request.headers.get("accept-language"); + return langs.length ? acceptLanguage ? preferredLanguages(acceptLanguage, langs)[0] : langs[0] : acceptLanguage ? preferredLanguages(acceptLanguage) : [ + "*" + ]; +} class DenoStdInternalError extends Error { constructor(message){ super(message); this.name = "DenoStdInternalError"; } } -function assert(expr, msg = "") { +function assert1(expr, msg = "") { if (!expr) { throw new DenoStdInternalError(msg); } @@ -773,31 +1077,31 @@ class Buffer4 { return -1; } #reslice(len2) { - assert(len2 <= this.#buf.buffer.byteLength); + assert1(len2 <= this.#buf.buffer.byteLength); this.#buf = new Uint8Array(this.#buf.buffer, 0, len2); } - readSync(p5) { + readSync(p9) { if (this.empty()) { this.reset(); - if (p5.byteLength === 0) { + if (p9.byteLength === 0) { return 0; } return null; } - const nread = copy(this.#buf.subarray(this.#off), p5); + const nread = copy(this.#buf.subarray(this.#off), p9); this.#off += nread; return nread; } - read(p6) { - const rr = this.readSync(p6); + read(p10) { + const rr = this.readSync(p10); return Promise.resolve(rr); } - writeSync(p7) { - const m4 = this.#grow(p7.byteLength); - return copy(p7, this.#buf, m4); + writeSync(p11) { + const m4 = this.#grow(p11.byteLength); + return copy(p11, this.#buf, m4); } - write(p8) { - const n1 = this.writeSync(p8); + write(p12) { + const n1 = this.writeSync(p12); return Promise.resolve(n1); } #grow(n213) { @@ -910,13 +1214,13 @@ class BufReader { if (this.#w >= this.#buf.byteLength) { throw Error("bufio: tried to fill full buffer"); } - for(let i14 = 100; i14 > 0; i14--){ + for(let i25 = 100; i25 > 0; i25--){ const rr = await this.#rd.read(this.#buf.subarray(this.#w)); if (rr === null) { this.#eof = true; return; } - assert(rr >= 0, "negative read"); + assert1(rr >= 0, "negative read"); this.#w += rr; if (rr > 0) { return; @@ -932,32 +1236,32 @@ class BufReader { this.#rd = rd; this.#eof = false; }; - async read(p9) { - let rr = p9.byteLength; - if (p9.byteLength === 0) return rr; + async read(p13) { + let rr = p13.byteLength; + if (p13.byteLength === 0) return rr; if (this.#r === this.#w) { - if (p9.byteLength >= this.#buf.byteLength) { - const rr = await this.#rd.read(p9); + if (p13.byteLength >= this.#buf.byteLength) { + const rr = await this.#rd.read(p13); const nread = rr ?? 0; - assert(nread >= 0, "negative read"); + assert1(nread >= 0, "negative read"); return rr; } this.#r = 0; this.#w = 0; rr = await this.#rd.read(this.#buf); if (rr === 0 || rr === null) return rr; - assert(rr >= 0, "negative read"); + assert1(rr >= 0, "negative read"); this.#w += rr; } - const copied = copy(this.#buf.subarray(this.#r, this.#w), p9, 0); + const copied = copy(this.#buf.subarray(this.#r, this.#w), p13, 0); this.#r += copied; return copied; } - async readFull(p10) { + async readFull(p14) { let bytesRead = 0; - while(bytesRead < p10.length){ + while(bytesRead < p14.length){ try { - const rr = await this.read(p10.subarray(bytesRead)); + const rr = await this.read(p14.subarray(bytesRead)); if (rr === null) { if (bytesRead === 0) { return null; @@ -968,10 +1272,10 @@ class BufReader { bytesRead += rr; } catch (err) { if (err instanceof PartialReadError) { - err.partial = p10.subarray(0, bytesRead); + err.partial = p14.subarray(0, bytesRead); } else if (err instanceof Error) { const e6 = new PartialReadError(); - e6.partial = p10.subarray(0, bytesRead); + e6.partial = p14.subarray(0, bytesRead); e6.stack = err.stack; e6.message = err.message; e6.cause = err.cause; @@ -980,7 +1284,7 @@ class BufReader { throw err; } } - return p10; + return p14; } async readByte() { while(this.#r === this.#w){ @@ -1010,14 +1314,14 @@ class BufReader { let partial; if (err instanceof PartialReadError) { partial = err.partial; - assert(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + assert1(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); } if (!(err instanceof BufferFullError)) { throw err; } partial = err.partial; if (!this.#eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR) { - assert(this.#r > 0, "bufio: tried to rewind past start of buffer"); + assert1(this.#r > 0, "bufio: tried to rewind past start of buffer"); this.#r--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -1050,14 +1354,14 @@ class BufReader { }; } async readSlice(delim) { - let s4 = 0; + let s8 = 0; let slice; while(true){ - let i15 = this.#buf.subarray(this.#r + s4, this.#w).indexOf(delim); - if (i15 >= 0) { - i15 += s4; - slice = this.#buf.subarray(this.#r, this.#r + i15 + 1); - this.#r += i15 + 1; + let i26 = this.#buf.subarray(this.#r + s8, this.#w).indexOf(delim); + if (i26 >= 0) { + i26 += s8; + slice = this.#buf.subarray(this.#r, this.#r + i26 + 1); + this.#r += i26 + 1; break; } if (this.#eof) { @@ -1075,7 +1379,7 @@ class BufReader { this.#buf = newbuf; throw new BufferFullError(oldbuf); } - s4 = this.#w - this.#r; + s8 = this.#w - this.#r; try { await this.#fill(); } catch (err) { @@ -1162,10 +1466,10 @@ class BufWriter extends AbstractBufBase { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p11 = this.buf.subarray(0, this.usedBufferBytes); + const p15 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p11.length){ - nwritten += await this.#writer.write(p11.subarray(nwritten)); + while(nwritten < p15.length){ + nwritten += await this.#writer.write(p15.subarray(nwritten)); } } catch (e9) { if (e9 instanceof Error) { @@ -1176,15 +1480,15 @@ class BufWriter extends AbstractBufBase { this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - async write(data4) { + async write(data3) { if (this.err !== null) throw this.err; - if (data4.length === 0) return 0; + if (data3.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data4.byteLength > this.available()){ + while(data3.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = await this.#writer.write(data4); + numBytesWritten = await this.#writer.write(data3); } catch (e10) { if (e10 instanceof Error) { this.err = e10; @@ -1192,14 +1496,14 @@ class BufWriter extends AbstractBufBase { throw e10; } } else { - numBytesWritten = copy(data4, this.buf, this.usedBufferBytes); + numBytesWritten = copy(data3, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; await this.flush(); } totalBytesWritten += numBytesWritten; - data4 = data4.subarray(numBytesWritten); + data3 = data3.subarray(numBytesWritten); } - numBytesWritten = copy(data4, this.buf, this.usedBufferBytes); + numBytesWritten = copy(data3, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -1223,10 +1527,10 @@ class BufWriterSync extends AbstractBufBase { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p12 = this.buf.subarray(0, this.usedBufferBytes); + const p16 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p12.length){ - nwritten += this.#writer.writeSync(p12.subarray(nwritten)); + while(nwritten < p16.length){ + nwritten += this.#writer.writeSync(p16.subarray(nwritten)); } } catch (e11) { if (e11 instanceof Error) { @@ -1237,15 +1541,15 @@ class BufWriterSync extends AbstractBufBase { this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - writeSync(data5) { + writeSync(data4) { if (this.err !== null) throw this.err; - if (data5.length === 0) return 0; + if (data4.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data5.byteLength > this.available()){ + while(data4.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = this.#writer.writeSync(data5); + numBytesWritten = this.#writer.writeSync(data4); } catch (e12) { if (e12 instanceof Error) { this.err = e12; @@ -1253,14 +1557,14 @@ class BufWriterSync extends AbstractBufBase { throw e12; } } else { - numBytesWritten = copy(data5, this.buf, this.usedBufferBytes); + numBytesWritten = copy(data4, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; this.flush(); } totalBytesWritten += numBytesWritten; - data5 = data5.subarray(numBytesWritten); + data4 = data4.subarray(numBytesWritten); } - numBytesWritten = copy(data5, this.buf, this.usedBufferBytes); + numBytesWritten = copy(data4, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -1271,14 +1575,14 @@ class LimitedReader { this.reader = reader; this.limit = limit; } - async read(p13) { + async read(p17) { if (this.limit <= 0) { return null; } - if (p13.length > this.limit) { - p13 = p13.subarray(0, this.limit); + if (p17.length > this.limit) { + p17 = p17.subarray(0, this.limit); } - const n9 = await this.reader.read(p13); + const n9 = await this.reader.read(p17); if (n9 == null) { return null; } @@ -1288,24 +1592,11085 @@ class LimitedReader { reader; limit; } -function readerFromStreamReader(streamReader) { - const buffer2 = new Buffer4(); - return { - async read (p14) { - if (buffer2.empty()) { - const res = await streamReader.read(); +const __default = { + "application/1d-interleaved-parityfec": { + "source": "iana" + }, + "application/3gpdash-qoe-report+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/3gpp-ims+xml": { + "source": "iana", + "compressible": true + }, + "application/3gpphal+json": { + "source": "iana", + "compressible": true + }, + "application/3gpphalforms+json": { + "source": "iana", + "compressible": true + }, + "application/a2l": { + "source": "iana" + }, + "application/ace+cbor": { + "source": "iana" + }, + "application/activemessage": { + "source": "iana" + }, + "application/activity+json": { + "source": "iana", + "compressible": true + }, + "application/alto-costmap+json": { + "source": "iana", + "compressible": true + }, + "application/alto-costmapfilter+json": { + "source": "iana", + "compressible": true + }, + "application/alto-directory+json": { + "source": "iana", + "compressible": true + }, + "application/alto-endpointcost+json": { + "source": "iana", + "compressible": true + }, + "application/alto-endpointcostparams+json": { + "source": "iana", + "compressible": true + }, + "application/alto-endpointprop+json": { + "source": "iana", + "compressible": true + }, + "application/alto-endpointpropparams+json": { + "source": "iana", + "compressible": true + }, + "application/alto-error+json": { + "source": "iana", + "compressible": true + }, + "application/alto-networkmap+json": { + "source": "iana", + "compressible": true + }, + "application/alto-networkmapfilter+json": { + "source": "iana", + "compressible": true + }, + "application/alto-updatestreamcontrol+json": { + "source": "iana", + "compressible": true + }, + "application/alto-updatestreamparams+json": { + "source": "iana", + "compressible": true + }, + "application/aml": { + "source": "iana" + }, + "application/andrew-inset": { + "source": "iana", + "extensions": [ + "ez" + ] + }, + "application/applefile": { + "source": "iana" + }, + "application/applixware": { + "source": "apache", + "extensions": [ + "aw" + ] + }, + "application/at+jwt": { + "source": "iana" + }, + "application/atf": { + "source": "iana" + }, + "application/atfx": { + "source": "iana" + }, + "application/atom+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "atom" + ] + }, + "application/atomcat+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "atomcat" + ] + }, + "application/atomdeleted+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "atomdeleted" + ] + }, + "application/atomicmail": { + "source": "iana" + }, + "application/atomsvc+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "atomsvc" + ] + }, + "application/atsc-dwd+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "dwd" + ] + }, + "application/atsc-dynamic-event-message": { + "source": "iana" + }, + "application/atsc-held+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "held" + ] + }, + "application/atsc-rdt+json": { + "source": "iana", + "compressible": true + }, + "application/atsc-rsat+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rsat" + ] + }, + "application/atxml": { + "source": "iana" + }, + "application/auth-policy+xml": { + "source": "iana", + "compressible": true + }, + "application/bacnet-xdd+zip": { + "source": "iana", + "compressible": false + }, + "application/batch-smtp": { + "source": "iana" + }, + "application/bdoc": { + "compressible": false, + "extensions": [ + "bdoc" + ] + }, + "application/beep+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/calendar+json": { + "source": "iana", + "compressible": true + }, + "application/calendar+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xcs" + ] + }, + "application/call-completion": { + "source": "iana" + }, + "application/cals-1840": { + "source": "iana" + }, + "application/captive+json": { + "source": "iana", + "compressible": true + }, + "application/cbor": { + "source": "iana" + }, + "application/cbor-seq": { + "source": "iana" + }, + "application/cccex": { + "source": "iana" + }, + "application/ccmp+xml": { + "source": "iana", + "compressible": true + }, + "application/ccxml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "ccxml" + ] + }, + "application/cdfx+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "cdfx" + ] + }, + "application/cdmi-capability": { + "source": "iana", + "extensions": [ + "cdmia" + ] + }, + "application/cdmi-container": { + "source": "iana", + "extensions": [ + "cdmic" + ] + }, + "application/cdmi-domain": { + "source": "iana", + "extensions": [ + "cdmid" + ] + }, + "application/cdmi-object": { + "source": "iana", + "extensions": [ + "cdmio" + ] + }, + "application/cdmi-queue": { + "source": "iana", + "extensions": [ + "cdmiq" + ] + }, + "application/cdni": { + "source": "iana" + }, + "application/cea": { + "source": "iana" + }, + "application/cea-2018+xml": { + "source": "iana", + "compressible": true + }, + "application/cellml+xml": { + "source": "iana", + "compressible": true + }, + "application/cfw": { + "source": "iana" + }, + "application/city+json": { + "source": "iana", + "compressible": true + }, + "application/clr": { + "source": "iana" + }, + "application/clue+xml": { + "source": "iana", + "compressible": true + }, + "application/clue_info+xml": { + "source": "iana", + "compressible": true + }, + "application/cms": { + "source": "iana" + }, + "application/cnrp+xml": { + "source": "iana", + "compressible": true + }, + "application/coap-group+json": { + "source": "iana", + "compressible": true + }, + "application/coap-payload": { + "source": "iana" + }, + "application/commonground": { + "source": "iana" + }, + "application/conference-info+xml": { + "source": "iana", + "compressible": true + }, + "application/cose": { + "source": "iana" + }, + "application/cose-key": { + "source": "iana" + }, + "application/cose-key-set": { + "source": "iana" + }, + "application/cpl+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "cpl" + ] + }, + "application/csrattrs": { + "source": "iana" + }, + "application/csta+xml": { + "source": "iana", + "compressible": true + }, + "application/cstadata+xml": { + "source": "iana", + "compressible": true + }, + "application/csvm+json": { + "source": "iana", + "compressible": true + }, + "application/cu-seeme": { + "source": "apache", + "extensions": [ + "cu" + ] + }, + "application/cwt": { + "source": "iana" + }, + "application/cybercash": { + "source": "iana" + }, + "application/dart": { + "compressible": true + }, + "application/dash+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mpd" + ] + }, + "application/dash-patch+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mpp" + ] + }, + "application/dashdelta": { + "source": "iana" + }, + "application/davmount+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "davmount" + ] + }, + "application/dca-rft": { + "source": "iana" + }, + "application/dcd": { + "source": "iana" + }, + "application/dec-dx": { + "source": "iana" + }, + "application/dialog-info+xml": { + "source": "iana", + "compressible": true + }, + "application/dicom": { + "source": "iana" + }, + "application/dicom+json": { + "source": "iana", + "compressible": true + }, + "application/dicom+xml": { + "source": "iana", + "compressible": true + }, + "application/dii": { + "source": "iana" + }, + "application/dit": { + "source": "iana" + }, + "application/dns": { + "source": "iana" + }, + "application/dns+json": { + "source": "iana", + "compressible": true + }, + "application/dns-message": { + "source": "iana" + }, + "application/docbook+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "dbk" + ] + }, + "application/dots+cbor": { + "source": "iana" + }, + "application/dskpp+xml": { + "source": "iana", + "compressible": true + }, + "application/dssc+der": { + "source": "iana", + "extensions": [ + "dssc" + ] + }, + "application/dssc+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xdssc" + ] + }, + "application/dvcs": { + "source": "iana" + }, + "application/ecmascript": { + "source": "iana", + "compressible": true, + "extensions": [ + "es", + "ecma" + ] + }, + "application/edi-consent": { + "source": "iana" + }, + "application/edi-x12": { + "source": "iana", + "compressible": false + }, + "application/edifact": { + "source": "iana", + "compressible": false + }, + "application/efi": { + "source": "iana" + }, + "application/elm+json": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/elm+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.cap+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/emergencycalldata.comment+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.control+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.deviceinfo+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.ecall.msd": { + "source": "iana" + }, + "application/emergencycalldata.providerinfo+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.serviceinfo+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.subscriberinfo+xml": { + "source": "iana", + "compressible": true + }, + "application/emergencycalldata.veds+xml": { + "source": "iana", + "compressible": true + }, + "application/emma+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "emma" + ] + }, + "application/emotionml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "emotionml" + ] + }, + "application/encaprtp": { + "source": "iana" + }, + "application/epp+xml": { + "source": "iana", + "compressible": true + }, + "application/epub+zip": { + "source": "iana", + "compressible": false, + "extensions": [ + "epub" + ] + }, + "application/eshop": { + "source": "iana" + }, + "application/exi": { + "source": "iana", + "extensions": [ + "exi" + ] + }, + "application/expect-ct-report+json": { + "source": "iana", + "compressible": true + }, + "application/express": { + "source": "iana", + "extensions": [ + "exp" + ] + }, + "application/fastinfoset": { + "source": "iana" + }, + "application/fastsoap": { + "source": "iana" + }, + "application/fdt+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "fdt" + ] + }, + "application/fhir+json": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/fhir+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/fido.trusted-apps+json": { + "compressible": true + }, + "application/fits": { + "source": "iana" + }, + "application/flexfec": { + "source": "iana" + }, + "application/font-sfnt": { + "source": "iana" + }, + "application/font-tdpfr": { + "source": "iana", + "extensions": [ + "pfr" + ] + }, + "application/font-woff": { + "source": "iana", + "compressible": false + }, + "application/framework-attributes+xml": { + "source": "iana", + "compressible": true + }, + "application/geo+json": { + "source": "iana", + "compressible": true, + "extensions": [ + "geojson" + ] + }, + "application/geo+json-seq": { + "source": "iana" + }, + "application/geopackage+sqlite3": { + "source": "iana" + }, + "application/geoxacml+xml": { + "source": "iana", + "compressible": true + }, + "application/gltf-buffer": { + "source": "iana" + }, + "application/gml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "gml" + ] + }, + "application/gpx+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "gpx" + ] + }, + "application/gxf": { + "source": "apache", + "extensions": [ + "gxf" + ] + }, + "application/gzip": { + "source": "iana", + "compressible": false, + "extensions": [ + "gz" + ] + }, + "application/h224": { + "source": "iana" + }, + "application/held+xml": { + "source": "iana", + "compressible": true + }, + "application/hjson": { + "extensions": [ + "hjson" + ] + }, + "application/http": { + "source": "iana" + }, + "application/hyperstudio": { + "source": "iana", + "extensions": [ + "stk" + ] + }, + "application/ibe-key-request+xml": { + "source": "iana", + "compressible": true + }, + "application/ibe-pkg-reply+xml": { + "source": "iana", + "compressible": true + }, + "application/ibe-pp-data": { + "source": "iana" + }, + "application/iges": { + "source": "iana" + }, + "application/im-iscomposing+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/index": { + "source": "iana" + }, + "application/index.cmd": { + "source": "iana" + }, + "application/index.obj": { + "source": "iana" + }, + "application/index.response": { + "source": "iana" + }, + "application/index.vnd": { + "source": "iana" + }, + "application/inkml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "ink", + "inkml" + ] + }, + "application/iotp": { + "source": "iana" + }, + "application/ipfix": { + "source": "iana", + "extensions": [ + "ipfix" + ] + }, + "application/ipp": { + "source": "iana" + }, + "application/isup": { + "source": "iana" + }, + "application/its+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "its" + ] + }, + "application/java-archive": { + "source": "apache", + "compressible": false, + "extensions": [ + "jar", + "war", + "ear" + ] + }, + "application/java-serialized-object": { + "source": "apache", + "compressible": false, + "extensions": [ + "ser" + ] + }, + "application/java-vm": { + "source": "apache", + "compressible": false, + "extensions": [ + "class" + ] + }, + "application/javascript": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "js", + "mjs" + ] + }, + "application/jf2feed+json": { + "source": "iana", + "compressible": true + }, + "application/jose": { + "source": "iana" + }, + "application/jose+json": { + "source": "iana", + "compressible": true + }, + "application/jrd+json": { + "source": "iana", + "compressible": true + }, + "application/jscalendar+json": { + "source": "iana", + "compressible": true + }, + "application/json": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "json", + "map" + ] + }, + "application/json-patch+json": { + "source": "iana", + "compressible": true + }, + "application/json-seq": { + "source": "iana" + }, + "application/json5": { + "extensions": [ + "json5" + ] + }, + "application/jsonml+json": { + "source": "apache", + "compressible": true, + "extensions": [ + "jsonml" + ] + }, + "application/jwk+json": { + "source": "iana", + "compressible": true + }, + "application/jwk-set+json": { + "source": "iana", + "compressible": true + }, + "application/jwt": { + "source": "iana" + }, + "application/kpml-request+xml": { + "source": "iana", + "compressible": true + }, + "application/kpml-response+xml": { + "source": "iana", + "compressible": true + }, + "application/ld+json": { + "source": "iana", + "compressible": true, + "extensions": [ + "jsonld" + ] + }, + "application/lgr+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "lgr" + ] + }, + "application/link-format": { + "source": "iana" + }, + "application/load-control+xml": { + "source": "iana", + "compressible": true + }, + "application/lost+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "lostxml" + ] + }, + "application/lostsync+xml": { + "source": "iana", + "compressible": true + }, + "application/lpf+zip": { + "source": "iana", + "compressible": false + }, + "application/lxf": { + "source": "iana" + }, + "application/mac-binhex40": { + "source": "iana", + "extensions": [ + "hqx" + ] + }, + "application/mac-compactpro": { + "source": "apache", + "extensions": [ + "cpt" + ] + }, + "application/macwriteii": { + "source": "iana" + }, + "application/mads+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mads" + ] + }, + "application/manifest+json": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "webmanifest" + ] + }, + "application/marc": { + "source": "iana", + "extensions": [ + "mrc" + ] + }, + "application/marcxml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mrcx" + ] + }, + "application/mathematica": { + "source": "iana", + "extensions": [ + "ma", + "nb", + "mb" + ] + }, + "application/mathml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mathml" + ] + }, + "application/mathml-content+xml": { + "source": "iana", + "compressible": true + }, + "application/mathml-presentation+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-associated-procedure-description+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-deregister+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-envelope+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-msk+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-msk-response+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-protection-description+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-reception-report+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-register+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-register-response+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-schedule+xml": { + "source": "iana", + "compressible": true + }, + "application/mbms-user-service-description+xml": { + "source": "iana", + "compressible": true + }, + "application/mbox": { + "source": "iana", + "extensions": [ + "mbox" + ] + }, + "application/media-policy-dataset+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mpf" + ] + }, + "application/media_control+xml": { + "source": "iana", + "compressible": true + }, + "application/mediaservercontrol+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mscml" + ] + }, + "application/merge-patch+json": { + "source": "iana", + "compressible": true + }, + "application/metalink+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "metalink" + ] + }, + "application/metalink4+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "meta4" + ] + }, + "application/mets+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mets" + ] + }, + "application/mf4": { + "source": "iana" + }, + "application/mikey": { + "source": "iana" + }, + "application/mipc": { + "source": "iana" + }, + "application/missing-blocks+cbor-seq": { + "source": "iana" + }, + "application/mmt-aei+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "maei" + ] + }, + "application/mmt-usd+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "musd" + ] + }, + "application/mods+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mods" + ] + }, + "application/moss-keys": { + "source": "iana" + }, + "application/moss-signature": { + "source": "iana" + }, + "application/mosskey-data": { + "source": "iana" + }, + "application/mosskey-request": { + "source": "iana" + }, + "application/mp21": { + "source": "iana", + "extensions": [ + "m21", + "mp21" + ] + }, + "application/mp4": { + "source": "iana", + "extensions": [ + "mp4s", + "m4p" + ] + }, + "application/mpeg4-generic": { + "source": "iana" + }, + "application/mpeg4-iod": { + "source": "iana" + }, + "application/mpeg4-iod-xmt": { + "source": "iana" + }, + "application/mrb-consumer+xml": { + "source": "iana", + "compressible": true + }, + "application/mrb-publish+xml": { + "source": "iana", + "compressible": true + }, + "application/msc-ivr+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/msc-mixer+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/msword": { + "source": "iana", + "compressible": false, + "extensions": [ + "doc", + "dot" + ] + }, + "application/mud+json": { + "source": "iana", + "compressible": true + }, + "application/multipart-core": { + "source": "iana" + }, + "application/mxf": { + "source": "iana", + "extensions": [ + "mxf" + ] + }, + "application/n-quads": { + "source": "iana", + "extensions": [ + "nq" + ] + }, + "application/n-triples": { + "source": "iana", + "extensions": [ + "nt" + ] + }, + "application/nasdata": { + "source": "iana" + }, + "application/news-checkgroups": { + "source": "iana", + "charset": "US-ASCII" + }, + "application/news-groupinfo": { + "source": "iana", + "charset": "US-ASCII" + }, + "application/news-transmission": { + "source": "iana" + }, + "application/nlsml+xml": { + "source": "iana", + "compressible": true + }, + "application/node": { + "source": "iana", + "extensions": [ + "cjs" + ] + }, + "application/nss": { + "source": "iana" + }, + "application/oauth-authz-req+jwt": { + "source": "iana" + }, + "application/oblivious-dns-message": { + "source": "iana" + }, + "application/ocsp-request": { + "source": "iana" + }, + "application/ocsp-response": { + "source": "iana" + }, + "application/octet-stream": { + "source": "iana", + "compressible": false, + "extensions": [ + "bin", + "dms", + "lrf", + "mar", + "so", + "dist", + "distz", + "pkg", + "bpk", + "dump", + "elc", + "deploy", + "exe", + "dll", + "deb", + "dmg", + "iso", + "img", + "msi", + "msp", + "msm", + "buffer" + ] + }, + "application/oda": { + "source": "iana", + "extensions": [ + "oda" + ] + }, + "application/odm+xml": { + "source": "iana", + "compressible": true + }, + "application/odx": { + "source": "iana" + }, + "application/oebps-package+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "opf" + ] + }, + "application/ogg": { + "source": "iana", + "compressible": false, + "extensions": [ + "ogx" + ] + }, + "application/omdoc+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "omdoc" + ] + }, + "application/onenote": { + "source": "apache", + "extensions": [ + "onetoc", + "onetoc2", + "onetmp", + "onepkg" + ] + }, + "application/opc-nodeset+xml": { + "source": "iana", + "compressible": true + }, + "application/oscore": { + "source": "iana" + }, + "application/oxps": { + "source": "iana", + "extensions": [ + "oxps" + ] + }, + "application/p21": { + "source": "iana" + }, + "application/p21+zip": { + "source": "iana", + "compressible": false + }, + "application/p2p-overlay+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "relo" + ] + }, + "application/parityfec": { + "source": "iana" + }, + "application/passport": { + "source": "iana" + }, + "application/patch-ops-error+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xer" + ] + }, + "application/pdf": { + "source": "iana", + "compressible": false, + "extensions": [ + "pdf" + ] + }, + "application/pdx": { + "source": "iana" + }, + "application/pem-certificate-chain": { + "source": "iana" + }, + "application/pgp-encrypted": { + "source": "iana", + "compressible": false, + "extensions": [ + "pgp" + ] + }, + "application/pgp-keys": { + "source": "iana", + "extensions": [ + "asc" + ] + }, + "application/pgp-signature": { + "source": "iana", + "extensions": [ + "asc", + "sig" + ] + }, + "application/pics-rules": { + "source": "apache", + "extensions": [ + "prf" + ] + }, + "application/pidf+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/pidf-diff+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/pkcs10": { + "source": "iana", + "extensions": [ + "p10" + ] + }, + "application/pkcs12": { + "source": "iana" + }, + "application/pkcs7-mime": { + "source": "iana", + "extensions": [ + "p7m", + "p7c" + ] + }, + "application/pkcs7-signature": { + "source": "iana", + "extensions": [ + "p7s" + ] + }, + "application/pkcs8": { + "source": "iana", + "extensions": [ + "p8" + ] + }, + "application/pkcs8-encrypted": { + "source": "iana" + }, + "application/pkix-attr-cert": { + "source": "iana", + "extensions": [ + "ac" + ] + }, + "application/pkix-cert": { + "source": "iana", + "extensions": [ + "cer" + ] + }, + "application/pkix-crl": { + "source": "iana", + "extensions": [ + "crl" + ] + }, + "application/pkix-pkipath": { + "source": "iana", + "extensions": [ + "pkipath" + ] + }, + "application/pkixcmp": { + "source": "iana", + "extensions": [ + "pki" + ] + }, + "application/pls+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "pls" + ] + }, + "application/poc-settings+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/postscript": { + "source": "iana", + "compressible": true, + "extensions": [ + "ai", + "eps", + "ps" + ] + }, + "application/ppsp-tracker+json": { + "source": "iana", + "compressible": true + }, + "application/problem+json": { + "source": "iana", + "compressible": true + }, + "application/problem+xml": { + "source": "iana", + "compressible": true + }, + "application/provenance+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "provx" + ] + }, + "application/prs.alvestrand.titrax-sheet": { + "source": "iana" + }, + "application/prs.cww": { + "source": "iana", + "extensions": [ + "cww" + ] + }, + "application/prs.cyn": { + "source": "iana", + "charset": "7-BIT" + }, + "application/prs.hpub+zip": { + "source": "iana", + "compressible": false + }, + "application/prs.nprend": { + "source": "iana" + }, + "application/prs.plucker": { + "source": "iana" + }, + "application/prs.rdf-xml-crypt": { + "source": "iana" + }, + "application/prs.xsf+xml": { + "source": "iana", + "compressible": true + }, + "application/pskc+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "pskcxml" + ] + }, + "application/pvd+json": { + "source": "iana", + "compressible": true + }, + "application/qsig": { + "source": "iana" + }, + "application/raml+yaml": { + "compressible": true, + "extensions": [ + "raml" + ] + }, + "application/raptorfec": { + "source": "iana" + }, + "application/rdap+json": { + "source": "iana", + "compressible": true + }, + "application/rdf+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rdf", + "owl" + ] + }, + "application/reginfo+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rif" + ] + }, + "application/relax-ng-compact-syntax": { + "source": "iana", + "extensions": [ + "rnc" + ] + }, + "application/remote-printing": { + "source": "iana" + }, + "application/reputon+json": { + "source": "iana", + "compressible": true + }, + "application/resource-lists+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rl" + ] + }, + "application/resource-lists-diff+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rld" + ] + }, + "application/rfc+xml": { + "source": "iana", + "compressible": true + }, + "application/riscos": { + "source": "iana" + }, + "application/rlmi+xml": { + "source": "iana", + "compressible": true + }, + "application/rls-services+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rs" + ] + }, + "application/route-apd+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rapd" + ] + }, + "application/route-s-tsid+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "sls" + ] + }, + "application/route-usd+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rusd" + ] + }, + "application/rpki-ghostbusters": { + "source": "iana", + "extensions": [ + "gbr" + ] + }, + "application/rpki-manifest": { + "source": "iana", + "extensions": [ + "mft" + ] + }, + "application/rpki-publication": { + "source": "iana" + }, + "application/rpki-roa": { + "source": "iana", + "extensions": [ + "roa" + ] + }, + "application/rpki-updown": { + "source": "iana" + }, + "application/rsd+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "rsd" + ] + }, + "application/rss+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "rss" + ] + }, + "application/rtf": { + "source": "iana", + "compressible": true, + "extensions": [ + "rtf" + ] + }, + "application/rtploopback": { + "source": "iana" + }, + "application/rtx": { + "source": "iana" + }, + "application/samlassertion+xml": { + "source": "iana", + "compressible": true + }, + "application/samlmetadata+xml": { + "source": "iana", + "compressible": true + }, + "application/sarif+json": { + "source": "iana", + "compressible": true + }, + "application/sarif-external-properties+json": { + "source": "iana", + "compressible": true + }, + "application/sbe": { + "source": "iana" + }, + "application/sbml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "sbml" + ] + }, + "application/scaip+xml": { + "source": "iana", + "compressible": true + }, + "application/scim+json": { + "source": "iana", + "compressible": true + }, + "application/scvp-cv-request": { + "source": "iana", + "extensions": [ + "scq" + ] + }, + "application/scvp-cv-response": { + "source": "iana", + "extensions": [ + "scs" + ] + }, + "application/scvp-vp-request": { + "source": "iana", + "extensions": [ + "spq" + ] + }, + "application/scvp-vp-response": { + "source": "iana", + "extensions": [ + "spp" + ] + }, + "application/sdp": { + "source": "iana", + "extensions": [ + "sdp" + ] + }, + "application/secevent+jwt": { + "source": "iana" + }, + "application/senml+cbor": { + "source": "iana" + }, + "application/senml+json": { + "source": "iana", + "compressible": true + }, + "application/senml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "senmlx" + ] + }, + "application/senml-etch+cbor": { + "source": "iana" + }, + "application/senml-etch+json": { + "source": "iana", + "compressible": true + }, + "application/senml-exi": { + "source": "iana" + }, + "application/sensml+cbor": { + "source": "iana" + }, + "application/sensml+json": { + "source": "iana", + "compressible": true + }, + "application/sensml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "sensmlx" + ] + }, + "application/sensml-exi": { + "source": "iana" + }, + "application/sep+xml": { + "source": "iana", + "compressible": true + }, + "application/sep-exi": { + "source": "iana" + }, + "application/session-info": { + "source": "iana" + }, + "application/set-payment": { + "source": "iana" + }, + "application/set-payment-initiation": { + "source": "iana", + "extensions": [ + "setpay" + ] + }, + "application/set-registration": { + "source": "iana" + }, + "application/set-registration-initiation": { + "source": "iana", + "extensions": [ + "setreg" + ] + }, + "application/sgml": { + "source": "iana" + }, + "application/sgml-open-catalog": { + "source": "iana" + }, + "application/shf+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "shf" + ] + }, + "application/sieve": { + "source": "iana", + "extensions": [ + "siv", + "sieve" + ] + }, + "application/simple-filter+xml": { + "source": "iana", + "compressible": true + }, + "application/simple-message-summary": { + "source": "iana" + }, + "application/simplesymbolcontainer": { + "source": "iana" + }, + "application/sipc": { + "source": "iana" + }, + "application/slate": { + "source": "iana" + }, + "application/smil": { + "source": "iana" + }, + "application/smil+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "smi", + "smil" + ] + }, + "application/smpte336m": { + "source": "iana" + }, + "application/soap+fastinfoset": { + "source": "iana" + }, + "application/soap+xml": { + "source": "iana", + "compressible": true + }, + "application/sparql-query": { + "source": "iana", + "extensions": [ + "rq" + ] + }, + "application/sparql-results+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "srx" + ] + }, + "application/spdx+json": { + "source": "iana", + "compressible": true + }, + "application/spirits-event+xml": { + "source": "iana", + "compressible": true + }, + "application/sql": { + "source": "iana" + }, + "application/srgs": { + "source": "iana", + "extensions": [ + "gram" + ] + }, + "application/srgs+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "grxml" + ] + }, + "application/sru+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "sru" + ] + }, + "application/ssdl+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "ssdl" + ] + }, + "application/ssml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "ssml" + ] + }, + "application/stix+json": { + "source": "iana", + "compressible": true + }, + "application/swid+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "swidtag" + ] + }, + "application/tamp-apex-update": { + "source": "iana" + }, + "application/tamp-apex-update-confirm": { + "source": "iana" + }, + "application/tamp-community-update": { + "source": "iana" + }, + "application/tamp-community-update-confirm": { + "source": "iana" + }, + "application/tamp-error": { + "source": "iana" + }, + "application/tamp-sequence-adjust": { + "source": "iana" + }, + "application/tamp-sequence-adjust-confirm": { + "source": "iana" + }, + "application/tamp-status-query": { + "source": "iana" + }, + "application/tamp-status-response": { + "source": "iana" + }, + "application/tamp-update": { + "source": "iana" + }, + "application/tamp-update-confirm": { + "source": "iana" + }, + "application/tar": { + "compressible": true + }, + "application/taxii+json": { + "source": "iana", + "compressible": true + }, + "application/td+json": { + "source": "iana", + "compressible": true + }, + "application/tei+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "tei", + "teicorpus" + ] + }, + "application/tetra_isi": { + "source": "iana" + }, + "application/thraud+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "tfi" + ] + }, + "application/timestamp-query": { + "source": "iana" + }, + "application/timestamp-reply": { + "source": "iana" + }, + "application/timestamped-data": { + "source": "iana", + "extensions": [ + "tsd" + ] + }, + "application/tlsrpt+gzip": { + "source": "iana" + }, + "application/tlsrpt+json": { + "source": "iana", + "compressible": true + }, + "application/tnauthlist": { + "source": "iana" + }, + "application/token-introspection+jwt": { + "source": "iana" + }, + "application/toml": { + "compressible": true, + "extensions": [ + "toml" + ] + }, + "application/trickle-ice-sdpfrag": { + "source": "iana" + }, + "application/trig": { + "source": "iana", + "extensions": [ + "trig" + ] + }, + "application/ttml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "ttml" + ] + }, + "application/tve-trigger": { + "source": "iana" + }, + "application/tzif": { + "source": "iana" + }, + "application/tzif-leap": { + "source": "iana" + }, + "application/ubjson": { + "compressible": false, + "extensions": [ + "ubj" + ] + }, + "application/ulpfec": { + "source": "iana" + }, + "application/urc-grpsheet+xml": { + "source": "iana", + "compressible": true + }, + "application/urc-ressheet+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "rsheet" + ] + }, + "application/urc-targetdesc+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "td" + ] + }, + "application/urc-uisocketdesc+xml": { + "source": "iana", + "compressible": true + }, + "application/vcard+json": { + "source": "iana", + "compressible": true + }, + "application/vcard+xml": { + "source": "iana", + "compressible": true + }, + "application/vemmi": { + "source": "iana" + }, + "application/vividence.scriptfile": { + "source": "apache" + }, + "application/vnd.1000minds.decision-model+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "1km" + ] + }, + "application/vnd.3gpp-prose+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp-prose-pc3ch+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp-v2x-local-service-information": { + "source": "iana" + }, + "application/vnd.3gpp.5gnas": { + "source": "iana" + }, + "application/vnd.3gpp.access-transfer-events+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.bsf+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.gmop+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.gtpc": { + "source": "iana" + }, + "application/vnd.3gpp.interworking-data": { + "source": "iana" + }, + "application/vnd.3gpp.lpp": { + "source": "iana" + }, + "application/vnd.3gpp.mc-signalling-ear": { + "source": "iana" + }, + "application/vnd.3gpp.mcdata-affiliation-command+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcdata-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcdata-payload": { + "source": "iana" + }, + "application/vnd.3gpp.mcdata-service-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcdata-signalling": { + "source": "iana" + }, + "application/vnd.3gpp.mcdata-ue-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcdata-user-profile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-affiliation-command+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-floor-request+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-location-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-mbms-usage-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-service-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-signed+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-ue-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-ue-init-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcptt-user-profile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-affiliation-command+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-affiliation-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-location-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-mbms-usage-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-service-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-transmission-request+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-ue-config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mcvideo-user-profile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.mid-call+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.ngap": { + "source": "iana" + }, + "application/vnd.3gpp.pfcp": { + "source": "iana" + }, + "application/vnd.3gpp.pic-bw-large": { + "source": "iana", + "extensions": [ + "plb" + ] + }, + "application/vnd.3gpp.pic-bw-small": { + "source": "iana", + "extensions": [ + "psb" + ] + }, + "application/vnd.3gpp.pic-bw-var": { + "source": "iana", + "extensions": [ + "pvb" + ] + }, + "application/vnd.3gpp.s1ap": { + "source": "iana" + }, + "application/vnd.3gpp.sms": { + "source": "iana" + }, + "application/vnd.3gpp.sms+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.srvcc-ext+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.srvcc-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.state-and-event-info+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp.ussd+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp2.bcmcsinfo+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.3gpp2.sms": { + "source": "iana" + }, + "application/vnd.3gpp2.tcap": { + "source": "iana", + "extensions": [ + "tcap" + ] + }, + "application/vnd.3lightssoftware.imagescal": { + "source": "iana" + }, + "application/vnd.3m.post-it-notes": { + "source": "iana", + "extensions": [ + "pwn" + ] + }, + "application/vnd.accpac.simply.aso": { + "source": "iana", + "extensions": [ + "aso" + ] + }, + "application/vnd.accpac.simply.imp": { + "source": "iana", + "extensions": [ + "imp" + ] + }, + "application/vnd.acucobol": { + "source": "iana", + "extensions": [ + "acu" + ] + }, + "application/vnd.acucorp": { + "source": "iana", + "extensions": [ + "atc", + "acutc" + ] + }, + "application/vnd.adobe.air-application-installer-package+zip": { + "source": "apache", + "compressible": false, + "extensions": [ + "air" + ] + }, + "application/vnd.adobe.flash.movie": { + "source": "iana" + }, + "application/vnd.adobe.formscentral.fcdt": { + "source": "iana", + "extensions": [ + "fcdt" + ] + }, + "application/vnd.adobe.fxp": { + "source": "iana", + "extensions": [ + "fxp", + "fxpl" + ] + }, + "application/vnd.adobe.partial-upload": { + "source": "iana" + }, + "application/vnd.adobe.xdp+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xdp" + ] + }, + "application/vnd.adobe.xfdf": { + "source": "iana", + "extensions": [ + "xfdf" + ] + }, + "application/vnd.aether.imp": { + "source": "iana" + }, + "application/vnd.afpc.afplinedata": { + "source": "iana" + }, + "application/vnd.afpc.afplinedata-pagedef": { + "source": "iana" + }, + "application/vnd.afpc.cmoca-cmresource": { + "source": "iana" + }, + "application/vnd.afpc.foca-charset": { + "source": "iana" + }, + "application/vnd.afpc.foca-codedfont": { + "source": "iana" + }, + "application/vnd.afpc.foca-codepage": { + "source": "iana" + }, + "application/vnd.afpc.modca": { + "source": "iana" + }, + "application/vnd.afpc.modca-cmtable": { + "source": "iana" + }, + "application/vnd.afpc.modca-formdef": { + "source": "iana" + }, + "application/vnd.afpc.modca-mediummap": { + "source": "iana" + }, + "application/vnd.afpc.modca-objectcontainer": { + "source": "iana" + }, + "application/vnd.afpc.modca-overlay": { + "source": "iana" + }, + "application/vnd.afpc.modca-pagesegment": { + "source": "iana" + }, + "application/vnd.age": { + "source": "iana", + "extensions": [ + "age" + ] + }, + "application/vnd.ah-barcode": { + "source": "iana" + }, + "application/vnd.ahead.space": { + "source": "iana", + "extensions": [ + "ahead" + ] + }, + "application/vnd.airzip.filesecure.azf": { + "source": "iana", + "extensions": [ + "azf" + ] + }, + "application/vnd.airzip.filesecure.azs": { + "source": "iana", + "extensions": [ + "azs" + ] + }, + "application/vnd.amadeus+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.amazon.ebook": { + "source": "apache", + "extensions": [ + "azw" + ] + }, + "application/vnd.amazon.mobi8-ebook": { + "source": "iana" + }, + "application/vnd.americandynamics.acc": { + "source": "iana", + "extensions": [ + "acc" + ] + }, + "application/vnd.amiga.ami": { + "source": "iana", + "extensions": [ + "ami" + ] + }, + "application/vnd.amundsen.maze+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.android.ota": { + "source": "iana" + }, + "application/vnd.android.package-archive": { + "source": "apache", + "compressible": false, + "extensions": [ + "apk" + ] + }, + "application/vnd.anki": { + "source": "iana" + }, + "application/vnd.anser-web-certificate-issue-initiation": { + "source": "iana", + "extensions": [ + "cii" + ] + }, + "application/vnd.anser-web-funds-transfer-initiation": { + "source": "apache", + "extensions": [ + "fti" + ] + }, + "application/vnd.antix.game-component": { + "source": "iana", + "extensions": [ + "atx" + ] + }, + "application/vnd.apache.arrow.file": { + "source": "iana" + }, + "application/vnd.apache.arrow.stream": { + "source": "iana" + }, + "application/vnd.apache.thrift.binary": { + "source": "iana" + }, + "application/vnd.apache.thrift.compact": { + "source": "iana" + }, + "application/vnd.apache.thrift.json": { + "source": "iana" + }, + "application/vnd.api+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.aplextor.warrp+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.apothekende.reservation+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.apple.installer+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mpkg" + ] + }, + "application/vnd.apple.keynote": { + "source": "iana", + "extensions": [ + "key" + ] + }, + "application/vnd.apple.mpegurl": { + "source": "iana", + "extensions": [ + "m3u8" + ] + }, + "application/vnd.apple.numbers": { + "source": "iana", + "extensions": [ + "numbers" + ] + }, + "application/vnd.apple.pages": { + "source": "iana", + "extensions": [ + "pages" + ] + }, + "application/vnd.apple.pkpass": { + "compressible": false, + "extensions": [ + "pkpass" + ] + }, + "application/vnd.arastra.swi": { + "source": "iana" + }, + "application/vnd.aristanetworks.swi": { + "source": "iana", + "extensions": [ + "swi" + ] + }, + "application/vnd.artisan+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.artsquare": { + "source": "iana" + }, + "application/vnd.astraea-software.iota": { + "source": "iana", + "extensions": [ + "iota" + ] + }, + "application/vnd.audiograph": { + "source": "iana", + "extensions": [ + "aep" + ] + }, + "application/vnd.autopackage": { + "source": "iana" + }, + "application/vnd.avalon+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.avistar+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.balsamiq.bmml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "bmml" + ] + }, + "application/vnd.balsamiq.bmpr": { + "source": "iana" + }, + "application/vnd.banana-accounting": { + "source": "iana" + }, + "application/vnd.bbf.usp.error": { + "source": "iana" + }, + "application/vnd.bbf.usp.msg": { + "source": "iana" + }, + "application/vnd.bbf.usp.msg+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.bekitzur-stech+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.bint.med-content": { + "source": "iana" + }, + "application/vnd.biopax.rdf+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.blink-idb-value-wrapper": { + "source": "iana" + }, + "application/vnd.blueice.multipass": { + "source": "iana", + "extensions": [ + "mpm" + ] + }, + "application/vnd.bluetooth.ep.oob": { + "source": "iana" + }, + "application/vnd.bluetooth.le.oob": { + "source": "iana" + }, + "application/vnd.bmi": { + "source": "iana", + "extensions": [ + "bmi" + ] + }, + "application/vnd.bpf": { + "source": "iana" + }, + "application/vnd.bpf3": { + "source": "iana" + }, + "application/vnd.businessobjects": { + "source": "iana", + "extensions": [ + "rep" + ] + }, + "application/vnd.byu.uapi+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.cab-jscript": { + "source": "iana" + }, + "application/vnd.canon-cpdl": { + "source": "iana" + }, + "application/vnd.canon-lips": { + "source": "iana" + }, + "application/vnd.capasystems-pg+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.cendio.thinlinc.clientconf": { + "source": "iana" + }, + "application/vnd.century-systems.tcp_stream": { + "source": "iana" + }, + "application/vnd.chemdraw+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "cdxml" + ] + }, + "application/vnd.chess-pgn": { + "source": "iana" + }, + "application/vnd.chipnuts.karaoke-mmd": { + "source": "iana", + "extensions": [ + "mmd" + ] + }, + "application/vnd.ciedi": { + "source": "iana" + }, + "application/vnd.cinderella": { + "source": "iana", + "extensions": [ + "cdy" + ] + }, + "application/vnd.cirpack.isdn-ext": { + "source": "iana" + }, + "application/vnd.citationstyles.style+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "csl" + ] + }, + "application/vnd.claymore": { + "source": "iana", + "extensions": [ + "cla" + ] + }, + "application/vnd.cloanto.rp9": { + "source": "iana", + "extensions": [ + "rp9" + ] + }, + "application/vnd.clonk.c4group": { + "source": "iana", + "extensions": [ + "c4g", + "c4d", + "c4f", + "c4p", + "c4u" + ] + }, + "application/vnd.cluetrust.cartomobile-config": { + "source": "iana", + "extensions": [ + "c11amc" + ] + }, + "application/vnd.cluetrust.cartomobile-config-pkg": { + "source": "iana", + "extensions": [ + "c11amz" + ] + }, + "application/vnd.coffeescript": { + "source": "iana" + }, + "application/vnd.collabio.xodocuments.document": { + "source": "iana" + }, + "application/vnd.collabio.xodocuments.document-template": { + "source": "iana" + }, + "application/vnd.collabio.xodocuments.presentation": { + "source": "iana" + }, + "application/vnd.collabio.xodocuments.presentation-template": { + "source": "iana" + }, + "application/vnd.collabio.xodocuments.spreadsheet": { + "source": "iana" + }, + "application/vnd.collabio.xodocuments.spreadsheet-template": { + "source": "iana" + }, + "application/vnd.collection+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.collection.doc+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.collection.next+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.comicbook+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.comicbook-rar": { + "source": "iana" + }, + "application/vnd.commerce-battelle": { + "source": "iana" + }, + "application/vnd.commonspace": { + "source": "iana", + "extensions": [ + "csp" + ] + }, + "application/vnd.contact.cmsg": { + "source": "iana", + "extensions": [ + "cdbcmsg" + ] + }, + "application/vnd.coreos.ignition+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.cosmocaller": { + "source": "iana", + "extensions": [ + "cmc" + ] + }, + "application/vnd.crick.clicker": { + "source": "iana", + "extensions": [ + "clkx" + ] + }, + "application/vnd.crick.clicker.keyboard": { + "source": "iana", + "extensions": [ + "clkk" + ] + }, + "application/vnd.crick.clicker.palette": { + "source": "iana", + "extensions": [ + "clkp" + ] + }, + "application/vnd.crick.clicker.template": { + "source": "iana", + "extensions": [ + "clkt" + ] + }, + "application/vnd.crick.clicker.wordbank": { + "source": "iana", + "extensions": [ + "clkw" + ] + }, + "application/vnd.criticaltools.wbs+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "wbs" + ] + }, + "application/vnd.cryptii.pipe+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.crypto-shade-file": { + "source": "iana" + }, + "application/vnd.cryptomator.encrypted": { + "source": "iana" + }, + "application/vnd.cryptomator.vault": { + "source": "iana" + }, + "application/vnd.ctc-posml": { + "source": "iana", + "extensions": [ + "pml" + ] + }, + "application/vnd.ctct.ws+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.cups-pdf": { + "source": "iana" + }, + "application/vnd.cups-postscript": { + "source": "iana" + }, + "application/vnd.cups-ppd": { + "source": "iana", + "extensions": [ + "ppd" + ] + }, + "application/vnd.cups-raster": { + "source": "iana" + }, + "application/vnd.cups-raw": { + "source": "iana" + }, + "application/vnd.curl": { + "source": "iana" + }, + "application/vnd.curl.car": { + "source": "apache", + "extensions": [ + "car" + ] + }, + "application/vnd.curl.pcurl": { + "source": "apache", + "extensions": [ + "pcurl" + ] + }, + "application/vnd.cyan.dean.root+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.cybank": { + "source": "iana" + }, + "application/vnd.cyclonedx+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.cyclonedx+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.d2l.coursepackage1p0+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.d3m-dataset": { + "source": "iana" + }, + "application/vnd.d3m-problem": { + "source": "iana" + }, + "application/vnd.dart": { + "source": "iana", + "compressible": true, + "extensions": [ + "dart" + ] + }, + "application/vnd.data-vision.rdz": { + "source": "iana", + "extensions": [ + "rdz" + ] + }, + "application/vnd.datapackage+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.dataresource+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.dbf": { + "source": "iana", + "extensions": [ + "dbf" + ] + }, + "application/vnd.debian.binary-package": { + "source": "iana" + }, + "application/vnd.dece.data": { + "source": "iana", + "extensions": [ + "uvf", + "uvvf", + "uvd", + "uvvd" + ] + }, + "application/vnd.dece.ttml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "uvt", + "uvvt" + ] + }, + "application/vnd.dece.unspecified": { + "source": "iana", + "extensions": [ + "uvx", + "uvvx" + ] + }, + "application/vnd.dece.zip": { + "source": "iana", + "extensions": [ + "uvz", + "uvvz" + ] + }, + "application/vnd.denovo.fcselayout-link": { + "source": "iana", + "extensions": [ + "fe_launch" + ] + }, + "application/vnd.desmume.movie": { + "source": "iana" + }, + "application/vnd.dir-bi.plate-dl-nosuffix": { + "source": "iana" + }, + "application/vnd.dm.delegation+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dna": { + "source": "iana", + "extensions": [ + "dna" + ] + }, + "application/vnd.document+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.dolby.mlp": { + "source": "apache", + "extensions": [ + "mlp" + ] + }, + "application/vnd.dolby.mobile.1": { + "source": "iana" + }, + "application/vnd.dolby.mobile.2": { + "source": "iana" + }, + "application/vnd.doremir.scorecloud-binary-document": { + "source": "iana" + }, + "application/vnd.dpgraph": { + "source": "iana", + "extensions": [ + "dpg" + ] + }, + "application/vnd.dreamfactory": { + "source": "iana", + "extensions": [ + "dfac" + ] + }, + "application/vnd.drive+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ds-keypoint": { + "source": "apache", + "extensions": [ + "kpxx" + ] + }, + "application/vnd.dtg.local": { + "source": "iana" + }, + "application/vnd.dtg.local.flash": { + "source": "iana" + }, + "application/vnd.dtg.local.html": { + "source": "iana" + }, + "application/vnd.dvb.ait": { + "source": "iana", + "extensions": [ + "ait" + ] + }, + "application/vnd.dvb.dvbisl+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.dvbj": { + "source": "iana" + }, + "application/vnd.dvb.esgcontainer": { + "source": "iana" + }, + "application/vnd.dvb.ipdcdftnotifaccess": { + "source": "iana" + }, + "application/vnd.dvb.ipdcesgaccess": { + "source": "iana" + }, + "application/vnd.dvb.ipdcesgaccess2": { + "source": "iana" + }, + "application/vnd.dvb.ipdcesgpdd": { + "source": "iana" + }, + "application/vnd.dvb.ipdcroaming": { + "source": "iana" + }, + "application/vnd.dvb.iptv.alfec-base": { + "source": "iana" + }, + "application/vnd.dvb.iptv.alfec-enhancement": { + "source": "iana" + }, + "application/vnd.dvb.notif-aggregate-root+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.notif-container+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.notif-generic+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.notif-ia-msglist+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.notif-ia-registration-request+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.notif-ia-registration-response+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.notif-init+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.dvb.pfr": { + "source": "iana" + }, + "application/vnd.dvb.service": { + "source": "iana", + "extensions": [ + "svc" + ] + }, + "application/vnd.dxr": { + "source": "iana" + }, + "application/vnd.dynageo": { + "source": "iana", + "extensions": [ + "geo" + ] + }, + "application/vnd.dzr": { + "source": "iana" + }, + "application/vnd.easykaraoke.cdgdownload": { + "source": "iana" + }, + "application/vnd.ecdis-update": { + "source": "iana" + }, + "application/vnd.ecip.rlp": { + "source": "iana" + }, + "application/vnd.eclipse.ditto+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ecowin.chart": { + "source": "iana", + "extensions": [ + "mag" + ] + }, + "application/vnd.ecowin.filerequest": { + "source": "iana" + }, + "application/vnd.ecowin.fileupdate": { + "source": "iana" + }, + "application/vnd.ecowin.series": { + "source": "iana" + }, + "application/vnd.ecowin.seriesrequest": { + "source": "iana" + }, + "application/vnd.ecowin.seriesupdate": { + "source": "iana" + }, + "application/vnd.efi.img": { + "source": "iana" + }, + "application/vnd.efi.iso": { + "source": "iana" + }, + "application/vnd.emclient.accessrequest+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.enliven": { + "source": "iana", + "extensions": [ + "nml" + ] + }, + "application/vnd.enphase.envoy": { + "source": "iana" + }, + "application/vnd.eprints.data+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.epson.esf": { + "source": "iana", + "extensions": [ + "esf" + ] + }, + "application/vnd.epson.msf": { + "source": "iana", + "extensions": [ + "msf" + ] + }, + "application/vnd.epson.quickanime": { + "source": "iana", + "extensions": [ + "qam" + ] + }, + "application/vnd.epson.salt": { + "source": "iana", + "extensions": [ + "slt" + ] + }, + "application/vnd.epson.ssf": { + "source": "iana", + "extensions": [ + "ssf" + ] + }, + "application/vnd.ericsson.quickcall": { + "source": "iana" + }, + "application/vnd.espass-espass+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.eszigno3+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "es3", + "et3" + ] + }, + "application/vnd.etsi.aoc+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.asic-e+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.etsi.asic-s+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.etsi.cug+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvcommand+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvdiscovery+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvprofile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvsad-bc+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvsad-cod+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvsad-npvr+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvservice+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvsync+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.iptvueprofile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.mcid+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.mheg5": { + "source": "iana" + }, + "application/vnd.etsi.overload-control-policy-dataset+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.pstn+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.sci+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.simservs+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.timestamp-token": { + "source": "iana" + }, + "application/vnd.etsi.tsl+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.etsi.tsl.der": { + "source": "iana" + }, + "application/vnd.eu.kasparian.car+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.eudora.data": { + "source": "iana" + }, + "application/vnd.evolv.ecig.profile": { + "source": "iana" + }, + "application/vnd.evolv.ecig.settings": { + "source": "iana" + }, + "application/vnd.evolv.ecig.theme": { + "source": "iana" + }, + "application/vnd.exstream-empower+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.exstream-package": { + "source": "iana" + }, + "application/vnd.ezpix-album": { + "source": "iana", + "extensions": [ + "ez2" + ] + }, + "application/vnd.ezpix-package": { + "source": "iana", + "extensions": [ + "ez3" + ] + }, + "application/vnd.f-secure.mobile": { + "source": "iana" + }, + "application/vnd.familysearch.gedcom+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.fastcopy-disk-image": { + "source": "iana" + }, + "application/vnd.fdf": { + "source": "iana", + "extensions": [ + "fdf" + ] + }, + "application/vnd.fdsn.mseed": { + "source": "iana", + "extensions": [ + "mseed" + ] + }, + "application/vnd.fdsn.seed": { + "source": "iana", + "extensions": [ + "seed", + "dataless" + ] + }, + "application/vnd.ffsns": { + "source": "iana" + }, + "application/vnd.ficlab.flb+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.filmit.zfc": { + "source": "iana" + }, + "application/vnd.fints": { + "source": "iana" + }, + "application/vnd.firemonkeys.cloudcell": { + "source": "iana" + }, + "application/vnd.flographit": { + "source": "iana", + "extensions": [ + "gph" + ] + }, + "application/vnd.fluxtime.clip": { + "source": "iana", + "extensions": [ + "ftc" + ] + }, + "application/vnd.font-fontforge-sfd": { + "source": "iana" + }, + "application/vnd.framemaker": { + "source": "iana", + "extensions": [ + "fm", + "frame", + "maker", + "book" + ] + }, + "application/vnd.frogans.fnc": { + "source": "iana", + "extensions": [ + "fnc" + ] + }, + "application/vnd.frogans.ltf": { + "source": "iana", + "extensions": [ + "ltf" + ] + }, + "application/vnd.fsc.weblaunch": { + "source": "iana", + "extensions": [ + "fsc" + ] + }, + "application/vnd.fujifilm.fb.docuworks": { + "source": "iana" + }, + "application/vnd.fujifilm.fb.docuworks.binder": { + "source": "iana" + }, + "application/vnd.fujifilm.fb.docuworks.container": { + "source": "iana" + }, + "application/vnd.fujifilm.fb.jfi+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.fujitsu.oasys": { + "source": "iana", + "extensions": [ + "oas" + ] + }, + "application/vnd.fujitsu.oasys2": { + "source": "iana", + "extensions": [ + "oa2" + ] + }, + "application/vnd.fujitsu.oasys3": { + "source": "iana", + "extensions": [ + "oa3" + ] + }, + "application/vnd.fujitsu.oasysgp": { + "source": "iana", + "extensions": [ + "fg5" + ] + }, + "application/vnd.fujitsu.oasysprs": { + "source": "iana", + "extensions": [ + "bh2" + ] + }, + "application/vnd.fujixerox.art-ex": { + "source": "iana" + }, + "application/vnd.fujixerox.art4": { + "source": "iana" + }, + "application/vnd.fujixerox.ddd": { + "source": "iana", + "extensions": [ + "ddd" + ] + }, + "application/vnd.fujixerox.docuworks": { + "source": "iana", + "extensions": [ + "xdw" + ] + }, + "application/vnd.fujixerox.docuworks.binder": { + "source": "iana", + "extensions": [ + "xbd" + ] + }, + "application/vnd.fujixerox.docuworks.container": { + "source": "iana" + }, + "application/vnd.fujixerox.hbpl": { + "source": "iana" + }, + "application/vnd.fut-misnet": { + "source": "iana" + }, + "application/vnd.futoin+cbor": { + "source": "iana" + }, + "application/vnd.futoin+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.fuzzysheet": { + "source": "iana", + "extensions": [ + "fzs" + ] + }, + "application/vnd.genomatix.tuxedo": { + "source": "iana", + "extensions": [ + "txd" + ] + }, + "application/vnd.gentics.grd+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.geo+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.geocube+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.geogebra.file": { + "source": "iana", + "extensions": [ + "ggb" + ] + }, + "application/vnd.geogebra.slides": { + "source": "iana" + }, + "application/vnd.geogebra.tool": { + "source": "iana", + "extensions": [ + "ggt" + ] + }, + "application/vnd.geometry-explorer": { + "source": "iana", + "extensions": [ + "gex", + "gre" + ] + }, + "application/vnd.geonext": { + "source": "iana", + "extensions": [ + "gxt" + ] + }, + "application/vnd.geoplan": { + "source": "iana", + "extensions": [ + "g2w" + ] + }, + "application/vnd.geospace": { + "source": "iana", + "extensions": [ + "g3w" + ] + }, + "application/vnd.gerber": { + "source": "iana" + }, + "application/vnd.globalplatform.card-content-mgt": { + "source": "iana" + }, + "application/vnd.globalplatform.card-content-mgt-response": { + "source": "iana" + }, + "application/vnd.gmx": { + "source": "iana", + "extensions": [ + "gmx" + ] + }, + "application/vnd.google-apps.document": { + "compressible": false, + "extensions": [ + "gdoc" + ] + }, + "application/vnd.google-apps.presentation": { + "compressible": false, + "extensions": [ + "gslides" + ] + }, + "application/vnd.google-apps.spreadsheet": { + "compressible": false, + "extensions": [ + "gsheet" + ] + }, + "application/vnd.google-earth.kml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "kml" + ] + }, + "application/vnd.google-earth.kmz": { + "source": "iana", + "compressible": false, + "extensions": [ + "kmz" + ] + }, + "application/vnd.gov.sk.e-form+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.gov.sk.e-form+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.gov.sk.xmldatacontainer+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.grafeq": { + "source": "iana", + "extensions": [ + "gqf", + "gqs" + ] + }, + "application/vnd.gridmp": { + "source": "iana" + }, + "application/vnd.groove-account": { + "source": "iana", + "extensions": [ + "gac" + ] + }, + "application/vnd.groove-help": { + "source": "iana", + "extensions": [ + "ghf" + ] + }, + "application/vnd.groove-identity-message": { + "source": "iana", + "extensions": [ + "gim" + ] + }, + "application/vnd.groove-injector": { + "source": "iana", + "extensions": [ + "grv" + ] + }, + "application/vnd.groove-tool-message": { + "source": "iana", + "extensions": [ + "gtm" + ] + }, + "application/vnd.groove-tool-template": { + "source": "iana", + "extensions": [ + "tpl" + ] + }, + "application/vnd.groove-vcard": { + "source": "iana", + "extensions": [ + "vcg" + ] + }, + "application/vnd.hal+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.hal+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "hal" + ] + }, + "application/vnd.handheld-entertainment+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "zmm" + ] + }, + "application/vnd.hbci": { + "source": "iana", + "extensions": [ + "hbci" + ] + }, + "application/vnd.hc+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.hcl-bireports": { + "source": "iana" + }, + "application/vnd.hdt": { + "source": "iana" + }, + "application/vnd.heroku+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.hhe.lesson-player": { + "source": "iana", + "extensions": [ + "les" + ] + }, + "application/vnd.hl7cda+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/vnd.hl7v2+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/vnd.hp-hpgl": { + "source": "iana", + "extensions": [ + "hpgl" + ] + }, + "application/vnd.hp-hpid": { + "source": "iana", + "extensions": [ + "hpid" + ] + }, + "application/vnd.hp-hps": { + "source": "iana", + "extensions": [ + "hps" + ] + }, + "application/vnd.hp-jlyt": { + "source": "iana", + "extensions": [ + "jlt" + ] + }, + "application/vnd.hp-pcl": { + "source": "iana", + "extensions": [ + "pcl" + ] + }, + "application/vnd.hp-pclxl": { + "source": "iana", + "extensions": [ + "pclxl" + ] + }, + "application/vnd.httphone": { + "source": "iana" + }, + "application/vnd.hydrostatix.sof-data": { + "source": "iana", + "extensions": [ + "sfd-hdstx" + ] + }, + "application/vnd.hyper+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.hyper-item+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.hyperdrive+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.hzn-3d-crossword": { + "source": "iana" + }, + "application/vnd.ibm.afplinedata": { + "source": "iana" + }, + "application/vnd.ibm.electronic-media": { + "source": "iana" + }, + "application/vnd.ibm.minipay": { + "source": "iana", + "extensions": [ + "mpy" + ] + }, + "application/vnd.ibm.modcap": { + "source": "iana", + "extensions": [ + "afp", + "listafp", + "list3820" + ] + }, + "application/vnd.ibm.rights-management": { + "source": "iana", + "extensions": [ + "irm" + ] + }, + "application/vnd.ibm.secure-container": { + "source": "iana", + "extensions": [ + "sc" + ] + }, + "application/vnd.iccprofile": { + "source": "iana", + "extensions": [ + "icc", + "icm" + ] + }, + "application/vnd.ieee.1905": { + "source": "iana" + }, + "application/vnd.igloader": { + "source": "iana", + "extensions": [ + "igl" + ] + }, + "application/vnd.imagemeter.folder+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.imagemeter.image+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.immervision-ivp": { + "source": "iana", + "extensions": [ + "ivp" + ] + }, + "application/vnd.immervision-ivu": { + "source": "iana", + "extensions": [ + "ivu" + ] + }, + "application/vnd.ims.imsccv1p1": { + "source": "iana" + }, + "application/vnd.ims.imsccv1p2": { + "source": "iana" + }, + "application/vnd.ims.imsccv1p3": { + "source": "iana" + }, + "application/vnd.ims.lis.v2.result+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ims.lti.v2.toolconsumerprofile+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ims.lti.v2.toolproxy+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ims.lti.v2.toolproxy.id+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ims.lti.v2.toolsettings+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ims.lti.v2.toolsettings.simple+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.informedcontrol.rms+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.informix-visionary": { + "source": "iana" + }, + "application/vnd.infotech.project": { + "source": "iana" + }, + "application/vnd.infotech.project+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.innopath.wamp.notification": { + "source": "iana" + }, + "application/vnd.insors.igm": { + "source": "iana", + "extensions": [ + "igm" + ] + }, + "application/vnd.intercon.formnet": { + "source": "iana", + "extensions": [ + "xpw", + "xpx" + ] + }, + "application/vnd.intergeo": { + "source": "iana", + "extensions": [ + "i2g" + ] + }, + "application/vnd.intertrust.digibox": { + "source": "iana" + }, + "application/vnd.intertrust.nncp": { + "source": "iana" + }, + "application/vnd.intu.qbo": { + "source": "iana", + "extensions": [ + "qbo" + ] + }, + "application/vnd.intu.qfx": { + "source": "iana", + "extensions": [ + "qfx" + ] + }, + "application/vnd.iptc.g2.catalogitem+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.iptc.g2.conceptitem+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.iptc.g2.knowledgeitem+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.iptc.g2.newsitem+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.iptc.g2.newsmessage+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.iptc.g2.packageitem+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.iptc.g2.planningitem+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.ipunplugged.rcprofile": { + "source": "iana", + "extensions": [ + "rcprofile" + ] + }, + "application/vnd.irepository.package+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "irp" + ] + }, + "application/vnd.is-xpr": { + "source": "iana", + "extensions": [ + "xpr" + ] + }, + "application/vnd.isac.fcs": { + "source": "iana", + "extensions": [ + "fcs" + ] + }, + "application/vnd.iso11783-10+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.jam": { + "source": "iana", + "extensions": [ + "jam" + ] + }, + "application/vnd.japannet-directory-service": { + "source": "iana" + }, + "application/vnd.japannet-jpnstore-wakeup": { + "source": "iana" + }, + "application/vnd.japannet-payment-wakeup": { + "source": "iana" + }, + "application/vnd.japannet-registration": { + "source": "iana" + }, + "application/vnd.japannet-registration-wakeup": { + "source": "iana" + }, + "application/vnd.japannet-setstore-wakeup": { + "source": "iana" + }, + "application/vnd.japannet-verification": { + "source": "iana" + }, + "application/vnd.japannet-verification-wakeup": { + "source": "iana" + }, + "application/vnd.jcp.javame.midlet-rms": { + "source": "iana", + "extensions": [ + "rms" + ] + }, + "application/vnd.jisp": { + "source": "iana", + "extensions": [ + "jisp" + ] + }, + "application/vnd.joost.joda-archive": { + "source": "iana", + "extensions": [ + "joda" + ] + }, + "application/vnd.jsk.isdn-ngn": { + "source": "iana" + }, + "application/vnd.kahootz": { + "source": "iana", + "extensions": [ + "ktz", + "ktr" + ] + }, + "application/vnd.kde.karbon": { + "source": "iana", + "extensions": [ + "karbon" + ] + }, + "application/vnd.kde.kchart": { + "source": "iana", + "extensions": [ + "chrt" + ] + }, + "application/vnd.kde.kformula": { + "source": "iana", + "extensions": [ + "kfo" + ] + }, + "application/vnd.kde.kivio": { + "source": "iana", + "extensions": [ + "flw" + ] + }, + "application/vnd.kde.kontour": { + "source": "iana", + "extensions": [ + "kon" + ] + }, + "application/vnd.kde.kpresenter": { + "source": "iana", + "extensions": [ + "kpr", + "kpt" + ] + }, + "application/vnd.kde.kspread": { + "source": "iana", + "extensions": [ + "ksp" + ] + }, + "application/vnd.kde.kword": { + "source": "iana", + "extensions": [ + "kwd", + "kwt" + ] + }, + "application/vnd.kenameaapp": { + "source": "iana", + "extensions": [ + "htke" + ] + }, + "application/vnd.kidspiration": { + "source": "iana", + "extensions": [ + "kia" + ] + }, + "application/vnd.kinar": { + "source": "iana", + "extensions": [ + "kne", + "knp" + ] + }, + "application/vnd.koan": { + "source": "iana", + "extensions": [ + "skp", + "skd", + "skt", + "skm" + ] + }, + "application/vnd.kodak-descriptor": { + "source": "iana", + "extensions": [ + "sse" + ] + }, + "application/vnd.las": { + "source": "iana" + }, + "application/vnd.las.las+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.las.las+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "lasxml" + ] + }, + "application/vnd.laszip": { + "source": "iana" + }, + "application/vnd.leap+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.liberty-request+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.llamagraphics.life-balance.desktop": { + "source": "iana", + "extensions": [ + "lbd" + ] + }, + "application/vnd.llamagraphics.life-balance.exchange+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "lbe" + ] + }, + "application/vnd.logipipe.circuit+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.loom": { + "source": "iana" + }, + "application/vnd.lotus-1-2-3": { + "source": "iana", + "extensions": [ + "123" + ] + }, + "application/vnd.lotus-approach": { + "source": "iana", + "extensions": [ + "apr" + ] + }, + "application/vnd.lotus-freelance": { + "source": "iana", + "extensions": [ + "pre" + ] + }, + "application/vnd.lotus-notes": { + "source": "iana", + "extensions": [ + "nsf" + ] + }, + "application/vnd.lotus-organizer": { + "source": "iana", + "extensions": [ + "org" + ] + }, + "application/vnd.lotus-screencam": { + "source": "iana", + "extensions": [ + "scm" + ] + }, + "application/vnd.lotus-wordpro": { + "source": "iana", + "extensions": [ + "lwp" + ] + }, + "application/vnd.macports.portpkg": { + "source": "iana", + "extensions": [ + "portpkg" + ] + }, + "application/vnd.mapbox-vector-tile": { + "source": "iana", + "extensions": [ + "mvt" + ] + }, + "application/vnd.marlin.drm.actiontoken+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.marlin.drm.conftoken+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.marlin.drm.license+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.marlin.drm.mdcf": { + "source": "iana" + }, + "application/vnd.mason+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.maxar.archive.3tz+zip": { + "source": "iana", + "compressible": false + }, + "application/vnd.maxmind.maxmind-db": { + "source": "iana" + }, + "application/vnd.mcd": { + "source": "iana", + "extensions": [ + "mcd" + ] + }, + "application/vnd.medcalcdata": { + "source": "iana", + "extensions": [ + "mc1" + ] + }, + "application/vnd.mediastation.cdkey": { + "source": "iana", + "extensions": [ + "cdkey" + ] + }, + "application/vnd.meridian-slingshot": { + "source": "iana" + }, + "application/vnd.mfer": { + "source": "iana", + "extensions": [ + "mwf" + ] + }, + "application/vnd.mfmp": { + "source": "iana", + "extensions": [ + "mfm" + ] + }, + "application/vnd.micro+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.micrografx.flo": { + "source": "iana", + "extensions": [ + "flo" + ] + }, + "application/vnd.micrografx.igx": { + "source": "iana", + "extensions": [ + "igx" + ] + }, + "application/vnd.microsoft.portable-executable": { + "source": "iana" + }, + "application/vnd.microsoft.windows.thumbnail-cache": { + "source": "iana" + }, + "application/vnd.miele+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.mif": { + "source": "iana", + "extensions": [ + "mif" + ] + }, + "application/vnd.minisoft-hp3000-save": { + "source": "iana" + }, + "application/vnd.mitsubishi.misty-guard.trustweb": { + "source": "iana" + }, + "application/vnd.mobius.daf": { + "source": "iana", + "extensions": [ + "daf" + ] + }, + "application/vnd.mobius.dis": { + "source": "iana", + "extensions": [ + "dis" + ] + }, + "application/vnd.mobius.mbk": { + "source": "iana", + "extensions": [ + "mbk" + ] + }, + "application/vnd.mobius.mqy": { + "source": "iana", + "extensions": [ + "mqy" + ] + }, + "application/vnd.mobius.msl": { + "source": "iana", + "extensions": [ + "msl" + ] + }, + "application/vnd.mobius.plc": { + "source": "iana", + "extensions": [ + "plc" + ] + }, + "application/vnd.mobius.txf": { + "source": "iana", + "extensions": [ + "txf" + ] + }, + "application/vnd.mophun.application": { + "source": "iana", + "extensions": [ + "mpn" + ] + }, + "application/vnd.mophun.certificate": { + "source": "iana", + "extensions": [ + "mpc" + ] + }, + "application/vnd.motorola.flexsuite": { + "source": "iana" + }, + "application/vnd.motorola.flexsuite.adsi": { + "source": "iana" + }, + "application/vnd.motorola.flexsuite.fis": { + "source": "iana" + }, + "application/vnd.motorola.flexsuite.gotap": { + "source": "iana" + }, + "application/vnd.motorola.flexsuite.kmr": { + "source": "iana" + }, + "application/vnd.motorola.flexsuite.ttc": { + "source": "iana" + }, + "application/vnd.motorola.flexsuite.wem": { + "source": "iana" + }, + "application/vnd.motorola.iprm": { + "source": "iana" + }, + "application/vnd.mozilla.xul+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xul" + ] + }, + "application/vnd.ms-3mfdocument": { + "source": "iana" + }, + "application/vnd.ms-artgalry": { + "source": "iana", + "extensions": [ + "cil" + ] + }, + "application/vnd.ms-asf": { + "source": "iana" + }, + "application/vnd.ms-cab-compressed": { + "source": "iana", + "extensions": [ + "cab" + ] + }, + "application/vnd.ms-color.iccprofile": { + "source": "apache" + }, + "application/vnd.ms-excel": { + "source": "iana", + "compressible": false, + "extensions": [ + "xls", + "xlm", + "xla", + "xlc", + "xlt", + "xlw" + ] + }, + "application/vnd.ms-excel.addin.macroenabled.12": { + "source": "iana", + "extensions": [ + "xlam" + ] + }, + "application/vnd.ms-excel.sheet.binary.macroenabled.12": { + "source": "iana", + "extensions": [ + "xlsb" + ] + }, + "application/vnd.ms-excel.sheet.macroenabled.12": { + "source": "iana", + "extensions": [ + "xlsm" + ] + }, + "application/vnd.ms-excel.template.macroenabled.12": { + "source": "iana", + "extensions": [ + "xltm" + ] + }, + "application/vnd.ms-fontobject": { + "source": "iana", + "compressible": true, + "extensions": [ + "eot" + ] + }, + "application/vnd.ms-htmlhelp": { + "source": "iana", + "extensions": [ + "chm" + ] + }, + "application/vnd.ms-ims": { + "source": "iana", + "extensions": [ + "ims" + ] + }, + "application/vnd.ms-lrm": { + "source": "iana", + "extensions": [ + "lrm" + ] + }, + "application/vnd.ms-office.activex+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.ms-officetheme": { + "source": "iana", + "extensions": [ + "thmx" + ] + }, + "application/vnd.ms-opentype": { + "source": "apache", + "compressible": true + }, + "application/vnd.ms-outlook": { + "compressible": false, + "extensions": [ + "msg" + ] + }, + "application/vnd.ms-package.obfuscated-opentype": { + "source": "apache" + }, + "application/vnd.ms-pki.seccat": { + "source": "apache", + "extensions": [ + "cat" + ] + }, + "application/vnd.ms-pki.stl": { + "source": "apache", + "extensions": [ + "stl" + ] + }, + "application/vnd.ms-playready.initiator+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.ms-powerpoint": { + "source": "iana", + "compressible": false, + "extensions": [ + "ppt", + "pps", + "pot" + ] + }, + "application/vnd.ms-powerpoint.addin.macroenabled.12": { + "source": "iana", + "extensions": [ + "ppam" + ] + }, + "application/vnd.ms-powerpoint.presentation.macroenabled.12": { + "source": "iana", + "extensions": [ + "pptm" + ] + }, + "application/vnd.ms-powerpoint.slide.macroenabled.12": { + "source": "iana", + "extensions": [ + "sldm" + ] + }, + "application/vnd.ms-powerpoint.slideshow.macroenabled.12": { + "source": "iana", + "extensions": [ + "ppsm" + ] + }, + "application/vnd.ms-powerpoint.template.macroenabled.12": { + "source": "iana", + "extensions": [ + "potm" + ] + }, + "application/vnd.ms-printdevicecapabilities+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.ms-printing.printticket+xml": { + "source": "apache", + "compressible": true + }, + "application/vnd.ms-printschematicket+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.ms-project": { + "source": "iana", + "extensions": [ + "mpp", + "mpt" + ] + }, + "application/vnd.ms-tnef": { + "source": "iana" + }, + "application/vnd.ms-windows.devicepairing": { + "source": "iana" + }, + "application/vnd.ms-windows.nwprinting.oob": { + "source": "iana" + }, + "application/vnd.ms-windows.printerpairing": { + "source": "iana" + }, + "application/vnd.ms-windows.wsd.oob": { + "source": "iana" + }, + "application/vnd.ms-wmdrm.lic-chlg-req": { + "source": "iana" + }, + "application/vnd.ms-wmdrm.lic-resp": { + "source": "iana" + }, + "application/vnd.ms-wmdrm.meter-chlg-req": { + "source": "iana" + }, + "application/vnd.ms-wmdrm.meter-resp": { + "source": "iana" + }, + "application/vnd.ms-word.document.macroenabled.12": { + "source": "iana", + "extensions": [ + "docm" + ] + }, + "application/vnd.ms-word.template.macroenabled.12": { + "source": "iana", + "extensions": [ + "dotm" + ] + }, + "application/vnd.ms-works": { + "source": "iana", + "extensions": [ + "wps", + "wks", + "wcm", + "wdb" + ] + }, + "application/vnd.ms-wpl": { + "source": "iana", + "extensions": [ + "wpl" + ] + }, + "application/vnd.ms-xpsdocument": { + "source": "iana", + "compressible": false, + "extensions": [ + "xps" + ] + }, + "application/vnd.msa-disk-image": { + "source": "iana" + }, + "application/vnd.mseq": { + "source": "iana", + "extensions": [ + "mseq" + ] + }, + "application/vnd.msign": { + "source": "iana" + }, + "application/vnd.multiad.creator": { + "source": "iana" + }, + "application/vnd.multiad.creator.cif": { + "source": "iana" + }, + "application/vnd.music-niff": { + "source": "iana" + }, + "application/vnd.musician": { + "source": "iana", + "extensions": [ + "mus" + ] + }, + "application/vnd.muvee.style": { + "source": "iana", + "extensions": [ + "msty" + ] + }, + "application/vnd.mynfc": { + "source": "iana", + "extensions": [ + "taglet" + ] + }, + "application/vnd.nacamar.ybrid+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.ncd.control": { + "source": "iana" + }, + "application/vnd.ncd.reference": { + "source": "iana" + }, + "application/vnd.nearst.inv+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.nebumind.line": { + "source": "iana" + }, + "application/vnd.nervana": { + "source": "iana" + }, + "application/vnd.netfpx": { + "source": "iana" + }, + "application/vnd.neurolanguage.nlu": { + "source": "iana", + "extensions": [ + "nlu" + ] + }, + "application/vnd.nimn": { + "source": "iana" + }, + "application/vnd.nintendo.nitro.rom": { + "source": "iana" + }, + "application/vnd.nintendo.snes.rom": { + "source": "iana" + }, + "application/vnd.nitf": { + "source": "iana", + "extensions": [ + "ntf", + "nitf" + ] + }, + "application/vnd.noblenet-directory": { + "source": "iana", + "extensions": [ + "nnd" + ] + }, + "application/vnd.noblenet-sealer": { + "source": "iana", + "extensions": [ + "nns" + ] + }, + "application/vnd.noblenet-web": { + "source": "iana", + "extensions": [ + "nnw" + ] + }, + "application/vnd.nokia.catalogs": { + "source": "iana" + }, + "application/vnd.nokia.conml+wbxml": { + "source": "iana" + }, + "application/vnd.nokia.conml+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.nokia.iptv.config+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.nokia.isds-radio-presets": { + "source": "iana" + }, + "application/vnd.nokia.landmark+wbxml": { + "source": "iana" + }, + "application/vnd.nokia.landmark+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.nokia.landmarkcollection+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.nokia.n-gage.ac+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "ac" + ] + }, + "application/vnd.nokia.n-gage.data": { + "source": "iana", + "extensions": [ + "ngdat" + ] + }, + "application/vnd.nokia.n-gage.symbian.install": { + "source": "iana", + "extensions": [ + "n-gage" + ] + }, + "application/vnd.nokia.ncd": { + "source": "iana" + }, + "application/vnd.nokia.pcd+wbxml": { + "source": "iana" + }, + "application/vnd.nokia.pcd+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.nokia.radio-preset": { + "source": "iana", + "extensions": [ + "rpst" + ] + }, + "application/vnd.nokia.radio-presets": { + "source": "iana", + "extensions": [ + "rpss" + ] + }, + "application/vnd.novadigm.edm": { + "source": "iana", + "extensions": [ + "edm" + ] + }, + "application/vnd.novadigm.edx": { + "source": "iana", + "extensions": [ + "edx" + ] + }, + "application/vnd.novadigm.ext": { + "source": "iana", + "extensions": [ + "ext" + ] + }, + "application/vnd.ntt-local.content-share": { + "source": "iana" + }, + "application/vnd.ntt-local.file-transfer": { + "source": "iana" + }, + "application/vnd.ntt-local.ogw_remote-access": { + "source": "iana" + }, + "application/vnd.ntt-local.sip-ta_remote": { + "source": "iana" + }, + "application/vnd.ntt-local.sip-ta_tcp_stream": { + "source": "iana" + }, + "application/vnd.oasis.opendocument.chart": { + "source": "iana", + "extensions": [ + "odc" + ] + }, + "application/vnd.oasis.opendocument.chart-template": { + "source": "iana", + "extensions": [ + "otc" + ] + }, + "application/vnd.oasis.opendocument.database": { + "source": "iana", + "extensions": [ + "odb" + ] + }, + "application/vnd.oasis.opendocument.formula": { + "source": "iana", + "extensions": [ + "odf" + ] + }, + "application/vnd.oasis.opendocument.formula-template": { + "source": "iana", + "extensions": [ + "odft" + ] + }, + "application/vnd.oasis.opendocument.graphics": { + "source": "iana", + "compressible": false, + "extensions": [ + "odg" + ] + }, + "application/vnd.oasis.opendocument.graphics-template": { + "source": "iana", + "extensions": [ + "otg" + ] + }, + "application/vnd.oasis.opendocument.image": { + "source": "iana", + "extensions": [ + "odi" + ] + }, + "application/vnd.oasis.opendocument.image-template": { + "source": "iana", + "extensions": [ + "oti" + ] + }, + "application/vnd.oasis.opendocument.presentation": { + "source": "iana", + "compressible": false, + "extensions": [ + "odp" + ] + }, + "application/vnd.oasis.opendocument.presentation-template": { + "source": "iana", + "extensions": [ + "otp" + ] + }, + "application/vnd.oasis.opendocument.spreadsheet": { + "source": "iana", + "compressible": false, + "extensions": [ + "ods" + ] + }, + "application/vnd.oasis.opendocument.spreadsheet-template": { + "source": "iana", + "extensions": [ + "ots" + ] + }, + "application/vnd.oasis.opendocument.text": { + "source": "iana", + "compressible": false, + "extensions": [ + "odt" + ] + }, + "application/vnd.oasis.opendocument.text-master": { + "source": "iana", + "extensions": [ + "odm" + ] + }, + "application/vnd.oasis.opendocument.text-template": { + "source": "iana", + "extensions": [ + "ott" + ] + }, + "application/vnd.oasis.opendocument.text-web": { + "source": "iana", + "extensions": [ + "oth" + ] + }, + "application/vnd.obn": { + "source": "iana" + }, + "application/vnd.ocf+cbor": { + "source": "iana" + }, + "application/vnd.oci.image.manifest.v1+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.oftn.l10n+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.contentaccessdownload+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.contentaccessstreaming+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.cspg-hexbinary": { + "source": "iana" + }, + "application/vnd.oipf.dae.svg+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.dae.xhtml+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.mippvcontrolmessage+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.pae.gem": { + "source": "iana" + }, + "application/vnd.oipf.spdiscovery+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.spdlist+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.ueprofile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oipf.userprofile+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.olpc-sugar": { + "source": "iana", + "extensions": [ + "xo" + ] + }, + "application/vnd.oma-scws-config": { + "source": "iana" + }, + "application/vnd.oma-scws-http-request": { + "source": "iana" + }, + "application/vnd.oma-scws-http-response": { + "source": "iana" + }, + "application/vnd.oma.bcast.associated-procedure-parameter+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.drm-trigger+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.imd+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.ltkm": { + "source": "iana" + }, + "application/vnd.oma.bcast.notification+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.provisioningtrigger": { + "source": "iana" + }, + "application/vnd.oma.bcast.sgboot": { + "source": "iana" + }, + "application/vnd.oma.bcast.sgdd+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.sgdu": { + "source": "iana" + }, + "application/vnd.oma.bcast.simple-symbol-container": { + "source": "iana" + }, + "application/vnd.oma.bcast.smartcard-trigger+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.sprov+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.bcast.stkm": { + "source": "iana" + }, + "application/vnd.oma.cab-address-book+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.cab-feature-handler+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.cab-pcc+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.cab-subs-invite+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.cab-user-prefs+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.dcd": { + "source": "iana" + }, + "application/vnd.oma.dcdc": { + "source": "iana" + }, + "application/vnd.oma.dd2+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "dd2" + ] + }, + "application/vnd.oma.drm.risd+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.group-usage-list+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.lwm2m+cbor": { + "source": "iana" + }, + "application/vnd.oma.lwm2m+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.lwm2m+tlv": { + "source": "iana" + }, + "application/vnd.oma.pal+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.poc.detailed-progress-report+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.poc.final-report+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.poc.groups+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.poc.invocation-descriptor+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.poc.optimized-progress-report+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.push": { + "source": "iana" + }, + "application/vnd.oma.scidm.messages+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oma.xcap-directory+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.omads-email+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/vnd.omads-file+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/vnd.omads-folder+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/vnd.omaloc-supl-init": { + "source": "iana" + }, + "application/vnd.onepager": { + "source": "iana" + }, + "application/vnd.onepagertamp": { + "source": "iana" + }, + "application/vnd.onepagertamx": { + "source": "iana" + }, + "application/vnd.onepagertat": { + "source": "iana" + }, + "application/vnd.onepagertatp": { + "source": "iana" + }, + "application/vnd.onepagertatx": { + "source": "iana" + }, + "application/vnd.openblox.game+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "obgx" + ] + }, + "application/vnd.openblox.game-binary": { + "source": "iana" + }, + "application/vnd.openeye.oeb": { + "source": "iana" + }, + "application/vnd.openofficeorg.extension": { + "source": "apache", + "extensions": [ + "oxt" + ] + }, + "application/vnd.openstreetmap.data+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "osm" + ] + }, + "application/vnd.opentimestamps.ots": { + "source": "iana" + }, + "application/vnd.openxmlformats-officedocument.custom-properties+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.customxmlproperties+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawing+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.extended-properties+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.comments+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.presentation": { + "source": "iana", + "compressible": false, + "extensions": [ + "pptx" + ] + }, + "application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.presprops+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slide": { + "source": "iana", + "extensions": [ + "sldx" + ] + }, + "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slideshow": { + "source": "iana", + "extensions": [ + "ppsx" + ] + }, + "application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.tags+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.template": { + "source": "iana", + "extensions": [ + "potx" + ] + }, + "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "source": "iana", + "compressible": false, + "extensions": [ + "xlsx" + ] + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.template": { + "source": "iana", + "extensions": [ + "xltx" + ] + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.theme+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.themeoverride+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.vmldrawing": { + "source": "iana" + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.document": { + "source": "iana", + "compressible": false, + "extensions": [ + "docx" + ] + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.template": { + "source": "iana", + "extensions": [ + "dotx" + ] + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-package.core-properties+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.openxmlformats-package.relationships+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oracle.resource+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.orange.indata": { + "source": "iana" + }, + "application/vnd.osa.netdeploy": { + "source": "iana" + }, + "application/vnd.osgeo.mapguide.package": { + "source": "iana", + "extensions": [ + "mgp" + ] + }, + "application/vnd.osgi.bundle": { + "source": "iana" + }, + "application/vnd.osgi.dp": { + "source": "iana", + "extensions": [ + "dp" + ] + }, + "application/vnd.osgi.subsystem": { + "source": "iana", + "extensions": [ + "esa" + ] + }, + "application/vnd.otps.ct-kip+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.oxli.countgraph": { + "source": "iana" + }, + "application/vnd.pagerduty+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.palm": { + "source": "iana", + "extensions": [ + "pdb", + "pqa", + "oprc" + ] + }, + "application/vnd.panoply": { + "source": "iana" + }, + "application/vnd.paos.xml": { + "source": "iana" + }, + "application/vnd.patentdive": { + "source": "iana" + }, + "application/vnd.patientecommsdoc": { + "source": "iana" + }, + "application/vnd.pawaafile": { + "source": "iana", + "extensions": [ + "paw" + ] + }, + "application/vnd.pcos": { + "source": "iana" + }, + "application/vnd.pg.format": { + "source": "iana", + "extensions": [ + "str" + ] + }, + "application/vnd.pg.osasli": { + "source": "iana", + "extensions": [ + "ei6" + ] + }, + "application/vnd.piaccess.application-licence": { + "source": "iana" + }, + "application/vnd.picsel": { + "source": "iana", + "extensions": [ + "efif" + ] + }, + "application/vnd.pmi.widget": { + "source": "iana", + "extensions": [ + "wg" + ] + }, + "application/vnd.poc.group-advertisement+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.pocketlearn": { + "source": "iana", + "extensions": [ + "plf" + ] + }, + "application/vnd.powerbuilder6": { + "source": "iana", + "extensions": [ + "pbd" + ] + }, + "application/vnd.powerbuilder6-s": { + "source": "iana" + }, + "application/vnd.powerbuilder7": { + "source": "iana" + }, + "application/vnd.powerbuilder7-s": { + "source": "iana" + }, + "application/vnd.powerbuilder75": { + "source": "iana" + }, + "application/vnd.powerbuilder75-s": { + "source": "iana" + }, + "application/vnd.preminet": { + "source": "iana" + }, + "application/vnd.previewsystems.box": { + "source": "iana", + "extensions": [ + "box" + ] + }, + "application/vnd.proteus.magazine": { + "source": "iana", + "extensions": [ + "mgz" + ] + }, + "application/vnd.psfs": { + "source": "iana" + }, + "application/vnd.publishare-delta-tree": { + "source": "iana", + "extensions": [ + "qps" + ] + }, + "application/vnd.pvi.ptid1": { + "source": "iana", + "extensions": [ + "ptid" + ] + }, + "application/vnd.pwg-multiplexed": { + "source": "iana" + }, + "application/vnd.pwg-xhtml-print+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.qualcomm.brew-app-res": { + "source": "iana" + }, + "application/vnd.quarantainenet": { + "source": "iana" + }, + "application/vnd.quark.quarkxpress": { + "source": "iana", + "extensions": [ + "qxd", + "qxt", + "qwd", + "qwt", + "qxl", + "qxb" + ] + }, + "application/vnd.quobject-quoxdocument": { + "source": "iana" + }, + "application/vnd.radisys.moml+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-audit+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-audit-conf+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-audit-conn+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-audit-dialog+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-audit-stream+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-conf+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog-base+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog-fax-detect+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog-fax-sendrecv+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog-group+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog-speech+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.radisys.msml-dialog-transform+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.rainstor.data": { + "source": "iana" + }, + "application/vnd.rapid": { + "source": "iana" + }, + "application/vnd.rar": { + "source": "iana", + "extensions": [ + "rar" + ] + }, + "application/vnd.realvnc.bed": { + "source": "iana", + "extensions": [ + "bed" + ] + }, + "application/vnd.recordare.musicxml": { + "source": "iana", + "extensions": [ + "mxl" + ] + }, + "application/vnd.recordare.musicxml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "musicxml" + ] + }, + "application/vnd.renlearn.rlprint": { + "source": "iana" + }, + "application/vnd.resilient.logic": { + "source": "iana" + }, + "application/vnd.restful+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.rig.cryptonote": { + "source": "iana", + "extensions": [ + "cryptonote" + ] + }, + "application/vnd.rim.cod": { + "source": "apache", + "extensions": [ + "cod" + ] + }, + "application/vnd.rn-realmedia": { + "source": "apache", + "extensions": [ + "rm" + ] + }, + "application/vnd.rn-realmedia-vbr": { + "source": "apache", + "extensions": [ + "rmvb" + ] + }, + "application/vnd.route66.link66+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "link66" + ] + }, + "application/vnd.rs-274x": { + "source": "iana" + }, + "application/vnd.ruckus.download": { + "source": "iana" + }, + "application/vnd.s3sms": { + "source": "iana" + }, + "application/vnd.sailingtracker.track": { + "source": "iana", + "extensions": [ + "st" + ] + }, + "application/vnd.sar": { + "source": "iana" + }, + "application/vnd.sbm.cid": { + "source": "iana" + }, + "application/vnd.sbm.mid2": { + "source": "iana" + }, + "application/vnd.scribus": { + "source": "iana" + }, + "application/vnd.sealed.3df": { + "source": "iana" + }, + "application/vnd.sealed.csf": { + "source": "iana" + }, + "application/vnd.sealed.doc": { + "source": "iana" + }, + "application/vnd.sealed.eml": { + "source": "iana" + }, + "application/vnd.sealed.mht": { + "source": "iana" + }, + "application/vnd.sealed.net": { + "source": "iana" + }, + "application/vnd.sealed.ppt": { + "source": "iana" + }, + "application/vnd.sealed.tiff": { + "source": "iana" + }, + "application/vnd.sealed.xls": { + "source": "iana" + }, + "application/vnd.sealedmedia.softseal.html": { + "source": "iana" + }, + "application/vnd.sealedmedia.softseal.pdf": { + "source": "iana" + }, + "application/vnd.seemail": { + "source": "iana", + "extensions": [ + "see" + ] + }, + "application/vnd.seis+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.sema": { + "source": "iana", + "extensions": [ + "sema" + ] + }, + "application/vnd.semd": { + "source": "iana", + "extensions": [ + "semd" + ] + }, + "application/vnd.semf": { + "source": "iana", + "extensions": [ + "semf" + ] + }, + "application/vnd.shade-save-file": { + "source": "iana" + }, + "application/vnd.shana.informed.formdata": { + "source": "iana", + "extensions": [ + "ifm" + ] + }, + "application/vnd.shana.informed.formtemplate": { + "source": "iana", + "extensions": [ + "itp" + ] + }, + "application/vnd.shana.informed.interchange": { + "source": "iana", + "extensions": [ + "iif" + ] + }, + "application/vnd.shana.informed.package": { + "source": "iana", + "extensions": [ + "ipk" + ] + }, + "application/vnd.shootproof+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.shopkick+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.shp": { + "source": "iana" + }, + "application/vnd.shx": { + "source": "iana" + }, + "application/vnd.sigrok.session": { + "source": "iana" + }, + "application/vnd.simtech-mindmapper": { + "source": "iana", + "extensions": [ + "twd", + "twds" + ] + }, + "application/vnd.siren+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.smaf": { + "source": "iana", + "extensions": [ + "mmf" + ] + }, + "application/vnd.smart.notebook": { + "source": "iana" + }, + "application/vnd.smart.teacher": { + "source": "iana", + "extensions": [ + "teacher" + ] + }, + "application/vnd.snesdev-page-table": { + "source": "iana" + }, + "application/vnd.software602.filler.form+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "fo" + ] + }, + "application/vnd.software602.filler.form-xml-zip": { + "source": "iana" + }, + "application/vnd.solent.sdkm+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "sdkm", + "sdkd" + ] + }, + "application/vnd.spotfire.dxp": { + "source": "iana", + "extensions": [ + "dxp" + ] + }, + "application/vnd.spotfire.sfs": { + "source": "iana", + "extensions": [ + "sfs" + ] + }, + "application/vnd.sqlite3": { + "source": "iana" + }, + "application/vnd.sss-cod": { + "source": "iana" + }, + "application/vnd.sss-dtf": { + "source": "iana" + }, + "application/vnd.sss-ntf": { + "source": "iana" + }, + "application/vnd.stardivision.calc": { + "source": "apache", + "extensions": [ + "sdc" + ] + }, + "application/vnd.stardivision.draw": { + "source": "apache", + "extensions": [ + "sda" + ] + }, + "application/vnd.stardivision.impress": { + "source": "apache", + "extensions": [ + "sdd" + ] + }, + "application/vnd.stardivision.math": { + "source": "apache", + "extensions": [ + "smf" + ] + }, + "application/vnd.stardivision.writer": { + "source": "apache", + "extensions": [ + "sdw", + "vor" + ] + }, + "application/vnd.stardivision.writer-global": { + "source": "apache", + "extensions": [ + "sgl" + ] + }, + "application/vnd.stepmania.package": { + "source": "iana", + "extensions": [ + "smzip" + ] + }, + "application/vnd.stepmania.stepchart": { + "source": "iana", + "extensions": [ + "sm" + ] + }, + "application/vnd.street-stream": { + "source": "iana" + }, + "application/vnd.sun.wadl+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "wadl" + ] + }, + "application/vnd.sun.xml.calc": { + "source": "apache", + "extensions": [ + "sxc" + ] + }, + "application/vnd.sun.xml.calc.template": { + "source": "apache", + "extensions": [ + "stc" + ] + }, + "application/vnd.sun.xml.draw": { + "source": "apache", + "extensions": [ + "sxd" + ] + }, + "application/vnd.sun.xml.draw.template": { + "source": "apache", + "extensions": [ + "std" + ] + }, + "application/vnd.sun.xml.impress": { + "source": "apache", + "extensions": [ + "sxi" + ] + }, + "application/vnd.sun.xml.impress.template": { + "source": "apache", + "extensions": [ + "sti" + ] + }, + "application/vnd.sun.xml.math": { + "source": "apache", + "extensions": [ + "sxm" + ] + }, + "application/vnd.sun.xml.writer": { + "source": "apache", + "extensions": [ + "sxw" + ] + }, + "application/vnd.sun.xml.writer.global": { + "source": "apache", + "extensions": [ + "sxg" + ] + }, + "application/vnd.sun.xml.writer.template": { + "source": "apache", + "extensions": [ + "stw" + ] + }, + "application/vnd.sus-calendar": { + "source": "iana", + "extensions": [ + "sus", + "susp" + ] + }, + "application/vnd.svd": { + "source": "iana", + "extensions": [ + "svd" + ] + }, + "application/vnd.swiftview-ics": { + "source": "iana" + }, + "application/vnd.sycle+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.syft+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.symbian.install": { + "source": "apache", + "extensions": [ + "sis", + "sisx" + ] + }, + "application/vnd.syncml+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "xsm" + ] + }, + "application/vnd.syncml.dm+wbxml": { + "source": "iana", + "charset": "UTF-8", + "extensions": [ + "bdm" + ] + }, + "application/vnd.syncml.dm+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "xdm" + ] + }, + "application/vnd.syncml.dm.notification": { + "source": "iana" + }, + "application/vnd.syncml.dmddf+wbxml": { + "source": "iana" + }, + "application/vnd.syncml.dmddf+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "ddf" + ] + }, + "application/vnd.syncml.dmtnds+wbxml": { + "source": "iana" + }, + "application/vnd.syncml.dmtnds+xml": { + "source": "iana", + "charset": "UTF-8", + "compressible": true + }, + "application/vnd.syncml.ds.notification": { + "source": "iana" + }, + "application/vnd.tableschema+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.tao.intent-module-archive": { + "source": "iana", + "extensions": [ + "tao" + ] + }, + "application/vnd.tcpdump.pcap": { + "source": "iana", + "extensions": [ + "pcap", + "cap", + "dmp" + ] + }, + "application/vnd.think-cell.ppttc+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.tmd.mediaflex.api+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.tml": { + "source": "iana" + }, + "application/vnd.tmobile-livetv": { + "source": "iana", + "extensions": [ + "tmo" + ] + }, + "application/vnd.tri.onesource": { + "source": "iana" + }, + "application/vnd.trid.tpt": { + "source": "iana", + "extensions": [ + "tpt" + ] + }, + "application/vnd.triscape.mxs": { + "source": "iana", + "extensions": [ + "mxs" + ] + }, + "application/vnd.trueapp": { + "source": "iana", + "extensions": [ + "tra" + ] + }, + "application/vnd.truedoc": { + "source": "iana" + }, + "application/vnd.ubisoft.webplayer": { + "source": "iana" + }, + "application/vnd.ufdl": { + "source": "iana", + "extensions": [ + "ufd", + "ufdl" + ] + }, + "application/vnd.uiq.theme": { + "source": "iana", + "extensions": [ + "utz" + ] + }, + "application/vnd.umajin": { + "source": "iana", + "extensions": [ + "umj" + ] + }, + "application/vnd.unity": { + "source": "iana", + "extensions": [ + "unityweb" + ] + }, + "application/vnd.uoml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "uoml" + ] + }, + "application/vnd.uplanet.alert": { + "source": "iana" + }, + "application/vnd.uplanet.alert-wbxml": { + "source": "iana" + }, + "application/vnd.uplanet.bearer-choice": { + "source": "iana" + }, + "application/vnd.uplanet.bearer-choice-wbxml": { + "source": "iana" + }, + "application/vnd.uplanet.cacheop": { + "source": "iana" + }, + "application/vnd.uplanet.cacheop-wbxml": { + "source": "iana" + }, + "application/vnd.uplanet.channel": { + "source": "iana" + }, + "application/vnd.uplanet.channel-wbxml": { + "source": "iana" + }, + "application/vnd.uplanet.list": { + "source": "iana" + }, + "application/vnd.uplanet.list-wbxml": { + "source": "iana" + }, + "application/vnd.uplanet.listcmd": { + "source": "iana" + }, + "application/vnd.uplanet.listcmd-wbxml": { + "source": "iana" + }, + "application/vnd.uplanet.signal": { + "source": "iana" + }, + "application/vnd.uri-map": { + "source": "iana" + }, + "application/vnd.valve.source.material": { + "source": "iana" + }, + "application/vnd.vcx": { + "source": "iana", + "extensions": [ + "vcx" + ] + }, + "application/vnd.vd-study": { + "source": "iana" + }, + "application/vnd.vectorworks": { + "source": "iana" + }, + "application/vnd.vel+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.verimatrix.vcas": { + "source": "iana" + }, + "application/vnd.veritone.aion+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.veryant.thin": { + "source": "iana" + }, + "application/vnd.ves.encrypted": { + "source": "iana" + }, + "application/vnd.vidsoft.vidconference": { + "source": "iana" + }, + "application/vnd.visio": { + "source": "iana", + "extensions": [ + "vsd", + "vst", + "vss", + "vsw" + ] + }, + "application/vnd.visionary": { + "source": "iana", + "extensions": [ + "vis" + ] + }, + "application/vnd.vividence.scriptfile": { + "source": "iana" + }, + "application/vnd.vsf": { + "source": "iana", + "extensions": [ + "vsf" + ] + }, + "application/vnd.wap.sic": { + "source": "iana" + }, + "application/vnd.wap.slc": { + "source": "iana" + }, + "application/vnd.wap.wbxml": { + "source": "iana", + "charset": "UTF-8", + "extensions": [ + "wbxml" + ] + }, + "application/vnd.wap.wmlc": { + "source": "iana", + "extensions": [ + "wmlc" + ] + }, + "application/vnd.wap.wmlscriptc": { + "source": "iana", + "extensions": [ + "wmlsc" + ] + }, + "application/vnd.webturbo": { + "source": "iana", + "extensions": [ + "wtb" + ] + }, + "application/vnd.wfa.dpp": { + "source": "iana" + }, + "application/vnd.wfa.p2p": { + "source": "iana" + }, + "application/vnd.wfa.wsc": { + "source": "iana" + }, + "application/vnd.windows.devicepairing": { + "source": "iana" + }, + "application/vnd.wmc": { + "source": "iana" + }, + "application/vnd.wmf.bootstrap": { + "source": "iana" + }, + "application/vnd.wolfram.mathematica": { + "source": "iana" + }, + "application/vnd.wolfram.mathematica.package": { + "source": "iana" + }, + "application/vnd.wolfram.player": { + "source": "iana", + "extensions": [ + "nbp" + ] + }, + "application/vnd.wordperfect": { + "source": "iana", + "extensions": [ + "wpd" + ] + }, + "application/vnd.wqd": { + "source": "iana", + "extensions": [ + "wqd" + ] + }, + "application/vnd.wrq-hp3000-labelled": { + "source": "iana" + }, + "application/vnd.wt.stf": { + "source": "iana", + "extensions": [ + "stf" + ] + }, + "application/vnd.wv.csp+wbxml": { + "source": "iana" + }, + "application/vnd.wv.csp+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.wv.ssp+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.xacml+json": { + "source": "iana", + "compressible": true + }, + "application/vnd.xara": { + "source": "iana", + "extensions": [ + "xar" + ] + }, + "application/vnd.xfdl": { + "source": "iana", + "extensions": [ + "xfdl" + ] + }, + "application/vnd.xfdl.webform": { + "source": "iana" + }, + "application/vnd.xmi+xml": { + "source": "iana", + "compressible": true + }, + "application/vnd.xmpie.cpkg": { + "source": "iana" + }, + "application/vnd.xmpie.dpkg": { + "source": "iana" + }, + "application/vnd.xmpie.plan": { + "source": "iana" + }, + "application/vnd.xmpie.ppkg": { + "source": "iana" + }, + "application/vnd.xmpie.xlim": { + "source": "iana" + }, + "application/vnd.yamaha.hv-dic": { + "source": "iana", + "extensions": [ + "hvd" + ] + }, + "application/vnd.yamaha.hv-script": { + "source": "iana", + "extensions": [ + "hvs" + ] + }, + "application/vnd.yamaha.hv-voice": { + "source": "iana", + "extensions": [ + "hvp" + ] + }, + "application/vnd.yamaha.openscoreformat": { + "source": "iana", + "extensions": [ + "osf" + ] + }, + "application/vnd.yamaha.openscoreformat.osfpvg+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "osfpvg" + ] + }, + "application/vnd.yamaha.remote-setup": { + "source": "iana" + }, + "application/vnd.yamaha.smaf-audio": { + "source": "iana", + "extensions": [ + "saf" + ] + }, + "application/vnd.yamaha.smaf-phrase": { + "source": "iana", + "extensions": [ + "spf" + ] + }, + "application/vnd.yamaha.through-ngn": { + "source": "iana" + }, + "application/vnd.yamaha.tunnel-udpencap": { + "source": "iana" + }, + "application/vnd.yaoweme": { + "source": "iana" + }, + "application/vnd.yellowriver-custom-menu": { + "source": "iana", + "extensions": [ + "cmp" + ] + }, + "application/vnd.youtube.yt": { + "source": "iana" + }, + "application/vnd.zul": { + "source": "iana", + "extensions": [ + "zir", + "zirz" + ] + }, + "application/vnd.zzazz.deck+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "zaz" + ] + }, + "application/voicexml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "vxml" + ] + }, + "application/voucher-cms+json": { + "source": "iana", + "compressible": true + }, + "application/vq-rtcpxr": { + "source": "iana" + }, + "application/wasm": { + "source": "iana", + "compressible": true, + "extensions": [ + "wasm" + ] + }, + "application/watcherinfo+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "wif" + ] + }, + "application/webpush-options+json": { + "source": "iana", + "compressible": true + }, + "application/whoispp-query": { + "source": "iana" + }, + "application/whoispp-response": { + "source": "iana" + }, + "application/widget": { + "source": "iana", + "extensions": [ + "wgt" + ] + }, + "application/winhlp": { + "source": "apache", + "extensions": [ + "hlp" + ] + }, + "application/wita": { + "source": "iana" + }, + "application/wordperfect5.1": { + "source": "iana" + }, + "application/wsdl+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "wsdl" + ] + }, + "application/wspolicy+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "wspolicy" + ] + }, + "application/x-7z-compressed": { + "source": "apache", + "compressible": false, + "extensions": [ + "7z" + ] + }, + "application/x-abiword": { + "source": "apache", + "extensions": [ + "abw" + ] + }, + "application/x-ace-compressed": { + "source": "apache", + "extensions": [ + "ace" + ] + }, + "application/x-amf": { + "source": "apache" + }, + "application/x-apple-diskimage": { + "source": "apache", + "extensions": [ + "dmg" + ] + }, + "application/x-arj": { + "compressible": false, + "extensions": [ + "arj" + ] + }, + "application/x-authorware-bin": { + "source": "apache", + "extensions": [ + "aab", + "x32", + "u32", + "vox" + ] + }, + "application/x-authorware-map": { + "source": "apache", + "extensions": [ + "aam" + ] + }, + "application/x-authorware-seg": { + "source": "apache", + "extensions": [ + "aas" + ] + }, + "application/x-bcpio": { + "source": "apache", + "extensions": [ + "bcpio" + ] + }, + "application/x-bdoc": { + "compressible": false, + "extensions": [ + "bdoc" + ] + }, + "application/x-bittorrent": { + "source": "apache", + "extensions": [ + "torrent" + ] + }, + "application/x-blorb": { + "source": "apache", + "extensions": [ + "blb", + "blorb" + ] + }, + "application/x-bzip": { + "source": "apache", + "compressible": false, + "extensions": [ + "bz" + ] + }, + "application/x-bzip2": { + "source": "apache", + "compressible": false, + "extensions": [ + "bz2", + "boz" + ] + }, + "application/x-cbr": { + "source": "apache", + "extensions": [ + "cbr", + "cba", + "cbt", + "cbz", + "cb7" + ] + }, + "application/x-cdlink": { + "source": "apache", + "extensions": [ + "vcd" + ] + }, + "application/x-cfs-compressed": { + "source": "apache", + "extensions": [ + "cfs" + ] + }, + "application/x-chat": { + "source": "apache", + "extensions": [ + "chat" + ] + }, + "application/x-chess-pgn": { + "source": "apache", + "extensions": [ + "pgn" + ] + }, + "application/x-chrome-extension": { + "extensions": [ + "crx" + ] + }, + "application/x-cocoa": { + "source": "nginx", + "extensions": [ + "cco" + ] + }, + "application/x-compress": { + "source": "apache" + }, + "application/x-conference": { + "source": "apache", + "extensions": [ + "nsc" + ] + }, + "application/x-cpio": { + "source": "apache", + "extensions": [ + "cpio" + ] + }, + "application/x-csh": { + "source": "apache", + "extensions": [ + "csh" + ] + }, + "application/x-deb": { + "compressible": false + }, + "application/x-debian-package": { + "source": "apache", + "extensions": [ + "deb", + "udeb" + ] + }, + "application/x-dgc-compressed": { + "source": "apache", + "extensions": [ + "dgc" + ] + }, + "application/x-director": { + "source": "apache", + "extensions": [ + "dir", + "dcr", + "dxr", + "cst", + "cct", + "cxt", + "w3d", + "fgd", + "swa" + ] + }, + "application/x-doom": { + "source": "apache", + "extensions": [ + "wad" + ] + }, + "application/x-dtbncx+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "ncx" + ] + }, + "application/x-dtbook+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "dtb" + ] + }, + "application/x-dtbresource+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "res" + ] + }, + "application/x-dvi": { + "source": "apache", + "compressible": false, + "extensions": [ + "dvi" + ] + }, + "application/x-envoy": { + "source": "apache", + "extensions": [ + "evy" + ] + }, + "application/x-eva": { + "source": "apache", + "extensions": [ + "eva" + ] + }, + "application/x-font-bdf": { + "source": "apache", + "extensions": [ + "bdf" + ] + }, + "application/x-font-dos": { + "source": "apache" + }, + "application/x-font-framemaker": { + "source": "apache" + }, + "application/x-font-ghostscript": { + "source": "apache", + "extensions": [ + "gsf" + ] + }, + "application/x-font-libgrx": { + "source": "apache" + }, + "application/x-font-linux-psf": { + "source": "apache", + "extensions": [ + "psf" + ] + }, + "application/x-font-pcf": { + "source": "apache", + "extensions": [ + "pcf" + ] + }, + "application/x-font-snf": { + "source": "apache", + "extensions": [ + "snf" + ] + }, + "application/x-font-speedo": { + "source": "apache" + }, + "application/x-font-sunos-news": { + "source": "apache" + }, + "application/x-font-type1": { + "source": "apache", + "extensions": [ + "pfa", + "pfb", + "pfm", + "afm" + ] + }, + "application/x-font-vfont": { + "source": "apache" + }, + "application/x-freearc": { + "source": "apache", + "extensions": [ + "arc" + ] + }, + "application/x-futuresplash": { + "source": "apache", + "extensions": [ + "spl" + ] + }, + "application/x-gca-compressed": { + "source": "apache", + "extensions": [ + "gca" + ] + }, + "application/x-glulx": { + "source": "apache", + "extensions": [ + "ulx" + ] + }, + "application/x-gnumeric": { + "source": "apache", + "extensions": [ + "gnumeric" + ] + }, + "application/x-gramps-xml": { + "source": "apache", + "extensions": [ + "gramps" + ] + }, + "application/x-gtar": { + "source": "apache", + "extensions": [ + "gtar" + ] + }, + "application/x-gzip": { + "source": "apache" + }, + "application/x-hdf": { + "source": "apache", + "extensions": [ + "hdf" + ] + }, + "application/x-httpd-php": { + "compressible": true, + "extensions": [ + "php" + ] + }, + "application/x-install-instructions": { + "source": "apache", + "extensions": [ + "install" + ] + }, + "application/x-iso9660-image": { + "source": "apache", + "extensions": [ + "iso" + ] + }, + "application/x-iwork-keynote-sffkey": { + "extensions": [ + "key" + ] + }, + "application/x-iwork-numbers-sffnumbers": { + "extensions": [ + "numbers" + ] + }, + "application/x-iwork-pages-sffpages": { + "extensions": [ + "pages" + ] + }, + "application/x-java-archive-diff": { + "source": "nginx", + "extensions": [ + "jardiff" + ] + }, + "application/x-java-jnlp-file": { + "source": "apache", + "compressible": false, + "extensions": [ + "jnlp" + ] + }, + "application/x-javascript": { + "compressible": true + }, + "application/x-keepass2": { + "extensions": [ + "kdbx" + ] + }, + "application/x-latex": { + "source": "apache", + "compressible": false, + "extensions": [ + "latex" + ] + }, + "application/x-lua-bytecode": { + "extensions": [ + "luac" + ] + }, + "application/x-lzh-compressed": { + "source": "apache", + "extensions": [ + "lzh", + "lha" + ] + }, + "application/x-makeself": { + "source": "nginx", + "extensions": [ + "run" + ] + }, + "application/x-mie": { + "source": "apache", + "extensions": [ + "mie" + ] + }, + "application/x-mobipocket-ebook": { + "source": "apache", + "extensions": [ + "prc", + "mobi" + ] + }, + "application/x-mpegurl": { + "compressible": false + }, + "application/x-ms-application": { + "source": "apache", + "extensions": [ + "application" + ] + }, + "application/x-ms-shortcut": { + "source": "apache", + "extensions": [ + "lnk" + ] + }, + "application/x-ms-wmd": { + "source": "apache", + "extensions": [ + "wmd" + ] + }, + "application/x-ms-wmz": { + "source": "apache", + "extensions": [ + "wmz" + ] + }, + "application/x-ms-xbap": { + "source": "apache", + "extensions": [ + "xbap" + ] + }, + "application/x-msaccess": { + "source": "apache", + "extensions": [ + "mdb" + ] + }, + "application/x-msbinder": { + "source": "apache", + "extensions": [ + "obd" + ] + }, + "application/x-mscardfile": { + "source": "apache", + "extensions": [ + "crd" + ] + }, + "application/x-msclip": { + "source": "apache", + "extensions": [ + "clp" + ] + }, + "application/x-msdos-program": { + "extensions": [ + "exe" + ] + }, + "application/x-msdownload": { + "source": "apache", + "extensions": [ + "exe", + "dll", + "com", + "bat", + "msi" + ] + }, + "application/x-msmediaview": { + "source": "apache", + "extensions": [ + "mvb", + "m13", + "m14" + ] + }, + "application/x-msmetafile": { + "source": "apache", + "extensions": [ + "wmf", + "wmz", + "emf", + "emz" + ] + }, + "application/x-msmoney": { + "source": "apache", + "extensions": [ + "mny" + ] + }, + "application/x-mspublisher": { + "source": "apache", + "extensions": [ + "pub" + ] + }, + "application/x-msschedule": { + "source": "apache", + "extensions": [ + "scd" + ] + }, + "application/x-msterminal": { + "source": "apache", + "extensions": [ + "trm" + ] + }, + "application/x-mswrite": { + "source": "apache", + "extensions": [ + "wri" + ] + }, + "application/x-netcdf": { + "source": "apache", + "extensions": [ + "nc", + "cdf" + ] + }, + "application/x-ns-proxy-autoconfig": { + "compressible": true, + "extensions": [ + "pac" + ] + }, + "application/x-nzb": { + "source": "apache", + "extensions": [ + "nzb" + ] + }, + "application/x-perl": { + "source": "nginx", + "extensions": [ + "pl", + "pm" + ] + }, + "application/x-pilot": { + "source": "nginx", + "extensions": [ + "prc", + "pdb" + ] + }, + "application/x-pkcs12": { + "source": "apache", + "compressible": false, + "extensions": [ + "p12", + "pfx" + ] + }, + "application/x-pkcs7-certificates": { + "source": "apache", + "extensions": [ + "p7b", + "spc" + ] + }, + "application/x-pkcs7-certreqresp": { + "source": "apache", + "extensions": [ + "p7r" + ] + }, + "application/x-pki-message": { + "source": "iana" + }, + "application/x-rar-compressed": { + "source": "apache", + "compressible": false, + "extensions": [ + "rar" + ] + }, + "application/x-redhat-package-manager": { + "source": "nginx", + "extensions": [ + "rpm" + ] + }, + "application/x-research-info-systems": { + "source": "apache", + "extensions": [ + "ris" + ] + }, + "application/x-sea": { + "source": "nginx", + "extensions": [ + "sea" + ] + }, + "application/x-sh": { + "source": "apache", + "compressible": true, + "extensions": [ + "sh" + ] + }, + "application/x-shar": { + "source": "apache", + "extensions": [ + "shar" + ] + }, + "application/x-shockwave-flash": { + "source": "apache", + "compressible": false, + "extensions": [ + "swf" + ] + }, + "application/x-silverlight-app": { + "source": "apache", + "extensions": [ + "xap" + ] + }, + "application/x-sql": { + "source": "apache", + "extensions": [ + "sql" + ] + }, + "application/x-stuffit": { + "source": "apache", + "compressible": false, + "extensions": [ + "sit" + ] + }, + "application/x-stuffitx": { + "source": "apache", + "extensions": [ + "sitx" + ] + }, + "application/x-subrip": { + "source": "apache", + "extensions": [ + "srt" + ] + }, + "application/x-sv4cpio": { + "source": "apache", + "extensions": [ + "sv4cpio" + ] + }, + "application/x-sv4crc": { + "source": "apache", + "extensions": [ + "sv4crc" + ] + }, + "application/x-t3vm-image": { + "source": "apache", + "extensions": [ + "t3" + ] + }, + "application/x-tads": { + "source": "apache", + "extensions": [ + "gam" + ] + }, + "application/x-tar": { + "source": "apache", + "compressible": true, + "extensions": [ + "tar" + ] + }, + "application/x-tcl": { + "source": "apache", + "extensions": [ + "tcl", + "tk" + ] + }, + "application/x-tex": { + "source": "apache", + "extensions": [ + "tex" + ] + }, + "application/x-tex-tfm": { + "source": "apache", + "extensions": [ + "tfm" + ] + }, + "application/x-texinfo": { + "source": "apache", + "extensions": [ + "texinfo", + "texi" + ] + }, + "application/x-tgif": { + "source": "apache", + "extensions": [ + "obj" + ] + }, + "application/x-ustar": { + "source": "apache", + "extensions": [ + "ustar" + ] + }, + "application/x-virtualbox-hdd": { + "compressible": true, + "extensions": [ + "hdd" + ] + }, + "application/x-virtualbox-ova": { + "compressible": true, + "extensions": [ + "ova" + ] + }, + "application/x-virtualbox-ovf": { + "compressible": true, + "extensions": [ + "ovf" + ] + }, + "application/x-virtualbox-vbox": { + "compressible": true, + "extensions": [ + "vbox" + ] + }, + "application/x-virtualbox-vbox-extpack": { + "compressible": false, + "extensions": [ + "vbox-extpack" + ] + }, + "application/x-virtualbox-vdi": { + "compressible": true, + "extensions": [ + "vdi" + ] + }, + "application/x-virtualbox-vhd": { + "compressible": true, + "extensions": [ + "vhd" + ] + }, + "application/x-virtualbox-vmdk": { + "compressible": true, + "extensions": [ + "vmdk" + ] + }, + "application/x-wais-source": { + "source": "apache", + "extensions": [ + "src" + ] + }, + "application/x-web-app-manifest+json": { + "compressible": true, + "extensions": [ + "webapp" + ] + }, + "application/x-www-form-urlencoded": { + "source": "iana", + "compressible": true + }, + "application/x-x509-ca-cert": { + "source": "iana", + "extensions": [ + "der", + "crt", + "pem" + ] + }, + "application/x-x509-ca-ra-cert": { + "source": "iana" + }, + "application/x-x509-next-ca-cert": { + "source": "iana" + }, + "application/x-xfig": { + "source": "apache", + "extensions": [ + "fig" + ] + }, + "application/x-xliff+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "xlf" + ] + }, + "application/x-xpinstall": { + "source": "apache", + "compressible": false, + "extensions": [ + "xpi" + ] + }, + "application/x-xz": { + "source": "apache", + "extensions": [ + "xz" + ] + }, + "application/x-zmachine": { + "source": "apache", + "extensions": [ + "z1", + "z2", + "z3", + "z4", + "z5", + "z6", + "z7", + "z8" + ] + }, + "application/x400-bp": { + "source": "iana" + }, + "application/xacml+xml": { + "source": "iana", + "compressible": true + }, + "application/xaml+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "xaml" + ] + }, + "application/xcap-att+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xav" + ] + }, + "application/xcap-caps+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xca" + ] + }, + "application/xcap-diff+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xdf" + ] + }, + "application/xcap-el+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xel" + ] + }, + "application/xcap-error+xml": { + "source": "iana", + "compressible": true + }, + "application/xcap-ns+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xns" + ] + }, + "application/xcon-conference-info+xml": { + "source": "iana", + "compressible": true + }, + "application/xcon-conference-info-diff+xml": { + "source": "iana", + "compressible": true + }, + "application/xenc+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xenc" + ] + }, + "application/xhtml+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xhtml", + "xht" + ] + }, + "application/xhtml-voice+xml": { + "source": "apache", + "compressible": true + }, + "application/xliff+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xlf" + ] + }, + "application/xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xml", + "xsl", + "xsd", + "rng" + ] + }, + "application/xml-dtd": { + "source": "iana", + "compressible": true, + "extensions": [ + "dtd" + ] + }, + "application/xml-external-parsed-entity": { + "source": "iana" + }, + "application/xml-patch+xml": { + "source": "iana", + "compressible": true + }, + "application/xmpp+xml": { + "source": "iana", + "compressible": true + }, + "application/xop+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xop" + ] + }, + "application/xproc+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "xpl" + ] + }, + "application/xslt+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xsl", + "xslt" + ] + }, + "application/xspf+xml": { + "source": "apache", + "compressible": true, + "extensions": [ + "xspf" + ] + }, + "application/xv+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "mxml", + "xhvml", + "xvml", + "xvm" + ] + }, + "application/yang": { + "source": "iana", + "extensions": [ + "yang" + ] + }, + "application/yang-data+json": { + "source": "iana", + "compressible": true + }, + "application/yang-data+xml": { + "source": "iana", + "compressible": true + }, + "application/yang-patch+json": { + "source": "iana", + "compressible": true + }, + "application/yang-patch+xml": { + "source": "iana", + "compressible": true + }, + "application/yin+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "yin" + ] + }, + "application/zip": { + "source": "iana", + "compressible": false, + "extensions": [ + "zip" + ] + }, + "application/zlib": { + "source": "iana" + }, + "application/zstd": { + "source": "iana" + }, + "audio/1d-interleaved-parityfec": { + "source": "iana" + }, + "audio/32kadpcm": { + "source": "iana" + }, + "audio/3gpp": { + "source": "iana", + "compressible": false, + "extensions": [ + "3gpp" + ] + }, + "audio/3gpp2": { + "source": "iana" + }, + "audio/aac": { + "source": "iana" + }, + "audio/ac3": { + "source": "iana" + }, + "audio/adpcm": { + "source": "apache", + "extensions": [ + "adp" + ] + }, + "audio/amr": { + "source": "iana", + "extensions": [ + "amr" + ] + }, + "audio/amr-wb": { + "source": "iana" + }, + "audio/amr-wb+": { + "source": "iana" + }, + "audio/aptx": { + "source": "iana" + }, + "audio/asc": { + "source": "iana" + }, + "audio/atrac-advanced-lossless": { + "source": "iana" + }, + "audio/atrac-x": { + "source": "iana" + }, + "audio/atrac3": { + "source": "iana" + }, + "audio/basic": { + "source": "iana", + "compressible": false, + "extensions": [ + "au", + "snd" + ] + }, + "audio/bv16": { + "source": "iana" + }, + "audio/bv32": { + "source": "iana" + }, + "audio/clearmode": { + "source": "iana" + }, + "audio/cn": { + "source": "iana" + }, + "audio/dat12": { + "source": "iana" + }, + "audio/dls": { + "source": "iana" + }, + "audio/dsr-es201108": { + "source": "iana" + }, + "audio/dsr-es202050": { + "source": "iana" + }, + "audio/dsr-es202211": { + "source": "iana" + }, + "audio/dsr-es202212": { + "source": "iana" + }, + "audio/dv": { + "source": "iana" + }, + "audio/dvi4": { + "source": "iana" + }, + "audio/eac3": { + "source": "iana" + }, + "audio/encaprtp": { + "source": "iana" + }, + "audio/evrc": { + "source": "iana" + }, + "audio/evrc-qcp": { + "source": "iana" + }, + "audio/evrc0": { + "source": "iana" + }, + "audio/evrc1": { + "source": "iana" + }, + "audio/evrcb": { + "source": "iana" + }, + "audio/evrcb0": { + "source": "iana" + }, + "audio/evrcb1": { + "source": "iana" + }, + "audio/evrcnw": { + "source": "iana" + }, + "audio/evrcnw0": { + "source": "iana" + }, + "audio/evrcnw1": { + "source": "iana" + }, + "audio/evrcwb": { + "source": "iana" + }, + "audio/evrcwb0": { + "source": "iana" + }, + "audio/evrcwb1": { + "source": "iana" + }, + "audio/evs": { + "source": "iana" + }, + "audio/flexfec": { + "source": "iana" + }, + "audio/fwdred": { + "source": "iana" + }, + "audio/g711-0": { + "source": "iana" + }, + "audio/g719": { + "source": "iana" + }, + "audio/g722": { + "source": "iana" + }, + "audio/g7221": { + "source": "iana" + }, + "audio/g723": { + "source": "iana" + }, + "audio/g726-16": { + "source": "iana" + }, + "audio/g726-24": { + "source": "iana" + }, + "audio/g726-32": { + "source": "iana" + }, + "audio/g726-40": { + "source": "iana" + }, + "audio/g728": { + "source": "iana" + }, + "audio/g729": { + "source": "iana" + }, + "audio/g7291": { + "source": "iana" + }, + "audio/g729d": { + "source": "iana" + }, + "audio/g729e": { + "source": "iana" + }, + "audio/gsm": { + "source": "iana" + }, + "audio/gsm-efr": { + "source": "iana" + }, + "audio/gsm-hr-08": { + "source": "iana" + }, + "audio/ilbc": { + "source": "iana" + }, + "audio/ip-mr_v2.5": { + "source": "iana" + }, + "audio/isac": { + "source": "apache" + }, + "audio/l16": { + "source": "iana" + }, + "audio/l20": { + "source": "iana" + }, + "audio/l24": { + "source": "iana", + "compressible": false + }, + "audio/l8": { + "source": "iana" + }, + "audio/lpc": { + "source": "iana" + }, + "audio/melp": { + "source": "iana" + }, + "audio/melp1200": { + "source": "iana" + }, + "audio/melp2400": { + "source": "iana" + }, + "audio/melp600": { + "source": "iana" + }, + "audio/mhas": { + "source": "iana" + }, + "audio/midi": { + "source": "apache", + "extensions": [ + "mid", + "midi", + "kar", + "rmi" + ] + }, + "audio/mobile-xmf": { + "source": "iana", + "extensions": [ + "mxmf" + ] + }, + "audio/mp3": { + "compressible": false, + "extensions": [ + "mp3" + ] + }, + "audio/mp4": { + "source": "iana", + "compressible": false, + "extensions": [ + "m4a", + "mp4a" + ] + }, + "audio/mp4a-latm": { + "source": "iana" + }, + "audio/mpa": { + "source": "iana" + }, + "audio/mpa-robust": { + "source": "iana" + }, + "audio/mpeg": { + "source": "iana", + "compressible": false, + "extensions": [ + "mpga", + "mp2", + "mp2a", + "mp3", + "m2a", + "m3a" + ] + }, + "audio/mpeg4-generic": { + "source": "iana" + }, + "audio/musepack": { + "source": "apache" + }, + "audio/ogg": { + "source": "iana", + "compressible": false, + "extensions": [ + "oga", + "ogg", + "spx", + "opus" + ] + }, + "audio/opus": { + "source": "iana" + }, + "audio/parityfec": { + "source": "iana" + }, + "audio/pcma": { + "source": "iana" + }, + "audio/pcma-wb": { + "source": "iana" + }, + "audio/pcmu": { + "source": "iana" + }, + "audio/pcmu-wb": { + "source": "iana" + }, + "audio/prs.sid": { + "source": "iana" + }, + "audio/qcelp": { + "source": "iana" + }, + "audio/raptorfec": { + "source": "iana" + }, + "audio/red": { + "source": "iana" + }, + "audio/rtp-enc-aescm128": { + "source": "iana" + }, + "audio/rtp-midi": { + "source": "iana" + }, + "audio/rtploopback": { + "source": "iana" + }, + "audio/rtx": { + "source": "iana" + }, + "audio/s3m": { + "source": "apache", + "extensions": [ + "s3m" + ] + }, + "audio/scip": { + "source": "iana" + }, + "audio/silk": { + "source": "apache", + "extensions": [ + "sil" + ] + }, + "audio/smv": { + "source": "iana" + }, + "audio/smv-qcp": { + "source": "iana" + }, + "audio/smv0": { + "source": "iana" + }, + "audio/sofa": { + "source": "iana" + }, + "audio/sp-midi": { + "source": "iana" + }, + "audio/speex": { + "source": "iana" + }, + "audio/t140c": { + "source": "iana" + }, + "audio/t38": { + "source": "iana" + }, + "audio/telephone-event": { + "source": "iana" + }, + "audio/tetra_acelp": { + "source": "iana" + }, + "audio/tetra_acelp_bb": { + "source": "iana" + }, + "audio/tone": { + "source": "iana" + }, + "audio/tsvcis": { + "source": "iana" + }, + "audio/uemclip": { + "source": "iana" + }, + "audio/ulpfec": { + "source": "iana" + }, + "audio/usac": { + "source": "iana" + }, + "audio/vdvi": { + "source": "iana" + }, + "audio/vmr-wb": { + "source": "iana" + }, + "audio/vnd.3gpp.iufp": { + "source": "iana" + }, + "audio/vnd.4sb": { + "source": "iana" + }, + "audio/vnd.audiokoz": { + "source": "iana" + }, + "audio/vnd.celp": { + "source": "iana" + }, + "audio/vnd.cisco.nse": { + "source": "iana" + }, + "audio/vnd.cmles.radio-events": { + "source": "iana" + }, + "audio/vnd.cns.anp1": { + "source": "iana" + }, + "audio/vnd.cns.inf1": { + "source": "iana" + }, + "audio/vnd.dece.audio": { + "source": "iana", + "extensions": [ + "uva", + "uvva" + ] + }, + "audio/vnd.digital-winds": { + "source": "iana", + "extensions": [ + "eol" + ] + }, + "audio/vnd.dlna.adts": { + "source": "iana" + }, + "audio/vnd.dolby.heaac.1": { + "source": "iana" + }, + "audio/vnd.dolby.heaac.2": { + "source": "iana" + }, + "audio/vnd.dolby.mlp": { + "source": "iana" + }, + "audio/vnd.dolby.mps": { + "source": "iana" + }, + "audio/vnd.dolby.pl2": { + "source": "iana" + }, + "audio/vnd.dolby.pl2x": { + "source": "iana" + }, + "audio/vnd.dolby.pl2z": { + "source": "iana" + }, + "audio/vnd.dolby.pulse.1": { + "source": "iana" + }, + "audio/vnd.dra": { + "source": "iana", + "extensions": [ + "dra" + ] + }, + "audio/vnd.dts": { + "source": "iana", + "extensions": [ + "dts" + ] + }, + "audio/vnd.dts.hd": { + "source": "iana", + "extensions": [ + "dtshd" + ] + }, + "audio/vnd.dts.uhd": { + "source": "iana" + }, + "audio/vnd.dvb.file": { + "source": "iana" + }, + "audio/vnd.everad.plj": { + "source": "iana" + }, + "audio/vnd.hns.audio": { + "source": "iana" + }, + "audio/vnd.lucent.voice": { + "source": "iana", + "extensions": [ + "lvp" + ] + }, + "audio/vnd.ms-playready.media.pya": { + "source": "iana", + "extensions": [ + "pya" + ] + }, + "audio/vnd.nokia.mobile-xmf": { + "source": "iana" + }, + "audio/vnd.nortel.vbk": { + "source": "iana" + }, + "audio/vnd.nuera.ecelp4800": { + "source": "iana", + "extensions": [ + "ecelp4800" + ] + }, + "audio/vnd.nuera.ecelp7470": { + "source": "iana", + "extensions": [ + "ecelp7470" + ] + }, + "audio/vnd.nuera.ecelp9600": { + "source": "iana", + "extensions": [ + "ecelp9600" + ] + }, + "audio/vnd.octel.sbc": { + "source": "iana" + }, + "audio/vnd.presonus.multitrack": { + "source": "iana" + }, + "audio/vnd.qcelp": { + "source": "iana" + }, + "audio/vnd.rhetorex.32kadpcm": { + "source": "iana" + }, + "audio/vnd.rip": { + "source": "iana", + "extensions": [ + "rip" + ] + }, + "audio/vnd.rn-realaudio": { + "compressible": false + }, + "audio/vnd.sealedmedia.softseal.mpeg": { + "source": "iana" + }, + "audio/vnd.vmx.cvsd": { + "source": "iana" + }, + "audio/vnd.wave": { + "compressible": false + }, + "audio/vorbis": { + "source": "iana", + "compressible": false + }, + "audio/vorbis-config": { + "source": "iana" + }, + "audio/wav": { + "compressible": false, + "extensions": [ + "wav" + ] + }, + "audio/wave": { + "compressible": false, + "extensions": [ + "wav" + ] + }, + "audio/webm": { + "source": "apache", + "compressible": false, + "extensions": [ + "weba" + ] + }, + "audio/x-aac": { + "source": "apache", + "compressible": false, + "extensions": [ + "aac" + ] + }, + "audio/x-aiff": { + "source": "apache", + "extensions": [ + "aif", + "aiff", + "aifc" + ] + }, + "audio/x-caf": { + "source": "apache", + "compressible": false, + "extensions": [ + "caf" + ] + }, + "audio/x-flac": { + "source": "apache", + "extensions": [ + "flac" + ] + }, + "audio/x-m4a": { + "source": "nginx", + "extensions": [ + "m4a" + ] + }, + "audio/x-matroska": { + "source": "apache", + "extensions": [ + "mka" + ] + }, + "audio/x-mpegurl": { + "source": "apache", + "extensions": [ + "m3u" + ] + }, + "audio/x-ms-wax": { + "source": "apache", + "extensions": [ + "wax" + ] + }, + "audio/x-ms-wma": { + "source": "apache", + "extensions": [ + "wma" + ] + }, + "audio/x-pn-realaudio": { + "source": "apache", + "extensions": [ + "ram", + "ra" + ] + }, + "audio/x-pn-realaudio-plugin": { + "source": "apache", + "extensions": [ + "rmp" + ] + }, + "audio/x-realaudio": { + "source": "nginx", + "extensions": [ + "ra" + ] + }, + "audio/x-tta": { + "source": "apache" + }, + "audio/x-wav": { + "source": "apache", + "extensions": [ + "wav" + ] + }, + "audio/xm": { + "source": "apache", + "extensions": [ + "xm" + ] + }, + "chemical/x-cdx": { + "source": "apache", + "extensions": [ + "cdx" + ] + }, + "chemical/x-cif": { + "source": "apache", + "extensions": [ + "cif" + ] + }, + "chemical/x-cmdf": { + "source": "apache", + "extensions": [ + "cmdf" + ] + }, + "chemical/x-cml": { + "source": "apache", + "extensions": [ + "cml" + ] + }, + "chemical/x-csml": { + "source": "apache", + "extensions": [ + "csml" + ] + }, + "chemical/x-pdb": { + "source": "apache" + }, + "chemical/x-xyz": { + "source": "apache", + "extensions": [ + "xyz" + ] + }, + "font/collection": { + "source": "iana", + "extensions": [ + "ttc" + ] + }, + "font/otf": { + "source": "iana", + "compressible": true, + "extensions": [ + "otf" + ] + }, + "font/sfnt": { + "source": "iana" + }, + "font/ttf": { + "source": "iana", + "compressible": true, + "extensions": [ + "ttf" + ] + }, + "font/woff": { + "source": "iana", + "extensions": [ + "woff" + ] + }, + "font/woff2": { + "source": "iana", + "extensions": [ + "woff2" + ] + }, + "image/aces": { + "source": "iana", + "extensions": [ + "exr" + ] + }, + "image/apng": { + "compressible": false, + "extensions": [ + "apng" + ] + }, + "image/avci": { + "source": "iana", + "extensions": [ + "avci" + ] + }, + "image/avcs": { + "source": "iana", + "extensions": [ + "avcs" + ] + }, + "image/avif": { + "source": "iana", + "compressible": false, + "extensions": [ + "avif" + ] + }, + "image/bmp": { + "source": "iana", + "compressible": true, + "extensions": [ + "bmp" + ] + }, + "image/cgm": { + "source": "iana", + "extensions": [ + "cgm" + ] + }, + "image/dicom-rle": { + "source": "iana", + "extensions": [ + "drle" + ] + }, + "image/emf": { + "source": "iana", + "extensions": [ + "emf" + ] + }, + "image/fits": { + "source": "iana", + "extensions": [ + "fits" + ] + }, + "image/g3fax": { + "source": "iana", + "extensions": [ + "g3" + ] + }, + "image/gif": { + "source": "iana", + "compressible": false, + "extensions": [ + "gif" + ] + }, + "image/heic": { + "source": "iana", + "extensions": [ + "heic" + ] + }, + "image/heic-sequence": { + "source": "iana", + "extensions": [ + "heics" + ] + }, + "image/heif": { + "source": "iana", + "extensions": [ + "heif" + ] + }, + "image/heif-sequence": { + "source": "iana", + "extensions": [ + "heifs" + ] + }, + "image/hej2k": { + "source": "iana", + "extensions": [ + "hej2" + ] + }, + "image/hsj2": { + "source": "iana", + "extensions": [ + "hsj2" + ] + }, + "image/ief": { + "source": "iana", + "extensions": [ + "ief" + ] + }, + "image/jls": { + "source": "iana", + "extensions": [ + "jls" + ] + }, + "image/jp2": { + "source": "iana", + "compressible": false, + "extensions": [ + "jp2", + "jpg2" + ] + }, + "image/jpeg": { + "source": "iana", + "compressible": false, + "extensions": [ + "jpeg", + "jpg", + "jpe" + ] + }, + "image/jph": { + "source": "iana", + "extensions": [ + "jph" + ] + }, + "image/jphc": { + "source": "iana", + "extensions": [ + "jhc" + ] + }, + "image/jpm": { + "source": "iana", + "compressible": false, + "extensions": [ + "jpm" + ] + }, + "image/jpx": { + "source": "iana", + "compressible": false, + "extensions": [ + "jpx", + "jpf" + ] + }, + "image/jxr": { + "source": "iana", + "extensions": [ + "jxr" + ] + }, + "image/jxra": { + "source": "iana", + "extensions": [ + "jxra" + ] + }, + "image/jxrs": { + "source": "iana", + "extensions": [ + "jxrs" + ] + }, + "image/jxs": { + "source": "iana", + "extensions": [ + "jxs" + ] + }, + "image/jxsc": { + "source": "iana", + "extensions": [ + "jxsc" + ] + }, + "image/jxsi": { + "source": "iana", + "extensions": [ + "jxsi" + ] + }, + "image/jxss": { + "source": "iana", + "extensions": [ + "jxss" + ] + }, + "image/ktx": { + "source": "iana", + "extensions": [ + "ktx" + ] + }, + "image/ktx2": { + "source": "iana", + "extensions": [ + "ktx2" + ] + }, + "image/naplps": { + "source": "iana" + }, + "image/pjpeg": { + "compressible": false + }, + "image/png": { + "source": "iana", + "compressible": false, + "extensions": [ + "png" + ] + }, + "image/prs.btif": { + "source": "iana", + "extensions": [ + "btif" + ] + }, + "image/prs.pti": { + "source": "iana", + "extensions": [ + "pti" + ] + }, + "image/pwg-raster": { + "source": "iana" + }, + "image/sgi": { + "source": "apache", + "extensions": [ + "sgi" + ] + }, + "image/svg+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "svg", + "svgz" + ] + }, + "image/t38": { + "source": "iana", + "extensions": [ + "t38" + ] + }, + "image/tiff": { + "source": "iana", + "compressible": false, + "extensions": [ + "tif", + "tiff" + ] + }, + "image/tiff-fx": { + "source": "iana", + "extensions": [ + "tfx" + ] + }, + "image/vnd.adobe.photoshop": { + "source": "iana", + "compressible": true, + "extensions": [ + "psd" + ] + }, + "image/vnd.airzip.accelerator.azv": { + "source": "iana", + "extensions": [ + "azv" + ] + }, + "image/vnd.cns.inf2": { + "source": "iana" + }, + "image/vnd.dece.graphic": { + "source": "iana", + "extensions": [ + "uvi", + "uvvi", + "uvg", + "uvvg" + ] + }, + "image/vnd.djvu": { + "source": "iana", + "extensions": [ + "djvu", + "djv" + ] + }, + "image/vnd.dvb.subtitle": { + "source": "iana", + "extensions": [ + "sub" + ] + }, + "image/vnd.dwg": { + "source": "iana", + "extensions": [ + "dwg" + ] + }, + "image/vnd.dxf": { + "source": "iana", + "extensions": [ + "dxf" + ] + }, + "image/vnd.fastbidsheet": { + "source": "iana", + "extensions": [ + "fbs" + ] + }, + "image/vnd.fpx": { + "source": "iana", + "extensions": [ + "fpx" + ] + }, + "image/vnd.fst": { + "source": "iana", + "extensions": [ + "fst" + ] + }, + "image/vnd.fujixerox.edmics-mmr": { + "source": "iana", + "extensions": [ + "mmr" + ] + }, + "image/vnd.fujixerox.edmics-rlc": { + "source": "iana", + "extensions": [ + "rlc" + ] + }, + "image/vnd.globalgraphics.pgb": { + "source": "iana" + }, + "image/vnd.microsoft.icon": { + "source": "iana", + "compressible": true, + "extensions": [ + "ico" + ] + }, + "image/vnd.mix": { + "source": "iana" + }, + "image/vnd.mozilla.apng": { + "source": "iana" + }, + "image/vnd.ms-dds": { + "compressible": true, + "extensions": [ + "dds" + ] + }, + "image/vnd.ms-modi": { + "source": "iana", + "extensions": [ + "mdi" + ] + }, + "image/vnd.ms-photo": { + "source": "apache", + "extensions": [ + "wdp" + ] + }, + "image/vnd.net-fpx": { + "source": "iana", + "extensions": [ + "npx" + ] + }, + "image/vnd.pco.b16": { + "source": "iana", + "extensions": [ + "b16" + ] + }, + "image/vnd.radiance": { + "source": "iana" + }, + "image/vnd.sealed.png": { + "source": "iana" + }, + "image/vnd.sealedmedia.softseal.gif": { + "source": "iana" + }, + "image/vnd.sealedmedia.softseal.jpg": { + "source": "iana" + }, + "image/vnd.svf": { + "source": "iana" + }, + "image/vnd.tencent.tap": { + "source": "iana", + "extensions": [ + "tap" + ] + }, + "image/vnd.valve.source.texture": { + "source": "iana", + "extensions": [ + "vtf" + ] + }, + "image/vnd.wap.wbmp": { + "source": "iana", + "extensions": [ + "wbmp" + ] + }, + "image/vnd.xiff": { + "source": "iana", + "extensions": [ + "xif" + ] + }, + "image/vnd.zbrush.pcx": { + "source": "iana", + "extensions": [ + "pcx" + ] + }, + "image/webp": { + "source": "apache", + "extensions": [ + "webp" + ] + }, + "image/wmf": { + "source": "iana", + "extensions": [ + "wmf" + ] + }, + "image/x-3ds": { + "source": "apache", + "extensions": [ + "3ds" + ] + }, + "image/x-cmu-raster": { + "source": "apache", + "extensions": [ + "ras" + ] + }, + "image/x-cmx": { + "source": "apache", + "extensions": [ + "cmx" + ] + }, + "image/x-freehand": { + "source": "apache", + "extensions": [ + "fh", + "fhc", + "fh4", + "fh5", + "fh7" + ] + }, + "image/x-icon": { + "source": "apache", + "compressible": true, + "extensions": [ + "ico" + ] + }, + "image/x-jng": { + "source": "nginx", + "extensions": [ + "jng" + ] + }, + "image/x-mrsid-image": { + "source": "apache", + "extensions": [ + "sid" + ] + }, + "image/x-ms-bmp": { + "source": "nginx", + "compressible": true, + "extensions": [ + "bmp" + ] + }, + "image/x-pcx": { + "source": "apache", + "extensions": [ + "pcx" + ] + }, + "image/x-pict": { + "source": "apache", + "extensions": [ + "pic", + "pct" + ] + }, + "image/x-portable-anymap": { + "source": "apache", + "extensions": [ + "pnm" + ] + }, + "image/x-portable-bitmap": { + "source": "apache", + "extensions": [ + "pbm" + ] + }, + "image/x-portable-graymap": { + "source": "apache", + "extensions": [ + "pgm" + ] + }, + "image/x-portable-pixmap": { + "source": "apache", + "extensions": [ + "ppm" + ] + }, + "image/x-rgb": { + "source": "apache", + "extensions": [ + "rgb" + ] + }, + "image/x-tga": { + "source": "apache", + "extensions": [ + "tga" + ] + }, + "image/x-xbitmap": { + "source": "apache", + "extensions": [ + "xbm" + ] + }, + "image/x-xcf": { + "compressible": false + }, + "image/x-xpixmap": { + "source": "apache", + "extensions": [ + "xpm" + ] + }, + "image/x-xwindowdump": { + "source": "apache", + "extensions": [ + "xwd" + ] + }, + "message/cpim": { + "source": "iana" + }, + "message/delivery-status": { + "source": "iana" + }, + "message/disposition-notification": { + "source": "iana", + "extensions": [ + "disposition-notification" + ] + }, + "message/external-body": { + "source": "iana" + }, + "message/feedback-report": { + "source": "iana" + }, + "message/global": { + "source": "iana", + "extensions": [ + "u8msg" + ] + }, + "message/global-delivery-status": { + "source": "iana", + "extensions": [ + "u8dsn" + ] + }, + "message/global-disposition-notification": { + "source": "iana", + "extensions": [ + "u8mdn" + ] + }, + "message/global-headers": { + "source": "iana", + "extensions": [ + "u8hdr" + ] + }, + "message/http": { + "source": "iana", + "compressible": false + }, + "message/imdn+xml": { + "source": "iana", + "compressible": true + }, + "message/news": { + "source": "iana" + }, + "message/partial": { + "source": "iana", + "compressible": false + }, + "message/rfc822": { + "source": "iana", + "compressible": true, + "extensions": [ + "eml", + "mime" + ] + }, + "message/s-http": { + "source": "iana" + }, + "message/sip": { + "source": "iana" + }, + "message/sipfrag": { + "source": "iana" + }, + "message/tracking-status": { + "source": "iana" + }, + "message/vnd.si.simp": { + "source": "iana" + }, + "message/vnd.wfa.wsc": { + "source": "iana", + "extensions": [ + "wsc" + ] + }, + "model/3mf": { + "source": "iana", + "extensions": [ + "3mf" + ] + }, + "model/e57": { + "source": "iana" + }, + "model/gltf+json": { + "source": "iana", + "compressible": true, + "extensions": [ + "gltf" + ] + }, + "model/gltf-binary": { + "source": "iana", + "compressible": true, + "extensions": [ + "glb" + ] + }, + "model/iges": { + "source": "iana", + "compressible": false, + "extensions": [ + "igs", + "iges" + ] + }, + "model/mesh": { + "source": "iana", + "compressible": false, + "extensions": [ + "msh", + "mesh", + "silo" + ] + }, + "model/mtl": { + "source": "iana", + "extensions": [ + "mtl" + ] + }, + "model/obj": { + "source": "iana", + "extensions": [ + "obj" + ] + }, + "model/step": { + "source": "iana" + }, + "model/step+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "stpx" + ] + }, + "model/step+zip": { + "source": "iana", + "compressible": false, + "extensions": [ + "stpz" + ] + }, + "model/step-xml+zip": { + "source": "iana", + "compressible": false, + "extensions": [ + "stpxz" + ] + }, + "model/stl": { + "source": "iana", + "extensions": [ + "stl" + ] + }, + "model/vnd.collada+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "dae" + ] + }, + "model/vnd.dwf": { + "source": "iana", + "extensions": [ + "dwf" + ] + }, + "model/vnd.flatland.3dml": { + "source": "iana" + }, + "model/vnd.gdl": { + "source": "iana", + "extensions": [ + "gdl" + ] + }, + "model/vnd.gs-gdl": { + "source": "apache" + }, + "model/vnd.gs.gdl": { + "source": "iana" + }, + "model/vnd.gtw": { + "source": "iana", + "extensions": [ + "gtw" + ] + }, + "model/vnd.moml+xml": { + "source": "iana", + "compressible": true + }, + "model/vnd.mts": { + "source": "iana", + "extensions": [ + "mts" + ] + }, + "model/vnd.opengex": { + "source": "iana", + "extensions": [ + "ogex" + ] + }, + "model/vnd.parasolid.transmit.binary": { + "source": "iana", + "extensions": [ + "x_b" + ] + }, + "model/vnd.parasolid.transmit.text": { + "source": "iana", + "extensions": [ + "x_t" + ] + }, + "model/vnd.pytha.pyox": { + "source": "iana" + }, + "model/vnd.rosette.annotated-data-model": { + "source": "iana" + }, + "model/vnd.sap.vds": { + "source": "iana", + "extensions": [ + "vds" + ] + }, + "model/vnd.usdz+zip": { + "source": "iana", + "compressible": false, + "extensions": [ + "usdz" + ] + }, + "model/vnd.valve.source.compiled-map": { + "source": "iana", + "extensions": [ + "bsp" + ] + }, + "model/vnd.vtu": { + "source": "iana", + "extensions": [ + "vtu" + ] + }, + "model/vrml": { + "source": "iana", + "compressible": false, + "extensions": [ + "wrl", + "vrml" + ] + }, + "model/x3d+binary": { + "source": "apache", + "compressible": false, + "extensions": [ + "x3db", + "x3dbz" + ] + }, + "model/x3d+fastinfoset": { + "source": "iana", + "extensions": [ + "x3db" + ] + }, + "model/x3d+vrml": { + "source": "apache", + "compressible": false, + "extensions": [ + "x3dv", + "x3dvz" + ] + }, + "model/x3d+xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "x3d", + "x3dz" + ] + }, + "model/x3d-vrml": { + "source": "iana", + "extensions": [ + "x3dv" + ] + }, + "multipart/alternative": { + "source": "iana", + "compressible": false + }, + "multipart/appledouble": { + "source": "iana" + }, + "multipart/byteranges": { + "source": "iana" + }, + "multipart/digest": { + "source": "iana" + }, + "multipart/encrypted": { + "source": "iana", + "compressible": false + }, + "multipart/form-data": { + "source": "iana", + "compressible": false + }, + "multipart/header-set": { + "source": "iana" + }, + "multipart/mixed": { + "source": "iana" + }, + "multipart/multilingual": { + "source": "iana" + }, + "multipart/parallel": { + "source": "iana" + }, + "multipart/related": { + "source": "iana", + "compressible": false + }, + "multipart/report": { + "source": "iana" + }, + "multipart/signed": { + "source": "iana", + "compressible": false + }, + "multipart/vnd.bint.med-plus": { + "source": "iana" + }, + "multipart/voice-message": { + "source": "iana" + }, + "multipart/x-mixed-replace": { + "source": "iana" + }, + "text/1d-interleaved-parityfec": { + "source": "iana" + }, + "text/cache-manifest": { + "source": "iana", + "compressible": true, + "extensions": [ + "appcache", + "manifest" + ] + }, + "text/calendar": { + "source": "iana", + "extensions": [ + "ics", + "ifb" + ] + }, + "text/calender": { + "compressible": true + }, + "text/cmd": { + "compressible": true + }, + "text/coffeescript": { + "extensions": [ + "coffee", + "litcoffee" + ] + }, + "text/cql": { + "source": "iana" + }, + "text/cql-expression": { + "source": "iana" + }, + "text/cql-identifier": { + "source": "iana" + }, + "text/css": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "css" + ] + }, + "text/csv": { + "source": "iana", + "compressible": true, + "extensions": [ + "csv" + ] + }, + "text/csv-schema": { + "source": "iana" + }, + "text/directory": { + "source": "iana" + }, + "text/dns": { + "source": "iana" + }, + "text/ecmascript": { + "source": "iana" + }, + "text/encaprtp": { + "source": "iana" + }, + "text/enriched": { + "source": "iana" + }, + "text/fhirpath": { + "source": "iana" + }, + "text/flexfec": { + "source": "iana" + }, + "text/fwdred": { + "source": "iana" + }, + "text/gff3": { + "source": "iana" + }, + "text/grammar-ref-list": { + "source": "iana" + }, + "text/html": { + "source": "iana", + "compressible": true, + "extensions": [ + "html", + "htm", + "shtml" + ] + }, + "text/jade": { + "extensions": [ + "jade" + ] + }, + "text/javascript": { + "source": "iana", + "compressible": true + }, + "text/jcr-cnd": { + "source": "iana" + }, + "text/jsx": { + "compressible": true, + "extensions": [ + "jsx" + ] + }, + "text/less": { + "compressible": true, + "extensions": [ + "less" + ] + }, + "text/markdown": { + "source": "iana", + "compressible": true, + "extensions": [ + "markdown", + "md" + ] + }, + "text/mathml": { + "source": "nginx", + "extensions": [ + "mml" + ] + }, + "text/mdx": { + "compressible": true, + "extensions": [ + "mdx" + ] + }, + "text/mizar": { + "source": "iana" + }, + "text/n3": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "n3" + ] + }, + "text/parameters": { + "source": "iana", + "charset": "UTF-8" + }, + "text/parityfec": { + "source": "iana" + }, + "text/plain": { + "source": "iana", + "compressible": true, + "extensions": [ + "txt", + "text", + "conf", + "def", + "list", + "log", + "in", + "ini" + ] + }, + "text/provenance-notation": { + "source": "iana", + "charset": "UTF-8" + }, + "text/prs.fallenstein.rst": { + "source": "iana" + }, + "text/prs.lines.tag": { + "source": "iana", + "extensions": [ + "dsc" + ] + }, + "text/prs.prop.logic": { + "source": "iana" + }, + "text/raptorfec": { + "source": "iana" + }, + "text/red": { + "source": "iana" + }, + "text/rfc822-headers": { + "source": "iana" + }, + "text/richtext": { + "source": "iana", + "compressible": true, + "extensions": [ + "rtx" + ] + }, + "text/rtf": { + "source": "iana", + "compressible": true, + "extensions": [ + "rtf" + ] + }, + "text/rtp-enc-aescm128": { + "source": "iana" + }, + "text/rtploopback": { + "source": "iana" + }, + "text/rtx": { + "source": "iana" + }, + "text/sgml": { + "source": "iana", + "extensions": [ + "sgml", + "sgm" + ] + }, + "text/shaclc": { + "source": "iana" + }, + "text/shex": { + "source": "iana", + "extensions": [ + "shex" + ] + }, + "text/slim": { + "extensions": [ + "slim", + "slm" + ] + }, + "text/spdx": { + "source": "iana", + "extensions": [ + "spdx" + ] + }, + "text/strings": { + "source": "iana" + }, + "text/stylus": { + "extensions": [ + "stylus", + "styl" + ] + }, + "text/t140": { + "source": "iana" + }, + "text/tab-separated-values": { + "source": "iana", + "compressible": true, + "extensions": [ + "tsv" + ] + }, + "text/troff": { + "source": "iana", + "extensions": [ + "t", + "tr", + "roff", + "man", + "me", + "ms" + ] + }, + "text/turtle": { + "source": "iana", + "charset": "UTF-8", + "extensions": [ + "ttl" + ] + }, + "text/ulpfec": { + "source": "iana" + }, + "text/uri-list": { + "source": "iana", + "compressible": true, + "extensions": [ + "uri", + "uris", + "urls" + ] + }, + "text/vcard": { + "source": "iana", + "compressible": true, + "extensions": [ + "vcard" + ] + }, + "text/vnd.a": { + "source": "iana" + }, + "text/vnd.abc": { + "source": "iana" + }, + "text/vnd.ascii-art": { + "source": "iana" + }, + "text/vnd.curl": { + "source": "iana", + "extensions": [ + "curl" + ] + }, + "text/vnd.curl.dcurl": { + "source": "apache", + "extensions": [ + "dcurl" + ] + }, + "text/vnd.curl.mcurl": { + "source": "apache", + "extensions": [ + "mcurl" + ] + }, + "text/vnd.curl.scurl": { + "source": "apache", + "extensions": [ + "scurl" + ] + }, + "text/vnd.debian.copyright": { + "source": "iana", + "charset": "UTF-8" + }, + "text/vnd.dmclientscript": { + "source": "iana" + }, + "text/vnd.dvb.subtitle": { + "source": "iana", + "extensions": [ + "sub" + ] + }, + "text/vnd.esmertec.theme-descriptor": { + "source": "iana", + "charset": "UTF-8" + }, + "text/vnd.familysearch.gedcom": { + "source": "iana", + "extensions": [ + "ged" + ] + }, + "text/vnd.ficlab.flt": { + "source": "iana" + }, + "text/vnd.fly": { + "source": "iana", + "extensions": [ + "fly" + ] + }, + "text/vnd.fmi.flexstor": { + "source": "iana", + "extensions": [ + "flx" + ] + }, + "text/vnd.gml": { + "source": "iana" + }, + "text/vnd.graphviz": { + "source": "iana", + "extensions": [ + "gv" + ] + }, + "text/vnd.hans": { + "source": "iana" + }, + "text/vnd.hgl": { + "source": "iana" + }, + "text/vnd.in3d.3dml": { + "source": "iana", + "extensions": [ + "3dml" + ] + }, + "text/vnd.in3d.spot": { + "source": "iana", + "extensions": [ + "spot" + ] + }, + "text/vnd.iptc.newsml": { + "source": "iana" + }, + "text/vnd.iptc.nitf": { + "source": "iana" + }, + "text/vnd.latex-z": { + "source": "iana" + }, + "text/vnd.motorola.reflex": { + "source": "iana" + }, + "text/vnd.ms-mediapackage": { + "source": "iana" + }, + "text/vnd.net2phone.commcenter.command": { + "source": "iana" + }, + "text/vnd.radisys.msml-basic-layout": { + "source": "iana" + }, + "text/vnd.senx.warpscript": { + "source": "iana" + }, + "text/vnd.si.uricatalogue": { + "source": "iana" + }, + "text/vnd.sosi": { + "source": "iana" + }, + "text/vnd.sun.j2me.app-descriptor": { + "source": "iana", + "charset": "UTF-8", + "extensions": [ + "jad" + ] + }, + "text/vnd.trolltech.linguist": { + "source": "iana", + "charset": "UTF-8" + }, + "text/vnd.wap.si": { + "source": "iana" + }, + "text/vnd.wap.sl": { + "source": "iana" + }, + "text/vnd.wap.wml": { + "source": "iana", + "extensions": [ + "wml" + ] + }, + "text/vnd.wap.wmlscript": { + "source": "iana", + "extensions": [ + "wmls" + ] + }, + "text/vtt": { + "source": "iana", + "charset": "UTF-8", + "compressible": true, + "extensions": [ + "vtt" + ] + }, + "text/x-asm": { + "source": "apache", + "extensions": [ + "s", + "asm" + ] + }, + "text/x-c": { + "source": "apache", + "extensions": [ + "c", + "cc", + "cxx", + "cpp", + "h", + "hh", + "dic" + ] + }, + "text/x-component": { + "source": "nginx", + "extensions": [ + "htc" + ] + }, + "text/x-fortran": { + "source": "apache", + "extensions": [ + "f", + "for", + "f77", + "f90" + ] + }, + "text/x-gwt-rpc": { + "compressible": true + }, + "text/x-handlebars-template": { + "extensions": [ + "hbs" + ] + }, + "text/x-java-source": { + "source": "apache", + "extensions": [ + "java" + ] + }, + "text/x-jquery-tmpl": { + "compressible": true + }, + "text/x-lua": { + "extensions": [ + "lua" + ] + }, + "text/x-markdown": { + "compressible": true, + "extensions": [ + "mkd" + ] + }, + "text/x-nfo": { + "source": "apache", + "extensions": [ + "nfo" + ] + }, + "text/x-opml": { + "source": "apache", + "extensions": [ + "opml" + ] + }, + "text/x-org": { + "compressible": true, + "extensions": [ + "org" + ] + }, + "text/x-pascal": { + "source": "apache", + "extensions": [ + "p", + "pas" + ] + }, + "text/x-processing": { + "compressible": true, + "extensions": [ + "pde" + ] + }, + "text/x-sass": { + "extensions": [ + "sass" + ] + }, + "text/x-scss": { + "extensions": [ + "scss" + ] + }, + "text/x-setext": { + "source": "apache", + "extensions": [ + "etx" + ] + }, + "text/x-sfv": { + "source": "apache", + "extensions": [ + "sfv" + ] + }, + "text/x-suse-ymp": { + "compressible": true, + "extensions": [ + "ymp" + ] + }, + "text/x-uuencode": { + "source": "apache", + "extensions": [ + "uu" + ] + }, + "text/x-vcalendar": { + "source": "apache", + "extensions": [ + "vcs" + ] + }, + "text/x-vcard": { + "source": "apache", + "extensions": [ + "vcf" + ] + }, + "text/xml": { + "source": "iana", + "compressible": true, + "extensions": [ + "xml" + ] + }, + "text/xml-external-parsed-entity": { + "source": "iana" + }, + "text/yaml": { + "compressible": true, + "extensions": [ + "yaml", + "yml" + ] + }, + "video/1d-interleaved-parityfec": { + "source": "iana" + }, + "video/3gpp": { + "source": "iana", + "extensions": [ + "3gp", + "3gpp" + ] + }, + "video/3gpp-tt": { + "source": "iana" + }, + "video/3gpp2": { + "source": "iana", + "extensions": [ + "3g2" + ] + }, + "video/av1": { + "source": "iana" + }, + "video/bmpeg": { + "source": "iana" + }, + "video/bt656": { + "source": "iana" + }, + "video/celb": { + "source": "iana" + }, + "video/dv": { + "source": "iana" + }, + "video/encaprtp": { + "source": "iana" + }, + "video/ffv1": { + "source": "iana" + }, + "video/flexfec": { + "source": "iana" + }, + "video/h261": { + "source": "iana", + "extensions": [ + "h261" + ] + }, + "video/h263": { + "source": "iana", + "extensions": [ + "h263" + ] + }, + "video/h263-1998": { + "source": "iana" + }, + "video/h263-2000": { + "source": "iana" + }, + "video/h264": { + "source": "iana", + "extensions": [ + "h264" + ] + }, + "video/h264-rcdo": { + "source": "iana" + }, + "video/h264-svc": { + "source": "iana" + }, + "video/h265": { + "source": "iana" + }, + "video/iso.segment": { + "source": "iana", + "extensions": [ + "m4s" + ] + }, + "video/jpeg": { + "source": "iana", + "extensions": [ + "jpgv" + ] + }, + "video/jpeg2000": { + "source": "iana" + }, + "video/jpm": { + "source": "apache", + "extensions": [ + "jpm", + "jpgm" + ] + }, + "video/jxsv": { + "source": "iana" + }, + "video/mj2": { + "source": "iana", + "extensions": [ + "mj2", + "mjp2" + ] + }, + "video/mp1s": { + "source": "iana" + }, + "video/mp2p": { + "source": "iana" + }, + "video/mp2t": { + "source": "iana", + "extensions": [ + "ts" + ] + }, + "video/mp4": { + "source": "iana", + "compressible": false, + "extensions": [ + "mp4", + "mp4v", + "mpg4" + ] + }, + "video/mp4v-es": { + "source": "iana" + }, + "video/mpeg": { + "source": "iana", + "compressible": false, + "extensions": [ + "mpeg", + "mpg", + "mpe", + "m1v", + "m2v" + ] + }, + "video/mpeg4-generic": { + "source": "iana" + }, + "video/mpv": { + "source": "iana" + }, + "video/nv": { + "source": "iana" + }, + "video/ogg": { + "source": "iana", + "compressible": false, + "extensions": [ + "ogv" + ] + }, + "video/parityfec": { + "source": "iana" + }, + "video/pointer": { + "source": "iana" + }, + "video/quicktime": { + "source": "iana", + "compressible": false, + "extensions": [ + "qt", + "mov" + ] + }, + "video/raptorfec": { + "source": "iana" + }, + "video/raw": { + "source": "iana" + }, + "video/rtp-enc-aescm128": { + "source": "iana" + }, + "video/rtploopback": { + "source": "iana" + }, + "video/rtx": { + "source": "iana" + }, + "video/scip": { + "source": "iana" + }, + "video/smpte291": { + "source": "iana" + }, + "video/smpte292m": { + "source": "iana" + }, + "video/ulpfec": { + "source": "iana" + }, + "video/vc1": { + "source": "iana" + }, + "video/vc2": { + "source": "iana" + }, + "video/vnd.cctv": { + "source": "iana" + }, + "video/vnd.dece.hd": { + "source": "iana", + "extensions": [ + "uvh", + "uvvh" + ] + }, + "video/vnd.dece.mobile": { + "source": "iana", + "extensions": [ + "uvm", + "uvvm" + ] + }, + "video/vnd.dece.mp4": { + "source": "iana" + }, + "video/vnd.dece.pd": { + "source": "iana", + "extensions": [ + "uvp", + "uvvp" + ] + }, + "video/vnd.dece.sd": { + "source": "iana", + "extensions": [ + "uvs", + "uvvs" + ] + }, + "video/vnd.dece.video": { + "source": "iana", + "extensions": [ + "uvv", + "uvvv" + ] + }, + "video/vnd.directv.mpeg": { + "source": "iana" + }, + "video/vnd.directv.mpeg-tts": { + "source": "iana" + }, + "video/vnd.dlna.mpeg-tts": { + "source": "iana" + }, + "video/vnd.dvb.file": { + "source": "iana", + "extensions": [ + "dvb" + ] + }, + "video/vnd.fvt": { + "source": "iana", + "extensions": [ + "fvt" + ] + }, + "video/vnd.hns.video": { + "source": "iana" + }, + "video/vnd.iptvforum.1dparityfec-1010": { + "source": "iana" + }, + "video/vnd.iptvforum.1dparityfec-2005": { + "source": "iana" + }, + "video/vnd.iptvforum.2dparityfec-1010": { + "source": "iana" + }, + "video/vnd.iptvforum.2dparityfec-2005": { + "source": "iana" + }, + "video/vnd.iptvforum.ttsavc": { + "source": "iana" + }, + "video/vnd.iptvforum.ttsmpeg2": { + "source": "iana" + }, + "video/vnd.motorola.video": { + "source": "iana" + }, + "video/vnd.motorola.videop": { + "source": "iana" + }, + "video/vnd.mpegurl": { + "source": "iana", + "extensions": [ + "mxu", + "m4u" + ] + }, + "video/vnd.ms-playready.media.pyv": { + "source": "iana", + "extensions": [ + "pyv" + ] + }, + "video/vnd.nokia.interleaved-multimedia": { + "source": "iana" + }, + "video/vnd.nokia.mp4vr": { + "source": "iana" + }, + "video/vnd.nokia.videovoip": { + "source": "iana" + }, + "video/vnd.objectvideo": { + "source": "iana" + }, + "video/vnd.radgamettools.bink": { + "source": "iana" + }, + "video/vnd.radgamettools.smacker": { + "source": "iana" + }, + "video/vnd.sealed.mpeg1": { + "source": "iana" + }, + "video/vnd.sealed.mpeg4": { + "source": "iana" + }, + "video/vnd.sealed.swf": { + "source": "iana" + }, + "video/vnd.sealedmedia.softseal.mov": { + "source": "iana" + }, + "video/vnd.uvvu.mp4": { + "source": "iana", + "extensions": [ + "uvu", + "uvvu" + ] + }, + "video/vnd.vivo": { + "source": "iana", + "extensions": [ + "viv" + ] + }, + "video/vnd.youtube.yt": { + "source": "iana" + }, + "video/vp8": { + "source": "iana" + }, + "video/vp9": { + "source": "iana" + }, + "video/webm": { + "source": "apache", + "compressible": false, + "extensions": [ + "webm" + ] + }, + "video/x-f4v": { + "source": "apache", + "extensions": [ + "f4v" + ] + }, + "video/x-fli": { + "source": "apache", + "extensions": [ + "fli" + ] + }, + "video/x-flv": { + "source": "apache", + "compressible": false, + "extensions": [ + "flv" + ] + }, + "video/x-m4v": { + "source": "apache", + "extensions": [ + "m4v" + ] + }, + "video/x-matroska": { + "source": "apache", + "compressible": false, + "extensions": [ + "mkv", + "mk3d", + "mks" + ] + }, + "video/x-mng": { + "source": "apache", + "extensions": [ + "mng" + ] + }, + "video/x-ms-asf": { + "source": "apache", + "extensions": [ + "asf", + "asx" + ] + }, + "video/x-ms-vob": { + "source": "apache", + "extensions": [ + "vob" + ] + }, + "video/x-ms-wm": { + "source": "apache", + "extensions": [ + "wm" + ] + }, + "video/x-ms-wmv": { + "source": "apache", + "compressible": false, + "extensions": [ + "wmv" + ] + }, + "video/x-ms-wmx": { + "source": "apache", + "extensions": [ + "wmx" + ] + }, + "video/x-ms-wvx": { + "source": "apache", + "extensions": [ + "wvx" + ] + }, + "video/x-msvideo": { + "source": "apache", + "extensions": [ + "avi" + ] + }, + "video/x-sgi-movie": { + "source": "apache", + "extensions": [ + "movie" + ] + }, + "video/x-smv": { + "source": "apache", + "extensions": [ + "smv" + ] + }, + "x-conference/x-cooltalk": { + "source": "apache", + "extensions": [ + "ice" + ] + }, + "x-shader/x-fragment": { + "compressible": true + }, + "x-shader/x-vertex": { + "compressible": true + } +}; +function consumeToken(v3) { + const notPos = indexOf(v3, isNotTokenChar); + if (notPos == -1) { + return [ + v3, + "" + ]; + } + if (notPos == 0) { + return [ + "", + v3 + ]; + } + return [ + v3.slice(0, notPos), + v3.slice(notPos) + ]; +} +function consumeValue(v4) { + if (!v4) { + return [ + "", + v4 + ]; + } + if (v4[0] !== `"`) { + return consumeToken(v4); + } + let value14 = ""; + for(let i27 = 1; i27 < v4.length; i27++){ + const r10 = v4[i27]; + if (r10 === `"`) { + return [ + value14, + v4.slice(i27 + 1) + ]; + } + if (r10 === "\\" && i27 + 1 < v4.length && isTSpecial(v4[i27 + 1])) { + value14 += v4[i27 + 1]; + i27++; + continue; + } + if (r10 === "\r" || r10 === "\n") { + return [ + "", + v4 + ]; + } + value14 += v4[i27]; + } + return [ + "", + v4 + ]; +} +function consumeMediaParam(v5) { + let rest = v5.trimStart(); + if (!rest.startsWith(";")) { + return [ + "", + "", + v5 + ]; + } + rest = rest.slice(1); + rest = rest.trimStart(); + let param; + [param, rest] = consumeToken(rest); + param = param.toLowerCase(); + if (!param) { + return [ + "", + "", + v5 + ]; + } + rest = rest.slice(1); + rest = rest.trimStart(); + const [value15, rest2] = consumeValue(rest); + if (value15 == "" && rest2 === rest) { + return [ + "", + "", + v5 + ]; + } + rest = rest2; + return [ + param, + value15, + rest + ]; +} +function decode2331Encoding(v6) { + const sv = v6.split(`'`, 3); + if (sv.length !== 3) { + return undefined; + } + const charset = sv[0].toLowerCase(); + if (!charset) { + return undefined; + } + if (charset != "us-ascii" && charset != "utf-8") { + return undefined; + } + const encv = decodeURI(sv[2]); + if (!encv) { + return undefined; + } + return encv; +} +function indexOf(s9, fn) { + let i28 = -1; + for (const v7 of s9){ + i28++; + if (fn(v7)) { + return i28; + } + } + return -1; +} +function isIterator(obj) { + if (obj == null) { + return false; + } + return typeof obj[Symbol.iterator] === "function"; +} +function isToken(s10) { + if (!s10) { + return false; + } + return indexOf(s10, isNotTokenChar) < 0; +} +function isNotTokenChar(r11) { + return !isTokenChar(r11); +} +function isTokenChar(r12) { + const code5 = r12.charCodeAt(0); + return code5 > 0x20 && code5 < 0x7f && !isTSpecial(r12); +} +function isTSpecial(r13) { + return `()<>@,;:\\"/[]?=`.includes(r13[0]); +} +const CHAR_CODE_SPACE = " ".charCodeAt(0); +const CHAR_CODE_TILDE = "~".charCodeAt(0); +function needsEncoding(s11) { + for (const b8 of s11){ + const charCode = b8.charCodeAt(0); + if ((charCode < CHAR_CODE_SPACE || charCode > CHAR_CODE_TILDE) && b8 !== "\t") { + return true; + } + } + return false; +} +const extensions = new Map(); +const types = new Map(); +(function populateMaps() { + const preference = [ + "nginx", + "apache", + undefined, + "iana" + ]; + for (const type of Object.keys(__default)){ + const mime = __default[type]; + const exts = mime.extensions; + if (!exts || !exts.length) { + continue; + } + extensions.set(type, exts); + for (const ext of exts){ + const current = types.get(ext); + if (current) { + const from = preference.indexOf(__default[current].source); + const to = preference.indexOf(mime.source); + if (current !== "application/octet-stream" && (from > to || from === to && current.startsWith("application/"))) { + continue; + } + } + types.set(ext, type); + } + } +})(); +function contentType(extensionOrType) { + try { + const [mediaType, params = {}] = extensionOrType.includes("/") ? parseMediaType1(extensionOrType) : [ + typeByExtension(extensionOrType), + undefined + ]; + if (!mediaType) { + return undefined; + } + if (!("charset" in params)) { + const charset = getCharset(mediaType); + if (charset) { + params.charset = charset; + } + } + return formatMediaType(mediaType, params); + } catch {} + return undefined; +} +function extension(type) { + const exts = extensionsByType(type); + if (exts) { + return exts[0]; + } + return undefined; +} +function extensionsByType(type) { + try { + const [mediaType] = parseMediaType1(type); + return extensions.get(mediaType); + } catch {} +} +function formatMediaType(type, param) { + let b9 = ""; + const [major, sub] = type.split("/"); + if (!sub) { + if (!isToken(type)) { + return ""; + } + b9 += type.toLowerCase(); + } else { + if (!isToken(major) || !isToken(sub)) { + return ""; + } + b9 += `${major.toLowerCase()}/${sub.toLowerCase()}`; + } + if (param) { + param = isIterator(param) ? Object.fromEntries(param) : param; + const attrs = Object.keys(param); + attrs.sort(); + for (const attribute of attrs){ + if (!isToken(attribute)) { + return ""; + } + const value16 = param[attribute]; + b9 += `; ${attribute.toLowerCase()}`; + const needEnc = needsEncoding(value16); + if (needEnc) { + b9 += "*"; + } + b9 += "="; + if (needEnc) { + b9 += `utf-8''${encodeURIComponent(value16)}`; + continue; + } + if (isToken(value16)) { + b9 += value16; + continue; + } + b9 += `"${value16.replace(/["\\]/gi, (m6)=>`\\${m6}`)}"`; + } + } + return b9; +} +function getCharset(type) { + try { + const [mediaType, params] = parseMediaType1(type); + if (params && params["charset"]) { + return params["charset"]; + } + const entry = __default[mediaType]; + if (entry && entry.charset) { + return entry.charset; + } + if (mediaType.startsWith("text/")) { + return "UTF-8"; + } + } catch {} + return undefined; +} +function parseMediaType1(v8) { + const [base1] = v8.split(";"); + const mediaType = base1.toLowerCase().trim(); + const params = {}; + const continuation = new Map(); + v8 = v8.slice(base1.length); + while(v8.length){ + v8 = v8.trimStart(); + if (v8.length === 0) { + break; + } + const [key12, value17, rest] = consumeMediaParam(v8); + if (!key12) { + if (rest.trim() === ";") { + break; + } + throw new TypeError("Invalid media parameter."); + } + let pmap = params; + const [baseName, rest2] = key12.split("*"); + if (baseName && rest2 != null) { + if (!continuation.has(baseName)) { + continuation.set(baseName, {}); + } + pmap = continuation.get(baseName); + } + if (key12 in pmap) { + throw new TypeError("Duplicate key parsed."); + } + pmap[key12] = value17; + v8 = rest; + } + let str7 = ""; + for (const [key13, pieceMap] of continuation){ + const singlePartKey = `${key13}*`; + const v9 = pieceMap[singlePartKey]; + if (v9) { + const decv = decode2331Encoding(v9); + if (decv) { + params[key13] = decv; + } + continue; + } + str7 = ""; + let valid = false; + for(let n10 = 0;; n10++){ + const simplePart = `${key13}*${n10}`; + let v10 = pieceMap[simplePart]; + if (v10) { + valid = true; + str7 += v10; + continue; + } + const encodedPart = `${simplePart}*`; + v10 = pieceMap[encodedPart]; + if (!v10) { + break; + } + valid = true; + if (n10 === 0) { + const decv = decode2331Encoding(v10); + if (decv) { + str7 += decv; + } + } else { + const decv = decodeURI(v10); + str7 += decv; + } + } + if (valid) { + params[key13] = str7; + } + } + return Object.keys(params).length ? [ + mediaType, + params + ] : [ + mediaType, + undefined + ]; +} +function typeByExtension(extension1) { + extension1 = extension1.startsWith(".") ? extension1.slice(1) : extension1; + return types.get(extension1.toLowerCase()); +} +function readerFromStreamReader(streamReader) { + const buffer2 = new Buffer4(); + return { + async read (p18) { + if (buffer2.empty()) { + const res = await streamReader.read(); if (res.done) { return null; } await writeAll(buffer2, res.value); } - return buffer2.read(p14); + return buffer2.read(p18); } }; } -async function readAll(r10) { +async function readAll(r14) { const buf = new Buffer4(); - await buf.readFrom(r10); + await buf.readFrom(r14); return buf.bytes(); } async function writeAll(w3, arr) { @@ -1332,27 +12697,27 @@ function assertPath(path6) { throw new TypeError(`Path must be a string. Received ${JSON.stringify(path6)}`); } } -function isPosixPathSeparator(code5) { - return code5 === 47; +function isPosixPathSeparator(code6) { + return code6 === 47; } -function isPathSeparator(code6) { - return isPosixPathSeparator(code6) || code6 === 92; +function isPathSeparator(code7) { + return isPosixPathSeparator(code7) || code7 === 92; } -function isWindowsDeviceRoot(code7) { - return code7 >= 97 && code7 <= 122 || code7 >= 65 && code7 <= 90; +function isWindowsDeviceRoot(code8) { + return code8 >= 97 && code8 <= 122 || code8 >= 65 && code8 <= 90; } function normalizeString(path7, allowAboveRoot, separator, isPathSeparator1) { let res = ""; let lastSegmentLength = 0; let lastSlash = -1; let dots = 0; - let code8; - for(let i16 = 0, len3 = path7.length; i16 <= len3; ++i16){ - if (i16 < len3) code8 = path7.charCodeAt(i16); - else if (isPathSeparator1(code8)) break; - else code8 = CHAR_FORWARD_SLASH; - if (isPathSeparator1(code8)) { - if (lastSlash === i16 - 1 || dots === 1) {} else if (lastSlash !== i16 - 1 && dots === 2) { + let code9; + for(let i29 = 0, len3 = path7.length; i29 <= len3; ++i29){ + if (i29 < len3) code9 = path7.charCodeAt(i29); + else if (isPathSeparator1(code9)) break; + else code9 = CHAR_FORWARD_SLASH; + if (isPathSeparator1(code9)) { + if (lastSlash === i29 - 1 || dots === 1) {} else if (lastSlash !== i29 - 1 && dots === 2) { if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 || res.charCodeAt(res.length - 2) !== 46) { if (res.length > 2) { const lastSlashIndex = res.lastIndexOf(separator); @@ -1363,13 +12728,13 @@ function normalizeString(path7, allowAboveRoot, separator, isPathSeparator1) { res = res.slice(0, lastSlashIndex); lastSegmentLength = res.length - 1 - res.lastIndexOf(separator); } - lastSlash = i16; + lastSlash = i29; dots = 0; continue; } else if (res.length === 2 || res.length === 1) { res = ""; lastSegmentLength = 0; - lastSlash = i16; + lastSlash = i29; dots = 0; continue; } @@ -1380,13 +12745,13 @@ function normalizeString(path7, allowAboveRoot, separator, isPathSeparator1) { lastSegmentLength = 2; } } else { - if (res.length > 0) res += separator + path7.slice(lastSlash + 1, i16); - else res = path7.slice(lastSlash + 1, i16); - lastSegmentLength = i16 - lastSlash - 1; + if (res.length > 0) res += separator + path7.slice(lastSlash + 1, i29); + else res = path7.slice(lastSlash + 1, i29); + lastSegmentLength = i29 - lastSlash - 1; } - lastSlash = i16; + lastSlash = i29; dots = 0; - } else if (code8 === 46 && dots !== -1) { + } else if (code9 === 46 && dots !== -1) { ++dots; } else { dots = -1; @@ -1396,10 +12761,10 @@ function normalizeString(path7, allowAboveRoot, separator, isPathSeparator1) { } function _format(sep9, pathObject) { const dir = pathObject.dir || pathObject.root; - const base1 = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); - if (!dir) return base1; - if (dir === pathObject.root) return dir + base1; - return dir + sep9 + base1; + const base2 = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); + if (!dir) return base2; + if (dir === pathObject.root) return dir + base2; + return dir + sep9 + base2; } const WHITESPACE_ENCODINGS = { "\u0009": "%09", @@ -1420,11 +12785,11 @@ function resolve(...pathSegments) { let resolvedDevice = ""; let resolvedTail = ""; let resolvedAbsolute = false; - for(let i17 = pathSegments.length - 1; i17 >= -1; i17--){ + for(let i30 = pathSegments.length - 1; i30 >= -1; i30--){ let path8; const { Deno } = globalThis; - if (i17 >= 0) { - path8 = pathSegments[i17]; + if (i30 >= 0) { + path8 = pathSegments[i30]; } else if (!resolvedDevice) { if (typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a drive-letter-less path without a CWD."); @@ -1445,40 +12810,40 @@ function resolve(...pathSegments) { let rootEnd = 0; let device = ""; let isAbsolute1 = false; - const code9 = path8.charCodeAt(0); + const code10 = path8.charCodeAt(0); if (len4 > 1) { - if (isPathSeparator(code9)) { + if (isPathSeparator(code10)) { isAbsolute1 = true; if (isPathSeparator(path8.charCodeAt(1))) { - let j1 = 2; - let last2 = j1; - for(; j1 < len4; ++j1){ - if (isPathSeparator(path8.charCodeAt(j1))) break; + let j3 = 2; + let last2 = j3; + for(; j3 < len4; ++j3){ + if (isPathSeparator(path8.charCodeAt(j3))) break; } - if (j1 < len4 && j1 !== last2) { - const firstPart = path8.slice(last2, j1); - last2 = j1; - for(; j1 < len4; ++j1){ - if (!isPathSeparator(path8.charCodeAt(j1))) break; + if (j3 < len4 && j3 !== last2) { + const firstPart = path8.slice(last2, j3); + last2 = j3; + for(; j3 < len4; ++j3){ + if (!isPathSeparator(path8.charCodeAt(j3))) break; } - if (j1 < len4 && j1 !== last2) { - last2 = j1; - for(; j1 < len4; ++j1){ - if (isPathSeparator(path8.charCodeAt(j1))) break; + if (j3 < len4 && j3 !== last2) { + last2 = j3; + for(; j3 < len4; ++j3){ + if (isPathSeparator(path8.charCodeAt(j3))) break; } - if (j1 === len4) { + if (j3 === len4) { device = `\\\\${firstPart}\\${path8.slice(last2)}`; - rootEnd = j1; - } else if (j1 !== last2) { - device = `\\\\${firstPart}\\${path8.slice(last2, j1)}`; - rootEnd = j1; + rootEnd = j3; + } else if (j3 !== last2) { + device = `\\\\${firstPart}\\${path8.slice(last2, j3)}`; + rootEnd = j3; } } } } else { rootEnd = 1; } - } else if (isWindowsDeviceRoot(code9)) { + } else if (isWindowsDeviceRoot(code10)) { if (path8.charCodeAt(1) === 58) { device = path8.slice(0, 2); rootEnd = 2; @@ -1490,7 +12855,7 @@ function resolve(...pathSegments) { } } } - } else if (isPathSeparator(code9)) { + } else if (isPathSeparator(code10)) { rootEnd = 1; isAbsolute1 = true; } @@ -1516,39 +12881,39 @@ function normalize(path9) { let rootEnd = 0; let device; let isAbsolute2 = false; - const code10 = path9.charCodeAt(0); + const code11 = path9.charCodeAt(0); if (len5 > 1) { - if (isPathSeparator(code10)) { + if (isPathSeparator(code11)) { isAbsolute2 = true; if (isPathSeparator(path9.charCodeAt(1))) { - let j2 = 2; - let last3 = j2; - for(; j2 < len5; ++j2){ - if (isPathSeparator(path9.charCodeAt(j2))) break; - } - if (j2 < len5 && j2 !== last3) { - const firstPart = path9.slice(last3, j2); - last3 = j2; - for(; j2 < len5; ++j2){ - if (!isPathSeparator(path9.charCodeAt(j2))) break; + let j4 = 2; + let last3 = j4; + for(; j4 < len5; ++j4){ + if (isPathSeparator(path9.charCodeAt(j4))) break; + } + if (j4 < len5 && j4 !== last3) { + const firstPart = path9.slice(last3, j4); + last3 = j4; + for(; j4 < len5; ++j4){ + if (!isPathSeparator(path9.charCodeAt(j4))) break; } - if (j2 < len5 && j2 !== last3) { - last3 = j2; - for(; j2 < len5; ++j2){ - if (isPathSeparator(path9.charCodeAt(j2))) break; + if (j4 < len5 && j4 !== last3) { + last3 = j4; + for(; j4 < len5; ++j4){ + if (isPathSeparator(path9.charCodeAt(j4))) break; } - if (j2 === len5) { + if (j4 === len5) { return `\\\\${firstPart}\\${path9.slice(last3)}\\`; - } else if (j2 !== last3) { - device = `\\\\${firstPart}\\${path9.slice(last3, j2)}`; - rootEnd = j2; + } else if (j4 !== last3) { + device = `\\\\${firstPart}\\${path9.slice(last3, j4)}`; + rootEnd = j4; } } } } else { rootEnd = 1; } - } else if (isWindowsDeviceRoot(code10)) { + } else if (isWindowsDeviceRoot(code11)) { if (path9.charCodeAt(1) === 58) { device = path9.slice(0, 2); rootEnd = 2; @@ -1560,7 +12925,7 @@ function normalize(path9) { } } } - } else if (isPathSeparator(code10)) { + } else if (isPathSeparator(code11)) { return "\\"; } let tail4; @@ -1595,10 +12960,10 @@ function isAbsolute(path10) { assertPath(path10); const len6 = path10.length; if (len6 === 0) return false; - const code11 = path10.charCodeAt(0); - if (isPathSeparator(code11)) { + const code12 = path10.charCodeAt(0); + if (isPathSeparator(code12)) { return true; - } else if (isWindowsDeviceRoot(code11)) { + } else if (isWindowsDeviceRoot(code12)) { if (len6 > 2 && path10.charCodeAt(1) === 58) { if (isPathSeparator(path10.charCodeAt(2))) return true; } @@ -1610,8 +12975,8 @@ function join(...paths) { if (pathsCount === 0) return "."; let joined; let firstPart = null; - for(let i18 = 0; i18 < pathsCount; ++i18){ - const path11 = paths[i18]; + for(let i31 = 0; i31 < pathsCount; ++i31){ + const path11 = paths[i31]; assertPath(path11); if (path11.length > 0) { if (joined === undefined) joined = firstPart = path11; @@ -1621,7 +12986,7 @@ function join(...paths) { if (joined === undefined) return "."; let needsReplace = true; let slashCount = 0; - assert(firstPart != null); + assert1(firstPart != null); if (isPathSeparator(firstPart.charCodeAt(0))) { ++slashCount; const firstLen = firstPart.length; @@ -1675,37 +13040,37 @@ function relative(from, to) { const toLen = toEnd - toStart; const length = fromLen < toLen ? fromLen : toLen; let lastCommonSep = -1; - let i19 = 0; - for(; i19 <= length; ++i19){ - if (i19 === length) { + let i32 = 0; + for(; i32 <= length; ++i32){ + if (i32 === length) { if (toLen > length) { - if (to.charCodeAt(toStart + i19) === 92) { - return toOrig.slice(toStart + i19 + 1); - } else if (i19 === 2) { - return toOrig.slice(toStart + i19); + if (to.charCodeAt(toStart + i32) === 92) { + return toOrig.slice(toStart + i32 + 1); + } else if (i32 === 2) { + return toOrig.slice(toStart + i32); } } if (fromLen > length) { - if (from.charCodeAt(fromStart + i19) === 92) { - lastCommonSep = i19; - } else if (i19 === 2) { + if (from.charCodeAt(fromStart + i32) === 92) { + lastCommonSep = i32; + } else if (i32 === 2) { lastCommonSep = 3; } } break; } - const fromCode = from.charCodeAt(fromStart + i19); - const toCode = to.charCodeAt(toStart + i19); + const fromCode = from.charCodeAt(fromStart + i32); + const toCode = to.charCodeAt(toStart + i32); if (fromCode !== toCode) break; - else if (fromCode === 92) lastCommonSep = i19; + else if (fromCode === 92) lastCommonSep = i32; } - if (i19 !== length && lastCommonSep === -1) { + if (i32 !== length && lastCommonSep === -1) { return toOrig; } let out = ""; if (lastCommonSep === -1) lastCommonSep = 0; - for(i19 = fromStart + lastCommonSep + 1; i19 <= fromEnd; ++i19){ - if (i19 === fromEnd || from.charCodeAt(i19) === 92) { + for(i32 = fromStart + lastCommonSep + 1; i32 <= fromEnd; ++i32){ + if (i32 === fromEnd || from.charCodeAt(i32) === 92) { if (out.length === 0) out += ".."; else out += "\\.."; } @@ -1725,8 +13090,8 @@ function toNamespacedPath(path12) { if (resolvedPath.length >= 3) { if (resolvedPath.charCodeAt(0) === 92) { if (resolvedPath.charCodeAt(1) === 92) { - const code12 = resolvedPath.charCodeAt(2); - if (code12 !== 63 && code12 !== 46) { + const code13 = resolvedPath.charCodeAt(2); + if (code13 !== 63 && code13 !== 46) { return `\\\\?\\UNC\\${resolvedPath.slice(2)}`; } } @@ -1746,36 +13111,36 @@ function dirname(path13) { let end = -1; let matchedSlash = true; let offset1 = 0; - const code13 = path13.charCodeAt(0); + const code14 = path13.charCodeAt(0); if (len7 > 1) { - if (isPathSeparator(code13)) { + if (isPathSeparator(code14)) { rootEnd = offset1 = 1; if (isPathSeparator(path13.charCodeAt(1))) { - let j3 = 2; - let last4 = j3; - for(; j3 < len7; ++j3){ - if (isPathSeparator(path13.charCodeAt(j3))) break; - } - if (j3 < len7 && j3 !== last4) { - last4 = j3; - for(; j3 < len7; ++j3){ - if (!isPathSeparator(path13.charCodeAt(j3))) break; + let j5 = 2; + let last4 = j5; + for(; j5 < len7; ++j5){ + if (isPathSeparator(path13.charCodeAt(j5))) break; + } + if (j5 < len7 && j5 !== last4) { + last4 = j5; + for(; j5 < len7; ++j5){ + if (!isPathSeparator(path13.charCodeAt(j5))) break; } - if (j3 < len7 && j3 !== last4) { - last4 = j3; - for(; j3 < len7; ++j3){ - if (isPathSeparator(path13.charCodeAt(j3))) break; + if (j5 < len7 && j5 !== last4) { + last4 = j5; + for(; j5 < len7; ++j5){ + if (isPathSeparator(path13.charCodeAt(j5))) break; } - if (j3 === len7) { + if (j5 === len7) { return path13; } - if (j3 !== last4) { - rootEnd = offset1 = j3 + 1; + if (j5 !== last4) { + rootEnd = offset1 = j5 + 1; } } } } - } else if (isWindowsDeviceRoot(code13)) { + } else if (isWindowsDeviceRoot(code14)) { if (path13.charCodeAt(1) === 58) { rootEnd = offset1 = 2; if (len7 > 2) { @@ -1783,13 +13148,13 @@ function dirname(path13) { } } } - } else if (isPathSeparator(code13)) { + } else if (isPathSeparator(code14)) { return path13; } - for(let i20 = len7 - 1; i20 >= offset1; --i20){ - if (isPathSeparator(path13.charCodeAt(i20))) { + for(let i33 = len7 - 1; i33 >= offset1; --i33){ + if (isPathSeparator(path13.charCodeAt(i33))) { if (!matchedSlash) { - end = i20; + end = i33; break; } } else { @@ -1810,7 +13175,7 @@ function basename(path14, ext = "") { let start1 = 0; let end = -1; let matchedSlash = true; - let i21; + let i34; if (path14.length >= 2) { const drive = path14.charCodeAt(0); if (isWindowsDeviceRoot(drive)) { @@ -1821,22 +13186,22 @@ function basename(path14, ext = "") { if (ext.length === path14.length && ext === path14) return ""; let extIdx = ext.length - 1; let firstNonSlashEnd = -1; - for(i21 = path14.length - 1; i21 >= start1; --i21){ - const code14 = path14.charCodeAt(i21); - if (isPathSeparator(code14)) { + for(i34 = path14.length - 1; i34 >= start1; --i34){ + const code15 = path14.charCodeAt(i34); + if (isPathSeparator(code15)) { if (!matchedSlash) { - start1 = i21 + 1; + start1 = i34 + 1; break; } } else { if (firstNonSlashEnd === -1) { matchedSlash = false; - firstNonSlashEnd = i21 + 1; + firstNonSlashEnd = i34 + 1; } if (extIdx >= 0) { - if (code14 === ext.charCodeAt(extIdx)) { + if (code15 === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { - end = i21; + end = i34; } } else { extIdx = -1; @@ -1849,15 +13214,15 @@ function basename(path14, ext = "") { else if (end === -1) end = path14.length; return path14.slice(start1, end); } else { - for(i21 = path14.length - 1; i21 >= start1; --i21){ - if (isPathSeparator(path14.charCodeAt(i21))) { + for(i34 = path14.length - 1; i34 >= start1; --i34){ + if (isPathSeparator(path14.charCodeAt(i34))) { if (!matchedSlash) { - start1 = i21 + 1; + start1 = i34 + 1; break; } } else if (end === -1) { matchedSlash = false; - end = i21 + 1; + end = i34 + 1; } } if (end === -1) return ""; @@ -1875,21 +13240,21 @@ function extname(path15) { if (path15.length >= 2 && path15.charCodeAt(1) === 58 && isWindowsDeviceRoot(path15.charCodeAt(0))) { start2 = startPart = 2; } - for(let i22 = path15.length - 1; i22 >= start2; --i22){ - const code15 = path15.charCodeAt(i22); - if (isPathSeparator(code15)) { + for(let i35 = path15.length - 1; i35 >= start2; --i35){ + const code16 = path15.charCodeAt(i35); + if (isPathSeparator(code16)) { if (!matchedSlash) { - startPart = i22 + 1; + startPart = i35 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i22 + 1; + end = i35 + 1; } - if (code15 === 46) { - if (startDot === -1) startDot = i22; + if (code16 === 46) { + if (startDot === -1) startDot = i35; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -1918,35 +13283,35 @@ function parse(path16) { const len8 = path16.length; if (len8 === 0) return ret; let rootEnd = 0; - let code16 = path16.charCodeAt(0); + let code17 = path16.charCodeAt(0); if (len8 > 1) { - if (isPathSeparator(code16)) { + if (isPathSeparator(code17)) { rootEnd = 1; if (isPathSeparator(path16.charCodeAt(1))) { - let j4 = 2; - let last5 = j4; - for(; j4 < len8; ++j4){ - if (isPathSeparator(path16.charCodeAt(j4))) break; - } - if (j4 < len8 && j4 !== last5) { - last5 = j4; - for(; j4 < len8; ++j4){ - if (!isPathSeparator(path16.charCodeAt(j4))) break; + let j6 = 2; + let last5 = j6; + for(; j6 < len8; ++j6){ + if (isPathSeparator(path16.charCodeAt(j6))) break; + } + if (j6 < len8 && j6 !== last5) { + last5 = j6; + for(; j6 < len8; ++j6){ + if (!isPathSeparator(path16.charCodeAt(j6))) break; } - if (j4 < len8 && j4 !== last5) { - last5 = j4; - for(; j4 < len8; ++j4){ - if (isPathSeparator(path16.charCodeAt(j4))) break; + if (j6 < len8 && j6 !== last5) { + last5 = j6; + for(; j6 < len8; ++j6){ + if (isPathSeparator(path16.charCodeAt(j6))) break; } - if (j4 === len8) { - rootEnd = j4; - } else if (j4 !== last5) { - rootEnd = j4 + 1; + if (j6 === len8) { + rootEnd = j6; + } else if (j6 !== last5) { + rootEnd = j6 + 1; } } } } - } else if (isWindowsDeviceRoot(code16)) { + } else if (isWindowsDeviceRoot(code17)) { if (path16.charCodeAt(1) === 58) { rootEnd = 2; if (len8 > 2) { @@ -1963,7 +13328,7 @@ function parse(path16) { } } } - } else if (isPathSeparator(code16)) { + } else if (isPathSeparator(code17)) { ret.root = ret.dir = path16; return ret; } @@ -1972,23 +13337,23 @@ function parse(path16) { let startPart = rootEnd; let end = -1; let matchedSlash = true; - let i23 = path16.length - 1; + let i36 = path16.length - 1; let preDotState = 0; - for(; i23 >= rootEnd; --i23){ - code16 = path16.charCodeAt(i23); - if (isPathSeparator(code16)) { + for(; i36 >= rootEnd; --i36){ + code17 = path16.charCodeAt(i36); + if (isPathSeparator(code17)) { if (!matchedSlash) { - startPart = i23 + 1; + startPart = i36 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i23 + 1; + end = i36 + 1; } - if (code16 === 46) { - if (startDot === -1) startDot = i23; + if (code17 === 46) { + if (startDot === -1) startDot = i36; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -2056,9 +13421,9 @@ const delimiter1 = ":"; function resolve1(...pathSegments) { let resolvedPath = ""; let resolvedAbsolute = false; - for(let i24 = pathSegments.length - 1; i24 >= -1 && !resolvedAbsolute; i24--){ + for(let i37 = pathSegments.length - 1; i37 >= -1 && !resolvedAbsolute; i37--){ let path19; - if (i24 >= 0) path19 = pathSegments[i24]; + if (i37 >= 0) path19 = pathSegments[i37]; else { const { Deno } = globalThis; if (typeof Deno?.cwd !== "function") { @@ -2098,8 +13463,8 @@ function isAbsolute1(path21) { function join1(...paths) { if (paths.length === 0) return "."; let joined; - for(let i25 = 0, len9 = paths.length; i25 < len9; ++i25){ - const path22 = paths[i25]; + for(let i38 = 0, len9 = paths.length; i38 < len9; ++i38){ + const path22 = paths[i38]; assertPath(path22); if (path22.length > 0) { if (!joined) joined = path22; @@ -2130,32 +13495,32 @@ function relative1(from, to) { const toLen = toEnd - toStart; const length = fromLen < toLen ? fromLen : toLen; let lastCommonSep = -1; - let i26 = 0; - for(; i26 <= length; ++i26){ - if (i26 === length) { + let i39 = 0; + for(; i39 <= length; ++i39){ + if (i39 === length) { if (toLen > length) { - if (to.charCodeAt(toStart + i26) === 47) { - return to.slice(toStart + i26 + 1); - } else if (i26 === 0) { - return to.slice(toStart + i26); + if (to.charCodeAt(toStart + i39) === 47) { + return to.slice(toStart + i39 + 1); + } else if (i39 === 0) { + return to.slice(toStart + i39); } } else if (fromLen > length) { - if (from.charCodeAt(fromStart + i26) === 47) { - lastCommonSep = i26; - } else if (i26 === 0) { + if (from.charCodeAt(fromStart + i39) === 47) { + lastCommonSep = i39; + } else if (i39 === 0) { lastCommonSep = 0; } } break; } - const fromCode = from.charCodeAt(fromStart + i26); - const toCode = to.charCodeAt(toStart + i26); + const fromCode = from.charCodeAt(fromStart + i39); + const toCode = to.charCodeAt(toStart + i39); if (fromCode !== toCode) break; - else if (fromCode === 47) lastCommonSep = i26; + else if (fromCode === 47) lastCommonSep = i39; } let out = ""; - for(i26 = fromStart + lastCommonSep + 1; i26 <= fromEnd; ++i26){ - if (i26 === fromEnd || from.charCodeAt(i26) === 47) { + for(i39 = fromStart + lastCommonSep + 1; i39 <= fromEnd; ++i39){ + if (i39 === fromEnd || from.charCodeAt(i39) === 47) { if (out.length === 0) out += ".."; else out += "/.."; } @@ -2176,10 +13541,10 @@ function dirname1(path24) { const hasRoot = path24.charCodeAt(0) === 47; let end = -1; let matchedSlash = true; - for(let i27 = path24.length - 1; i27 >= 1; --i27){ - if (path24.charCodeAt(i27) === 47) { + for(let i40 = path24.length - 1; i40 >= 1; --i40){ + if (path24.charCodeAt(i40) === 47) { if (!matchedSlash) { - end = i27; + end = i40; break; } } else { @@ -2198,27 +13563,27 @@ function basename1(path25, ext = "") { let start3 = 0; let end = -1; let matchedSlash = true; - let i28; + let i41; if (ext !== undefined && ext.length > 0 && ext.length <= path25.length) { if (ext.length === path25.length && ext === path25) return ""; let extIdx = ext.length - 1; let firstNonSlashEnd = -1; - for(i28 = path25.length - 1; i28 >= 0; --i28){ - const code17 = path25.charCodeAt(i28); - if (code17 === 47) { + for(i41 = path25.length - 1; i41 >= 0; --i41){ + const code18 = path25.charCodeAt(i41); + if (code18 === 47) { if (!matchedSlash) { - start3 = i28 + 1; + start3 = i41 + 1; break; } } else { if (firstNonSlashEnd === -1) { matchedSlash = false; - firstNonSlashEnd = i28 + 1; + firstNonSlashEnd = i41 + 1; } if (extIdx >= 0) { - if (code17 === ext.charCodeAt(extIdx)) { + if (code18 === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { - end = i28; + end = i41; } } else { extIdx = -1; @@ -2231,15 +13596,15 @@ function basename1(path25, ext = "") { else if (end === -1) end = path25.length; return path25.slice(start3, end); } else { - for(i28 = path25.length - 1; i28 >= 0; --i28){ - if (path25.charCodeAt(i28) === 47) { + for(i41 = path25.length - 1; i41 >= 0; --i41){ + if (path25.charCodeAt(i41) === 47) { if (!matchedSlash) { - start3 = i28 + 1; + start3 = i41 + 1; break; } } else if (end === -1) { matchedSlash = false; - end = i28 + 1; + end = i41 + 1; } } if (end === -1) return ""; @@ -2253,21 +13618,21 @@ function extname1(path26) { let end = -1; let matchedSlash = true; let preDotState = 0; - for(let i29 = path26.length - 1; i29 >= 0; --i29){ - const code18 = path26.charCodeAt(i29); - if (code18 === 47) { + for(let i42 = path26.length - 1; i42 >= 0; --i42){ + const code19 = path26.charCodeAt(i42); + if (code19 === 47) { if (!matchedSlash) { - startPart = i29 + 1; + startPart = i42 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i29 + 1; + end = i42 + 1; } - if (code18 === 46) { - if (startDot === -1) startDot = i29; + if (code19 === 46) { + if (startDot === -1) startDot = i42; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -2306,23 +13671,23 @@ function parse1(path27) { let startPart = 0; let end = -1; let matchedSlash = true; - let i30 = path27.length - 1; + let i43 = path27.length - 1; let preDotState = 0; - for(; i30 >= start4; --i30){ - const code19 = path27.charCodeAt(i30); - if (code19 === 47) { + for(; i43 >= start4; --i43){ + const code20 = path27.charCodeAt(i43); + if (code20 === 47) { if (!matchedSlash) { - startPart = i30 + 1; + startPart = i43 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i30 + 1; + end = i43 + 1; } - if (code19 === 46) { - if (startDot === -1) startDot = i30; + if (code20 === 46) { + if (startDot === -1) startDot = i43; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -2386,8748 +13751,153 @@ const path = isWindows ? mod1 : mod2; const { join: join2 , normalize: normalize2 } = path; const path1 = isWindows ? mod1 : mod2; const { basename: basename2 , delimiter: delimiter2 , dirname: dirname2 , extname: extname2 , format: format2 , fromFileUrl: fromFileUrl2 , isAbsolute: isAbsolute2 , join: join3 , normalize: normalize3 , parse: parse2 , relative: relative2 , resolve: resolve2 , sep: sep2 , toFileUrl: toFileUrl2 , toNamespacedPath: toNamespacedPath2 , } = path1; -const __default = JSON.parse(`{ - "application/1d-interleaved-parityfec": { - "source": "iana" - }, - "application/3gpdash-qoe-report+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/3gpp-ims+xml": { - "source": "iana", - "compressible": true - }, - "application/3gpphal+json": { - "source": "iana", - "compressible": true - }, - "application/3gpphalforms+json": { - "source": "iana", - "compressible": true - }, - "application/a2l": { - "source": "iana" - }, - "application/ace+cbor": { - "source": "iana" - }, - "application/activemessage": { - "source": "iana" - }, - "application/activity+json": { - "source": "iana", - "compressible": true - }, - "application/alto-costmap+json": { - "source": "iana", - "compressible": true - }, - "application/alto-costmapfilter+json": { - "source": "iana", - "compressible": true - }, - "application/alto-directory+json": { - "source": "iana", - "compressible": true - }, - "application/alto-endpointcost+json": { - "source": "iana", - "compressible": true - }, - "application/alto-endpointcostparams+json": { - "source": "iana", - "compressible": true - }, - "application/alto-endpointprop+json": { - "source": "iana", - "compressible": true - }, - "application/alto-endpointpropparams+json": { - "source": "iana", - "compressible": true - }, - "application/alto-error+json": { - "source": "iana", - "compressible": true - }, - "application/alto-networkmap+json": { - "source": "iana", - "compressible": true - }, - "application/alto-networkmapfilter+json": { - "source": "iana", - "compressible": true - }, - "application/alto-updatestreamcontrol+json": { - "source": "iana", - "compressible": true - }, - "application/alto-updatestreamparams+json": { - "source": "iana", - "compressible": true - }, - "application/aml": { - "source": "iana" - }, - "application/andrew-inset": { - "source": "iana", - "extensions": ["ez"] - }, - "application/applefile": { - "source": "iana" - }, - "application/applixware": { - "source": "apache", - "extensions": ["aw"] - }, - "application/at+jwt": { - "source": "iana" - }, - "application/atf": { - "source": "iana" - }, - "application/atfx": { - "source": "iana" - }, - "application/atom+xml": { - "source": "iana", - "compressible": true, - "extensions": ["atom"] - }, - "application/atomcat+xml": { - "source": "iana", - "compressible": true, - "extensions": ["atomcat"] - }, - "application/atomdeleted+xml": { - "source": "iana", - "compressible": true, - "extensions": ["atomdeleted"] - }, - "application/atomicmail": { - "source": "iana" - }, - "application/atomsvc+xml": { - "source": "iana", - "compressible": true, - "extensions": ["atomsvc"] - }, - "application/atsc-dwd+xml": { - "source": "iana", - "compressible": true, - "extensions": ["dwd"] - }, - "application/atsc-dynamic-event-message": { - "source": "iana" - }, - "application/atsc-held+xml": { - "source": "iana", - "compressible": true, - "extensions": ["held"] - }, - "application/atsc-rdt+json": { - "source": "iana", - "compressible": true - }, - "application/atsc-rsat+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rsat"] - }, - "application/atxml": { - "source": "iana" - }, - "application/auth-policy+xml": { - "source": "iana", - "compressible": true - }, - "application/bacnet-xdd+zip": { - "source": "iana", - "compressible": false - }, - "application/batch-smtp": { - "source": "iana" - }, - "application/bdoc": { - "compressible": false, - "extensions": ["bdoc"] - }, - "application/beep+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/calendar+json": { - "source": "iana", - "compressible": true - }, - "application/calendar+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xcs"] - }, - "application/call-completion": { - "source": "iana" - }, - "application/cals-1840": { - "source": "iana" - }, - "application/captive+json": { - "source": "iana", - "compressible": true - }, - "application/cbor": { - "source": "iana" - }, - "application/cbor-seq": { - "source": "iana" - }, - "application/cccex": { - "source": "iana" - }, - "application/ccmp+xml": { - "source": "iana", - "compressible": true - }, - "application/ccxml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["ccxml"] - }, - "application/cdfx+xml": { - "source": "iana", - "compressible": true, - "extensions": ["cdfx"] - }, - "application/cdmi-capability": { - "source": "iana", - "extensions": ["cdmia"] - }, - "application/cdmi-container": { - "source": "iana", - "extensions": ["cdmic"] - }, - "application/cdmi-domain": { - "source": "iana", - "extensions": ["cdmid"] - }, - "application/cdmi-object": { - "source": "iana", - "extensions": ["cdmio"] - }, - "application/cdmi-queue": { - "source": "iana", - "extensions": ["cdmiq"] - }, - "application/cdni": { - "source": "iana" - }, - "application/cea": { - "source": "iana" - }, - "application/cea-2018+xml": { - "source": "iana", - "compressible": true - }, - "application/cellml+xml": { - "source": "iana", - "compressible": true - }, - "application/cfw": { - "source": "iana" - }, - "application/city+json": { - "source": "iana", - "compressible": true - }, - "application/clr": { - "source": "iana" - }, - "application/clue+xml": { - "source": "iana", - "compressible": true - }, - "application/clue_info+xml": { - "source": "iana", - "compressible": true - }, - "application/cms": { - "source": "iana" - }, - "application/cnrp+xml": { - "source": "iana", - "compressible": true - }, - "application/coap-group+json": { - "source": "iana", - "compressible": true - }, - "application/coap-payload": { - "source": "iana" - }, - "application/commonground": { - "source": "iana" - }, - "application/conference-info+xml": { - "source": "iana", - "compressible": true - }, - "application/cose": { - "source": "iana" - }, - "application/cose-key": { - "source": "iana" - }, - "application/cose-key-set": { - "source": "iana" - }, - "application/cpl+xml": { - "source": "iana", - "compressible": true, - "extensions": ["cpl"] - }, - "application/csrattrs": { - "source": "iana" - }, - "application/csta+xml": { - "source": "iana", - "compressible": true - }, - "application/cstadata+xml": { - "source": "iana", - "compressible": true - }, - "application/csvm+json": { - "source": "iana", - "compressible": true - }, - "application/cu-seeme": { - "source": "apache", - "extensions": ["cu"] - }, - "application/cwt": { - "source": "iana" - }, - "application/cybercash": { - "source": "iana" - }, - "application/dart": { - "compressible": true - }, - "application/dash+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mpd"] - }, - "application/dash-patch+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mpp"] - }, - "application/dashdelta": { - "source": "iana" - }, - "application/davmount+xml": { - "source": "iana", - "compressible": true, - "extensions": ["davmount"] - }, - "application/dca-rft": { - "source": "iana" - }, - "application/dcd": { - "source": "iana" - }, - "application/dec-dx": { - "source": "iana" - }, - "application/dialog-info+xml": { - "source": "iana", - "compressible": true - }, - "application/dicom": { - "source": "iana" - }, - "application/dicom+json": { - "source": "iana", - "compressible": true - }, - "application/dicom+xml": { - "source": "iana", - "compressible": true - }, - "application/dii": { - "source": "iana" - }, - "application/dit": { - "source": "iana" - }, - "application/dns": { - "source": "iana" - }, - "application/dns+json": { - "source": "iana", - "compressible": true - }, - "application/dns-message": { - "source": "iana" - }, - "application/docbook+xml": { - "source": "apache", - "compressible": true, - "extensions": ["dbk"] - }, - "application/dots+cbor": { - "source": "iana" - }, - "application/dskpp+xml": { - "source": "iana", - "compressible": true - }, - "application/dssc+der": { - "source": "iana", - "extensions": ["dssc"] - }, - "application/dssc+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xdssc"] - }, - "application/dvcs": { - "source": "iana" - }, - "application/ecmascript": { - "source": "iana", - "compressible": true, - "extensions": ["es","ecma"] - }, - "application/edi-consent": { - "source": "iana" - }, - "application/edi-x12": { - "source": "iana", - "compressible": false - }, - "application/edifact": { - "source": "iana", - "compressible": false - }, - "application/efi": { - "source": "iana" - }, - "application/elm+json": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/elm+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.cap+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/emergencycalldata.comment+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.control+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.deviceinfo+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.ecall.msd": { - "source": "iana" - }, - "application/emergencycalldata.providerinfo+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.serviceinfo+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.subscriberinfo+xml": { - "source": "iana", - "compressible": true - }, - "application/emergencycalldata.veds+xml": { - "source": "iana", - "compressible": true - }, - "application/emma+xml": { - "source": "iana", - "compressible": true, - "extensions": ["emma"] - }, - "application/emotionml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["emotionml"] - }, - "application/encaprtp": { - "source": "iana" - }, - "application/epp+xml": { - "source": "iana", - "compressible": true - }, - "application/epub+zip": { - "source": "iana", - "compressible": false, - "extensions": ["epub"] - }, - "application/eshop": { - "source": "iana" - }, - "application/exi": { - "source": "iana", - "extensions": ["exi"] - }, - "application/expect-ct-report+json": { - "source": "iana", - "compressible": true - }, - "application/express": { - "source": "iana", - "extensions": ["exp"] - }, - "application/fastinfoset": { - "source": "iana" - }, - "application/fastsoap": { - "source": "iana" - }, - "application/fdt+xml": { - "source": "iana", - "compressible": true, - "extensions": ["fdt"] - }, - "application/fhir+json": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/fhir+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/fido.trusted-apps+json": { - "compressible": true - }, - "application/fits": { - "source": "iana" - }, - "application/flexfec": { - "source": "iana" - }, - "application/font-sfnt": { - "source": "iana" - }, - "application/font-tdpfr": { - "source": "iana", - "extensions": ["pfr"] - }, - "application/font-woff": { - "source": "iana", - "compressible": false - }, - "application/framework-attributes+xml": { - "source": "iana", - "compressible": true - }, - "application/geo+json": { - "source": "iana", - "compressible": true, - "extensions": ["geojson"] - }, - "application/geo+json-seq": { - "source": "iana" - }, - "application/geopackage+sqlite3": { - "source": "iana" - }, - "application/geoxacml+xml": { - "source": "iana", - "compressible": true - }, - "application/gltf-buffer": { - "source": "iana" - }, - "application/gml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["gml"] - }, - "application/gpx+xml": { - "source": "apache", - "compressible": true, - "extensions": ["gpx"] - }, - "application/gxf": { - "source": "apache", - "extensions": ["gxf"] - }, - "application/gzip": { - "source": "iana", - "compressible": false, - "extensions": ["gz"] - }, - "application/h224": { - "source": "iana" - }, - "application/held+xml": { - "source": "iana", - "compressible": true - }, - "application/hjson": { - "extensions": ["hjson"] - }, - "application/http": { - "source": "iana" - }, - "application/hyperstudio": { - "source": "iana", - "extensions": ["stk"] - }, - "application/ibe-key-request+xml": { - "source": "iana", - "compressible": true - }, - "application/ibe-pkg-reply+xml": { - "source": "iana", - "compressible": true - }, - "application/ibe-pp-data": { - "source": "iana" - }, - "application/iges": { - "source": "iana" - }, - "application/im-iscomposing+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/index": { - "source": "iana" - }, - "application/index.cmd": { - "source": "iana" - }, - "application/index.obj": { - "source": "iana" - }, - "application/index.response": { - "source": "iana" - }, - "application/index.vnd": { - "source": "iana" - }, - "application/inkml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["ink","inkml"] - }, - "application/iotp": { - "source": "iana" - }, - "application/ipfix": { - "source": "iana", - "extensions": ["ipfix"] - }, - "application/ipp": { - "source": "iana" - }, - "application/isup": { - "source": "iana" - }, - "application/its+xml": { - "source": "iana", - "compressible": true, - "extensions": ["its"] - }, - "application/java-archive": { - "source": "apache", - "compressible": false, - "extensions": ["jar","war","ear"] - }, - "application/java-serialized-object": { - "source": "apache", - "compressible": false, - "extensions": ["ser"] - }, - "application/java-vm": { - "source": "apache", - "compressible": false, - "extensions": ["class"] - }, - "application/javascript": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["js","mjs"] - }, - "application/jf2feed+json": { - "source": "iana", - "compressible": true - }, - "application/jose": { - "source": "iana" - }, - "application/jose+json": { - "source": "iana", - "compressible": true - }, - "application/jrd+json": { - "source": "iana", - "compressible": true - }, - "application/jscalendar+json": { - "source": "iana", - "compressible": true - }, - "application/json": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["json","map"] - }, - "application/json-patch+json": { - "source": "iana", - "compressible": true - }, - "application/json-seq": { - "source": "iana" - }, - "application/json5": { - "extensions": ["json5"] - }, - "application/jsonml+json": { - "source": "apache", - "compressible": true, - "extensions": ["jsonml"] - }, - "application/jwk+json": { - "source": "iana", - "compressible": true - }, - "application/jwk-set+json": { - "source": "iana", - "compressible": true - }, - "application/jwt": { - "source": "iana" - }, - "application/kpml-request+xml": { - "source": "iana", - "compressible": true - }, - "application/kpml-response+xml": { - "source": "iana", - "compressible": true - }, - "application/ld+json": { - "source": "iana", - "compressible": true, - "extensions": ["jsonld"] - }, - "application/lgr+xml": { - "source": "iana", - "compressible": true, - "extensions": ["lgr"] - }, - "application/link-format": { - "source": "iana" - }, - "application/load-control+xml": { - "source": "iana", - "compressible": true - }, - "application/lost+xml": { - "source": "iana", - "compressible": true, - "extensions": ["lostxml"] - }, - "application/lostsync+xml": { - "source": "iana", - "compressible": true - }, - "application/lpf+zip": { - "source": "iana", - "compressible": false - }, - "application/lxf": { - "source": "iana" - }, - "application/mac-binhex40": { - "source": "iana", - "extensions": ["hqx"] - }, - "application/mac-compactpro": { - "source": "apache", - "extensions": ["cpt"] - }, - "application/macwriteii": { - "source": "iana" - }, - "application/mads+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mads"] - }, - "application/manifest+json": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["webmanifest"] - }, - "application/marc": { - "source": "iana", - "extensions": ["mrc"] - }, - "application/marcxml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mrcx"] - }, - "application/mathematica": { - "source": "iana", - "extensions": ["ma","nb","mb"] - }, - "application/mathml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mathml"] - }, - "application/mathml-content+xml": { - "source": "iana", - "compressible": true - }, - "application/mathml-presentation+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-associated-procedure-description+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-deregister+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-envelope+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-msk+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-msk-response+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-protection-description+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-reception-report+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-register+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-register-response+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-schedule+xml": { - "source": "iana", - "compressible": true - }, - "application/mbms-user-service-description+xml": { - "source": "iana", - "compressible": true - }, - "application/mbox": { - "source": "iana", - "extensions": ["mbox"] - }, - "application/media-policy-dataset+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mpf"] - }, - "application/media_control+xml": { - "source": "iana", - "compressible": true - }, - "application/mediaservercontrol+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mscml"] - }, - "application/merge-patch+json": { - "source": "iana", - "compressible": true - }, - "application/metalink+xml": { - "source": "apache", - "compressible": true, - "extensions": ["metalink"] - }, - "application/metalink4+xml": { - "source": "iana", - "compressible": true, - "extensions": ["meta4"] - }, - "application/mets+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mets"] - }, - "application/mf4": { - "source": "iana" - }, - "application/mikey": { - "source": "iana" - }, - "application/mipc": { - "source": "iana" - }, - "application/missing-blocks+cbor-seq": { - "source": "iana" - }, - "application/mmt-aei+xml": { - "source": "iana", - "compressible": true, - "extensions": ["maei"] - }, - "application/mmt-usd+xml": { - "source": "iana", - "compressible": true, - "extensions": ["musd"] - }, - "application/mods+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mods"] - }, - "application/moss-keys": { - "source": "iana" - }, - "application/moss-signature": { - "source": "iana" - }, - "application/mosskey-data": { - "source": "iana" - }, - "application/mosskey-request": { - "source": "iana" - }, - "application/mp21": { - "source": "iana", - "extensions": ["m21","mp21"] - }, - "application/mp4": { - "source": "iana", - "extensions": ["mp4s","m4p"] - }, - "application/mpeg4-generic": { - "source": "iana" - }, - "application/mpeg4-iod": { - "source": "iana" - }, - "application/mpeg4-iod-xmt": { - "source": "iana" - }, - "application/mrb-consumer+xml": { - "source": "iana", - "compressible": true - }, - "application/mrb-publish+xml": { - "source": "iana", - "compressible": true - }, - "application/msc-ivr+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/msc-mixer+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/msword": { - "source": "iana", - "compressible": false, - "extensions": ["doc","dot"] - }, - "application/mud+json": { - "source": "iana", - "compressible": true - }, - "application/multipart-core": { - "source": "iana" - }, - "application/mxf": { - "source": "iana", - "extensions": ["mxf"] - }, - "application/n-quads": { - "source": "iana", - "extensions": ["nq"] - }, - "application/n-triples": { - "source": "iana", - "extensions": ["nt"] - }, - "application/nasdata": { - "source": "iana" - }, - "application/news-checkgroups": { - "source": "iana", - "charset": "US-ASCII" - }, - "application/news-groupinfo": { - "source": "iana", - "charset": "US-ASCII" - }, - "application/news-transmission": { - "source": "iana" - }, - "application/nlsml+xml": { - "source": "iana", - "compressible": true - }, - "application/node": { - "source": "iana", - "extensions": ["cjs"] - }, - "application/nss": { - "source": "iana" - }, - "application/oauth-authz-req+jwt": { - "source": "iana" - }, - "application/oblivious-dns-message": { - "source": "iana" - }, - "application/ocsp-request": { - "source": "iana" - }, - "application/ocsp-response": { - "source": "iana" - }, - "application/octet-stream": { - "source": "iana", - "compressible": false, - "extensions": ["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"] - }, - "application/oda": { - "source": "iana", - "extensions": ["oda"] - }, - "application/odm+xml": { - "source": "iana", - "compressible": true - }, - "application/odx": { - "source": "iana" - }, - "application/oebps-package+xml": { - "source": "iana", - "compressible": true, - "extensions": ["opf"] - }, - "application/ogg": { - "source": "iana", - "compressible": false, - "extensions": ["ogx"] - }, - "application/omdoc+xml": { - "source": "apache", - "compressible": true, - "extensions": ["omdoc"] - }, - "application/onenote": { - "source": "apache", - "extensions": ["onetoc","onetoc2","onetmp","onepkg"] - }, - "application/opc-nodeset+xml": { - "source": "iana", - "compressible": true - }, - "application/oscore": { - "source": "iana" - }, - "application/oxps": { - "source": "iana", - "extensions": ["oxps"] - }, - "application/p21": { - "source": "iana" - }, - "application/p21+zip": { - "source": "iana", - "compressible": false - }, - "application/p2p-overlay+xml": { - "source": "iana", - "compressible": true, - "extensions": ["relo"] - }, - "application/parityfec": { - "source": "iana" - }, - "application/passport": { - "source": "iana" - }, - "application/patch-ops-error+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xer"] - }, - "application/pdf": { - "source": "iana", - "compressible": false, - "extensions": ["pdf"] - }, - "application/pdx": { - "source": "iana" - }, - "application/pem-certificate-chain": { - "source": "iana" - }, - "application/pgp-encrypted": { - "source": "iana", - "compressible": false, - "extensions": ["pgp"] - }, - "application/pgp-keys": { - "source": "iana", - "extensions": ["asc"] - }, - "application/pgp-signature": { - "source": "iana", - "extensions": ["asc","sig"] - }, - "application/pics-rules": { - "source": "apache", - "extensions": ["prf"] - }, - "application/pidf+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/pidf-diff+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/pkcs10": { - "source": "iana", - "extensions": ["p10"] - }, - "application/pkcs12": { - "source": "iana" - }, - "application/pkcs7-mime": { - "source": "iana", - "extensions": ["p7m","p7c"] - }, - "application/pkcs7-signature": { - "source": "iana", - "extensions": ["p7s"] - }, - "application/pkcs8": { - "source": "iana", - "extensions": ["p8"] - }, - "application/pkcs8-encrypted": { - "source": "iana" - }, - "application/pkix-attr-cert": { - "source": "iana", - "extensions": ["ac"] - }, - "application/pkix-cert": { - "source": "iana", - "extensions": ["cer"] - }, - "application/pkix-crl": { - "source": "iana", - "extensions": ["crl"] - }, - "application/pkix-pkipath": { - "source": "iana", - "extensions": ["pkipath"] - }, - "application/pkixcmp": { - "source": "iana", - "extensions": ["pki"] - }, - "application/pls+xml": { - "source": "iana", - "compressible": true, - "extensions": ["pls"] - }, - "application/poc-settings+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/postscript": { - "source": "iana", - "compressible": true, - "extensions": ["ai","eps","ps"] - }, - "application/ppsp-tracker+json": { - "source": "iana", - "compressible": true - }, - "application/problem+json": { - "source": "iana", - "compressible": true - }, - "application/problem+xml": { - "source": "iana", - "compressible": true - }, - "application/provenance+xml": { - "source": "iana", - "compressible": true, - "extensions": ["provx"] - }, - "application/prs.alvestrand.titrax-sheet": { - "source": "iana" - }, - "application/prs.cww": { - "source": "iana", - "extensions": ["cww"] - }, - "application/prs.cyn": { - "source": "iana", - "charset": "7-BIT" - }, - "application/prs.hpub+zip": { - "source": "iana", - "compressible": false - }, - "application/prs.nprend": { - "source": "iana" - }, - "application/prs.plucker": { - "source": "iana" - }, - "application/prs.rdf-xml-crypt": { - "source": "iana" - }, - "application/prs.xsf+xml": { - "source": "iana", - "compressible": true - }, - "application/pskc+xml": { - "source": "iana", - "compressible": true, - "extensions": ["pskcxml"] - }, - "application/pvd+json": { - "source": "iana", - "compressible": true - }, - "application/qsig": { - "source": "iana" - }, - "application/raml+yaml": { - "compressible": true, - "extensions": ["raml"] - }, - "application/raptorfec": { - "source": "iana" - }, - "application/rdap+json": { - "source": "iana", - "compressible": true - }, - "application/rdf+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rdf","owl"] - }, - "application/reginfo+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rif"] - }, - "application/relax-ng-compact-syntax": { - "source": "iana", - "extensions": ["rnc"] - }, - "application/remote-printing": { - "source": "iana" - }, - "application/reputon+json": { - "source": "iana", - "compressible": true - }, - "application/resource-lists+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rl"] - }, - "application/resource-lists-diff+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rld"] - }, - "application/rfc+xml": { - "source": "iana", - "compressible": true - }, - "application/riscos": { - "source": "iana" - }, - "application/rlmi+xml": { - "source": "iana", - "compressible": true - }, - "application/rls-services+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rs"] - }, - "application/route-apd+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rapd"] - }, - "application/route-s-tsid+xml": { - "source": "iana", - "compressible": true, - "extensions": ["sls"] - }, - "application/route-usd+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rusd"] - }, - "application/rpki-ghostbusters": { - "source": "iana", - "extensions": ["gbr"] - }, - "application/rpki-manifest": { - "source": "iana", - "extensions": ["mft"] - }, - "application/rpki-publication": { - "source": "iana" - }, - "application/rpki-roa": { - "source": "iana", - "extensions": ["roa"] - }, - "application/rpki-updown": { - "source": "iana" - }, - "application/rsd+xml": { - "source": "apache", - "compressible": true, - "extensions": ["rsd"] - }, - "application/rss+xml": { - "source": "apache", - "compressible": true, - "extensions": ["rss"] - }, - "application/rtf": { - "source": "iana", - "compressible": true, - "extensions": ["rtf"] - }, - "application/rtploopback": { - "source": "iana" - }, - "application/rtx": { - "source": "iana" - }, - "application/samlassertion+xml": { - "source": "iana", - "compressible": true - }, - "application/samlmetadata+xml": { - "source": "iana", - "compressible": true - }, - "application/sarif+json": { - "source": "iana", - "compressible": true - }, - "application/sarif-external-properties+json": { - "source": "iana", - "compressible": true - }, - "application/sbe": { - "source": "iana" - }, - "application/sbml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["sbml"] - }, - "application/scaip+xml": { - "source": "iana", - "compressible": true - }, - "application/scim+json": { - "source": "iana", - "compressible": true - }, - "application/scvp-cv-request": { - "source": "iana", - "extensions": ["scq"] - }, - "application/scvp-cv-response": { - "source": "iana", - "extensions": ["scs"] - }, - "application/scvp-vp-request": { - "source": "iana", - "extensions": ["spq"] - }, - "application/scvp-vp-response": { - "source": "iana", - "extensions": ["spp"] - }, - "application/sdp": { - "source": "iana", - "extensions": ["sdp"] - }, - "application/secevent+jwt": { - "source": "iana" - }, - "application/senml+cbor": { - "source": "iana" - }, - "application/senml+json": { - "source": "iana", - "compressible": true - }, - "application/senml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["senmlx"] - }, - "application/senml-etch+cbor": { - "source": "iana" - }, - "application/senml-etch+json": { - "source": "iana", - "compressible": true - }, - "application/senml-exi": { - "source": "iana" - }, - "application/sensml+cbor": { - "source": "iana" - }, - "application/sensml+json": { - "source": "iana", - "compressible": true - }, - "application/sensml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["sensmlx"] - }, - "application/sensml-exi": { - "source": "iana" - }, - "application/sep+xml": { - "source": "iana", - "compressible": true - }, - "application/sep-exi": { - "source": "iana" - }, - "application/session-info": { - "source": "iana" - }, - "application/set-payment": { - "source": "iana" - }, - "application/set-payment-initiation": { - "source": "iana", - "extensions": ["setpay"] - }, - "application/set-registration": { - "source": "iana" - }, - "application/set-registration-initiation": { - "source": "iana", - "extensions": ["setreg"] - }, - "application/sgml": { - "source": "iana" - }, - "application/sgml-open-catalog": { - "source": "iana" - }, - "application/shf+xml": { - "source": "iana", - "compressible": true, - "extensions": ["shf"] - }, - "application/sieve": { - "source": "iana", - "extensions": ["siv","sieve"] - }, - "application/simple-filter+xml": { - "source": "iana", - "compressible": true - }, - "application/simple-message-summary": { - "source": "iana" - }, - "application/simplesymbolcontainer": { - "source": "iana" - }, - "application/sipc": { - "source": "iana" - }, - "application/slate": { - "source": "iana" - }, - "application/smil": { - "source": "iana" - }, - "application/smil+xml": { - "source": "iana", - "compressible": true, - "extensions": ["smi","smil"] - }, - "application/smpte336m": { - "source": "iana" - }, - "application/soap+fastinfoset": { - "source": "iana" - }, - "application/soap+xml": { - "source": "iana", - "compressible": true - }, - "application/sparql-query": { - "source": "iana", - "extensions": ["rq"] - }, - "application/sparql-results+xml": { - "source": "iana", - "compressible": true, - "extensions": ["srx"] - }, - "application/spdx+json": { - "source": "iana", - "compressible": true - }, - "application/spirits-event+xml": { - "source": "iana", - "compressible": true - }, - "application/sql": { - "source": "iana" - }, - "application/srgs": { - "source": "iana", - "extensions": ["gram"] - }, - "application/srgs+xml": { - "source": "iana", - "compressible": true, - "extensions": ["grxml"] - }, - "application/sru+xml": { - "source": "iana", - "compressible": true, - "extensions": ["sru"] - }, - "application/ssdl+xml": { - "source": "apache", - "compressible": true, - "extensions": ["ssdl"] - }, - "application/ssml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["ssml"] - }, - "application/stix+json": { - "source": "iana", - "compressible": true - }, - "application/swid+xml": { - "source": "iana", - "compressible": true, - "extensions": ["swidtag"] - }, - "application/tamp-apex-update": { - "source": "iana" - }, - "application/tamp-apex-update-confirm": { - "source": "iana" - }, - "application/tamp-community-update": { - "source": "iana" - }, - "application/tamp-community-update-confirm": { - "source": "iana" - }, - "application/tamp-error": { - "source": "iana" - }, - "application/tamp-sequence-adjust": { - "source": "iana" - }, - "application/tamp-sequence-adjust-confirm": { - "source": "iana" - }, - "application/tamp-status-query": { - "source": "iana" - }, - "application/tamp-status-response": { - "source": "iana" - }, - "application/tamp-update": { - "source": "iana" - }, - "application/tamp-update-confirm": { - "source": "iana" - }, - "application/tar": { - "compressible": true - }, - "application/taxii+json": { - "source": "iana", - "compressible": true - }, - "application/td+json": { - "source": "iana", - "compressible": true - }, - "application/tei+xml": { - "source": "iana", - "compressible": true, - "extensions": ["tei","teicorpus"] - }, - "application/tetra_isi": { - "source": "iana" - }, - "application/thraud+xml": { - "source": "iana", - "compressible": true, - "extensions": ["tfi"] - }, - "application/timestamp-query": { - "source": "iana" - }, - "application/timestamp-reply": { - "source": "iana" - }, - "application/timestamped-data": { - "source": "iana", - "extensions": ["tsd"] - }, - "application/tlsrpt+gzip": { - "source": "iana" - }, - "application/tlsrpt+json": { - "source": "iana", - "compressible": true - }, - "application/tnauthlist": { - "source": "iana" - }, - "application/token-introspection+jwt": { - "source": "iana" - }, - "application/toml": { - "compressible": true, - "extensions": ["toml"] - }, - "application/trickle-ice-sdpfrag": { - "source": "iana" - }, - "application/trig": { - "source": "iana", - "extensions": ["trig"] - }, - "application/ttml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["ttml"] - }, - "application/tve-trigger": { - "source": "iana" - }, - "application/tzif": { - "source": "iana" - }, - "application/tzif-leap": { - "source": "iana" - }, - "application/ubjson": { - "compressible": false, - "extensions": ["ubj"] - }, - "application/ulpfec": { - "source": "iana" - }, - "application/urc-grpsheet+xml": { - "source": "iana", - "compressible": true - }, - "application/urc-ressheet+xml": { - "source": "iana", - "compressible": true, - "extensions": ["rsheet"] - }, - "application/urc-targetdesc+xml": { - "source": "iana", - "compressible": true, - "extensions": ["td"] - }, - "application/urc-uisocketdesc+xml": { - "source": "iana", - "compressible": true - }, - "application/vcard+json": { - "source": "iana", - "compressible": true - }, - "application/vcard+xml": { - "source": "iana", - "compressible": true - }, - "application/vemmi": { - "source": "iana" - }, - "application/vividence.scriptfile": { - "source": "apache" - }, - "application/vnd.1000minds.decision-model+xml": { - "source": "iana", - "compressible": true, - "extensions": ["1km"] - }, - "application/vnd.3gpp-prose+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp-prose-pc3ch+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp-v2x-local-service-information": { - "source": "iana" - }, - "application/vnd.3gpp.5gnas": { - "source": "iana" - }, - "application/vnd.3gpp.access-transfer-events+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.bsf+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.gmop+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.gtpc": { - "source": "iana" - }, - "application/vnd.3gpp.interworking-data": { - "source": "iana" - }, - "application/vnd.3gpp.lpp": { - "source": "iana" - }, - "application/vnd.3gpp.mc-signalling-ear": { - "source": "iana" - }, - "application/vnd.3gpp.mcdata-affiliation-command+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcdata-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcdata-payload": { - "source": "iana" - }, - "application/vnd.3gpp.mcdata-service-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcdata-signalling": { - "source": "iana" - }, - "application/vnd.3gpp.mcdata-ue-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcdata-user-profile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-affiliation-command+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-floor-request+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-location-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-mbms-usage-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-service-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-signed+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-ue-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-ue-init-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcptt-user-profile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-affiliation-command+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-affiliation-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-location-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-mbms-usage-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-service-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-transmission-request+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-ue-config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mcvideo-user-profile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.mid-call+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.ngap": { - "source": "iana" - }, - "application/vnd.3gpp.pfcp": { - "source": "iana" - }, - "application/vnd.3gpp.pic-bw-large": { - "source": "iana", - "extensions": ["plb"] - }, - "application/vnd.3gpp.pic-bw-small": { - "source": "iana", - "extensions": ["psb"] - }, - "application/vnd.3gpp.pic-bw-var": { - "source": "iana", - "extensions": ["pvb"] - }, - "application/vnd.3gpp.s1ap": { - "source": "iana" - }, - "application/vnd.3gpp.sms": { - "source": "iana" - }, - "application/vnd.3gpp.sms+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.srvcc-ext+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.srvcc-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.state-and-event-info+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp.ussd+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp2.bcmcsinfo+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.3gpp2.sms": { - "source": "iana" - }, - "application/vnd.3gpp2.tcap": { - "source": "iana", - "extensions": ["tcap"] - }, - "application/vnd.3lightssoftware.imagescal": { - "source": "iana" - }, - "application/vnd.3m.post-it-notes": { - "source": "iana", - "extensions": ["pwn"] - }, - "application/vnd.accpac.simply.aso": { - "source": "iana", - "extensions": ["aso"] - }, - "application/vnd.accpac.simply.imp": { - "source": "iana", - "extensions": ["imp"] - }, - "application/vnd.acucobol": { - "source": "iana", - "extensions": ["acu"] - }, - "application/vnd.acucorp": { - "source": "iana", - "extensions": ["atc","acutc"] - }, - "application/vnd.adobe.air-application-installer-package+zip": { - "source": "apache", - "compressible": false, - "extensions": ["air"] - }, - "application/vnd.adobe.flash.movie": { - "source": "iana" - }, - "application/vnd.adobe.formscentral.fcdt": { - "source": "iana", - "extensions": ["fcdt"] - }, - "application/vnd.adobe.fxp": { - "source": "iana", - "extensions": ["fxp","fxpl"] - }, - "application/vnd.adobe.partial-upload": { - "source": "iana" - }, - "application/vnd.adobe.xdp+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xdp"] - }, - "application/vnd.adobe.xfdf": { - "source": "iana", - "extensions": ["xfdf"] - }, - "application/vnd.aether.imp": { - "source": "iana" - }, - "application/vnd.afpc.afplinedata": { - "source": "iana" - }, - "application/vnd.afpc.afplinedata-pagedef": { - "source": "iana" - }, - "application/vnd.afpc.cmoca-cmresource": { - "source": "iana" - }, - "application/vnd.afpc.foca-charset": { - "source": "iana" - }, - "application/vnd.afpc.foca-codedfont": { - "source": "iana" - }, - "application/vnd.afpc.foca-codepage": { - "source": "iana" - }, - "application/vnd.afpc.modca": { - "source": "iana" - }, - "application/vnd.afpc.modca-cmtable": { - "source": "iana" - }, - "application/vnd.afpc.modca-formdef": { - "source": "iana" - }, - "application/vnd.afpc.modca-mediummap": { - "source": "iana" - }, - "application/vnd.afpc.modca-objectcontainer": { - "source": "iana" - }, - "application/vnd.afpc.modca-overlay": { - "source": "iana" - }, - "application/vnd.afpc.modca-pagesegment": { - "source": "iana" - }, - "application/vnd.age": { - "source": "iana", - "extensions": ["age"] - }, - "application/vnd.ah-barcode": { - "source": "iana" - }, - "application/vnd.ahead.space": { - "source": "iana", - "extensions": ["ahead"] - }, - "application/vnd.airzip.filesecure.azf": { - "source": "iana", - "extensions": ["azf"] - }, - "application/vnd.airzip.filesecure.azs": { - "source": "iana", - "extensions": ["azs"] - }, - "application/vnd.amadeus+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.amazon.ebook": { - "source": "apache", - "extensions": ["azw"] - }, - "application/vnd.amazon.mobi8-ebook": { - "source": "iana" - }, - "application/vnd.americandynamics.acc": { - "source": "iana", - "extensions": ["acc"] - }, - "application/vnd.amiga.ami": { - "source": "iana", - "extensions": ["ami"] - }, - "application/vnd.amundsen.maze+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.android.ota": { - "source": "iana" - }, - "application/vnd.android.package-archive": { - "source": "apache", - "compressible": false, - "extensions": ["apk"] - }, - "application/vnd.anki": { - "source": "iana" - }, - "application/vnd.anser-web-certificate-issue-initiation": { - "source": "iana", - "extensions": ["cii"] - }, - "application/vnd.anser-web-funds-transfer-initiation": { - "source": "apache", - "extensions": ["fti"] - }, - "application/vnd.antix.game-component": { - "source": "iana", - "extensions": ["atx"] - }, - "application/vnd.apache.arrow.file": { - "source": "iana" - }, - "application/vnd.apache.arrow.stream": { - "source": "iana" - }, - "application/vnd.apache.thrift.binary": { - "source": "iana" - }, - "application/vnd.apache.thrift.compact": { - "source": "iana" - }, - "application/vnd.apache.thrift.json": { - "source": "iana" - }, - "application/vnd.api+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.aplextor.warrp+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.apothekende.reservation+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.apple.installer+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mpkg"] - }, - "application/vnd.apple.keynote": { - "source": "iana", - "extensions": ["key"] - }, - "application/vnd.apple.mpegurl": { - "source": "iana", - "extensions": ["m3u8"] - }, - "application/vnd.apple.numbers": { - "source": "iana", - "extensions": ["numbers"] - }, - "application/vnd.apple.pages": { - "source": "iana", - "extensions": ["pages"] - }, - "application/vnd.apple.pkpass": { - "compressible": false, - "extensions": ["pkpass"] - }, - "application/vnd.arastra.swi": { - "source": "iana" - }, - "application/vnd.aristanetworks.swi": { - "source": "iana", - "extensions": ["swi"] - }, - "application/vnd.artisan+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.artsquare": { - "source": "iana" - }, - "application/vnd.astraea-software.iota": { - "source": "iana", - "extensions": ["iota"] - }, - "application/vnd.audiograph": { - "source": "iana", - "extensions": ["aep"] - }, - "application/vnd.autopackage": { - "source": "iana" - }, - "application/vnd.avalon+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.avistar+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.balsamiq.bmml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["bmml"] - }, - "application/vnd.balsamiq.bmpr": { - "source": "iana" - }, - "application/vnd.banana-accounting": { - "source": "iana" - }, - "application/vnd.bbf.usp.error": { - "source": "iana" - }, - "application/vnd.bbf.usp.msg": { - "source": "iana" - }, - "application/vnd.bbf.usp.msg+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.bekitzur-stech+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.bint.med-content": { - "source": "iana" - }, - "application/vnd.biopax.rdf+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.blink-idb-value-wrapper": { - "source": "iana" - }, - "application/vnd.blueice.multipass": { - "source": "iana", - "extensions": ["mpm"] - }, - "application/vnd.bluetooth.ep.oob": { - "source": "iana" - }, - "application/vnd.bluetooth.le.oob": { - "source": "iana" - }, - "application/vnd.bmi": { - "source": "iana", - "extensions": ["bmi"] - }, - "application/vnd.bpf": { - "source": "iana" - }, - "application/vnd.bpf3": { - "source": "iana" - }, - "application/vnd.businessobjects": { - "source": "iana", - "extensions": ["rep"] - }, - "application/vnd.byu.uapi+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.cab-jscript": { - "source": "iana" - }, - "application/vnd.canon-cpdl": { - "source": "iana" - }, - "application/vnd.canon-lips": { - "source": "iana" - }, - "application/vnd.capasystems-pg+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.cendio.thinlinc.clientconf": { - "source": "iana" - }, - "application/vnd.century-systems.tcp_stream": { - "source": "iana" - }, - "application/vnd.chemdraw+xml": { - "source": "iana", - "compressible": true, - "extensions": ["cdxml"] - }, - "application/vnd.chess-pgn": { - "source": "iana" - }, - "application/vnd.chipnuts.karaoke-mmd": { - "source": "iana", - "extensions": ["mmd"] - }, - "application/vnd.ciedi": { - "source": "iana" - }, - "application/vnd.cinderella": { - "source": "iana", - "extensions": ["cdy"] - }, - "application/vnd.cirpack.isdn-ext": { - "source": "iana" - }, - "application/vnd.citationstyles.style+xml": { - "source": "iana", - "compressible": true, - "extensions": ["csl"] - }, - "application/vnd.claymore": { - "source": "iana", - "extensions": ["cla"] - }, - "application/vnd.cloanto.rp9": { - "source": "iana", - "extensions": ["rp9"] - }, - "application/vnd.clonk.c4group": { - "source": "iana", - "extensions": ["c4g","c4d","c4f","c4p","c4u"] - }, - "application/vnd.cluetrust.cartomobile-config": { - "source": "iana", - "extensions": ["c11amc"] - }, - "application/vnd.cluetrust.cartomobile-config-pkg": { - "source": "iana", - "extensions": ["c11amz"] - }, - "application/vnd.coffeescript": { - "source": "iana" - }, - "application/vnd.collabio.xodocuments.document": { - "source": "iana" - }, - "application/vnd.collabio.xodocuments.document-template": { - "source": "iana" - }, - "application/vnd.collabio.xodocuments.presentation": { - "source": "iana" - }, - "application/vnd.collabio.xodocuments.presentation-template": { - "source": "iana" - }, - "application/vnd.collabio.xodocuments.spreadsheet": { - "source": "iana" - }, - "application/vnd.collabio.xodocuments.spreadsheet-template": { - "source": "iana" - }, - "application/vnd.collection+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.collection.doc+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.collection.next+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.comicbook+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.comicbook-rar": { - "source": "iana" - }, - "application/vnd.commerce-battelle": { - "source": "iana" - }, - "application/vnd.commonspace": { - "source": "iana", - "extensions": ["csp"] - }, - "application/vnd.contact.cmsg": { - "source": "iana", - "extensions": ["cdbcmsg"] - }, - "application/vnd.coreos.ignition+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.cosmocaller": { - "source": "iana", - "extensions": ["cmc"] - }, - "application/vnd.crick.clicker": { - "source": "iana", - "extensions": ["clkx"] - }, - "application/vnd.crick.clicker.keyboard": { - "source": "iana", - "extensions": ["clkk"] - }, - "application/vnd.crick.clicker.palette": { - "source": "iana", - "extensions": ["clkp"] - }, - "application/vnd.crick.clicker.template": { - "source": "iana", - "extensions": ["clkt"] - }, - "application/vnd.crick.clicker.wordbank": { - "source": "iana", - "extensions": ["clkw"] - }, - "application/vnd.criticaltools.wbs+xml": { - "source": "iana", - "compressible": true, - "extensions": ["wbs"] - }, - "application/vnd.cryptii.pipe+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.crypto-shade-file": { - "source": "iana" - }, - "application/vnd.cryptomator.encrypted": { - "source": "iana" - }, - "application/vnd.cryptomator.vault": { - "source": "iana" - }, - "application/vnd.ctc-posml": { - "source": "iana", - "extensions": ["pml"] - }, - "application/vnd.ctct.ws+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.cups-pdf": { - "source": "iana" - }, - "application/vnd.cups-postscript": { - "source": "iana" - }, - "application/vnd.cups-ppd": { - "source": "iana", - "extensions": ["ppd"] - }, - "application/vnd.cups-raster": { - "source": "iana" - }, - "application/vnd.cups-raw": { - "source": "iana" - }, - "application/vnd.curl": { - "source": "iana" - }, - "application/vnd.curl.car": { - "source": "apache", - "extensions": ["car"] - }, - "application/vnd.curl.pcurl": { - "source": "apache", - "extensions": ["pcurl"] - }, - "application/vnd.cyan.dean.root+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.cybank": { - "source": "iana" - }, - "application/vnd.cyclonedx+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.cyclonedx+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.d2l.coursepackage1p0+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.d3m-dataset": { - "source": "iana" - }, - "application/vnd.d3m-problem": { - "source": "iana" - }, - "application/vnd.dart": { - "source": "iana", - "compressible": true, - "extensions": ["dart"] - }, - "application/vnd.data-vision.rdz": { - "source": "iana", - "extensions": ["rdz"] - }, - "application/vnd.datapackage+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.dataresource+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.dbf": { - "source": "iana", - "extensions": ["dbf"] - }, - "application/vnd.debian.binary-package": { - "source": "iana" - }, - "application/vnd.dece.data": { - "source": "iana", - "extensions": ["uvf","uvvf","uvd","uvvd"] - }, - "application/vnd.dece.ttml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["uvt","uvvt"] - }, - "application/vnd.dece.unspecified": { - "source": "iana", - "extensions": ["uvx","uvvx"] - }, - "application/vnd.dece.zip": { - "source": "iana", - "extensions": ["uvz","uvvz"] - }, - "application/vnd.denovo.fcselayout-link": { - "source": "iana", - "extensions": ["fe_launch"] - }, - "application/vnd.desmume.movie": { - "source": "iana" - }, - "application/vnd.dir-bi.plate-dl-nosuffix": { - "source": "iana" - }, - "application/vnd.dm.delegation+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dna": { - "source": "iana", - "extensions": ["dna"] - }, - "application/vnd.document+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.dolby.mlp": { - "source": "apache", - "extensions": ["mlp"] - }, - "application/vnd.dolby.mobile.1": { - "source": "iana" - }, - "application/vnd.dolby.mobile.2": { - "source": "iana" - }, - "application/vnd.doremir.scorecloud-binary-document": { - "source": "iana" - }, - "application/vnd.dpgraph": { - "source": "iana", - "extensions": ["dpg"] - }, - "application/vnd.dreamfactory": { - "source": "iana", - "extensions": ["dfac"] - }, - "application/vnd.drive+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ds-keypoint": { - "source": "apache", - "extensions": ["kpxx"] - }, - "application/vnd.dtg.local": { - "source": "iana" - }, - "application/vnd.dtg.local.flash": { - "source": "iana" - }, - "application/vnd.dtg.local.html": { - "source": "iana" - }, - "application/vnd.dvb.ait": { - "source": "iana", - "extensions": ["ait"] - }, - "application/vnd.dvb.dvbisl+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.dvbj": { - "source": "iana" - }, - "application/vnd.dvb.esgcontainer": { - "source": "iana" - }, - "application/vnd.dvb.ipdcdftnotifaccess": { - "source": "iana" - }, - "application/vnd.dvb.ipdcesgaccess": { - "source": "iana" - }, - "application/vnd.dvb.ipdcesgaccess2": { - "source": "iana" - }, - "application/vnd.dvb.ipdcesgpdd": { - "source": "iana" - }, - "application/vnd.dvb.ipdcroaming": { - "source": "iana" - }, - "application/vnd.dvb.iptv.alfec-base": { - "source": "iana" - }, - "application/vnd.dvb.iptv.alfec-enhancement": { - "source": "iana" - }, - "application/vnd.dvb.notif-aggregate-root+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.notif-container+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.notif-generic+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.notif-ia-msglist+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.notif-ia-registration-request+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.notif-ia-registration-response+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.notif-init+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.dvb.pfr": { - "source": "iana" - }, - "application/vnd.dvb.service": { - "source": "iana", - "extensions": ["svc"] - }, - "application/vnd.dxr": { - "source": "iana" - }, - "application/vnd.dynageo": { - "source": "iana", - "extensions": ["geo"] - }, - "application/vnd.dzr": { - "source": "iana" - }, - "application/vnd.easykaraoke.cdgdownload": { - "source": "iana" - }, - "application/vnd.ecdis-update": { - "source": "iana" - }, - "application/vnd.ecip.rlp": { - "source": "iana" - }, - "application/vnd.eclipse.ditto+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ecowin.chart": { - "source": "iana", - "extensions": ["mag"] - }, - "application/vnd.ecowin.filerequest": { - "source": "iana" - }, - "application/vnd.ecowin.fileupdate": { - "source": "iana" - }, - "application/vnd.ecowin.series": { - "source": "iana" - }, - "application/vnd.ecowin.seriesrequest": { - "source": "iana" - }, - "application/vnd.ecowin.seriesupdate": { - "source": "iana" - }, - "application/vnd.efi.img": { - "source": "iana" - }, - "application/vnd.efi.iso": { - "source": "iana" - }, - "application/vnd.emclient.accessrequest+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.enliven": { - "source": "iana", - "extensions": ["nml"] - }, - "application/vnd.enphase.envoy": { - "source": "iana" - }, - "application/vnd.eprints.data+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.epson.esf": { - "source": "iana", - "extensions": ["esf"] - }, - "application/vnd.epson.msf": { - "source": "iana", - "extensions": ["msf"] - }, - "application/vnd.epson.quickanime": { - "source": "iana", - "extensions": ["qam"] - }, - "application/vnd.epson.salt": { - "source": "iana", - "extensions": ["slt"] - }, - "application/vnd.epson.ssf": { - "source": "iana", - "extensions": ["ssf"] - }, - "application/vnd.ericsson.quickcall": { - "source": "iana" - }, - "application/vnd.espass-espass+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.eszigno3+xml": { - "source": "iana", - "compressible": true, - "extensions": ["es3","et3"] - }, - "application/vnd.etsi.aoc+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.asic-e+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.etsi.asic-s+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.etsi.cug+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvcommand+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvdiscovery+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvprofile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvsad-bc+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvsad-cod+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvsad-npvr+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvservice+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvsync+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.iptvueprofile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.mcid+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.mheg5": { - "source": "iana" - }, - "application/vnd.etsi.overload-control-policy-dataset+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.pstn+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.sci+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.simservs+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.timestamp-token": { - "source": "iana" - }, - "application/vnd.etsi.tsl+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.etsi.tsl.der": { - "source": "iana" - }, - "application/vnd.eu.kasparian.car+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.eudora.data": { - "source": "iana" - }, - "application/vnd.evolv.ecig.profile": { - "source": "iana" - }, - "application/vnd.evolv.ecig.settings": { - "source": "iana" - }, - "application/vnd.evolv.ecig.theme": { - "source": "iana" - }, - "application/vnd.exstream-empower+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.exstream-package": { - "source": "iana" - }, - "application/vnd.ezpix-album": { - "source": "iana", - "extensions": ["ez2"] - }, - "application/vnd.ezpix-package": { - "source": "iana", - "extensions": ["ez3"] - }, - "application/vnd.f-secure.mobile": { - "source": "iana" - }, - "application/vnd.familysearch.gedcom+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.fastcopy-disk-image": { - "source": "iana" - }, - "application/vnd.fdf": { - "source": "iana", - "extensions": ["fdf"] - }, - "application/vnd.fdsn.mseed": { - "source": "iana", - "extensions": ["mseed"] - }, - "application/vnd.fdsn.seed": { - "source": "iana", - "extensions": ["seed","dataless"] - }, - "application/vnd.ffsns": { - "source": "iana" - }, - "application/vnd.ficlab.flb+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.filmit.zfc": { - "source": "iana" - }, - "application/vnd.fints": { - "source": "iana" - }, - "application/vnd.firemonkeys.cloudcell": { - "source": "iana" - }, - "application/vnd.flographit": { - "source": "iana", - "extensions": ["gph"] - }, - "application/vnd.fluxtime.clip": { - "source": "iana", - "extensions": ["ftc"] - }, - "application/vnd.font-fontforge-sfd": { - "source": "iana" - }, - "application/vnd.framemaker": { - "source": "iana", - "extensions": ["fm","frame","maker","book"] - }, - "application/vnd.frogans.fnc": { - "source": "iana", - "extensions": ["fnc"] - }, - "application/vnd.frogans.ltf": { - "source": "iana", - "extensions": ["ltf"] - }, - "application/vnd.fsc.weblaunch": { - "source": "iana", - "extensions": ["fsc"] - }, - "application/vnd.fujifilm.fb.docuworks": { - "source": "iana" - }, - "application/vnd.fujifilm.fb.docuworks.binder": { - "source": "iana" - }, - "application/vnd.fujifilm.fb.docuworks.container": { - "source": "iana" - }, - "application/vnd.fujifilm.fb.jfi+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.fujitsu.oasys": { - "source": "iana", - "extensions": ["oas"] - }, - "application/vnd.fujitsu.oasys2": { - "source": "iana", - "extensions": ["oa2"] - }, - "application/vnd.fujitsu.oasys3": { - "source": "iana", - "extensions": ["oa3"] - }, - "application/vnd.fujitsu.oasysgp": { - "source": "iana", - "extensions": ["fg5"] - }, - "application/vnd.fujitsu.oasysprs": { - "source": "iana", - "extensions": ["bh2"] - }, - "application/vnd.fujixerox.art-ex": { - "source": "iana" - }, - "application/vnd.fujixerox.art4": { - "source": "iana" - }, - "application/vnd.fujixerox.ddd": { - "source": "iana", - "extensions": ["ddd"] - }, - "application/vnd.fujixerox.docuworks": { - "source": "iana", - "extensions": ["xdw"] - }, - "application/vnd.fujixerox.docuworks.binder": { - "source": "iana", - "extensions": ["xbd"] - }, - "application/vnd.fujixerox.docuworks.container": { - "source": "iana" - }, - "application/vnd.fujixerox.hbpl": { - "source": "iana" - }, - "application/vnd.fut-misnet": { - "source": "iana" - }, - "application/vnd.futoin+cbor": { - "source": "iana" - }, - "application/vnd.futoin+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.fuzzysheet": { - "source": "iana", - "extensions": ["fzs"] - }, - "application/vnd.genomatix.tuxedo": { - "source": "iana", - "extensions": ["txd"] - }, - "application/vnd.gentics.grd+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.geo+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.geocube+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.geogebra.file": { - "source": "iana", - "extensions": ["ggb"] - }, - "application/vnd.geogebra.slides": { - "source": "iana" - }, - "application/vnd.geogebra.tool": { - "source": "iana", - "extensions": ["ggt"] - }, - "application/vnd.geometry-explorer": { - "source": "iana", - "extensions": ["gex","gre"] - }, - "application/vnd.geonext": { - "source": "iana", - "extensions": ["gxt"] - }, - "application/vnd.geoplan": { - "source": "iana", - "extensions": ["g2w"] - }, - "application/vnd.geospace": { - "source": "iana", - "extensions": ["g3w"] - }, - "application/vnd.gerber": { - "source": "iana" - }, - "application/vnd.globalplatform.card-content-mgt": { - "source": "iana" - }, - "application/vnd.globalplatform.card-content-mgt-response": { - "source": "iana" - }, - "application/vnd.gmx": { - "source": "iana", - "extensions": ["gmx"] - }, - "application/vnd.google-apps.document": { - "compressible": false, - "extensions": ["gdoc"] - }, - "application/vnd.google-apps.presentation": { - "compressible": false, - "extensions": ["gslides"] - }, - "application/vnd.google-apps.spreadsheet": { - "compressible": false, - "extensions": ["gsheet"] - }, - "application/vnd.google-earth.kml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["kml"] - }, - "application/vnd.google-earth.kmz": { - "source": "iana", - "compressible": false, - "extensions": ["kmz"] - }, - "application/vnd.gov.sk.e-form+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.gov.sk.e-form+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.gov.sk.xmldatacontainer+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.grafeq": { - "source": "iana", - "extensions": ["gqf","gqs"] - }, - "application/vnd.gridmp": { - "source": "iana" - }, - "application/vnd.groove-account": { - "source": "iana", - "extensions": ["gac"] - }, - "application/vnd.groove-help": { - "source": "iana", - "extensions": ["ghf"] - }, - "application/vnd.groove-identity-message": { - "source": "iana", - "extensions": ["gim"] - }, - "application/vnd.groove-injector": { - "source": "iana", - "extensions": ["grv"] - }, - "application/vnd.groove-tool-message": { - "source": "iana", - "extensions": ["gtm"] - }, - "application/vnd.groove-tool-template": { - "source": "iana", - "extensions": ["tpl"] - }, - "application/vnd.groove-vcard": { - "source": "iana", - "extensions": ["vcg"] - }, - "application/vnd.hal+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.hal+xml": { - "source": "iana", - "compressible": true, - "extensions": ["hal"] - }, - "application/vnd.handheld-entertainment+xml": { - "source": "iana", - "compressible": true, - "extensions": ["zmm"] - }, - "application/vnd.hbci": { - "source": "iana", - "extensions": ["hbci"] - }, - "application/vnd.hc+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.hcl-bireports": { - "source": "iana" - }, - "application/vnd.hdt": { - "source": "iana" - }, - "application/vnd.heroku+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.hhe.lesson-player": { - "source": "iana", - "extensions": ["les"] - }, - "application/vnd.hl7cda+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/vnd.hl7v2+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/vnd.hp-hpgl": { - "source": "iana", - "extensions": ["hpgl"] - }, - "application/vnd.hp-hpid": { - "source": "iana", - "extensions": ["hpid"] - }, - "application/vnd.hp-hps": { - "source": "iana", - "extensions": ["hps"] - }, - "application/vnd.hp-jlyt": { - "source": "iana", - "extensions": ["jlt"] - }, - "application/vnd.hp-pcl": { - "source": "iana", - "extensions": ["pcl"] - }, - "application/vnd.hp-pclxl": { - "source": "iana", - "extensions": ["pclxl"] - }, - "application/vnd.httphone": { - "source": "iana" - }, - "application/vnd.hydrostatix.sof-data": { - "source": "iana", - "extensions": ["sfd-hdstx"] - }, - "application/vnd.hyper+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.hyper-item+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.hyperdrive+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.hzn-3d-crossword": { - "source": "iana" - }, - "application/vnd.ibm.afplinedata": { - "source": "iana" - }, - "application/vnd.ibm.electronic-media": { - "source": "iana" - }, - "application/vnd.ibm.minipay": { - "source": "iana", - "extensions": ["mpy"] - }, - "application/vnd.ibm.modcap": { - "source": "iana", - "extensions": ["afp","listafp","list3820"] - }, - "application/vnd.ibm.rights-management": { - "source": "iana", - "extensions": ["irm"] - }, - "application/vnd.ibm.secure-container": { - "source": "iana", - "extensions": ["sc"] - }, - "application/vnd.iccprofile": { - "source": "iana", - "extensions": ["icc","icm"] - }, - "application/vnd.ieee.1905": { - "source": "iana" - }, - "application/vnd.igloader": { - "source": "iana", - "extensions": ["igl"] - }, - "application/vnd.imagemeter.folder+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.imagemeter.image+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.immervision-ivp": { - "source": "iana", - "extensions": ["ivp"] - }, - "application/vnd.immervision-ivu": { - "source": "iana", - "extensions": ["ivu"] - }, - "application/vnd.ims.imsccv1p1": { - "source": "iana" - }, - "application/vnd.ims.imsccv1p2": { - "source": "iana" - }, - "application/vnd.ims.imsccv1p3": { - "source": "iana" - }, - "application/vnd.ims.lis.v2.result+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ims.lti.v2.toolconsumerprofile+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ims.lti.v2.toolproxy+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ims.lti.v2.toolproxy.id+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ims.lti.v2.toolsettings+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ims.lti.v2.toolsettings.simple+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.informedcontrol.rms+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.informix-visionary": { - "source": "iana" - }, - "application/vnd.infotech.project": { - "source": "iana" - }, - "application/vnd.infotech.project+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.innopath.wamp.notification": { - "source": "iana" - }, - "application/vnd.insors.igm": { - "source": "iana", - "extensions": ["igm"] - }, - "application/vnd.intercon.formnet": { - "source": "iana", - "extensions": ["xpw","xpx"] - }, - "application/vnd.intergeo": { - "source": "iana", - "extensions": ["i2g"] - }, - "application/vnd.intertrust.digibox": { - "source": "iana" - }, - "application/vnd.intertrust.nncp": { - "source": "iana" - }, - "application/vnd.intu.qbo": { - "source": "iana", - "extensions": ["qbo"] - }, - "application/vnd.intu.qfx": { - "source": "iana", - "extensions": ["qfx"] - }, - "application/vnd.iptc.g2.catalogitem+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.iptc.g2.conceptitem+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.iptc.g2.knowledgeitem+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.iptc.g2.newsitem+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.iptc.g2.newsmessage+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.iptc.g2.packageitem+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.iptc.g2.planningitem+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.ipunplugged.rcprofile": { - "source": "iana", - "extensions": ["rcprofile"] - }, - "application/vnd.irepository.package+xml": { - "source": "iana", - "compressible": true, - "extensions": ["irp"] - }, - "application/vnd.is-xpr": { - "source": "iana", - "extensions": ["xpr"] - }, - "application/vnd.isac.fcs": { - "source": "iana", - "extensions": ["fcs"] - }, - "application/vnd.iso11783-10+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.jam": { - "source": "iana", - "extensions": ["jam"] - }, - "application/vnd.japannet-directory-service": { - "source": "iana" - }, - "application/vnd.japannet-jpnstore-wakeup": { - "source": "iana" - }, - "application/vnd.japannet-payment-wakeup": { - "source": "iana" - }, - "application/vnd.japannet-registration": { - "source": "iana" - }, - "application/vnd.japannet-registration-wakeup": { - "source": "iana" - }, - "application/vnd.japannet-setstore-wakeup": { - "source": "iana" - }, - "application/vnd.japannet-verification": { - "source": "iana" - }, - "application/vnd.japannet-verification-wakeup": { - "source": "iana" - }, - "application/vnd.jcp.javame.midlet-rms": { - "source": "iana", - "extensions": ["rms"] - }, - "application/vnd.jisp": { - "source": "iana", - "extensions": ["jisp"] - }, - "application/vnd.joost.joda-archive": { - "source": "iana", - "extensions": ["joda"] - }, - "application/vnd.jsk.isdn-ngn": { - "source": "iana" - }, - "application/vnd.kahootz": { - "source": "iana", - "extensions": ["ktz","ktr"] - }, - "application/vnd.kde.karbon": { - "source": "iana", - "extensions": ["karbon"] - }, - "application/vnd.kde.kchart": { - "source": "iana", - "extensions": ["chrt"] - }, - "application/vnd.kde.kformula": { - "source": "iana", - "extensions": ["kfo"] - }, - "application/vnd.kde.kivio": { - "source": "iana", - "extensions": ["flw"] - }, - "application/vnd.kde.kontour": { - "source": "iana", - "extensions": ["kon"] - }, - "application/vnd.kde.kpresenter": { - "source": "iana", - "extensions": ["kpr","kpt"] - }, - "application/vnd.kde.kspread": { - "source": "iana", - "extensions": ["ksp"] - }, - "application/vnd.kde.kword": { - "source": "iana", - "extensions": ["kwd","kwt"] - }, - "application/vnd.kenameaapp": { - "source": "iana", - "extensions": ["htke"] - }, - "application/vnd.kidspiration": { - "source": "iana", - "extensions": ["kia"] - }, - "application/vnd.kinar": { - "source": "iana", - "extensions": ["kne","knp"] - }, - "application/vnd.koan": { - "source": "iana", - "extensions": ["skp","skd","skt","skm"] - }, - "application/vnd.kodak-descriptor": { - "source": "iana", - "extensions": ["sse"] - }, - "application/vnd.las": { - "source": "iana" - }, - "application/vnd.las.las+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.las.las+xml": { - "source": "iana", - "compressible": true, - "extensions": ["lasxml"] - }, - "application/vnd.laszip": { - "source": "iana" - }, - "application/vnd.leap+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.liberty-request+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.llamagraphics.life-balance.desktop": { - "source": "iana", - "extensions": ["lbd"] - }, - "application/vnd.llamagraphics.life-balance.exchange+xml": { - "source": "iana", - "compressible": true, - "extensions": ["lbe"] - }, - "application/vnd.logipipe.circuit+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.loom": { - "source": "iana" - }, - "application/vnd.lotus-1-2-3": { - "source": "iana", - "extensions": ["123"] - }, - "application/vnd.lotus-approach": { - "source": "iana", - "extensions": ["apr"] - }, - "application/vnd.lotus-freelance": { - "source": "iana", - "extensions": ["pre"] - }, - "application/vnd.lotus-notes": { - "source": "iana", - "extensions": ["nsf"] - }, - "application/vnd.lotus-organizer": { - "source": "iana", - "extensions": ["org"] - }, - "application/vnd.lotus-screencam": { - "source": "iana", - "extensions": ["scm"] - }, - "application/vnd.lotus-wordpro": { - "source": "iana", - "extensions": ["lwp"] - }, - "application/vnd.macports.portpkg": { - "source": "iana", - "extensions": ["portpkg"] - }, - "application/vnd.mapbox-vector-tile": { - "source": "iana", - "extensions": ["mvt"] - }, - "application/vnd.marlin.drm.actiontoken+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.marlin.drm.conftoken+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.marlin.drm.license+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.marlin.drm.mdcf": { - "source": "iana" - }, - "application/vnd.mason+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.maxar.archive.3tz+zip": { - "source": "iana", - "compressible": false - }, - "application/vnd.maxmind.maxmind-db": { - "source": "iana" - }, - "application/vnd.mcd": { - "source": "iana", - "extensions": ["mcd"] - }, - "application/vnd.medcalcdata": { - "source": "iana", - "extensions": ["mc1"] - }, - "application/vnd.mediastation.cdkey": { - "source": "iana", - "extensions": ["cdkey"] - }, - "application/vnd.meridian-slingshot": { - "source": "iana" - }, - "application/vnd.mfer": { - "source": "iana", - "extensions": ["mwf"] - }, - "application/vnd.mfmp": { - "source": "iana", - "extensions": ["mfm"] - }, - "application/vnd.micro+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.micrografx.flo": { - "source": "iana", - "extensions": ["flo"] - }, - "application/vnd.micrografx.igx": { - "source": "iana", - "extensions": ["igx"] - }, - "application/vnd.microsoft.portable-executable": { - "source": "iana" - }, - "application/vnd.microsoft.windows.thumbnail-cache": { - "source": "iana" - }, - "application/vnd.miele+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.mif": { - "source": "iana", - "extensions": ["mif"] - }, - "application/vnd.minisoft-hp3000-save": { - "source": "iana" - }, - "application/vnd.mitsubishi.misty-guard.trustweb": { - "source": "iana" - }, - "application/vnd.mobius.daf": { - "source": "iana", - "extensions": ["daf"] - }, - "application/vnd.mobius.dis": { - "source": "iana", - "extensions": ["dis"] - }, - "application/vnd.mobius.mbk": { - "source": "iana", - "extensions": ["mbk"] - }, - "application/vnd.mobius.mqy": { - "source": "iana", - "extensions": ["mqy"] - }, - "application/vnd.mobius.msl": { - "source": "iana", - "extensions": ["msl"] - }, - "application/vnd.mobius.plc": { - "source": "iana", - "extensions": ["plc"] - }, - "application/vnd.mobius.txf": { - "source": "iana", - "extensions": ["txf"] - }, - "application/vnd.mophun.application": { - "source": "iana", - "extensions": ["mpn"] - }, - "application/vnd.mophun.certificate": { - "source": "iana", - "extensions": ["mpc"] - }, - "application/vnd.motorola.flexsuite": { - "source": "iana" - }, - "application/vnd.motorola.flexsuite.adsi": { - "source": "iana" - }, - "application/vnd.motorola.flexsuite.fis": { - "source": "iana" - }, - "application/vnd.motorola.flexsuite.gotap": { - "source": "iana" - }, - "application/vnd.motorola.flexsuite.kmr": { - "source": "iana" - }, - "application/vnd.motorola.flexsuite.ttc": { - "source": "iana" - }, - "application/vnd.motorola.flexsuite.wem": { - "source": "iana" - }, - "application/vnd.motorola.iprm": { - "source": "iana" - }, - "application/vnd.mozilla.xul+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xul"] - }, - "application/vnd.ms-3mfdocument": { - "source": "iana" - }, - "application/vnd.ms-artgalry": { - "source": "iana", - "extensions": ["cil"] - }, - "application/vnd.ms-asf": { - "source": "iana" - }, - "application/vnd.ms-cab-compressed": { - "source": "iana", - "extensions": ["cab"] - }, - "application/vnd.ms-color.iccprofile": { - "source": "apache" - }, - "application/vnd.ms-excel": { - "source": "iana", - "compressible": false, - "extensions": ["xls","xlm","xla","xlc","xlt","xlw"] - }, - "application/vnd.ms-excel.addin.macroenabled.12": { - "source": "iana", - "extensions": ["xlam"] - }, - "application/vnd.ms-excel.sheet.binary.macroenabled.12": { - "source": "iana", - "extensions": ["xlsb"] - }, - "application/vnd.ms-excel.sheet.macroenabled.12": { - "source": "iana", - "extensions": ["xlsm"] - }, - "application/vnd.ms-excel.template.macroenabled.12": { - "source": "iana", - "extensions": ["xltm"] - }, - "application/vnd.ms-fontobject": { - "source": "iana", - "compressible": true, - "extensions": ["eot"] - }, - "application/vnd.ms-htmlhelp": { - "source": "iana", - "extensions": ["chm"] - }, - "application/vnd.ms-ims": { - "source": "iana", - "extensions": ["ims"] - }, - "application/vnd.ms-lrm": { - "source": "iana", - "extensions": ["lrm"] - }, - "application/vnd.ms-office.activex+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.ms-officetheme": { - "source": "iana", - "extensions": ["thmx"] - }, - "application/vnd.ms-opentype": { - "source": "apache", - "compressible": true - }, - "application/vnd.ms-outlook": { - "compressible": false, - "extensions": ["msg"] - }, - "application/vnd.ms-package.obfuscated-opentype": { - "source": "apache" - }, - "application/vnd.ms-pki.seccat": { - "source": "apache", - "extensions": ["cat"] - }, - "application/vnd.ms-pki.stl": { - "source": "apache", - "extensions": ["stl"] - }, - "application/vnd.ms-playready.initiator+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.ms-powerpoint": { - "source": "iana", - "compressible": false, - "extensions": ["ppt","pps","pot"] - }, - "application/vnd.ms-powerpoint.addin.macroenabled.12": { - "source": "iana", - "extensions": ["ppam"] - }, - "application/vnd.ms-powerpoint.presentation.macroenabled.12": { - "source": "iana", - "extensions": ["pptm"] - }, - "application/vnd.ms-powerpoint.slide.macroenabled.12": { - "source": "iana", - "extensions": ["sldm"] - }, - "application/vnd.ms-powerpoint.slideshow.macroenabled.12": { - "source": "iana", - "extensions": ["ppsm"] - }, - "application/vnd.ms-powerpoint.template.macroenabled.12": { - "source": "iana", - "extensions": ["potm"] - }, - "application/vnd.ms-printdevicecapabilities+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.ms-printing.printticket+xml": { - "source": "apache", - "compressible": true - }, - "application/vnd.ms-printschematicket+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.ms-project": { - "source": "iana", - "extensions": ["mpp","mpt"] - }, - "application/vnd.ms-tnef": { - "source": "iana" - }, - "application/vnd.ms-windows.devicepairing": { - "source": "iana" - }, - "application/vnd.ms-windows.nwprinting.oob": { - "source": "iana" - }, - "application/vnd.ms-windows.printerpairing": { - "source": "iana" - }, - "application/vnd.ms-windows.wsd.oob": { - "source": "iana" - }, - "application/vnd.ms-wmdrm.lic-chlg-req": { - "source": "iana" - }, - "application/vnd.ms-wmdrm.lic-resp": { - "source": "iana" - }, - "application/vnd.ms-wmdrm.meter-chlg-req": { - "source": "iana" - }, - "application/vnd.ms-wmdrm.meter-resp": { - "source": "iana" - }, - "application/vnd.ms-word.document.macroenabled.12": { - "source": "iana", - "extensions": ["docm"] - }, - "application/vnd.ms-word.template.macroenabled.12": { - "source": "iana", - "extensions": ["dotm"] - }, - "application/vnd.ms-works": { - "source": "iana", - "extensions": ["wps","wks","wcm","wdb"] - }, - "application/vnd.ms-wpl": { - "source": "iana", - "extensions": ["wpl"] - }, - "application/vnd.ms-xpsdocument": { - "source": "iana", - "compressible": false, - "extensions": ["xps"] - }, - "application/vnd.msa-disk-image": { - "source": "iana" - }, - "application/vnd.mseq": { - "source": "iana", - "extensions": ["mseq"] - }, - "application/vnd.msign": { - "source": "iana" - }, - "application/vnd.multiad.creator": { - "source": "iana" - }, - "application/vnd.multiad.creator.cif": { - "source": "iana" - }, - "application/vnd.music-niff": { - "source": "iana" - }, - "application/vnd.musician": { - "source": "iana", - "extensions": ["mus"] - }, - "application/vnd.muvee.style": { - "source": "iana", - "extensions": ["msty"] - }, - "application/vnd.mynfc": { - "source": "iana", - "extensions": ["taglet"] - }, - "application/vnd.nacamar.ybrid+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.ncd.control": { - "source": "iana" - }, - "application/vnd.ncd.reference": { - "source": "iana" - }, - "application/vnd.nearst.inv+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.nebumind.line": { - "source": "iana" - }, - "application/vnd.nervana": { - "source": "iana" - }, - "application/vnd.netfpx": { - "source": "iana" - }, - "application/vnd.neurolanguage.nlu": { - "source": "iana", - "extensions": ["nlu"] - }, - "application/vnd.nimn": { - "source": "iana" - }, - "application/vnd.nintendo.nitro.rom": { - "source": "iana" - }, - "application/vnd.nintendo.snes.rom": { - "source": "iana" - }, - "application/vnd.nitf": { - "source": "iana", - "extensions": ["ntf","nitf"] - }, - "application/vnd.noblenet-directory": { - "source": "iana", - "extensions": ["nnd"] - }, - "application/vnd.noblenet-sealer": { - "source": "iana", - "extensions": ["nns"] - }, - "application/vnd.noblenet-web": { - "source": "iana", - "extensions": ["nnw"] - }, - "application/vnd.nokia.catalogs": { - "source": "iana" - }, - "application/vnd.nokia.conml+wbxml": { - "source": "iana" - }, - "application/vnd.nokia.conml+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.nokia.iptv.config+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.nokia.isds-radio-presets": { - "source": "iana" - }, - "application/vnd.nokia.landmark+wbxml": { - "source": "iana" - }, - "application/vnd.nokia.landmark+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.nokia.landmarkcollection+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.nokia.n-gage.ac+xml": { - "source": "iana", - "compressible": true, - "extensions": ["ac"] - }, - "application/vnd.nokia.n-gage.data": { - "source": "iana", - "extensions": ["ngdat"] - }, - "application/vnd.nokia.n-gage.symbian.install": { - "source": "iana", - "extensions": ["n-gage"] - }, - "application/vnd.nokia.ncd": { - "source": "iana" - }, - "application/vnd.nokia.pcd+wbxml": { - "source": "iana" - }, - "application/vnd.nokia.pcd+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.nokia.radio-preset": { - "source": "iana", - "extensions": ["rpst"] - }, - "application/vnd.nokia.radio-presets": { - "source": "iana", - "extensions": ["rpss"] - }, - "application/vnd.novadigm.edm": { - "source": "iana", - "extensions": ["edm"] - }, - "application/vnd.novadigm.edx": { - "source": "iana", - "extensions": ["edx"] - }, - "application/vnd.novadigm.ext": { - "source": "iana", - "extensions": ["ext"] - }, - "application/vnd.ntt-local.content-share": { - "source": "iana" - }, - "application/vnd.ntt-local.file-transfer": { - "source": "iana" - }, - "application/vnd.ntt-local.ogw_remote-access": { - "source": "iana" - }, - "application/vnd.ntt-local.sip-ta_remote": { - "source": "iana" - }, - "application/vnd.ntt-local.sip-ta_tcp_stream": { - "source": "iana" - }, - "application/vnd.oasis.opendocument.chart": { - "source": "iana", - "extensions": ["odc"] - }, - "application/vnd.oasis.opendocument.chart-template": { - "source": "iana", - "extensions": ["otc"] - }, - "application/vnd.oasis.opendocument.database": { - "source": "iana", - "extensions": ["odb"] - }, - "application/vnd.oasis.opendocument.formula": { - "source": "iana", - "extensions": ["odf"] - }, - "application/vnd.oasis.opendocument.formula-template": { - "source": "iana", - "extensions": ["odft"] - }, - "application/vnd.oasis.opendocument.graphics": { - "source": "iana", - "compressible": false, - "extensions": ["odg"] - }, - "application/vnd.oasis.opendocument.graphics-template": { - "source": "iana", - "extensions": ["otg"] - }, - "application/vnd.oasis.opendocument.image": { - "source": "iana", - "extensions": ["odi"] - }, - "application/vnd.oasis.opendocument.image-template": { - "source": "iana", - "extensions": ["oti"] - }, - "application/vnd.oasis.opendocument.presentation": { - "source": "iana", - "compressible": false, - "extensions": ["odp"] - }, - "application/vnd.oasis.opendocument.presentation-template": { - "source": "iana", - "extensions": ["otp"] - }, - "application/vnd.oasis.opendocument.spreadsheet": { - "source": "iana", - "compressible": false, - "extensions": ["ods"] - }, - "application/vnd.oasis.opendocument.spreadsheet-template": { - "source": "iana", - "extensions": ["ots"] - }, - "application/vnd.oasis.opendocument.text": { - "source": "iana", - "compressible": false, - "extensions": ["odt"] - }, - "application/vnd.oasis.opendocument.text-master": { - "source": "iana", - "extensions": ["odm"] - }, - "application/vnd.oasis.opendocument.text-template": { - "source": "iana", - "extensions": ["ott"] - }, - "application/vnd.oasis.opendocument.text-web": { - "source": "iana", - "extensions": ["oth"] - }, - "application/vnd.obn": { - "source": "iana" - }, - "application/vnd.ocf+cbor": { - "source": "iana" - }, - "application/vnd.oci.image.manifest.v1+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.oftn.l10n+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.contentaccessdownload+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.contentaccessstreaming+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.cspg-hexbinary": { - "source": "iana" - }, - "application/vnd.oipf.dae.svg+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.dae.xhtml+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.mippvcontrolmessage+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.pae.gem": { - "source": "iana" - }, - "application/vnd.oipf.spdiscovery+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.spdlist+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.ueprofile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oipf.userprofile+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.olpc-sugar": { - "source": "iana", - "extensions": ["xo"] - }, - "application/vnd.oma-scws-config": { - "source": "iana" - }, - "application/vnd.oma-scws-http-request": { - "source": "iana" - }, - "application/vnd.oma-scws-http-response": { - "source": "iana" - }, - "application/vnd.oma.bcast.associated-procedure-parameter+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.drm-trigger+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.imd+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.ltkm": { - "source": "iana" - }, - "application/vnd.oma.bcast.notification+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.provisioningtrigger": { - "source": "iana" - }, - "application/vnd.oma.bcast.sgboot": { - "source": "iana" - }, - "application/vnd.oma.bcast.sgdd+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.sgdu": { - "source": "iana" - }, - "application/vnd.oma.bcast.simple-symbol-container": { - "source": "iana" - }, - "application/vnd.oma.bcast.smartcard-trigger+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.sprov+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.bcast.stkm": { - "source": "iana" - }, - "application/vnd.oma.cab-address-book+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.cab-feature-handler+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.cab-pcc+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.cab-subs-invite+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.cab-user-prefs+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.dcd": { - "source": "iana" - }, - "application/vnd.oma.dcdc": { - "source": "iana" - }, - "application/vnd.oma.dd2+xml": { - "source": "iana", - "compressible": true, - "extensions": ["dd2"] - }, - "application/vnd.oma.drm.risd+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.group-usage-list+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.lwm2m+cbor": { - "source": "iana" - }, - "application/vnd.oma.lwm2m+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.lwm2m+tlv": { - "source": "iana" - }, - "application/vnd.oma.pal+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.poc.detailed-progress-report+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.poc.final-report+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.poc.groups+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.poc.invocation-descriptor+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.poc.optimized-progress-report+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.push": { - "source": "iana" - }, - "application/vnd.oma.scidm.messages+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oma.xcap-directory+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.omads-email+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/vnd.omads-file+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/vnd.omads-folder+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/vnd.omaloc-supl-init": { - "source": "iana" - }, - "application/vnd.onepager": { - "source": "iana" - }, - "application/vnd.onepagertamp": { - "source": "iana" - }, - "application/vnd.onepagertamx": { - "source": "iana" - }, - "application/vnd.onepagertat": { - "source": "iana" - }, - "application/vnd.onepagertatp": { - "source": "iana" - }, - "application/vnd.onepagertatx": { - "source": "iana" - }, - "application/vnd.openblox.game+xml": { - "source": "iana", - "compressible": true, - "extensions": ["obgx"] - }, - "application/vnd.openblox.game-binary": { - "source": "iana" - }, - "application/vnd.openeye.oeb": { - "source": "iana" - }, - "application/vnd.openofficeorg.extension": { - "source": "apache", - "extensions": ["oxt"] - }, - "application/vnd.openstreetmap.data+xml": { - "source": "iana", - "compressible": true, - "extensions": ["osm"] - }, - "application/vnd.opentimestamps.ots": { - "source": "iana" - }, - "application/vnd.openxmlformats-officedocument.custom-properties+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.customxmlproperties+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawing+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.extended-properties+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.comments+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.presentation": { - "source": "iana", - "compressible": false, - "extensions": ["pptx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.presprops+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slide": { - "source": "iana", - "extensions": ["sldx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slideshow": { - "source": "iana", - "extensions": ["ppsx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.tags+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.template": { - "source": "iana", - "extensions": ["potx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "source": "iana", - "compressible": false, - "extensions": ["xlsx"] - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.template": { - "source": "iana", - "extensions": ["xltx"] - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.theme+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.themeoverride+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.vmldrawing": { - "source": "iana" - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.document": { - "source": "iana", - "compressible": false, - "extensions": ["docx"] - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.template": { - "source": "iana", - "extensions": ["dotx"] - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-package.core-properties+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.openxmlformats-package.relationships+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oracle.resource+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.orange.indata": { - "source": "iana" - }, - "application/vnd.osa.netdeploy": { - "source": "iana" - }, - "application/vnd.osgeo.mapguide.package": { - "source": "iana", - "extensions": ["mgp"] - }, - "application/vnd.osgi.bundle": { - "source": "iana" - }, - "application/vnd.osgi.dp": { - "source": "iana", - "extensions": ["dp"] - }, - "application/vnd.osgi.subsystem": { - "source": "iana", - "extensions": ["esa"] - }, - "application/vnd.otps.ct-kip+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.oxli.countgraph": { - "source": "iana" - }, - "application/vnd.pagerduty+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.palm": { - "source": "iana", - "extensions": ["pdb","pqa","oprc"] - }, - "application/vnd.panoply": { - "source": "iana" - }, - "application/vnd.paos.xml": { - "source": "iana" - }, - "application/vnd.patentdive": { - "source": "iana" - }, - "application/vnd.patientecommsdoc": { - "source": "iana" - }, - "application/vnd.pawaafile": { - "source": "iana", - "extensions": ["paw"] - }, - "application/vnd.pcos": { - "source": "iana" - }, - "application/vnd.pg.format": { - "source": "iana", - "extensions": ["str"] - }, - "application/vnd.pg.osasli": { - "source": "iana", - "extensions": ["ei6"] - }, - "application/vnd.piaccess.application-licence": { - "source": "iana" - }, - "application/vnd.picsel": { - "source": "iana", - "extensions": ["efif"] - }, - "application/vnd.pmi.widget": { - "source": "iana", - "extensions": ["wg"] - }, - "application/vnd.poc.group-advertisement+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.pocketlearn": { - "source": "iana", - "extensions": ["plf"] - }, - "application/vnd.powerbuilder6": { - "source": "iana", - "extensions": ["pbd"] - }, - "application/vnd.powerbuilder6-s": { - "source": "iana" - }, - "application/vnd.powerbuilder7": { - "source": "iana" - }, - "application/vnd.powerbuilder7-s": { - "source": "iana" - }, - "application/vnd.powerbuilder75": { - "source": "iana" - }, - "application/vnd.powerbuilder75-s": { - "source": "iana" - }, - "application/vnd.preminet": { - "source": "iana" - }, - "application/vnd.previewsystems.box": { - "source": "iana", - "extensions": ["box"] - }, - "application/vnd.proteus.magazine": { - "source": "iana", - "extensions": ["mgz"] - }, - "application/vnd.psfs": { - "source": "iana" - }, - "application/vnd.publishare-delta-tree": { - "source": "iana", - "extensions": ["qps"] - }, - "application/vnd.pvi.ptid1": { - "source": "iana", - "extensions": ["ptid"] - }, - "application/vnd.pwg-multiplexed": { - "source": "iana" - }, - "application/vnd.pwg-xhtml-print+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.qualcomm.brew-app-res": { - "source": "iana" - }, - "application/vnd.quarantainenet": { - "source": "iana" - }, - "application/vnd.quark.quarkxpress": { - "source": "iana", - "extensions": ["qxd","qxt","qwd","qwt","qxl","qxb"] - }, - "application/vnd.quobject-quoxdocument": { - "source": "iana" - }, - "application/vnd.radisys.moml+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-audit+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-audit-conf+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-audit-conn+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-audit-dialog+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-audit-stream+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-conf+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog-base+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog-fax-detect+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog-fax-sendrecv+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog-group+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog-speech+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.radisys.msml-dialog-transform+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.rainstor.data": { - "source": "iana" - }, - "application/vnd.rapid": { - "source": "iana" - }, - "application/vnd.rar": { - "source": "iana", - "extensions": ["rar"] - }, - "application/vnd.realvnc.bed": { - "source": "iana", - "extensions": ["bed"] - }, - "application/vnd.recordare.musicxml": { - "source": "iana", - "extensions": ["mxl"] - }, - "application/vnd.recordare.musicxml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["musicxml"] - }, - "application/vnd.renlearn.rlprint": { - "source": "iana" - }, - "application/vnd.resilient.logic": { - "source": "iana" - }, - "application/vnd.restful+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.rig.cryptonote": { - "source": "iana", - "extensions": ["cryptonote"] - }, - "application/vnd.rim.cod": { - "source": "apache", - "extensions": ["cod"] - }, - "application/vnd.rn-realmedia": { - "source": "apache", - "extensions": ["rm"] - }, - "application/vnd.rn-realmedia-vbr": { - "source": "apache", - "extensions": ["rmvb"] - }, - "application/vnd.route66.link66+xml": { - "source": "iana", - "compressible": true, - "extensions": ["link66"] - }, - "application/vnd.rs-274x": { - "source": "iana" - }, - "application/vnd.ruckus.download": { - "source": "iana" - }, - "application/vnd.s3sms": { - "source": "iana" - }, - "application/vnd.sailingtracker.track": { - "source": "iana", - "extensions": ["st"] - }, - "application/vnd.sar": { - "source": "iana" - }, - "application/vnd.sbm.cid": { - "source": "iana" - }, - "application/vnd.sbm.mid2": { - "source": "iana" - }, - "application/vnd.scribus": { - "source": "iana" - }, - "application/vnd.sealed.3df": { - "source": "iana" - }, - "application/vnd.sealed.csf": { - "source": "iana" - }, - "application/vnd.sealed.doc": { - "source": "iana" - }, - "application/vnd.sealed.eml": { - "source": "iana" - }, - "application/vnd.sealed.mht": { - "source": "iana" - }, - "application/vnd.sealed.net": { - "source": "iana" - }, - "application/vnd.sealed.ppt": { - "source": "iana" - }, - "application/vnd.sealed.tiff": { - "source": "iana" - }, - "application/vnd.sealed.xls": { - "source": "iana" - }, - "application/vnd.sealedmedia.softseal.html": { - "source": "iana" - }, - "application/vnd.sealedmedia.softseal.pdf": { - "source": "iana" - }, - "application/vnd.seemail": { - "source": "iana", - "extensions": ["see"] - }, - "application/vnd.seis+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.sema": { - "source": "iana", - "extensions": ["sema"] - }, - "application/vnd.semd": { - "source": "iana", - "extensions": ["semd"] - }, - "application/vnd.semf": { - "source": "iana", - "extensions": ["semf"] - }, - "application/vnd.shade-save-file": { - "source": "iana" - }, - "application/vnd.shana.informed.formdata": { - "source": "iana", - "extensions": ["ifm"] - }, - "application/vnd.shana.informed.formtemplate": { - "source": "iana", - "extensions": ["itp"] - }, - "application/vnd.shana.informed.interchange": { - "source": "iana", - "extensions": ["iif"] - }, - "application/vnd.shana.informed.package": { - "source": "iana", - "extensions": ["ipk"] - }, - "application/vnd.shootproof+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.shopkick+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.shp": { - "source": "iana" - }, - "application/vnd.shx": { - "source": "iana" - }, - "application/vnd.sigrok.session": { - "source": "iana" - }, - "application/vnd.simtech-mindmapper": { - "source": "iana", - "extensions": ["twd","twds"] - }, - "application/vnd.siren+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.smaf": { - "source": "iana", - "extensions": ["mmf"] - }, - "application/vnd.smart.notebook": { - "source": "iana" - }, - "application/vnd.smart.teacher": { - "source": "iana", - "extensions": ["teacher"] - }, - "application/vnd.snesdev-page-table": { - "source": "iana" - }, - "application/vnd.software602.filler.form+xml": { - "source": "iana", - "compressible": true, - "extensions": ["fo"] - }, - "application/vnd.software602.filler.form-xml-zip": { - "source": "iana" - }, - "application/vnd.solent.sdkm+xml": { - "source": "iana", - "compressible": true, - "extensions": ["sdkm","sdkd"] - }, - "application/vnd.spotfire.dxp": { - "source": "iana", - "extensions": ["dxp"] - }, - "application/vnd.spotfire.sfs": { - "source": "iana", - "extensions": ["sfs"] - }, - "application/vnd.sqlite3": { - "source": "iana" - }, - "application/vnd.sss-cod": { - "source": "iana" - }, - "application/vnd.sss-dtf": { - "source": "iana" - }, - "application/vnd.sss-ntf": { - "source": "iana" - }, - "application/vnd.stardivision.calc": { - "source": "apache", - "extensions": ["sdc"] - }, - "application/vnd.stardivision.draw": { - "source": "apache", - "extensions": ["sda"] - }, - "application/vnd.stardivision.impress": { - "source": "apache", - "extensions": ["sdd"] - }, - "application/vnd.stardivision.math": { - "source": "apache", - "extensions": ["smf"] - }, - "application/vnd.stardivision.writer": { - "source": "apache", - "extensions": ["sdw","vor"] - }, - "application/vnd.stardivision.writer-global": { - "source": "apache", - "extensions": ["sgl"] - }, - "application/vnd.stepmania.package": { - "source": "iana", - "extensions": ["smzip"] - }, - "application/vnd.stepmania.stepchart": { - "source": "iana", - "extensions": ["sm"] - }, - "application/vnd.street-stream": { - "source": "iana" - }, - "application/vnd.sun.wadl+xml": { - "source": "iana", - "compressible": true, - "extensions": ["wadl"] - }, - "application/vnd.sun.xml.calc": { - "source": "apache", - "extensions": ["sxc"] - }, - "application/vnd.sun.xml.calc.template": { - "source": "apache", - "extensions": ["stc"] - }, - "application/vnd.sun.xml.draw": { - "source": "apache", - "extensions": ["sxd"] - }, - "application/vnd.sun.xml.draw.template": { - "source": "apache", - "extensions": ["std"] - }, - "application/vnd.sun.xml.impress": { - "source": "apache", - "extensions": ["sxi"] - }, - "application/vnd.sun.xml.impress.template": { - "source": "apache", - "extensions": ["sti"] - }, - "application/vnd.sun.xml.math": { - "source": "apache", - "extensions": ["sxm"] - }, - "application/vnd.sun.xml.writer": { - "source": "apache", - "extensions": ["sxw"] - }, - "application/vnd.sun.xml.writer.global": { - "source": "apache", - "extensions": ["sxg"] - }, - "application/vnd.sun.xml.writer.template": { - "source": "apache", - "extensions": ["stw"] - }, - "application/vnd.sus-calendar": { - "source": "iana", - "extensions": ["sus","susp"] - }, - "application/vnd.svd": { - "source": "iana", - "extensions": ["svd"] - }, - "application/vnd.swiftview-ics": { - "source": "iana" - }, - "application/vnd.sycle+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.syft+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.symbian.install": { - "source": "apache", - "extensions": ["sis","sisx"] - }, - "application/vnd.syncml+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["xsm"] - }, - "application/vnd.syncml.dm+wbxml": { - "source": "iana", - "charset": "UTF-8", - "extensions": ["bdm"] - }, - "application/vnd.syncml.dm+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["xdm"] - }, - "application/vnd.syncml.dm.notification": { - "source": "iana" - }, - "application/vnd.syncml.dmddf+wbxml": { - "source": "iana" - }, - "application/vnd.syncml.dmddf+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["ddf"] - }, - "application/vnd.syncml.dmtnds+wbxml": { - "source": "iana" - }, - "application/vnd.syncml.dmtnds+xml": { - "source": "iana", - "charset": "UTF-8", - "compressible": true - }, - "application/vnd.syncml.ds.notification": { - "source": "iana" - }, - "application/vnd.tableschema+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.tao.intent-module-archive": { - "source": "iana", - "extensions": ["tao"] - }, - "application/vnd.tcpdump.pcap": { - "source": "iana", - "extensions": ["pcap","cap","dmp"] - }, - "application/vnd.think-cell.ppttc+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.tmd.mediaflex.api+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.tml": { - "source": "iana" - }, - "application/vnd.tmobile-livetv": { - "source": "iana", - "extensions": ["tmo"] - }, - "application/vnd.tri.onesource": { - "source": "iana" - }, - "application/vnd.trid.tpt": { - "source": "iana", - "extensions": ["tpt"] - }, - "application/vnd.triscape.mxs": { - "source": "iana", - "extensions": ["mxs"] - }, - "application/vnd.trueapp": { - "source": "iana", - "extensions": ["tra"] - }, - "application/vnd.truedoc": { - "source": "iana" - }, - "application/vnd.ubisoft.webplayer": { - "source": "iana" - }, - "application/vnd.ufdl": { - "source": "iana", - "extensions": ["ufd","ufdl"] - }, - "application/vnd.uiq.theme": { - "source": "iana", - "extensions": ["utz"] - }, - "application/vnd.umajin": { - "source": "iana", - "extensions": ["umj"] - }, - "application/vnd.unity": { - "source": "iana", - "extensions": ["unityweb"] - }, - "application/vnd.uoml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["uoml"] - }, - "application/vnd.uplanet.alert": { - "source": "iana" - }, - "application/vnd.uplanet.alert-wbxml": { - "source": "iana" - }, - "application/vnd.uplanet.bearer-choice": { - "source": "iana" - }, - "application/vnd.uplanet.bearer-choice-wbxml": { - "source": "iana" - }, - "application/vnd.uplanet.cacheop": { - "source": "iana" - }, - "application/vnd.uplanet.cacheop-wbxml": { - "source": "iana" - }, - "application/vnd.uplanet.channel": { - "source": "iana" - }, - "application/vnd.uplanet.channel-wbxml": { - "source": "iana" - }, - "application/vnd.uplanet.list": { - "source": "iana" - }, - "application/vnd.uplanet.list-wbxml": { - "source": "iana" - }, - "application/vnd.uplanet.listcmd": { - "source": "iana" - }, - "application/vnd.uplanet.listcmd-wbxml": { - "source": "iana" - }, - "application/vnd.uplanet.signal": { - "source": "iana" - }, - "application/vnd.uri-map": { - "source": "iana" - }, - "application/vnd.valve.source.material": { - "source": "iana" - }, - "application/vnd.vcx": { - "source": "iana", - "extensions": ["vcx"] - }, - "application/vnd.vd-study": { - "source": "iana" - }, - "application/vnd.vectorworks": { - "source": "iana" - }, - "application/vnd.vel+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.verimatrix.vcas": { - "source": "iana" - }, - "application/vnd.veritone.aion+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.veryant.thin": { - "source": "iana" - }, - "application/vnd.ves.encrypted": { - "source": "iana" - }, - "application/vnd.vidsoft.vidconference": { - "source": "iana" - }, - "application/vnd.visio": { - "source": "iana", - "extensions": ["vsd","vst","vss","vsw"] - }, - "application/vnd.visionary": { - "source": "iana", - "extensions": ["vis"] - }, - "application/vnd.vividence.scriptfile": { - "source": "iana" - }, - "application/vnd.vsf": { - "source": "iana", - "extensions": ["vsf"] - }, - "application/vnd.wap.sic": { - "source": "iana" - }, - "application/vnd.wap.slc": { - "source": "iana" - }, - "application/vnd.wap.wbxml": { - "source": "iana", - "charset": "UTF-8", - "extensions": ["wbxml"] - }, - "application/vnd.wap.wmlc": { - "source": "iana", - "extensions": ["wmlc"] - }, - "application/vnd.wap.wmlscriptc": { - "source": "iana", - "extensions": ["wmlsc"] - }, - "application/vnd.webturbo": { - "source": "iana", - "extensions": ["wtb"] - }, - "application/vnd.wfa.dpp": { - "source": "iana" - }, - "application/vnd.wfa.p2p": { - "source": "iana" - }, - "application/vnd.wfa.wsc": { - "source": "iana" - }, - "application/vnd.windows.devicepairing": { - "source": "iana" - }, - "application/vnd.wmc": { - "source": "iana" - }, - "application/vnd.wmf.bootstrap": { - "source": "iana" - }, - "application/vnd.wolfram.mathematica": { - "source": "iana" - }, - "application/vnd.wolfram.mathematica.package": { - "source": "iana" - }, - "application/vnd.wolfram.player": { - "source": "iana", - "extensions": ["nbp"] - }, - "application/vnd.wordperfect": { - "source": "iana", - "extensions": ["wpd"] - }, - "application/vnd.wqd": { - "source": "iana", - "extensions": ["wqd"] - }, - "application/vnd.wrq-hp3000-labelled": { - "source": "iana" - }, - "application/vnd.wt.stf": { - "source": "iana", - "extensions": ["stf"] - }, - "application/vnd.wv.csp+wbxml": { - "source": "iana" - }, - "application/vnd.wv.csp+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.wv.ssp+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.xacml+json": { - "source": "iana", - "compressible": true - }, - "application/vnd.xara": { - "source": "iana", - "extensions": ["xar"] - }, - "application/vnd.xfdl": { - "source": "iana", - "extensions": ["xfdl"] - }, - "application/vnd.xfdl.webform": { - "source": "iana" - }, - "application/vnd.xmi+xml": { - "source": "iana", - "compressible": true - }, - "application/vnd.xmpie.cpkg": { - "source": "iana" - }, - "application/vnd.xmpie.dpkg": { - "source": "iana" - }, - "application/vnd.xmpie.plan": { - "source": "iana" - }, - "application/vnd.xmpie.ppkg": { - "source": "iana" - }, - "application/vnd.xmpie.xlim": { - "source": "iana" - }, - "application/vnd.yamaha.hv-dic": { - "source": "iana", - "extensions": ["hvd"] - }, - "application/vnd.yamaha.hv-script": { - "source": "iana", - "extensions": ["hvs"] - }, - "application/vnd.yamaha.hv-voice": { - "source": "iana", - "extensions": ["hvp"] - }, - "application/vnd.yamaha.openscoreformat": { - "source": "iana", - "extensions": ["osf"] - }, - "application/vnd.yamaha.openscoreformat.osfpvg+xml": { - "source": "iana", - "compressible": true, - "extensions": ["osfpvg"] - }, - "application/vnd.yamaha.remote-setup": { - "source": "iana" - }, - "application/vnd.yamaha.smaf-audio": { - "source": "iana", - "extensions": ["saf"] - }, - "application/vnd.yamaha.smaf-phrase": { - "source": "iana", - "extensions": ["spf"] - }, - "application/vnd.yamaha.through-ngn": { - "source": "iana" - }, - "application/vnd.yamaha.tunnel-udpencap": { - "source": "iana" - }, - "application/vnd.yaoweme": { - "source": "iana" - }, - "application/vnd.yellowriver-custom-menu": { - "source": "iana", - "extensions": ["cmp"] - }, - "application/vnd.youtube.yt": { - "source": "iana" - }, - "application/vnd.zul": { - "source": "iana", - "extensions": ["zir","zirz"] - }, - "application/vnd.zzazz.deck+xml": { - "source": "iana", - "compressible": true, - "extensions": ["zaz"] - }, - "application/voicexml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["vxml"] - }, - "application/voucher-cms+json": { - "source": "iana", - "compressible": true - }, - "application/vq-rtcpxr": { - "source": "iana" - }, - "application/wasm": { - "source": "iana", - "compressible": true, - "extensions": ["wasm"] - }, - "application/watcherinfo+xml": { - "source": "iana", - "compressible": true, - "extensions": ["wif"] - }, - "application/webpush-options+json": { - "source": "iana", - "compressible": true - }, - "application/whoispp-query": { - "source": "iana" - }, - "application/whoispp-response": { - "source": "iana" - }, - "application/widget": { - "source": "iana", - "extensions": ["wgt"] - }, - "application/winhlp": { - "source": "apache", - "extensions": ["hlp"] - }, - "application/wita": { - "source": "iana" - }, - "application/wordperfect5.1": { - "source": "iana" - }, - "application/wsdl+xml": { - "source": "iana", - "compressible": true, - "extensions": ["wsdl"] - }, - "application/wspolicy+xml": { - "source": "iana", - "compressible": true, - "extensions": ["wspolicy"] - }, - "application/x-7z-compressed": { - "source": "apache", - "compressible": false, - "extensions": ["7z"] - }, - "application/x-abiword": { - "source": "apache", - "extensions": ["abw"] - }, - "application/x-ace-compressed": { - "source": "apache", - "extensions": ["ace"] - }, - "application/x-amf": { - "source": "apache" - }, - "application/x-apple-diskimage": { - "source": "apache", - "extensions": ["dmg"] - }, - "application/x-arj": { - "compressible": false, - "extensions": ["arj"] - }, - "application/x-authorware-bin": { - "source": "apache", - "extensions": ["aab","x32","u32","vox"] - }, - "application/x-authorware-map": { - "source": "apache", - "extensions": ["aam"] - }, - "application/x-authorware-seg": { - "source": "apache", - "extensions": ["aas"] - }, - "application/x-bcpio": { - "source": "apache", - "extensions": ["bcpio"] - }, - "application/x-bdoc": { - "compressible": false, - "extensions": ["bdoc"] - }, - "application/x-bittorrent": { - "source": "apache", - "extensions": ["torrent"] - }, - "application/x-blorb": { - "source": "apache", - "extensions": ["blb","blorb"] - }, - "application/x-bzip": { - "source": "apache", - "compressible": false, - "extensions": ["bz"] - }, - "application/x-bzip2": { - "source": "apache", - "compressible": false, - "extensions": ["bz2","boz"] - }, - "application/x-cbr": { - "source": "apache", - "extensions": ["cbr","cba","cbt","cbz","cb7"] - }, - "application/x-cdlink": { - "source": "apache", - "extensions": ["vcd"] - }, - "application/x-cfs-compressed": { - "source": "apache", - "extensions": ["cfs"] - }, - "application/x-chat": { - "source": "apache", - "extensions": ["chat"] - }, - "application/x-chess-pgn": { - "source": "apache", - "extensions": ["pgn"] - }, - "application/x-chrome-extension": { - "extensions": ["crx"] - }, - "application/x-cocoa": { - "source": "nginx", - "extensions": ["cco"] - }, - "application/x-compress": { - "source": "apache" - }, - "application/x-conference": { - "source": "apache", - "extensions": ["nsc"] - }, - "application/x-cpio": { - "source": "apache", - "extensions": ["cpio"] - }, - "application/x-csh": { - "source": "apache", - "extensions": ["csh"] - }, - "application/x-deb": { - "compressible": false - }, - "application/x-debian-package": { - "source": "apache", - "extensions": ["deb","udeb"] - }, - "application/x-dgc-compressed": { - "source": "apache", - "extensions": ["dgc"] - }, - "application/x-director": { - "source": "apache", - "extensions": ["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"] - }, - "application/x-doom": { - "source": "apache", - "extensions": ["wad"] - }, - "application/x-dtbncx+xml": { - "source": "apache", - "compressible": true, - "extensions": ["ncx"] - }, - "application/x-dtbook+xml": { - "source": "apache", - "compressible": true, - "extensions": ["dtb"] - }, - "application/x-dtbresource+xml": { - "source": "apache", - "compressible": true, - "extensions": ["res"] - }, - "application/x-dvi": { - "source": "apache", - "compressible": false, - "extensions": ["dvi"] - }, - "application/x-envoy": { - "source": "apache", - "extensions": ["evy"] - }, - "application/x-eva": { - "source": "apache", - "extensions": ["eva"] - }, - "application/x-font-bdf": { - "source": "apache", - "extensions": ["bdf"] - }, - "application/x-font-dos": { - "source": "apache" - }, - "application/x-font-framemaker": { - "source": "apache" - }, - "application/x-font-ghostscript": { - "source": "apache", - "extensions": ["gsf"] - }, - "application/x-font-libgrx": { - "source": "apache" - }, - "application/x-font-linux-psf": { - "source": "apache", - "extensions": ["psf"] - }, - "application/x-font-pcf": { - "source": "apache", - "extensions": ["pcf"] - }, - "application/x-font-snf": { - "source": "apache", - "extensions": ["snf"] - }, - "application/x-font-speedo": { - "source": "apache" - }, - "application/x-font-sunos-news": { - "source": "apache" - }, - "application/x-font-type1": { - "source": "apache", - "extensions": ["pfa","pfb","pfm","afm"] - }, - "application/x-font-vfont": { - "source": "apache" - }, - "application/x-freearc": { - "source": "apache", - "extensions": ["arc"] - }, - "application/x-futuresplash": { - "source": "apache", - "extensions": ["spl"] - }, - "application/x-gca-compressed": { - "source": "apache", - "extensions": ["gca"] - }, - "application/x-glulx": { - "source": "apache", - "extensions": ["ulx"] - }, - "application/x-gnumeric": { - "source": "apache", - "extensions": ["gnumeric"] - }, - "application/x-gramps-xml": { - "source": "apache", - "extensions": ["gramps"] - }, - "application/x-gtar": { - "source": "apache", - "extensions": ["gtar"] - }, - "application/x-gzip": { - "source": "apache" - }, - "application/x-hdf": { - "source": "apache", - "extensions": ["hdf"] - }, - "application/x-httpd-php": { - "compressible": true, - "extensions": ["php"] - }, - "application/x-install-instructions": { - "source": "apache", - "extensions": ["install"] - }, - "application/x-iso9660-image": { - "source": "apache", - "extensions": ["iso"] - }, - "application/x-iwork-keynote-sffkey": { - "extensions": ["key"] - }, - "application/x-iwork-numbers-sffnumbers": { - "extensions": ["numbers"] - }, - "application/x-iwork-pages-sffpages": { - "extensions": ["pages"] - }, - "application/x-java-archive-diff": { - "source": "nginx", - "extensions": ["jardiff"] - }, - "application/x-java-jnlp-file": { - "source": "apache", - "compressible": false, - "extensions": ["jnlp"] - }, - "application/x-javascript": { - "compressible": true - }, - "application/x-keepass2": { - "extensions": ["kdbx"] - }, - "application/x-latex": { - "source": "apache", - "compressible": false, - "extensions": ["latex"] - }, - "application/x-lua-bytecode": { - "extensions": ["luac"] - }, - "application/x-lzh-compressed": { - "source": "apache", - "extensions": ["lzh","lha"] - }, - "application/x-makeself": { - "source": "nginx", - "extensions": ["run"] - }, - "application/x-mie": { - "source": "apache", - "extensions": ["mie"] - }, - "application/x-mobipocket-ebook": { - "source": "apache", - "extensions": ["prc","mobi"] - }, - "application/x-mpegurl": { - "compressible": false - }, - "application/x-ms-application": { - "source": "apache", - "extensions": ["application"] - }, - "application/x-ms-shortcut": { - "source": "apache", - "extensions": ["lnk"] - }, - "application/x-ms-wmd": { - "source": "apache", - "extensions": ["wmd"] - }, - "application/x-ms-wmz": { - "source": "apache", - "extensions": ["wmz"] - }, - "application/x-ms-xbap": { - "source": "apache", - "extensions": ["xbap"] - }, - "application/x-msaccess": { - "source": "apache", - "extensions": ["mdb"] - }, - "application/x-msbinder": { - "source": "apache", - "extensions": ["obd"] - }, - "application/x-mscardfile": { - "source": "apache", - "extensions": ["crd"] - }, - "application/x-msclip": { - "source": "apache", - "extensions": ["clp"] - }, - "application/x-msdos-program": { - "extensions": ["exe"] - }, - "application/x-msdownload": { - "source": "apache", - "extensions": ["exe","dll","com","bat","msi"] - }, - "application/x-msmediaview": { - "source": "apache", - "extensions": ["mvb","m13","m14"] - }, - "application/x-msmetafile": { - "source": "apache", - "extensions": ["wmf","wmz","emf","emz"] - }, - "application/x-msmoney": { - "source": "apache", - "extensions": ["mny"] - }, - "application/x-mspublisher": { - "source": "apache", - "extensions": ["pub"] - }, - "application/x-msschedule": { - "source": "apache", - "extensions": ["scd"] - }, - "application/x-msterminal": { - "source": "apache", - "extensions": ["trm"] - }, - "application/x-mswrite": { - "source": "apache", - "extensions": ["wri"] - }, - "application/x-netcdf": { - "source": "apache", - "extensions": ["nc","cdf"] - }, - "application/x-ns-proxy-autoconfig": { - "compressible": true, - "extensions": ["pac"] - }, - "application/x-nzb": { - "source": "apache", - "extensions": ["nzb"] - }, - "application/x-perl": { - "source": "nginx", - "extensions": ["pl","pm"] - }, - "application/x-pilot": { - "source": "nginx", - "extensions": ["prc","pdb"] - }, - "application/x-pkcs12": { - "source": "apache", - "compressible": false, - "extensions": ["p12","pfx"] - }, - "application/x-pkcs7-certificates": { - "source": "apache", - "extensions": ["p7b","spc"] - }, - "application/x-pkcs7-certreqresp": { - "source": "apache", - "extensions": ["p7r"] - }, - "application/x-pki-message": { - "source": "iana" - }, - "application/x-rar-compressed": { - "source": "apache", - "compressible": false, - "extensions": ["rar"] - }, - "application/x-redhat-package-manager": { - "source": "nginx", - "extensions": ["rpm"] - }, - "application/x-research-info-systems": { - "source": "apache", - "extensions": ["ris"] - }, - "application/x-sea": { - "source": "nginx", - "extensions": ["sea"] - }, - "application/x-sh": { - "source": "apache", - "compressible": true, - "extensions": ["sh"] - }, - "application/x-shar": { - "source": "apache", - "extensions": ["shar"] - }, - "application/x-shockwave-flash": { - "source": "apache", - "compressible": false, - "extensions": ["swf"] - }, - "application/x-silverlight-app": { - "source": "apache", - "extensions": ["xap"] - }, - "application/x-sql": { - "source": "apache", - "extensions": ["sql"] - }, - "application/x-stuffit": { - "source": "apache", - "compressible": false, - "extensions": ["sit"] - }, - "application/x-stuffitx": { - "source": "apache", - "extensions": ["sitx"] - }, - "application/x-subrip": { - "source": "apache", - "extensions": ["srt"] - }, - "application/x-sv4cpio": { - "source": "apache", - "extensions": ["sv4cpio"] - }, - "application/x-sv4crc": { - "source": "apache", - "extensions": ["sv4crc"] - }, - "application/x-t3vm-image": { - "source": "apache", - "extensions": ["t3"] - }, - "application/x-tads": { - "source": "apache", - "extensions": ["gam"] - }, - "application/x-tar": { - "source": "apache", - "compressible": true, - "extensions": ["tar"] - }, - "application/x-tcl": { - "source": "apache", - "extensions": ["tcl","tk"] - }, - "application/x-tex": { - "source": "apache", - "extensions": ["tex"] - }, - "application/x-tex-tfm": { - "source": "apache", - "extensions": ["tfm"] - }, - "application/x-texinfo": { - "source": "apache", - "extensions": ["texinfo","texi"] - }, - "application/x-tgif": { - "source": "apache", - "extensions": ["obj"] - }, - "application/x-ustar": { - "source": "apache", - "extensions": ["ustar"] - }, - "application/x-virtualbox-hdd": { - "compressible": true, - "extensions": ["hdd"] - }, - "application/x-virtualbox-ova": { - "compressible": true, - "extensions": ["ova"] - }, - "application/x-virtualbox-ovf": { - "compressible": true, - "extensions": ["ovf"] - }, - "application/x-virtualbox-vbox": { - "compressible": true, - "extensions": ["vbox"] - }, - "application/x-virtualbox-vbox-extpack": { - "compressible": false, - "extensions": ["vbox-extpack"] - }, - "application/x-virtualbox-vdi": { - "compressible": true, - "extensions": ["vdi"] - }, - "application/x-virtualbox-vhd": { - "compressible": true, - "extensions": ["vhd"] - }, - "application/x-virtualbox-vmdk": { - "compressible": true, - "extensions": ["vmdk"] - }, - "application/x-wais-source": { - "source": "apache", - "extensions": ["src"] - }, - "application/x-web-app-manifest+json": { - "compressible": true, - "extensions": ["webapp"] - }, - "application/x-www-form-urlencoded": { - "source": "iana", - "compressible": true - }, - "application/x-x509-ca-cert": { - "source": "iana", - "extensions": ["der","crt","pem"] - }, - "application/x-x509-ca-ra-cert": { - "source": "iana" - }, - "application/x-x509-next-ca-cert": { - "source": "iana" - }, - "application/x-xfig": { - "source": "apache", - "extensions": ["fig"] - }, - "application/x-xliff+xml": { - "source": "apache", - "compressible": true, - "extensions": ["xlf"] - }, - "application/x-xpinstall": { - "source": "apache", - "compressible": false, - "extensions": ["xpi"] - }, - "application/x-xz": { - "source": "apache", - "extensions": ["xz"] - }, - "application/x-zmachine": { - "source": "apache", - "extensions": ["z1","z2","z3","z4","z5","z6","z7","z8"] - }, - "application/x400-bp": { - "source": "iana" - }, - "application/xacml+xml": { - "source": "iana", - "compressible": true - }, - "application/xaml+xml": { - "source": "apache", - "compressible": true, - "extensions": ["xaml"] - }, - "application/xcap-att+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xav"] - }, - "application/xcap-caps+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xca"] - }, - "application/xcap-diff+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xdf"] - }, - "application/xcap-el+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xel"] - }, - "application/xcap-error+xml": { - "source": "iana", - "compressible": true - }, - "application/xcap-ns+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xns"] - }, - "application/xcon-conference-info+xml": { - "source": "iana", - "compressible": true - }, - "application/xcon-conference-info-diff+xml": { - "source": "iana", - "compressible": true - }, - "application/xenc+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xenc"] - }, - "application/xhtml+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xhtml","xht"] - }, - "application/xhtml-voice+xml": { - "source": "apache", - "compressible": true - }, - "application/xliff+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xlf"] - }, - "application/xml": { - "source": "iana", - "compressible": true, - "extensions": ["xml","xsl","xsd","rng"] - }, - "application/xml-dtd": { - "source": "iana", - "compressible": true, - "extensions": ["dtd"] - }, - "application/xml-external-parsed-entity": { - "source": "iana" - }, - "application/xml-patch+xml": { - "source": "iana", - "compressible": true - }, - "application/xmpp+xml": { - "source": "iana", - "compressible": true - }, - "application/xop+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xop"] - }, - "application/xproc+xml": { - "source": "apache", - "compressible": true, - "extensions": ["xpl"] - }, - "application/xslt+xml": { - "source": "iana", - "compressible": true, - "extensions": ["xsl","xslt"] - }, - "application/xspf+xml": { - "source": "apache", - "compressible": true, - "extensions": ["xspf"] - }, - "application/xv+xml": { - "source": "iana", - "compressible": true, - "extensions": ["mxml","xhvml","xvml","xvm"] - }, - "application/yang": { - "source": "iana", - "extensions": ["yang"] - }, - "application/yang-data+json": { - "source": "iana", - "compressible": true - }, - "application/yang-data+xml": { - "source": "iana", - "compressible": true - }, - "application/yang-patch+json": { - "source": "iana", - "compressible": true - }, - "application/yang-patch+xml": { - "source": "iana", - "compressible": true - }, - "application/yin+xml": { - "source": "iana", - "compressible": true, - "extensions": ["yin"] - }, - "application/zip": { - "source": "iana", - "compressible": false, - "extensions": ["zip"] - }, - "application/zlib": { - "source": "iana" - }, - "application/zstd": { - "source": "iana" - }, - "audio/1d-interleaved-parityfec": { - "source": "iana" - }, - "audio/32kadpcm": { - "source": "iana" - }, - "audio/3gpp": { - "source": "iana", - "compressible": false, - "extensions": ["3gpp"] - }, - "audio/3gpp2": { - "source": "iana" - }, - "audio/aac": { - "source": "iana" - }, - "audio/ac3": { - "source": "iana" - }, - "audio/adpcm": { - "source": "apache", - "extensions": ["adp"] - }, - "audio/amr": { - "source": "iana", - "extensions": ["amr"] - }, - "audio/amr-wb": { - "source": "iana" - }, - "audio/amr-wb+": { - "source": "iana" - }, - "audio/aptx": { - "source": "iana" - }, - "audio/asc": { - "source": "iana" - }, - "audio/atrac-advanced-lossless": { - "source": "iana" - }, - "audio/atrac-x": { - "source": "iana" - }, - "audio/atrac3": { - "source": "iana" - }, - "audio/basic": { - "source": "iana", - "compressible": false, - "extensions": ["au","snd"] - }, - "audio/bv16": { - "source": "iana" - }, - "audio/bv32": { - "source": "iana" - }, - "audio/clearmode": { - "source": "iana" - }, - "audio/cn": { - "source": "iana" - }, - "audio/dat12": { - "source": "iana" - }, - "audio/dls": { - "source": "iana" - }, - "audio/dsr-es201108": { - "source": "iana" - }, - "audio/dsr-es202050": { - "source": "iana" - }, - "audio/dsr-es202211": { - "source": "iana" - }, - "audio/dsr-es202212": { - "source": "iana" - }, - "audio/dv": { - "source": "iana" - }, - "audio/dvi4": { - "source": "iana" - }, - "audio/eac3": { - "source": "iana" - }, - "audio/encaprtp": { - "source": "iana" - }, - "audio/evrc": { - "source": "iana" - }, - "audio/evrc-qcp": { - "source": "iana" - }, - "audio/evrc0": { - "source": "iana" - }, - "audio/evrc1": { - "source": "iana" - }, - "audio/evrcb": { - "source": "iana" - }, - "audio/evrcb0": { - "source": "iana" - }, - "audio/evrcb1": { - "source": "iana" - }, - "audio/evrcnw": { - "source": "iana" - }, - "audio/evrcnw0": { - "source": "iana" - }, - "audio/evrcnw1": { - "source": "iana" - }, - "audio/evrcwb": { - "source": "iana" - }, - "audio/evrcwb0": { - "source": "iana" - }, - "audio/evrcwb1": { - "source": "iana" - }, - "audio/evs": { - "source": "iana" - }, - "audio/flexfec": { - "source": "iana" - }, - "audio/fwdred": { - "source": "iana" - }, - "audio/g711-0": { - "source": "iana" - }, - "audio/g719": { - "source": "iana" - }, - "audio/g722": { - "source": "iana" - }, - "audio/g7221": { - "source": "iana" - }, - "audio/g723": { - "source": "iana" - }, - "audio/g726-16": { - "source": "iana" - }, - "audio/g726-24": { - "source": "iana" - }, - "audio/g726-32": { - "source": "iana" - }, - "audio/g726-40": { - "source": "iana" - }, - "audio/g728": { - "source": "iana" - }, - "audio/g729": { - "source": "iana" - }, - "audio/g7291": { - "source": "iana" - }, - "audio/g729d": { - "source": "iana" - }, - "audio/g729e": { - "source": "iana" - }, - "audio/gsm": { - "source": "iana" - }, - "audio/gsm-efr": { - "source": "iana" - }, - "audio/gsm-hr-08": { - "source": "iana" - }, - "audio/ilbc": { - "source": "iana" - }, - "audio/ip-mr_v2.5": { - "source": "iana" - }, - "audio/isac": { - "source": "apache" - }, - "audio/l16": { - "source": "iana" - }, - "audio/l20": { - "source": "iana" - }, - "audio/l24": { - "source": "iana", - "compressible": false - }, - "audio/l8": { - "source": "iana" - }, - "audio/lpc": { - "source": "iana" - }, - "audio/melp": { - "source": "iana" - }, - "audio/melp1200": { - "source": "iana" - }, - "audio/melp2400": { - "source": "iana" - }, - "audio/melp600": { - "source": "iana" - }, - "audio/mhas": { - "source": "iana" - }, - "audio/midi": { - "source": "apache", - "extensions": ["mid","midi","kar","rmi"] - }, - "audio/mobile-xmf": { - "source": "iana", - "extensions": ["mxmf"] - }, - "audio/mp3": { - "compressible": false, - "extensions": ["mp3"] - }, - "audio/mp4": { - "source": "iana", - "compressible": false, - "extensions": ["m4a","mp4a"] - }, - "audio/mp4a-latm": { - "source": "iana" - }, - "audio/mpa": { - "source": "iana" - }, - "audio/mpa-robust": { - "source": "iana" - }, - "audio/mpeg": { - "source": "iana", - "compressible": false, - "extensions": ["mpga","mp2","mp2a","mp3","m2a","m3a"] - }, - "audio/mpeg4-generic": { - "source": "iana" - }, - "audio/musepack": { - "source": "apache" - }, - "audio/ogg": { - "source": "iana", - "compressible": false, - "extensions": ["oga","ogg","spx","opus"] - }, - "audio/opus": { - "source": "iana" - }, - "audio/parityfec": { - "source": "iana" - }, - "audio/pcma": { - "source": "iana" - }, - "audio/pcma-wb": { - "source": "iana" - }, - "audio/pcmu": { - "source": "iana" - }, - "audio/pcmu-wb": { - "source": "iana" - }, - "audio/prs.sid": { - "source": "iana" - }, - "audio/qcelp": { - "source": "iana" - }, - "audio/raptorfec": { - "source": "iana" - }, - "audio/red": { - "source": "iana" - }, - "audio/rtp-enc-aescm128": { - "source": "iana" - }, - "audio/rtp-midi": { - "source": "iana" - }, - "audio/rtploopback": { - "source": "iana" - }, - "audio/rtx": { - "source": "iana" - }, - "audio/s3m": { - "source": "apache", - "extensions": ["s3m"] - }, - "audio/scip": { - "source": "iana" - }, - "audio/silk": { - "source": "apache", - "extensions": ["sil"] - }, - "audio/smv": { - "source": "iana" - }, - "audio/smv-qcp": { - "source": "iana" - }, - "audio/smv0": { - "source": "iana" - }, - "audio/sofa": { - "source": "iana" - }, - "audio/sp-midi": { - "source": "iana" - }, - "audio/speex": { - "source": "iana" - }, - "audio/t140c": { - "source": "iana" - }, - "audio/t38": { - "source": "iana" - }, - "audio/telephone-event": { - "source": "iana" - }, - "audio/tetra_acelp": { - "source": "iana" - }, - "audio/tetra_acelp_bb": { - "source": "iana" - }, - "audio/tone": { - "source": "iana" - }, - "audio/tsvcis": { - "source": "iana" - }, - "audio/uemclip": { - "source": "iana" - }, - "audio/ulpfec": { - "source": "iana" - }, - "audio/usac": { - "source": "iana" - }, - "audio/vdvi": { - "source": "iana" - }, - "audio/vmr-wb": { - "source": "iana" - }, - "audio/vnd.3gpp.iufp": { - "source": "iana" - }, - "audio/vnd.4sb": { - "source": "iana" - }, - "audio/vnd.audiokoz": { - "source": "iana" - }, - "audio/vnd.celp": { - "source": "iana" - }, - "audio/vnd.cisco.nse": { - "source": "iana" - }, - "audio/vnd.cmles.radio-events": { - "source": "iana" - }, - "audio/vnd.cns.anp1": { - "source": "iana" - }, - "audio/vnd.cns.inf1": { - "source": "iana" - }, - "audio/vnd.dece.audio": { - "source": "iana", - "extensions": ["uva","uvva"] - }, - "audio/vnd.digital-winds": { - "source": "iana", - "extensions": ["eol"] - }, - "audio/vnd.dlna.adts": { - "source": "iana" - }, - "audio/vnd.dolby.heaac.1": { - "source": "iana" - }, - "audio/vnd.dolby.heaac.2": { - "source": "iana" - }, - "audio/vnd.dolby.mlp": { - "source": "iana" - }, - "audio/vnd.dolby.mps": { - "source": "iana" - }, - "audio/vnd.dolby.pl2": { - "source": "iana" - }, - "audio/vnd.dolby.pl2x": { - "source": "iana" - }, - "audio/vnd.dolby.pl2z": { - "source": "iana" - }, - "audio/vnd.dolby.pulse.1": { - "source": "iana" - }, - "audio/vnd.dra": { - "source": "iana", - "extensions": ["dra"] - }, - "audio/vnd.dts": { - "source": "iana", - "extensions": ["dts"] - }, - "audio/vnd.dts.hd": { - "source": "iana", - "extensions": ["dtshd"] - }, - "audio/vnd.dts.uhd": { - "source": "iana" - }, - "audio/vnd.dvb.file": { - "source": "iana" - }, - "audio/vnd.everad.plj": { - "source": "iana" - }, - "audio/vnd.hns.audio": { - "source": "iana" - }, - "audio/vnd.lucent.voice": { - "source": "iana", - "extensions": ["lvp"] - }, - "audio/vnd.ms-playready.media.pya": { - "source": "iana", - "extensions": ["pya"] - }, - "audio/vnd.nokia.mobile-xmf": { - "source": "iana" - }, - "audio/vnd.nortel.vbk": { - "source": "iana" - }, - "audio/vnd.nuera.ecelp4800": { - "source": "iana", - "extensions": ["ecelp4800"] - }, - "audio/vnd.nuera.ecelp7470": { - "source": "iana", - "extensions": ["ecelp7470"] - }, - "audio/vnd.nuera.ecelp9600": { - "source": "iana", - "extensions": ["ecelp9600"] - }, - "audio/vnd.octel.sbc": { - "source": "iana" - }, - "audio/vnd.presonus.multitrack": { - "source": "iana" - }, - "audio/vnd.qcelp": { - "source": "iana" - }, - "audio/vnd.rhetorex.32kadpcm": { - "source": "iana" - }, - "audio/vnd.rip": { - "source": "iana", - "extensions": ["rip"] - }, - "audio/vnd.rn-realaudio": { - "compressible": false - }, - "audio/vnd.sealedmedia.softseal.mpeg": { - "source": "iana" - }, - "audio/vnd.vmx.cvsd": { - "source": "iana" - }, - "audio/vnd.wave": { - "compressible": false - }, - "audio/vorbis": { - "source": "iana", - "compressible": false - }, - "audio/vorbis-config": { - "source": "iana" - }, - "audio/wav": { - "compressible": false, - "extensions": ["wav"] - }, - "audio/wave": { - "compressible": false, - "extensions": ["wav"] - }, - "audio/webm": { - "source": "apache", - "compressible": false, - "extensions": ["weba"] - }, - "audio/x-aac": { - "source": "apache", - "compressible": false, - "extensions": ["aac"] - }, - "audio/x-aiff": { - "source": "apache", - "extensions": ["aif","aiff","aifc"] - }, - "audio/x-caf": { - "source": "apache", - "compressible": false, - "extensions": ["caf"] - }, - "audio/x-flac": { - "source": "apache", - "extensions": ["flac"] - }, - "audio/x-m4a": { - "source": "nginx", - "extensions": ["m4a"] - }, - "audio/x-matroska": { - "source": "apache", - "extensions": ["mka"] - }, - "audio/x-mpegurl": { - "source": "apache", - "extensions": ["m3u"] - }, - "audio/x-ms-wax": { - "source": "apache", - "extensions": ["wax"] - }, - "audio/x-ms-wma": { - "source": "apache", - "extensions": ["wma"] - }, - "audio/x-pn-realaudio": { - "source": "apache", - "extensions": ["ram","ra"] - }, - "audio/x-pn-realaudio-plugin": { - "source": "apache", - "extensions": ["rmp"] - }, - "audio/x-realaudio": { - "source": "nginx", - "extensions": ["ra"] - }, - "audio/x-tta": { - "source": "apache" - }, - "audio/x-wav": { - "source": "apache", - "extensions": ["wav"] - }, - "audio/xm": { - "source": "apache", - "extensions": ["xm"] - }, - "chemical/x-cdx": { - "source": "apache", - "extensions": ["cdx"] - }, - "chemical/x-cif": { - "source": "apache", - "extensions": ["cif"] - }, - "chemical/x-cmdf": { - "source": "apache", - "extensions": ["cmdf"] - }, - "chemical/x-cml": { - "source": "apache", - "extensions": ["cml"] - }, - "chemical/x-csml": { - "source": "apache", - "extensions": ["csml"] - }, - "chemical/x-pdb": { - "source": "apache" - }, - "chemical/x-xyz": { - "source": "apache", - "extensions": ["xyz"] - }, - "font/collection": { - "source": "iana", - "extensions": ["ttc"] - }, - "font/otf": { - "source": "iana", - "compressible": true, - "extensions": ["otf"] - }, - "font/sfnt": { - "source": "iana" - }, - "font/ttf": { - "source": "iana", - "compressible": true, - "extensions": ["ttf"] - }, - "font/woff": { - "source": "iana", - "extensions": ["woff"] - }, - "font/woff2": { - "source": "iana", - "extensions": ["woff2"] - }, - "image/aces": { - "source": "iana", - "extensions": ["exr"] - }, - "image/apng": { - "compressible": false, - "extensions": ["apng"] - }, - "image/avci": { - "source": "iana", - "extensions": ["avci"] - }, - "image/avcs": { - "source": "iana", - "extensions": ["avcs"] - }, - "image/avif": { - "source": "iana", - "compressible": false, - "extensions": ["avif"] - }, - "image/bmp": { - "source": "iana", - "compressible": true, - "extensions": ["bmp"] - }, - "image/cgm": { - "source": "iana", - "extensions": ["cgm"] - }, - "image/dicom-rle": { - "source": "iana", - "extensions": ["drle"] - }, - "image/emf": { - "source": "iana", - "extensions": ["emf"] - }, - "image/fits": { - "source": "iana", - "extensions": ["fits"] - }, - "image/g3fax": { - "source": "iana", - "extensions": ["g3"] - }, - "image/gif": { - "source": "iana", - "compressible": false, - "extensions": ["gif"] - }, - "image/heic": { - "source": "iana", - "extensions": ["heic"] - }, - "image/heic-sequence": { - "source": "iana", - "extensions": ["heics"] - }, - "image/heif": { - "source": "iana", - "extensions": ["heif"] - }, - "image/heif-sequence": { - "source": "iana", - "extensions": ["heifs"] - }, - "image/hej2k": { - "source": "iana", - "extensions": ["hej2"] - }, - "image/hsj2": { - "source": "iana", - "extensions": ["hsj2"] - }, - "image/ief": { - "source": "iana", - "extensions": ["ief"] - }, - "image/jls": { - "source": "iana", - "extensions": ["jls"] - }, - "image/jp2": { - "source": "iana", - "compressible": false, - "extensions": ["jp2","jpg2"] - }, - "image/jpeg": { - "source": "iana", - "compressible": false, - "extensions": ["jpeg","jpg","jpe"] - }, - "image/jph": { - "source": "iana", - "extensions": ["jph"] - }, - "image/jphc": { - "source": "iana", - "extensions": ["jhc"] - }, - "image/jpm": { - "source": "iana", - "compressible": false, - "extensions": ["jpm"] - }, - "image/jpx": { - "source": "iana", - "compressible": false, - "extensions": ["jpx","jpf"] - }, - "image/jxr": { - "source": "iana", - "extensions": ["jxr"] - }, - "image/jxra": { - "source": "iana", - "extensions": ["jxra"] - }, - "image/jxrs": { - "source": "iana", - "extensions": ["jxrs"] - }, - "image/jxs": { - "source": "iana", - "extensions": ["jxs"] - }, - "image/jxsc": { - "source": "iana", - "extensions": ["jxsc"] - }, - "image/jxsi": { - "source": "iana", - "extensions": ["jxsi"] - }, - "image/jxss": { - "source": "iana", - "extensions": ["jxss"] - }, - "image/ktx": { - "source": "iana", - "extensions": ["ktx"] - }, - "image/ktx2": { - "source": "iana", - "extensions": ["ktx2"] - }, - "image/naplps": { - "source": "iana" - }, - "image/pjpeg": { - "compressible": false - }, - "image/png": { - "source": "iana", - "compressible": false, - "extensions": ["png"] - }, - "image/prs.btif": { - "source": "iana", - "extensions": ["btif"] - }, - "image/prs.pti": { - "source": "iana", - "extensions": ["pti"] - }, - "image/pwg-raster": { - "source": "iana" - }, - "image/sgi": { - "source": "apache", - "extensions": ["sgi"] - }, - "image/svg+xml": { - "source": "iana", - "compressible": true, - "extensions": ["svg","svgz"] - }, - "image/t38": { - "source": "iana", - "extensions": ["t38"] - }, - "image/tiff": { - "source": "iana", - "compressible": false, - "extensions": ["tif","tiff"] - }, - "image/tiff-fx": { - "source": "iana", - "extensions": ["tfx"] - }, - "image/vnd.adobe.photoshop": { - "source": "iana", - "compressible": true, - "extensions": ["psd"] - }, - "image/vnd.airzip.accelerator.azv": { - "source": "iana", - "extensions": ["azv"] - }, - "image/vnd.cns.inf2": { - "source": "iana" - }, - "image/vnd.dece.graphic": { - "source": "iana", - "extensions": ["uvi","uvvi","uvg","uvvg"] - }, - "image/vnd.djvu": { - "source": "iana", - "extensions": ["djvu","djv"] - }, - "image/vnd.dvb.subtitle": { - "source": "iana", - "extensions": ["sub"] - }, - "image/vnd.dwg": { - "source": "iana", - "extensions": ["dwg"] - }, - "image/vnd.dxf": { - "source": "iana", - "extensions": ["dxf"] - }, - "image/vnd.fastbidsheet": { - "source": "iana", - "extensions": ["fbs"] - }, - "image/vnd.fpx": { - "source": "iana", - "extensions": ["fpx"] - }, - "image/vnd.fst": { - "source": "iana", - "extensions": ["fst"] - }, - "image/vnd.fujixerox.edmics-mmr": { - "source": "iana", - "extensions": ["mmr"] - }, - "image/vnd.fujixerox.edmics-rlc": { - "source": "iana", - "extensions": ["rlc"] - }, - "image/vnd.globalgraphics.pgb": { - "source": "iana" - }, - "image/vnd.microsoft.icon": { - "source": "iana", - "compressible": true, - "extensions": ["ico"] - }, - "image/vnd.mix": { - "source": "iana" - }, - "image/vnd.mozilla.apng": { - "source": "iana" - }, - "image/vnd.ms-dds": { - "compressible": true, - "extensions": ["dds"] - }, - "image/vnd.ms-modi": { - "source": "iana", - "extensions": ["mdi"] - }, - "image/vnd.ms-photo": { - "source": "apache", - "extensions": ["wdp"] - }, - "image/vnd.net-fpx": { - "source": "iana", - "extensions": ["npx"] - }, - "image/vnd.pco.b16": { - "source": "iana", - "extensions": ["b16"] - }, - "image/vnd.radiance": { - "source": "iana" - }, - "image/vnd.sealed.png": { - "source": "iana" - }, - "image/vnd.sealedmedia.softseal.gif": { - "source": "iana" - }, - "image/vnd.sealedmedia.softseal.jpg": { - "source": "iana" - }, - "image/vnd.svf": { - "source": "iana" - }, - "image/vnd.tencent.tap": { - "source": "iana", - "extensions": ["tap"] - }, - "image/vnd.valve.source.texture": { - "source": "iana", - "extensions": ["vtf"] - }, - "image/vnd.wap.wbmp": { - "source": "iana", - "extensions": ["wbmp"] - }, - "image/vnd.xiff": { - "source": "iana", - "extensions": ["xif"] - }, - "image/vnd.zbrush.pcx": { - "source": "iana", - "extensions": ["pcx"] - }, - "image/webp": { - "source": "apache", - "extensions": ["webp"] - }, - "image/wmf": { - "source": "iana", - "extensions": ["wmf"] - }, - "image/x-3ds": { - "source": "apache", - "extensions": ["3ds"] - }, - "image/x-cmu-raster": { - "source": "apache", - "extensions": ["ras"] - }, - "image/x-cmx": { - "source": "apache", - "extensions": ["cmx"] - }, - "image/x-freehand": { - "source": "apache", - "extensions": ["fh","fhc","fh4","fh5","fh7"] - }, - "image/x-icon": { - "source": "apache", - "compressible": true, - "extensions": ["ico"] - }, - "image/x-jng": { - "source": "nginx", - "extensions": ["jng"] - }, - "image/x-mrsid-image": { - "source": "apache", - "extensions": ["sid"] - }, - "image/x-ms-bmp": { - "source": "nginx", - "compressible": true, - "extensions": ["bmp"] - }, - "image/x-pcx": { - "source": "apache", - "extensions": ["pcx"] - }, - "image/x-pict": { - "source": "apache", - "extensions": ["pic","pct"] - }, - "image/x-portable-anymap": { - "source": "apache", - "extensions": ["pnm"] - }, - "image/x-portable-bitmap": { - "source": "apache", - "extensions": ["pbm"] - }, - "image/x-portable-graymap": { - "source": "apache", - "extensions": ["pgm"] - }, - "image/x-portable-pixmap": { - "source": "apache", - "extensions": ["ppm"] - }, - "image/x-rgb": { - "source": "apache", - "extensions": ["rgb"] - }, - "image/x-tga": { - "source": "apache", - "extensions": ["tga"] - }, - "image/x-xbitmap": { - "source": "apache", - "extensions": ["xbm"] - }, - "image/x-xcf": { - "compressible": false - }, - "image/x-xpixmap": { - "source": "apache", - "extensions": ["xpm"] - }, - "image/x-xwindowdump": { - "source": "apache", - "extensions": ["xwd"] - }, - "message/cpim": { - "source": "iana" - }, - "message/delivery-status": { - "source": "iana" - }, - "message/disposition-notification": { - "source": "iana", - "extensions": [ - "disposition-notification" - ] - }, - "message/external-body": { - "source": "iana" - }, - "message/feedback-report": { - "source": "iana" - }, - "message/global": { - "source": "iana", - "extensions": ["u8msg"] - }, - "message/global-delivery-status": { - "source": "iana", - "extensions": ["u8dsn"] - }, - "message/global-disposition-notification": { - "source": "iana", - "extensions": ["u8mdn"] - }, - "message/global-headers": { - "source": "iana", - "extensions": ["u8hdr"] - }, - "message/http": { - "source": "iana", - "compressible": false - }, - "message/imdn+xml": { - "source": "iana", - "compressible": true - }, - "message/news": { - "source": "iana" - }, - "message/partial": { - "source": "iana", - "compressible": false - }, - "message/rfc822": { - "source": "iana", - "compressible": true, - "extensions": ["eml","mime"] - }, - "message/s-http": { - "source": "iana" - }, - "message/sip": { - "source": "iana" - }, - "message/sipfrag": { - "source": "iana" - }, - "message/tracking-status": { - "source": "iana" - }, - "message/vnd.si.simp": { - "source": "iana" - }, - "message/vnd.wfa.wsc": { - "source": "iana", - "extensions": ["wsc"] - }, - "model/3mf": { - "source": "iana", - "extensions": ["3mf"] - }, - "model/e57": { - "source": "iana" - }, - "model/gltf+json": { - "source": "iana", - "compressible": true, - "extensions": ["gltf"] - }, - "model/gltf-binary": { - "source": "iana", - "compressible": true, - "extensions": ["glb"] - }, - "model/iges": { - "source": "iana", - "compressible": false, - "extensions": ["igs","iges"] - }, - "model/mesh": { - "source": "iana", - "compressible": false, - "extensions": ["msh","mesh","silo"] - }, - "model/mtl": { - "source": "iana", - "extensions": ["mtl"] - }, - "model/obj": { - "source": "iana", - "extensions": ["obj"] - }, - "model/step": { - "source": "iana" - }, - "model/step+xml": { - "source": "iana", - "compressible": true, - "extensions": ["stpx"] - }, - "model/step+zip": { - "source": "iana", - "compressible": false, - "extensions": ["stpz"] - }, - "model/step-xml+zip": { - "source": "iana", - "compressible": false, - "extensions": ["stpxz"] - }, - "model/stl": { - "source": "iana", - "extensions": ["stl"] - }, - "model/vnd.collada+xml": { - "source": "iana", - "compressible": true, - "extensions": ["dae"] - }, - "model/vnd.dwf": { - "source": "iana", - "extensions": ["dwf"] - }, - "model/vnd.flatland.3dml": { - "source": "iana" - }, - "model/vnd.gdl": { - "source": "iana", - "extensions": ["gdl"] - }, - "model/vnd.gs-gdl": { - "source": "apache" - }, - "model/vnd.gs.gdl": { - "source": "iana" - }, - "model/vnd.gtw": { - "source": "iana", - "extensions": ["gtw"] - }, - "model/vnd.moml+xml": { - "source": "iana", - "compressible": true - }, - "model/vnd.mts": { - "source": "iana", - "extensions": ["mts"] - }, - "model/vnd.opengex": { - "source": "iana", - "extensions": ["ogex"] - }, - "model/vnd.parasolid.transmit.binary": { - "source": "iana", - "extensions": ["x_b"] - }, - "model/vnd.parasolid.transmit.text": { - "source": "iana", - "extensions": ["x_t"] - }, - "model/vnd.pytha.pyox": { - "source": "iana" - }, - "model/vnd.rosette.annotated-data-model": { - "source": "iana" - }, - "model/vnd.sap.vds": { - "source": "iana", - "extensions": ["vds"] - }, - "model/vnd.usdz+zip": { - "source": "iana", - "compressible": false, - "extensions": ["usdz"] - }, - "model/vnd.valve.source.compiled-map": { - "source": "iana", - "extensions": ["bsp"] - }, - "model/vnd.vtu": { - "source": "iana", - "extensions": ["vtu"] - }, - "model/vrml": { - "source": "iana", - "compressible": false, - "extensions": ["wrl","vrml"] - }, - "model/x3d+binary": { - "source": "apache", - "compressible": false, - "extensions": ["x3db","x3dbz"] - }, - "model/x3d+fastinfoset": { - "source": "iana", - "extensions": ["x3db"] - }, - "model/x3d+vrml": { - "source": "apache", - "compressible": false, - "extensions": ["x3dv","x3dvz"] - }, - "model/x3d+xml": { - "source": "iana", - "compressible": true, - "extensions": ["x3d","x3dz"] - }, - "model/x3d-vrml": { - "source": "iana", - "extensions": ["x3dv"] - }, - "multipart/alternative": { - "source": "iana", - "compressible": false - }, - "multipart/appledouble": { - "source": "iana" - }, - "multipart/byteranges": { - "source": "iana" - }, - "multipart/digest": { - "source": "iana" - }, - "multipart/encrypted": { - "source": "iana", - "compressible": false - }, - "multipart/form-data": { - "source": "iana", - "compressible": false - }, - "multipart/header-set": { - "source": "iana" - }, - "multipart/mixed": { - "source": "iana" - }, - "multipart/multilingual": { - "source": "iana" - }, - "multipart/parallel": { - "source": "iana" - }, - "multipart/related": { - "source": "iana", - "compressible": false - }, - "multipart/report": { - "source": "iana" - }, - "multipart/signed": { - "source": "iana", - "compressible": false - }, - "multipart/vnd.bint.med-plus": { - "source": "iana" - }, - "multipart/voice-message": { - "source": "iana" - }, - "multipart/x-mixed-replace": { - "source": "iana" - }, - "text/1d-interleaved-parityfec": { - "source": "iana" - }, - "text/cache-manifest": { - "source": "iana", - "compressible": true, - "extensions": ["appcache","manifest"] - }, - "text/calendar": { - "source": "iana", - "extensions": ["ics","ifb"] - }, - "text/calender": { - "compressible": true - }, - "text/cmd": { - "compressible": true - }, - "text/coffeescript": { - "extensions": ["coffee","litcoffee"] - }, - "text/cql": { - "source": "iana" - }, - "text/cql-expression": { - "source": "iana" - }, - "text/cql-identifier": { - "source": "iana" - }, - "text/css": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["css"] - }, - "text/csv": { - "source": "iana", - "compressible": true, - "extensions": ["csv"] - }, - "text/csv-schema": { - "source": "iana" - }, - "text/directory": { - "source": "iana" - }, - "text/dns": { - "source": "iana" - }, - "text/ecmascript": { - "source": "iana" - }, - "text/encaprtp": { - "source": "iana" - }, - "text/enriched": { - "source": "iana" - }, - "text/fhirpath": { - "source": "iana" - }, - "text/flexfec": { - "source": "iana" - }, - "text/fwdred": { - "source": "iana" - }, - "text/gff3": { - "source": "iana" - }, - "text/grammar-ref-list": { - "source": "iana" - }, - "text/html": { - "source": "iana", - "compressible": true, - "extensions": ["html","htm","shtml"] - }, - "text/jade": { - "extensions": ["jade"] - }, - "text/javascript": { - "source": "iana", - "compressible": true - }, - "text/jcr-cnd": { - "source": "iana" - }, - "text/jsx": { - "compressible": true, - "extensions": ["jsx"] - }, - "text/less": { - "compressible": true, - "extensions": ["less"] - }, - "text/markdown": { - "source": "iana", - "compressible": true, - "extensions": ["markdown","md"] - }, - "text/mathml": { - "source": "nginx", - "extensions": ["mml"] - }, - "text/mdx": { - "compressible": true, - "extensions": ["mdx"] - }, - "text/mizar": { - "source": "iana" - }, - "text/n3": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["n3"] - }, - "text/parameters": { - "source": "iana", - "charset": "UTF-8" - }, - "text/parityfec": { - "source": "iana" - }, - "text/plain": { - "source": "iana", - "compressible": true, - "extensions": ["txt","text","conf","def","list","log","in","ini"] - }, - "text/provenance-notation": { - "source": "iana", - "charset": "UTF-8" - }, - "text/prs.fallenstein.rst": { - "source": "iana" - }, - "text/prs.lines.tag": { - "source": "iana", - "extensions": ["dsc"] - }, - "text/prs.prop.logic": { - "source": "iana" - }, - "text/raptorfec": { - "source": "iana" - }, - "text/red": { - "source": "iana" - }, - "text/rfc822-headers": { - "source": "iana" - }, - "text/richtext": { - "source": "iana", - "compressible": true, - "extensions": ["rtx"] - }, - "text/rtf": { - "source": "iana", - "compressible": true, - "extensions": ["rtf"] - }, - "text/rtp-enc-aescm128": { - "source": "iana" - }, - "text/rtploopback": { - "source": "iana" - }, - "text/rtx": { - "source": "iana" - }, - "text/sgml": { - "source": "iana", - "extensions": ["sgml","sgm"] - }, - "text/shaclc": { - "source": "iana" - }, - "text/shex": { - "source": "iana", - "extensions": ["shex"] - }, - "text/slim": { - "extensions": ["slim","slm"] - }, - "text/spdx": { - "source": "iana", - "extensions": ["spdx"] - }, - "text/strings": { - "source": "iana" - }, - "text/stylus": { - "extensions": ["stylus","styl"] - }, - "text/t140": { - "source": "iana" - }, - "text/tab-separated-values": { - "source": "iana", - "compressible": true, - "extensions": ["tsv"] - }, - "text/troff": { - "source": "iana", - "extensions": ["t","tr","roff","man","me","ms"] - }, - "text/turtle": { - "source": "iana", - "charset": "UTF-8", - "extensions": ["ttl"] - }, - "text/ulpfec": { - "source": "iana" - }, - "text/uri-list": { - "source": "iana", - "compressible": true, - "extensions": ["uri","uris","urls"] - }, - "text/vcard": { - "source": "iana", - "compressible": true, - "extensions": ["vcard"] - }, - "text/vnd.a": { - "source": "iana" - }, - "text/vnd.abc": { - "source": "iana" - }, - "text/vnd.ascii-art": { - "source": "iana" - }, - "text/vnd.curl": { - "source": "iana", - "extensions": ["curl"] - }, - "text/vnd.curl.dcurl": { - "source": "apache", - "extensions": ["dcurl"] - }, - "text/vnd.curl.mcurl": { - "source": "apache", - "extensions": ["mcurl"] - }, - "text/vnd.curl.scurl": { - "source": "apache", - "extensions": ["scurl"] - }, - "text/vnd.debian.copyright": { - "source": "iana", - "charset": "UTF-8" - }, - "text/vnd.dmclientscript": { - "source": "iana" - }, - "text/vnd.dvb.subtitle": { - "source": "iana", - "extensions": ["sub"] - }, - "text/vnd.esmertec.theme-descriptor": { - "source": "iana", - "charset": "UTF-8" - }, - "text/vnd.familysearch.gedcom": { - "source": "iana", - "extensions": ["ged"] - }, - "text/vnd.ficlab.flt": { - "source": "iana" - }, - "text/vnd.fly": { - "source": "iana", - "extensions": ["fly"] - }, - "text/vnd.fmi.flexstor": { - "source": "iana", - "extensions": ["flx"] - }, - "text/vnd.gml": { - "source": "iana" - }, - "text/vnd.graphviz": { - "source": "iana", - "extensions": ["gv"] - }, - "text/vnd.hans": { - "source": "iana" - }, - "text/vnd.hgl": { - "source": "iana" - }, - "text/vnd.in3d.3dml": { - "source": "iana", - "extensions": ["3dml"] - }, - "text/vnd.in3d.spot": { - "source": "iana", - "extensions": ["spot"] - }, - "text/vnd.iptc.newsml": { - "source": "iana" - }, - "text/vnd.iptc.nitf": { - "source": "iana" - }, - "text/vnd.latex-z": { - "source": "iana" - }, - "text/vnd.motorola.reflex": { - "source": "iana" - }, - "text/vnd.ms-mediapackage": { - "source": "iana" - }, - "text/vnd.net2phone.commcenter.command": { - "source": "iana" - }, - "text/vnd.radisys.msml-basic-layout": { - "source": "iana" - }, - "text/vnd.senx.warpscript": { - "source": "iana" - }, - "text/vnd.si.uricatalogue": { - "source": "iana" - }, - "text/vnd.sosi": { - "source": "iana" - }, - "text/vnd.sun.j2me.app-descriptor": { - "source": "iana", - "charset": "UTF-8", - "extensions": ["jad"] - }, - "text/vnd.trolltech.linguist": { - "source": "iana", - "charset": "UTF-8" - }, - "text/vnd.wap.si": { - "source": "iana" - }, - "text/vnd.wap.sl": { - "source": "iana" - }, - "text/vnd.wap.wml": { - "source": "iana", - "extensions": ["wml"] - }, - "text/vnd.wap.wmlscript": { - "source": "iana", - "extensions": ["wmls"] - }, - "text/vtt": { - "source": "iana", - "charset": "UTF-8", - "compressible": true, - "extensions": ["vtt"] - }, - "text/x-asm": { - "source": "apache", - "extensions": ["s","asm"] - }, - "text/x-c": { - "source": "apache", - "extensions": ["c","cc","cxx","cpp","h","hh","dic"] - }, - "text/x-component": { - "source": "nginx", - "extensions": ["htc"] - }, - "text/x-fortran": { - "source": "apache", - "extensions": ["f","for","f77","f90"] - }, - "text/x-gwt-rpc": { - "compressible": true - }, - "text/x-handlebars-template": { - "extensions": ["hbs"] - }, - "text/x-java-source": { - "source": "apache", - "extensions": ["java"] - }, - "text/x-jquery-tmpl": { - "compressible": true - }, - "text/x-lua": { - "extensions": ["lua"] - }, - "text/x-markdown": { - "compressible": true, - "extensions": ["mkd"] - }, - "text/x-nfo": { - "source": "apache", - "extensions": ["nfo"] - }, - "text/x-opml": { - "source": "apache", - "extensions": ["opml"] - }, - "text/x-org": { - "compressible": true, - "extensions": ["org"] - }, - "text/x-pascal": { - "source": "apache", - "extensions": ["p","pas"] - }, - "text/x-processing": { - "compressible": true, - "extensions": ["pde"] - }, - "text/x-sass": { - "extensions": ["sass"] - }, - "text/x-scss": { - "extensions": ["scss"] - }, - "text/x-setext": { - "source": "apache", - "extensions": ["etx"] - }, - "text/x-sfv": { - "source": "apache", - "extensions": ["sfv"] - }, - "text/x-suse-ymp": { - "compressible": true, - "extensions": ["ymp"] - }, - "text/x-uuencode": { - "source": "apache", - "extensions": ["uu"] - }, - "text/x-vcalendar": { - "source": "apache", - "extensions": ["vcs"] - }, - "text/x-vcard": { - "source": "apache", - "extensions": ["vcf"] - }, - "text/xml": { - "source": "iana", - "compressible": true, - "extensions": ["xml"] - }, - "text/xml-external-parsed-entity": { - "source": "iana" - }, - "text/yaml": { - "compressible": true, - "extensions": ["yaml","yml"] - }, - "video/1d-interleaved-parityfec": { - "source": "iana" - }, - "video/3gpp": { - "source": "iana", - "extensions": ["3gp","3gpp"] - }, - "video/3gpp-tt": { - "source": "iana" - }, - "video/3gpp2": { - "source": "iana", - "extensions": ["3g2"] - }, - "video/av1": { - "source": "iana" - }, - "video/bmpeg": { - "source": "iana" - }, - "video/bt656": { - "source": "iana" - }, - "video/celb": { - "source": "iana" - }, - "video/dv": { - "source": "iana" - }, - "video/encaprtp": { - "source": "iana" - }, - "video/ffv1": { - "source": "iana" - }, - "video/flexfec": { - "source": "iana" - }, - "video/h261": { - "source": "iana", - "extensions": ["h261"] - }, - "video/h263": { - "source": "iana", - "extensions": ["h263"] - }, - "video/h263-1998": { - "source": "iana" - }, - "video/h263-2000": { - "source": "iana" - }, - "video/h264": { - "source": "iana", - "extensions": ["h264"] - }, - "video/h264-rcdo": { - "source": "iana" - }, - "video/h264-svc": { - "source": "iana" - }, - "video/h265": { - "source": "iana" - }, - "video/iso.segment": { - "source": "iana", - "extensions": ["m4s"] - }, - "video/jpeg": { - "source": "iana", - "extensions": ["jpgv"] - }, - "video/jpeg2000": { - "source": "iana" - }, - "video/jpm": { - "source": "apache", - "extensions": ["jpm","jpgm"] - }, - "video/jxsv": { - "source": "iana" - }, - "video/mj2": { - "source": "iana", - "extensions": ["mj2","mjp2"] - }, - "video/mp1s": { - "source": "iana" - }, - "video/mp2p": { - "source": "iana" - }, - "video/mp2t": { - "source": "iana", - "extensions": ["ts"] - }, - "video/mp4": { - "source": "iana", - "compressible": false, - "extensions": ["mp4","mp4v","mpg4"] - }, - "video/mp4v-es": { - "source": "iana" - }, - "video/mpeg": { - "source": "iana", - "compressible": false, - "extensions": ["mpeg","mpg","mpe","m1v","m2v"] - }, - "video/mpeg4-generic": { - "source": "iana" - }, - "video/mpv": { - "source": "iana" - }, - "video/nv": { - "source": "iana" - }, - "video/ogg": { - "source": "iana", - "compressible": false, - "extensions": ["ogv"] - }, - "video/parityfec": { - "source": "iana" - }, - "video/pointer": { - "source": "iana" - }, - "video/quicktime": { - "source": "iana", - "compressible": false, - "extensions": ["qt","mov"] - }, - "video/raptorfec": { - "source": "iana" - }, - "video/raw": { - "source": "iana" - }, - "video/rtp-enc-aescm128": { - "source": "iana" - }, - "video/rtploopback": { - "source": "iana" - }, - "video/rtx": { - "source": "iana" - }, - "video/scip": { - "source": "iana" - }, - "video/smpte291": { - "source": "iana" - }, - "video/smpte292m": { - "source": "iana" - }, - "video/ulpfec": { - "source": "iana" - }, - "video/vc1": { - "source": "iana" - }, - "video/vc2": { - "source": "iana" - }, - "video/vnd.cctv": { - "source": "iana" - }, - "video/vnd.dece.hd": { - "source": "iana", - "extensions": ["uvh","uvvh"] - }, - "video/vnd.dece.mobile": { - "source": "iana", - "extensions": ["uvm","uvvm"] - }, - "video/vnd.dece.mp4": { - "source": "iana" - }, - "video/vnd.dece.pd": { - "source": "iana", - "extensions": ["uvp","uvvp"] - }, - "video/vnd.dece.sd": { - "source": "iana", - "extensions": ["uvs","uvvs"] - }, - "video/vnd.dece.video": { - "source": "iana", - "extensions": ["uvv","uvvv"] - }, - "video/vnd.directv.mpeg": { - "source": "iana" - }, - "video/vnd.directv.mpeg-tts": { - "source": "iana" - }, - "video/vnd.dlna.mpeg-tts": { - "source": "iana" - }, - "video/vnd.dvb.file": { - "source": "iana", - "extensions": ["dvb"] - }, - "video/vnd.fvt": { - "source": "iana", - "extensions": ["fvt"] - }, - "video/vnd.hns.video": { - "source": "iana" - }, - "video/vnd.iptvforum.1dparityfec-1010": { - "source": "iana" - }, - "video/vnd.iptvforum.1dparityfec-2005": { - "source": "iana" - }, - "video/vnd.iptvforum.2dparityfec-1010": { - "source": "iana" - }, - "video/vnd.iptvforum.2dparityfec-2005": { - "source": "iana" - }, - "video/vnd.iptvforum.ttsavc": { - "source": "iana" - }, - "video/vnd.iptvforum.ttsmpeg2": { - "source": "iana" - }, - "video/vnd.motorola.video": { - "source": "iana" - }, - "video/vnd.motorola.videop": { - "source": "iana" - }, - "video/vnd.mpegurl": { - "source": "iana", - "extensions": ["mxu","m4u"] - }, - "video/vnd.ms-playready.media.pyv": { - "source": "iana", - "extensions": ["pyv"] - }, - "video/vnd.nokia.interleaved-multimedia": { - "source": "iana" - }, - "video/vnd.nokia.mp4vr": { - "source": "iana" - }, - "video/vnd.nokia.videovoip": { - "source": "iana" - }, - "video/vnd.objectvideo": { - "source": "iana" - }, - "video/vnd.radgamettools.bink": { - "source": "iana" - }, - "video/vnd.radgamettools.smacker": { - "source": "iana" - }, - "video/vnd.sealed.mpeg1": { - "source": "iana" - }, - "video/vnd.sealed.mpeg4": { - "source": "iana" - }, - "video/vnd.sealed.swf": { - "source": "iana" - }, - "video/vnd.sealedmedia.softseal.mov": { - "source": "iana" - }, - "video/vnd.uvvu.mp4": { - "source": "iana", - "extensions": ["uvu","uvvu"] - }, - "video/vnd.vivo": { - "source": "iana", - "extensions": ["viv"] - }, - "video/vnd.youtube.yt": { - "source": "iana" - }, - "video/vp8": { - "source": "iana" - }, - "video/vp9": { - "source": "iana" - }, - "video/webm": { - "source": "apache", - "compressible": false, - "extensions": ["webm"] - }, - "video/x-f4v": { - "source": "apache", - "extensions": ["f4v"] - }, - "video/x-fli": { - "source": "apache", - "extensions": ["fli"] - }, - "video/x-flv": { - "source": "apache", - "compressible": false, - "extensions": ["flv"] - }, - "video/x-m4v": { - "source": "apache", - "extensions": ["m4v"] - }, - "video/x-matroska": { - "source": "apache", - "compressible": false, - "extensions": ["mkv","mk3d","mks"] - }, - "video/x-mng": { - "source": "apache", - "extensions": ["mng"] - }, - "video/x-ms-asf": { - "source": "apache", - "extensions": ["asf","asx"] - }, - "video/x-ms-vob": { - "source": "apache", - "extensions": ["vob"] - }, - "video/x-ms-wm": { - "source": "apache", - "extensions": ["wm"] - }, - "video/x-ms-wmv": { - "source": "apache", - "compressible": false, - "extensions": ["wmv"] - }, - "video/x-ms-wmx": { - "source": "apache", - "extensions": ["wmx"] - }, - "video/x-ms-wvx": { - "source": "apache", - "extensions": ["wvx"] - }, - "video/x-msvideo": { - "source": "apache", - "extensions": ["avi"] - }, - "video/x-sgi-movie": { - "source": "apache", - "extensions": ["movie"] - }, - "video/x-smv": { - "source": "apache", - "extensions": ["smv"] - }, - "x-conference/x-cooltalk": { - "source": "apache", - "extensions": ["ice"] - }, - "x-shader/x-fragment": { - "compressible": true - }, - "x-shader/x-vertex": { - "compressible": true - } -} -`); -const EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/; -const TEXT_TYPE_REGEXP = /^text\//i; -const extensions = new Map(); -const types = new Map(); -function populateMaps(extensions1, types1) { - const preference = [ - "nginx", - "apache", - undefined, - "iana" - ]; - for (const type of Object.keys(__default)){ - const mime = __default[type]; - const exts = mime.extensions; - if (!exts || !exts.length) { - continue; - } - extensions1.set(type, exts); - for (const ext of exts){ - const current = types1.get(ext); - if (current) { - const from = preference.indexOf(__default[current].source); - const to = preference.indexOf(mime.source); - if (current !== "application/octet-stream" && (from > to || from === to && current.startsWith("application/"))) { - continue; - } - } - types1.set(ext, type); - } - } -} -populateMaps(extensions, types); -function charset(type) { - const m6 = EXTRACT_TYPE_REGEXP.exec(type); - if (!m6) { - return undefined; - } - const [match2] = m6; - const mime = __default[match2.toLowerCase()]; - if (mime && mime.charset) { - return mime.charset; - } - if (TEXT_TYPE_REGEXP.test(match2)) { - return "UTF-8"; - } - return undefined; -} -function lookup(path29) { - const extension1 = extname2(`x.${path29}`).toLowerCase().substring(1); - return types.get(extension1); -} -function contentType(str1) { - let mime = str1.includes("/") ? str1 : lookup(str1); - if (!mime) { - return undefined; - } - if (!mime.includes("charset")) { - const cs = charset(mime); - if (cs) { - mime += `; charset=${cs.toLowerCase()}`; - } - } - return mime; -} -function extension(type) { - const match3 = EXTRACT_TYPE_REGEXP.exec(type); - if (!match3) { - return undefined; - } - const exts = extensions.get(match3[1].toLowerCase()); - if (!exts || !exts.length) { - return undefined; - } - return exts[0]; -} -function lexer(str2) { +function lexer(str8) { const tokens = []; - let i31 = 0; - while(i31 < str2.length){ - const __char = str2[i31]; + let i44 = 0; + while(i44 < str8.length){ + const __char = str8[i44]; if (__char === "*" || __char === "+" || __char === "?") { tokens.push({ type: "MODIFIER", - index: i31, - value: str2[i31++] + index: i44, + value: str8[i44++] }); continue; } if (__char === "\\") { tokens.push({ type: "ESCAPED_CHAR", - index: i31++, - value: str2[i31++] + index: i44++, + value: str8[i44++] }); continue; } if (__char === "{") { tokens.push({ type: "OPEN", - index: i31, - value: str2[i31++] + index: i44, + value: str8[i44++] }); continue; } if (__char === "}") { tokens.push({ type: "CLOSE", - index: i31, - value: str2[i31++] + index: i44, + value: str8[i44++] }); continue; } if (__char === ":") { let name = ""; - let j5 = i31 + 1; - while(j5 < str2.length){ - const code20 = str2.charCodeAt(j5); - if (code20 >= 48 && code20 <= 57 || code20 >= 65 && code20 <= 90 || code20 >= 97 && code20 <= 122 || code20 === 95) { - name += str2[j5++]; + let j7 = i44 + 1; + while(j7 < str8.length){ + const code21 = str8.charCodeAt(j7); + if (code21 >= 48 && code21 <= 57 || code21 >= 65 && code21 <= 90 || code21 >= 97 && code21 <= 122 || code21 === 95) { + name += str8[j7++]; continue; } break; } - if (!name) throw new TypeError(`Missing parameter name at ${i31}`); + if (!name) throw new TypeError(`Missing parameter name at ${i44}`); tokens.push({ type: "NAME", - index: i31, + index: i44, value: name }); - i31 = j5; + i44 = j7; continue; } if (__char === "(") { let count = 1; let pattern = ""; - let j6 = i31 + 1; - if (str2[j6] === "?") { - throw new TypeError(`Pattern cannot start with "?" at ${j6}`); + let j8 = i44 + 1; + if (str8[j8] === "?") { + throw new TypeError(`Pattern cannot start with "?" at ${j8}`); } - while(j6 < str2.length){ - if (str2[j6] === "\\") { - pattern += str2[j6++] + str2[j6++]; + while(j8 < str8.length){ + if (str8[j8] === "\\") { + pattern += str8[j8++] + str8[j8++]; continue; } - if (str2[j6] === ")") { + if (str8[j8] === ")") { count--; if (count === 0) { - j6++; + j8++; break; } - } else if (str2[j6] === "(") { + } else if (str8[j8] === "(") { count++; - if (str2[j6 + 1] !== "?") { - throw new TypeError(`Capturing groups are not allowed at ${j6}`); + if (str8[j8 + 1] !== "?") { + throw new TypeError(`Capturing groups are not allowed at ${j8}`); } } - pattern += str2[j6++]; + pattern += str8[j8++]; } - if (count) throw new TypeError(`Unbalanced pattern at ${i31}`); - if (!pattern) throw new TypeError(`Missing pattern at ${i31}`); + if (count) throw new TypeError(`Unbalanced pattern at ${i44}`); + if (!pattern) throw new TypeError(`Missing pattern at ${i44}`); tokens.push({ type: "PATTERN", - index: i31, + index: i44, value: pattern }); - i31 = j6; + i44 = j8; continue; } tokens.push({ type: "CHAR", - index: i31, - value: str2[i31++] + index: i44, + value: str8[i44++] }); } tokens.push({ type: "END", - index: i31, + index: i44, value: "" }); return tokens; } -function parse3(str3, options = {}) { - const tokens = lexer(str3); +function parse3(str9, options = {}) { + const tokens = lexer(str9); const { prefixes ="./" } = options; const defaultPattern = `[^${escapeString(options.delimiter || "/#?")}]+?`; const result1 = []; - let key8 = 0; - let i32 = 0; - let path30 = ""; + let key14 = 0; + let i45 = 0; + let path29 = ""; const tryConsume = (type)=>{ - if (i32 < tokens.length && tokens[i32].type === type) return tokens[i32++].value; + if (i45 < tokens.length && tokens[i45].type === type) return tokens[i45++].value; }; const mustConsume = (type)=>{ - const value10 = tryConsume(type); - if (value10 !== undefined) return value10; - const { type: nextType , index } = tokens[i32]; + const value18 = tryConsume(type); + if (value18 !== undefined) return value18; + const { type: nextType , index } = tokens[i45]; throw new TypeError(`Unexpected ${nextType} at ${index}, expected ${type}`); }; const consumeText = ()=>{ let result = ""; - let value11; - while(value11 = tryConsume("CHAR") || tryConsume("ESCAPED_CHAR")){ - result += value11; + let value19; + while(value19 = tryConsume("CHAR") || tryConsume("ESCAPED_CHAR")){ + result += value19; } return result; }; - while(i32 < tokens.length){ + while(i45 < tokens.length){ const __char = tryConsume("CHAR"); const name = tryConsume("NAME"); const pattern = tryConsume("PATTERN"); if (name || pattern) { let prefix = __char || ""; if (prefixes.indexOf(prefix) === -1) { - path30 += prefix; + path29 += prefix; prefix = ""; } - if (path30) { - result1.push(path30); - path30 = ""; + if (path29) { + result1.push(path29); + path29 = ""; } result1.push({ - name: name || key8++, + name: name || key14++, prefix, suffix: "", pattern: pattern || defaultPattern, @@ -11135,14 +13905,14 @@ function parse3(str3, options = {}) { }); continue; } - const value12 = __char || tryConsume("ESCAPED_CHAR"); - if (value12) { - path30 += value12; + const value20 = __char || tryConsume("ESCAPED_CHAR"); + if (value20) { + path29 += value20; continue; } - if (path30) { - result1.push(path30); - path30 = ""; + if (path29) { + result1.push(path29); + path29 = ""; } const open = tryConsume("OPEN"); if (open) { @@ -11152,7 +13922,7 @@ function parse3(str3, options = {}) { const suffix = consumeText(); mustConsume("CLOSE"); result1.push({ - name: name || (pattern ? key8++ : ""), + name: name || (pattern ? key14++ : ""), pattern: name && !pattern ? defaultPattern : pattern, prefix, suffix, @@ -11164,71 +13934,71 @@ function parse3(str3, options = {}) { } return result1; } -function compile(str4, options) { - return tokensToFunction(parse3(str4, options), options); +function compile(str10, options) { + return tokensToFunction(parse3(str10, options), options); } function tokensToFunction(tokens, options = {}) { const reFlags = flags(options); - const { encode: encode15 = (x1)=>x1 , validate: validate5 = true } = options; + const { encode: encode17 = (x1)=>x1 , validate: validate5 = true } = options; const matches = tokens.map((token)=>{ if (typeof token === "object") { return new RegExp(`^(?:${token.pattern})$`, reFlags); } }); - return (data6)=>{ - let path31 = ""; - for(let i33 = 0; i33 < tokens.length; i33++){ - const token = tokens[i33]; + return (data5)=>{ + let path30 = ""; + for(let i46 = 0; i46 < tokens.length; i46++){ + const token = tokens[i46]; if (typeof token === "string") { - path31 += token; + path30 += token; continue; } - const value13 = data6 ? data6[token.name] : undefined; + const value21 = data5 ? data5[token.name] : undefined; const optional = token.modifier === "?" || token.modifier === "*"; const repeat = token.modifier === "*" || token.modifier === "+"; - if (Array.isArray(value13)) { + if (Array.isArray(value21)) { if (!repeat) { throw new TypeError(`Expected "${token.name}" to not repeat, but got an array`); } - if (value13.length === 0) { + if (value21.length === 0) { if (optional) continue; throw new TypeError(`Expected "${token.name}" to not be empty`); } - for(let j7 = 0; j7 < value13.length; j7++){ - const segment = encode15(value13[j7], token); - if (validate5 && !matches[i33].test(segment)) { + for(let j9 = 0; j9 < value21.length; j9++){ + const segment = encode17(value21[j9], token); + if (validate5 && !matches[i46].test(segment)) { throw new TypeError(`Expected all "${token.name}" to match "${token.pattern}", but got "${segment}"`); } - path31 += token.prefix + segment + token.suffix; + path30 += token.prefix + segment + token.suffix; } continue; } - if (typeof value13 === "string" || typeof value13 === "number") { - const segment = encode15(String(value13), token); - if (validate5 && !matches[i33].test(segment)) { + if (typeof value21 === "string" || typeof value21 === "number") { + const segment = encode17(String(value21), token); + if (validate5 && !matches[i46].test(segment)) { throw new TypeError(`Expected "${token.name}" to match "${token.pattern}", but got "${segment}"`); } - path31 += token.prefix + segment + token.suffix; + path30 += token.prefix + segment + token.suffix; continue; } if (optional) continue; const typeOfMessage = repeat ? "an array" : "a string"; throw new TypeError(`Expected "${token.name}" to be ${typeOfMessage}`); } - return path31; + return path30; }; } -function escapeString(str5) { - return str5.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1"); +function escapeString(str11) { + return str11.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1"); } function flags(options) { return options && options.sensitive ? "" : "i"; } -function regexpToRegexp(path32, keys) { - if (!keys) return path32; +function regexpToRegexp(path31, keys) { + if (!keys) return path31; const groupsRegex = /\((?:\?<(.*?)>)?(?!\?)/g; let index = 0; - let execResult = groupsRegex.exec(path32.source); + let execResult = groupsRegex.exec(path31.source); while(execResult){ keys.push({ name: execResult[1] || index++, @@ -11237,39 +14007,43 @@ function regexpToRegexp(path32, keys) { modifier: "", pattern: "" }); - execResult = groupsRegex.exec(path32.source); + execResult = groupsRegex.exec(path31.source); } - return path32; + return path31; } function arrayToRegexp(paths, keys, options) { - const parts1 = paths.map((path33)=>pathToRegexp(path33, keys, options).source); + const parts1 = paths.map((path32)=>pathToRegexp(path32, keys, options).source); return new RegExp(`(?:${parts1.join("|")})`, flags(options)); } -function stringToRegexp(path34, keys, options) { - return tokensToRegexp(parse3(path34, options), keys, options); +function stringToRegexp(path33, keys, options) { + return tokensToRegexp(parse3(path33, options), keys, options); } function tokensToRegexp(tokens, keys, options = {}) { - const { strict: strict1 = false , start: start5 = true , end =true , encode: encode16 = (x2)=>x2 } = options; - const endsWith = `[${escapeString(options.endsWith || "")}]|$`; - const delimiter10 = `[${escapeString(options.delimiter || "/#?")}]`; + const { strict: strict1 = false , start: start5 = true , end =true , encode: encode18 = (x2)=>x2 , delimiter: delimiter10 = "/#?" , endsWith ="" , } = options; + const endsWithRe = `[${escapeString(endsWith)}]|$`; + const delimiterRe = `[${escapeString(delimiter10)}]`; let route = start5 ? "^" : ""; for (const token of tokens){ if (typeof token === "string") { - route += escapeString(encode16(token)); + route += escapeString(encode18(token)); } else { - const prefix = escapeString(encode16(token.prefix)); - const suffix = escapeString(encode16(token.suffix)); + const prefix = escapeString(encode18(token.prefix)); + const suffix = escapeString(encode18(token.suffix)); if (token.pattern) { if (keys) keys.push(token); if (prefix || suffix) { if (token.modifier === "+" || token.modifier === "*") { - const mod38 = token.modifier === "*" ? "?" : ""; - route += `(?:${prefix}((?:${token.pattern})(?:${suffix}${prefix}(?:${token.pattern}))*)${suffix})${mod38}`; + const mod37 = token.modifier === "*" ? "?" : ""; + route += `(?:${prefix}((?:${token.pattern})(?:${suffix}${prefix}(?:${token.pattern}))*)${suffix})${mod37}`; } else { route += `(?:${prefix}(${token.pattern})${suffix})${token.modifier}`; } } else { - route += `(${token.pattern})${token.modifier}`; + if (token.modifier === "+" || token.modifier === "*") { + route += `((?:${token.pattern})${token.modifier})`; + } else { + route += `(${token.pattern})${token.modifier}`; + } } } else { route += `(?:${prefix}${suffix})${token.modifier}`; @@ -11277,96 +14051,24 @@ function tokensToRegexp(tokens, keys, options = {}) { } } if (end) { - if (!strict1) route += `${delimiter10}?`; - route += !options.endsWith ? "$" : `(?=${endsWith})`; + if (!strict1) route += `${delimiterRe}?`; + route += !options.endsWith ? "$" : `(?=${endsWithRe})`; } else { const endToken = tokens[tokens.length - 1]; - const isEndDelimited = typeof endToken === "string" ? delimiter10.indexOf(endToken[endToken.length - 1]) > -1 : endToken === undefined; + const isEndDelimited = typeof endToken === "string" ? delimiterRe.indexOf(endToken[endToken.length - 1]) > -1 : endToken === undefined; if (!strict1) { - route += `(?:${delimiter10}(?=${endsWith}))?`; + route += `(?:${delimiterRe}(?=${endsWithRe}))?`; } if (!isEndDelimited) { - route += `(?=${delimiter10}|${endsWith})`; + route += `(?=${delimiterRe}|${endsWithRe})`; } } return new RegExp(route, flags(options)); } -function pathToRegexp(path35, keys, options) { - if (path35 instanceof RegExp) return regexpToRegexp(path35, keys); - if (Array.isArray(path35)) return arrayToRegexp(path35, keys, options); - return stringToRegexp(path35, keys, options); -} -const errorStatusMap = { - "BadRequest": 400, - "Unauthorized": 401, - "PaymentRequired": 402, - "Forbidden": 403, - "NotFound": 404, - "MethodNotAllowed": 405, - "NotAcceptable": 406, - "ProxyAuthRequired": 407, - "RequestTimeout": 408, - "Conflict": 409, - "Gone": 410, - "LengthRequired": 411, - "PreconditionFailed": 412, - "RequestEntityTooLarge": 413, - "RequestURITooLong": 414, - "UnsupportedMediaType": 415, - "RequestedRangeNotSatisfiable": 416, - "ExpectationFailed": 417, - "Teapot": 418, - "MisdirectedRequest": 421, - "UnprocessableEntity": 422, - "Locked": 423, - "FailedDependency": 424, - "UpgradeRequired": 426, - "PreconditionRequired": 428, - "TooManyRequests": 429, - "RequestHeaderFieldsTooLarge": 431, - "UnavailableForLegalReasons": 451, - "InternalServerError": 500, - "NotImplemented": 501, - "BadGateway": 502, - "ServiceUnavailable": 503, - "GatewayTimeout": 504, - "HTTPVersionNotSupported": 505, - "VariantAlsoNegotiates": 506, - "InsufficientStorage": 507, - "LoopDetected": 508, - "NotExtended": 510, - "NetworkAuthenticationRequired": 511 -}; -class HttpError extends Error { - expose = false; - status = Status.InternalServerError; -} -function createHttpErrorConstructor(status) { - const name = `${Status[status]}Error`; - const Ctor = class extends HttpError { - constructor(message){ - super(message || STATUS_TEXT.get(status)); - this.status = status; - this.expose = status >= 400 && status < 500; - Object.defineProperty(this, "name", { - configurable: true, - enumerable: false, - value: name, - writable: true - }); - } - }; - return Ctor; -} -const httpErrors = {}; -for (const [key, value] of Object.entries(errorStatusMap)){ - httpErrors[key] = createHttpErrorConstructor(value); -} -function createHttpError(status = 500, message) { - return new httpErrors[Status[status]](message); -} -function isHttpError(value1) { - return value1 instanceof HttpError; +function pathToRegexp(path34, keys, options) { + if (path34 instanceof RegExp) return regexpToRegexp(path34, keys); + if (Array.isArray(path34)) return arrayToRegexp(path34, keys, options); + return stringToRegexp(path34, keys, options); } const SUBTYPE_NAME_REGEXP = /^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/; const TYPE_NAME_REGEXP = /^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/; @@ -11389,21 +14091,21 @@ function format3(obj) { if (!SUBTYPE_NAME_REGEXP.test(subtype)) { throw new TypeError("Invalid subtype."); } - let str6 = `${type}/${subtype}`; + let str12 = `${type}/${subtype}`; if (suffix) { if (!TYPE_NAME_REGEXP.test(suffix)) { throw new TypeError("Invalid suffix."); } - str6 += `+${suffix}`; + str12 += `+${suffix}`; } - return str6; + return str12; } -function parse4(str7) { - const match4 = TYPE_REGEXP.exec(str7.toLowerCase()); - if (!match4) { +function parse4(str13) { + const match5 = TYPE_REGEXP.exec(str13.toLowerCase()); + if (!match5) { throw new TypeError("Invalid media type."); } - let [, type, subtype] = match4; + let [, type, subtype] = match5; let suffix; const idx = subtype.lastIndexOf("+"); if (idx !== -1) { @@ -11442,19 +14144,19 @@ function normalize4(type) { } else if (type[0] === "+") { return `*/*${type}`; } - return type.includes("/") ? type : lookup(type); + return type.includes("/") ? type : typeByExtension(type); } -function normalizeType(value14) { +function normalizeType(value22) { try { - const val = value14.split(";"); + const val = value22.split(";"); const type = parse4(val[0]); return format3(type); } catch { return; } } -function isMediaType(value15, types2) { - const val = normalizeType(value15); +function isMediaType(value23, types2) { + const val = normalizeType(value23); if (!val) { return false; } @@ -11482,7 +14184,7 @@ const BODY_TYPES = [ "boolean", "symbol" ]; -function assert1(cond, msg = "Assertion failed") { +function assert2(cond, msg = "Assertion failed") { if (!cond) { throw new Error(msg); } @@ -11499,7 +14201,7 @@ function encodeUrl(url) { } function bufferToHex(buffer3) { const arr = Array.from(new Uint8Array(buffer3)); - return arr.map((b6)=>b6.toString(16).padStart(2, "0")).join(""); + return arr.map((b10)=>b10.toString(16).padStart(2, "0")).join(""); } async function getRandomFilename(prefix = "", extension2 = "") { const buffer4 = await crypto.subtle.digest("SHA-1", crypto.getRandomValues(new Uint8Array(256))); @@ -11509,23 +14211,23 @@ async function getBoundary() { const buffer5 = await crypto.subtle.digest("SHA-1", crypto.getRandomValues(new Uint8Array(256))); return `oak_${bufferToHex(buffer5)}`; } -function isAsyncIterable(value16) { - return typeof value16 === "object" && value16 !== null && Symbol.asyncIterator in value16 && typeof value16[Symbol.asyncIterator] === "function"; +function isAsyncIterable(value24) { + return typeof value24 === "object" && value24 !== null && Symbol.asyncIterator in value24 && typeof value24[Symbol.asyncIterator] === "function"; } -function isRouterContext(value17) { - return "params" in value17; +function isRouterContext(value25) { + return "params" in value25; } -function isReader(value18) { - return typeof value18 === "object" && value18 !== null && "read" in value18 && typeof value18.read === "function"; +function isReader(value26) { + return typeof value26 === "object" && value26 !== null && "read" in value26 && typeof value26.read === "function"; } -function isCloser(value19) { - return typeof value19 === "object" && value19 != null && "close" in value19 && typeof value19["close"] === "function"; +function isCloser(value27) { + return typeof value27 === "object" && value27 != null && "close" in value27 && typeof value27["close"] === "function"; } -function isConn(value20) { - return typeof value20 === "object" && value20 != null && "rid" in value20 && typeof value20.rid === "number" && "localAddr" in value20 && "remoteAddr" in value20; +function isConn(value28) { + return typeof value28 === "object" && value28 != null && "rid" in value28 && typeof value28.rid === "number" && "localAddr" in value28 && "remoteAddr" in value28; } -function isListenTlsOptions(value21) { - return typeof value21 === "object" && value21 !== null && ("cert" in value21 || "certFile" in value21) && ("key" in value21 || "keyFile" in value21) && "port" in value21; +function isListenTlsOptions(value29) { + return typeof value29 === "object" && value29 !== null && ("cert" in value29 || "certFile" in value29) && ("key" in value29 || "keyFile" in value29) && "port" in value29; } function readableStreamFromAsyncIterable(source) { return new ReadableStream({ @@ -11578,7 +14280,7 @@ function readableStreamFromReader(reader, options = {}) { } }, strategy); } -function isErrorStatus(value22) { +function isErrorStatus(value30) { return [ Status.BadRequest, Status.Unauthorized, @@ -11619,9 +14321,9 @@ function isErrorStatus(value22) { Status.LoopDetected, Status.NotExtended, Status.NetworkAuthenticationRequired, - ].includes(value22); + ].includes(value30); } -function isRedirectStatus(value23) { +function isRedirectStatus(value31) { return [ Status.MultipleChoices, Status.MovedPermanently, @@ -11630,51 +14332,51 @@ function isRedirectStatus(value23) { Status.UseProxy, Status.TemporaryRedirect, Status.PermanentRedirect, - ].includes(value23); + ].includes(value31); } -function isHtml(value24) { - return /^\s*<(?:!DOCTYPE|html|body)/i.test(value24); +function isHtml(value32) { + return /^\s*<(?:!DOCTYPE|html|body)/i.test(value32); } function skipLWSPChar(u8) { const result = new Uint8Array(u8.length); - let j8 = 0; - for(let i34 = 0; i34 < u8.length; i34++){ - if (u8[i34] === SPACE || u8[i34] === HTAB) continue; - result[j8++] = u8[i34]; + let j10 = 0; + for(let i47 = 0; i47 < u8.length; i47++){ + if (u8[i47] === SPACE || u8[i47] === HTAB) continue; + result[j10++] = u8[i47]; } - return result.slice(0, j8); + return result.slice(0, j10); } -function stripEol(value25) { - if (value25[value25.byteLength - 1] == LF1) { +function stripEol(value33) { + if (value33[value33.byteLength - 1] == LF1) { let drop = 1; - if (value25.byteLength > 1 && value25[value25.byteLength - 2] === CR1) { + if (value33.byteLength > 1 && value33[value33.byteLength - 2] === CR1) { drop = 2; } - return value25.subarray(0, value25.byteLength - drop); + return value33.subarray(0, value33.byteLength - drop); } - return value25; + return value33; } const UP_PATH_REGEXP = /(?:^|[\\/])\.\.(?:[\\/]|$)/; function resolvePath(rootPath, relativePath) { - let path36 = relativePath; + let path35 = relativePath; let root = rootPath; if (relativePath === undefined) { - path36 = rootPath; + path35 = rootPath; root = "."; } - if (path36 == null) { + if (path35 == null) { throw new TypeError("Argument relativePath is required."); } - if (path36.includes("\0")) { + if (path35.includes("\0")) { throw createHttpError(400, "Malicious Path"); } - if (isAbsolute2(path36)) { + if (isAbsolute2(path35)) { throw createHttpError(400, "Malicious Path"); } - if (UP_PATH_REGEXP.test(normalize3("." + sep2 + path36))) { + if (UP_PATH_REGEXP.test(normalize3("." + sep2 + path35))) { throw createHttpError(403); } - return normalize3(join3(root, path36)); + return normalize3(join3(root, path35)); } class Uint8ArrayTransformStream extends TransformStream { constructor(){ @@ -11687,7 +14389,7 @@ class Uint8ArrayTransformStream extends TransformStream { controller.terminate(); } else if (ArrayBuffer.isView(chunk4)) { controller.enqueue(new Uint8Array(chunk4.buffer, chunk4.byteOffset, chunk4.byteLength)); - } else if (Array.isArray(chunk4) && chunk4.every((value26)=>typeof value26 === "number")) { + } else if (Array.isArray(chunk4) && chunk4.every((value34)=>typeof value34 === "number")) { controller.enqueue(new Uint8Array(chunk4)); } else if (typeof chunk4.valueOf === "function" && chunk4.valueOf() !== chunk4) { this.transform(chunk4.valueOf(), controller); @@ -11716,16 +14418,16 @@ const replacements = { "=": "" }; const encoder = new TextEncoder(); -function encodeBase64Safe(data7) { - return mod.encode(data7).replace(/\/|\+|=/g, (c7)=>replacements[c7]); +function encodeBase64Safe(data6) { + return mod.encode(data6).replace(/\/|\+|=/g, (c7)=>replacements[c7]); } -function importKey(key9) { - if (typeof key9 === "string") { - key9 = encoder.encode(key9); - } else if (Array.isArray(key9)) { - key9 = new Uint8Array(key9); +function importKey(key15) { + if (typeof key15 === "string") { + key15 = encoder.encode(key15); + } else if (Array.isArray(key15)) { + key15 = new Uint8Array(key15); } - return crypto.subtle.importKey("raw", key9, { + return crypto.subtle.importKey("raw", key15, { name: "HMAC", hash: { name: "SHA-256" @@ -11735,13 +14437,13 @@ function importKey(key9) { "verify" ]); } -function sign(data8, key10) { - if (typeof data8 === "string") { - data8 = encoder.encode(data8); - } else if (Array.isArray(data8)) { - data8 = Uint8Array.from(data8); +function sign(data7, key16) { + if (typeof data7 === "string") { + data7 = encoder.encode(data7); + } else if (Array.isArray(data7)) { + data7 = Uint8Array.from(data7); } - return crypto.subtle.sign("HMAC", key10, data8); + return crypto.subtle.sign("HMAC", key16, data7); } const MIN_BUF_SIZE1 = 16; const CR2 = "\r".charCodeAt(0); @@ -11776,7 +14478,7 @@ class BufReader1 { this.#eof = true; return; } - assert1(rr >= 0, "negative read"); + assert2(rr >= 0, "negative read"); this.#posWrite += rr; if (rr > 0) { return; @@ -11803,14 +14505,14 @@ class BufReader1 { try { line = await this.readSlice(LF2); } catch (err) { - assert1(err instanceof Error); + assert2(err instanceof Error); let { partial } = err; - assert1(partial instanceof Uint8Array, "Caught error from `readSlice()` without `partial` property"); + assert2(partial instanceof Uint8Array, "Caught error from `readSlice()` without `partial` property"); if (!(err instanceof BufferFullError1)) { throw err; } if (!this.#eof && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR2) { - assert1(this.#posRead > 0, "Tried to rewind past start of buffer"); + assert2(this.#posRead > 0, "Tried to rewind past start of buffer"); this.#posRead--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -11837,14 +14539,14 @@ class BufReader1 { }; } async readSlice(delim) { - let s5 = 0; + let s12 = 0; let slice; while(true){ - let i35 = this.#buffer.subarray(this.#posRead + s5, this.#posWrite).indexOf(delim); - if (i35 >= 0) { - i35 += s5; - slice = this.#buffer.subarray(this.#posRead, this.#posRead + i35 + 1); - this.#posRead += i35 + 1; + let i48 = this.#buffer.subarray(this.#posRead + s12, this.#posWrite).indexOf(delim); + if (i48 >= 0) { + i48 += s12; + slice = this.#buffer.subarray(this.#posRead, this.#posRead + i48 + 1); + this.#posRead += i48 + 1; break; } if (this.#eof) { @@ -11862,7 +14564,7 @@ class BufReader1 { this.#buffer = newbuf; throw new BufferFullError1(oldbuf); } - s5 = this.#posWrite - this.#posRead; + s12 = this.#posWrite - this.#posRead; try { await this.#fill(); } catch (err) { @@ -11889,95 +14591,95 @@ async function readHeaders(body) { if (!bytes2.length) { return headers; } - let i36 = bytes2.indexOf(COLON); - if (i36 === -1) { - throw new httpErrors.BadRequest(`Malformed header: ${decoder.decode(bytes2)}`); + let i49 = bytes2.indexOf(COLON); + if (i49 === -1) { + throw new errors.BadRequest(`Malformed header: ${decoder.decode(bytes2)}`); } - const key11 = decoder.decode(bytes2.subarray(0, i36)).trim().toLowerCase(); - if (key11 === "") { - throw new httpErrors.BadRequest("Invalid header key."); + const key17 = decoder.decode(bytes2.subarray(0, i49)).trim().toLowerCase(); + if (key17 === "") { + throw new errors.BadRequest("Invalid header key."); } - i36++; - while(i36 < bytes2.byteLength && (bytes2[i36] === SPACE1 || bytes2[i36] === HTAB1)){ - i36++; + i49++; + while(i49 < bytes2.byteLength && (bytes2[i49] === SPACE1 || bytes2[i49] === HTAB1)){ + i49++; } - const value27 = decoder.decode(bytes2.subarray(i36)).trim(); - headers[key11] = value27; + const value35 = decoder.decode(bytes2.subarray(i49)).trim(); + headers[key17] = value35; readResult = await body.readLine(); } - throw new httpErrors.BadRequest("Unexpected end of body reached."); + throw new errors.BadRequest("Unexpected end of body reached."); } -function unquote(value28) { - if (value28.startsWith(`"`)) { - const parts2 = value28.slice(1).split(`\\"`); - for(let i37 = 0; i37 < parts2.length; ++i37){ - const quoteIndex = parts2[i37].indexOf(`"`); +function unquote(value36) { + if (value36.startsWith(`"`)) { + const parts2 = value36.slice(1).split(`\\"`); + for(let i50 = 0; i50 < parts2.length; ++i50){ + const quoteIndex = parts2[i50].indexOf(`"`); if (quoteIndex !== -1) { - parts2[i37] = parts2[i37].slice(0, quoteIndex); - parts2.length = i37 + 1; + parts2[i50] = parts2[i50].slice(0, quoteIndex); + parts2.length = i50 + 1; } - parts2[i37] = parts2[i37].replace(/\\(.)/g, "$1"); + parts2[i50] = parts2[i50].replace(/\\(.)/g, "$1"); } - value28 = parts2.join(`"`); + value36 = parts2.join(`"`); } - return value28; + return value36; } let needsEncodingFixup = false; -function fixupEncoding(value29) { - if (needsEncodingFixup && /[\x80-\xff]/.test(value29)) { - value29 = textDecode("utf-8", value29); +function fixupEncoding(value37) { + if (needsEncodingFixup && /[\x80-\xff]/.test(value37)) { + value37 = textDecode("utf-8", value37); if (needsEncodingFixup) { - value29 = textDecode("iso-8859-1", value29); + value37 = textDecode("iso-8859-1", value37); } } - return value29; + return value37; } const FILENAME_STAR_REGEX = toParamRegExp("filename\\*", "i"); const FILENAME_START_ITER_REGEX = toParamRegExp("filename\\*((?!0\\d)\\d+)(\\*?)", "ig"); const FILENAME_REGEX = toParamRegExp("filename", "i"); -function rfc2047decode(value30) { - if (!value30.startsWith("=?") || /[\x00-\x19\x80-\xff]/.test(value30)) { - return value30; +function rfc2047decode(value38) { + if (!value38.startsWith("=?") || /[\x00-\x19\x80-\xff]/.test(value38)) { + return value38; } - return value30.replace(/=\?([\w-]*)\?([QqBb])\?((?:[^?]|\?(?!=))*)\?=/g, (_, charset1, encoding, text)=>{ + return value38.replace(/=\?([\w-]*)\?([QqBb])\?((?:[^?]|\?(?!=))*)\?=/g, (_, charset, encoding, text)=>{ if (encoding === "q" || encoding === "Q") { text = text.replace(/_/g, " "); text = text.replace(/=([0-9a-fA-F]{2})/g, (_, hex)=>String.fromCharCode(parseInt(hex, 16))); - return textDecode(charset1, text); + return textDecode(charset, text); } try { text = atob(text); } catch {} - return textDecode(charset1, text); + return textDecode(charset, text); }); } function rfc2231getParam(header) { const matches = []; - let match5; - while(match5 = FILENAME_START_ITER_REGEX.exec(header)){ - const [, ns, quote, part] = match5; - const n10 = parseInt(ns, 10); - if (n10 in matches) { - if (n10 === 0) { + let match6; + while(match6 = FILENAME_START_ITER_REGEX.exec(header)){ + const [, ns, quote, part] = match6; + const n11 = parseInt(ns, 10); + if (n11 in matches) { + if (n11 === 0) { break; } continue; } - matches[n10] = [ + matches[n11] = [ quote, part ]; } const parts3 = []; - for(let n11 = 0; n11 < matches.length; ++n11){ - if (!(n11 in matches)) { + for(let n12 = 0; n12 < matches.length; ++n12){ + if (!(n12 in matches)) { break; } - let [quote, part] = matches[n11]; + let [quote, part] = matches[n12]; part = unquote(part); if (quote) { part = unescape(part); - if (n11 === 0) { + if (n12 === 0) { part = rfc5987decode(part); } } @@ -11985,29 +14687,29 @@ function rfc2231getParam(header) { } return parts3.join(""); } -function rfc5987decode(value31) { - const encodingEnd = value31.indexOf(`'`); +function rfc5987decode(value39) { + const encodingEnd = value39.indexOf(`'`); if (encodingEnd === -1) { - return value31; + return value39; } - const encoding = value31.slice(0, encodingEnd); - const langValue = value31.slice(encodingEnd + 1); + const encoding = value39.slice(0, encodingEnd); + const langValue = value39.slice(encodingEnd + 1); return textDecode(encoding, langValue.replace(/^[^']*'/, "")); } -function textDecode(encoding, value32) { +function textDecode(encoding, value40) { if (encoding) { try { const decoder9 = new TextDecoder(encoding, { fatal: true }); - const bytes3 = Array.from(value32, (c8)=>c8.charCodeAt(0)); - if (bytes3.every((code21)=>code21 <= 0xFF)) { - value32 = decoder9.decode(new Uint8Array(bytes3)); + const bytes3 = Array.from(value40, (c8)=>c8.charCodeAt(0)); + if (bytes3.every((code22)=>code22 <= 0xFF)) { + value40 = decoder9.decode(new Uint8Array(bytes3)); needsEncodingFixup = false; } } catch {} } - return value32; + return value40; } function getFilename(header) { needsEncodingFixup = true; @@ -12031,14 +14733,14 @@ const decoder1 = new TextDecoder(); const encoder1 = new TextEncoder(); const BOUNDARY_PARAM_REGEX = toParamRegExp("boundary", "i"); const NAME_PARAM_REGEX = toParamRegExp("name", "i"); -function append(a9, b7) { - const ab = new Uint8Array(a9.length + b7.length); - ab.set(a9, 0); - ab.set(b7, a9.length); +function append(a11, b11) { + const ab = new Uint8Array(a11.length + b11.length); + ab.set(a11, 0); + ab.set(b11, a11.length); return ab; } -function isEqual(a10, b8) { - return equals(skipLWSPChar(a10), b8); +function isEqual(a12, b12) { + return equals(skipLWSPChar(a12), b12); } async function readToStartOrEnd(body, start6, end) { let lineResult; @@ -12050,13 +14752,13 @@ async function readToStartOrEnd(body, start6, end) { return false; } } - throw new httpErrors.BadRequest("Unable to find multi-part boundary."); + throw new errors.BadRequest("Unable to find multi-part boundary."); } async function* parts({ body , customContentTypes ={} , final: __final1 , part , maxFileSize , maxSize , outPath , prefix }) { async function getFile(contentType1) { const ext = customContentTypes[contentType1.toLowerCase()] ?? extension(contentType1); if (!ext) { - throw new httpErrors.BadRequest(`The form contained content type "${contentType1}" which is not supported by the server.`); + throw new errors.BadRequest(`The form contained content type "${contentType1}" which is not supported by the server.`); } if (!outPath) { outPath = await Deno.makeTempDir(); @@ -12076,14 +14778,14 @@ async function* parts({ body , customContentTypes ={} , final: __final1 , part , const contentType2 = headers["content-type"]; const contentDisposition = headers["content-disposition"]; if (!contentDisposition) { - throw new httpErrors.BadRequest("Form data part missing content-disposition header"); + throw new errors.BadRequest("Form data part missing content-disposition header"); } if (!contentDisposition.match(/^form-data;/i)) { - throw new httpErrors.BadRequest(`Unexpected content-disposition header: "${contentDisposition}"`); + throw new errors.BadRequest(`Unexpected content-disposition header: "${contentDisposition}"`); } const matches = NAME_PARAM_REGEX.exec(contentDisposition); if (!matches) { - throw new httpErrors.BadRequest(`Unable to determine name of form body part`); + throw new errors.BadRequest(`Unable to determine name of form body part`); } let [, name] = matches; name = unquote(name); @@ -12103,7 +14805,7 @@ async function* parts({ body , customContentTypes ={} , final: __final1 , part , while(true){ const readResult = await body.readLine(false); if (!readResult) { - throw new httpErrors.BadRequest("Unexpected EOF reached"); + throw new errors.BadRequest("Unexpected EOF reached"); } const { bytes: bytes4 } = readResult; const strippedBytes = stripEol(bytes4); @@ -12136,7 +14838,7 @@ async function* parts({ body , customContentTypes ={} , final: __final1 , part , if (file) { file.close(); } - throw new httpErrors.RequestEntityTooLarge(`File size exceeds limit of ${maxFileSize} bytes.`); + throw new errors.RequestEntityTooLarge(`File size exceeds limit of ${maxFileSize} bytes.`); } if (buf) { if (byteLength2 > maxSize) { @@ -12158,7 +14860,7 @@ async function* parts({ body , customContentTypes ={} , final: __final1 , part , while(true){ const readResult = await body.readLine(); if (!readResult) { - throw new httpErrors.BadRequest("Unexpected EOF reached"); + throw new errors.BadRequest("Unexpected EOF reached"); } const { bytes: bytes5 } = readResult; if (isEqual(bytes5, part) || isEqual(bytes5, __final1)) { @@ -12184,7 +14886,7 @@ class FormDataReader { constructor(contentType3, body){ const matches = contentType3.match(BOUNDARY_PARAM_REGEX); if (!matches) { - throw new httpErrors.BadRequest(`Content type "${contentType3}" does not contain a valid boundary.`); + throw new errors.BadRequest(`Content type "${contentType3}" does not contain a valid boundary.`); } let [, boundary1] = matches; boundary1 = unquote(boundary1); @@ -12215,14 +14917,14 @@ class FormDataReader { maxSize, outPath })){ - const [key12, value33] = part; - if (typeof value33 === "string") { - result.fields[key12] = value33; + const [key18, value41] = part; + if (typeof value41 === "string") { + result.fields[key18] = value41; } else { if (!result.files) { result.files = []; } - result.files.push(value33); + result.files.push(value41); } } } catch (err) { @@ -12328,6 +15030,7 @@ class RequestBody { #body; #formDataReader; #headers; + #jsonBodyReviver; #stream; #readAllBody; #readBody; @@ -12361,7 +15064,7 @@ class RequestBody { this.#type = "form-data"; return ()=>{ const contentType5 = this.#headers.get("content-type"); - assert1(contentType5); + assert2(contentType5); const readableStream = this.#body ?? new ReadableStream(); return this.#formDataReader ?? (this.#formDataReader = new FormDataReader(contentType5, readerFromStreamReader(readableStream.getReader()))); }; @@ -12370,7 +15073,7 @@ class RequestBody { if (this.#exceedsLimit(limit1)) { return ()=>Promise.reject(new RangeError(`Body exceeds a limit of ${limit1}.`)); } - return async ()=>JSON.parse(decoder2.decode(await this.#valuePromise())); + return async ()=>JSON.parse(decoder2.decode(await this.#valuePromise()), this.#jsonBodyReviver); case "bytes": this.#type = "bytes"; if (this.#exceedsLimit(limit1)) { @@ -12413,9 +15116,10 @@ class RequestBody { #valuePromise() { return this.#readAllBody ?? (this.#readAllBody = this.#readBody()); } - constructor({ body , readBody }, headers){ + constructor({ body , readBody }, headers, jsonBodyReviver){ this.#body = body; this.#headers = headers; + this.#jsonBodyReviver = jsonBodyReviver; this.#readBody = readBody; } get({ limit: limit2 = 10_485_760 , type: type2 , contentTypes: contentTypes1 = {} } = {}) { @@ -12449,7 +15153,7 @@ class RequestBody { } else if (!this.#type) { const encoding = this.#headers.get("content-encoding") ?? "identity"; if (encoding !== "identity") { - throw new httpErrors.UnsupportedMediaType(`Unsupported content-encoding: ${encoding}`); + throw new errors.UnsupportedMediaType(`Unsupported content-encoding: ${encoding}`); } } if (this.#type === "undefined" && (!type2 || type2 === "undefined")) { @@ -12460,10 +15164,10 @@ class RequestBody { } if (!type2) { const contentType6 = this.#headers.get("content-type"); - assert1(contentType6, "The Content-Type header is missing from the request"); + assert2(contentType6, "The Content-Type header is missing from the request"); type2 = resolveType(contentType6, contentTypes1); } - assert1(type2); + assert2(type2); const body = Object.create(null); Object.defineProperties(body, { type: { @@ -12483,393 +15187,6 @@ class RequestBody { return this.#body != null; } } -function compareSpecs(a11, b9) { - return b9.q - a11.q || (b9.s ?? 0) - (a11.s ?? 0) || (a11.o ?? 0) - (b9.o ?? 0) || a11.i - b9.i || 0; -} -function isQuality(spec) { - return spec.q > 0; -} -const SIMPLE_CHARSET_REGEXP = /^\s*([^\s;]+)\s*(?:;(.*))?$/; -function parseCharset(str8, i38) { - const match6 = SIMPLE_CHARSET_REGEXP.exec(str8); - if (!match6) { - return; - } - const [, charset2] = match6; - let q1 = 1; - if (match6[2]) { - const params = match6[2].split(";"); - for (const param of params){ - const [key13, value34] = param.trim().split("="); - if (key13 === "q") { - q1 = parseFloat(value34); - break; - } - } - } - return { - charset: charset2, - q: q1, - i: i38 - }; -} -function parseAcceptCharset(accept) { - const accepts = accept.split(","); - const result = []; - for(let i39 = 0; i39 < accepts.length; i39++){ - const charset3 = parseCharset(accepts[i39].trim(), i39); - if (charset3) { - result.push(charset3); - } - } - return result; -} -function specify(charset4, spec, i40) { - let s6 = 0; - if (spec.charset.toLowerCase() === charset4.toLocaleLowerCase()) { - s6 |= 1; - } else if (spec.charset !== "*") { - return; - } - return { - i: i40, - o: spec.i, - q: spec.q, - s: s6 - }; -} -function getCharsetPriority(charset5, accepted, index) { - let priority = { - i: -1, - o: -1, - q: 0, - s: 0 - }; - for (const accepts of accepted){ - const spec = specify(charset5, accepts, index); - if (spec && ((priority.s ?? 0) - (spec.s ?? 0) || priority.q - spec.q || (priority.o ?? 0) - (spec.o ?? 0)) < 0) { - priority = spec; - } - } - return priority; -} -function preferredCharsets(accept = "*", provided) { - const accepts = parseAcceptCharset(accept); - if (!provided) { - return accepts.filter(isQuality).sort(compareSpecs).map((spec)=>spec.charset); - } - const priorities = provided.map((type3, index)=>getCharsetPriority(type3, accepts, index)); - return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); -} -const simpleEncodingRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/; -function parseEncoding(str9, i41) { - const match7 = simpleEncodingRegExp.exec(str9); - if (!match7) { - return undefined; - } - const encoding = match7[1]; - let q2 = 1; - if (match7[2]) { - const params = match7[2].split(";"); - for (const param of params){ - const p15 = param.trim().split("="); - if (p15[0] === "q") { - q2 = parseFloat(p15[1]); - break; - } - } - } - return { - encoding, - q: q2, - i: i41 - }; -} -function specify1(encoding, spec, i42 = -1) { - if (!spec.encoding) { - return; - } - let s7 = 0; - if (spec.encoding.toLocaleLowerCase() === encoding.toLocaleLowerCase()) { - s7 = 1; - } else if (spec.encoding !== "*") { - return; - } - return { - i: i42, - o: spec.i, - q: spec.q, - s: s7 - }; -} -function parseAcceptEncoding(accept) { - const accepts = accept.split(","); - const parsedAccepts = []; - let hasIdentity = false; - let minQuality = 1; - for(let i43 = 0; i43 < accepts.length; i43++){ - const encoding = parseEncoding(accepts[i43].trim(), i43); - if (encoding) { - parsedAccepts.push(encoding); - hasIdentity = hasIdentity || !!specify1("identity", encoding); - minQuality = Math.min(minQuality, encoding.q || 1); - } - } - if (!hasIdentity) { - parsedAccepts.push({ - encoding: "identity", - q: minQuality, - i: accepts.length - 1 - }); - } - return parsedAccepts; -} -function getEncodingPriority(encoding, accepted, index) { - let priority = { - o: -1, - q: 0, - s: 0, - i: 0 - }; - for (const s8 of accepted){ - const spec = specify1(encoding, s8, index); - if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { - priority = spec; - } - } - return priority; -} -function preferredEncodings(accept, provided) { - const accepts = parseAcceptEncoding(accept); - if (!provided) { - return accepts.filter(isQuality).sort(compareSpecs).map((spec)=>spec.encoding); - } - const priorities = provided.map((type4, index)=>getEncodingPriority(type4, accepts, index)); - return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); -} -const SIMPLE_LANGUAGE_REGEXP = /^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/; -function parseLanguage(str10, i44) { - const match8 = SIMPLE_LANGUAGE_REGEXP.exec(str10); - if (!match8) { - return undefined; - } - const [, prefix, suffix] = match8; - const full = suffix ? `${prefix}-${suffix}` : prefix; - let q3 = 1; - if (match8[3]) { - const params = match8[3].split(";"); - for (const param of params){ - const [key14, value35] = param.trim().split("="); - if (key14 === "q") { - q3 = parseFloat(value35); - break; - } - } - } - return { - prefix, - suffix, - full, - q: q3, - i: i44 - }; -} -function parseAcceptLanguage(accept) { - const accepts = accept.split(","); - const result = []; - for(let i45 = 0; i45 < accepts.length; i45++){ - const language = parseLanguage(accepts[i45].trim(), i45); - if (language) { - result.push(language); - } - } - return result; -} -function specify2(language, spec, i46) { - const p16 = parseLanguage(language, i46); - if (!p16) { - return undefined; - } - let s9 = 0; - if (spec.full.toLowerCase() === p16.full.toLowerCase()) { - s9 |= 4; - } else if (spec.prefix.toLowerCase() === p16.prefix.toLowerCase()) { - s9 |= 2; - } else if (spec.full.toLowerCase() === p16.prefix.toLowerCase()) { - s9 |= 1; - } else if (spec.full !== "*") { - return; - } - return { - i: i46, - o: spec.i, - q: spec.q, - s: s9 - }; -} -function getLanguagePriority(language, accepted, index) { - let priority = { - i: -1, - o: -1, - q: 0, - s: 0 - }; - for (const accepts of accepted){ - const spec = specify2(language, accepts, index); - if (spec && ((priority.s ?? 0) - (spec.s ?? 0) || priority.q - spec.q || (priority.o ?? 0) - (spec.o ?? 0)) < 0) { - priority = spec; - } - } - return priority; -} -function preferredLanguages(accept = "*", provided) { - const accepts = parseAcceptLanguage(accept); - if (!provided) { - return accepts.filter(isQuality).sort(compareSpecs).map((spec)=>spec.full); - } - const priorities = provided.map((type5, index)=>getLanguagePriority(type5, accepts, index)); - return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); -} -const simpleMediaTypeRegExp = /^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/; -function quoteCount(str11) { - let count = 0; - let index = 0; - while((index = str11.indexOf(`"`, index)) !== -1){ - count++; - index++; - } - return count; -} -function splitMediaTypes(accept) { - const accepts = accept.split(","); - let j9 = 0; - for(let i47 = 1; i47 < accepts.length; i47++){ - if (quoteCount(accepts[j9]) % 2 === 0) { - accepts[++j9] = accepts[i47]; - } else { - accepts[j9] += `,${accepts[i47]}`; - } - } - accepts.length = j9 + 1; - return accepts; -} -function splitParameters(str12) { - const parameters = str12.split(";"); - let j10 = 0; - for(let i48 = 1; i48 < parameters.length; i48++){ - if (quoteCount(parameters[j10]) % 2 === 0) { - parameters[++j10] = parameters[i48]; - } else { - parameters[j10] += `;${parameters[i48]}`; - } - } - parameters.length = j10 + 1; - return parameters.map((p17)=>p17.trim()); -} -function splitKeyValuePair(str13) { - const [key15, value36] = str13.split("="); - return [ - key15.toLowerCase(), - value36 - ]; -} -function parseMediaType(str14, i49) { - const match9 = simpleMediaTypeRegExp.exec(str14); - if (!match9) { - return; - } - const params = Object.create(null); - let q4 = 1; - const [, type6, subtype, parameters] = match9; - if (parameters) { - const kvps = splitParameters(parameters).map(splitKeyValuePair); - for (const [key16, val] of kvps){ - const value37 = val && val[0] === `"` && val[val.length - 1] === `"` ? val.substr(1, val.length - 2) : val; - if (key16 === "q" && value37) { - q4 = parseFloat(value37); - break; - } - params[key16] = value37; - } - } - return { - type: type6, - subtype, - params, - q: q4, - i: i49 - }; -} -function parseAccept(accept) { - const accepts = splitMediaTypes(accept); - const mediaTypes = []; - for(let i50 = 0; i50 < accepts.length; i50++){ - const mediaType = parseMediaType(accepts[i50].trim(), i50); - if (mediaType) { - mediaTypes.push(mediaType); - } - } - return mediaTypes; -} -function getFullType(spec) { - return `${spec.type}/${spec.subtype}`; -} -function specify3(type7, spec, index) { - const p18 = parseMediaType(type7, index); - if (!p18) { - return; - } - let s10 = 0; - if (spec.type.toLowerCase() === p18.type.toLowerCase()) { - s10 |= 4; - } else if (spec.type !== "*") { - return; - } - if (spec.subtype.toLowerCase() === p18.subtype.toLowerCase()) { - s10 |= 2; - } else if (spec.subtype !== "*") { - return; - } - const keys = Object.keys(spec.params); - if (keys.length) { - if (keys.every((key17)=>(spec.params[key17] || "").toLowerCase() === (p18.params[key17] || "").toLowerCase())) { - s10 |= 1; - } else { - return; - } - } - return { - i: index, - o: spec.o, - q: spec.q, - s: s10 - }; -} -function getMediaTypePriority(type8, accepted, index) { - let priority = { - o: -1, - q: 0, - s: 0, - i: index - }; - for (const accepts of accepted){ - const spec = specify3(type8, accepts, index); - if (spec && ((priority.s || 0) - (spec.s || 0) || (priority.q || 0) - (spec.q || 0) || (priority.o || 0) - (spec.o || 0)) < 0) { - priority = spec; - } - } - return priority; -} -function preferredMediaTypes(accept, provided) { - const accepts = parseAccept(accept === undefined ? "*/*" : accept || ""); - if (!provided) { - return accepts.filter(isQuality).sort(compareSpecs).map(getFullType); - } - const priorities = provided.map((type9, index)=>{ - return getMediaTypePriority(type9, accepts, index); - }); - return priorities.filter(isQuality).sort(compareSpecs).map((priority)=>provided[priorities.indexOf(priority)]); -} class Request1 { #body; #proxy; @@ -12928,59 +15245,44 @@ class Request1 { } return this.#url; } - constructor(serverRequest, proxy1 = false, secure = false){ + constructor(serverRequest, { proxy: proxy1 = false , secure =false , jsonBodyReviver } = {}){ this.#proxy = proxy1; this.#secure = secure; this.#serverRequest = serverRequest; - this.#body = new RequestBody(serverRequest.getBody(), serverRequest.headers); + this.#body = new RequestBody(serverRequest.getBody(), serverRequest.headers, jsonBodyReviver); } accepts(...types3) { - const acceptValue = this.#serverRequest.headers.get("Accept"); - if (!acceptValue) { + if (!this.#serverRequest.headers.has("Accept")) { return types3.length ? types3[0] : [ "*/*" ]; } if (types3.length) { - return preferredMediaTypes(acceptValue, types3)[0]; - } - return preferredMediaTypes(acceptValue); - } - acceptsCharsets(...charsets) { - const acceptCharsetValue = this.#serverRequest.headers.get("Accept-Charset"); - if (!acceptCharsetValue) { - return charsets.length ? charsets[0] : [ - "*" - ]; - } - if (charsets.length) { - return preferredCharsets(acceptCharsetValue, charsets)[0]; + return accepts(this.#serverRequest, ...types3); } - return preferredCharsets(acceptCharsetValue); + return accepts(this.#serverRequest); } - acceptsEncodings(...encodings1) { - const acceptEncodingValue = this.#serverRequest.headers.get("Accept-Encoding"); - if (!acceptEncodingValue) { - return encodings1.length ? encodings1[0] : [ + acceptsEncodings(...encodings2) { + if (!this.#serverRequest.headers.has("Accept-Encoding")) { + return encodings2.length ? encodings2[0] : [ "*" ]; } - if (encodings1.length) { - return preferredEncodings(acceptEncodingValue, encodings1)[0]; + if (encodings2.length) { + return acceptsEncodings(this.#serverRequest, ...encodings2); } - return preferredEncodings(acceptEncodingValue); + return acceptsEncodings(this.#serverRequest); } acceptsLanguages(...langs) { - const acceptLanguageValue = this.#serverRequest.headers.get("Accept-Language"); - if (!acceptLanguageValue) { + if (!this.#serverRequest.headers.get("Accept-Language")) { return langs.length ? langs[0] : [ "*" ]; } if (langs.length) { - return preferredLanguages(acceptLanguageValue, langs)[0]; + return acceptsLanguages(this.#serverRequest, ...langs); } - return preferredLanguages(acceptLanguageValue); + return acceptsLanguages(this.#serverRequest); } body(options = {}) { return this.#body.get(options); @@ -13032,9 +15334,9 @@ class NativeRequest { this.#conn = conn; this.#upgradeWebSocket = "upgradeWebSocket" in options ? options["upgradeWebSocket"] : maybeUpgradeWebSocket; this.#request = requestEvent.request; - const p19 = new Promise((resolve10, reject1)=>{ - this.#resolve = resolve10; - this.#reject = reject1; + const p19 = new Promise((resolve11, reject2)=>{ + this.#resolve = resolve11; + this.#reject = reject2; }); this.#requestPromise = requestEvent.respondWith(p19); } @@ -13104,11 +15406,11 @@ class NativeRequest { } } const REDIRECT_BACK = Symbol("redirect backwards"); -async function convertBodyToBodyInit(body, type10) { +async function convertBodyToBodyInit(body, type3, jsonBodyReplacer) { let result; if (BODY_TYPES.includes(typeof body)) { result = String(body); - type10 = type10 ?? (isHtml(result) ? "html" : "text/plain"); + type3 = type3 ?? (isHtml(result) ? "html" : "text/plain"); } else if (isReader(body)) { result = readableStreamFromReader(body); } else if (ArrayBuffer.isView(body) || body instanceof ArrayBuffer || body instanceof Blob || body instanceof URLSearchParams) { @@ -13117,35 +15419,36 @@ async function convertBodyToBodyInit(body, type10) { result = body.pipeThrough(new Uint8ArrayTransformStream()); } else if (body instanceof FormData) { result = body; - type10 = "multipart/form-data"; + type3 = "multipart/form-data"; } else if (isAsyncIterable(body)) { result = readableStreamFromAsyncIterable(body); } else if (body && typeof body === "object") { - result = JSON.stringify(body); - type10 = type10 ?? "json"; + result = JSON.stringify(body, jsonBodyReplacer); + type3 = type3 ?? "json"; } else if (typeof body === "function") { const result = body.call(null); - return convertBodyToBodyInit(await result, type10); + return convertBodyToBodyInit(await result, type3, jsonBodyReplacer); } else if (body) { throw new TypeError("Response body was set but could not be converted."); } return [ result, - type10 + type3 ]; } -class Response { +class Response1 { #body; #bodySet = false; #domResponse; #headers = new Headers(); + #jsonBodyReplacer; #request; #resources = []; #status; #type; #writable = true; async #getBodyInit() { - const [body, type] = await convertBodyToBodyInit(this.body, this.type); + const [body, type] = await convertBodyToBodyInit(this.body, this.type, this.#jsonBodyReplacer); this.type = type; return body; } @@ -13160,21 +15463,21 @@ class Response { get body() { return this.#body; } - set body(value38) { + set body(value42) { if (!this.#writable) { throw new Error("The response is not writable."); } this.#bodySet = true; - this.#body = value38; + this.#body = value42; } get headers() { return this.#headers; } - set headers(value39) { + set headers(value43) { if (!this.#writable) { throw new Error("The response is not writable."); } - this.#headers = value39; + this.#headers = value43; } get status() { if (this.#status) { @@ -13182,26 +15485,27 @@ class Response { } return this.body != null ? Status.OK : this.#bodySet ? Status.NoContent : Status.NotFound; } - set status(value40) { + set status(value44) { if (!this.#writable) { throw new Error("The response is not writable."); } - this.#status = value40; + this.#status = value44; } get type() { return this.#type; } - set type(value41) { + set type(value45) { if (!this.#writable) { throw new Error("The response is not writable."); } - this.#type = value41; + this.#type = value45; } get writable() { return this.#writable; } - constructor(request){ + constructor(request, jsonBodyReplacer){ this.#request = request; + this.#jsonBodyReplacer = jsonBodyReplacer; } addResource(rid) { this.#resources.push(rid); @@ -13230,11 +15534,11 @@ class Response { } if (this.#request.accepts("html")) { url = encodeURI(url); - this.type = "text/html; charset=utf-8"; + this.type = "text/html; charset=UTF-8"; this.body = `Redirecting to ${url}.`; return; } - this.type = "text/plain; charset=utf-8"; + this.type = "text/plain; charset=UTF-8"; this.body = `Redirecting to ${url}.`; } async toDomResponse() { @@ -13252,17 +15556,17 @@ class Response { const responseInit = { headers, status, - statusText: STATUS_TEXT.get(status) + statusText: STATUS_TEXT[status] }; return this.#domResponse = new DomResponse(bodyInit, responseInit); } [Symbol.for("Deno.customInspect")](inspect7) { - const { body , headers , status , type: type11 , writable } = this; + const { body , headers , status , type: type4 , writable } = this; return `${this.constructor.name} ${inspect7({ body, headers, status, - type: type11, + type: type4, writable })}`; } @@ -13273,18 +15577,18 @@ class Response { const newOptions = Object.assign({}, options, { depth: options.depth === null ? null : options.depth - 1 }); - const { body , headers , status , type: type12 , writable } = this; + const { body , headers , status , type: type5 , writable } = this; return `${options.stylize(this.constructor.name, "special")} ${inspect8({ body, headers, status, - type: type12, + type: type5, writable }, newOptions)}`; } } -function isFileInfo(value42) { - return Boolean(value42 && typeof value42 === "object" && "mtime" in value42 && "size" in value42); +function isFileInfo(value46) { + return Boolean(value46 && typeof value46 === "object" && "mtime" in value46 && "size" in value46); } function calcStatTag(entity) { const mtime = entity.mtime?.getTime().toString(16) ?? "0"; @@ -13346,23 +15650,23 @@ function factory(options) { } }; } -async function ifMatch(value43, entity, options = {}) { +async function ifMatch(value47, entity, options = {}) { const etag = await calculate(entity, options); if (etag.startsWith("W/")) { return false; } - if (value43.trim() === "*") { + if (value47.trim() === "*") { return true; } - const tags = value43.split(/\s*,\s*/); + const tags = value47.split(/\s*,\s*/); return tags.includes(etag); } -async function ifNoneMatch(value44, entity, options = {}) { - if (value44.trim() === "*") { +async function ifNoneMatch(value48, entity, options = {}) { + if (value48.trim() === "*") { return false; } const etag = await calculate(entity, options); - const tags = value44.split(/\s*,\s*/); + const tags = value48.split(/\s*,\s*/); return !tags.includes(etag); } const mod3 = { @@ -13373,23 +15677,23 @@ const mod3 = { ifNoneMatch: ifNoneMatch }; const ETAG_RE = /(?:W\/)?"[ !#-\x7E\x80-\xFF]+"/; -async function ifRange(value45, mtime, entity) { - if (value45) { - const matches = value45.match(ETAG_RE); +async function ifRange(value49, mtime, entity) { + if (value49) { + const matches = value49.match(ETAG_RE); if (matches) { - const [match10] = matches; - if (await calculate(entity) === match10) { + const [match7] = matches; + if (await calculate(entity) === match7) { return true; } } else { - return new Date(value45).getTime() >= mtime; + return new Date(value49).getTime() >= mtime; } } return false; } -function parseRange(value46, size) { +function parseRange(value50, size) { const ranges = []; - const [unit, rangesStr] = value46.split("="); + const [unit, rangesStr] = value50.split("="); if (unit !== "bytes") { throw createHttpError(Status.RequestedRangeNotSatisfiable); } @@ -13427,19 +15731,19 @@ function parseRange(value46, size) { } async function readRange(file, range) { let length = range.end - range.start + 1; - assert1(length); + assert2(length); await file.seek(range.start, Deno.SeekMode.Start); const result = new Uint8Array(length); let off = 0; while(length){ const p20 = new Uint8Array(Math.min(length, 16_640)); const nread = await file.read(p20); - assert1(nread !== null, "Unexpected EOF encountered when reading a range."); - assert1(nread > 0, "Unexpected read of 0 bytes while reading a range."); + assert2(nread !== null, "Unexpected EOF encountered when reading a range."); + assert2(nread > 0, "Unexpected read of 0 bytes while reading a range."); copy(p20, result, off); off += nread; length -= nread; - assert1(length >= 0, "Unexpected length remaining."); + assert2(length >= 0, "Unexpected length remaining."); } return result; } @@ -13448,7 +15752,7 @@ class MultiPartStream extends ReadableStream { #contentLength; #postscript; #preamble; - constructor(file, type13, ranges, size, boundary2){ + constructor(file, type6, ranges, size, boundary2){ super({ pull: async (controller)=>{ const range = ranges.shift(); @@ -13470,9 +15774,9 @@ class MultiPartStream extends ReadableStream { controller.enqueue(concat(this.#preamble, rangeHeader, bytes6)); } }); - const resolvedType = contentType(type13); + const resolvedType = contentType(type6); if (!resolvedType) { - throw new TypeError(`Could not resolve media type for "${type13}"`); + throw new TypeError(`Could not resolve media type for "${type6}"`); } this.#preamble = encoder3.encode(`\n--${boundary2}\nContent-Type: ${resolvedType}\n`); this.#postscript = encoder3.encode(`\n--${boundary2}--\n`); @@ -13485,8 +15789,8 @@ class MultiPartStream extends ReadableStream { } } let boundary; -function isHidden(path37) { - const pathArr = path37.split("/"); +function isHidden(path36) { + const pathArr = path36.split("/"); for (const segment of pathArr){ if (segment[0] === "." && segment !== "." && segment !== "..") { return true; @@ -13494,17 +15798,17 @@ function isHidden(path37) { return false; } } -async function exists(path38) { +async function exists(path37) { try { - return (await Deno.stat(path38)).isFile; + return (await Deno.stat(path37)).isFile; } catch { return false; } } -async function getEntity1(path39, mtime, stats, maxbuffer, response) { +async function getEntity1(path38, mtime, stats, maxbuffer, response) { let body; let entity; - const file = await Deno.open(path39, { + const file = await Deno.open(path38, { read: true }); if (stats.size < maxbuffer) { @@ -13541,7 +15845,7 @@ async function sendRange(response, body, range, size) { response.body = new LimitedReader(body, byteRange.end - byteRange.start + 1); } } else { - assert1(response.type); + assert2(response.type); if (!boundary) { boundary = await getBoundary(); } @@ -13551,49 +15855,49 @@ async function sendRange(response, body, range, size) { response.body = multipartBody; } } -async function send({ request , response }, path40, options = { +async function send({ request , response }, path39, options = { root: "" }) { - const { brotli =true , contentTypes: contentTypes2 = {} , extensions: extensions2 , format: format16 = true , gzip =true , hidden: hidden1 = false , immutable =false , index , maxbuffer =1_048_576 , maxage =0 , root , } = options; - const trailingSlash = path40[path40.length - 1] === "/"; - path40 = decodeComponent(path40.substr(parse2(path40).root.length)); + const { brotli =true , contentTypes: contentTypes2 = {} , extensions: extensions1 , format: format16 = true , gzip =true , hidden: hidden1 = false , immutable =false , index , maxbuffer =1_048_576 , maxage =0 , root , } = options; + const trailingSlash = path39[path39.length - 1] === "/"; + path39 = decodeComponent(path39.substr(parse2(path39).root.length)); if (index && trailingSlash) { - path40 += index; + path39 += index; } - if (!hidden1 && isHidden(path40)) { + if (!hidden1 && isHidden(path39)) { throw createHttpError(403); } - path40 = resolvePath(root, path40); + path39 = resolvePath(root, path39); let encodingExt = ""; - if (brotli && request.acceptsEncodings("br", "identity") === "br" && await exists(`${path40}.br`)) { - path40 = `${path40}.br`; + if (brotli && request.acceptsEncodings("br", "identity") === "br" && await exists(`${path39}.br`)) { + path39 = `${path39}.br`; response.headers.set("Content-Encoding", "br"); response.headers.delete("Content-Length"); encodingExt = ".br"; - } else if (gzip && request.acceptsEncodings("gzip", "identity") === "gzip" && await exists(`${path40}.gz`)) { - path40 = `${path40}.gz`; + } else if (gzip && request.acceptsEncodings("gzip", "identity") === "gzip" && await exists(`${path39}.gz`)) { + path39 = `${path39}.gz`; response.headers.set("Content-Encoding", "gzip"); response.headers.delete("Content-Length"); encodingExt = ".gz"; } - if (extensions2 && !/\.[^/]*$/.exec(path40)) { - for (let ext of extensions2){ + if (extensions1 && !/\.[^/]*$/.exec(path39)) { + for (let ext of extensions1){ if (!/^\./.exec(ext)) { ext = `.${ext}`; } - if (await exists(`${path40}${ext}`)) { - path40 += ext; + if (await exists(`${path39}${ext}`)) { + path39 += ext; break; } } } let stats; try { - stats = await Deno.stat(path40); + stats = await Deno.stat(path39); if (stats.isDirectory) { if (format16 && index) { - path40 += `/${index}`; - stats = await Deno.stat(path40); + path39 += `/${index}`; + stats = await Deno.stat(path39); } else { return; } @@ -13625,35 +15929,35 @@ async function send({ request , response }, path40, options = { response.headers.set("Cache-Control", directives.join(",")); } if (!response.type) { - response.type = encodingExt !== "" ? extname2(basename2(path40, encodingExt)) : contentTypes2[extname2(path40)] ?? extname2(path40); + response.type = encodingExt !== "" ? extname2(basename2(path39, encodingExt)) : contentTypes2[extname2(path39)] ?? extname2(path39); } let entity = null; let body = null; if (request.headers.has("If-None-Match") && mtime) { - [body, entity] = await getEntity1(path40, mtime, stats, maxbuffer, response); + [body, entity] = await getEntity1(path39, mtime, stats, maxbuffer, response); if (!await ifNoneMatch(request.headers.get("If-None-Match"), entity)) { response.headers.set("ETag", await calculate(entity)); response.status = 304; - return path40; + return path39; } } if (request.headers.has("If-Modified-Since") && mtime) { const ifModifiedSince = new Date(request.headers.get("If-Modified-Since")); if (ifModifiedSince.getTime() >= mtime) { response.status = 304; - return path40; + return path39; } } if (!body || !entity) { - [body, entity] = await getEntity1(path40, mtime ?? 0, stats, maxbuffer, response); + [body, entity] = await getEntity1(path39, mtime ?? 0, stats, maxbuffer, response); } if (request.headers.has("If-Range") && mtime && await ifRange(request.headers.get("If-Range"), mtime, entity) && request.headers.has("Range")) { await sendRange(response, body, request.headers.get("Range"), stats.size); - return path40; + return path39; } if (request.headers.has("Range")) { await sendRange(response, body, request.headers.get("Range"), stats.size); - return path40; + return path39; } response.headers.set("Content-Length", String(stats.size)); response.body = body; @@ -13663,7 +15967,7 @@ async function send({ request , response }, path40, options = { if (!response.headers.has("Accept-Ranges")) { response.headers.set("Accept-Ranges", "bytes"); } - return path40; + return path39; } const encoder4 = new TextEncoder(); class CloseEvent extends Event { @@ -13675,14 +15979,14 @@ class ServerSentEvent extends Event { #data; #id; #type; - constructor(type14, data9, eventInit = {}){ - super(type14, eventInit); + constructor(type7, data8, eventInit = {}){ + super(type7, eventInit); const { replacer , space } = eventInit; - this.#type = type14; + this.#type = type7; try { - this.#data = typeof data9 === "string" ? data9 : JSON.stringify(data9, replacer, space); + this.#data = typeof data8 === "string" ? data8 : JSON.stringify(data8, replacer, space); } catch (e15) { - assert1(e15 instanceof Error); + assert2(e15 instanceof Error); throw new TypeError(`data could not be coerced into a serialized string.\n ${e15.message}`); } const { id } = eventInit; @@ -13695,8 +15999,8 @@ class ServerSentEvent extends Event { return this.#id; } toString() { - const data10 = `data: ${this.#data.split("\n").join("\ndata: ")}\n`; - return `${this.#type === "__message" ? "" : `event: ${this.#type}\n`}${this.#id ? `id: ${String(this.#id)}\n` : ""}${data10}\n`; + const data9 = `data: ${this.#data.split("\n").join("\ndata: ")}\n`; + return `${this.#type === "__message" ? "" : `event: ${this.#type}\n`}${this.#id ? `id: ${String(this.#id)}\n` : ""}${data9}\n`; } } const RESPONSE_HEADERS = [ @@ -13762,12 +16066,12 @@ class SSEStreamTarget extends EventTarget { } }); if (headers) { - for (const [key18, value47] of headers){ - context.response.headers.set(key18, value47); + for (const [key19, value51] of headers){ + context.response.headers.set(key19, value51); } } - for (const [key19, value48] of RESPONSE_HEADERS){ - context.response.headers.set(key19, value48); + for (const [key20, value52] of RESPONSE_HEADERS){ + context.response.headers.set(key20, value52); } this.addEventListener("close", ()=>{ this.#closed = true; @@ -13798,8 +16102,8 @@ class SSEStreamTarget extends EventTarget { this.#push(`: ${comment.split("\n").join("\n: ")}\n\n`); return true; } - dispatchMessage(data11) { - const event = new ServerSentEvent("__message", data11); + dispatchMessage(data10) { + const event = new ServerSentEvent("__message", data10); return this.dispatchEvent(event); } dispatchEvent(event) { @@ -13831,6 +16135,9 @@ class SSEStreamTarget extends EventTarget { class Context { #socket; #sse; + #wrapReviverReplacer(reviver) { + return reviver ? (key21, value53)=>reviver(key21, value53, this) : undefined; + } app; cookies; get isUpgradable() { @@ -13848,12 +16155,17 @@ class Context { return this.#socket; } state; - constructor(app1, serverRequest, state2, secure = false){ + constructor(app1, serverRequest, state3, { secure =false , jsonBodyReplacer , jsonBodyReviver } = {}){ this.app = app1; - this.state = state2; - this.request = new Request1(serverRequest, app1.proxy, secure); + this.state = state3; + const { proxy: proxy2 } = app1; + this.request = new Request1(serverRequest, { + proxy: proxy2, + secure, + jsonBodyReviver: this.#wrapReviverReplacer(jsonBodyReviver) + }); this.respond = true; - this.response = new Response(this.request); + this.response = new Response1(this.request, this.#wrapReviverReplacer(jsonBodyReplacer)); this.cookies = new Cookies(this.request, this.response, { keys: this.app.keys, secure: this.request.secure @@ -13870,8 +16182,8 @@ class Context { throw err; } send(options) { - const { path: path41 = this.request.url.pathname , ...sendOptions } = options; - return send(this, path41, sendOptions); + const { path: path40 = this.request.url.pathname , ...sendOptions } = options; + return send(this, path40, sendOptions); } sendEvents(options) { if (!this.#sse) { @@ -13898,7 +16210,7 @@ class Context { return this.#socket; } [Symbol.for("Deno.customInspect")](inspect11) { - const { app: app2 , cookies , isUpgradable , respond , request , response , socket , state: state3 , } = this; + const { app: app2 , cookies , isUpgradable , respond , request , response , socket , state: state4 , } = this; return `${this.constructor.name} ${inspect11({ app: app2, cookies, @@ -13907,7 +16219,7 @@ class Context { request, response, socket, - state: state3 + state: state4 })}`; } [Symbol.for("nodejs.util.inspect.custom")](depth, options, inspect12) { @@ -13917,7 +16229,7 @@ class Context { const newOptions = Object.assign({}, options, { depth: options.depth === null ? null : options.depth - 1 }); - const { app: app3 , cookies , isUpgradable , respond , request , response , socket , state: state4 , } = this; + const { app: app3 , cookies , isUpgradable , respond , request , response , socket , state: state5 , } = this; return `${options.stylize(this.constructor.name, "special")} ${inspect12({ app: app3, cookies, @@ -13926,10 +16238,146 @@ class Context { request, response, socket, - state: state4 + state: state5 }, newOptions)}`; } } +const maybeUpgradeWebSocket1 = "upgradeWebSocket" in Deno ? Deno.upgradeWebSocket.bind(Deno) : undefined; +class HttpRequest { + #deferred; + #request; + #resolved = false; + #upgradeWebSocket; + get remoteAddr() { + return undefined; + } + get headers() { + return this.#request.headers; + } + get method() { + return this.#request.method; + } + get url() { + try { + const url = new URL(this.#request.url); + return this.#request.url.replace(url.origin, ""); + } catch {} + return this.#request.url; + } + constructor(request, deferred4, upgradeWebSocket){ + this.#deferred = deferred4; + this.#request = request; + this.#upgradeWebSocket = upgradeWebSocket ?? maybeUpgradeWebSocket1; + } + error(reason) { + if (this.#resolved) { + throw new Error("Request already responded to."); + } + this.#deferred.reject(reason); + this.#resolved = true; + } + getBody() { + return { + body: this.#request.body, + readBody: async ()=>{ + const ab = await this.#request.arrayBuffer(); + return new Uint8Array(ab); + } + }; + } + respond(response) { + if (this.#resolved) { + throw new Error("Request already responded to."); + } + this.#deferred.resolve(response); + this.#resolved = true; + return Promise.resolve(); + } + upgrade(options) { + if (this.#resolved) { + throw new Error("Request already responded to."); + } + if (!this.#upgradeWebSocket) { + throw new TypeError("Upgrading web sockets not supported."); + } + const { response , socket } = this.#upgradeWebSocket(this.#request, options); + this.#deferred.resolve(response); + return socket; + } +} +const serve = "serve" in Deno ? Deno.serve.bind(Deno) : undefined; +function hasFlash() { + return Boolean(serve); +} +class FlashServer { + #app; + #closed = false; + #controller; + #abortController = new AbortController(); + #options; + #servePromise; + #stream; + constructor(app4, options){ + if (!serve) { + throw new Error("The flash bindings for serving HTTP are not available."); + } + this.#app = app4; + this.#options = options; + } + async close() { + if (this.#closed) { + return; + } + this.#closed = true; + try { + this.#controller?.close(); + this.#controller = undefined; + this.#stream = undefined; + this.#abortController.abort(); + if (this.#servePromise) { + await this.#servePromise; + this.#servePromise = undefined; + } + } catch {} + } + listen() { + const p21 = deferred(); + const start9 = (controller)=>{ + this.#controller = controller; + const options = { + ...this.#options, + signal: this.#abortController.signal, + onListen: (addr)=>p21.resolve({ + addr + }), + onError: (error5)=>{ + this.#app.dispatchEvent(new ErrorEvent("error", { + error: error5 + })); + return new Response("Internal server error", { + status: Status.InternalServerError, + statusText: STATUS_TEXT[Status.InternalServerError] + }); + } + }; + const handler = (request)=>{ + const resolve12 = deferred(); + const flashRequest = new HttpRequest(request, resolve12); + controller.enqueue(flashRequest); + return resolve12; + }; + this.#servePromise = serve(handler, options); + }; + this.#stream = new ReadableStream({ + start: start9 + }); + return p21; + } + [Symbol.asyncIterator]() { + assert2(this.#stream, ".listen() was not called before iterating or server is closed."); + return this.#stream[Symbol.asyncIterator](); + } +} const serveHttp = "serveHttp" in Deno ? Deno.serveHttp.bind(Deno) : undefined; class HttpServer { #app; @@ -13937,11 +16385,11 @@ class HttpServer { #listener; #httpConnections = new Set(); #options; - constructor(app4, options){ + constructor(app5, options){ if (!("serveHttp" in Deno)) { throw new Error("The native bindings for serving HTTP are not available."); } - this.#app = app4; + this.#app = app5; this.#options = options; } get app() { @@ -13959,9 +16407,9 @@ class HttpServer { for (const httpConn of this.#httpConnections){ try { httpConn.close(); - } catch (error5) { - if (!(error5 instanceof Deno.errors.BadResource)) { - throw error5; + } catch (error6) { + if (!(error6 instanceof Deno.errors.BadResource)) { + throw error6; } } } @@ -13977,9 +16425,9 @@ class HttpServer { this.#httpConnections.delete(httpConn1); } [Symbol.asyncIterator]() { - const start9 = (controller)=>{ + const start10 = (controller)=>{ const server = this; - async function serve(conn) { + async function serve1(conn) { const httpConn2 = serveHttp(conn); server.#trackHttpConnection(httpConn2); while(true){ @@ -13992,14 +16440,14 @@ class HttpServer { conn }); controller.enqueue(nativeRequest); - nativeRequest.donePromise.catch((error6)=>{ + nativeRequest.donePromise.catch((error7)=>{ server.app.dispatchEvent(new ErrorEvent("error", { - error: error6 + error: error7 })); }); - } catch (error7) { + } catch (error8) { server.app.dispatchEvent(new ErrorEvent("error", { - error: error7 + error: error8 })); } if (server.closed) { @@ -14010,16 +16458,16 @@ class HttpServer { } } const listener = this.#listener; - assert1(listener); + assert2(listener); async function accept() { while(true){ try { const conn = await listener.accept(); - serve(conn); - } catch (error8) { + serve1(conn); + } catch (error9) { if (!server.closed) { server.app.dispatchEvent(new ErrorEvent("error", { - error: error8 + error: error9 })); } } @@ -14032,39 +16480,27 @@ class HttpServer { accept(); }; const stream1 = new ReadableStream({ - start: start9 + start: start10 }); return stream1[Symbol.asyncIterator](); } } -function compareArrayBuffer(a12, b10) { - assert1(a12.byteLength === b10.byteLength, "ArrayBuffer lengths must match."); - const va = new DataView(a12); - const vb = new DataView(b10); - const length = va.byteLength; - let out = 0; - let i51 = -1; - while(++i51 < length){ - out |= va.getUint8(i51) ^ vb.getUint8(i51); - } - return out === 0; -} -async function compare(a13, b11) { - const key20 = new Uint8Array(32); - globalThis.crypto.getRandomValues(key20); - const cryptoKey = await importKey(key20); +async function compare(a13, b13) { + const key22 = new Uint8Array(32); + globalThis.crypto.getRandomValues(key22); + const cryptoKey = await importKey(key22); const ah = await sign(a13, cryptoKey); - const bh = await sign(b11, cryptoKey); - return compareArrayBuffer(ah, bh); + const bh = await sign(b13, cryptoKey); + return timingSafeEqual(ah, bh); } class KeyStack { #cryptoKeys = new Map(); #keys; - async #toCryptoKey(key21) { - if (!this.#cryptoKeys.has(key21)) { - this.#cryptoKeys.set(key21, await importKey(key21)); + async #toCryptoKey(key23) { + if (!this.#cryptoKeys.has(key23)) { + this.#cryptoKeys.set(key23, await importKey(key23)); } - return this.#cryptoKeys.get(key21); + return this.#cryptoKeys.get(key23); } get length() { return this.#keys.length; @@ -14075,18 +16511,18 @@ class KeyStack { } this.#keys = keys; } - async sign(data12) { + async sign(data11) { const key1 = await this.#toCryptoKey(this.#keys[0]); - return encodeBase64Safe(await sign(data12, key1)); + return encodeBase64Safe(await sign(data11, key1)); } - async verify(data13, digest3) { - return await this.indexOf(data13, digest3) > -1; + async verify(data12, digest3) { + return await this.indexOf(data12, digest3) > -1; } - async indexOf(data14, digest4) { - for(let i52 = 0; i52 < this.#keys.length; i52++){ - const cryptoKey = await this.#toCryptoKey(this.#keys[i52]); - if (await compare(digest4, encodeBase64Safe(await sign(data14, cryptoKey)))) { - return i52; + async indexOf(data13, digest4) { + for(let i51 = 0; i51 < this.#keys.length; i51++){ + const cryptoKey = await this.#toCryptoKey(this.#keys[i51]); + if (await compare(digest4, encodeBase64Safe(await sign(data13, cryptoKey)))) { + return i51; } } return -1; @@ -14113,19 +16549,19 @@ class KeyStack { function compose(middleware1) { return function composedMiddleware(context, next) { let index = -1; - async function dispatch(i53) { - if (i53 <= index) { + async function dispatch(i52) { + if (i52 <= index) { throw new Error("next() called multiple times."); } - index = i53; - let fn = middleware1[i53]; - if (i53 === middleware1.length) { + index = i52; + let fn = middleware1[i52]; + if (i52 === middleware1.length) { fn = next; } if (!fn) { return; } - await fn(context, dispatch.bind(null, i53 + 1)); + await fn(context, dispatch.bind(null, i52 + 1)); } return dispatch(0); }; @@ -14134,68 +16570,68 @@ const objectCloneMemo = new WeakMap(); function cloneArrayBuffer(srcBuffer, srcByteOffset, srcLength, _cloneConstructor) { return srcBuffer.slice(srcByteOffset, srcByteOffset + srcLength); } -function cloneValue(value49) { - switch(typeof value49){ +function cloneValue(value54) { + switch(typeof value54){ case "number": case "string": case "boolean": case "undefined": case "bigint": - return value49; + return value54; case "object": { - if (objectCloneMemo.has(value49)) { - return objectCloneMemo.get(value49); + if (objectCloneMemo.has(value54)) { + return objectCloneMemo.get(value54); } - if (value49 === null) { - return value49; + if (value54 === null) { + return value54; } - if (value49 instanceof Date) { - return new Date(value49.valueOf()); + if (value54 instanceof Date) { + return new Date(value54.valueOf()); } - if (value49 instanceof RegExp) { - return new RegExp(value49); + if (value54 instanceof RegExp) { + return new RegExp(value54); } - if (value49 instanceof SharedArrayBuffer) { - return value49; + if (value54 instanceof SharedArrayBuffer) { + return value54; } - if (value49 instanceof ArrayBuffer) { - const cloned = cloneArrayBuffer(value49, 0, value49.byteLength, ArrayBuffer); - objectCloneMemo.set(value49, cloned); + if (value54 instanceof ArrayBuffer) { + const cloned = cloneArrayBuffer(value54, 0, value54.byteLength, ArrayBuffer); + objectCloneMemo.set(value54, cloned); return cloned; } - if (ArrayBuffer.isView(value49)) { - const clonedBuffer = cloneValue(value49.buffer); + if (ArrayBuffer.isView(value54)) { + const clonedBuffer = cloneValue(value54.buffer); let length; - if (value49 instanceof DataView) { - length = value49.byteLength; + if (value54 instanceof DataView) { + length = value54.byteLength; } else { - length = value49.length; + length = value54.length; } - return new value49.constructor(clonedBuffer, value49.byteOffset, length); + return new value54.constructor(clonedBuffer, value54.byteOffset, length); } - if (value49 instanceof Map) { + if (value54 instanceof Map) { const clonedMap = new Map(); - objectCloneMemo.set(value49, clonedMap); - value49.forEach((v3, k1)=>{ - clonedMap.set(cloneValue(k1), cloneValue(v3)); + objectCloneMemo.set(value54, clonedMap); + value54.forEach((v11, k1)=>{ + clonedMap.set(cloneValue(k1), cloneValue(v11)); }); return clonedMap; } - if (value49 instanceof Set) { + if (value54 instanceof Set) { const clonedSet = new Set([ - ...value49 + ...value54 ].map(cloneValue)); - objectCloneMemo.set(value49, clonedSet); + objectCloneMemo.set(value54, clonedSet); return clonedSet; } const clonedObj = {}; - objectCloneMemo.set(value49, clonedObj); - const sourceKeys = Object.getOwnPropertyNames(value49); - for (const key22 of sourceKeys){ - clonedObj[key22] = cloneValue(value49[key22]); + objectCloneMemo.set(value54, clonedObj); + const sourceKeys = Object.getOwnPropertyNames(value54); + for (const key24 of sourceKeys){ + clonedObj[key24] = cloneValue(value54[key24]); } - Reflect.setPrototypeOf(clonedObj, Reflect.getPrototypeOf(value49)); + Reflect.setPrototypeOf(clonedObj, Reflect.getPrototypeOf(value54)); return clonedObj; } case "symbol": @@ -14206,15 +16642,15 @@ function cloneValue(value49) { } const core = Deno?.core; const structuredClone = globalThis.structuredClone; -function sc(value50) { - return structuredClone ? structuredClone(value50) : core ? core.deserialize(core.serialize(value50)) : cloneValue(value50); +function sc(value55) { + return structuredClone ? structuredClone(value55) : core ? core.deserialize(core.serialize(value55)) : cloneValue(value55); } -function cloneState(state5) { +function cloneState(state6) { const clone3 = {}; - for (const [key23, value51] of Object.entries(state5)){ + for (const [key25, value56] of Object.entries(state6)){ try { - const clonedValue = sc(value51); - clone3[key23] = clonedValue; + const clonedValue = sc(value56); + clone3[key25] = clonedValue; } catch {} } return clone3; @@ -14227,11 +16663,11 @@ class ApplicationErrorEvent extends ErrorEvent { this.context = eventInitDict.context; } } -function logErrorListener({ error: error9 , context }) { - if (error9 instanceof Error) { - console.error(`[uncaught application error]: ${error9.name} - ${error9.message}`); +function logErrorListener({ error: error10 , context }) { + if (error10 instanceof Error) { + console.error(`[uncaught application error]: ${error10.name} - ${error10.message}`); } else { - console.error(`[uncaught application error]\n`, error9); + console.error(`[uncaught application error]\n`, error10); } if (context) { let url; @@ -14252,8 +16688,8 @@ function logErrorListener({ error: error9 , context }) { writable: context.response.writable }); } - if (error9 instanceof Error && error9.stack) { - console.error(`\n${error9.stack.split("\n").slice(1).join("\n")}`); + if (error10 instanceof Error && error10.stack) { + console.error(`\n${error10.stack.split("\n").slice(1).join("\n")}`); } } class ApplicationListenEvent extends Event { @@ -14273,6 +16709,7 @@ class ApplicationListenEvent extends Event { } class Application extends EventTarget { #composedMiddleware; + #contextOptions; #contextState; #keys; #middleware = []; @@ -14294,11 +16731,12 @@ class Application extends EventTarget { state; constructor(options = {}){ super(); - const { state: state6 , keys , proxy: proxy2 , serverConstructor =HttpServer , contextState ="clone" , logErrors =true , } = options; - this.proxy = proxy2 ?? false; + const { state: state7 , keys , proxy: proxy3 , serverConstructor =HttpServer , contextState ="clone" , logErrors =true , ...contextOptions } = options; + this.proxy = proxy3 ?? false; this.keys = keys; - this.state = state6 ?? {}; + this.state = state7 ?? {}; this.#serverConstructor = serverConstructor; + this.#contextOptions = contextOptions; this.#contextState = contextState; if (logErrors) { this.addEventListener("error", logErrorListener); @@ -14322,15 +16760,15 @@ class Application extends EventTarget { return Object.create(this.state); } } - #handleError(context, error10) { - if (!(error10 instanceof Error)) { - error10 = new Error(`non-error thrown: ${JSON.stringify(error10)}`); + #handleError(context, error11) { + if (!(error11 instanceof Error)) { + error11 = new Error(`non-error thrown: ${JSON.stringify(error11)}`); } - const { message } = error10; + const { message } = error11; this.dispatchEvent(new ApplicationErrorEvent({ context, message, - error: error10 + error: error11 })); if (!context.response.writable) { return; @@ -14340,21 +16778,24 @@ class Application extends EventTarget { ]){ context.response.headers.delete(key); } - if (error10.headers && error10.headers instanceof Headers) { - for (const [key, value] of error10.headers){ + if (error11.headers && error11.headers instanceof Headers) { + for (const [key, value] of error11.headers){ context.response.headers.set(key, value); } } context.response.type = "text"; - const status = context.response.status = Deno.errors && error10 instanceof Deno.errors.NotFound ? 404 : error10.status && typeof error10.status === "number" ? error10.status : 500; - context.response.body = error10.expose ? error10.message : STATUS_TEXT.get(status); + const status = context.response.status = Deno.errors && error11 instanceof Deno.errors.NotFound ? 404 : error11.status && typeof error11.status === "number" ? error11.status : 500; + context.response.body = error11.expose ? error11.message : STATUS_TEXT[status]; } - async #handleRequest(request, secure, state7) { - const context = new Context(this, request, this.#getContextState(), secure); + async #handleRequest(request, secure, state8) { + const context = new Context(this, request, this.#getContextState(), { + secure, + ...this.#contextOptions + }); let resolve; const handlingPromise = new Promise((res)=>resolve = res); - state7.handling.add(handlingPromise); - if (!state7.closing && !state7.closed) { + state8.handling.add(handlingPromise); + if (!state8.closing && !state8.closed) { try { await this.#getComposed()(context); } catch (err) { @@ -14364,7 +16805,7 @@ class Application extends EventTarget { if (context.respond === false) { context.response.destroy(); resolve(); - state7.handling.delete(handlingPromise); + state8.handling.delete(handlingPromise); return; } let closeResources = true; @@ -14376,7 +16817,7 @@ class Application extends EventTarget { this.#handleError(context, err); response = await context.response.toDomResponse(); } - assert1(response); + assert2(response); try { await request.respond(response); } catch (err1) { @@ -14384,21 +16825,21 @@ class Application extends EventTarget { } finally{ context.response.destroy(closeResources); resolve(); - state7.handling.delete(handlingPromise); - if (state7.closing) { - state7.server.close(); - state7.closed = true; + state8.handling.delete(handlingPromise); + if (state8.closing) { + await state8.server.close(); + state8.closed = true; } } } - addEventListener(type15, listener, options) { - super.addEventListener(type15, listener, options); + addEventListener(type8, listener, options) { + super.addEventListener(type8, listener, options); } handle = async (request1, secureOrConn, secure1 = false)=>{ if (!this.#middleware.length) { throw new TypeError("There is no middleware to process requests."); } - assert1(isConn(secureOrConn) || typeof secureOrConn === "undefined"); + assert2(isConn(secureOrConn) || typeof secureOrConn === "undefined"); const contextRequest = new NativeRequest({ request: request1, respondWith () { @@ -14407,7 +16848,10 @@ class Application extends EventTarget { }, { conn: secureOrConn }); - const context1 = new Context(this, contextRequest, this.#getContextState(), secure1); + const context1 = new Context(this, contextRequest, this.#getContextState(), { + secure: secure1, + ...this.#contextOptions + }); try { await this.#getComposed()(context1); } catch (err) { @@ -14433,11 +16877,11 @@ class Application extends EventTarget { throw new TypeError("There is no middleware to process requests."); } if (typeof options === "string") { - const match11 = ADDR_REGEXP.exec(options); - if (!match11) { + const match8 = ADDR_REGEXP.exec(options); + if (!match8) { throw TypeError(`Invalid address passed: "${options}"`); } - const [, hostname2, portStr] = match11; + const [, hostname2, portStr] = match8; options = { hostname: hostname2, port: parseInt(portStr, 10) @@ -14464,8 +16908,8 @@ class Application extends EventTarget { }); } const { secure: secure2 = false } = options; - const serverType = server instanceof HttpServer ? "native" : "custom"; - const listener = server.listen(); + const serverType = server instanceof HttpServer ? "native" : server instanceof FlashServer ? "flash" : "custom"; + const listener = await server.listen(); const { hostname: hostname3 , port: port1 } = listener.addr; this.dispatchEvent(new ApplicationListenEvent({ hostname: hostname3, @@ -14493,11 +16937,11 @@ class Application extends EventTarget { return this; } [Symbol.for("Deno.customInspect")](inspect15) { - const { keys , proxy: proxy3 , state: state2 } = this; + const { keys , proxy: proxy4 , state: state2 } = this; return `${this.constructor.name} ${inspect15({ "#middleware": this.#middleware, keys, - proxy: proxy3, + proxy: proxy4, state: state2 })}`; } @@ -14508,11 +16952,11 @@ class Application extends EventTarget { const newOptions = Object.assign({}, options, { depth: options.depth === null ? null : options.depth - 1 }); - const { keys , proxy: proxy4 , state: state3 } = this; + const { keys , proxy: proxy5 , state: state3 } = this; return `${options.stylize(this.constructor.name, "special")} ${inspect16({ "#middleware": this.#middleware, keys, - proxy: proxy4, + proxy: proxy5, state: state3 }, newOptions)}`; } @@ -14522,8 +16966,8 @@ function getQuery(ctx, { mergeParams , asMap } = {}) { if (mergeParams && isRouterContext(ctx)) { Object.assign(result, ctx.params); } - for (const [key24, value52] of ctx.request.url.searchParams){ - result[key24] = value52; + for (const [key26, value57] of ctx.request.url.searchParams){ + result[key26] = value57; } return asMap ? new Map(Object.entries(result)) : result; } @@ -14531,38 +16975,38 @@ const mod4 = { getQuery: getQuery }; const FORWARDED_RE = /^(,[ \\t]*)*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*([ \\t]*,([ \\t]*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*)?)*$/; -function createMatcher({ match: match12 }) { +function createMatcher({ match: match9 }) { return function matches(ctx) { - if (!match12) { + if (!match9) { return true; } - if (typeof match12 === "string") { - return ctx.request.url.pathname.startsWith(match12); + if (typeof match9 === "string") { + return ctx.request.url.pathname.startsWith(match9); } - if (match12 instanceof RegExp) { - return match12.test(ctx.request.url.pathname); + if (match9 instanceof RegExp) { + return match9.test(ctx.request.url.pathname); } - return match12(ctx); + return match9(ctx); }; } async function createRequest(target, ctx, { headers: optHeaders , map: map7 , proxyHeaders =true , request: reqFn }) { - let path42 = ctx.request.url.pathname; + let path41 = ctx.request.url.pathname; let params; if (isRouterContext(ctx)) { params = ctx.params; } if (map7 && typeof map7 === "function") { - path42 = map7(path42, params); + path41 = map7(path41, params); } else if (map7) { - path42 = map7[path42] ?? path42; + path41 = map7[path41] ?? path41; } const url = new URL(String(target)); - if (url.pathname.endsWith("/") && path42.startsWith("/")) { - url.pathname = `${url.pathname}${path42.slice(1)}`; - } else if (!url.pathname.endsWith("/") && !path42.startsWith("/")) { - url.pathname = `${url.pathname}/${path42}`; + if (url.pathname.endsWith("/") && path41.startsWith("/")) { + url.pathname = `${url.pathname}${path41.slice(1)}`; + } else if (!url.pathname.endsWith("/") && !path41.startsWith("/")) { + url.pathname = `${url.pathname}/${path41}`; } else { - url.pathname = `${url.pathname}${path42}`; + url.pathname = `${url.pathname}${path41}`; } url.search = ctx.request.url.search; const body = getBodyInit(ctx); @@ -14571,8 +17015,8 @@ async function createRequest(target, ctx, { headers: optHeaders , map: map7 , pr if (typeof optHeaders === "function") { optHeaders = await optHeaders(ctx); } - for (const [key25, value53] of iterableHeaders(optHeaders)){ - headers.set(key25, value53); + for (const [key27, value58] of iterableHeaders(optHeaders)){ + headers.set(key27, value58); } } if (proxyHeaders) { @@ -14580,11 +17024,11 @@ async function createRequest(target, ctx, { headers: optHeaders , map: map7 , pr const ip = ctx.request.ip.startsWith("[") ? `"${ctx.request.ip}"` : ctx.request.ip; const host = headers.get("host"); if (maybeForwarded && FORWARDED_RE.test(maybeForwarded)) { - let value54 = `for=${ip}`; + let value59 = `for=${ip}`; if (host) { - value54 += `;host=${host}`; + value59 += `;host=${host}`; } - headers.append("forwarded", value54); + headers.append("forwarded", value59); } else { headers.append("x-forwarded-for", ip); if (host) { @@ -14631,13 +17075,13 @@ async function processResponse(response, ctx, { contentType: contentTypeFn , res ctx.response.body = null; } ctx.response.status = response.status; - for (const [key26, value55] of response.headers){ - ctx.response.headers.append(key26, value55); + for (const [key28, value60] of response.headers){ + ctx.response.headers.append(key28, value60); } if (contentTypeFn) { - const value56 = await contentTypeFn(response.url, ctx.response.headers.get("content-type") ?? undefined); - if (value56 != null) { - ctx.response.headers.set("content-type", value56); + const value61 = await contentTypeFn(response.url, ctx.response.headers.get("content-type") ?? undefined); + if (value61 != null) { + ctx.response.headers.set("content-type", value61); } } } @@ -14683,7 +17127,7 @@ class Layer { name; path; stack; - constructor(path43, methods, middleware3, { name , ...opts } = {}){ + constructor(path42, methods, middleware3, { name , ...opts } = {}){ this.#opts = opts; this.name = name; this.methods = [ @@ -14695,8 +17139,8 @@ class Layer { this.stack = Array.isArray(middleware3) ? middleware3.slice() : [ middleware3 ]; - this.path = path43; - this.#regexp = pathToRegexp(path43, this.#paramNames, this.#opts); + this.path = path42; + this.#regexp = pathToRegexp(path42, this.#paramNames, this.#opts); } clone() { return new Layer(this.path, this.methods, this.stack, { @@ -14704,24 +17148,24 @@ class Layer { ...this.#opts }); } - match(path44) { - return this.#regexp.test(path44); + match(path43) { + return this.#regexp.test(path43); } params(captures, existingParams = {}) { const params = existingParams; - for(let i54 = 0; i54 < captures.length; i54++){ - if (this.#paramNames[i54]) { - const c9 = captures[i54]; - params[this.#paramNames[i54].name] = c9 ? decodeComponent(c9) : c9; + for(let i53 = 0; i53 < captures.length; i53++){ + if (this.#paramNames[i53]) { + const c9 = captures[i53]; + params[this.#paramNames[i53].name] = c9 ? decodeComponent(c9) : c9; } } return params; } - captures(path45) { + captures(path44) { if (this.#opts.ignoreCaptures) { return []; } - return path45.match(this.#regexp)?.slice(1) ?? []; + return path44.match(this.#regexp)?.slice(1) ?? []; } url(params = {}, options) { const url = this.path.replace(/\(\.\*\)/g, ""); @@ -14731,18 +17175,18 @@ class Layer { const stack = this.stack; const params = this.#paramNames; const middleware4 = function(ctx, next) { - const p21 = ctx.params[param]; - assert1(p21); - return fn.call(this, p21, ctx, next); + const p22 = ctx.params[param]; + assert2(p22); + return fn.call(this, p22, ctx, next); }; middleware4.param = param; - const names = params.map((p22)=>p22.name); + const names = params.map((p23)=>p23.name); const x3 = names.indexOf(param); if (x3 >= 0) { - for(let i55 = 0; i55 < stack.length; i55++){ - const fn = stack[i55]; + for(let i54 = 0; i54 < stack.length; i54++){ + const fn = stack[i54]; if (!fn.param || names.indexOf(fn.param) > x3) { - stack.splice(i55, 0, middleware4); + stack.splice(i54, 0, middleware4); break; } } @@ -14765,7 +17209,7 @@ class Layer { middleware: [ ...this.stack ], - paramNames: this.#paramNames.map((key27)=>key27.name), + paramNames: this.#paramNames.map((key29)=>key29.name), path: this.path, regexp: this.#regexp, options: { @@ -14778,7 +17222,7 @@ class Layer { methods: this.methods, middleware: this.stack, options: this.#opts, - paramNames: this.#paramNames.map((key28)=>key28.name), + paramNames: this.#paramNames.map((key30)=>key30.name), path: this.path, regexp: this.#regexp })}`; @@ -14794,7 +17238,7 @@ class Layer { methods: this.methods, middleware: this.stack, options: this.#opts, - paramNames: this.#paramNames.map((key29)=>key29.name), + paramNames: this.#paramNames.map((key31)=>key31.name), path: this.path, regexp: this.#regexp }, newOptions)}`; @@ -14805,14 +17249,14 @@ class Router { #methods; #params = {}; #stack = []; - #match(path46, method) { + #match(path45, method) { const matches = { path: [], pathAndMethod: [], route: false }; for (const route of this.#stack){ - if (route.match(path46)) { + if (route.match(path45)) { matches.path.push(route); if (route.methods.length === 0 || route.methods.includes(method)) { matches.pathAndMethod.push(route); @@ -14933,7 +17377,7 @@ class Router { const ctx = context2; await next(); if (!ctx.response.status || ctx.response.status === Status.NotFound) { - assert1(ctx.matched); + assert2(ctx.matched); const allowed = new Set(); for (const route of ctx.matched){ for (const method1 of route.methods){ @@ -14945,7 +17389,7 @@ class Router { ].join(", "); if (!implemented.includes(ctx.request.method)) { if (options2.throw) { - throw options2.notImplemented ? options2.notImplemented() : new httpErrors.NotImplemented(); + throw options2.notImplemented ? options2.notImplemented() : new errors.NotImplemented(); } else { ctx.response.status = Status.NotImplemented; ctx.response.headers.set("Allowed", allowedStr); @@ -14956,7 +17400,7 @@ class Router { ctx.response.headers.set("Allowed", allowedStr); } else if (!allowed.has(ctx.request.method)) { if (options2.throw) { - throw options2.methodNotAllowed ? options2.methodNotAllowed() : new httpErrors.MethodNotAllowed(); + throw options2.methodNotAllowed ? options2.methodNotAllowed() : new errors.MethodNotAllowed(); } else { ctx.response.status = Status.MethodNotAllowed; ctx.response.headers.set("Allowed", allowedStr); @@ -14975,17 +17419,17 @@ class Router { } *entries() { for (const route of this.#stack){ - const value57 = route.toJSON(); + const value62 = route.toJSON(); yield [ - value57, - value57 + value62, + value62 ]; } } forEach(callback, thisArg = null) { for (const route of this.#stack){ - const value58 = route.toJSON(); - callback.call(thisArg, value58, value58, this); + const value63 = route.toJSON(); + callback.call(thisArg, value63, value63, this); } } get(nameOrPath3, pathOrMiddleware3, ...middleware3) { @@ -15046,11 +17490,11 @@ class Router { } redirect(source, destination, status = Status.Found) { if (source[0] !== "/") { - const s11 = this.url(source); - if (!s11) { + const s13 = this.url(source); + if (!s13) { throw new RangeError(`Could not resolve named route: "${source}"`); } - source = s11; + source = s13; } if (typeof destination === "string") { if (destination[0] !== "/") { @@ -15080,8 +17524,8 @@ class Router { let pathname; let method2; try { - const { url: { pathname: p23 } , method: m7 } = ctx1.request; - pathname = p23; + const { url: { pathname: p24 } , method: m7 } = ctx1.request; + pathname = p24; method2 = m7; } catch (e16) { return Promise.reject(e16); @@ -15165,11 +17609,11 @@ class Router { }, newOptions)}`; } } -function createMockApp(state8 = {}) { - const app5 = { - state: state8, +function createMockApp(state9 = {}) { + const app6 = { + state: state9, use () { - return app5; + return app6; }, [Symbol.for("Deno.customInspect")] () { return "MockApplication {}"; @@ -15184,47 +17628,50 @@ function createMockApp(state8 = {}) { return `${options6.stylize("MockApplication", "special")} ${inspect21({}, newOptions)}`; } }; - return app5; + return app6; } const mockContextState = { encodingsAccepted: "identity" }; -function createMockContext({ ip ="127.0.0.1" , method: method3 = "GET" , params , path: path47 = "/" , state: state9 , app: app6 = createMockApp(state9) , headers } = {}) { +function createMockContext({ ip ="127.0.0.1" , method: method3 = "GET" , params , path: path46 = "/" , state: state10 , app: app7 = createMockApp(state10) , headers: requestHeaders } = {}) { function createMockRequest() { - const headerMap = new Headers(headers); + const headers = new Headers(requestHeaders); return { accepts (...types4) { - const acceptValue = headerMap.get("Accept"); - if (!acceptValue) { + if (!headers.has("Accept")) { return; } if (types4.length) { - return preferredMediaTypes(acceptValue, types4)[0]; + return accepts({ + headers + }, ...types4); } - return preferredMediaTypes(acceptValue); + return accepts({ + headers + }); }, acceptsEncodings () { return mockContextState.encodingsAccepted; }, - headers: headerMap, + headers, ip, method: method3, - path: path47, + path: path46, search: undefined, searchParams: new URLSearchParams(), - url: new URL(path47, "http://localhost/") + url: new URL(path46, "http://localhost/") }; } const request5 = createMockRequest(); - const response = new Response(request5); + const response = new Response1(request5); const cookies = new Cookies(request5, response); return { - app: app6, + app: app7, params, request: request5, cookies, response, - state: Object.assign({}, app6.state), + state: Object.assign({}, app7.state), assert (condition, errorStatus = 500, message, props) { if (condition) { return; @@ -15269,11 +17716,10 @@ const mod6 = { Application: Application, Context: Context, Cookies: Cookies, + HttpRequest: HttpRequest, + FlashServer: FlashServer, + hasFlash: hasFlash, HttpServerNative: HttpServer, - createHttpError: createHttpError, - HttpError: HttpError, - httpErrors: httpErrors, - isHttpError: isHttpError, proxy: proxy, composeMiddleware: compose, FormDataReader: FormDataReader, @@ -15282,142 +17728,47 @@ const mod6 = { parseRange: parseRange, Request: Request1, REDIRECT_BACK: REDIRECT_BACK, - Response: Response, + Response: Response1, Router: Router, send: send, ServerSentEvent: ServerSentEvent, isErrorStatus: isErrorStatus, isRedirectStatus: isRedirectStatus, + createHttpError: createHttpError, + httpErrors: errors, + HttpError: HttpError, + isHttpError: isHttpError, Status: Status, STATUS_TEXT: STATUS_TEXT, helpers: mod4, etag: mod3, testing: mod5 }; -function _typeof(obj1) { - "@babel/helpers - typeof"; - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(obj) { - return typeof obj; - } : function(obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof(obj1); -} -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} -function _defineProperties(target, props) { - for(var i1 = 0; i1 < props.length; i1++){ - var descriptor = props[i1]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } -} -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - Object.defineProperty(Constructor, "prototype", { - writable: false - }); - return Constructor; -} -function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - Object.defineProperty(subClass, "prototype", { - writable: false - }); - if (superClass) _setPrototypeOf(subClass, superClass); -} -function _getPrototypeOf(o1) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o2) { - return o2.__proto__ || Object.getPrototypeOf(o2); - }; - return _getPrototypeOf(o1); -} -function _setPrototypeOf(o3, p1) { - _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o4, p2) { - o4.__proto__ = p2; - return o4; - }; - return _setPrototypeOf(o3, p1); -} -function _isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; - try { - Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); - return true; - } catch (e) { - return false; - } -} -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - return self; -} -function _possibleConstructorReturn(self, call) { - if (call && (typeof call === "object" || typeof call === "function")) { - return call; - } else if (call !== void 0) { - throw new TypeError("Derived constructors may only return object or undefined"); - } - return _assertThisInitialized(self); -} -function _createSuper(Derived) { - var hasNativeReflectConstruct = _isNativeReflectConstruct(); - return function _createSuperInternal() { - var Super = _getPrototypeOf(Derived), result; - if (hasNativeReflectConstruct) { - var NewTarget = _getPrototypeOf(this).constructor; - result = Reflect.construct(Super, arguments, NewTarget); - } else { - result = Super.apply(this, arguments); - } - return _possibleConstructorReturn(this, result); - }; -} -var uintToBuf = function uintToBuf(num) { - var buf = new ArrayBuffer(8); - var arr = new Uint8Array(buf); - var acc = num; - for(var i2 = 7; i2 >= 0; i2--){ +const uintToBuf = (num)=>{ + const buf = new ArrayBuffer(8); + const arr = new Uint8Array(buf); + let acc = num; + for(let i1 = 7; i1 >= 0; i1--){ if (acc === 0) break; - arr[i2] = acc & 255; - acc -= arr[i2]; + arr[i1] = acc & 255; + acc -= arr[i1]; acc /= 256; } return buf; }; -var t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; +const t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; function n(t1, n1, e1, r1) { - var i3, s1, o5; - var h1 = n1 || [ + let i2, s1, o1; + const h1 = n1 || [ 0 ], u1 = (e1 = e1 || 0) >>> 3, w1 = -1 === r1 ? 3 : 0; - for(i3 = 0; i3 < t1.length; i3 += 1){ - o5 = i3 + u1, s1 = o5 >>> 2, h1.length <= s1 && h1.push(0), h1[s1] |= t1[i3] << 8 * (w1 + r1 * (o5 % 4)); - } + for(i2 = 0; i2 < t1.length; i2 += 1)o1 = i2 + u1, s1 = o1 >>> 2, h1.length <= s1 && h1.push(0), h1[s1] |= t1[i2] << 8 * (w1 + r1 * (o1 % 4)); return { value: h1, binLen: 8 * t1.length + e1 }; } -function e(e2, r2, i4) { +function e(e2, r2, i3) { switch(r2){ case "UTF8": case "UTF16BE": @@ -15430,92 +17781,78 @@ function e(e2, r2, i4) { case "HEX": return function(t2, n21, e3) { return function(t3, n3, e4, r3) { - var i5, s2, o6, h2; + let i4, s2, o2, h2; if (0 != t3.length % 2) throw new Error("String of HEX type must be in byte increments"); - var u2 = n3 || [ + const u2 = n3 || [ 0 ], w2 = (e4 = e4 || 0) >>> 3, c1 = -1 === r3 ? 3 : 0; - for(i5 = 0; i5 < t3.length; i5 += 2){ - if (s2 = parseInt(t3.substr(i5, 2), 16), isNaN(s2)) throw new Error("String of HEX type contains invalid characters"); - for(h2 = (i5 >>> 1) + w2, o6 = h2 >>> 2; u2.length <= o6;){ - u2.push(0); - } - u2[o6] |= s2 << 8 * (c1 + r3 * (h2 % 4)); + for(i4 = 0; i4 < t3.length; i4 += 2){ + if (s2 = parseInt(t3.substr(i4, 2), 16), isNaN(s2)) throw new Error("String of HEX type contains invalid characters"); + for(h2 = (i4 >>> 1) + w2, o2 = h2 >>> 2; u2.length <= o2;)u2.push(0); + u2[o2] |= s2 << 8 * (c1 + r3 * (h2 % 4)); } return { value: u2, binLen: 4 * t3.length + e4 }; - }(t2, n21, e3, i4); + }(t2, n21, e3, i3); }; case "TEXT": return function(t4, n4, e5) { - return function(t5, n5, e6, r4, i6) { - var s3, o7, h3, u3, w3, c2, f1, a1, l11 = 0; - var A1 = e6 || [ + return function(t5, n5, e6, r4, i5) { + let s3, o3, h3, u3, w3, c2, f1, a1, l11 = 0; + const A1 = e6 || [ 0 ], E1 = (r4 = r4 || 0) >>> 3; - if ("UTF8" === n5) for(f1 = -1 === i6 ? 3 : 0, h3 = 0; h3 < t5.length; h3 += 1){ - for(s3 = t5.charCodeAt(h3), o7 = [], 128 > s3 ? o7.push(s3) : 2048 > s3 ? (o7.push(192 | s3 >>> 6), o7.push(128 | 63 & s3)) : 55296 > s3 || 57344 <= s3 ? o7.push(224 | s3 >>> 12, 128 | s3 >>> 6 & 63, 128 | 63 & s3) : (h3 += 1, s3 = 65536 + ((1023 & s3) << 10 | 1023 & t5.charCodeAt(h3)), o7.push(240 | s3 >>> 18, 128 | s3 >>> 12 & 63, 128 | s3 >>> 6 & 63, 128 | 63 & s3)), u3 = 0; u3 < o7.length; u3 += 1){ - for(c2 = l11 + E1, w3 = c2 >>> 2; A1.length <= w3;){ - A1.push(0); - } - A1[w3] |= o7[u3] << 8 * (f1 + i6 * (c2 % 4)), l11 += 1; - } + if ("UTF8" === n5) for(f1 = -1 === i5 ? 3 : 0, h3 = 0; h3 < t5.length; h3 += 1)for(s3 = t5.charCodeAt(h3), o3 = [], 128 > s3 ? o3.push(s3) : 2048 > s3 ? (o3.push(192 | s3 >>> 6), o3.push(128 | 63 & s3)) : 55296 > s3 || 57344 <= s3 ? o3.push(224 | s3 >>> 12, 128 | s3 >>> 6 & 63, 128 | 63 & s3) : (h3 += 1, s3 = 65536 + ((1023 & s3) << 10 | 1023 & t5.charCodeAt(h3)), o3.push(240 | s3 >>> 18, 128 | s3 >>> 12 & 63, 128 | s3 >>> 6 & 63, 128 | 63 & s3)), u3 = 0; u3 < o3.length; u3 += 1){ + for(c2 = l11 + E1, w3 = c2 >>> 2; A1.length <= w3;)A1.push(0); + A1[w3] |= o3[u3] << 8 * (f1 + i5 * (c2 % 4)), l11 += 1; } - else for(f1 = -1 === i6 ? 2 : 0, a1 = "UTF16LE" === n5 && 1 !== i6 || "UTF16LE" !== n5 && 1 === i6, h3 = 0; h3 < t5.length; h3 += 1){ - for(s3 = t5.charCodeAt(h3), !0 === a1 && (u3 = 255 & s3, s3 = u3 << 8 | s3 >>> 8), c2 = l11 + E1, w3 = c2 >>> 2; A1.length <= w3;){ - A1.push(0); - } - A1[w3] |= s3 << 8 * (f1 + i6 * (c2 % 4)), l11 += 2; + else for(f1 = -1 === i5 ? 2 : 0, a1 = "UTF16LE" === n5 && 1 !== i5 || "UTF16LE" !== n5 && 1 === i5, h3 = 0; h3 < t5.length; h3 += 1){ + for(s3 = t5.charCodeAt(h3), !0 === a1 && (u3 = 255 & s3, s3 = u3 << 8 | s3 >>> 8), c2 = l11 + E1, w3 = c2 >>> 2; A1.length <= w3;)A1.push(0); + A1[w3] |= s3 << 8 * (f1 + i5 * (c2 % 4)), l11 += 2; } return { value: A1, binLen: 8 * l11 + r4 }; - }(t4, r2, n4, e5, i4); + }(t4, r2, n4, e5, i3); }; case "B64": return function(n6, e7, r5) { - return function(n7, e8, r6, i7) { - var s4, o8, h4, u4, w4, c3, f2, a2 = 0; - var l2 = e8 || [ + return function(n7, e8, r6, i6) { + let s4, o4, h4, u4, w4, c3, f2, a2 = 0; + const l2 = e8 || [ 0 - ], A2 = (r6 = r6 || 0) >>> 3, E2 = -1 === i7 ? 3 : 0, H1 = n7.indexOf("="); + ], A2 = (r6 = r6 || 0) >>> 3, E2 = -1 === i6 ? 3 : 0, H1 = n7.indexOf("="); if (-1 === n7.search(/^[a-zA-Z0-9=+/]+$/)) throw new Error("Invalid character in base-64 string"); if (n7 = n7.replace(/=/g, ""), -1 !== H1 && H1 < n7.length) throw new Error("Invalid '=' found in base-64 string"); - for(o8 = 0; o8 < n7.length; o8 += 4){ - for(w4 = n7.substr(o8, 4), u4 = 0, h4 = 0; h4 < w4.length; h4 += 1){ - s4 = t.indexOf(w4.charAt(h4)), u4 |= s4 << 18 - 6 * h4; - } + for(o4 = 0; o4 < n7.length; o4 += 4){ + for(w4 = n7.substr(o4, 4), u4 = 0, h4 = 0; h4 < w4.length; h4 += 1)s4 = t.indexOf(w4.charAt(h4)), u4 |= s4 << 18 - 6 * h4; for(h4 = 0; h4 < w4.length - 1; h4 += 1){ - for(f2 = a2 + A2, c3 = f2 >>> 2; l2.length <= c3;){ - l2.push(0); - } - l2[c3] |= (u4 >>> 16 - 8 * h4 & 255) << 8 * (E2 + i7 * (f2 % 4)), a2 += 1; + for(f2 = a2 + A2, c3 = f2 >>> 2; l2.length <= c3;)l2.push(0); + l2[c3] |= (u4 >>> 16 - 8 * h4 & 255) << 8 * (E2 + i6 * (f2 % 4)), a2 += 1; } } return { value: l2, binLen: 8 * a2 + r6 }; - }(n6, e7, r5, i4); + }(n6, e7, r5, i3); }; case "BYTES": return function(t6, n8, e9) { return function(t7, n9, e10, r7) { - var i8, s5, o9, h5; - var u5 = n9 || [ + let i7, s5, o5, h5; + const u5 = n9 || [ 0 ], w5 = (e10 = e10 || 0) >>> 3, c4 = -1 === r7 ? 3 : 0; - for(s5 = 0; s5 < t7.length; s5 += 1){ - i8 = t7.charCodeAt(s5), h5 = s5 + w5, o9 = h5 >>> 2, u5.length <= o9 && u5.push(0), u5[o9] |= i8 << 8 * (c4 + r7 * (h5 % 4)); - } + for(s5 = 0; s5 < t7.length; s5 += 1)i7 = t7.charCodeAt(s5), h5 = s5 + w5, o5 = h5 >>> 2, u5.length <= o5 && u5.push(0), u5[o5] |= i7 << 8 * (c4 + r7 * (h5 % 4)); return { value: u5, binLen: 8 * t7.length + e10 }; - }(t6, n8, e9, i4); + }(t6, n8, e9, i3); }; case "ARRAYBUFFER": try { @@ -15524,9 +17861,9 @@ function e(e2, r2, i4) { throw new Error("ARRAYBUFFER not supported by this environment"); } return function(t9, e11, r8) { - return function(t10, e12, r9, i9) { - return n(new Uint8Array(t10), e12, r9, i9); - }(t9, e11, r8, i4); + return function(t10, e12, r9, i8) { + return n(new Uint8Array(t10), e12, r9, i8); + }(t9, e11, r8, i3); }; case "UINT8ARRAY": try { @@ -15535,46 +17872,38 @@ function e(e2, r2, i4) { throw new Error("UINT8ARRAY not supported by this environment"); } return function(t12, e13, r10) { - return n(t12, e13, r10, i4); + return n(t12, e13, r10, i3); }; default: throw new Error("format must be HEX, TEXT, B64, BYTES, ARRAYBUFFER, or UINT8ARRAY"); } } -function r(n10, e14, r11, i10) { +function r(n10, e14, r11, i9) { switch(n10){ case "HEX": return function(t13) { return function(t14, n11, e15, r12) { - var i11, s6, o10 = ""; - var h6 = n11 / 8, u6 = -1 === e15 ? 3 : 0; - for(i11 = 0; i11 < h6; i11 += 1){ - s6 = t14[i11 >>> 2] >>> 8 * (u6 + e15 * (i11 % 4)), o10 += "0123456789abcdef".charAt(s6 >>> 4 & 15) + "0123456789abcdef".charAt(15 & s6); - } - return r12.outputUpper ? o10.toUpperCase() : o10; - }(t13, e14, r11, i10); + let i10, s6, o6 = ""; + const h6 = n11 / 8, u6 = -1 === e15 ? 3 : 0; + for(i10 = 0; i10 < h6; i10 += 1)s6 = t14[i10 >>> 2] >>> 8 * (u6 + e15 * (i10 % 4)), o6 += "0123456789abcdef".charAt(s6 >>> 4 & 15) + "0123456789abcdef".charAt(15 & s6); + return r12.outputUpper ? o6.toUpperCase() : o6; + }(t13, e14, r11, i9); }; case "B64": return function(n12) { - return function(n13, e16, r13, i12) { - var s7, o11, h7, u7, w6, c5 = ""; - var f3 = e16 / 8, a3 = -1 === r13 ? 3 : 0; - for(s7 = 0; s7 < f3; s7 += 3){ - for(u7 = s7 + 1 < f3 ? n13[s7 + 1 >>> 2] : 0, w6 = s7 + 2 < f3 ? n13[s7 + 2 >>> 2] : 0, h7 = (n13[s7 >>> 2] >>> 8 * (a3 + r13 * (s7 % 4)) & 255) << 16 | (u7 >>> 8 * (a3 + r13 * ((s7 + 1) % 4)) & 255) << 8 | w6 >>> 8 * (a3 + r13 * ((s7 + 2) % 4)) & 255, o11 = 0; o11 < 4; o11 += 1){ - c5 += 8 * s7 + 6 * o11 <= e16 ? t.charAt(h7 >>> 6 * (3 - o11) & 63) : i12.b64Pad; - } - } + return function(n13, e16, r13, i11) { + let s7, o7, h7, u7, w6, c5 = ""; + const f3 = e16 / 8, a3 = -1 === r13 ? 3 : 0; + for(s7 = 0; s7 < f3; s7 += 3)for(u7 = s7 + 1 < f3 ? n13[s7 + 1 >>> 2] : 0, w6 = s7 + 2 < f3 ? n13[s7 + 2 >>> 2] : 0, h7 = (n13[s7 >>> 2] >>> 8 * (a3 + r13 * (s7 % 4)) & 255) << 16 | (u7 >>> 8 * (a3 + r13 * ((s7 + 1) % 4)) & 255) << 8 | w6 >>> 8 * (a3 + r13 * ((s7 + 2) % 4)) & 255, o7 = 0; o7 < 4; o7 += 1)c5 += 8 * s7 + 6 * o7 <= e16 ? t.charAt(h7 >>> 6 * (3 - o7) & 63) : i11.b64Pad; return c5; - }(n12, e14, r11, i10); + }(n12, e14, r11, i9); }; case "BYTES": return function(t15) { return function(t16, n14, e17) { - var r14, i13, s8 = ""; - var o12 = n14 / 8, h8 = -1 === e17 ? 3 : 0; - for(r14 = 0; r14 < o12; r14 += 1){ - i13 = t16[r14 >>> 2] >>> 8 * (h8 + e17 * (r14 % 4)) & 255, s8 += String.fromCharCode(i13); - } + let r14, i12, s8 = ""; + const o8 = n14 / 8, h8 = -1 === e17 ? 3 : 0; + for(r14 = 0; r14 < o8; r14 += 1)i12 = t16[r14 >>> 2] >>> 8 * (h8 + e17 * (r14 % 4)) & 255, s8 += String.fromCharCode(i12); return s8; }(t15, e14, r11); }; @@ -15586,11 +17915,9 @@ function r(n10, e14, r11, i10) { } return function(t18) { return function(t19, n15, e18) { - var r15; - var i14 = n15 / 8, s9 = new ArrayBuffer(i14), o13 = new Uint8Array(s9), h9 = -1 === e18 ? 3 : 0; - for(r15 = 0; r15 < i14; r15 += 1){ - o13[r15] = t19[r15 >>> 2] >>> 8 * (h9 + e18 * (r15 % 4)) & 255; - } + let r15; + const i13 = n15 / 8, s9 = new ArrayBuffer(i13), o9 = new Uint8Array(s9), h9 = -1 === e18 ? 3 : 0; + for(r15 = 0; r15 < i13; r15 += 1)o9[r15] = t19[r15 >>> 2] >>> 8 * (h9 + e18 * (r15 % 4)) & 255; return s9; }(t18, e14, r11); }; @@ -15602,19 +17929,17 @@ function r(n10, e14, r11, i10) { } return function(t21) { return function(t22, n161, e19) { - var r16; - var i15 = n161 / 8, s10 = -1 === e19 ? 3 : 0, o14 = new Uint8Array(i15); - for(r16 = 0; r16 < i15; r16 += 1){ - o14[r16] = t22[r16 >>> 2] >>> 8 * (s10 + e19 * (r16 % 4)) & 255; - } - return o14; + let r16; + const i14 = n161 / 8, s10 = -1 === e19 ? 3 : 0, o10 = new Uint8Array(i14); + for(r16 = 0; r16 < i14; r16 += 1)o10[r16] = t22[r16 >>> 2] >>> 8 * (s10 + e19 * (r16 % 4)) & 255; + return o10; }(t21, e14, r11); }; default: throw new Error("format must be HEX, B64, BYTES, ARRAYBUFFER, or UINT8ARRAY"); } } -var i = [ +const i = [ 1116352408, 1899447441, 3049323471, @@ -15699,13 +18024,11 @@ var i = [ 1541459225 ], h = "Chosen SHA variant is not supported"; function u(t23, n17) { - var e20, r17; - var i16 = t23.binLen >>> 3, s11 = n17.binLen >>> 3, o15 = i16 << 3, h10 = 4 - i16 << 3; - if (i16 % 4 != 0) { - for(e20 = 0; e20 < s11; e20 += 4){ - r17 = i16 + e20 >>> 2, t23.value[r17] |= n17.value[e20 >>> 2] << o15, t23.value.push(0), t23.value[r17 + 1] |= n17.value[e20 >>> 2] >>> h10; - } - return (t23.value.length << 2) - 4 >= s11 + i16 && t23.value.pop(), { + let e20, r17; + const i15 = t23.binLen >>> 3, s11 = n17.binLen >>> 3, o11 = i15 << 3, h10 = 4 - i15 << 3; + if (i15 % 4 != 0) { + for(e20 = 0; e20 < s11; e20 += 4)r17 = i15 + e20 >>> 2, t23.value[r17] |= n17.value[e20 >>> 2] << o11, t23.value.push(0), t23.value[r17 + 1] |= n17.value[e20 >>> 2] >>> h10; + return (t23.value.length << 2) - 4 >= s11 + i15 && t23.value.pop(), { value: t23.value, binLen: t23.binLen + n17.binLen }; @@ -15716,7 +18039,7 @@ function u(t23, n17) { }; } function w(t24) { - var n18 = { + const n18 = { outputUpper: !1, b64Pad: "=", outputLen: -1 @@ -15732,99 +18055,69 @@ function w(t24) { if ("string" != typeof n18.b64Pad) throw new Error("Invalid b64Pad formatting option"); return n18; } -function c(t25, n19, r19, i17) { - var s12 = t25 + " must include a value and format"; +function c(t25, n19, r19, i16) { + const s12 = t25 + " must include a value and format"; if (!n19) { - if (!i17) throw new Error(s12); - return i17; + if (!i16) throw new Error(s12); + return i16; } if (void 0 === n19.value || !n19.format) throw new Error(s12); return e(n19.format, n19.encoding || "UTF8", r19)(n19.value); } -var f = function() { - function f4(t26, n20, e22) { - _classCallCheck(this, f4); - var r20 = e22 || {}; +class f { + constructor(t26, n20, e22){ + const r20 = e22 || {}; if (this.t = n20, this.i = r20.encoding || "UTF8", this.numRounds = r20.numRounds || 1, isNaN(this.numRounds) || this.numRounds !== parseInt(this.numRounds, 10) || 1 > this.numRounds) throw new Error("numRounds must a integer >= 1"); this.s = t26, this.o = [], this.h = 0, this.u = !1, this.l = 0, this.A = !1, this.H = [], this.S = []; } - _createClass(f4, [ - { - key: "update", - value: function update(t27) { - var n21, e23 = 0; - var r21 = this.p >>> 5, i18 = this.m(t27, this.o, this.h), s13 = i18.binLen, o16 = i18.value, h11 = s13 >>> 5; - for(n21 = 0; n21 < h11; n21 += r21){ - e23 + this.p <= s13 && (this.C = this.R(o16.slice(n21, n21 + r21), this.C), e23 += this.p); - } - this.l += e23, this.o = o16.slice(e23 >>> 5), this.h = s13 % this.p, this.u = !0; - } - }, - { - key: "getHash", - value: function getHash(t28, n22) { - var e24, i19, s14 = this.U; - var o17 = w(n22); - if (this.v) { - if (-1 === o17.outputLen) throw new Error("Output length must be specified in options"); - s14 = o17.outputLen; - } - var h12 = r(t28, s14, this.K, o17); - if (this.A && this.T) return h12(this.T(o17)); - for(i19 = this.F(this.o.slice(), this.h, this.l, this.g(this.C), s14), e24 = 1; e24 < this.numRounds; e24 += 1){ - this.v && s14 % 32 != 0 && (i19[i19.length - 1] &= 16777215 >>> 24 - s14 % 32), i19 = this.F(i19, s14, 0, this.B(this.s), s14); - } - return h12(i19); - } - }, - { - key: "setHMACKey", - value: function setHMACKey(t29, n23, r22) { - if (!this.L) throw new Error("Variant does not support HMAC"); - if (this.u) throw new Error("Cannot set MAC key after calling update"); - var i20 = e(n23, (r22 || {}).encoding || "UTF8", this.K); - this.M(i20(t29)); - } - }, - { - key: "M", - value: function M(t30) { - var n24 = this.p >>> 3, e25 = n24 / 4 - 1; - var r23; - if (1 !== this.numRounds) throw new Error("Cannot set numRounds with MAC"); - if (this.A) throw new Error("MAC key already set"); - for(n24 < t30.binLen / 8 && (t30.value = this.F(t30.value, t30.binLen, 0, this.B(this.s), this.U)); t30.value.length <= e25;){ - t30.value.push(0); - } - for(r23 = 0; r23 <= e25; r23 += 1){ - this.H[r23] = 909522486 ^ t30.value[r23], this.S[r23] = 1549556828 ^ t30.value[r23]; - } - this.C = this.R(this.H, this.C), this.l = this.p, this.A = !0; - } - }, - { - key: "getHMAC", - value: function getHMAC(t31, n25) { - var e26 = w(n25); - return r(t31, this.U, this.K, e26)(this.k()); - } - }, - { - key: "k", - value: function k() { - var t32; - if (!this.A) throw new Error("Cannot call getHMAC without first setting MAC key"); - var n26 = this.F(this.o.slice(), this.h, this.l, this.g(this.C), this.U); - return t32 = this.R(this.S, this.B(this.s)), t32 = this.F(n26, this.U, this.p, t32, this.U), t32; - } - } - ]); - return f4; -}(); + update(t27) { + let n21, e23 = 0; + const r21 = this.p >>> 5, i17 = this.m(t27, this.o, this.h), s13 = i17.binLen, o12 = i17.value, h11 = s13 >>> 5; + for(n21 = 0; n21 < h11; n21 += r21)e23 + this.p <= s13 && (this.C = this.R(o12.slice(n21, n21 + r21), this.C), e23 += this.p); + this.l += e23, this.o = o12.slice(e23 >>> 5), this.h = s13 % this.p, this.u = !0; + } + getHash(t28, n22) { + let e24, i18, s14 = this.U; + const o13 = w(n22); + if (this.v) { + if (-1 === o13.outputLen) throw new Error("Output length must be specified in options"); + s14 = o13.outputLen; + } + const h12 = r(t28, s14, this.K, o13); + if (this.A && this.T) return h12(this.T(o13)); + for(i18 = this.F(this.o.slice(), this.h, this.l, this.g(this.C), s14), e24 = 1; e24 < this.numRounds; e24 += 1)this.v && s14 % 32 != 0 && (i18[i18.length - 1] &= 16777215 >>> 24 - s14 % 32), i18 = this.F(i18, s14, 0, this.B(this.s), s14); + return h12(i18); + } + setHMACKey(t29, n23, r22) { + if (!this.L) throw new Error("Variant does not support HMAC"); + if (this.u) throw new Error("Cannot set MAC key after calling update"); + const i19 = e(n23, (r22 || {}).encoding || "UTF8", this.K); + this.M(i19(t29)); + } + M(t30) { + const n24 = this.p >>> 3, e25 = n24 / 4 - 1; + let r23; + if (1 !== this.numRounds) throw new Error("Cannot set numRounds with MAC"); + if (this.A) throw new Error("MAC key already set"); + for(n24 < t30.binLen / 8 && (t30.value = this.F(t30.value, t30.binLen, 0, this.B(this.s), this.U)); t30.value.length <= e25;)t30.value.push(0); + for(r23 = 0; r23 <= e25; r23 += 1)this.H[r23] = 909522486 ^ t30.value[r23], this.S[r23] = 1549556828 ^ t30.value[r23]; + this.C = this.R(this.H, this.C), this.l = this.p, this.A = !0; + } + getHMAC(t31, n25) { + const e26 = w(n25); + return r(t31, this.U, this.K, e26)(this.k()); + } + k() { + let t32; + if (!this.A) throw new Error("Cannot call getHMAC without first setting MAC key"); + const n26 = this.F(this.o.slice(), this.h, this.l, this.g(this.C), this.U); + return t32 = this.R(this.S, this.B(this.s)), t32 = this.F(n26, this.U, this.p, t32, this.U), t32; + } +} function a(t33, n27) { return t33 << n27 | t33 >>> 32 - n27; } -function l8(t34, n28) { +function l14(t34, n28) { return t34 >>> n28 | t34 << 32 - n28; } function A(t35, n29) { @@ -15840,25 +18133,25 @@ function S(t38, n321, e29) { return t38 & n321 ^ t38 & e29 ^ n321 & e29; } function b(t39) { - return l8(t39, 2) ^ l8(t39, 13) ^ l8(t39, 22); + return l14(t39, 2) ^ l14(t39, 13) ^ l14(t39, 22); } function p(t40, n33) { - var e30 = (65535 & t40) + (65535 & n33); + const e30 = (65535 & t40) + (65535 & n33); return (65535 & (t40 >>> 16) + (n33 >>> 16) + (e30 >>> 16)) << 16 | 65535 & e30; } function d(t41, n34, e31, r24) { - var i21 = (65535 & t41) + (65535 & n34) + (65535 & e31) + (65535 & r24); - return (65535 & (t41 >>> 16) + (n34 >>> 16) + (e31 >>> 16) + (r24 >>> 16) + (i21 >>> 16)) << 16 | 65535 & i21; + const i20 = (65535 & t41) + (65535 & n34) + (65535 & e31) + (65535 & r24); + return (65535 & (t41 >>> 16) + (n34 >>> 16) + (e31 >>> 16) + (r24 >>> 16) + (i20 >>> 16)) << 16 | 65535 & i20; } -function m(t42, n35, e32, r25, i22) { - var s15 = (65535 & t42) + (65535 & n35) + (65535 & e32) + (65535 & r25) + (65535 & i22); - return (65535 & (t42 >>> 16) + (n35 >>> 16) + (e32 >>> 16) + (r25 >>> 16) + (i22 >>> 16) + (s15 >>> 16)) << 16 | 65535 & s15; +function m(t42, n35, e32, r25, i21) { + const s15 = (65535 & t42) + (65535 & n35) + (65535 & e32) + (65535 & r25) + (65535 & i21); + return (65535 & (t42 >>> 16) + (n35 >>> 16) + (e32 >>> 16) + (r25 >>> 16) + (i21 >>> 16) + (s15 >>> 16)) << 16 | 65535 & s15; } function C(t43) { - return l8(t43, 7) ^ l8(t43, 18) ^ A(t43, 3); + return l14(t43, 7) ^ l14(t43, 18) ^ A(t43, 3); } function y(t44) { - return l8(t44, 6) ^ l8(t44, 11) ^ l8(t44, 25); + return l14(t44, 6) ^ l14(t44, 11) ^ l14(t44, 25); } function R(t) { return [ @@ -15870,81 +18163,59 @@ function R(t) { ]; } function U(t45, n36) { - var e33, r26, i23, s16, o18, h13, u8; - var w7 = []; - for(e33 = n36[0], r26 = n36[1], i23 = n36[2], s16 = n36[3], o18 = n36[4], u8 = 0; u8 < 80; u8 += 1){ - w7[u8] = u8 < 16 ? t45[u8] : a(w7[u8 - 3] ^ w7[u8 - 8] ^ w7[u8 - 14] ^ w7[u8 - 16], 1), h13 = u8 < 20 ? m(a(e33, 5), H(r26, i23, s16), o18, 1518500249, w7[u8]) : u8 < 40 ? m(a(e33, 5), E(r26, i23, s16), o18, 1859775393, w7[u8]) : u8 < 60 ? m(a(e33, 5), S(r26, i23, s16), o18, 2400959708, w7[u8]) : m(a(e33, 5), E(r26, i23, s16), o18, 3395469782, w7[u8]), o18 = s16, s16 = i23, i23 = a(r26, 30), r26 = e33, e33 = h13; - } - return n36[0] = p(e33, n36[0]), n36[1] = p(r26, n36[1]), n36[2] = p(i23, n36[2]), n36[3] = p(s16, n36[3]), n36[4] = p(o18, n36[4]), n36; + let e33, r26, i22, s16, o14, h13, u8; + const w7 = []; + for(e33 = n36[0], r26 = n36[1], i22 = n36[2], s16 = n36[3], o14 = n36[4], u8 = 0; u8 < 80; u8 += 1)w7[u8] = u8 < 16 ? t45[u8] : a(w7[u8 - 3] ^ w7[u8 - 8] ^ w7[u8 - 14] ^ w7[u8 - 16], 1), h13 = u8 < 20 ? m(a(e33, 5), H(r26, i22, s16), o14, 1518500249, w7[u8]) : u8 < 40 ? m(a(e33, 5), E(r26, i22, s16), o14, 1859775393, w7[u8]) : u8 < 60 ? m(a(e33, 5), S(r26, i22, s16), o14, 2400959708, w7[u8]) : m(a(e33, 5), E(r26, i22, s16), o14, 3395469782, w7[u8]), o14 = s16, s16 = i22, i22 = a(r26, 30), r26 = e33, e33 = h13; + return n36[0] = p(e33, n36[0]), n36[1] = p(r26, n36[1]), n36[2] = p(i22, n36[2]), n36[3] = p(s16, n36[3]), n36[4] = p(o14, n36[4]), n36; } function v(t46, n37, e34, r27) { - var i24; - var s17 = 15 + (n37 + 65 >>> 9 << 4), o19 = n37 + e34; - for(; t46.length <= s17;){ - t46.push(0); - } - for(t46[n37 >>> 5] |= 128 << 24 - n37 % 32, t46[s17] = 4294967295 & o19, t46[s17 - 1] = o19 / 4294967296 | 0, i24 = 0; i24 < t46.length; i24 += 16){ - r27 = U(t46.slice(i24, i24 + 16), r27); - } + let i23; + const s17 = 15 + (n37 + 65 >>> 9 << 4), o15 = n37 + e34; + for(; t46.length <= s17;)t46.push(0); + for(t46[n37 >>> 5] |= 128 << 24 - n37 % 32, t46[s17] = 4294967295 & o15, t46[s17 - 1] = o15 / 4294967296 | 0, i23 = 0; i23 < t46.length; i23 += 16)r27 = U(t46.slice(i23, i23 + 16), r27); return r27; } -var K = function(_f) { - _inherits(K1, _f); - var _super = _createSuper(K1); - function K1(t47, n38, r28) { - var _this; - _classCallCheck(this, K1); +class K extends f { + constructor(t47, n38, r28){ if ("SHA-1" !== t47) throw new Error(h); - _this = _super.call(this, t47, n38, r28); - var i25 = r28 || {}; - _this.L = !0, _this.T = _this.k, _this.K = -1, _this.m = e(_this.t, _this.i, _this.K), _this.R = U, _this.g = function(t48) { + super(t47, n38, r28); + const i24 = r28 || {}; + this.L = !0, this.T = this.k, this.K = -1, this.m = e(this.t, this.i, this.K), this.R = U, this.g = function(t48) { return t48.slice(); - }, _this.B = R, _this.F = v, _this.C = [ + }, this.B = R, this.F = v, this.C = [ 1732584193, 4023233417, 2562383102, 271733878, 3285377520 - ], _this.p = 512, _this.U = 160, _this.v = !1, i25.hmacKey && _this.M(c("hmacKey", i25.hmacKey, _this.K)); - return _this; + ], this.p = 512, this.U = 160, this.v = !1, i24.hmacKey && this.M(c("hmacKey", i24.hmacKey, this.K)); } - return _createClass(K1); -}(f); +} function T(t49) { - var n39; + let n39; return n39 = "SHA-224" == t49 ? s.slice() : o.slice(), n39; } function F(t50, n40) { - var e35, r29, s18, o20, h14, u9, w8, c6, f5, a4, E3; - var R1 = []; - for(e35 = n40[0], r29 = n40[1], s18 = n40[2], o20 = n40[3], h14 = n40[4], u9 = n40[5], w8 = n40[6], c6 = n40[7], E3 = 0; E3 < 64; E3 += 1){ - R1[E3] = E3 < 16 ? t50[E3] : d(l8(U1 = R1[E3 - 2], 17) ^ l8(U1, 19) ^ A(U1, 10), R1[E3 - 7], C(R1[E3 - 15]), R1[E3 - 16]), f5 = m(c6, y(h14), H(h14, u9, w8), i[E3], R1[E3]), a4 = p(b(e35), S(e35, r29, s18)), c6 = w8, w8 = u9, u9 = h14, h14 = p(o20, f5), o20 = s18, s18 = r29, r29 = e35, e35 = p(f5, a4); - } + let e35, r29, s18, o16, h14, u9, w8, c6, f4, a4, E3; + const R1 = []; + for(e35 = n40[0], r29 = n40[1], s18 = n40[2], o16 = n40[3], h14 = n40[4], u9 = n40[5], w8 = n40[6], c6 = n40[7], E3 = 0; E3 < 64; E3 += 1)R1[E3] = E3 < 16 ? t50[E3] : d(l14(U1 = R1[E3 - 2], 17) ^ l14(U1, 19) ^ A(U1, 10), R1[E3 - 7], C(R1[E3 - 15]), R1[E3 - 16]), f4 = m(c6, y(h14), H(h14, u9, w8), i[E3], R1[E3]), a4 = p(b(e35), S(e35, r29, s18)), c6 = w8, w8 = u9, u9 = h14, h14 = p(o16, f4), o16 = s18, s18 = r29, r29 = e35, e35 = p(f4, a4); var U1; - return n40[0] = p(e35, n40[0]), n40[1] = p(r29, n40[1]), n40[2] = p(s18, n40[2]), n40[3] = p(o20, n40[3]), n40[4] = p(h14, n40[4]), n40[5] = p(u9, n40[5]), n40[6] = p(w8, n40[6]), n40[7] = p(c6, n40[7]), n40; -} -var g = function(_f2) { - _inherits(g1, _f2); - var _super2 = _createSuper(g1); - function g1(t51, n41, r30) { - var _this2; - _classCallCheck(this, g1); + return n40[0] = p(e35, n40[0]), n40[1] = p(r29, n40[1]), n40[2] = p(s18, n40[2]), n40[3] = p(o16, n40[3]), n40[4] = p(h14, n40[4]), n40[5] = p(u9, n40[5]), n40[6] = p(w8, n40[6]), n40[7] = p(c6, n40[7]), n40; +} +class g extends f { + constructor(t51, n41, r30){ if ("SHA-224" !== t51 && "SHA-256" !== t51) throw new Error(h); - _this2 = _super2.call(this, t51, n41, r30); - var i26 = r30 || {}; - _this2.T = _this2.k, _this2.L = !0, _this2.K = -1, _this2.m = e(_this2.t, _this2.i, _this2.K), _this2.R = F, _this2.g = function(t52) { + super(t51, n41, r30); + const i25 = r30 || {}; + this.T = this.k, this.L = !0, this.K = -1, this.m = e(this.t, this.i, this.K), this.R = F, this.g = function(t52) { return t52.slice(); - }, _this2.B = T, _this2.F = function(n42, e36, r31, i27) { - return function(t53, n43, e37, r32, i28) { - var s19, o21; - var h15 = 15 + (n43 + 65 >>> 9 << 4), u10 = n43 + e37; - for(; t53.length <= h15;){ - t53.push(0); - } - for(t53[n43 >>> 5] |= 128 << 24 - n43 % 32, t53[h15] = 4294967295 & u10, t53[h15 - 1] = u10 / 4294967296 | 0, s19 = 0; s19 < t53.length; s19 += 16){ - r32 = F(t53.slice(s19, s19 + 16), r32); - } - return o21 = "SHA-224" === i28 ? [ + }, this.B = T, this.F = function(n42, e36, r31, i26) { + return function(t53, n43, e37, r32, i27) { + let s19, o17; + const h15 = 15 + (n43 + 65 >>> 9 << 4), u10 = n43 + e37; + for(; t53.length <= h15;)t53.push(0); + for(t53[n43 >>> 5] |= 128 << 24 - n43 % 32, t53[h15] = 4294967295 & u10, t53[h15 - 1] = u10 / 4294967296 | 0, s19 = 0; s19 < t53.length; s19 += 16)r32 = F(t53.slice(s19, s19 + 16), r32); + return o17 = "SHA-224" === i27 ? [ r32[0], r32[1], r32[2], @@ -15952,23 +18223,22 @@ var g = function(_f2) { r32[4], r32[5], r32[6] - ] : r32, o21; - }(n42, e36, r31, i27, t51); - }, _this2.C = T(t51), _this2.p = 512, _this2.U = "SHA-224" === t51 ? 224 : 256, _this2.v = !1, i26.hmacKey && _this2.M(c("hmacKey", i26.hmacKey, _this2.K)); - return _this2; - } - return _createClass(g1); -}(f); -var B = _createClass(function B1(t54, n44) { - _classCallCheck(this, B1); - this.Y = t54, this.N = n44; -}); + ] : r32, o17; + }(n42, e36, r31, i26, t51); + }, this.C = T(t51), this.p = 512, this.U = "SHA-224" === t51 ? 224 : 256, this.v = !1, i25.hmacKey && this.M(c("hmacKey", i25.hmacKey, this.K)); + } +} +class B { + constructor(t54, n44){ + this.Y = t54, this.N = n44; + } +} function L(t55, n45) { - var e38; + let e38; return n45 > 32 ? (e38 = 64 - n45, new B(t55.N << n45 | t55.Y >>> e38, t55.Y << n45 | t55.N >>> e38)) : 0 !== n45 ? (e38 = 32 - n45, new B(t55.Y << n45 | t55.N >>> e38, t55.N << n45 | t55.Y >>> e38)) : t55; } function M(t56, n46) { - var e39; + let e39; return n46 < 32 ? (e39 = 32 - n46, new B(t56.Y >>> n46 | t56.N << e39, t56.N >>> n46 | t56.Y << e39)) : (e39 = 64 - n46, new B(t56.N >>> n46 | t56.Y << e39, t56.Y >>> n46 | t56.N << e39)); } function k(t57, n47) { @@ -15978,46 +18248,46 @@ function Y(t58, n48, e40) { return new B(t58.Y & n48.Y ^ t58.Y & e40.Y ^ n48.Y & e40.Y, t58.N & n48.N ^ t58.N & e40.N ^ n48.N & e40.N); } function N(t59) { - var n49 = M(t59, 28), e41 = M(t59, 34), r33 = M(t59, 39); + const n49 = M(t59, 28), e41 = M(t59, 34), r33 = M(t59, 39); return new B(n49.Y ^ e41.Y ^ r33.Y, n49.N ^ e41.N ^ r33.N); } function I(t60, n50) { - var e42, r34; + let e42, r34; e42 = (65535 & t60.N) + (65535 & n50.N), r34 = (t60.N >>> 16) + (n50.N >>> 16) + (e42 >>> 16); - var i29 = (65535 & r34) << 16 | 65535 & e42; + const i28 = (65535 & r34) << 16 | 65535 & e42; e42 = (65535 & t60.Y) + (65535 & n50.Y) + (r34 >>> 16), r34 = (t60.Y >>> 16) + (n50.Y >>> 16) + (e42 >>> 16); - return new B((65535 & r34) << 16 | 65535 & e42, i29); + return new B((65535 & r34) << 16 | 65535 & e42, i28); } function X(t61, n51, e43, r35) { - var i30, s20; - i30 = (65535 & t61.N) + (65535 & n51.N) + (65535 & e43.N) + (65535 & r35.N), s20 = (t61.N >>> 16) + (n51.N >>> 16) + (e43.N >>> 16) + (r35.N >>> 16) + (i30 >>> 16); - var o22 = (65535 & s20) << 16 | 65535 & i30; - i30 = (65535 & t61.Y) + (65535 & n51.Y) + (65535 & e43.Y) + (65535 & r35.Y) + (s20 >>> 16), s20 = (t61.Y >>> 16) + (n51.Y >>> 16) + (e43.Y >>> 16) + (r35.Y >>> 16) + (i30 >>> 16); - return new B((65535 & s20) << 16 | 65535 & i30, o22); -} -function z(t62, n52, e44, r36, i31) { - var s21, o23; - s21 = (65535 & t62.N) + (65535 & n52.N) + (65535 & e44.N) + (65535 & r36.N) + (65535 & i31.N), o23 = (t62.N >>> 16) + (n52.N >>> 16) + (e44.N >>> 16) + (r36.N >>> 16) + (i31.N >>> 16) + (s21 >>> 16); - var h16 = (65535 & o23) << 16 | 65535 & s21; - s21 = (65535 & t62.Y) + (65535 & n52.Y) + (65535 & e44.Y) + (65535 & r36.Y) + (65535 & i31.Y) + (o23 >>> 16), o23 = (t62.Y >>> 16) + (n52.Y >>> 16) + (e44.Y >>> 16) + (r36.Y >>> 16) + (i31.Y >>> 16) + (s21 >>> 16); - return new B((65535 & o23) << 16 | 65535 & s21, h16); + let i29, s20; + i29 = (65535 & t61.N) + (65535 & n51.N) + (65535 & e43.N) + (65535 & r35.N), s20 = (t61.N >>> 16) + (n51.N >>> 16) + (e43.N >>> 16) + (r35.N >>> 16) + (i29 >>> 16); + const o18 = (65535 & s20) << 16 | 65535 & i29; + i29 = (65535 & t61.Y) + (65535 & n51.Y) + (65535 & e43.Y) + (65535 & r35.Y) + (s20 >>> 16), s20 = (t61.Y >>> 16) + (n51.Y >>> 16) + (e43.Y >>> 16) + (r35.Y >>> 16) + (i29 >>> 16); + return new B((65535 & s20) << 16 | 65535 & i29, o18); +} +function z(t62, n52, e44, r36, i30) { + let s21, o19; + s21 = (65535 & t62.N) + (65535 & n52.N) + (65535 & e44.N) + (65535 & r36.N) + (65535 & i30.N), o19 = (t62.N >>> 16) + (n52.N >>> 16) + (e44.N >>> 16) + (r36.N >>> 16) + (i30.N >>> 16) + (s21 >>> 16); + const h16 = (65535 & o19) << 16 | 65535 & s21; + s21 = (65535 & t62.Y) + (65535 & n52.Y) + (65535 & e44.Y) + (65535 & r36.Y) + (65535 & i30.Y) + (o19 >>> 16), o19 = (t62.Y >>> 16) + (n52.Y >>> 16) + (e44.Y >>> 16) + (r36.Y >>> 16) + (i30.Y >>> 16) + (s21 >>> 16); + return new B((65535 & o19) << 16 | 65535 & s21, h16); } function x(t63, n53) { return new B(t63.Y ^ n53.Y, t63.N ^ n53.N); } function _(t64) { - var n54 = M(t64, 19), e45 = M(t64, 61), r37 = k(t64, 6); + const n54 = M(t64, 19), e45 = M(t64, 61), r37 = k(t64, 6); return new B(n54.Y ^ e45.Y ^ r37.Y, n54.N ^ e45.N ^ r37.N); } function O(t65) { - var n55 = M(t65, 1), e46 = M(t65, 8), r38 = k(t65, 7); + const n55 = M(t65, 1), e46 = M(t65, 8), r38 = k(t65, 7); return new B(n55.Y ^ e46.Y ^ r38.Y, n55.N ^ e46.N ^ r38.N); } function P(t66) { - var n56 = M(t66, 14), e47 = M(t66, 18), r39 = M(t66, 41); + const n56 = M(t66, 14), e47 = M(t66, 18), r39 = M(t66, 41); return new B(n56.Y ^ e47.Y ^ r39.Y, n56.N ^ e47.N ^ r39.N); } -var V = [ +const V = [ new B(i[0], 3609767458), new B(i[1], 602891725), new B(i[2], 3964484399), @@ -16121,36 +18391,26 @@ function Z(t67) { ]; } function j(t68, n57) { - var e48, r40, i32, s22, o24, h17, u11, w9, c7, f6, a5, l3; - var A3 = []; - for(e48 = n57[0], r40 = n57[1], i32 = n57[2], s22 = n57[3], o24 = n57[4], h17 = n57[5], u11 = n57[6], w9 = n57[7], a5 = 0; a5 < 80; a5 += 1){ - a5 < 16 ? (l3 = 2 * a5, A3[a5] = new B(t68[l3], t68[l3 + 1])) : A3[a5] = X(_(A3[a5 - 2]), A3[a5 - 7], O(A3[a5 - 15]), A3[a5 - 16]), c7 = z(w9, P(o24), (H2 = h17, S1 = u11, new B((E4 = o24).Y & H2.Y ^ ~E4.Y & S1.Y, E4.N & H2.N ^ ~E4.N & S1.N)), V[a5], A3[a5]), f6 = I(N(e48), Y(e48, r40, i32)), w9 = u11, u11 = h17, h17 = o24, o24 = I(s22, c7), s22 = i32, i32 = r40, r40 = e48, e48 = I(c7, f6); - } + let e48, r40, i31, s22, o20, h17, u11, w9, c7, f5, a5, l3; + const A3 = []; + for(e48 = n57[0], r40 = n57[1], i31 = n57[2], s22 = n57[3], o20 = n57[4], h17 = n57[5], u11 = n57[6], w9 = n57[7], a5 = 0; a5 < 80; a5 += 1)a5 < 16 ? (l3 = 2 * a5, A3[a5] = new B(t68[l3], t68[l3 + 1])) : A3[a5] = X(_(A3[a5 - 2]), A3[a5 - 7], O(A3[a5 - 15]), A3[a5 - 16]), c7 = z(w9, P(o20), (H2 = h17, S1 = u11, new B((E4 = o20).Y & H2.Y ^ ~E4.Y & S1.Y, E4.N & H2.N ^ ~E4.N & S1.N)), V[a5], A3[a5]), f5 = I(N(e48), Y(e48, r40, i31)), w9 = u11, u11 = h17, h17 = o20, o20 = I(s22, c7), s22 = i31, i31 = r40, r40 = e48, e48 = I(c7, f5); var E4, H2, S1; - return n57[0] = I(e48, n57[0]), n57[1] = I(r40, n57[1]), n57[2] = I(i32, n57[2]), n57[3] = I(s22, n57[3]), n57[4] = I(o24, n57[4]), n57[5] = I(h17, n57[5]), n57[6] = I(u11, n57[6]), n57[7] = I(w9, n57[7]), n57; -} -var q = function(_f3) { - _inherits(q1, _f3); - var _super3 = _createSuper(q1); - function q1(t69, n58, r41) { - var _this3; - _classCallCheck(this, q1); + return n57[0] = I(e48, n57[0]), n57[1] = I(r40, n57[1]), n57[2] = I(i31, n57[2]), n57[3] = I(s22, n57[3]), n57[4] = I(o20, n57[4]), n57[5] = I(h17, n57[5]), n57[6] = I(u11, n57[6]), n57[7] = I(w9, n57[7]), n57; +} +class q extends f { + constructor(t69, n58, r41){ if ("SHA-384" !== t69 && "SHA-512" !== t69) throw new Error(h); - _this3 = _super3.call(this, t69, n58, r41); - var i33 = r41 || {}; - _this3.T = _this3.k, _this3.L = !0, _this3.K = -1, _this3.m = e(_this3.t, _this3.i, _this3.K), _this3.R = j, _this3.g = function(t70) { + super(t69, n58, r41); + const i32 = r41 || {}; + this.T = this.k, this.L = !0, this.K = -1, this.m = e(this.t, this.i, this.K), this.R = j, this.g = function(t70) { return t70.slice(); - }, _this3.B = Z, _this3.F = function(n59, e49, r42, i34) { - return function(t71, n60, e50, r43, i35) { - var s23, o25; - var h18 = 31 + (n60 + 129 >>> 10 << 5), u12 = n60 + e50; - for(; t71.length <= h18;){ - t71.push(0); - } - for(t71[n60 >>> 5] |= 128 << 24 - n60 % 32, t71[h18] = 4294967295 & u12, t71[h18 - 1] = u12 / 4294967296 | 0, s23 = 0; s23 < t71.length; s23 += 32){ - r43 = j(t71.slice(s23, s23 + 32), r43); - } - return o25 = "SHA-384" === i35 ? [ + }, this.B = Z, this.F = function(n59, e49, r42, i33) { + return function(t71, n60, e50, r43, i34) { + let s23, o21; + const h18 = 31 + (n60 + 129 >>> 10 << 5), u12 = n60 + e50; + for(; t71.length <= h18;)t71.push(0); + for(t71[n60 >>> 5] |= 128 << 24 - n60 % 32, t71[h18] = 4294967295 & u12, t71[h18 - 1] = u12 / 4294967296 | 0, s23 = 0; s23 < t71.length; s23 += 32)r43 = j(t71.slice(s23, s23 + 32), r43); + return o21 = "SHA-384" === i34 ? [ (r43 = r43)[0].Y, r43[0].N, r43[1].Y, @@ -16180,14 +18440,12 @@ var q = function(_f3) { r43[6].N, r43[7].Y, r43[7].N - ], o25; - }(n59, e49, r42, i34, t69); - }, _this3.C = Z(t69), _this3.p = 1024, _this3.U = "SHA-384" === t69 ? 384 : 512, _this3.v = !1, i33.hmacKey && _this3.M(c("hmacKey", i33.hmacKey, _this3.K)); - return _this3; - } - return _createClass(q1); -}(f); -var D = [ + ], o21; + }(n59, e49, r42, i33, t69); + }, this.C = Z(t69), this.p = 1024, this.U = "SHA-384" === t69 ? 384 : 512, this.v = !1, i32.hmacKey && this.M(c("hmacKey", i32.hmacKey, this.K)); + } +} +const D = [ new B(0, 1), new B(0, 32898), new B(2147483648, 32906), @@ -16250,75 +18508,51 @@ var D = [ ] ]; function J(t) { - var n61; - var e51 = []; - for(n61 = 0; n61 < 5; n61 += 1){ - e51[n61] = [ - new B(0, 0), - new B(0, 0), - new B(0, 0), - new B(0, 0), - new B(0, 0) - ]; - } + let n61; + const e51 = []; + for(n61 = 0; n61 < 5; n61 += 1)e51[n61] = [ + new B(0, 0), + new B(0, 0), + new B(0, 0), + new B(0, 0), + new B(0, 0) + ]; return e51; } function Q(t72) { - var n62; - var e52 = []; - for(n62 = 0; n62 < 5; n62 += 1){ - e52[n62] = t72[n62].slice(); - } + let n62; + const e52 = []; + for(n62 = 0; n62 < 5; n62 += 1)e52[n62] = t72[n62].slice(); return e52; } function W(t73, n63) { - var e53, r44, i36, s24; - var o26 = [], h19 = []; - if (null !== t73) for(r44 = 0; r44 < t73.length; r44 += 2){ - n63[(r44 >>> 1) % 5][(r44 >>> 1) / 5 | 0] = x(n63[(r44 >>> 1) % 5][(r44 >>> 1) / 5 | 0], new B(t73[r44 + 1], t73[r44])); - } + let e53, r44, i35, s24; + const o22 = [], h19 = []; + if (null !== t73) for(r44 = 0; r44 < t73.length; r44 += 2)n63[(r44 >>> 1) % 5][(r44 >>> 1) / 5 | 0] = x(n63[(r44 >>> 1) % 5][(r44 >>> 1) / 5 | 0], new B(t73[r44 + 1], t73[r44])); for(e53 = 0; e53 < 24; e53 += 1){ - for(s24 = J(), r44 = 0; r44 < 5; r44 += 1){ - o26[r44] = (u13 = n63[r44][0], w10 = n63[r44][1], c8 = n63[r44][2], f7 = n63[r44][3], a6 = n63[r44][4], new B(u13.Y ^ w10.Y ^ c8.Y ^ f7.Y ^ a6.Y, u13.N ^ w10.N ^ c8.N ^ f7.N ^ a6.N)); - } - for(r44 = 0; r44 < 5; r44 += 1){ - h19[r44] = x(o26[(r44 + 4) % 5], L(o26[(r44 + 1) % 5], 1)); - } - for(r44 = 0; r44 < 5; r44 += 1){ - for(i36 = 0; i36 < 5; i36 += 1){ - n63[r44][i36] = x(n63[r44][i36], h19[r44]); - } - } - for(r44 = 0; r44 < 5; r44 += 1){ - for(i36 = 0; i36 < 5; i36 += 1){ - s24[i36][(2 * r44 + 3 * i36) % 5] = L(n63[r44][i36], G[r44][i36]); - } - } - for(r44 = 0; r44 < 5; r44 += 1){ - for(i36 = 0; i36 < 5; i36 += 1){ - n63[r44][i36] = x(s24[r44][i36], new B(~s24[(r44 + 1) % 5][i36].Y & s24[(r44 + 2) % 5][i36].Y, ~s24[(r44 + 1) % 5][i36].N & s24[(r44 + 2) % 5][i36].N)); - } - } + for(s24 = J(), r44 = 0; r44 < 5; r44 += 1)o22[r44] = (u13 = n63[r44][0], w10 = n63[r44][1], c8 = n63[r44][2], f6 = n63[r44][3], a6 = n63[r44][4], new B(u13.Y ^ w10.Y ^ c8.Y ^ f6.Y ^ a6.Y, u13.N ^ w10.N ^ c8.N ^ f6.N ^ a6.N)); + for(r44 = 0; r44 < 5; r44 += 1)h19[r44] = x(o22[(r44 + 4) % 5], L(o22[(r44 + 1) % 5], 1)); + for(r44 = 0; r44 < 5; r44 += 1)for(i35 = 0; i35 < 5; i35 += 1)n63[r44][i35] = x(n63[r44][i35], h19[r44]); + for(r44 = 0; r44 < 5; r44 += 1)for(i35 = 0; i35 < 5; i35 += 1)s24[i35][(2 * r44 + 3 * i35) % 5] = L(n63[r44][i35], G[r44][i35]); + for(r44 = 0; r44 < 5; r44 += 1)for(i35 = 0; i35 < 5; i35 += 1)n63[r44][i35] = x(s24[r44][i35], new B(~s24[(r44 + 1) % 5][i35].Y & s24[(r44 + 2) % 5][i35].Y, ~s24[(r44 + 1) % 5][i35].N & s24[(r44 + 2) % 5][i35].N)); n63[0][0] = x(n63[0][0], D[e53]); } - var u13, w10, c8, f7, a6; + var u13, w10, c8, f6, a6; return n63; } function $(t74) { - var n64, e54, r45 = 0; - var i37 = [ + let n64, e54, r45 = 0; + const i36 = [ 0, 0 ], s25 = [ 4294967295 & t74, t74 / 4294967296 & 2097151 ]; - for(n64 = 6; n64 >= 0; n64--){ - e54 = s25[n64 >> 2] >>> 8 * n64 & 255, 0 === e54 && 0 === r45 || (i37[r45 + 1 >> 2] |= e54 << 8 * (r45 + 1), r45 += 1); - } - return r45 = 0 !== r45 ? r45 : 1, i37[0] |= r45, { - value: r45 + 1 > 4 ? i37 : [ - i37[0] + for(n64 = 6; n64 >= 0; n64--)e54 = s25[n64 >> 2] >>> 8 * n64 & 255, 0 === e54 && 0 === r45 || (i36[r45 + 1 >> 2] |= e54 << 8 * (r45 + 1), r45 += 1); + return r45 = 0 !== r45 ? r45 : 1, i36[0] |= r45, { + value: r45 + 1 > 4 ? i36 : [ + i36[0] ], binLen: 8 + 8 * r45 }; @@ -16327,210 +18561,163 @@ function tt(t75) { return u($(t75.binLen), t75); } function nt(t76, n65) { - var e55, r46 = $(n65); + let e55, r46 = $(n65); r46 = u(r46, t76); - var i38 = n65 >>> 2, s26 = (i38 - r46.value.length % i38) % i38; - for(e55 = 0; e55 < s26; e55++){ - r46.value.push(0); - } + const i37 = n65 >>> 2, s26 = (i37 - r46.value.length % i37) % i37; + for(e55 = 0; e55 < s26; e55++)r46.value.push(0); return r46.value; } -var et = function(_f4) { - _inherits(et1, _f4); - var _super4 = _createSuper(et1); - function et1(t77, n66, r47) { - var _this4; - _classCallCheck(this, et1); - var i39 = 6, s27 = 0; - _this4 = _super4.call(this, t77, n66, r47); - var o27 = r47 || {}; - if (1 !== _this4.numRounds) { - if (o27.kmacKey || o27.hmacKey) throw new Error("Cannot set numRounds with MAC"); - if ("CSHAKE128" === _this4.s || "CSHAKE256" === _this4.s) throw new Error("Cannot set numRounds for CSHAKE variants"); - } - switch(_this4.K = 1, _this4.m = e(_this4.t, _this4.i, _this4.K), _this4.R = W, _this4.g = Q, _this4.B = J, _this4.C = J(), _this4.v = !1, t77){ +class et extends f { + constructor(t77, n66, r47){ + let i38 = 6, s27 = 0; + super(t77, n66, r47); + const o23 = r47 || {}; + if (1 !== this.numRounds) { + if (o23.kmacKey || o23.hmacKey) throw new Error("Cannot set numRounds with MAC"); + if ("CSHAKE128" === this.s || "CSHAKE256" === this.s) throw new Error("Cannot set numRounds for CSHAKE variants"); + } + switch(this.K = 1, this.m = e(this.t, this.i, this.K), this.R = W, this.g = Q, this.B = J, this.C = J(), this.v = !1, t77){ case "SHA3-224": - _this4.p = s27 = 1152, _this4.U = 224, _this4.L = !0, _this4.T = _this4.k; + this.p = s27 = 1152, this.U = 224, this.L = !0, this.T = this.k; break; case "SHA3-256": - _this4.p = s27 = 1088, _this4.U = 256, _this4.L = !0, _this4.T = _this4.k; + this.p = s27 = 1088, this.U = 256, this.L = !0, this.T = this.k; break; case "SHA3-384": - _this4.p = s27 = 832, _this4.U = 384, _this4.L = !0, _this4.T = _this4.k; + this.p = s27 = 832, this.U = 384, this.L = !0, this.T = this.k; break; case "SHA3-512": - _this4.p = s27 = 576, _this4.U = 512, _this4.L = !0, _this4.T = _this4.k; + this.p = s27 = 576, this.U = 512, this.L = !0, this.T = this.k; break; case "SHAKE128": - i39 = 31, _this4.p = s27 = 1344, _this4.U = -1, _this4.v = !0, _this4.L = !1, _this4.T = null; + i38 = 31, this.p = s27 = 1344, this.U = -1, this.v = !0, this.L = !1, this.T = null; break; case "SHAKE256": - i39 = 31, _this4.p = s27 = 1088, _this4.U = -1, _this4.v = !0, _this4.L = !1, _this4.T = null; + i38 = 31, this.p = s27 = 1088, this.U = -1, this.v = !0, this.L = !1, this.T = null; break; case "KMAC128": - i39 = 4, _this4.p = s27 = 1344, _this4.I(r47), _this4.U = -1, _this4.v = !0, _this4.L = !1, _this4.T = _this4.X; + i38 = 4, this.p = s27 = 1344, this.I(r47), this.U = -1, this.v = !0, this.L = !1, this.T = this.X; break; case "KMAC256": - i39 = 4, _this4.p = s27 = 1088, _this4.I(r47), _this4.U = -1, _this4.v = !0, _this4.L = !1, _this4.T = _this4.X; + i38 = 4, this.p = s27 = 1088, this.I(r47), this.U = -1, this.v = !0, this.L = !1, this.T = this.X; break; case "CSHAKE128": - _this4.p = s27 = 1344, i39 = _this4._(r47), _this4.U = -1, _this4.v = !0, _this4.L = !1, _this4.T = null; + this.p = s27 = 1344, i38 = this._(r47), this.U = -1, this.v = !0, this.L = !1, this.T = null; break; case "CSHAKE256": - _this4.p = s27 = 1088, i39 = _this4._(r47), _this4.U = -1, _this4.v = !0, _this4.L = !1, _this4.T = null; + this.p = s27 = 1088, i38 = this._(r47), this.U = -1, this.v = !0, this.L = !1, this.T = null; break; default: throw new Error(h); } - _this4.F = function(t78, n67, e, r48, o28) { - return function(t79, n68, e, r49, i40, s28, o29) { - var h20, u14, w11 = 0; - var c9 = [], f8 = i40 >>> 5, a7 = n68 >>> 5; - for(h20 = 0; h20 < a7 && n68 >= i40; h20 += f8){ - r49 = W(t79.slice(h20, h20 + f8), r49), n68 -= i40; - } - for(t79 = t79.slice(h20), n68 %= i40; t79.length < f8;){ - t79.push(0); - } - for(h20 = n68 >>> 3, t79[h20 >> 2] ^= s28 << h20 % 4 * 8, t79[f8 - 1] ^= 2147483648, r49 = W(t79, r49); 32 * c9.length < o29 && (u14 = r49[w11 % 5][w11 / 5 | 0], c9.push(u14.N), !(32 * c9.length >= o29));){ - c9.push(u14.Y), w11 += 1, 0 == 64 * w11 % i40 && (W(null, r49), w11 = 0); - } + this.F = function(t78, n67, e, r48, o24) { + return function(t79, n68, e, r49, i39, s28, o25) { + let h20, u14, w11 = 0; + const c9 = [], f7 = i39 >>> 5, a7 = n68 >>> 5; + for(h20 = 0; h20 < a7 && n68 >= i39; h20 += f7)r49 = W(t79.slice(h20, h20 + f7), r49), n68 -= i39; + for(t79 = t79.slice(h20), n68 %= i39; t79.length < f7;)t79.push(0); + for(h20 = n68 >>> 3, t79[h20 >> 2] ^= s28 << h20 % 4 * 8, t79[f7 - 1] ^= 2147483648, r49 = W(t79, r49); 32 * c9.length < o25 && (u14 = r49[w11 % 5][w11 / 5 | 0], c9.push(u14.N), !(32 * c9.length >= o25));)c9.push(u14.Y), w11 += 1, 0 == 64 * w11 % i39 && (W(null, r49), w11 = 0); return c9; - }(t78, n67, 0, r48, s27, i39, o28); - }, o27.hmacKey && _this4.M(c("hmacKey", o27.hmacKey, _this4.K)); - return _this4; - } - _createClass(et1, [ - { - key: "_", - value: function _(t80, n69) { - var e56 = function(t81) { - var n70 = t81 || {}; - return { - funcName: c("funcName", n70.funcName, 1, { - value: [], - binLen: 0 - }), - customization: c("Customization", n70.customization, 1, { - value: [], - binLen: 0 - }) - }; - }(t80 || {}); - n69 && (e56.funcName = n69); - var r50 = u(tt(e56.funcName), tt(e56.customization)); - if (0 !== e56.customization.binLen || 0 !== e56.funcName.binLen) { - var _t = nt(r50, this.p >>> 3); - for(var _n = 0; _n < _t.length; _n += this.p >>> 5){ - this.C = this.R(_t.slice(_n, _n + (this.p >>> 5)), this.C), this.l += this.p; - } - return 4; - } - return 31; - } - }, - { - key: "I", - value: function I(t82) { - var n71 = function(t83) { - var n72 = t83 || {}; - return { - kmacKey: c("kmacKey", n72.kmacKey, 1), - funcName: { - value: [ - 1128353099 - ], - binLen: 32 - }, - customization: c("Customization", n72.customization, 1, { - value: [], - binLen: 0 - }) - }; - }(t82 || {}); - this._(t82, n71.funcName); - var e57 = nt(tt(n71.kmacKey), this.p >>> 3); - for(var _t2 = 0; _t2 < e57.length; _t2 += this.p >>> 5){ - this.C = this.R(e57.slice(_t2, _t2 + (this.p >>> 5)), this.C), this.l += this.p; - } - this.A = !0; - } - }, - { - key: "X", - value: function X(t84) { - var n73 = u({ - value: this.o.slice(), - binLen: this.h - }, function(t85) { - var n74, e58, r51 = 0; - var i41 = [ - 0, - 0 - ], s29 = [ - 4294967295 & t85, - t85 / 4294967296 & 2097151 - ]; - for(n74 = 6; n74 >= 0; n74--){ - e58 = s29[n74 >> 2] >>> 8 * n74 & 255, 0 === e58 && 0 === r51 || (i41[r51 >> 2] |= e58 << 8 * r51, r51 += 1); - } - return r51 = 0 !== r51 ? r51 : 1, i41[r51 >> 2] |= r51 << 8 * r51, { - value: r51 + 1 > 4 ? i41 : [ - i41[0] - ], - binLen: 8 + 8 * r51 - }; - }(t84.outputLen)); - return this.F(n73.value, n73.binLen, this.l, this.g(this.C), t84.outputLen); - } - } - ]); - return et1; -}(f); -var _default = function() { - function _default1(t86, n75, e59) { - _classCallCheck(this, _default1); - if ("SHA-1" == t86) this.O = new K(t86, n75, e59); - else if ("SHA-224" == t86 || "SHA-256" == t86) this.O = new g(t86, n75, e59); - else if ("SHA-384" == t86 || "SHA-512" == t86) this.O = new q(t86, n75, e59); + }(t78, n67, 0, r48, s27, i38, o24); + }, o23.hmacKey && this.M(c("hmacKey", o23.hmacKey, this.K)); + } + _(t80, n69) { + const e56 = function(t81) { + const n70 = t81 || {}; + return { + funcName: c("funcName", n70.funcName, 1, { + value: [], + binLen: 0 + }), + customization: c("Customization", n70.customization, 1, { + value: [], + binLen: 0 + }) + }; + }(t80 || {}); + n69 && (e56.funcName = n69); + const r50 = u(tt(e56.funcName), tt(e56.customization)); + if (0 !== e56.customization.binLen || 0 !== e56.funcName.binLen) { + const t82 = nt(r50, this.p >>> 3); + for(let n71 = 0; n71 < t82.length; n71 += this.p >>> 5)this.C = this.R(t82.slice(n71, n71 + (this.p >>> 5)), this.C), this.l += this.p; + return 4; + } + return 31; + } + I(t84) { + const n72 = function(t85) { + const n73 = t85 || {}; + return { + kmacKey: c("kmacKey", n73.kmacKey, 1), + funcName: { + value: [ + 1128353099 + ], + binLen: 32 + }, + customization: c("Customization", n73.customization, 1, { + value: [], + binLen: 0 + }) + }; + }(t84 || {}); + this._(t84, n72.funcName); + const e57 = nt(tt(n72.kmacKey), this.p >>> 3); + for(let t83 = 0; t83 < e57.length; t83 += this.p >>> 5)this.C = this.R(e57.slice(t83, t83 + (this.p >>> 5)), this.C), this.l += this.p; + this.A = !0; + } + X(t86) { + const n74 = u({ + value: this.o.slice(), + binLen: this.h + }, function(t87) { + let n75, e58, r51 = 0; + const i40 = [ + 0, + 0 + ], s29 = [ + 4294967295 & t87, + t87 / 4294967296 & 2097151 + ]; + for(n75 = 6; n75 >= 0; n75--)e58 = s29[n75 >> 2] >>> 8 * n75 & 255, 0 === e58 && 0 === r51 || (i40[r51 >> 2] |= e58 << 8 * r51, r51 += 1); + return r51 = 0 !== r51 ? r51 : 1, i40[r51 >> 2] |= r51 << 8 * r51, { + value: r51 + 1 > 4 ? i40 : [ + i40[0] + ], + binLen: 8 + 8 * r51 + }; + }(t86.outputLen)); + return this.F(n74.value, n74.binLen, this.l, this.g(this.C), t86.outputLen); + } +} +class jsSHA { + constructor(t88, n76, e59){ + if ("SHA-1" == t88) this.O = new K(t88, n76, e59); + else if ("SHA-224" == t88 || "SHA-256" == t88) this.O = new g(t88, n76, e59); + else if ("SHA-384" == t88 || "SHA-512" == t88) this.O = new q(t88, n76, e59); else { - if ("SHA3-224" != t86 && "SHA3-256" != t86 && "SHA3-384" != t86 && "SHA3-512" != t86 && "SHAKE128" != t86 && "SHAKE256" != t86 && "CSHAKE128" != t86 && "CSHAKE256" != t86 && "KMAC128" != t86 && "KMAC256" != t86) throw new Error(h); - this.O = new et(t86, n75, e59); + if ("SHA3-224" != t88 && "SHA3-256" != t88 && "SHA3-384" != t88 && "SHA3-512" != t88 && "SHAKE128" != t88 && "SHAKE256" != t88 && "CSHAKE128" != t88 && "CSHAKE256" != t88 && "KMAC128" != t88 && "KMAC256" != t88) throw new Error(h); + this.O = new et(t88, n76, e59); } } - _createClass(_default1, [ - { - key: "update", - value: function update(t87) { - this.O.update(t87); - } - }, - { - key: "getHash", - value: function getHash(t88, n76) { - return this.O.getHash(t88, n76); - } - }, - { - key: "setHMACKey", - value: function setHMACKey(t89, n77, e60) { - this.O.setHMACKey(t89, n77, e60); - } - }, - { - key: "getHMAC", - value: function getHMAC(t90, n78) { - return this.O.getHMAC(t90, n78); - } - } - ]); - return _default1; -}(); -var globalThis1 = function() { - if (_typeof(globalThis1) === "object") return globalThis1; + update(t89) { + this.O.update(t89); + } + getHash(t90, n77) { + return this.O.getHash(t90, n77); + } + setHMACKey(t91, n78, e60) { + this.O.setHMACKey(t91, n78, e60); + } + getHMAC(t92, n79) { + return this.O.getHMAC(t92, n79); + } +} +const globalScope = (()=>{ + if (typeof globalThis === "object") return globalThis; else { Object.defineProperty(Object.prototype, "__GLOBALTHIS__", { - get: function get() { + get () { return this; }, configurable: true @@ -16545,12 +18732,11 @@ var globalThis1 = function() { else if (typeof window !== "undefined") return window; else if (typeof global !== "undefined") return global; return undefined; -}(); -var isNode = Object.prototype.toString.call(globalThis1.process) === "[object process]"; -var nodeRequire = isNode ? eval("require") : function() {}; -var NodeBuffer$1 = isNode ? globalThis1.Buffer : undefined; -var NodeCrypto$2 = isNode ? nodeRequire("crypto") : undefined; -var OPENSSL_TO_JSSHA_ALGO = { +})(); +const isNode = Object.prototype.toString.call(globalScope.process) === "[object process]"; +const nodeRequire = isNode ? eval("require") : ()=>{}; +const NodeCrypto$2 = isNode ? nodeRequire("crypto") : undefined; +const OPENSSL_TO_JSSHA_ALGO = { SHA1: "SHA-1", SHA224: "SHA-224", SHA256: "SHA-256", @@ -16561,232 +18747,210 @@ var OPENSSL_TO_JSSHA_ALGO = { "SHA3-384": "SHA3-384", "SHA3-512": "SHA3-512" }; -var hmacDigest = function hmacDigest(algorithm, key30, message) { +const hmacDigest = (algorithm, key32, message)=>{ if (isNode) { - var hmac = NodeCrypto$2.createHmac(algorithm, NodeBuffer$1.from(key30)); - hmac.update(NodeBuffer$1.from(message)); + const hmac = NodeCrypto$2.createHmac(algorithm, globalScope.Buffer.from(key32)); + hmac.update(globalScope.Buffer.from(message)); return hmac.digest().buffer; } else { - var variant = OPENSSL_TO_JSSHA_ALGO[algorithm.toUpperCase()]; + const variant = OPENSSL_TO_JSSHA_ALGO[algorithm.toUpperCase()]; if (typeof variant === "undefined") { throw new TypeError("Unknown hash function"); } - var _hmac = new _default(variant, "ARRAYBUFFER"); - _hmac.setHMACKey(key30, "ARRAYBUFFER"); - _hmac.update(message); - return _hmac.getHMAC("ARRAYBUFFER"); + const hmac = new jsSHA(variant, "ARRAYBUFFER"); + hmac.setHMACKey(key32, "ARRAYBUFFER"); + hmac.update(message); + return hmac.getHMAC("ARRAYBUFFER"); } }; -var pad = function pad(num, digits1) { - var prefix = ""; - var repeat = digits1 - String(num).length; - while(repeat-- > 0){ - prefix += "0"; - } - return "".concat(prefix).concat(num); +const pad = (num, digits1)=>{ + let prefix = ""; + let repeat = digits1 - String(num).length; + while(repeat-- > 0)prefix += "0"; + return `${prefix}${num}`; }; -var ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"; -var base32ToBuf = function base32ToBuf(str15) { - var cstr = str15.toUpperCase().replace(/=+$/, ""); - var buf = new ArrayBuffer(cstr.length * 5 / 8 | 0); - var arr = new Uint8Array(buf); - var bits = 0; - var value59 = 0; - var index = 0; - for(var i42 = 0; i42 < cstr.length; i42++){ - var idx = ALPHABET.indexOf(cstr[i42]); - if (idx === -1) throw new TypeError("Invalid character found: ".concat(cstr[i42])); - value59 = value59 << 5 | idx; +const ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"; +const base32ToBuf = (str14)=>{ + let end = str14.length; + while(str14[end - 1] === "=")--end; + const cstr = (end < str14.length ? str14.substring(0, end) : str14).toUpperCase(); + const buf = new ArrayBuffer(cstr.length * 5 / 8 | 0); + const arr = new Uint8Array(buf); + let bits = 0; + let value64 = 0; + let index = 0; + for(let i41 = 0; i41 < cstr.length; i41++){ + const idx = ALPHABET.indexOf(cstr[i41]); + if (idx === -1) throw new TypeError(`Invalid character found: ${cstr[i41]}`); + value64 = value64 << 5 | idx; bits += 5; if (bits >= 8) { - arr[index++] = value59 >>> bits - 8 & 255; bits -= 8; + arr[index++] = value64 >>> bits; } } return buf; }; -var base32FromBuf = function base32FromBuf(buf) { - var arr = new Uint8Array(buf); - var bits = 0; - var value60 = 0; - var str16 = ""; - for(var i43 = 0; i43 < arr.length; i43++){ - value60 = value60 << 8 | arr[i43]; +const base32FromBuf = (buf)=>{ + const arr = new Uint8Array(buf); + let bits = 0; + let value65 = 0; + let str15 = ""; + for(let i42 = 0; i42 < arr.length; i42++){ + value65 = value65 << 8 | arr[i42]; bits += 8; while(bits >= 5){ - str16 += ALPHABET[value60 >>> bits - 5 & 31]; + str15 += ALPHABET[value65 >>> bits - 5 & 31]; bits -= 5; } } if (bits > 0) { - str16 += ALPHABET[value60 << 5 - bits & 31]; + str15 += ALPHABET[value65 << 5 - bits & 31]; } - return str16; + return str15; }; -var hexToBuf = function hexToBuf(str17) { - var buf = new ArrayBuffer(str17.length / 2); - var arr = new Uint8Array(buf); - for(var i44 = 0; i44 < str17.length; i44 += 2){ - arr[i44 / 2] = parseInt(str17.substr(i44, 2), 16); +const hexToBuf = (str16)=>{ + const buf = new ArrayBuffer(str16.length / 2); + const arr = new Uint8Array(buf); + for(let i43 = 0; i43 < str16.length; i43 += 2){ + arr[i43 / 2] = parseInt(str16.substr(i43, 2), 16); } return buf; }; -var hexFromBuf = function hexFromBuf(buf) { - var arr = new Uint8Array(buf); - var str18 = ""; - for(var i45 = 0; i45 < arr.length; i45++){ - var hex = arr[i45].toString(16); - if (hex.length === 1) str18 += "0"; - str18 += hex; - } - return str18.toUpperCase(); +const hexFromBuf = (buf)=>{ + const arr = new Uint8Array(buf); + let str17 = ""; + for(let i44 = 0; i44 < arr.length; i44++){ + const hex = arr[i44].toString(16); + if (hex.length === 1) str17 += "0"; + str17 += hex; + } + return str17.toUpperCase(); }; -var latin1ToBuf = function latin1ToBuf(str19) { - var buf = new ArrayBuffer(str19.length); - var arr = new Uint8Array(buf); - for(var i46 = 0; i46 < str19.length; i46++){ - arr[i46] = str19.charCodeAt(i46) & 0xff; +const latin1ToBuf = (str18)=>{ + const buf = new ArrayBuffer(str18.length); + const arr = new Uint8Array(buf); + for(let i45 = 0; i45 < str18.length; i45++){ + arr[i45] = str18.charCodeAt(i45) & 0xff; } return buf; }; -var latin1FromBuf = function latin1FromBuf(buf) { - var arr = new Uint8Array(buf); - var str20 = ""; - for(var i47 = 0; i47 < arr.length; i47++){ - str20 += String.fromCharCode(arr[i47]); +const latin1FromBuf = (buf)=>{ + const arr = new Uint8Array(buf); + let str19 = ""; + for(let i46 = 0; i46 < arr.length; i46++){ + str19 += String.fromCharCode(arr[i46]); } - return str20; + return str19; }; -var ENCODER = globalThis1.TextEncoder ? new globalThis1.TextEncoder("utf-8") : null; -var DECODER = globalThis1.TextDecoder ? new globalThis1.TextDecoder("utf-8") : null; -var utf8ToBuf = function utf8ToBuf(str21) { +const ENCODER = globalScope.TextEncoder ? new globalScope.TextEncoder("utf-8") : null; +const DECODER = globalScope.TextDecoder ? new globalScope.TextDecoder("utf-8") : null; +const utf8ToBuf = (str20)=>{ if (!ENCODER) { throw new Error("Encoding API not available"); } - return ENCODER.encode(str21).buffer; + return ENCODER.encode(str20).buffer; }; -var utf8FromBuf = function utf8FromBuf(buf) { +const utf8FromBuf = (buf)=>{ if (!DECODER) { throw new Error("Encoding API not available"); } return DECODER.decode(buf); }; -var NodeCrypto$1 = isNode ? nodeRequire("crypto") : undefined; -var BrowserCrypto = !isNode ? globalThis1.crypto || globalThis1.msCrypto : undefined; -var randomBytes = function randomBytes(size) { +const NodeCrypto$1 = isNode ? nodeRequire("crypto") : undefined; +const randomBytes = (size)=>{ if (isNode) { return NodeCrypto$1.randomBytes(size).buffer; } else { - if (!BrowserCrypto || !BrowserCrypto.getRandomValues) { + if (!globalScope.crypto || !globalScope.crypto.getRandomValues) { throw new Error("Cryptography API not available"); } - return BrowserCrypto.getRandomValues(new Uint8Array(size)).buffer; + return globalScope.crypto.getRandomValues(new Uint8Array(size)).buffer; } }; -var Secret = function() { - function Secret1() { - var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, buffer8 = _ref.buffer, _ref$size = _ref.size, size = _ref$size === void 0 ? 20 : _ref$size; - _classCallCheck(this, Secret1); +class Secret { + constructor(){ + let { buffer: buffer8 , size =20 } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; this.buffer = typeof buffer8 === "undefined" ? randomBytes(size) : buffer8; } - _createClass(Secret1, [ - { - key: "latin1", - get: function get() { - Object.defineProperty(this, "latin1", { - enumerable: true, - value: latin1FromBuf(this.buffer) - }); - return this.latin1; - } - }, - { - key: "utf8", - get: function get() { - Object.defineProperty(this, "utf8", { - enumerable: true, - value: utf8FromBuf(this.buffer) - }); - return this.utf8; - } - }, - { - key: "base32", - get: function get() { - Object.defineProperty(this, "base32", { - enumerable: true, - value: base32FromBuf(this.buffer) - }); - return this.base32; - } - }, - { - key: "hex", - get: function get() { - Object.defineProperty(this, "hex", { - enumerable: true, - value: hexFromBuf(this.buffer) - }); - return this.hex; - } - } - ], [ - { - key: "fromLatin1", - value: function fromLatin1(str22) { - return new Secret1({ - buffer: latin1ToBuf(str22) - }); - } - }, - { - key: "fromUTF8", - value: function fromUTF8(str23) { - return new Secret1({ - buffer: utf8ToBuf(str23) - }); - } - }, - { - key: "fromBase32", - value: function fromBase32(str24) { - return new Secret1({ - buffer: base32ToBuf(str24) - }); - } - }, - { - key: "fromHex", - value: function fromHex(str25) { - return new Secret1({ - buffer: hexToBuf(str25) - }); - } - } - ]); - return Secret1; -}(); -var NodeBuffer = isNode ? globalThis1.Buffer : undefined; -var NodeCrypto = isNode ? nodeRequire("crypto") : undefined; -var timingSafeEqual = function timingSafeEqual(a8, b1) { + static fromLatin1(str21) { + return new Secret({ + buffer: latin1ToBuf(str21) + }); + } + static fromUTF8(str22) { + return new Secret({ + buffer: utf8ToBuf(str22) + }); + } + static fromBase32(str23) { + return new Secret({ + buffer: base32ToBuf(str23) + }); + } + static fromHex(str24) { + return new Secret({ + buffer: hexToBuf(str24) + }); + } + get latin1() { + Object.defineProperty(this, "latin1", { + enumerable: true, + value: latin1FromBuf(this.buffer) + }); + return this.latin1; + } + get utf8() { + Object.defineProperty(this, "utf8", { + enumerable: true, + value: utf8FromBuf(this.buffer) + }); + return this.utf8; + } + get base32() { + Object.defineProperty(this, "base32", { + enumerable: true, + value: base32FromBuf(this.buffer) + }); + return this.base32; + } + get hex() { + Object.defineProperty(this, "hex", { + enumerable: true, + value: hexFromBuf(this.buffer) + }); + return this.hex; + } +} +const NodeCrypto = isNode ? nodeRequire("crypto") : undefined; +const timingSafeEqual1 = (a8, b1)=>{ if (isNode) { - return NodeCrypto.timingSafeEqual(NodeBuffer.from(a8), NodeBuffer.from(b1)); + return NodeCrypto.timingSafeEqual(globalScope.Buffer.from(a8), globalScope.Buffer.from(b1)); } else { if (a8.length !== b1.length) { throw new TypeError("Input strings must have the same length"); } - var i48 = -1; - var out = 0; - while(++i48 < a8.length){ - out |= a8.charCodeAt(i48) ^ b1.charCodeAt(i48); + let i47 = -1; + let out = 0; + while(++i47 < a8.length){ + out |= a8.charCodeAt(i47) ^ b1.charCodeAt(i47); } return out === 0; } }; -var HOTP = function() { - function HOTP1() { - var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref$issuer = _ref.issuer, issuer = _ref$issuer === void 0 ? HOTP1.defaults.issuer : _ref$issuer, _ref$label = _ref.label, label = _ref$label === void 0 ? HOTP1.defaults.label : _ref$label, _ref$secret = _ref.secret, secret1 = _ref$secret === void 0 ? new Secret() : _ref$secret, _ref$algorithm = _ref.algorithm, algorithm = _ref$algorithm === void 0 ? HOTP1.defaults.algorithm : _ref$algorithm, _ref$digits = _ref.digits, digits2 = _ref$digits === void 0 ? HOTP1.defaults.digits : _ref$digits, _ref$counter = _ref.counter, counter = _ref$counter === void 0 ? HOTP1.defaults.counter : _ref$counter; - _classCallCheck(this, HOTP1); +class HOTP { + static get defaults() { + return { + issuer: "", + label: "OTPAuth", + algorithm: "SHA1", + digits: 6, + counter: 0, + window: 1 + }; + } + constructor(){ + let { issuer =HOTP.defaults.issuer , label =HOTP.defaults.label , secret: secret1 = new Secret() , algorithm =HOTP.defaults.algorithm , digits: digits2 = HOTP.defaults.digits , counter =HOTP.defaults.counter } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; this.issuer = issuer; this.label = label; this.secret = typeof secret1 === "string" ? Secret.fromBase32(secret1) : secret1; @@ -16794,91 +18958,68 @@ var HOTP = function() { this.digits = digits2; this.counter = counter; } - _createClass(HOTP1, [ - { - key: "generate", - value: function generate() { - var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref2$counter = _ref2.counter, counter = _ref2$counter === void 0 ? this.counter++ : _ref2$counter; - return HOTP1.generate({ - secret: this.secret, - algorithm: this.algorithm, - digits: this.digits, - counter: counter - }); - } - }, - { - key: "validate", - value: function validate(_ref3) { - var token = _ref3.token, _ref3$counter = _ref3.counter, counter = _ref3$counter === void 0 ? this.counter : _ref3$counter, window = _ref3.window; - return HOTP1.validate({ - token: token, - secret: this.secret, - algorithm: this.algorithm, - digits: this.digits, - counter: counter, - window: window - }); - } - }, - { - key: "toString", - value: function toString() { - var e61 = encodeURIComponent; - return "otpauth://hotp/" + "".concat(this.issuer.length > 0 ? "".concat(e61(this.issuer), ":").concat(e61(this.label), "?issuer=").concat(e61(this.issuer), "&") : "".concat(e61(this.label), "?")) + "secret=".concat(e61(this.secret.base32), "&") + "algorithm=".concat(e61(this.algorithm), "&") + "digits=".concat(e61(this.digits), "&") + "counter=".concat(e61(this.counter)); - } - } - ], [ - { - key: "defaults", - get: function get() { - return { - issuer: "", - label: "OTPAuth", - algorithm: "SHA1", - digits: 6, - counter: 0, - window: 1 - }; - } - }, - { - key: "generate", - value: function generate(_ref4) { - var secret2 = _ref4.secret, _ref4$algorithm = _ref4.algorithm, algorithm = _ref4$algorithm === void 0 ? HOTP1.defaults.algorithm : _ref4$algorithm, _ref4$digits = _ref4.digits, digits3 = _ref4$digits === void 0 ? HOTP1.defaults.digits : _ref4$digits, _ref4$counter = _ref4.counter, counter = _ref4$counter === void 0 ? HOTP1.defaults.counter : _ref4$counter; - var digest5 = new Uint8Array(hmacDigest(algorithm, secret2.buffer, uintToBuf(counter))); - var offset2 = digest5[digest5.byteLength - 1] & 15; - var otp = ((digest5[offset2] & 127) << 24 | (digest5[offset2 + 1] & 255) << 16 | (digest5[offset2 + 2] & 255) << 8 | digest5[offset2 + 3] & 255) % Math.pow(10, digits3); - return pad(otp, digits3); - } - }, - { - key: "validate", - value: function validate(_ref5) { - var token = _ref5.token, secret3 = _ref5.secret, algorithm = _ref5.algorithm, digits4 = _ref5.digits, _ref5$counter = _ref5.counter, counter = _ref5$counter === void 0 ? HOTP1.defaults.counter : _ref5$counter, _ref5$window = _ref5.window, window = _ref5$window === void 0 ? HOTP1.defaults.window : _ref5$window; - if (token.length !== digits4) return null; - var delta = null; - for(var i49 = counter - window; i49 <= counter + window; ++i49){ - var generatedToken = HOTP1.generate({ - secret: secret3, - algorithm: algorithm, - digits: digits4, - counter: i49 - }); - if (timingSafeEqual(token, generatedToken)) { - delta = i49 - counter; - } - } - return delta; + static generate(_ref) { + let { secret: secret2 , algorithm =HOTP.defaults.algorithm , digits: digits3 = HOTP.defaults.digits , counter =HOTP.defaults.counter } = _ref; + const digest5 = new Uint8Array(hmacDigest(algorithm, secret2.buffer, uintToBuf(counter))); + const offset2 = digest5[digest5.byteLength - 1] & 15; + const otp = ((digest5[offset2] & 127) << 24 | (digest5[offset2 + 1] & 255) << 16 | (digest5[offset2 + 2] & 255) << 8 | digest5[offset2 + 3] & 255) % 10 ** digits3; + return pad(otp, digits3); + } + generate() { + let { counter =this.counter++ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + return HOTP.generate({ + secret: this.secret, + algorithm: this.algorithm, + digits: this.digits, + counter + }); + } + static validate(_ref2) { + let { token , secret: secret3 , algorithm , digits: digits4 , counter =HOTP.defaults.counter , window =HOTP.defaults.window } = _ref2; + if (token.length !== digits4) return null; + let delta = null; + for(let i48 = counter - window; i48 <= counter + window; ++i48){ + const generatedToken = HOTP.generate({ + secret: secret3, + algorithm, + digits: digits4, + counter: i48 + }); + if (timingSafeEqual1(token, generatedToken)) { + delta = i48 - counter; } } - ]); - return HOTP1; -}(); -var TOTP = function() { - function TOTP1() { - var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref$issuer = _ref.issuer, issuer = _ref$issuer === void 0 ? TOTP1.defaults.issuer : _ref$issuer, _ref$label = _ref.label, label = _ref$label === void 0 ? TOTP1.defaults.label : _ref$label, _ref$secret = _ref.secret, secret4 = _ref$secret === void 0 ? new Secret() : _ref$secret, _ref$algorithm = _ref.algorithm, algorithm = _ref$algorithm === void 0 ? TOTP1.defaults.algorithm : _ref$algorithm, _ref$digits = _ref.digits, digits5 = _ref$digits === void 0 ? TOTP1.defaults.digits : _ref$digits, _ref$period = _ref.period, period = _ref$period === void 0 ? TOTP1.defaults.period : _ref$period; - _classCallCheck(this, TOTP1); + return delta; + } + validate(_ref3) { + let { token , counter =this.counter , window } = _ref3; + return HOTP.validate({ + token, + secret: this.secret, + algorithm: this.algorithm, + digits: this.digits, + counter, + window + }); + } + toString() { + const e61 = encodeURIComponent; + return "otpauth://hotp/" + `${this.issuer.length > 0 ? `${e61(this.issuer)}:${e61(this.label)}?issuer=${e61(this.issuer)}&` : `${e61(this.label)}?`}` + `secret=${e61(this.secret.base32)}&` + `algorithm=${e61(this.algorithm)}&` + `digits=${e61(this.digits)}&` + `counter=${e61(this.counter)}`; + } +} +class TOTP { + static get defaults() { + return { + issuer: "", + label: "OTPAuth", + algorithm: "SHA1", + digits: 6, + period: 30, + window: 1 + }; + } + constructor(){ + let { issuer =TOTP.defaults.issuer , label =TOTP.defaults.label , secret: secret4 = new Secret() , algorithm =TOTP.defaults.algorithm , digits: digits5 = TOTP.defaults.digits , period =TOTP.defaults.period } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; this.issuer = issuer; this.label = label; this.secret = typeof secret4 === "string" ? Secret.fromBase32(secret4) : secret4; @@ -16886,180 +19027,136 @@ var TOTP = function() { this.digits = digits5; this.period = period; } - _createClass(TOTP1, [ - { - key: "generate", - value: function generate() { - var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref2$timestamp = _ref2.timestamp, timestamp1 = _ref2$timestamp === void 0 ? Date.now() : _ref2$timestamp; - return TOTP1.generate({ - secret: this.secret, - algorithm: this.algorithm, - digits: this.digits, - period: this.period, - timestamp: timestamp1 - }); - } - }, - { - key: "validate", - value: function validate(_ref3) { - var token = _ref3.token, timestamp2 = _ref3.timestamp, window = _ref3.window; - return TOTP1.validate({ - token: token, - secret: this.secret, - algorithm: this.algorithm, - digits: this.digits, - period: this.period, - timestamp: timestamp2, - window: window - }); + static generate(_ref) { + let { secret: secret5 , algorithm , digits: digits6 , period =TOTP.defaults.period , timestamp: timestamp1 = Date.now() } = _ref; + return HOTP.generate({ + secret: secret5, + algorithm, + digits: digits6, + counter: Math.floor(timestamp1 / 1000 / period) + }); + } + generate() { + let { timestamp: timestamp2 = Date.now() } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + return TOTP.generate({ + secret: this.secret, + algorithm: this.algorithm, + digits: this.digits, + period: this.period, + timestamp: timestamp2 + }); + } + static validate(_ref2) { + let { token , secret: secret6 , algorithm , digits: digits7 , period =TOTP.defaults.period , timestamp: timestamp3 = Date.now() , window } = _ref2; + return HOTP.validate({ + token, + secret: secret6, + algorithm, + digits: digits7, + counter: Math.floor(timestamp3 / 1000 / period), + window + }); + } + validate(_ref3) { + let { token , timestamp: timestamp4 , window } = _ref3; + return TOTP.validate({ + token, + secret: this.secret, + algorithm: this.algorithm, + digits: this.digits, + period: this.period, + timestamp: timestamp4, + window + }); + } + toString() { + const e62 = encodeURIComponent; + return "otpauth://totp/" + `${this.issuer.length > 0 ? `${e62(this.issuer)}:${e62(this.label)}?issuer=${e62(this.issuer)}&` : `${e62(this.label)}?`}` + `secret=${e62(this.secret.base32)}&` + `algorithm=${e62(this.algorithm)}&` + `digits=${e62(this.digits)}&` + `period=${e62(this.period)}`; + } +} +const OTPURI_REGEX = /^otpauth:\/\/([ht]otp)\/(.+)\?([A-Z0-9.~_-]+=[^?&]*(?:&[A-Z0-9.~_-]+=[^?&]*)*)$/i; +const SECRET_REGEX = /^[2-7A-Z]+=*$/i; +const ALGORITHM_REGEX = /^SHA(?:1|224|256|384|512|3-224|3-256|3-384|3-512)$/i; +const INTEGER_REGEX = /^[+-]?\d+$/; +const POSITIVE_INTEGER_REGEX = /^\+?[1-9]\d*$/; +class URI { + static parse(uri) { + let uriGroups; + try { + uriGroups = uri.match(OTPURI_REGEX); + } catch (error) {} + if (!Array.isArray(uriGroups)) { + throw new URIError("Invalid URI format"); + } + const uriType = uriGroups[1].toLowerCase(); + const uriLabel = uriGroups[2].split(/(?::|%3A) *(.+)/i, 2).map(decodeURIComponent); + const uriParams = uriGroups[3].split("&").reduce((acc, cur)=>{ + const pairArr = cur.split(/=(.*)/, 2).map(decodeURIComponent); + const pairKey = pairArr[0].toLowerCase(); + const pairVal = pairArr[1]; + const pairAcc = acc; + pairAcc[pairKey] = pairVal; + return pairAcc; + }, {}); + let OTP; + const config = {}; + if (uriType === "hotp") { + OTP = HOTP; + if (typeof uriParams.counter !== "undefined" && INTEGER_REGEX.test(uriParams.counter)) { + config.counter = parseInt(uriParams.counter, 10); + } else { + throw new TypeError("Missing or invalid 'counter' parameter"); } - }, - { - key: "toString", - value: function toString() { - var e62 = encodeURIComponent; - return "otpauth://totp/" + "".concat(this.issuer.length > 0 ? "".concat(e62(this.issuer), ":").concat(e62(this.label), "?issuer=").concat(e62(this.issuer), "&") : "".concat(e62(this.label), "?")) + "secret=".concat(e62(this.secret.base32), "&") + "algorithm=".concat(e62(this.algorithm), "&") + "digits=".concat(e62(this.digits), "&") + "period=".concat(e62(this.period)); + } else if (uriType === "totp") { + OTP = TOTP; + if (typeof uriParams.period !== "undefined") { + if (POSITIVE_INTEGER_REGEX.test(uriParams.period)) { + config.period = parseInt(uriParams.period, 10); + } else { + throw new TypeError("Invalid 'period' parameter"); + } } + } else { + throw new TypeError("Unknown OTP type"); } - ], [ - { - key: "defaults", - get: function get() { - return { - issuer: "", - label: "OTPAuth", - algorithm: "SHA1", - digits: 6, - period: 30, - window: 1 - }; - } - }, - { - key: "generate", - value: function generate(_ref4) { - var secret5 = _ref4.secret, algorithm = _ref4.algorithm, digits6 = _ref4.digits, _ref4$period = _ref4.period, period = _ref4$period === void 0 ? TOTP1.defaults.period : _ref4$period, _ref4$timestamp = _ref4.timestamp, timestamp3 = _ref4$timestamp === void 0 ? Date.now() : _ref4$timestamp; - return HOTP.generate({ - secret: secret5, - algorithm: algorithm, - digits: digits6, - counter: Math.floor(timestamp3 / 1000 / period) - }); - } - }, - { - key: "validate", - value: function validate(_ref5) { - var token = _ref5.token, secret6 = _ref5.secret, algorithm = _ref5.algorithm, digits7 = _ref5.digits, _ref5$period = _ref5.period, period = _ref5$period === void 0 ? TOTP1.defaults.period : _ref5$period, _ref5$timestamp = _ref5.timestamp, timestamp4 = _ref5$timestamp === void 0 ? Date.now() : _ref5$timestamp, window = _ref5.window; - return HOTP.validate({ - token: token, - secret: secret6, - algorithm: algorithm, - digits: digits7, - counter: Math.floor(timestamp4 / 1000 / period), - window: window - }); + if (uriLabel.length === 2) { + config.label = uriLabel[1]; + config.issuer = uriLabel[0]; + } else { + config.label = uriLabel[0]; + if (typeof uriParams.issuer !== "undefined") { + config.issuer = uriParams.issuer; } } - ]); - return TOTP1; -}(); -var OTPURI_REGEX = /^otpauth:\/\/([ht]otp)\/(.+)\?([A-Z0-9.~_-]+=[^?&]*(?:&[A-Z0-9.~_-]+=[^?&]*)*)$/i; -var SECRET_REGEX = /^[2-7A-Z]+=*$/i; -var ALGORITHM_REGEX = /^SHA(?:1|224|256|384|512|3-224|3-256|3-384|3-512)$/i; -var INTEGER_REGEX = /^[+-]?\d+$/; -var POSITIVE_INTEGER_REGEX = /^\+?[1-9]\d*$/; -var URI = function() { - function URI1() { - _classCallCheck(this, URI1); - } - _createClass(URI1, null, [ - { - key: "parse", - value: function parse(uri) { - var uriGroups; - try { - uriGroups = uri.match(OTPURI_REGEX); - } catch (error) {} - if (!Array.isArray(uriGroups)) { - throw new URIError("Invalid URI format"); - } - var uriType = uriGroups[1].toLowerCase(); - var uriLabel = uriGroups[2].split(/(?::|%3A) *(.+)/i, 2).map(decodeURIComponent); - var uriParams = uriGroups[3].split("&").reduce(function(acc, cur) { - var pairArr = cur.split(/=(.*)/, 2).map(decodeURIComponent); - var pairKey = pairArr[0].toLowerCase(); - var pairVal = pairArr[1]; - var pairAcc = acc; - pairAcc[pairKey] = pairVal; - return pairAcc; - }, {}); - var OTP; - var config = {}; - if (uriType === "hotp") { - OTP = HOTP; - if (typeof uriParams.counter !== "undefined" && INTEGER_REGEX.test(uriParams.counter)) { - config.counter = parseInt(uriParams.counter, 10); - } else { - throw new TypeError("Missing or invalid 'counter' parameter"); - } - } else if (uriType === "totp") { - OTP = TOTP; - if (typeof uriParams.period !== "undefined") { - if (POSITIVE_INTEGER_REGEX.test(uriParams.period)) { - config.period = parseInt(uriParams.period, 10); - } else { - throw new TypeError("Invalid 'period' parameter"); - } - } - } else { - throw new TypeError("Unknown OTP type"); - } - if (uriLabel.length === 2) { - config.label = uriLabel[1]; - config.issuer = uriLabel[0]; - } else { - config.label = uriLabel[0]; - if (typeof uriParams.issuer !== "undefined") { - config.issuer = uriParams.issuer; - } - } - if (typeof uriParams.secret !== "undefined" && SECRET_REGEX.test(uriParams.secret)) { - config.secret = uriParams.secret; - } else { - throw new TypeError("Missing or invalid 'secret' parameter"); - } - if (typeof uriParams.algorithm !== "undefined") { - if (ALGORITHM_REGEX.test(uriParams.algorithm)) { - config.algorithm = uriParams.algorithm; - } else { - throw new TypeError("Invalid 'algorithm' parameter"); - } - } - if (typeof uriParams.digits !== "undefined") { - if (POSITIVE_INTEGER_REGEX.test(uriParams.digits)) { - config.digits = parseInt(uriParams.digits, 10); - } else { - throw new TypeError("Invalid 'digits' parameter"); - } - } - return new OTP(config); + if (typeof uriParams.secret !== "undefined" && SECRET_REGEX.test(uriParams.secret)) { + config.secret = uriParams.secret; + } else { + throw new TypeError("Missing or invalid 'secret' parameter"); + } + if (typeof uriParams.algorithm !== "undefined") { + if (ALGORITHM_REGEX.test(uriParams.algorithm)) { + config.algorithm = uriParams.algorithm; + } else { + throw new TypeError("Invalid 'algorithm' parameter"); } - }, - { - key: "stringify", - value: function stringify(otp) { - if (otp instanceof HOTP || otp instanceof TOTP) { - return otp.toString(); - } - throw new TypeError("Invalid 'HOTP/TOTP' object"); + } + if (typeof uriParams.digits !== "undefined") { + if (POSITIVE_INTEGER_REGEX.test(uriParams.digits)) { + config.digits = parseInt(uriParams.digits, 10); + } else { + throw new TypeError("Invalid 'digits' parameter"); } } - ]); - return URI1; -}(); -var version = "7.1.3"; + return new OTP(config); + } + static stringify(otp) { + if (otp instanceof HOTP || otp instanceof TOTP) { + return otp.toString(); + } + throw new TypeError("Invalid 'HOTP/TOTP' object"); + } +} +const version = "8.0.2"; const mod7 = { HOTP: HOTP, Secret: Secret, @@ -17068,7 +19165,7 @@ const mod7 = { version: version }; const importMeta = { - url: "https://deno.land/x/denomailer@1.1.0/client/worker/worker.ts", + url: "https://raw.githubusercontent.com/andre-dietrich/denomailer/main/client/worker/worker.ts", main: false }; class SMTPWorker { @@ -17180,7 +19277,7 @@ class SMTPWorker { class SMTPWorkerPool { pool = []; constructor(config){ - for(let i56 = 0; i56 < config.pool.size; i56++){ + for(let i55 = 0; i55 < config.pool.size; i55++){ this.pool.push(new SMTPWorker(config)); } } @@ -17190,7 +19287,7 @@ class SMTPWorkerPool { return this.pool[this.#lastUsed].send(mail); } close() { - this.pool.forEach((v4)=>v4.close()); + this.pool.forEach((v12)=>v12.close()); } } class DenoStdInternalError1 extends Error { @@ -17199,15 +19296,15 @@ class DenoStdInternalError1 extends Error { this.name = "DenoStdInternalError"; } } -function assert2(expr, msg = "") { +function assert3(expr, msg = "") { if (!expr) { throw new DenoStdInternalError1(msg); } } function concat1(...buf) { let length = 0; - for (const b12 of buf){ - length += b12.length; + for (const b14 of buf){ + length += b14.length; } const output = new Uint8Array(length); let index = 0; @@ -17275,13 +19372,13 @@ class BufReader2 { if (this.#w >= this.#buf.byteLength) { throw Error("bufio: tried to fill full buffer"); } - for(let i57 = 100; i57 > 0; i57--){ + for(let i56 = 100; i56 > 0; i56--){ const rr = await this.#rd.read(this.#buf.subarray(this.#w)); if (rr === null) { this.#eof = true; return; } - assert2(rr >= 0, "negative read"); + assert3(rr >= 0, "negative read"); this.#w += rr; if (rr > 0) { return; @@ -17297,32 +19394,32 @@ class BufReader2 { this.#rd = rd; this.#eof = false; }; - async read(p24) { - let rr = p24.byteLength; - if (p24.byteLength === 0) return rr; + async read(p25) { + let rr = p25.byteLength; + if (p25.byteLength === 0) return rr; if (this.#r === this.#w) { - if (p24.byteLength >= this.#buf.byteLength) { - const rr = await this.#rd.read(p24); + if (p25.byteLength >= this.#buf.byteLength) { + const rr = await this.#rd.read(p25); const nread = rr ?? 0; - assert2(nread >= 0, "negative read"); + assert3(nread >= 0, "negative read"); return rr; } this.#r = 0; this.#w = 0; rr = await this.#rd.read(this.#buf); if (rr === 0 || rr === null) return rr; - assert2(rr >= 0, "negative read"); + assert3(rr >= 0, "negative read"); this.#w += rr; } - const copied = copy1(this.#buf.subarray(this.#r, this.#w), p24, 0); + const copied = copy1(this.#buf.subarray(this.#r, this.#w), p25, 0); this.#r += copied; return copied; } - async readFull(p25) { + async readFull(p26) { let bytesRead = 0; - while(bytesRead < p25.length){ + while(bytesRead < p26.length){ try { - const rr = await this.read(p25.subarray(bytesRead)); + const rr = await this.read(p26.subarray(bytesRead)); if (rr === null) { if (bytesRead === 0) { return null; @@ -17333,10 +19430,10 @@ class BufReader2 { bytesRead += rr; } catch (err) { if (err instanceof PartialReadError1) { - err.partial = p25.subarray(0, bytesRead); + err.partial = p26.subarray(0, bytesRead); } else if (err instanceof Error) { const e63 = new PartialReadError1(); - e63.partial = p25.subarray(0, bytesRead); + e63.partial = p26.subarray(0, bytesRead); e63.stack = err.stack; e63.message = err.message; e63.cause = err.cause; @@ -17345,7 +19442,7 @@ class BufReader2 { throw err; } } - return p25; + return p26; } async readByte() { while(this.#r === this.#w){ @@ -17375,14 +19472,14 @@ class BufReader2 { let partial; if (err instanceof PartialReadError1) { partial = err.partial; - assert2(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + assert3(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); } if (!(err instanceof BufferFullError2)) { throw err; } partial = err.partial; if (!this.#eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR3) { - assert2(this.#r > 0, "bufio: tried to rewind past start of buffer"); + assert3(this.#r > 0, "bufio: tried to rewind past start of buffer"); this.#r--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -17418,11 +19515,11 @@ class BufReader2 { let s30 = 0; let slice; while(true){ - let i58 = this.#buf.subarray(this.#r + s30, this.#w).indexOf(delim); - if (i58 >= 0) { - i58 += s30; - slice = this.#buf.subarray(this.#r, this.#r + i58 + 1); - this.#r += i58 + 1; + let i57 = this.#buf.subarray(this.#r + s30, this.#w).indexOf(delim); + if (i57 >= 0) { + i57 += s30; + slice = this.#buf.subarray(this.#r, this.#r + i57 + 1); + this.#r += i57 + 1; break; } if (this.#eof) { @@ -17527,10 +19624,10 @@ class BufWriter1 extends AbstractBufBase1 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p26 = this.buf.subarray(0, this.usedBufferBytes); + const p27 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p26.length){ - nwritten += await this.#writer.write(p26.subarray(nwritten)); + while(nwritten < p27.length){ + nwritten += await this.#writer.write(p27.subarray(nwritten)); } } catch (e66) { if (e66 instanceof Error) { @@ -17541,15 +19638,15 @@ class BufWriter1 extends AbstractBufBase1 { this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - async write(data15) { + async write(data14) { if (this.err !== null) throw this.err; - if (data15.length === 0) return 0; + if (data14.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data15.byteLength > this.available()){ + while(data14.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = await this.#writer.write(data15); + numBytesWritten = await this.#writer.write(data14); } catch (e67) { if (e67 instanceof Error) { this.err = e67; @@ -17557,14 +19654,14 @@ class BufWriter1 extends AbstractBufBase1 { throw e67; } } else { - numBytesWritten = copy1(data15, this.buf, this.usedBufferBytes); + numBytesWritten = copy1(data14, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; await this.flush(); } totalBytesWritten += numBytesWritten; - data15 = data15.subarray(numBytesWritten); + data14 = data14.subarray(numBytesWritten); } - numBytesWritten = copy1(data15, this.buf, this.usedBufferBytes); + numBytesWritten = copy1(data14, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -17588,10 +19685,10 @@ class BufWriterSync1 extends AbstractBufBase1 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p27 = this.buf.subarray(0, this.usedBufferBytes); + const p28 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p27.length){ - nwritten += this.#writer.writeSync(p27.subarray(nwritten)); + while(nwritten < p28.length){ + nwritten += this.#writer.writeSync(p28.subarray(nwritten)); } } catch (e68) { if (e68 instanceof Error) { @@ -17602,15 +19699,15 @@ class BufWriterSync1 extends AbstractBufBase1 { this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - writeSync(data16) { + writeSync(data15) { if (this.err !== null) throw this.err; - if (data16.length === 0) return 0; + if (data15.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data16.byteLength > this.available()){ + while(data15.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = this.#writer.writeSync(data16); + numBytesWritten = this.#writer.writeSync(data15); } catch (e69) { if (e69 instanceof Error) { this.err = e69; @@ -17618,14 +19715,14 @@ class BufWriterSync1 extends AbstractBufBase1 { throw e69; } } else { - numBytesWritten = copy1(data16, this.buf, this.usedBufferBytes); + numBytesWritten = copy1(data15, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; this.flush(); } totalBytesWritten += numBytesWritten; - data16 = data16.subarray(numBytesWritten); + data15 = data15.subarray(numBytesWritten); } - numBytesWritten = copy1(data16, this.buf, this.usedBufferBytes); + numBytesWritten = copy1(data15, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -17670,21 +19767,21 @@ class TextProtoReader { const kv = await this.readLineSlice(); if (kv === null) throw new Deno.errors.UnexpectedEof(); if (kv.byteLength === 0) return m8; - let i59 = kv.indexOf(CHAR_COLON); - if (i59 < 0) { + let i58 = kv.indexOf(CHAR_COLON); + if (i58 < 0) { throw new Deno.errors.InvalidData(`malformed MIME header line: ${str(kv)}`); } - const key31 = str(kv.subarray(0, i59)); - if (key31 == "") { + const key33 = str(kv.subarray(0, i58)); + if (key33 == "") { continue; } - i59++; - while(i59 < kv.byteLength && WHITESPACES.includes(kv[i59])){ - i59++; + i58++; + while(i58 < kv.byteLength && WHITESPACES.includes(kv[i58])){ + i58++; } - const value61 = str(kv.subarray(i59)).replace(invalidHeaderCharRegex, encodeURI); + const value66 = str(kv.subarray(i58)).replace(invalidHeaderCharRegex, encodeURI); try { - m8.append(key31, value61); + m8.append(key33, value66); } catch {} } } @@ -17700,24 +19797,104 @@ class TextProtoReader { return r55 === null ? null : line; } skipSpace(l6) { - let n79 = 0; + let n80 = 0; for (const val of l6){ if (!WHITESPACES.includes(val)) { - n79++; + n80++; } } - return n79; + return n80; } r; } -function decode1(b64) { - const binString = atob(b64); - const size = binString.length; - const bytes7 = new Uint8Array(size); - for(let i60 = 0; i60 < size; i60++){ - bytes7[i60] = binString.charCodeAt(i60); +const base64abc1 = [ + "A", + "B", + "C", + "D", + "E", + "F", + "G", + "H", + "I", + "J", + "K", + "L", + "M", + "N", + "O", + "P", + "Q", + "R", + "S", + "T", + "U", + "V", + "W", + "X", + "Y", + "Z", + "a", + "b", + "c", + "d", + "e", + "f", + "g", + "h", + "i", + "j", + "k", + "l", + "m", + "n", + "o", + "p", + "q", + "r", + "s", + "t", + "u", + "v", + "w", + "x", + "y", + "z", + "0", + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "+", + "/", +]; +function encode1(data16) { + const uint8 = typeof data16 === "string" ? new TextEncoder().encode(data16) : data16 instanceof Uint8Array ? data16 : new Uint8Array(data16); + let result = "", i59; + const l7 = uint8.length; + for(i59 = 2; i59 < l7; i59 += 3){ + result += base64abc1[uint8[i59 - 2] >> 2]; + result += base64abc1[(uint8[i59 - 2] & 0x03) << 4 | uint8[i59 - 1] >> 4]; + result += base64abc1[(uint8[i59 - 1] & 0x0f) << 2 | uint8[i59] >> 6]; + result += base64abc1[uint8[i59] & 0x3f]; + } + if (i59 === l7 + 1) { + result += base64abc1[uint8[i59 - 2] >> 2]; + result += base64abc1[(uint8[i59 - 2] & 0x03) << 4]; + result += "=="; } - return bytes7; + if (i59 === l7) { + result += base64abc1[uint8[i59 - 2] >> 2]; + result += base64abc1[(uint8[i59 - 2] & 0x03) << 4 | uint8[i59 - 1] >> 4]; + result += base64abc1[(uint8[i59 - 1] & 0x0f) << 2]; + result += "="; + } + return result; } const encoder5 = new TextEncoder(); class SMTPConnection { @@ -17762,11 +19939,11 @@ class SMTPConnection { } this.setupConnection(this.conn); } - assertCode(cmd, code22, msg) { + assertCode(cmd, code23, msg) { if (!cmd) { throw new Error(`invalid cmd`); } - if (cmd.code !== code22) { + if (cmd.code !== code23) { throw new Error(msg || cmd.code + ": " + cmd.args); } } @@ -17780,13 +19957,13 @@ class SMTPConnection { } const nonNullResult = result.at(-1) === null ? result.slice(0, result.length - 1) : result; if (nonNullResult.length === 0) return null; - const code23 = parseInt(nonNullResult[0].slice(0, 3)); - const data17 = nonNullResult.map((v5)=>v5.slice(4).trim()); + const code24 = parseInt(nonNullResult[0].slice(0, 3)); + const data17 = nonNullResult.map((v13)=>v13.slice(4).trim()); if (this.config.debug.log) { - nonNullResult.forEach((v6)=>console.log(v6)); + nonNullResult.forEach((v14)=>console.log(v14)); } return { - code: code23, + code: code24, args: data17 }; } @@ -17810,8 +19987,8 @@ class SMTPConnection { if (this.config.debug.log) { console.table(args2.map(()=>"Uint8Attay")); } - for(let i61 = 0; i61 < args2.length; i61++){ - await this.#writer.write(args2[i61]); + for(let i60 = 0; i60 < args2.length; i60++){ + await this.#writer.write(args2[i60]); } await this.#writer.flush(); } @@ -17860,9 +20037,15 @@ class SMTPClient { this.#supportedFeatures = new Set(); const c11 = new SMTPConnection(config); this.#connection = c11; + const self = this; this.#ready = (async ()=>{ - await c11.ready; - await this.#prepareConnection(); + c11.ready.then(()=>{ + self.#prepareConnection().catch((err)=>{ + console.warn("prepare connection error:", err); + }); + }).catch((err)=>{ + console.warn("connection ready error:", err); + }); })(); } #ready; @@ -17881,8 +20064,8 @@ class SMTPClient { await this.#que.que(); await this.#connection.writeCmd("MAIL", "FROM:", `<${config.from.mail}>`); this.#connection.assertCode(await this.#connection.readCmd(), CommandCode.OK); - for(let i62 = 0; i62 < config.to.length; i62++){ - await this.#connection.writeCmd("RCPT", "TO:", `<${config.to[i62].mail}>`); + for(let i61 = 0; i61 < config.to.length; i61++){ + await this.#connection.writeCmd("RCPT", "TO:", `<${config.to[i61].mail}>`); this.#connection.assertCode(await this.#connection.readCmd(), CommandCode.OK); } for(let i1 = 0; i1 < config.cc.length; i1++){ @@ -17906,8 +20089,8 @@ class SMTPClient { await this.#connection.writeCmd("Date: ", config.date); const obj = Object.entries(config.headers); for(let i3 = 0; i3 < obj.length; i3++){ - const [name2, value62] = obj[i3]; - await this.#connection.writeCmd(name2 + ": ", value62); + const [name2, value67] = obj[i3]; + await this.#connection.writeCmd(name2 + ": ", value67); } if (config.inReplyTo) { await this.#connection.writeCmd("InReplyTo: ", config.inReplyTo); @@ -17923,15 +20106,12 @@ class SMTPClient { } await this.#connection.writeCmd("MIME-Version: 1.0"); let boundaryAdditionAtt = 100; - config.mimeContent.map((v7)=>v7.content).join("\n").replace(new RegExp("--attachment([0-9]+)", "g"), (_, numb)=>{ + config.mimeContent.map((v15)=>v15.content).join("\n").replace(new RegExp("--attachment([0-9]+)", "g"), (_, numb)=>{ boundaryAdditionAtt += parseInt(numb, 10); return ""; }); - const dec1 = new TextDecoder(); - config.attachments.map((v8)=>{ - if (v8.encoding === "text") return v8.content; - const arr = new Uint8Array(v8.content); - return dec1.decode(arr); + config.attachments.map((v16)=>{ + return v16.content; }).join("\n").replace(new RegExp("--attachment([0-9]+)", "g"), (_, numb)=>{ boundaryAdditionAtt += parseInt(numb, 10); return ""; @@ -17940,7 +20120,7 @@ class SMTPClient { await this.#connection.writeCmd(`Content-Type: multipart/mixed; boundary=${attachmentBoundary}`, "\r\n"); await this.#connection.writeCmd(`--${attachmentBoundary}`); let boundaryAddition = 100; - config.mimeContent.map((v9)=>v9.content).join("\n").replace(new RegExp("--message([0-9]+)", "g"), (_, numb)=>{ + config.mimeContent.map((v17)=>v17.content).join("\n").replace(new RegExp("--message([0-9]+)", "g"), (_, numb)=>{ boundaryAddition += parseInt(numb, 10); return ""; }); @@ -17961,17 +20141,19 @@ class SMTPClient { const attachment = config.attachments[i5]; await this.#connection.writeCmd(`--${attachmentBoundary}`); await this.#connection.writeCmd("Content-Type:", attachment.contentType + ";", "name=" + attachment.filename); - await this.#connection.writeCmd("Content-Disposition: attachment; filename=" + attachment.filename, "\r\n"); - if (attachment.encoding === "binary") { - await this.#connection.writeCmd("Content-Transfer-Encoding: binary"); - if (attachment.content instanceof ArrayBuffer || attachment.content instanceof SharedArrayBuffer) { - await this.#connection.writeCmdBinary(new Uint8Array(attachment.content)); - } else { - await this.#connection.writeCmdBinary(attachment.content); + if (attachment.contentID) { + await this.#connection.writeCmd(`Content-ID: <${attachment.contentID}>`); + } + await this.#connection.writeCmd("Content-Disposition: attachment; filename=" + attachment.filename); + if (attachment.encoding === "base64") { + await this.#connection.writeCmd("Content-Transfer-Encoding: base64", "\r\n"); + for(let line = 0; line < Math.ceil(attachment.content.length / 75); line++){ + const lineOfBase64 = attachment.content.slice(line * 75, (line + 1) * 75); + await this.#connection.writeCmd(lineOfBase64); } await this.#connection.writeCmd("\r\n"); } else if (attachment.encoding === "text") { - await this.#connection.writeCmd("Content-Transfer-Encoding: quoted-printable"); + await this.#connection.writeCmd("Content-Transfer-Encoding: quoted-printable", "\r\n"); await this.#connection.writeCmd(attachment.content, "\r\n"); } } @@ -18070,14 +20252,14 @@ function quotedPrintableEncode(data19, encLB = false) { const encodedData = Array.from(data19).map((ch)=>{ const encodedChar = encoder6.encode(ch); if (encodedChar.length === 1) { - const code24 = encodedChar[0]; - if (code24 >= 32 && code24 <= 126 && code24 !== 61) return ch; - if (!encLB && (code24 === 10 || code24 === 13)) return ch; - if (code24 === 9) return ch; + const code25 = encodedChar[0]; + if (code25 >= 32 && code25 <= 126 && code25 !== 61) return ch; + if (!encLB && (code25 === 10 || code25 === 13)) return ch; + if (code25 === 9) return ch; } let enc1 = ""; - encodedChar.forEach((i63)=>{ - let c12 = i63.toString(16); + encodedChar.forEach((i62)=>{ + let c12 = i62.toString(16); if (c12.length === 1) c12 = "0" + c12; enc1 += `=${c12}`; }); @@ -18106,13 +20288,22 @@ function quotedPrintableEncode(data19, encLB = false) { ret += encodedData.slice(lines * 74); return ret; } +function hasNonAsciiCharacters(str25) { + return /[^\u0000-\u007f]/.test(str25); +} +function quotedPrintableEncodeInline(data20) { + if (hasNonAsciiCharacters(data20) || data20.startsWith("=?")) { + return `=?utf-8?Q?${quotedPrintableEncode(data20)}?=`; + } + return data20; +} function resolveAttachment(attachment) { - if (attachment.encoding === "base64") { + if (attachment.encoding === "binary") { return { filename: attachment.filename, contentType: attachment.contentType, - encoding: "binary", - content: decode1(attachment.content) + encoding: "base64", + content: encode1(attachment.content) }; } else { return attachment; @@ -18148,7 +20339,7 @@ function parseSingleEmail(mail) { if (typeof mail !== "string") { return { mail: mail.mail, - name: mail.name ?? "" + name: quotedPrintableEncodeInline(mail.name ?? "") }; } const mailSplitRe = /^([^<]*)<([^>]+)>\s*$/; @@ -18161,7 +20352,7 @@ function parseSingleEmail(mail) { } const [_, name3, email] = res; return { - name: name3.trim(), + name: quotedPrintableEncodeInline(name3.trim()), mail: email.trim() }; } @@ -18169,17 +20360,17 @@ function parseMailList(list) { if (typeof list === "string") return [ parseSingleEmail(list) ]; - if (Array.isArray(list)) return list.map((v10)=>parseSingleEmail(v10)); + if (Array.isArray(list)) return list.map((v18)=>parseSingleEmail(v18)); if ("mail" in list) { return [ { mail: list.mail, - name: list.name ?? "" + name: quotedPrintableEncodeInline(list.name ?? "") } ]; } return Object.entries(list).map(([name4, mail])=>({ - name: name4, + name: quotedPrintableEncodeInline(name4), mail })); } @@ -18199,7 +20390,7 @@ function validateEmailList(list) { }; } function validateHeaders(headers) { - return !(Object.keys(headers).some((v11)=>v11.includes("\n") || v11.includes("\r")) || Object.values(headers).some((v12)=>v12.includes("\n") || v12.includes("\r"))); + return !(Object.keys(headers).some((v19)=>v19.includes("\n") || v19.includes("\r")) || Object.values(headers).some((v20)=>v20.includes("\n") || v20.includes("\r"))); } function resolveSendConfig(config) { const { to , cc =[] , bcc =[] , from , date =new Date().toUTCString().split(",")[1].slice(1) , subject , content , mimeContent , html , inReplyTo , replyTo , references , priority , attachments , internalTag , headers , } = config; @@ -18216,7 +20407,7 @@ function resolveSendConfig(config) { }), replyTo: replyTo ? parseSingleEmail(replyTo) : undefined, inReplyTo, - subject, + subject: quotedPrintableEncodeInline(subject), attachments: attachments ? attachments.map((attachment)=>resolveAttachment(attachment)) : [], references, priority, @@ -18225,13 +20416,13 @@ function resolveSendConfig(config) { }; } function validateConfig(config, client) { - const errors1 = []; + const errors2 = []; const warn = []; if (!isSingleMail(config.from.mail)) { - errors1.push(`The specified from adress is not a valid email adress.`); + errors2.push(`The specified from adress is not a valid email adress.`); } if (config.replyTo && !isSingleMail(config.replyTo.mail)) { - errors1.push(`The specified replyTo adress is not a valid email adress.`); + errors2.push(`The specified replyTo adress is not a valid email adress.`); } const valTo = validateEmailList(config.to); if (valTo.bad.length > 0) { @@ -18255,25 +20446,25 @@ function validateConfig(config, client) { }); } if (config.to.length + config.cc.length + config.bcc.length === 0) { - errors1.push(`No valid emails provided!`); + errors2.push(`No valid emails provided!`); } if (config.mimeContent.length === 0) { - errors1.push(`No content provided!`); + errors2.push(`No content provided!`); } - if (!config.mimeContent.some((v13)=>v13.mimeType.includes("text/html") || v13.mimeType.includes("text/plain"))) { + if (!config.mimeContent.some((v21)=>v21.mimeType.includes("text/html") || v21.mimeType.includes("text/plain"))) { warn.push("You should provide at least html or text content!"); } if (!validateHeaders(config.headers)) { - errors1.push(`Headers are not allowed to include linebreaks!`); + errors2.push(`Headers are not allowed to include linebreaks!`); } if (client.client.warning === "log" && warn.length > 0) { console.warn(warn.join("\n")); } if (client.client.warning === "error") { - errors1.push(...warn); + errors2.push(...warn); } - if (errors1.length > 0) { - throw new Error(errors1.join("\n")); + if (errors2.length > 0) { + throw new Error(errors2.join("\n")); } return config; } @@ -18303,8 +20494,8 @@ class SMTPHandler { } send(config) { let resolvedConfig = resolveSendConfig(config); - for(let i64 = 0; i64 < this.#clientConfig.client.preprocessors.length; i64++){ - const cb = this.#clientConfig.client.preprocessors[i64]; + for(let i63 = 0; i63 < this.#clientConfig.client.preprocessors.length; i63++){ + const cb = this.#clientConfig.client.preprocessors[i63]; resolvedConfig = cb(resolvedConfig, this.#clientConfig); } return this.#internalClient.send(resolvedConfig); @@ -18322,7 +20513,7 @@ var LogLevels; LogLevels2[LogLevels2["ERROR"] = 40] = "ERROR"; LogLevels2[LogLevels2["CRITICAL"] = 50] = "CRITICAL"; })(LogLevels || (LogLevels = {})); -Object.keys(LogLevels).filter((key32)=>isNaN(Number(key32))); +Object.keys(LogLevels).filter((key34)=>isNaN(Number(key34))); const byLevel = { [String(LogLevels.NOTSET)]: "NOTSET", [String(LogLevels.DEBUG)]: "DEBUG", @@ -18435,15 +20626,15 @@ class Logger { }); return msg instanceof Function ? fnResult : msg; } - asString(data20) { - if (typeof data20 === "string") { - return data20; - } else if (data20 === null || typeof data20 === "number" || typeof data20 === "bigint" || typeof data20 === "boolean" || typeof data20 === "undefined" || typeof data20 === "symbol") { - return String(data20); - } else if (data20 instanceof Error) { - return data20.stack; - } else if (typeof data20 === "object") { - return JSON.stringify(data20); + asString(data21) { + if (typeof data21 === "string") { + return data21; + } else if (data21 === null || typeof data21 === "number" || typeof data21 === "bigint" || typeof data21 === "boolean" || typeof data21 === "undefined" || typeof data21 === "symbol") { + return String(data21); + } else if (data21 instanceof Error) { + return data21.stack; + } else if (typeof data21 === "object") { + return JSON.stringify(data21); } return "undefined"; } @@ -18463,14 +20654,14 @@ class Logger { return this.#_log(LogLevels.CRITICAL, msg5, ...args5); } } -const { Deno: Deno4 } = globalThis; -const noColor = typeof Deno4?.noColor === "boolean" ? Deno4.noColor : true; +const { Deno: Deno1 } = globalThis; +const noColor = typeof Deno1?.noColor === "boolean" ? Deno1.noColor : true; let enabled = !noColor; -function setColorEnabled(value63) { +function setColorEnabled(value68) { if (noColor) { return; } - enabled = value63; + enabled = value68; } function getColorEnabled() { return enabled; @@ -18688,8 +20879,8 @@ function bgBrightWhite(str67) { 107 ], 49)); } -function clampAndTruncate(n80, max1 = 255, min1 = 0) { - return Math.trunc(Math.max(Math.min(n80, max1), min1)); +function clampAndTruncate(n81, max1 = 255, min1 = 0) { + return Math.trunc(Math.max(Math.min(n81, max1), min1)); } function rgb8(str68, color) { return run(str68, code([ @@ -18806,790 +20997,4482 @@ async function exists1(filePath) { if (err instanceof Deno.errors.NotFound) { return false; } - throw err; + throw err; + } +} +function existsSync(filePath) { + try { + Deno.lstatSync(filePath); + return true; + } catch (err) { + if (err instanceof Deno.errors.NotFound) { + return false; + } + throw err; + } +} +class DenoStdInternalError2 extends Error { + constructor(message){ + super(message); + this.name = "DenoStdInternalError"; + } +} +function assert4(expr, msg6 = "") { + if (!expr) { + throw new DenoStdInternalError2(msg6); + } +} +function indexOfNeedle(source, needle, start11 = 0) { + if (start11 >= source.length) { + return -1; + } + if (start11 < 0) { + start11 = Math.max(0, source.length + start11); + } + const s32 = needle[0]; + for(let i64 = start11; i64 < source.length; i64++){ + if (source[i64] !== s32) continue; + const pin = i64; + let matched = 1; + let j11 = i64; + while(matched < needle.length){ + j11++; + if (source[j11] !== needle[j11 - pin]) { + break; + } + matched++; + } + if (matched === needle.length) { + return pin; + } + } + return -1; +} +function concat2(...buf) { + let length = 0; + for (const b15 of buf){ + length += b15.length; + } + const output = new Uint8Array(length); + let index = 0; + for (const b1 of buf){ + output.set(b1, index); + index += b1.length; + } + return output; +} +function copy2(src, dst, off = 0) { + off = Math.max(0, Math.min(off, dst.byteLength)); + const dstBytesAvailable = dst.byteLength - off; + if (src.byteLength > dstBytesAvailable) { + src = src.subarray(0, dstBytesAvailable); + } + dst.set(src, off); + return src.byteLength; +} +const MIN_BUF_SIZE3 = 16; +const CR4 = "\r".charCodeAt(0); +const LF4 = "\n".charCodeAt(0); +class BufferFullError3 extends Error { + name; + constructor(partial){ + super("Buffer full"); + this.partial = partial; + this.name = "BufferFullError"; + } + partial; +} +class PartialReadError2 extends Error { + name = "PartialReadError"; + partial; + constructor(){ + super("Encountered UnexpectedEof, data only partially read"); + } +} +class BufReader3 { + #buf; + #rd; + #r = 0; + #w = 0; + #eof = false; + static create(r56, size = 4096) { + return r56 instanceof BufReader3 ? r56 : new BufReader3(r56, size); + } + constructor(rd, size = 4096){ + if (size < 16) { + size = MIN_BUF_SIZE3; + } + this.#reset(new Uint8Array(size), rd); + } + size() { + return this.#buf.byteLength; + } + buffered() { + return this.#w - this.#r; + } + #fill = async ()=>{ + if (this.#r > 0) { + this.#buf.copyWithin(0, this.#r, this.#w); + this.#w -= this.#r; + this.#r = 0; + } + if (this.#w >= this.#buf.byteLength) { + throw Error("bufio: tried to fill full buffer"); + } + for(let i65 = 100; i65 > 0; i65--){ + const rr = await this.#rd.read(this.#buf.subarray(this.#w)); + if (rr === null) { + this.#eof = true; + return; + } + assert4(rr >= 0, "negative read"); + this.#w += rr; + if (rr > 0) { + return; + } + } + throw new Error(`No progress after ${100} read() calls`); + }; + reset(r57) { + this.#reset(this.#buf, r57); + } + #reset = (buf, rd)=>{ + this.#buf = buf; + this.#rd = rd; + this.#eof = false; + }; + async read(p29) { + let rr = p29.byteLength; + if (p29.byteLength === 0) return rr; + if (this.#r === this.#w) { + if (p29.byteLength >= this.#buf.byteLength) { + const rr = await this.#rd.read(p29); + const nread = rr ?? 0; + assert4(nread >= 0, "negative read"); + return rr; + } + this.#r = 0; + this.#w = 0; + rr = await this.#rd.read(this.#buf); + if (rr === 0 || rr === null) return rr; + assert4(rr >= 0, "negative read"); + this.#w += rr; + } + const copied = copy2(this.#buf.subarray(this.#r, this.#w), p29, 0); + this.#r += copied; + return copied; + } + async readFull(p30) { + let bytesRead = 0; + while(bytesRead < p30.length){ + try { + const rr = await this.read(p30.subarray(bytesRead)); + if (rr === null) { + if (bytesRead === 0) { + return null; + } else { + throw new PartialReadError2(); + } + } + bytesRead += rr; + } catch (err) { + if (err instanceof PartialReadError2) { + err.partial = p30.subarray(0, bytesRead); + } else if (err instanceof Error) { + const e70 = new PartialReadError2(); + e70.partial = p30.subarray(0, bytesRead); + e70.stack = err.stack; + e70.message = err.message; + e70.cause = err.cause; + throw err; + } + throw err; + } + } + return p30; + } + async readByte() { + while(this.#r === this.#w){ + if (this.#eof) return null; + await this.#fill(); + } + const c13 = this.#buf[this.#r]; + this.#r++; + return c13; + } + async readString(delim) { + if (delim.length !== 1) { + throw new Error("Delimiter should be a single character"); + } + const buffer10 = await this.readSlice(delim.charCodeAt(0)); + if (buffer10 === null) return null; + return new TextDecoder().decode(buffer10); + } + async readLine() { + let line = null; + try { + line = await this.readSlice(LF4); + } catch (err) { + let partial; + if (err instanceof PartialReadError2) { + partial = err.partial; + assert4(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + } + if (!(err instanceof BufferFullError3)) { + throw err; + } + partial = err.partial; + if (!this.#eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR4) { + assert4(this.#r > 0, "bufio: tried to rewind past start of buffer"); + this.#r--; + partial = partial.subarray(0, partial.byteLength - 1); + } + if (partial) { + return { + line: partial, + more: !this.#eof + }; + } + } + if (line === null) { + return null; + } + if (line.byteLength === 0) { + return { + line, + more: false + }; + } + if (line[line.byteLength - 1] == LF4) { + let drop = 1; + if (line.byteLength > 1 && line[line.byteLength - 2] === CR4) { + drop = 2; + } + line = line.subarray(0, line.byteLength - drop); + } + return { + line, + more: false + }; + } + async readSlice(delim) { + let s33 = 0; + let slice; + while(true){ + let i66 = this.#buf.subarray(this.#r + s33, this.#w).indexOf(delim); + if (i66 >= 0) { + i66 += s33; + slice = this.#buf.subarray(this.#r, this.#r + i66 + 1); + this.#r += i66 + 1; + break; + } + if (this.#eof) { + if (this.#r === this.#w) { + return null; + } + slice = this.#buf.subarray(this.#r, this.#w); + this.#r = this.#w; + break; + } + if (this.buffered() >= this.#buf.byteLength) { + this.#r = this.#w; + const oldbuf = this.#buf; + const newbuf = this.#buf.slice(0); + this.#buf = newbuf; + throw new BufferFullError3(oldbuf); + } + s33 = this.#w - this.#r; + try { + await this.#fill(); + } catch (err) { + if (err instanceof PartialReadError2) { + err.partial = slice; + } else if (err instanceof Error) { + const e71 = new PartialReadError2(); + e71.partial = slice; + e71.stack = err.stack; + e71.message = err.message; + e71.cause = err.cause; + throw err; + } + throw err; + } + } + return slice; + } + async peek(n6) { + if (n6 < 0) { + throw Error("negative count"); + } + let avail = this.#w - this.#r; + while(avail < n6 && avail < this.#buf.byteLength && !this.#eof){ + try { + await this.#fill(); + } catch (err) { + if (err instanceof PartialReadError2) { + err.partial = this.#buf.subarray(this.#r, this.#w); + } else if (err instanceof Error) { + const e72 = new PartialReadError2(); + e72.partial = this.#buf.subarray(this.#r, this.#w); + e72.stack = err.stack; + e72.message = err.message; + e72.cause = err.cause; + throw err; + } + throw err; + } + avail = this.#w - this.#r; + } + if (avail === 0 && this.#eof) { + return null; + } else if (avail < n6 && this.#eof) { + return this.#buf.subarray(this.#r, this.#r + avail); + } else if (avail < n6) { + throw new BufferFullError3(this.#buf.subarray(this.#r, this.#w)); + } + return this.#buf.subarray(this.#r, this.#r + n6); + } +} +class AbstractBufBase2 { + buf; + usedBufferBytes = 0; + err = null; + constructor(buf){ + this.buf = buf; + } + size() { + return this.buf.byteLength; + } + available() { + return this.buf.byteLength - this.usedBufferBytes; + } + buffered() { + return this.usedBufferBytes; + } +} +class BufWriter2 extends AbstractBufBase2 { + #writer; + static create(writer, size = 4096) { + return writer instanceof BufWriter2 ? writer : new BufWriter2(writer, size); + } + constructor(writer, size = 4096){ + super(new Uint8Array(size <= 0 ? 4096 : size)); + this.#writer = writer; + } + reset(w14) { + this.err = null; + this.usedBufferBytes = 0; + this.#writer = w14; + } + async flush() { + if (this.err !== null) throw this.err; + if (this.usedBufferBytes === 0) return; + try { + const p31 = this.buf.subarray(0, this.usedBufferBytes); + let nwritten = 0; + while(nwritten < p31.length){ + nwritten += await this.#writer.write(p31.subarray(nwritten)); + } + } catch (e73) { + if (e73 instanceof Error) { + this.err = e73; + } + throw e73; + } + this.buf = new Uint8Array(this.buf.length); + this.usedBufferBytes = 0; + } + async write(data22) { + if (this.err !== null) throw this.err; + if (data22.length === 0) return 0; + let totalBytesWritten = 0; + let numBytesWritten = 0; + while(data22.byteLength > this.available()){ + if (this.buffered() === 0) { + try { + numBytesWritten = await this.#writer.write(data22); + } catch (e74) { + if (e74 instanceof Error) { + this.err = e74; + } + throw e74; + } + } else { + numBytesWritten = copy2(data22, this.buf, this.usedBufferBytes); + this.usedBufferBytes += numBytesWritten; + await this.flush(); + } + totalBytesWritten += numBytesWritten; + data22 = data22.subarray(numBytesWritten); + } + numBytesWritten = copy2(data22, this.buf, this.usedBufferBytes); + this.usedBufferBytes += numBytesWritten; + totalBytesWritten += numBytesWritten; + return totalBytesWritten; + } +} +class BufWriterSync2 extends AbstractBufBase2 { + #writer; + static create(writer, size = 4096) { + return writer instanceof BufWriterSync2 ? writer : new BufWriterSync2(writer, size); + } + constructor(writer, size = 4096){ + super(new Uint8Array(size <= 0 ? 4096 : size)); + this.#writer = writer; + } + reset(w15) { + this.err = null; + this.usedBufferBytes = 0; + this.#writer = w15; + } + flush() { + if (this.err !== null) throw this.err; + if (this.usedBufferBytes === 0) return; + try { + const p32 = this.buf.subarray(0, this.usedBufferBytes); + let nwritten = 0; + while(nwritten < p32.length){ + nwritten += this.#writer.writeSync(p32.subarray(nwritten)); + } + } catch (e75) { + if (e75 instanceof Error) { + this.err = e75; + } + throw e75; + } + this.buf = new Uint8Array(this.buf.length); + this.usedBufferBytes = 0; + } + writeSync(data23) { + if (this.err !== null) throw this.err; + if (data23.length === 0) return 0; + let totalBytesWritten = 0; + let numBytesWritten = 0; + while(data23.byteLength > this.available()){ + if (this.buffered() === 0) { + try { + numBytesWritten = this.#writer.writeSync(data23); + } catch (e76) { + if (e76 instanceof Error) { + this.err = e76; + } + throw e76; + } + } else { + numBytesWritten = copy2(data23, this.buf, this.usedBufferBytes); + this.usedBufferBytes += numBytesWritten; + this.flush(); + } + totalBytesWritten += numBytesWritten; + data23 = data23.subarray(numBytesWritten); + } + numBytesWritten = copy2(data23, this.buf, this.usedBufferBytes); + this.usedBufferBytes += numBytesWritten; + totalBytesWritten += numBytesWritten; + return totalBytesWritten; } } -function existsSync(filePath) { - try { - Deno.lstatSync(filePath); - return true; - } catch (err) { - if (err instanceof Deno.errors.NotFound) { - return false; +const DEFAULT_FORMATTER = "{levelName} {msg}"; +class BaseHandler { + level; + levelName; + formatter; + constructor(levelName, options10 = {}){ + this.level = getLevelByName(levelName); + this.levelName = levelName; + this.formatter = options10.formatter || DEFAULT_FORMATTER; + } + handle(logRecord) { + if (this.level > logRecord.level) return; + const msg7 = this.format(logRecord); + return this.log(msg7); + } + format(logRecord) { + if (this.formatter instanceof Function) { + return this.formatter(logRecord); } - throw err; + return this.formatter.replace(/{([^\s}]+)}/g, (match10, p1)=>{ + const value69 = logRecord[p1]; + if (value69 == null) { + return match10; + } + return String(value69); + }); } + log(_msg) {} + async setup() {} + async destroy() {} } -class DenoStdInternalError2 extends Error { - constructor(message){ - super(message); - this.name = "DenoStdInternalError"; +class ConsoleHandler extends BaseHandler { + format(logRecord) { + let msg8 = super.format(logRecord); + switch(logRecord.level){ + case LogLevels.INFO: + msg8 = blue(msg8); + break; + case LogLevels.WARNING: + msg8 = yellow(msg8); + break; + case LogLevels.ERROR: + msg8 = red(msg8); + break; + case LogLevels.CRITICAL: + msg8 = bold(red(msg8)); + break; + default: + break; + } + return msg8; } -} -function assert3(expr, msg6 = "") { - if (!expr) { - throw new DenoStdInternalError2(msg6); + log(msg9) { + console.log(msg9); } } -function indexOfNeedle(source, needle, start10 = 0) { - if (start10 >= source.length) { - return -1; +class WriterHandler extends BaseHandler { + _writer; + #encoder = new TextEncoder(); +} +class FileHandler extends WriterHandler { + _file; + _buf; + _filename; + _mode; + _openOptions; + _encoder = new TextEncoder(); + #unloadCallback = (()=>{ + this.destroy(); + }).bind(this); + constructor(levelName, options11){ + super(levelName, options11); + this._filename = options11.filename; + this._mode = options11.mode ? options11.mode : "a"; + this._openOptions = { + createNew: this._mode === "x", + create: this._mode !== "x", + append: this._mode === "a", + truncate: this._mode !== "a", + write: true + }; } - if (start10 < 0) { - start10 = Math.max(0, source.length + start10); + async setup() { + this._file = await Deno.open(this._filename, this._openOptions); + this._writer = this._file; + this._buf = new BufWriterSync2(this._file); + addEventListener("unload", this.#unloadCallback); } - const s32 = needle[0]; - for(let i65 = start10; i65 < source.length; i65++){ - if (source[i65] !== s32) continue; - const pin = i65; - let matched = 1; - let j11 = i65; - while(matched < needle.length){ - j11++; - if (source[j11] !== needle[j11 - pin]) { - break; - } - matched++; + handle(logRecord) { + super.handle(logRecord); + if (logRecord.level > LogLevels.ERROR) { + this.flush(); } - if (matched === needle.length) { - return pin; + } + log(msg10) { + if (this._encoder.encode(msg10).byteLength + 1 > this._buf.available()) { + this.flush(); } + this._buf.writeSync(this._encoder.encode(msg10 + "\n")); } - return -1; -} -function concat2(...buf) { - let length = 0; - for (const b13 of buf){ - length += b13.length; + flush() { + if (this._buf?.buffered() > 0) { + this._buf.flush(); + } } - const output = new Uint8Array(length); - let index = 0; - for (const b1 of buf){ - output.set(b1, index); - index += b1.length; + destroy() { + this.flush(); + this._file?.close(); + this._file = undefined; + removeEventListener("unload", this.#unloadCallback); + return Promise.resolve(); } - return output; } -function copy2(src, dst, off = 0) { - off = Math.max(0, Math.min(off, dst.byteLength)); - const dstBytesAvailable = dst.byteLength - off; - if (src.byteLength > dstBytesAvailable) { - src = src.subarray(0, dstBytesAvailable); +class RotatingFileHandler extends FileHandler { + #maxBytes; + #maxBackupCount; + #currentFileSize = 0; + constructor(levelName, options12){ + super(levelName, options12); + this.#maxBytes = options12.maxBytes; + this.#maxBackupCount = options12.maxBackupCount; + } + async setup() { + if (this.#maxBytes < 1) { + this.destroy(); + throw new Error("maxBytes cannot be less than 1"); + } + if (this.#maxBackupCount < 1) { + this.destroy(); + throw new Error("maxBackupCount cannot be less than 1"); + } + await super.setup(); + if (this._mode === "w") { + for(let i67 = 1; i67 <= this.#maxBackupCount; i67++){ + if (await exists1(this._filename + "." + i67)) { + await Deno.remove(this._filename + "." + i67); + } + } + } else if (this._mode === "x") { + for(let i68 = 1; i68 <= this.#maxBackupCount; i68++){ + if (await exists1(this._filename + "." + i68)) { + this.destroy(); + throw new Deno.errors.AlreadyExists("Backup log file " + this._filename + "." + i68 + " already exists"); + } + } + } else { + this.#currentFileSize = (await Deno.stat(this._filename)).size; + } + } + log(msg11) { + const msgByteLength = this._encoder.encode(msg11).byteLength + 1; + if (this.#currentFileSize + msgByteLength > this.#maxBytes) { + this.rotateLogFiles(); + this.#currentFileSize = 0; + } + super.log(msg11); + this.#currentFileSize += msgByteLength; + } + rotateLogFiles() { + this._buf.flush(); + Deno.close(this._file.rid); + for(let i69 = this.#maxBackupCount - 1; i69 >= 0; i69--){ + const source = this._filename + (i69 === 0 ? "" : "." + i69); + const dest = this._filename + "." + (i69 + 1); + if (existsSync(source)) { + Deno.renameSync(source, dest); + } + } + this._file = Deno.openSync(this._filename, this._openOptions); + this._writer = this._file; + this._buf = new BufWriterSync2(this._file); } - dst.set(src, off); - return src.byteLength; } -const MIN_BUF_SIZE3 = 16; -const CR4 = "\r".charCodeAt(0); -const LF4 = "\n".charCodeAt(0); -class BufferFullError3 extends Error { - name; - constructor(partial){ - super("Buffer full"); - this.partial = partial; - this.name = "BufferFullError"; +class LoggerConfig { + level; + handlers; +} +const DEFAULT_LEVEL = "INFO"; +const DEFAULT_CONFIG = { + handlers: { + default: new ConsoleHandler(DEFAULT_LEVEL) + }, + loggers: { + default: { + level: DEFAULT_LEVEL, + handlers: [ + "default" + ] + } } - partial; +}; +const state = { + handlers: new Map(), + loggers: new Map(), + config: DEFAULT_CONFIG +}; +const handlers = { + BaseHandler, + ConsoleHandler, + WriterHandler, + FileHandler, + RotatingFileHandler +}; +function getLogger(name6) { + if (!name6) { + const d4 = state.loggers.get("default"); + assert4(d4 != null, `"default" logger must be set for getting logger without name`); + return d4; + } + const result = state.loggers.get(name6); + if (!result) { + const logger1 = new Logger(name6, "NOTSET", { + handlers: [] + }); + state.loggers.set(name6, logger1); + return logger1; + } + return result; } -class PartialReadError2 extends Error { - name = "PartialReadError"; - partial; - constructor(){ - super("Encountered UnexpectedEof, data only partially read"); +function debug(msg12, ...args6) { + if (msg12 instanceof Function) { + return getLogger("default").debug(msg12, ...args6); } + return getLogger("default").debug(msg12, ...args6); } -class BufReader3 { - #buf; - #rd; - #r = 0; - #w = 0; - #eof = false; - static create(r56, size = 4096) { - return r56 instanceof BufReader3 ? r56 : new BufReader3(r56, size); +function info(msg13, ...args7) { + if (msg13 instanceof Function) { + return getLogger("default").info(msg13, ...args7); } - constructor(rd, size = 4096){ - if (size < 16) { - size = MIN_BUF_SIZE3; - } - this.#reset(new Uint8Array(size), rd); + return getLogger("default").info(msg13, ...args7); +} +function warning(msg14, ...args8) { + if (msg14 instanceof Function) { + return getLogger("default").warning(msg14, ...args8); } - size() { - return this.#buf.byteLength; + return getLogger("default").warning(msg14, ...args8); +} +function error(msg15, ...args9) { + if (msg15 instanceof Function) { + return getLogger("default").error(msg15, ...args9); } - buffered() { - return this.#w - this.#r; + return getLogger("default").error(msg15, ...args9); +} +function critical(msg16, ...args10) { + if (msg16 instanceof Function) { + return getLogger("default").critical(msg16, ...args10); } - #fill = async ()=>{ - if (this.#r > 0) { - this.#buf.copyWithin(0, this.#r, this.#w); - this.#w -= this.#r; - this.#r = 0; - } - if (this.#w >= this.#buf.byteLength) { - throw Error("bufio: tried to fill full buffer"); - } - for(let i66 = 100; i66 > 0; i66--){ - const rr = await this.#rd.read(this.#buf.subarray(this.#w)); - if (rr === null) { - this.#eof = true; - return; - } - assert3(rr >= 0, "negative read"); - this.#w += rr; - if (rr > 0) { - return; - } + return getLogger("default").critical(msg16, ...args10); +} +async function setup(config) { + state.config = { + handlers: { + ...DEFAULT_CONFIG.handlers, + ...config.handlers + }, + loggers: { + ...DEFAULT_CONFIG.loggers, + ...config.loggers } - throw new Error(`No progress after ${100} read() calls`); }; - reset(r57) { - this.#reset(this.#buf, r57); + state.handlers.forEach((handler)=>{ + handler.destroy(); + }); + state.handlers.clear(); + const handlers1 = state.config.handlers || {}; + for(const handlerName1 in handlers1){ + const handler = handlers1[handlerName1]; + await handler.setup(); + state.handlers.set(handlerName1, handler); } - #reset = (buf, rd)=>{ - this.#buf = buf; - this.#rd = rd; - this.#eof = false; - }; - async read(p28) { - let rr = p28.byteLength; - if (p28.byteLength === 0) return rr; - if (this.#r === this.#w) { - if (p28.byteLength >= this.#buf.byteLength) { - const rr = await this.#rd.read(p28); - const nread = rr ?? 0; - assert3(nread >= 0, "negative read"); - return rr; + state.loggers.clear(); + const loggers = state.config.loggers || {}; + for(const loggerName in loggers){ + const loggerConfig = loggers[loggerName]; + const handlerNames = loggerConfig.handlers || []; + const handlers2 = []; + handlerNames.forEach((handlerName)=>{ + const handler = state.handlers.get(handlerName); + if (handler) { + handlers2.push(handler); } - this.#r = 0; - this.#w = 0; - rr = await this.#rd.read(this.#buf); - if (rr === 0 || rr === null) return rr; - assert3(rr >= 0, "negative read"); - this.#w += rr; - } - const copied = copy2(this.#buf.subarray(this.#r, this.#w), p28, 0); - this.#r += copied; - return copied; + }); + const levelName = loggerConfig.level || DEFAULT_LEVEL; + const logger2 = new Logger(loggerName, levelName, { + handlers: handlers2 + }); + state.loggers.set(loggerName, logger2); } - async readFull(p29) { - let bytesRead = 0; - while(bytesRead < p29.length){ - try { - const rr = await this.read(p29.subarray(bytesRead)); - if (rr === null) { - if (bytesRead === 0) { - return null; - } else { - throw new PartialReadError2(); - } - } - bytesRead += rr; - } catch (err) { - if (err instanceof PartialReadError2) { - err.partial = p29.subarray(0, bytesRead); - } else if (err instanceof Error) { - const e70 = new PartialReadError2(); - e70.partial = p29.subarray(0, bytesRead); - e70.stack = err.stack; - e70.message = err.message; - e70.cause = err.cause; - throw err; - } - throw err; - } +} +await setup(DEFAULT_CONFIG); +const mod9 = await async function() { + return { + LogLevels: LogLevels, + Logger: Logger, + LoggerConfig: LoggerConfig, + handlers: handlers, + getLogger: getLogger, + debug: debug, + info: info, + warning: warning, + error: error, + critical: critical, + setup: setup + }; +}(); +let wasm; +const heap = new Array(32).fill(undefined); +heap.push(undefined, null, true, false); +function getObject(idx) { + return heap[idx]; +} +let heap_next = heap.length; +function dropObject(idx) { + if (idx < 36) return; + heap[idx] = heap_next; + heap_next = idx; +} +function takeObject(idx) { + const ret = getObject(idx); + dropObject(idx); + return ret; +} +function addHeapObject(obj) { + if (heap_next === heap.length) heap.push(heap.length + 1); + const idx = heap_next; + heap_next = heap[idx]; + heap[idx] = obj; + return idx; +} +const cachedTextDecoder = new TextDecoder("utf-8", { + ignoreBOM: true, + fatal: true +}); +cachedTextDecoder.decode(); +let cachedUint8Memory0; +function getUint8Memory0() { + if (cachedUint8Memory0.byteLength === 0) { + cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); + } + return cachedUint8Memory0; +} +function getStringFromWasm0(ptr, len10) { + return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len10)); +} +let WASM_VECTOR_LEN = 0; +const cachedTextEncoder = new TextEncoder("utf-8"); +const encodeString = function(arg, view) { + return cachedTextEncoder.encodeInto(arg, view); +}; +function passStringToWasm0(arg, malloc, realloc) { + if (realloc === undefined) { + const buf = cachedTextEncoder.encode(arg); + const ptr = malloc(buf.length); + getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); + WASM_VECTOR_LEN = buf.length; + return ptr; + } + let len11 = arg.length; + let ptr = malloc(len11); + const mem1 = getUint8Memory0(); + let offset4 = 0; + for(; offset4 < len11; offset4++){ + const code26 = arg.charCodeAt(offset4); + if (code26 > 0x7F) break; + mem1[ptr + offset4] = code26; + } + if (offset4 !== len11) { + if (offset4 !== 0) { + arg = arg.slice(offset4); } - return p29; + ptr = realloc(ptr, len11, len11 = offset4 + arg.length * 3); + const view = getUint8Memory0().subarray(ptr + offset4, ptr + len11); + const ret = encodeString(arg, view); + offset4 += ret.written; } - async readByte() { - while(this.#r === this.#w){ - if (this.#eof) return null; - await this.#fill(); + WASM_VECTOR_LEN = offset4; + return ptr; +} +function isLikeNone(x4) { + return x4 === undefined || x4 === null; +} +let cachedInt32Memory0; +function getInt32Memory0() { + if (cachedInt32Memory0.byteLength === 0) { + cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); + } + return cachedInt32Memory0; +} +function getArrayU8FromWasm0(ptr, len12) { + return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len12); +} +function digest(algorithm, data24, length) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + const ptr0 = passStringToWasm0(algorithm, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN; + wasm.digest(retptr, ptr0, len0, addHeapObject(data24), !isLikeNone(length), isLikeNone(length) ? 0 : length); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var r2 = getInt32Memory0()[retptr / 4 + 2]; + var r3 = getInt32Memory0()[retptr / 4 + 3]; + if (r3) { + throw takeObject(r2); } - const c13 = this.#buf[this.#r]; - this.#r++; - return c13; + var v1 = getArrayU8FromWasm0(r0, r1).slice(); + wasm.__wbindgen_free(r0, r1 * 1); + return v1; + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); + } +} +const DigestContextFinalization = new FinalizationRegistry((ptr)=>wasm.__wbg_digestcontext_free(ptr)); +class DigestContext { + static __wrap(ptr) { + const obj = Object.create(DigestContext.prototype); + obj.ptr = ptr; + DigestContextFinalization.register(obj, obj.ptr, obj); + return obj; + } + __destroy_into_raw() { + const ptr = this.ptr; + this.ptr = 0; + DigestContextFinalization.unregister(this); + return ptr; } - async readString(delim) { - if (delim.length !== 1) { - throw new Error("Delimiter should be a single character"); - } - const buffer10 = await this.readSlice(delim.charCodeAt(0)); - if (buffer10 === null) return null; - return new TextDecoder().decode(buffer10); + free() { + const ptr = this.__destroy_into_raw(); + wasm.__wbg_digestcontext_free(ptr); } - async readLine() { - let line = null; + constructor(algorithm){ try { - line = await this.readSlice(LF4); - } catch (err) { - if (err instanceof Deno.errors.BadResource) { - throw err; - } - let partial; - if (err instanceof PartialReadError2) { - partial = err.partial; - assert3(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); - } - if (!(err instanceof BufferFullError3)) { - throw err; - } - partial = err.partial; - if (!this.#eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR4) { - assert3(this.#r > 0, "bufio: tried to rewind past start of buffer"); - this.#r--; - partial = partial.subarray(0, partial.byteLength - 1); - } - if (partial) { - return { - line: partial, - more: !this.#eof - }; + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + const ptr0 = passStringToWasm0(algorithm, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN; + wasm.digestcontext_new(retptr, ptr0, len0); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var r2 = getInt32Memory0()[retptr / 4 + 2]; + if (r2) { + throw takeObject(r1); } + return DigestContext.__wrap(r0); + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); } - if (line === null) { - return null; - } - if (line.byteLength === 0) { - return { - line, - more: false - }; - } - if (line[line.byteLength - 1] == LF4) { - let drop = 1; - if (line.byteLength > 1 && line[line.byteLength - 2] === CR4) { - drop = 2; + } + update(data25) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + wasm.digestcontext_update(retptr, this.ptr, addHeapObject(data25)); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + if (r1) { + throw takeObject(r0); } - line = line.subarray(0, line.byteLength - drop); + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); } - return { - line, - more: false - }; } - async readSlice(delim) { - let s33 = 0; - let slice; - while(true){ - let i67 = this.#buf.subarray(this.#r + s33, this.#w).indexOf(delim); - if (i67 >= 0) { - i67 += s33; - slice = this.#buf.subarray(this.#r, this.#r + i67 + 1); - this.#r += i67 + 1; - break; - } - if (this.#eof) { - if (this.#r === this.#w) { - return null; - } - slice = this.#buf.subarray(this.#r, this.#w); - this.#r = this.#w; - break; - } - if (this.buffered() >= this.#buf.byteLength) { - this.#r = this.#w; - const oldbuf = this.#buf; - const newbuf = this.#buf.slice(0); - this.#buf = newbuf; - throw new BufferFullError3(oldbuf); - } - s33 = this.#w - this.#r; - try { - await this.#fill(); - } catch (err) { - if (err instanceof PartialReadError2) { - err.partial = slice; - } else if (err instanceof Error) { - const e71 = new PartialReadError2(); - e71.partial = slice; - e71.stack = err.stack; - e71.message = err.message; - e71.cause = err.cause; - throw err; - } - throw err; + digest(length) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + wasm.digestcontext_digest(retptr, this.ptr, !isLikeNone(length), isLikeNone(length) ? 0 : length); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var r2 = getInt32Memory0()[retptr / 4 + 2]; + var r3 = getInt32Memory0()[retptr / 4 + 3]; + if (r3) { + throw takeObject(r2); } + var v0 = getArrayU8FromWasm0(r0, r1).slice(); + wasm.__wbindgen_free(r0, r1 * 1); + return v0; + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); } - return slice; } - async peek(n6) { - if (n6 < 0) { - throw Error("negative count"); - } - let avail = this.#w - this.#r; - while(avail < n6 && avail < this.#buf.byteLength && !this.#eof){ - try { - await this.#fill(); - } catch (err) { - if (err instanceof PartialReadError2) { - err.partial = this.#buf.subarray(this.#r, this.#w); - } else if (err instanceof Error) { - const e72 = new PartialReadError2(); - e72.partial = this.#buf.subarray(this.#r, this.#w); - e72.stack = err.stack; - e72.message = err.message; - e72.cause = err.cause; - throw err; - } - throw err; + digestAndReset(length) { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + wasm.digestcontext_digestAndReset(retptr, this.ptr, !isLikeNone(length), isLikeNone(length) ? 0 : length); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var r2 = getInt32Memory0()[retptr / 4 + 2]; + var r3 = getInt32Memory0()[retptr / 4 + 3]; + if (r3) { + throw takeObject(r2); } - avail = this.#w - this.#r; - } - if (avail === 0 && this.#eof) { - return null; - } else if (avail < n6 && this.#eof) { - return this.#buf.subarray(this.#r, this.#r + avail); - } else if (avail < n6) { - throw new BufferFullError3(this.#buf.subarray(this.#r, this.#w)); + var v0 = getArrayU8FromWasm0(r0, r1).slice(); + wasm.__wbindgen_free(r0, r1 * 1); + return v0; + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); } - return this.#buf.subarray(this.#r, this.#r + n6); - } -} -class AbstractBufBase2 { - buf; - usedBufferBytes = 0; - err = null; - constructor(buf){ - this.buf = buf; - } - size() { - return this.buf.byteLength; - } - available() { - return this.buf.byteLength - this.usedBufferBytes; - } - buffered() { - return this.usedBufferBytes; - } -} -class BufWriter2 extends AbstractBufBase2 { - #writer; - static create(writer, size = 4096) { - return writer instanceof BufWriter2 ? writer : new BufWriter2(writer, size); - } - constructor(writer, size = 4096){ - super(new Uint8Array(size <= 0 ? 4096 : size)); - this.#writer = writer; } - reset(w14) { - this.err = null; - this.usedBufferBytes = 0; - this.#writer = w14; - } - async flush() { - if (this.err !== null) throw this.err; - if (this.usedBufferBytes === 0) return; + digestAndDrop(length) { try { - const p30 = this.buf.subarray(0, this.usedBufferBytes); - let nwritten = 0; - while(nwritten < p30.length){ - nwritten += await this.#writer.write(p30.subarray(nwritten)); - } - } catch (e73) { - if (e73 instanceof Error) { - this.err = e73; + const ptr = this.__destroy_into_raw(); + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + wasm.digestcontext_digestAndDrop(retptr, ptr, !isLikeNone(length), isLikeNone(length) ? 0 : length); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + var r2 = getInt32Memory0()[retptr / 4 + 2]; + var r3 = getInt32Memory0()[retptr / 4 + 3]; + if (r3) { + throw takeObject(r2); } - throw e73; + var v0 = getArrayU8FromWasm0(r0, r1).slice(); + wasm.__wbindgen_free(r0, r1 * 1); + return v0; + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); } - this.buf = new Uint8Array(this.buf.length); - this.usedBufferBytes = 0; } - async write(data21) { - if (this.err !== null) throw this.err; - if (data21.length === 0) return 0; - let totalBytesWritten = 0; - let numBytesWritten = 0; - while(data21.byteLength > this.available()){ - if (this.buffered() === 0) { - try { - numBytesWritten = await this.#writer.write(data21); - } catch (e74) { - if (e74 instanceof Error) { - this.err = e74; - } - throw e74; - } - } else { - numBytesWritten = copy2(data21, this.buf, this.usedBufferBytes); - this.usedBufferBytes += numBytesWritten; - await this.flush(); + reset() { + try { + const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); + wasm.digestcontext_reset(retptr, this.ptr); + var r0 = getInt32Memory0()[retptr / 4 + 0]; + var r1 = getInt32Memory0()[retptr / 4 + 1]; + if (r1) { + throw takeObject(r0); } - totalBytesWritten += numBytesWritten; - data21 = data21.subarray(numBytesWritten); + } finally{ + wasm.__wbindgen_add_to_stack_pointer(16); } - numBytesWritten = copy2(data21, this.buf, this.usedBufferBytes); - this.usedBufferBytes += numBytesWritten; - totalBytesWritten += numBytesWritten; - return totalBytesWritten; + } + clone() { + const ret = wasm.digestcontext_clone(this.ptr); + return DigestContext.__wrap(ret); } } -class BufWriterSync2 extends AbstractBufBase2 { - #writer; - static create(writer, size = 4096) { - return writer instanceof BufWriterSync2 ? writer : new BufWriterSync2(writer, size); +const imports = { + __wbindgen_placeholder__: { + __wbg_new_a4b61a0f54824cfd: function(arg0, arg1) { + const ret = new TypeError(getStringFromWasm0(arg0, arg1)); + return addHeapObject(ret); + }, + __wbindgen_object_drop_ref: function(arg0) { + takeObject(arg0); + }, + __wbg_byteLength_3e250b41a8915757: function(arg0) { + const ret = getObject(arg0).byteLength; + return ret; + }, + __wbg_byteOffset_4204ecb24a6e5df9: function(arg0) { + const ret = getObject(arg0).byteOffset; + return ret; + }, + __wbg_buffer_facf0398a281c85b: function(arg0) { + const ret = getObject(arg0).buffer; + return addHeapObject(ret); + }, + __wbg_newwithbyteoffsetandlength_4b9b8c4e3f5adbff: function(arg0, arg1, arg2) { + const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); + return addHeapObject(ret); + }, + __wbg_length_1eb8fc608a0d4cdb: function(arg0) { + const ret = getObject(arg0).length; + return ret; + }, + __wbindgen_memory: function() { + const ret = wasm.memory; + return addHeapObject(ret); + }, + __wbg_buffer_397eaa4d72ee94dd: function(arg0) { + const ret = getObject(arg0).buffer; + return addHeapObject(ret); + }, + __wbg_new_a7ce447f15ff496f: function(arg0) { + const ret = new Uint8Array(getObject(arg0)); + return addHeapObject(ret); + }, + __wbg_set_969ad0a60e51d320: function(arg0, arg1, arg2) { + getObject(arg0).set(getObject(arg1), arg2 >>> 0); + }, + __wbindgen_throw: function(arg0, arg1) { + throw new Error(getStringFromWasm0(arg0, arg1)); + } } - constructor(writer, size = 4096){ - super(new Uint8Array(size <= 0 ? 4096 : size)); - this.#writer = writer; +}; +function instantiate() { + return instantiateWithInstance().exports; +} +let instanceWithExports; +function instantiateWithInstance() { + if (instanceWithExports == null) { + const instance = instantiateInstance(); + wasm = instance.exports; + cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); + cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); + instanceWithExports = { + instance, + exports: { + digest, + DigestContext + } + }; } - reset(w15) { - this.err = null; - this.usedBufferBytes = 0; - this.#writer = w15; + return instanceWithExports; +} +function instantiateInstance() { + const wasmBytes = base64decode("\ +AGFzbQEAAAABo4GAgAAYYAAAYAABf2ABfwBgAX8Bf2ABfwF+YAJ/fwBgAn9/AX9gA39/fwBgA39/fw\ +F/YAR/f39/AGAEf39/fwF/YAV/f39/fwBgBX9/f39/AX9gBn9/f39/fwBgBn9/f39/fwF/YAV/f39+\ +fwBgB39/f35/f38Bf2ADf39+AGAFf399f38AYAV/f3x/fwBgAn9+AGAEf31/fwBgBH98f38AYAJ+fw\ +F/AqSFgIAADBhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193YmdfbmV3X2E0YjYxYTBmNTQ4MjRj\ +ZmQABhhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193YmluZGdlbl9vYmplY3RfZHJvcF9yZWYAAh\ +hfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18hX193YmdfYnl0ZUxlbmd0aF8zZTI1MGI0MWE4OTE1NzU3\ +AAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fIV9fd2JnX2J5dGVPZmZzZXRfNDIwNGVjYjI0YTZlNW\ +RmOQADGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx1fX3diZ19idWZmZXJfZmFjZjAzOThhMjgxYzg1\ +YgADGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXzFfX3diZ19uZXd3aXRoYnl0ZW9mZnNldGFuZGxlbm\ +d0aF80YjliOGM0ZTNmNWFkYmZmAAgYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2xlbmd0\ +aF8xZWI4ZmM2MDhhMGQ0Y2RiAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fEV9fd2JpbmRnZW5fbW\ +Vtb3J5AAEYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2J1ZmZlcl8zOTdlYWE0ZDcyZWU5\ +NGRkAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX25ld19hN2NlNDQ3ZjE1ZmY0OTZmAA\ +MYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX3NldF85NjlhZDBhNjBlNTFkMzIwAAcYX193\ +YmluZGdlbl9wbGFjZWhvbGRlcl9fEF9fd2JpbmRnZW5fdGhyb3cABQPrgICAAGoJBwkHBxEFBwcFAw\ +cHDwMHBRACBQUFBwUCCAYHBxQMCA4HBwcHBwcIFw0FBQkICA0HCQUJCQYGBQUFBQUFBwcHBwcABQII\ +CgcHAgUDDgwLDAsLEhMJBQgIAwYGAgUAAAYDBgAABQUEAAUCBIWAgIAAAXABFRUFg4CAgAABABEGiY\ +CAgAABfwFBgIDAAAsHtoKAgAAOBm1lbW9yeQIABmRpZ2VzdAA1GF9fd2JnX2RpZ2VzdGNvbnRleHRf\ +ZnJlZQBQEWRpZ2VzdGNvbnRleHRfbmV3ADwUZGlnZXN0Y29udGV4dF91cGRhdGUAVBRkaWdlc3Rjb2\ +50ZXh0X2RpZ2VzdAA9HGRpZ2VzdGNvbnRleHRfZGlnZXN0QW5kUmVzZXQAPxtkaWdlc3Rjb250ZXh0\ +X2RpZ2VzdEFuZERyb3AAOBNkaWdlc3Rjb250ZXh0X3Jlc2V0ACETZGlnZXN0Y29udGV4dF9jbG9uZQ\ +AaH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIAbBFfX3diaW5kZ2VuX21hbGxvYwBXEl9f\ +d2JpbmRnZW5fcmVhbGxvYwBiD19fd2JpbmRnZW5fZnJlZQBoCZqAgIAAAQBBAQsUZWZtdGtZO1pbWG\ +NgXF1eX3VBQnIK0smIgABqoH4CEn8CfiMAQbAlayIEJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC\ +QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASgCAA4YAAECAwQcGxoZGB\ +cWFRQTEhEQDw4NDAsKAAsgASgCBCEBQdABEBYiBUUNBCAEQZASakE4aiABQThqKQMANwMAIARBkBJq\ +QTBqIAFBMGopAwA3AwAgBEGQEmpBKGogAUEoaikDADcDACAEQZASakEgaiABQSBqKQMANwMAIARBkB\ +JqQRhqIAFBGGopAwA3AwAgBEGQEmpBEGogAUEQaikDADcDACAEQZASakEIaiABQQhqKQMANwMAIAQg\ +ASkDADcDkBIgASkDQCEWIARBkBJqQcgAaiABQcgAahBDIAQgFjcD0BIgBSAEQZASakHQARA5GkEAIQ\ +ZBACEBDB8LIAEoAgQhAUHQARAWIgVFDQQgBEGQEmpBOGogAUE4aikDADcDACAEQZASakEwaiABQTBq\ +KQMANwMAIARBkBJqQShqIAFBKGopAwA3AwAgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEYaiABQR\ +hqKQMANwMAIARBkBJqQRBqIAFBEGopAwA3AwAgBEGQEmpBCGogAUEIaikDADcDACAEIAEpAwA3A5AS\ +IAEpA0AhFiAEQZASakHIAGogAUHIAGoQQyAEIBY3A9ASIAUgBEGQEmpB0AEQORpBASEBDBsLIAEoAg\ +QhAUHQARAWIgVFDQQgBEGQEmpBOGogAUE4aikDADcDACAEQZASakEwaiABQTBqKQMANwMAIARBkBJq\ +QShqIAFBKGopAwA3AwAgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEYaiABQRhqKQMANwMAIARBkB\ +JqQRBqIAFBEGopAwA3AwAgBEGQEmpBCGogAUEIaikDADcDACAEIAEpAwA3A5ASIAEpA0AhFiAEQZAS\ +akHIAGogAUHIAGoQQyAEIBY3A9ASIAUgBEGQEmpB0AEQORpBAiEBDBoLIAEoAgQhAUHwABAWIgVFDQ\ +QgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEYaiABQRhqKQMANwMAIARBkBJqQRBqIAFBEGopAwA3\ +AwAgBCABKQMINwOYEiABKQMAIRYgBEGQEmpBKGogAUEoahA3IAQgFjcDkBIgBSAEQZASakHwABA5Gk\ +EDIQEMGQsgASgCBCEBQfgOEBYiBUUNBCAEQZASakGIAWogAUGIAWopAwA3AwAgBEGQEmpBgAFqIAFB\ +gAFqKQMANwMAIARBkBJqQfgAaiABQfgAaikDADcDACAEQZASakEQaiABQRBqKQMANwMAIARBkBJqQR\ +hqIAFBGGopAwA3AwAgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEwaiABQTBqKQMANwMAIARBkBJq\ +QThqIAFBOGopAwA3AwAgBEGQEmpBwABqIAFBwABqKQMANwMAIARBkBJqQcgAaiABQcgAaikDADcDAC\ +AEQZASakHQAGogAUHQAGopAwA3AwAgBEGQEmpB2ABqIAFB2ABqKQMANwMAIARBkBJqQeAAaiABQeAA\ +aikDADcDACAEIAEpA3A3A4ATIAQgASkDCDcDmBIgBCABKQMoNwO4EiABKQMAIRYgAS0AaiEHIAEtAG\ +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\ +AABBwAAhAwwaCyAEIAVB0AEQOSIBQfgOakEcakIANwIAIAFB+A5qQRRqQgA3AgAgAUH4DmpBDGpCAD\ +cCACABQgA3AvwOIAFBIDYC+A4gAUGQEmpBGGoiCyABQfgOakEYaiICKQMANwMAIAFBkBJqQRBqIgwg\ +AUH4DmpBEGoiCikDADcDACABQZASakEIaiINIAFB+A5qQQhqIgMpAwA3AwAgAUGQEmpBIGogAUH4Dm\ +pBIGoiECgCADYCACABIAEpA/gONwOQEiABQbgiakEQaiIOIAFBkBJqQRRqKQIANwMAIAFBuCJqQQhq\ +IgcgAUGQEmpBDGopAgA3AwAgAUG4ImpBGGoiCCABQZASakEcaikCADcDACABIAEpApQSNwO4IiABQZ\ +ASaiABQdABEDkaIAEgASkD0BIgAUHYE2otAAAiBq18NwPQEiABQdgSaiEPAkAgBkGAAUYNACAPIAZq\ +QQBBgAEgBmsQOhoLIAFBADoA2BMgAUGQEmogD0J/EBEgAyANKQMANwMAIAogDCkDADcDACACIAspAw\ +A3AwAgECABKQOwEjcDACABQfgOakEoaiABQZASakEoaikDADcDACABQfgOakEwaiABQZASakEwaikD\ +ADcDACABQfgOakE4aiABQZASakE4aikDADcDACABIAEpA5ASNwP4DiAHIAMpAwA3AwAgDiAKKQMANw\ +MAIAggAikDADcDACABIAEpA/gONwO4IkEgEBYiBkUNHCAGIAEpA7giNwAAIAZBGGogAUG4ImpBGGop\ +AwA3AAAgBkEQaiABQbgiakEQaikDADcAACAGQQhqIAFBuCJqQQhqKQMANwAAQSAhAwwZCyAEIAVB0A\ +EQOSIBQfgOakEsakIANwIAIAFB+A5qQSRqQgA3AgAgAUH4DmpBHGpCADcCACABQfgOakEUakIANwIA\ +IAFB+A5qQQxqQgA3AgAgAUIANwL8DiABQTA2AvgOIAFBkBJqQShqIg0gAUH4DmpBKGoiAikDADcDAC\ +ABQZASakEgaiABQfgOakEgaiIKKQMANwMAIAFBkBJqQRhqIhAgAUH4DmpBGGoiAykDADcDACABQZAS\ +akEQaiIOIAFB+A5qQRBqIg8pAwA3AwAgAUGQEmpBCGoiByABQfgOakEIaiILKQMANwMAIAFBkBJqQT\ +BqIgggAUH4DmpBMGoiCSgCADYCACABIAEpA/gONwOQEiABQbgiakEgaiIRIAFBkBJqQSRqKQIANwMA\ +IAFBuCJqQRhqIhIgAUGQEmpBHGopAgA3AwAgAUG4ImpBEGoiEyABQZASakEUaikCADcDACABQbgiak\ +EIaiIUIAFBkBJqQQxqKQIANwMAIAFBuCJqQShqIhUgAUGQEmpBLGopAgA3AwAgASABKQKUEjcDuCIg\ +AUGQEmogAUHQARA5GiABIAEpA9ASIAFB2BNqLQAAIgatfDcD0BIgAUHYEmohDAJAIAZBgAFGDQAgDC\ +AGakEAQYABIAZrEDoaCyABQQA6ANgTIAFBkBJqIAxCfxARIAsgBykDADcDACAPIA4pAwA3AwAgAyAQ\ +KQMANwMAIAogASkDsBI3AwAgAiANKQMANwMAIAkgCCkDADcDACABQfgOakE4aiABQZASakE4aikDAD\ +cDACABIAEpA5ASNwP4DiAUIAspAwA3AwAgEyAPKQMANwMAIBIgAykDADcDACARIAopAwA3AwAgFSAC\ +KQMANwMAIAEgASkD+A43A7giQTAQFiIGRQ0cIAYgASkDuCI3AAAgBkEoaiABQbgiakEoaikDADcAAC\ +AGQSBqIAFBuCJqQSBqKQMANwAAIAZBGGogAUG4ImpBGGopAwA3AAAgBkEQaiABQbgiakEQaikDADcA\ +ACAGQQhqIAFBuCJqQQhqKQMANwAAQTAhAwwYCyAEIAVB8AAQOSIBQfgOakEcakIANwIAIAFB+A5qQR\ +RqQgA3AgAgAUH4DmpBDGpCADcCACABQgA3AvwOIAFBIDYC+A4gAUGQEmpBGGoiCiABQfgOakEYaikD\ +ADcDACABQZASakEQaiIDIAFB+A5qQRBqKQMANwMAIAFBkBJqQQhqIAFB+A5qQQhqIg8pAwA3AwAgAU\ +GQEmpBIGoiCyABQfgOakEgaigCADYCACABIAEpA/gONwOQEiABQegjakEQaiIMIAFBkBJqQRRqKQIA\ +NwMAIAFB6CNqQQhqIg0gAUGQEmpBDGopAgA3AwAgAUHoI2pBGGoiECABQZASakEcaikCADcDACABIA\ +EpApQSNwPoIyABQZASaiABQfAAEDkaIAEgASkDkBIgAUH4EmotAAAiBq18NwOQEiABQbgSaiECAkAg\ +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\ +ogAUH4DmpBCGopAwA3AwAgAUHoI2pBCGoiAiABQZASakEMaikCADcDACABQegjakEQaiIKIAFBkBJq\ +QRRqKAIANgIAIAEgASkD+A43A5ASIAEgASkClBI3A+gjIAFBkBJqIAFB6AAQORogAUGQEmogAUGwEm\ +ogAUHoI2oQLUEUEBYiBkUNHCAGIAEpA+gjNwAAIAZBEGogCigCADYAACAGQQhqIAIpAwA3AAAMDwtB\ +FCEDIAQgBUHoABA5IgFB+A5qQRRqQQA2AgAgAUH4DmpBDGpCADcCACABQQA2AvgOIAFCADcC/A4gAU\ +EUNgL4DiABQZASakEQaiABQfgOakEQaikDADcDACABQZASakEIaiABQfgOakEIaikDADcDACABQegj\ +akEIaiICIAFBkBJqQQxqKQIANwMAIAFB6CNqQRBqIgogAUGQEmpBFGooAgA2AgAgASABKQP4DjcDkB\ +IgASABKQKUEjcD6CMgAUGQEmogAUHoABA5GiABQZASaiABQbASaiABQegjahAoQRQQFiIGRQ0cIAYg\ +ASkD6CM3AAAgBkEQaiAKKAIANgAAIAZBCGogAikDADcAAAwOCyAEIAVB4AIQOSIKQZASaiAKQeACED\ +kaIApBkBJqIApB6BRqLQAAIgFqQcgBaiECAkAgAUGQAUYNACACQQBBkAEgAWsQOhoLQQAhBiAKQQA6\ +AOgUIAJBBjoAACAKQecUaiIBIAEtAABBgAFyOgAAA0AgCkGQEmogBmoiASABLQAAIAFByAFqLQAAcz\ +oAACABQQFqIgIgAi0AACABQckBai0AAHM6AAAgAUECaiICIAItAAAgAUHKAWotAABzOgAAIAFBA2oi\ +AiACLQAAIAFBywFqLQAAczoAACAGQQRqIgZBkAFHDQALIApBkBJqECQgCkH4DmpBGGoiASAKQZASak\ +EYaigCADYCACAKQfgOakEQaiICIApBkBJqQRBqKQMANwMAIApB+A5qQQhqIg8gCkGQEmpBCGopAwA3\ +AwAgCiAKKQOQEjcD+A5BHCEDQRwQFiIGRQ0cIAYgCikD+A43AAAgBkEYaiABKAIANgAAIAZBEGogAi\ +kDADcAACAGQQhqIA8pAwA3AAAMDQsgBCAFQdgCEDkiCkGQEmogCkHYAhA5GiAKQZASaiAKQeAUai0A\ +ACIBakHIAWohAgJAIAFBiAFGDQAgAkEAQYgBIAFrEDoaC0EAIQYgCkEAOgDgFCACQQY6AAAgCkHfFG\ +oiASABLQAAQYABcjoAAANAIApBkBJqIAZqIgEgAS0AACABQcgBai0AAHM6AAAgAUEBaiICIAItAAAg\ +AUHJAWotAABzOgAAIAFBAmoiAiACLQAAIAFBygFqLQAAczoAACABQQNqIgIgAi0AACABQcsBai0AAH\ +M6AAAgBkEEaiIGQYgBRw0ACyAKQZASahAkIApB+A5qQRhqIgEgCkGQEmpBGGopAwA3AwAgCkH4DmpB\ +EGoiAiAKQZASakEQaikDADcDACAKQfgOakEIaiIPIApBkBJqQQhqKQMANwMAIAogCikDkBI3A/gOQS\ +AhA0EgEBYiBkUNHCAGIAopA/gONwAAIAZBGGogASkDADcAACAGQRBqIAIpAwA3AAAgBkEIaiAPKQMA\ +NwAADAwLIAQgBUG4AhA5IgpBkBJqIApBuAIQORogCkGQEmogCkHAFGotAAAiAWpByAFqIQICQCABQe\ +gARg0AIAJBAEHoACABaxA6GgtBACEGIApBADoAwBQgAkEGOgAAIApBvxRqIgEgAS0AAEGAAXI6AAAD\ +QCAKQZASaiAGaiIBIAEtAAAgAUHIAWotAABzOgAAIAFBAWoiAiACLQAAIAFByQFqLQAAczoAACABQQ\ +JqIgIgAi0AACABQcoBai0AAHM6AAAgAUEDaiICIAItAAAgAUHLAWotAABzOgAAIAZBBGoiBkHoAEcN\ +AAsgCkGQEmoQJCAKQfgOakEoaiIBIApBkBJqQShqKQMANwMAIApB+A5qQSBqIgIgCkGQEmpBIGopAw\ +A3AwAgCkH4DmpBGGoiDyAKQZASakEYaikDADcDACAKQfgOakEQaiILIApBkBJqQRBqKQMANwMAIApB\ ++A5qQQhqIgwgCkGQEmpBCGopAwA3AwAgCiAKKQOQEjcD+A5BMCEDQTAQFiIGRQ0cIAYgCikD+A43AA\ +AgBkEoaiABKQMANwAAIAZBIGogAikDADcAACAGQRhqIA8pAwA3AAAgBkEQaiALKQMANwAAIAZBCGog\ +DCkDADcAAAwLCyAEIAVBmAIQOSIKQZASaiAKQZgCEDkaIApBkBJqIApBoBRqLQAAIgFqQcgBaiECAk\ +AgAUHIAEYNACACQQBByAAgAWsQOhoLQQAhBiAKQQA6AKAUIAJBBjoAACAKQZ8UaiIBIAEtAABBgAFy\ +OgAAA0AgCkGQEmogBmoiASABLQAAIAFByAFqLQAAczoAACABQQFqIgIgAi0AACABQckBai0AAHM6AA\ +AgAUECaiICIAItAAAgAUHKAWotAABzOgAAIAFBA2oiAiACLQAAIAFBywFqLQAAczoAACAGQQRqIgZB\ +yABHDQALIApBkBJqECQgCkH4DmpBOGoiASAKQZASakE4aikDADcDACAKQfgOakEwaiICIApBkBJqQT\ +BqKQMANwMAIApB+A5qQShqIg8gCkGQEmpBKGopAwA3AwAgCkH4DmpBIGoiCyAKQZASakEgaikDADcD\ +ACAKQfgOakEYaiIMIApBkBJqQRhqKQMANwMAIApB+A5qQRBqIg0gCkGQEmpBEGopAwA3AwAgCkH4Dm\ +pBCGoiECAKQZASakEIaikDADcDACAKIAopA5ASNwP4DkHAACEDQcAAEBYiBkUNHCAGIAopA/gONwAA\ +IAZBOGogASkDADcAACAGQTBqIAIpAwA3AAAgBkEoaiAPKQMANwAAIAZBIGogCykDADcAACAGQRhqIA\ +wpAwA3AAAgBkEQaiANKQMANwAAIAZBCGogECkDADcAAAwKCyAEIAVB8AAQOSIBQZASaiABQfAAEDka\ +QRwhAyABQegjakEcakIANwIAIAFB6CNqQRRqQgA3AgAgAUHoI2pBDGpCADcCACABQgA3AuwjIAFBID\ +YC6CMgAUH4DmpBGGoiAiABQegjakEYaikDADcDACABQfgOakEQaiIKIAFB6CNqQRBqKQMANwMAIAFB\ ++A5qQQhqIg8gAUHoI2pBCGopAwA3AwAgAUH4DmpBIGogAUHoI2pBIGooAgA2AgAgASABKQPoIzcD+A\ +4gAUG4ImpBEGoiBiABQfgOakEUaikCADcDACABQbgiakEIaiILIAFB+A5qQQxqKQIANwMAIAFBuCJq\ +QRhqIgwgAUH4DmpBHGopAgA3AwAgASABKQL8DjcDuCIgAUGQEmogAUG4EmogAUG4ImoQJyACIAwoAg\ +A2AgAgCiAGKQMANwMAIA8gCykDADcDACABIAEpA7giNwP4DkEcEBYiBkUNHCAGIAEpA/gONwAAIAZB\ +GGogAigCADYAACAGQRBqIAopAwA3AAAgBkEIaiAPKQMANwAADAkLIAQgBUHwABA5IgFBkBJqIAFB8A\ +AQORogAUHoI2pBHGpCADcCACABQegjakEUakIANwIAIAFB6CNqQQxqQgA3AgAgAUIANwLsI0EgIQMg\ +AUEgNgLoIyABQfgOakEgaiABQegjakEgaigCADYCACABQfgOakEYaiICIAFB6CNqQRhqKQMANwMAIA\ +FB+A5qQRBqIgogAUHoI2pBEGopAwA3AwAgAUH4DmpBCGoiDyABQegjakEIaikDADcDACABIAEpA+gj\ +NwP4DiABQbgiakEYaiIGIAFB+A5qQRxqKQIANwMAIAFBuCJqQRBqIgsgAUH4DmpBFGopAgA3AwAgAU\ +G4ImpBCGoiDCABQfgOakEMaikCADcDACABIAEpAvwONwO4IiABQZASaiABQbgSaiABQbgiahAnIAIg\ +BikDADcDACAKIAspAwA3AwAgDyAMKQMANwMAIAEgASkDuCI3A/gOQSAQFiIGRQ0cIAYgASkD+A43AA\ +AgBkEYaiACKQMANwAAIAZBEGogCikDADcAACAGQQhqIA8pAwA3AAAMCAsgBCAFQdgBEDkiAUGQEmog\ +AUHYARA5GiABQegjakEMakIANwIAIAFB6CNqQRRqQgA3AgAgAUHoI2pBHGpCADcCACABQegjakEkak\ +IANwIAIAFB6CNqQSxqQgA3AgAgAUHoI2pBNGpCADcCACABQegjakE8akIANwIAIAFCADcC7CMgAUHA\ +ADYC6CMgAUH4DmogAUHoI2pBxAAQORogAUHwImogAUH4DmpBPGopAgA3AwBBMCEDIAFBuCJqQTBqIA\ +FB+A5qQTRqKQIANwMAIAFBuCJqQShqIgYgAUH4DmpBLGopAgA3AwAgAUG4ImpBIGoiAiABQfgOakEk\ +aikCADcDACABQbgiakEYaiIKIAFB+A5qQRxqKQIANwMAIAFBuCJqQRBqIg8gAUH4DmpBFGopAgA3Aw\ +AgAUG4ImpBCGoiCyABQfgOakEMaikCADcDACABIAEpAvwONwO4IiABQZASaiABQeASaiABQbgiahAi\ +IAFB+A5qQShqIgwgBikDADcDACABQfgOakEgaiINIAIpAwA3AwAgAUH4DmpBGGoiAiAKKQMANwMAIA\ +FB+A5qQRBqIgogDykDADcDACABQfgOakEIaiIPIAspAwA3AwAgASABKQO4IjcD+A5BMBAWIgZFDRwg\ +BiABKQP4DjcAACAGQShqIAwpAwA3AAAgBkEgaiANKQMANwAAIAZBGGogAikDADcAACAGQRBqIAopAw\ +A3AAAgBkEIaiAPKQMANwAADAcLIAQgBUHYARA5IgFBkBJqIAFB2AEQORogAUHoI2pBDGpCADcCACAB\ +QegjakEUakIANwIAIAFB6CNqQRxqQgA3AgAgAUHoI2pBJGpCADcCACABQegjakEsakIANwIAIAFB6C\ +NqQTRqQgA3AgAgAUHoI2pBPGpCADcCACABQgA3AuwjQcAAIQMgAUHAADYC6CMgAUH4DmogAUHoI2pB\ +xAAQORogAUG4ImpBOGoiBiABQfgOakE8aikCADcDACABQbgiakEwaiICIAFB+A5qQTRqKQIANwMAIA\ +FBuCJqQShqIgogAUH4DmpBLGopAgA3AwAgAUG4ImpBIGoiDyABQfgOakEkaikCADcDACABQbgiakEY\ +aiILIAFB+A5qQRxqKQIANwMAIAFBuCJqQRBqIgwgAUH4DmpBFGopAgA3AwAgAUG4ImpBCGoiDSABQf\ +gOakEMaikCADcDACABIAEpAvwONwO4IiABQZASaiABQeASaiABQbgiahAiIAFB+A5qQThqIhAgBikD\ +ADcDACABQfgOakEwaiIOIAIpAwA3AwAgAUH4DmpBKGoiAiAKKQMANwMAIAFB+A5qQSBqIgogDykDAD\ +cDACABQfgOakEYaiIPIAspAwA3AwAgAUH4DmpBEGoiCyAMKQMANwMAIAFB+A5qQQhqIgwgDSkDADcD\ +ACABIAEpA7giNwP4DkHAABAWIgZFDRwgBiABKQP4DjcAACAGQThqIBApAwA3AAAgBkEwaiAOKQMANw\ +AAIAZBKGogAikDADcAACAGQSBqIAopAwA3AAAgBkEYaiAPKQMANwAAIAZBEGogCykDADcAACAGQQhq\ +IAwpAwA3AAAMBgsgBEH4DmogBUH4AhA5GiADQQBIDQECQAJAIAMNAEEBIQYMAQsgAxAWIgZFDR0gBk\ +F8ai0AAEEDcUUNACAGQQAgAxA6GgsgBEGQEmogBEH4DmpB+AIQORogBCAEQfgOakHIARA5Ig9ByAFq\ +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\ +gAEgAWsQOhoLQQAhASADQQA6AAAgAiAFQn8QESAEQShqQQhqIgUgAkEIaikDACIQNwMAIARBKGpBEG\ +ogAkEQaikDACIRNwMAIARBKGpBGGogAkEYaikDACISNwMAIARBKGpBIGogAikDICITNwMAIARBKGpB\ +KGogAkEoaikDACIUNwMAIAwgEDcDACALIBE3AwAgCiASNwMAIAkgEzcDACAIIBQ3AwAgByACQTBqKQ\ +MANwMAIAYgAkE4aikDADcDACAEIAIpAwAiEDcDKCAEIBA3A6ADIAVBwAAQTyACIAVByAAQORogA0EA\ +OgAAQcAAEBYiAkUNGiACIAQpA6ADNwAAIAJBOGogBEGgA2pBOGopAwA3AAAgAkEwaiAEQaADakEwai\ +kDADcAACACQShqIARBoANqQShqKQMANwAAIAJBIGogBEGgA2pBIGopAwA3AAAgAkEYaiAEQaADakEY\ +aikDADcAACACQRBqIARBoANqQRBqKQMANwAAIAJBCGogBEGgA2pBCGopAwA3AABBwAAhAwwyCyABKA\ +IEIQIgBEHQBGpBHGpCADcCACAEQdAEakEUakIANwIAIARB0ARqQQxqQgA3AgAgBEIANwLUBCAEQSA2\ +AtAEIARBKGpBGGoiByAEQdAEakEYaikDADcDACAEQShqQRBqIgggBEHQBGpBEGopAwA3AwAgBEEoak\ +EIaiIDIARB0ARqQQhqKQMANwMAIARBKGpBIGoiCSAEQdAEakEgaigCADYCACAEIAQpA9AENwMoIARB\ +oANqQRBqIgogBEEoakEUaikCADcDACAEQaADakEIaiILIARBKGpBDGopAgA3AwAgBEGgA2pBGGoiDC\ +AEQShqQRxqKQIANwMAIAQgBCkCLDcDoAMgAiACKQNAIAJByAFqIgUtAAAiAa18NwNAIAJByABqIQYC\ +QCABQYABRg0AIAYgAWpBAEGAASABaxA6GgtBACEBIAVBADoAACACIAZCfxARIAMgAkEIaikDACIQNw\ +MAIAggAkEQaikDACIRNwMAIAcgAkEYaikDACISNwMAIAkgAikDIDcDACAEQShqQShqIAJBKGopAwA3\ +AwAgCyAQNwMAIAogETcDACAMIBI3AwAgBCACKQMAIhA3AyggBCAQNwOgAyADQSAQTyACIANByAAQOR\ +ogBUEAOgAAQSAQFiICRQ0aIAIgBCkDoAM3AAAgAkEYaiAEQaADakEYaikDADcAACACQRBqIARBoANq\ +QRBqKQMANwAAIAJBCGogBEGgA2pBCGopAwA3AABBICEDDDELIAEoAgQhAiAEQdAEakEsakIANwIAIA\ +RB0ARqQSRqQgA3AgAgBEHQBGpBHGpCADcCACAEQdAEakEUakIANwIAIARB0ARqQQxqQgA3AgAgBEIA\ +NwLUBCAEQTA2AtAEIARBKGpBKGoiByAEQdAEakEoaikDADcDACAEQShqQSBqIgggBEHQBGpBIGopAw\ +A3AwAgBEEoakEYaiIJIARB0ARqQRhqKQMANwMAIARBKGpBEGoiCiAEQdAEakEQaikDADcDACAEQShq\ +QQhqIgMgBEHQBGpBCGopAwA3AwAgBEEoakEwaiAEQdAEakEwaigCADYCACAEIAQpA9AENwMoIARBoA\ +NqQSBqIgsgBEEoakEkaikCADcDACAEQaADakEYaiIMIARBKGpBHGopAgA3AwAgBEGgA2pBEGoiDSAE\ +QShqQRRqKQIANwMAIARBoANqQQhqIg4gBEEoakEMaikCADcDACAEQaADakEoaiIPIARBKGpBLGopAg\ +A3AwAgBCAEKQIsNwOgAyACIAIpA0AgAkHIAWoiBS0AACIBrXw3A0AgAkHIAGohBgJAIAFBgAFGDQAg\ +BiABakEAQYABIAFrEDoaC0EAIQEgBUEAOgAAIAIgBkJ/EBEgAyACQQhqKQMAIhA3AwAgCiACQRBqKQ\ +MAIhE3AwAgCSACQRhqKQMAIhI3AwAgCCACKQMgIhM3AwAgByACQShqKQMAIhQ3AwAgDiAQNwMAIA0g\ +ETcDACAMIBI3AwAgCyATNwMAIA8gFDcDACAEIAIpAwAiEDcDKCAEIBA3A6ADIANBMBBPIAIgA0HIAB\ +A5GiAFQQA6AABBMBAWIgJFDRogAiAEKQOgAzcAACACQShqIARBoANqQShqKQMANwAAIAJBIGogBEGg\ +A2pBIGopAwA3AAAgAkEYaiAEQaADakEYaikDADcAACACQRBqIARBoANqQRBqKQMANwAAIAJBCGogBE\ +GgA2pBCGopAwA3AABBMCEDDDALIAEoAgQhAiAEQdAEakEcakIANwIAIARB0ARqQRRqQgA3AgAgBEHQ\ +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\ +IAIARB0ARqQSRqQgA3AgAgBEHQBGpBLGpCADcCACAEQdAEakE0akIANwIAIARB0ARqQTxqQgA3AgAg\ +BEIANwLUBCAEQcAANgLQBCAEQShqIARB0ARqQcQAEDkaIARBoANqQThqIARBKGpBPGopAgA3AwBBMC\ +EDIARBoANqQTBqIARBKGpBNGopAgA3AwAgBEGgA2pBKGoiASAEQShqQSxqKQIANwMAIARBoANqQSBq\ +IgUgBEEoakEkaikCADcDACAEQaADakEYaiIGIARBKGpBHGopAgA3AwAgBEGgA2pBEGoiByAEQShqQR\ +RqKQIANwMAIARBoANqQQhqIgggBEEoakEMaikCADcDACAEIAQpAiw3A6ADIAIgAkHQAGogBEGgA2oQ\ +IiAEQShqQShqIgkgASkDADcDACAEQShqQSBqIgogBSkDADcDACAEQShqQRhqIgUgBikDADcDACAEQS\ +hqQRBqIgYgBykDADcDACAEQShqQQhqIgcgCCkDADcDACAEIAQpA6ADNwMoIAJByABqQgA3AwAgAkIA\ +NwNAQQAhASACQThqQQApA6iPQDcDACACQTBqQQApA6CPQDcDACACQShqQQApA5iPQDcDACACQSBqQQ\ +ApA5CPQDcDACACQRhqQQApA4iPQDcDACACQRBqQQApA4CPQDcDACACQQhqQQApA/iOQDcDACACQQAp\ +A/COQDcDACACQdABakEAOgAAQTAQFiICRQ0aIAIgBCkDKDcAACACQShqIAkpAwA3AAAgAkEgaiAKKQ\ +MANwAAIAJBGGogBSkDADcAACACQRBqIAYpAwA3AAAgAkEIaiAHKQMANwAADB8LIAEoAgQhAiAEQdAE\ +akEMakIANwIAIARB0ARqQRRqQgA3AgAgBEHQBGpBHGpCADcCACAEQdAEakEkakIANwIAIARB0ARqQS\ +xqQgA3AgAgBEHQBGpBNGpCADcCACAEQdAEakE8akIANwIAIARCADcC1ARBwAAhAyAEQcAANgLQBCAE\ +QShqIARB0ARqQcQAEDkaIARBoANqQThqIgEgBEEoakE8aikCADcDACAEQaADakEwaiIFIARBKGpBNG\ +opAgA3AwAgBEGgA2pBKGoiBiAEQShqQSxqKQIANwMAIARBoANqQSBqIgcgBEEoakEkaikCADcDACAE\ +QaADakEYaiIIIARBKGpBHGopAgA3AwAgBEGgA2pBEGoiCSAEQShqQRRqKQIANwMAIARBoANqQQhqIg\ +ogBEEoakEMaikCADcDACAEIAQpAiw3A6ADIAIgAkHQAGogBEGgA2oQIiAEQShqQThqIgsgASkDADcD\ +ACAEQShqQTBqIgwgBSkDADcDACAEQShqQShqIgUgBikDADcDACAEQShqQSBqIgYgBykDADcDACAEQS\ +hqQRhqIgcgCCkDADcDACAEQShqQRBqIgggCSkDADcDACAEQShqQQhqIgkgCikDADcDACAEIAQpA6AD\ +NwMoIAJByABqQgA3AwAgAkIANwNAQQAhASACQThqQQApA+iOQDcDACACQTBqQQApA+COQDcDACACQS\ +hqQQApA9iOQDcDACACQSBqQQApA9COQDcDACACQRhqQQApA8iOQDcDACACQRBqQQApA8COQDcDACAC\ +QQhqQQApA7iOQDcDACACQQApA7COQDcDACACQdABakEAOgAAQcAAEBYiAkUNGiACIAQpAyg3AAAgAk\ +E4aiALKQMANwAAIAJBMGogDCkDADcAACACQShqIAUpAwA3AAAgAkEgaiAGKQMANwAAIAJBGGogBykD\ +ADcAACACQRBqIAgpAwA3AAAgAkEIaiAJKQMANwAADB4LIANBAEgNASABKAIEIQcCQAJAIAMNAEEBIQ\ +IMAQsgAxAWIgJFDRsgAkF8ai0AAEEDcUUNACACQQAgAxA6GgsgByAHQfACaiIILQAAIgFqQcgBaiEG\ +AkAgAUGoAUYNACAGQQBBqAEgAWsQOhoLQQAhBSAIQQA6AAAgBkEfOgAAIAdB7wJqIgEgAS0AAEGAAX\ +I6AAADQCAHIAVqIgEgAS0AACABQcgBai0AAHM6AAAgAUEBaiIGIAYtAAAgAUHJAWotAABzOgAAIAFB\ +AmoiBiAGLQAAIAFBygFqLQAAczoAACABQQNqIgYgBi0AACABQcsBai0AAHM6AAAgBUEEaiIFQagBRw\ +0ACyAHECQgBEEoaiAHQcgBEDkaQQAhASAHQQBByAEQOkHwAmpBADoAACAEQQA2AqADIARBoANqQQRy\ +QQBBqAEQOhogBEGoATYCoAMgBEHQBGogBEGgA2pBrAEQORogBEEoakHIAWogBEHQBGpBBHJBqAEQOR\ +ogBEEoakHwAmpBADoAACAEQShqIAIgAxAxDB0LIANBAEgNACABKAIEIQcgAw0BQQEhAgwCCxBpAAsg\ +AxAWIgJFDRggAkF8ai0AAEEDcUUNACACQQAgAxA6GgsgByAHQdACaiIILQAAIgFqQcgBaiEGAkAgAU\ +GIAUYNACAGQQBBiAEgAWsQOhoLQQAhBSAIQQA6AAAgBkEfOgAAIAdBzwJqIgEgAS0AAEGAAXI6AAAD\ +QCAHIAVqIgEgAS0AACABQcgBai0AAHM6AAAgAUEBaiIGIAYtAAAgAUHJAWotAABzOgAAIAFBAmoiBi\ +AGLQAAIAFBygFqLQAAczoAACABQQNqIgYgBi0AACABQcsBai0AAHM6AAAgBUEEaiIFQYgBRw0ACyAH\ +ECQgBEEoaiAHQcgBEDkaQQAhASAHQQBByAEQOkHQAmpBADoAACAEQQA2AqADIARBoANqQQRyQQBBiA\ +EQOhogBEGIATYCoAMgBEHQBGogBEGgA2pBjAEQORogBEEoakHIAWogBEHQBGpBBHJBiAEQORogBEEo\ +akHQAmpBADoAACAEQShqIAIgAxAyDBkLIAEoAgQhAiAEQdAEakEUakIANwIAIARB0ARqQQxqQgA3Ag\ +AgBEIANwLUBEEYIQMgBEEYNgLQBCAEQShqQRBqIARB0ARqQRBqKQMANwMAIARBKGpBCGogBEHQBGpB\ +CGopAwA3AwAgBEEoakEYaiAEQdAEakEYaigCADYCACAEQaADakEIaiIFIARBKGpBDGopAgA3AwAgBE\ +GgA2pBEGoiBiAEQShqQRRqKQIANwMAIAQgBCkD0AQ3AyggBCAEKQIsNwOgAyACIAJBIGogBEGgA2oQ\ +MCACQgA3AwBBACEBIAJB4ABqQQA6AAAgAkEAKQP4kUA3AwggAkEQakEAKQOAkkA3AwAgAkEYakEAKQ\ +OIkkA3AwBBGBAWIgJFDRcgAiAEKQOgAzcAACACQRBqIAYpAwA3AAAgAkEIaiAFKQMANwAADBgLQcAA\ +QQFBACgC+NRAIgRBBCAEGxEFAAALQSBBAUEAKAL41EAiBEEEIAQbEQUAAAtBMEEBQQAoAvjUQCIEQQ\ +QgBBsRBQAAC0EgQQFBACgC+NRAIgRBBCAEGxEFAAALIANBAUEAKAL41EAiBEEEIAQbEQUAAAtBHEEB\ +QQAoAvjUQCIEQQQgBBsRBQAAC0EgQQFBACgC+NRAIgRBBCAEGxEFAAALQTBBAUEAKAL41EAiBEEEIA\ +QbEQUAAAtBwABBAUEAKAL41EAiBEEEIAQbEQUAAAtBEEEBQQAoAvjUQCIEQQQgBBsRBQAAC0EQQQFB\ +ACgC+NRAIgRBBCAEGxEFAAALQRRBAUEAKAL41EAiBEEEIAQbEQUAAAtBFEEBQQAoAvjUQCIEQQQgBB\ +sRBQAAC0EcQQFBACgC+NRAIgRBBCAEGxEFAAALQSBBAUEAKAL41EAiBEEEIAQbEQUAAAtBMEEBQQAo\ +AvjUQCIEQQQgBBsRBQAAC0HAAEEBQQAoAvjUQCIEQQQgBBsRBQAAC0EcQQFBACgC+NRAIgRBBCAEGx\ +EFAAALQSBBAUEAKAL41EAiBEEEIAQbEQUAAAtBMEEBQQAoAvjUQCIEQQQgBBsRBQAAC0HAAEEBQQAo\ +AvjUQCIEQQQgBBsRBQAACyADQQFBACgC+NRAIgRBBCAEGxEFAAALIANBAUEAKAL41EAiBEEEIAQbEQ\ +UAAAtBGEEBQQAoAvjUQCIEQQQgBBsRBQAACyAAIAI2AgQgACABNgIAIABBCGogAzYCACAEQYAGaiQA\ +C5xWAhp/An4jAEGwAmsiAyQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQA\ +JAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC\ +QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCAA4YAAECAw\ +QFBgcICQoLDA0ODxAREhMUFRYXAAsgACgCBCIAQcgAaiEEAkBBgAEgAEHIAWotAAAiBWsiBiACTw0A\ +AkAgBUUNACAEIAVqIAEgBhA5GiAAIAApA0BCgAF8NwNAIAAgBEIAEBEgASAGaiEBIAIgBmshAgsgAi\ +ACQQd2IgYgAkEARyACQf8AcUVxIgdrIgVBB3QiCGshAiAFRQ1FIAhFDUUgBkEAIAdrakEHdCEGIAEh\ +BQNAIAAgACkDQEKAAXw3A0AgACAFQgAQESAFQYABaiEFIAZBgH9qIgYNAAxGCwsgBCAFaiABIAIQOR\ +ogBSACaiECDEULIAAoAgQiAEHIAGohBAJAQYABIABByAFqLQAAIgVrIgYgAk8NAAJAIAVFDQAgBCAF\ +aiABIAYQORogACAAKQNAQoABfDcDQCAAIARCABARIAEgBmohASACIAZrIQILIAIgAkEHdiIGIAJBAE\ +cgAkH/AHFFcSIHayIFQQd0IghrIQIgBUUNQSAIRQ1BIAZBACAHa2pBB3QhBiABIQUDQCAAIAApA0BC\ +gAF8NwNAIAAgBUIAEBEgBUGAAWohBSAGQYB/aiIGDQAMQgsLIAQgBWogASACEDkaIAUgAmohAgxBCy\ +AAKAIEIgBByABqIQQCQEGAASAAQcgBai0AACIFayIGIAJPDQACQCAFRQ0AIAQgBWogASAGEDkaIAAg\ +ACkDQEKAAXw3A0AgACAEQgAQESABIAZqIQEgAiAGayECCyACIAJBB3YiBiACQQBHIAJB/wBxRXEiB2\ +siBUEHdCIIayECIAVFDT0gCEUNPSAGQQAgB2tqQQd0IQYgASEFA0AgACAAKQNAQoABfDcDQCAAIAVC\ +ABARIAVBgAFqIQUgBkGAf2oiBg0ADD4LCyAEIAVqIAEgAhA5GiAFIAJqIQIMPQsgACgCBCIAQShqIQ\ +QCQEHAACAAQegAai0AACIFayIGIAJPDQACQCAFRQ0AIAQgBWogASAGEDkaIAAgACkDAELAAHw3AwAg\ +ACAEQQAQEyABIAZqIQEgAiAGayECCyACIAJBBnYiBiACQQBHIAJBP3FFcSIHayIFQQZ0IghrIQIgBU\ +UNOSAIRQ05IAZBACAHa2pBBnQhBiABIQUDQCAAIAApAwBCwAB8NwMAIAAgBUEAEBMgBUHAAGohBSAG\ +QUBqIgYNAAw6CwsgBCAFaiABIAIQORogBSACaiECDDkLIAAoAgQiCEHpAGotAABBBnQgCC0AaGoiAE\ +UNNiAIIAEgAkGACCAAayIAIAAgAksbIgUQMxogAiAFayICRQ1CIANB+ABqQRBqIAhBEGoiACkDADcD\ +ACADQfgAakEYaiAIQRhqIgYpAwA3AwAgA0H4AGpBIGogCEEgaiIEKQMANwMAIANB+ABqQTBqIAhBMG\ +opAwA3AwAgA0H4AGpBOGogCEE4aikDADcDACADQfgAakHAAGogCEHAAGopAwA3AwAgA0H4AGpByABq\ +IAhByABqKQMANwMAIANB+ABqQdAAaiAIQdAAaikDADcDACADQfgAakHYAGogCEHYAGopAwA3AwAgA0\ +H4AGpB4ABqIAhB4ABqKQMANwMAIAMgCCkDCDcDgAEgAyAIKQMoNwOgASAIQekAai0AACEHIAgtAGoh\ +CSADIAgtAGgiCjoA4AEgAyAIKQMAIh03A3ggAyAJIAdFckECciIHOgDhASADQegBakEYaiIJIAQpAg\ +A3AwAgA0HoAWpBEGoiBCAGKQIANwMAIANB6AFqQQhqIgYgACkCADcDACADIAgpAgg3A+gBIANB6AFq\ +IANB+ABqQShqIAogHSAHEBkgCSgCACEHIAQoAgAhBCAGKAIAIQkgAygChAIhCiADKAL8ASELIAMoAv\ +QBIQwgAygC7AEhDSADKALoASEOIAggCCkDABApIAgoApABIgZBN08NEyAIQZABaiAGQQV0aiIAQSBq\ +IAo2AgAgAEEcaiAHNgIAIABBGGogCzYCACAAQRRqIAQ2AgAgAEEQaiAMNgIAIABBDGogCTYCACAAQQ\ +hqIA02AgAgAEEEaiAONgIAIAggBkEBajYCkAEgCEEoaiIAQgA3AwAgAEEIakIANwMAIABBEGpCADcD\ +ACAAQRhqQgA3AwAgAEEgakIANwMAIABBKGpCADcDACAAQTBqQgA3AwAgAEE4akIANwMAIAhBADsBaC\ +AIQQhqIgAgCCkDcDcDACAAQQhqIAhB+ABqKQMANwMAIABBEGogCEGAAWopAwA3AwAgAEEYaiAIQYgB\ +aikDADcDACAIIAgpAwBCAXw3AwAgASAFaiEBDDYLIAAoAgQiBEHIAWohCgJAQZABIARB2AJqLQAAIg\ +BrIgggAksNAAJAIABFDQAgCiAAaiABIAgQORogAiAIayECQQAhBQNAIAQgBWoiACAALQAAIABByAFq\ +LQAAczoAACAAQQFqIgYgBi0AACAAQckBai0AAHM6AAAgAEECaiIGIAYtAAAgAEHKAWotAABzOgAAIA\ +BBA2oiBiAGLQAAIABBywFqLQAAczoAACAFQQRqIgVBkAFHDQALIAQQJCABIAhqIQELIAEgAkGQAW5B\ +kAFsIgBqIQcgAiAAayEJIAJBjwFNDTMgAEUNMwNAIAFBkAFqIQhBACEFA0AgBCAFaiIAIAAtAAAgAS\ +AFaiIGLQAAczoAACAAQQFqIgIgAi0AACAGQQFqLQAAczoAACAAQQJqIgIgAi0AACAGQQJqLQAAczoA\ +ACAAQQNqIgAgAC0AACAGQQNqLQAAczoAACAFQQRqIgVBkAFHDQALIAQQJCAIIQEgCCAHRg00DAALCy\ +AKIABqIAEgAhA5GiAAIAJqIQkMMwsgACgCBCIEQcgBaiEKAkBBiAEgBEHQAmotAAAiAGsiCCACSw0A\ +AkAgAEUNACAKIABqIAEgCBA5GiACIAhrIQJBACEFA0AgBCAFaiIAIAAtAAAgAEHIAWotAABzOgAAIA\ +BBAWoiBiAGLQAAIABByQFqLQAAczoAACAAQQJqIgYgBi0AACAAQcoBai0AAHM6AAAgAEEDaiIGIAYt\ +AAAgAEHLAWotAABzOgAAIAVBBGoiBUGIAUcNAAsgBBAkIAEgCGohAQsgASACQYgBbkGIAWwiAGohBy\ +ACIABrIQkgAkGHAU0NLyAARQ0vA0AgAUGIAWohCEEAIQUDQCAEIAVqIgAgAC0AACABIAVqIgYtAABz\ +OgAAIABBAWoiAiACLQAAIAZBAWotAABzOgAAIABBAmoiAiACLQAAIAZBAmotAABzOgAAIABBA2oiAC\ +AALQAAIAZBA2otAABzOgAAIAVBBGoiBUGIAUcNAAsgBBAkIAghASAIIAdGDTAMAAsLIAogAGogASAC\ +EDkaIAAgAmohCQwvCyAAKAIEIgRByAFqIQoCQEHoACAEQbACai0AACIAayIIIAJLDQACQCAARQ0AIA\ +ogAGogASAIEDkaIAIgCGshAkEAIQUDQCAEIAVqIgAgAC0AACAAQcgBai0AAHM6AAAgAEEBaiIGIAYt\ +AAAgAEHJAWotAABzOgAAIABBAmoiBiAGLQAAIABBygFqLQAAczoAACAAQQNqIgYgBi0AACAAQcsBai\ +0AAHM6AAAgBUEEaiIFQegARw0ACyAEECQgASAIaiEBCyABIAJB6ABuQegAbCIAaiEHIAIgAGshCSAC\ +QecATQ0rIABFDSsDQCABQegAaiEIQQAhBQNAIAQgBWoiACAALQAAIAEgBWoiBi0AAHM6AAAgAEEBai\ +ICIAItAAAgBkEBai0AAHM6AAAgAEECaiICIAItAAAgBkECai0AAHM6AAAgAEEDaiIAIAAtAAAgBkED\ +ai0AAHM6AAAgBUEEaiIFQegARw0ACyAEECQgCCEBIAggB0YNLAwACwsgCiAAaiABIAIQORogACACai\ +EJDCsLIAAoAgQiBEHIAWohCgJAQcgAIARBkAJqLQAAIgBrIgggAksNAAJAIABFDQAgCiAAaiABIAgQ\ +ORogAiAIayECQQAhBQNAIAQgBWoiACAALQAAIABByAFqLQAAczoAACAAQQFqIgYgBi0AACAAQckBai\ +0AAHM6AAAgAEECaiIGIAYtAAAgAEHKAWotAABzOgAAIABBA2oiBiAGLQAAIABBywFqLQAAczoAACAF\ +QQRqIgVByABHDQALIAQQJCABIAhqIQELIAEgAkHIAG5ByABsIgBqIQcgAiAAayEJIAJBxwBNDScgAE\ +UNJwNAIAFByABqIQhBACEFA0AgBCAFaiIAIAAtAAAgASAFaiIGLQAAczoAACAAQQFqIgIgAi0AACAG\ +QQFqLQAAczoAACAAQQJqIgIgAi0AACAGQQJqLQAAczoAACAAQQNqIgAgAC0AACAGQQNqLQAAczoAAC\ +AFQQRqIgVByABHDQALIAQQJCAIIQEgCCAHRg0oDAALCyAKIABqIAEgAhA5GiAAIAJqIQkMJwsgACgC\ +BCIGQRhqIQQCQEHAACAGQdgAai0AACIAayIFIAJLDQACQCAARQ0AIAQgAGogASAFEDkaIAYgBikDAE\ +IBfDcDACAGQQhqIAQQHyABIAVqIQEgAiAFayECCyACQT9xIQggASACQUBxaiEHIAJBP00NJCAGIAYp\ +AwAgAkEGdiIArXw3AwAgAEEGdEUNJCAGQQhqIQUgAEEGdCEAA0AgBSABEB8gAUHAAGohASAAQUBqIg\ +ANAAwlCwsgBCAAaiABIAIQORogACACaiEIDCQLIAMgACgCBCIANgIIIABBGGohBiAAQdgAai0AACEF\ +IAMgA0EIajYCeAJAAkBBwAAgBWsiBCACSw0AAkAgBUUNACAGIAVqIAEgBBA5GiADQfgAaiAGQQEQGy\ +ABIARqIQEgAiAEayECCyACQT9xIQUgASACQUBxaiEEAkAgAkE/Sw0AIAYgBCAFEDkaDAILIANB+ABq\ +IAEgAkEGdhAbIAYgBCAFEDkaDAELIAYgBWogASACEDkaIAUgAmohBQsgAEHYAGogBToAAAw8CyAAKA\ +IEIgZBIGohBAJAQcAAIAZB4ABqLQAAIgBrIgUgAksNAAJAIABFDQAgBCAAaiABIAUQORogBiAGKQMA\ +QgF8NwMAIAZBCGogBBASIAEgBWohASACIAVrIQILIAJBP3EhCCABIAJBQHFqIQcgAkE/TQ0gIAYgBi\ +kDACACQQZ2IgCtfDcDACAAQQZ0RQ0gIAZBCGohBSAAQQZ0IQADQCAFIAEQEiABQcAAaiEBIABBQGoi\ +AA0ADCELCyAEIABqIAEgAhA5GiAAIAJqIQgMIAsgACgCBCIAQSBqIQYCQAJAQcAAIABB4ABqLQAAIg\ +VrIgQgAksNAAJAIAVFDQAgBiAFaiABIAQQORogACAAKQMAQgF8NwMAIABBCGogBkEBEBQgASAEaiEB\ +IAIgBGshAgsgAkE/cSEFIAEgAkFAcWohBAJAIAJBP0sNACAGIAQgBRA5GgwCCyAAIAApAwAgAkEGdi\ +ICrXw3AwAgAEEIaiABIAIQFCAGIAQgBRA5GgwBCyAGIAVqIAEgAhA5GiAFIAJqIQULIABB4ABqIAU6\ +AAAMOgsgACgCBCIEQcgBaiEKAkBBkAEgBEHYAmotAAAiAGsiCCACSw0AAkAgAEUNACAKIABqIAEgCB\ +A5GiACIAhrIQJBACEFA0AgBCAFaiIAIAAtAAAgAEHIAWotAABzOgAAIABBAWoiBiAGLQAAIABByQFq\ +LQAAczoAACAAQQJqIgYgBi0AACAAQcoBai0AAHM6AAAgAEEDaiIGIAYtAAAgAEHLAWotAABzOgAAIA\ +VBBGoiBUGQAUcNAAsgBBAkIAEgCGohAQsgASACQZABbkGQAWwiAGohByACIABrIQkgAkGPAU0NGyAA\ +RQ0bA0AgAUGQAWohCEEAIQUDQCAEIAVqIgAgAC0AACABIAVqIgYtAABzOgAAIABBAWoiAiACLQAAIA\ +ZBAWotAABzOgAAIABBAmoiAiACLQAAIAZBAmotAABzOgAAIABBA2oiACAALQAAIAZBA2otAABzOgAA\ +IAVBBGoiBUGQAUcNAAsgBBAkIAghASAIIAdGDRwMAAsLIAogAGogASACEDkaIAAgAmohCQwbCyAAKA\ +IEIgRByAFqIQoCQEGIASAEQdACai0AACIAayIIIAJLDQACQCAARQ0AIAogAGogASAIEDkaIAIgCGsh\ +AkEAIQUDQCAEIAVqIgAgAC0AACAAQcgBai0AAHM6AAAgAEEBaiIGIAYtAAAgAEHJAWotAABzOgAAIA\ +BBAmoiBiAGLQAAIABBygFqLQAAczoAACAAQQNqIgYgBi0AACAAQcsBai0AAHM6AAAgBUEEaiIFQYgB\ +Rw0ACyAEECQgASAIaiEBCyABIAJBiAFuQYgBbCIAaiEHIAIgAGshCSACQYcBTQ0XIABFDRcDQCABQY\ +gBaiEIQQAhBQNAIAQgBWoiACAALQAAIAEgBWoiBi0AAHM6AAAgAEEBaiICIAItAAAgBkEBai0AAHM6\ +AAAgAEECaiICIAItAAAgBkECai0AAHM6AAAgAEEDaiIAIAAtAAAgBkEDai0AAHM6AAAgBUEEaiIFQY\ +gBRw0ACyAEECQgCCEBIAggB0YNGAwACwsgCiAAaiABIAIQORogACACaiEJDBcLIAAoAgQiBEHIAWoh\ +CgJAQegAIARBsAJqLQAAIgBrIgggAksNAAJAIABFDQAgCiAAaiABIAgQORogAiAIayECQQAhBQNAIA\ +QgBWoiACAALQAAIABByAFqLQAAczoAACAAQQFqIgYgBi0AACAAQckBai0AAHM6AAAgAEECaiIGIAYt\ +AAAgAEHKAWotAABzOgAAIABBA2oiBiAGLQAAIABBywFqLQAAczoAACAFQQRqIgVB6ABHDQALIAQQJC\ +ABIAhqIQELIAEgAkHoAG5B6ABsIgBqIQcgAiAAayEJIAJB5wBNDRMgAEUNEwNAIAFB6ABqIQhBACEF\ +A0AgBCAFaiIAIAAtAAAgASAFaiIGLQAAczoAACAAQQFqIgIgAi0AACAGQQFqLQAAczoAACAAQQJqIg\ +IgAi0AACAGQQJqLQAAczoAACAAQQNqIgAgAC0AACAGQQNqLQAAczoAACAFQQRqIgVB6ABHDQALIAQQ\ +JCAIIQEgCCAHRg0UDAALCyAKIABqIAEgAhA5GiAAIAJqIQkMEwsgACgCBCIEQcgBaiEKAkBByAAgBE\ +GQAmotAAAiAGsiCCACSw0AAkAgAEUNACAKIABqIAEgCBA5GiACIAhrIQJBACEFA0AgBCAFaiIAIAAt\ +AAAgAEHIAWotAABzOgAAIABBAWoiBiAGLQAAIABByQFqLQAAczoAACAAQQJqIgYgBi0AACAAQcoBai\ +0AAHM6AAAgAEEDaiIGIAYtAAAgAEHLAWotAABzOgAAIAVBBGoiBUHIAEcNAAsgBBAkIAEgCGohAQsg\ +ASACQcgAbkHIAGwiAGohByACIABrIQkgAkHHAE0NDyAARQ0PA0AgAUHIAGohCEEAIQUDQCAEIAVqIg\ +AgAC0AACABIAVqIgYtAABzOgAAIABBAWoiAiACLQAAIAZBAWotAABzOgAAIABBAmoiAiACLQAAIAZB\ +AmotAABzOgAAIABBA2oiACAALQAAIAZBA2otAABzOgAAIAVBBGoiBUHIAEcNAAsgBBAkIAghASAIIA\ +dGDRAMAAsLIAogAGogASACEDkaIAAgAmohCQwPCyAAKAIEIgBBKGohBgJAAkBBwAAgAEHoAGotAAAi\ +BWsiBCACSw0AAkAgBUUNACAGIAVqIAEgBBA5GiAAIAApAwBCAXw3AwAgAEEIaiAGQQEQECABIARqIQ\ +EgAiAEayECCyACQT9xIQUgASACQUBxaiEEAkAgAkE/Sw0AIAYgBCAFEDkaDAILIAAgACkDACACQQZ2\ +IgKtfDcDACAAQQhqIAEgAhAQIAYgBCAFEDkaDAELIAYgBWogASACEDkaIAUgAmohBQsgAEHoAGogBT\ +oAAAw1CyAAKAIEIgBBKGohBgJAAkBBwAAgAEHoAGotAAAiBWsiBCACSw0AAkAgBUUNACAGIAVqIAEg\ +BBA5GiAAIAApAwBCAXw3AwAgAEEIaiAGQQEQECABIARqIQEgAiAEayECCyACQT9xIQUgASACQUBxai\ +EEAkAgAkE/Sw0AIAYgBCAFEDkaDAILIAAgACkDACACQQZ2IgKtfDcDACAAQQhqIAEgAhAQIAYgBCAF\ +EDkaDAELIAYgBWogASACEDkaIAUgAmohBQsgAEHoAGogBToAAAw0CyAAKAIEIgBB0ABqIQYCQAJAQY\ +ABIABB0AFqLQAAIgVrIgQgAksNAAJAIAVFDQAgBiAFaiABIAQQORogACAAKQNAIh1CAXwiHjcDQCAA\ +QcgAaiIFIAUpAwAgHiAdVK18NwMAIAAgBkEBEA0gASAEaiEBIAIgBGshAgsgAkH/AHEhBSABIAJBgH\ +9xaiEEAkAgAkH/AEsNACAGIAQgBRA5GgwCCyAAIAApA0AiHSACQQd2IgKtfCIeNwNAIABByABqIggg\ +CCkDACAeIB1UrXw3AwAgACABIAIQDSAGIAQgBRA5GgwBCyAGIAVqIAEgAhA5GiAFIAJqIQULIABB0A\ +FqIAU6AAAMMwsgACgCBCIAQdAAaiEGAkACQEGAASAAQdABai0AACIFayIEIAJLDQACQCAFRQ0AIAYg\ +BWogASAEEDkaIAAgACkDQCIdQgF8Ih43A0AgAEHIAGoiBSAFKQMAIB4gHVStfDcDACAAIAZBARANIA\ +EgBGohASACIARrIQILIAJB/wBxIQUgASACQYB/cWohBAJAIAJB/wBLDQAgBiAEIAUQORoMAgsgACAA\ +KQNAIh0gAkEHdiICrXwiHjcDQCAAQcgAaiIIIAgpAwAgHiAdVK18NwMAIAAgASACEA0gBiAEIAUQOR\ +oMAQsgBiAFaiABIAIQORogBSACaiEFCyAAQdABaiAFOgAADDILIAAoAgQiBEHIAWohCgJAQagBIARB\ +8AJqLQAAIgBrIgggAksNAAJAIABFDQAgCiAAaiABIAgQORogAiAIayECQQAhBQNAIAQgBWoiACAALQ\ +AAIABByAFqLQAAczoAACAAQQFqIgYgBi0AACAAQckBai0AAHM6AAAgAEECaiIGIAYtAAAgAEHKAWot\ +AABzOgAAIABBA2oiBiAGLQAAIABBywFqLQAAczoAACAFQQRqIgVBqAFHDQALIAQQJCABIAhqIQELIA\ +EgAkGoAW5BqAFsIgBqIQcgAiAAayEJIAJBpwFNDQcgAEUNBwNAIAFBqAFqIQhBACEFA0AgBCAFaiIA\ +IAAtAAAgASAFaiIGLQAAczoAACAAQQFqIgIgAi0AACAGQQFqLQAAczoAACAAQQJqIgIgAi0AACAGQQ\ +JqLQAAczoAACAAQQNqIgAgAC0AACAGQQNqLQAAczoAACAFQQRqIgVBqAFHDQALIAQQJCAIIQEgCCAH\ +Rg0IDAALCyAKIABqIAEgAhA5GiAAIAJqIQkMBwsgACgCBCIEQcgBaiEKAkBBiAEgBEHQAmotAAAiAG\ +siCCACSw0AAkAgAEUNACAKIABqIAEgCBA5GiACIAhrIQJBACEFA0AgBCAFaiIAIAAtAAAgAEHIAWot\ +AABzOgAAIABBAWoiBiAGLQAAIABByQFqLQAAczoAACAAQQJqIgYgBi0AACAAQcoBai0AAHM6AAAgAE\ +EDaiIGIAYtAAAgAEHLAWotAABzOgAAIAVBBGoiBUGIAUcNAAsgBBAkIAEgCGohAQsgASACQYgBbkGI\ +AWwiAGohByACIABrIQkgAkGHAU0NAyAARQ0DA0AgAUGIAWohCEEAIQUDQCAEIAVqIgAgAC0AACABIA\ +VqIgYtAABzOgAAIABBAWoiAiACLQAAIAZBAWotAABzOgAAIABBAmoiAiACLQAAIAZBAmotAABzOgAA\ +IABBA2oiACAALQAAIAZBA2otAABzOgAAIAVBBGoiBUGIAUcNAAsgBBAkIAghASAIIAdGDQQMAAsLIA\ +ogAGogASACEDkaIAAgAmohCQwDCyAAKAIEIgBBIGohBgJAAkBBwAAgAEHgAGotAAAiBWsiBCACSw0A\ +AkAgBUUNACAGIAVqIAEgBBA5GiAAIAApAwBCAXw3AwAgAEEIaiAGQQEQFyABIARqIQEgAiAEayECCy\ +ACQT9xIQUgASACQUBxaiEEAkAgAkE/Sw0AIAYgBCAFEDkaDAILIAAgACkDACACQQZ2IgKtfDcDACAA\ +QQhqIAEgAhAXIAYgBCAFEDkaDAELIAYgBWogASACEDkaIAUgAmohBQsgAEHgAGogBToAAAwvCyADQZ\ +ACakEIaiIBIAk2AgAgA0GQAmpBEGoiACAENgIAIANBkAJqQRhqIgUgBzYCACADIAw2ApwCIANBgQFq\ +IgYgASkCADcAACADIAs2AqQCIANBiQFqIgEgACkCADcAACADIAo2AqwCIANBkQFqIgAgBSkCADcAAC\ +ADIA02ApQCIAMgDjYCkAIgAyADKQKQAjcAeSADQQhqQRhqIAApAAA3AwAgA0EIakEQaiABKQAANwMA\ +IANBCGpBCGogBikAADcDACADIAMpAHk3AwhBkJLAACADQQhqQYCGwABB+IbAABBAAAsgCUGJAU8NAS\ +AKIAcgCRA5GgsgBEHQAmogCToAAAwsCyAJQYgBQYCAwAAQSQALIAlBqQFPDQEgCiAHIAkQORoLIARB\ +8AJqIAk6AAAMKQsgCUGoAUGAgMAAEEkACyAJQckATw0BIAogByAJEDkaCyAEQZACaiAJOgAADCYLIA\ +lByABBgIDAABBJAAsgCUHpAE8NASAKIAcgCRA5GgsgBEGwAmogCToAAAwjCyAJQegAQYCAwAAQSQAL\ +IAlBiQFPDQEgCiAHIAkQORoLIARB0AJqIAk6AAAMIAsgCUGIAUGAgMAAEEkACyAJQZEBTw0BIAogBy\ +AJEDkaCyAEQdgCaiAJOgAADB0LIAlBkAFBgIDAABBJAAsgBCAHIAgQORoLIAZB4ABqIAg6AAAMGgsg\ +BCAHIAgQORoLIAZB2ABqIAg6AAAMGAsgCUHJAE8NASAKIAcgCRA5GgsgBEGQAmogCToAAAwWCyAJQc\ +gAQYCAwAAQSQALIAlB6QBPDQEgCiAHIAkQORoLIARBsAJqIAk6AAAMEwsgCUHoAEGAgMAAEEkACyAJ\ +QYkBTw0BIAogByAJEDkaCyAEQdACaiAJOgAADBALIAlBiAFBgIDAABBJAAsgCUGRAU8NASAKIAcgCR\ +A5GgsgBEHYAmogCToAAAwNCyAJQZABQYCAwAAQSQALAkACQAJAAkACQAJAAkACQAJAIAJBgQhJDQAg\ +CEHwAGohBCADQQhqQShqIQogA0EIakEIaiEMIANB+ABqQShqIQkgA0H4AGpBCGohCyAIQZQBaiENIA\ +gpAwAhHgNAIB5CCoYhHUF/IAJBAXZndkEBaiEFA0AgBSIAQQF2IQUgHSAAQX9qrYNCAFINAAsgAEEK\ +dq0hHQJAAkAgAEGBCEkNACACIABJDQQgCC0AaiEHIANB+ABqQThqQgA3AwAgA0H4AGpBMGpCADcDAC\ +AJQgA3AwAgA0H4AGpBIGpCADcDACADQfgAakEYakIANwMAIANB+ABqQRBqQgA3AwAgC0IANwMAIANC\ +ADcDeCABIAAgBCAeIAcgA0H4AGpBwAAQHSEFIANBkAJqQRhqQgA3AwAgA0GQAmpBEGpCADcDACADQZ\ +ACakEIakIANwMAIANCADcDkAICQCAFQQNJDQADQCAFQQV0IgVBwQBPDQcgA0H4AGogBSAEIAcgA0GQ\ +AmpBIBAsIgVBBXQiBkHBAE8NCCAGQSFPDQkgA0H4AGogA0GQAmogBhA5GiAFQQJLDQALCyADKAK0AS\ +EPIAMoArABIRAgAygCrAEhESADKAKoASESIAMoAqQBIRMgAygCoAEhFCADKAKcASEVIAMoApgBIRYg\ +AygClAEhByADKAKQASEOIAMoAowBIRcgAygCiAEhGCADKAKEASEZIAMoAoABIRogAygCfCEbIAMoAn\ +ghHCAIIAgpAwAQKSAIKAKQASIGQTdPDQggDSAGQQV0aiIFIAc2AhwgBSAONgIYIAUgFzYCFCAFIBg2\ +AhAgBSAZNgIMIAUgGjYCCCAFIBs2AgQgBSAcNgIAIAggBkEBajYCkAEgCCAIKQMAIB1CAYh8ECkgCC\ +gCkAEiBkE3Tw0JIA0gBkEFdGoiBSAPNgIcIAUgEDYCGCAFIBE2AhQgBSASNgIQIAUgEzYCDCAFIBQ2\ +AgggBSAVNgIEIAUgFjYCACAIIAZBAWo2ApABDAELIAlCADcDACAJQQhqIg5CADcDACAJQRBqIhdCAD\ +cDACAJQRhqIhhCADcDACAJQSBqIhlCADcDACAJQShqIhpCADcDACAJQTBqIhtCADcDACAJQThqIhxC\ +ADcDACALIAQpAwA3AwAgC0EIaiIFIARBCGopAwA3AwAgC0EQaiIGIARBEGopAwA3AwAgC0EYaiIHIA\ +RBGGopAwA3AwAgA0EAOwHgASADIB43A3ggAyAILQBqOgDiASADQfgAaiABIAAQMxogDCALKQMANwMA\ +IAxBCGogBSkDADcDACAMQRBqIAYpAwA3AwAgDEEYaiAHKQMANwMAIAogCSkDADcDACAKQQhqIA4pAw\ +A3AwAgCkEQaiAXKQMANwMAIApBGGogGCkDADcDACAKQSBqIBkpAwA3AwAgCkEoaiAaKQMANwMAIApB\ +MGogGykDADcDACAKQThqIBwpAwA3AwAgAy0A4gEhDiADLQDhASEXIAMgAy0A4AEiGDoAcCADIAMpA3\ +giHjcDCCADIA4gF0VyQQJyIg46AHEgA0HoAWpBGGoiFyAHKQIANwMAIANB6AFqQRBqIgcgBikCADcD\ +ACADQegBakEIaiIGIAUpAgA3AwAgAyALKQIANwPoASADQegBaiAKIBggHiAOEBkgFygCACEOIAcoAg\ +AhByAGKAIAIRcgAygChAIhGCADKAL8ASEZIAMoAvQBIRogAygC7AEhGyADKALoASEcIAggCCkDABAp\ +IAgoApABIgZBN08NCSANIAZBBXRqIgUgGDYCHCAFIA42AhggBSAZNgIUIAUgBzYCECAFIBo2AgwgBS\ +AXNgIIIAUgGzYCBCAFIBw2AgAgCCAGQQFqNgKQAQsgCCAIKQMAIB18Ih43AwAgAiAASQ0JIAEgAGoh\ +ASACIABrIgJBgAhLDQALCyACRQ0TIAggASACEDMaIAggCCkDABApDBMLIAAgAkGghcAAEEkACyAFQc\ +AAQeCEwAAQSQALIAZBwABB8ITAABBJAAsgBkEgQYCFwAAQSQALIANBkAJqQQhqIgEgGjYCACADQZAC\ +akEQaiIAIBg2AgAgA0GQAmpBGGoiBSAONgIAIAMgGTYCnAIgA0GBAWoiBiABKQMANwAAIAMgFzYCpA\ +IgA0GJAWoiASAAKQMANwAAIAMgBzYCrAIgA0GRAWoiACAFKQMANwAAIAMgGzYClAIgAyAcNgKQAiAD\ +IAMpA5ACNwB5IANBCGpBGGogACkAADcDACADQQhqQRBqIAEpAAA3AwAgA0EIakEIaiAGKQAANwMAIA\ +MgAykAeTcDCEGQksAAIANBCGpBgIbAAEH4hsAAEEAACyADQZACakEIaiIBIBQ2AgAgA0GQAmpBEGoi\ +ACASNgIAIANBkAJqQRhqIgUgEDYCACADIBM2ApwCIANBgQFqIgYgASkDADcAACADIBE2AqQCIANBiQ\ +FqIgEgACkDADcAACADIA82AqwCIANBkQFqIgAgBSkDADcAACADIBU2ApQCIAMgFjYCkAIgAyADKQOQ\ +AjcAeSADQQhqQRhqIAApAAA3AwAgA0EIakEQaiABKQAANwMAIANBCGpBCGogBikAADcDACADIAMpAH\ +k3AwhBkJLAACADQQhqQYCGwABB+IbAABBAAAsgA0GYAmoiASAXNgIAIANBoAJqIgAgBzYCACADQagC\ +aiIFIA42AgAgAyAaNgKcAiADQfEBaiIGIAEpAwA3AAAgAyAZNgKkAiADQfkBaiICIAApAwA3AAAgAy\ +AYNgKsAiADQYECaiIEIAUpAwA3AAAgAyAbNgKUAiADIBw2ApACIAMgAykDkAI3AOkBIAUgBCkAADcD\ +ACAAIAIpAAA3AwAgASAGKQAANwMAIAMgAykA6QE3A5ACQZCSwAAgA0GQAmpBgIbAAEH4hsAAEEAACy\ +AAIAJBsIXAABBKAAsgAkHBAE8NASAEIAEgCGogAhA5GgsgAEHoAGogAjoAAAwJCyACQcAAQYCAwAAQ\ +SQALIAJBgQFPDQEgBCABIAhqIAIQORoLIABByAFqIAI6AAAMBgsgAkGAAUGAgMAAEEkACyACQYEBTw\ +0BIAQgASAIaiACEDkaCyAAQcgBaiACOgAADAMLIAJBgAFBgIDAABBJAAsgAkGBAU8NAiAEIAEgCGog\ +AhA5GgsgAEHIAWogAjoAAAsgA0GwAmokAA8LIAJBgAFBgIDAABBJAAu1QQElfyMAQcAAayIDQThqQg\ +A3AwAgA0EwakIANwMAIANBKGpCADcDACADQSBqQgA3AwAgA0EYakIANwMAIANBEGpCADcDACADQQhq\ +QgA3AwAgA0IANwMAIAAoAhwhBCAAKAIYIQUgACgCFCEGIAAoAhAhByAAKAIMIQggACgCCCEJIAAoAg\ +QhCiAAKAIAIQsCQCACQQZ0IgJFDQAgASACaiEMA0AgAyABKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEI\ +dkGA/gNxIAJBGHZycjYCACADIAFBBGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdn\ +JyNgIEIAMgAUEIaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnI2AgggAyABQQxq\ +KAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZycjYCDCADIAFBEGooAAAiAkEYdCACQQ\ +h0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyNgIQIAMgAUEUaigAACICQRh0IAJBCHRBgID8B3FyIAJB\ +CHZBgP4DcSACQRh2cnI2AhQgAyABQSBqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGH\ +ZyciINNgIgIAMgAUEcaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiDjYCHCAD\ +IAFBGGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIg82AhggAygCACEQIAMoAg\ +QhESADKAIIIRIgAygCDCETIAMoAhAhFCADKAIUIRUgAyABQSRqKAAAIgJBGHQgAkEIdEGAgPwHcXIg\ +AkEIdkGA/gNxIAJBGHZyciIWNgIkIAMgAUEoaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcS\ +ACQRh2cnIiFzYCKCADIAFBLGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIhg2\ +AiwgAyABQTBqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIZNgIwIAMgAUE0ai\ +gAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiGjYCNCADIAFBOGooAAAiAkEYdCAC\ +QQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIgI2AjggAyABQTxqKAAAIhtBGHQgG0EIdEGAgPwHcX\ +IgG0EIdkGA/gNxIBtBGHZyciIbNgI8IAsgCnEiHCAKIAlxcyALIAlxcyALQR53IAtBE3dzIAtBCndz\ +aiAQIAQgBiAFcyAHcSAFc2ogB0EadyAHQRV3cyAHQQd3c2pqQZjfqJQEaiIdaiIeQR53IB5BE3dzIB\ +5BCndzIB4gCyAKc3EgHHNqIAUgEWogHSAIaiIfIAcgBnNxIAZzaiAfQRp3IB9BFXdzIB9BB3dzakGR\ +id2JB2oiHWoiHCAecSIgIB4gC3FzIBwgC3FzIBxBHncgHEETd3MgHEEKd3NqIAYgEmogHSAJaiIhIB\ +8gB3NxIAdzaiAhQRp3ICFBFXdzICFBB3dzakHP94Oue2oiHWoiIkEedyAiQRN3cyAiQQp3cyAiIBwg\ +HnNxICBzaiAHIBNqIB0gCmoiICAhIB9zcSAfc2ogIEEadyAgQRV3cyAgQQd3c2pBpbfXzX5qIiNqIh\ +0gInEiJCAiIBxxcyAdIBxxcyAdQR53IB1BE3dzIB1BCndzaiAfIBRqICMgC2oiHyAgICFzcSAhc2og\ +H0EadyAfQRV3cyAfQQd3c2pB24TbygNqIiVqIiNBHncgI0ETd3MgI0EKd3MgIyAdICJzcSAkc2ogFS\ +AhaiAlIB5qIiEgHyAgc3EgIHNqICFBGncgIUEVd3MgIUEHd3NqQfGjxM8FaiIkaiIeICNxIiUgIyAd\ +cXMgHiAdcXMgHkEedyAeQRN3cyAeQQp3c2ogDyAgaiAkIBxqIiAgISAfc3EgH3NqICBBGncgIEEVd3\ +MgIEEHd3NqQaSF/pF5aiIcaiIkQR53ICRBE3dzICRBCndzICQgHiAjc3EgJXNqIA4gH2ogHCAiaiIf\ +ICAgIXNxICFzaiAfQRp3IB9BFXdzIB9BB3dzakHVvfHYemoiImoiHCAkcSIlICQgHnFzIBwgHnFzIB\ +xBHncgHEETd3MgHEEKd3NqIA0gIWogIiAdaiIhIB8gIHNxICBzaiAhQRp3ICFBFXdzICFBB3dzakGY\ +1Z7AfWoiHWoiIkEedyAiQRN3cyAiQQp3cyAiIBwgJHNxICVzaiAWICBqIB0gI2oiICAhIB9zcSAfc2\ +ogIEEadyAgQRV3cyAgQQd3c2pBgbaNlAFqIiNqIh0gInEiJSAiIBxxcyAdIBxxcyAdQR53IB1BE3dz\ +IB1BCndzaiAXIB9qICMgHmoiHyAgICFzcSAhc2ogH0EadyAfQRV3cyAfQQd3c2pBvovGoQJqIh5qIi\ +NBHncgI0ETd3MgI0EKd3MgIyAdICJzcSAlc2ogGCAhaiAeICRqIiEgHyAgc3EgIHNqICFBGncgIUEV\ +d3MgIUEHd3NqQcP7sagFaiIkaiIeICNxIiUgIyAdcXMgHiAdcXMgHkEedyAeQRN3cyAeQQp3c2ogGS\ +AgaiAkIBxqIiAgISAfc3EgH3NqICBBGncgIEEVd3MgIEEHd3NqQfS6+ZUHaiIcaiIkQR53ICRBE3dz\ +ICRBCndzICQgHiAjc3EgJXNqIBogH2ogHCAiaiIiICAgIXNxICFzaiAiQRp3ICJBFXdzICJBB3dzak\ +H+4/qGeGoiH2oiHCAkcSImICQgHnFzIBwgHnFzIBxBHncgHEETd3MgHEEKd3NqIAIgIWogHyAdaiIh\ +ICIgIHNxICBzaiAhQRp3ICFBFXdzICFBB3dzakGnjfDeeWoiHWoiJUEedyAlQRN3cyAlQQp3cyAlIB\ +wgJHNxICZzaiAbICBqIB0gI2oiICAhICJzcSAic2ogIEEadyAgQRV3cyAgQQd3c2pB9OLvjHxqIiNq\ +Ih0gJXEiJiAlIBxxcyAdIBxxcyAdQR53IB1BE3dzIB1BCndzaiAQIBFBDncgEUEZd3MgEUEDdnNqIB\ +ZqIAJBD3cgAkENd3MgAkEKdnNqIh8gImogIyAeaiIjICAgIXNxICFzaiAjQRp3ICNBFXdzICNBB3dz\ +akHB0+2kfmoiImoiEEEedyAQQRN3cyAQQQp3cyAQIB0gJXNxICZzaiARIBJBDncgEkEZd3MgEkEDdn\ +NqIBdqIBtBD3cgG0ENd3MgG0EKdnNqIh4gIWogIiAkaiIkICMgIHNxICBzaiAkQRp3ICRBFXdzICRB\ +B3dzakGGj/n9fmoiEWoiISAQcSImIBAgHXFzICEgHXFzICFBHncgIUETd3MgIUEKd3NqIBIgE0EOdy\ +ATQRl3cyATQQN2c2ogGGogH0EPdyAfQQ13cyAfQQp2c2oiIiAgaiARIBxqIhEgJCAjc3EgI3NqIBFB\ +GncgEUEVd3MgEUEHd3NqQca7hv4AaiIgaiISQR53IBJBE3dzIBJBCndzIBIgISAQc3EgJnNqIBMgFE\ +EOdyAUQRl3cyAUQQN2c2ogGWogHkEPdyAeQQ13cyAeQQp2c2oiHCAjaiAgICVqIhMgESAkc3EgJHNq\ +IBNBGncgE0EVd3MgE0EHd3NqQczDsqACaiIlaiIgIBJxIicgEiAhcXMgICAhcXMgIEEedyAgQRN3cy\ +AgQQp3c2ogFCAVQQ53IBVBGXdzIBVBA3ZzaiAaaiAiQQ93ICJBDXdzICJBCnZzaiIjICRqICUgHWoi\ +FCATIBFzcSARc2ogFEEadyAUQRV3cyAUQQd3c2pB79ik7wJqIiRqIiZBHncgJkETd3MgJkEKd3MgJi\ +AgIBJzcSAnc2ogFSAPQQ53IA9BGXdzIA9BA3ZzaiACaiAcQQ93IBxBDXdzIBxBCnZzaiIdIBFqICQg\ +EGoiFSAUIBNzcSATc2ogFUEadyAVQRV3cyAVQQd3c2pBqonS0wRqIhBqIiQgJnEiESAmICBxcyAkIC\ +BxcyAkQR53ICRBE3dzICRBCndzaiAOQQ53IA5BGXdzIA5BA3ZzIA9qIBtqICNBD3cgI0ENd3MgI0EK\ +dnNqIiUgE2ogECAhaiITIBUgFHNxIBRzaiATQRp3IBNBFXdzIBNBB3dzakHc08LlBWoiEGoiD0Eedy\ +APQRN3cyAPQQp3cyAPICQgJnNxIBFzaiANQQ53IA1BGXdzIA1BA3ZzIA5qIB9qIB1BD3cgHUENd3Mg\ +HUEKdnNqIiEgFGogECASaiIUIBMgFXNxIBVzaiAUQRp3IBRBFXdzIBRBB3dzakHakea3B2oiEmoiEC\ +APcSIOIA8gJHFzIBAgJHFzIBBBHncgEEETd3MgEEEKd3NqIBZBDncgFkEZd3MgFkEDdnMgDWogHmog\ +JUEPdyAlQQ13cyAlQQp2c2oiESAVaiASICBqIhUgFCATc3EgE3NqIBVBGncgFUEVd3MgFUEHd3NqQd\ +Ki+cF5aiISaiINQR53IA1BE3dzIA1BCndzIA0gECAPc3EgDnNqIBdBDncgF0EZd3MgF0EDdnMgFmog\ +ImogIUEPdyAhQQ13cyAhQQp2c2oiICATaiASICZqIhYgFSAUc3EgFHNqIBZBGncgFkEVd3MgFkEHd3\ +NqQe2Mx8F6aiImaiISIA1xIicgDSAQcXMgEiAQcXMgEkEedyASQRN3cyASQQp3c2ogGEEOdyAYQRl3\ +cyAYQQN2cyAXaiAcaiARQQ93IBFBDXdzIBFBCnZzaiITIBRqICYgJGoiFyAWIBVzcSAVc2ogF0Eady\ +AXQRV3cyAXQQd3c2pByM+MgHtqIhRqIg5BHncgDkETd3MgDkEKd3MgDiASIA1zcSAnc2ogGUEOdyAZ\ +QRl3cyAZQQN2cyAYaiAjaiAgQQ93ICBBDXdzICBBCnZzaiIkIBVqIBQgD2oiDyAXIBZzcSAWc2ogD0\ +EadyAPQRV3cyAPQQd3c2pBx//l+ntqIhVqIhQgDnEiJyAOIBJxcyAUIBJxcyAUQR53IBRBE3dzIBRB\ +CndzaiAaQQ53IBpBGXdzIBpBA3ZzIBlqIB1qIBNBD3cgE0ENd3MgE0EKdnNqIiYgFmogFSAQaiIWIA\ +8gF3NxIBdzaiAWQRp3IBZBFXdzIBZBB3dzakHzl4C3fGoiFWoiGEEedyAYQRN3cyAYQQp3cyAYIBQg\ +DnNxICdzaiACQQ53IAJBGXdzIAJBA3ZzIBpqICVqICRBD3cgJEENd3MgJEEKdnNqIhAgF2ogFSANai\ +INIBYgD3NxIA9zaiANQRp3IA1BFXdzIA1BB3dzakHHop6tfWoiF2oiFSAYcSIZIBggFHFzIBUgFHFz\ +IBVBHncgFUETd3MgFUEKd3NqIBtBDncgG0EZd3MgG0EDdnMgAmogIWogJkEPdyAmQQ13cyAmQQp2c2\ +oiAiAPaiAXIBJqIg8gDSAWc3EgFnNqIA9BGncgD0EVd3MgD0EHd3NqQdHGqTZqIhJqIhdBHncgF0ET\ +d3MgF0EKd3MgFyAVIBhzcSAZc2ogH0EOdyAfQRl3cyAfQQN2cyAbaiARaiAQQQ93IBBBDXdzIBBBCn\ +ZzaiIbIBZqIBIgDmoiFiAPIA1zcSANc2ogFkEadyAWQRV3cyAWQQd3c2pB59KkoQFqIg5qIhIgF3Ei\ +GSAXIBVxcyASIBVxcyASQR53IBJBE3dzIBJBCndzaiAeQQ53IB5BGXdzIB5BA3ZzIB9qICBqIAJBD3\ +cgAkENd3MgAkEKdnNqIh8gDWogDiAUaiINIBYgD3NxIA9zaiANQRp3IA1BFXdzIA1BB3dzakGFldy9\ +AmoiFGoiDkEedyAOQRN3cyAOQQp3cyAOIBIgF3NxIBlzaiAiQQ53ICJBGXdzICJBA3ZzIB5qIBNqIB\ +tBD3cgG0ENd3MgG0EKdnNqIh4gD2ogFCAYaiIPIA0gFnNxIBZzaiAPQRp3IA9BFXdzIA9BB3dzakG4\ +wuzwAmoiGGoiFCAOcSIZIA4gEnFzIBQgEnFzIBRBHncgFEETd3MgFEEKd3NqIBxBDncgHEEZd3MgHE\ +EDdnMgImogJGogH0EPdyAfQQ13cyAfQQp2c2oiIiAWaiAYIBVqIhYgDyANc3EgDXNqIBZBGncgFkEV\ +d3MgFkEHd3NqQfzbsekEaiIVaiIYQR53IBhBE3dzIBhBCndzIBggFCAOc3EgGXNqICNBDncgI0EZd3\ +MgI0EDdnMgHGogJmogHkEPdyAeQQ13cyAeQQp2c2oiHCANaiAVIBdqIg0gFiAPc3EgD3NqIA1BGncg\ +DUEVd3MgDUEHd3NqQZOa4JkFaiIXaiIVIBhxIhkgGCAUcXMgFSAUcXMgFUEedyAVQRN3cyAVQQp3c2\ +ogHUEOdyAdQRl3cyAdQQN2cyAjaiAQaiAiQQ93ICJBDXdzICJBCnZzaiIjIA9qIBcgEmoiDyANIBZz\ +cSAWc2ogD0EadyAPQRV3cyAPQQd3c2pB1OapqAZqIhJqIhdBHncgF0ETd3MgF0EKd3MgFyAVIBhzcS\ +AZc2ogJUEOdyAlQRl3cyAlQQN2cyAdaiACaiAcQQ93IBxBDXdzIBxBCnZzaiIdIBZqIBIgDmoiFiAP\ +IA1zcSANc2ogFkEadyAWQRV3cyAWQQd3c2pBu5WoswdqIg5qIhIgF3EiGSAXIBVxcyASIBVxcyASQR\ +53IBJBE3dzIBJBCndzaiAhQQ53ICFBGXdzICFBA3ZzICVqIBtqICNBD3cgI0ENd3MgI0EKdnNqIiUg\ +DWogDiAUaiINIBYgD3NxIA9zaiANQRp3IA1BFXdzIA1BB3dzakGukouOeGoiFGoiDkEedyAOQRN3cy\ +AOQQp3cyAOIBIgF3NxIBlzaiARQQ53IBFBGXdzIBFBA3ZzICFqIB9qIB1BD3cgHUENd3MgHUEKdnNq\ +IiEgD2ogFCAYaiIPIA0gFnNxIBZzaiAPQRp3IA9BFXdzIA9BB3dzakGF2ciTeWoiGGoiFCAOcSIZIA\ +4gEnFzIBQgEnFzIBRBHncgFEETd3MgFEEKd3NqICBBDncgIEEZd3MgIEEDdnMgEWogHmogJUEPdyAl\ +QQ13cyAlQQp2c2oiESAWaiAYIBVqIhYgDyANc3EgDXNqIBZBGncgFkEVd3MgFkEHd3NqQaHR/5V6ai\ +IVaiIYQR53IBhBE3dzIBhBCndzIBggFCAOc3EgGXNqIBNBDncgE0EZd3MgE0EDdnMgIGogImogIUEP\ +dyAhQQ13cyAhQQp2c2oiICANaiAVIBdqIg0gFiAPc3EgD3NqIA1BGncgDUEVd3MgDUEHd3NqQcvM6c\ +B6aiIXaiIVIBhxIhkgGCAUcXMgFSAUcXMgFUEedyAVQRN3cyAVQQp3c2ogJEEOdyAkQRl3cyAkQQN2\ +cyATaiAcaiARQQ93IBFBDXdzIBFBCnZzaiITIA9qIBcgEmoiDyANIBZzcSAWc2ogD0EadyAPQRV3cy\ +APQQd3c2pB8JauknxqIhJqIhdBHncgF0ETd3MgF0EKd3MgFyAVIBhzcSAZc2ogJkEOdyAmQRl3cyAm\ +QQN2cyAkaiAjaiAgQQ93ICBBDXdzICBBCnZzaiIkIBZqIBIgDmoiFiAPIA1zcSANc2ogFkEadyAWQR\ +V3cyAWQQd3c2pBo6Oxu3xqIg5qIhIgF3EiGSAXIBVxcyASIBVxcyASQR53IBJBE3dzIBJBCndzaiAQ\ +QQ53IBBBGXdzIBBBA3ZzICZqIB1qIBNBD3cgE0ENd3MgE0EKdnNqIiYgDWogDiAUaiINIBYgD3NxIA\ +9zaiANQRp3IA1BFXdzIA1BB3dzakGZ0MuMfWoiFGoiDkEedyAOQRN3cyAOQQp3cyAOIBIgF3NxIBlz\ +aiACQQ53IAJBGXdzIAJBA3ZzIBBqICVqICRBD3cgJEENd3MgJEEKdnNqIhAgD2ogFCAYaiIPIA0gFn\ +NxIBZzaiAPQRp3IA9BFXdzIA9BB3dzakGkjOS0fWoiGGoiFCAOcSIZIA4gEnFzIBQgEnFzIBRBHncg\ +FEETd3MgFEEKd3NqIBtBDncgG0EZd3MgG0EDdnMgAmogIWogJkEPdyAmQQ13cyAmQQp2c2oiAiAWai\ +AYIBVqIhYgDyANc3EgDXNqIBZBGncgFkEVd3MgFkEHd3NqQYXruKB/aiIVaiIYQR53IBhBE3dzIBhB\ +CndzIBggFCAOc3EgGXNqIB9BDncgH0EZd3MgH0EDdnMgG2ogEWogEEEPdyAQQQ13cyAQQQp2c2oiGy\ +ANaiAVIBdqIg0gFiAPc3EgD3NqIA1BGncgDUEVd3MgDUEHd3NqQfDAqoMBaiIXaiIVIBhxIhkgGCAU\ +cXMgFSAUcXMgFUEedyAVQRN3cyAVQQp3c2ogHkEOdyAeQRl3cyAeQQN2cyAfaiAgaiACQQ93IAJBDX\ +dzIAJBCnZzaiIfIA9qIBcgEmoiEiANIBZzcSAWc2ogEkEadyASQRV3cyASQQd3c2pBloKTzQFqIhpq\ +Ig9BHncgD0ETd3MgD0EKd3MgDyAVIBhzcSAZc2ogIkEOdyAiQRl3cyAiQQN2cyAeaiATaiAbQQ93IB\ +tBDXdzIBtBCnZzaiIXIBZqIBogDmoiFiASIA1zcSANc2ogFkEadyAWQRV3cyAWQQd3c2pBiNjd8QFq\ +IhlqIh4gD3EiGiAPIBVxcyAeIBVxcyAeQR53IB5BE3dzIB5BCndzaiAcQQ53IBxBGXdzIBxBA3ZzIC\ +JqICRqIB9BD3cgH0ENd3MgH0EKdnNqIg4gDWogGSAUaiIiIBYgEnNxIBJzaiAiQRp3ICJBFXdzICJB\ +B3dzakHM7qG6AmoiGWoiFEEedyAUQRN3cyAUQQp3cyAUIB4gD3NxIBpzaiAjQQ53ICNBGXdzICNBA3\ +ZzIBxqICZqIBdBD3cgF0ENd3MgF0EKdnNqIg0gEmogGSAYaiISICIgFnNxIBZzaiASQRp3IBJBFXdz\ +IBJBB3dzakG1+cKlA2oiGWoiHCAUcSIaIBQgHnFzIBwgHnFzIBxBHncgHEETd3MgHEEKd3NqIB1BDn\ +cgHUEZd3MgHUEDdnMgI2ogEGogDkEPdyAOQQ13cyAOQQp2c2oiGCAWaiAZIBVqIiMgEiAic3EgInNq\ +ICNBGncgI0EVd3MgI0EHd3NqQbOZ8MgDaiIZaiIVQR53IBVBE3dzIBVBCndzIBUgHCAUc3EgGnNqIC\ +VBDncgJUEZd3MgJUEDdnMgHWogAmogDUEPdyANQQ13cyANQQp2c2oiFiAiaiAZIA9qIiIgIyASc3Eg\ +EnNqICJBGncgIkEVd3MgIkEHd3NqQcrU4vYEaiIZaiIdIBVxIhogFSAccXMgHSAccXMgHUEedyAdQR\ +N3cyAdQQp3c2ogIUEOdyAhQRl3cyAhQQN2cyAlaiAbaiAYQQ93IBhBDXdzIBhBCnZzaiIPIBJqIBkg\ +HmoiJSAiICNzcSAjc2ogJUEadyAlQRV3cyAlQQd3c2pBz5Tz3AVqIh5qIhJBHncgEkETd3MgEkEKd3\ +MgEiAdIBVzcSAac2ogEUEOdyARQRl3cyARQQN2cyAhaiAfaiAWQQ93IBZBDXdzIBZBCnZzaiIZICNq\ +IB4gFGoiISAlICJzcSAic2ogIUEadyAhQRV3cyAhQQd3c2pB89+5wQZqIiNqIh4gEnEiFCASIB1xcy\ +AeIB1xcyAeQR53IB5BE3dzIB5BCndzaiAgQQ53ICBBGXdzICBBA3ZzIBFqIBdqIA9BD3cgD0ENd3Mg\ +D0EKdnNqIhEgImogIyAcaiIiICEgJXNxICVzaiAiQRp3ICJBFXdzICJBB3dzakHuhb6kB2oiHGoiI0\ +EedyAjQRN3cyAjQQp3cyAjIB4gEnNxIBRzaiATQQ53IBNBGXdzIBNBA3ZzICBqIA5qIBlBD3cgGUEN\ +d3MgGUEKdnNqIhQgJWogHCAVaiIgICIgIXNxICFzaiAgQRp3ICBBFXdzICBBB3dzakHvxpXFB2oiJW\ +oiHCAjcSIVICMgHnFzIBwgHnFzIBxBHncgHEETd3MgHEEKd3NqICRBDncgJEEZd3MgJEEDdnMgE2og\ +DWogEUEPdyARQQ13cyARQQp2c2oiEyAhaiAlIB1qIiEgICAic3EgInNqICFBGncgIUEVd3MgIUEHd3\ +NqQZTwoaZ4aiIdaiIlQR53ICVBE3dzICVBCndzICUgHCAjc3EgFXNqICZBDncgJkEZd3MgJkEDdnMg\ +JGogGGogFEEPdyAUQQ13cyAUQQp2c2oiJCAiaiAdIBJqIiIgISAgc3EgIHNqICJBGncgIkEVd3MgIk\ +EHd3NqQYiEnOZ4aiIUaiIdICVxIhUgJSAccXMgHSAccXMgHUEedyAdQRN3cyAdQQp3c2ogEEEOdyAQ\ +QRl3cyAQQQN2cyAmaiAWaiATQQ93IBNBDXdzIBNBCnZzaiISICBqIBQgHmoiHiAiICFzcSAhc2ogHk\ +EadyAeQRV3cyAeQQd3c2pB+v/7hXlqIhNqIiBBHncgIEETd3MgIEEKd3MgICAdICVzcSAVc2ogAkEO\ +dyACQRl3cyACQQN2cyAQaiAPaiAkQQ93ICRBDXdzICRBCnZzaiIkICFqIBMgI2oiISAeICJzcSAic2\ +ogIUEadyAhQRV3cyAhQQd3c2pB69nBonpqIhBqIiMgIHEiEyAgIB1xcyAjIB1xcyAjQR53ICNBE3dz\ +ICNBCndzaiACIBtBDncgG0EZd3MgG0EDdnNqIBlqIBJBD3cgEkENd3MgEkEKdnNqICJqIBAgHGoiAi\ +AhIB5zcSAec2ogAkEadyACQRV3cyACQQd3c2pB98fm93tqIiJqIhwgIyAgc3EgE3MgC2ogHEEedyAc\ +QRN3cyAcQQp3c2ogGyAfQQ53IB9BGXdzIB9BA3ZzaiARaiAkQQ93ICRBDXdzICRBCnZzaiAeaiAiIC\ +VqIhsgAiAhc3EgIXNqIBtBGncgG0EVd3MgG0EHd3NqQfLxxbN8aiIeaiELIBwgCmohCiAjIAlqIQkg\ +ICAIaiEIIB0gB2ogHmohByAbIAZqIQYgAiAFaiEFICEgBGohBCABQcAAaiIBIAxHDQALCyAAIAQ2Ah\ +wgACAFNgIYIAAgBjYCFCAAIAc2AhAgACAINgIMIAAgCTYCCCAAIAo2AgQgACALNgIAC5kvAgN/Kn4j\ +AEGAAWsiAyQAIANBAEGAARA6IgMgASkAADcDACADIAEpAAg3AwggAyABKQAQNwMQIAMgASkAGDcDGC\ +ADIAEpACA3AyAgAyABKQAoNwMoIAMgASkAMCIGNwMwIAMgASkAOCIHNwM4IAMgASkAQCIINwNAIAMg\ +ASkASCIJNwNIIAMgASkAUCIKNwNQIAMgASkAWCILNwNYIAMgASkAYCIMNwNgIAMgASkAaCINNwNoIA\ +MgASkAcCIONwNwIAMgASkAeCIPNwN4IAAgDCAKIA4gCSAIIAsgDyAIIAcgDSALIAYgCCAJIAkgCiAO\ +IA8gCCAIIAYgDyAKIA4gCyAHIA0gDyAHIAsgBiANIA0gDCAHIAYgAEE4aiIBKQMAIhAgACkDGCIRfH\ +wiEkL5wvibkaOz8NsAhUIgiSITQvHt9Pilp/2npX98IhQgEIVCKIkiFSASfHwiFiAThUIwiSIXIBR8\ +IhggFYVCAYkiGSAAQTBqIgQpAwAiGiAAKQMQIht8IAMpAyAiEnwiEyAChULr+obav7X2wR+FQiCJIh\ +xCq/DT9K/uvLc8fCIdIBqFQiiJIh4gE3wgAykDKCICfCIffHwiICAAQShqIgUpAwAiISAAKQMIIiJ8\ +IAMpAxAiE3wiFEKf2PnZwpHagpt/hUIgiSIVQrvOqqbY0Ouzu398IiMgIYVCKIkiJCAUfCADKQMYIh\ +R8IiUgFYVCMIkiJoVCIIkiJyAAKQNAIAApAyAiKCAAKQMAIil8IAMpAwAiFXwiKoVC0YWa7/rPlIfR\ +AIVCIIkiK0KIkvOd/8z5hOoAfCIsICiFQiiJIi0gKnwgAykDCCIqfCIuICuFQjCJIisgLHwiLHwiLy\ +AZhUIoiSIZICB8fCIgICeFQjCJIicgL3wiLyAZhUIBiSIZIA8gDiAWICwgLYVCAYkiLHx8IhYgHyAc\ +hUIwiSIchUIgiSIfICYgI3wiI3wiJiAshUIoiSIsIBZ8fCIWfHwiLSAJIAggIyAkhUIBiSIjIC58fC\ +IkIBeFQiCJIhcgHCAdfCIcfCIdICOFQiiJIiMgJHx8IiQgF4VCMIkiF4VCIIkiLiALIAogHCAehUIB\ +iSIcICV8fCIeICuFQiCJIiUgGHwiGCAchUIoiSIcIB58fCIeICWFQjCJIiUgGHwiGHwiKyAZhUIoiS\ +IZIC18fCItIC6FQjCJIi4gK3wiKyAZhUIBiSIZIA8gCSAgIBggHIVCAYkiGHx8IhwgFiAfhUIwiSIW\ +hUIgiSIfIBcgHXwiF3wiHSAYhUIoiSIYIBx8fCIcfHwiICAIIB4gFyAjhUIBiSIXfCASfCIeICeFQi\ +CJIiMgFiAmfCIWfCImIBeFQiiJIhcgHnx8Ih4gI4VCMIkiI4VCIIkiJyAKIA4gFiAshUIBiSIWICR8\ +fCIkICWFQiCJIiUgL3wiLCAWhUIoiSIWICR8fCIkICWFQjCJIiUgLHwiLHwiLyAZhUIoiSIZICB8fC\ +IgICeFQjCJIicgL3wiLyAZhUIBiSIZIC0gLCAWhUIBiSIWfCACfCIsIBwgH4VCMIkiHIVCIIkiHyAj\ +ICZ8IiN8IiYgFoVCKIkiFiAsfCAUfCIsfHwiLSAMICMgF4VCAYkiFyAkfCAqfCIjIC6FQiCJIiQgHC\ +AdfCIcfCIdIBeFQiiJIhcgI3x8IiMgJIVCMIkiJIVCIIkiLiAcIBiFQgGJIhggHnwgFXwiHCAlhUIg\ +iSIeICt8IiUgGIVCKIkiGCAcfCATfCIcIB6FQjCJIh4gJXwiJXwiKyAZhUIoiSIZIC18fCItIC6FQj\ +CJIi4gK3wiKyAZhUIBiSIZICAgJSAYhUIBiSIYfCACfCIgICwgH4VCMIkiH4VCIIkiJSAkIB18Ih18\ +IiQgGIVCKIkiGCAgfCATfCIgfHwiLCAMIBwgHSAXhUIBiSIXfHwiHCAnhUIgiSIdIB8gJnwiH3wiJi\ +AXhUIoiSIXIBx8IBV8IhwgHYVCMIkiHYVCIIkiJyAIIAsgHyAWhUIBiSIWICN8fCIfIB6FQiCJIh4g\ +L3wiIyAWhUIoiSIWIB98fCIfIB6FQjCJIh4gI3wiI3wiLyAZhUIoiSIZICx8ICp8IiwgJ4VCMIkiJy\ +AvfCIvIBmFQgGJIhkgCSAtICMgFoVCAYkiFnx8IiMgICAlhUIwiSIghUIgiSIlIB0gJnwiHXwiJiAW\ +hUIoiSIWICN8IBJ8IiN8fCItIA4gCiAdIBeFQgGJIhcgH3x8Ih0gLoVCIIkiHyAgICR8IiB8IiQgF4\ +VCKIkiFyAdfHwiHSAfhUIwiSIfhUIgiSIuIAYgICAYhUIBiSIYIBx8IBR8IhwgHoVCIIkiHiArfCIg\ +IBiFQiiJIhggHHx8IhwgHoVCMIkiHiAgfCIgfCIrIBmFQiiJIhkgLXx8Ii0gLoVCMIkiLiArfCIrIB\ +mFQgGJIhkgDCANICwgICAYhUIBiSIYfHwiICAjICWFQjCJIiOFQiCJIiUgHyAkfCIffCIkIBiFQiiJ\ +IhggIHx8IiB8IBJ8IiwgHCAfIBeFQgGJIhd8IBR8IhwgJ4VCIIkiHyAjICZ8IiN8IiYgF4VCKIkiFy\ +AcfCAqfCIcIB+FQjCJIh+FQiCJIicgCSAHICMgFoVCAYkiFiAdfHwiHSAehUIgiSIeIC98IiMgFoVC\ +KIkiFiAdfHwiHSAehUIwiSIeICN8IiN8Ii8gGYVCKIkiGSAsfCAVfCIsICeFQjCJIicgL3wiLyAZhU\ +IBiSIZIAggDyAtICMgFoVCAYkiFnx8IiMgICAlhUIwiSIghUIgiSIlIB8gJnwiH3wiJiAWhUIoiSIW\ +ICN8fCIjfHwiLSAGIB8gF4VCAYkiFyAdfCATfCIdIC6FQiCJIh8gICAkfCIgfCIkIBeFQiiJIhcgHX\ +x8Ih0gH4VCMIkiH4VCIIkiLiAKICAgGIVCAYkiGCAcfCACfCIcIB6FQiCJIh4gK3wiICAYhUIoiSIY\ +IBx8fCIcIB6FQjCJIh4gIHwiIHwiKyAZhUIoiSIZIC18fCItIC6FQjCJIi4gK3wiKyAZhUIBiSIZIC\ +wgICAYhUIBiSIYfCATfCIgICMgJYVCMIkiI4VCIIkiJSAfICR8Ih98IiQgGIVCKIkiGCAgfCASfCIg\ +fHwiLCAHIBwgHyAXhUIBiSIXfCACfCIcICeFQiCJIh8gIyAmfCIjfCImIBeFQiiJIhcgHHx8IhwgH4\ +VCMIkiH4VCIIkiJyAJICMgFoVCAYkiFiAdfHwiHSAehUIgiSIeIC98IiMgFoVCKIkiFiAdfCAVfCId\ +IB6FQjCJIh4gI3wiI3wiLyAZhUIoiSIZICx8fCIsICeFQjCJIicgL3wiLyAZhUIBiSIZIA0gLSAjIB\ +aFQgGJIhZ8IBR8IiMgICAlhUIwiSIghUIgiSIlIB8gJnwiH3wiJiAWhUIoiSIWICN8fCIjfHwiLSAO\ +IB8gF4VCAYkiFyAdfHwiHSAuhUIgiSIfICAgJHwiIHwiJCAXhUIoiSIXIB18ICp8Ih0gH4VCMIkiH4\ +VCIIkiLiAMIAsgICAYhUIBiSIYIBx8fCIcIB6FQiCJIh4gK3wiICAYhUIoiSIYIBx8fCIcIB6FQjCJ\ +Ih4gIHwiIHwiKyAZhUIoiSIZIC18IBR8Ii0gLoVCMIkiLiArfCIrIBmFQgGJIhkgCyAsICAgGIVCAY\ +kiGHwgFXwiICAjICWFQjCJIiOFQiCJIiUgHyAkfCIffCIkIBiFQiiJIhggIHx8IiB8fCIsIAogBiAc\ +IB8gF4VCAYkiF3x8IhwgJ4VCIIkiHyAjICZ8IiN8IiYgF4VCKIkiFyAcfHwiHCAfhUIwiSIfhUIgiS\ +InIAwgIyAWhUIBiSIWIB18IBN8Ih0gHoVCIIkiHiAvfCIjIBaFQiiJIhYgHXx8Ih0gHoVCMIkiHiAj\ +fCIjfCIvIBmFQiiJIhkgLHx8IiwgJ4VCMIkiJyAvfCIvIBmFQgGJIhkgCSAtICMgFoVCAYkiFnwgKn\ +wiIyAgICWFQjCJIiCFQiCJIiUgHyAmfCIffCImIBaFQiiJIhYgI3x8IiN8IBJ8Ii0gDSAfIBeFQgGJ\ +IhcgHXwgEnwiHSAuhUIgiSIfICAgJHwiIHwiJCAXhUIoiSIXIB18fCIdIB+FQjCJIh+FQiCJIi4gBy\ +AgIBiFQgGJIhggHHx8IhwgHoVCIIkiHiArfCIgIBiFQiiJIhggHHwgAnwiHCAehUIwiSIeICB8IiB8\ +IisgGYVCKIkiGSAtfHwiLSAuhUIwiSIuICt8IisgGYVCAYkiGSANIA4gLCAgIBiFQgGJIhh8fCIgIC\ +MgJYVCMIkiI4VCIIkiJSAfICR8Ih98IiQgGIVCKIkiGCAgfHwiIHx8IiwgDyAcIB8gF4VCAYkiF3wg\ +KnwiHCAnhUIgiSIfICMgJnwiI3wiJiAXhUIoiSIXIBx8fCIcIB+FQjCJIh+FQiCJIicgDCAjIBaFQg\ +GJIhYgHXx8Ih0gHoVCIIkiHiAvfCIjIBaFQiiJIhYgHXwgAnwiHSAehUIwiSIeICN8IiN8Ii8gGYVC\ +KIkiGSAsfCATfCIsICeFQjCJIicgL3wiLyAZhUIBiSIZIAsgCCAtICMgFoVCAYkiFnx8IiMgICAlhU\ +IwiSIghUIgiSIlIB8gJnwiH3wiJiAWhUIoiSIWICN8fCIjfCAUfCItIAcgHyAXhUIBiSIXIB18IBV8\ +Ih0gLoVCIIkiHyAgICR8IiB8IiQgF4VCKIkiFyAdfHwiHSAfhUIwiSIfhUIgiSIuIAYgICAYhUIBiS\ +IYIBx8fCIcIB6FQiCJIh4gK3wiICAYhUIoiSIYIBx8IBR8IhwgHoVCMIkiHiAgfCIgfCIrIBmFQiiJ\ +IhkgLXx8Ii0gLoVCMIkiLiArfCIrIBmFQgGJIhkgDCAsICAgGIVCAYkiGHx8IiAgIyAlhUIwiSIjhU\ +IgiSIlIB8gJHwiH3wiJCAYhUIoiSIYICB8ICp8IiB8fCIsIA4gByAcIB8gF4VCAYkiF3x8IhwgJ4VC\ +IIkiHyAjICZ8IiN8IiYgF4VCKIkiFyAcfHwiHCAfhUIwiSIfhUIgiSInIAsgDSAjIBaFQgGJIhYgHX\ +x8Ih0gHoVCIIkiHiAvfCIjIBaFQiiJIhYgHXx8Ih0gHoVCMIkiHiAjfCIjfCIvIBmFQiiJIhkgLHx8\ +IiwgDyAgICWFQjCJIiAgJHwiJCAYhUIBiSIYIBx8fCIcIB6FQiCJIh4gK3wiJSAYhUIoiSIYIBx8IB\ +J8IhwgHoVCMIkiHiAlfCIlIBiFQgGJIhh8fCIrIAogLSAjIBaFQgGJIhZ8IBN8IiMgIIVCIIkiICAf\ +ICZ8Ih98IiYgFoVCKIkiFiAjfHwiIyAghUIwiSIghUIgiSItIB8gF4VCAYkiFyAdfCACfCIdIC6FQi\ +CJIh8gJHwiJCAXhUIoiSIXIB18IBV8Ih0gH4VCMIkiHyAkfCIkfCIuIBiFQiiJIhggK3wgFHwiKyAt\ +hUIwiSItIC58Ii4gGIVCAYkiGCAJIA4gHCAkIBeFQgGJIhd8fCIcICwgJ4VCMIkiJIVCIIkiJyAgIC\ +Z8IiB8IiYgF4VCKIkiFyAcfHwiHHx8IiwgDyAGICAgFoVCAYkiFiAdfHwiHSAehUIgiSIeICQgL3wi\ +IHwiJCAWhUIoiSIWIB18fCIdIB6FQjCJIh6FQiCJIi8gCCAgIBmFQgGJIhkgI3wgFXwiICAfhUIgiS\ +IfICV8IiMgGYVCKIkiGSAgfHwiICAfhUIwiSIfICN8IiN8IiUgGIVCKIkiGCAsfHwiLCAMIBwgJ4VC\ +MIkiHCAmfCImIBeFQgGJIhcgHXx8Ih0gH4VCIIkiHyAufCInIBeFQiiJIhcgHXwgE3wiHSAfhUIwiS\ +IfICd8IicgF4VCAYkiF3x8Ii4gIyAZhUIBiSIZICt8ICp8IiMgHIVCIIkiHCAeICR8Ih58IiQgGYVC\ +KIkiGSAjfCASfCIjIByFQjCJIhyFQiCJIisgCiAgIB4gFoVCAYkiFnx8Ih4gLYVCIIkiICAmfCImIB\ +aFQiiJIhYgHnwgAnwiHiAghUIwiSIgICZ8IiZ8Ii0gF4VCKIkiFyAufCASfCIuICuFQjCJIisgLXwi\ +LSAXhUIBiSIXIAogJiAWhUIBiSIWIB18fCIdICwgL4VCMIkiJoVCIIkiLCAcICR8Ihx8IiQgFoVCKI\ +kiFiAdfCATfCIdfHwiLyAcIBmFQgGJIhkgHnwgKnwiHCAfhUIgiSIeICYgJXwiH3wiJSAZhUIoiSIZ\ +IBx8IAJ8IhwgHoVCMIkiHoVCIIkiJiAGIAcgIyAfIBiFQgGJIhh8fCIfICCFQiCJIiAgJ3wiIyAYhU\ +IoiSIYIB98fCIfICCFQjCJIiAgI3wiI3wiJyAXhUIoiSIXIC98fCIvIBV8IA0gHCAdICyFQjCJIh0g\ +JHwiJCAWhUIBiSIWfHwiHCAghUIgiSIgIC18IiwgFoVCKIkiFiAcfCAVfCIcICCFQjCJIiAgLHwiLC\ +AWhUIBiSIWfCItICp8IC0gDiAJICMgGIVCAYkiGCAufHwiIyAdhUIgiSIdIB4gJXwiHnwiJSAYhUIo\ +iSIYICN8fCIjIB2FQjCJIh2FQiCJIi0gDCAeIBmFQgGJIhkgH3wgFHwiHiArhUIgiSIfICR8IiQgGY\ +VCKIkiGSAefHwiHiAfhUIwiSIfICR8IiR8IisgFoVCKIkiFnwiLnwgLyAmhUIwiSImICd8IicgF4VC\ +AYkiFyATfCAjfCIjIBR8ICwgHyAjhUIgiSIffCIjIBeFQiiJIhd8IiwgH4VCMIkiHyAjfCIjIBeFQg\ +GJIhd8Ii98IC8gByAcIAZ8ICQgGYVCAYkiGXwiHHwgHCAmhUIgiSIcIB0gJXwiHXwiJCAZhUIoiSIZ\ +fCIlIByFQjCJIhyFQiCJIiYgHSAYhUIBiSIYIBJ8IB58Ih0gAnwgICAdhUIgiSIdICd8Ih4gGIVCKI\ +kiGHwiICAdhUIwiSIdIB58Ih58IicgF4VCKIkiF3wiL3wgDyAlIA58IC4gLYVCMIkiDiArfCIlIBaF\ +QgGJIhZ8Iit8ICsgHYVCIIkiHSAjfCIjIBaFQiiJIhZ8IisgHYVCMIkiHSAjfCIjIBaFQgGJIhZ8Ii\ +18IC0gCyAsIAp8IB4gGIVCAYkiCnwiGHwgGCAOhUIgiSIOIBwgJHwiGHwiHCAKhUIoiSIKfCIeIA6F\ +QjCJIg6FQiCJIiQgDSAgIAx8IBggGYVCAYkiGHwiGXwgGSAfhUIgiSIZICV8Ih8gGIVCKIkiGHwiIC\ +AZhUIwiSIZIB98Ih98IiUgFoVCKIkiFnwiLCAqfCAIIB4gEnwgLyAmhUIwiSISICd8IiogF4VCAYki\ +F3wiHnwgIyAZIB6FQiCJIgh8IhkgF4VCKIkiF3wiHiAIhUIwiSIIIBl8IhkgF4VCAYkiF3wiI3wgIy\ +AGICsgDXwgHyAYhUIBiSIMfCINfCANIBKFQiCJIgYgDiAcfCINfCIOIAyFQiiJIgx8IhIgBoVCMIki\ +BoVCIIkiGCAPICAgCXwgDSAKhUIBiSIJfCIKfCAdIAqFQiCJIgogKnwiDSAJhUIoiSIJfCIPIAqFQj\ +CJIgogDXwiDXwiKiAXhUIoiSIXfCIcICmFIAcgDyALfCAGIA58IgYgDIVCAYkiC3wiDHwgDCAIhUIg\ +iSIHICwgJIVCMIkiCCAlfCIMfCIOIAuFQiiJIgt8Ig8gB4VCMIkiByAOfCIOhTcDACAAICIgEyAeIB\ +V8IA0gCYVCAYkiCXwiDXwgDSAIhUIgiSIIIAZ8IgYgCYVCKIkiCXwiDYUgFCASIAJ8IAwgFoVCAYki\ +DHwiEnwgEiAKhUIgiSIKIBl8IhIgDIVCKIkiDHwiAiAKhUIwiSIKIBJ8IhKFNwMIIAEgECAcIBiFQj\ +CJIhOFIA4gC4VCAYmFNwMAIAAgGyATICp8IguFIA+FNwMQIAAgKCANIAiFQjCJIgiFIBIgDIVCAYmF\ +NwMgIAAgESAIIAZ8IgaFIAKFNwMYIAUgISALIBeFQgGJhSAHhTcDACAEIBogBiAJhUIBiYUgCoU3Aw\ +AgA0GAAWokAAurLQEhfyMAQcAAayICQRhqIgNCADcDACACQSBqIgRCADcDACACQThqIgVCADcDACAC\ +QTBqIgZCADcDACACQShqIgdCADcDACACQQhqIgggASkACDcDACACQRBqIgkgASkAEDcDACADIAEoAB\ +giCjYCACAEIAEoACAiAzYCACACIAEpAAA3AwAgAiABKAAcIgQ2AhwgAiABKAAkIgs2AiQgByABKAAo\ +Igw2AgAgAiABKAAsIgc2AiwgBiABKAAwIg02AgAgAiABKAA0IgY2AjQgBSABKAA4Ig42AgAgAiABKA\ +A8IgE2AjwgACAHIAwgAigCFCIFIAUgBiAMIAUgBCALIAMgCyAKIAQgByAKIAIoAgQiDyAAKAIQIhBq\ +IAAoAggiEUEKdyISIAAoAgQiE3MgESATcyAAKAIMIhRzIAAoAgAiFWogAigCACIWakELdyAQaiIXc2\ +pBDncgFGoiGEEKdyIZaiAJKAIAIgkgE0EKdyIaaiAIKAIAIgggFGogFyAacyAYc2pBD3cgEmoiGyAZ\ +cyACKAIMIgIgEmogGCAXQQp3IhdzIBtzakEMdyAaaiIYc2pBBXcgF2oiHCAYQQp3Ih1zIAUgF2ogGC\ +AbQQp3IhdzIBxzakEIdyAZaiIYc2pBB3cgF2oiGUEKdyIbaiALIBxBCnciHGogFyAEaiAYIBxzIBlz\ +akEJdyAdaiIXIBtzIB0gA2ogGSAYQQp3IhhzIBdzakELdyAcaiIZc2pBDXcgGGoiHCAZQQp3Ih1zIB\ +ggDGogGSAXQQp3IhdzIBxzakEOdyAbaiIYc2pBD3cgF2oiGUEKdyIbaiAdIAZqIBkgGEEKdyIecyAX\ +IA1qIBggHEEKdyIXcyAZc2pBBncgHWoiGHNqQQd3IBdqIhlBCnciHCAeIAFqIBkgGEEKdyIdcyAXIA\ +5qIBggG3MgGXNqQQl3IB5qIhlzakEIdyAbaiIXQX9zcWogFyAZcWpBmfOJ1AVqQQd3IB1qIhhBCnci\ +G2ogBiAcaiAXQQp3Ih4gCSAdaiAZQQp3IhkgGEF/c3FqIBggF3FqQZnzidQFakEGdyAcaiIXQX9zcW\ +ogFyAYcWpBmfOJ1AVqQQh3IBlqIhhBCnciHCAMIB5qIBdBCnciHSAPIBlqIBsgGEF/c3FqIBggF3Fq\ +QZnzidQFakENdyAeaiIXQX9zcWogFyAYcWpBmfOJ1AVqQQt3IBtqIhhBf3NxaiAYIBdxakGZ84nUBW\ +pBCXcgHWoiGUEKdyIbaiACIBxqIBhBCnciHiABIB1qIBdBCnciHSAZQX9zcWogGSAYcWpBmfOJ1AVq\ +QQd3IBxqIhdBf3NxaiAXIBlxakGZ84nUBWpBD3cgHWoiGEEKdyIcIBYgHmogF0EKdyIfIA0gHWogGy\ +AYQX9zcWogGCAXcWpBmfOJ1AVqQQd3IB5qIhdBf3NxaiAXIBhxakGZ84nUBWpBDHcgG2oiGEF/c3Fq\ +IBggF3FqQZnzidQFakEPdyAfaiIZQQp3IhtqIAggHGogGEEKdyIdIAUgH2ogF0EKdyIeIBlBf3Nxai\ +AZIBhxakGZ84nUBWpBCXcgHGoiF0F/c3FqIBcgGXFqQZnzidQFakELdyAeaiIYQQp3IhkgByAdaiAX\ +QQp3IhwgDiAeaiAbIBhBf3NxaiAYIBdxakGZ84nUBWpBB3cgHWoiF0F/c3FqIBcgGHFqQZnzidQFak\ +ENdyAbaiIYQX9zIh5xaiAYIBdxakGZ84nUBWpBDHcgHGoiG0EKdyIdaiAJIBhBCnciGGogDiAXQQp3\ +IhdqIAwgGWogAiAcaiAbIB5yIBdzakGh1+f2BmpBC3cgGWoiGSAbQX9zciAYc2pBodfn9gZqQQ13IB\ +dqIhcgGUF/c3IgHXNqQaHX5/YGakEGdyAYaiIYIBdBf3NyIBlBCnciGXNqQaHX5/YGakEHdyAdaiIb\ +IBhBf3NyIBdBCnciF3NqQaHX5/YGakEOdyAZaiIcQQp3Ih1qIAggG0EKdyIeaiAPIBhBCnciGGogAy\ +AXaiABIBlqIBwgG0F/c3IgGHNqQaHX5/YGakEJdyAXaiIXIBxBf3NyIB5zakGh1+f2BmpBDXcgGGoi\ +GCAXQX9zciAdc2pBodfn9gZqQQ93IB5qIhkgGEF/c3IgF0EKdyIXc2pBodfn9gZqQQ53IB1qIhsgGU\ +F/c3IgGEEKdyIYc2pBodfn9gZqQQh3IBdqIhxBCnciHWogByAbQQp3Ih5qIAYgGUEKdyIZaiAKIBhq\ +IBYgF2ogHCAbQX9zciAZc2pBodfn9gZqQQ13IBhqIhcgHEF/c3IgHnNqQaHX5/YGakEGdyAZaiIYIB\ +dBf3NyIB1zakGh1+f2BmpBBXcgHmoiGSAYQX9zciAXQQp3IhtzakGh1+f2BmpBDHcgHWoiHCAZQX9z\ +ciAYQQp3IhhzakGh1+f2BmpBB3cgG2oiHUEKdyIXaiALIBlBCnciGWogDSAbaiAdIBxBf3NyIBlzak\ +Gh1+f2BmpBBXcgGGoiGyAXQX9zcWogDyAYaiAdIBxBCnciGEF/c3FqIBsgGHFqQdz57vh4akELdyAZ\ +aiIcIBdxakHc+e74eGpBDHcgGGoiHSAcQQp3IhlBf3NxaiAHIBhqIBwgG0EKdyIYQX9zcWogHSAYcW\ +pB3Pnu+HhqQQ53IBdqIhwgGXFqQdz57vh4akEPdyAYaiIeQQp3IhdqIA0gHUEKdyIbaiAWIBhqIBwg\ +G0F/c3FqIB4gG3FqQdz57vh4akEOdyAZaiIdIBdBf3NxaiADIBlqIB4gHEEKdyIYQX9zcWogHSAYcW\ +pB3Pnu+HhqQQ93IBtqIhsgF3FqQdz57vh4akEJdyAYaiIcIBtBCnciGUF/c3FqIAkgGGogGyAdQQp3\ +IhhBf3NxaiAcIBhxakHc+e74eGpBCHcgF2oiHSAZcWpB3Pnu+HhqQQl3IBhqIh5BCnciF2ogASAcQQ\ +p3IhtqIAIgGGogHSAbQX9zcWogHiAbcWpB3Pnu+HhqQQ53IBlqIhwgF0F/c3FqIAQgGWogHiAdQQp3\ +IhhBf3NxaiAcIBhxakHc+e74eGpBBXcgG2oiGyAXcWpB3Pnu+HhqQQZ3IBhqIh0gG0EKdyIZQX9zcW\ +ogDiAYaiAbIBxBCnciGEF/c3FqIB0gGHFqQdz57vh4akEIdyAXaiIcIBlxakHc+e74eGpBBncgGGoi\ +HkEKdyIfaiAWIBxBCnciF2ogCSAdQQp3IhtqIAggGWogHiAXQX9zcWogCiAYaiAcIBtBf3NxaiAeIB\ +txakHc+e74eGpBBXcgGWoiGCAXcWpB3Pnu+HhqQQx3IBtqIhkgGCAfQX9zcnNqQc76z8p6akEJdyAX\ +aiIXIBkgGEEKdyIYQX9zcnNqQc76z8p6akEPdyAfaiIbIBcgGUEKdyIZQX9zcnNqQc76z8p6akEFdy\ +AYaiIcQQp3Ih1qIAggG0EKdyIeaiANIBdBCnciF2ogBCAZaiALIBhqIBwgGyAXQX9zcnNqQc76z8p6\ +akELdyAZaiIYIBwgHkF/c3JzakHO+s/KempBBncgF2oiFyAYIB1Bf3Nyc2pBzvrPynpqQQh3IB5qIh\ +kgFyAYQQp3IhhBf3Nyc2pBzvrPynpqQQ13IB1qIhsgGSAXQQp3IhdBf3Nyc2pBzvrPynpqQQx3IBhq\ +IhxBCnciHWogAyAbQQp3Ih5qIAIgGUEKdyIZaiAPIBdqIA4gGGogHCAbIBlBf3Nyc2pBzvrPynpqQQ\ +V3IBdqIhcgHCAeQX9zcnNqQc76z8p6akEMdyAZaiIYIBcgHUF/c3JzakHO+s/KempBDXcgHmoiGSAY\ +IBdBCnciG0F/c3JzakHO+s/KempBDncgHWoiHCAZIBhBCnciGEF/c3JzakHO+s/KempBC3cgG2oiHU\ +EKdyIgIBRqIA4gAyABIAsgFiAJIBYgByACIA8gASAWIA0gASAIIBUgESAUQX9zciATc2ogBWpB5peK\ +hQVqQQh3IBBqIhdBCnciHmogGiALaiASIBZqIBQgBGogDiAQIBcgEyASQX9zcnNqakHml4qFBWpBCX\ +cgFGoiFCAXIBpBf3Nyc2pB5peKhQVqQQl3IBJqIhIgFCAeQX9zcnNqQeaXioUFakELdyAaaiIaIBIg\ +FEEKdyIUQX9zcnNqQeaXioUFakENdyAeaiIXIBogEkEKdyISQX9zcnNqQeaXioUFakEPdyAUaiIeQQ\ +p3Ih9qIAogF0EKdyIhaiAGIBpBCnciGmogCSASaiAHIBRqIB4gFyAaQX9zcnNqQeaXioUFakEPdyAS\ +aiIUIB4gIUF/c3JzakHml4qFBWpBBXcgGmoiEiAUIB9Bf3Nyc2pB5peKhQVqQQd3ICFqIhogEiAUQQ\ +p3IhRBf3Nyc2pB5peKhQVqQQd3IB9qIhcgGiASQQp3IhJBf3Nyc2pB5peKhQVqQQh3IBRqIh5BCnci\ +H2ogAiAXQQp3IiFqIAwgGkEKdyIaaiAPIBJqIAMgFGogHiAXIBpBf3Nyc2pB5peKhQVqQQt3IBJqIh\ +QgHiAhQX9zcnNqQeaXioUFakEOdyAaaiISIBQgH0F/c3JzakHml4qFBWpBDncgIWoiGiASIBRBCnci\ +F0F/c3JzakHml4qFBWpBDHcgH2oiHiAaIBJBCnciH0F/c3JzakHml4qFBWpBBncgF2oiIUEKdyIUai\ +ACIBpBCnciEmogCiAXaiAeIBJBf3NxaiAhIBJxakGkorfiBWpBCXcgH2oiFyAUQX9zcWogByAfaiAh\ +IB5BCnciGkF/c3FqIBcgGnFqQaSit+IFakENdyASaiIeIBRxakGkorfiBWpBD3cgGmoiHyAeQQp3Ih\ +JBf3NxaiAEIBpqIB4gF0EKdyIaQX9zcWogHyAacWpBpKK34gVqQQd3IBRqIh4gEnFqQaSit+IFakEM\ +dyAaaiIhQQp3IhRqIAwgH0EKdyIXaiAGIBpqIB4gF0F/c3FqICEgF3FqQaSit+IFakEIdyASaiIfIB\ +RBf3NxaiAFIBJqICEgHkEKdyISQX9zcWogHyAScWpBpKK34gVqQQl3IBdqIhcgFHFqQaSit+IFakEL\ +dyASaiIeIBdBCnciGkF/c3FqIA4gEmogFyAfQQp3IhJBf3NxaiAeIBJxakGkorfiBWpBB3cgFGoiHy\ +AacWpBpKK34gVqQQd3IBJqIiFBCnciFGogCSAeQQp3IhdqIAMgEmogHyAXQX9zcWogISAXcWpBpKK3\ +4gVqQQx3IBpqIh4gFEF/c3FqIA0gGmogISAfQQp3IhJBf3NxaiAeIBJxakGkorfiBWpBB3cgF2oiFy\ +AUcWpBpKK34gVqQQZ3IBJqIh8gF0EKdyIaQX9zcWogCyASaiAXIB5BCnciEkF/c3FqIB8gEnFqQaSi\ +t+IFakEPdyAUaiIXIBpxakGkorfiBWpBDXcgEmoiHkEKdyIhaiAPIBdBCnciImogBSAfQQp3IhRqIA\ +EgGmogCCASaiAXIBRBf3NxaiAeIBRxakGkorfiBWpBC3cgGmoiEiAeQX9zciAic2pB8/3A6wZqQQl3\ +IBRqIhQgEkF/c3IgIXNqQfP9wOsGakEHdyAiaiIaIBRBf3NyIBJBCnciEnNqQfP9wOsGakEPdyAhai\ +IXIBpBf3NyIBRBCnciFHNqQfP9wOsGakELdyASaiIeQQp3Ih9qIAsgF0EKdyIhaiAKIBpBCnciGmog\ +DiAUaiAEIBJqIB4gF0F/c3IgGnNqQfP9wOsGakEIdyAUaiIUIB5Bf3NyICFzakHz/cDrBmpBBncgGm\ +oiEiAUQX9zciAfc2pB8/3A6wZqQQZ3ICFqIhogEkF/c3IgFEEKdyIUc2pB8/3A6wZqQQ53IB9qIhcg\ +GkF/c3IgEkEKdyISc2pB8/3A6wZqQQx3IBRqIh5BCnciH2ogDCAXQQp3IiFqIAggGkEKdyIaaiANIB\ +JqIAMgFGogHiAXQX9zciAac2pB8/3A6wZqQQ13IBJqIhQgHkF/c3IgIXNqQfP9wOsGakEFdyAaaiIS\ +IBRBf3NyIB9zakHz/cDrBmpBDncgIWoiGiASQX9zciAUQQp3IhRzakHz/cDrBmpBDXcgH2oiFyAaQX\ +9zciASQQp3IhJzakHz/cDrBmpBDXcgFGoiHkEKdyIfaiAGIBJqIAkgFGogHiAXQX9zciAaQQp3Ihpz\ +akHz/cDrBmpBB3cgEmoiEiAeQX9zciAXQQp3IhdzakHz/cDrBmpBBXcgGmoiFEEKdyIeIAogF2ogEk\ +EKdyIhIAMgGmogHyAUQX9zcWogFCAScWpB6e210wdqQQ93IBdqIhJBf3NxaiASIBRxakHp7bXTB2pB\ +BXcgH2oiFEF/c3FqIBQgEnFqQenttdMHakEIdyAhaiIaQQp3IhdqIAIgHmogFEEKdyIfIA8gIWogEk\ +EKdyIhIBpBf3NxaiAaIBRxakHp7bXTB2pBC3cgHmoiFEF/c3FqIBQgGnFqQenttdMHakEOdyAhaiIS\ +QQp3Ih4gASAfaiAUQQp3IiIgByAhaiAXIBJBf3NxaiASIBRxakHp7bXTB2pBDncgH2oiFEF/c3FqIB\ +QgEnFqQenttdMHakEGdyAXaiISQX9zcWogEiAUcWpB6e210wdqQQ53ICJqIhpBCnciF2ogDSAeaiAS\ +QQp3Ih8gBSAiaiAUQQp3IiEgGkF/c3FqIBogEnFqQenttdMHakEGdyAeaiIUQX9zcWogFCAacWpB6e\ +210wdqQQl3ICFqIhJBCnciHiAGIB9qIBRBCnciIiAIICFqIBcgEkF/c3FqIBIgFHFqQenttdMHakEM\ +dyAfaiIUQX9zcWogFCAScWpB6e210wdqQQl3IBdqIhJBf3NxaiASIBRxakHp7bXTB2pBDHcgImoiGk\ +EKdyIXaiAOIBRBCnciH2ogFyAMIB5qIBJBCnciISAEICJqIB8gGkF/c3FqIBogEnFqQenttdMHakEF\ +dyAeaiIUQX9zcWogFCAacWpB6e210wdqQQ93IB9qIhJBf3NxaiASIBRxakHp7bXTB2pBCHcgIWoiGi\ +ASQQp3Ih5zICEgDWogEiAUQQp3Ig1zIBpzakEIdyAXaiIUc2pBBXcgDWoiEkEKdyIXaiAaQQp3IgMg\ +D2ogDSAMaiAUIANzIBJzakEMdyAeaiIMIBdzIB4gCWogEiAUQQp3Ig1zIAxzakEJdyADaiIDc2pBDH\ +cgDWoiDyADQQp3IglzIA0gBWogAyAMQQp3IgxzIA9zakEFdyAXaiIDc2pBDncgDGoiDUEKdyIFaiAP\ +QQp3Ig4gCGogDCAEaiADIA5zIA1zakEGdyAJaiIEIAVzIAkgCmogDSADQQp3IgNzIARzakEIdyAOai\ +IMc2pBDXcgA2oiDSAMQQp3Ig5zIAMgBmogDCAEQQp3IgNzIA1zakEGdyAFaiIEc2pBBXcgA2oiDEEK\ +dyIFajYCCCAAIBEgCiAbaiAdIBwgGUEKdyIKQX9zcnNqQc76z8p6akEIdyAYaiIPQQp3aiADIBZqIA\ +QgDUEKdyIDcyAMc2pBD3cgDmoiDUEKdyIWajYCBCAAIBMgASAYaiAPIB0gHEEKdyIBQX9zcnNqQc76\ +z8p6akEFdyAKaiIJaiAOIAJqIAwgBEEKdyICcyANc2pBDXcgA2oiBEEKd2o2AgAgACABIBVqIAYgCm\ +ogCSAPICBBf3Nyc2pBzvrPynpqQQZ3aiADIAtqIA0gBXMgBHNqQQt3IAJqIgpqNgIQIAAgASAQaiAF\ +aiACIAdqIAQgFnMgCnNqQQt3ajYCDAuEKAIwfwF+IwBBwABrIgNBGGoiBEIANwMAIANBIGoiBUIANw\ +MAIANBOGoiBkIANwMAIANBMGoiB0IANwMAIANBKGoiCEIANwMAIANBCGoiCSABKQAINwMAIANBEGoi\ +CiABKQAQNwMAIAQgASgAGCILNgIAIAUgASgAICIENgIAIAMgASkAADcDACADIAEoABwiBTYCHCADIA\ +EoACQiDDYCJCAIIAEoACgiDTYCACADIAEoACwiCDYCLCAHIAEoADAiDjYCACADIAEoADQiBzYCNCAG\ +IAEoADgiDzYCACADIAEoADwiATYCPCAAIAggASAEIAUgByAIIAsgBCAMIAwgDSAPIAEgBCAEIAsgAS\ +ANIA8gCCAFIAcgASAFIAggCyAHIAcgDiAFIAsgAEEkaiIQKAIAIhEgAEEUaiISKAIAIhNqaiIGQZma\ +g98Fc0EQdyIUQbrqv6p6aiIVIBFzQRR3IhYgBmpqIhcgFHNBGHciGCAVaiIZIBZzQRl3IhogAEEgai\ +IbKAIAIhUgAEEQaiIcKAIAIh1qIAooAgAiBmoiCiACc0Grs4/8AXNBEHciHkHy5rvjA2oiHyAVc0EU\ +dyIgIApqIAMoAhQiAmoiIWpqIiIgAEEcaiIjKAIAIhYgAEEMaiIkKAIAIiVqIAkoAgAiCWoiCiAAKQ\ +MAIjNCIIinc0GM0ZXYeXNBEHciFEGF3Z7be2oiJiAWc0EUdyInIApqIAMoAgwiCmoiKCAUc0EYdyIp\ +c0EQdyIqIABBGGoiKygCACIsIAAoAggiLWogAygCACIUaiIuIDOnc0H/pLmIBXNBEHciL0HnzKfQBm\ +oiMCAsc0EUdyIxIC5qIAMoAgQiA2oiLiAvc0EYdyIvIDBqIjBqIjIgGnNBFHciGiAiamoiIiAqc0EY\ +dyIqIDJqIjIgGnNBGXciGiABIA8gFyAwIDFzQRl3IjBqaiIXICEgHnNBGHciHnNBEHciISApICZqIi\ +ZqIikgMHNBFHciMCAXamoiF2pqIjEgDCAEICYgJ3NBGXciJiAuamoiJyAYc0EQdyIYIB4gH2oiHmoi\ +HyAmc0EUdyImICdqaiInIBhzQRh3IhhzQRB3Ii4gCCANIB4gIHNBGXciHiAoamoiICAvc0EQdyIoIB\ +lqIhkgHnNBFHciHiAgamoiICAoc0EYdyIoIBlqIhlqIi8gGnNBFHciGiAxamoiMSAuc0EYdyIuIC9q\ +Ii8gGnNBGXciGiABIAwgIiAZIB5zQRl3IhlqaiIeIBcgIXNBGHciF3NBEHciISAYIB9qIhhqIh8gGX\ +NBFHciGSAeamoiHmpqIiIgBCAgIBggJnNBGXciGGogBmoiICAqc0EQdyImIBcgKWoiF2oiKSAYc0EU\ +dyIYICBqaiIgICZzQRh3IiZzQRB3IiogDSAPIBcgMHNBGXciFyAnamoiJyAoc0EQdyIoIDJqIjAgF3\ +NBFHciFyAnamoiJyAoc0EYdyIoIDBqIjBqIjIgGnNBFHciGiAiamoiIiAqc0EYdyIqIDJqIjIgGnNB\ +GXciGiAxIDAgF3NBGXciF2ogAmoiMCAeICFzQRh3Ih5zQRB3IiEgJiApaiImaiIpIBdzQRR3IhcgMG\ +ogCmoiMGpqIjEgDiAmIBhzQRl3IhggJ2ogA2oiJiAuc0EQdyInIB4gH2oiHmoiHyAYc0EUdyIYICZq\ +aiImICdzQRh3IidzQRB3Ii4gHiAZc0EZdyIZICBqIBRqIh4gKHNBEHciICAvaiIoIBlzQRR3IhkgHm\ +ogCWoiHiAgc0EYdyIgIChqIihqIi8gGnNBFHciGiAxamoiMSAuc0EYdyIuIC9qIi8gGnNBGXciGiAi\ +ICggGXNBGXciGWogAmoiIiAwICFzQRh3IiFzQRB3IiggJyAfaiIfaiInIBlzQRR3IhkgImogCWoiIm\ +pqIjAgDiAeIB8gGHNBGXciGGpqIh4gKnNBEHciHyAhIClqIiFqIikgGHNBFHciGCAeaiAUaiIeIB9z\ +QRh3Ih9zQRB3IiogBCAIICEgF3NBGXciFyAmamoiISAgc0EQdyIgIDJqIiYgF3NBFHciFyAhamoiIS\ +Agc0EYdyIgICZqIiZqIjIgGnNBFHciGiAwaiADaiIwICpzQRh3IiogMmoiMiAac0EZdyIaIAwgMSAm\ +IBdzQRl3IhdqaiImICIgKHNBGHciInNBEHciKCAfIClqIh9qIikgF3NBFHciFyAmaiAGaiImamoiMS\ +APIA0gHyAYc0EZdyIYICFqaiIfIC5zQRB3IiEgIiAnaiIiaiInIBhzQRR3IhggH2pqIh8gIXNBGHci\ +IXNBEHciLiALICIgGXNBGXciGSAeaiAKaiIeICBzQRB3IiAgL2oiIiAZc0EUdyIZIB5qaiIeICBzQR\ +h3IiAgImoiImoiLyAac0EUdyIaIDFqaiIxIC5zQRh3Ii4gL2oiLyAac0EZdyIaIA4gByAwICIgGXNB\ +GXciGWpqIiIgJiAoc0EYdyImc0EQdyIoICEgJ2oiIWoiJyAZc0EUdyIZICJqaiIiaiAGaiIwIB4gIS\ +AYc0EZdyIYaiAKaiIeICpzQRB3IiEgJiApaiImaiIpIBhzQRR3IhggHmogA2oiHiAhc0EYdyIhc0EQ\ +dyIqIAwgBSAmIBdzQRl3IhcgH2pqIh8gIHNBEHciICAyaiImIBdzQRR3IhcgH2pqIh8gIHNBGHciIC\ +AmaiImaiIyIBpzQRR3IhogMGogFGoiMCAqc0EYdyIqIDJqIjIgGnNBGXciGiAEIAEgMSAmIBdzQRl3\ +IhdqaiImICIgKHNBGHciInNBEHciKCAhIClqIiFqIikgF3NBFHciFyAmamoiJmpqIjEgCyAhIBhzQR\ +l3IhggH2ogCWoiHyAuc0EQdyIhICIgJ2oiImoiJyAYc0EUdyIYIB9qaiIfICFzQRh3IiFzQRB3Ii4g\ +DSAiIBlzQRl3IhkgHmogAmoiHiAgc0EQdyIgIC9qIiIgGXNBFHciGSAeamoiHiAgc0EYdyIgICJqIi\ +JqIi8gGnNBFHciGiAxamoiMSAuc0EYdyIuIC9qIi8gGnNBGXciGiAwICIgGXNBGXciGWogCWoiIiAm\ +IChzQRh3IiZzQRB3IiggISAnaiIhaiInIBlzQRR3IhkgImogBmoiImpqIjAgBSAeICEgGHNBGXciGG\ +ogAmoiHiAqc0EQdyIhICYgKWoiJmoiKSAYc0EUdyIYIB5qaiIeICFzQRh3IiFzQRB3IiogDCAmIBdz\ +QRl3IhcgH2pqIh8gIHNBEHciICAyaiImIBdzQRR3IhcgH2ogFGoiHyAgc0EYdyIgICZqIiZqIjIgGn\ +NBFHciGiAwamoiMCAqc0EYdyIqIDJqIjIgGnNBGXciGiAHIDEgJiAXc0EZdyIXaiAKaiImICIgKHNB\ +GHciInNBEHciKCAhIClqIiFqIikgF3NBFHciFyAmamoiJmpqIjEgDyAhIBhzQRl3IhggH2pqIh8gLn\ +NBEHciISAiICdqIiJqIicgGHNBFHciGCAfaiADaiIfICFzQRh3IiFzQRB3Ii4gDiAIICIgGXNBGXci\ +GSAeamoiHiAgc0EQdyIgIC9qIiIgGXNBFHciGSAeamoiHiAgc0EYdyIgICJqIiJqIi8gGnNBFHciGi\ +AxaiAKaiIxIC5zQRh3Ii4gL2oiLyAac0EZdyIaIAggMCAiIBlzQRl3IhlqIBRqIiIgJiAoc0EYdyIm\ +c0EQdyIoICEgJ2oiIWoiJyAZc0EUdyIZICJqaiIiamoiMCANIAsgHiAhIBhzQRl3IhhqaiIeICpzQR\ +B3IiEgJiApaiImaiIpIBhzQRR3IhggHmpqIh4gIXNBGHciIXNBEHciKiAOICYgF3NBGXciFyAfaiAJ\ +aiIfICBzQRB3IiAgMmoiJiAXc0EUdyIXIB9qaiIfICBzQRh3IiAgJmoiJmoiMiAac0EUdyIaIDBqai\ +IwICpzQRh3IiogMmoiMiAac0EZdyIaIAwgMSAmIBdzQRl3IhdqIANqIiYgIiAoc0EYdyIic0EQdyIo\ +ICEgKWoiIWoiKSAXc0EUdyIXICZqaiImaiAGaiIxIAcgISAYc0EZdyIYIB9qIAZqIh8gLnNBEHciIS\ +AiICdqIiJqIicgGHNBFHciGCAfamoiHyAhc0EYdyIhc0EQdyIuIAUgIiAZc0EZdyIZIB5qaiIeICBz\ +QRB3IiAgL2oiIiAZc0EUdyIZIB5qIAJqIh4gIHNBGHciICAiaiIiaiIvIBpzQRR3IhogMWpqIjEgLn\ +NBGHciLiAvaiIvIBpzQRl3IhogByAPIDAgIiAZc0EZdyIZamoiIiAmIChzQRh3IiZzQRB3IiggISAn\ +aiIhaiInIBlzQRR3IhkgImpqIiJqaiIwIAEgHiAhIBhzQRl3IhhqIANqIh4gKnNBEHciISAmIClqIi\ +ZqIikgGHNBFHciGCAeamoiHiAhc0EYdyIhc0EQdyIqIA4gJiAXc0EZdyIXIB9qaiIfICBzQRB3IiAg\ +MmoiJiAXc0EUdyIXIB9qIAJqIh8gIHNBGHciICAmaiImaiIyIBpzQRR3IhogMGogCWoiMCAqc0EYdy\ +IqIDJqIjIgGnNBGXciGiAIIAQgMSAmIBdzQRl3IhdqaiImICIgKHNBGHciInNBEHciKCAhIClqIiFq\ +IikgF3NBFHciFyAmamoiJmogCmoiMSAFICEgGHNBGXciGCAfaiAUaiIfIC5zQRB3IiEgIiAnaiIiai\ +InIBhzQRR3IhggH2pqIh8gIXNBGHciIXNBEHciLiALICIgGXNBGXciGSAeamoiHiAgc0EQdyIgIC9q\ +IiIgGXNBFHciGSAeaiAKaiIeICBzQRh3IiAgImoiImoiLyAac0EUdyIaIDFqaiIxIC5zQRh3Ii4gL2\ +oiLyAac0EZdyIaIA4gMCAiIBlzQRl3IhlqaiIiICYgKHNBGHciJnNBEHciKCAhICdqIiFqIicgGXNB\ +FHciGSAiaiADaiIiamoiMCAPIAUgHiAhIBhzQRl3IhhqaiIeICpzQRB3IiEgJiApaiImaiIpIBhzQR\ +R3IhggHmpqIh4gIXNBGHciIXNBEHciKiAIIAcgJiAXc0EZdyIXIB9qaiIfICBzQRB3IiAgMmoiJiAX\ +c0EUdyIXIB9qaiIfICBzQRh3IiAgJmoiJmoiMiAac0EUdyIaIDBqaiIwIAEgIiAoc0EYdyIiICdqIi\ +cgGXNBGXciGSAeamoiHiAgc0EQdyIgIC9qIiggGXNBFHciGSAeaiAGaiIeICBzQRh3IiAgKGoiKCAZ\ +c0EZdyIZamoiLyANIDEgJiAXc0EZdyIXaiAJaiImICJzQRB3IiIgISApaiIhaiIpIBdzQRR3IhcgJm\ +pqIiYgInNBGHciInNBEHciMSAhIBhzQRl3IhggH2ogAmoiHyAuc0EQdyIhICdqIicgGHNBFHciGCAf\ +aiAUaiIfICFzQRh3IiEgJ2oiJ2oiLiAZc0EUdyIZIC9qIApqIi8gMXNBGHciMSAuaiIuIBlzQRl3Ih\ +kgDCAPIB4gJyAYc0EZdyIYamoiHiAwICpzQRh3IidzQRB3IiogIiApaiIiaiIpIBhzQRR3IhggHmpq\ +Ih5qaiIwIAEgCyAiIBdzQRl3IhcgH2pqIh8gIHNBEHciICAnIDJqIiJqIicgF3NBFHciFyAfamoiHy\ +Agc0EYdyIgc0EQdyIyIAQgIiAac0EZdyIaICZqIBRqIiIgIXNBEHciISAoaiImIBpzQRR3IhogImpq\ +IiIgIXNBGHciISAmaiImaiIoIBlzQRR3IhkgMGpqIjAgDiAeICpzQRh3Ih4gKWoiKSAYc0EZdyIYIB\ +9qaiIfICFzQRB3IiEgLmoiKiAYc0EUdyIYIB9qIAlqIh8gIXNBGHciISAqaiIqIBhzQRl3IhhqaiIE\ +ICYgGnNBGXciGiAvaiADaiImIB5zQRB3Ih4gICAnaiIgaiInIBpzQRR3IhogJmogBmoiJiAec0EYdy\ +Iec0EQdyIuIA0gIiAgIBdzQRl3IhdqaiIgIDFzQRB3IiIgKWoiKSAXc0EUdyIXICBqIAJqIiAgInNB\ +GHciIiApaiIpaiIvIBhzQRR3IhggBGogBmoiBCAuc0EYdyIGIC9qIi4gGHNBGXciGCANICkgF3NBGX\ +ciFyAfamoiDSAwIDJzQRh3Ih9zQRB3IikgHiAnaiIeaiInIBdzQRR3IhcgDWogCWoiDWpqIgEgHiAa\ +c0EZdyIJICBqIANqIgMgIXNBEHciGiAfIChqIh5qIh8gCXNBFHciCSADaiACaiIDIBpzQRh3IgJzQR\ +B3IhogCyAFICYgHiAZc0EZdyIZamoiBSAic0EQdyIeICpqIiAgGXNBFHciGSAFamoiCyAec0EYdyIF\ +ICBqIh5qIiAgGHNBFHciGCABamoiASAtcyAOIAIgH2oiCCAJc0EZdyICIAtqIApqIgsgBnNBEHciBi\ +ANIClzQRh3Ig0gJ2oiCWoiCiACc0EUdyICIAtqaiILIAZzQRh3Ig4gCmoiBnM2AgggJCAlIA8gDCAe\ +IBlzQRl3IgAgBGpqIgQgDXNBEHciDCAIaiINIABzQRR3IgAgBGpqIgRzIBQgByADIAkgF3NBGXciCG\ +pqIgMgBXNBEHciBSAuaiIHIAhzQRR3IgggA2pqIgMgBXNBGHciBSAHaiIHczYCACAQIBEgASAac0EY\ +dyIBcyAGIAJzQRl3czYCACASIBMgBCAMc0EYdyIEIA1qIgxzIANzNgIAIBwgHSABICBqIgNzIAtzNg\ +IAICsgBCAscyAHIAhzQRl3czYCACAbIBUgDCAAc0EZd3MgBXM2AgAgIyAWIAMgGHNBGXdzIA5zNgIA\ +C7ckAVN/IwBBwABrIgNBOGpCADcDACADQTBqQgA3AwAgA0EoakIANwMAIANBIGpCADcDACADQRhqQg\ +A3AwAgA0EQakIANwMAIANBCGpCADcDACADQgA3AwAgACgCECEEIAAoAgwhBSAAKAIIIQYgACgCBCEH\ +IAAoAgAhCAJAIAJFDQAgASACQQZ0aiEJA0AgAyABKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/g\ +NxIAJBGHZycjYCACADIAFBBGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyNgIE\ +IAMgAUEIaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnI2AgggAyABQQxqKAAAIg\ +JBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZycjYCDCADIAFBEGooAAAiAkEYdCACQQh0QYCA\ +/AdxciACQQh2QYD+A3EgAkEYdnJyNgIQIAMgAUEUaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP\ +4DcSACQRh2cnI2AhQgAyABQRxqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIK\ +NgIcIAMgAUEgaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiCzYCICADIAFBGG\ +ooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIgw2AhggAygCACENIAMoAgQhDiAD\ +KAIIIQ8gAygCECEQIAMoAgwhESADKAIUIRIgAyABQSRqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdk\ +GA/gNxIAJBGHZyciITNgIkIAMgAUEoaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2\ +cnIiFDYCKCADIAFBMGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIhU2AjAgAy\ +ABQSxqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIWNgIsIAMgAUE0aigAACIC\ +QRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiAjYCNCADIAFBOGooAAAiF0EYdCAXQQh0QY\ +CA/AdxciAXQQh2QYD+A3EgF0EYdnJyIhc2AjggAyABQTxqKAAAIhhBGHQgGEEIdEGAgPwHcXIgGEEI\ +dkGA/gNxIBhBGHZyciIYNgI8IAggEyAKcyAYcyAMIBBzIBVzIBEgDnMgE3MgF3NBAXciGXNBAXciGn\ +NBAXciGyAKIBJzIAJzIBAgD3MgFHMgGHNBAXciHHNBAXciHXMgGCACcyAdcyAVIBRzIBxzIBtzQQF3\ +Ih5zQQF3Ih9zIBogHHMgHnMgGSAYcyAbcyAXIBVzIBpzIBYgE3MgGXMgCyAMcyAXcyASIBFzIBZzIA\ +8gDXMgC3MgAnNBAXciIHNBAXciIXNBAXciInNBAXciI3NBAXciJHNBAXciJXNBAXciJnNBAXciJyAd\ +ICFzIAIgFnMgIXMgFCALcyAgcyAdc0EBdyIoc0EBdyIpcyAcICBzIChzIB9zQQF3IipzQQF3IitzIB\ +8gKXMgK3MgHiAocyAqcyAnc0EBdyIsc0EBdyItcyAmICpzICxzICUgH3MgJ3MgJCAecyAmcyAjIBtz\ +ICVzICIgGnMgJHMgISAZcyAjcyAgIBdzICJzIClzQQF3Ii5zQQF3Ii9zQQF3IjBzQQF3IjFzQQF3Ij\ +JzQQF3IjNzQQF3IjRzQQF3IjUgKyAvcyApICNzIC9zICggInMgLnMgK3NBAXciNnNBAXciN3MgKiAu\ +cyA2cyAtc0EBdyI4c0EBdyI5cyAtIDdzIDlzICwgNnMgOHMgNXNBAXciOnNBAXciO3MgNCA4cyA6cy\ +AzIC1zIDVzIDIgLHMgNHMgMSAncyAzcyAwICZzIDJzIC8gJXMgMXMgLiAkcyAwcyA3c0EBdyI8c0EB\ +dyI9c0EBdyI+c0EBdyI/c0EBdyJAc0EBdyJBc0EBdyJCc0EBdyJDIDkgPXMgNyAxcyA9cyA2IDBzID\ +xzIDlzQQF3IkRzQQF3IkVzIDggPHMgRHMgO3NBAXciRnNBAXciR3MgOyBFcyBHcyA6IERzIEZzIENz\ +QQF3IkhzQQF3IklzIEIgRnMgSHMgQSA7cyBDcyBAIDpzIEJzID8gNXMgQXMgPiA0cyBAcyA9IDNzID\ +9zIDwgMnMgPnMgRXNBAXciSnNBAXciS3NBAXciTHNBAXciTXNBAXciTnNBAXciT3NBAXciUHNBAXdq\ +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\ +NwMAIARBGGpBACkDyI5ANwMAIARBIGpBACkD0I5ANwMAIARBKGpBACkD2I5ANwMAIARBMGpBACkD4I\ +5ANwMAIARBOGpBACkD6I5ANwMAQRQhBQwjC0HwABAWIgRFDQwgAkGwAWpBCGoQVSAEQSBqIAJB2AFq\ +KQMANwMAIARBGGogAkGwAWpBIGopAwA3AwAgBEEQaiACQbABakEYaikDADcDACAEQQhqIAJBsAFqQR\ +BqKQMANwMAIAQgAikDuAE3AwAgAkEMakIANwIAIAJBFGpCADcCACACQRxqQgA3AgAgAkEkakIANwIA\ +IAJBLGpCADcCACACQTRqQgA3AgAgAkE8akIANwIAIAJCADcCBCACQcAANgIAIAJBsAFqIAJBxAAQOR\ +ogBEHgAGogAkGwAWpBPGopAgA3AAAgBEHYAGogAkGwAWpBNGopAgA3AAAgBEHQAGogAkGwAWpBLGop\ +AgA3AAAgBEHIAGogAkGwAWpBJGopAgA3AAAgBEHAAGogAkGwAWpBHGopAgA3AAAgBEE4aiACQbABak\ +EUaikCADcAACAEQTBqIAJBsAFqQQxqKQIANwAAIAQgAikCtAE3ACggBEEAOgBoQQMhBQwiCwJAAkAC\ +QAJAIANBuoDAAEEKEFFFDQAgA0HEgMAAQQoQUUUNASADQc6AwABBChBRRQ0CIANB2IDAAEEKEFFFDQ\ +MgA0HogMAAQQoQUQ0MQegAEBYiBEUNFiACQQxqQgA3AgAgAkEUakIANwIAIAJBHGpCADcCACACQSRq\ +QgA3AgAgAkEsakIANwIAIAJBNGpCADcCACACQTxqQgA3AgAgAkIANwIEIAJBwAA2AgAgAkGwAWogAk\ +HEABA5GiAEQdgAaiACQbABakE8aikCADcAACAEQdAAaiACQbABakE0aikCADcAACAEQcgAaiACQbAB\ +akEsaikCADcAACAEQcAAaiACQbABakEkaikCADcAACAEQThqIAJBsAFqQRxqKQIANwAAIARBMGogAk\ +GwAWpBFGopAgA3AAAgBEEoaiACQbABakEMaikCADcAACAEIAIpArQBNwAgIARCADcDACAEQQA6AGAg\ +BEEAKQPYjUA3AwggBEEQakEAKQPgjUA3AwAgBEEYakEAKALojUA2AgBBCyEFDCULQeACEBYiBEUNDy\ +AEQQBByAEQOiEFIAJBADYCACACQQRyQQBBkAEQOhogAkGQATYCACACQbABaiACQZQBEDkaIAVByAFq\ +IAJBsAFqQQRyQZABEDkaIAVBADoA2AJBBSEFDCQLQdgCEBYiBEUNDyAEQQBByAEQOiEFIAJBADYCAC\ +ACQQRyQQBBiAEQOhogAkGIATYCACACQbABaiACQYwBEDkaIAVByAFqIAJBsAFqQQRyQYgBEDkaIAVB\ +ADoA0AJBBiEFDCMLQbgCEBYiBEUNDyAEQQBByAEQOiEFIAJBADYCACACQQRyQQBB6AAQOhogAkHoAD\ +YCACACQbABaiACQewAEDkaIAVByAFqIAJBsAFqQQRyQegAEDkaIAVBADoAsAJBByEFDCILQZgCEBYi\ +BEUNDyAEQQBByAEQOiEFIAJBADYCACACQQRyQQBByAAQOhogAkHIADYCACACQbABaiACQcwAEDkaIA\ +VByAFqIAJBsAFqQQRyQcgAEDkaIAVBADoAkAJBCCEFDCELAkAgA0HigMAAQQMQUUUNACADQeWAwABB\ +AxBRDQhB4AAQFiIERQ0RIAJBDGpCADcCACACQRRqQgA3AgAgAkEcakIANwIAIAJBJGpCADcCACACQS\ +xqQgA3AgAgAkE0akIANwIAIAJBPGpCADcCACACQgA3AgQgAkHAADYCACACQbABaiACQcQAEDkaIARB\ +0ABqIAJBsAFqQTxqKQIANwAAIARByABqIAJBsAFqQTRqKQIANwAAIARBwABqIAJBsAFqQSxqKQIANw\ +AAIARBOGogAkGwAWpBJGopAgA3AAAgBEEwaiACQbABakEcaikCADcAACAEQShqIAJBsAFqQRRqKQIA\ +NwAAIARBIGogAkGwAWpBDGopAgA3AAAgBCACKQK0ATcAGCAEQv6568XpjpWZEDcDECAEQoHGlLqW8e\ +rmbzcDCCAEQgA3AwAgBEEAOgBYQQohBQwhC0HgABAWIgRFDQ8gAkEMakIANwIAIAJBFGpCADcCACAC\ +QRxqQgA3AgAgAkEkakIANwIAIAJBLGpCADcCACACQTRqQgA3AgAgAkE8akIANwIAIAJCADcCBCACQc\ +AANgIAIAJBsAFqIAJBxAAQORogBEHQAGogAkGwAWpBPGopAgA3AAAgBEHIAGogAkGwAWpBNGopAgA3\ +AAAgBEHAAGogAkGwAWpBLGopAgA3AAAgBEE4aiACQbABakEkaikCADcAACAEQTBqIAJBsAFqQRxqKQ\ +IANwAAIARBKGogAkGwAWpBFGopAgA3AAAgBEEgaiACQbABakEMaikCADcAACAEIAIpArQBNwAYIARC\ +/rnrxemOlZkQNwMQIARCgcaUupbx6uZvNwMIIARCADcDACAEQQA6AFhBCSEFDCALAkACQAJAAkAgAy\ +kAAELTkIWa08WMmTRRDQAgAykAAELTkIWa08XMmjZRDQEgAykAAELTkIWa0+WMnDRRDQIgAykAAELT\ +kIWa06XNmDJRDQMgAykAAELTkIXa1KiMmThRDQcgAykAAELTkIXa1MjMmjZSDQpB2AIQFiIERQ0eIA\ +RBAEHIARA6IQUgAkEANgIAIAJBBHJBAEGIARA6GiACQYgBNgIAIAJBsAFqIAJBjAEQORogBUHIAWog\ +AkGwAWpBBHJBiAEQORogBUEAOgDQAkEWIQUMIwtB4AIQFiIERQ0UIARBAEHIARA6IQUgAkEANgIAIA\ +JBBHJBAEGQARA6GiACQZABNgIAIAJBsAFqIAJBlAEQORogBUHIAWogAkGwAWpBBHJBkAEQORogBUEA\ +OgDYAkENIQUMIgtB2AIQFiIERQ0UIARBAEHIARA6IQUgAkEANgIAIAJBBHJBAEGIARA6GiACQYgBNg\ +IAIAJBsAFqIAJBjAEQORogBUHIAWogAkGwAWpBBHJBiAEQORogBUEAOgDQAkEOIQUMIQtBuAIQFiIE\ +RQ0UIARBAEHIARA6IQUgAkEANgIAIAJBBHJBAEHoABA6GiACQegANgIAIAJBsAFqIAJB7AAQORogBU\ +HIAWogAkGwAWpBBHJB6AAQORogBUEAOgCwAkEPIQUMIAtBmAIQFiIERQ0UIARBAEHIARA6IQUgAkEA\ +NgIAIAJBBHJBAEHIABA6GiACQcgANgIAIAJBsAFqIAJBzAAQORogBUHIAWogAkGwAWpBBHJByAAQOR\ +ogBUEAOgCQAkEQIQUMHwtB8AAQFiIERQ0UIAJBDGpCADcCACACQRRqQgA3AgAgAkEcakIANwIAIAJB\ +JGpCADcCACACQSxqQgA3AgAgAkE0akIANwIAIAJBPGpCADcCACACQgA3AgQgAkHAADYCACACQbABai\ +ACQcQAEDkaIARB4ABqIAJBsAFqQTxqKQIANwAAIARB2ABqIAJBsAFqQTRqKQIANwAAIARB0ABqIAJB\ +sAFqQSxqKQIANwAAIARByABqIAJBsAFqQSRqKQIANwAAIARBwABqIAJBsAFqQRxqKQIANwAAIARBOG\ +ogAkGwAWpBFGopAgA3AAAgBEEwaiACQbABakEMaikCADcAACAEIAIpArQBNwAoIARCADcDACAEQQA6\ +AGggBEEAKQOQjkA3AwggBEEQakEAKQOYjkA3AwAgBEEYakEAKQOgjkA3AwAgBEEgakEAKQOojkA3Aw\ +BBESEFDB4LQfAAEBYiBEUNFCACQQxqQgA3AgAgAkEUakIANwIAIAJBHGpCADcCACACQSRqQgA3AgAg\ +AkEsakIANwIAIAJBNGpCADcCACACQTxqQgA3AgAgAkIANwIEIAJBwAA2AgAgAkGwAWogAkHEABA5Gi\ +AEQeAAaiACQbABakE8aikCADcAACAEQdgAaiACQbABakE0aikCADcAACAEQdAAaiACQbABakEsaikC\ +ADcAACAEQcgAaiACQbABakEkaikCADcAACAEQcAAaiACQbABakEcaikCADcAACAEQThqIAJBsAFqQR\ +RqKQIANwAAIARBMGogAkGwAWpBDGopAgA3AAAgBCACKQK0ATcAKCAEQgA3AwAgBEEAOgBoIARBACkD\ +8I1ANwMIIARBEGpBACkD+I1ANwMAIARBGGpBACkDgI5ANwMAIARBIGpBACkDiI5ANwMAQRIhBQwdC0\ +HYARAWIgRFDRQgAkEANgIAIAJBBHJBAEGAARA6GiACQYABNgIAIAJBsAFqIAJBhAEQORogBEHQAGog\ +AkGwAWpBBHJBgAEQORogBEHIAGpCADcDACAEQgA3A0AgBEEAOgDQASAEQQApA/COQDcDACAEQQhqQQ\ +ApA/iOQDcDACAEQRBqQQApA4CPQDcDACAEQRhqQQApA4iPQDcDACAEQSBqQQApA5CPQDcDACAEQShq\ +QQApA5iPQDcDACAEQTBqQQApA6CPQDcDACAEQThqQQApA6iPQDcDAEETIQUMHAtB+AIQFiIERQ0VIA\ +RBAEHIARA6IQUgAkEANgIAIAJBBHJBAEGoARA6GiACQagBNgIAIAJBsAFqIAJBrAEQORogBUHIAWog\ +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\ +IBtqIhdqIhUgBnNBFHciBmoiCXM2AgggACABIAogEGogFyAdc0EZdyIQaiIXaiAXIA1zQRB3IgEgEm\ +oiDSAQc0EUdyIQaiIXIAFzQRh3IgEgDWoiDSALIBggB2ogBCAIc0EZdyIIaiIHaiAHIA5zQRB3Igcg\ +D2oiDyAIc0EUdyIIaiIOczYCBCAAIA4gB3NBGHciByAPaiIPIBdzNgIMIAAgCSAFc0EYdyIFIBVqIg\ +4gE3M2AgAgACACIBFzQRl3IAVzNgIUIAAgDSAQc0EZdyAHczYCECAAIA4gBnNBGXcgDHM2AhwgACAP\ +IAhzQRl3IAFzNgIYC5EiAg5/An4jAEGgD2siASQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQA\ +JAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEUNACAAKAIAIgJBf0YNASAAIAJBAWo2AgAgAEEE\ +aiECAkACQAJAAkACQCAAKAIEDhgAAQIDBB4dHBsaGRgXFhUUExIREA8ODQwACyACKAIEIQNB0AEQFi\ +ICRQ0GIAFBCGpBOGogA0E4aikDADcDACABQQhqQTBqIANBMGopAwA3AwAgAUEIakEoaiADQShqKQMA\ +NwMAIAFBCGpBIGogA0EgaikDADcDACABQQhqQRhqIANBGGopAwA3AwAgAUEIakEQaiADQRBqKQMANw\ +MAIAFBCGpBCGogA0EIaikDADcDACABIAMpAwA3AwggAykDQCEPIAFBCGpByABqIANByABqEEMgASAP\ +NwNIIAIgAUEIakHQARA5GkEAIQMMHwsgAigCBCEDQdABEBYiAkUNBiABQQhqQThqIANBOGopAwA3Aw\ +AgAUEIakEwaiADQTBqKQMANwMAIAFBCGpBKGogA0EoaikDADcDACABQQhqQSBqIANBIGopAwA3AwAg\ +AUEIakEYaiADQRhqKQMANwMAIAFBCGpBEGogA0EQaikDADcDACABQQhqQQhqIANBCGopAwA3AwAgAS\ +ADKQMANwMIIAMpA0AhDyABQQhqQcgAaiADQcgAahBDIAEgDzcDSCACIAFBCGpB0AEQORpBASEDDB4L\ +IAIoAgQhA0HQARAWIgJFDQYgAUEIakE4aiADQThqKQMANwMAIAFBCGpBMGogA0EwaikDADcDACABQQ\ +hqQShqIANBKGopAwA3AwAgAUEIakEgaiADQSBqKQMANwMAIAFBCGpBGGogA0EYaikDADcDACABQQhq\ +QRBqIANBEGopAwA3AwAgAUEIakEIaiADQQhqKQMANwMAIAEgAykDADcDCCADKQNAIQ8gAUEIakHIAG\ +ogA0HIAGoQQyABIA83A0ggAiABQQhqQdABEDkaQQIhAwwdCyACKAIEIQNB8AAQFiICRQ0GIAFBCGpB\ +IGogA0EgaikDADcDACABQQhqQRhqIANBGGopAwA3AwAgAUEIakEQaiADQRBqKQMANwMAIAEgAykDCD\ +cDECADKQMAIQ8gAUEIakEoaiADQShqEDcgASAPNwMIIAIgAUEIakHwABA5GkEDIQMMHAsgAigCBCED\ +QfgOEBYiAkUNBiABQQhqQYgBaiADQYgBaikDADcDACABQQhqQYABaiADQYABaikDADcDACABQQhqQf\ +gAaiADQfgAaikDADcDACABQQhqQRBqIANBEGopAwA3AwAgAUEIakEYaiADQRhqKQMANwMAIAFBCGpB\ +IGogA0EgaikDADcDACABQQhqQTBqIANBMGopAwA3AwAgAUEIakE4aiADQThqKQMANwMAIAFBCGpBwA\ +BqIANBwABqKQMANwMAIAFBCGpByABqIANByABqKQMANwMAIAFBCGpB0ABqIANB0ABqKQMANwMAIAFB\ +CGpB2ABqIANB2ABqKQMANwMAIAFBCGpB4ABqIANB4ABqKQMANwMAIAEgAykDcDcDeCABIAMpAwg3Ax\ +AgASADKQMoNwMwIAMpAwAhDyADLQBqIQQgAy0AaSEFIAMtAGghBgJAIAMoApABQQV0IgcNAEEAIQcM\ +GwsgAUGAD2pBGGoiCCADQZQBaiIJQRhqKQAANwMAIAFBgA9qQRBqIgogCUEQaikAADcDACABQYAPak\ +EIaiILIAlBCGopAAA3AwAgASAJKQAANwOADyADQdQBaiEJQQAgB0FgakEFdmshDCABQbwBaiEDQQIh\ +BwNAIANBYGoiDSABKQOADzcAACANQRhqIAgpAwA3AAAgDUEQaiAKKQMANwAAIA1BCGogCykDADcAAA\ +JAAkAgDCAHaiIOQQJGDQAgCCAJQWBqIg1BGGopAAA3AwAgCiANQRBqKQAANwMAIAsgDUEIaikAADcD\ +ACABIA0pAAA3A4APIAdBOEcNARBqAAsgB0F/aiEHDBwLIAMgASkDgA83AAAgA0EYaiAIKQMANwAAIA\ +NBEGogCikDADcAACADQQhqIAspAwA3AAAgDkEBRg0bIAggCUEYaikAADcDACAKIAlBEGopAAA3AwAg\ +CyAJQQhqKQAANwMAIAEgCSkAADcDgA8gA0HAAGohAyAHQQJqIQcgCUHAAGohCQwACwsQbgALEG8AC0\ +HQAUEIQQAoAvjUQCIBQQQgARsRBQAAC0HQAUEIQQAoAvjUQCIBQQQgARsRBQAAC0HQAUEIQQAoAvjU\ +QCIBQQQgARsRBQAAC0HwAEEIQQAoAvjUQCIBQQQgARsRBQAAC0H4DkEIQQAoAvjUQCIBQQQgARsRBQ\ +AACyACKAIEIQMCQEHoABAWIgJFDQAgAUEIakEQaiADQRBqKQMANwMAIAFBCGpBGGogA0EYaikDADcD\ +ACABIAMpAwg3AxAgAykDACEPIAFBCGpBIGogA0EgahA3IAEgDzcDCCACIAFBCGpB6AAQORpBFyEDDB\ +QLQegAQQhBACgC+NRAIgFBBCABGxEFAAALIAIoAgQhAwJAQdgCEBYiAkUNACABQQhqIANByAEQORog\ +AUEIakHIAWogA0HIAWoQRCACIAFBCGpB2AIQORpBFiEDDBMLQdgCQQhBACgC+NRAIgFBBCABGxEFAA\ +ALIAIoAgQhAwJAQfgCEBYiAkUNACABQQhqIANByAEQORogAUEIakHIAWogA0HIAWoQRSACIAFBCGpB\ ++AIQORpBFSEDDBILQfgCQQhBACgC+NRAIgFBBCABGxEFAAALIAIoAgQhAwJAQdgBEBYiAkUNACABQQ\ +hqQThqIANBOGopAwA3AwAgAUEIakEwaiADQTBqKQMANwMAIAFBCGpBKGogA0EoaikDADcDACABQQhq\ +QSBqIANBIGopAwA3AwAgAUEIakEYaiADQRhqKQMANwMAIAFBCGpBEGogA0EQaikDADcDACABQQhqQQ\ +hqIANBCGopAwA3AwAgASADKQMANwMIIANByABqKQMAIQ8gAykDQCEQIAFBCGpB0ABqIANB0ABqEEMg\ +AUEIakHIAGogDzcDACABIBA3A0ggAiABQQhqQdgBEDkaQRQhAwwRC0HYAUEIQQAoAvjUQCIBQQQgAR\ +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\ +IAMgADYCACAAQRhqIAM2AgAMAwsgAUEAQRkgAkEBdmtBH3EgAkEfRht0IQMDQCAFIANBHXZBBHFqQR\ +BqIgYoAgAiAkUNAiADQQF0IQMgAiEFIAIoAgRBeHEgAUcNAAsLIAIoAggiASAANgIMIAIgADYCCCAA\ +QRhqQQA2AgAgACACNgIMIAAgATYCCA8LIAYgADYCACAAQRhqIAU2AgALIAAgADYCDCAAIAA2AggPCy\ +ABQQN2IgJBA3RBjNXAAGohAQJAAkBBACgChNVAIgNBASACdCICcUUNACABKAIIIQIMAQtBACADIAJy\ +NgKE1UAgASECCyABIAA2AgggAiAANgIMIAAgATYCDCAAIAI2AggL8wsBA38jAEHQAGsiAiQAAkACQC\ +ABRQ0AIAEoAgANASABQX82AgAgAUEEaiEDAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC\ +QAJAAkACQAJAAkACQAJAAkAgASgCBA4YAAECAwQFBgcICQoLDA0ODxAREhMUFRYXAAsgAygCBCEDIA\ +JBCGoiBEHAABBPIAMgBEHIABA5QcgBakEAOgAADBcLIAMoAgQhAyACQQhqIgRBIBBPIAMgBEHIABA5\ +QcgBakEAOgAADBYLIAMoAgQhAyACQQhqIgRBMBBPIAMgBEHIABA5QcgBakEAOgAADBULIAMoAgQhAy\ +ACQQhqEFUgA0EgaiACQShqKQMANwMAIANBGGogAkEgaikDADcDACADQRBqIAJBGGopAwA3AwAgA0EI\ +aiACQRBqKQMANwMAIAMgAikDCDcDACADQegAakEAOgAADBQLIAMoAgQiA0IANwMAIAMgAykDcDcDCC\ +ADQSBqIANBiAFqKQMANwMAIANBGGogA0GAAWopAwA3AwAgA0EQaiADQfgAaikDADcDACADQShqQQBB\ +wgAQOhogAygCkAFFDRMgA0EANgKQAQwTCyADKAIEQQBByAEQOkHYAmpBADoAAAwSCyADKAIEQQBByA\ +EQOkHQAmpBADoAAAwRCyADKAIEQQBByAEQOkGwAmpBADoAAAwQCyADKAIEQQBByAEQOkGQAmpBADoA\ +AAwPCyADKAIEIgNCgcaUupbx6uZvNwMIIANCADcDACADQdgAakEAOgAAIANBEGpC/rnrxemOlZkQNw\ +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\ +NgJgIANBqAFqIANB4ABqQcQAEDkaIANB0ABqIANBqAFqQTRqKQIANwMAIANByABqIANBqAFqQSxqKQ\ +IANwMAIANBwABqIANBqAFqQSRqKQIANwMAIANBOGogA0GoAWpBHGopAgA3AwAgA0EwaiADQagBakEU\ +aikCADcDACADQShqIANBqAFqQQxqKQIANwMAIAMgAykCrAE3AyAgAyAGNwNYIANBCGogA0EgahASCy\ +ACIAMoAgg2AAAgAiADKQIMNwAEIAIgAykCFDcADCABQcAAakEAOgAAIANB8AFqJAAL8AMCA38CfiMA\ +QfABayIDJAAgAUHAAGotAAAhBCAAKQMAIQYgA0EQaiAAQRBqKQIANwMAIAMgACkCCDcDCCABIARqIg\ +BBgAE6AAAgBkIJhiEGIAStQgOGIQcgAyADQQhqNgIcAkAgBEE/cyIFRQ0AIABBAWpBACAFEDoaCyAH\ +IAaEIQYCQAJAIARBOHFBOEYNACABQThqIAY3AAAgA0EcaiABEBwMAQsgA0EcaiABEBwgA0HgAGpBDG\ +pCADcCACADQeAAakEUakIANwIAIANB4ABqQRxqQgA3AgAgA0HgAGpBJGpCADcCACADQeAAakEsakIA\ +NwIAIANB4ABqQTRqQgA3AgAgA0GcAWpCADcCACADQgA3AmQgA0HAADYCYCADQagBaiADQeAAakHEAB\ +A5GiADQdAAaiADQagBakE0aikCADcDACADQcgAaiADQagBakEsaikCADcDACADQcAAaiADQagBakEk\ +aikCADcDACADQThqIANBqAFqQRxqKQIANwMAIANBMGogA0GoAWpBFGopAgA3AwAgA0EoaiADQagBak\ +EMaikCADcDACADIAMpAqwBNwMgIAMgBjcDWCADQRxqIANBIGoQHAsgAUHAAGpBADoAACACIAMpAwg3\ +AAAgAiADKQMQNwAIIANB8AFqJAAL2QMCA38CfiMAQeABayIDJAAgACkDACEGIAEgAUHAAGotAAAiBG\ +oiBUGAAToAACADQQhqIABBEGopAgA3AwAgAyAAKQIINwMAIAZCCYYhBiAErUIDhiEHAkAgBEE/cyIA\ +RQ0AIAVBAWpBACAAEDoaCyAHIAaEIQYCQAJAIARBOHFBOEYNACABQThqIAY3AAAgAyABEB8MAQsgAy\ +ABEB8gA0HQAGpBDGpCADcCACADQdAAakEUakIANwIAIANB0ABqQRxqQgA3AgAgA0HQAGpBJGpCADcC\ +ACADQdAAakEsakIANwIAIANB0ABqQTRqQgA3AgAgA0GMAWpCADcCACADQgA3AlQgA0HAADYCUCADQZ\ +gBaiADQdAAakHEABA5GiADQcAAaiADQZgBakE0aikCADcDACADQThqIANBmAFqQSxqKQIANwMAIANB\ +MGogA0GYAWpBJGopAgA3AwAgA0EoaiADQZgBakEcaikCADcDACADQSBqIANBmAFqQRRqKQIANwMAIA\ +NBGGogA0GYAWpBDGopAgA3AwAgAyADKQKcATcDECADIAY3A0ggAyADQRBqEB8LIAIgAykDADcAACAC\ +IAMpAwg3AAggAUHAAGpBADoAACADQeABaiQAC9QDAgR/An4jAEHQAWsiAyQAIAEgAUHAAGotAAAiBG\ +oiBUEBOgAAIAApAwBCCYYhByAErUIDhiEIAkAgBEE/cyIGRQ0AIAVBAWpBACAGEDoaCyAHIAiEIQcC\ +QAJAIARBOHFBOEYNACABQThqIAc3AAAgAEEIaiABQQEQFwwBCyAAQQhqIgQgAUEBEBcgA0HAAGpBDG\ +pCADcCACADQcAAakEUakIANwIAIANBwABqQRxqQgA3AgAgA0HAAGpBJGpCADcCACADQcAAakEsakIA\ +NwIAIANBwABqQTRqQgA3AgAgA0H8AGpCADcCACADQgA3AkQgA0HAADYCQCADQYgBaiADQcAAakHEAB\ +A5GiADQTBqIANBiAFqQTRqKQIANwMAIANBKGogA0GIAWpBLGopAgA3AwAgA0EgaiADQYgBakEkaikC\ +ADcDACADQRhqIANBiAFqQRxqKQIANwMAIANBEGogA0GIAWpBFGopAgA3AwAgA0EIaiADQYgBakEMai\ +kCADcDACADIAMpAowBNwMAIAMgBzcDOCAEIANBARAXCyABQcAAakEAOgAAIAIgACkDCDcAACACIABB\ +EGopAwA3AAggAiAAQRhqKQMANwAQIANB0AFqJAALlwMBBX8jAEGQBGsiAyQAIABByAFqIQQCQAJAAk\ +ACQAJAIABB8AJqLQAAIgVFDQBBqAEgBWsiBiACSw0BIAEgBCAFaiAGEDkgBmohASACIAZrIQILIAIg\ +AkGoAW4iBUGoAWwiB0kNASACIAdrIQYCQCAFQagBbCICRQ0AIAEhBQNAIANB4AJqIABBqAEQORogAB\ +AkIAUgA0HgAmpBqAEQOUGoAWohBSACQdh+aiICDQALCwJAIAYNAEEAIQYMBAsgA0EANgKwASADQbAB\ +akEEckEAQagBEDoaIANBqAE2ArABIANB4AJqIANBsAFqQawBEDkaIANBCGogA0HgAmpBBHJBqAEQOR\ +ogA0HgAmogAEGoARA5GiAAECQgA0EIaiADQeACakGoARA5GiAGQakBTw0CIAEgB2ogA0EIaiAGEDka\ +IAQgA0EIakGoARA5GgwDCyABIAQgBWogAhA5GiAFIAJqIQYMAgtBoY3AAEEjQcSNwAAQUwALIAZBqA\ +FBxIzAABBJAAsgAEHwAmogBjoAACADQZAEaiQAC5cDAQV/IwBBsANrIgMkACAAQcgBaiEEAkACQAJA\ +AkACQCAAQdACai0AACIFRQ0AQYgBIAVrIgYgAksNASABIAQgBWogBhA5IAZqIQEgAiAGayECCyACIA\ +JBiAFuIgVBiAFsIgdJDQEgAiAHayEGAkAgBUGIAWwiAkUNACABIQUDQCADQaACaiAAQYgBEDkaIAAQ\ +JCAFIANBoAJqQYgBEDlBiAFqIQUgAkH4fmoiAg0ACwsCQCAGDQBBACEGDAQLIANBADYCkAEgA0GQAW\ +pBBHJBAEGIARA6GiADQYgBNgKQASADQaACaiADQZABakGMARA5GiADQQhqIANBoAJqQQRyQYgBEDka\ +IANBoAJqIABBiAEQORogABAkIANBCGogA0GgAmpBiAEQORogBkGJAU8NAiABIAdqIANBCGogBhA5Gi\ +AEIANBCGpBiAEQORoMAwsgASAEIAVqIAIQORogBSACaiEGDAILQaGNwABBI0HEjcAAEFMACyAGQYgB\ +QcSMwAAQSQALIABB0AJqIAY6AAAgA0GwA2okAAuCAwEDfwJAAkACQAJAIAAtAGgiA0UNAAJAIANBwQ\ +BPDQAgACADakEoaiABIAJBwAAgA2siAyADIAJLGyIDEDkaIAAgAC0AaCADaiIEOgBoIAEgA2ohAQJA\ +IAIgA2siAg0AQQAhAgwDCyAAQQhqIABBKGoiBEHAACAAKQMAIAAtAGogAEHpAGoiAy0AAEVyEBkgBE\ +EAQcEAEDoaIAMgAy0AAEEBajoAAAwBCyADQcAAQZCEwAAQSgALAkAgAkHAAEsNACACQcAAIAJBwABJ\ +GyECQQAhAwwCCyAAQQhqIQUgAEHpAGoiAy0AACEEA0AgBSABQcAAIAApAwAgAC0AaiAEQf8BcUVyEB\ +kgAyADLQAAQQFqIgQ6AAAgAUHAAGohASACQUBqIgJBwABLDQALIAAtAGghBAsgBEH/AXEiA0HBAE8N\ +ASACQcAAIANrIgQgBCACSxshAgsgACADakEoaiABIAIQORogACAALQBoIAJqOgBoIAAPCyADQcAAQZ\ +CEwAAQSgAL0AICBX8BfiMAQTBrIgIkAEEnIQMCQAJAIABCkM4AWg0AIAAhBwwBC0EnIQMDQCACQQlq\ +IANqIgRBfGogAEKQzgCAIgdC8LF/fiAAfKciBUH//wNxQeQAbiIGQQF0QamIwABqLwAAOwAAIARBfm\ +ogBkGcf2wgBWpB//8DcUEBdEGpiMAAai8AADsAACADQXxqIQMgAEL/wdcvViEEIAchACAEDQALCwJA\ +IAenIgRB4wBMDQAgAkEJaiADQX5qIgNqIAenIgVB//8DcUHkAG4iBEGcf2wgBWpB//8DcUEBdEGpiM\ +AAai8AADsAAAsCQAJAIARBCkgNACACQQlqIANBfmoiA2ogBEEBdEGpiMAAai8AADsAAAwBCyACQQlq\ +IANBf2oiA2ogBEEwajoAAAsgAUGgkcAAQQAgAkEJaiADakEnIANrECohAyACQTBqJAAgAwuhAgEBfy\ +MAQTBrIgYkACAGIAI2AiggBiACNgIkIAYgATYCICAGQRBqIAZBIGoQFSAGKAIUIQICQAJAAkAgBigC\ +EEEBRg0AIAYgAjYCCCAGIAZBEGpBCGooAgA2AgwgBkEIaiADEDYgBiAGKQMINwMQIAZBIGogBkEQai\ +AEQQBHIAUQDiAGQSBqQQhqKAIAIQQgBigCJCECAkAgBigCICIFQQFHDQAgAiAEEAAhAgsCQCAGKAIQ\ +QQRHDQAgBigCFCIDKAKQAUUNACADQQA2ApABCyAGKAIUEB5BACEDQQAhASAFDQEMAgsCQCADQSRJDQ\ +AgAxABCwtBASEBIAIhAwsgACABNgIMIAAgAzYCCCAAIAQ2AgQgACACNgIAIAZBMGokAAvjAQEHfyMA\ +QRBrIgIkACABEAIhAyABEAMhBCABEAQhBQJAAkAgA0GBgARJDQBBACEGIAMhBwNAIAIgBSAEIAZqIA\ +dBgIAEIAdBgIAESRsQBSIIED4CQCAIQSRJDQAgCBABCyAAIAIoAgAiCCACKAIIEA8gBkGAgARqIQYC\ +QCACKAIERQ0AIAgQHgsgB0GAgHxqIQcgAyAGSw0ADAILCyACIAEQPiAAIAIoAgAiBiACKAIIEA8gAi\ +gCBEUNACAGEB4LAkAgBUEkSQ0AIAUQAQsCQCABQSRJDQAgARABCyACQRBqJAAL5QEBAn8jAEGQAWsi\ +AiQAQQAhAyACQQA2AgADQCACIANqQQRqIAEgA2ooAAA2AgAgA0EEaiIDQcAARw0ACyACQcAANgIAIA\ +JByABqIAJBxAAQORogAEE4aiACQYQBaikCADcAACAAQTBqIAJB/ABqKQIANwAAIABBKGogAkH0AGop\ +AgA3AAAgAEEgaiACQewAaikCADcAACAAQRhqIAJB5ABqKQIANwAAIABBEGogAkHcAGopAgA3AAAgAE\ +EIaiACQdQAaikCADcAACAAIAIpAkw3AAAgACABLQBAOgBAIAJBkAFqJAALzwECA38BfiMAQSBrIgQk\ +AAJAAkAgAUUNACABKAIADQFBACEFIAFBADYCACABKQIEIQcgARAeIAQgBzcDCCAEQRBqIARBCGogAk\ +EARyADEA4gBEEYaigCACECIAQoAhQhAQJAIAQoAhAiA0EBRw0AIAEgAhAAIgUhAQsCQCAEKAIIQQRH\ +DQAgBCgCDCIGKAKQAUUNACAGQQA2ApABCyAEKAIMEB4gACADNgIMIAAgBTYCCCAAIAI2AgQgACABNg\ +IAIARBIGokAA8LEG4ACxBvAAu7AQEEfwJAIAJFDQAgAkEDcSEDQQAhBAJAIAJBf2pBA0kNACACQXxx\ +IQVBACEEA0AgACAEaiICIAEgBGoiBi0AADoAACACQQFqIAZBAWotAAA6AAAgAkECaiAGQQJqLQAAOg\ +AAIAJBA2ogBkEDai0AADoAACAFIARBBGoiBEcNAAsLIANFDQAgASAEaiECIAAgBGohBANAIAQgAi0A\ +ADoAACACQQFqIQIgBEEBaiEEIANBf2oiAw0ACwsgAAu4AQEDfwJAIAJFDQAgAkEHcSEDQQAhBAJAIA\ +JBf2pBB0kNACACQXhxIQVBACEEA0AgACAEaiICIAE6AAAgAkEHaiABOgAAIAJBBmogAToAACACQQVq\ +IAE6AAAgAkEEaiABOgAAIAJBA2ogAToAACACQQJqIAE6AAAgAkEBaiABOgAAIAUgBEEIaiIERw0ACw\ +sgA0UNACAAIARqIQIDQCACIAE6AAAgAkEBaiECIANBf2oiAw0ACwsgAAutAQEBfyMAQRBrIgYkAAJA\ +AkAgAUUNACAGIAEgAyAEIAUgAigCEBELACAGKAIAIQMCQAJAIAYoAgQiBCAGKAIIIgFLDQAgAyECDA\ +ELAkAgAUECdCIFDQBBBCECIARBAnRFDQEgAxAeDAELIAMgBRAmIgJFDQILIAAgATYCBCAAIAI2AgAg\ +BkEQaiQADwtBsI/AAEEwEHAACyAFQQRBACgC+NRAIgZBBCAGGxEFAAALrgEBAn8jAEEgayIDJAAgAy\ +ACNgIYIAMgAjYCFCADIAE2AhAgAyADQRBqEBVBASEEIAMoAgQhAQJAAkACQCADKAIAQQFHDQAMAQsg\ +A0EIaigCACEEQQwQFiICRQ0BIAIgBDYCCCACIAE2AgRBACEBIAJBADYCAEEAIQQLIAAgBDYCCCAAIA\ +E2AgQgACACNgIAIANBIGokAA8LQQxBBEEAKAL41EAiA0EEIAMbEQUAAAujAQEDfyMAQRBrIgQkAAJA\ +AkAgAUUNACABKAIAIgVBf0YNASABIAVBAWo2AgBBACEFIAQgAUEEaiACQQBHIAMQDCAEQQhqKAIAIQ\ +MgBCgCBCECAkAgBCgCACIGQQFHDQAgAiADEAAiBSECCyABIAEoAgBBf2o2AgAgACAGNgIMIAAgBTYC\ +CCAAIAM2AgQgACACNgIAIARBEGokAA8LEG4ACxBvAAudAQEEfwJAAkACQAJAIAEQBiICQQBIDQAgAg\ +0BQQEhAwwCCxBpAAsgAhAWIgNFDQELIAAgAjYCBCAAIAM2AgAQByIEEAgiBRAJIQICQCAFQSRJDQAg\ +BRABCyACIAEgAxAKAkAgAkEkSQ0AIAIQAQsCQCAEQSRJDQAgBBABCyAAIAEQBjYCCA8LIAJBAUEAKA\ +L41EAiAUEEIAEbEQUAAAuaAQEDfyMAQRBrIgQkAAJAAkAgAUUNACABKAIADQEgAUF/NgIAIAQgAUEE\ +aiACQQBHIAMQDiAEQQhqKAIAIQMgBCgCBCECAkACQCAEKAIAIgVBAUYNAEEAIQYMAQsgAiADEAAiBi\ +ECCyABQQA2AgAgACAFNgIMIAAgBjYCCCAAIAM2AgQgACACNgIAIARBEGokAA8LEG4ACxBvAAt+AQF/\ +IwBBwABrIgQkACAEQSs2AgwgBCAANgIIIAQgAjYCFCAEIAE2AhAgBEEsakECNgIAIARBPGpBATYCAC\ +AEQgI3AhwgBEGYiMAANgIYIARBAjYCNCAEIARBMGo2AiggBCAEQRBqNgI4IAQgBEEIajYCMCAEQRhq\ +IAMQVgALfgECfyMAQTBrIgIkACACQRRqQQI2AgAgAkG4h8AANgIQIAJBAjYCDCACQZiHwAA2AgggAU\ +EcaigCACEDIAEoAhghASACQSxqQQI2AgAgAkICNwIcIAJBmIjAADYCGCACIAJBCGo2AiggASADIAJB\ +GGoQKyEBIAJBMGokACABC34BAn8jAEEwayICJAAgAkEUakECNgIAIAJBuIfAADYCECACQQI2AgwgAk\ +GYh8AANgIIIAFBHGooAgAhAyABKAIYIQEgAkEsakECNgIAIAJCAjcCHCACQZiIwAA2AhggAiACQQhq\ +NgIoIAEgAyACQRhqECshASACQTBqJAAgAQt0AQJ/IwBBkAJrIgIkAEEAIQMgAkEANgIAA0AgAiADak\ +EEaiABIANqKAAANgIAIANBBGoiA0GAAUcNAAsgAkGAATYCACACQYgBaiACQYQBEDkaIAAgAkGIAWpB\ +BHJBgAEQOSABLQCAAToAgAEgAkGQAmokAAt0AQJ/IwBBoAJrIgIkAEEAIQMgAkEANgIAA0AgAiADak\ +EEaiABIANqKAAANgIAIANBBGoiA0GIAUcNAAsgAkGIATYCACACQZABaiACQYwBEDkaIAAgAkGQAWpB\ +BHJBiAEQOSABLQCIAToAiAEgAkGgAmokAAt0AQJ/IwBB4AJrIgIkAEEAIQMgAkEANgIAA0AgAiADak\ +EEaiABIANqKAAANgIAIANBBGoiA0GoAUcNAAsgAkGoATYCACACQbABaiACQawBEDkaIAAgAkGwAWpB\ +BHJBqAEQOSABLQCoAToAqAEgAkHgAmokAAtyAQJ/IwBBoAFrIgIkAEEAIQMgAkEANgIAA0AgAiADak\ +EEaiABIANqKAAANgIAIANBBGoiA0HIAEcNAAsgAkHIADYCACACQdAAaiACQcwAEDkaIAAgAkHQAGpB\ +BHJByAAQOSABLQBIOgBIIAJBoAFqJAALcgECfyMAQeABayICJABBACEDIAJBADYCAANAIAIgA2pBBG\ +ogASADaigAADYCACADQQRqIgNB6ABHDQALIAJB6AA2AgAgAkHwAGogAkHsABA5GiAAIAJB8ABqQQRy\ +QegAEDkgAS0AaDoAaCACQeABaiQAC3QBAn8jAEGwAmsiAiQAQQAhAyACQQA2AgADQCACIANqQQRqIA\ +EgA2ooAAA2AgAgA0EEaiIDQZABRw0ACyACQZABNgIAIAJBmAFqIAJBlAEQORogACACQZgBakEEckGQ\ +ARA5IAEtAJABOgCQASACQbACaiQAC2wBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRxqQQI2Ag\ +AgA0EsakEDNgIAIANCAjcCDCADQciKwAA2AgggA0EDNgIkIAMgA0EgajYCGCADIANBBGo2AiggAyAD\ +NgIgIANBCGogAhBWAAtsAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBAz\ +YCACADQgI3AgwgA0GoisAANgIIIANBAzYCJCADIANBIGo2AhggAyADQQRqNgIoIAMgAzYCICADQQhq\ +IAIQVgALbAEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBHGpBAjYCACADQSxqQQM2AgAgA0ICNw\ +IMIANB/IrAADYCCCADQQM2AiQgAyADQSBqNgIYIAMgA0EEajYCKCADIAM2AiAgA0EIaiACEFYAC2wB\ +AX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRxqQQI2AgAgA0EsakEDNgIAIANCAzcCDCADQcyLwA\ +A2AgggA0EDNgIkIAMgA0EgajYCGCADIAM2AiggAyADQQRqNgIgIANBCGogAhBWAAtsAQF/IwBBMGsi\ +AyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBAzYCACADQgI3AgwgA0GEiMAANgIIIANBAz\ +YCJCADIANBIGo2AhggAyADNgIoIAMgA0EEajYCICADQQhqIAIQVgALdQECf0EBIQBBAEEAKAKA1UAi\ +AUEBajYCgNVAAkACQEEAKALI2EBBAUcNAEEAKALM2EBBAWohAAwBC0EAQQE2AsjYQAtBACAANgLM2E\ +ACQCABQQBIDQAgAEECSw0AQQAoAvzUQEF/TA0AIABBAUsNABBzAAsAC5oBACMAQTBrGiAAQgA3A0Ag\ +AEE4akL5wvibkaOz8NsANwMAIABBMGpC6/qG2r+19sEfNwMAIABBKGpCn9j52cKR2oKbfzcDACAAQt\ +GFmu/6z5SH0QA3AyAgAELx7fT4paf9p6V/NwMYIABCq/DT9K/uvLc8NwMQIABCu86qptjQ67O7fzcD\ +CCAAIAGtQoiS95X/zPmE6gCFNwMAC1UBAn8CQAJAIABFDQAgACgCAA0BIABBADYCACAAKAIIIQEgAC\ +gCBCECIAAQHgJAIAJBBEcNACABKAKQAUUNACABQQA2ApABCyABEB4PCxBuAAsQbwALSgEDf0EAIQMC\ +QCACRQ0AAkADQCAALQAAIgQgAS0AACIFRw0BIABBAWohACABQQFqIQEgAkF/aiICRQ0CDAALCyAEIA\ +VrIQMLIAMLVAEBfwJAAkACQCABQYCAxABGDQBBASEEIAAoAhggASAAQRxqKAIAKAIQEQYADQELIAIN\ +AUEAIQQLIAQPCyAAKAIYIAIgAyAAQRxqKAIAKAIMEQgAC0cBAX8jAEEgayIDJAAgA0EUakEANgIAIA\ +NBoJHAADYCECADQgE3AgQgAyABNgIcIAMgADYCGCADIANBGGo2AgAgAyACEFYACzkAAkACQCABRQ0A\ +IAEoAgANASABQX82AgAgAUEEaiACEDYgAUEANgIAIABCADcDAA8LEG4ACxBvAAtSACAAQsfMo9jW0O\ +uzu383AwggAEIANwMAIABBIGpCq7OP/JGjs/DbADcDACAAQRhqQv+kuYjFkdqCm383AwAgAEEQakLy\ +5rvjo6f9p6V/NwMACzQBAX8jAEEQayICJAAgAiABNgIMIAIgADYCCCACQcCHwAA2AgQgAkGgkcAANg\ +IAIAIQZwALIwACQCAAQXxLDQACQCAADQBBBA8LIAAQFiIARQ0AIAAPCwALJQACQCAADQBBsI/AAEEw\ +EHAACyAAIAIgAyAEIAUgASgCEBEMAAsjAAJAIAANAEGwj8AAQTAQcAALIAAgAiADIAQgASgCEBEKAA\ +sjAAJAIAANAEGwj8AAQTAQcAALIAAgAiADIAQgASgCEBEJAAsjAAJAIAANAEGwj8AAQTAQcAALIAAg\ +AiADIAQgASgCEBEKAAsjAAJAIAANAEGwj8AAQTAQcAALIAAgAiADIAQgASgCEBEJAAsjAAJAIAANAE\ +Gwj8AAQTAQcAALIAAgAiADIAQgASgCEBEJAAsjAAJAIAANAEGwj8AAQTAQcAALIAAgAiADIAQgASgC\ +EBEVAAsjAAJAIAANAEGwj8AAQTAQcAALIAAgAiADIAQgASgCEBEWAAshAAJAIAANAEGwj8AAQTAQcA\ +ALIAAgAiADIAEoAhARBwALHgAgAEEUaigCABoCQCAAQQRqKAIADgIAAAALEE4ACxwAAkACQCABQXxL\ +DQAgACACECYiAQ0BCwALIAELHwACQCAADQBBsI/AAEEwEHAACyAAIAIgASgCEBEGAAsaAAJAIAANAE\ +GgkcAAQStB6JHAABBTAAsgAAsUACAAKAIAIAEgACgCBCgCDBEGAAsQACABIAAoAgAgACgCBBAlCw4A\ +IAAoAggQZCAAEHEACw4AAkAgAUUNACAAEB4LCxEAQYKCwABBEUGUgsAAEFMACxEAQaSCwABBL0Gkg8\ +AAEFMACw0AIAAoAgAaA38MAAsLCwAgACMAaiQAIwALCwAgADUCACABEDQLDABByNLAAEEbEHAACw0A\ +QePSwABBzwAQcAALCQAgACABEAsACwkAIAAgARBhAAsMAEKl8JbP5f/ppVYLAwAACwIACwIACwv+1I\ +CAAAEAQYCAwAAL9FT0BRAAUAAAAJUAAAAJAAAAQkxBS0UyQkJMQUtFMkItMjU2QkxBS0UyQi0zODRC\ +TEFLRTJTQkxBS0UzS0VDQ0FLLTIyNEtFQ0NBSy0yNTZLRUNDQUstMzg0S0VDQ0FLLTUxMk1ENE1ENV\ +JJUEVNRC0xNjBTSEEtMVNIQS0yMjRTSEEtMjU2U0hBLTM4NFNIQS01MTJUSUdFUnVuc3VwcG9ydGVk\ +IGFsZ29yaXRobW5vbi1kZWZhdWx0IGxlbmd0aCBzcGVjaWZpZWQgZm9yIG5vbi1leHRlbmRhYmxlIG\ +FsZ29yaXRobWxpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnNjYXBhY2l0eSBvdmVyZmxvdwDmABAA\ +HAAAADICAAAFAAAAQXJyYXlWZWM6IGNhcGFjaXR5IGV4Y2VlZGVkIGluIGV4dGVuZC9mcm9tX2l0ZX\ +J+Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjODIzL2FycmF5dmVj\ +LTAuNy4yL3NyYy9hcnJheXZlYy5ycwBTARAAUAAAAAEEAAAFAAAAVAYQAE0AAAABBgAACQAAAH4vLm\ +NhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvYmxha2UzLTEuMy4w\ +L3NyYy9saWIucnMAAADEARAASQAAALkBAAAJAAAAxAEQAEkAAABfAgAACgAAAMQBEABJAAAAjQIAAA\ +kAAADEARAASQAAAN0CAAAKAAAAxAEQAEkAAADWAgAACQAAAMQBEABJAAAAAQMAABkAAADEARAASQAA\ +AAMDAAAJAAAAxAEQAEkAAAADAwAAOAAAAMQBEABJAAAA+AMAADIAAADEARAASQAAAKoEAAAWAAAAxA\ +EQAEkAAAC8BAAAFgAAAMQBEABJAAAA7QQAABIAAADEARAASQAAAPcEAAASAAAAxAEQAEkAAABpBQAA\ +IQAAABEAAAAEAAAABAAAABIAAAARAAAAIAAAAAEAAAATAAAAEQAAAAQAAAAEAAAAEgAAAH4vLmNhcm\ +dvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvYXJyYXl2ZWMtMC43LjIv\ +c3JjL2FycmF5dmVjX2ltcGwucnMAAAAgAxAAVQAAACcAAAAgAAAAQ2FwYWNpdHlFcnJvcgAAAIgDEA\ +ANAAAAaW5zdWZmaWNpZW50IGNhcGFjaXR5AAAAoAMQABUAAAARAAAAAAAAAAEAAAAUAAAAaW5kZXgg\ +b3V0IG9mIGJvdW5kczogdGhlIGxlbiBpcyAgYnV0IHRoZSBpbmRleCBpcyAAANADEAAgAAAA8AMQAB\ +IAAAA6IAAAoAgQAAAAAAAUBBAAAgAAACkwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2\ +MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NT\ +Q2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3\ +NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OXJhbmdlIHN0YX\ +J0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAAAADxBBAAEgAAAAMFEAAi\ +AAAAcmFuZ2UgZW5kIGluZGV4IDgFEAAQAAAAAwUQACIAAABzbGljZSBpbmRleCBzdGFydHMgYXQgIG\ +J1dCBlbmRzIGF0IABYBRAAFgAAAG4FEAANAAAAc291cmNlIHNsaWNlIGxlbmd0aCAoKSBkb2VzIG5v\ +dCBtYXRjaCBkZXN0aW5hdGlvbiBzbGljZSBsZW5ndGggKIwFEAAVAAAAoQUQACsAAAAoBBAAAQAAAF\ +QGEABNAAAAEAwAAA0AAAB+Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRi\ +OWVjODIzL2Jsb2NrLWJ1ZmZlci0wLjEwLjAvc3JjL2xpYi5yc/QFEABQAAAA/AAAACcAAAAvcnVzdG\ +MvZjFlZGQwNDI5NTgyZGQyOWNjY2FjYWY1MGZkMTM0YjA1NTkzYmQ5Yy9saWJyYXJ5L2NvcmUvc3Jj\ +L3NsaWNlL21vZC5yc2Fzc2VydGlvbiBmYWlsZWQ6IG1pZCA8PSBzZWxmLmxlbigpVAYQAE0AAAAfBg\ +AACQAAAAAAAAABI0VniavN7/7cuph2VDIQ8OHSwwAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur\ +2YMfGc3gW9ieBcEH1Xw2F91wMDlZDvcxC8D/ERVYaKeP+WSkT/q+CMm882fmCWo7p8qEha5nuyv4lP\ +5y82488TYdXzr1T6XRguatf1IOUR9sPiuMaAWba71B+6vZgx95IX4TGc3gW9ieBcFdnbvLB9V8Niop\ +mmIX3XAwWgFZkTlZDvfY7C8VMQvA/2cmM2cRFVhoh0q0jqeP+WQNLgzbpE/6vh1ItUdjbG9zdXJlIG\ +ludm9rZWQgcmVjdXJzaXZlbHkgb3IgZGVzdHJveWVkIGFscmVhZHkBAAAAAAAAAIKAAAAAAAAAioAA\ +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\ +AAAQAAAAFAAAABQAAAAcAAAAIAAAADAAAABAAAAAHAAAACAAAAAwAAAAQAAAACAAAABAAAAAGAAAAA\ +Cnt4CAAARuYW1lAZy3gIAAdgBFanNfc3lzOjpUeXBlRXJyb3I6Om5ldzo6X193YmdfbmV3X2E0YjYx\ +YTBmNTQ4MjRjZmQ6OmgzNzE2N2VmMDcyNjZmMmQ1ATt3YXNtX2JpbmRnZW46Ol9fd2JpbmRnZW5fb2\ +JqZWN0X2Ryb3BfcmVmOjpoNzkzYmExMTZkNzVlMjJhMAJVanNfc3lzOjpVaW50OEFycmF5OjpieXRl\ +X2xlbmd0aDo6X193YmdfYnl0ZUxlbmd0aF8zZTI1MGI0MWE4OTE1NzU3OjpoMTNkMDIzOGI2ODlhOT\ +YwYwNVanNfc3lzOjpVaW50OEFycmF5OjpieXRlX29mZnNldDo6X193YmdfYnl0ZU9mZnNldF80MjA0\ +ZWNiMjRhNmU1ZGY5OjpoOGY0YmM4MWQ5MGE4MjMzZQRManNfc3lzOjpVaW50OEFycmF5OjpidWZmZX\ +I6Ol9fd2JnX2J1ZmZlcl9mYWNmMDM5OGEyODFjODViOjpoMGZiNjA5YTUxNjQ3NmU5MgV5anNfc3lz\ +OjpVaW50OEFycmF5OjpuZXdfd2l0aF9ieXRlX29mZnNldF9hbmRfbGVuZ3RoOjpfX3diZ19uZXd3aX\ +RoYnl0ZW9mZnNldGFuZGxlbmd0aF80YjliOGM0ZTNmNWFkYmZmOjpoYzI4MjE3ODU0OTVlMmE2MgZM\ +anNfc3lzOjpVaW50OEFycmF5OjpsZW5ndGg6Ol9fd2JnX2xlbmd0aF8xZWI4ZmM2MDhhMGQ0Y2RiOj\ +poNzNkYzkyYWJjODFkM2ZhNwcyd2FzbV9iaW5kZ2VuOjpfX3diaW5kZ2VuX21lbW9yeTo6aDRjOWRj\ +YzlmYzQzMmZlMmMIVWpzX3N5czo6V2ViQXNzZW1ibHk6Ok1lbW9yeTo6YnVmZmVyOjpfX3diZ19idW\ +ZmZXJfMzk3ZWFhNGQ3MmVlOTRkZDo6aDM5ZDIzMjAwNzgzMjBiYzAJRmpzX3N5czo6VWludDhBcnJh\ +eTo6bmV3OjpfX3diZ19uZXdfYTdjZTQ0N2YxNWZmNDk2Zjo6aDZjZjg5NDdiODY4ZmRlZWYKRmpzX3\ +N5czo6VWludDhBcnJheTo6c2V0OjpfX3diZ19zZXRfOTY5YWQwYTYwZTUxZDMyMDo6aDUxN2Q1OGEy\ +M2QyYjc4MTkLMXdhc21fYmluZGdlbjo6X193YmluZGdlbl90aHJvdzo6aDY5MTE5ZDhjZWJhYTQ0M2\ +YMQGRlbm9fc3RkX3dhc21fY3J5cHRvOjpkaWdlc3Q6OkNvbnRleHQ6OmRpZ2VzdDo6aDgyOGE3MDEx\ +NDE1ZjA1MjANLHNoYTI6OnNoYTUxMjo6Y29tcHJlc3M1MTI6Omg2YjEwYzMzYWQwNWMzNWY2DkpkZW\ +5vX3N0ZF93YXNtX2NyeXB0bzo6ZGlnZXN0OjpDb250ZXh0OjpkaWdlc3RfYW5kX3Jlc2V0OjpoZjlk\ +NDIwYzUyNDhhOTJmNg9AZGVub19zdGRfd2FzbV9jcnlwdG86OmRpZ2VzdDo6Q29udGV4dDo6dXBkYX\ +RlOjpoMWFhNzQ2YmE5ZTJlMTdhNRAsc2hhMjo6c2hhMjU2Ojpjb21wcmVzczI1Njo6aGU4NzgwMjlj\ +Y2ZkZDNkZjQRM2JsYWtlMjo6Qmxha2UyYlZhckNvcmU6OmNvbXByZXNzOjpoOWY4N2E3NmE4ZmJlZT\ +IyYhIpcmlwZW1kOjpjMTYwOjpjb21wcmVzczo6aDE4OWM0NzlmYmQ2N2FmYWQTM2JsYWtlMjo6Qmxh\ +a2Uyc1ZhckNvcmU6OmNvbXByZXNzOjpoOWRkYTljMmEyYjYxNzY4ORQrc2hhMTo6Y29tcHJlc3M6Om\ +NvbXByZXNzOjpoNTBlNWQ4M2U5MWQ2NTRhYRU7ZGVub19zdGRfd2FzbV9jcnlwdG86OkRpZ2VzdENv\ +bnRleHQ6Om5ldzo6aGY0NjA2NTg2NmYzZDY2NjAWOmRsbWFsbG9jOjpkbG1hbGxvYzo6RGxtYWxsb2\ +M8QT46Om1hbGxvYzo6aDJhMjcyMDdlZTlhZjdmZTkXLHRpZ2VyOjpjb21wcmVzczo6Y29tcHJlc3M6\ +Omg2ZDI1OGZiZjc1NDhiZmUxGC1ibGFrZTM6Ok91dHB1dFJlYWRlcjo6ZmlsbDo6aGE5YzI3MGM5Yj\ +dmZjQxZWUZNmJsYWtlMzo6cG9ydGFibGU6OmNvbXByZXNzX2luX3BsYWNlOjpoYzRhZDc0NzdjYmY1\ +MmYwZRoTZGlnZXN0Y29udGV4dF9jbG9uZRtlPGRpZ2VzdDo6Y29yZV9hcGk6OndyYXBwZXI6OkNvcm\ +VXcmFwcGVyPFQ+IGFzIGRpZ2VzdDo6VXBkYXRlPjo6dXBkYXRlOjp7e2Nsb3N1cmV9fTo6aGU3N2Fm\ +YjMxMmY4OGY0MzccaDxtZDU6Ok1kNUNvcmUgYXMgZGlnZXN0Ojpjb3JlX2FwaTo6Rml4ZWRPdXRwdX\ +RDb3JlPjo6ZmluYWxpemVfZml4ZWRfY29yZTo6e3tjbG9zdXJlfX06Omg3OThjNzA3YzdjZGEzNTky\ +HTBibGFrZTM6OmNvbXByZXNzX3N1YnRyZWVfd2lkZTo6aDk5NWY5MmEwOTlkOTg2MzQeOGRsbWFsbG\ +9jOjpkbG1hbGxvYzo6RGxtYWxsb2M8QT46OmZyZWU6OmhjYjc5NDdhOWE3ZTI4MmNhHyBtZDQ6OmNv\ +bXByZXNzOjpoOTBkNTQwMzZjYTYzM2UzYyBBZGxtYWxsb2M6OmRsbWFsbG9jOjpEbG1hbGxvYzxBPj\ +o6ZGlzcG9zZV9jaHVuazo6aDJmOTBiZGRmYWI5ZmRhZjkhE2RpZ2VzdGNvbnRleHRfcmVzZXQicjxz\ +aGEyOjpjb3JlX2FwaTo6U2hhNTEyVmFyQ29yZSBhcyBkaWdlc3Q6OmNvcmVfYXBpOjpWYXJpYWJsZU\ +91dHB1dENvcmU+OjpmaW5hbGl6ZV92YXJpYWJsZV9jb3JlOjpoOWVhNGEyMTU4ZTA3MDMzYiMvYmxh\ +a2UzOjpIYXNoZXI6OmZpbmFsaXplX3hvZjo6aGI4ODNlNmM1YzRlNWQ0MGIkIGtlY2Nhazo6ZjE2MD\ +A6OmhhODI1NzkwY2YyNWE1ZjVlJSxjb3JlOjpmbXQ6OkZvcm1hdHRlcjo6cGFkOjpoNDlkMmNmY2Nh\ +ZmJiZGU0ZCYOX19ydXN0X3JlYWxsb2MncjxzaGEyOjpjb3JlX2FwaTo6U2hhMjU2VmFyQ29yZSBhcy\ +BkaWdlc3Q6OmNvcmVfYXBpOjpWYXJpYWJsZU91dHB1dENvcmU+OjpmaW5hbGl6ZV92YXJpYWJsZV9j\ +b3JlOjpoMDNhOTMwYjhjNzRjOWVkNShdPHNoYTE6OlNoYTFDb3JlIGFzIGRpZ2VzdDo6Y29yZV9hcG\ +k6OkZpeGVkT3V0cHV0Q29yZT46OmZpbmFsaXplX2ZpeGVkX2NvcmU6OmhiNWQ5ZWM3MDI0OGUxODIw\ +KTFibGFrZTM6Okhhc2hlcjo6bWVyZ2VfY3Zfc3RhY2s6Omg0N2I2ZTI0ZTY3ZTIxNjViKjVjb3JlOj\ +pmbXQ6OkZvcm1hdHRlcjo6cGFkX2ludGVncmFsOjpoYzY2OTQ3YjFkZWQ1NzhhYSsjY29yZTo6Zm10\ +Ojp3cml0ZTo6aGJiYWYzOWYwOWJmNDllZmIsNGJsYWtlMzo6Y29tcHJlc3NfcGFyZW50c19wYXJhbG\ +xlbDo6aGEwNzMyZmFjYjEyNzY5YmItZDxyaXBlbWQ6OlJpcGVtZDE2MENvcmUgYXMgZGlnZXN0Ojpj\ +b3JlX2FwaTo6Rml4ZWRPdXRwdXRDb3JlPjo6ZmluYWxpemVfZml4ZWRfY29yZTo6aGRlOGZjMmFmNz\ +ExZjE4NWYuWzxtZDU6Ok1kNUNvcmUgYXMgZGlnZXN0Ojpjb3JlX2FwaTo6Rml4ZWRPdXRwdXRDb3Jl\ +Pjo6ZmluYWxpemVfZml4ZWRfY29yZTo6aDBiMzAwM2U0ODQyOWFjM2QvWzxtZDQ6Ok1kNENvcmUgYX\ +MgZGlnZXN0Ojpjb3JlX2FwaTo6Rml4ZWRPdXRwdXRDb3JlPjo6ZmluYWxpemVfZml4ZWRfY29yZTo6\ +aDNlMmIzMDA3MzBhYThhZjAwXzx0aWdlcjo6VGlnZXJDb3JlIGFzIGRpZ2VzdDo6Y29yZV9hcGk6Ok\ +ZpeGVkT3V0cHV0Q29yZT46OmZpbmFsaXplX2ZpeGVkX2NvcmU6Omg0NTczYTQwZWJjNTRjYTUzMWU8\ +ZGlnZXN0Ojpjb3JlX2FwaTo6eG9mX3JlYWRlcjo6WG9mUmVhZGVyQ29yZVdyYXBwZXI8VD4gYXMgZG\ +lnZXN0OjpYb2ZSZWFkZXI+OjpyZWFkOjpoZTUwZWUyZjliMmYyYmQ0YTJlPGRpZ2VzdDo6Y29yZV9h\ +cGk6OnhvZl9yZWFkZXI6OlhvZlJlYWRlckNvcmVXcmFwcGVyPFQ+IGFzIGRpZ2VzdDo6WG9mUmVhZG\ +VyPjo6cmVhZDo6aDZkN2E3MzhlNTE0MWViZTAzLWJsYWtlMzo6Q2h1bmtTdGF0ZTo6dXBkYXRlOjpo\ +YzU4OGE4Y2Q3YzI2Y2VmNTQvY29yZTo6Zm10OjpudW06OmltcDo6Zm10X3U2NDo6aDY2MjhhM2U3Mj\ +I3ZTg1NTM1BmRpZ2VzdDY+ZGVub19zdGRfd2FzbV9jcnlwdG86OkRpZ2VzdENvbnRleHQ6OnVwZGF0\ +ZTo6aDEzYWE5MGI2YzVlZGM0ODY3WzxibG9ja19idWZmZXI6OkJsb2NrQnVmZmVyPEJsb2NrU2l6ZS\ +xLaW5kPiBhcyBjb3JlOjpjbG9uZTo6Q2xvbmU+OjpjbG9uZTo6aDU2ZDNhMWQ5YzZmOTE3YmU4G2Rp\ +Z2VzdGNvbnRleHRfZGlnZXN0QW5kRHJvcDkGbWVtY3B5OgZtZW1zZXQ7P3dhc21fYmluZGdlbjo6Y2\ +9udmVydDo6Y2xvc3VyZXM6Omludm9rZTNfbXV0OjpoZDk2N2Y0MzRjNzJmNGU0MjwRZGlnZXN0Y29u\ +dGV4dF9uZXc9FGRpZ2VzdGNvbnRleHRfZGlnZXN0Pi1qc19zeXM6OlVpbnQ4QXJyYXk6OnRvX3ZlYz\ +o6aDYzOWJmOTBlOTEwZTgxZDQ/HGRpZ2VzdGNvbnRleHRfZGlnZXN0QW5kUmVzZXRALmNvcmU6OnJl\ +c3VsdDo6dW53cmFwX2ZhaWxlZDo6aGQ1ODRlZmI3Yjg0YmYzMjZBUDxhcnJheXZlYzo6ZXJyb3JzOj\ +pDYXBhY2l0eUVycm9yPFQ+IGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6Omg4Y2EzNjljOTgxMGMy\ +MjI5QlA8YXJyYXl2ZWM6OmVycm9yczo6Q2FwYWNpdHlFcnJvcjxUPiBhcyBjb3JlOjpmbXQ6OkRlYn\ +VnPjo6Zm10OjpoYWJkMmI2NDNkZDBlY2QyY0NbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8Qmxv\ +Y2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoMDhkN2U1MzhlNjI5MD\ +QzOERbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNs\ +b25lOjpDbG9uZT46OmNsb25lOjpoODc3ODZlMzY2MmMyNmQ2NEVbPGJsb2NrX2J1ZmZlcjo6QmxvY2\ +tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoNWEx\ +YTExYjkwNmU5M2QwM0ZbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IG\ +FzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoNDUyMGIyMWMwYzI5ODk4Y0dbPGJsb2NrX2J1\ +ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46Om\ +Nsb25lOjpoYzQ4ZjUyNTk0NDZjMmVlY0hbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tT\ +aXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoMWM0ZTBjNjhlY2Q2NmI1NE\ +k/Y29yZTo6c2xpY2U6OmluZGV4OjpzbGljZV9lbmRfaW5kZXhfbGVuX2ZhaWw6OmhjM2UwZGNmNmQ4\ +NjZlMWJlSkFjb3JlOjpzbGljZTo6aW5kZXg6OnNsaWNlX3N0YXJ0X2luZGV4X2xlbl9mYWlsOjpoNm\ +MxMDlhYzg1ODdmMjkxMUs9Y29yZTo6c2xpY2U6OmluZGV4OjpzbGljZV9pbmRleF9vcmRlcl9mYWls\ +OjpoZDI3ZGMzODVhN2VjMTNjMUxOY29yZTo6c2xpY2U6OjxpbXBsIFtUXT46OmNvcHlfZnJvbV9zbG\ +ljZTo6bGVuX21pc21hdGNoX2ZhaWw6OmhlZGQxMGM1YmNjMDI2MTBjTTZjb3JlOjpwYW5pY2tpbmc6\ +OnBhbmljX2JvdW5kc19jaGVjazo6aGNlMDUwMmY2MzcxMWZhZDhON3N0ZDo6cGFuaWNraW5nOjpydX\ +N0X3BhbmljX3dpdGhfaG9vazo6aDYwNmQ3YzdmN2E0MjNiOThPOmJsYWtlMjo6Qmxha2UyYlZhckNv\ +cmU6Om5ld193aXRoX3BhcmFtczo6aDU4N2Y5YTcyNzlmMzcxNmRQGF9fd2JnX2RpZ2VzdGNvbnRleH\ +RfZnJlZVEGbWVtY21wUkNjb3JlOjpmbXQ6OkZvcm1hdHRlcjo6cGFkX2ludGVncmFsOjp3cml0ZV9w\ +cmVmaXg6OmhhYTBhZGYwMGNiNjdkZWQ3Uyljb3JlOjpwYW5pY2tpbmc6OnBhbmljOjpoZWMxZmMwNT\ +diZDBiYWYwYlQUZGlnZXN0Y29udGV4dF91cGRhdGVVOmJsYWtlMjo6Qmxha2Uyc1ZhckNvcmU6Om5l\ +d193aXRoX3BhcmFtczo6aDVmZjQ1OWYyMzFhYjhkNjhWLWNvcmU6OnBhbmlja2luZzo6cGFuaWNfZm\ +10OjpoNjMxNGI1YzkxYWJlNzM0OVcRX193YmluZGdlbl9tYWxsb2NYP3dhc21fYmluZGdlbjo6Y29u\ +dmVydDo6Y2xvc3VyZXM6Omludm9rZTRfbXV0OjpoMDhiMDAxNWQ0NTZmMjBjN1k/d2FzbV9iaW5kZ2\ +VuOjpjb252ZXJ0OjpjbG9zdXJlczo6aW52b2tlM19tdXQ6OmgzYWI0ZThkMTgzNDk0OWU4Wj93YXNt\ +X2JpbmRnZW46OmNvbnZlcnQ6OmNsb3N1cmVzOjppbnZva2UzX211dDo6aDBlZmUyNDJjN2Q3ZmU2MG\ +VbP3dhc21fYmluZGdlbjo6Y29udmVydDo6Y2xvc3VyZXM6Omludm9rZTNfbXV0OjpoYzRhYTBlM2Vm\ +MWQ2ZDdhMVw/d2FzbV9iaW5kZ2VuOjpjb252ZXJ0OjpjbG9zdXJlczo6aW52b2tlM19tdXQ6Omg3OT\ +lhYmFiYmRjZDEyZmEzXT93YXNtX2JpbmRnZW46OmNvbnZlcnQ6OmNsb3N1cmVzOjppbnZva2UzX211\ +dDo6aGE5NDFjMTBjNDA4ODhjNTBeP3dhc21fYmluZGdlbjo6Y29udmVydDo6Y2xvc3VyZXM6Omludm\ +9rZTNfbXV0OjpoMTE4OWQ1YjVlY2U4MjQxYV8/d2FzbV9iaW5kZ2VuOjpjb252ZXJ0OjpjbG9zdXJl\ +czo6aW52b2tlM19tdXQ6OmhiZGM0ZjBhM2ViZGQ5MDg2YD93YXNtX2JpbmRnZW46OmNvbnZlcnQ6Om\ +Nsb3N1cmVzOjppbnZva2UyX211dDo6aGE2NDc2YjFhNTZlZDFhYjZhQ3N0ZDo6cGFuaWNraW5nOjpi\ +ZWdpbl9wYW5pY19oYW5kbGVyOjp7e2Nsb3N1cmV9fTo6aDliOTg1YTI5M2FhYzRjZTFiEl9fd2Jpbm\ +RnZW5fcmVhbGxvY2M/d2FzbV9iaW5kZ2VuOjpjb252ZXJ0OjpjbG9zdXJlczo6aW52b2tlMV9tdXQ6\ +OmgwNzE4MzRjY2I3MGRmNzI1ZDJjb3JlOjpvcHRpb246Ok9wdGlvbjxUPjo6dW53cmFwOjpoNWE3ZG\ +Y5MWI1ZDYwOTBjYmUwPCZUIGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6OmgwZDljZDYyNmRhYmFh\ +MWVmZjI8JlQgYXMgY29yZTo6Zm10OjpEaXNwbGF5Pjo6Zm10OjpoZDMwM2JjMTZhZWU1NTkxMGcRcn\ +VzdF9iZWdpbl91bndpbmRoD19fd2JpbmRnZW5fZnJlZWk0YWxsb2M6OnJhd192ZWM6OmNhcGFjaXR5\ +X292ZXJmbG93OjpoNGI0OTAxNDgzMGNhZmU2M2ozYXJyYXl2ZWM6OmFycmF5dmVjOjpleHRlbmRfcG\ +FuaWM6OmgzN2Q1OThkNzVkMGQyZTZmazljb3JlOjpvcHM6OmZ1bmN0aW9uOjpGbk9uY2U6OmNhbGxf\ +b25jZTo6aDJhYjg2NzY3ZWMxN2M1MGRsH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXJtTm\ +NvcmU6OmZtdDo6bnVtOjppbXA6OjxpbXBsIGNvcmU6OmZtdDo6RGlzcGxheSBmb3IgdTMyPjo6Zm10\ +OjpoMDQ2ZWNjNWVhYWIzNGNkNW4xd2FzbV9iaW5kZ2VuOjpfX3J0Ojp0aHJvd19udWxsOjpoM2Q3Yj\ +Q3NDgzNGRkZjJkOW8yd2FzbV9iaW5kZ2VuOjpfX3J0Ojpib3Jyb3dfZmFpbDo6aGU1Njk3Y2E4ZTIx\ +ZWQ1YTVwKndhc21fYmluZGdlbjo6dGhyb3dfc3RyOjpoNWViNDYxODBmZTVlMWQxYXFJc3RkOjpzeX\ +NfY29tbW9uOjpiYWNrdHJhY2U6Ol9fcnVzdF9lbmRfc2hvcnRfYmFja3RyYWNlOjpoYTAzYWJlZjAy\ +YThiNzBmZHIxPFQgYXMgY29yZTo6YW55OjpBbnk+Ojp0eXBlX2lkOjpoYTBjNDQ5MjIxNmQ0ZDJlN3\ +MKcnVzdF9wYW5pY3Q3c3RkOjphbGxvYzo6ZGVmYXVsdF9hbGxvY19lcnJvcl9ob29rOjpoZjljMzkz\ +YmEzY2QyODdlMXVvY29yZTo6cHRyOjpkcm9wX2luX3BsYWNlPCZjb3JlOjppdGVyOjphZGFwdGVycz\ +o6Y29waWVkOjpDb3BpZWQ8Y29yZTo6c2xpY2U6Oml0ZXI6Okl0ZXI8dTg+Pj46Omg2M2MyZTE0OTdi\ +NTJmM2Q3AO+AgIAACXByb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdG\ +MdMS41Ny4wIChmMWVkZDA0MjkgMjAyMS0xMS0yOSkGd2FscnVzBjAuMTkuMAx3YXNtLWJpbmRnZW4G\ +MC4yLjgx\ +"); + const wasmModule3 = new WebAssembly.Module(wasmBytes); + return new WebAssembly.Instance(wasmModule3, imports); +} +function base64decode(b64) { + const binString = atob(b64); + const size = binString.length; + const bytes7 = new Uint8Array(size); + for(let i70 = 0; i70 < size; i70++){ + bytes7[i70] = binString.charCodeAt(i70); } - flush() { - if (this.err !== null) throw this.err; - if (this.usedBufferBytes === 0) return; - try { - const p31 = this.buf.subarray(0, this.usedBufferBytes); - let nwritten = 0; - while(nwritten < p31.length){ - nwritten += this.#writer.writeSync(p31.subarray(nwritten)); - } - } catch (e75) { - if (e75 instanceof Error) { - this.err = e75; - } - throw e75; + return bytes7; +} +const digestAlgorithms = [ + "BLAKE2B-256", + "BLAKE2B-384", + "BLAKE2B", + "BLAKE2S", + "BLAKE3", + "KECCAK-224", + "KECCAK-256", + "KECCAK-384", + "KECCAK-512", + "SHA-384", + "SHA3-224", + "SHA3-256", + "SHA3-384", + "SHA3-512", + "SHAKE128", + "SHAKE256", + "TIGER", + "RIPEMD-160", + "SHA-224", + "SHA-256", + "SHA-512", + "MD4", + "MD5", + "SHA-1", +]; +var DiffType1; +(function(DiffType5) { + DiffType5["removed"] = "removed"; + DiffType5["common"] = "common"; + DiffType5["added"] = "added"; +})(DiffType1 || (DiffType1 = {})); +const REMOVED = 1; +const COMMON = 2; +const ADDED = 3; +function createCommon(A4, B1, reverse) { + const common1 = []; + if (A4.length === 0 || B1.length === 0) return []; + for(let i71 = 0; i71 < Math.min(A4.length, B1.length); i71 += 1){ + if (A4[reverse ? A4.length - i71 - 1 : i71] === B1[reverse ? B1.length - i71 - 1 : i71]) { + common1.push(A4[reverse ? A4.length - i71 - 1 : i71]); + } else { + return common1; } - this.buf = new Uint8Array(this.buf.length); - this.usedBufferBytes = 0; } - writeSync(data22) { - if (this.err !== null) throw this.err; - if (data22.length === 0) return 0; - let totalBytesWritten = 0; - let numBytesWritten = 0; - while(data22.byteLength > this.available()){ - if (this.buffered() === 0) { - try { - numBytesWritten = this.#writer.writeSync(data22); - } catch (e76) { - if (e76 instanceof Error) { - this.err = e76; - } - throw e76; - } + return common1; +} +function diff(A1, B1) { + const prefixCommon = createCommon(A1, B1); + const suffixCommon = createCommon(A1.slice(prefixCommon.length), B1.slice(prefixCommon.length), true).reverse(); + A1 = suffixCommon.length ? A1.slice(prefixCommon.length, -suffixCommon.length) : A1.slice(prefixCommon.length); + B1 = suffixCommon.length ? B1.slice(prefixCommon.length, -suffixCommon.length) : B1.slice(prefixCommon.length); + const swapped1 = B1.length > A1.length; + [A1, B1] = swapped1 ? [ + B1, + A1 + ] : [ + A1, + B1 + ]; + const M1 = A1.length; + const N1 = B1.length; + if (!M1 && !N1 && !suffixCommon.length && !prefixCommon.length) return []; + if (!N1) { + return [ + ...prefixCommon.map((c14)=>({ + type: DiffType1.common, + value: c14 + })), + ...A1.map((a14)=>({ + type: swapped1 ? DiffType1.added : DiffType1.removed, + value: a14 + })), + ...suffixCommon.map((c15)=>({ + type: DiffType1.common, + value: c15 + })), + ]; + } + const offset5 = N1; + const delta = M1 - N1; + const size = M1 + N1 + 1; + const fp1 = Array.from({ + length: size + }, ()=>({ + y: -1, + id: -1 + })); + const routes = new Uint32Array((M1 * N1 + size + 1) * 2); + const diffTypesPtrOffset = routes.length / 2; + let ptr = 0; + let p33 = -1; + function backTrace(A5, B2, current, swapped) { + const M2 = A5.length; + const N2 = B2.length; + const result = []; + let a15 = M2 - 1; + let b16 = N2 - 1; + let j12 = routes[current.id]; + let type9 = routes[current.id + diffTypesPtrOffset]; + while(true){ + if (!j12 && !type9) break; + const prev = j12; + if (type9 === 1) { + result.unshift({ + type: swapped ? DiffType1.removed : DiffType1.added, + value: B2[b16] + }); + b16 -= 1; + } else if (type9 === 3) { + result.unshift({ + type: swapped ? DiffType1.added : DiffType1.removed, + value: A5[a15] + }); + a15 -= 1; } else { - numBytesWritten = copy2(data22, this.buf, this.usedBufferBytes); - this.usedBufferBytes += numBytesWritten; - this.flush(); + result.unshift({ + type: DiffType1.common, + value: A5[a15] + }); + a15 -= 1; + b16 -= 1; } - totalBytesWritten += numBytesWritten; - data22 = data22.subarray(numBytesWritten); + j12 = routes[prev]; + type9 = routes[prev + diffTypesPtrOffset]; } - numBytesWritten = copy2(data22, this.buf, this.usedBufferBytes); - this.usedBufferBytes += numBytesWritten; - totalBytesWritten += numBytesWritten; - return totalBytesWritten; - } -} -const DEFAULT_FORMATTER = "{levelName} {msg}"; -class BaseHandler { - level; - levelName; - formatter; - constructor(levelName, options10 = {}){ - this.level = getLevelByName(levelName); - this.levelName = levelName; - this.formatter = options10.formatter || DEFAULT_FORMATTER; + return result; } - handle(logRecord) { - if (this.level > logRecord.level) return; - const msg7 = this.format(logRecord); - return this.log(msg7); + function createFP(slide, down, k2, M3) { + if (slide && slide.y === -1 && down && down.y === -1) { + return { + y: 0, + id: 0 + }; + } + if (down && down.y === -1 || k2 === M3 || (slide && slide.y) > (down && down.y) + 1) { + const prev = slide.id; + ptr++; + routes[ptr] = prev; + routes[ptr + diffTypesPtrOffset] = ADDED; + return { + y: slide.y, + id: ptr + }; + } else { + const prev = down.id; + ptr++; + routes[ptr] = prev; + routes[ptr + diffTypesPtrOffset] = REMOVED; + return { + y: down.y + 1, + id: ptr + }; + } } - format(logRecord) { - if (this.formatter instanceof Function) { - return this.formatter(logRecord); + function snake(k3, slide, down, _offset, A6, B3) { + const M4 = A6.length; + const N3 = B3.length; + if (k3 < -N3 || M4 < k3) return { + y: -1, + id: -1 + }; + const fp = createFP(slide, down, k3, M4); + while(fp.y + k3 < M4 && fp.y < N3 && A6[fp.y + k3] === B3[fp.y]){ + const prev = fp.id; + ptr++; + fp.id = ptr; + fp.y += 1; + routes[ptr] = prev; + routes[ptr + diffTypesPtrOffset] = COMMON; } - return this.formatter.replace(/{([^\s}]+)}/g, (match13, p1)=>{ - const value64 = logRecord[p1]; - if (value64 == null) { - return match13; - } - return String(value64); - }); + return fp; } - log(_msg) {} - async setup() {} - async destroy() {} -} -class ConsoleHandler extends BaseHandler { - format(logRecord) { - let msg8 = super.format(logRecord); - switch(logRecord.level){ - case LogLevels.INFO: - msg8 = blue(msg8); - break; - case LogLevels.WARNING: - msg8 = yellow(msg8); - break; - case LogLevels.ERROR: - msg8 = red(msg8); - break; - case LogLevels.CRITICAL: - msg8 = bold(red(msg8)); - break; - default: - break; + while(fp1[delta + offset5].y < N1){ + p33 = p33 + 1; + for(let k4 = -p33; k4 < delta; ++k4){ + fp1[k4 + offset5] = snake(k4, fp1[k4 - 1 + offset5], fp1[k4 + 1 + offset5], offset5, A1, B1); } - return msg8; - } - log(msg9) { - console.log(msg9); + for(let k1 = delta + p33; k1 > delta; --k1){ + fp1[k1 + offset5] = snake(k1, fp1[k1 - 1 + offset5], fp1[k1 + 1 + offset5], offset5, A1, B1); + } + fp1[delta + offset5] = snake(delta, fp1[delta - 1 + offset5], fp1[delta + 1 + offset5], offset5, A1, B1); } + return [ + ...prefixCommon.map((c16)=>({ + type: DiffType1.common, + value: c16 + })), + ...backTrace(A1, B1, fp1[delta + offset5], swapped1), + ...suffixCommon.map((c17)=>({ + type: DiffType1.common, + value: c17 + })), + ]; } -class WriterHandler extends BaseHandler { - _writer; - #encoder = new TextEncoder(); -} -class FileHandler extends WriterHandler { - _file; - _buf; - _filename; - _mode; - _openOptions; - _encoder = new TextEncoder(); - #unloadCallback = (()=>{ - this.destroy(); - }).bind(this); - constructor(levelName, options11){ - super(levelName, options11); - this._filename = options11.filename; - this._mode = options11.mode ? options11.mode : "a"; - this._openOptions = { - createNew: this._mode === "x", - create: this._mode !== "x", - append: this._mode === "a", - truncate: this._mode !== "a", - write: true - }; - } - async setup() { - this._file = await Deno.open(this._filename, this._openOptions); - this._writer = this._file; - this._buf = new BufWriterSync2(this._file); - addEventListener("unload", this.#unloadCallback); +function diffstr(A7, B4) { + function unescape(string) { + return string.replaceAll("\b", "\\b").replaceAll("\f", "\\f").replaceAll("\t", "\\t").replaceAll("\v", "\\v").replaceAll(/\r\n|\r|\n/g, (str72)=>str72 === "\r" ? "\\r" : str72 === "\n" ? "\\n\n" : "\\r\\n\r\n"); } - handle(logRecord) { - super.handle(logRecord); - if (logRecord.level > LogLevels.ERROR) { - this.flush(); + function tokenize(string, { wordDiff =false } = {}) { + if (wordDiff) { + const tokens = string.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/); + const words = /^[a-zA-Z\u{C0}-\u{FF}\u{D8}-\u{F6}\u{F8}-\u{2C6}\u{2C8}-\u{2D7}\u{2DE}-\u{2FF}\u{1E00}-\u{1EFF}]+$/u; + for(let i72 = 0; i72 < tokens.length - 1; i72++){ + if (!tokens[i72 + 1] && tokens[i72 + 2] && words.test(tokens[i72]) && words.test(tokens[i72 + 2])) { + tokens[i72] += tokens[i72 + 2]; + tokens.splice(i72 + 1, 2); + i72--; + } + } + return tokens.filter((token)=>token); + } else { + const tokens = [], lines = string.split(/(\n|\r\n)/); + if (!lines[lines.length - 1]) { + lines.pop(); + } + for(let i73 = 0; i73 < lines.length; i73++){ + if (i73 % 2) { + tokens[tokens.length - 1] += lines[i73]; + } else { + tokens.push(lines[i73]); + } + } + return tokens; } } - log(msg10) { - if (this._encoder.encode(msg10).byteLength + 1 > this._buf.available()) { - this.flush(); + function createDetails(line, tokens) { + return tokens.filter(({ type: type10 })=>type10 === line.type || type10 === DiffType1.common).map((result, i74, t93)=>{ + if (result.type === DiffType1.common && t93[i74 - 1] && t93[i74 - 1]?.type === t93[i74 + 1]?.type && /\s+/.test(result.value)) { + result.type = t93[i74 - 1].type; + } + return result; + }); + } + const diffResult = diff(tokenize(`${unescape(A7)}\n`), tokenize(`${unescape(B4)}\n`)); + const added = [], removed = []; + for (const result1 of diffResult){ + if (result1.type === DiffType1.added) { + added.push(result1); + } + if (result1.type === DiffType1.removed) { + removed.push(result1); } - this._buf.writeSync(this._encoder.encode(msg10 + "\n")); } - flush() { - if (this._buf?.buffered() > 0) { - this._buf.flush(); + const aLines = added.length < removed.length ? added : removed; + const bLines = aLines === removed ? added : removed; + for (const a16 of aLines){ + let tokens = [], b17; + while(bLines.length){ + b17 = bLines.shift(); + tokens = diff(tokenize(a16.value, { + wordDiff: true + }), tokenize(b17?.value ?? "", { + wordDiff: true + })); + if (tokens.some(({ type: type11 , value: value70 })=>type11 === DiffType1.common && value70.trim().length)) { + break; + } + } + a16.details = createDetails(a16, tokens); + if (b17) { + b17.details = createDetails(b17, tokens); } } - destroy() { - this.flush(); - this._file?.close(); - this._file = undefined; - removeEventListener("unload", this.#unloadCallback); - return Promise.resolve(); + return diffResult; +} +function createColor(diffType, { background =false } = {}) { + switch(diffType){ + case DiffType1.added: + return (s34)=>background ? bgGreen(white(s34)) : green(bold(s34)); + case DiffType1.removed: + return (s35)=>background ? bgRed(white(s35)) : red(bold(s35)); + default: + return white; } } -class RotatingFileHandler extends FileHandler { - #maxBytes; - #maxBackupCount; - #currentFileSize = 0; - constructor(levelName, options12){ - super(levelName, options12); - this.#maxBytes = options12.maxBytes; - this.#maxBackupCount = options12.maxBackupCount; +function createSign(diffType) { + switch(diffType){ + case DiffType1.added: + return "+ "; + case DiffType1.removed: + return "- "; + default: + return " "; } - async setup() { - if (this.#maxBytes < 1) { - this.destroy(); - throw new Error("maxBytes cannot be less than 1"); +} +function buildMessage(diffResult, { stringDiff =false } = {}) { + const messages = [], diffMessages = []; + messages.push(""); + messages.push(""); + messages.push(` ${gray(bold("[Diff]"))} ${red(bold("Actual"))} / ${green(bold("Expected"))}`); + messages.push(""); + messages.push(""); + diffResult.forEach((result)=>{ + const c18 = createColor(result.type); + const line = result.details?.map((detail)=>detail.type !== DiffType1.common ? createColor(detail.type, { + background: true + })(detail.value) : detail.value).join("") ?? result.value; + diffMessages.push(c18(`${createSign(result.type)}${line}`)); + }); + messages.push(...stringDiff ? [ + diffMessages.join("") + ] : diffMessages); + messages.push(""); + return messages; +} +function format4(v22) { + const { Deno } = globalThis; + return typeof Deno?.inspect === "function" ? Deno.inspect(v22, { + depth: Infinity, + sorted: true, + trailingComma: true, + compact: false, + iterableLimit: Infinity, + getters: true + }) : `"${String(v22).replace(/(?=["\\])/g, "\\")}"`; +} +const CAN_NOT_DISPLAY = "[Cannot display]"; +class AssertionError1 extends Error { + name = "AssertionError"; + constructor(message){ + super(message); + } +} +function isKeyedCollection(x5) { + return [ + Symbol.iterator, + "size" + ].every((k5)=>k5 in x5); +} +function equal(c19, d5) { + const seen = new Map(); + return function compare1(a17, b18) { + if (a17 && b18 && (a17 instanceof RegExp && b18 instanceof RegExp || a17 instanceof URL && b18 instanceof URL)) { + return String(a17) === String(b18); } - if (this.#maxBackupCount < 1) { - this.destroy(); - throw new Error("maxBackupCount cannot be less than 1"); + if (a17 instanceof Date && b18 instanceof Date) { + const aTime = a17.getTime(); + const bTime = b18.getTime(); + if (Number.isNaN(aTime) && Number.isNaN(bTime)) { + return true; + } + return aTime === bTime; } - await super.setup(); - if (this._mode === "w") { - for(let i68 = 1; i68 <= this.#maxBackupCount; i68++){ - if (await exists1(this._filename + "." + i68)) { - await Deno.remove(this._filename + "." + i68); + if (typeof a17 === "number" && typeof b18 === "number") { + return Number.isNaN(a17) && Number.isNaN(b18) || a17 === b18; + } + if (Object.is(a17, b18)) { + return true; + } + if (a17 && typeof a17 === "object" && b18 && typeof b18 === "object") { + if (a17 && b18 && !constructorsEqual(a17, b18)) { + return false; + } + if (a17 instanceof WeakMap || b18 instanceof WeakMap) { + if (!(a17 instanceof WeakMap && b18 instanceof WeakMap)) return false; + throw new TypeError("cannot compare WeakMap instances"); + } + if (a17 instanceof WeakSet || b18 instanceof WeakSet) { + if (!(a17 instanceof WeakSet && b18 instanceof WeakSet)) return false; + throw new TypeError("cannot compare WeakSet instances"); + } + if (seen.get(a17) === b18) { + return true; + } + if (Object.keys(a17 || {}).length !== Object.keys(b18 || {}).length) { + return false; + } + seen.set(a17, b18); + if (isKeyedCollection(a17) && isKeyedCollection(b18)) { + if (a17.size !== b18.size) { + return false; + } + let unmatchedEntries = a17.size; + for (const [aKey, aValue] of a17.entries()){ + for (const [bKey, bValue] of b18.entries()){ + if (aKey === aValue && bKey === bValue && compare1(aKey, bKey) || compare1(aKey, bKey) && compare1(aValue, bValue)) { + unmatchedEntries--; + break; + } + } } + return unmatchedEntries === 0; } - } else if (this._mode === "x") { - for(let i69 = 1; i69 <= this.#maxBackupCount; i69++){ - if (await exists1(this._filename + "." + i69)) { - this.destroy(); - throw new Deno.errors.AlreadyExists("Backup log file " + this._filename + "." + i69 + " already exists"); + const merged = { + ...a17, + ...b18 + }; + for (const key35 of [ + ...Object.getOwnPropertyNames(merged), + ...Object.getOwnPropertySymbols(merged), + ]){ + if (!compare1(a17 && a17[key35], b18 && b18[key35])) { + return false; + } + if (key35 in a17 && !(key35 in b18) || key35 in b18 && !(key35 in a17)) { + return false; } } - } else { - this.#currentFileSize = (await Deno.stat(this._filename)).size; - } - } - log(msg11) { - const msgByteLength = this._encoder.encode(msg11).byteLength + 1; - if (this.#currentFileSize + msgByteLength > this.#maxBytes) { - this.rotateLogFiles(); - this.#currentFileSize = 0; - } - super.log(msg11); - this.#currentFileSize += msgByteLength; - } - rotateLogFiles() { - this._buf.flush(); - Deno.close(this._file.rid); - for(let i70 = this.#maxBackupCount - 1; i70 >= 0; i70--){ - const source = this._filename + (i70 === 0 ? "" : "." + i70); - const dest = this._filename + "." + (i70 + 1); - if (existsSync(source)) { - Deno.renameSync(source, dest); + if (a17 instanceof WeakRef || b18 instanceof WeakRef) { + if (!(a17 instanceof WeakRef && b18 instanceof WeakRef)) return false; + return compare1(a17.deref(), b18.deref()); } + return true; } - this._file = Deno.openSync(this._filename, this._openOptions); - this._writer = this._file; - this._buf = new BufWriterSync2(this._file); + return false; + }(c19, d5); +} +function constructorsEqual(a18, b19) { + return a18.constructor === b19.constructor || a18.constructor === Object && !b19.constructor || !a18.constructor && b19.constructor === Object; +} +function assert5(expr, msg17 = "") { + if (!expr) { + throw new AssertionError1(msg17); } } -class LoggerConfig { - level; - handlers; +function assertEquals(actual, expected, msg18) { + if (equal(actual, expected)) { + return; + } + let message = ""; + const actualString = format4(actual); + const expectedString = format4(expected); + try { + const stringDiff = typeof actual === "string" && typeof expected === "string"; + const diffResult = stringDiff ? diffstr(actual, expected) : diff(actualString.split("\n"), expectedString.split("\n")); + const diffMsg = buildMessage(diffResult, { + stringDiff + }).join("\n"); + message = `Values are not equal:\n${diffMsg}`; + } catch { + message = `\n${red(CAN_NOT_DISPLAY)} + \n\n`; + } + if (msg18) { + message = msg18; + } + throw new AssertionError1(message); } -const DEFAULT_LEVEL = "INFO"; -const DEFAULT_CONFIG = { - handlers: { - default: new ConsoleHandler(DEFAULT_LEVEL) - }, - loggers: { - default: { - level: DEFAULT_LEVEL, - handlers: [ - "default" - ] - } +function assertNotEquals(actual, expected, msg19) { + if (!equal(actual, expected)) { + return; } -}; -const state = { - handlers: new Map(), - loggers: new Map(), - config: DEFAULT_CONFIG -}; -const handlers = { - BaseHandler, - ConsoleHandler, - WriterHandler, - FileHandler, - RotatingFileHandler -}; -function getLogger(name6) { - if (!name6) { - const d4 = state.loggers.get("default"); - assert3(d4 != null, `"default" logger must be set for getting logger without name`); - return d4; + let actualString; + let expectedString; + try { + actualString = String(actual); + } catch { + actualString = "[Cannot display]"; } - const result = state.loggers.get(name6); - if (!result) { - const logger1 = new Logger(name6, "NOTSET", { - handlers: [] - }); - state.loggers.set(name6, logger1); - return logger1; + try { + expectedString = String(expected); + } catch { + expectedString = "[Cannot display]"; } - return result; + if (!msg19) { + msg19 = `actual: ${actualString} expected not to be: ${expectedString}`; + } + throw new AssertionError1(msg19); } -function debug(msg12, ...args6) { - if (msg12 instanceof Function) { - return getLogger("default").debug(msg12, ...args6); +function assertStrictEquals(actual, expected, msg20) { + if (Object.is(actual, expected)) { + return; } - return getLogger("default").debug(msg12, ...args6); + let message; + if (msg20) { + message = msg20; + } else { + const actualString = format4(actual); + const expectedString = format4(expected); + if (actualString === expectedString) { + const withOffset = actualString.split("\n").map((l8)=>` ${l8}`).join("\n"); + message = `Values have the same structure but are not reference-equal:\n\n${red(withOffset)}\n`; + } else { + try { + const stringDiff = typeof actual === "string" && typeof expected === "string"; + const diffResult = stringDiff ? diffstr(actual, expected) : diff(actualString.split("\n"), expectedString.split("\n")); + const diffMsg = buildMessage(diffResult, { + stringDiff + }).join("\n"); + message = `Values are not strictly equal:\n${diffMsg}`; + } catch { + message = `\n${red(CAN_NOT_DISPLAY)} + \n\n`; + } + } + } + throw new AssertionError1(message); } -function info(msg13, ...args7) { - if (msg13 instanceof Function) { - return getLogger("default").info(msg13, ...args7); +function assertNotStrictEquals(actual, expected, msg21) { + if (!Object.is(actual, expected)) { + return; } - return getLogger("default").info(msg13, ...args7); + throw new AssertionError1(msg21 ?? `Expected "actual" to be strictly unequal to: ${format4(actual)}\n`); } -function warning(msg14, ...args8) { - if (msg14 instanceof Function) { - return getLogger("default").warning(msg14, ...args8); +function assertMatch(actual, expected, msg22) { + if (!expected.test(actual)) { + if (!msg22) { + msg22 = `actual: "${actual}" expected to match: "${expected}"`; + } + throw new AssertionError1(msg22); } - return getLogger("default").warning(msg14, ...args8); } -function error(msg15, ...args9) { - if (msg15 instanceof Function) { - return getLogger("default").error(msg15, ...args9); +function assertNotMatch(actual, expected, msg23) { + if (expected.test(actual)) { + if (!msg23) { + msg23 = `actual: "${actual}" expected to not match: "${expected}"`; + } + throw new AssertionError1(msg23); } - return getLogger("default").error(msg15, ...args9); } -function critical(msg16, ...args10) { - if (msg16 instanceof Function) { - return getLogger("default").critical(msg16, ...args10); +function unreachable() { + throw new AssertionError1("unreachable"); +} +function timingSafeEqual2(a19, b20) { + if (a19.byteLength !== b20.byteLength) { + return false; } - return getLogger("default").critical(msg16, ...args10); + if (!(a19 instanceof DataView)) { + a19 = new DataView(ArrayBuffer.isView(a19) ? a19.buffer : a19); + } + if (!(b20 instanceof DataView)) { + b20 = new DataView(ArrayBuffer.isView(b20) ? b20.buffer : b20); + } + assert5(a19 instanceof DataView); + assert5(b20 instanceof DataView); + const length = a19.byteLength; + let out = 0; + let i75 = -1; + while(++i75 < length){ + out |= a19.getUint8(i75) ^ b20.getUint8(i75); + } + return out === 0; } -async function setup(config) { - state.config = { - handlers: { - ...DEFAULT_CONFIG.handlers, - ...config.handlers - }, - loggers: { - ...DEFAULT_CONFIG.loggers, - ...config.loggers - } - }; - state.handlers.forEach((handler)=>{ - handler.destroy(); +function swap32(val) { + return (val & 0xff) << 24 | (val & 0xff00) << 8 | val >> 8 & 0xff00 | val >> 24 & 0xff; +} +function n16(n82) { + return n82 & 0xffff; +} +function n32(n83) { + return n83 >>> 0; +} +function add32WithCarry(a20, b21) { + const added = n32(a20) + n32(b21); + return [ + n32(added), + added > 0xffffffff ? 1 : 0 + ]; +} +function mul32WithCarry(a21, b22) { + const al = n16(a21); + const ah = n16(a21 >>> 16); + const bl = n16(b22); + const bh = n16(b22 >>> 16); + const [t94, tc] = add32WithCarry(al * bh, ah * bl); + const [n84, nc] = add32WithCarry(al * bl, n32(t94 << 16)); + const carry = nc + (tc << 16) + n16(t94 >>> 16) + ah * bh; + return [ + n84, + carry + ]; +} +function mul32(a22, b23) { + const al = n16(a22); + const ah = a22 - al; + return n32(n32(ah * b23) + al * b23); +} +function mul64([ah, al], [bh, bl]) { + const [n85, c20] = mul32WithCarry(al, bl); + return [ + n32(mul32(al, bh) + mul32(ah, bl) + c20), + n85 + ]; +} +const prime32 = 16777619; +const fnv32 = (data26)=>{ + let hash2 = 2166136261; + data26.forEach((c21)=>{ + hash2 = mul32(hash2, prime32); + hash2 ^= c21; }); - state.handlers.clear(); - const handlers1 = state.config.handlers || {}; - for(const handlerName1 in handlers1){ - const handler = handlers1[handlerName1]; - await handler.setup(); - state.handlers.set(handlerName1, handler); + return Uint32Array.from([ + swap32(hash2) + ]).buffer; +}; +const fnv32a = (data27)=>{ + let hash3 = 2166136261; + data27.forEach((c22)=>{ + hash3 ^= c22; + hash3 = mul32(hash3, prime32); + }); + return Uint32Array.from([ + swap32(hash3) + ]).buffer; +}; +const prime64Lo = 435; +const prime64Hi = 256; +const fnv64 = (data28)=>{ + let hashLo = 2216829733; + let hashHi = 3421674724; + data28.forEach((c23)=>{ + [hashHi, hashLo] = mul64([ + hashHi, + hashLo + ], [ + prime64Hi, + prime64Lo + ]); + hashLo ^= c23; + }); + return new Uint32Array([ + swap32(hashHi >>> 0), + swap32(hashLo >>> 0) + ]).buffer; +}; +const fnv64a = (data29)=>{ + let hashLo = 2216829733; + let hashHi = 3421674724; + data29.forEach((c24)=>{ + hashLo ^= c24; + [hashHi, hashLo] = mul64([ + hashHi, + hashLo + ], [ + prime64Hi, + prime64Lo + ]); + }); + return new Uint32Array([ + swap32(hashHi >>> 0), + swap32(hashLo >>> 0) + ]).buffer; +}; +const fnv = (name7, buf)=>{ + if (!buf) { + throw new TypeError("no data provided for hashing"); } - state.loggers.clear(); - const loggers = state.config.loggers || {}; - for(const loggerName in loggers){ - const loggerConfig = loggers[loggerName]; - const handlerNames = loggerConfig.handlers || []; - const handlers2 = []; - handlerNames.forEach((handlerName)=>{ - const handler = state.handlers.get(handlerName); - if (handler) { - handlers2.push(handler); - } - }); - const levelName = loggerConfig.level || DEFAULT_LEVEL; - const logger2 = new Logger(loggerName, levelName, { - handlers: handlers2 - }); - state.loggers.set(loggerName, logger2); + switch(name7){ + case "FNV32": + return fnv32(buf); + case "FNV64": + return fnv64(buf); + case "FNV32A": + return fnv32a(buf); + case "FNV64A": + return fnv64a(buf); + default: + throw new TypeError(`unsupported fnv digest: ${name7}`); } -} -await setup(DEFAULT_CONFIG); -const mod9 = await async function() { - return { - LogLevels: LogLevels, - Logger: Logger, - LoggerConfig: LoggerConfig, - handlers: handlers, - getLogger: getLogger, - debug: debug, - info: info, - warning: warning, - error: error, - critical: critical, - setup: setup - }; -}(); -const base64abc1 = [ +}; +const base64abc2 = [ "A", "B", "C", @@ -19655,3171 +25538,66 @@ const base64abc1 = [ "+", "/", ]; -function encode1(data23) { - const uint8 = typeof data23 === "string" ? new TextEncoder().encode(data23) : data23 instanceof Uint8Array ? data23 : new Uint8Array(data23); - let result = "", i71; - const l7 = uint8.length; - for(i71 = 2; i71 < l7; i71 += 3){ - result += base64abc1[uint8[i71 - 2] >> 2]; - result += base64abc1[(uint8[i71 - 2] & 0x03) << 4 | uint8[i71 - 1] >> 4]; - result += base64abc1[(uint8[i71 - 1] & 0x0f) << 2 | uint8[i71] >> 6]; - result += base64abc1[uint8[i71] & 0x3f]; - } - if (i71 === l7 + 1) { - result += base64abc1[uint8[i71 - 2] >> 2]; - result += base64abc1[(uint8[i71 - 2] & 0x03) << 4]; +function encode2(data30) { + const uint8 = typeof data30 === "string" ? new TextEncoder().encode(data30) : data30 instanceof Uint8Array ? data30 : new Uint8Array(data30); + let result = "", i76; + const l9 = uint8.length; + for(i76 = 2; i76 < l9; i76 += 3){ + result += base64abc2[uint8[i76 - 2] >> 2]; + result += base64abc2[(uint8[i76 - 2] & 0x03) << 4 | uint8[i76 - 1] >> 4]; + result += base64abc2[(uint8[i76 - 1] & 0x0f) << 2 | uint8[i76] >> 6]; + result += base64abc2[uint8[i76] & 0x3f]; + } + if (i76 === l9 + 1) { + result += base64abc2[uint8[i76 - 2] >> 2]; + result += base64abc2[(uint8[i76 - 2] & 0x03) << 4]; result += "=="; } - if (i71 === l7) { - result += base64abc1[uint8[i71 - 2] >> 2]; - result += base64abc1[(uint8[i71 - 2] & 0x03) << 4 | uint8[i71 - 1] >> 4]; - result += base64abc1[(uint8[i71 - 1] & 0x0f) << 2]; + if (i76 === l9) { + result += base64abc2[uint8[i76 - 2] >> 2]; + result += base64abc2[(uint8[i76 - 2] & 0x03) << 4 | uint8[i76 - 1] >> 4]; + result += base64abc2[(uint8[i76 - 1] & 0x0f) << 2]; result += "="; } return result; } -function decode2(b64) { +function decode1(b64) { const binString = atob(b64); const size = binString.length; const bytes8 = new Uint8Array(size); - for(let i72 = 0; i72 < size; i72++){ - bytes8[i72] = binString.charCodeAt(i72); + for(let i77 = 0; i77 < size; i77++){ + bytes8[i77] = binString.charCodeAt(i77); } return bytes8; } const mod10 = { - encode: encode1, - decode: decode2 -}; -const data = decode2("\ -AGFzbQEAAAABo4GAgAAYYAAAYAABf2ABfwBgAX8Bf2ABfwF+YAJ/fwBgAn9/AX9gA39/fwBgA39/fw\ -F/YAR/f39/AGAEf39/fwF/YAV/f39/fwBgBX9/f39/AX9gBn9/f39/fwBgBn9/f39/fwF/YAV/f39+\ -fwBgB39/f35/f38Bf2ADf39+AGAFf399f38AYAV/f3x/fwBgAn9+AGAEf31/fwBgBH98f38AYAJ+fw\ -F/AtKFgIAADRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193YmdfbmV3X2E0YjYxYTBmNTQ4MjRj\ -ZmQABhhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193YmluZGdlbl9vYmplY3RfZHJvcF9yZWYAAh\ -hfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18hX193YmdfYnl0ZUxlbmd0aF8zZTI1MGI0MWE4OTE1NzU3\ -AAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fIV9fd2JnX2J5dGVPZmZzZXRfNDIwNGVjYjI0YTZlNW\ -RmOQADGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx1fX3diZ19idWZmZXJfZmFjZjAzOThhMjgxYzg1\ -YgADGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXzFfX3diZ19uZXd3aXRoYnl0ZW9mZnNldGFuZGxlbm\ -d0aF80YjliOGM0ZTNmNWFkYmZmAAgYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2xlbmd0\ -aF8xZWI4ZmM2MDhhMGQ0Y2RiAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fEV9fd2JpbmRnZW5fbW\ -Vtb3J5AAEYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2J1ZmZlcl8zOTdlYWE0ZDcyZWU5\ -NGRkAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX25ld19hN2NlNDQ3ZjE1ZmY0OTZmAA\ -MYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX3NldF85NjlhZDBhNjBlNTFkMzIwAAcYX193\ -YmluZGdlbl9wbGFjZWhvbGRlcl9fEF9fd2JpbmRnZW5fdGhyb3cABRhfX3diaW5kZ2VuX3BsYWNlaG\ -9sZGVyX18SX193YmluZGdlbl9yZXRocm93AAID7YCAgABsCQcJBwcRBQcHBQMHBw8DBwUQAgUFAgcF\ -AggGBwcUDAgOBwcHBwYHBwgXDQUFCAkIDQkFCQYJBgYFBQUFBQUHBwcHBwAFAggKBwUDAgUODAsMCw\ -sSEwkFCAgDBgYCBQAABgMGAAAFBQIEAAUCBIWAgIAAAXABFRUFg4CAgAABABEGiYCAgAABfwFBgIDA\ -AAsHtoKAgAAOBm1lbW9yeQIABmRpZ2VzdAA3GF9fd2JnX2RpZ2VzdGNvbnRleHRfZnJlZQBSEWRpZ2\ -VzdGNvbnRleHRfbmV3AEEUZGlnZXN0Y29udGV4dF91cGRhdGUAVhRkaWdlc3Rjb250ZXh0X2RpZ2Vz\ -dAA+HGRpZ2VzdGNvbnRleHRfZGlnZXN0QW5kUmVzZXQAQBtkaWdlc3Rjb250ZXh0X2RpZ2VzdEFuZE\ -Ryb3AAOxNkaWdlc3Rjb250ZXh0X3Jlc2V0ACITZGlnZXN0Y29udGV4dF9jbG9uZQAbH19fd2JpbmRn\ -ZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIAbhFfX3diaW5kZ2VuX21hbGxvYwBXEl9fd2JpbmRnZW5fcm\ -VhbGxvYwBkD19fd2JpbmRnZW5fZnJlZQBqCZqAgIAAAQBBAQsUZ2hvd21bPVxdWmViXl9gYXhDRHUK\ -g8yIgABsoH4CEn8CfiMAQbAlayIEJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAk\ -ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASgCAA4YAAECAwQcGxoZGBcWFRQTEhEQDw4N\ -DAsKAAsgASgCBCEBQdABEBciBUUNBCAEQZASakE4aiABQThqKQMANwMAIARBkBJqQTBqIAFBMGopAw\ -A3AwAgBEGQEmpBKGogAUEoaikDADcDACAEQZASakEgaiABQSBqKQMANwMAIARBkBJqQRhqIAFBGGop\ -AwA3AwAgBEGQEmpBEGogAUEQaikDADcDACAEQZASakEIaiABQQhqKQMANwMAIAQgASkDADcDkBIgAS\ -kDQCEWIARBkBJqQcgAaiABQcgAahBFIAQgFjcD0BIgBSAEQZASakHQARA6GkEAIQZBACEBDB8LIAEo\ -AgQhAUHQARAXIgVFDQQgBEGQEmpBOGogAUE4aikDADcDACAEQZASakEwaiABQTBqKQMANwMAIARBkB\ -JqQShqIAFBKGopAwA3AwAgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEYaiABQRhqKQMANwMAIARB\ -kBJqQRBqIAFBEGopAwA3AwAgBEGQEmpBCGogAUEIaikDADcDACAEIAEpAwA3A5ASIAEpA0AhFiAEQZ\ -ASakHIAGogAUHIAGoQRSAEIBY3A9ASIAUgBEGQEmpB0AEQOhpBASEBDBsLIAEoAgQhAUHQARAXIgVF\ -DQQgBEGQEmpBOGogAUE4aikDADcDACAEQZASakEwaiABQTBqKQMANwMAIARBkBJqQShqIAFBKGopAw\ -A3AwAgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEYaiABQRhqKQMANwMAIARBkBJqQRBqIAFBEGop\ -AwA3AwAgBEGQEmpBCGogAUEIaikDADcDACAEIAEpAwA3A5ASIAEpA0AhFiAEQZASakHIAGogAUHIAG\ -oQRSAEIBY3A9ASIAUgBEGQEmpB0AEQOhpBAiEBDBoLIAEoAgQhAUHwABAXIgVFDQQgBEGQEmpBIGog\ -AUEgaikDADcDACAEQZASakEYaiABQRhqKQMANwMAIARBkBJqQRBqIAFBEGopAwA3AwAgBCABKQMINw\ -OYEiABKQMAIRYgBEGQEmpBKGogAUEoahA5IAQgFjcDkBIgBSAEQZASakHwABA6GkEDIQEMGQsgASgC\ -BCEBQfgOEBciBUUNBCAEQZASakGIAWogAUGIAWopAwA3AwAgBEGQEmpBgAFqIAFBgAFqKQMANwMAIA\ -RBkBJqQfgAaiABQfgAaikDADcDACAEQZASakEQaiABQRBqKQMANwMAIARBkBJqQRhqIAFBGGopAwA3\ -AwAgBEGQEmpBIGogAUEgaikDADcDACAEQZASakEwaiABQTBqKQMANwMAIARBkBJqQThqIAFBOGopAw\ -A3AwAgBEGQEmpBwABqIAFBwABqKQMANwMAIARBkBJqQcgAaiABQcgAaikDADcDACAEQZASakHQAGog\ -AUHQAGopAwA3AwAgBEGQEmpB2ABqIAFB2ABqKQMANwMAIARBkBJqQeAAaiABQeAAaikDADcDACAEIA\ -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\ -akEYaikDADcAACAGQRBqIAFBuCJqQRBqKQMANwAAIAZBCGogAUG4ImpBCGopAwA3AABBwAAhAwwaCy\ -AEIAVB0AEQOiIBQfgOakEcakIANwIAIAFB+A5qQRRqQgA3AgAgAUH4DmpBDGpCADcCACABQgA3AvwO\ -IAFBIDYC+A4gAUGQEmpBGGoiCyABQfgOakEYaiICKQMANwMAIAFBkBJqQRBqIgwgAUH4DmpBEGoiCi\ -kDADcDACABQZASakEIaiINIAFB+A5qQQhqIgMpAwA3AwAgAUGQEmpBIGogAUH4DmpBIGoiECgCADYC\ -ACABIAEpA/gONwOQEiABQbgiakEQaiIOIAFBkBJqQRRqKQIANwMAIAFBuCJqQQhqIgcgAUGQEmpBDG\ -opAgA3AwAgAUG4ImpBGGoiCCABQZASakEcaikCADcDACABIAEpApQSNwO4IiABQZASaiABQdABEDoa\ -IAEgASkD0BIgAUHYE2otAAAiBq18NwPQEiABQdgSaiEPAkAgBkGAAUYNACAPIAZqQQBBgAEgBmsQPB\ -oLIAFBADoA2BMgAUGQEmogD0J/EBIgAyANKQMANwMAIAogDCkDADcDACACIAspAwA3AwAgECABKQOw\ -EjcDACABQfgOakEoaiABQZASakEoaikDADcDACABQfgOakEwaiABQZASakEwaikDADcDACABQfgOak\ -E4aiABQZASakE4aikDADcDACABIAEpA5ASNwP4DiAHIAMpAwA3AwAgDiAKKQMANwMAIAggAikDADcD\ -ACABIAEpA/gONwO4IkEgEBciBkUNHCAGIAEpA7giNwAAIAZBGGogAUG4ImpBGGopAwA3AAAgBkEQai\ -ABQbgiakEQaikDADcAACAGQQhqIAFBuCJqQQhqKQMANwAAQSAhAwwZCyAEIAVB0AEQOiIBQfgOakEs\ -akIANwIAIAFB+A5qQSRqQgA3AgAgAUH4DmpBHGpCADcCACABQfgOakEUakIANwIAIAFB+A5qQQxqQg\ -A3AgAgAUIANwL8DiABQTA2AvgOIAFBkBJqQShqIg0gAUH4DmpBKGoiAikDADcDACABQZASakEgaiAB\ -QfgOakEgaiIKKQMANwMAIAFBkBJqQRhqIhAgAUH4DmpBGGoiAykDADcDACABQZASakEQaiIOIAFB+A\ -5qQRBqIg8pAwA3AwAgAUGQEmpBCGoiByABQfgOakEIaiILKQMANwMAIAFBkBJqQTBqIgggAUH4DmpB\ -MGoiCSgCADYCACABIAEpA/gONwOQEiABQbgiakEgaiIRIAFBkBJqQSRqKQIANwMAIAFBuCJqQRhqIh\ -IgAUGQEmpBHGopAgA3AwAgAUG4ImpBEGoiEyABQZASakEUaikCADcDACABQbgiakEIaiIUIAFBkBJq\ -QQxqKQIANwMAIAFBuCJqQShqIhUgAUGQEmpBLGopAgA3AwAgASABKQKUEjcDuCIgAUGQEmogAUHQAR\ -A6GiABIAEpA9ASIAFB2BNqLQAAIgatfDcD0BIgAUHYEmohDAJAIAZBgAFGDQAgDCAGakEAQYABIAZr\ -EDwaCyABQQA6ANgTIAFBkBJqIAxCfxASIAsgBykDADcDACAPIA4pAwA3AwAgAyAQKQMANwMAIAogAS\ -kDsBI3AwAgAiANKQMANwMAIAkgCCkDADcDACABQfgOakE4aiABQZASakE4aikDADcDACABIAEpA5AS\ -NwP4DiAUIAspAwA3AwAgEyAPKQMANwMAIBIgAykDADcDACARIAopAwA3AwAgFSACKQMANwMAIAEgAS\ -kD+A43A7giQTAQFyIGRQ0cIAYgASkDuCI3AAAgBkEoaiABQbgiakEoaikDADcAACAGQSBqIAFBuCJq\ -QSBqKQMANwAAIAZBGGogAUG4ImpBGGopAwA3AAAgBkEQaiABQbgiakEQaikDADcAACAGQQhqIAFBuC\ -JqQQhqKQMANwAAQTAhAwwYCyAEIAVB8AAQOiIBQfgOakEcakIANwIAIAFB+A5qQRRqQgA3AgAgAUH4\ -DmpBDGpCADcCACABQgA3AvwOIAFBIDYC+A4gAUGQEmpBGGoiCiABQfgOakEYaikDADcDACABQZASak\ -EQaiIDIAFB+A5qQRBqKQMANwMAIAFBkBJqQQhqIAFB+A5qQQhqIg8pAwA3AwAgAUGQEmpBIGoiCyAB\ -QfgOakEgaigCADYCACABIAEpA/gONwOQEiABQegjakEQaiIMIAFBkBJqQRRqKQIANwMAIAFB6CNqQQ\ -hqIg0gAUGQEmpBDGopAgA3AwAgAUHoI2pBGGoiECABQZASakEcaikCADcDACABIAEpApQSNwPoIyAB\ -QZASaiABQfAAEDoaIAEgASkDkBIgAUH4EmotAAAiBq18NwOQEiABQbgSaiECAkAgBkHAAEYNACACIA\ -ZqQQBBwAAgBmsQPBoLIAFBADoA+BIgAUGQEmogAkF/EBQgDyADKQMAIhY3AwAgDSAWNwMAIAwgCikD\ -ADcDACAQIAspAwA3AwAgASABKQOYEiIWNwP4DiABIBY3A+gjQSAQFyIGRQ0cIAYgASkD6CM3AAAgBk\ -EYaiABQegjakEYaikDADcAACAGQRBqIAFB6CNqQRBqKQMANwAAIAZBCGogAUHoI2pBCGopAwA3AABB\ -ICEDDBcLIAQgBUH4DhA6IQEgA0EASA0SAkACQCADDQBBASEGDAELIAMQFyIGRQ0dIAZBfGotAABBA3\ -FFDQAgBkEAIAMQPBoLIAFBkBJqIAFB+A4QOhogAUH4DmogAUGQEmoQJCABQfgOaiAGIAMQGQwWCyAE\ -IAVB4AIQOiIKQZASaiAKQeACEDoaIApBkBJqIApB6BRqLQAAIgFqQcgBaiECAkAgAUGQAUYNACACQQ\ -BBkAEgAWsQPBoLQQAhBiAKQQA6AOgUIAJBAToAACAKQecUaiIBIAEtAABBgAFyOgAAA0AgCkGQEmog\ -BmoiASABLQAAIAFByAFqLQAAczoAACABQQFqIgIgAi0AACABQckBai0AAHM6AAAgAUECaiICIAItAA\ -AgAUHKAWotAABzOgAAIAFBA2oiAiACLQAAIAFBywFqLQAAczoAACAGQQRqIgZBkAFHDQALIApBkBJq\ -ECUgCkH4DmpBGGoiASAKQZASakEYaigCADYCACAKQfgOakEQaiICIApBkBJqQRBqKQMANwMAIApB+A\ -5qQQhqIg8gCkGQEmpBCGopAwA3AwAgCiAKKQOQEjcD+A5BHCEDQRwQFyIGRQ0cIAYgCikD+A43AAAg\ -BkEYaiABKAIANgAAIAZBEGogAikDADcAACAGQQhqIA8pAwA3AAAMFQsgBCAFQdgCEDoiCkGQEmogCk\ -HYAhA6GiAKQZASaiAKQeAUai0AACIBakHIAWohAgJAIAFBiAFGDQAgAkEAQYgBIAFrEDwaC0EAIQYg\ -CkEAOgDgFCACQQE6AAAgCkHfFGoiASABLQAAQYABcjoAAANAIApBkBJqIAZqIgEgAS0AACABQcgBai\ -0AAHM6AAAgAUEBaiICIAItAAAgAUHJAWotAABzOgAAIAFBAmoiAiACLQAAIAFBygFqLQAAczoAACAB\ -QQNqIgIgAi0AACABQcsBai0AAHM6AAAgBkEEaiIGQYgBRw0ACyAKQZASahAlIApB+A5qQRhqIgEgCk\ -GQEmpBGGopAwA3AwAgCkH4DmpBEGoiAiAKQZASakEQaikDADcDACAKQfgOakEIaiIPIApBkBJqQQhq\ -KQMANwMAIAogCikDkBI3A/gOQSAhA0EgEBciBkUNHCAGIAopA/gONwAAIAZBGGogASkDADcAACAGQR\ -BqIAIpAwA3AAAgBkEIaiAPKQMANwAADBQLIAQgBUG4AhA6IgpBkBJqIApBuAIQOhogCkGQEmogCkHA\ -FGotAAAiAWpByAFqIQICQCABQegARg0AIAJBAEHoACABaxA8GgtBACEGIApBADoAwBQgAkEBOgAAIA\ -pBvxRqIgEgAS0AAEGAAXI6AAADQCAKQZASaiAGaiIBIAEtAAAgAUHIAWotAABzOgAAIAFBAWoiAiAC\ -LQAAIAFByQFqLQAAczoAACABQQJqIgIgAi0AACABQcoBai0AAHM6AAAgAUEDaiICIAItAAAgAUHLAW\ -otAABzOgAAIAZBBGoiBkHoAEcNAAsgCkGQEmoQJSAKQfgOakEoaiIBIApBkBJqQShqKQMANwMAIApB\ -+A5qQSBqIgIgCkGQEmpBIGopAwA3AwAgCkH4DmpBGGoiDyAKQZASakEYaikDADcDACAKQfgOakEQai\ -ILIApBkBJqQRBqKQMANwMAIApB+A5qQQhqIgwgCkGQEmpBCGopAwA3AwAgCiAKKQOQEjcD+A5BMCED\ -QTAQFyIGRQ0cIAYgCikD+A43AAAgBkEoaiABKQMANwAAIAZBIGogAikDADcAACAGQRhqIA8pAwA3AA\ -AgBkEQaiALKQMANwAAIAZBCGogDCkDADcAAAwTCyAEIAVBmAIQOiIKQZASaiAKQZgCEDoaIApBkBJq\ -IApBoBRqLQAAIgFqQcgBaiECAkAgAUHIAEYNACACQQBByAAgAWsQPBoLQQAhBiAKQQA6AKAUIAJBAT\ -oAACAKQZ8UaiIBIAEtAABBgAFyOgAAA0AgCkGQEmogBmoiASABLQAAIAFByAFqLQAAczoAACABQQFq\ -IgIgAi0AACABQckBai0AAHM6AAAgAUECaiICIAItAAAgAUHKAWotAABzOgAAIAFBA2oiAiACLQAAIA\ -FBywFqLQAAczoAACAGQQRqIgZByABHDQALIApBkBJqECUgCkH4DmpBOGoiASAKQZASakE4aikDADcD\ -ACAKQfgOakEwaiICIApBkBJqQTBqKQMANwMAIApB+A5qQShqIg8gCkGQEmpBKGopAwA3AwAgCkH4Dm\ -pBIGoiCyAKQZASakEgaikDADcDACAKQfgOakEYaiIMIApBkBJqQRhqKQMANwMAIApB+A5qQRBqIg0g\ -CkGQEmpBEGopAwA3AwAgCkH4DmpBCGoiECAKQZASakEIaikDADcDACAKIAopA5ASNwP4DkHAACEDQc\ -AAEBciBkUNHCAGIAopA/gONwAAIAZBOGogASkDADcAACAGQTBqIAIpAwA3AAAgBkEoaiAPKQMANwAA\ -IAZBIGogCykDADcAACAGQRhqIAwpAwA3AAAgBkEQaiANKQMANwAAIAZBCGogECkDADcAAAwSCyAEIA\ -VB4AAQOiIBQfgOakEMakIANwIAIAFCADcC/A5BECEDIAFBEDYC+A4gAUGQEmpBEGogAUH4DmpBEGoo\ -AgA2AgAgAUGQEmpBCGogAUH4DmpBCGopAwA3AwAgAUHoI2pBCGoiAiABQZASakEMaikCADcDACABIA\ -EpA/gONwOQEiABIAEpApQSNwPoIyABQZASaiABQeAAEDoaIAFBkBJqIAFBqBJqIAFB6CNqEDBBEBAX\ -IgZFDRwgBiABKQPoIzcAACAGQQhqIAIpAwA3AAAMEQsgBCAFQeAAEDoiAUH4DmpBDGpCADcCACABQg\ -A3AvwOQRAhAyABQRA2AvgOIAFBkBJqQRBqIAFB+A5qQRBqKAIANgIAIAFBkBJqQQhqIAFB+A5qQQhq\ -KQMANwMAIAFB6CNqQQhqIgIgAUGQEmpBDGopAgA3AwAgASABKQP4DjcDkBIgASABKQKUEjcD6CMgAU\ -GQEmogAUHgABA6GiABQZASaiABQagSaiABQegjahAvQRAQFyIGRQ0cIAYgASkD6CM3AAAgBkEIaiAC\ -KQMANwAADBALQRQhAyAEIAVB6AAQOiIBQfgOakEUakEANgIAIAFB+A5qQQxqQgA3AgAgAUEANgL4Di\ -ABQgA3AvwOIAFBFDYC+A4gAUGQEmpBEGogAUH4DmpBEGopAwA3AwAgAUGQEmpBCGogAUH4DmpBCGop\ -AwA3AwAgAUHoI2pBCGoiAiABQZASakEMaikCADcDACABQegjakEQaiIKIAFBkBJqQRRqKAIANgIAIA\ -EgASkD+A43A5ASIAEgASkClBI3A+gjIAFBkBJqIAFB6AAQOhogAUGQEmogAUGwEmogAUHoI2oQLkEU\ -EBciBkUNHCAGIAEpA+gjNwAAIAZBEGogCigCADYAACAGQQhqIAIpAwA3AAAMDwtBFCEDIAQgBUHoAB\ -A6IgFB+A5qQRRqQQA2AgAgAUH4DmpBDGpCADcCACABQQA2AvgOIAFCADcC/A4gAUEUNgL4DiABQZAS\ -akEQaiABQfgOakEQaikDADcDACABQZASakEIaiABQfgOakEIaikDADcDACABQegjakEIaiICIAFBkB\ -JqQQxqKQIANwMAIAFB6CNqQRBqIgogAUGQEmpBFGooAgA2AgAgASABKQP4DjcDkBIgASABKQKUEjcD\ -6CMgAUGQEmogAUHoABA6GiABQZASaiABQbASaiABQegjahApQRQQFyIGRQ0cIAYgASkD6CM3AAAgBk\ -EQaiAKKAIANgAAIAZBCGogAikDADcAAAwOCyAEIAVB4AIQOiIKQZASaiAKQeACEDoaIApBkBJqIApB\ -6BRqLQAAIgFqQcgBaiECAkAgAUGQAUYNACACQQBBkAEgAWsQPBoLQQAhBiAKQQA6AOgUIAJBBjoAAC\ -AKQecUaiIBIAEtAABBgAFyOgAAA0AgCkGQEmogBmoiASABLQAAIAFByAFqLQAAczoAACABQQFqIgIg\ -Ai0AACABQckBai0AAHM6AAAgAUECaiICIAItAAAgAUHKAWotAABzOgAAIAFBA2oiAiACLQAAIAFByw\ -FqLQAAczoAACAGQQRqIgZBkAFHDQALIApBkBJqECUgCkH4DmpBGGoiASAKQZASakEYaigCADYCACAK\ -QfgOakEQaiICIApBkBJqQRBqKQMANwMAIApB+A5qQQhqIg8gCkGQEmpBCGopAwA3AwAgCiAKKQOQEj\ -cD+A5BHCEDQRwQFyIGRQ0cIAYgCikD+A43AAAgBkEYaiABKAIANgAAIAZBEGogAikDADcAACAGQQhq\ -IA8pAwA3AAAMDQsgBCAFQdgCEDoiCkGQEmogCkHYAhA6GiAKQZASaiAKQeAUai0AACIBakHIAWohAg\ -JAIAFBiAFGDQAgAkEAQYgBIAFrEDwaC0EAIQYgCkEAOgDgFCACQQY6AAAgCkHfFGoiASABLQAAQYAB\ -cjoAAANAIApBkBJqIAZqIgEgAS0AACABQcgBai0AAHM6AAAgAUEBaiICIAItAAAgAUHJAWotAABzOg\ -AAIAFBAmoiAiACLQAAIAFBygFqLQAAczoAACABQQNqIgIgAi0AACABQcsBai0AAHM6AAAgBkEEaiIG\ -QYgBRw0ACyAKQZASahAlIApB+A5qQRhqIgEgCkGQEmpBGGopAwA3AwAgCkH4DmpBEGoiAiAKQZASak\ -EQaikDADcDACAKQfgOakEIaiIPIApBkBJqQQhqKQMANwMAIAogCikDkBI3A/gOQSAhA0EgEBciBkUN\ -HCAGIAopA/gONwAAIAZBGGogASkDADcAACAGQRBqIAIpAwA3AAAgBkEIaiAPKQMANwAADAwLIAQgBU\ -G4AhA6IgpBkBJqIApBuAIQOhogCkGQEmogCkHAFGotAAAiAWpByAFqIQICQCABQegARg0AIAJBAEHo\ -ACABaxA8GgtBACEGIApBADoAwBQgAkEGOgAAIApBvxRqIgEgAS0AAEGAAXI6AAADQCAKQZASaiAGai\ -IBIAEtAAAgAUHIAWotAABzOgAAIAFBAWoiAiACLQAAIAFByQFqLQAAczoAACABQQJqIgIgAi0AACAB\ -QcoBai0AAHM6AAAgAUEDaiICIAItAAAgAUHLAWotAABzOgAAIAZBBGoiBkHoAEcNAAsgCkGQEmoQJS\ -AKQfgOakEoaiIBIApBkBJqQShqKQMANwMAIApB+A5qQSBqIgIgCkGQEmpBIGopAwA3AwAgCkH4DmpB\ -GGoiDyAKQZASakEYaikDADcDACAKQfgOakEQaiILIApBkBJqQRBqKQMANwMAIApB+A5qQQhqIgwgCk\ -GQEmpBCGopAwA3AwAgCiAKKQOQEjcD+A5BMCEDQTAQFyIGRQ0cIAYgCikD+A43AAAgBkEoaiABKQMA\ -NwAAIAZBIGogAikDADcAACAGQRhqIA8pAwA3AAAgBkEQaiALKQMANwAAIAZBCGogDCkDADcAAAwLCy\ -AEIAVBmAIQOiIKQZASaiAKQZgCEDoaIApBkBJqIApBoBRqLQAAIgFqQcgBaiECAkAgAUHIAEYNACAC\ -QQBByAAgAWsQPBoLQQAhBiAKQQA6AKAUIAJBBjoAACAKQZ8UaiIBIAEtAABBgAFyOgAAA0AgCkGQEm\ -ogBmoiASABLQAAIAFByAFqLQAAczoAACABQQFqIgIgAi0AACABQckBai0AAHM6AAAgAUECaiICIAIt\ -AAAgAUHKAWotAABzOgAAIAFBA2oiAiACLQAAIAFBywFqLQAAczoAACAGQQRqIgZByABHDQALIApBkB\ -JqECUgCkH4DmpBOGoiASAKQZASakE4aikDADcDACAKQfgOakEwaiICIApBkBJqQTBqKQMANwMAIApB\ -+A5qQShqIg8gCkGQEmpBKGopAwA3AwAgCkH4DmpBIGoiCyAKQZASakEgaikDADcDACAKQfgOakEYai\ -IMIApBkBJqQRhqKQMANwMAIApB+A5qQRBqIg0gCkGQEmpBEGopAwA3AwAgCkH4DmpBCGoiECAKQZAS\ -akEIaikDADcDACAKIAopA5ASNwP4DkHAACEDQcAAEBciBkUNHCAGIAopA/gONwAAIAZBOGogASkDAD\ -cAACAGQTBqIAIpAwA3AAAgBkEoaiAPKQMANwAAIAZBIGogCykDADcAACAGQRhqIAwpAwA3AAAgBkEQ\ -aiANKQMANwAAIAZBCGogECkDADcAAAwKCyAEIAVB8AAQOiIBQZASaiABQfAAEDoaQRwhAyABQegjak\ -EcakIANwIAIAFB6CNqQRRqQgA3AgAgAUHoI2pBDGpCADcCACABQgA3AuwjIAFBIDYC6CMgAUH4DmpB\ -GGoiAiABQegjakEYaikDADcDACABQfgOakEQaiIKIAFB6CNqQRBqKQMANwMAIAFB+A5qQQhqIg8gAU\ -HoI2pBCGopAwA3AwAgAUH4DmpBIGogAUHoI2pBIGooAgA2AgAgASABKQPoIzcD+A4gAUG4ImpBEGoi\ -BiABQfgOakEUaikCADcDACABQbgiakEIaiILIAFB+A5qQQxqKQIANwMAIAFBuCJqQRhqIgwgAUH4Dm\ -pBHGopAgA3AwAgASABKQL8DjcDuCIgAUGQEmogAUG4EmogAUG4ImoQKCACIAwoAgA2AgAgCiAGKQMA\ -NwMAIA8gCykDADcDACABIAEpA7giNwP4DkEcEBciBkUNHCAGIAEpA/gONwAAIAZBGGogAigCADYAAC\ -AGQRBqIAopAwA3AAAgBkEIaiAPKQMANwAADAkLIAQgBUHwABA6IgFBkBJqIAFB8AAQOhogAUHoI2pB\ -HGpCADcCACABQegjakEUakIANwIAIAFB6CNqQQxqQgA3AgAgAUIANwLsI0EgIQMgAUEgNgLoIyABQf\ -gOakEgaiABQegjakEgaigCADYCACABQfgOakEYaiICIAFB6CNqQRhqKQMANwMAIAFB+A5qQRBqIgog\ -AUHoI2pBEGopAwA3AwAgAUH4DmpBCGoiDyABQegjakEIaikDADcDACABIAEpA+gjNwP4DiABQbgiak\ -EYaiIGIAFB+A5qQRxqKQIANwMAIAFBuCJqQRBqIgsgAUH4DmpBFGopAgA3AwAgAUG4ImpBCGoiDCAB\ -QfgOakEMaikCADcDACABIAEpAvwONwO4IiABQZASaiABQbgSaiABQbgiahAoIAIgBikDADcDACAKIA\ -spAwA3AwAgDyAMKQMANwMAIAEgASkDuCI3A/gOQSAQFyIGRQ0cIAYgASkD+A43AAAgBkEYaiACKQMA\ -NwAAIAZBEGogCikDADcAACAGQQhqIA8pAwA3AAAMCAsgBCAFQdgBEDoiAUGQEmogAUHYARA6GiABQe\ -gjakEMakIANwIAIAFB6CNqQRRqQgA3AgAgAUHoI2pBHGpCADcCACABQegjakEkakIANwIAIAFB6CNq\ -QSxqQgA3AgAgAUHoI2pBNGpCADcCACABQegjakE8akIANwIAIAFCADcC7CMgAUHAADYC6CMgAUH4Dm\ -ogAUHoI2pBxAAQOhogAUHwImogAUH4DmpBPGopAgA3AwBBMCEDIAFBuCJqQTBqIAFB+A5qQTRqKQIA\ -NwMAIAFBuCJqQShqIgYgAUH4DmpBLGopAgA3AwAgAUG4ImpBIGoiAiABQfgOakEkaikCADcDACABQb\ -giakEYaiIKIAFB+A5qQRxqKQIANwMAIAFBuCJqQRBqIg8gAUH4DmpBFGopAgA3AwAgAUG4ImpBCGoi\ -CyABQfgOakEMaikCADcDACABIAEpAvwONwO4IiABQZASaiABQeASaiABQbgiahAjIAFB+A5qQShqIg\ -wgBikDADcDACABQfgOakEgaiINIAIpAwA3AwAgAUH4DmpBGGoiAiAKKQMANwMAIAFB+A5qQRBqIgog\ -DykDADcDACABQfgOakEIaiIPIAspAwA3AwAgASABKQO4IjcD+A5BMBAXIgZFDRwgBiABKQP4DjcAAC\ -AGQShqIAwpAwA3AAAgBkEgaiANKQMANwAAIAZBGGogAikDADcAACAGQRBqIAopAwA3AAAgBkEIaiAP\ -KQMANwAADAcLIAQgBUHYARA6IgFBkBJqIAFB2AEQOhogAUHoI2pBDGpCADcCACABQegjakEUakIANw\ -IAIAFB6CNqQRxqQgA3AgAgAUHoI2pBJGpCADcCACABQegjakEsakIANwIAIAFB6CNqQTRqQgA3AgAg\ -AUHoI2pBPGpCADcCACABQgA3AuwjQcAAIQMgAUHAADYC6CMgAUH4DmogAUHoI2pBxAAQOhogAUG4Im\ -pBOGoiBiABQfgOakE8aikCADcDACABQbgiakEwaiICIAFB+A5qQTRqKQIANwMAIAFBuCJqQShqIgog\ -AUH4DmpBLGopAgA3AwAgAUG4ImpBIGoiDyABQfgOakEkaikCADcDACABQbgiakEYaiILIAFB+A5qQR\ -xqKQIANwMAIAFBuCJqQRBqIgwgAUH4DmpBFGopAgA3AwAgAUG4ImpBCGoiDSABQfgOakEMaikCADcD\ -ACABIAEpAvwONwO4IiABQZASaiABQeASaiABQbgiahAjIAFB+A5qQThqIhAgBikDADcDACABQfgOak\ -EwaiIOIAIpAwA3AwAgAUH4DmpBKGoiAiAKKQMANwMAIAFB+A5qQSBqIgogDykDADcDACABQfgOakEY\ -aiIPIAspAwA3AwAgAUH4DmpBEGoiCyAMKQMANwMAIAFB+A5qQQhqIgwgDSkDADcDACABIAEpA7giNw\ -P4DkHAABAXIgZFDRwgBiABKQP4DjcAACAGQThqIBApAwA3AAAgBkEwaiAOKQMANwAAIAZBKGogAikD\ -ADcAACAGQSBqIAopAwA3AAAgBkEYaiAPKQMANwAAIAZBEGogCykDADcAACAGQQhqIAwpAwA3AAAMBg\ -sgBEH4DmogBUH4AhA6GiADQQBIDQECQAJAIAMNAEEBIQYMAQsgAxAXIgZFDR0gBkF8ai0AAEEDcUUN\ -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\ -tCF4mFfEKXsJ3SxLGGouwAfCIefCELICEgCnwhCiAdIAd8IB58IQcgIiAJfCEJIBsgBnwhBiAcIAh8\ -IQggDCAFfCEFIB8gBHwhBCABQYABaiIBIAJHDQALCyAAIAQ3AzggACAFNwMwIAAgBjcDKCAAIAc3Ay\ -AgACAINwMYIAAgCTcDECAAIAo3AwggACALNwMAIANBgAFqJAAL+FsCDH8FfiMAQYAGayIEJAACQAJA\ -AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAIOAgABAgsgASgCACICQQJ0QbTTwA\ -BqKAIAIQMMEQtBICEFIAEoAgAiAg4YAQ8CDxADDwQFBgYHBwgPCQoLDwwNEBAOAQsgASgCACECDA8L\ -QcAAIQUMDQtBMCEFDAwLQRwhBQwLC0EwIQUMCgtBwAAhBQwJC0EQIQUMCAtBFCEFDAcLQRwhBQwGC0\ -EwIQUMBQtBwAAhBQwEC0EcIQUMAwtBMCEFDAILQcAAIQUMAQtBGCEFCyAFIANGDQBBASEBQTkhA0Gt\ -gcAAIQIMAQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQA\ -JAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAg4YAAEC\ -AwQFBgcICQoLDA0ODxAREhMUFRYaAAsgASgCBCECIARB0ARqQQxqQgA3AgAgBEHQBGpBFGpCADcCAC\ -AEQdAEakEcakIANwIAIARB0ARqQSRqQgA3AgAgBEHQBGpBLGpCADcCACAEQdAEakE0akIANwIAIARB\ -0ARqQTxqQgA3AgAgBEIANwLUBCAEQcAANgLQBCAEQShqIARB0ARqQcQAEDoaIARBoANqQThqIgYgBE\ -EoakE8aikCADcDACAEQaADakEwaiIHIARBKGpBNGopAgA3AwAgBEGgA2pBKGoiCCAEQShqQSxqKQIA\ -NwMAIARBoANqQSBqIgkgBEEoakEkaikCADcDACAEQaADakEYaiIKIARBKGpBHGopAgA3AwAgBEGgA2\ -pBEGoiCyAEQShqQRRqKQIANwMAIARBoANqQQhqIgwgBEEoakEMaikCADcDACAEIAQpAiw3A6ADIAIg\ -AikDQCACQcgBaiIDLQAAIgGtfDcDQCACQcgAaiEFAkAgAUGAAUYNACAFIAFqQQBBgAEgAWsQPBoLQQ\ -AhASADQQA6AAAgAiAFQn8QEiAEQShqQQhqIgUgAkEIaikDACIQNwMAIARBKGpBEGogAkEQaikDACIR\ -NwMAIARBKGpBGGogAkEYaikDACISNwMAIARBKGpBIGogAikDICITNwMAIARBKGpBKGogAkEoaikDAC\ -IUNwMAIAwgEDcDACALIBE3AwAgCiASNwMAIAkgEzcDACAIIBQ3AwAgByACQTBqKQMANwMAIAYgAkE4\ -aikDADcDACAEIAIpAwAiEDcDKCAEIBA3A6ADIAVBwAAQUSACIAVByAAQOhogA0EAOgAAQcAAEBciAk\ -UNGiACIAQpA6ADNwAAIAJBOGogBEGgA2pBOGopAwA3AAAgAkEwaiAEQaADakEwaikDADcAACACQShq\ -IARBoANqQShqKQMANwAAIAJBIGogBEGgA2pBIGopAwA3AAAgAkEYaiAEQaADakEYaikDADcAACACQR\ -BqIARBoANqQRBqKQMANwAAIAJBCGogBEGgA2pBCGopAwA3AABBwAAhAwwyCyABKAIEIQIgBEHQBGpB\ -HGpCADcCACAEQdAEakEUakIANwIAIARB0ARqQQxqQgA3AgAgBEIANwLUBCAEQSA2AtAEIARBKGpBGG\ -oiByAEQdAEakEYaikDADcDACAEQShqQRBqIgggBEHQBGpBEGopAwA3AwAgBEEoakEIaiIDIARB0ARq\ -QQhqKQMANwMAIARBKGpBIGoiCSAEQdAEakEgaigCADYCACAEIAQpA9AENwMoIARBoANqQRBqIgogBE\ -EoakEUaikCADcDACAEQaADakEIaiILIARBKGpBDGopAgA3AwAgBEGgA2pBGGoiDCAEQShqQRxqKQIA\ -NwMAIAQgBCkCLDcDoAMgAiACKQNAIAJByAFqIgUtAAAiAa18NwNAIAJByABqIQYCQCABQYABRg0AIA\ -YgAWpBAEGAASABaxA8GgtBACEBIAVBADoAACACIAZCfxASIAMgAkEIaikDACIQNwMAIAggAkEQaikD\ -ACIRNwMAIAcgAkEYaikDACISNwMAIAkgAikDIDcDACAEQShqQShqIAJBKGopAwA3AwAgCyAQNwMAIA\ -ogETcDACAMIBI3AwAgBCACKQMAIhA3AyggBCAQNwOgAyADQSAQUSACIANByAAQOhogBUEAOgAAQSAQ\ -FyICRQ0aIAIgBCkDoAM3AAAgAkEYaiAEQaADakEYaikDADcAACACQRBqIARBoANqQRBqKQMANwAAIA\ -JBCGogBEGgA2pBCGopAwA3AABBICEDDDELIAEoAgQhAiAEQdAEakEsakIANwIAIARB0ARqQSRqQgA3\ -AgAgBEHQBGpBHGpCADcCACAEQdAEakEUakIANwIAIARB0ARqQQxqQgA3AgAgBEIANwLUBCAEQTA2At\ -AEIARBKGpBKGoiByAEQdAEakEoaikDADcDACAEQShqQSBqIgggBEHQBGpBIGopAwA3AwAgBEEoakEY\ -aiIJIARB0ARqQRhqKQMANwMAIARBKGpBEGoiCiAEQdAEakEQaikDADcDACAEQShqQQhqIgMgBEHQBG\ -pBCGopAwA3AwAgBEEoakEwaiAEQdAEakEwaigCADYCACAEIAQpA9AENwMoIARBoANqQSBqIgsgBEEo\ -akEkaikCADcDACAEQaADakEYaiIMIARBKGpBHGopAgA3AwAgBEGgA2pBEGoiDSAEQShqQRRqKQIANw\ -MAIARBoANqQQhqIg4gBEEoakEMaikCADcDACAEQaADakEoaiIPIARBKGpBLGopAgA3AwAgBCAEKQIs\ -NwOgAyACIAIpA0AgAkHIAWoiBS0AACIBrXw3A0AgAkHIAGohBgJAIAFBgAFGDQAgBiABakEAQYABIA\ -FrEDwaC0EAIQEgBUEAOgAAIAIgBkJ/EBIgAyACQQhqKQMAIhA3AwAgCiACQRBqKQMAIhE3AwAgCSAC\ -QRhqKQMAIhI3AwAgCCACKQMgIhM3AwAgByACQShqKQMAIhQ3AwAgDiAQNwMAIA0gETcDACAMIBI3Aw\ -AgCyATNwMAIA8gFDcDACAEIAIpAwAiEDcDKCAEIBA3A6ADIANBMBBRIAIgA0HIABA6GiAFQQA6AABB\ -MBAXIgJFDRogAiAEKQOgAzcAACACQShqIARBoANqQShqKQMANwAAIAJBIGogBEGgA2pBIGopAwA3AA\ -AgAkEYaiAEQaADakEYaikDADcAACACQRBqIARBoANqQRBqKQMANwAAIAJBCGogBEGgA2pBCGopAwA3\ -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\ -sgASgCBCECIARB0ARqQQxqQgA3AgAgBEHQBGpBFGpCADcCACAEQdAEakEcakIANwIAIARB0ARqQSRq\ -QgA3AgAgBEHQBGpBLGpCADcCACAEQdAEakE0akIANwIAIARB0ARqQTxqQgA3AgAgBEIANwLUBCAEQc\ -AANgLQBCAEQShqIARB0ARqQcQAEDoaIARBoANqQThqIARBKGpBPGopAgA3AwBBMCEDIARBoANqQTBq\ -IARBKGpBNGopAgA3AwAgBEGgA2pBKGoiASAEQShqQSxqKQIANwMAIARBoANqQSBqIgUgBEEoakEkai\ -kCADcDACAEQaADakEYaiIGIARBKGpBHGopAgA3AwAgBEGgA2pBEGoiByAEQShqQRRqKQIANwMAIARB\ -oANqQQhqIgggBEEoakEMaikCADcDACAEIAQpAiw3A6ADIAIgAkHQAGogBEGgA2oQIyAEQShqQShqIg\ -kgASkDADcDACAEQShqQSBqIgogBSkDADcDACAEQShqQRhqIgUgBikDADcDACAEQShqQRBqIgYgBykD\ -ADcDACAEQShqQQhqIgcgCCkDADcDACAEIAQpA6ADNwMoIAJByABqQgA3AwAgAkIANwNAQQAhASACQT\ -hqQQApA6iPQDcDACACQTBqQQApA6CPQDcDACACQShqQQApA5iPQDcDACACQSBqQQApA5CPQDcDACAC\ -QRhqQQApA4iPQDcDACACQRBqQQApA4CPQDcDACACQQhqQQApA/iOQDcDACACQQApA/COQDcDACACQd\ -ABakEAOgAAQTAQFyICRQ0aIAIgBCkDKDcAACACQShqIAkpAwA3AAAgAkEgaiAKKQMANwAAIAJBGGog\ -BSkDADcAACACQRBqIAYpAwA3AAAgAkEIaiAHKQMANwAADB8LIAEoAgQhAiAEQdAEakEMakIANwIAIA\ -RB0ARqQRRqQgA3AgAgBEHQBGpBHGpCADcCACAEQdAEakEkakIANwIAIARB0ARqQSxqQgA3AgAgBEHQ\ -BGpBNGpCADcCACAEQdAEakE8akIANwIAIARCADcC1ARBwAAhAyAEQcAANgLQBCAEQShqIARB0ARqQc\ -QAEDoaIARBoANqQThqIgEgBEEoakE8aikCADcDACAEQaADakEwaiIFIARBKGpBNGopAgA3AwAgBEGg\ -A2pBKGoiBiAEQShqQSxqKQIANwMAIARBoANqQSBqIgcgBEEoakEkaikCADcDACAEQaADakEYaiIIIA\ -RBKGpBHGopAgA3AwAgBEGgA2pBEGoiCSAEQShqQRRqKQIANwMAIARBoANqQQhqIgogBEEoakEMaikC\ -ADcDACAEIAQpAiw3A6ADIAIgAkHQAGogBEGgA2oQIyAEQShqQThqIgsgASkDADcDACAEQShqQTBqIg\ -wgBSkDADcDACAEQShqQShqIgUgBikDADcDACAEQShqQSBqIgYgBykDADcDACAEQShqQRhqIgcgCCkD\ -ADcDACAEQShqQRBqIgggCSkDADcDACAEQShqQQhqIgkgCikDADcDACAEIAQpA6ADNwMoIAJByABqQg\ -A3AwAgAkIANwNAQQAhASACQThqQQApA+iOQDcDACACQTBqQQApA+COQDcDACACQShqQQApA9iOQDcD\ -ACACQSBqQQApA9COQDcDACACQRhqQQApA8iOQDcDACACQRBqQQApA8COQDcDACACQQhqQQApA7iOQD\ -cDACACQQApA7COQDcDACACQdABakEAOgAAQcAAEBciAkUNGiACIAQpAyg3AAAgAkE4aiALKQMANwAA\ -IAJBMGogDCkDADcAACACQShqIAUpAwA3AAAgAkEgaiAGKQMANwAAIAJBGGogBykDADcAACACQRBqIA\ -gpAwA3AAAgAkEIaiAJKQMANwAADB4LIANBAEgNASABKAIEIQcCQAJAIAMNAEEBIQIMAQsgAxAXIgJF\ -DRsgAkF8ai0AAEEDcUUNACACQQAgAxA8GgsgByAHQfACaiIILQAAIgFqQcgBaiEGAkAgAUGoAUYNAC\ -AGQQBBqAEgAWsQPBoLQQAhBSAIQQA6AAAgBkEfOgAAIAdB7wJqIgEgAS0AAEGAAXI6AAADQCAHIAVq\ -IgEgAS0AACABQcgBai0AAHM6AAAgAUEBaiIGIAYtAAAgAUHJAWotAABzOgAAIAFBAmoiBiAGLQAAIA\ -FBygFqLQAAczoAACABQQNqIgYgBi0AACABQcsBai0AAHM6AAAgBUEEaiIFQagBRw0ACyAHECUgBEEo\ -aiAHQcgBEDoaQQAhASAHQQBByAEQPEHwAmpBADoAACAEQQA2AqADIARBoANqQQRyQQBBqAEQPBogBE\ -GoATYCoAMgBEHQBGogBEGgA2pBrAEQOhogBEEoakHIAWogBEHQBGpBBHJBqAEQOhogBEEoakHwAmpB\ -ADoAACAEQShqIAIgAxAzDB0LIANBAEgNACABKAIEIQcgAw0BQQEhAgwCCxBrAAsgAxAXIgJFDRggAk\ -F8ai0AAEEDcUUNACACQQAgAxA8GgsgByAHQdACaiIILQAAIgFqQcgBaiEGAkAgAUGIAUYNACAGQQBB\ -iAEgAWsQPBoLQQAhBSAIQQA6AAAgBkEfOgAAIAdBzwJqIgEgAS0AAEGAAXI6AAADQCAHIAVqIgEgAS\ -0AACABQcgBai0AAHM6AAAgAUEBaiIGIAYtAAAgAUHJAWotAABzOgAAIAFBAmoiBiAGLQAAIAFBygFq\ -LQAAczoAACABQQNqIgYgBi0AACABQcsBai0AAHM6AAAgBUEEaiIFQYgBRw0ACyAHECUgBEEoaiAHQc\ -gBEDoaQQAhASAHQQBByAEQPEHQAmpBADoAACAEQQA2AqADIARBoANqQQRyQQBBiAEQPBogBEGIATYC\ -oAMgBEHQBGogBEGgA2pBjAEQOhogBEEoakHIAWogBEHQBGpBBHJBiAEQOhogBEEoakHQAmpBADoAAC\ -AEQShqIAIgAxA0DBkLIAEoAgQhAiAEQdAEakEUakIANwIAIARB0ARqQQxqQgA3AgAgBEIANwLUBEEY\ -IQMgBEEYNgLQBCAEQShqQRBqIARB0ARqQRBqKQMANwMAIARBKGpBCGogBEHQBGpBCGopAwA3AwAgBE\ -EoakEYaiAEQdAEakEYaigCADYCACAEQaADakEIaiIFIARBKGpBDGopAgA3AwAgBEGgA2pBEGoiBiAE\ -QShqQRRqKQIANwMAIAQgBCkD0AQ3AyggBCAEKQIsNwOgAyACIAJBIGogBEGgA2oQMSACQgA3AwBBAC\ -EBIAJB4ABqQQA6AAAgAkEAKQP4kUA3AwggAkEQakEAKQOAkkA3AwAgAkEYakEAKQOIkkA3AwBBGBAX\ -IgJFDRcgAiAEKQOgAzcAACACQRBqIAYpAwA3AAAgAkEIaiAFKQMANwAADBgLQcAAQQFBACgC+NRAIg\ -RBBCAEGxEFAAALQSBBAUEAKAL41EAiBEEEIAQbEQUAAAtBMEEBQQAoAvjUQCIEQQQgBBsRBQAAC0Eg\ -QQFBACgC+NRAIgRBBCAEGxEFAAALIANBAUEAKAL41EAiBEEEIAQbEQUAAAtBHEEBQQAoAvjUQCIEQQ\ -QgBBsRBQAAC0EgQQFBACgC+NRAIgRBBCAEGxEFAAALQTBBAUEAKAL41EAiBEEEIAQbEQUAAAtBwABB\ -AUEAKAL41EAiBEEEIAQbEQUAAAtBEEEBQQAoAvjUQCIEQQQgBBsRBQAAC0EQQQFBACgC+NRAIgRBBC\ -AEGxEFAAALQRRBAUEAKAL41EAiBEEEIAQbEQUAAAtBFEEBQQAoAvjUQCIEQQQgBBsRBQAAC0EcQQFB\ -ACgC+NRAIgRBBCAEGxEFAAALQSBBAUEAKAL41EAiBEEEIAQbEQUAAAtBMEEBQQAoAvjUQCIEQQQgBB\ -sRBQAAC0HAAEEBQQAoAvjUQCIEQQQgBBsRBQAAC0EcQQFBACgC+NRAIgRBBCAEGxEFAAALQSBBAUEA\ -KAL41EAiBEEEIAQbEQUAAAtBMEEBQQAoAvjUQCIEQQQgBBsRBQAAC0HAAEEBQQAoAvjUQCIEQQQgBB\ -sRBQAACyADQQFBACgC+NRAIgRBBCAEGxEFAAALIANBAUEAKAL41EAiBEEEIAQbEQUAAAtBGEEBQQAo\ -AvjUQCIEQQQgBBsRBQAACyAAIAI2AgQgACABNgIAIABBCGogAzYCACAEQYAGaiQAC5xWAhp/An4jAE\ -GwAmsiAyQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC\ -QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAk\ -ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCAA4YAAECAwQFBgcICQoLDA0O\ -DxAREhMUFRYXAAsgACgCBCIAQcgAaiEEAkBBgAEgAEHIAWotAAAiBWsiBiACTw0AAkAgBUUNACAEIA\ -VqIAEgBhA6GiAAIAApA0BCgAF8NwNAIAAgBEIAEBIgASAGaiEBIAIgBmshAgsgAiACQQd2IgYgAkEA\ -RyACQf8AcUVxIgdrIgVBB3QiCGshAiAFRQ1FIAhFDUUgBkEAIAdrakEHdCEGIAEhBQNAIAAgACkDQE\ -KAAXw3A0AgACAFQgAQEiAFQYABaiEFIAZBgH9qIgYNAAxGCwsgBCAFaiABIAIQOhogBSACaiECDEUL\ -IAAoAgQiAEHIAGohBAJAQYABIABByAFqLQAAIgVrIgYgAk8NAAJAIAVFDQAgBCAFaiABIAYQOhogAC\ -AAKQNAQoABfDcDQCAAIARCABASIAEgBmohASACIAZrIQILIAIgAkEHdiIGIAJBAEcgAkH/AHFFcSIH\ -ayIFQQd0IghrIQIgBUUNQSAIRQ1BIAZBACAHa2pBB3QhBiABIQUDQCAAIAApA0BCgAF8NwNAIAAgBU\ -IAEBIgBUGAAWohBSAGQYB/aiIGDQAMQgsLIAQgBWogASACEDoaIAUgAmohAgxBCyAAKAIEIgBByABq\ -IQQCQEGAASAAQcgBai0AACIFayIGIAJPDQACQCAFRQ0AIAQgBWogASAGEDoaIAAgACkDQEKAAXw3A0\ -AgACAEQgAQEiABIAZqIQEgAiAGayECCyACIAJBB3YiBiACQQBHIAJB/wBxRXEiB2siBUEHdCIIayEC\ -IAVFDT0gCEUNPSAGQQAgB2tqQQd0IQYgASEFA0AgACAAKQNAQoABfDcDQCAAIAVCABASIAVBgAFqIQ\ -UgBkGAf2oiBg0ADD4LCyAEIAVqIAEgAhA6GiAFIAJqIQIMPQsgACgCBCIAQShqIQQCQEHAACAAQegA\ -ai0AACIFayIGIAJPDQACQCAFRQ0AIAQgBWogASAGEDoaIAAgACkDAELAAHw3AwAgACAEQQAQFCABIA\ -ZqIQEgAiAGayECCyACIAJBBnYiBiACQQBHIAJBP3FFcSIHayIFQQZ0IghrIQIgBUUNOSAIRQ05IAZB\ -ACAHa2pBBnQhBiABIQUDQCAAIAApAwBCwAB8NwMAIAAgBUEAEBQgBUHAAGohBSAGQUBqIgYNAAw6Cw\ -sgBCAFaiABIAIQOhogBSACaiECDDkLIAAoAgQiCEHpAGotAABBBnQgCC0AaGoiAEUNNiAIIAEgAkGA\ -CCAAayIAIAAgAksbIgUQNRogAiAFayICRQ1CIANB+ABqQRBqIAhBEGoiACkDADcDACADQfgAakEYai\ -AIQRhqIgYpAwA3AwAgA0H4AGpBIGogCEEgaiIEKQMANwMAIANB+ABqQTBqIAhBMGopAwA3AwAgA0H4\ -AGpBOGogCEE4aikDADcDACADQfgAakHAAGogCEHAAGopAwA3AwAgA0H4AGpByABqIAhByABqKQMANw\ -MAIANB+ABqQdAAaiAIQdAAaikDADcDACADQfgAakHYAGogCEHYAGopAwA3AwAgA0H4AGpB4ABqIAhB\ -4ABqKQMANwMAIAMgCCkDCDcDgAEgAyAIKQMoNwOgASAIQekAai0AACEHIAgtAGohCSADIAgtAGgiCj\ -oA4AEgAyAIKQMAIh03A3ggAyAJIAdFckECciIHOgDhASADQegBakEYaiIJIAQpAgA3AwAgA0HoAWpB\ -EGoiBCAGKQIANwMAIANB6AFqQQhqIgYgACkCADcDACADIAgpAgg3A+gBIANB6AFqIANB+ABqQShqIA\ -ogHSAHEBogCSgCACEHIAQoAgAhBCAGKAIAIQkgAygChAIhCiADKAL8ASELIAMoAvQBIQwgAygC7AEh\ -DSADKALoASEOIAggCCkDABAqIAgoApABIgZBN08NEyAIQZABaiAGQQV0aiIAQSBqIAo2AgAgAEEcai\ -AHNgIAIABBGGogCzYCACAAQRRqIAQ2AgAgAEEQaiAMNgIAIABBDGogCTYCACAAQQhqIA02AgAgAEEE\ -aiAONgIAIAggBkEBajYCkAEgCEEoaiIAQgA3AwAgAEEIakIANwMAIABBEGpCADcDACAAQRhqQgA3Aw\ -AgAEEgakIANwMAIABBKGpCADcDACAAQTBqQgA3AwAgAEE4akIANwMAIAhBADsBaCAIQQhqIgAgCCkD\ -cDcDACAAQQhqIAhB+ABqKQMANwMAIABBEGogCEGAAWopAwA3AwAgAEEYaiAIQYgBaikDADcDACAIIA\ -gpAwBCAXw3AwAgASAFaiEBDDYLIAAoAgQiBEHIAWohCgJAQZABIARB2AJqLQAAIgBrIgggAksNAAJA\ -IABFDQAgCiAAaiABIAgQOhogAiAIayECQQAhBQNAIAQgBWoiACAALQAAIABByAFqLQAAczoAACAAQQ\ -FqIgYgBi0AACAAQckBai0AAHM6AAAgAEECaiIGIAYtAAAgAEHKAWotAABzOgAAIABBA2oiBiAGLQAA\ -IABBywFqLQAAczoAACAFQQRqIgVBkAFHDQALIAQQJSABIAhqIQELIAEgAkGQAW5BkAFsIgBqIQcgAi\ -AAayEJIAJBjwFNDTMgAEUNMwNAIAFBkAFqIQhBACEFA0AgBCAFaiIAIAAtAAAgASAFaiIGLQAAczoA\ -ACAAQQFqIgIgAi0AACAGQQFqLQAAczoAACAAQQJqIgIgAi0AACAGQQJqLQAAczoAACAAQQNqIgAgAC\ -0AACAGQQNqLQAAczoAACAFQQRqIgVBkAFHDQALIAQQJSAIIQEgCCAHRg00DAALCyAKIABqIAEgAhA6\ -GiAAIAJqIQkMMwsgACgCBCIEQcgBaiEKAkBBiAEgBEHQAmotAAAiAGsiCCACSw0AAkAgAEUNACAKIA\ -BqIAEgCBA6GiACIAhrIQJBACEFA0AgBCAFaiIAIAAtAAAgAEHIAWotAABzOgAAIABBAWoiBiAGLQAA\ -IABByQFqLQAAczoAACAAQQJqIgYgBi0AACAAQcoBai0AAHM6AAAgAEEDaiIGIAYtAAAgAEHLAWotAA\ -BzOgAAIAVBBGoiBUGIAUcNAAsgBBAlIAEgCGohAQsgASACQYgBbkGIAWwiAGohByACIABrIQkgAkGH\ -AU0NLyAARQ0vA0AgAUGIAWohCEEAIQUDQCAEIAVqIgAgAC0AACABIAVqIgYtAABzOgAAIABBAWoiAi\ -ACLQAAIAZBAWotAABzOgAAIABBAmoiAiACLQAAIAZBAmotAABzOgAAIABBA2oiACAALQAAIAZBA2ot\ -AABzOgAAIAVBBGoiBUGIAUcNAAsgBBAlIAghASAIIAdGDTAMAAsLIAogAGogASACEDoaIAAgAmohCQ\ -wvCyAAKAIEIgRByAFqIQoCQEHoACAEQbACai0AACIAayIIIAJLDQACQCAARQ0AIAogAGogASAIEDoa\ -IAIgCGshAkEAIQUDQCAEIAVqIgAgAC0AACAAQcgBai0AAHM6AAAgAEEBaiIGIAYtAAAgAEHJAWotAA\ -BzOgAAIABBAmoiBiAGLQAAIABBygFqLQAAczoAACAAQQNqIgYgBi0AACAAQcsBai0AAHM6AAAgBUEE\ -aiIFQegARw0ACyAEECUgASAIaiEBCyABIAJB6ABuQegAbCIAaiEHIAIgAGshCSACQecATQ0rIABFDS\ -sDQCABQegAaiEIQQAhBQNAIAQgBWoiACAALQAAIAEgBWoiBi0AAHM6AAAgAEEBaiICIAItAAAgBkEB\ -ai0AAHM6AAAgAEECaiICIAItAAAgBkECai0AAHM6AAAgAEEDaiIAIAAtAAAgBkEDai0AAHM6AAAgBU\ -EEaiIFQegARw0ACyAEECUgCCEBIAggB0YNLAwACwsgCiAAaiABIAIQOhogACACaiEJDCsLIAAoAgQi\ -BEHIAWohCgJAQcgAIARBkAJqLQAAIgBrIgggAksNAAJAIABFDQAgCiAAaiABIAgQOhogAiAIayECQQ\ -AhBQNAIAQgBWoiACAALQAAIABByAFqLQAAczoAACAAQQFqIgYgBi0AACAAQckBai0AAHM6AAAgAEEC\ -aiIGIAYtAAAgAEHKAWotAABzOgAAIABBA2oiBiAGLQAAIABBywFqLQAAczoAACAFQQRqIgVByABHDQ\ -ALIAQQJSABIAhqIQELIAEgAkHIAG5ByABsIgBqIQcgAiAAayEJIAJBxwBNDScgAEUNJwNAIAFByABq\ -IQhBACEFA0AgBCAFaiIAIAAtAAAgASAFaiIGLQAAczoAACAAQQFqIgIgAi0AACAGQQFqLQAAczoAAC\ -AAQQJqIgIgAi0AACAGQQJqLQAAczoAACAAQQNqIgAgAC0AACAGQQNqLQAAczoAACAFQQRqIgVByABH\ -DQALIAQQJSAIIQEgCCAHRg0oDAALCyAKIABqIAEgAhA6GiAAIAJqIQkMJwsgACgCBCIGQRhqIQQCQE\ -HAACAGQdgAai0AACIAayIFIAJLDQACQCAARQ0AIAQgAGogASAFEDoaIAYgBikDAEIBfDcDACAGQQhq\ -IAQQICABIAVqIQEgAiAFayECCyACQT9xIQggASACQUBxaiEHIAJBP00NJCAGIAYpAwAgAkEGdiIArX\ -w3AwAgAEEGdEUNJCAGQQhqIQUgAEEGdCEAA0AgBSABECAgAUHAAGohASAAQUBqIgANAAwlCwsgBCAA\ -aiABIAIQOhogACACaiEIDCQLIAMgACgCBCIANgIIIABBGGohBiAAQdgAai0AACEFIAMgA0EIajYCeA\ -JAAkBBwAAgBWsiBCACSw0AAkAgBUUNACAGIAVqIAEgBBA6GiADQfgAaiAGQQEQHCABIARqIQEgAiAE\ -ayECCyACQT9xIQUgASACQUBxaiEEAkAgAkE/Sw0AIAYgBCAFEDoaDAILIANB+ABqIAEgAkEGdhAcIA\ -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\ -KQASEOIAMoAowBIRcgAygCiAEhGCADKAKEASEZIAMoAoABIRogAygCfCEbIAMoAnghHCAIIAgpAwAQ\ -KiAIKAKQASIGQTdPDQggDSAGQQV0aiIFIAc2AhwgBSAONgIYIAUgFzYCFCAFIBg2AhAgBSAZNgIMIA\ -UgGjYCCCAFIBs2AgQgBSAcNgIAIAggBkEBajYCkAEgCCAIKQMAIB1CAYh8ECogCCgCkAEiBkE3Tw0J\ -IA0gBkEFdGoiBSAPNgIcIAUgEDYCGCAFIBE2AhQgBSASNgIQIAUgEzYCDCAFIBQ2AgggBSAVNgIEIA\ -UgFjYCACAIIAZBAWo2ApABDAELIAlCADcDACAJQQhqIg5CADcDACAJQRBqIhdCADcDACAJQRhqIhhC\ -ADcDACAJQSBqIhlCADcDACAJQShqIhpCADcDACAJQTBqIhtCADcDACAJQThqIhxCADcDACALIAQpAw\ -A3AwAgC0EIaiIFIARBCGopAwA3AwAgC0EQaiIGIARBEGopAwA3AwAgC0EYaiIHIARBGGopAwA3AwAg\ -A0EAOwHgASADIB43A3ggAyAILQBqOgDiASADQfgAaiABIAAQNRogDCALKQMANwMAIAxBCGogBSkDAD\ -cDACAMQRBqIAYpAwA3AwAgDEEYaiAHKQMANwMAIAogCSkDADcDACAKQQhqIA4pAwA3AwAgCkEQaiAX\ -KQMANwMAIApBGGogGCkDADcDACAKQSBqIBkpAwA3AwAgCkEoaiAaKQMANwMAIApBMGogGykDADcDAC\ -AKQThqIBwpAwA3AwAgAy0A4gEhDiADLQDhASEXIAMgAy0A4AEiGDoAcCADIAMpA3giHjcDCCADIA4g\ -F0VyQQJyIg46AHEgA0HoAWpBGGoiFyAHKQIANwMAIANB6AFqQRBqIgcgBikCADcDACADQegBakEIai\ -IGIAUpAgA3AwAgAyALKQIANwPoASADQegBaiAKIBggHiAOEBogFygCACEOIAcoAgAhByAGKAIAIRcg\ -AygChAIhGCADKAL8ASEZIAMoAvQBIRogAygC7AEhGyADKALoASEcIAggCCkDABAqIAgoApABIgZBN0\ -8NCSANIAZBBXRqIgUgGDYCHCAFIA42AhggBSAZNgIUIAUgBzYCECAFIBo2AgwgBSAXNgIIIAUgGzYC\ -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\ -8gIHNBEHciICAyaiImIBdzQRR3IhcgH2ogFGoiHyAgc0EYdyIgICZqIiZqIjIgGnNBFHciGiAwamoi\ -MCAqc0EYdyIqIDJqIjIgGnNBGXciGiAHIDEgJiAXc0EZdyIXaiAKaiImICIgKHNBGHciInNBEHciKC\ -AhIClqIiFqIikgF3NBFHciFyAmamoiJmpqIjEgDyAhIBhzQRl3IhggH2pqIh8gLnNBEHciISAiICdq\ -IiJqIicgGHNBFHciGCAfaiADaiIfICFzQRh3IiFzQRB3Ii4gDiAIICIgGXNBGXciGSAeamoiHiAgc0\ -EQdyIgIC9qIiIgGXNBFHciGSAeamoiHiAgc0EYdyIgICJqIiJqIi8gGnNBFHciGiAxaiAKaiIxIC5z\ -QRh3Ii4gL2oiLyAac0EZdyIaIAggMCAiIBlzQRl3IhlqIBRqIiIgJiAoc0EYdyImc0EQdyIoICEgJ2\ -oiIWoiJyAZc0EUdyIZICJqaiIiamoiMCANIAsgHiAhIBhzQRl3IhhqaiIeICpzQRB3IiEgJiApaiIm\ -aiIpIBhzQRR3IhggHmpqIh4gIXNBGHciIXNBEHciKiAOICYgF3NBGXciFyAfaiAJaiIfICBzQRB3Ii\ -AgMmoiJiAXc0EUdyIXIB9qaiIfICBzQRh3IiAgJmoiJmoiMiAac0EUdyIaIDBqaiIwICpzQRh3Iiog\ -MmoiMiAac0EZdyIaIAwgMSAmIBdzQRl3IhdqIANqIiYgIiAoc0EYdyIic0EQdyIoICEgKWoiIWoiKS\ -AXc0EUdyIXICZqaiImaiAGaiIxIAcgISAYc0EZdyIYIB9qIAZqIh8gLnNBEHciISAiICdqIiJqIicg\ -GHNBFHciGCAfamoiHyAhc0EYdyIhc0EQdyIuIAUgIiAZc0EZdyIZIB5qaiIeICBzQRB3IiAgL2oiIi\ -AZc0EUdyIZIB5qIAJqIh4gIHNBGHciICAiaiIiaiIvIBpzQRR3IhogMWpqIjEgLnNBGHciLiAvaiIv\ -IBpzQRl3IhogByAPIDAgIiAZc0EZdyIZamoiIiAmIChzQRh3IiZzQRB3IiggISAnaiIhaiInIBlzQR\ -R3IhkgImpqIiJqaiIwIAEgHiAhIBhzQRl3IhhqIANqIh4gKnNBEHciISAmIClqIiZqIikgGHNBFHci\ -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\ -D8B3FyIAJBCHZBgP4DcSACQRh2cnIiAjYCNCADIAFBOGooAAAiF0EYdCAXQQh0QYCA/AdxciAXQQh2\ -QYD+A3EgF0EYdnJyIhc2AjggAyABQTxqKAAAIhhBGHQgGEEIdEGAgPwHcXIgGEEIdkGA/gNxIBhBGH\ -ZyciIYNgI8IAggEyAKcyAYcyAMIBBzIBVzIBEgDnMgE3MgF3NBAXciGXNBAXciGnNBAXciGyAKIBJz\ -IAJzIBAgD3MgFHMgGHNBAXciHHNBAXciHXMgGCACcyAdcyAVIBRzIBxzIBtzQQF3Ih5zQQF3Ih9zIB\ -ogHHMgHnMgGSAYcyAbcyAXIBVzIBpzIBYgE3MgGXMgCyAMcyAXcyASIBFzIBZzIA8gDXMgC3MgAnNB\ -AXciIHNBAXciIXNBAXciInNBAXciI3NBAXciJHNBAXciJXNBAXciJnNBAXciJyAdICFzIAIgFnMgIX\ -MgFCALcyAgcyAdc0EBdyIoc0EBdyIpcyAcICBzIChzIB9zQQF3IipzQQF3IitzIB8gKXMgK3MgHiAo\ -cyAqcyAnc0EBdyIsc0EBdyItcyAmICpzICxzICUgH3MgJ3MgJCAecyAmcyAjIBtzICVzICIgGnMgJH\ -MgISAZcyAjcyAgIBdzICJzIClzQQF3Ii5zQQF3Ii9zQQF3IjBzQQF3IjFzQQF3IjJzQQF3IjNzQQF3\ -IjRzQQF3IjUgKyAvcyApICNzIC9zICggInMgLnMgK3NBAXciNnNBAXciN3MgKiAucyA2cyAtc0EBdy\ -I4c0EBdyI5cyAtIDdzIDlzICwgNnMgOHMgNXNBAXciOnNBAXciO3MgNCA4cyA6cyAzIC1zIDVzIDIg\ -LHMgNHMgMSAncyAzcyAwICZzIDJzIC8gJXMgMXMgLiAkcyAwcyA3c0EBdyI8c0EBdyI9c0EBdyI+c0\ -EBdyI/c0EBdyJAc0EBdyJBc0EBdyJCc0EBdyJDIDkgPXMgNyAxcyA9cyA2IDBzIDxzIDlzQQF3IkRz\ -QQF3IkVzIDggPHMgRHMgO3NBAXciRnNBAXciR3MgOyBFcyBHcyA6IERzIEZzIENzQQF3IkhzQQF3Ik\ -lzIEIgRnMgSHMgQSA7cyBDcyBAIDpzIEJzID8gNXMgQXMgPiA0cyBAcyA9IDNzID9zIDwgMnMgPnMg\ -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\ -QCAEQQA6ANABIARBACkDsI5ANwMAIARBCGpBACkDuI5ANwMAIARBEGpBACkDwI5ANwMAIARBGGpBAC\ -kDyI5ANwMAIARBIGpBACkD0I5ANwMAIARBKGpBACkD2I5ANwMAIARBMGpBACkD4I5ANwMAIARBOGpB\ -ACkD6I5ANwMAQRQhBQwjC0HwABAXIgRFDQwgAkGwAWpBCGoQWCAEQSBqIAJB2AFqKQMANwMAIARBGG\ -ogAkGwAWpBIGopAwA3AwAgBEEQaiACQbABakEYaikDADcDACAEQQhqIAJBsAFqQRBqKQMANwMAIAQg\ -AikDuAE3AwAgAkEMakIANwIAIAJBFGpCADcCACACQRxqQgA3AgAgAkEkakIANwIAIAJBLGpCADcCAC\ -ACQTRqQgA3AgAgAkE8akIANwIAIAJCADcCBCACQcAANgIAIAJBsAFqIAJBxAAQOhogBEHgAGogAkGw\ -AWpBPGopAgA3AAAgBEHYAGogAkGwAWpBNGopAgA3AAAgBEHQAGogAkGwAWpBLGopAgA3AAAgBEHIAG\ -ogAkGwAWpBJGopAgA3AAAgBEHAAGogAkGwAWpBHGopAgA3AAAgBEE4aiACQbABakEUaikCADcAACAE\ -QTBqIAJBsAFqQQxqKQIANwAAIAQgAikCtAE3ACggBEEAOgBoQQMhBQwiCwJAAkACQAJAIANBuoDAAE\ -EKEFNFDQAgA0HEgMAAQQoQU0UNASADQc6AwABBChBTRQ0CIANB2IDAAEEKEFNFDQMgA0HogMAAQQoQ\ -Uw0MQegAEBciBEUNFiACQQxqQgA3AgAgAkEUakIANwIAIAJBHGpCADcCACACQSRqQgA3AgAgAkEsak\ -IANwIAIAJBNGpCADcCACACQTxqQgA3AgAgAkIANwIEIAJBwAA2AgAgAkGwAWogAkHEABA6GiAEQdgA\ -aiACQbABakE8aikCADcAACAEQdAAaiACQbABakE0aikCADcAACAEQcgAaiACQbABakEsaikCADcAAC\ -AEQcAAaiACQbABakEkaikCADcAACAEQThqIAJBsAFqQRxqKQIANwAAIARBMGogAkGwAWpBFGopAgA3\ -AAAgBEEoaiACQbABakEMaikCADcAACAEIAIpArQBNwAgIARCADcDACAEQQA6AGAgBEEAKQPYjUA3Aw\ -ggBEEQakEAKQPgjUA3AwAgBEEYakEAKALojUA2AgBBCyEFDCULQeACEBciBEUNDyAEQQBByAEQPCEF\ -IAJBADYCACACQQRyQQBBkAEQPBogAkGQATYCACACQbABaiACQZQBEDoaIAVByAFqIAJBsAFqQQRyQZ\ -ABEDoaIAVBADoA2AJBBSEFDCQLQdgCEBciBEUNDyAEQQBByAEQPCEFIAJBADYCACACQQRyQQBBiAEQ\ -PBogAkGIATYCACACQbABaiACQYwBEDoaIAVByAFqIAJBsAFqQQRyQYgBEDoaIAVBADoA0AJBBiEFDC\ -MLQbgCEBciBEUNDyAEQQBByAEQPCEFIAJBADYCACACQQRyQQBB6AAQPBogAkHoADYCACACQbABaiAC\ -QewAEDoaIAVByAFqIAJBsAFqQQRyQegAEDoaIAVBADoAsAJBByEFDCILQZgCEBciBEUNDyAEQQBByA\ -EQPCEFIAJBADYCACACQQRyQQBByAAQPBogAkHIADYCACACQbABaiACQcwAEDoaIAVByAFqIAJBsAFq\ -QQRyQcgAEDoaIAVBADoAkAJBCCEFDCELAkAgA0HigMAAQQMQU0UNACADQeWAwABBAxBTDQhB4AAQFy\ -IERQ0RIAJBDGpCADcCACACQRRqQgA3AgAgAkEcakIANwIAIAJBJGpCADcCACACQSxqQgA3AgAgAkE0\ -akIANwIAIAJBPGpCADcCACACQgA3AgQgAkHAADYCACACQbABaiACQcQAEDoaIARB0ABqIAJBsAFqQT\ -xqKQIANwAAIARByABqIAJBsAFqQTRqKQIANwAAIARBwABqIAJBsAFqQSxqKQIANwAAIARBOGogAkGw\ -AWpBJGopAgA3AAAgBEEwaiACQbABakEcaikCADcAACAEQShqIAJBsAFqQRRqKQIANwAAIARBIGogAk\ -GwAWpBDGopAgA3AAAgBCACKQK0ATcAGCAEQv6568XpjpWZEDcDECAEQoHGlLqW8ermbzcDCCAEQgA3\ -AwAgBEEAOgBYQQohBQwhC0HgABAXIgRFDQ8gAkEMakIANwIAIAJBFGpCADcCACACQRxqQgA3AgAgAk\ -EkakIANwIAIAJBLGpCADcCACACQTRqQgA3AgAgAkE8akIANwIAIAJCADcCBCACQcAANgIAIAJBsAFq\ -IAJBxAAQOhogBEHQAGogAkGwAWpBPGopAgA3AAAgBEHIAGogAkGwAWpBNGopAgA3AAAgBEHAAGogAk\ -GwAWpBLGopAgA3AAAgBEE4aiACQbABakEkaikCADcAACAEQTBqIAJBsAFqQRxqKQIANwAAIARBKGog\ -AkGwAWpBFGopAgA3AAAgBEEgaiACQbABakEMaikCADcAACAEIAIpArQBNwAYIARC/rnrxemOlZkQNw\ -MQIARCgcaUupbx6uZvNwMIIARCADcDACAEQQA6AFhBCSEFDCALAkACQAJAAkAgAykAAELTkIWa08WM\ -mTRRDQAgAykAAELTkIWa08XMmjZRDQEgAykAAELTkIWa0+WMnDRRDQIgAykAAELTkIWa06XNmDJRDQ\ -MgAykAAELTkIXa1KiMmThRDQcgAykAAELTkIXa1MjMmjZSDQpB2AIQFyIERQ0eIARBAEHIARA8IQUg\ -AkEANgIAIAJBBHJBAEGIARA8GiACQYgBNgIAIAJBsAFqIAJBjAEQOhogBUHIAWogAkGwAWpBBHJBiA\ -EQOhogBUEAOgDQAkEWIQUMIwtB4AIQFyIERQ0UIARBAEHIARA8IQUgAkEANgIAIAJBBHJBAEGQARA8\ -GiACQZABNgIAIAJBsAFqIAJBlAEQOhogBUHIAWogAkGwAWpBBHJBkAEQOhogBUEAOgDYAkENIQUMIg\ -tB2AIQFyIERQ0UIARBAEHIARA8IQUgAkEANgIAIAJBBHJBAEGIARA8GiACQYgBNgIAIAJBsAFqIAJB\ -jAEQOhogBUHIAWogAkGwAWpBBHJBiAEQOhogBUEAOgDQAkEOIQUMIQtBuAIQFyIERQ0UIARBAEHIAR\ -A8IQUgAkEANgIAIAJBBHJBAEHoABA8GiACQegANgIAIAJBsAFqIAJB7AAQOhogBUHIAWogAkGwAWpB\ -BHJB6AAQOhogBUEAOgCwAkEPIQUMIAtBmAIQFyIERQ0UIARBAEHIARA8IQUgAkEANgIAIAJBBHJBAE\ -HIABA8GiACQcgANgIAIAJBsAFqIAJBzAAQOhogBUHIAWogAkGwAWpBBHJByAAQOhogBUEAOgCQAkEQ\ -IQUMHwtB8AAQFyIERQ0UIAJBDGpCADcCACACQRRqQgA3AgAgAkEcakIANwIAIAJBJGpCADcCACACQS\ -xqQgA3AgAgAkE0akIANwIAIAJBPGpCADcCACACQgA3AgQgAkHAADYCACACQbABaiACQcQAEDoaIARB\ -4ABqIAJBsAFqQTxqKQIANwAAIARB2ABqIAJBsAFqQTRqKQIANwAAIARB0ABqIAJBsAFqQSxqKQIANw\ -AAIARByABqIAJBsAFqQSRqKQIANwAAIARBwABqIAJBsAFqQRxqKQIANwAAIARBOGogAkGwAWpBFGop\ -AgA3AAAgBEEwaiACQbABakEMaikCADcAACAEIAIpArQBNwAoIARCADcDACAEQQA6AGggBEEAKQOQjk\ -A3AwggBEEQakEAKQOYjkA3AwAgBEEYakEAKQOgjkA3AwAgBEEgakEAKQOojkA3AwBBESEFDB4LQfAA\ -EBciBEUNFCACQQxqQgA3AgAgAkEUakIANwIAIAJBHGpCADcCACACQSRqQgA3AgAgAkEsakIANwIAIA\ -JBNGpCADcCACACQTxqQgA3AgAgAkIANwIEIAJBwAA2AgAgAkGwAWogAkHEABA6GiAEQeAAaiACQbAB\ -akE8aikCADcAACAEQdgAaiACQbABakE0aikCADcAACAEQdAAaiACQbABakEsaikCADcAACAEQcgAai\ -ACQbABakEkaikCADcAACAEQcAAaiACQbABakEcaikCADcAACAEQThqIAJBsAFqQRRqKQIANwAAIARB\ -MGogAkGwAWpBDGopAgA3AAAgBCACKQK0ATcAKCAEQgA3AwAgBEEAOgBoIARBACkD8I1ANwMIIARBEG\ -pBACkD+I1ANwMAIARBGGpBACkDgI5ANwMAIARBIGpBACkDiI5ANwMAQRIhBQwdC0HYARAXIgRFDRQg\ -AkEANgIAIAJBBHJBAEGAARA8GiACQYABNgIAIAJBsAFqIAJBhAEQOhogBEHQAGogAkGwAWpBBHJBgA\ -EQOhogBEHIAGpCADcDACAEQgA3A0AgBEEAOgDQASAEQQApA/COQDcDACAEQQhqQQApA/iOQDcDACAE\ -QRBqQQApA4CPQDcDACAEQRhqQQApA4iPQDcDACAEQSBqQQApA5CPQDcDACAEQShqQQApA5iPQDcDAC\ -AEQTBqQQApA6CPQDcDACAEQThqQQApA6iPQDcDAEETIQUMHAtB+AIQFyIERQ0VIARBAEHIARA8IQUg\ -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\ -H///8HSw0AIAJBBiACQQh2ZyIBa3ZBAXEgAUEBdGtBPmohAQsgAEIANwMQIAAgATYCHCABQQJ0QZTX\ -wABqIQUCQAJAAkACQAJAQQAoAojVQCIHQQEgAXQiCHFFDQAgBSgCACIHKAIEQXhxIAJHDQEgByEBDA\ -ILQQAgByAIcjYCiNVAIAUgADYCACAAIAU2AhgMAwsgAkEAQRkgAUEBdmtBH3EgAUEfRht0IQUDQCAH\ -IAVBHXZBBHFqQRBqIggoAgAiAUUNAiAFQQF0IQUgASEHIAEoAgRBeHEgAkcNAAsLIAEoAggiAiAANg\ -IMIAEgADYCCCAAQQA2AhggACABNgIMIAAgAjYCCAwDCyAIIAA2AgAgACAHNgIYCyAAIAA2AgwgACAA\ -NgIIDAELIAJBA3YiAUEDdEGM1cAAaiECAkACQEEAKAKE1UAiBUEBIAF0IgFxRQ0AIAIoAgghAQwBC0\ -EAIAUgAXI2AoTVQCACIQELIAIgADYCCCABIAA2AgwgACACNgIMIAAgATYCCAsgBkEIag8LQQBB/x82\ -AsTYQEEAIAg2ArDYQEEAIAY2AqzYQEEAQYzVwAA2ApjVQEEAQZTVwAA2AqDVQEEAQYzVwAA2ApTVQE\ -EAQZzVwAA2AqjVQEEAQZTVwAA2ApzVQEEAQaTVwAA2ArDVQEEAQZzVwAA2AqTVQEEAQazVwAA2ArjV\ -QEEAQaTVwAA2AqzVQEEAQbTVwAA2AsDVQEEAQazVwAA2ArTVQEEAQbzVwAA2AsjVQEEAQbTVwAA2Ar\ -zVQEEAQcTVwAA2AtDVQEEAQbzVwAA2AsTVQEEAQQA2ArjYQEEAQczVwAA2AtjVQEEAQcTVwAA2AszV\ -QEEAQczVwAA2AtTVQEEAQdTVwAA2AuDVQEEAQdTVwAA2AtzVQEEAQdzVwAA2AujVQEEAQdzVwAA2Au\ -TVQEEAQeTVwAA2AvDVQEEAQeTVwAA2AuzVQEEAQezVwAA2AvjVQEEAQezVwAA2AvTVQEEAQfTVwAA2\ -AoDWQEEAQfTVwAA2AvzVQEEAQfzVwAA2AojWQEEAQfzVwAA2AoTWQEEAQYTWwAA2ApDWQEEAQYTWwA\ -A2AozWQEEAQYzWwAA2ApjWQEEAQZTWwAA2AqDWQEEAQYzWwAA2ApTWQEEAQZzWwAA2AqjWQEEAQZTW\ -wAA2ApzWQEEAQaTWwAA2ArDWQEEAQZzWwAA2AqTWQEEAQazWwAA2ArjWQEEAQaTWwAA2AqzWQEEAQb\ -TWwAA2AsDWQEEAQazWwAA2ArTWQEEAQbzWwAA2AsjWQEEAQbTWwAA2ArzWQEEAQcTWwAA2AtDWQEEA\ -QbzWwAA2AsTWQEEAQczWwAA2AtjWQEEAQcTWwAA2AszWQEEAQdTWwAA2AuDWQEEAQczWwAA2AtTWQE\ -EAQdzWwAA2AujWQEEAQdTWwAA2AtzWQEEAQeTWwAA2AvDWQEEAQdzWwAA2AuTWQEEAQezWwAA2AvjW\ -QEEAQeTWwAA2AuzWQEEAQfTWwAA2AoDXQEEAQezWwAA2AvTWQEEAQfzWwAA2AojXQEEAQfTWwAA2Av\ -zWQEEAQYTXwAA2ApDXQEEAQfzWwAA2AoTXQEEAIAY2AqDYQEEAQYTXwAA2AozXQEEAIAhBWGoiADYC\ -mNhAIAYgAEEBcjYCBCAIIAZqQVxqQSg2AgBBAEGAgIABNgK82EALQQAhAUEAKAKY2EAiACACTQ0AQQ\ -AgACACayIBNgKY2EBBAEEAKAKg2EAiACACaiIFNgKg2EAgBSABQQFyNgIEIAAgAkEDcjYCBCAAQQhq\ -DwsgAQu5JQIDfx5+IwBBwABrIgNBOGpCADcDACADQTBqQgA3AwAgA0EoakIANwMAIANBIGpCADcDAC\ -ADQRhqQgA3AwAgA0EQakIANwMAIANBCGpCADcDACADQgA3AwACQCACRQ0AIAEgAkEGdGohBCAAKQMQ\ -IQYgACkDCCEHIAApAwAhCANAIAMgAUEYaikAACIJIAEpAAAiCiABQThqKQAAIgtC2rTp0qXLlq3aAI\ -V8QgF8IgwgAUEIaikAACINhSIOIAFBEGopAAAiD3wiECAOQn+FQhOGhX0iESABQSBqKQAAIhKFIhMg\ -DiABQTBqKQAAIhQgEyABQShqKQAAIhV8IhYgE0J/hUIXiIV9IhcgC4UiEyAMfCIYIBNCf4VCE4aFfS\ -IZIBCFIhAgEXwiGiAQQn+FQheIhX0iGyAWhSIWIBd8IhcgGiAYIBMgF0KQ5NCyh9Ou7n6FfEIBfCIc\ -Qtq06dKly5at2gCFfEIBfCIRIBmFIg4gEHwiHSAOQn+FQhOGhX0iHiAbhSITIBZ8Ih8gE0J/hUIXiI\ -V9IiAgHIUiDCARfCIhNwMAIAMgDiAhIAxCf4VCE4aFfSIiNwMIIAMgIiAdhSIRNwMQIAMgESAefCId\ -NwMYIAMgEyAdIBFCf4VCF4iFfSIeNwMgIAMgHiAfhSIfNwMoIAMgHyAgfCIgNwMwIAMgDCAgQpDk0L\ -KH067ufoV8QgF8IiM3AzggGCAUIBIgDyAKIAaFIg6nIgJBFXZB+A9xQcCywABqKQMAIAJBBXZB+A9x\ -QcDCwABqKQMAhSAOQiiIp0H/AXFBA3RBwKLAAGopAwCFIA5COIinQQN0QcCSwABqKQMAhSAHfEIFfi\ -ANIAggAkENdkH4D3FBwKLAAGopAwAgAkH/AXFBA3RBwJLAAGopAwCFIA5CIIinQf8BcUEDdEHAssAA\ -aikDAIUgDkIwiKdB/wFxQQN0QcDCwABqKQMAhX2FIhOnIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQ\ -N0QcCSwABqKQMAhSATQiCIp0H/AXFBA3RBwLLAAGopAwCFIBNCMIinQf8BcUEDdEHAwsAAaikDAIV9\ -hSIMpyIFQRV2QfgPcUHAssAAaikDACAFQQV2QfgPcUHAwsAAaikDAIUgDEIoiKdB/wFxQQN0QcCiwA\ -BqKQMAhSAMQjiIp0EDdEHAksAAaikDAIUgE3xCBX4gCSACQRV2QfgPcUHAssAAaikDACACQQV2QfgP\ -cUHAwsAAaikDAIUgE0IoiKdB/wFxQQN0QcCiwABqKQMAhSATQjiIp0EDdEHAksAAaikDAIUgDnxCBX\ -4gBUENdkH4D3FBwKLAAGopAwAgBUH/AXFBA3RBwJLAAGopAwCFIAxCIIinQf8BcUEDdEHAssAAaikD\ -AIUgDEIwiKdB/wFxQQN0QcDCwABqKQMAhX2FIg6nIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQN0Qc\ -CSwABqKQMAhSAOQiCIp0H/AXFBA3RBwLLAAGopAwCFIA5CMIinQf8BcUEDdEHAwsAAaikDAIV9hSIT\ -pyIFQRV2QfgPcUHAssAAaikDACAFQQV2QfgPcUHAwsAAaikDAIUgE0IoiKdB/wFxQQN0QcCiwABqKQ\ -MAhSATQjiIp0EDdEHAksAAaikDAIUgDnxCBX4gFSACQRV2QfgPcUHAssAAaikDACACQQV2QfgPcUHA\ -wsAAaikDAIUgDkIoiKdB/wFxQQN0QcCiwABqKQMAhSAOQjiIp0EDdEHAksAAaikDAIUgDHxCBX4gBU\ -ENdkH4D3FBwKLAAGopAwAgBUH/AXFBA3RBwJLAAGopAwCFIBNCIIinQf8BcUEDdEHAssAAaikDAIUg\ -E0IwiKdB/wFxQQN0QcDCwABqKQMAhX2FIg6nIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQN0QcCSwA\ -BqKQMAhSAOQiCIp0H/AXFBA3RBwLLAAGopAwCFIA5CMIinQf8BcUEDdEHAwsAAaikDAIV9hSIMpyIF\ -QRV2QfgPcUHAssAAaikDACAFQQV2QfgPcUHAwsAAaikDAIUgDEIoiKdB/wFxQQN0QcCiwABqKQMAhS\ -AMQjiIp0EDdEHAksAAaikDAIUgDnxCBX4gCyACQRV2QfgPcUHAssAAaikDACACQQV2QfgPcUHAwsAA\ -aikDAIUgDkIoiKdB/wFxQQN0QcCiwABqKQMAhSAOQjiIp0EDdEHAksAAaikDAIUgE3xCBX4gBUENdk\ -H4D3FBwKLAAGopAwAgBUH/AXFBA3RBwJLAAGopAwCFIAxCIIinQf8BcUEDdEHAssAAaikDAIUgDEIw\ -iKdB/wFxQQN0QcDCwABqKQMAhX2FIg6nIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQN0QcCSwABqKQ\ -MAhSAOQiCIp0H/AXFBA3RBwLLAAGopAwCFIA5CMIinQf8BcUEDdEHAwsAAaikDAIV9hSITpyIFQRV2\ -QfgPcUHAssAAaikDACAFQQV2QfgPcUHAwsAAaikDAIUgE0IoiKdB/wFxQQN0QcCiwABqKQMAhSATQj\ -iIp0EDdEHAksAAaikDAIUgDnxCB34gAkEVdkH4D3FBwLLAAGopAwAgAkEFdkH4D3FBwMLAAGopAwCF\ -IA5CKIinQf8BcUEDdEHAosAAaikDAIUgDkI4iKdBA3RBwJLAAGopAwCFIAx8QgV+IAVBDXZB+A9xQc\ -CiwABqKQMAIAVB/wFxQQN0QcCSwABqKQMAhSATQiCIp0H/AXFBA3RBwLLAAGopAwCFIBNCMIinQf8B\ -cUEDdEHAwsAAaikDAIV9IBmFIg6nIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQN0QcCSwABqKQMAhS\ -AOQiCIp0H/AXFBA3RBwLLAAGopAwCFIA5CMIinQf8BcUEDdEHAwsAAaikDAIV9IBCFIgynIgVBFXZB\ -+A9xQcCywABqKQMAIAVBBXZB+A9xQcDCwABqKQMAhSAMQiiIp0H/AXFBA3RBwKLAAGopAwCFIAxCOI\ -inQQN0QcCSwABqKQMAhSAOfEIHfiACQRV2QfgPcUHAssAAaikDACACQQV2QfgPcUHAwsAAaikDAIUg\ -DkIoiKdB/wFxQQN0QcCiwABqKQMAhSAOQjiIp0EDdEHAksAAaikDAIUgE3xCB34gBUENdkH4D3FBwK\ -LAAGopAwAgBUH/AXFBA3RBwJLAAGopAwCFIAxCIIinQf8BcUEDdEHAssAAaikDAIUgDEIwiKdB/wFx\ -QQN0QcDCwABqKQMAhX0gGoUiDqciAkENdkH4D3FBwKLAAGopAwAgAkH/AXFBA3RBwJLAAGopAwCFIA\ -5CIIinQf8BcUEDdEHAssAAaikDAIUgDkIwiKdB/wFxQQN0QcDCwABqKQMAhX0gG4UiE6ciBUEVdkH4\ -D3FBwLLAAGopAwAgBUEFdkH4D3FBwMLAAGopAwCFIBNCKIinQf8BcUEDdEHAosAAaikDAIUgE0I4iK\ -dBA3RBwJLAAGopAwCFIA58Qgd+IAJBFXZB+A9xQcCywABqKQMAIAJBBXZB+A9xQcDCwABqKQMAhSAO\ -QiiIp0H/AXFBA3RBwKLAAGopAwCFIA5COIinQQN0QcCSwABqKQMAhSAMfEIHfiAFQQ12QfgPcUHAos\ -AAaikDACAFQf8BcUEDdEHAksAAaikDAIUgE0IgiKdB/wFxQQN0QcCywABqKQMAhSATQjCIp0H/AXFB\ -A3RBwMLAAGopAwCFfSAWhSIOpyICQQ12QfgPcUHAosAAaikDACACQf8BcUEDdEHAksAAaikDAIUgDk\ -IgiKdB/wFxQQN0QcCywABqKQMAhSAOQjCIp0H/AXFBA3RBwMLAAGopAwCFfSAXhSIMpyIFQRV2QfgP\ -cUHAssAAaikDACAFQQV2QfgPcUHAwsAAaikDAIUgDEIoiKdB/wFxQQN0QcCiwABqKQMAhSAMQjiIp0\ -EDdEHAksAAaikDAIUgDnxCB34gAkEVdkH4D3FBwLLAAGopAwAgAkEFdkH4D3FBwMLAAGopAwCFIA5C\ -KIinQf8BcUEDdEHAosAAaikDAIUgDkI4iKdBA3RBwJLAAGopAwCFIBN8Qgd+IAVBDXZB+A9xQcCiwA\ -BqKQMAIAVB/wFxQQN0QcCSwABqKQMAhSAMQiCIp0H/AXFBA3RBwLLAAGopAwCFIAxCMIinQf8BcUED\ -dEHAwsAAaikDAIV9IByFIg6nIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQN0QcCSwABqKQMAhSAOQi\ -CIp0H/AXFBA3RBwLLAAGopAwCFIA5CMIinQf8BcUEDdEHAwsAAaikDAIV9ICGFIhOnIgVBFXZB+A9x\ -QcCywABqKQMAIAVBBXZB+A9xQcDCwABqKQMAhSATQiiIp0H/AXFBA3RBwKLAAGopAwCFIBNCOIinQQ\ -N0QcCSwABqKQMAhSAOfEIJfiACQRV2QfgPcUHAssAAaikDACACQQV2QfgPcUHAwsAAaikDAIUgDkIo\ -iKdB/wFxQQN0QcCiwABqKQMAhSAOQjiIp0EDdEHAksAAaikDAIUgDHxCB34gBUENdkH4D3FBwKLAAG\ -opAwAgBUH/AXFBA3RBwJLAAGopAwCFIBNCIIinQf8BcUEDdEHAssAAaikDAIUgE0IwiKdB/wFxQQN0\ -QcDCwABqKQMAhX0gIoUiDqciAkENdkH4D3FBwKLAAGopAwAgAkH/AXFBA3RBwJLAAGopAwCFIA5CII\ -inQf8BcUEDdEHAssAAaikDAIUgDkIwiKdB/wFxQQN0QcDCwABqKQMAhX0gEYUiDKciBUEVdkH4D3FB\ -wLLAAGopAwAgBUEFdkH4D3FBwMLAAGopAwCFIAxCKIinQf8BcUEDdEHAosAAaikDAIUgDEI4iKdBA3\ -RBwJLAAGopAwCFIA58Qgl+IAJBFXZB+A9xQcCywABqKQMAIAJBBXZB+A9xQcDCwABqKQMAhSAOQiiI\ -p0H/AXFBA3RBwKLAAGopAwCFIA5COIinQQN0QcCSwABqKQMAhSATfEIJfiAFQQ12QfgPcUHAosAAai\ -kDACAFQf8BcUEDdEHAksAAaikDAIUgDEIgiKdB/wFxQQN0QcCywABqKQMAhSAMQjCIp0H/AXFBA3RB\ -wMLAAGopAwCFfSAdhSIOpyICQQ12QfgPcUHAosAAaikDACACQf8BcUEDdEHAksAAaikDAIUgDkIgiK\ -dB/wFxQQN0QcCywABqKQMAhSAOQjCIp0H/AXFBA3RBwMLAAGopAwCFfSAehSITpyIFQRV2QfgPcUHA\ -ssAAaikDACAFQQV2QfgPcUHAwsAAaikDAIUgE0IoiKdB/wFxQQN0QcCiwABqKQMAhSATQjiIp0EDdE\ -HAksAAaikDAIUgDnxCCX4gAkEVdkH4D3FBwLLAAGopAwAgAkEFdkH4D3FBwMLAAGopAwCFIA5CKIin\ -Qf8BcUEDdEHAosAAaikDAIUgDkI4iKdBA3RBwJLAAGopAwCFIAx8Qgl+IAVBDXZB+A9xQcCiwABqKQ\ -MAIAVB/wFxQQN0QcCSwABqKQMAhSATQiCIp0H/AXFBA3RBwLLAAGopAwCFIBNCMIinQf8BcUEDdEHA\ -wsAAaikDAIV9IB+FIg6nIgJBDXZB+A9xQcCiwABqKQMAIAJB/wFxQQN0QcCSwABqKQMAhSAOQiCIp0\ -H/AXFBA3RBwLLAAGopAwCFIA5CMIinQf8BcUEDdEHAwsAAaikDAIV9ICCFIgynIgVBFXZB+A9xQcCy\ -wABqKQMAIAVBBXZB+A9xQcDCwABqKQMAhSAMQiiIp0H/AXFBA3RBwKLAAGopAwCFIAxCOIinQQN0Qc\ -CSwABqKQMAhSAOfEIJfiAGfCACQRV2QfgPcUHAssAAaikDACACQQV2QfgPcUHAwsAAaikDAIUgDkIo\ -iKdB/wFxQQN0QcCiwABqKQMAhSAOQjiIp0EDdEHAksAAaikDAIUgE3xCCX4gBUENdkH4D3FBwKLAAG\ -opAwAgBUH/AXFBA3RBwJLAAGopAwCFIAxCIIinQf8BcUEDdEHAssAAaikDAIUgDEIwiKdB/wFxQQN0\ -QcDCwABqKQMAhX0gI4UiDqciAkENdkH4D3FBwKLAAGopAwAgAkH/AXFBA3RBwJLAAGopAwCFIA5CII\ -inQf8BcUEDdEHAssAAaikDAIUgDkIwiKdB/wFxQQN0QcDCwABqKQMAhX0hBiACQRV2QfgPcUHAssAA\ -aikDACACQQV2QfgPcUHAwsAAaikDAIUgDkIoiKdB/wFxQQN0QcCiwABqKQMAhSAOQjiIp0EDdEHAks\ -AAaikDAIUgDHxCCX4gCIUhCCAOIAd9IQcgAUHAAGoiASAERw0ACyAAIAY3AxAgACAHNwMIIAAgCDcD\ -AAsL9x0COX8BfiMAQcAAayIDJAACQCACRQ0AIABBEGooAgAiBCAAQThqKAIAIgVqIABBIGooAgAiBm\ -oiByAAQTxqKAIAIghqIAcgAC0AaHNBEHQgB0EQdnIiB0Hy5rvjA2oiCSAGc0EUdyIKaiILIAdzQRh3\ -IgwgCWoiDSAKc0EZdyEOIAsgAEHYAGooAgAiD2ogAEEUaigCACIQIABBwABqKAIAIhFqIABBJGooAg\ -AiEmoiByAAQcQAaigCACITaiAHIAAtAGlBCHJzQRB0IAdBEHZyIgdBuuq/qnpqIgkgEnNBFHciCmoi\ -CyAHc0EYdyIUIAlqIhUgCnNBGXciFmoiFyAAQdwAaigCACIYaiEZIAsgAEHgAGooAgAiGmohGyAAKA\ -IIIhwgACgCKCIdaiAAQRhqKAIAIh5qIh8gAEEsaigCACIgaiEhIABBDGooAgAiIiAAQTBqKAIAIiNq\ -IABBHGooAgAiJGoiJSAAQTRqKAIAIiZqIScgAEHkAGooAgAhByAAQdQAaigCACEJIABB0ABqKAIAIQ\ -ogAEHMAGooAgAhCyAAQcgAaigCACEoA0AgAyAZIBcgJyAlIAApAwAiPEIgiKdzQRB3IilBhd2e23tq\ -IiogJHNBFHciK2oiLCApc0EYdyIpc0EQdyItICEgHyA8p3NBEHciLkHnzKfQBmoiLyAec0EUdyIwai\ -IxIC5zQRh3Ii4gL2oiL2oiMiAWc0EUdyIzaiI0IBNqICwgCmogDmoiLCAJaiAsIC5zQRB3IiwgFWoi\ -LiAOc0EUdyI1aiI2ICxzQRh3IiwgLmoiLiA1c0EZdyI1aiI3IB1qIDcgGyAvIDBzQRl3Ii9qIjAgB2\ -ogMCAMc0EQdyIwICkgKmoiKWoiKiAvc0EUdyIvaiI4IDBzQRh3IjBzQRB3IjcgMSAoaiApICtzQRl3\ -IilqIisgC2ogKyAUc0EQdyIrIA1qIjEgKXNBFHciKWoiOSArc0EYdyIrIDFqIjFqIjogNXNBFHciNW\ -oiOyALaiA4IAVqIDQgLXNBGHciLSAyaiIyIDNzQRl3IjNqIjQgGGogNCArc0EQdyIrIC5qIi4gM3NB\ -FHciM2oiNCArc0EYdyIrIC5qIi4gM3NBGXciM2oiOCAaaiA4IDYgJmogMSApc0EZdyIpaiIxIApqID\ -EgLXNBEHciLSAwICpqIipqIjAgKXNBFHciKWoiMSAtc0EYdyItc0EQdyI2IDkgI2ogKiAvc0EZdyIq\ -aiIvIBFqIC8gLHNBEHciLCAyaiIvICpzQRR3IipqIjIgLHNBGHciLCAvaiIvaiI4IDNzQRR3IjNqIj\ -kgGGogMSAPaiA7IDdzQRh3IjEgOmoiNyA1c0EZdyI1aiI6IAhqIDogLHNBEHciLCAuaiIuIDVzQRR3\ -IjVqIjogLHNBGHciLCAuaiIuIDVzQRl3IjVqIjsgI2ogOyA0IAdqIC8gKnNBGXciKmoiLyAoaiAvID\ -FzQRB3Ii8gLSAwaiItaiIwICpzQRR3IipqIjEgL3NBGHciL3NBEHciNCAyICBqIC0gKXNBGXciKWoi\ -LSAJaiAtICtzQRB3IisgN2oiLSApc0EUdyIpaiIyICtzQRh3IisgLWoiLWoiNyA1c0EUdyI1aiI7IA\ -lqIDEgE2ogOSA2c0EYdyIxIDhqIjYgM3NBGXciM2oiOCAaaiA4ICtzQRB3IisgLmoiLiAzc0EUdyIz\ -aiI4ICtzQRh3IisgLmoiLiAzc0EZdyIzaiI5IAdqIDkgOiAKaiAtIClzQRl3IilqIi0gD2ogLSAxc0\ -EQdyItIC8gMGoiL2oiMCApc0EUdyIpaiIxIC1zQRh3Ii1zQRB3IjkgMiAmaiAvICpzQRl3IipqIi8g\ -BWogLyAsc0EQdyIsIDZqIi8gKnNBFHciKmoiMiAsc0EYdyIsIC9qIi9qIjYgM3NBFHciM2oiOiAaai\ -AxIAtqIDsgNHNBGHciMSA3aiI0IDVzQRl3IjVqIjcgHWogNyAsc0EQdyIsIC5qIi4gNXNBFHciNWoi\ -NyAsc0EYdyIsIC5qIi4gNXNBGXciNWoiOyAmaiA7IDggKGogLyAqc0EZdyIqaiIvICBqIC8gMXNBEH\ -ciLyAtIDBqIi1qIjAgKnNBFHciKmoiMSAvc0EYdyIvc0EQdyI4IDIgEWogLSApc0EZdyIpaiItIAhq\ -IC0gK3NBEHciKyA0aiItIClzQRR3IilqIjIgK3NBGHciKyAtaiItaiI0IDVzQRR3IjVqIjsgCGogMS\ -AYaiA6IDlzQRh3IjEgNmoiNiAzc0EZdyIzaiI5IAdqIDkgK3NBEHciKyAuaiIuIDNzQRR3IjNqIjkg\ -K3NBGHciKyAuaiIuIDNzQRl3IjNqIjogKGogOiA3IA9qIC0gKXNBGXciKWoiLSALaiAtIDFzQRB3Ii\ -0gLyAwaiIvaiIwIClzQRR3IilqIjEgLXNBGHciLXNBEHciNyAyIApqIC8gKnNBGXciKmoiLyATaiAv\ -ICxzQRB3IiwgNmoiLyAqc0EUdyIqaiIyICxzQRh3IiwgL2oiL2oiNiAzc0EUdyIzaiI6IAdqIDEgCW\ -ogOyA4c0EYdyIxIDRqIjQgNXNBGXciNWoiOCAjaiA4ICxzQRB3IiwgLmoiLiA1c0EUdyI1aiI4ICxz\ -QRh3IiwgLmoiLiA1c0EZdyI1aiI7IApqIDsgOSAgaiAvICpzQRl3IipqIi8gEWogLyAxc0EQdyIvIC\ -0gMGoiLWoiMCAqc0EUdyIqaiIxIC9zQRh3Ii9zQRB3IjkgMiAFaiAtIClzQRl3IilqIi0gHWogLSAr\ -c0EQdyIrIDRqIi0gKXNBFHciKWoiMiArc0EYdyIrIC1qIi1qIjQgNXNBFHciNWoiOyAdaiAxIBpqID\ -ogN3NBGHciMSA2aiI2IDNzQRl3IjNqIjcgKGogNyArc0EQdyIrIC5qIi4gM3NBFHciM2oiNyArc0EY\ -dyIrIC5qIi4gM3NBGXciM2oiOiAgaiA6IDggC2ogLSApc0EZdyIpaiItIAlqIC0gMXNBEHciLSAvID\ -BqIi9qIjAgKXNBFHciKWoiMSAtc0EYdyItc0EQdyI4IDIgD2ogLyAqc0EZdyIqaiIvIBhqIC8gLHNB\ -EHciLCA2aiIvICpzQRR3IipqIjIgLHNBGHciLCAvaiIvaiI2IDNzQRR3IjNqIjogKGogMSAIaiA7ID\ -lzQRh3IjEgNGoiNCA1c0EZdyI1aiI5ICZqIDkgLHNBEHciLCAuaiIuIDVzQRR3IjVqIjkgLHNBGHci\ -LCAuaiIuIDVzQRl3IjVqIjsgD2ogOyA3IBFqIC8gKnNBGXciKmoiLyAFaiAvIDFzQRB3Ii8gLSAwai\ -ItaiIwICpzQRR3IipqIjEgL3NBGHciL3NBEHciNyAyIBNqIC0gKXNBGXciKWoiLSAjaiAtICtzQRB3\ -IisgNGoiLSApc0EUdyIpaiIyICtzQRh3IisgLWoiLWoiNCA1c0EUdyI1aiI7ICNqIDEgB2ogOiA4c0\ -EYdyIxIDZqIjYgM3NBGXciM2oiOCAgaiA4ICtzQRB3IisgLmoiLiAzc0EUdyIzaiI4ICtzQRh3Iisg\ -LmoiLiAzc0EZdyIzaiI6IBFqIDogOSAJaiAtIClzQRl3IilqIi0gCGogLSAxc0EQdyItIC8gMGoiL2\ -oiMCApc0EUdyIpaiIxIC1zQRh3Ii1zQRB3IjkgMiALaiAvICpzQRl3IipqIi8gGmogLyAsc0EQdyIs\ -IDZqIi8gKnNBFHciKmoiMiAsc0EYdyIsIC9qIi9qIjYgM3NBFHciM2oiOiAgaiAxIB1qIDsgN3NBGH\ -ciMSA0aiI0IDVzQRl3IjVqIjcgCmogNyAsc0EQdyIsIC5qIi4gNXNBFHciNWoiNyAsc0EYdyIsIC5q\ -Ii4gNXNBGXciNWoiOyALaiA7IDggBWogLyAqc0EZdyIqaiIvIBNqIC8gMXNBEHciLyAtIDBqIi1qIj\ -AgKnNBFHciKmoiMSAvc0EYdyIvc0EQdyI4IDIgGGogLSApc0EZdyIpaiItICZqIC0gK3NBEHciKyA0\ -aiItIClzQRR3IilqIjIgK3NBGHciKyAtaiItaiI0IDVzQRR3IjVqIjsgJmogMSAoaiA6IDlzQRh3Ij\ -EgNmoiNiAzc0EZdyIzaiI5IBFqIDkgK3NBEHciKyAuaiIuIDNzQRR3IjNqIjkgK3NBGHciOiAuaiIr\ -IDNzQRl3Ii5qIjMgBWogMyA3IAhqIC0gKXNBGXciKWoiLSAdaiAtIDFzQRB3Ii0gLyAwaiIvaiIwIC\ -lzQRR3IjFqIjcgLXNBGHciLXNBEHciKSAyIAlqIC8gKnNBGXciKmoiLyAHaiAvICxzQRB3IiwgNmoi\ -LyAqc0EUdyIyaiIzICxzQRh3IiogL2oiL2oiLCAuc0EUdyIuaiI2IClzQRh3IikgJHM2AjQgAyA3IC\ -NqIDsgOHNBGHciNyA0aiI0IDVzQRl3IjVqIjggD2ogOCAqc0EQdyIqICtqIisgNXNBFHciNWoiOCAq\ -c0EYdyIqIB5zNgIwIAMgKiAraiIrIBBzNgIsIAMgKSAsaiIsIBxzNgIgIAMgKyA5IBNqIC8gMnNBGX\ -ciL2oiMiAYaiAyIDdzQRB3IjIgLSAwaiItaiIwIC9zQRR3Ii9qIjdzNgIMIAMgLCAzIBpqIC0gMXNB\ -GXciLWoiMSAKaiAxIDpzQRB3IjEgNGoiMyAtc0EUdyI0aiI5czYCACADIDcgMnNBGHciLSAGczYCOC\ -ADICsgNXNBGXcgLXM2AhggAyA5IDFzQRh3IisgEnM2AjwgAyAtIDBqIi0gInM2AiQgAyAsIC5zQRl3\ -ICtzNgIcIAMgLSA4czYCBCADICsgM2oiKyAEczYCKCADICsgNnM2AgggAyAtIC9zQRl3ICpzNgIQIA\ -MgKyA0c0EZdyApczYCFAJAAkAgAC0AcCIpQcEATw0AIAEgAyApakHAACApayIqIAIgAiAqSxsiKhA6\ -ISsgACApICpqIik6AHAgAiAqayECIClB/wFxQcAARw0BIABBADoAcCAAIAApAwBCAXw3AwAMAQsgKU\ -HAAEHghcAAEEwACyArICpqIQEgAg0ACwsgA0HAAGokAAuVGwEgfyAAIAAoAgAgASgAACIFaiAAKAIQ\ -IgZqIgcgASgABCIIaiAHIAOnc0EQdyIJQefMp9AGaiIKIAZzQRR3IgtqIgwgASgAICIGaiAAKAIEIA\ -EoAAgiB2ogACgCFCINaiIOIAEoAAwiD2ogDiADQiCIp3NBEHciDkGF3Z7be2oiECANc0EUdyINaiIR\ -IA5zQRh3IhIgEGoiEyANc0EZdyIUaiIVIAEoACQiDWogFSAAKAIMIAEoABgiDmogACgCHCIWaiIXIA\ -EoABwiEGogFyAEQf8BcXNBEHQgF0EQdnIiF0G66r+qemoiGCAWc0EUdyIWaiIZIBdzQRh3IhpzQRB3\ -IhsgACgCCCABKAAQIhdqIAAoAhgiHGoiFSABKAAUIgRqIBUgAkH/AXFzQRB0IBVBEHZyIhVB8ua74w\ -NqIgIgHHNBFHciHGoiHSAVc0EYdyIeIAJqIh9qIiAgFHNBFHciFGoiISAHaiAZIAEoADgiFWogDCAJ\ -c0EYdyIMIApqIhkgC3NBGXciCWoiCiABKAA8IgJqIAogHnNBEHciCiATaiILIAlzQRR3IglqIhMgCn\ -NBGHciHiALaiIiIAlzQRl3IiNqIgsgDmogCyARIAEoACgiCWogHyAcc0EZdyIRaiIcIAEoACwiCmog\ -HCAMc0EQdyIMIBogGGoiGGoiGiARc0EUdyIRaiIcIAxzQRh3IgxzQRB3Ih8gHSABKAAwIgtqIBggFn\ -NBGXciFmoiGCABKAA0IgFqIBggEnNBEHciEiAZaiIYIBZzQRR3IhZqIhkgEnNBGHciEiAYaiIYaiId\ -ICNzQRR3IiNqIiQgCGogHCAPaiAhIBtzQRh3IhsgIGoiHCAUc0EZdyIUaiIgIAlqICAgEnNBEHciEi\ -AiaiIgIBRzQRR3IhRqIiEgEnNBGHciEiAgaiIgIBRzQRl3IhRqIiIgCmogIiATIBdqIBggFnNBGXci\ -E2oiFiABaiAWIBtzQRB3IhYgDCAaaiIMaiIYIBNzQRR3IhNqIhogFnNBGHciFnNBEHciGyAZIBBqIA\ -wgEXNBGXciDGoiESAFaiARIB5zQRB3IhEgHGoiGSAMc0EUdyIMaiIcIBFzQRh3IhEgGWoiGWoiHiAU\ -c0EUdyIUaiIiIA9qIBogAmogJCAfc0EYdyIaIB1qIh0gI3NBGXciH2oiIyAGaiAjIBFzQRB3IhEgIG\ -oiICAfc0EUdyIfaiIjIBFzQRh3IhEgIGoiICAfc0EZdyIfaiIkIBdqICQgISALaiAZIAxzQRl3Igxq\ -IhkgBGogGSAac0EQdyIZIBYgGGoiFmoiGCAMc0EUdyIMaiIaIBlzQRh3IhlzQRB3IiEgHCANaiAWIB\ -NzQRl3IhNqIhYgFWogFiASc0EQdyISIB1qIhYgE3NBFHciE2oiHCASc0EYdyISIBZqIhZqIh0gH3NB\ -FHciH2oiJCAOaiAaIAlqICIgG3NBGHciGiAeaiIbIBRzQRl3IhRqIh4gC2ogHiASc0EQdyISICBqIh\ -4gFHNBFHciFGoiICASc0EYdyISIB5qIh4gFHNBGXciFGoiIiAEaiAiICMgEGogFiATc0EZdyITaiIW\ -IBVqIBYgGnNBEHciFiAZIBhqIhhqIhkgE3NBFHciE2oiGiAWc0EYdyIWc0EQdyIiIBwgAWogGCAMc0\ -EZdyIMaiIYIAdqIBggEXNBEHciESAbaiIYIAxzQRR3IgxqIhsgEXNBGHciESAYaiIYaiIcIBRzQRR3\ -IhRqIiMgCWogGiAGaiAkICFzQRh3IhogHWoiHSAfc0EZdyIfaiIhIAhqICEgEXNBEHciESAeaiIeIB\ -9zQRR3Ih9qIiEgEXNBGHciESAeaiIeIB9zQRl3Ih9qIiQgEGogJCAgIA1qIBggDHNBGXciDGoiGCAF\ -aiAYIBpzQRB3IhggFiAZaiIWaiIZIAxzQRR3IgxqIhogGHNBGHciGHNBEHciICAbIApqIBYgE3NBGX\ -ciE2oiFiACaiAWIBJzQRB3IhIgHWoiFiATc0EUdyITaiIbIBJzQRh3IhIgFmoiFmoiHSAfc0EUdyIf\ -aiIkIBdqIBogC2ogIyAic0EYdyIaIBxqIhwgFHNBGXciFGoiIiANaiAiIBJzQRB3IhIgHmoiHiAUc0\ -EUdyIUaiIiIBJzQRh3IhIgHmoiHiAUc0EZdyIUaiIjIAVqICMgISABaiAWIBNzQRl3IhNqIhYgAmog\ -FiAac0EQdyIWIBggGWoiGGoiGSATc0EUdyITaiIaIBZzQRh3IhZzQRB3IiEgGyAVaiAYIAxzQRl3Ig\ -xqIhggD2ogGCARc0EQdyIRIBxqIhggDHNBFHciDGoiGyARc0EYdyIRIBhqIhhqIhwgFHNBFHciFGoi\ -IyALaiAaIAhqICQgIHNBGHciGiAdaiIdIB9zQRl3Ih9qIiAgDmogICARc0EQdyIRIB5qIh4gH3NBFH\ -ciH2oiICARc0EYdyIRIB5qIh4gH3NBGXciH2oiJCABaiAkICIgCmogGCAMc0EZdyIMaiIYIAdqIBgg\ -GnNBEHciGCAWIBlqIhZqIhkgDHNBFHciDGoiGiAYc0EYdyIYc0EQdyIiIBsgBGogFiATc0EZdyITai\ -IWIAZqIBYgEnNBEHciEiAdaiIWIBNzQRR3IhNqIhsgEnNBGHciEiAWaiIWaiIdIB9zQRR3Ih9qIiQg\ -EGogGiANaiAjICFzQRh3IhogHGoiHCAUc0EZdyIUaiIhIApqICEgEnNBEHciEiAeaiIeIBRzQRR3Ih\ -RqIiEgEnNBGHciEiAeaiIeIBRzQRl3IhRqIiMgB2ogIyAgIBVqIBYgE3NBGXciE2oiFiAGaiAWIBpz\ -QRB3IhYgGCAZaiIYaiIZIBNzQRR3IhNqIhogFnNBGHciFnNBEHciICAbIAJqIBggDHNBGXciDGoiGC\ -AJaiAYIBFzQRB3IhEgHGoiGCAMc0EUdyIMaiIbIBFzQRh3IhEgGGoiGGoiHCAUc0EUdyIUaiIjIA1q\ -IBogDmogJCAic0EYdyIaIB1qIh0gH3NBGXciH2oiIiAXaiAiIBFzQRB3IhEgHmoiHiAfc0EUdyIfai\ -IiIBFzQRh3IhEgHmoiHiAfc0EZdyIfaiIkIBVqICQgISAEaiAYIAxzQRl3IgxqIhggD2ogGCAac0EQ\ -dyIYIBYgGWoiFmoiGSAMc0EUdyIMaiIaIBhzQRh3IhhzQRB3IiEgGyAFaiAWIBNzQRl3IhNqIhYgCG\ -ogFiASc0EQdyISIB1qIhYgE3NBFHciE2oiGyASc0EYdyISIBZqIhZqIh0gH3NBFHciH2oiJCABaiAa\ -IApqICMgIHNBGHciGiAcaiIcIBRzQRl3IhRqIiAgBGogICASc0EQdyISIB5qIh4gFHNBFHciFGoiIC\ -ASc0EYdyISIB5qIh4gFHNBGXciFGoiIyAPaiAjICIgAmogFiATc0EZdyITaiIWIAhqIBYgGnNBEHci\ -FiAYIBlqIhhqIhkgE3NBFHciE2oiGiAWc0EYdyIWc0EQdyIiIBsgBmogGCAMc0EZdyIMaiIYIAtqIB\ -ggEXNBEHciESAcaiIYIAxzQRR3IgxqIhsgEXNBGHciESAYaiIYaiIcIBRzQRR3IhRqIiMgCmogGiAX\ -aiAkICFzQRh3IgogHWoiGiAfc0EZdyIdaiIfIBBqIB8gEXNBEHciESAeaiIeIB1zQRR3Ih1qIh8gEX\ -NBGHciESAeaiIeIB1zQRl3Ih1qIiEgAmogISAgIAVqIBggDHNBGXciAmoiDCAJaiAMIApzQRB3Igog\ -FiAZaiIMaiIWIAJzQRR3IgJqIhggCnNBGHciCnNBEHciGSAbIAdqIAwgE3NBGXciDGoiEyAOaiATIB\ -JzQRB3IhIgGmoiEyAMc0EUdyIMaiIaIBJzQRh3IhIgE2oiE2oiGyAdc0EUdyIdaiIgIBVqIBggBGog\ -IyAic0EYdyIEIBxqIhUgFHNBGXciFGoiGCAFaiAYIBJzQRB3IgUgHmoiEiAUc0EUdyIUaiIYIAVzQR\ -h3IgUgEmoiEiAUc0EZdyIUaiIcIAlqIBwgHyAGaiATIAxzQRl3IgZqIgkgDmogCSAEc0EQdyIOIAog\ -FmoiBGoiCSAGc0EUdyIGaiIKIA5zQRh3Ig5zQRB3IgwgGiAIaiAEIAJzQRl3IghqIgQgDWogBCARc0\ -EQdyINIBVqIgQgCHNBFHciCGoiFSANc0EYdyINIARqIgRqIgIgFHNBFHciEWoiEyAMc0EYdyIMIAJq\ -IgIgFSAPaiAOIAlqIg8gBnNBGXciBmoiDiAXaiAOIAVzQRB3IgUgICAZc0EYdyIOIBtqIhdqIhUgBn\ -NBFHciBmoiCXM2AgggACABIAogEGogFyAdc0EZdyIQaiIXaiAXIA1zQRB3IgEgEmoiDSAQc0EUdyIQ\ -aiIXIAFzQRh3IgEgDWoiDSALIBggB2ogBCAIc0EZdyIIaiIHaiAHIA5zQRB3IgcgD2oiDyAIc0EUdy\ -IIaiIOczYCBCAAIA4gB3NBGHciByAPaiIPIBdzNgIMIAAgCSAFc0EYdyIFIBVqIg4gE3M2AgAgACAC\ -IBFzQRl3IAVzNgIUIAAgDSAQc0EZdyAHczYCECAAIA4gBnNBGXcgDHM2AhwgACAPIAhzQRl3IAFzNg\ -IYC5EiAg5/An4jAEGgD2siASQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC\ -QAJAAkACQAJAAkACQAJAAkAgAEUNACAAKAIAIgJBf0YNASAAIAJBAWo2AgAgAEEEaiECAkACQAJAAk\ -ACQCAAKAIEDhgAAQIDBB4dHBsaGRgXFhUUExIREA8ODQwACyACKAIEIQNB0AEQFyICRQ0GIAFBCGpB\ -OGogA0E4aikDADcDACABQQhqQTBqIANBMGopAwA3AwAgAUEIakEoaiADQShqKQMANwMAIAFBCGpBIG\ -ogA0EgaikDADcDACABQQhqQRhqIANBGGopAwA3AwAgAUEIakEQaiADQRBqKQMANwMAIAFBCGpBCGog\ -A0EIaikDADcDACABIAMpAwA3AwggAykDQCEPIAFBCGpByABqIANByABqEEUgASAPNwNIIAIgAUEIak\ -HQARA6GkEAIQMMHwsgAigCBCEDQdABEBciAkUNBiABQQhqQThqIANBOGopAwA3AwAgAUEIakEwaiAD\ -QTBqKQMANwMAIAFBCGpBKGogA0EoaikDADcDACABQQhqQSBqIANBIGopAwA3AwAgAUEIakEYaiADQR\ -hqKQMANwMAIAFBCGpBEGogA0EQaikDADcDACABQQhqQQhqIANBCGopAwA3AwAgASADKQMANwMIIAMp\ -A0AhDyABQQhqQcgAaiADQcgAahBFIAEgDzcDSCACIAFBCGpB0AEQOhpBASEDDB4LIAIoAgQhA0HQAR\ -AXIgJFDQYgAUEIakE4aiADQThqKQMANwMAIAFBCGpBMGogA0EwaikDADcDACABQQhqQShqIANBKGop\ -AwA3AwAgAUEIakEgaiADQSBqKQMANwMAIAFBCGpBGGogA0EYaikDADcDACABQQhqQRBqIANBEGopAw\ -A3AwAgAUEIakEIaiADQQhqKQMANwMAIAEgAykDADcDCCADKQNAIQ8gAUEIakHIAGogA0HIAGoQRSAB\ -IA83A0ggAiABQQhqQdABEDoaQQIhAwwdCyACKAIEIQNB8AAQFyICRQ0GIAFBCGpBIGogA0EgaikDAD\ -cDACABQQhqQRhqIANBGGopAwA3AwAgAUEIakEQaiADQRBqKQMANwMAIAEgAykDCDcDECADKQMAIQ8g\ -AUEIakEoaiADQShqEDkgASAPNwMIIAIgAUEIakHwABA6GkEDIQMMHAsgAigCBCEDQfgOEBciAkUNBi\ -ABQQhqQYgBaiADQYgBaikDADcDACABQQhqQYABaiADQYABaikDADcDACABQQhqQfgAaiADQfgAaikD\ -ADcDACABQQhqQRBqIANBEGopAwA3AwAgAUEIakEYaiADQRhqKQMANwMAIAFBCGpBIGogA0EgaikDAD\ -cDACABQQhqQTBqIANBMGopAwA3AwAgAUEIakE4aiADQThqKQMANwMAIAFBCGpBwABqIANBwABqKQMA\ -NwMAIAFBCGpByABqIANByABqKQMANwMAIAFBCGpB0ABqIANB0ABqKQMANwMAIAFBCGpB2ABqIANB2A\ -BqKQMANwMAIAFBCGpB4ABqIANB4ABqKQMANwMAIAEgAykDcDcDeCABIAMpAwg3AxAgASADKQMoNwMw\ -IAMpAwAhDyADLQBqIQQgAy0AaSEFIAMtAGghBgJAIAMoApABQQV0IgcNAEEAIQcMGwsgAUGAD2pBGG\ -oiCCADQZQBaiIJQRhqKQAANwMAIAFBgA9qQRBqIgogCUEQaikAADcDACABQYAPakEIaiILIAlBCGop\ -AAA3AwAgASAJKQAANwOADyADQdQBaiEJQQAgB0FgakEFdmshDCABQbwBaiEDQQIhBwNAIANBYGoiDS\ -ABKQOADzcAACANQRhqIAgpAwA3AAAgDUEQaiAKKQMANwAAIA1BCGogCykDADcAAAJAAkAgDCAHaiIO\ -QQJGDQAgCCAJQWBqIg1BGGopAAA3AwAgCiANQRBqKQAANwMAIAsgDUEIaikAADcDACABIA0pAAA3A4\ -APIAdBOEcNARBsAAsgB0F/aiEHDBwLIAMgASkDgA83AAAgA0EYaiAIKQMANwAAIANBEGogCikDADcA\ -ACADQQhqIAspAwA3AAAgDkEBRg0bIAggCUEYaikAADcDACAKIAlBEGopAAA3AwAgCyAJQQhqKQAANw\ -MAIAEgCSkAADcDgA8gA0HAAGohAyAHQQJqIQcgCUHAAGohCQwACwsQcAALEHEAC0HQAUEIQQAoAvjU\ -QCIBQQQgARsRBQAAC0HQAUEIQQAoAvjUQCIBQQQgARsRBQAAC0HQAUEIQQAoAvjUQCIBQQQgARsRBQ\ -AAC0HwAEEIQQAoAvjUQCIBQQQgARsRBQAAC0H4DkEIQQAoAvjUQCIBQQQgARsRBQAACyACKAIEIQMC\ -QEHoABAXIgJFDQAgAUEIakEQaiADQRBqKQMANwMAIAFBCGpBGGogA0EYaikDADcDACABIAMpAwg3Ax\ -AgAykDACEPIAFBCGpBIGogA0EgahA5IAEgDzcDCCACIAFBCGpB6AAQOhpBFyEDDBQLQegAQQhBACgC\ -+NRAIgFBBCABGxEFAAALIAIoAgQhAwJAQdgCEBciAkUNACABQQhqIANByAEQOhogAUEIakHIAWogA0\ -HIAWoQRiACIAFBCGpB2AIQOhpBFiEDDBMLQdgCQQhBACgC+NRAIgFBBCABGxEFAAALIAIoAgQhAwJA\ -QfgCEBciAkUNACABQQhqIANByAEQOhogAUEIakHIAWogA0HIAWoQRyACIAFBCGpB+AIQOhpBFSEDDB\ -ILQfgCQQhBACgC+NRAIgFBBCABGxEFAAALIAIoAgQhAwJAQdgBEBciAkUNACABQQhqQThqIANBOGop\ -AwA3AwAgAUEIakEwaiADQTBqKQMANwMAIAFBCGpBKGogA0EoaikDADcDACABQQhqQSBqIANBIGopAw\ -A3AwAgAUEIakEYaiADQRhqKQMANwMAIAFBCGpBEGogA0EQaikDADcDACABQQhqQQhqIANBCGopAwA3\ -AwAgASADKQMANwMIIANByABqKQMAIQ8gAykDQCEQIAFBCGpB0ABqIANB0ABqEEUgAUEIakHIAGogDz\ -cDACABIBA3A0ggAiABQQhqQdgBEDoaQRQhAwwRC0HYAUEIQQAoAvjUQCIBQQQgARsRBQAACyACKAIE\ -IQMCQEHYARAXIgJFDQAgAUEIakE4aiADQThqKQMANwMAIAFBCGpBMGogA0EwaikDADcDACABQQhqQS\ -hqIANBKGopAwA3AwAgAUEIakEgaiADQSBqKQMANwMAIAFBCGpBGGogA0EYaikDADcDACABQQhqQRBq\ -IANBEGopAwA3AwAgAUEIakEIaiADQQhqKQMANwMAIAEgAykDADcDCCADQcgAaikDACEPIAMpA0AhEC\ -ABQQhqQdAAaiADQdAAahBFIAFBCGpByABqIA83AwAgASAQNwNIIAIgAUEIakHYARA6GkETIQMMEAtB\ -2AFBCEEAKAL41EAiAUEEIAEbEQUAAAsgAigCBCEDAkBB8AAQFyICRQ0AIAFBCGpBIGogA0EgaikDAD\ -cDACABQQhqQRhqIANBGGopAwA3AwAgAUEIakEQaiADQRBqKQMANwMAIAEgAykDCDcDECADKQMAIQ8g\ -AUEIakEoaiADQShqEDkgASAPNwMIIAIgAUEIakHwABA6GkESIQMMDwtB8ABBCEEAKAL41EAiAUEEIA\ -EbEQUAAAsgAigCBCEDAkBB8AAQFyICRQ0AIAFBCGpBIGogA0EgaikDADcDACABQQhqQRhqIANBGGop\ -AwA3AwAgAUEIakEQaiADQRBqKQMANwMAIAEgAykDCDcDECADKQMAIQ8gAUEIakEoaiADQShqEDkgAS\ -APNwMIIAIgAUEIakHwABA6GkERIQMMDgtB8ABBCEEAKAL41EAiAUEEIAEbEQUAAAsgAigCBCEDAkBB\ -mAIQFyICRQ0AIAFBCGogA0HIARA6GiABQQhqQcgBaiADQcgBahBIIAIgAUEIakGYAhA6GkEQIQMMDQ\ -tBmAJBCEEAKAL41EAiAUEEIAEbEQUAAAsgAigCBCEDAkBBuAIQFyICRQ0AIAFBCGogA0HIARA6GiAB\ -QQhqQcgBaiADQcgBahBJIAIgAUEIakG4AhA6GkEPIQMMDAtBuAJBCEEAKAL41EAiAUEEIAEbEQUAAA\ -sgAigCBCEDAkBB2AIQFyICRQ0AIAFBCGogA0HIARA6GiABQQhqQcgBaiADQcgBahBGIAIgAUEIakHY\ -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\ -QQAoArzYQCICIABPDQFBACgCoNhAIgBFDQECQEEAKAKY2EAiBUEpSQ0AQazYwAAhAQNAAkAgASgCAC\ -IDIABLDQAgAyABKAIEaiAASw0CCyABKAIIIgENAAsLAkACQEEAKAK02EAiAA0AQf8fIQEMAQtBACEB\ -A0AgAUEBaiEBIAAoAggiAA0ACyABQf8fIAFB/x9LGyEBC0EAIAE2AsTYQCAFIAJNDQFBAEF/NgK82E\ -APCwJAAkACQCAAQYACSQ0AQR8hAwJAIABB////B0sNACAAQQYgAEEIdmciA2t2QQFxIANBAXRrQT5q\ -IQMLIAFCADcCECABQRxqIAM2AgAgA0ECdEGU18AAaiECAkACQAJAAkACQAJAQQAoAojVQCIFQQEgA3\ -QiBnFFDQAgAigCACIFKAIEQXhxIABHDQEgBSEDDAILQQAgBSAGcjYCiNVAIAIgATYCACABQRhqIAI2\ -AgAMAwsgAEEAQRkgA0EBdmtBH3EgA0EfRht0IQIDQCAFIAJBHXZBBHFqQRBqIgYoAgAiA0UNAiACQQ\ -F0IQIgAyEFIAMoAgRBeHEgAEcNAAsLIAMoAggiACABNgIMIAMgATYCCCABQRhqQQA2AgAgASADNgIM\ -IAEgADYCCAwCCyAGIAE2AgAgAUEYaiAFNgIACyABIAE2AgwgASABNgIIC0EAQQAoAsTYQEF/aiIBNg\ -LE2EAgAQ0DQQAoArTYQCIADQFB/x8hAQwCCyAAQQN2IgNBA3RBjNXAAGohAAJAAkBBACgChNVAIgJB\ -ASADdCIDcUUNACAAKAIIIQMMAQtBACACIANyNgKE1UAgACEDCyAAIAE2AgggAyABNgIMIAEgADYCDC\ -ABIAM2AggPC0EAIQEDQCABQQFqIQEgACgCCCIADQALIAFB/x8gAUH/H0sbIQELQQAgATYCxNhADwsL\ -lQwBGH8jACECIAAoAgAhAyAAKAIIIQQgACgCDCEFIAAoAgQhBiACQcAAayICQRhqIgdCADcDACACQS\ -BqIghCADcDACACQThqIglCADcDACACQTBqIgpCADcDACACQShqIgtCADcDACACQQhqIgwgASkACDcD\ -ACACQRBqIg0gASkAEDcDACAHIAEoABgiDjYCACAIIAEoACAiDzYCACACIAEpAAA3AwAgAiABKAAcIh\ -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\ -QQEgAnQiBnFFDQAgAygCACIFKAIEQXhxIAFHDQEgBSECDAILQQAgBSAGcjYCiNVAIAMgADYCACAAQR\ -hqIAM2AgAMAwsgAUEAQRkgAkEBdmtBH3EgAkEfRht0IQMDQCAFIANBHXZBBHFqQRBqIgYoAgAiAkUN\ -AiADQQF0IQMgAiEFIAIoAgRBeHEgAUcNAAsLIAIoAggiASAANgIMIAIgADYCCCAAQRhqQQA2AgAgAC\ -ACNgIMIAAgATYCCA8LIAYgADYCACAAQRhqIAU2AgALIAAgADYCDCAAIAA2AggPCyABQQN2IgJBA3RB\ -jNXAAGohAQJAAkBBACgChNVAIgNBASACdCICcUUNACABKAIIIQIMAQtBACADIAJyNgKE1UAgASECCy\ -ABIAA2AgggAiAANgIMIAAgATYCDCAAIAI2AggL7AsBA38jAEHQAGsiASQAAkACQCAARQ0AIAAoAgAN\ -ASAAQX82AgAgAEEEaiECAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAk\ -ACQAJAAkAgACgCBA4YAAECAwQFBgcICQoLDA0ODxAREhMUFRYXAAsgAigCBCECIAFBCGoiA0HAABBR\ -IAIgA0HIABA6QcgBakEAOgAADBcLIAIoAgQhAiABQQhqIgNBIBBRIAIgA0HIABA6QcgBakEAOgAADB\ -YLIAIoAgQhAiABQQhqIgNBMBBRIAIgA0HIABA6QcgBakEAOgAADBULIAIoAgQhAiABQQhqEFggAkEg\ -aiABQShqKQMANwMAIAJBGGogAUEgaikDADcDACACQRBqIAFBGGopAwA3AwAgAkEIaiABQRBqKQMANw\ -MAIAIgASkDCDcDACACQegAakEAOgAADBQLIAIoAgQiAkIANwMAIAIgAikDcDcDCCACQSBqIAJBiAFq\ -KQMANwMAIAJBGGogAkGAAWopAwA3AwAgAkEQaiACQfgAaikDADcDACACQShqQQBBwgAQPBogAigCkA\ -FFDRMgAkEANgKQAQwTCyACKAIEQQBByAEQPEHYAmpBADoAAAwSCyACKAIEQQBByAEQPEHQAmpBADoA\ -AAwRCyACKAIEQQBByAEQPEGwAmpBADoAAAwQCyACKAIEQQBByAEQPEGQAmpBADoAAAwPCyACKAIEIg\ -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\ -AkEgaiABQSBqKQMANwMAIAJBMGogAUEwaikDADcDACACQThqIAFBOGopAwA3AwAgAkHAAGogAUHAAG\ -opAwA3AwAgAkHIAGogAUHIAGopAwA3AwAgAkHQAGogAUHQAGopAwA3AwAgAkHYAGogAUHYAGopAwA3\ -AwAgAkHgAGogAUHgAGopAwA3AwAgAiABKQMINwMIIAIgASkDKDcDKCABLQBqIQggAiABKQMAIhI3Aw\ -AgCCAERXJBAnIhCSACQQhqIQQgAyEGCyACIAk6AGkgAiAFOgBoAkACQCAGRQ0AIAFB8ABqIQogAkEo\ -aiEHQQEgBmshCyAIQQRyIQggBkEFdCABakH0AGohASAGQX9qIANPIQwDQCAMDQIgAkHwAGpBGGoiBi\ -AEQRhqIg0pAgA3AwAgAkHwAGpBEGoiDiAEQRBqIg8pAgA3AwAgAkHwAGpBCGoiECAEQQhqIhEpAgA3\ -AwAgAiAEKQIANwNwIAJB8ABqIAcgBSASIAkQGiAQKQMAIRMgDikDACEUIAYpAwAhFSACKQNwIRYgB0\ -EYaiABQRhqKQIANwIAIAdBEGogAUEQaikCADcCACAHQQhqIAFBCGopAgA3AgAgByABKQIANwIAIAQg\ -CikDADcDACARIApBCGopAwA3AwAgDyAKQRBqKQMANwMAIA0gCkEYaikDADcDAEIAIRIgAkIANwMAIA\ -IgFTcDYCACIBQ3A1ggAiATNwNQIAIgFjcDSCACIAg6AGlBwAAhBSACQcAAOgBoIAFBYGohASAIIQkg\ -C0EBaiILQQFHDQALCyAAIAJB8AAQOhoMAgtBACALayADQdCFwAAQTwALIAAgASkDCDcDCCAAIAEpAy\ -g3AyggAEEQaiABQRBqKQMANwMAIABBGGogAUEYaikDADcDACAAQSBqIAFBIGopAwA3AwAgAEEwaiAB\ -QTBqKQMANwMAIABBOGogAUE4aikDADcDACAAQcAAaiABQcAAaikDADcDACAAQcgAaiABQcgAaikDAD\ -cDACAAQdAAaiABQdAAaikDADcDACAAQdgAaiABQdgAaikDADcDACAAQeAAaiABQeAAaikDADcDACAB\ -QekAai0AACEEIAEtAGohByAAIAEtAGg6AGggACABKQMANwMAIAAgByAERXJBAnI6AGkLIABBADoAcC\ -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\ -H4OEhCEGAkAgBEE/cyIARQ0AIAVBAWpBACAAEDwaCyAGIAeEIQYCQAJAIARBOHFBOEYNACABQThqIA\ -Y3AAAgA0EIaiABQQEQFQwBCyADQQhqIAFBARAVIANB4ABqQQxqQgA3AgAgA0HgAGpBFGpCADcCACAD\ -QeAAakEcakIANwIAIANB4ABqQSRqQgA3AgAgA0HgAGpBLGpCADcCACADQeAAakE0akIANwIAIANBnA\ -FqQgA3AgAgA0IANwJkIANBwAA2AmAgA0GoAWogA0HgAGpBxAAQOhogA0HQAGogA0GoAWpBNGopAgA3\ -AwAgA0HIAGogA0GoAWpBLGopAgA3AwAgA0HAAGogA0GoAWpBJGopAgA3AwAgA0E4aiADQagBakEcai\ -kCADcDACADQTBqIANBqAFqQRRqKQIANwMAIANBKGogA0GoAWpBDGopAgA3AwAgAyADKQKsATcDICAD\ -IAY3A1ggA0EIaiADQSBqQQEQFQsgAUHAAGpBADoAACACIAMoAggiAUEYdCABQQh0QYCA/AdxciABQQ\ -h2QYD+A3EgAUEYdnJyNgAAIAIgAygCDCIBQRh0IAFBCHRBgID8B3FyIAFBCHZBgP4DcSABQRh2cnI2\ -AAQgAiADKAIQIgFBGHQgAUEIdEGAgPwHcXIgAUEIdkGA/gNxIAFBGHZycjYACCACIAMoAhQiAUEYdC\ -ABQQh0QYCA/AdxciABQQh2QYD+A3EgAUEYdnJyNgAMIAIgAygCGCIBQRh0IAFBCHRBgID8B3FyIAFB\ -CHZBgP4DcSABQRh2cnI2ABAgA0HwAWokAAuyBgEVfyMAQbABayICJAACQAJAAkAgACgCkAEiAyABe6\ -ciBE0NACAAQfAAaiEFIAJBKGohBiACQQhqIQcgAkHwAGpBIGohCCADQX9qIQkgA0EFdCAAakHUAGoh\ -CiADQX5qQTdJIQsDQCAAIAk2ApABIAlFDQIgACAJQX9qIgw2ApABIAAtAGohDSACQfAAakEYaiIDIA\ -pBGGoiDikAADcDACACQfAAakEQaiIPIApBEGoiECkAADcDACACQfAAakEIaiIRIApBCGoiEikAADcD\ -ACAIIApBIGopAAA3AAAgCEEIaiAKQShqKQAANwAAIAhBEGogCkEwaikAADcAACAIQRhqIApBOGopAA\ -A3AAAgByAFKQMANwMAIAdBCGogBUEIaiITKQMANwMAIAdBEGogBUEQaiIUKQMANwMAIAdBGGogBUEY\ -aiIVKQMANwMAIAIgCikAADcDcCAGQThqIAJB8ABqQThqKQMANwAAIAZBMGogAkHwAGpBMGopAwA3AA\ -AgBkEoaiACQfAAakEoaikDADcAACAGQSBqIAgpAwA3AAAgBkEYaiADKQMANwAAIAZBEGogDykDADcA\ -ACAGQQhqIBEpAwA3AAAgBiACKQNwNwAAIAJBwAA6AGggAiANQQRyIg06AGkgAkIANwMAIAMgFSkCAD\ -cDACAPIBQpAgA3AwAgESATKQIANwMAIAIgBSkCADcDcCACQfAAaiAGQcAAQgAgDRAaIAMoAgAhAyAP\ -KAIAIQ8gESgCACERIAIoAowBIQ0gAigChAEhEyACKAJ8IRQgAigCdCEVIAIoAnAhFiALRQ0DIAogFj\ -YCACAKQRxqIA02AgAgDiADNgIAIApBFGogEzYCACAQIA82AgAgCkEMaiAUNgIAIBIgETYCACAKQQRq\ -IBU2AgAgACAJNgKQASAKQWBqIQogDCEJIAwgBE8NAAsLIAJBsAFqJAAPC0GgkcAAQStBkIXAABBVAA\ -sgAiANNgKMASACIAM2AogBIAIgEzYChAEgAiAPNgKAASACIBQ2AnwgAiARNgJ4IAIgFTYCdCACIBY2\ -AnBBkJLAACACQfAAakGAhsAAQfiGwAAQQgALggUBB38gACgCACIFQQFxIgYgBGohBwJAAkAgBUEEcQ\ -0AQQAhAQwBCwJAAkAgAg0AQQAhCAwBCwJAIAJBA3EiCQ0ADAELQQAhCCABIQoDQCAIIAosAABBv39K\ -aiEIIApBAWohCiAJQX9qIgkNAAsLIAggB2ohBwtBK0GAgMQAIAYbIQYCQAJAIAAoAghBAUYNAEEBIQ\ -ogACAGIAEgAhBUDQEgACgCGCADIAQgAEEcaigCACgCDBEIAA8LAkACQAJAAkACQCAAQQxqKAIAIggg\ -B00NACAFQQhxDQRBACEKIAggB2siCSEFQQEgAC0AICIIIAhBA0YbQQNxDgMDAQIDC0EBIQogACAGIA\ -EgAhBUDQQgACgCGCADIAQgAEEcaigCACgCDBEIAA8LQQAhBSAJIQoMAQsgCUEBdiEKIAlBAWpBAXYh\ -BQsgCkEBaiEKIABBHGooAgAhCSAAKAIEIQggACgCGCEHAkADQCAKQX9qIgpFDQEgByAIIAkoAhARBg\ -BFDQALQQEPC0EBIQogCEGAgMQARg0BIAAgBiABIAIQVA0BIAcgAyAEIAkoAgwRCAANAUEAIQoCQANA\ -AkAgBSAKRw0AIAUhCgwCCyAKQQFqIQogByAIIAkoAhARBgBFDQALIApBf2ohCgsgCiAFSSEKDAELIA\ -AoAgQhBSAAQTA2AgQgAC0AICELQQEhCiAAQQE6ACAgACAGIAEgAhBUDQAgCCAHa0EBaiEKIABBHGoo\ -AgAhCCAAKAIYIQkCQANAIApBf2oiCkUNASAJQTAgCCgCEBEGAEUNAAtBAQ8LQQEhCiAJIAMgBCAIKA\ -IMEQgADQAgACALOgAgIAAgBTYCBEEADwsgCguPBQEKfyMAQTBrIgMkACADQSRqIAE2AgAgA0EDOgAo\ -IANCgICAgIAENwMIIAMgADYCIEEAIQQgA0EANgIYIANBADYCEAJAAkACQAJAIAIoAggiBQ0AIAJBFG\ -ooAgAiBkUNASACKAIAIQEgAigCECEAIAZBA3RBeGpBA3ZBAWoiBCEGA0ACQCABQQRqKAIAIgdFDQAg\ -AygCICABKAIAIAcgAygCJCgCDBEIAA0ECyAAKAIAIANBCGogAEEEaigCABEGAA0DIABBCGohACABQQ\ -hqIQEgBkF/aiIGDQAMAgsLIAJBDGooAgAiAEUNACAAQQV0IghBYGpBBXZBAWohBCACKAIAIQFBACEG\ -A0ACQCABQQRqKAIAIgBFDQAgAygCICABKAIAIAAgAygCJCgCDBEIAA0DCyADIAUgBmoiAEEcai0AAD\ -oAKCADIABBBGopAgBCIIk3AwggAEEYaigCACEJIAIoAhAhCkEAIQtBACEHAkACQAJAIABBFGooAgAO\ -AwEAAgELIAlBA3QhDEEAIQcgCiAMaiIMKAIEQQVHDQEgDCgCACgCACEJC0EBIQcLIAMgCTYCFCADIA\ -c2AhAgAEEQaigCACEHAkACQAJAIABBDGooAgAOAwEAAgELIAdBA3QhCSAKIAlqIgkoAgRBBUcNASAJ\ -KAIAKAIAIQcLQQEhCwsgAyAHNgIcIAMgCzYCGCAKIAAoAgBBA3RqIgAoAgAgA0EIaiAAKAIEEQYADQ\ -IgAUEIaiEBIAggBkEgaiIGRw0ACwtBACEAIAQgAigCBEkiAUUNASADKAIgIAIoAgAgBEEDdGpBACAB\ -GyIBKAIAIAEoAgQgAygCJCgCDBEIAEUNAQtBASEACyADQTBqJAAgAAuPBAEJfyMAQTBrIgYkAEEAIQ\ -cgBkEANgIIAkAgAUFAcSIIRQ0AQQEhByAGQQE2AgggBiAANgIAIAhBwABGDQBBAiEHIAZBAjYCCCAG\ -IABBwABqNgIEIAhBgAFGDQAgBiAAQYABajYCEEGQksAAIAZBEGpBkIbAAEH4hsAAEEIACyABQT9xIQ\ -kCQCAFQQV2IgEgByAHIAFLGyIBRQ0AIANBBHIhCiABQQV0IQtBACEBIAYhAwNAIAMoAgAhByAGQRBq\ -QRhqIgwgAkEYaikCADcDACAGQRBqQRBqIg0gAkEQaikCADcDACAGQRBqQQhqIg4gAkEIaikCADcDAC\ -AGIAIpAgA3AxAgBkEQaiAHQcAAQgAgChAaIAQgAWoiB0EYaiAMKQMANwAAIAdBEGogDSkDADcAACAH\ -QQhqIA4pAwA3AAAgByAGKQMQNwAAIANBBGohAyALIAFBIGoiAUcNAAsgBigCCCEHCwJAAkACQAJAIA\ -lFDQAgB0EFdCICIAVLDQEgBSACayIBQR9NDQIgCUEgRw0DIAQgAmoiAiAAIAhqIgEpAAA3AAAgAkEY\ -aiABQRhqKQAANwAAIAJBEGogAUEQaikAADcAACACQQhqIAFBCGopAAA3AAAgB0EBaiEHCyAGQTBqJA\ -AgBw8LIAIgBUGwhMAAEEwAC0EgIAFBsITAABBLAAtBICAJQeSLwAAQTgALgQQCA38CfiMAQfABayID\ -JAAgACkDACEGIAEgAUHAAGotAAAiBGoiBUGAAToAACADQQhqQRBqIABBGGooAgA2AgAgA0EQaiAAQR\ -BqKQIANwMAIAMgACkCCDcDCCAGQgmGIQYgBK1CA4YhBwJAIARBP3MiAEUNACAFQQFqQQAgABA8Ggsg\ -BiAHhCEGAkACQCAEQThxQThGDQAgAUE4aiAGNwAAIANBCGogARATDAELIANBCGogARATIANB4ABqQQ\ -xqQgA3AgAgA0HgAGpBFGpCADcCACADQeAAakEcakIANwIAIANB4ABqQSRqQgA3AgAgA0HgAGpBLGpC\ -ADcCACADQeAAakE0akIANwIAIANBnAFqQgA3AgAgA0IANwJkIANBwAA2AmAgA0GoAWogA0HgAGpBxA\ -AQOhogA0HQAGogA0GoAWpBNGopAgA3AwAgA0HIAGogA0GoAWpBLGopAgA3AwAgA0HAAGogA0GoAWpB\ -JGopAgA3AwAgA0E4aiADQagBakEcaikCADcDACADQTBqIANBqAFqQRRqKQIANwMAIANBKGogA0GoAW\ -pBDGopAgA3AwAgAyADKQKsATcDICADIAY3A1ggA0EIaiADQSBqEBMLIAIgAygCCDYAACACIAMpAgw3\ -AAQgAiADKQIUNwAMIAFBwABqQQA6AAAgA0HwAWokAAvwAwIDfwJ+IwBB8AFrIgMkACABQcAAai0AAC\ -EEIAApAwAhBiADQRBqIABBEGopAgA3AwAgAyAAKQIINwMIIAEgBGoiAEGAAToAACAGQgmGIQYgBK1C\ -A4YhByADIANBCGo2AhwCQCAEQT9zIgVFDQAgAEEBakEAIAUQPBoLIAcgBoQhBgJAAkAgBEE4cUE4Rg\ -0AIAFBOGogBjcAACADQRxqIAEQHQwBCyADQRxqIAEQHSADQeAAakEMakIANwIAIANB4ABqQRRqQgA3\ -AgAgA0HgAGpBHGpCADcCACADQeAAakEkakIANwIAIANB4ABqQSxqQgA3AgAgA0HgAGpBNGpCADcCAC\ -ADQZwBakIANwIAIANCADcCZCADQcAANgJgIANBqAFqIANB4ABqQcQAEDoaIANB0ABqIANBqAFqQTRq\ -KQIANwMAIANByABqIANBqAFqQSxqKQIANwMAIANBwABqIANBqAFqQSRqKQIANwMAIANBOGogA0GoAW\ -pBHGopAgA3AwAgA0EwaiADQagBakEUaikCADcDACADQShqIANBqAFqQQxqKQIANwMAIAMgAykCrAE3\ -AyAgAyAGNwNYIANBHGogA0EgahAdCyABQcAAakEAOgAAIAIgAykDCDcAACACIAMpAxA3AAggA0HwAW\ -okAAvZAwIDfwJ+IwBB4AFrIgMkACAAKQMAIQYgASABQcAAai0AACIEaiIFQYABOgAAIANBCGogAEEQ\ -aikCADcDACADIAApAgg3AwAgBkIJhiEGIAStQgOGIQcCQCAEQT9zIgBFDQAgBUEBakEAIAAQPBoLIA\ -cgBoQhBgJAAkAgBEE4cUE4Rg0AIAFBOGogBjcAACADIAEQIAwBCyADIAEQICADQdAAakEMakIANwIA\ -IANB0ABqQRRqQgA3AgAgA0HQAGpBHGpCADcCACADQdAAakEkakIANwIAIANB0ABqQSxqQgA3AgAgA0\ -HQAGpBNGpCADcCACADQYwBakIANwIAIANCADcCVCADQcAANgJQIANBmAFqIANB0ABqQcQAEDoaIANB\ -wABqIANBmAFqQTRqKQIANwMAIANBOGogA0GYAWpBLGopAgA3AwAgA0EwaiADQZgBakEkaikCADcDAC\ -ADQShqIANBmAFqQRxqKQIANwMAIANBIGogA0GYAWpBFGopAgA3AwAgA0EYaiADQZgBakEMaikCADcD\ -ACADIAMpApwBNwMQIAMgBjcDSCADIANBEGoQIAsgAiADKQMANwAAIAIgAykDCDcACCABQcAAakEAOg\ -AAIANB4AFqJAAL1AMCBH8CfiMAQdABayIDJAAgASABQcAAai0AACIEaiIFQQE6AAAgACkDAEIJhiEH\ -IAStQgOGIQgCQCAEQT9zIgZFDQAgBUEBakEAIAYQPBoLIAcgCIQhBwJAAkAgBEE4cUE4Rg0AIAFBOG\ -ogBzcAACAAQQhqIAFBARAYDAELIABBCGoiBCABQQEQGCADQcAAakEMakIANwIAIANBwABqQRRqQgA3\ -AgAgA0HAAGpBHGpCADcCACADQcAAakEkakIANwIAIANBwABqQSxqQgA3AgAgA0HAAGpBNGpCADcCAC\ -ADQfwAakIANwIAIANCADcCRCADQcAANgJAIANBiAFqIANBwABqQcQAEDoaIANBMGogA0GIAWpBNGop\ -AgA3AwAgA0EoaiADQYgBakEsaikCADcDACADQSBqIANBiAFqQSRqKQIANwMAIANBGGogA0GIAWpBHG\ -opAgA3AwAgA0EQaiADQYgBakEUaikCADcDACADQQhqIANBiAFqQQxqKQIANwMAIAMgAykCjAE3AwAg\ -AyAHNwM4IAQgA0EBEBgLIAFBwABqQQA6AAAgAiAAKQMINwAAIAIgAEEQaikDADcACCACIABBGGopAw\ -A3ABAgA0HQAWokAAuJAwEFfwJAAkACQCABQQlJDQBBACECQc3/eyABQRAgAUEQSxsiAWsgAE0NASAB\ -QRAgAEELakF4cSAAQQtJGyIDakEMahAXIgBFDQEgAEF4aiECAkACQCABQX9qIgQgAHENACACIQEMAQ\ -sgAEF8aiIFKAIAIgZBeHEgBCAAakEAIAFrcUF4aiIAQQAgASAAIAJrQRBLG2oiASACayIAayEEAkAg\ -BkEDcUUNACABIAEoAgRBAXEgBHJBAnI2AgQgBCABakEEaiIEIAQoAgBBAXI2AgAgBSAFKAIAQQFxIA\ -ByQQJyNgIAIAAgAmpBBGoiBCAEKAIAQQFyNgIAIAIgABAhDAELIAIoAgAhAiABIAQ2AgQgASACIABq\ -NgIACyABKAIEIgBBA3FFDQIgAEF4cSICIANBEGpNDQIgASAAQQFxIANyQQJyNgIEIAEgA2oiACACIA\ -NrIgJBA3I2AgQgACACQQRyaiIDIAMoAgBBAXI2AgAgACACECEMAgsgABAXIQILIAIPCyABQQhqC5cD\ -AQV/IwBBkARrIgMkACAAQcgBaiEEAkACQAJAAkACQCAAQfACai0AACIFRQ0AQagBIAVrIgYgAksNAS\ -ABIAQgBWogBhA6IAZqIQEgAiAGayECCyACIAJBqAFuIgVBqAFsIgdJDQEgAiAHayEGAkAgBUGoAWwi\ -AkUNACABIQUDQCADQeACaiAAQagBEDoaIAAQJSAFIANB4AJqQagBEDpBqAFqIQUgAkHYfmoiAg0ACw\ -sCQCAGDQBBACEGDAQLIANBADYCsAEgA0GwAWpBBHJBAEGoARA8GiADQagBNgKwASADQeACaiADQbAB\ -akGsARA6GiADQQhqIANB4AJqQQRyQagBEDoaIANB4AJqIABBqAEQOhogABAlIANBCGogA0HgAmpBqA\ -EQOhogBkGpAU8NAiABIAdqIANBCGogBhA6GiAEIANBCGpBqAEQOhoMAwsgASAEIAVqIAIQOhogBSAC\ -aiEGDAILQaGNwABBI0HEjcAAEFUACyAGQagBQcSMwAAQSwALIABB8AJqIAY6AAAgA0GQBGokAAuXAw\ -EFfyMAQbADayIDJAAgAEHIAWohBAJAAkACQAJAAkAgAEHQAmotAAAiBUUNAEGIASAFayIGIAJLDQEg\ -ASAEIAVqIAYQOiAGaiEBIAIgBmshAgsgAiACQYgBbiIFQYgBbCIHSQ0BIAIgB2shBgJAIAVBiAFsIg\ -JFDQAgASEFA0AgA0GgAmogAEGIARA6GiAAECUgBSADQaACakGIARA6QYgBaiEFIAJB+H5qIgINAAsL\ -AkAgBg0AQQAhBgwECyADQQA2ApABIANBkAFqQQRyQQBBiAEQPBogA0GIATYCkAEgA0GgAmogA0GQAW\ -pBjAEQOhogA0EIaiADQaACakEEckGIARA6GiADQaACaiAAQYgBEDoaIAAQJSADQQhqIANBoAJqQYgB\ -EDoaIAZBiQFPDQIgASAHaiADQQhqIAYQOhogBCADQQhqQYgBEDoaDAMLIAEgBCAFaiACEDoaIAUgAm\ -ohBgwCC0GhjcAAQSNBxI3AABBVAAsgBkGIAUHEjMAAEEsACyAAQdACaiAGOgAAIANBsANqJAALggMB\ -A38CQAJAAkACQCAALQBoIgNFDQACQCADQcEATw0AIAAgA2pBKGogASACQcAAIANrIgMgAyACSxsiAx\ -A6GiAAIAAtAGggA2oiBDoAaCABIANqIQECQCACIANrIgINAEEAIQIMAwsgAEEIaiAAQShqIgRBwAAg\ -ACkDACAALQBqIABB6QBqIgMtAABFchAaIARBAEHBABA8GiADIAMtAABBAWo6AAAMAQsgA0HAAEGQhM\ -AAEEwACwJAIAJBwABLDQAgAkHAACACQcAASRshAkEAIQMMAgsgAEEIaiEFIABB6QBqIgMtAAAhBANA\ -IAUgAUHAACAAKQMAIAAtAGogBEH/AXFFchAaIAMgAy0AAEEBaiIEOgAAIAFBwABqIQEgAkFAaiICQc\ -AASw0ACyAALQBoIQQLIARB/wFxIgNBwQBPDQEgAkHAACADayIEIAQgAksbIQILIAAgA2pBKGogASAC\ -EDoaIAAgAC0AaCACajoAaCAADwsgA0HAAEGQhMAAEEwAC9ACAgV/AX4jAEEwayICJABBJyEDAkACQC\ -AAQpDOAFoNACAAIQcMAQtBJyEDA0AgAkEJaiADaiIEQXxqIABCkM4AgCIHQvCxf34gAHynIgVB//8D\ -cUHkAG4iBkEBdEGpiMAAai8AADsAACAEQX5qIAZBnH9sIAVqQf//A3FBAXRBqYjAAGovAAA7AAAgA0\ -F8aiEDIABC/8HXL1YhBCAHIQAgBA0ACwsCQCAHpyIEQeMATA0AIAJBCWogA0F+aiIDaiAHpyIFQf//\ -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\ -ooAAA2AgAgA0EEaiIDQYABRw0ACyACQYABNgIAIAJBiAFqIAJBhAEQOhogACACQYgBakEEckGAARA6\ -IAEtAIABOgCAASACQZACaiQAC3QBAn8jAEGgAmsiAiQAQQAhAyACQQA2AgADQCACIANqQQRqIAEgA2\ -ooAAA2AgAgA0EEaiIDQYgBRw0ACyACQYgBNgIAIAJBkAFqIAJBjAEQOhogACACQZABakEEckGIARA6\ -IAEtAIgBOgCIASACQaACaiQAC3QBAn8jAEHgAmsiAiQAQQAhAyACQQA2AgADQCACIANqQQRqIAEgA2\ -ooAAA2AgAgA0EEaiIDQagBRw0ACyACQagBNgIAIAJBsAFqIAJBrAEQOhogACACQbABakEEckGoARA6\ -IAEtAKgBOgCoASACQeACaiQAC3IBAn8jAEGgAWsiAiQAQQAhAyACQQA2AgADQCACIANqQQRqIAEgA2\ -ooAAA2AgAgA0EEaiIDQcgARw0ACyACQcgANgIAIAJB0ABqIAJBzAAQOhogACACQdAAakEEckHIABA6\ -IAEtAEg6AEggAkGgAWokAAtyAQJ/IwBB4AFrIgIkAEEAIQMgAkEANgIAA0AgAiADakEEaiABIANqKA\ -AANgIAIANBBGoiA0HoAEcNAAsgAkHoADYCACACQfAAaiACQewAEDoaIAAgAkHwAGpBBHJB6AAQOiAB\ -LQBoOgBoIAJB4AFqJAALdAECfyMAQbACayICJABBACEDIAJBADYCAANAIAIgA2pBBGogASADaigAAD\ -YCACADQQRqIgNBkAFHDQALIAJBkAE2AgAgAkGYAWogAkGUARA6GiAAIAJBmAFqQQRyQZABEDogAS0A\ -kAE6AJABIAJBsAJqJAALbAEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBHGpBAjYCACADQSxqQQ\ -M2AgAgA0ICNwIMIANByIrAADYCCCADQQM2AiQgAyADQSBqNgIYIAMgA0EEajYCKCADIAM2AiAgA0EI\ -aiACEFkAC2wBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRxqQQI2AgAgA0EsakEDNgIAIANCAj\ -cCDCADQaiKwAA2AgggA0EDNgIkIAMgA0EgajYCGCADIANBBGo2AiggAyADNgIgIANBCGogAhBZAAts\ -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\ -zwAQcgALCQAgACABEAsACwkAIAAgARBjAAsHACAAEAwACwwAQqXwls/l/+mlVgsDAAALAgALAgALC/\ -7UgIAAAQBBgIDAAAv0VPQFEABQAAAAlQAAAAkAAABCTEFLRTJCQkxBS0UyQi0yNTZCTEFLRTJCLTM4\ -NEJMQUtFMlNCTEFLRTNLRUNDQUstMjI0S0VDQ0FLLTI1NktFQ0NBSy0zODRLRUNDQUstNTEyTUQ0TU\ -Q1UklQRU1ELTE2MFNIQS0xU0hBLTIyNFNIQS0yNTZTSEEtMzg0U0hBLTUxMlRJR0VSdW5zdXBwb3J0\ -ZWQgYWxnb3JpdGhtbm9uLWRlZmF1bHQgbGVuZ3RoIHNwZWNpZmllZCBmb3Igbm9uLWV4dGVuZGFibG\ -UgYWxnb3JpdGhtbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc2NhcGFjaXR5IG92ZXJmbG93AOYA\ -EAAcAAAAMgIAAAUAAABBcnJheVZlYzogY2FwYWNpdHkgZXhjZWVkZWQgaW4gZXh0ZW5kL2Zyb21faX\ -Rlcn4vLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvYXJyYXl2\ -ZWMtMC43LjIvc3JjL2FycmF5dmVjLnJzAFMBEABQAAAAAQQAAAUAAABUBhAATQAAAAEGAAAJAAAAfi\ -8uY2FyZ28vcmVnaXN0cnkvc3JjL2dpdGh1Yi5jb20tMWVjYzYyOTlkYjllYzgyMy9ibGFrZTMtMS4z\ -LjAvc3JjL2xpYi5ycwAAAMQBEABJAAAAuQEAAAkAAADEARAASQAAAF8CAAAKAAAAxAEQAEkAAACNAg\ -AACQAAAMQBEABJAAAA3QIAAAoAAADEARAASQAAANYCAAAJAAAAxAEQAEkAAAABAwAAGQAAAMQBEABJ\ -AAAAAwMAAAkAAADEARAASQAAAAMDAAA4AAAAxAEQAEkAAAD4AwAAMgAAAMQBEABJAAAAqgQAABYAAA\ -DEARAASQAAALwEAAAWAAAAxAEQAEkAAADtBAAAEgAAAMQBEABJAAAA9wQAABIAAADEARAASQAAAGkF\ -AAAhAAAAEQAAAAQAAAAEAAAAEgAAABEAAAAgAAAAAQAAABMAAAARAAAABAAAAAQAAAASAAAAfi8uY2\ -FyZ28vcmVnaXN0cnkvc3JjL2dpdGh1Yi5jb20tMWVjYzYyOTlkYjllYzgyMy9hcnJheXZlYy0wLjcu\ -Mi9zcmMvYXJyYXl2ZWNfaW1wbC5ycwAAACADEABVAAAAJwAAACAAAABDYXBhY2l0eUVycm9yAAAAiA\ -MQAA0AAABpbnN1ZmZpY2llbnQgY2FwYWNpdHkAAACgAxAAFQAAABEAAAAAAAAAAQAAABQAAABpbmRl\ -eCBvdXQgb2YgYm91bmRzOiB0aGUgbGVuIGlzICBidXQgdGhlIGluZGV4IGlzIAAA0AMQACAAAADwAx\ -AAEgAAADogAACgCBAAAAAAABQEEAACAAAAKTAwMDEwMjAzMDQwNTA2MDcwODA5MTAxMTEyMTMxNDE1\ -MTYxNzE4MTkyMDIxMjIyMzI0MjUyNjI3MjgyOTMwMzEzMjMzMzQzNTM2MzczODM5NDA0MTQyNDM0ND\ -Q1NDY0NzQ4NDk1MDUxNTI1MzU0NTU1NjU3NTg1OTYwNjE2MjYzNjQ2NTY2Njc2ODY5NzA3MTcyNzM3\ -NDc1NzY3Nzc4Nzk4MDgxODI4Mzg0ODU4Njg3ODg4OTkwOTE5MjkzOTQ5NTk2OTc5ODk5cmFuZ2Ugc3\ -RhcnQgaW5kZXggIG91dCBvZiByYW5nZSBmb3Igc2xpY2Ugb2YgbGVuZ3RoIAAAAPEEEAASAAAAAwUQ\ -ACIAAAByYW5nZSBlbmQgaW5kZXggOAUQABAAAAADBRAAIgAAAHNsaWNlIGluZGV4IHN0YXJ0cyBhdC\ -AgYnV0IGVuZHMgYXQgAFgFEAAWAAAAbgUQAA0AAABzb3VyY2Ugc2xpY2UgbGVuZ3RoICgpIGRvZXMg\ -bm90IG1hdGNoIGRlc3RpbmF0aW9uIHNsaWNlIGxlbmd0aCAojAUQABUAAAChBRAAKwAAACgEEAABAA\ -AAVAYQAE0AAAAQDAAADQAAAH4vLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5\ -ZGI5ZWM4MjMvYmxvY2stYnVmZmVyLTAuMTAuMC9zcmMvbGliLnJz9AUQAFAAAAD8AAAAJwAAAC9ydX\ -N0Yy9mMWVkZDA0Mjk1ODJkZDI5Y2NjYWNhZjUwZmQxMzRiMDU1OTNiZDljL2xpYnJhcnkvY29yZS9z\ -cmMvc2xpY2UvbW9kLnJzYXNzZXJ0aW9uIGZhaWxlZDogbWlkIDw9IHNlbGYubGVuKClUBhAATQAAAB\ -8GAAAJAAAAAAAAAAEjRWeJq83v/ty6mHZUMhDw4dLDAAAAAGfmCWqFrme7cvNuPDr1T6V/Ug5RjGgF\ -m6vZgx8ZzeBb2J4FwQfVfDYX3XAwOVkO9zELwP8RFVhop4/5ZKRP+r4IybzzZ+YJajunyoSFrme7K/\ -iU/nLzbjzxNh1fOvVPpdGC5q1/Ug5RH2w+K4xoBZtrvUH7q9mDH3khfhMZzeBb2J4FwV2du8sH1Xw2\ -KimaYhfdcDBaAVmROVkO99jsLxUxC8D/ZyYzZxEVWGiHSrSOp4/5ZA0uDNukT/q+HUi1R2Nsb3N1cm\ -UgaW52b2tlZCByZWN1cnNpdmVseSBvciBkZXN0cm95ZWQgYWxyZWFkeQEAAAAAAAAAgoAAAAAAAACK\ -gAAAAAAAgACAAIAAAACAi4AAAAAAAAABAACAAAAAAIGAAIAAAACACYAAAAAAAICKAAAAAAAAAIgAAA\ -AAAAAACYAAgAAAAAAKAACAAAAAAIuAAIAAAAAAiwAAAAAAAICJgAAAAAAAgAOAAAAAAACAAoAAAAAA\ -AICAAAAAAAAAgAqAAAAAAAAACgAAgAAAAICBgACAAAAAgICAAAAAAACAAQAAgAAAAAAIgACAAAAAgG\ -NhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWVsaWJyYXJ5L3N0ZC9zcmMv\ -cGFuaWNraW5nLnJzAMsIEAAcAAAABAIAAB4AAADvzauJZ0UjARAyVHaYutz+h+Gyw7SllvBjYWxsZW\ -QgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAAAAAABeDOn3fLGqAuyoQ+IDS0Ks\ -0/zVDeNbzXI6f/n2k5sBbZORH9L/eJnN4imAcMmhc3XDgyqSazJksXBYkQTuPohG5uwDcQXjrOpcU6\ -MIuGlBxXzE3o2RVOdMDPQN3N/0ogr6vk2nGG+3EGqr0VojtszG/+IvVyFhchMekp0Zb4xIGsoHANr0\ -+clLx0FS6Pbm9Sa2R1nq23mQhZKMnsnFhRhPS4ZvqR52jtd9wbVSjEI2jsFjMDcnaM9pbsW0mz3JB7\ -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\ -3DuJMfm9rxnVu1/coEVjymWUmyb+KIbsUZw/YAFdHrdJUKEGQORNsct29+VwbL/tK1Xv8hgSQaM2Wn\ -AIBwzLRGCYT3UUTecOKKgOQ9lWzWVQX1PXkSXBlu8KcvEjMsgfpWNzbzmgw251bGwgcG9pbnRlciBw\ -YXNzZWQgdG8gcnVzdHJlY3Vyc2l2ZSB1c2Ugb2YgYW4gb2JqZWN0IGRldGVjdGVkIHdoaWNoIHdvdW\ -xkIGxlYWQgdG8gdW5zYWZlIGFsaWFzaW5nIGluIHJ1c3QAAAQAAAAAAAAAQAAAACAAAAAwAAAAIAAA\ -ACAAAAAcAAAAIAAAADAAAABAAAAAEAAAABAAAAAUAAAAFAAAABwAAAAgAAAAMAAAAEAAAAAcAAAAIA\ -AAADAAAABAAAAAIAAAAEAAAAAYAAAAQAAAACAAAAAwAAAAIAAAACAAAAAcAAAAIAAAADAAAABAAAAA\ -EAAAABAAAAAUAAAAFAAAABwAAAAgAAAAMAAAAEAAAAAcAAAAIAAAADAAAABAAAAAIAAAAEAAAAAYAA\ -AAALq4gIAABG5hbWUBr7iAgAB5AEVqc19zeXM6OlR5cGVFcnJvcjo6bmV3OjpfX3diZ19uZXdfYTRi\ -NjFhMGY1NDgyNGNmZDo6aGQwZmM0NjMyMGI3ZGQ5OWEBO3dhc21fYmluZGdlbjo6X193YmluZGdlbl\ -9vYmplY3RfZHJvcF9yZWY6OmhkZGYxZjhlODllMjczZjBkAlVqc19zeXM6OlVpbnQ4QXJyYXk6OmJ5\ -dGVfbGVuZ3RoOjpfX3diZ19ieXRlTGVuZ3RoXzNlMjUwYjQxYTg5MTU3NTc6Omg1ZGQ4ZjQyMDFmYT\ -A0NGU2A1Vqc19zeXM6OlVpbnQ4QXJyYXk6OmJ5dGVfb2Zmc2V0OjpfX3diZ19ieXRlT2Zmc2V0XzQy\ -MDRlY2IyNGE2ZTVkZjk6Omg2MDEyMWZmY2ViMDUyYjQ4BExqc19zeXM6OlVpbnQ4QXJyYXk6OmJ1Zm\ -Zlcjo6X193YmdfYnVmZmVyX2ZhY2YwMzk4YTI4MWM4NWI6OmhiMDZhZjNlYzc5OTA3ZWY2BXlqc19z\ -eXM6OlVpbnQ4QXJyYXk6Om5ld193aXRoX2J5dGVfb2Zmc2V0X2FuZF9sZW5ndGg6Ol9fd2JnX25ld3\ -dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoXzRiOWI4YzRlM2Y1YWRiZmY6OmgwNzFlZmZhMTYwOTM5NjJj\ -Bkxqc19zeXM6OlVpbnQ4QXJyYXk6Omxlbmd0aDo6X193YmdfbGVuZ3RoXzFlYjhmYzYwOGEwZDRjZG\ -I6Omg4NjE2OGQxNDEzMTJkOWQ3BzJ3YXNtX2JpbmRnZW46Ol9fd2JpbmRnZW5fbWVtb3J5OjpoNzA2\ -NmYxYTQ1YzJkNzg4YQhVanNfc3lzOjpXZWJBc3NlbWJseTo6TWVtb3J5OjpidWZmZXI6Ol9fd2JnX2\ -J1ZmZlcl8zOTdlYWE0ZDcyZWU5NGRkOjpoOGVjMDRmOWE1ZDgzYjZhMwlGanNfc3lzOjpVaW50OEFy\ -cmF5OjpuZXc6Ol9fd2JnX25ld19hN2NlNDQ3ZjE1ZmY0OTZmOjpoYjNiYTQwNGE1ZDgzYjNkMgpGan\ -Nfc3lzOjpVaW50OEFycmF5OjpzZXQ6Ol9fd2JnX3NldF85NjlhZDBhNjBlNTFkMzIwOjpoODQyYjZh\ -YjRkODFiN2ZkYwsxd2FzbV9iaW5kZ2VuOjpfX3diaW5kZ2VuX3Rocm93OjpoYjNjZDc3YTExYWFhMD\ -UwMgwzd2FzbV9iaW5kZ2VuOjpfX3diaW5kZ2VuX3JldGhyb3c6OmgxYjVhNzgwMjNiZTU0MzExDUBk\ -ZW5vX3N0ZF93YXNtX2NyeXB0bzo6ZGlnZXN0OjpDb250ZXh0OjpkaWdlc3Q6OmgyYmNjMTg3MGQ5YW\ -IzODNjDixzaGEyOjpzaGE1MTI6OmNvbXByZXNzNTEyOjpoNmIxMGMzM2FkMDVjMzVmNg9KZGVub19z\ -dGRfd2FzbV9jcnlwdG86OmRpZ2VzdDo6Q29udGV4dDo6ZGlnZXN0X2FuZF9yZXNldDo6aDQ0ZjRiNj\ -M5NjUyZDdlMTcQQGRlbm9fc3RkX3dhc21fY3J5cHRvOjpkaWdlc3Q6OkNvbnRleHQ6OnVwZGF0ZTo6\ -aGUwZjdjN2YyMmZjYjkzYTIRLHNoYTI6OnNoYTI1Njo6Y29tcHJlc3MyNTY6OmhlODc4MDI5Y2NmZG\ -QzZGY0EjNibGFrZTI6OkJsYWtlMmJWYXJDb3JlOjpjb21wcmVzczo6aDlmODdhNzZhOGZiZWUyMmIT\ -KXJpcGVtZDo6YzE2MDo6Y29tcHJlc3M6OmgxODljNDc5ZmJkNjdhZmFkFDNibGFrZTI6OkJsYWtlMn\ -NWYXJDb3JlOjpjb21wcmVzczo6aDlkZGE5YzJhMmI2MTc2ODkVK3NoYTE6OmNvbXByZXNzOjpjb21w\ -cmVzczo6aDUwZTVkODNlOTFkNjU0YWEWO2Rlbm9fc3RkX3dhc21fY3J5cHRvOjpEaWdlc3RDb250ZX\ -h0OjpuZXc6Omg4NTJmMGUyNTRkYTI0NDJhFzpkbG1hbGxvYzo6ZGxtYWxsb2M6OkRsbWFsbG9jPEE+\ -OjptYWxsb2M6OmgyYTI3MjA3ZWU5YWY3ZmU5GCx0aWdlcjo6Y29tcHJlc3M6OmNvbXByZXNzOjpoNm\ -QyNThmYmY3NTQ4YmZlMRktYmxha2UzOjpPdXRwdXRSZWFkZXI6OmZpbGw6OmhhOWMyNzBjOWI3ZmY0\ -MWVlGjZibGFrZTM6OnBvcnRhYmxlOjpjb21wcmVzc19pbl9wbGFjZTo6aGM0YWQ3NDc3Y2JmNTJmMG\ -UbE2RpZ2VzdGNvbnRleHRfY2xvbmUcZTxkaWdlc3Q6OmNvcmVfYXBpOjp3cmFwcGVyOjpDb3JlV3Jh\ -cHBlcjxUPiBhcyBkaWdlc3Q6OlVwZGF0ZT46OnVwZGF0ZTo6e3tjbG9zdXJlfX06OmhlMWZhYWExOW\ -M5MTM0ODllHWg8bWQ1OjpNZDVDb3JlIGFzIGRpZ2VzdDo6Y29yZV9hcGk6OkZpeGVkT3V0cHV0Q29y\ -ZT46OmZpbmFsaXplX2ZpeGVkX2NvcmU6Ont7Y2xvc3VyZX19OjpoNTZjODcxYTc1MGM1MTgwZB4wYm\ -xha2UzOjpjb21wcmVzc19zdWJ0cmVlX3dpZGU6Omg5OTVmOTJhMDk5ZDk4NjM0HzhkbG1hbGxvYzo6\ -ZGxtYWxsb2M6OkRsbWFsbG9jPEE+OjpmcmVlOjpoY2I3OTQ3YTlhN2UyODJjYSAgbWQ0Ojpjb21wcm\ -Vzczo6aDkwZDU0MDM2Y2E2MzNlM2MhQWRsbWFsbG9jOjpkbG1hbGxvYzo6RGxtYWxsb2M8QT46OmRp\ -c3Bvc2VfY2h1bms6OmgyZjkwYmRkZmFiOWZkYWY5IhNkaWdlc3Rjb250ZXh0X3Jlc2V0I3I8c2hhMj\ -o6Y29yZV9hcGk6OlNoYTUxMlZhckNvcmUgYXMgZGlnZXN0Ojpjb3JlX2FwaTo6VmFyaWFibGVPdXRw\ -dXRDb3JlPjo6ZmluYWxpemVfdmFyaWFibGVfY29yZTo6aDllYTRhMjE1OGUwNzAzM2IkL2JsYWtlMz\ -o6SGFzaGVyOjpmaW5hbGl6ZV94b2Y6OmhiODgzZTZjNWM0ZTVkNDBiJSBrZWNjYWs6OmYxNjAwOjpo\ -YTgyNTc5MGNmMjVhNWY1ZSYsY29yZTo6Zm10OjpGb3JtYXR0ZXI6OnBhZDo6aDQ5ZDJjZmNjYWZiYm\ -RlNGQnDl9fcnVzdF9yZWFsbG9jKHI8c2hhMjo6Y29yZV9hcGk6OlNoYTI1NlZhckNvcmUgYXMgZGln\ -ZXN0Ojpjb3JlX2FwaTo6VmFyaWFibGVPdXRwdXRDb3JlPjo6ZmluYWxpemVfdmFyaWFibGVfY29yZT\ -o6aDAzYTkzMGI4Yzc0YzllZDUpXTxzaGExOjpTaGExQ29yZSBhcyBkaWdlc3Q6OmNvcmVfYXBpOjpG\ -aXhlZE91dHB1dENvcmU+OjpmaW5hbGl6ZV9maXhlZF9jb3JlOjpoYjVkOWVjNzAyNDhlMTgyMCoxYm\ -xha2UzOjpIYXNoZXI6Om1lcmdlX2N2X3N0YWNrOjpoNDdiNmUyNGU2N2UyMTY1Yis1Y29yZTo6Zm10\ -OjpGb3JtYXR0ZXI6OnBhZF9pbnRlZ3JhbDo6aGM2Njk0N2IxZGVkNTc4YWEsI2NvcmU6OmZtdDo6d3\ -JpdGU6OmhiYmFmMzlmMDliZjQ5ZWZiLTRibGFrZTM6OmNvbXByZXNzX3BhcmVudHNfcGFyYWxsZWw6\ -OmhhMDczMmZhY2IxMjc2OWJiLmQ8cmlwZW1kOjpSaXBlbWQxNjBDb3JlIGFzIGRpZ2VzdDo6Y29yZV\ -9hcGk6OkZpeGVkT3V0cHV0Q29yZT46OmZpbmFsaXplX2ZpeGVkX2NvcmU6OmhkZThmYzJhZjcxMWYx\ -ODVmL1s8bWQ1OjpNZDVDb3JlIGFzIGRpZ2VzdDo6Y29yZV9hcGk6OkZpeGVkT3V0cHV0Q29yZT46Om\ -ZpbmFsaXplX2ZpeGVkX2NvcmU6OmgwYjMwMDNlNDg0MjlhYzNkMFs8bWQ0OjpNZDRDb3JlIGFzIGRp\ -Z2VzdDo6Y29yZV9hcGk6OkZpeGVkT3V0cHV0Q29yZT46OmZpbmFsaXplX2ZpeGVkX2NvcmU6OmgzZT\ -JiMzAwNzMwYWE4YWYwMV88dGlnZXI6OlRpZ2VyQ29yZSBhcyBkaWdlc3Q6OmNvcmVfYXBpOjpGaXhl\ -ZE91dHB1dENvcmU+OjpmaW5hbGl6ZV9maXhlZF9jb3JlOjpoNDU3M2E0MGViYzU0Y2E1MzIwZGxtYW\ -xsb2M6OkRsbWFsbG9jPEE+OjptYWxsb2M6OmgxODlmYmNhMDM3M2FiODI4M2U8ZGlnZXN0Ojpjb3Jl\ -X2FwaTo6eG9mX3JlYWRlcjo6WG9mUmVhZGVyQ29yZVdyYXBwZXI8VD4gYXMgZGlnZXN0OjpYb2ZSZW\ -FkZXI+OjpyZWFkOjpoOGE2ZDliYzFkOGM4YTc0NTRlPGRpZ2VzdDo6Y29yZV9hcGk6OnhvZl9yZWFk\ -ZXI6OlhvZlJlYWRlckNvcmVXcmFwcGVyPFQ+IGFzIGRpZ2VzdDo6WG9mUmVhZGVyPjo6cmVhZDo6aD\ -c0YzJhMGFkMGJjOGFmODU1LWJsYWtlMzo6Q2h1bmtTdGF0ZTo6dXBkYXRlOjpoYzU4OGE4Y2Q3YzI2\ -Y2VmNTYvY29yZTo6Zm10OjpudW06OmltcDo6Zm10X3U2NDo6aDY2MjhhM2U3MjI3ZTg1NTM3BmRpZ2\ -VzdDg+ZGVub19zdGRfd2FzbV9jcnlwdG86OkRpZ2VzdENvbnRleHQ6OnVwZGF0ZTo6aGJkOTQ0YWQ2\ -M2Y2MjlkYTE5WzxibG9ja19idWZmZXI6OkJsb2NrQnVmZmVyPEJsb2NrU2l6ZSxLaW5kPiBhcyBjb3\ -JlOjpjbG9uZTo6Q2xvbmU+OjpjbG9uZTo6aDFlNjc5OGM0NDQwOWIxM2M6Bm1lbWNweTsbZGlnZXN0\ -Y29udGV4dF9kaWdlc3RBbmREcm9wPAZtZW1zZXQ9P3dhc21fYmluZGdlbjo6Y29udmVydDo6Y2xvc3\ -VyZXM6Omludm9rZTNfbXV0OjpoNGE4M2FkMzFhZDllYjlkOT4UZGlnZXN0Y29udGV4dF9kaWdlc3Q/\ -LWpzX3N5czo6VWludDhBcnJheTo6dG9fdmVjOjpoNmVhOWI5MWQ1MjIzZGJiZEAcZGlnZXN0Y29udG\ -V4dF9kaWdlc3RBbmRSZXNldEERZGlnZXN0Y29udGV4dF9uZXdCLmNvcmU6OnJlc3VsdDo6dW53cmFw\ -X2ZhaWxlZDo6aGQ1ODRlZmI3Yjg0YmYzMjZDUDxhcnJheXZlYzo6ZXJyb3JzOjpDYXBhY2l0eUVycm\ -9yPFQ+IGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6Omg4Y2EzNjljOTgxMGMyMjI5RFA8YXJyYXl2\ -ZWM6OmVycm9yczo6Q2FwYWNpdHlFcnJvcjxUPiBhcyBjb3JlOjpmbXQ6OkRlYnVnPjo6Zm10OjpoYW\ -JkMmI2NDNkZDBlY2QyY0VbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+\ -IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoMzFiOWEwZGUxMGRmODY4OUZbPGJsb2NrX2\ -J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46\ -OmNsb25lOjpoNmQ1ZmZjMTIxNjVhNDVlZkdbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2\ -tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoZTQ1NzhiZDExMWQ2NDYw\ -N0hbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb2\ -5lOjpDbG9uZT46OmNsb25lOjpoNzY2ZWMwMWYwODU4YjU3OElbPGJsb2NrX2J1ZmZlcjo6QmxvY2tC\ -dWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFzIGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoMzg2Nz\ -U4YmUyNWRiYzlmYUpbPGJsb2NrX2J1ZmZlcjo6QmxvY2tCdWZmZXI8QmxvY2tTaXplLEtpbmQ+IGFz\ -IGNvcmU6OmNsb25lOjpDbG9uZT46OmNsb25lOjpoMzhlMzdmZDQxYjU4ZTJmNks/Y29yZTo6c2xpY2\ -U6OmluZGV4OjpzbGljZV9lbmRfaW5kZXhfbGVuX2ZhaWw6OmhjM2UwZGNmNmQ4NjZlMWJlTEFjb3Jl\ -OjpzbGljZTo6aW5kZXg6OnNsaWNlX3N0YXJ0X2luZGV4X2xlbl9mYWlsOjpoNmMxMDlhYzg1ODdmMj\ -kxMU09Y29yZTo6c2xpY2U6OmluZGV4OjpzbGljZV9pbmRleF9vcmRlcl9mYWlsOjpoZDI3ZGMzODVh\ -N2VjMTNjMU5OY29yZTo6c2xpY2U6OjxpbXBsIFtUXT46OmNvcHlfZnJvbV9zbGljZTo6bGVuX21pc2\ -1hdGNoX2ZhaWw6OmhlZGQxMGM1YmNjMDI2MTBjTzZjb3JlOjpwYW5pY2tpbmc6OnBhbmljX2JvdW5k\ -c19jaGVjazo6aGNlMDUwMmY2MzcxMWZhZDhQN3N0ZDo6cGFuaWNraW5nOjpydXN0X3BhbmljX3dpdG\ -hfaG9vazo6aDYwNmQ3YzdmN2E0MjNiOThROmJsYWtlMjo6Qmxha2UyYlZhckNvcmU6Om5ld193aXRo\ -X3BhcmFtczo6aDU4N2Y5YTcyNzlmMzcxNmRSGF9fd2JnX2RpZ2VzdGNvbnRleHRfZnJlZVMGbWVtY2\ -1wVENjb3JlOjpmbXQ6OkZvcm1hdHRlcjo6cGFkX2ludGVncmFsOjp3cml0ZV9wcmVmaXg6OmhhYTBh\ -ZGYwMGNiNjdkZWQ3VSljb3JlOjpwYW5pY2tpbmc6OnBhbmljOjpoZWMxZmMwNTdiZDBiYWYwYlYUZG\ -lnZXN0Y29udGV4dF91cGRhdGVXEV9fd2JpbmRnZW5fbWFsbG9jWDpibGFrZTI6OkJsYWtlMnNWYXJD\ -b3JlOjpuZXdfd2l0aF9wYXJhbXM6Omg1ZmY0NTlmMjMxYWI4ZDY4WS1jb3JlOjpwYW5pY2tpbmc6On\ -BhbmljX2ZtdDo6aDYzMTRiNWM5MWFiZTczNDlaP3dhc21fYmluZGdlbjo6Y29udmVydDo6Y2xvc3Vy\ -ZXM6Omludm9rZTRfbXV0OjpoMGRhMGY0NDM1YWYyZTNlYVs/d2FzbV9iaW5kZ2VuOjpjb252ZXJ0Oj\ -pjbG9zdXJlczo6aW52b2tlM19tdXQ6OmgwMDg1MjE2YzlhMTJhZWRmXD93YXNtX2JpbmRnZW46OmNv\ -bnZlcnQ6OmNsb3N1cmVzOjppbnZva2UzX211dDo6aDNmMGUyMmI1ODczODUwMDZdP3dhc21fYmluZG\ -dlbjo6Y29udmVydDo6Y2xvc3VyZXM6Omludm9rZTNfbXV0OjpoMzJlNGU5MGYwYzA4MjM5MF4/d2Fz\ -bV9iaW5kZ2VuOjpjb252ZXJ0OjpjbG9zdXJlczo6aW52b2tlM19tdXQ6OmhiNWQ0MWNhNmRjZDZiMz\ -Q4Xz93YXNtX2JpbmRnZW46OmNvbnZlcnQ6OmNsb3N1cmVzOjppbnZva2UzX211dDo6aDczZGIzMGMw\ -OGZiNWJjZDBgP3dhc21fYmluZGdlbjo6Y29udmVydDo6Y2xvc3VyZXM6Omludm9rZTNfbXV0OjpoOT\ -k0MDdiYzUzNzNkMzBmOWE/d2FzbV9iaW5kZ2VuOjpjb252ZXJ0OjpjbG9zdXJlczo6aW52b2tlM19t\ -dXQ6OmhmODAzN2M3ZmFjMTc4MDllYj93YXNtX2JpbmRnZW46OmNvbnZlcnQ6OmNsb3N1cmVzOjppbn\ -Zva2UyX211dDo6aDkxMTRjMzZhYmJlNDBmNzljQ3N0ZDo6cGFuaWNraW5nOjpiZWdpbl9wYW5pY19o\ -YW5kbGVyOjp7e2Nsb3N1cmV9fTo6aDliOTg1YTI5M2FhYzRjZTFkEl9fd2JpbmRnZW5fcmVhbGxvY2\ -U/d2FzbV9iaW5kZ2VuOjpjb252ZXJ0OjpjbG9zdXJlczo6aW52b2tlMV9tdXQ6OmhkMWIyODM5MTNl\ -Y2RiMGQxZjJjb3JlOjpvcHRpb246Ok9wdGlvbjxUPjo6dW53cmFwOjpoNWE3ZGY5MWI1ZDYwOTBjYm\ -cwPCZUIGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6OmgwZDljZDYyNmRhYmFhMWVmaDI8JlQgYXMg\ -Y29yZTo6Zm10OjpEaXNwbGF5Pjo6Zm10OjpoZDMwM2JjMTZhZWU1NTkxMGkRcnVzdF9iZWdpbl91bn\ -dpbmRqD19fd2JpbmRnZW5fZnJlZWs0YWxsb2M6OnJhd192ZWM6OmNhcGFjaXR5X292ZXJmbG93Ojpo\ -NGI0OTAxNDgzMGNhZmU2M2wzYXJyYXl2ZWM6OmFycmF5dmVjOjpleHRlbmRfcGFuaWM6OmgzN2Q1OT\ -hkNzVkMGQyZTZmbTljb3JlOjpvcHM6OmZ1bmN0aW9uOjpGbk9uY2U6OmNhbGxfb25jZTo6aDJhYjg2\ -NzY3ZWMxN2M1MGRuH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXJvTmNvcmU6OmZtdDo6bn\ -VtOjppbXA6OjxpbXBsIGNvcmU6OmZtdDo6RGlzcGxheSBmb3IgdTMyPjo6Zm10OjpoMDQ2ZWNjNWVh\ -YWIzNGNkNXAxd2FzbV9iaW5kZ2VuOjpfX3J0Ojp0aHJvd19udWxsOjpoZGE3OGMxMGZhOTdiYTRjOH\ -Eyd2FzbV9iaW5kZ2VuOjpfX3J0Ojpib3Jyb3dfZmFpbDo6aDU0MzNjYzM4Zjk0MTk1ZmZyKndhc21f\ -YmluZGdlbjo6dGhyb3dfc3RyOjpoYTdhZjVhZTY3MjEyZjIxYXNJc3RkOjpzeXNfY29tbW9uOjpiYW\ -NrdHJhY2U6Ol9fcnVzdF9lbmRfc2hvcnRfYmFja3RyYWNlOjpoYTAzYWJlZjAyYThiNzBmZHQqd2Fz\ -bV9iaW5kZ2VuOjp0aHJvd192YWw6OmgwNWYxN2ZkOTc3Nzc3YjlkdTE8VCBhcyBjb3JlOjphbnk6Ok\ -FueT46OnR5cGVfaWQ6OmhhMGM0NDkyMjE2ZDRkMmU3dgpydXN0X3BhbmljdzdzdGQ6OmFsbG9jOjpk\ -ZWZhdWx0X2FsbG9jX2Vycm9yX2hvb2s6OmhmOWMzOTNiYTNjZDI4N2UxeG9jb3JlOjpwdHI6OmRyb3\ -BfaW5fcGxhY2U8JmNvcmU6Oml0ZXI6OmFkYXB0ZXJzOjpjb3BpZWQ6OkNvcGllZDxjb3JlOjpzbGlj\ -ZTo6aXRlcjo6SXRlcjx1OD4+Pjo6aDYzYzJlMTQ5N2I1MmYzZDcA74CAgAAJcHJvZHVjZXJzAghsYW\ -5ndWFnZQEEUnVzdAAMcHJvY2Vzc2VkLWJ5AwVydXN0Yx0xLjU3LjAgKGYxZWRkMDQyOSAyMDIxLTEx\ -LTI5KQZ3YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbgYwLjIuNzg=\ -"); -const heap = new Array(32).fill(undefined); -heap.push(undefined, null, true, false); -function getObject(idx) { - return heap[idx]; -} -let heap_next = heap.length; -function dropObject(idx) { - if (idx < 36) return; - heap[idx] = heap_next; - heap_next = idx; -} -function takeObject(idx) { - const ret = getObject(idx); - dropObject(idx); - return ret; -} -function addHeapObject(obj) { - if (heap_next === heap.length) heap.push(heap.length + 1); - const idx = heap_next; - heap_next = heap[idx]; - heap[idx] = obj; - return idx; -} -let cachedTextDecoder = new TextDecoder("utf-8", { - ignoreBOM: true, - fatal: true -}); -cachedTextDecoder.decode(); -let cachegetUint8Memory0 = null; -function getUint8Memory0() { - if (cachegetUint8Memory0 === null || cachegetUint8Memory0.buffer !== wasm.memory.buffer) { - cachegetUint8Memory0 = new Uint8Array(wasm.memory.buffer); - } - return cachegetUint8Memory0; -} -function getStringFromWasm0(ptr, len10) { - return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len10)); -} -let WASM_VECTOR_LEN = 0; -let cachedTextEncoder = new TextEncoder("utf-8"); -const encodeString = function(arg, view) { - return cachedTextEncoder.encodeInto(arg, view); + encode: encode2, + decode: decode1 }; -function passStringToWasm0(arg, malloc, realloc) { - if (realloc === undefined) { - const buf = cachedTextEncoder.encode(arg); - const ptr = malloc(buf.length); - getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); - WASM_VECTOR_LEN = buf.length; - return ptr; - } - let len11 = arg.length; - let ptr = malloc(len11); - const mem1 = getUint8Memory0(); - let offset4 = 0; - for(; offset4 < len11; offset4++){ - const code25 = arg.charCodeAt(offset4); - if (code25 > 0x7F) break; - mem1[ptr + offset4] = code25; - } - if (offset4 !== len11) { - if (offset4 !== 0) { - arg = arg.slice(offset4); - } - ptr = realloc(ptr, len11, len11 = offset4 + arg.length * 3); - const view = getUint8Memory0().subarray(ptr + offset4, ptr + len11); - const ret = encodeString(arg, view); - offset4 += ret.written; - } - WASM_VECTOR_LEN = offset4; - return ptr; -} -function isLikeNone(x4) { - return x4 === undefined || x4 === null; -} -let cachegetInt32Memory0 = null; -function getInt32Memory0() { - if (cachegetInt32Memory0 === null || cachegetInt32Memory0.buffer !== wasm.memory.buffer) { - cachegetInt32Memory0 = new Int32Array(wasm.memory.buffer); - } - return cachegetInt32Memory0; -} -function getArrayU8FromWasm0(ptr, len12) { - return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len12); -} -function digest(algorithm, data24, length) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - var ptr0 = passStringToWasm0(algorithm, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - var len0 = WASM_VECTOR_LEN; - wasm.digest(retptr, ptr0, len0, addHeapObject(data24), !isLikeNone(length), isLikeNone(length) ? 0 : length); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var v1 = getArrayU8FromWasm0(r0, r1).slice(); - wasm.__wbindgen_free(r0, r1 * 1); - return v1; - } finally{ - wasm.__wbindgen_add_to_stack_pointer(16); - } -} -const DigestContextFinalization = new FinalizationRegistry((ptr)=>wasm.__wbg_digestcontext_free(ptr)); -class DigestContext { - static __wrap(ptr) { - const obj = Object.create(DigestContext.prototype); - obj.ptr = ptr; - DigestContextFinalization.register(obj, obj.ptr, obj); - return obj; - } - __destroy_into_raw() { - const ptr = this.ptr; - this.ptr = 0; - DigestContextFinalization.unregister(this); - return ptr; - } - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_digestcontext_free(ptr); - } - constructor(algorithm){ - var ptr0 = passStringToWasm0(algorithm, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - var len0 = WASM_VECTOR_LEN; - var ret = wasm.digestcontext_new(ptr0, len0); - return DigestContext.__wrap(ret); - } - update(data25) { - wasm.digestcontext_update(this.ptr, addHeapObject(data25)); - } - digest(length) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.digestcontext_digest(retptr, this.ptr, !isLikeNone(length), isLikeNone(length) ? 0 : length); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm0(r0, r1).slice(); - wasm.__wbindgen_free(r0, r1 * 1); - return v0; - } finally{ - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - digestAndReset(length) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.digestcontext_digestAndReset(retptr, this.ptr, !isLikeNone(length), isLikeNone(length) ? 0 : length); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm0(r0, r1).slice(); - wasm.__wbindgen_free(r0, r1 * 1); - return v0; - } finally{ - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - digestAndDrop(length) { - try { - const ptr = this.__destroy_into_raw(); - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.digestcontext_digestAndDrop(retptr, ptr, !isLikeNone(length), isLikeNone(length) ? 0 : length); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm0(r0, r1).slice(); - wasm.__wbindgen_free(r0, r1 * 1); - return v0; - } finally{ - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - reset() { - wasm.digestcontext_reset(this.ptr); - } - clone() { - var ret = wasm.digestcontext_clone(this.ptr); - return DigestContext.__wrap(ret); +function addPaddingToBase64url(base64url) { + if (base64url.length % 4 === 2) return base64url + "=="; + if (base64url.length % 4 === 3) return base64url + "="; + if (base64url.length % 4 === 1) { + throw new TypeError("Illegal base64url string!"); } + return base64url; } -const imports = { - __wbindgen_placeholder__: { - __wbg_new_a4b61a0f54824cfd: function(arg0, arg1) { - var ret = new TypeError(getStringFromWasm0(arg0, arg1)); - return addHeapObject(ret); - }, - __wbindgen_object_drop_ref: function(arg0) { - takeObject(arg0); - }, - __wbg_byteLength_3e250b41a8915757: function(arg0) { - var ret = getObject(arg0).byteLength; - return ret; - }, - __wbg_byteOffset_4204ecb24a6e5df9: function(arg0) { - var ret = getObject(arg0).byteOffset; - return ret; - }, - __wbg_buffer_facf0398a281c85b: function(arg0) { - var ret = getObject(arg0).buffer; - return addHeapObject(ret); - }, - __wbg_newwithbyteoffsetandlength_4b9b8c4e3f5adbff: function(arg0, arg1, arg2) { - var ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); - return addHeapObject(ret); - }, - __wbg_length_1eb8fc608a0d4cdb: function(arg0) { - var ret = getObject(arg0).length; - return ret; - }, - __wbindgen_memory: function() { - var ret = wasm.memory; - return addHeapObject(ret); - }, - __wbg_buffer_397eaa4d72ee94dd: function(arg0) { - var ret = getObject(arg0).buffer; - return addHeapObject(ret); - }, - __wbg_new_a7ce447f15ff496f: function(arg0) { - var ret = new Uint8Array(getObject(arg0)); - return addHeapObject(ret); - }, - __wbg_set_969ad0a60e51d320: function(arg0, arg1, arg2) { - getObject(arg0).set(getObject(arg1), arg2 >>> 0); - }, - __wbindgen_throw: function(arg0, arg1) { - throw new Error(getStringFromWasm0(arg0, arg1)); - }, - __wbindgen_rethrow: function(arg0) { - throw takeObject(arg0); - } +function convertBase64urlToBase64(b64url) { + if (!/^[-_A-Z0-9]*?={0,2}$/i.test(b64url)) { + throw new TypeError("Failed to decode base64url: invalid character"); } -}; -const wasmModule = new WebAssembly.Module(data); -const wasmInstance = new WebAssembly.Instance(wasmModule, imports); -const wasm = wasmInstance.exports; -const _wasm = wasm; -const _wasmModule = wasmModule; -const _wasmInstance = wasmInstance; -const mod11 = { - digest: digest, - DigestContext: DigestContext, - _wasm: _wasm, - _wasmModule: _wasmModule, - _wasmInstance: _wasmInstance, - _wasmBytes: data -}; -const digestAlgorithms = [ - "BLAKE2B-256", - "BLAKE2B-384", - "BLAKE2B", - "BLAKE2S", - "BLAKE3", - "KECCAK-224", - "KECCAK-256", - "KECCAK-384", - "KECCAK-512", - "SHA-384", - "SHA3-224", - "SHA3-256", - "SHA3-384", - "SHA3-512", - "SHAKE128", - "SHAKE256", - "TIGER", - "RIPEMD-160", - "SHA-224", - "SHA-256", - "SHA-512", - "MD4", - "MD5", - "SHA-1", -]; -function swap32(val) { - return (val & 0xff) << 24 | (val & 0xff00) << 8 | val >> 8 & 0xff00 | val >> 24 & 0xff; -} -function n16(n81) { - return n81 & 0xffff; -} -function n32(n82) { - return n82 >>> 0; -} -function add32WithCarry(a14, b14) { - const added = n32(a14) + n32(b14); - return [ - n32(added), - added > 0xffffffff ? 1 : 0 - ]; + return addPaddingToBase64url(b64url).replace(/\-/g, "+").replace(/_/g, "/"); } -function mul32WithCarry(a15, b15) { - const al = n16(a15); - const ah = n16(a15 >>> 16); - const bl = n16(b15); - const bh = n16(b15 >>> 16); - const [t91, tc] = add32WithCarry(al * bh, ah * bl); - const [n83, nc] = add32WithCarry(al * bl, n32(t91 << 16)); - const carry = nc + (tc << 16) + n16(t91 >>> 16) + ah * bh; - return [ - n83, - carry - ]; +function convertBase64ToBase64url(b64) { + return b64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } -function mul32(a16, b16) { - const al = n16(a16); - const ah = a16 - al; - return n32(n32(ah * b16) + al * b16); +function encode3(data31) { + return convertBase64ToBase64url(encode2(data31)); } -function mul64([ah, al], [bh, bl]) { - const [n84, c14] = mul32WithCarry(al, bl); - return [ - n32(mul32(al, bh) + mul32(ah, bl) + c14), - n84 - ]; +function decode2(b64url) { + return decode1(convertBase64urlToBase64(b64url)); } -const prime32 = 16777619; -const fnv32 = (data26)=>{ - let hash2 = 2166136261; - data26.forEach((c15)=>{ - hash2 = mul32(hash2, prime32); - hash2 ^= c15; - }); - return Uint32Array.from([ - swap32(hash2) - ]).buffer; -}; -const fnv32a = (data27)=>{ - let hash3 = 2166136261; - data27.forEach((c16)=>{ - hash3 ^= c16; - hash3 = mul32(hash3, prime32); - }); - return Uint32Array.from([ - swap32(hash3) - ]).buffer; -}; -const prime64Lo = 435; -const prime64Hi = 256; -const fnv64 = (data28)=>{ - let hashLo = 2216829733; - let hashHi = 3421674724; - data28.forEach((c17)=>{ - [hashHi, hashLo] = mul64([ - hashHi, - hashLo - ], [ - prime64Hi, - prime64Lo - ]); - hashLo ^= c17; - }); - return new Uint32Array([ - swap32(hashHi >>> 0), - swap32(hashLo >>> 0) - ]).buffer; -}; -const fnv64a = (data29)=>{ - let hashLo = 2216829733; - let hashHi = 3421674724; - data29.forEach((c18)=>{ - hashLo ^= c18; - [hashHi, hashLo] = mul64([ - hashHi, - hashLo - ], [ - prime64Hi, - prime64Lo - ]); - }); - return new Uint32Array([ - swap32(hashHi >>> 0), - swap32(hashLo >>> 0) - ]).buffer; -}; -const fnv = (name7, buf)=>{ - if (!buf) { - throw new TypeError("no data provided for hashing"); - } - switch(name7){ - case "FNV32": - return fnv32(buf); - case "FNV64": - return fnv64(buf); - case "FNV32A": - return fnv32a(buf); - case "FNV64A": - return fnv64a(buf); - default: - throw new TypeError(`unsupported fnv digest: ${name7}`); - } -}; +new TextEncoder(); const webCrypto = ((crypto)=>({ getRandomValues: crypto.getRandomValues?.bind(crypto), randomUUID: crypto.randomUUID?.bind(crypto), @@ -22838,24 +25616,24 @@ const webCrypto = ((crypto)=>({ wrapKey: crypto.subtle?.wrapKey?.bind(crypto.subtle) } }))(globalThis.crypto); -const bufferSourceBytes = (data30)=>{ +const bufferSourceBytes = (data32)=>{ let bytes9; - if (data30 instanceof Uint8Array) { - bytes9 = data30; - } else if (ArrayBuffer.isView(data30)) { - bytes9 = new Uint8Array(data30.buffer, data30.byteOffset, data30.byteLength); - } else if (data30 instanceof ArrayBuffer) { - bytes9 = new Uint8Array(data30); + if (data32 instanceof Uint8Array) { + bytes9 = data32; + } else if (ArrayBuffer.isView(data32)) { + bytes9 = new Uint8Array(data32.buffer, data32.byteOffset, data32.byteLength); + } else if (data32 instanceof ArrayBuffer) { + bytes9 = new Uint8Array(data32); } return bytes9; }; -const stdCrypto = ((x5)=>x5)({ +const stdCrypto = ((x6)=>x6)({ ...webCrypto, subtle: { ...webCrypto.subtle, - async digest (algorithm, data31) { + async digest (algorithm, data33) { const { name: name8 , length } = normalizeAlgorithm(algorithm); - const bytes10 = bufferSourceBytes(data31); + const bytes10 = bufferSourceBytes(data33); if (FNVAlgorithms.includes(name8)) { return fnv(name8, bytes10); } @@ -22864,11 +25642,12 @@ const stdCrypto = ((x5)=>x5)({ } else if (digestAlgorithms.includes(name8)) { if (bytes10) { return stdCrypto.subtle.digestSync(algorithm, bytes10); - } else if (data31[Symbol.iterator]) { - return stdCrypto.subtle.digestSync(algorithm, data31); - } else if (data31[Symbol.asyncIterator]) { - const context4 = new mod11.DigestContext(name8); - for await (const chunk5 of data31){ + } else if (data33[Symbol.iterator]) { + return stdCrypto.subtle.digestSync(algorithm, data33); + } else if (data33[Symbol.asyncIterator]) { + const wasmCrypto = instantiate(); + const context4 = new wasmCrypto.DigestContext(name8); + for await (const chunk5 of data33){ const chunkBytes = bufferSourceBytes(chunk5); if (!chunkBytes) { throw new TypeError("data contained chunk of the wrong type"); @@ -22880,22 +25659,23 @@ const stdCrypto = ((x5)=>x5)({ throw new TypeError("data must be a BufferSource or [Async]Iterable"); } } else if (webCrypto.subtle?.digest) { - return webCrypto.subtle.digest(algorithm, data31); + return webCrypto.subtle.digest(algorithm, data33); } else { throw new TypeError(`unsupported digest algorithm: ${algorithm}`); } }, - digestSync (algorithm, data32) { + digestSync (algorithm, data34) { algorithm = normalizeAlgorithm(algorithm); - const bytes11 = bufferSourceBytes(data32); + const bytes11 = bufferSourceBytes(data34); if (FNVAlgorithms.includes(algorithm.name)) { return fnv(algorithm.name, bytes11); } + const wasmCrypto = instantiate(); if (bytes11) { - return mod11.digest(algorithm.name, bytes11, algorithm.length).buffer; - } else if (data32[Symbol.iterator]) { - const context5 = new mod11.DigestContext(algorithm.name); - for (const chunk6 of data32){ + return wasmCrypto.digest(algorithm.name, bytes11, algorithm.length).buffer; + } else if (data34[Symbol.iterator]) { + const context5 = new wasmCrypto.DigestContext(algorithm.name); + for (const chunk6 of data34){ const chunkBytes = bufferSourceBytes(chunk6); if (!chunkBytes) { throw new TypeError("data contained chunk of the wrong type"); @@ -22906,7 +25686,8 @@ const stdCrypto = ((x5)=>x5)({ } else { throw new TypeError("data must be a BufferSource or Iterable"); } - } + }, + timingSafeEqual: timingSafeEqual2 } }); const FNVAlgorithms = [ @@ -22933,13 +25714,13 @@ function isHashedKeyAlgorithm(algorithm) { function isEcKeyAlgorithm(algorithm) { return typeof algorithm.namedCurve === "string"; } -function verify(alg, key33) { +function verify(alg, key36) { if (alg === "none") { - if (key33 !== null) throw new Error(`The alg '${alg}' does not allow a key.`); + if (key36 !== null) throw new Error(`The alg '${alg}' does not allow a key.`); else return true; } else { - if (!key33) throw new Error(`The alg '${alg}' demands a key.`); - const keyAlgorithm = key33.algorithm; + if (!key36) throw new Error(`The alg '${alg}' demands a key.`); + const keyAlgorithm = key36.algorithm; const algAlgorithm = getAlgorithm(alg); if (keyAlgorithm.name === algAlgorithm.name) { if (isHashedKeyAlgorithm(keyAlgorithm)) { @@ -23039,7 +25820,105 @@ function getAlgorithm(alg) { throw new Error(`The jwt's alg '${alg}' is not supported.`); } } -function addPaddingToBase64url(base64url) { +const base64abc3 = [ + "A", + "B", + "C", + "D", + "E", + "F", + "G", + "H", + "I", + "J", + "K", + "L", + "M", + "N", + "O", + "P", + "Q", + "R", + "S", + "T", + "U", + "V", + "W", + "X", + "Y", + "Z", + "a", + "b", + "c", + "d", + "e", + "f", + "g", + "h", + "i", + "j", + "k", + "l", + "m", + "n", + "o", + "p", + "q", + "r", + "s", + "t", + "u", + "v", + "w", + "x", + "y", + "z", + "0", + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "+", + "/", +]; +function encode4(data35) { + const uint8 = typeof data35 === "string" ? new TextEncoder().encode(data35) : data35 instanceof Uint8Array ? data35 : new Uint8Array(data35); + let result = "", i78; + const l10 = uint8.length; + for(i78 = 2; i78 < l10; i78 += 3){ + result += base64abc3[uint8[i78 - 2] >> 2]; + result += base64abc3[(uint8[i78 - 2] & 0x03) << 4 | uint8[i78 - 1] >> 4]; + result += base64abc3[(uint8[i78 - 1] & 0x0f) << 2 | uint8[i78] >> 6]; + result += base64abc3[uint8[i78] & 0x3f]; + } + if (i78 === l10 + 1) { + result += base64abc3[uint8[i78 - 2] >> 2]; + result += base64abc3[(uint8[i78 - 2] & 0x03) << 4]; + result += "=="; + } + if (i78 === l10) { + result += base64abc3[uint8[i78 - 2] >> 2]; + result += base64abc3[(uint8[i78 - 2] & 0x03) << 4 | uint8[i78 - 1] >> 4]; + result += base64abc3[(uint8[i78 - 1] & 0x0f) << 2]; + result += "="; + } + return result; +} +function decode3(b64) { + const binString = atob(b64); + const size = binString.length; + const bytes12 = new Uint8Array(size); + for(let i79 = 0; i79 < size; i79++){ + bytes12[i79] = binString.charCodeAt(i79); + } + return bytes12; +} +function addPaddingToBase64url1(base64url) { if (base64url.length % 4 === 2) return base64url + "=="; if (base64url.length % 4 === 3) return base64url + "="; if (base64url.length % 4 === 1) { @@ -23047,29 +25926,29 @@ function addPaddingToBase64url(base64url) { } return base64url; } -function convertBase64urlToBase64(b64url) { +function convertBase64urlToBase641(b64url) { if (!/^[-_A-Z0-9]*?={0,2}$/i.test(b64url)) { throw new TypeError("Failed to decode base64url: invalid character"); } - return addPaddingToBase64url(b64url).replace(/\-/g, "+").replace(/_/g, "/"); + return addPaddingToBase64url1(b64url).replace(/\-/g, "+").replace(/_/g, "/"); } -function convertBase64ToBase64url(b64) { +function convertBase64ToBase64url1(b64) { return b64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } -function encode2(data33) { - return convertBase64ToBase64url(encode(data33)); +function encode5(data36) { + return convertBase64ToBase64url1(encode4(data36)); } -function decode3(b64url) { - return decode(convertBase64urlToBase64(b64url)); +function decode4(b64url) { + return decode3(convertBase64urlToBase641(b64url)); } -const mod12 = { - addPaddingToBase64url: addPaddingToBase64url, - encode: encode2, - decode: decode3 +const mod11 = { + addPaddingToBase64url: addPaddingToBase64url1, + encode: encode5, + decode: decode4 }; const encoder7 = new TextEncoder(); -async function verify1(signature, key34, alg, signingInput) { - return key34 === null ? signature.length === 0 : await crypto.subtle.verify(getAlgorithm(alg), key34, signature, encoder7.encode(signingInput)); +async function verify1(signature, key37, alg, signingInput) { + return key37 === null ? signature.length === 0 : await crypto.subtle.verify(getAlgorithm(alg), key37, signature, encoder7.encode(signingInput)); } const decoder4 = new TextDecoder(); function isExpired(exp, leeway) { @@ -23087,12 +25966,9 @@ function is3Tuple(arr) { function hasInvalidTimingClaims(...claimValues) { return claimValues.some((claimValue)=>claimValue !== undefined ? typeof claimValue !== "number" : false); } -function isHeader(headerMaybe) { - return isObject(headerMaybe) && typeof headerMaybe.alg === "string"; -} -function decode4(jwt) { +function decode5(jwt) { try { - const arr = jwt.split(".").map(mod12.decode).map((uint8Array, index)=>index === 0 || index === 1 ? JSON.parse(decoder4.decode(uint8Array)) : uint8Array); + const arr = jwt.split(".").map(mod11.decode).map((uint8Array, index)=>index === 0 || index === 1 ? JSON.parse(decoder4.decode(uint8Array)) : uint8Array); if (is3Tuple(arr)) return arr; else throw new Error(); } catch { @@ -23100,33 +25976,32 @@ function decode4(jwt) { } } function validate([header, payload1, signature], { expLeeway =1 , nbfLeeway =1 } = {}) { - if (isHeader(header)) { - if (isObject(payload1)) { - if (hasInvalidTimingClaims(payload1.exp, payload1.nbf)) { - throw new Error(`The jwt has an invalid 'exp' or 'nbf' claim.`); - } - if (typeof payload1.exp === "number" && isExpired(payload1.exp, expLeeway)) { - throw RangeError("The jwt is expired."); - } - if (typeof payload1.nbf === "number" && isTooEarly(payload1.nbf, nbfLeeway)) { - throw RangeError("The jwt is used too early."); - } - return { - header, - payload: payload1, - signature - }; - } else { - throw new Error(`The jwt claims set is not a JSON object.`); + if (typeof header?.alg !== "string") { + throw new Error(`The jwt's 'alg' header parameter value must be a string.`); + } + if (isObject(payload1)) { + if (hasInvalidTimingClaims(payload1.exp, payload1.nbf)) { + throw new Error(`The jwt has an invalid 'exp' or 'nbf' claim.`); } + if (typeof payload1.exp === "number" && isExpired(payload1.exp, expLeeway)) { + throw RangeError("The jwt is expired."); + } + if (typeof payload1.nbf === "number" && isTooEarly(payload1.nbf, nbfLeeway)) { + throw RangeError("The jwt is used too early."); + } + return { + header, + payload: payload1, + signature + }; } else { - throw new Error(`The jwt's 'alg' header parameter value must be a string.`); + throw new Error(`The jwt claims set is not a JSON object.`); } } -async function verify2(jwt, key35, options13) { - const { header , payload: payload2 , signature } = validate(decode4(jwt), options13); - if (verify(header.alg, key35)) { - if (!await verify1(signature, key35, header.alg, jwt.slice(0, jwt.lastIndexOf(".")))) { +async function verify2(jwt, key38, options13) { + const { header , payload: payload2 , signature } = validate(decode5(jwt), options13); + if (verify(header.alg, key38)) { + if (!await verify1(signature, key38, header.alg, jwt.slice(0, jwt.lastIndexOf(".")))) { throw new Error("The jwt's signature does not match the verification signature."); } return payload2; @@ -23135,15 +26010,15 @@ async function verify2(jwt, key35, options13) { } } function createSigningInput(header, payload3) { - return `${mod12.encode(encoder7.encode(JSON.stringify(header)))}.${mod12.encode(encoder7.encode(JSON.stringify(payload3)))}`; + return `${mod11.encode(encoder7.encode(JSON.stringify(header)))}.${mod11.encode(encoder7.encode(JSON.stringify(payload3)))}`; } -async function create(alg, key36, signingInput) { - return key36 === null ? "" : mod12.encode(new Uint8Array(await crypto.subtle.sign(getAlgorithm(alg), key36, encoder7.encode(signingInput)))); +async function create(alg, key39, signingInput) { + return key39 === null ? "" : mod11.encode(new Uint8Array(await crypto.subtle.sign(getAlgorithm(alg), key39, encoder7.encode(signingInput)))); } -async function create1(header, payload4, key37) { - if (verify(header.alg, key37)) { +async function create1(header, payload4, key40) { + if (verify(header.alg, key40)) { const signingInput = createSigningInput(header, payload4); - const signature = await create(header.alg, key37, signingInput); + const signature = await create(header.alg, key40, signingInput); return `${signingInput}.${signature}`; } else { throw new Error(`The jwt's alg '${header.alg}' does not match the key's algorithm.`); @@ -23152,10 +26027,10 @@ async function create1(header, payload4, key37) { function getNumericDate(exp) { return Math.round((exp instanceof Date ? exp.getTime() : Date.now() + exp * 1000) / 1000); } -const mod13 = { +const mod12 = { encoder: encoder7, decoder: decoder4, - decode: decode4, + decode: decode5, validate: validate, verify: verify2, create: create1, @@ -23167,9 +26042,9 @@ class DenoStdInternalError3 extends Error { this.name = "DenoStdInternalError"; } } -function assert4(expr, msg17 = "") { +function assert6(expr, msg24 = "") { if (!expr) { - throw new DenoStdInternalError3(msg17); + throw new DenoStdInternalError3(msg24); } } function copy3(src, dst, off = 0) { @@ -23204,54 +26079,54 @@ class Buffer1 { get capacity() { return this.#buf.buffer.byteLength; } - truncate(n85) { - if (n85 === 0) { + truncate(n86) { + if (n86 === 0) { this.reset(); return; } - if (n85 < 0 || n85 > this.length) { + if (n86 < 0 || n86 > this.length) { throw Error("bytes.Buffer: truncation out of range"); } - this.#reslice(this.#off + n85); + this.#reslice(this.#off + n86); } reset() { this.#reslice(0); this.#off = 0; } - #tryGrowByReslice(n86) { + #tryGrowByReslice(n87) { const l = this.#buf.byteLength; - if (n86 <= this.capacity - l) { - this.#reslice(l + n86); + if (n87 <= this.capacity - l) { + this.#reslice(l + n87); return l; } return -1; } #reslice(len13) { - assert4(len13 <= this.#buf.buffer.byteLength); + assert6(len13 <= this.#buf.buffer.byteLength); this.#buf = new Uint8Array(this.#buf.buffer, 0, len13); } - readSync(p32) { + readSync(p34) { if (this.empty()) { this.reset(); - if (p32.byteLength === 0) { + if (p34.byteLength === 0) { return 0; } return null; } - const nread = copy3(this.#buf.subarray(this.#off), p32); + const nread = copy3(this.#buf.subarray(this.#off), p34); this.#off += nread; return nread; } - read(p33) { - const rr = this.readSync(p33); + read(p35) { + const rr = this.readSync(p35); return Promise.resolve(rr); } - writeSync(p34) { - const m14 = this.#grow(p34.byteLength); - return copy3(p34, this.#buf, m14); + writeSync(p36) { + const m14 = this.#grow(p36.byteLength); + return copy3(p36, this.#buf, m14); } - write(p35) { - const n1 = this.writeSync(p35); + write(p37) { + const n1 = this.writeSync(p37); return Promise.resolve(n1); } #grow(n210) { @@ -23365,13 +26240,13 @@ class BufReader4 { if (this.w >= this.buf.byteLength) { throw Error("bufio: tried to fill full buffer"); } - for(let i73 = 100; i73 > 0; i73--){ + for(let i80 = 100; i80 > 0; i80--){ const rr = await this.rd.read(this.buf.subarray(this.w)); if (rr === null) { this.eof = true; return; } - assert4(rr >= 0, "negative read"); + assert6(rr >= 0, "negative read"); this.w += rr; if (rr > 0) { return; @@ -23387,32 +26262,32 @@ class BufReader4 { this.rd = rd; this.eof = false; } - async read(p36) { - let rr = p36.byteLength; - if (p36.byteLength === 0) return rr; + async read(p38) { + let rr = p38.byteLength; + if (p38.byteLength === 0) return rr; if (this.r === this.w) { - if (p36.byteLength >= this.buf.byteLength) { - const rr = await this.rd.read(p36); + if (p38.byteLength >= this.buf.byteLength) { + const rr = await this.rd.read(p38); const nread = rr ?? 0; - assert4(nread >= 0, "negative read"); + assert6(nread >= 0, "negative read"); return rr; } this.r = 0; this.w = 0; rr = await this.rd.read(this.buf); if (rr === 0 || rr === null) return rr; - assert4(rr >= 0, "negative read"); + assert6(rr >= 0, "negative read"); this.w += rr; } - const copied = copy3(this.buf.subarray(this.r, this.w), p36, 0); + const copied = copy3(this.buf.subarray(this.r, this.w), p38, 0); this.r += copied; return copied; } - async readFull(p37) { + async readFull(p39) { let bytesRead = 0; - while(bytesRead < p37.length){ + while(bytesRead < p39.length){ try { - const rr = await this.read(p37.subarray(bytesRead)); + const rr = await this.read(p39.subarray(bytesRead)); if (rr === null) { if (bytesRead === 0) { return null; @@ -23423,10 +26298,10 @@ class BufReader4 { bytesRead += rr; } catch (err) { if (err instanceof PartialReadError3) { - err.partial = p37.subarray(0, bytesRead); + err.partial = p39.subarray(0, bytesRead); } else if (err instanceof Error) { const e77 = new PartialReadError3(); - e77.partial = p37.subarray(0, bytesRead); + e77.partial = p39.subarray(0, bytesRead); e77.stack = err.stack; e77.message = err.message; e77.cause = err.cause; @@ -23435,16 +26310,16 @@ class BufReader4 { throw err; } } - return p37; + return p39; } async readByte() { while(this.r === this.w){ if (this.eof) return null; await this._fill(); } - const c19 = this.buf[this.r]; + const c25 = this.buf[this.r]; this.r++; - return c19; + return c25; } async readString(delim) { if (delim.length !== 1) { @@ -23465,14 +26340,14 @@ class BufReader4 { let partial; if (err instanceof PartialReadError3) { partial = err.partial; - assert4(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + assert6(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); } if (!(err instanceof BufferFullError4)) { throw err; } partial = err.partial; if (!this.eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR5) { - assert4(this.r > 0, "bufio: tried to rewind past start of buffer"); + assert6(this.r > 0, "bufio: tried to rewind past start of buffer"); this.r--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -23505,14 +26380,14 @@ class BufReader4 { }; } async readSlice(delim) { - let s34 = 0; + let s36 = 0; let slice; while(true){ - let i74 = this.buf.subarray(this.r + s34, this.w).indexOf(delim); - if (i74 >= 0) { - i74 += s34; - slice = this.buf.subarray(this.r, this.r + i74 + 1); - this.r += i74 + 1; + let i81 = this.buf.subarray(this.r + s36, this.w).indexOf(delim); + if (i81 >= 0) { + i81 += s36; + slice = this.buf.subarray(this.r, this.r + i81 + 1); + this.r += i81 + 1; break; } if (this.eof) { @@ -23530,7 +26405,7 @@ class BufReader4 { this.buf = newbuf; throw new BufferFullError4(oldbuf); } - s34 = this.w - this.r; + s36 = this.w - this.r; try { await this._fill(); } catch (err) { @@ -23617,10 +26492,10 @@ class BufWriter3 extends AbstractBufBase3 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p38 = this.buf.subarray(0, this.usedBufferBytes); + const p40 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p38.length){ - nwritten += await this.writer.write(p38.subarray(nwritten)); + while(nwritten < p40.length){ + nwritten += await this.writer.write(p40.subarray(nwritten)); } } catch (e80) { if (e80 instanceof Error) { @@ -23631,15 +26506,15 @@ class BufWriter3 extends AbstractBufBase3 { this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - async write(data34) { + async write(data37) { if (this.err !== null) throw this.err; - if (data34.length === 0) return 0; + if (data37.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data34.byteLength > this.available()){ + while(data37.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = await this.writer.write(data34); + numBytesWritten = await this.writer.write(data37); } catch (e81) { if (e81 instanceof Error) { this.err = e81; @@ -23647,14 +26522,14 @@ class BufWriter3 extends AbstractBufBase3 { throw e81; } } else { - numBytesWritten = copy3(data34, this.buf, this.usedBufferBytes); + numBytesWritten = copy3(data37, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; await this.flush(); } totalBytesWritten += numBytesWritten; - data34 = data34.subarray(numBytesWritten); + data37 = data37.subarray(numBytesWritten); } - numBytesWritten = copy3(data34, this.buf, this.usedBufferBytes); + numBytesWritten = copy3(data37, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -23682,10 +26557,10 @@ class BufWriterSync3 extends AbstractBufBase3 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p39 = this.buf.subarray(0, this.usedBufferBytes); + const p41 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p39.length){ - nwritten += this.writer.writeSync(p39.subarray(nwritten)); + while(nwritten < p41.length){ + nwritten += this.writer.writeSync(p41.subarray(nwritten)); } } catch (e82) { if (e82 instanceof Error) { @@ -23696,15 +26571,15 @@ class BufWriterSync3 extends AbstractBufBase3 { this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - writeSync(data35) { + writeSync(data38) { if (this.err !== null) throw this.err; - if (data35.length === 0) return 0; + if (data38.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data35.byteLength > this.available()){ + while(data38.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = this.writer.writeSync(data35); + numBytesWritten = this.writer.writeSync(data38); } catch (e83) { if (e83 instanceof Error) { this.err = e83; @@ -23712,14 +26587,14 @@ class BufWriterSync3 extends AbstractBufBase3 { throw e83; } } else { - numBytesWritten = copy3(data35, this.buf, this.usedBufferBytes); + numBytesWritten = copy3(data38, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; this.flush(); } totalBytesWritten += numBytesWritten; - data35 = data35.subarray(numBytesWritten); + data38 = data38.subarray(numBytesWritten); } - numBytesWritten = copy3(data35, this.buf, this.usedBufferBytes); + numBytesWritten = copy3(data38, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -23730,11 +26605,11 @@ function readableStreamFromIterable(iterable) { const iterator = iterable[Symbol.asyncIterator]?.() ?? iterable[Symbol.iterator]?.(); return new ReadableStream({ async pull (controller) { - const { value: value65 , done } = await iterator.next(); + const { value: value71 , done } = await iterator.next(); if (done) { controller.close(); } else { - controller.enqueue(value65); + controller.enqueue(value71); } }, async cancel (reason) { @@ -23782,7 +26657,7 @@ function parse5(xml) { }; } function declaration() { - const m16 = match14(/^<\?xml\s*/); + const m16 = match11(/^<\?xml\s*/); if (!m16) return; const node = { attributes: {} @@ -23792,11 +26667,11 @@ function parse5(xml) { if (!attr) return node; node.attributes[attr.name] = attr.value; } - match14(/\?>\s*/); + match11(/\?>\s*/); return node; } function tag() { - const m17 = match14(/^<([\w-:.]+)\s*/); + const m17 = match11(/^<([\w-:.]+)\s*/); if (!m17) return; const node = { name: m17[1], @@ -23808,25 +26683,25 @@ function parse5(xml) { if (!attr) return node; node.attributes[attr.name] = attr.value; } - if (match14(/^\s*\/>\s*/)) { + if (match11(/^\s*\/>\s*/)) { return node; } - match14(/\??>\s*/); + match11(/\??>\s*/); node.content = content(); let child; while(child = tag()){ node.children.push(child); } - match14(/^<\/[\w-:.]+>\s*/); + match11(/^<\/[\w-:.]+>\s*/); return node; } function content() { - const m18 = match14(/^([^<]*)/); + const m18 = match11(/^([^<]*)/); if (m18) return m18[1]; return ""; } function attribute() { - const m19 = match14(/([\w:-]+)\s*=\s*("[^"]*"|'[^']*'|\w+)\s*/); + const m19 = match11(/([\w:-]+)\s*=\s*("[^"]*"|'[^']*'|\w+)\s*/); if (!m19) return; return { name: m19[1], @@ -23836,7 +26711,7 @@ function parse5(xml) { function strip(val) { return val.replace(/^['"]|['"]$/g, ""); } - function match14(re) { + function match11(re) { const m20 = xml.match(re); if (!m20) return; xml = xml.slice(m20[0].length); @@ -23873,10 +26748,10 @@ class ServerError extends DenoS3LiteClientError { bucketName; resource; region; - constructor(statusCode, code26, message, otherData = {}){ + constructor(statusCode, code27, message, otherData = {}){ super(message); this.statusCode = statusCode; - this.code = code26; + this.code = code27; this.key = otherData.key; this.bucketName = otherData.bucketName; this.resource = otherData.resource; @@ -23890,14 +26765,14 @@ async function parseServerError(response) { if (errorRoot?.name !== "Error") { throw new Error("Invalid root, expected "); } - const code27 = errorRoot.children.find((c20)=>c20.name === "Code")?.content ?? "UnknownErrorCode"; - const message = errorRoot.children.find((c21)=>c21.name === "Message")?.content ?? "The error message could not be determined."; - const key38 = errorRoot.children.find((c22)=>c22.name === "Key")?.content; - const bucketName = errorRoot.children.find((c23)=>c23.name === "BucketName")?.content; - const resource = errorRoot.children.find((c24)=>c24.name === "Resource")?.content; - const region = errorRoot.children.find((c25)=>c25.name === "Region")?.content; - return new ServerError(response.status, code27, message, { - key: key38, + const code28 = errorRoot.children.find((c26)=>c26.name === "Code")?.content ?? "UnknownErrorCode"; + const message = errorRoot.children.find((c27)=>c27.name === "Message")?.content ?? "The error message could not be determined."; + const key41 = errorRoot.children.find((c28)=>c28.name === "Key")?.content; + const bucketName = errorRoot.children.find((c29)=>c29.name === "BucketName")?.content; + const resource = errorRoot.children.find((c30)=>c30.name === "Resource")?.content; + const region = errorRoot.children.find((c31)=>c31.name === "Region")?.content; + return new ServerError(response.status, code28, message, { + key: key41, bucketName, resource, region @@ -23906,7 +26781,7 @@ async function parseServerError(response) { return new ServerError(response.status, "UnrecognizedError", `Error: Unexpected response code ${response.status} ${response.statusText}. Unable to parse response as XML.`); } } -const mod14 = { +const mod13 = { DenoS3LiteClientError: DenoS3LiteClientError, InvalidArgumentError: InvalidArgumentError, InvalidEndpointError: InvalidEndpointError, @@ -23955,7 +26830,7 @@ function isValidPrefix(prefix) { return true; } function bin2hex(binary) { - return Array.from(binary).map((b17)=>b17.toString(16).padStart(2, "0")).join(""); + return Array.from(binary).map((b24)=>b24.toString(16).padStart(2, "0")).join(""); } function sanitizeETag(etag = "") { const replaceChars = { @@ -23983,11 +26858,11 @@ function makeDateShort(date) { function getScope(region, date) { return `${makeDateShort(date)}/${region}/s3/aws4_request`; } -async function sha256digestHex(data36) { - if (!(data36 instanceof Uint8Array)) { - data36 = new TextEncoder().encode(data36); +async function sha256digestHex(data39) { + if (!(data39 instanceof Uint8Array)) { + data39 = new TextEncoder().encode(data39); } - return bin2hex(new Uint8Array(await crypto.subtle.digest("SHA-256", data36))); + return bin2hex(new Uint8Array(await crypto.subtle.digest("SHA-256", data39))); } class ObjectUploader extends WritableStream { getResult; @@ -24059,7 +26934,7 @@ class ObjectUploader extends WritableStream { async close () { if (result) {} else if (uploadId) { await Promise.all(partsPromises); - etags.sort((a17, b18)=>a17.part > b18.part ? 1 : -1); + etags.sort((a23, b25)=>a23.part > b25.part ? 1 : -1); result = await completeMultipartUpload({ client, bucketName, @@ -24097,7 +26972,7 @@ async function initiateNewMultipartUpload(options15) { if (!root || root.name !== "InitiateMultipartUploadResult") { throw new Error(`Unexpected response: ${responseText}`); } - const uploadId = root.children.find((c26)=>c26.name === "UploadId")?.content; + const uploadId = root.children.find((c32)=>c32.name === "UploadId")?.content; if (!uploadId) { throw new Error(`Unable to get UploadId from response: ${responseText}`); } @@ -24108,7 +26983,7 @@ async function initiateNewMultipartUpload(options15) { async function completeMultipartUpload({ client , bucketName , objectName , uploadId , etags }) { const payload5 = ` - ${etags.map((et2)=>` ${et2.part}${et2.etag}`).join("\n")} + ${etags.map((et1)=>` ${et1.part}${et1.etag}`).join("\n")} `; const response = await client.makeRequest({ @@ -24124,7 +26999,7 @@ async function completeMultipartUpload({ client , bucketName , objectName , uplo if (!root || root.name !== "CompleteMultipartUploadResult") { throw new Error(`Unexpected response: ${responseText}`); } - const etagRaw = root.children.find((c27)=>c27.name === "ETag")?.content; + const etagRaw = root.children.find((c33)=>c33.name === "ETag")?.content; if (!etagRaw) throw new Error(`Unable to get ETag from response: ${responseText}`); const versionId = getVersionId(response.headers); return { @@ -24160,23 +27035,23 @@ function getHeadersToSign(headers) { "user-agent", ]; const headersToSign = []; - for (const key39 of headers.keys()){ - if (ignoredHeaders.includes(key39.toLowerCase())) { + for (const key42 of headers.keys()){ + if (ignoredHeaders.includes(key42.toLowerCase())) { continue; } - headersToSign.push(key39); + headersToSign.push(key42); } headersToSign.sort(); return headersToSign; } -function getCanonicalRequest(method6, path48, headers, headersToSign, payloadHash) { +function getCanonicalRequest(method6, path47, headers, headersToSign, payloadHash) { const headersArray = headersToSign.reduce((acc, headerKey)=>{ const val = `${headers.get(headerKey)}`.replace(/ +/g, " "); acc.push(`${headerKey.toLowerCase()}:${val}`); return acc; }, []); - const requestResource = path48.split("?")[0]; - let requestQuery = path48.split("?")[1]; + const requestResource = path47.split("?")[0]; + let requestQuery = path47.split("?")[1]; if (requestQuery) { requestQuery = requestQuery.split("&").sort().map((element)=>element.indexOf("=") === -1 ? element + "=" : element).join("&"); } else { @@ -24211,7 +27086,7 @@ async function getSigningKey(date, region, secretKey) { function getCredential(accessKey, region, requestDate) { return `${accessKey}/${getScope(region, requestDate)}`; } -async function sha256hmac(secretKey, data37) { +async function sha256hmac(secretKey, data40) { const enc2 = new TextEncoder(); const keyObject = await crypto.subtle.importKey("raw", secretKey instanceof Uint8Array ? secretKey : enc2.encode(secretKey), { name: "HMAC", @@ -24222,7 +27097,7 @@ async function sha256hmac(secretKey, data37) { "sign", "verify" ]); - const signature = await crypto.subtle.sign("HMAC", keyObject, data37 instanceof Uint8Array ? data37 : enc2.encode(data37)); + const signature = await crypto.subtle.sign("HMAC", keyObject, data40 instanceof Uint8Array ? data40 : enc2.encode(data40)); return new Uint8Array(signature); } const metadataKeys = [ @@ -24298,7 +27173,7 @@ class Client { const headers = options17.headers ?? new Headers(); const host = this.pathStyle ? this.host : `${bucketName}.${this.host}`; const queryAsString = typeof options17.query === "object" ? new URLSearchParams(options17.query).toString().replace("+", "%20") : options17.query; - const path49 = (this.pathStyle ? `/${bucketName}/${options17.objectName}` : `/${options17.objectName}`) + (queryAsString ? `?${queryAsString}` : ""); + const path48 = (this.pathStyle ? `/${bucketName}/${options17.objectName}` : `/${options17.objectName}`) + (queryAsString ? `?${queryAsString}` : ""); const statusCode = options17.statusCode ?? 200; if (method7 === "POST" || method7 === "PUT" || method7 === "DELETE") { if (payload6 === undefined) { @@ -24317,13 +27192,13 @@ class Client { headers.set("authorization", await signV4({ headers, method: method7, - path: path49, + path: path48, accessKey: this.accessKey, secretKey: this.#secretKey, region: this.region, date })); - const fullUrl = `${this.protocol}//${host}${path49}`; + const fullUrl = `${this.protocol}//${host}${path48}`; const response = await fetch(fullUrl, { method: method7, headers, @@ -24331,8 +27206,8 @@ class Client { }); if (response.status !== statusCode) { if (response.status >= 400) { - const error11 = await parseServerError(response); - throw error11; + const error12 = await parseServerError(response); + throw error12; } else { throw new ServerError(response.status, "UnexpectedStatusCode", `Unexpected response code from the server (expected ${statusCode}, got ${response.status} ${response.statusText}).`); } @@ -24381,23 +27256,23 @@ class Client { length: 0 }); } - async getPartialObject(objectName, { offset: offset5 , length , ...options21 }) { + async getPartialObject(objectName, { offset: offset6 , length , ...options21 }) { const bucketName = this.getBucketName(options21); if (!isValidObjectName(objectName)) { throw new InvalidObjectNameError(`Invalid object name: ${objectName}`); } const headers = new Headers(); let statusCode = 200; - if (offset5 || length) { + if (offset6 || length) { let range = ""; - if (offset5) { - range = `bytes=${+offset5}-`; + if (offset6) { + range = `bytes=${+offset6}-`; } else { range = "bytes=0-"; - offset5 = 0; + offset6 = 0; } if (length) { - range += `${+length + offset5 - 1}`; + range += `${+length + offset6 - 1}`; } headers.set("Range", range); statusCode = 206; @@ -24460,7 +27335,7 @@ class Client { if (!root || root.name !== "ListBucketResult") { throw new Error(`Unexpected response: ${responseText}`); } - const commonPrefixesElement = root.children.find((c28)=>c28.name === "CommonPrefixes"); + const commonPrefixesElement = root.children.find((c34)=>c34.name === "CommonPrefixes"); const toYield = []; if (commonPrefixesElement) { for (const prefixElement of commonPrefixesElement.children){ @@ -24471,27 +27346,27 @@ class Client { resultCount++; } } - for (const objectElement of root.children.filter((c29)=>c29.name === "Contents")){ + for (const objectElement of root.children.filter((c35)=>c35.name === "Contents")){ toYield.push({ type: "Object", - key: objectElement.children.find((c30)=>c30.name === "Key")?.content ?? "", - etag: sanitizeETag(objectElement.children.find((c31)=>c31.name === "ETag")?.content ?? ""), - size: parseInt(objectElement.children.find((c32)=>c32.name === "Size")?.content ?? "", 10), - lastModified: new Date(objectElement.children.find((c33)=>c33.name === "LastModified")?.content ?? "invalid") + key: objectElement.children.find((c36)=>c36.name === "Key")?.content ?? "", + etag: sanitizeETag(objectElement.children.find((c37)=>c37.name === "ETag")?.content ?? ""), + size: parseInt(objectElement.children.find((c38)=>c38.name === "Size")?.content ?? "", 10), + lastModified: new Date(objectElement.children.find((c39)=>c39.name === "LastModified")?.content ?? "invalid") }); resultCount++; } - toYield.sort((a18, b19)=>{ - const aStr = a18.type === "Object" ? a18.key : a18.prefix; - const bStr = b19.type === "Object" ? b19.key : b19.prefix; + toYield.sort((a24, b26)=>{ + const aStr = a24.type === "Object" ? a24.key : a24.prefix; + const bStr = b26.type === "Object" ? b26.key : b26.prefix; return aStr > bStr ? 1 : aStr < bStr ? -1 : 0; }); for (const entry of toYield){ yield entry; } - const isTruncated = root.children.find((c34)=>c34.name === "IsTruncated")?.content === "true"; + const isTruncated = root.children.find((c40)=>c40.name === "IsTruncated")?.content === "true"; if (isTruncated) { - const nextContinuationToken = root.children.find((c35)=>c35.name === "NextContinuationToken")?.content; + const nextContinuationToken = root.children.find((c41)=>c41.name === "NextContinuationToken")?.content; if (!nextContinuationToken) { throw new Error("Unexpectedly missing continuation token, but server said there are more results."); } @@ -24587,9 +27462,9 @@ class Client { metadata[header] = response.headers.get(header); } } - response.headers.forEach((_value, key40)=>{ - if (key40.startsWith("x-amz-meta-")) { - metadata[key40] = response.headers.get(key40); + response.headers.forEach((_value, key43)=>{ + if (key43.startsWith("x-amz-meta-")) { + metadata[key43] = response.headers.get(key43); } }); return { @@ -24603,9 +27478,9 @@ class Client { }; } } -const mod15 = { +const mod14 = { S3Client: Client, - S3Errors: mod14 + S3Errors: mod13 }; const DATA_TYPES = { INTEGER: "integer", @@ -24673,7 +27548,7 @@ function successLog(val) { function warningLog(val) { console.log(yellow1 + val + reset1); } -const mod16 = { +const mod15 = { error: error1, success: success, warning: warning1, @@ -24730,16 +27605,16 @@ function dew2() { }); const PromiseInspection_1 = dew1(); function defer1() { - let resolve11 = null; - let reject2 = null; + let resolve13 = null; + let reject3 = null; const promise = new Promise((resolver, rejecter)=>{ - resolve11 = resolver; - reject2 = rejecter; + resolve13 = resolver; + reject3 = rejecter; }); return { promise, - resolve: resolve11, - reject: reject2 + resolve: resolve13, + reject: reject3 }; } exports2.defer = defer1; @@ -24763,17 +27638,17 @@ function dew2() { } exports2.checkRequiredTime = checkRequiredTime; function delay(millis) { - return new Promise((resolve12)=>setTimeout(resolve12, millis)); + return new Promise((resolve14)=>setTimeout(resolve14, millis)); } exports2.delay = delay; function reflect(promise) { - return promise.then((value66)=>{ + return promise.then((value72)=>{ return new PromiseInspection_1.PromiseInspection({ - value: value66 + value: value72 }); - }).catch((error12)=>{ + }).catch((error13)=>{ return new PromiseInspection_1.PromiseInspection({ - error: error12 + error: error13 }); }); } @@ -24822,20 +27697,20 @@ function dew3() { reject(err) { this.deferred.reject(err); } - resolve(value67) { - this.deferred.resolve(value67); + resolve(value73) { + this.deferred.resolve(value73); } } exports3.PendingOperation = PendingOperation; function timeout1(promise, time) { - return new Promise((resolve13, reject3)=>{ - const timeoutHandle = setTimeout(()=>reject3(new TimeoutError_1.TimeoutError()), time); + return new Promise((resolve15, reject4)=>{ + const timeoutHandle = setTimeout(()=>reject4(new TimeoutError_1.TimeoutError()), time); promise.then((result)=>{ clearTimeout(timeoutHandle); - resolve13(result); + resolve15(result); }).catch((err)=>{ clearTimeout(timeoutHandle); - reject3(err); + reject4(err); }); }); } @@ -24890,7 +27765,7 @@ function f1(e6) { return void 0 === e6._maxListeners ? o1.defaultMaxListeners : e6._maxListeners; } function v1(e7, t2, n211, r110) { - var i110, o110, s110, v14; + var i110, o110, s110, v110; if (u1(n211), void 0 === (o110 = e7._events) ? (o110 = e7._events = Object.create(null), e7._eventsCount = 0) : (void 0 !== o110.newListener && (e7.emit("newListener", t2, n211.listener ? n211.listener : n211), o110 = e7._events), s110 = o110[t2]), void 0 === s110) s110 = o110[t2] = n211, ++e7._eventsCount; else if ("function" == typeof s110 ? s110 = o110[t2] = r110 ? [ n211, @@ -24901,7 +27776,7 @@ function v1(e7, t2, n211, r110) { ] : r110 ? s110.unshift(n211) : s110.push(n211), (i110 = f1(e7)) > 0 && s110.length > i110 && !s110.warned) { s110.warned = !0; var a1 = new Error("Possible EventEmitter memory leak detected. " + s110.length + " " + String(t2) + " listeners added. Use emitter.setMaxListeners() to increase limit"); - a1.name = "MaxListenersExceededWarning", a1.emitter = e7, a1.type = t2, a1.count = s110.length, v14 = a1, console && console.warn && console.warn(v14); + a1.name = "MaxListenersExceededWarning", a1.emitter = e7, a1.type = t2, a1.count = s110.length, v110 = a1, console && console.warn && console.warn(v110); } return e7; } @@ -25135,7 +28010,7 @@ T1.versions; var t3 = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : global, n3 = {}, a3 = T1; !function(e112, t1) { if (!e112.setImmediate) { - var n112, s111, o111, i111, c36, r62 = 1, f9 = {}, l = !1, d5 = e112.document, u16 = Object.getPrototypeOf && Object.getPrototypeOf(e112); + var n112, s111, o111, i111, c42, r62 = 1, f8 = {}, l = !1, d6 = e112.document, u16 = Object.getPrototypeOf && Object.getPrototypeOf(e112); u16 = u16 && u16.setTimeout ? u16 : e112, "[object process]" === ({}).toString.call(e112.process) ? n112 = function(e84) { a3.nextTick(function() { m22(e84); @@ -25151,34 +28026,34 @@ var t3 = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof s m22(e85.data); }, n112 = function(e86) { o111.port2.postMessage(e86); - }) : d5 && "onreadystatechange" in d5.createElement("script") ? (s111 = d5.documentElement, n112 = function(e87) { - var t310 = d5.createElement("script"); + }) : d6 && "onreadystatechange" in d6.createElement("script") ? (s111 = d6.documentElement, n112 = function(e87) { + var t310 = d6.createElement("script"); t310.onreadystatechange = function() { m22(e87), t310.onreadystatechange = null, s111.removeChild(t310), t310 = null; }, s111.appendChild(t310); }) : n112 = function(e88) { setTimeout(m22, 0, e88); - } : (i111 = "setImmediate$" + Math.random() + "$", c36 = function(t4) { + } : (i111 = "setImmediate$" + Math.random() + "$", c42 = function(t4) { t4.source === e112 && "string" == typeof t4.data && 0 === t4.data.indexOf(i111) && m22(+t4.data.slice(i111.length)); - }, e112.addEventListener ? e112.addEventListener("message", c36, !1) : e112.attachEvent("onmessage", c36), n112 = function(t5) { + }, e112.addEventListener ? e112.addEventListener("message", c42, !1) : e112.attachEvent("onmessage", c42), n112 = function(t5) { e112.postMessage(i111 + t5, "*"); }), u16.setImmediate = function(e89) { "function" != typeof e89 && (e89 = new Function("" + e89)); - for(var t6 = new Array(arguments.length - 1), a19 = 0; a19 < t6.length; a19++)t6[a19] = arguments[a19 + 1]; - var s35 = { + for(var t6 = new Array(arguments.length - 1), a110 = 0; a110 < t6.length; a110++)t6[a110] = arguments[a110 + 1]; + var s37 = { callback: e89, args: t6 }; - return f9[r62] = s35, n112(r62), r62++; + return f8[r62] = s37, n112(r62), r62++; }, u16.clearImmediate = g2; } function g2(e90) { - delete f9[e90]; + delete f8[e90]; } function m22(e210) { if (l) setTimeout(m22, 0, e210); else { - var t7 = f9[e210]; + var t7 = f8[e210]; if (t7) { l = !0; try { @@ -25305,9 +28180,9 @@ function dew5() { createRetryIntervalMillis: true, propagateCreateError: true }; - for (const key41 of Object.keys(opt)){ - if (!allowedKeys[key41]) { - throw new Error(`Tarn: unsupported option opt.${key41}`); + for (const key44 of Object.keys(opt)){ + if (!allowedKeys[key44]) { + throw new Error(`Tarn: unsupported option opt.${key44}`); } } this.creator = opt.create; @@ -25366,10 +28241,10 @@ function dew5() { } release(resource) { this._executeEventHandlers('release', resource); - for(let i75 = 0, l = this.used.length; i75 < l; ++i75){ - const used = this.used[i75]; + for(let i82 = 0, l = this.used.length; i82 < l; ++i82){ + const used = this.used[i82]; if (used.resource === resource) { - this.used.splice(i75, 1); + this.used.splice(i82, 1); this.free.push(used.resolve()); this._tryAcquireOrCreate(); return true; @@ -25384,7 +28259,7 @@ function dew5() { this.numPendingAcquires(), this.numPendingValidations(), this.numPendingCreates() - ].reduce((total, value68)=>total + value68) === 0; + ].reduce((total, value74)=>total + value74) === 0; } check() { const timestamp5 = utils_1.now(); @@ -25411,15 +28286,15 @@ function dew5() { this._stopReaping(); this.destroyed = true; return utils_1.reflect(Promise.all(this.pendingCreates.map((create2)=>utils_1.reflect(create2.promise))).then(()=>{ - return new Promise((resolve14, reject)=>{ + return new Promise((resolve16, reject)=>{ if (this.numPendingValidations() === 0) { - resolve14(); + resolve16(); return; } const interval = setInterval(()=>{ if (this.numPendingValidations() === 0) { i3.clearInterval(interval); - resolve14(); + resolve16(); } }, 100); }); @@ -25634,20 +28509,20 @@ function dew5() { } } function callbackOrPromise(func) { - return new Promise((resolve15, reject4)=>{ + return new Promise((resolve17, reject5)=>{ const callback = (err, resource)=>{ if (err) { - reject4(err); + reject5(err); } else { - resolve15(resource); + resolve17(resource); } }; utils_1.tryPromise(()=>func(callback)).then((res)=>{ if (res) { - resolve15(res); + resolve17(res); } }).catch((err)=>{ - reject4(err); + reject5(err); }); }); } @@ -25704,82 +28579,82 @@ function dew7() { } const __default2 = dew7(); const _toString = Object.prototype.toString; -const _isObjectLike = (value69)=>value69 !== null && typeof value69 === "object"; -const _isFunctionLike = (value70)=>value70 !== null && typeof value70 === "function"; -function isAnyArrayBuffer(value71) { - return _isObjectLike(value71) && (_toString.call(value71) === "[object ArrayBuffer]" || _toString.call(value71) === "[object SharedArrayBuffer]"); +const _isObjectLike = (value75)=>value75 !== null && typeof value75 === "object"; +const _isFunctionLike = (value76)=>value76 !== null && typeof value76 === "function"; +function isAnyArrayBuffer(value77) { + return _isObjectLike(value77) && (_toString.call(value77) === "[object ArrayBuffer]" || _toString.call(value77) === "[object SharedArrayBuffer]"); } -function isArgumentsObject(value72) { - return _isObjectLike(value72) && _toString.call(value72) === "[object Arguments]"; +function isArgumentsObject(value78) { + return _isObjectLike(value78) && _toString.call(value78) === "[object Arguments]"; } -function isArrayBuffer(value73) { - return _isObjectLike(value73) && _toString.call(value73) === "[object ArrayBuffer]"; +function isArrayBuffer(value79) { + return _isObjectLike(value79) && _toString.call(value79) === "[object ArrayBuffer]"; } -function isAsyncFunction(value74) { - return _isFunctionLike(value74) && _toString.call(value74) === "[object AsyncFunction]"; +function isAsyncFunction(value80) { + return _isFunctionLike(value80) && _toString.call(value80) === "[object AsyncFunction]"; } -function isBooleanObject(value75) { - return _isObjectLike(value75) && _toString.call(value75) === "[object Boolean]"; +function isBooleanObject(value81) { + return _isObjectLike(value81) && _toString.call(value81) === "[object Boolean]"; } -function isBoxedPrimitive(value76) { - return isBooleanObject(value76) || isStringObject(value76) || isNumberObject(value76) || isSymbolObject(value76) || isBigIntObject(value76); +function isBoxedPrimitive(value82) { + return isBooleanObject(value82) || isStringObject(value82) || isNumberObject(value82) || isSymbolObject(value82) || isBigIntObject(value82); } -function isDataView(value77) { - return _isObjectLike(value77) && _toString.call(value77) === "[object DataView]"; +function isDataView(value83) { + return _isObjectLike(value83) && _toString.call(value83) === "[object DataView]"; } -function isDate(value78) { - return _isObjectLike(value78) && _toString.call(value78) === "[object Date]"; +function isDate(value84) { + return _isObjectLike(value84) && _toString.call(value84) === "[object Date]"; } -function isGeneratorFunction(value79) { - return _isFunctionLike(value79) && _toString.call(value79) === "[object GeneratorFunction]"; +function isGeneratorFunction(value85) { + return _isFunctionLike(value85) && _toString.call(value85) === "[object GeneratorFunction]"; } -function isGeneratorObject(value80) { - return _isObjectLike(value80) && _toString.call(value80) === "[object Generator]"; +function isGeneratorObject(value86) { + return _isObjectLike(value86) && _toString.call(value86) === "[object Generator]"; } -function isMap(value81) { - return _isObjectLike(value81) && _toString.call(value81) === "[object Map]"; +function isMap(value87) { + return _isObjectLike(value87) && _toString.call(value87) === "[object Map]"; } -function isMapIterator(value82) { - return _isObjectLike(value82) && _toString.call(value82) === "[object Map Iterator]"; +function isMapIterator(value88) { + return _isObjectLike(value88) && _toString.call(value88) === "[object Map Iterator]"; } -function isModuleNamespaceObject(value83) { - return _isObjectLike(value83) && _toString.call(value83) === "[object Module]"; +function isModuleNamespaceObject(value89) { + return _isObjectLike(value89) && _toString.call(value89) === "[object Module]"; } -function isNativeError(value84) { - return _isObjectLike(value84) && _toString.call(value84) === "[object Error]"; +function isNativeError(value90) { + return _isObjectLike(value90) && _toString.call(value90) === "[object Error]"; } -function isNumberObject(value85) { - return _isObjectLike(value85) && _toString.call(value85) === "[object Number]"; +function isNumberObject(value91) { + return _isObjectLike(value91) && _toString.call(value91) === "[object Number]"; } -function isBigIntObject(value86) { - return _isObjectLike(value86) && _toString.call(value86) === "[object BigInt]"; +function isBigIntObject(value92) { + return _isObjectLike(value92) && _toString.call(value92) === "[object BigInt]"; } -function isPromise(value87) { - return _isObjectLike(value87) && _toString.call(value87) === "[object Promise]"; +function isPromise(value93) { + return _isObjectLike(value93) && _toString.call(value93) === "[object Promise]"; } -function isRegExp(value88) { - return _isObjectLike(value88) && _toString.call(value88) === "[object RegExp]"; +function isRegExp(value94) { + return _isObjectLike(value94) && _toString.call(value94) === "[object RegExp]"; } -function isSet(value89) { - return _isObjectLike(value89) && _toString.call(value89) === "[object Set]"; +function isSet(value95) { + return _isObjectLike(value95) && _toString.call(value95) === "[object Set]"; } -function isSetIterator(value90) { - return _isObjectLike(value90) && _toString.call(value90) === "[object Set Iterator]"; +function isSetIterator(value96) { + return _isObjectLike(value96) && _toString.call(value96) === "[object Set Iterator]"; } -function isSharedArrayBuffer(value91) { - return _isObjectLike(value91) && _toString.call(value91) === "[object SharedArrayBuffer]"; +function isSharedArrayBuffer(value97) { + return _isObjectLike(value97) && _toString.call(value97) === "[object SharedArrayBuffer]"; } -function isStringObject(value92) { - return _isObjectLike(value92) && _toString.call(value92) === "[object String]"; +function isStringObject(value98) { + return _isObjectLike(value98) && _toString.call(value98) === "[object String]"; } -function isSymbolObject(value93) { - return _isObjectLike(value93) && _toString.call(value93) === "[object Symbol]"; +function isSymbolObject(value99) { + return _isObjectLike(value99) && _toString.call(value99) === "[object Symbol]"; } -function isWeakMap(value94) { - return _isObjectLike(value94) && _toString.call(value94) === "[object WeakMap]"; +function isWeakMap(value100) { + return _isObjectLike(value100) && _toString.call(value100) === "[object WeakMap]"; } -function isWeakSet(value95) { - return _isObjectLike(value95) && _toString.call(value95) === "[object WeakSet]"; +function isWeakSet(value101) { + return _isObjectLike(value101) && _toString.call(value101) === "[object WeakSet]"; } const __default3 = { isAsyncFunction, @@ -25805,7 +28680,7 @@ const __default3 = { isBooleanObject, isBigIntObject }; -const mod17 = { +const mod16 = { isAnyArrayBuffer: isAnyArrayBuffer, isArgumentsObject: isArgumentsObject, isArrayBuffer: isArrayBuffer, @@ -25842,50 +28717,48 @@ function isKeyObject(obj) { function isCryptoKey(obj) { return obj != null && obj[kKeyObject] !== undefined; } -const _toString1 = Object.prototype.toString; -const _isObjectLike1 = (value96)=>value96 !== null && typeof value96 === "object"; -function isArrayBufferView(value97) { - return ArrayBuffer.isView(value97); +const _getTypedArrayToStringTag = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Uint8Array).prototype, Symbol.toStringTag).get; +function isArrayBufferView(value102) { + return ArrayBuffer.isView(value102); } -function isBigInt64Array(value98) { - return _isObjectLike1(value98) && _toString1.call(value98) === "[object BigInt64Array]"; +function isBigInt64Array(value103) { + return _getTypedArrayToStringTag.call(value103) === "BigInt64Array"; } -function isBigUint64Array(value99) { - return _isObjectLike1(value99) && _toString1.call(value99) === "[object BigUint64Array]"; +function isBigUint64Array(value104) { + return _getTypedArrayToStringTag.call(value104) === "BigUint64Array"; } -function isFloat32Array(value100) { - return _isObjectLike1(value100) && _toString1.call(value100) === "[object Float32Array]"; +function isFloat32Array(value105) { + return _getTypedArrayToStringTag.call(value105) === "Float32Array"; } -function isFloat64Array(value101) { - return _isObjectLike1(value101) && _toString1.call(value101) === "[object Float64Array]"; +function isFloat64Array(value106) { + return _getTypedArrayToStringTag.call(value106) === "Float64Array"; } -function isInt8Array(value102) { - return _isObjectLike1(value102) && _toString1.call(value102) === "[object Int8Array]"; +function isInt8Array(value107) { + return _getTypedArrayToStringTag.call(value107) === "Int8Array"; } -function isInt16Array(value103) { - return _isObjectLike1(value103) && _toString1.call(value103) === "[object Int16Array]"; +function isInt16Array(value108) { + return _getTypedArrayToStringTag.call(value108) === "Int16Array"; } -function isInt32Array(value104) { - return _isObjectLike1(value104) && _toString1.call(value104) === "[object Int32Array]"; +function isInt32Array(value109) { + return _getTypedArrayToStringTag.call(value109) === "Int32Array"; } -function isTypedArray(value105) { - const reTypedTag = /^\[object (?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)Array\]$/; - return _isObjectLike1(value105) && reTypedTag.test(_toString1.call(value105)); +function isTypedArray(value110) { + return _getTypedArrayToStringTag.call(value110) !== undefined; } -function isUint8Array(value106) { - return _isObjectLike1(value106) && _toString1.call(value106) === "[object Uint8Array]"; +function isUint8Array(value111) { + return _getTypedArrayToStringTag.call(value111) === "Uint8Array"; } -function isUint8ClampedArray(value107) { - return _isObjectLike1(value107) && _toString1.call(value107) === "[object Uint8ClampedArray]"; +function isUint8ClampedArray(value112) { + return _getTypedArrayToStringTag.call(value112) === "Uint8ClampedArray"; } -function isUint16Array(value108) { - return _isObjectLike1(value108) && _toString1.call(value108) === "[object Uint16Array]"; +function isUint16Array(value113) { + return _getTypedArrayToStringTag.call(value113) === "Uint16Array"; } -function isUint32Array(value109) { - return _isObjectLike1(value109) && _toString1.call(value109) === "[object Uint32Array]"; +function isUint32Array(value114) { + return _getTypedArrayToStringTag.call(value114) === "Uint32Array"; } -const { isDate: isDate1 , isArgumentsObject: isArgumentsObject1 , isBigIntObject: isBigIntObject1 , isBooleanObject: isBooleanObject1 , isNumberObject: isNumberObject1 , isStringObject: isStringObject1 , isSymbolObject: isSymbolObject1 , isNativeError: isNativeError1 , isRegExp: isRegExp1 , isAsyncFunction: isAsyncFunction1 , isGeneratorFunction: isGeneratorFunction1 , isGeneratorObject: isGeneratorObject1 , isPromise: isPromise1 , isMap: isMap1 , isSet: isSet1 , isMapIterator: isMapIterator1 , isSetIterator: isSetIterator1 , isWeakMap: isWeakMap1 , isWeakSet: isWeakSet1 , isArrayBuffer: isArrayBuffer1 , isDataView: isDataView1 , isSharedArrayBuffer: isSharedArrayBuffer1 , isModuleNamespaceObject: isModuleNamespaceObject1 , isAnyArrayBuffer: isAnyArrayBuffer1 , isBoxedPrimitive: isBoxedPrimitive1 , } = mod17; -const mod18 = { +const { isDate: isDate1 , isArgumentsObject: isArgumentsObject1 , isBigIntObject: isBigIntObject1 , isBooleanObject: isBooleanObject1 , isNumberObject: isNumberObject1 , isStringObject: isStringObject1 , isSymbolObject: isSymbolObject1 , isNativeError: isNativeError1 , isRegExp: isRegExp1 , isAsyncFunction: isAsyncFunction1 , isGeneratorFunction: isGeneratorFunction1 , isGeneratorObject: isGeneratorObject1 , isPromise: isPromise1 , isMap: isMap1 , isSet: isSet1 , isMapIterator: isMapIterator1 , isSetIterator: isSetIterator1 , isWeakMap: isWeakMap1 , isWeakSet: isWeakSet1 , isArrayBuffer: isArrayBuffer1 , isDataView: isDataView1 , isSharedArrayBuffer: isSharedArrayBuffer1 , isModuleNamespaceObject: isModuleNamespaceObject1 , isAnyArrayBuffer: isAnyArrayBuffer1 , isBoxedPrimitive: isBoxedPrimitive1 , } = mod16; +const mod17 = { isCryptoKey: isCryptoKey, isKeyObject: isKeyObject, isArrayBufferView: isArrayBufferView, @@ -25992,11 +28865,11 @@ function slowCases(enc4) { if (enc4 === "") return "utf8"; } } -function isInt32(value110) { - return value110 === (value110 | 0); +function isInt32(value115) { + return value115 === (value115 | 0); } -function isUint32(value111) { - return value111 === value111 >>> 0; +function isUint32(value116) { + return value116 === value116 >>> 0; } const validateBuffer = hideStackFrames((buffer13, name9 = "buffer")=>{ if (!isArrayBufferView(buffer13)) { @@ -26007,70 +28880,70 @@ const validateBuffer = hideStackFrames((buffer13, name9 = "buffer")=>{ ], buffer13); } }); -hideStackFrames((value112, name10, min2 = Number.MIN_SAFE_INTEGER, max2 = Number.MAX_SAFE_INTEGER)=>{ - if (typeof value112 !== "number") { - throw new codes.ERR_INVALID_ARG_TYPE(name10, "number", value112); +hideStackFrames((value117, name10, min2 = Number.MIN_SAFE_INTEGER, max2 = Number.MAX_SAFE_INTEGER)=>{ + if (typeof value117 !== "number") { + throw new codes.ERR_INVALID_ARG_TYPE(name10, "number", value117); } - if (!Number.isInteger(value112)) { - throw new codes.ERR_OUT_OF_RANGE(name10, "an integer", value112); + if (!Number.isInteger(value117)) { + throw new codes.ERR_OUT_OF_RANGE(name10, "an integer", value117); } - if (value112 < min2 || value112 > max2) { - throw new codes.ERR_OUT_OF_RANGE(name10, `>= ${min2} && <= ${max2}`, value112); + if (value117 < min2 || value117 > max2) { + throw new codes.ERR_OUT_OF_RANGE(name10, `>= ${min2} && <= ${max2}`, value117); } }); -const validateObject = hideStackFrames((value113, name11, options26)=>{ +const validateObject = hideStackFrames((value118, name11, options26)=>{ const useDefaultOptions = options26 == null; const allowArray = useDefaultOptions ? false : options26.allowArray; const allowFunction = useDefaultOptions ? false : options26.allowFunction; const nullable = useDefaultOptions ? false : options26.nullable; - if (!nullable && value113 === null || !allowArray && Array.isArray(value113) || typeof value113 !== "object" && (!allowFunction || typeof value113 !== "function")) { - throw new codes.ERR_INVALID_ARG_TYPE(name11, "Object", value113); + if (!nullable && value118 === null || !allowArray && Array.isArray(value118) || typeof value118 !== "object" && (!allowFunction || typeof value118 !== "function")) { + throw new codes.ERR_INVALID_ARG_TYPE(name11, "Object", value118); } }); -hideStackFrames((value114, name12, min3 = -2147483648, max3 = 2147483647)=>{ - if (!isInt32(value114)) { - if (typeof value114 !== "number") { - throw new codes.ERR_INVALID_ARG_TYPE(name12, "number", value114); +hideStackFrames((value119, name12, min3 = -2147483648, max3 = 2147483647)=>{ + if (!isInt32(value119)) { + if (typeof value119 !== "number") { + throw new codes.ERR_INVALID_ARG_TYPE(name12, "number", value119); } - if (!Number.isInteger(value114)) { - throw new codes.ERR_OUT_OF_RANGE(name12, "an integer", value114); + if (!Number.isInteger(value119)) { + throw new codes.ERR_OUT_OF_RANGE(name12, "an integer", value119); } - throw new codes.ERR_OUT_OF_RANGE(name12, `>= ${min3} && <= ${max3}`, value114); + throw new codes.ERR_OUT_OF_RANGE(name12, `>= ${min3} && <= ${max3}`, value119); } - if (value114 < min3 || value114 > max3) { - throw new codes.ERR_OUT_OF_RANGE(name12, `>= ${min3} && <= ${max3}`, value114); + if (value119 < min3 || value119 > max3) { + throw new codes.ERR_OUT_OF_RANGE(name12, `>= ${min3} && <= ${max3}`, value119); } }); -hideStackFrames((value115, name13, positive)=>{ - if (!isUint32(value115)) { - if (typeof value115 !== "number") { - throw new codes.ERR_INVALID_ARG_TYPE(name13, "number", value115); +hideStackFrames((value120, name13, positive)=>{ + if (!isUint32(value120)) { + if (typeof value120 !== "number") { + throw new codes.ERR_INVALID_ARG_TYPE(name13, "number", value120); } - if (!Number.isInteger(value115)) { - throw new codes.ERR_OUT_OF_RANGE(name13, "an integer", value115); + if (!Number.isInteger(value120)) { + throw new codes.ERR_OUT_OF_RANGE(name13, "an integer", value120); } const min4 = positive ? 1 : 0; - throw new codes.ERR_OUT_OF_RANGE(name13, `>= ${min4} && < 4294967296`, value115); + throw new codes.ERR_OUT_OF_RANGE(name13, `>= ${min4} && < 4294967296`, value120); } - if (positive && value115 === 0) { - throw new codes.ERR_OUT_OF_RANGE(name13, ">= 1 && < 4294967296", value115); + if (positive && value120 === 0) { + throw new codes.ERR_OUT_OF_RANGE(name13, ">= 1 && < 4294967296", value120); } }); -function validateString(value116, name14) { - if (typeof value116 !== "string") { - throw new codes.ERR_INVALID_ARG_TYPE(name14, "string", value116); +function validateString(value121, name14) { + if (typeof value121 !== "string") { + throw new codes.ERR_INVALID_ARG_TYPE(name14, "string", value121); } } -function validateBoolean(value117, name15) { - if (typeof value117 !== "boolean") { - throw new codes.ERR_INVALID_ARG_TYPE(name15, "boolean", value117); +function validateBoolean(value122, name15) { + if (typeof value122 !== "boolean") { + throw new codes.ERR_INVALID_ARG_TYPE(name15, "boolean", value122); } } -hideStackFrames((value118, name16, oneOf)=>{ - if (!Array.prototype.includes.call(oneOf, value118)) { - const allowed = Array.prototype.join.call(Array.prototype.map.call(oneOf, (v15)=>typeof v15 === "string" ? `'${v15}'` : String(v15)), ", "); +hideStackFrames((value123, name16, oneOf)=>{ + if (!Array.prototype.includes.call(oneOf, value123)) { + const allowed = Array.prototype.join.call(Array.prototype.map.call(oneOf, (v23)=>typeof v23 === "string" ? `'${v23}'` : String(v23)), ", "); const reason = "must be one of: " + allowed; - throw new codes.ERR_INVALID_ARG_VALUE(name16, value118, reason); + throw new codes.ERR_INVALID_ARG_VALUE(name16, value123, reason); } }); const validateCallback = hideStackFrames((callback)=>{ @@ -26083,504 +28956,41 @@ const validateAbortSignal = hideStackFrames((signal, name17)=>{ throw new codes.ERR_INVALID_ARG_TYPE(name17, "AbortSignal", signal); } }); -const validateFunction = hideStackFrames((value119, name18)=>{ - if (typeof value119 !== "function") { - throw new codes.ERR_INVALID_ARG_TYPE(name18, "Function", value119); +const validateFunction = hideStackFrames((value124, name18)=>{ + if (typeof value124 !== "function") { + throw new codes.ERR_INVALID_ARG_TYPE(name18, "Function", value124); } }); -hideStackFrames((value120, name19, minLength = 0)=>{ - if (!Array.isArray(value120)) { - throw new codes.ERR_INVALID_ARG_TYPE(name19, "Array", value120); +hideStackFrames((value125, name19, minLength = 0)=>{ + if (!Array.isArray(value125)) { + throw new codes.ERR_INVALID_ARG_TYPE(name19, "Array", value125); } - if (value120.length < minLength) { + if (value125.length < minLength) { const reason = `must be longer than ${minLength}`; - throw new codes.ERR_INVALID_ARG_VALUE(name19, value120, reason); + throw new codes.ERR_INVALID_ARG_VALUE(name19, value125, reason); } }); -var DiffType; -(function(DiffType3) { - DiffType3["removed"] = "removed"; - DiffType3["common"] = "common"; - DiffType3["added"] = "added"; -})(DiffType || (DiffType = {})); -const REMOVED = 1; -const COMMON = 2; -const ADDED = 3; -function createCommon(A4, B2, reverse) { - const common1 = []; - if (A4.length === 0 || B2.length === 0) return []; - for(let i76 = 0; i76 < Math.min(A4.length, B2.length); i76 += 1){ - if (A4[reverse ? A4.length - i76 - 1 : i76] === B2[reverse ? B2.length - i76 - 1 : i76]) { - common1.push(A4[reverse ? A4.length - i76 - 1 : i76]); - } else { - return common1; - } - } - return common1; -} -function diff(A1, B1) { - const prefixCommon = createCommon(A1, B1); - const suffixCommon = createCommon(A1.slice(prefixCommon.length), B1.slice(prefixCommon.length), true).reverse(); - A1 = suffixCommon.length ? A1.slice(prefixCommon.length, -suffixCommon.length) : A1.slice(prefixCommon.length); - B1 = suffixCommon.length ? B1.slice(prefixCommon.length, -suffixCommon.length) : B1.slice(prefixCommon.length); - const swapped1 = B1.length > A1.length; - [A1, B1] = swapped1 ? [ - B1, - A1 - ] : [ - A1, - B1 - ]; - const M1 = A1.length; - const N1 = B1.length; - if (!M1 && !N1 && !suffixCommon.length && !prefixCommon.length) return []; - if (!N1) { - return [ - ...prefixCommon.map((c37)=>({ - type: DiffType.common, - value: c37 - })), - ...A1.map((a20)=>({ - type: swapped1 ? DiffType.added : DiffType.removed, - value: a20 - })), - ...suffixCommon.map((c38)=>({ - type: DiffType.common, - value: c38 - })), - ]; - } - const offset6 = N1; - const delta = M1 - N1; - const size = M1 + N1 + 1; - const fp1 = Array.from({ - length: size - }, ()=>({ - y: -1, - id: -1 - })); - const routes = new Uint32Array((M1 * N1 + size + 1) * 2); - const diffTypesPtrOffset = routes.length / 2; - let ptr = 0; - let p40 = -1; - function backTrace(A5, B3, current, swapped) { - const M2 = A5.length; - const N2 = B3.length; - const result = []; - let a21 = M2 - 1; - let b20 = N2 - 1; - let j12 = routes[current.id]; - let type16 = routes[current.id + diffTypesPtrOffset]; - while(true){ - if (!j12 && !type16) break; - const prev = j12; - if (type16 === 1) { - result.unshift({ - type: swapped ? DiffType.removed : DiffType.added, - value: B3[b20] - }); - b20 -= 1; - } else if (type16 === 3) { - result.unshift({ - type: swapped ? DiffType.added : DiffType.removed, - value: A5[a21] - }); - a21 -= 1; - } else { - result.unshift({ - type: DiffType.common, - value: A5[a21] - }); - a21 -= 1; - b20 -= 1; - } - j12 = routes[prev]; - type16 = routes[prev + diffTypesPtrOffset]; - } - return result; - } - function createFP(slide, down, k2, M3) { - if (slide && slide.y === -1 && down && down.y === -1) { - return { - y: 0, - id: 0 - }; - } - if (down && down.y === -1 || k2 === M3 || (slide && slide.y) > (down && down.y) + 1) { - const prev = slide.id; - ptr++; - routes[ptr] = prev; - routes[ptr + diffTypesPtrOffset] = ADDED; - return { - y: slide.y, - id: ptr - }; - } else { - const prev = down.id; - ptr++; - routes[ptr] = prev; - routes[ptr + diffTypesPtrOffset] = REMOVED; - return { - y: down.y + 1, - id: ptr - }; - } - } - function snake(k3, slide, down, _offset, A6, B4) { - const M4 = A6.length; - const N3 = B4.length; - if (k3 < -N3 || M4 < k3) return { - y: -1, - id: -1 - }; - const fp = createFP(slide, down, k3, M4); - while(fp.y + k3 < M4 && fp.y < N3 && A6[fp.y + k3] === B4[fp.y]){ - const prev = fp.id; - ptr++; - fp.id = ptr; - fp.y += 1; - routes[ptr] = prev; - routes[ptr + diffTypesPtrOffset] = COMMON; - } - return fp; - } - while(fp1[delta + offset6].y < N1){ - p40 = p40 + 1; - for(let k4 = -p40; k4 < delta; ++k4){ - fp1[k4 + offset6] = snake(k4, fp1[k4 - 1 + offset6], fp1[k4 + 1 + offset6], offset6, A1, B1); - } - for(let k1 = delta + p40; k1 > delta; --k1){ - fp1[k1 + offset6] = snake(k1, fp1[k1 - 1 + offset6], fp1[k1 + 1 + offset6], offset6, A1, B1); - } - fp1[delta + offset6] = snake(delta, fp1[delta - 1 + offset6], fp1[delta + 1 + offset6], offset6, A1, B1); - } - return [ - ...prefixCommon.map((c39)=>({ - type: DiffType.common, - value: c39 - })), - ...backTrace(A1, B1, fp1[delta + offset6], swapped1), - ...suffixCommon.map((c40)=>({ - type: DiffType.common, - value: c40 - })), - ]; -} -function diffstr(A7, B5) { - function unescape(string) { - return string.replaceAll("\b", "\\b").replaceAll("\f", "\\f").replaceAll("\t", "\\t").replaceAll("\v", "\\v").replaceAll(/\r\n|\r|\n/g, (str72)=>str72 === "\r" ? "\\r" : str72 === "\n" ? "\\n\n" : "\\r\\n\r\n"); - } - function tokenize(string, { wordDiff =false } = {}) { - if (wordDiff) { - const tokens = string.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/); - const words = /^[a-zA-Z\u{C0}-\u{FF}\u{D8}-\u{F6}\u{F8}-\u{2C6}\u{2C8}-\u{2D7}\u{2DE}-\u{2FF}\u{1E00}-\u{1EFF}]+$/u; - for(let i77 = 0; i77 < tokens.length - 1; i77++){ - if (!tokens[i77 + 1] && tokens[i77 + 2] && words.test(tokens[i77]) && words.test(tokens[i77 + 2])) { - tokens[i77] += tokens[i77 + 2]; - tokens.splice(i77 + 1, 2); - i77--; - } - } - return tokens.filter((token)=>token); - } else { - const tokens = [], lines = string.split(/(\n|\r\n)/); - if (!lines[lines.length - 1]) { - lines.pop(); - } - for(let i78 = 0; i78 < lines.length; i78++){ - if (i78 % 2) { - tokens[tokens.length - 1] += lines[i78]; - } else { - tokens.push(lines[i78]); - } - } - return tokens; - } - } - function createDetails(line, tokens) { - return tokens.filter(({ type: type17 })=>type17 === line.type || type17 === DiffType.common).map((result, i79, t92)=>{ - if (result.type === DiffType.common && t92[i79 - 1] && t92[i79 - 1]?.type === t92[i79 + 1]?.type && /\s+/.test(result.value)) { - result.type = t92[i79 - 1].type; - } - return result; - }); - } - const diffResult = diff(tokenize(`${unescape(A7)}\n`), tokenize(`${unescape(B5)}\n`)); - const added = [], removed = []; - for (const result1 of diffResult){ - if (result1.type === DiffType.added) { - added.push(result1); - } - if (result1.type === DiffType.removed) { - removed.push(result1); - } - } - const aLines = added.length < removed.length ? added : removed; - const bLines = aLines === removed ? added : removed; - for (const a22 of aLines){ - let tokens = [], b21; - while(bLines.length){ - b21 = bLines.shift(); - tokens = diff(tokenize(a22.value, { - wordDiff: true - }), tokenize(b21?.value ?? "", { - wordDiff: true - })); - if (tokens.some(({ type: type18 , value: value121 })=>type18 === DiffType.common && value121.trim().length)) { - break; - } - } - a22.details = createDetails(a22, tokens); - if (b21) { - b21.details = createDetails(b21, tokens); - } - } - return diffResult; -} -function createColor(diffType, { background =false } = {}) { - switch(diffType){ - case DiffType.added: - return (s36)=>background ? bgGreen(white(s36)) : green(bold(s36)); - case DiffType.removed: - return (s37)=>background ? bgRed(white(s37)) : red(bold(s37)); - default: - return white; - } -} -function createSign(diffType) { - switch(diffType){ - case DiffType.added: - return "+ "; - case DiffType.removed: - return "- "; - default: - return " "; - } -} -function buildMessage(diffResult, { stringDiff =false } = {}) { - const messages = [], diffMessages = []; - messages.push(""); - messages.push(""); - messages.push(` ${gray(bold("[Diff]"))} ${red(bold("Actual"))} / ${green(bold("Expected"))}`); - messages.push(""); - messages.push(""); - diffResult.forEach((result)=>{ - const c41 = createColor(result.type); - const line = result.details?.map((detail)=>detail.type !== DiffType.common ? createColor(detail.type, { - background: true - })(detail.value) : detail.value).join("") ?? result.value; - diffMessages.push(c41(`${createSign(result.type)}${line}`)); - }); - messages.push(...stringDiff ? [ - diffMessages.join("") - ] : diffMessages); - messages.push(""); - return messages; -} -function format4(v16) { - const { Deno } = globalThis; - return typeof Deno?.inspect === "function" ? Deno.inspect(v16, { - depth: Infinity, - sorted: true, - trailingComma: true, - compact: false, - iterableLimit: Infinity - }) : `"${String(v16).replace(/(?=["\\])/g, "\\")}"`; -} -const CAN_NOT_DISPLAY = "[Cannot display]"; -class AssertionError extends Error { - name = "AssertionError"; - constructor(message){ - super(message); - } -} -function isKeyedCollection(x6) { - return [ - Symbol.iterator, - "size" - ].every((k5)=>k5 in x6); -} -function equal(c42, d6) { - const seen = new Map(); - return function compare1(a23, b22) { - if (a23 && b22 && (a23 instanceof RegExp && b22 instanceof RegExp || a23 instanceof URL && b22 instanceof URL)) { - return String(a23) === String(b22); - } - if (a23 instanceof Date && b22 instanceof Date) { - const aTime = a23.getTime(); - const bTime = b22.getTime(); - if (Number.isNaN(aTime) && Number.isNaN(bTime)) { - return true; - } - return aTime === bTime; - } - if (typeof a23 === "number" && typeof b22 === "number") { - return Number.isNaN(a23) && Number.isNaN(b22) || a23 === b22; - } - if (Object.is(a23, b22)) { - return true; - } - if (a23 && typeof a23 === "object" && b22 && typeof b22 === "object") { - if (a23 && b22 && !constructorsEqual(a23, b22)) { - return false; - } - if (a23 instanceof WeakMap || b22 instanceof WeakMap) { - if (!(a23 instanceof WeakMap && b22 instanceof WeakMap)) return false; - throw new TypeError("cannot compare WeakMap instances"); - } - if (a23 instanceof WeakSet || b22 instanceof WeakSet) { - if (!(a23 instanceof WeakSet && b22 instanceof WeakSet)) return false; - throw new TypeError("cannot compare WeakSet instances"); - } - if (seen.get(a23) === b22) { - return true; - } - if (Object.keys(a23 || {}).length !== Object.keys(b22 || {}).length) { - return false; - } - seen.set(a23, b22); - if (isKeyedCollection(a23) && isKeyedCollection(b22)) { - if (a23.size !== b22.size) { - return false; - } - let unmatchedEntries = a23.size; - for (const [aKey, aValue] of a23.entries()){ - for (const [bKey, bValue] of b22.entries()){ - if (aKey === aValue && bKey === bValue && compare1(aKey, bKey) || compare1(aKey, bKey) && compare1(aValue, bValue)) { - unmatchedEntries--; - } - } - } - return unmatchedEntries === 0; - } - const merged = { - ...a23, - ...b22 - }; - for (const key42 of [ - ...Object.getOwnPropertyNames(merged), - ...Object.getOwnPropertySymbols(merged), - ]){ - if (!compare1(a23 && a23[key42], b22 && b22[key42])) { - return false; - } - if (key42 in a23 && !(key42 in b22) || key42 in b22 && !(key42 in a23)) { - return false; - } - } - if (a23 instanceof WeakRef || b22 instanceof WeakRef) { - if (!(a23 instanceof WeakRef && b22 instanceof WeakRef)) return false; - return compare1(a23.deref(), b22.deref()); - } - return true; - } - return false; - }(c42, d6); -} -function constructorsEqual(a24, b23) { - return a24.constructor === b23.constructor || a24.constructor === Object && !b23.constructor || !a24.constructor && b23.constructor === Object; -} -function assert5(expr, msg18 = "") { - if (!expr) { - throw new AssertionError(msg18); - } -} -function assertEquals(actual, expected, msg19) { - if (equal(actual, expected)) { - return; - } - let message = ""; - const actualString = format4(actual); - const expectedString = format4(expected); - try { - const stringDiff = typeof actual === "string" && typeof expected === "string"; - const diffResult = stringDiff ? diffstr(actual, expected) : diff(actualString.split("\n"), expectedString.split("\n")); - const diffMsg = buildMessage(diffResult, { - stringDiff - }).join("\n"); - message = `Values are not equal:\n${diffMsg}`; - } catch { - message = `\n${red(CAN_NOT_DISPLAY)} + \n\n`; - } - if (msg19) { - message = msg19; - } - throw new AssertionError(message); -} -function assertNotEquals(actual, expected, msg20) { - if (!equal(actual, expected)) { - return; - } - let actualString; - let expectedString; - try { - actualString = String(actual); - } catch { - actualString = "[Cannot display]"; - } - try { - expectedString = String(expected); - } catch { - expectedString = "[Cannot display]"; - } - if (!msg20) { - msg20 = `actual: ${actualString} expected not to be: ${expectedString}`; - } - throw new AssertionError(msg20); -} -function assertStrictEquals(actual, expected, msg21) { - if (Object.is(actual, expected)) { - return; - } - let message; - if (msg21) { - message = msg21; +function consoleSize(...args13) { + if (typeof Deno.consoleSize == "function") { + return Deno.consoleSize(...args13); } else { - const actualString = format4(actual); - const expectedString = format4(expected); - if (actualString === expectedString) { - const withOffset = actualString.split("\n").map((l)=>` ${l}`).join("\n"); - message = `Values have the same structure but are not reference-equal:\n\n${red(withOffset)}\n`; - } else { - try { - const stringDiff = typeof actual === "string" && typeof expected === "string"; - const diffResult = stringDiff ? diffstr(actual, expected) : diff(actualString.split("\n"), expectedString.split("\n")); - const diffMsg = buildMessage(diffResult, { - stringDiff - }).join("\n"); - message = `Values are not strictly equal:\n${diffMsg}`; - } catch { - message = `\n${red(CAN_NOT_DISPLAY)} + \n\n`; - } - } - } - throw new AssertionError(message); -} -function assertNotStrictEquals(actual, expected, msg22) { - if (!Object.is(actual, expected)) { - return; + throw new TypeError("Requires --unstable"); } - throw new AssertionError(msg22 ?? `Expected "actual" to be strictly unequal to: ${format4(actual)}\n`); } -function assertMatch(actual, expected, msg23) { - if (!expected.test(actual)) { - if (!msg23) { - msg23 = `actual: "${actual}" expected to match: "${expected}"`; - } - throw new AssertionError(msg23); +function utime(...args14) { + if (typeof Deno.utime == "function") { + return Deno.utime(...args14); + } else { + return Promise.reject(new TypeError("Requires --unstable")); } } -function assertNotMatch(actual, expected, msg24) { - if (expected.test(actual)) { - if (!msg24) { - msg24 = `actual: "${actual}" expected to not match: "${expected}"`; - } - throw new AssertionError(msg24); +function utimeSync(...args15) { + if (typeof Deno.utimeSync == "function") { + return Deno.utimeSync(...args15); + } else { + throw new TypeError("Requires --unstable"); } } -function unreachable() { - throw new AssertionError("unreachable"); -} function notImplemented(msg25) { const message = msg25 ? `Not implemented: ${msg25}` : "Not implemented"; throw new Error(message); @@ -26644,29 +29054,29 @@ function slowCases1(enc6) { } } const isNumericLookup = {}; -function isArrayIndex(value122) { - switch(typeof value122){ +function isArrayIndex(value126) { + switch(typeof value126){ case "number": - return value122 >= 0 && (value122 | 0) === value122; + return value126 >= 0 && (value126 | 0) === value126; case "string": { - const result = isNumericLookup[value122]; + const result = isNumericLookup[value126]; if (result !== void 0) { return result; } - const length = value122.length; + const length = value126.length; if (length === 0) { - return isNumericLookup[value122] = false; + return isNumericLookup[value126] = false; } let ch = 0; - let i80 = 0; - for(; i80 < length; ++i80){ - ch = value122.charCodeAt(i80); - if (i80 === 0 && ch === 0x30 && length > 1 || ch < 0x30 || ch > 0x39) { - return isNumericLookup[value122] = false; + let i83 = 0; + for(; i83 < length; ++i83){ + ch = value126.charCodeAt(i83); + if (i83 === 0 && ch === 0x30 && length > 1 || ch < 0x30 || ch > 0x39) { + return isNumericLookup[value126] = false; } } - return isNumericLookup[value122] = true; + return isNumericLookup[value126] = true; } default: return false; @@ -26684,8 +29094,8 @@ function getOwnNonIndexProperties(obj, filter1) { return allProperties; } const result = []; - for (const key43 of allProperties){ - const desc = Object.getOwnPropertyDescriptor(obj, key43); + for (const key45 of allProperties){ + const desc = Object.getOwnPropertyDescriptor(obj, key45); if (desc === undefined) { continue; } @@ -26698,13 +29108,13 @@ function getOwnNonIndexProperties(obj, filter1) { if (filter1 & 4 && !desc.configurable) { continue; } - if (filter1 & 8 && typeof key43 === "string") { + if (filter1 & 8 && typeof key45 === "string") { continue; } - if (filter1 & 16 && typeof key43 === "symbol") { + if (filter1 & 16 && typeof key45 === "symbol") { continue; } - result.push(key43); + result.push(key45); } return result; } @@ -26873,7 +29283,7 @@ const meta = [ '\\x9E', '\\x9F' ]; -const isUndetectableObject = (v17)=>typeof v17 === "undefined" && v17 !== undefined; +const isUndetectableObject = (v24)=>typeof v24 === "undefined" && v24 !== undefined; const strEscapeSequencesRegExp = /[\x00-\x1f\x27\x5c\x7f-\x9f]/; const strEscapeSequencesReplacer = /[\x00-\x1f\x27\x5c\x7f-\x9f]/g; const strEscapeSequencesRegExpSingle = /[\x00-\x1f\x5c\x7f-\x9f]/; @@ -26914,23 +29324,23 @@ function getUserOptions(ctx, isCrossContext) { }; if (isCrossContext) { Object.setPrototypeOf(ret, null); - for (const key44 of Object.keys(ret)){ - if ((typeof ret[key44] === "object" || typeof ret[key44] === "function") && ret[key44] !== null) { - delete ret[key44]; + for (const key46 of Object.keys(ret)){ + if ((typeof ret[key46] === "object" || typeof ret[key46] === "function") && ret[key46] !== null) { + delete ret[key46]; } } - ret.stylize = Object.setPrototypeOf((value123, flavour)=>{ + ret.stylize = Object.setPrototypeOf((value127, flavour)=>{ let stylized; try { - stylized = `${ctx.stylize(value123, flavour)}`; + stylized = `${ctx.stylize(value127, flavour)}`; } catch {} - if (typeof stylized !== "string") return value123; + if (typeof stylized !== "string") return value127; return stylized; }, null); } return ret; } -function inspect(value124, opts) { +function inspect(value128, opts) { const ctx = { budget: {}, indentationLvl: 0, @@ -26962,10 +29372,10 @@ function inspect(value124, opts) { ctx.showHidden = opts; } else if (opts) { const optKeys = Object.keys(opts); - for(let i81 = 0; i81 < optKeys.length; ++i81){ - const key45 = optKeys[i81]; - if (inspectDefaultOptions.hasOwnProperty(key45) || key45 === "stylize") { - ctx[key45] = opts[key45]; + for(let i84 = 0; i84 < optKeys.length; ++i84){ + const key47 = optKeys[i84]; + if (inspectDefaultOptions.hasOwnProperty(key47) || key47 === "stylize") { + ctx[key47] = opts[key47]; } else if (ctx.userOptions === undefined) { ctx.userOptions = opts; } @@ -26975,7 +29385,7 @@ function inspect(value124, opts) { if (ctx.colors) ctx.stylize = stylizeWithColor; if (ctx.maxArrayLength === null) ctx.maxArrayLength = Infinity; if (ctx.maxStringLength === null) ctx.maxStringLength = Infinity; - return formatValue(ctx, value124, 0); + return formatValue(ctx, value128, 0); } const customInspectSymbol = Symbol.for("nodejs.util.inspect.custom"); inspect.custom = customInspectSymbol; @@ -27173,8 +29583,8 @@ function defineColorAlias(target, alias) { get () { return this[target]; }, - set (value125) { - this[target] = value125; + set (value129) { + this[target] = value129; }, configurable: true, enumerable: false @@ -27240,15 +29650,15 @@ function strEscape(str75) { let result = ""; let last6 = 0; const lastIndex = str75.length; - for(let i82 = 0; i82 < lastIndex; i82++){ - const point = str75.charCodeAt(i82); + for(let i85 = 0; i85 < lastIndex; i85++){ + const point = str75.charCodeAt(i85); if (point === singleQuote || point === 92 || point < 32 || point > 126 && point < 160) { - if (last6 === i82) { + if (last6 === i85) { result += meta[point]; } else { - result += `${str75.slice(last6, i82)}${meta[point]}`; + result += `${str75.slice(last6, i85)}${meta[point]}`; } - last6 = i82 + 1; + last6 = i85 + 1; } } if (last6 !== lastIndex) { @@ -27269,20 +29679,20 @@ function stylizeWithColor(str76, styleType) { function stylizeNoColor(str77) { return str77; } -function formatValue(ctx, value126, recurseTimes, typedArray) { - if (typeof value126 !== "object" && typeof value126 !== "function" && !isUndetectableObject(value126)) { - return formatPrimitive(ctx.stylize, value126, ctx); +function formatValue(ctx, value130, recurseTimes, typedArray) { + if (typeof value130 !== "object" && typeof value130 !== "function" && !isUndetectableObject(value130)) { + return formatPrimitive(ctx.stylize, value130, ctx); } - if (value126 === null) { + if (value130 === null) { return ctx.stylize("null", "null"); } - const context6 = value126; - const proxy5 = undefined; + const context6 = value130; + const proxy6 = undefined; if (ctx.customInspect) { - const maybeCustom = value126[customInspectSymbol]; - if (typeof maybeCustom === "function" && maybeCustom !== inspect && !(value126.constructor && value126.constructor.prototype === value126)) { + const maybeCustom = value130[customInspectSymbol]; + if (typeof maybeCustom === "function" && maybeCustom !== inspect && !(value130.constructor && value130.constructor.prototype === value130)) { const depth = ctx.depth === null ? null : ctx.depth - recurseTimes; - const isCrossContext = proxy5 !== undefined || !(context6 instanceof Object); + const isCrossContext = proxy6 !== undefined || !(context6 instanceof Object); const ret = maybeCustom.call(context6, depth, getUserOptions(ctx, isCrossContext)); if (ret !== context6) { if (typeof ret !== "string") { @@ -27292,62 +29702,62 @@ function formatValue(ctx, value126, recurseTimes, typedArray) { } } } - if (ctx.seen.includes(value126)) { + if (ctx.seen.includes(value130)) { let index = 1; if (ctx.circular === undefined) { ctx.circular = new Map(); - ctx.circular.set(value126, index); + ctx.circular.set(value130, index); } else { - index = ctx.circular.get(value126); + index = ctx.circular.get(value130); if (index === undefined) { index = ctx.circular.size + 1; - ctx.circular.set(value126, index); + ctx.circular.set(value130, index); } } return ctx.stylize(`[Circular *${index}]`, "special"); } - return formatRaw(ctx, value126, recurseTimes, typedArray); + return formatRaw(ctx, value130, recurseTimes, typedArray); } -function formatRaw(ctx, value127, recurseTimes, typedArray) { +function formatRaw(ctx, value131, recurseTimes, typedArray) { let keys; let protoProps; if (ctx.showHidden && (recurseTimes <= ctx.depth || ctx.depth === null)) { protoProps = []; } - const constructor = getConstructorName(value127, ctx, recurseTimes, protoProps); + const constructor = getConstructorName(value131, ctx, recurseTimes, protoProps); if (protoProps !== undefined && protoProps.length === 0) { protoProps = undefined; } - let tag = value127[Symbol.toStringTag]; + let tag = value131[Symbol.toStringTag]; if (typeof tag !== "string") { tag = ""; } - let base2 = ""; + let base3 = ""; let formatter = getEmptyFormatArray; let braces; let noIterator = true; - let i83 = 0; + let i86 = 0; const filter2 = ctx.showHidden ? 0 : 2; let extrasType = 0; - if (value127[Symbol.iterator] || constructor === null) { + if (value131[Symbol.iterator] || constructor === null) { noIterator = false; - if (Array.isArray(value127)) { - const prefix = constructor !== "Array" || tag !== "" ? getPrefix(constructor, tag, "Array", `(${value127.length})`) : ""; - keys = getOwnNonIndexProperties(value127, filter2); + if (Array.isArray(value131)) { + const prefix = constructor !== "Array" || tag !== "" ? getPrefix(constructor, tag, "Array", `(${value131.length})`) : ""; + keys = getOwnNonIndexProperties(value131, filter2); braces = [ `${prefix}[`, "]" ]; - if (value127.length === 0 && keys.length === 0 && protoProps === undefined) { + if (value131.length === 0 && keys.length === 0 && protoProps === undefined) { return `${braces[0]}]`; } extrasType = kArrayExtrasType; formatter = formatArray; - } else if (isSet1(value127)) { - const size = value127.size; + } else if (isSet1(value131)) { + const size = value131.size; const prefix = getPrefix(constructor, tag, "Set", `(${size})`); - keys = getKeys(value127, ctx.showHidden); - formatter = constructor !== null ? formatSet.bind(null, value127) : formatSet.bind(null, value127.values()); + keys = getKeys(value131, ctx.showHidden); + formatter = constructor !== null ? formatSet.bind(null, value131) : formatSet.bind(null, value131.values()); if (size === 0 && keys.length === 0 && protoProps === undefined) { return `${prefix}{}`; } @@ -27355,11 +29765,11 @@ function formatRaw(ctx, value127, recurseTimes, typedArray) { `${prefix}{`, "}" ]; - } else if (isMap1(value127)) { - const size = value127.size; + } else if (isMap1(value131)) { + const size = value131.size; const prefix = getPrefix(constructor, tag, "Map", `(${size})`); - keys = getKeys(value127, ctx.showHidden); - formatter = constructor !== null ? formatMap.bind(null, value127) : formatMap.bind(null, value127.entries()); + keys = getKeys(value131, ctx.showHidden); + formatter = constructor !== null ? formatMap.bind(null, value131) : formatMap.bind(null, value131.entries()); if (size === 0 && keys.length === 0 && protoProps === undefined) { return `${prefix}{}`; } @@ -27367,27 +29777,27 @@ function formatRaw(ctx, value127, recurseTimes, typedArray) { `${prefix}{`, "}" ]; - } else if (isTypedArray(value127)) { - keys = getOwnNonIndexProperties(value127, filter2); - const bound = value127; + } else if (isTypedArray(value131)) { + keys = getOwnNonIndexProperties(value131, filter2); + const bound = value131; const fallback = ""; - const size = value127.length; + const size = value131.length; const prefix = getPrefix(constructor, tag, fallback, `(${size})`); braces = [ `${prefix}[`, "]" ]; - if (value127.length === 0 && keys.length === 0 && !ctx.showHidden) { + if (value131.length === 0 && keys.length === 0 && !ctx.showHidden) { return `${braces[0]}]`; } formatter = formatTypedArray.bind(null, bound, size); extrasType = kArrayExtrasType; - } else if (isMapIterator1(value127)) { - keys = getKeys(value127, ctx.showHidden); + } else if (isMapIterator1(value131)) { + keys = getKeys(value131, ctx.showHidden); braces = getIteratorBraces("Map", tag); formatter = formatIterator.bind(null, braces); - } else if (isSetIterator1(value127)) { - keys = getKeys(value127, ctx.showHidden); + } else if (isSetIterator1(value131)) { + keys = getKeys(value131, ctx.showHidden); braces = getIteratorBraces("Set", tag); formatter = formatIterator.bind(null, braces); } else { @@ -27395,13 +29805,13 @@ function formatRaw(ctx, value127, recurseTimes, typedArray) { } } if (noIterator) { - keys = getKeys(value127, ctx.showHidden); + keys = getKeys(value131, ctx.showHidden); braces = [ "{", "}" ]; if (constructor === "Object") { - if (isArgumentsObject1(value127)) { + if (isArgumentsObject1(value131)) { braces[0] = "[Arguments] {"; } else if (tag !== "") { braces[0] = `${getPrefix(constructor, tag, "Object")}{`; @@ -27409,101 +29819,101 @@ function formatRaw(ctx, value127, recurseTimes, typedArray) { if (keys.length === 0 && protoProps === undefined) { return `${braces[0]}}`; } - } else if (typeof value127 === "function") { - base2 = getFunctionBase(value127, constructor, tag); + } else if (typeof value131 === "function") { + base3 = getFunctionBase(value131, constructor, tag); if (keys.length === 0 && protoProps === undefined) { - return ctx.stylize(base2, "special"); + return ctx.stylize(base3, "special"); } - } else if (isRegExp1(value127)) { - base2 = RegExp(constructor !== null ? value127 : new RegExp(value127)).toString(); + } else if (isRegExp1(value131)) { + base3 = RegExp(constructor !== null ? value131 : new RegExp(value131)).toString(); const prefix = getPrefix(constructor, tag, "RegExp"); if (prefix !== "RegExp ") { - base2 = `${prefix}${base2}`; + base3 = `${prefix}${base3}`; } if (keys.length === 0 && protoProps === undefined || recurseTimes > ctx.depth && ctx.depth !== null) { - return ctx.stylize(base2, "regexp"); + return ctx.stylize(base3, "regexp"); } - } else if (isDate1(value127)) { - base2 = Number.isNaN(value127.getTime()) ? value127.toString() : value127.toISOString(); + } else if (isDate1(value131)) { + base3 = Number.isNaN(value131.getTime()) ? value131.toString() : value131.toISOString(); const prefix = getPrefix(constructor, tag, "Date"); if (prefix !== "Date ") { - base2 = `${prefix}${base2}`; + base3 = `${prefix}${base3}`; } if (keys.length === 0 && protoProps === undefined) { - return ctx.stylize(base2, "date"); + return ctx.stylize(base3, "date"); } - } else if (value127 instanceof Error) { - base2 = formatError(value127, constructor, tag, ctx, keys); + } else if (value131 instanceof Error) { + base3 = formatError(value131, constructor, tag, ctx, keys); if (keys.length === 0 && protoProps === undefined) { - return base2; + return base3; } - } else if (isAnyArrayBuffer1(value127)) { - const arrayType = isArrayBuffer1(value127) ? "ArrayBuffer" : "SharedArrayBuffer"; + } else if (isAnyArrayBuffer1(value131)) { + const arrayType = isArrayBuffer1(value131) ? "ArrayBuffer" : "SharedArrayBuffer"; const prefix = getPrefix(constructor, tag, arrayType); if (typedArray === undefined) { formatter = formatArrayBuffer; } else if (keys.length === 0 && protoProps === undefined) { - return prefix + `{ byteLength: ${formatNumber(ctx.stylize, value127.byteLength)} }`; + return prefix + `{ byteLength: ${formatNumber(ctx.stylize, value131.byteLength)} }`; } braces[0] = `${prefix}{`; - Array.prototype.unshift(keys, "byteLength"); - } else if (isDataView1(value127)) { + Array.prototype.unshift.call(keys, "byteLength"); + } else if (isDataView1(value131)) { braces[0] = `${getPrefix(constructor, tag, "DataView")}{`; - Array.prototype.unshift(keys, "byteLength", "byteOffset", "buffer"); - } else if (isPromise1(value127)) { + Array.prototype.unshift.call(keys, "byteLength", "byteOffset", "buffer"); + } else if (isPromise1(value131)) { braces[0] = `${getPrefix(constructor, tag, "Promise")}{`; formatter = formatPromise; - } else if (isWeakSet1(value127)) { + } else if (isWeakSet1(value131)) { braces[0] = `${getPrefix(constructor, tag, "WeakSet")}{`; formatter = ctx.showHidden ? formatWeakSet : formatWeakCollection; - } else if (isWeakMap1(value127)) { + } else if (isWeakMap1(value131)) { braces[0] = `${getPrefix(constructor, tag, "WeakMap")}{`; formatter = ctx.showHidden ? formatWeakMap : formatWeakCollection; - } else if (isModuleNamespaceObject1(value127)) { + } else if (isModuleNamespaceObject1(value131)) { braces[0] = `${getPrefix(constructor, tag, "Module")}{`; formatter = formatNamespaceObject.bind(null, keys); - } else if (isBoxedPrimitive1(value127)) { - base2 = getBoxedBase(value127, ctx, keys, constructor, tag); + } else if (isBoxedPrimitive1(value131)) { + base3 = getBoxedBase(value131, ctx, keys, constructor, tag); if (keys.length === 0 && protoProps === undefined) { - return base2; + return base3; } } else { if (keys.length === 0 && protoProps === undefined) { - return `${getCtxStyle(value127, constructor, tag)}{}`; + return `${getCtxStyle(value131, constructor, tag)}{}`; } - braces[0] = `${getCtxStyle(value127, constructor, tag)}{`; + braces[0] = `${getCtxStyle(value131, constructor, tag)}{`; } } if (recurseTimes > ctx.depth && ctx.depth !== null) { - let constructorName = getCtxStyle(value127, constructor, tag).slice(0, -1); + let constructorName = getCtxStyle(value131, constructor, tag).slice(0, -1); if (constructor !== null) { constructorName = `[${constructorName}]`; } return ctx.stylize(constructorName, "special"); } recurseTimes += 1; - ctx.seen.push(value127); + ctx.seen.push(value131); ctx.currentDepth = recurseTimes; let output; const indentationLvl = ctx.indentationLvl; try { - output = formatter(ctx, value127, recurseTimes); - for(i83 = 0; i83 < keys.length; i83++){ - output.push(formatProperty(ctx, value127, recurseTimes, keys[i83], extrasType)); + output = formatter(ctx, value131, recurseTimes); + for(i86 = 0; i86 < keys.length; i86++){ + output.push(formatProperty(ctx, value131, recurseTimes, keys[i86], extrasType)); } if (protoProps !== undefined) { output.push(...protoProps); } } catch (err) { - const constructorName = getCtxStyle(value127, constructor, tag).slice(0, -1); + const constructorName = getCtxStyle(value131, constructor, tag).slice(0, -1); return handleMaxCallStackSize(ctx, err, constructorName, indentationLvl); } if (ctx.circular !== undefined) { - const index = ctx.circular.get(value127); + const index = ctx.circular.get(value131); if (index !== undefined) { const reference = ctx.stylize(``, "special"); if (ctx.compact !== true) { - base2 = base2 === "" ? reference : `${reference} ${base2}`; + base3 = base3 === "" ? reference : `${reference} ${base3}`; } else { braces[0] = `${reference} ${braces[0]}`; } @@ -27519,7 +29929,7 @@ function formatRaw(ctx, value127, recurseTimes, typedArray) { output.splice(output.length - keys.length, keys.length, ...sorted); } } - const res = reduceToSingleString(ctx, output, base2, braces, extrasType, recurseTimes, value127); + const res = reduceToSingleString(ctx, output, base3, braces, extrasType, recurseTimes, value131); const budget = ctx.budget[ctx.indentationLvl] || 0; const newLength = budget + res.length; ctx.budget[ctx.indentationLvl] = newLength; @@ -27547,10 +29957,10 @@ function addPrototypeProperties(ctx, main, obj, recurseTimes, output) { if (depth === 0) { keySet = new Set(); } else { - Array.prototype.forEach(keys, (key46)=>keySet.add(key46)); + Array.prototype.forEach.call(keys, (key48)=>keySet.add(key48)); } keys = Reflect.ownKeys(obj); - Array.prototype.push(ctx.seen, main); + Array.prototype.push.call(ctx.seen, main); for (const key1 of keys){ if (key1 === "constructor" || main.hasOwnProperty(key1) || depth !== 0 && keySet.has(key1)) { continue; @@ -27559,14 +29969,14 @@ function addPrototypeProperties(ctx, main, obj, recurseTimes, output) { if (typeof desc.value === "function") { continue; } - const value128 = formatProperty(ctx, obj, recurseTimes, key1, 0, desc, main); + const value132 = formatProperty(ctx, obj, recurseTimes, key1, 0, desc, main); if (ctx.colors) { - Array.prototype.push(output, `\u001b[2m${value128}\u001b[22m`); + Array.prototype.push.call(output, `\u001b[2m${value132}\u001b[22m`); } else { - Array.prototype.push(output, value128); + Array.prototype.push.call(output, value132); } } - Array.prototype.pop(ctx.seen); + Array.prototype.pop.call(ctx.seen); }while (++depth !== 3) } function getConstructorName(obj, ctx, recurseTimes, protoProps) { @@ -27602,32 +30012,32 @@ function getConstructorName(obj, ctx, recurseTimes, protoProps) { } return `${res} <${protoConstr}>`; } -function formatPrimitive(fn, value129, ctx) { - if (typeof value129 === "string") { +function formatPrimitive(fn, value133, ctx) { + if (typeof value133 === "string") { let trailer = ""; - if (value129.length > ctx.maxStringLength) { - const remaining = value129.length - ctx.maxStringLength; - value129 = value129.slice(0, ctx.maxStringLength); + if (value133.length > ctx.maxStringLength) { + const remaining = value133.length - ctx.maxStringLength; + value133 = value133.slice(0, ctx.maxStringLength); trailer = `... ${remaining} more character${remaining > 1 ? "s" : ""}`; } - if (ctx.compact !== true && value129.length > 16 && value129.length > ctx.breakLength - ctx.indentationLvl - 4) { - return value129.split(/(?<=\n)/).map((line)=>fn(strEscape(line), "string")).join(` +\n${" ".repeat(ctx.indentationLvl + 2)}`) + trailer; + if (ctx.compact !== true && value133.length > 16 && value133.length > ctx.breakLength - ctx.indentationLvl - 4) { + return value133.split(/(?<=\n)/).map((line)=>fn(strEscape(line), "string")).join(` +\n${" ".repeat(ctx.indentationLvl + 2)}`) + trailer; } - return fn(strEscape(value129), "string") + trailer; + return fn(strEscape(value133), "string") + trailer; } - if (typeof value129 === "number") { - return formatNumber(fn, value129); + if (typeof value133 === "number") { + return formatNumber(fn, value133); } - if (typeof value129 === "bigint") { - return formatBigInt(fn, value129); + if (typeof value133 === "bigint") { + return formatBigInt(fn, value133); } - if (typeof value129 === "boolean") { - return fn(`${value129}`, "boolean"); + if (typeof value133 === "boolean") { + return fn(`${value133}`, "boolean"); } - if (typeof value129 === "undefined") { + if (typeof value133 === "undefined") { return fn("undefined", "undefined"); } - return fn(value129.toString(), "symbol"); + return fn(value133.toString(), "symbol"); } function getEmptyFormatArray() { return []; @@ -27651,16 +30061,16 @@ function getPrefix(constructor, tag, fallback, size = "") { } return `${constructor}${size} `; } -function formatArray(ctx, value130, recurseTimes) { - const valLen = value130.length; +function formatArray(ctx, value134, recurseTimes) { + const valLen = value134.length; const len14 = Math.min(Math.max(0, ctx.maxArrayLength), valLen); const remaining = valLen - len14; const output = []; - for(let i84 = 0; i84 < len14; i84++){ - if (!value130.hasOwnProperty(i84)) { - return formatSpecialArray(ctx, value130, recurseTimes, len14, output, i84); + for(let i87 = 0; i87 < len14; i87++){ + if (!value134.hasOwnProperty(i87)) { + return formatSpecialArray(ctx, value134, recurseTimes, len14, output, i87); } - output.push(formatProperty(ctx, value130, recurseTimes, i84, 1)); + output.push(formatProperty(ctx, value134, recurseTimes, i87, 1)); } if (remaining > 0) { output.push(`... ${remaining} more item${remaining > 1 ? "s" : ""}`); @@ -27676,122 +30086,122 @@ function getCtxStyle(_value, constructor, tag) { } return getPrefix(constructor, tag, fallback); } -function getKeys(value131, showHidden) { +function getKeys(value135, showHidden) { let keys; - const symbols = Object.getOwnPropertySymbols(value131); + const symbols = Object.getOwnPropertySymbols(value135); if (showHidden) { - keys = Object.getOwnPropertyNames(value131); + keys = Object.getOwnPropertyNames(value135); if (symbols.length !== 0) { Array.prototype.push.apply(keys, symbols); } } else { try { - keys = Object.keys(value131); + keys = Object.keys(value135); } catch (_err) { - keys = Object.getOwnPropertyNames(value131); + keys = Object.getOwnPropertyNames(value135); } if (symbols.length !== 0) {} } return keys; } -function formatSet(value132, ctx, _ignored, recurseTimes) { +function formatSet(value136, ctx, _ignored, recurseTimes) { const output = []; ctx.indentationLvl += 2; - for (const v18 of value132){ - Array.prototype.push(output, formatValue(ctx, v18, recurseTimes)); + for (const v25 of value136){ + Array.prototype.push.call(output, formatValue(ctx, v25, recurseTimes)); } ctx.indentationLvl -= 2; return output; } -function formatMap(value133, ctx, _gnored, recurseTimes) { +function formatMap(value137, ctx, _gnored, recurseTimes) { const output = []; ctx.indentationLvl += 2; - for (const { 0: k7 , 1: v19 } of value133){ - output.push(`${formatValue(ctx, k7, recurseTimes)} => ${formatValue(ctx, v19, recurseTimes)}`); + for (const { 0: k7 , 1: v26 } of value137){ + output.push(`${formatValue(ctx, k7, recurseTimes)} => ${formatValue(ctx, v26, recurseTimes)}`); } ctx.indentationLvl -= 2; return output; } -function formatTypedArray(value134, length, ctx, _ignored, recurseTimes) { +function formatTypedArray(value138, length, ctx, _ignored, recurseTimes) { const maxLength = Math.min(Math.max(0, ctx.maxArrayLength), length); - const remaining = value134.length - maxLength; + const remaining = value138.length - maxLength; const output = new Array(maxLength); - const elementFormatter = value134.length > 0 && typeof value134[0] === "number" ? formatNumber : formatBigInt; - for(let i85 = 0; i85 < maxLength; ++i85){ - output[i85] = elementFormatter(ctx.stylize, value134[i85]); + const elementFormatter = value138.length > 0 && typeof value138[0] === "number" ? formatNumber : formatBigInt; + for(let i88 = 0; i88 < maxLength; ++i88){ + output[i88] = elementFormatter(ctx.stylize, value138[i88]); } if (remaining > 0) { output[maxLength] = `... ${remaining} more item${remaining > 1 ? "s" : ""}`; } if (ctx.showHidden) { ctx.indentationLvl += 2; - for (const key47 of [ + for (const key49 of [ "BYTES_PER_ELEMENT", "length", "byteLength", "byteOffset", "buffer", ]){ - const str78 = formatValue(ctx, value134[key47], recurseTimes, true); - Array.prototype.push(output, `[${key47}]: ${str78}`); + const str78 = formatValue(ctx, value138[key49], recurseTimes, true); + Array.prototype.push.call(output, `[${key49}]: ${str78}`); } ctx.indentationLvl -= 2; } return output; } -function getIteratorBraces(type19, tag) { - if (tag !== `${type19} Iterator`) { +function getIteratorBraces(type12, tag) { + if (tag !== `${type12} Iterator`) { if (tag !== "") { tag += "] ["; } - tag += `${type19} Iterator`; + tag += `${type12} Iterator`; } return [ `[${tag}] {`, "}" ]; } -function formatIterator(braces, ctx, value135, recurseTimes) { - const { 0: entries , 1: isKeyValue } = value135; +function formatIterator(braces, ctx, value139, recurseTimes) { + const { 0: entries , 1: isKeyValue } = value139; if (isKeyValue) { braces[0] = braces[0].replace(/ Iterator] {$/, " Entries] {"); return formatMapIterInner(ctx, recurseTimes, entries, 2); } return formatSetIterInner(ctx, recurseTimes, entries, 1); } -function getFunctionBase(value136, constructor, tag) { - const stringified = Function.prototype.toString(value136); +function getFunctionBase(value140, constructor, tag) { + const stringified = Function.prototype.toString.call(value140); if (stringified.slice(0, 5) === "class" && stringified.endsWith("}")) { const slice = stringified.slice(5, -1); const bracketIndex = slice.indexOf("{"); if (bracketIndex !== -1 && (!slice.slice(0, bracketIndex).includes("(") || classRegExp.test(slice.replace(stripCommentsRegExp)))) { - return getClassBase(value136, constructor, tag); + return getClassBase(value140, constructor, tag); } } - let type20 = "Function"; - if (isGeneratorFunction1(value136)) { - type20 = `Generator${type20}`; + let type13 = "Function"; + if (isGeneratorFunction1(value140)) { + type13 = `Generator${type13}`; } - if (isAsyncFunction1(value136)) { - type20 = `Async${type20}`; + if (isAsyncFunction1(value140)) { + type13 = `Async${type13}`; } - let base3 = `[${type20}`; + let base4 = `[${type13}`; if (constructor === null) { - base3 += " (null prototype)"; + base4 += " (null prototype)"; } - if (value136.name === "") { - base3 += " (anonymous)"; + if (value140.name === "") { + base4 += " (anonymous)"; } else { - base3 += `: ${value136.name}`; + base4 += `: ${value140.name}`; } - base3 += "]"; - if (constructor !== type20 && constructor !== null) { - base3 += ` ${constructor}`; + base4 += "]"; + if (constructor !== type13 && constructor !== null) { + base4 += ` ${constructor}`; } if (tag !== "" && constructor !== tag) { - base3 += ` [${tag}]`; + base4 += ` [${tag}]`; } - return base3; + return base4; } function formatError(err, constructor, tag, ctx, keys) { const name20 = err.name != null ? String(err.name) : "Error"; @@ -27812,8 +30222,8 @@ function formatError(err, constructor, tag, ctx, keys) { if (constructor === null || name20.endsWith("Error") && stack.startsWith(name20) && (stack.length === len15 || stack[len15] === ":" || stack[len15] === "\n")) { let fallback = "Error"; if (constructor === null) { - const start11 = stack.match(/^([A-Z][a-z_ A-Z0-9[\]()-]+)(?::|\n {4}at)/) || stack.match(/^([a-z_A-Z0-9-]*Error)$/); - fallback = start11 && start11[1] || ""; + const start12 = stack.match(/^([A-Z][a-z_ A-Z0-9[\]()-]+)(?::|\n {4}at)/) || stack.match(/^([a-z_A-Z0-9-]*Error)$/); + fallback = start12 && start12[1] || ""; len15 = fallback.length; fallback = fallback || "Error"; } @@ -27860,10 +30270,10 @@ function formatError(err, constructor, tag, ctx, keys) { return stack; } let hexSlice; -function formatArrayBuffer(ctx, value137) { +function formatArrayBuffer(ctx, value141) { let buffer14; try { - buffer14 = new Uint8Array(value137); + buffer14 = new Uint8Array(value141); } catch { return [ ctx.stylize("(detached)", "special") @@ -27878,13 +30288,13 @@ function formatArrayBuffer(ctx, value137) { `${ctx.stylize("[Uint8Contents]", "special")}: <${str79}>` ]; } -function formatNumber(fn, value138) { - return fn(Object.is(value138, -0) ? "-0" : `${value138}`, "number"); +function formatNumber(fn, value142) { + return fn(Object.is(value142, -0) ? "-0" : `${value142}`, "number"); } -function formatPromise(ctx, value139, recurseTimes) { +function formatPromise(ctx, value143, recurseTimes) { let output; - const { 0: state10 , 1: result } = value139; - if (state10 === 0) { + const { 0: state11 , 1: result } = value143; + if (state11 === 0) { output = [ ctx.stylize("", "special") ]; @@ -27893,7 +30303,7 @@ function formatPromise(ctx, value139, recurseTimes) { const str80 = formatValue(ctx, result, recurseTimes); ctx.indentationLvl -= 2; output = [ - state10 === kRejected ? `${ctx.stylize("", "special")} ${str80}` : str80, + state11 === kRejected ? `${ctx.stylize("", "special")} ${str80}` : str80, ]; } return output; @@ -27903,23 +30313,23 @@ function formatWeakCollection(ctx) { ctx.stylize("", "special") ]; } -function formatWeakSet(ctx, value140, recurseTimes) { - const entries = value140; +function formatWeakSet(ctx, value144, recurseTimes) { + const entries = value144; return formatSetIterInner(ctx, recurseTimes, entries, 0); } -function formatWeakMap(ctx, value141, recurseTimes) { - const entries = value141; +function formatWeakMap(ctx, value145, recurseTimes) { + const entries = value145; return formatMapIterInner(ctx, recurseTimes, entries, 0); } -function formatProperty(ctx, value142, recurseTimes, key48, type21, desc, original = value142) { +function formatProperty(ctx, value146, recurseTimes, key50, type14, desc, original = value146) { let name22, str81; let extra = " "; - desc = desc || Object.getOwnPropertyDescriptor(value142, key48) || { - value: value142[key48], + desc = desc || Object.getOwnPropertyDescriptor(value146, key50) || { + value: value146[key50], enumerable: true }; if (desc.value !== undefined) { - const diff1 = ctx.compact !== true || type21 !== 0 ? 2 : 3; + const diff1 = ctx.compact !== true || type14 !== 0 ? 2 : 3; ctx.indentationLvl += diff1; str81 = formatValue(ctx, desc.value, recurseTimes); if (diff1 === 3 && ctx.breakLength < getStringWidth(str81, ctx.colors)) { @@ -27955,21 +30365,21 @@ function formatProperty(ctx, value142, recurseTimes, key48, type21, desc, origin } else { str81 = ctx.stylize("undefined", "undefined"); } - if (type21 === 1) { + if (type14 === 1) { return str81; } - if (typeof key48 === "symbol") { - const tmp = key48.toString().replace(strEscapeSequencesReplacer, escapeFn); + if (typeof key50 === "symbol") { + const tmp = key50.toString().replace(strEscapeSequencesReplacer, escapeFn); name22 = `[${ctx.stylize(tmp, "symbol")}]`; - } else if (key48 === "__proto__") { + } else if (key50 === "__proto__") { name22 = "['__proto__']"; } else if (desc.enumerable === false) { - const tmp = key48.replace(strEscapeSequencesReplacer, escapeFn); + const tmp = key50.replace(strEscapeSequencesReplacer, escapeFn); name22 = `[${tmp}]`; - } else if (keyStrRegExp.test(key48)) { - name22 = ctx.stylize(key48, "name"); + } else if (keyStrRegExp.test(key50)) { + name22 = ctx.stylize(key50, "name"); } else { - name22 = ctx.stylize(strEscape(key48), "string"); + name22 = ctx.stylize(strEscape(key50), "string"); } return `${name22}:${extra}${str81}`; } @@ -27978,54 +30388,54 @@ const colorRegExp = /\u001b\[\d\d?m/g; function removeColors(str82) { return str82.replace(colorRegExp, ""); } -function isBelowBreakLength(ctx, output, start12, base4) { - let totalLength = output.length + start12; +function isBelowBreakLength(ctx, output, start13, base5) { + let totalLength = output.length + start13; if (totalLength + output.length > ctx.breakLength) { return false; } - for(let i86 = 0; i86 < output.length; i86++){ + for(let i89 = 0; i89 < output.length; i89++){ if (ctx.colors) { - totalLength += removeColors(output[i86]).length; + totalLength += removeColors(output[i89]).length; } else { - totalLength += output[i86].length; + totalLength += output[i89].length; } if (totalLength > ctx.breakLength) { return false; } } - return base4 === "" || !base4.includes("\n"); + return base5 === "" || !base5.includes("\n"); } -function formatBigInt(fn, value143) { - return fn(`${value143}n`, "bigint"); +function formatBigInt(fn, value147) { + return fn(`${value147}n`, "bigint"); } -function formatNamespaceObject(keys, ctx, value144, recurseTimes) { +function formatNamespaceObject(keys, ctx, value148, recurseTimes) { const output = new Array(keys.length); - for(let i87 = 0; i87 < keys.length; i87++){ + for(let i90 = 0; i90 < keys.length; i90++){ try { - output[i87] = formatProperty(ctx, value144, recurseTimes, keys[i87], kObjectType); + output[i90] = formatProperty(ctx, value148, recurseTimes, keys[i90], kObjectType); } catch (_err) { const tmp = { - [keys[i87]]: "" + [keys[i90]]: "" }; - output[i87] = formatProperty(ctx, tmp, recurseTimes, keys[i87], kObjectType); - const pos = output[i87].lastIndexOf(" "); - output[i87] = output[i87].slice(0, pos + 1) + ctx.stylize("", "special"); + output[i90] = formatProperty(ctx, tmp, recurseTimes, keys[i90], kObjectType); + const pos = output[i90].lastIndexOf(" "); + output[i90] = output[i90].slice(0, pos + 1) + ctx.stylize("", "special"); } } keys.length = 0; return output; } -function formatSpecialArray(ctx, value145, recurseTimes, maxLength, output, i88) { - const keys = Object.keys(value145); - let index = i88; - for(; i88 < keys.length && output.length < maxLength; i88++){ - const key49 = keys[i88]; - const tmp = +key49; +function formatSpecialArray(ctx, value149, recurseTimes, maxLength, output, i91) { + const keys = Object.keys(value149); + let index = i91; + for(; i91 < keys.length && output.length < maxLength; i91++){ + const key51 = keys[i91]; + const tmp = +key51; if (tmp > 2 ** 32 - 2) { break; } - if (`${index}` !== key49) { - if (!numberRegExp.test(key49)) { + if (`${index}` !== key51) { + if (!numberRegExp.test(key51)) { break; } const emptyItems = tmp - index; @@ -28037,10 +30447,10 @@ function formatSpecialArray(ctx, value145, recurseTimes, maxLength, output, i88) break; } } - output.push(formatProperty(ctx, value145, recurseTimes, key49, 1)); + output.push(formatProperty(ctx, value149, recurseTimes, key51, 1)); index++; } - const remaining = value145.length - index; + const remaining = value149.length - index; if (output.length !== maxLength) { if (remaining > 0) { const ending = remaining > 1 ? "s" : ""; @@ -28052,106 +30462,106 @@ function formatSpecialArray(ctx, value145, recurseTimes, maxLength, output, i88) } return output; } -function getBoxedBase(value146, ctx, keys, constructor, tag) { - let type22; - if (isNumberObject1(value146)) { - type22 = "Number"; - } else if (isStringObject1(value146)) { - type22 = "String"; - keys.splice(0, value146.length); - } else if (isBooleanObject1(value146)) { - type22 = "Boolean"; - } else if (isBigIntObject1(value146)) { - type22 = "BigInt"; +function getBoxedBase(value150, ctx, keys, constructor, tag) { + let type15; + if (isNumberObject1(value150)) { + type15 = "Number"; + } else if (isStringObject1(value150)) { + type15 = "String"; + keys.splice(0, value150.length); + } else if (isBooleanObject1(value150)) { + type15 = "Boolean"; + } else if (isBigIntObject1(value150)) { + type15 = "BigInt"; } else { - type22 = "Symbol"; + type15 = "Symbol"; } - let base5 = `[${type22}`; - if (type22 !== constructor) { + let base6 = `[${type15}`; + if (type15 !== constructor) { if (constructor === null) { - base5 += " (null prototype)"; + base6 += " (null prototype)"; } else { - base5 += ` (${constructor})`; + base6 += ` (${constructor})`; } } - base5 += `: ${formatPrimitive(stylizeNoColor, value146.valueOf(), ctx)}]`; + base6 += `: ${formatPrimitive(stylizeNoColor, value150.valueOf(), ctx)}]`; if (tag !== "" && tag !== constructor) { - base5 += ` [${tag}]`; + base6 += ` [${tag}]`; } if (keys.length !== 0 || ctx.stylize === stylizeNoColor) { - return base5; + return base6; } - return ctx.stylize(base5, type22.toLowerCase()); + return ctx.stylize(base6, type15.toLowerCase()); } -function getClassBase(value147, constructor, tag) { - const hasName = value147.hasOwnProperty("name"); - const name23 = hasName && value147.name || "(anonymous)"; - let base6 = `class ${name23}`; +function getClassBase(value151, constructor, tag) { + const hasName = value151.hasOwnProperty("name"); + const name23 = hasName && value151.name || "(anonymous)"; + let base7 = `class ${name23}`; if (constructor !== "Function" && constructor !== null) { - base6 += ` [${constructor}]`; + base7 += ` [${constructor}]`; } if (tag !== "" && constructor !== tag) { - base6 += ` [${tag}]`; + base7 += ` [${tag}]`; } if (constructor !== null) { - const superName = Object.getPrototypeOf(value147).name; + const superName = Object.getPrototypeOf(value151).name; if (superName) { - base6 += ` extends ${superName}`; + base7 += ` extends ${superName}`; } } else { - base6 += " extends [null prototype]"; + base7 += " extends [null prototype]"; } - return `[${base6}]`; + return `[${base7}]`; } -function reduceToSingleString(ctx, output, base7, braces, extrasType, recurseTimes, value148) { +function reduceToSingleString(ctx, output, base8, braces, extrasType, recurseTimes, value152) { if (ctx.compact !== true) { if (typeof ctx.compact === "number" && ctx.compact >= 1) { const entries = output.length; if (extrasType === 2 && entries > 6) { - output = groupArrayElements(ctx, output, value148); + output = groupArrayElements(ctx, output, value152); } if (ctx.currentDepth - recurseTimes < ctx.compact && entries === output.length) { - const start13 = output.length + ctx.indentationLvl + braces[0].length + base7.length + 10; - if (isBelowBreakLength(ctx, output, start13, base7)) { - return `${base7 ? `${base7} ` : ""}${braces[0]} ${join4(output, ", ")}` + ` ${braces[1]}`; + const start14 = output.length + ctx.indentationLvl + braces[0].length + base8.length + 10; + if (isBelowBreakLength(ctx, output, start14, base8)) { + return `${base8 ? `${base8} ` : ""}${braces[0]} ${join4(output, ", ")}` + ` ${braces[1]}`; } } } const indentation = `\n${" ".repeat(ctx.indentationLvl)}`; - return `${base7 ? `${base7} ` : ""}${braces[0]}${indentation} ` + `${join4(output, `,${indentation} `)}${indentation}${braces[1]}`; + return `${base8 ? `${base8} ` : ""}${braces[0]}${indentation} ` + `${join4(output, `,${indentation} `)}${indentation}${braces[1]}`; } - if (isBelowBreakLength(ctx, output, 0, base7)) { - return `${braces[0]}${base7 ? ` ${base7}` : ""} ${join4(output, ", ")} ` + braces[1]; + if (isBelowBreakLength(ctx, output, 0, base8)) { + return `${braces[0]}${base8 ? ` ${base8}` : ""} ${join4(output, ", ")} ` + braces[1]; } const indentation = " ".repeat(ctx.indentationLvl); - const ln = base7 === "" && braces[0].length === 1 ? " " : `${base7 ? ` ${base7}` : ""}\n${indentation} `; + const ln = base8 === "" && braces[0].length === 1 ? " " : `${base8 ? ` ${base8}` : ""}\n${indentation} `; return `${braces[0]}${ln}${join4(output, `,\n${indentation} `)} ${braces[1]}`; } function join4(output, separator) { let str83 = ""; if (output.length !== 0) { const lastIndex = output.length - 1; - for(let i89 = 0; i89 < lastIndex; i89++){ - str83 += output[i89]; + for(let i92 = 0; i92 < lastIndex; i92++){ + str83 += output[i92]; str83 += separator; } str83 += output[lastIndex]; } return str83; } -function groupArrayElements(ctx, output, value149) { +function groupArrayElements(ctx, output, value153) { let totalLength = 0; let maxLength = 0; - let i90 = 0; + let i93 = 0; let outputLength = output.length; if (ctx.maxArrayLength < output.length) { outputLength--; } const separatorSpace = 2; const dataLen = new Array(outputLength); - for(; i90 < outputLength; i90++){ - const len16 = getStringWidth(output[i90], ctx.colors); - dataLen[i90] = len16; + for(; i93 < outputLength; i93++){ + const len16 = getStringWidth(output[i93], ctx.colors); + dataLen[i93] = len16; totalLength += len16 + separatorSpace; if (maxLength < len16) { maxLength = len16; @@ -28167,20 +30577,20 @@ function groupArrayElements(ctx, output, value149) { } const tmp = []; const maxLineLength = []; - for(let i91 = 0; i91 < columns; i91++){ + for(let i94 = 0; i94 < columns; i94++){ let lineMaxLength = 0; - for(let j13 = i91; j13 < output.length; j13 += columns){ + for(let j13 = i94; j13 < output.length; j13 += columns){ if (dataLen[j13] > lineMaxLength) { lineMaxLength = dataLen[j13]; } } lineMaxLength += separatorSpace; - maxLineLength[i91] = lineMaxLength; + maxLineLength[i94] = lineMaxLength; } let order = String.prototype.padStart; - if (value149 !== undefined) { - for(let i92 = 0; i92 < output.length; i92++){ - if (typeof value149[i92] !== "number" && typeof value149[i92] !== "bigint") { + if (value153 !== undefined) { + for(let i95 = 0; i95 < output.length; i95++){ + if (typeof value153[i95] !== "number" && typeof value153[i95] !== "bigint") { order = String.prototype.padEnd; break; } @@ -28200,39 +30610,39 @@ function groupArrayElements(ctx, output, value149) { } else { str84 += output[j14]; } - Array.prototype.push(tmp, str84); + Array.prototype.push.call(tmp, str84); } if (ctx.maxArrayLength < output.length) { - Array.prototype.push(tmp, output[outputLength]); + Array.prototype.push.call(tmp, output[outputLength]); } output = tmp; } return output; } -function formatMapIterInner(ctx, recurseTimes, entries, state11) { +function formatMapIterInner(ctx, recurseTimes, entries, state12) { const maxArrayLength = Math.max(ctx.maxArrayLength, 0); const len17 = entries.length / 2; const remaining = len17 - maxArrayLength; const maxLength = Math.min(maxArrayLength, len17); let output = new Array(maxLength); - let i93 = 0; + let i96 = 0; ctx.indentationLvl += 2; - if (state11 === 0) { - for(; i93 < maxLength; i93++){ - const pos = i93 * 2; - output[i93] = `${formatValue(ctx, entries[pos], recurseTimes)} => ${formatValue(ctx, entries[pos + 1], recurseTimes)}`; + if (state12 === 0) { + for(; i96 < maxLength; i96++){ + const pos = i96 * 2; + output[i96] = `${formatValue(ctx, entries[pos], recurseTimes)} => ${formatValue(ctx, entries[pos + 1], recurseTimes)}`; } if (!ctx.sorted) { output = output.sort(); } } else { - for(; i93 < maxLength; i93++){ - const pos = i93 * 2; + for(; i96 < maxLength; i96++){ + const pos = i96 * 2; const res = [ formatValue(ctx, entries[pos], recurseTimes), formatValue(ctx, entries[pos + 1], recurseTimes), ]; - output[i93] = reduceToSingleString(ctx, res, "", [ + output[i96] = reduceToSingleString(ctx, res, "", [ "[", "]" ], kArrayExtrasType, recurseTimes); @@ -28244,21 +30654,21 @@ function formatMapIterInner(ctx, recurseTimes, entries, state11) { } return output; } -function formatSetIterInner(ctx, recurseTimes, entries, state12) { +function formatSetIterInner(ctx, recurseTimes, entries, state13) { const maxArrayLength = Math.max(ctx.maxArrayLength, 0); const maxLength = Math.min(maxArrayLength, entries.length); const output = new Array(maxLength); ctx.indentationLvl += 2; - for(let i94 = 0; i94 < maxLength; i94++){ - output[i94] = formatValue(ctx, entries[i94], recurseTimes); + for(let i97 = 0; i97 < maxLength; i97++){ + output[i97] = formatValue(ctx, entries[i97], recurseTimes); } ctx.indentationLvl -= 2; - if (state12 === 0 && !ctx.sorted) { + if (state13 === 0 && !ctx.sorted) { output.sort(); } const remaining = entries.length - maxLength; if (remaining > 0) { - Array.prototype.push(output, `... ${remaining} more item${remaining > 1 ? "s" : ""}`); + Array.prototype.push.call(output, `... ${remaining} more item${remaining > 1 ? "s" : ""}`); } return output; } @@ -28271,40 +30681,40 @@ function getStringWidth(str85, removeControlChars = true) { } str85 = str85.normalize("NFC"); for (const __char of str85[Symbol.iterator]()){ - const code28 = __char.codePointAt(0); - if (isFullWidthCodePoint(code28)) { + const code29 = __char.codePointAt(0); + if (isFullWidthCodePoint(code29)) { width += 2; - } else if (!isZeroWidthCodePoint(code28)) { + } else if (!isZeroWidthCodePoint(code29)) { width++; } } return width; } -const isFullWidthCodePoint = (code29)=>{ - return code29 >= 0x1100 && (code29 <= 0x115f || code29 === 0x2329 || code29 === 0x232a || code29 >= 0x2e80 && code29 <= 0x3247 && code29 !== 0x303f || code29 >= 0x3250 && code29 <= 0x4dbf || code29 >= 0x4e00 && code29 <= 0xa4c6 || code29 >= 0xa960 && code29 <= 0xa97c || code29 >= 0xac00 && code29 <= 0xd7a3 || code29 >= 0xf900 && code29 <= 0xfaff || code29 >= 0xfe10 && code29 <= 0xfe19 || code29 >= 0xfe30 && code29 <= 0xfe6b || code29 >= 0xff01 && code29 <= 0xff60 || code29 >= 0xffe0 && code29 <= 0xffe6 || code29 >= 0x1b000 && code29 <= 0x1b001 || code29 >= 0x1f200 && code29 <= 0x1f251 || code29 >= 0x1f300 && code29 <= 0x1f64f || code29 >= 0x20000 && code29 <= 0x3fffd); +const isFullWidthCodePoint = (code30)=>{ + return code30 >= 0x1100 && (code30 <= 0x115f || code30 === 0x2329 || code30 === 0x232a || code30 >= 0x2e80 && code30 <= 0x3247 && code30 !== 0x303f || code30 >= 0x3250 && code30 <= 0x4dbf || code30 >= 0x4e00 && code30 <= 0xa4c6 || code30 >= 0xa960 && code30 <= 0xa97c || code30 >= 0xac00 && code30 <= 0xd7a3 || code30 >= 0xf900 && code30 <= 0xfaff || code30 >= 0xfe10 && code30 <= 0xfe19 || code30 >= 0xfe30 && code30 <= 0xfe6b || code30 >= 0xff01 && code30 <= 0xff60 || code30 >= 0xffe0 && code30 <= 0xffe6 || code30 >= 0x1b000 && code30 <= 0x1b001 || code30 >= 0x1f200 && code30 <= 0x1f251 || code30 >= 0x1f300 && code30 <= 0x1f64f || code30 >= 0x20000 && code30 <= 0x3fffd); }; -const isZeroWidthCodePoint = (code30)=>{ - return code30 <= 0x1F || code30 >= 0x7F && code30 <= 0x9F || code30 >= 0x300 && code30 <= 0x36F || code30 >= 0x200B && code30 <= 0x200F || code30 >= 0x20D0 && code30 <= 0x20FF || code30 >= 0xFE00 && code30 <= 0xFE0F || code30 >= 0xFE20 && code30 <= 0xFE2F || code30 >= 0xE0100 && code30 <= 0xE01EF; +const isZeroWidthCodePoint = (code31)=>{ + return code31 <= 0x1F || code31 >= 0x7F && code31 <= 0x9F || code31 >= 0x300 && code31 <= 0x36F || code31 >= 0x200B && code31 <= 0x200F || code31 >= 0x20D0 && code31 <= 0x20FF || code31 >= 0xFE00 && code31 <= 0xFE0F || code31 >= 0xFE20 && code31 <= 0xFE2F || code31 >= 0xE0100 && code31 <= 0xE01EF; }; -function hasBuiltInToString(value150) { +function hasBuiltInToString(value154) { const proxyTarget = undefined; if (proxyTarget !== undefined) { - value150 = proxyTarget; + value154 = proxyTarget; } - if (typeof value150.toString !== "function") { + if (typeof value154.toString !== "function") { return true; } - if (Object.prototype.hasOwnProperty.call(value150, "toString")) { + if (Object.prototype.hasOwnProperty.call(value154, "toString")) { return false; } - let pointer = value150; + let pointer = value154; do { pointer = Object.getPrototypeOf(pointer); }while (!Object.prototype.hasOwnProperty.call(pointer, "toString")) const descriptor = Object.getOwnPropertyDescriptor(pointer, "constructor"); return descriptor !== undefined && typeof descriptor.value === "function" && builtInObjects.has(descriptor.value.name); } -const firstErrorLine = (error13)=>error13.message.split("\n", 1)[0]; +const firstErrorLine = (error14)=>error14.message.split("\n", 1)[0]; let CIRCULAR_ERROR_MESSAGE; function tryStringify(arg) { try { @@ -28325,14 +30735,14 @@ function tryStringify(arg) { throw err; } } -function format5(...args13) { - return formatWithOptionsInternal(undefined, args13); +function format5(...args16) { + return formatWithOptionsInternal(undefined, args16); } -function formatWithOptions(inspectOptions, ...args14) { +function formatWithOptions(inspectOptions, ...args17) { if (typeof inspectOptions !== "object" || inspectOptions === null) { throw new codes.ERR_INVALID_ARG_TYPE("inspectOptions", "object", inspectOptions); } - return formatWithOptionsInternal(inspectOptions, args14); + return formatWithOptionsInternal(inspectOptions, args17); } function formatNumberNoColor(number, options28) { return formatNumber(stylizeNoColor, number, options28?.numericSeparator ?? inspectDefaultOptions.numericSeparator); @@ -28340,24 +30750,24 @@ function formatNumberNoColor(number, options28) { function formatBigIntNoColor(bigint, options29) { return formatBigInt(stylizeNoColor, bigint, options29?.numericSeparator ?? inspectDefaultOptions.numericSeparator); } -function formatWithOptionsInternal(inspectOptions, args15) { - const first2 = args15[0]; +function formatWithOptionsInternal(inspectOptions, args18) { + const first2 = args18[0]; let a26 = 0; let str86 = ""; let join13 = ""; if (typeof first2 === "string") { - if (args15.length === 1) { + if (args18.length === 1) { return first2; } let tempStr; let lastPos = 0; - for(let i95 = 0; i95 < first2.length - 1; i95++){ - if (first2.charCodeAt(i95) === 37) { - const nextChar = first2.charCodeAt(++i95); - if (a26 + 1 !== args15.length) { + for(let i98 = 0; i98 < first2.length - 1; i98++){ + if (first2.charCodeAt(i98) === 37) { + const nextChar = first2.charCodeAt(++i98); + if (a26 + 1 !== args18.length) { switch(nextChar){ case 115: - const tempArg = args15[++a26]; + const tempArg = args18[++a26]; if (typeof tempArg === "number") { tempStr = formatNumberNoColor(tempArg, inspectOptions); } else if (typeof tempArg === "bigint") { @@ -28374,10 +30784,10 @@ function formatWithOptionsInternal(inspectOptions, args15) { } break; case 106: - tempStr = tryStringify(args15[++a26]); + tempStr = tryStringify(args18[++a26]); break; case 100: - const tempNum = args15[++a26]; + const tempNum = args18[++a26]; if (typeof tempNum === "bigint") { tempStr = formatBigIntNoColor(tempNum, inspectOptions); } else if (typeof tempNum === "symbol") { @@ -28387,10 +30797,10 @@ function formatWithOptionsInternal(inspectOptions, args15) { } break; case 79: - tempStr = inspect(args15[++a26], inspectOptions); + tempStr = inspect(args18[++a26], inspectOptions); break; case 111: - tempStr = inspect(args15[++a26], { + tempStr = inspect(args18[++a26], { ...inspectOptions, showHidden: true, showProxy: true, @@ -28398,7 +30808,7 @@ function formatWithOptionsInternal(inspectOptions, args15) { }); break; case 105: - const tempInteger = args15[++a26]; + const tempInteger = args18[++a26]; if (typeof tempInteger === "bigint") { tempStr = formatBigIntNoColor(tempInteger, inspectOptions); } else if (typeof tempInteger === "symbol") { @@ -28408,7 +30818,7 @@ function formatWithOptionsInternal(inspectOptions, args15) { } break; case 102: - const tempFloat = args15[++a26]; + const tempFloat = args18[++a26]; if (typeof tempFloat === "symbol") { tempStr = "NaN"; } else { @@ -28420,20 +30830,20 @@ function formatWithOptionsInternal(inspectOptions, args15) { tempStr = ""; break; case 37: - str86 += first2.slice(lastPos, i95); - lastPos = i95 + 1; + str86 += first2.slice(lastPos, i98); + lastPos = i98 + 1; continue; default: continue; } - if (lastPos !== i95 - 1) { - str86 += first2.slice(lastPos, i95 - 1); + if (lastPos !== i98 - 1) { + str86 += first2.slice(lastPos, i98 - 1); } str86 += tempStr; - lastPos = i95 + 1; + lastPos = i98 + 1; } else if (nextChar === 37) { - str86 += first2.slice(lastPos, i95); - lastPos = i95 + 1; + str86 += first2.slice(lastPos, i98); + lastPos = i98 + 1; } } } @@ -28445,10 +30855,10 @@ function formatWithOptionsInternal(inspectOptions, args15) { } } } - while(a26 < args15.length){ - const value151 = args15[a26]; + while(a26 < args18.length){ + const value155 = args18[a26]; str86 += join13; - str86 += typeof value151 !== "string" ? inspect(value151, inspectOptions) : value151; + str86 += typeof value155 !== "string" ? inspect(value155, inspectOptions) : value155; join13 = " "; a26++; } @@ -28463,47 +30873,47 @@ const kEnumerableProperty = Object.create(null); kEnumerableProperty.enumerable = true; function once(callback) { let called = false; - return function(...args16) { + return function(...args19) { if (called) return; called = true; - Reflect.apply(callback, this, args16); + Reflect.apply(callback, this, args19); }; } function createDeferredPromise() { - let resolve16; - let reject5; + let resolve18; + let reject6; const promise = new Promise((res, rej)=>{ - resolve16 = res; - reject5 = rej; + resolve18 = res; + reject6 = rej; }); return { promise, - resolve: resolve16, - reject: reject5 + resolve: resolve18, + reject: reject6 }; } const codesWarned = new Set(); -function deprecate(fn, msg26, code31) { - if (code31 !== undefined) { - validateString(code31, "code"); +function deprecate(fn, msg26, code32) { + if (code32 !== undefined) { + validateString(code32, "code"); } let warned = false; - function deprecated(...args17) { + function deprecated(...args20) { if (!warned) { warned = true; - if (code31 !== undefined) { - if (!codesWarned.has(code31)) { - process.emitWarning(msg26, "DeprecationWarning", code31, deprecated); - codesWarned.add(code31); + if (code32 !== undefined) { + if (!codesWarned.has(code32)) { + process.emitWarning(msg26, "DeprecationWarning", code32, deprecated); + codesWarned.add(code32); } } else { process.emitWarning(msg26, "DeprecationWarning", deprecated); } } if (new.target) { - return Reflect.construct(fn, args17, new.target); + return Reflect.construct(fn, args20, new.target); } - return Reflect.apply(fn, this, args17); + return Reflect.apply(fn, this, args20); } Object.setPrototypeOf(deprecated, fn); if (fn.prototype) { @@ -28526,23 +30936,23 @@ function promisify(original) { }); } const argumentNames = original[kCustomPromisifyArgsSymbol]; - function fn(...args18) { - return new Promise((resolve17, reject6)=>{ - args18.push((err, ...values4)=>{ + function fn(...args21) { + return new Promise((resolve19, reject7)=>{ + args21.push((err, ...values4)=>{ if (err) { - return reject6(err); + return reject7(err); } if (argumentNames !== undefined && values4.length > 1) { const obj = {}; - for(let i96 = 0; i96 < argumentNames.length; i96++){ - obj[argumentNames[i96]] = values4[i96]; + for(let i99 = 0; i99 < argumentNames.length; i99++){ + obj[argumentNames[i99]] = values4[i99]; } - resolve17(obj); + resolve19(obj); } else { - resolve17(values4[0]); + resolve19(values4[0]); } }); - Reflect.apply(original, this, args18); + Reflect.apply(original, this, args21); }); } Object.setPrototypeOf(fn, Object.getPrototypeOf(original)); @@ -28566,6 +30976,9 @@ if (Deno?.core) { }, encode (chunk9) { return new TextEncoder().encode(chunk9); + }, + eventLoopHasMoreWork () { + return false; } }; } @@ -28589,8 +31002,8 @@ class FixedCircularBuffer { isFull() { return (this.top + 1 & kMask) === this.bottom; } - push(data38) { - this.list[this.top] = data38; + push(data41) { + this.list[this.top] = data41; this.top = this.top + 1 & kMask; } shift() { @@ -28612,11 +31025,11 @@ class FixedQueue { isEmpty() { return this.head.isEmpty(); } - push(data39) { + push(data42) { if (this.head.isFull()) { this.head = this.head.next = new FixedCircularBuffer(); } - this.head.push(data39); + this.head.push(data42); } shift() { const tail5 = this.tail; @@ -28629,6 +31042,39 @@ class FixedQueue { } const queue = new FixedQueue(); let _nextTick; +function processTicksAndRejections() { + let tock; + do { + while(tock = queue.shift()){ + try { + const callback = tock.callback; + if (tock.args === undefined) { + callback(); + } else { + const args22 = tock.args; + switch(args22.length){ + case 1: + callback(args22[0]); + break; + case 2: + callback(args22[0], args22[1]); + break; + case 3: + callback(args22[0], args22[1], args22[2]); + break; + case 4: + callback(args22[0], args22[1], args22[2], args22[3]); + break; + default: + callback(...args22); + } + } + } finally{} + } + core1.runMicrotasks(); + }while (!queue.isEmpty()) + core1.setHasTickScheduled(false); +} if (typeof core1.setNextTickCallback !== "undefined") { function runNextTicks() { if (!core1.hasTickScheduled()) { @@ -28640,72 +31086,39 @@ if (typeof core1.setNextTickCallback !== "undefined") { processTicksAndRejections(); return true; } - function processTicksAndRejections() { - let tock; - do { - while(tock = queue.shift()){ - try { - const callback = tock.callback; - if (tock.args === undefined) { - callback(); - } else { - const args19 = tock.args; - switch(args19.length){ - case 1: - callback(args19[0]); - break; - case 2: - callback(args19[0], args19[1]); - break; - case 3: - callback(args19[0], args19[1], args19[2]); - break; - case 4: - callback(args19[0], args19[1], args19[2], args19[3]); - break; - default: - callback(...args19); - } - } - } finally{} - } - core1.runMicrotasks(); - }while (!queue.isEmpty()) - core1.setHasTickScheduled(false); - } core1.setNextTickCallback(processTicksAndRejections); core1.setMacrotaskCallback(runNextTicks); - function __nextTickNative(callback, ...args20) { + function __nextTickNative(callback, ...args23) { validateCallback(callback); if (_exiting) { return; } let args_; - switch(args20.length){ + switch(args23.length){ case 0: break; case 1: args_ = [ - args20[0] + args23[0] ]; break; case 2: args_ = [ - args20[0], - args20[1] + args23[0], + args23[1] ]; break; case 3: args_ = [ - args20[0], - args20[1], - args20[2] + args23[0], + args23[1], + args23[2] ]; break; default: - args_ = new Array(args20.length); - for(let i97 = 0; i97 < args20.length; i97++){ - args_[i97] = args20[i97]; + args_ = new Array(args23.length); + for(let i100 = 0; i100 < args23.length; i100++){ + args_[i100] = args23[i100]; } } if (queue.isEmpty()) { @@ -28719,17 +31132,17 @@ if (typeof core1.setNextTickCallback !== "undefined") { } _nextTick = __nextTickNative; } else { - function __nextTickQueueMicrotask(callback, ...args21) { - if (args21) { - queueMicrotask(()=>callback.call(this, ...args21)); + function __nextTickQueueMicrotask(callback, ...args24) { + if (args24) { + queueMicrotask(()=>callback.call(this, ...args24)); } else { queueMicrotask(callback); } } _nextTick = __nextTickQueueMicrotask; } -function nextTick(callback, ...args22) { - _nextTick(callback, ...args22); +function nextTick(callback, ...args25) { + _nextTick(callback, ...args25); } class NodeFalsyValueRejectionError extends Error { reason; @@ -28754,8 +31167,8 @@ function callbackify(original) { if (typeof maybeCb !== "function") { throw new NodeInvalidArgTypeError("last"); } - const cb = (...args23)=>{ - maybeCb.apply(this, args23); + const cb = (...args26)=>{ + maybeCb.apply(this, args26); }; original.apply(this, args1).then((ret)=>{ nextTick(cb.bind(this, null, ret)); @@ -28819,11 +31232,11 @@ class Printf { flags = new Flags(); haveSeen; tmpError; - constructor(format17, ...args24){ + constructor(format17, ...args27){ this.format = format17; - this.args = args24; + this.args = args27; this.haveSeen = Array.from({ - length: args24.length + length: args27.length }); this.i = 0; } @@ -28852,10 +31265,10 @@ class Printf { } let extras = false; let err = "%!(EXTRA"; - for(let i98 = 0; i98 !== this.haveSeen.length; ++i98){ - if (!this.haveSeen[i98]) { + for(let i101 = 0; i101 !== this.haveSeen.length; ++i101){ + if (!this.haveSeen[i101]) { extras = true; - err += ` '${Deno.inspect(this.args[i98])}'`; + err += ` '${Deno.inspect(this.args[i101])}'`; } } err += ")"; @@ -29028,9 +31441,9 @@ class Printf { throw new Error(`arg ${arg} is not an array. Todo better error handling`); } let str88 = "[ "; - for(let i99 = 0; i99 !== arg.length; ++i99){ - if (i99 !== 0) str88 += ", "; - str88 += this._handleVerb(arg[i99]); + for(let i102 = 0; i102 !== arg.length; ++i102){ + if (i102 !== 0) str88 += ", "; + str88 += this._handleVerb(arg[i102]); } return str88 + " ]"; } @@ -29128,12 +31541,12 @@ class Printf { } return nStr; } - fmtNumber(n87, radix, upcase = false) { - let num = Math.abs(n87).toString(radix); + fmtNumber(n88, radix, upcase = false) { + let num = Math.abs(n88).toString(radix); const prec = this.flags.precision; if (prec !== -1) { this.flags.zero = false; - num = n87 === 0 && prec === 0 ? "" : num; + num = n88 === 0 && prec === 0 ? "" : num; while(num.length < prec){ num = "0" + num; } @@ -29158,28 +31571,28 @@ class Printf { if (upcase) { num = num.toUpperCase(); } - return this.padNum(num, n87 < 0); + return this.padNum(num, n88 < 0); } - fmtNumberCodePoint(n88) { + fmtNumberCodePoint(n89) { let s40 = ""; try { - s40 = String.fromCodePoint(n88); + s40 = String.fromCodePoint(n89); } catch { s40 = UNICODE_REPLACEMENT_CHARACTER; } return this.pad(s40); } - fmtFloatSpecial(n89) { - if (isNaN(n89)) { + fmtFloatSpecial(n90) { + if (isNaN(n90)) { this.flags.zero = false; return this.padNum("NaN", false); } - if (n89 === Number.POSITIVE_INFINITY) { + if (n90 === Number.POSITIVE_INFINITY) { this.flags.zero = false; this.flags.plus = true; return this.padNum("Inf", false); } - if (n89 === Number.NEGATIVE_INFINITY) { + if (n90 === Number.NEGATIVE_INFINITY) { this.flags.zero = false; return this.padNum("Inf", true); } @@ -29204,12 +31617,12 @@ class Printf { round ]; } - fmtFloatE(n90, upcase = false) { - const special = this.fmtFloatSpecial(n90); + fmtFloatE(n91, upcase = false) { + const special = this.fmtFloatSpecial(n91); if (special !== "") { return special; } - const m23 = n90.toExponential().match(FLOAT_REGEXP); + const m23 = n91.toExponential().match(FLOAT_REGEXP); if (!m23) { throw Error("can't happen, bug"); } @@ -29231,23 +31644,23 @@ class Printf { } e98 = e98.length == 1 ? "0" + e98 : e98; const val = `${mantissa}.${fractional}${upcase ? "E" : "e"}${esign}${e98}`; - return this.padNum(val, n90 < 0); + return this.padNum(val, n91 < 0); } fmtFloatF(n113) { const special = this.fmtFloatSpecial(n113); if (special !== "") { return special; } - function expandNumber(n91) { - if (Number.isSafeInteger(n91)) { - return n91.toString() + "."; + function expandNumber(n92) { + if (Number.isSafeInteger(n92)) { + return n92.toString() + "."; } - const t93 = n91.toExponential().split("e"); - let m24 = t93[0].replace(".", ""); - const e99 = parseInt(t93[1]); + const t95 = n92.toExponential().split("e"); + let m24 = t95[0].replace(".", ""); + const e99 = parseInt(t95[1]); if (e99 < 0) { let nStr = "0."; - for(let i100 = 0; i100 !== Math.abs(e99) - 1; ++i100){ + for(let i103 = 0; i103 !== Math.abs(e99) - 1; ++i103){ nStr += "0"; } return nStr += m24; @@ -29271,14 +31684,14 @@ class Printf { } return this.padNum(`${dig}.${fractional}`, n113 < 0); } - fmtFloatG(n92, upcase = false) { - const special = this.fmtFloatSpecial(n92); + fmtFloatG(n93, upcase = false) { + const special = this.fmtFloatSpecial(n93); if (special !== "") { return special; } let P1 = this.flags.precision !== -1 ? this.flags.precision : 6; P1 = P1 === 0 ? 1 : P1; - const m25 = n92.toExponential().match(FLOAT_REGEXP); + const m25 = n93.toExponential().match(FLOAT_REGEXP); if (!m25) { throw Error("can't happen"); } @@ -29286,13 +31699,13 @@ class Printf { let nStr = ""; if (P1 > X1 && X1 >= -4) { this.flags.precision = P1 - (X1 + 1); - nStr = this.fmtFloatF(n92); + nStr = this.fmtFloatF(n93); if (!this.flags.sharp) { nStr = nStr.replace(/\.?0*$/, ""); } } else { this.flags.precision = P1 - 1; - nStr = this.fmtFloatE(n92); + nStr = this.fmtFloatE(n93); if (!this.flags.sharp) { nStr = nStr.replace(/\.?0*e/, upcase ? "E" : "e"); } @@ -29315,11 +31728,11 @@ class Printf { let hex = sharp ? "0x" : ""; const prec = this.flags.precision; const end = prec !== -1 ? min(prec, val.length) : val.length; - for(let i101 = 0; i101 !== end; ++i101){ - if (i101 !== 0 && this.flags.space) { + for(let i104 = 0; i104 !== end; ++i104){ + if (i104 !== 0 && this.flags.space) { hex += sharp ? " 0x" : " "; } - const c46 = (val.charCodeAt(i101) & 0xff).toString(16); + const c46 = (val.charCodeAt(i104) & 0xff).toString(16); hex += c46.length === 1 ? `0${c46}` : c46; } if (upper) { @@ -29338,16 +31751,16 @@ class Printf { } : {}; return this.pad(Deno.inspect(val, options30)); } else { - const p41 = this.flags.precision; - return p41 === -1 ? val.toString() : val.toString().substr(0, p41); + const p42 = this.flags.precision; + return p42 === -1 ? val.toString() : val.toString().substr(0, p42); } } fmtJ(val) { return JSON.stringify(val); } } -function sprintf(format19, ...args25) { - const printf1 = new Printf(format19, ...args25); +function sprintf(format19, ...args28) { + const printf1 = new Printf(format19, ...args28); return printf1.doPrintf(); } let debugImpls; @@ -29372,8 +31785,8 @@ function debuglogImpl(enabled4, set) { if (debugImpls[set] === undefined) { if (enabled4) { emitWarningIfNeeded(set); - debugImpls[set] = function debug(...args26) { - const msg27 = args26.map((arg)=>inspect(arg)).join(" "); + debugImpls[set] = function debug(...args29) { + const msg27 = args29.map((arg)=>inspect(arg)).join(" "); console.error(sprintf("%s %s: %s", set, String(Deno.pid), msg27)); }; } else { @@ -29387,13 +31800,13 @@ function debuglog(set, cb) { set = set.toUpperCase(); enabled5 = testEnabled(set); } - let debug9 = (...args27)=>{ + let debug9 = (...args30)=>{ init(); debug9 = debuglogImpl(enabled5, set); if (typeof cb === "function") { cb(debug9); } - return debug9(...args27); + return debug9(...args30); }; let enabled5; let test = ()=>{ @@ -29401,7 +31814,7 @@ function debuglog(set, cb) { test = ()=>enabled5; return enabled5; }; - const logger3 = (...args28)=>debug9(...args28); + const logger3 = (...args31)=>debug9(...args31); Object.defineProperty(logger3, "enabled", { get () { return test(); @@ -29414,11 +31827,11 @@ function debuglog(set, cb) { let debugEnv; try { debugEnv = Deno.env.get("NODE_DEBUG") ?? ""; -} catch (error14) { - if (error14 instanceof Deno.errors.PermissionDenied) { +} catch (error15) { + if (error15 instanceof Deno.errors.PermissionDenied) { debugEnv = ""; } else { - throw error14; + throw error15; } } initializeDebugEnv(debugEnv); @@ -30139,8 +32552,8 @@ const codeToErrorWindows = [ ] ], ]; -const errorToCodeWindows = codeToErrorWindows.map(([status, [error15]])=>[ - error15, +const errorToCodeWindows = codeToErrorWindows.map(([status, [error16]])=>[ + error16, status ]); const codeToErrorDarwin = [ @@ -30705,8 +33118,8 @@ const codeToErrorDarwin = [ ] ], ]; -const errorToCodeDarwin = codeToErrorDarwin.map(([status, [code32]])=>[ - code32, +const errorToCodeDarwin = codeToErrorDarwin.map(([status, [code33]])=>[ + code33, status ]); const codeToErrorLinux = [ @@ -31271,8 +33684,8 @@ const codeToErrorLinux = [ ] ], ]; -const errorToCodeLinux = codeToErrorLinux.map(([status, [code33]])=>[ - code33, +const errorToCodeLinux = codeToErrorLinux.map(([status, [code34]])=>[ + code34, status ]); const errorMap = new Map(osType1 === "windows" ? codeToErrorWindows : osType1 === "darwin" ? codeToErrorDarwin : osType1 === "linux" ? codeToErrorLinux : unreachable()); @@ -31283,7 +33696,7 @@ codeMap.get("EBADF"); codeMap.get("EINVAL"); codeMap.get("ENOTSOCK"); const __default4 = { - ...mod18 + ...mod17 }; var Encodings; (function(Encodings1) { @@ -31306,17 +33719,17 @@ encodings[Encodings.HEX] = "hex"; encodings[Encodings.LATIN1] = "latin1"; encodings[Encodings.UCS2] = "utf16le"; encodings[Encodings.UTF8] = "utf8"; -function numberToBytes(n93) { - if (n93 === 0) return new Uint8Array([ +function numberToBytes(n94) { + if (n94 === 0) return new Uint8Array([ 0 ]); - const bytes12 = []; - bytes12.unshift(n93 & 255); - while(n93 >= 256){ - n93 = n93 >>> 8; - bytes12.unshift(n93 & 255); + const bytes13 = []; + bytes13.unshift(n94 & 255); + while(n94 >= 256){ + n94 = n94 >>> 8; + bytes13.unshift(n94 & 255); } - return new Uint8Array(bytes12); + return new Uint8Array(bytes13); } function findLastIndex(targetBuffer, buffer15, offset7) { offset7 = offset7 > targetBuffer.length ? targetBuffer.length : offset7; @@ -31367,46 +33780,23 @@ function indexOfBuffer(targetBuffer, buffer16, byteOffset, encoding, forwardDire return indexOfNeedle(targetBuffer, buffer16, byteOffset); } function indexOfNumber(targetBuffer, number, byteOffset, forwardDirection) { - const bytes13 = numberToBytes(number); - if (bytes13.length > 1) { + const bytes14 = numberToBytes(number); + if (bytes14.length > 1) { throw new Error("Multi byte number search is not supported"); } return indexOfBuffer(targetBuffer, numberToBytes(number), byteOffset, Encodings.UTF8, forwardDirection); } -function addPaddingToBase64url1(base64url) { - if (base64url.length % 4 === 2) return base64url + "=="; - if (base64url.length % 4 === 3) return base64url + "="; - if (base64url.length % 4 === 1) { - throw new TypeError("Illegal base64url string!"); - } - return base64url; -} -function convertBase64urlToBase641(b64url) { - if (!/^[-_A-Z0-9]*?={0,2}$/i.test(b64url)) { - throw new TypeError("Failed to decode base64url: invalid character"); - } - return addPaddingToBase64url1(b64url).replace(/\-/g, "+").replace(/_/g, "/"); -} -function convertBase64ToBase64url1(b64) { - return b64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); -} -function encode3(data40) { - return convertBase64ToBase64url1(encode1(data40)); -} -function decode5(b64url) { - return decode2(convertBase64urlToBase641(b64url)); -} function asciiToBytes(str90) { const byteArray = []; - for(let i102 = 0; i102 < str90.length; ++i102){ - byteArray.push(str90.charCodeAt(i102) & 255); + for(let i105 = 0; i105 < str90.length; ++i105){ + byteArray.push(str90.charCodeAt(i105) & 255); } return new Uint8Array(byteArray); } function base64ToBytes(str91) { str91 = base64clean(str91); str91 = str91.replaceAll("-", "+").replaceAll("_", "/"); - return decode2(str91); + return decode1(str91); } const INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g; function base64clean(str92) { @@ -31421,29 +33811,29 @@ function base64clean(str92) { function base64UrlToBytes(str93) { str93 = base64clean(str93); str93 = str93.replaceAll("+", "-").replaceAll("/", "_"); - return decode5(str93); + return decode2(str93); } function hexToBytes(str94) { const byteArray = new Uint8Array(Math.floor((str94 || "").length / 2)); - let i103; - for(i103 = 0; i103 < byteArray.length; i103++){ - const a27 = Number.parseInt(str94[i103 * 2], 16); - const b24 = Number.parseInt(str94[i103 * 2 + 1], 16); - if (Number.isNaN(a27) && Number.isNaN(b24)) { + let i106; + for(i106 = 0; i106 < byteArray.length; i106++){ + const a27 = Number.parseInt(str94[i106 * 2], 16); + const b27 = Number.parseInt(str94[i106 * 2 + 1], 16); + if (Number.isNaN(a27) && Number.isNaN(b27)) { break; } - byteArray[i103] = a27 << 4 | b24; + byteArray[i106] = a27 << 4 | b27; } - return new Uint8Array(i103 === byteArray.length ? byteArray : byteArray.slice(0, i103)); + return new Uint8Array(i106 === byteArray.length ? byteArray : byteArray.slice(0, i106)); } function utf16leToBytes(str95, units) { let c47, hi, lo; const byteArray = []; - for(let i104 = 0; i104 < str95.length; ++i104){ + for(let i107 = 0; i107 < str95.length; ++i107){ if ((units -= 2) < 0) { break; } - c47 = str95.charCodeAt(i104); + c47 = str95.charCodeAt(i107); hi = c47 >> 8; lo = c47 % 256; byteArray.push(lo); @@ -31451,17 +33841,17 @@ function utf16leToBytes(str95, units) { } return new Uint8Array(byteArray); } -function bytesToAscii(bytes14) { +function bytesToAscii(bytes15) { let ret = ""; - for(let i105 = 0; i105 < bytes14.length; ++i105){ - ret += String.fromCharCode(bytes14[i105] & 127); + for(let i108 = 0; i108 < bytes15.length; ++i108){ + ret += String.fromCharCode(bytes15[i108] & 127); } return ret; } -function bytesToUtf16le(bytes15) { +function bytesToUtf16le(bytes16) { let res = ""; - for(let i106 = 0; i106 < bytes15.length - 1; i106 += 2){ - res += String.fromCharCode(bytes15[i106] + bytes15[i106 + 1] * 256); + for(let i109 = 0; i109 < bytes16.length - 1; i109 += 2){ + res += String.fromCharCode(bytes16[i109] + bytes16[i109 + 1] * 256); } return res; } @@ -31713,14 +34103,14 @@ function readInt40BE(buf, offset29 = 0) { function byteLengthUtf8(str96) { return utf8Encoder.encode(str96).length; } -function base64ByteLength(str97, bytes16) { - if (str97.charCodeAt(bytes16 - 1) === 0x3D) { - bytes16--; +function base64ByteLength(str97, bytes17) { + if (str97.charCodeAt(bytes17 - 1) === 0x3D) { + bytes17--; } - if (bytes16 > 1 && str97.charCodeAt(bytes16 - 1) === 0x3D) { - bytes16--; + if (bytes17 > 1 && str97.charCodeAt(bytes17 - 1) === 0x3D) { + bytes17--; } - return bytes16 * 3 >>> 2; + return bytes17 * 3 >>> 2; } const encodingsMap = Object.create(null); for(let i4 = 0; i4 < encodings.length; ++i4){ @@ -31732,7 +34122,7 @@ const encodingOps = { encoding: "ascii", encodingVal: encodingsMap.ascii, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, asciiToBytes(val), byteOffset, encodingsMap.ascii, dir), - slice: (buf, start14, end)=>buf.asciiSlice(start14, end), + slice: (buf, start15, end)=>buf.asciiSlice(start15, end), write: (buf, string, offset30, len19)=>buf.asciiWrite(string, offset30, len19) }, base64: { @@ -31740,7 +34130,7 @@ const encodingOps = { encoding: "base64", encodingVal: encodingsMap.base64, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, base64ToBytes(val), byteOffset, encodingsMap.base64, dir), - slice: (buf, start15, end)=>buf.base64Slice(start15, end), + slice: (buf, start16, end)=>buf.base64Slice(start16, end), write: (buf, string, offset31, len20)=>buf.base64Write(string, offset31, len20) }, base64url: { @@ -31748,7 +34138,7 @@ const encodingOps = { encoding: "base64url", encodingVal: encodingsMap.base64url, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, base64UrlToBytes(val), byteOffset, encodingsMap.base64url, dir), - slice: (buf, start16, end)=>buf.base64urlSlice(start16, end), + slice: (buf, start17, end)=>buf.base64urlSlice(start17, end), write: (buf, string, offset32, len21)=>buf.base64urlWrite(string, offset32, len21) }, hex: { @@ -31756,7 +34146,7 @@ const encodingOps = { encoding: "hex", encodingVal: encodingsMap.hex, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, hexToBytes(val), byteOffset, encodingsMap.hex, dir), - slice: (buf, start17, end)=>buf.hexSlice(start17, end), + slice: (buf, start18, end)=>buf.hexSlice(start18, end), write: (buf, string, offset33, len22)=>buf.hexWrite(string, offset33, len22) }, latin1: { @@ -31764,7 +34154,7 @@ const encodingOps = { encoding: "latin1", encodingVal: encodingsMap.latin1, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, asciiToBytes(val), byteOffset, encodingsMap.latin1, dir), - slice: (buf, start18, end)=>buf.latin1Slice(start18, end), + slice: (buf, start19, end)=>buf.latin1Slice(start19, end), write: (buf, string, offset34, len23)=>buf.latin1Write(string, offset34, len23) }, ucs2: { @@ -31772,7 +34162,7 @@ const encodingOps = { encoding: "ucs2", encodingVal: encodingsMap.utf16le, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, utf16leToBytes(val), byteOffset, encodingsMap.utf16le, dir), - slice: (buf, start19, end)=>buf.ucs2Slice(start19, end), + slice: (buf, start20, end)=>buf.ucs2Slice(start20, end), write: (buf, string, offset35, len24)=>buf.ucs2Write(string, offset35, len24) }, utf8: { @@ -31780,7 +34170,7 @@ const encodingOps = { encoding: "utf8", encodingVal: encodingsMap.utf8, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, utf8Encoder.encode(val), byteOffset, encodingsMap.utf8, dir), - slice: (buf, start20, end)=>buf.utf8Slice(start20, end), + slice: (buf, start21, end)=>buf.utf8Slice(start21, end), write: (buf, string, offset36, len25)=>buf.utf8Write(string, offset36, len25) }, utf16le: { @@ -31788,7 +34178,7 @@ const encodingOps = { encoding: "utf16le", encodingVal: encodingsMap.utf16le, indexOf: (buf, val, byteOffset, dir)=>indexOfBuffer(buf, utf16leToBytes(val), byteOffset, encodingsMap.utf16le, dir), - slice: (buf, start21, end)=>buf.ucs2Slice(start21, end), + slice: (buf, start22, end)=>buf.ucs2Slice(start22, end), write: (buf, string, offset37, len26)=>buf.ucs2Write(string, offset37, len26) } }; @@ -31846,19 +34236,19 @@ function _copyActual(source, target, targetStart, sourceStart, sourceEnd) { target.set(source, targetStart); return nb; } -function boundsError(value152, length, type23) { - if (Math.floor(value152) !== value152) { - validateNumber(value152, type23); - throw new codes.ERR_OUT_OF_RANGE(type23 || "offset", "an integer", value152); +function boundsError(value156, length, type16) { + if (Math.floor(value156) !== value156) { + validateNumber(value156, type16); + throw new codes.ERR_OUT_OF_RANGE(type16 || "offset", "an integer", value156); } if (length < 0) { throw new codes.ERR_BUFFER_OUT_OF_BOUNDS(); } - throw new codes.ERR_OUT_OF_RANGE(type23 || "offset", `>= ${type23 ? 1 : 0} and <= ${length}`, value152); + throw new codes.ERR_OUT_OF_RANGE(type16 || "offset", `>= ${type16 ? 1 : 0} and <= ${length}`, value156); } -function validateNumber(value153, name24) { - if (typeof value153 !== "number") { - throw new codes.ERR_INVALID_ARG_TYPE(name24, "number", value153); +function validateNumber(value157, name24) { + if (typeof value157 !== "number") { + throw new codes.ERR_INVALID_ARG_TYPE(name24, "number", value157); } } function checkBounds(buf, offset38, byteLength3) { @@ -31867,190 +34257,190 @@ function checkBounds(buf, offset38, byteLength3) { boundsError(offset38, buf.length - (byteLength3 + 1)); } } -function checkInt(value154, min5, max5, buf, offset39, byteLength4) { - if (value154 > max5 || value154 < min5) { - const n94 = typeof min5 === "bigint" ? "n" : ""; +function checkInt(value158, min5, max5, buf, offset39, byteLength4) { + if (value158 > max5 || value158 < min5) { + const n95 = typeof min5 === "bigint" ? "n" : ""; let range; if (byteLength4 > 3) { if (min5 === 0 || min5 === 0n) { - range = `>= 0${n94} and < 2${n94} ** ${(byteLength4 + 1) * 8}${n94}`; + range = `>= 0${n95} and < 2${n95} ** ${(byteLength4 + 1) * 8}${n95}`; } else { - range = `>= -(2${n94} ** ${(byteLength4 + 1) * 8 - 1}${n94}) and ` + `< 2${n94} ** ${(byteLength4 + 1) * 8 - 1}${n94}`; + range = `>= -(2${n95} ** ${(byteLength4 + 1) * 8 - 1}${n95}) and ` + `< 2${n95} ** ${(byteLength4 + 1) * 8 - 1}${n95}`; } } else { - range = `>= ${min5}${n94} and <= ${max5}${n94}`; + range = `>= ${min5}${n95} and <= ${max5}${n95}`; } - throw new codes.ERR_OUT_OF_RANGE("value", range, value154); + throw new codes.ERR_OUT_OF_RANGE("value", range, value158); } checkBounds(buf, offset39, byteLength4); } -function toInteger(n95, defaultVal) { - n95 = +n95; - if (!Number.isNaN(n95) && n95 >= Number.MIN_SAFE_INTEGER && n95 <= Number.MAX_SAFE_INTEGER) { - return n95 % 1 === 0 ? n95 : Math.floor(n95); +function toInteger(n96, defaultVal) { + n96 = +n96; + if (!Number.isNaN(n96) && n96 >= Number.MIN_SAFE_INTEGER && n96 <= Number.MAX_SAFE_INTEGER) { + return n96 % 1 === 0 ? n96 : Math.floor(n96); } return defaultVal; } -function writeU_Int8(buf, value155, offset40, min6, max6) { - value155 = +value155; +function writeU_Int8(buf, value159, offset40, min6, max6) { + value159 = +value159; validateNumber(offset40, "offset"); - if (value155 > max6 || value155 < min6) { - throw new codes.ERR_OUT_OF_RANGE("value", `>= ${min6} and <= ${max6}`, value155); + if (value159 > max6 || value159 < min6) { + throw new codes.ERR_OUT_OF_RANGE("value", `>= ${min6} and <= ${max6}`, value159); } if (buf[offset40] === undefined) { boundsError(offset40, buf.length - 1); } - buf[offset40] = value155; + buf[offset40] = value159; return offset40 + 1; } -function writeU_Int16BE(buf, value156, offset41, min7, max7) { - value156 = +value156; - checkInt(value156, min7, max7, buf, offset41, 1); - buf[offset41++] = value156 >>> 8; - buf[offset41++] = value156; +function writeU_Int16BE(buf, value160, offset41, min7, max7) { + value160 = +value160; + checkInt(value160, min7, max7, buf, offset41, 1); + buf[offset41++] = value160 >>> 8; + buf[offset41++] = value160; return offset41; } -function _writeUInt32LE(buf, value157, offset42, min8, max8) { - value157 = +value157; - checkInt(value157, min8, max8, buf, offset42, 3); - buf[offset42++] = value157; - value157 = value157 >>> 8; - buf[offset42++] = value157; - value157 = value157 >>> 8; - buf[offset42++] = value157; - value157 = value157 >>> 8; - buf[offset42++] = value157; +function _writeUInt32LE(buf, value161, offset42, min8, max8) { + value161 = +value161; + checkInt(value161, min8, max8, buf, offset42, 3); + buf[offset42++] = value161; + value161 = value161 >>> 8; + buf[offset42++] = value161; + value161 = value161 >>> 8; + buf[offset42++] = value161; + value161 = value161 >>> 8; + buf[offset42++] = value161; return offset42; } -function writeU_Int16LE(buf, value158, offset43, min9, max9) { - value158 = +value158; - checkInt(value158, min9, max9, buf, offset43, 1); - buf[offset43++] = value158; - buf[offset43++] = value158 >>> 8; +function writeU_Int16LE(buf, value162, offset43, min9, max9) { + value162 = +value162; + checkInt(value162, min9, max9, buf, offset43, 1); + buf[offset43++] = value162; + buf[offset43++] = value162 >>> 8; return offset43; } -function _writeUInt32BE(buf, value159, offset44, min10, max10) { - value159 = +value159; - checkInt(value159, min10, max10, buf, offset44, 3); - buf[offset44 + 3] = value159; - value159 = value159 >>> 8; - buf[offset44 + 2] = value159; - value159 = value159 >>> 8; - buf[offset44 + 1] = value159; - value159 = value159 >>> 8; - buf[offset44] = value159; +function _writeUInt32BE(buf, value163, offset44, min10, max10) { + value163 = +value163; + checkInt(value163, min10, max10, buf, offset44, 3); + buf[offset44 + 3] = value163; + value163 = value163 >>> 8; + buf[offset44 + 2] = value163; + value163 = value163 >>> 8; + buf[offset44 + 1] = value163; + value163 = value163 >>> 8; + buf[offset44] = value163; return offset44 + 4; } -function writeU_Int48BE(buf, value160, offset45, min11, max11) { - value160 = +value160; - checkInt(value160, min11, max11, buf, offset45, 5); - const newVal = Math.floor(value160 * 2 ** -32); +function writeU_Int48BE(buf, value164, offset45, min11, max11) { + value164 = +value164; + checkInt(value164, min11, max11, buf, offset45, 5); + const newVal = Math.floor(value164 * 2 ** -32); buf[offset45++] = newVal >>> 8; buf[offset45++] = newVal; - buf[offset45 + 3] = value160; - value160 = value160 >>> 8; - buf[offset45 + 2] = value160; - value160 = value160 >>> 8; - buf[offset45 + 1] = value160; - value160 = value160 >>> 8; - buf[offset45] = value160; + buf[offset45 + 3] = value164; + value164 = value164 >>> 8; + buf[offset45 + 2] = value164; + value164 = value164 >>> 8; + buf[offset45 + 1] = value164; + value164 = value164 >>> 8; + buf[offset45] = value164; return offset45 + 4; } -function writeU_Int40BE(buf, value161, offset46, min12, max12) { - value161 = +value161; - checkInt(value161, min12, max12, buf, offset46, 4); - buf[offset46++] = Math.floor(value161 * 2 ** -32); - buf[offset46 + 3] = value161; - value161 = value161 >>> 8; - buf[offset46 + 2] = value161; - value161 = value161 >>> 8; - buf[offset46 + 1] = value161; - value161 = value161 >>> 8; - buf[offset46] = value161; +function writeU_Int40BE(buf, value165, offset46, min12, max12) { + value165 = +value165; + checkInt(value165, min12, max12, buf, offset46, 4); + buf[offset46++] = Math.floor(value165 * 2 ** -32); + buf[offset46 + 3] = value165; + value165 = value165 >>> 8; + buf[offset46 + 2] = value165; + value165 = value165 >>> 8; + buf[offset46 + 1] = value165; + value165 = value165 >>> 8; + buf[offset46] = value165; return offset46 + 4; } -function writeU_Int32BE(buf, value162, offset47, min13, max13) { - value162 = +value162; - checkInt(value162, min13, max13, buf, offset47, 3); - buf[offset47 + 3] = value162; - value162 = value162 >>> 8; - buf[offset47 + 2] = value162; - value162 = value162 >>> 8; - buf[offset47 + 1] = value162; - value162 = value162 >>> 8; - buf[offset47] = value162; +function writeU_Int32BE(buf, value166, offset47, min13, max13) { + value166 = +value166; + checkInt(value166, min13, max13, buf, offset47, 3); + buf[offset47 + 3] = value166; + value166 = value166 >>> 8; + buf[offset47 + 2] = value166; + value166 = value166 >>> 8; + buf[offset47 + 1] = value166; + value166 = value166 >>> 8; + buf[offset47] = value166; return offset47 + 4; } -function writeU_Int24BE(buf, value163, offset48, min14, max14) { - value163 = +value163; - checkInt(value163, min14, max14, buf, offset48, 2); - buf[offset48 + 2] = value163; - value163 = value163 >>> 8; - buf[offset48 + 1] = value163; - value163 = value163 >>> 8; - buf[offset48] = value163; +function writeU_Int24BE(buf, value167, offset48, min14, max14) { + value167 = +value167; + checkInt(value167, min14, max14, buf, offset48, 2); + buf[offset48 + 2] = value167; + value167 = value167 >>> 8; + buf[offset48 + 1] = value167; + value167 = value167 >>> 8; + buf[offset48] = value167; return offset48 + 3; } -function validateOffset(value164, name25, min15 = 0, max15 = Number.MAX_SAFE_INTEGER) { - if (typeof value164 !== "number") { - throw new codes.ERR_INVALID_ARG_TYPE(name25, "number", value164); +function validateOffset(value168, name25, min15 = 0, max15 = Number.MAX_SAFE_INTEGER) { + if (typeof value168 !== "number") { + throw new codes.ERR_INVALID_ARG_TYPE(name25, "number", value168); } - if (!Number.isInteger(value164)) { - throw new codes.ERR_OUT_OF_RANGE(name25, "an integer", value164); + if (!Number.isInteger(value168)) { + throw new codes.ERR_OUT_OF_RANGE(name25, "an integer", value168); } - if (value164 < min15 || value164 > max15) { - throw new codes.ERR_OUT_OF_RANGE(name25, `>= ${min15} && <= ${max15}`, value164); + if (value168 < min15 || value168 > max15) { + throw new codes.ERR_OUT_OF_RANGE(name25, `>= ${min15} && <= ${max15}`, value168); } } -function writeU_Int48LE(buf, value165, offset49, min16, max16) { - value165 = +value165; - checkInt(value165, min16, max16, buf, offset49, 5); - const newVal = Math.floor(value165 * 2 ** -32); - buf[offset49++] = value165; - value165 = value165 >>> 8; - buf[offset49++] = value165; - value165 = value165 >>> 8; - buf[offset49++] = value165; - value165 = value165 >>> 8; - buf[offset49++] = value165; +function writeU_Int48LE(buf, value169, offset49, min16, max16) { + value169 = +value169; + checkInt(value169, min16, max16, buf, offset49, 5); + const newVal = Math.floor(value169 * 2 ** -32); + buf[offset49++] = value169; + value169 = value169 >>> 8; + buf[offset49++] = value169; + value169 = value169 >>> 8; + buf[offset49++] = value169; + value169 = value169 >>> 8; + buf[offset49++] = value169; buf[offset49++] = newVal; buf[offset49++] = newVal >>> 8; return offset49; } -function writeU_Int40LE(buf, value166, offset50, min17, max17) { - value166 = +value166; - checkInt(value166, min17, max17, buf, offset50, 4); - const newVal = value166; - buf[offset50++] = value166; - value166 = value166 >>> 8; - buf[offset50++] = value166; - value166 = value166 >>> 8; - buf[offset50++] = value166; - value166 = value166 >>> 8; - buf[offset50++] = value166; +function writeU_Int40LE(buf, value170, offset50, min17, max17) { + value170 = +value170; + checkInt(value170, min17, max17, buf, offset50, 4); + const newVal = value170; + buf[offset50++] = value170; + value170 = value170 >>> 8; + buf[offset50++] = value170; + value170 = value170 >>> 8; + buf[offset50++] = value170; + value170 = value170 >>> 8; + buf[offset50++] = value170; buf[offset50++] = Math.floor(newVal * 2 ** -32); return offset50; } -function writeU_Int32LE(buf, value167, offset51, min18, max18) { - value167 = +value167; - checkInt(value167, min18, max18, buf, offset51, 3); - buf[offset51++] = value167; - value167 = value167 >>> 8; - buf[offset51++] = value167; - value167 = value167 >>> 8; - buf[offset51++] = value167; - value167 = value167 >>> 8; - buf[offset51++] = value167; +function writeU_Int32LE(buf, value171, offset51, min18, max18) { + value171 = +value171; + checkInt(value171, min18, max18, buf, offset51, 3); + buf[offset51++] = value171; + value171 = value171 >>> 8; + buf[offset51++] = value171; + value171 = value171 >>> 8; + buf[offset51++] = value171; + value171 = value171 >>> 8; + buf[offset51++] = value171; return offset51; } -function writeU_Int24LE(buf, value168, offset52, min19, max19) { - value168 = +value168; - checkInt(value168, min19, max19, buf, offset52, 2); - buf[offset52++] = value168; - value168 = value168 >>> 8; - buf[offset52++] = value168; - value168 = value168 >>> 8; - buf[offset52++] = value168; +function writeU_Int24LE(buf, value172, offset52, min19, max19) { + value172 = +value172; + checkInt(value172, min19, max19, buf, offset52, 2); + buf[offset52++] = value172; + value172 = value172 >>> 8; + buf[offset52++] = value172; + value172 = value172 >>> 8; + buf[offset52++] = value172; return offset52; } const kMaxLength = 2147483647; @@ -32093,24 +34483,24 @@ function Buffer2(arg, encodingOrOffset, length) { return _from(arg, encodingOrOffset, length); } Buffer2.poolSize = 8192; -function _from(value169, encodingOrOffset, length) { - if (typeof value169 === "string") { - return fromString(value169, encodingOrOffset); +function _from(value173, encodingOrOffset, length) { + if (typeof value173 === "string") { + return fromString(value173, encodingOrOffset); } - if (typeof value169 === "object" && value169 !== null) { - if (isAnyArrayBuffer1(value169)) { - return fromArrayBuffer(value169, encodingOrOffset, length); + if (typeof value173 === "object" && value173 !== null) { + if (isAnyArrayBuffer1(value173)) { + return fromArrayBuffer(value173, encodingOrOffset, length); } - const valueOf = value169.valueOf && value169.valueOf(); - if (valueOf != null && valueOf !== value169 && (typeof valueOf === "string" || typeof valueOf === "object")) { + const valueOf = value173.valueOf && value173.valueOf(); + if (valueOf != null && valueOf !== value173 && (typeof valueOf === "string" || typeof valueOf === "object")) { return _from(valueOf, encodingOrOffset, length); } - const b25 = fromObject(value169); - if (b25) { - return b25; + const b28 = fromObject(value173); + if (b28) { + return b28; } - if (typeof value169[Symbol.toPrimitive] === "function") { - const primitive = value169[Symbol.toPrimitive]("string"); + if (typeof value173[Symbol.toPrimitive] === "function") { + const primitive = value173[Symbol.toPrimitive]("string"); if (typeof primitive === "string") { return fromString(primitive, encodingOrOffset); } @@ -32122,10 +34512,10 @@ function _from(value169, encodingOrOffset, length) { "ArrayBuffer", "Array", "Array-like Object" - ], value169); + ], value173); } -Buffer2.from = function from(value170, encodingOrOffset, length) { - return _from(value170, encodingOrOffset, length); +Buffer2.from = function from(value174, encodingOrOffset, length) { + return _from(value174, encodingOrOffset, length); }; Object.setPrototypeOf(Buffer2.prototype, Uint8Array.prototype); Object.setPrototypeOf(Buffer2, Uint8Array); @@ -32177,8 +34567,8 @@ function fromString(string, encoding) { function fromArrayLike(array) { const length = array.length < 0 ? 0 : checked(array.length) | 0; const buf = createBuffer(length); - for(let i107 = 0; i107 < length; i107 += 1){ - buf[i107] = array[i107] & 255; + for(let i113 = 0; i113 < length; i113 += 1){ + buf[i113] = array[i113] & 255; } return buf; } @@ -32205,28 +34595,28 @@ function SlowBuffer(length) { } Object.setPrototypeOf(SlowBuffer.prototype, Uint8Array.prototype); Object.setPrototypeOf(SlowBuffer, Uint8Array); -Buffer2.isBuffer = function isBuffer(b26) { - return b26 != null && b26._isBuffer === true && b26 !== Buffer2.prototype; +Buffer2.isBuffer = function isBuffer(b29) { + return b29 != null && b29._isBuffer === true && b29 !== Buffer2.prototype; }; -Buffer2.compare = function compare(a28, b27) { +Buffer2.compare = function compare(a28, b30) { if (isInstance(a28, Uint8Array)) { a28 = Buffer2.from(a28, a28.offset, a28.byteLength); } - if (isInstance(b27, Uint8Array)) { - b27 = Buffer2.from(b27, b27.offset, b27.byteLength); + if (isInstance(b30, Uint8Array)) { + b30 = Buffer2.from(b30, b30.offset, b30.byteLength); } - if (!Buffer2.isBuffer(a28) || !Buffer2.isBuffer(b27)) { + if (!Buffer2.isBuffer(a28) || !Buffer2.isBuffer(b30)) { throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); } - if (a28 === b27) { + if (a28 === b30) { return 0; } let x8 = a28.length; - let y3 = b27.length; - for(let i108 = 0, len27 = Math.min(x8, y3); i108 < len27; ++i108){ - if (a28[i108] !== b27[i108]) { - x8 = a28[i108]; - y3 = b27[i108]; + let y3 = b30.length; + for(let i114 = 0, len27 = Math.min(x8, y3); i114 < len27; ++i114){ + if (a28[i114] !== b30[i114]) { + x8 = a28[i114]; + y3 = b30[i114]; break; } } @@ -32250,9 +34640,9 @@ Buffer2.concat = function concat(list, length) { } if (length === undefined) { length = 0; - for(let i109 = 0; i109 < list.length; i109++){ - if (list[i109].length) { - length += list[i109].length; + for(let i115 = 0; i115 < list.length; i115++){ + if (list[i115].length) { + length += list[i115].length; } } } else { @@ -32260,13 +34650,13 @@ Buffer2.concat = function concat(list, length) { } const buffer26 = Buffer2.allocUnsafe(length); let pos = 0; - for(let i113 = 0; i113 < list.length; i113++){ - const buf = list[i113]; + for(let i116 = 0; i116 < list.length; i116++){ + const buf = list[i116]; if (!isUint8Array(buf)) { - throw new codes.ERR_INVALID_ARG_TYPE(`list[${i113}]`, [ + throw new codes.ERR_INVALID_ARG_TYPE(`list[${i116}]`, [ "Buffer", "Uint8Array" - ], list[i113]); + ], list[i116]); } pos += _copyActual(buf, buffer26, pos, 0, buf.length); } @@ -32302,18 +34692,18 @@ function byteLength(string, encoding) { } Buffer2.byteLength = byteLength; Buffer2.prototype._isBuffer = true; -function swap(b28, n96, m26) { - const i114 = b28[n96]; - b28[n96] = b28[m26]; - b28[m26] = i114; +function swap(b31, n97, m26) { + const i117 = b31[n97]; + b31[n97] = b31[m26]; + b31[m26] = i117; } Buffer2.prototype.swap16 = function swap16() { const len29 = this.length; if (len29 % 2 !== 0) { throw new RangeError("Buffer size must be a multiple of 16-bits"); } - for(let i115 = 0; i115 < len29; i115 += 2){ - swap(this, i115, i115 + 1); + for(let i118 = 0; i118 < len29; i118 += 2){ + swap(this, i118, i118 + 1); } return this; }; @@ -32322,9 +34712,9 @@ Buffer2.prototype.swap32 = function swap32() { if (len30 % 4 !== 0) { throw new RangeError("Buffer size must be a multiple of 32-bits"); } - for(let i116 = 0; i116 < len30; i116 += 4){ - swap(this, i116, i116 + 3); - swap(this, i116 + 1, i116 + 2); + for(let i119 = 0; i119 < len30; i119 += 4){ + swap(this, i119, i119 + 3); + swap(this, i119 + 1, i119 + 2); } return this; }; @@ -32333,55 +34723,55 @@ Buffer2.prototype.swap64 = function swap64() { if (len31 % 8 !== 0) { throw new RangeError("Buffer size must be a multiple of 64-bits"); } - for(let i117 = 0; i117 < len31; i117 += 8){ - swap(this, i117, i117 + 7); - swap(this, i117 + 1, i117 + 6); - swap(this, i117 + 2, i117 + 5); - swap(this, i117 + 3, i117 + 4); + for(let i120 = 0; i120 < len31; i120 += 8){ + swap(this, i120, i120 + 7); + swap(this, i120 + 1, i120 + 6); + swap(this, i120 + 2, i120 + 5); + swap(this, i120 + 3, i120 + 4); } return this; }; -Buffer2.prototype.toString = function toString(encoding, start22, end) { +Buffer2.prototype.toString = function toString(encoding, start23, end) { if (arguments.length === 0) { return this.utf8Slice(0, this.length); } const len32 = this.length; - if (start22 <= 0) { - start22 = 0; - } else if (start22 >= len32) { + if (start23 <= 0) { + start23 = 0; + } else if (start23 >= len32) { return ""; } else { - start22 |= 0; + start23 |= 0; } if (end === undefined || end > len32) { end = len32; } else { end |= 0; } - if (end <= start22) { + if (end <= start23) { return ""; } if (encoding === undefined) { - return this.utf8Slice(start22, end); + return this.utf8Slice(start23, end); } const ops = getEncodingOps(encoding); if (ops === undefined) { throw new codes.ERR_UNKNOWN_ENCODING(encoding); } - return ops.slice(this, start22, end); + return ops.slice(this, start23, end); }; Buffer2.prototype.toLocaleString = Buffer2.prototype.toString; -Buffer2.prototype.equals = function equals(b29) { - if (!isUint8Array(b29)) { +Buffer2.prototype.equals = function equals(b32) { + if (!isUint8Array(b32)) { throw new codes.ERR_INVALID_ARG_TYPE("otherBuffer", [ "Buffer", "Uint8Array" - ], b29); + ], b32); } - if (this === b29) { + if (this === b32) { return true; } - return Buffer2.compare(this, b29) === 0; + return Buffer2.compare(this, b32) === 0; }; Buffer2.prototype.inspect = function inspect() { let str98 = ""; @@ -32395,7 +34785,7 @@ Buffer2.prototype.inspect = function inspect() { if (customInspectSymbol1) { Buffer2.prototype[customInspectSymbol1] = Buffer2.prototype.inspect; } -Buffer2.prototype.compare = function compare(target, start23, end, thisStart, thisEnd) { +Buffer2.prototype.compare = function compare(target, start24, end, thisStart, thisEnd) { if (isInstance(target, Uint8Array)) { target = Buffer2.from(target, target.offset, target.byteLength); } @@ -32405,10 +34795,10 @@ Buffer2.prototype.compare = function compare(target, start23, end, thisStart, th "Uint8Array" ], target); } - if (start23 === undefined) { - start23 = 0; + if (start24 === undefined) { + start24 = 0; } else { - validateOffset(start23, "targetStart", 0, kMaxLength); + validateOffset(start24, "targetStart", 0, kMaxLength); } if (end === undefined) { end = target.length; @@ -32418,26 +34808,26 @@ Buffer2.prototype.compare = function compare(target, start23, end, thisStart, th if (thisStart === undefined) { thisStart = 0; } else { - validateOffset(start23, "sourceStart", 0, kMaxLength); + validateOffset(start24, "sourceStart", 0, kMaxLength); } if (thisEnd === undefined) { thisEnd = this.length; } else { validateOffset(end, "sourceEnd", 0, this.length); } - if (start23 < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { + if (start24 < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { throw new codes.ERR_OUT_OF_RANGE("out of range index", "range"); } - if (thisStart >= thisEnd && start23 >= end) { + if (thisStart >= thisEnd && start24 >= end) { return 0; } if (thisStart >= thisEnd) { return -1; } - if (start23 >= end) { + if (start24 >= end) { return 1; } - start23 >>>= 0; + start24 >>>= 0; end >>>= 0; thisStart >>>= 0; thisEnd >>>= 0; @@ -32445,14 +34835,14 @@ Buffer2.prototype.compare = function compare(target, start23, end, thisStart, th return 0; } let x9 = thisEnd - thisStart; - let y4 = end - start23; + let y4 = end - start24; const len33 = Math.min(x9, y4); const thisCopy = this.slice(thisStart, thisEnd); - const targetCopy = target.slice(start23, end); - for(let i118 = 0; i118 < len33; ++i118){ - if (thisCopy[i118] !== targetCopy[i118]) { - x9 = thisCopy[i118]; - y4 = targetCopy[i118]; + const targetCopy = target.slice(start24, end); + for(let i121 = 0; i121 < len33; ++i121){ + if (thisCopy[i121] !== targetCopy[i121]) { + x9 = thisCopy[i121]; + y4 = targetCopy[i121]; break; } } @@ -32526,9 +34916,9 @@ Buffer2.prototype.asciiWrite = function asciiWrite(string, offset54, length) { }; Buffer2.prototype.base64Slice = function base64Slice(offset55, length) { if (offset55 === 0 && length === this.length) { - return encode1(this); + return encode2(this); } else { - return encode1(this.slice(offset55, length)); + return encode2(this.slice(offset55, length)); } }; Buffer2.prototype.base64Write = function base64Write(string, offset56, length) { @@ -32639,15 +35029,15 @@ function fromArrayBuffer(obj, byteOffset, length) { Object.setPrototypeOf(buffer28, Buffer2.prototype); return buffer28; } -function _utf8Slice(buf, start24, end) { +function _utf8Slice(buf, start25, end) { end = Math.min(buf.length, end); const res = []; - let i119 = start24; - while(i119 < end){ - const firstByte = buf[i119]; + let i122 = start25; + while(i122 < end){ + const firstByte = buf[i122]; let codePoint = null; let bytesPerSequence = firstByte > 239 ? 4 : firstByte > 223 ? 3 : firstByte > 191 ? 2 : 1; - if (i119 + bytesPerSequence <= end) { + if (i122 + bytesPerSequence <= end) { let secondByte, thirdByte, fourthByte, tempCodePoint; switch(bytesPerSequence){ case 1: @@ -32656,7 +35046,7 @@ function _utf8Slice(buf, start24, end) { } break; case 2: - secondByte = buf[i119 + 1]; + secondByte = buf[i122 + 1]; if ((secondByte & 192) === 128) { tempCodePoint = (firstByte & 31) << 6 | secondByte & 63; if (tempCodePoint > 127) { @@ -32665,8 +35055,8 @@ function _utf8Slice(buf, start24, end) { } break; case 3: - secondByte = buf[i119 + 1]; - thirdByte = buf[i119 + 2]; + secondByte = buf[i122 + 1]; + thirdByte = buf[i122 + 2]; if ((secondByte & 192) === 128 && (thirdByte & 192) === 128) { tempCodePoint = (firstByte & 15) << 12 | (secondByte & 63) << 6 | thirdByte & 63; if (tempCodePoint > 2047 && (tempCodePoint < 55296 || tempCodePoint > 57343)) { @@ -32675,9 +35065,9 @@ function _utf8Slice(buf, start24, end) { } break; case 4: - secondByte = buf[i119 + 1]; - thirdByte = buf[i119 + 2]; - fourthByte = buf[i119 + 3]; + secondByte = buf[i122 + 1]; + thirdByte = buf[i122 + 2]; + fourthByte = buf[i122 + 3]; if ((secondByte & 192) === 128 && (thirdByte & 192) === 128 && (fourthByte & 192) === 128) { tempCodePoint = (firstByte & 15) << 18 | (secondByte & 63) << 12 | (thirdByte & 63) << 6 | fourthByte & 63; if (tempCodePoint > 65535 && tempCodePoint < 1114112) { @@ -32695,7 +35085,7 @@ function _utf8Slice(buf, start24, end) { codePoint = 56320 | codePoint & 1023; } res.push(codePoint); - i119 += bytesPerSequence; + i122 += bytesPerSequence; } return decodeCodePointsArray(res); } @@ -32706,45 +35096,45 @@ function decodeCodePointsArray(codePoints) { return String.fromCharCode.apply(String, codePoints); } let res = ""; - let i120 = 0; - while(i120 < len34){ - res += String.fromCharCode.apply(String, codePoints.slice(i120, i120 += MAX_ARGUMENTS_LENGTH)); + let i123 = 0; + while(i123 < len34){ + res += String.fromCharCode.apply(String, codePoints.slice(i123, i123 += MAX_ARGUMENTS_LENGTH)); } return res; } -function _latin1Slice(buf, start25, end) { +function _latin1Slice(buf, start26, end) { let ret = ""; end = Math.min(buf.length, end); - for(let i121 = start25; i121 < end; ++i121){ - ret += String.fromCharCode(buf[i121]); + for(let i124 = start26; i124 < end; ++i124){ + ret += String.fromCharCode(buf[i124]); } return ret; } -function _hexSlice(buf, start26, end) { +function _hexSlice(buf, start27, end) { const len35 = buf.length; - if (!start26 || start26 < 0) { - start26 = 0; + if (!start27 || start27 < 0) { + start27 = 0; } if (!end || end < 0 || end > len35) { end = len35; } let out = ""; - for(let i122 = start26; i122 < end; ++i122){ - out += hexSliceLookupTable[buf[i122]]; + for(let i125 = start27; i125 < end; ++i125){ + out += hexSliceLookupTable[buf[i125]]; } return out; } -Buffer2.prototype.slice = function slice(start27, end) { +Buffer2.prototype.slice = function slice(start28, end) { const len36 = this.length; - start27 = ~~start27; + start28 = ~~start28; end = end === void 0 ? len36 : ~~end; - if (start27 < 0) { - start27 += len36; - if (start27 < 0) { - start27 = 0; + if (start28 < 0) { + start28 += len36; + if (start28 < 0) { + start28 = 0; } - } else if (start27 > len36) { - start27 = len36; + } else if (start28 > len36) { + start28 = len36; } if (end < 0) { end += len36; @@ -32754,10 +35144,10 @@ Buffer2.prototype.slice = function slice(start27, end) { } else if (end > len36) { end = len36; } - if (end < start27) { - end = start27; + if (end < start28) { + end = start28; } - const newBuf = this.subarray(start27, end); + const newBuf = this.subarray(start28, end); Object.setPrototypeOf(newBuf, Buffer2.prototype); return newBuf; }; @@ -32989,66 +35379,66 @@ Buffer2.prototype.readDoubleLE = function readDoubleLE(offset86) { Buffer2.prototype.readDoubleBE = function readDoubleBE(offset87) { return bigEndian ? readDoubleForwards(this, offset87) : readDoubleBackwards(this, offset87); }; -Buffer2.prototype.writeUintLE = Buffer2.prototype.writeUIntLE = function writeUIntLE(value171, offset88, byteLength5) { +Buffer2.prototype.writeUintLE = Buffer2.prototype.writeUIntLE = function writeUIntLE(value175, offset88, byteLength5) { if (byteLength5 === 6) { - return writeU_Int48LE(this, value171, offset88, 0, 0xffffffffffff); + return writeU_Int48LE(this, value175, offset88, 0, 0xffffffffffff); } if (byteLength5 === 5) { - return writeU_Int40LE(this, value171, offset88, 0, 0xffffffffff); + return writeU_Int40LE(this, value175, offset88, 0, 0xffffffffff); } if (byteLength5 === 3) { - return writeU_Int24LE(this, value171, offset88, 0, 0xffffff); + return writeU_Int24LE(this, value175, offset88, 0, 0xffffff); } if (byteLength5 === 4) { - return writeU_Int32LE(this, value171, offset88, 0, 0xffffffff); + return writeU_Int32LE(this, value175, offset88, 0, 0xffffffff); } if (byteLength5 === 2) { - return writeU_Int16LE(this, value171, offset88, 0, 0xffff); + return writeU_Int16LE(this, value175, offset88, 0, 0xffff); } if (byteLength5 === 1) { - return writeU_Int8(this, value171, offset88, 0, 0xff); + return writeU_Int8(this, value175, offset88, 0, 0xff); } boundsError(byteLength5, 6, "byteLength"); }; -Buffer2.prototype.writeUintBE = Buffer2.prototype.writeUIntBE = function writeUIntBE(value172, offset89, byteLength6) { +Buffer2.prototype.writeUintBE = Buffer2.prototype.writeUIntBE = function writeUIntBE(value176, offset89, byteLength6) { if (byteLength6 === 6) { - return writeU_Int48BE(this, value172, offset89, 0, 0xffffffffffff); + return writeU_Int48BE(this, value176, offset89, 0, 0xffffffffffff); } if (byteLength6 === 5) { - return writeU_Int40BE(this, value172, offset89, 0, 0xffffffffff); + return writeU_Int40BE(this, value176, offset89, 0, 0xffffffffff); } if (byteLength6 === 3) { - return writeU_Int24BE(this, value172, offset89, 0, 0xffffff); + return writeU_Int24BE(this, value176, offset89, 0, 0xffffff); } if (byteLength6 === 4) { - return writeU_Int32BE(this, value172, offset89, 0, 0xffffffff); + return writeU_Int32BE(this, value176, offset89, 0, 0xffffffff); } if (byteLength6 === 2) { - return writeU_Int16BE(this, value172, offset89, 0, 0xffff); + return writeU_Int16BE(this, value176, offset89, 0, 0xffff); } if (byteLength6 === 1) { - return writeU_Int8(this, value172, offset89, 0, 0xff); + return writeU_Int8(this, value176, offset89, 0, 0xff); } boundsError(byteLength6, 6, "byteLength"); }; -Buffer2.prototype.writeUint8 = Buffer2.prototype.writeUInt8 = function writeUInt8(value173, offset90 = 0) { - return writeU_Int8(this, value173, offset90, 0, 0xff); +Buffer2.prototype.writeUint8 = Buffer2.prototype.writeUInt8 = function writeUInt8(value177, offset90 = 0) { + return writeU_Int8(this, value177, offset90, 0, 0xff); }; -Buffer2.prototype.writeUint16LE = Buffer2.prototype.writeUInt16LE = function writeUInt16LE(value174, offset91 = 0) { - return writeU_Int16LE(this, value174, offset91, 0, 0xffff); +Buffer2.prototype.writeUint16LE = Buffer2.prototype.writeUInt16LE = function writeUInt16LE(value178, offset91 = 0) { + return writeU_Int16LE(this, value178, offset91, 0, 0xffff); }; -Buffer2.prototype.writeUint16BE = Buffer2.prototype.writeUInt16BE = function writeUInt16BE(value175, offset92 = 0) { - return writeU_Int16BE(this, value175, offset92, 0, 0xffff); +Buffer2.prototype.writeUint16BE = Buffer2.prototype.writeUInt16BE = function writeUInt16BE(value179, offset92 = 0) { + return writeU_Int16BE(this, value179, offset92, 0, 0xffff); }; -Buffer2.prototype.writeUint32LE = Buffer2.prototype.writeUInt32LE = function writeUInt32LE(value176, offset93 = 0) { - return _writeUInt32LE(this, value176, offset93, 0, 0xffffffff); +Buffer2.prototype.writeUint32LE = Buffer2.prototype.writeUInt32LE = function writeUInt32LE(value180, offset93 = 0) { + return _writeUInt32LE(this, value180, offset93, 0, 0xffffffff); }; -Buffer2.prototype.writeUint32BE = Buffer2.prototype.writeUInt32BE = function writeUInt32BE(value177, offset94 = 0) { - return _writeUInt32BE(this, value177, offset94, 0, 0xffffffff); +Buffer2.prototype.writeUint32BE = Buffer2.prototype.writeUInt32BE = function writeUInt32BE(value181, offset94 = 0) { + return _writeUInt32BE(this, value181, offset94, 0, 0xffffffff); }; -function wrtBigUInt64LE(buf, value178, offset95, min20, max21) { - checkIntBI(value178, min20, max21, buf, offset95, 7); - let lo = Number(value178 & BigInt(4294967295)); +function wrtBigUInt64LE(buf, value182, offset95, min20, max21) { + checkIntBI(value182, min20, max21, buf, offset95, 7); + let lo = Number(value182 & BigInt(4294967295)); buf[offset95++] = lo; lo = lo >> 8; buf[offset95++] = lo; @@ -33056,7 +35446,7 @@ function wrtBigUInt64LE(buf, value178, offset95, min20, max21) { buf[offset95++] = lo; lo = lo >> 8; buf[offset95++] = lo; - let hi = Number(value178 >> BigInt(32) & BigInt(4294967295)); + let hi = Number(value182 >> BigInt(32) & BigInt(4294967295)); buf[offset95++] = hi; hi = hi >> 8; buf[offset95++] = hi; @@ -33066,9 +35456,9 @@ function wrtBigUInt64LE(buf, value178, offset95, min20, max21) { buf[offset95++] = hi; return offset95; } -function wrtBigUInt64BE(buf, value179, offset96, min21, max22) { - checkIntBI(value179, min21, max22, buf, offset96, 7); - let lo = Number(value179 & BigInt(4294967295)); +function wrtBigUInt64BE(buf, value183, offset96, min21, max22) { + checkIntBI(value183, min21, max22, buf, offset96, 7); + let lo = Number(value183 & BigInt(4294967295)); buf[offset96 + 7] = lo; lo = lo >> 8; buf[offset96 + 6] = lo; @@ -33076,7 +35466,7 @@ function wrtBigUInt64BE(buf, value179, offset96, min21, max22) { buf[offset96 + 5] = lo; lo = lo >> 8; buf[offset96 + 4] = lo; - let hi = Number(value179 >> BigInt(32) & BigInt(4294967295)); + let hi = Number(value183 >> BigInt(32) & BigInt(4294967295)); buf[offset96 + 3] = hi; hi = hi >> 8; buf[offset96 + 2] = hi; @@ -33086,86 +35476,86 @@ function wrtBigUInt64BE(buf, value179, offset96, min21, max22) { buf[offset96] = hi; return offset96 + 8; } -Buffer2.prototype.writeBigUint64LE = Buffer2.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE(value180, offset97 = 0) { - return wrtBigUInt64LE(this, value180, offset97, BigInt(0), BigInt("0xffffffffffffffff")); +Buffer2.prototype.writeBigUint64LE = Buffer2.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE(value184, offset97 = 0) { + return wrtBigUInt64LE(this, value184, offset97, BigInt(0), BigInt("0xffffffffffffffff")); }); -Buffer2.prototype.writeBigUint64BE = Buffer2.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE(value181, offset98 = 0) { - return wrtBigUInt64BE(this, value181, offset98, BigInt(0), BigInt("0xffffffffffffffff")); +Buffer2.prototype.writeBigUint64BE = Buffer2.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE(value185, offset98 = 0) { + return wrtBigUInt64BE(this, value185, offset98, BigInt(0), BigInt("0xffffffffffffffff")); }); -Buffer2.prototype.writeIntLE = function writeIntLE(value182, offset99, byteLength7) { +Buffer2.prototype.writeIntLE = function writeIntLE(value186, offset99, byteLength7) { if (byteLength7 === 6) { - return writeU_Int48LE(this, value182, offset99, -0x800000000000, 0x7fffffffffff); + return writeU_Int48LE(this, value186, offset99, -0x800000000000, 0x7fffffffffff); } if (byteLength7 === 5) { - return writeU_Int40LE(this, value182, offset99, -0x8000000000, 0x7fffffffff); + return writeU_Int40LE(this, value186, offset99, -0x8000000000, 0x7fffffffff); } if (byteLength7 === 3) { - return writeU_Int24LE(this, value182, offset99, -0x800000, 0x7fffff); + return writeU_Int24LE(this, value186, offset99, -0x800000, 0x7fffff); } if (byteLength7 === 4) { - return writeU_Int32LE(this, value182, offset99, -0x80000000, 0x7fffffff); + return writeU_Int32LE(this, value186, offset99, -0x80000000, 0x7fffffff); } if (byteLength7 === 2) { - return writeU_Int16LE(this, value182, offset99, -0x8000, 0x7fff); + return writeU_Int16LE(this, value186, offset99, -0x8000, 0x7fff); } if (byteLength7 === 1) { - return writeU_Int8(this, value182, offset99, -0x80, 0x7f); + return writeU_Int8(this, value186, offset99, -0x80, 0x7f); } boundsError(byteLength7, 6, "byteLength"); }; -Buffer2.prototype.writeIntBE = function writeIntBE(value183, offset100, byteLength8) { +Buffer2.prototype.writeIntBE = function writeIntBE(value187, offset100, byteLength8) { if (byteLength8 === 6) { - return writeU_Int48BE(this, value183, offset100, -0x800000000000, 0x7fffffffffff); + return writeU_Int48BE(this, value187, offset100, -0x800000000000, 0x7fffffffffff); } if (byteLength8 === 5) { - return writeU_Int40BE(this, value183, offset100, -0x8000000000, 0x7fffffffff); + return writeU_Int40BE(this, value187, offset100, -0x8000000000, 0x7fffffffff); } if (byteLength8 === 3) { - return writeU_Int24BE(this, value183, offset100, -0x800000, 0x7fffff); + return writeU_Int24BE(this, value187, offset100, -0x800000, 0x7fffff); } if (byteLength8 === 4) { - return writeU_Int32BE(this, value183, offset100, -0x80000000, 0x7fffffff); + return writeU_Int32BE(this, value187, offset100, -0x80000000, 0x7fffffff); } if (byteLength8 === 2) { - return writeU_Int16BE(this, value183, offset100, -0x8000, 0x7fff); + return writeU_Int16BE(this, value187, offset100, -0x8000, 0x7fff); } if (byteLength8 === 1) { - return writeU_Int8(this, value183, offset100, -0x80, 0x7f); + return writeU_Int8(this, value187, offset100, -0x80, 0x7f); } boundsError(byteLength8, 6, "byteLength"); }; -Buffer2.prototype.writeInt8 = function writeInt8(value184, offset101 = 0) { - return writeU_Int8(this, value184, offset101, -0x80, 0x7f); +Buffer2.prototype.writeInt8 = function writeInt8(value188, offset101 = 0) { + return writeU_Int8(this, value188, offset101, -0x80, 0x7f); }; -Buffer2.prototype.writeInt16LE = function writeInt16LE(value185, offset102 = 0) { - return writeU_Int16LE(this, value185, offset102, -0x8000, 0x7fff); +Buffer2.prototype.writeInt16LE = function writeInt16LE(value189, offset102 = 0) { + return writeU_Int16LE(this, value189, offset102, -0x8000, 0x7fff); }; -Buffer2.prototype.writeInt16BE = function writeInt16BE(value186, offset103 = 0) { - return writeU_Int16BE(this, value186, offset103, -0x8000, 0x7fff); +Buffer2.prototype.writeInt16BE = function writeInt16BE(value190, offset103 = 0) { + return writeU_Int16BE(this, value190, offset103, -0x8000, 0x7fff); }; -Buffer2.prototype.writeInt32LE = function writeInt32LE(value187, offset104 = 0) { - return writeU_Int32LE(this, value187, offset104, -0x80000000, 0x7fffffff); +Buffer2.prototype.writeInt32LE = function writeInt32LE(value191, offset104 = 0) { + return writeU_Int32LE(this, value191, offset104, -0x80000000, 0x7fffffff); }; -Buffer2.prototype.writeInt32BE = function writeInt32BE(value188, offset105 = 0) { - return writeU_Int32BE(this, value188, offset105, -0x80000000, 0x7fffffff); +Buffer2.prototype.writeInt32BE = function writeInt32BE(value192, offset105 = 0) { + return writeU_Int32BE(this, value192, offset105, -0x80000000, 0x7fffffff); }; -Buffer2.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE(value189, offset106 = 0) { - return wrtBigUInt64LE(this, value189, offset106, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); +Buffer2.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE(value193, offset106 = 0) { + return wrtBigUInt64LE(this, value193, offset106, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); }); -Buffer2.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE(value190, offset107 = 0) { - return wrtBigUInt64BE(this, value190, offset107, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); +Buffer2.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE(value194, offset107 = 0) { + return wrtBigUInt64BE(this, value194, offset107, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); }); -Buffer2.prototype.writeFloatLE = function writeFloatLE(value191, offset108) { - return bigEndian ? writeFloatBackwards(this, value191, offset108) : writeFloatForwards(this, value191, offset108); +Buffer2.prototype.writeFloatLE = function writeFloatLE(value195, offset108) { + return bigEndian ? writeFloatBackwards(this, value195, offset108) : writeFloatForwards(this, value195, offset108); }; -Buffer2.prototype.writeFloatBE = function writeFloatBE(value192, offset109) { - return bigEndian ? writeFloatForwards(this, value192, offset109) : writeFloatBackwards(this, value192, offset109); +Buffer2.prototype.writeFloatBE = function writeFloatBE(value196, offset109) { + return bigEndian ? writeFloatForwards(this, value196, offset109) : writeFloatBackwards(this, value196, offset109); }; -Buffer2.prototype.writeDoubleLE = function writeDoubleLE(value193, offset110) { - return bigEndian ? writeDoubleBackwards(this, value193, offset110) : writeDoubleForwards(this, value193, offset110); +Buffer2.prototype.writeDoubleLE = function writeDoubleLE(value197, offset110) { + return bigEndian ? writeDoubleBackwards(this, value197, offset110) : writeDoubleForwards(this, value197, offset110); }; -Buffer2.prototype.writeDoubleBE = function writeDoubleBE(value194, offset111) { - return bigEndian ? writeDoubleForwards(this, value194, offset111) : writeDoubleBackwards(this, value194, offset111); +Buffer2.prototype.writeDoubleBE = function writeDoubleBE(value198, offset111) { + return bigEndian ? writeDoubleForwards(this, value198, offset111) : writeDoubleBackwards(this, value198, offset111); }; Buffer2.prototype.copy = function copy(target, targetStart, sourceStart, sourceEnd) { if (!isUint8Array(this)) { @@ -33236,11 +35626,11 @@ Buffer2.prototype.copy = function copy(target, targetStart, sourceStart, sourceE } return len37; }; -Buffer2.prototype.fill = function fill(val, start28, end, encoding) { +Buffer2.prototype.fill = function fill(val, start29, end, encoding) { if (typeof val === "string") { - if (typeof start28 === "string") { - encoding = start28; - start28 = 0; + if (typeof start29 === "string") { + encoding = start29; + start29 = 0; end = this.length; } else if (typeof end === "string") { encoding = end; @@ -33253,9 +35643,9 @@ Buffer2.prototype.fill = function fill(val, start28, end, encoding) { throw new TypeError("Unknown encoding: " + encoding); } if (val.length === 1) { - const code34 = val.charCodeAt(0); - if (encoding === "utf8" && code34 < 128 || encoding === "latin1") { - val = code34; + const code35 = val.charCodeAt(0); + if (encoding === "utf8" && code35 < 128 || encoding === "latin1") { + val = code35; } } } else if (typeof val === "number") { @@ -33263,30 +35653,30 @@ Buffer2.prototype.fill = function fill(val, start28, end, encoding) { } else if (typeof val === "boolean") { val = Number(val); } - if (start28 < 0 || this.length < start28 || this.length < end) { + if (start29 < 0 || this.length < start29 || this.length < end) { throw new RangeError("Out of range index"); } - if (end <= start28) { + if (end <= start29) { return this; } - start28 = start28 >>> 0; + start29 = start29 >>> 0; end = end === void 0 ? this.length : end >>> 0; if (!val) { val = 0; } - let i123; + let i126; if (typeof val === "number") { - for(i123 = start28; i123 < end; ++i123){ - this[i123] = val; + for(i126 = start29; i126 < end; ++i126){ + this[i126] = val; } } else { - const bytes17 = Buffer2.isBuffer(val) ? val : Buffer2.from(val, encoding); - const len38 = bytes17.length; + const bytes18 = Buffer2.isBuffer(val) ? val : Buffer2.from(val, encoding); + const len38 = bytes18.length; if (len38 === 0) { throw new codes.ERR_INVALID_ARG_VALUE("value", val); } - for(i123 = 0; i123 < end - start28; ++i123){ - this[i123 + start28] = bytes17[i123 % len38]; + for(i126 = 0; i126 < end - start29; ++i126){ + this[i126 + start29] = bytes18[i126 % len38]; } } return this; @@ -33297,20 +35687,20 @@ function checkBounds1(buf, offset112, byteLength2) { boundsError(offset112, buf.length - (byteLength2 + 1)); } } -function checkIntBI(value195, min22, max23, buf, offset113, byteLength2) { - if (value195 > max23 || value195 < min22) { - const n97 = typeof min22 === "bigint" ? "n" : ""; +function checkIntBI(value199, min22, max23, buf, offset113, byteLength2) { + if (value199 > max23 || value199 < min22) { + const n98 = typeof min22 === "bigint" ? "n" : ""; let range; if (byteLength2 > 3) { if (min22 === 0 || min22 === BigInt(0)) { - range = `>= 0${n97} and < 2${n97} ** ${(byteLength2 + 1) * 8}${n97}`; + range = `>= 0${n98} and < 2${n98} ** ${(byteLength2 + 1) * 8}${n98}`; } else { - range = `>= -(2${n97} ** ${(byteLength2 + 1) * 8 - 1}${n97}) and < 2 ** ${(byteLength2 + 1) * 8 - 1}${n97}`; + range = `>= -(2${n98} ** ${(byteLength2 + 1) * 8 - 1}${n98}) and < 2 ** ${(byteLength2 + 1) * 8 - 1}${n98}`; } } else { - range = `>= ${min22}${n97} and <= ${max23}${n97}`; + range = `>= ${min22}${n98} and <= ${max23}${n98}`; } - throw new codes.ERR_OUT_OF_RANGE("value", range, value195); + throw new codes.ERR_OUT_OF_RANGE("value", range, value199); } checkBounds1(buf, offset113, byteLength2); } @@ -33319,19 +35709,19 @@ function utf8ToBytes(string, units) { let codePoint; const length = string.length; let leadSurrogate = null; - const bytes18 = []; - for(let i124 = 0; i124 < length; ++i124){ - codePoint = string.charCodeAt(i124); + const bytes19 = []; + for(let i127 = 0; i127 < length; ++i127){ + codePoint = string.charCodeAt(i127); if (codePoint > 55295 && codePoint < 57344) { if (!leadSurrogate) { if (codePoint > 56319) { if ((units -= 3) > -1) { - bytes18.push(239, 191, 189); + bytes19.push(239, 191, 189); } continue; - } else if (i124 + 1 === length) { + } else if (i127 + 1 === length) { if ((units -= 3) > -1) { - bytes18.push(239, 191, 189); + bytes19.push(239, 191, 189); } continue; } @@ -33340,7 +35730,7 @@ function utf8ToBytes(string, units) { } if (codePoint < 56320) { if ((units -= 3) > -1) { - bytes18.push(239, 191, 189); + bytes19.push(239, 191, 189); } leadSurrogate = codePoint; continue; @@ -33348,7 +35738,7 @@ function utf8ToBytes(string, units) { codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536; } else if (leadSurrogate) { if ((units -= 3) > -1) { - bytes18.push(239, 191, 189); + bytes19.push(239, 191, 189); } } leadSurrogate = null; @@ -33356,49 +35746,49 @@ function utf8ToBytes(string, units) { if ((units -= 1) < 0) { break; } - bytes18.push(codePoint); + bytes19.push(codePoint); } else if (codePoint < 2048) { if ((units -= 2) < 0) { break; } - bytes18.push(codePoint >> 6 | 192, codePoint & 63 | 128); + bytes19.push(codePoint >> 6 | 192, codePoint & 63 | 128); } else if (codePoint < 65536) { if ((units -= 3) < 0) { break; } - bytes18.push(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); + bytes19.push(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); } else if (codePoint < 1114112) { if ((units -= 4) < 0) { break; } - bytes18.push(codePoint >> 18 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); + bytes19.push(codePoint >> 18 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); } else { throw new Error("Invalid code point"); } } - return bytes18; + return bytes19; } function blitBuffer(src, dst, offset114, byteLength9) { - let i125; + let i128; const length = byteLength9 === undefined ? src.length : byteLength9; - for(i125 = 0; i125 < length; ++i125){ - if (i125 + offset114 >= dst.length || i125 >= src.length) { + for(i128 = 0; i128 < length; ++i128){ + if (i128 + offset114 >= dst.length || i128 >= src.length) { break; } - dst[i125 + offset114] = src[i125]; + dst[i128 + offset114] = src[i128]; } - return i125; + return i128; } -function isInstance(obj, type24) { - return obj instanceof type24 || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type24.name; +function isInstance(obj, type17) { + return obj instanceof type17 || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type17.name; } const hexSliceLookupTable = function() { const alphabet = "0123456789abcdef"; const table = new Array(256); - for(let i126 = 0; i126 < 16; ++i126){ - const i16 = i126 * 16; + for(let i129 = 0; i129 < 16; ++i129){ + const i16 = i129 * 16; for(let j15 = 0; j15 < 16; ++j15){ - table[i16 + j15] = alphabet[i126] + alphabet[j15]; + table[i16 + j15] = alphabet[i129] + alphabet[j15]; } } return table; @@ -33423,6 +35813,9 @@ let memo; function isDeepStrictEqual(val1, val2) { return innerDeepEqual(val1, val2, true); } +function isDeepEqual(val1, val2) { + return innerDeepEqual(val1, val2, false); +} function innerDeepEqual(val1, val2, strict2, memos = memo) { if (val1 === val2) { if (val1 !== 0) return true; @@ -33529,9 +35922,9 @@ function keyCheck(val1, val2, strict3, memos, iterationType, aKeys = []) { return false; } } - let i127 = 0; - for(; i127 < aKeys.length; i127++){ - if (!val2.propertyIsEnumerable(aKeys[i127])) { + let i130 = 0; + for(; i130 < aKeys.length; i130++){ + if (!val2.propertyIsEnumerable(aKeys[i130])) { return false; } } @@ -33539,15 +35932,15 @@ function keyCheck(val1, val2, strict3, memos, iterationType, aKeys = []) { const symbolKeysA = Object.getOwnPropertySymbols(val1); if (symbolKeysA.length !== 0) { let count = 0; - for(i127 = 0; i127 < symbolKeysA.length; i127++){ - const key50 = symbolKeysA[i127]; - if (val1.propertyIsEnumerable(key50)) { - if (!val2.propertyIsEnumerable(key50)) { + for(i130 = 0; i130 < symbolKeysA.length; i130++){ + const key52 = symbolKeysA[i130]; + if (val1.propertyIsEnumerable(key52)) { + if (!val2.propertyIsEnumerable(key52)) { return false; } - aKeys.push(key50.toString()); + aKeys.push(key52.toString()); count++; - } else if (val2.propertyIsEnumerable(key50)) { + } else if (val2.propertyIsEnumerable(key52)) { return false; } } @@ -33588,15 +35981,15 @@ function keyCheck(val1, val2, strict3, memos, iterationType, aKeys = []) { memos.val2.delete(val2); return areEq; } -function areSimilarRegExps(a29, b30) { - return a29.source === b30.source && a29.flags === b30.flags && a29.lastIndex === b30.lastIndex; +function areSimilarRegExps(a29, b33) { + return a29.source === b33.source && a29.flags === b33.flags && a29.lastIndex === b33.lastIndex; } function areSimilarFloatArrays(arr1, arr2) { if (arr1.byteLength !== arr2.byteLength) { return false; } - for(let i128 = 0; i128 < arr1.byteLength; i128++){ - if (arr1[i128] !== arr2[i128]) { + for(let i131 = 0; i131 < arr1.byteLength; i131++){ + if (arr1[i131] !== arr2[i131]) { return false; } } @@ -33611,35 +36004,35 @@ function areSimilarTypedArrays(arr1, arr2) { function areEqualArrayBuffers(buf1, buf2) { return buf1.byteLength === buf2.byteLength && Buffer2.compare(new Uint8Array(buf1), new Uint8Array(buf2)) === 0; } -function isEqualBoxedPrimitive(a30, b31) { - if (Object.getOwnPropertyNames(a30).length !== Object.getOwnPropertyNames(b31).length) { +function isEqualBoxedPrimitive(a30, b34) { + if (Object.getOwnPropertyNames(a30).length !== Object.getOwnPropertyNames(b34).length) { return false; } - if (Object.getOwnPropertySymbols(a30).length !== Object.getOwnPropertySymbols(b31).length) { + if (Object.getOwnPropertySymbols(a30).length !== Object.getOwnPropertySymbols(b34).length) { return false; } if (isNumberObject1(a30)) { - return isNumberObject1(b31) && Object.is(Number.prototype.valueOf.call(a30), Number.prototype.valueOf.call(b31)); + return isNumberObject1(b34) && Object.is(Number.prototype.valueOf.call(a30), Number.prototype.valueOf.call(b34)); } if (isStringObject1(a30)) { - return isStringObject1(b31) && String.prototype.valueOf.call(a30) === String.prototype.valueOf.call(b31); + return isStringObject1(b34) && String.prototype.valueOf.call(a30) === String.prototype.valueOf.call(b34); } if (isBooleanObject1(a30)) { - return isBooleanObject1(b31) && Boolean.prototype.valueOf.call(a30) === Boolean.prototype.valueOf.call(b31); + return isBooleanObject1(b34) && Boolean.prototype.valueOf.call(a30) === Boolean.prototype.valueOf.call(b34); } if (isBigIntObject1(a30)) { - return isBigIntObject1(b31) && BigInt.prototype.valueOf.call(a30) === BigInt.prototype.valueOf.call(b31); + return isBigIntObject1(b34) && BigInt.prototype.valueOf.call(a30) === BigInt.prototype.valueOf.call(b34); } if (isSymbolObject1(a30)) { - return isSymbolObject1(b31) && Symbol.prototype.valueOf.call(a30) === Symbol.prototype.valueOf.call(b31); + return isSymbolObject1(b34) && Symbol.prototype.valueOf.call(a30) === Symbol.prototype.valueOf.call(b34); } throw Error(`Unknown boxed type`); } function getEnumerables(val, keys) { - return keys.filter((key51)=>val.propertyIsEnumerable(key51)); + return keys.filter((key53)=>val.propertyIsEnumerable(key53)); } function objEquiv(obj1, obj2, strict4, keys, memos, iterationType) { - let i129 = 0; + let i132 = 0; if (iterationType === valueType.isSet) { if (!setEquiv(obj1, obj2, strict4, memos)) { return false; @@ -33649,18 +36042,18 @@ function objEquiv(obj1, obj2, strict4, keys, memos, iterationType) { return false; } } else if (iterationType === valueType.isArray) { - for(; i129 < obj1.length; i129++){ - if (obj1.hasOwnProperty(i129)) { - if (!obj2.hasOwnProperty(i129) || !innerDeepEqual(obj1[i129], obj2[i129], strict4, memos)) { + for(; i132 < obj1.length; i132++){ + if (obj1.hasOwnProperty(i132)) { + if (!obj2.hasOwnProperty(i132) || !innerDeepEqual(obj1[i132], obj2[i132], strict4, memos)) { return false; } - } else if (obj2.hasOwnProperty(i129)) { + } else if (obj2.hasOwnProperty(i132)) { return false; } else { const keys1 = Object.keys(obj1); - for(; i129 < keys1.length; i129++){ - const key52 = keys1[i129]; - if (!obj2.hasOwnProperty(key52) || !innerDeepEqual(obj1[key52], obj2[key52], strict4, memos)) { + for(; i132 < keys1.length; i132++){ + const key54 = keys1[i132]; + if (!obj2.hasOwnProperty(key54) || !innerDeepEqual(obj1[key54], obj2[key54], strict4, memos)) { return false; } } @@ -33674,9 +36067,9 @@ function objEquiv(obj1, obj2, strict4, keys, memos, iterationType) { } } } - for(i129 = 0; i129 < keys.length; i129++){ - const key53 = keys[i129]; - if (!innerDeepEqual(obj1[key53], obj2[key53], strict4, memos)) { + for(i132 = 0; i132 < keys.length; i132++){ + const key55 = keys[i132]; + if (!innerDeepEqual(obj1[key55], obj2[key55], strict4, memos)) { return false; } } @@ -33757,33 +36150,33 @@ function mapMightHaveLoosePrimitive(map1, map2, primitive, item, memos) { } function mapEquiv(map1, map2, strict7, memos) { let set = null; - for (const { 0: key54 , 1: item1 } of map1){ - if (typeof key54 === "object" && key54 !== null) { + for (const { 0: key56 , 1: item1 } of map1){ + if (typeof key56 === "object" && key56 !== null) { if (set === null) { set = new Set(); } - set.add(key54); + set.add(key56); } else { - const item2 = map2.get(key54); - if (item2 === undefined && !map2.has(key54) || !innerDeepEqual(item1, item2, strict7, memos)) { + const item2 = map2.get(key56); + if (item2 === undefined && !map2.has(key56) || !innerDeepEqual(item1, item2, strict7, memos)) { if (strict7) return false; - if (!mapMightHaveLoosePrimitive(map1, map2, key54, item1, memos)) { + if (!mapMightHaveLoosePrimitive(map1, map2, key56, item1, memos)) { return false; } if (set === null) { set = new Set(); } - set.add(key54); + set.add(key56); } } } if (set !== null) { - for (const { 0: key55 , 1: item } of map2){ - if (typeof key55 === "object" && key55 !== null) { - if (!mapHasEqualEntry(set, map1, key55, item, strict7, memos)) { + for (const { 0: key57 , 1: item } of map2){ + if (typeof key57 === "object" && key57 !== null) { + if (!mapHasEqualEntry(set, map1, key57, item, strict7, memos)) { return false; } - } else if (!strict7 && (!map1.has(key55) || !innerDeepEqual(map1.get(key55), item, false, memos)) && !mapHasEqualEntry(set, map1, key55, item, false, memos)) { + } else if (!strict7 && (!map1.has(key57) || !innerDeepEqual(map1.get(key57), item, false, memos)) && !mapHasEqualEntry(set, map1, key57, item, false, memos)) { return false; } } @@ -33801,68 +36194,68 @@ function mapHasEqualEntry(set, map8, key1, item1, strict8, memos) { return false; } const NumberIsSafeInteger = Number.isSafeInteger; -function isArray(value196) { - return Array.isArray(value196); +function isArray(value200) { + return Array.isArray(value200); } -function isBoolean(value197) { - return typeof value197 === "boolean" || value197 instanceof Boolean; +function isBoolean(value201) { + return typeof value201 === "boolean" || value201 instanceof Boolean; } -function isNull(value198) { - return value198 === null; +function isNull(value202) { + return value202 === null; } -function isNullOrUndefined(value199) { - return value199 === null || value199 === undefined; +function isNullOrUndefined(value203) { + return value203 === null || value203 === undefined; } -function isNumber(value200) { - return typeof value200 === "number" || value200 instanceof Number; +function isNumber(value204) { + return typeof value204 === "number" || value204 instanceof Number; } -function isString(value201) { - return typeof value201 === "string" || value201 instanceof String; +function isString(value205) { + return typeof value205 === "string" || value205 instanceof String; } -function isSymbol(value202) { - return typeof value202 === "symbol"; +function isSymbol(value206) { + return typeof value206 === "symbol"; } -function isUndefined(value203) { - return value203 === undefined; +function isUndefined(value207) { + return value207 === undefined; } -function isObject1(value204) { - return value204 !== null && typeof value204 === "object"; +function isObject1(value208) { + return value208 !== null && typeof value208 === "object"; } function isError(e100) { return e100 instanceof Error; } -function isFunction(value205) { - return typeof value205 === "function"; +function isFunction(value209) { + return typeof value209 === "function"; } -function isRegExp2(value206) { - return __default4.isRegExp(value206); +function isRegExp2(value210) { + return __default4.isRegExp(value210); } -function isDate2(value207) { - return __default4.isDate(value207); +function isDate2(value211) { + return __default4.isDate(value211); } -function isPrimitive(value208) { - return value208 === null || typeof value208 !== "object" && typeof value208 !== "function"; +function isPrimitive(value212) { + return value212 === null || typeof value212 !== "object" && typeof value212 !== "function"; } -function isBuffer(value209) { - return Buffer2.isBuffer(value209); +function isBuffer(value213) { + return Buffer2.isBuffer(value213); } function _extend(target, source) { if (source === null || typeof source !== "object") return target; const keys = Object.keys(source); - let i130 = keys.length; - while(i130--){ - target[keys[i130]] = source[keys[i130]]; + let i133 = keys.length; + while(i133--){ + target[keys[i133]] = source[keys[i133]]; } return target; } -function getSystemErrorName(code35) { - if (typeof code35 !== "number") { - throw new codes.ERR_INVALID_ARG_TYPE("err", "number", code35); +function getSystemErrorName(code36) { + if (typeof code36 !== "number") { + throw new codes.ERR_INVALID_ARG_TYPE("err", "number", code36); } - if (code35 >= 0 || !NumberIsSafeInteger(code35)) { - throw new codes.ERR_OUT_OF_RANGE("err", "a negative integer", code35); + if (code36 >= 0 || !NumberIsSafeInteger(code36)) { + throw new codes.ERR_OUT_OF_RANGE("err", "a negative integer", code36); } - return errorMap.get(code35)?.[0]; + return errorMap.get(code36)?.[0]; } function inherits(ctor, superCtor) { if (ctor === undefined || ctor === null) { @@ -33881,8 +36274,8 @@ function inherits(ctor, superCtor) { }); Object.setPrototypeOf(ctor.prototype, superCtor.prototype); } -function pad1(n98) { - return n98.toString().padStart(2, "0"); +function pad1(n99) { + return n99.toString().padStart(2, "0"); } const months = [ "Jan", @@ -33900,15 +36293,15 @@ const months = [ ]; function timestamp() { const d7 = new Date(); - const t94 = [ + const t96 = [ pad1(d7.getHours()), pad1(d7.getMinutes()), pad1(d7.getSeconds()), ].join(":"); - return `${d7.getDate()} ${months[d7.getMonth()]} ${t94}`; + return `${d7.getDate()} ${months[d7.getMonth()]} ${t96}`; } -function log(...args29) { - console.log("%s - %s", timestamp(), format5(...args29)); +function log(...args32) { + console.log("%s - %s", timestamp(), format5(...args32)); } const __default5 = { format: format5, @@ -33967,20 +36360,20 @@ class AbortError extends Error { } function addNumericalSeparator(val) { let res = ""; - let i131 = val.length; - const start29 = val[0] === "-" ? 1 : 0; - for(; i131 >= start29 + 4; i131 -= 3){ - res = `_${val.slice(i131 - 3, i131)}${res}`; + let i134 = val.length; + const start30 = val[0] === "-" ? 1 : 0; + for(; i134 >= start30 + 4; i134 -= 3){ + res = `_${val.slice(i134 - 3, i134)}${res}`; } - return `${val.slice(0, i131)}${res}`; + return `${val.slice(0, i134)}${res}`; } const captureLargerStackTrace = hideStackFrames(function captureLargerStackTrace(err) { Error.captureStackTrace(err); return err; }); hideStackFrames(function uvExceptionWithHostPort(err, syscall, address1, port3) { - const { 0: code36 , 1: uvmsg } = uvErrmapGet(err) || uvUnmappedError; - const message = `${syscall} ${code36}: ${uvmsg}`; + const { 0: code37 , 1: uvmsg } = uvErrmapGet(err) || uvUnmappedError; + const message = `${syscall} ${code37}: ${uvmsg}`; let details = ""; if (port3 && port3 > 0) { details = ` ${address1}:${port3}`; @@ -33988,7 +36381,7 @@ hideStackFrames(function uvExceptionWithHostPort(err, syscall, address1, port3) details = ` ${address1}`; } const ex = new Error(`${message}${details}`); - ex.code = code36; + ex.code = code37; ex.errno = err; ex.syscall = syscall; ex.address = address1; @@ -33998,11 +36391,11 @@ hideStackFrames(function uvExceptionWithHostPort(err, syscall, address1, port3) return captureLargerStackTrace(ex); }); hideStackFrames(function errnoException(err, syscall, original) { - const code37 = getSystemErrorName(err); - const message = original ? `${syscall} ${code37} ${original}` : `${syscall} ${code37}`; + const code38 = getSystemErrorName(err); + const message = original ? `${syscall} ${code38} ${original}` : `${syscall} ${code38}`; const ex = new Error(message); ex.errno = err; - ex.code = code37; + ex.code = code38; ex.syscall = syscall; return captureLargerStackTrace(ex); }); @@ -34014,13 +36407,13 @@ const uvUnmappedError = [ "unknown error" ]; hideStackFrames(function uvException(ctx) { - const { 0: code38 , 1: uvmsg } = uvErrmapGet(ctx.errno) || uvUnmappedError; - let message = `${code38}: ${ctx.message || uvmsg}, ${ctx.syscall}`; - let path50; + const { 0: code39 , 1: uvmsg } = uvErrmapGet(ctx.errno) || uvUnmappedError; + let message = `${code39}: ${ctx.message || uvmsg}, ${ctx.syscall}`; + let path49; let dest; if (ctx.path) { - path50 = ctx.path.toString(); - message += ` '${path50}'`; + path49 = ctx.path.toString(); + message += ` '${path49}'`; } if (ctx.dest) { dest = ctx.dest.toString(); @@ -34033,9 +36426,9 @@ hideStackFrames(function uvException(ctx) { } err[prop] = ctx[prop]; } - err.code = code38; - if (path50) { - err.path = path50; + err.code = code39; + if (path49) { + err.path = path49; } if (dest) { err.dest = dest; @@ -34043,7 +36436,7 @@ hideStackFrames(function uvException(ctx) { return captureLargerStackTrace(err); }); hideStackFrames(function exceptionWithHostPort(err, syscall, address2, port4, additional) { - const code39 = getSystemErrorName(err); + const code40 = getSystemErrorName(err); let details = ""; if (port4 && port4 > 0) { details = ` ${address2}:${port4}`; @@ -34053,9 +36446,9 @@ hideStackFrames(function exceptionWithHostPort(err, syscall, address2, port4, ad if (additional) { details += ` - Local (${additional})`; } - const ex = new Error(`${syscall} ${code39}${details}`); + const ex = new Error(`${syscall} ${code40}${details}`); ex.errno = err; - ex.code = code39; + ex.code = code40; ex.syscall = syscall; ex.address = address2; if (port4) { @@ -34063,20 +36456,20 @@ hideStackFrames(function exceptionWithHostPort(err, syscall, address2, port4, ad } return captureLargerStackTrace(ex); }); -hideStackFrames(function(code40, syscall, hostname4) { +hideStackFrames(function(code41, syscall, hostname4) { let errno; - if (typeof code40 === "number") { - errno = code40; - if (code40 === codeMap.get("EAI_NODATA") || code40 === codeMap.get("EAI_NONAME")) { - code40 = "ENOTFOUND"; + if (typeof code41 === "number") { + errno = code41; + if (code41 === codeMap.get("EAI_NODATA") || code41 === codeMap.get("EAI_NONAME")) { + code41 = "ENOTFOUND"; } else { - code40 = getSystemErrorName(code40); + code41 = getSystemErrorName(code41); } } - const message = `${syscall} ${code40}${hostname4 ? ` ${hostname4}` : ""}`; + const message = `${syscall} ${code41}${hostname4 ? ` ${hostname4}` : ""}`; const ex = new Error(message); ex.errno = errno; - ex.code = code40; + ex.code = code41; ex.syscall = syscall; if (hostname4) { ex.hostname = hostname4; @@ -34085,9 +36478,9 @@ hideStackFrames(function(code40, syscall, hostname4) { }); class NodeErrorAbstraction extends Error { code; - constructor(name27, code41, message){ + constructor(name27, code42, message){ super(message); - this.code = code41; + this.code = code42; this.name = name27; this.stack = this.stack && `${name27} [${this.code}]${this.stack.slice(20)}`; } @@ -34096,13 +36489,13 @@ class NodeErrorAbstraction extends Error { } } class NodeError extends NodeErrorAbstraction { - constructor(code42, message){ - super(Error.prototype.name, code42, message); + constructor(code43, message){ + super(Error.prototype.name, code43, message); } } class NodeRangeError extends NodeErrorAbstraction { - constructor(code43, message){ - super(RangeError.prototype.name, code43, message); + constructor(code44, message){ + super(RangeError.prototype.name, code44, message); Object.setPrototypeOf(this, RangeError.prototype); this.toString = function() { return `${this.name} [${this.code}]: ${this.message}`; @@ -34110,8 +36503,8 @@ class NodeRangeError extends NodeErrorAbstraction { } } class NodeTypeError extends NodeErrorAbstraction { - constructor(code44, message){ - super(TypeError.prototype.name, code44, message); + constructor(code45, message){ + super(TypeError.prototype.name, code45, message); Object.setPrototypeOf(this, TypeError.prototype); this.toString = function() { return `${this.name} [${this.code}]: ${this.message}`; @@ -34119,8 +36512,8 @@ class NodeTypeError extends NodeErrorAbstraction { } } class NodeURIError extends NodeErrorAbstraction { - constructor(code45, message){ - super(URIError.prototype.name, code45, message); + constructor(code46, message){ + super(URIError.prototype.name, code46, message); Object.setPrototypeOf(this, URIError.prototype); this.toString = function() { return `${this.name} [${this.code}]: ${this.message}`; @@ -34128,7 +36521,7 @@ class NodeURIError extends NodeErrorAbstraction { } } class NodeSystemError extends NodeErrorAbstraction { - constructor(key56, context7, msgPrefix){ + constructor(key58, context7, msgPrefix){ let message = `${msgPrefix}: ${context7.syscall} returned ` + `${context7.code} (${context7.message})`; if (context7.path !== undefined) { message += ` ${context7.path}`; @@ -34136,7 +36529,7 @@ class NodeSystemError extends NodeErrorAbstraction { if (context7.dest !== undefined) { message += ` => ${context7.dest}`; } - super("SystemError", key56, message); + super("SystemError", key58, message); captureLargerStackTrace(this); Object.defineProperties(this, { [kIsNodeError]: { @@ -34155,8 +36548,8 @@ class NodeSystemError extends NodeErrorAbstraction { get () { return context7.errno; }, - set: (value210)=>{ - context7.errno = value210; + set: (value214)=>{ + context7.errno = value214; }, enumerable: true, configurable: true @@ -34165,8 +36558,8 @@ class NodeSystemError extends NodeErrorAbstraction { get () { return context7.syscall; }, - set: (value211)=>{ - context7.syscall = value211; + set: (value215)=>{ + context7.syscall = value215; }, enumerable: true, configurable: true @@ -34177,8 +36570,8 @@ class NodeSystemError extends NodeErrorAbstraction { get () { return context7.path; }, - set: (value212)=>{ - context7.path = value212; + set: (value216)=>{ + context7.path = value216; }, enumerable: true, configurable: true @@ -34189,8 +36582,8 @@ class NodeSystemError extends NodeErrorAbstraction { get () { return context7.dest; }, - set: (value213)=>{ - context7.dest = value213; + set: (value217)=>{ + context7.dest = value217; }, enumerable: true, configurable: true @@ -34201,10 +36594,10 @@ class NodeSystemError extends NodeErrorAbstraction { return `${this.name} [${this.code}]: ${this.message}`; } } -function makeSystemErrorWithCode(key57, msgPrfix) { +function makeSystemErrorWithCode(key59, msgPrfix) { return class NodeError extends NodeSystemError { constructor(ctx){ - super(key57, ctx, msgPrfix); + super(key59, ctx, msgPrfix); } }; } @@ -34217,20 +36610,20 @@ function createInvalidArgType(name28, expected) { if (name28.endsWith(" argument")) { msg28 += `${name28} `; } else { - const type25 = name28.includes(".") ? "property" : "argument"; - msg28 += `"${name28}" ${type25} `; + const type18 = name28.includes(".") ? "property" : "argument"; + msg28 += `"${name28}" ${type18} `; } msg28 += "must be "; const types5 = []; const instances = []; const other = []; - for (const value214 of expected){ - if (kTypes.includes(value214)) { - types5.push(value214.toLocaleLowerCase()); - } else if (classRegExp1.test(value214)) { - instances.push(value214); + for (const value218 of expected){ + if (kTypes.includes(value218)) { + types5.push(value218.toLocaleLowerCase()); + } else if (classRegExp1.test(value218)) { + instances.push(value218); } else { - other.push(value214); + other.push(value218); } } if (instances.length > 0) { @@ -34296,17 +36689,17 @@ class ERR_INVALID_ARG_TYPE extends NodeTypeError { static RangeError = ERR_INVALID_ARG_TYPE_RANGE; } class ERR_INVALID_ARG_VALUE_RANGE extends NodeRangeError { - constructor(name31, value215, reason = "is invalid"){ - const type26 = name31.includes(".") ? "property" : "argument"; - const inspected = inspect(value215); - super("ERR_INVALID_ARG_VALUE", `The ${type26} '${name31}' ${reason}. Received ${inspected}`); + constructor(name31, value219, reason = "is invalid"){ + const type19 = name31.includes(".") ? "property" : "argument"; + const inspected = inspect(value219); + super("ERR_INVALID_ARG_VALUE", `The ${type19} '${name31}' ${reason}. Received ${inspected}`); } } class ERR_INVALID_ARG_VALUE extends NodeTypeError { - constructor(name32, value216, reason = "is invalid"){ - const type27 = name32.includes(".") ? "property" : "argument"; - const inspected = inspect(value216); - super("ERR_INVALID_ARG_VALUE", `The ${type27} '${name32}' ${reason}. Received ${inspected}`); + constructor(name32, value220, reason = "is invalid"){ + const type20 = name32.includes(".") ? "property" : "argument"; + const inspected = inspect(value220); + super("ERR_INVALID_ARG_VALUE", `The ${type20} '${name32}' ${reason}. Received ${inspected}`); } static RangeError = ERR_INVALID_ARG_VALUE_RANGE; } @@ -34336,7 +36729,7 @@ function invalidArgTypeHelper(input) { class ERR_OUT_OF_RANGE extends RangeError { code = "ERR_OUT_OF_RANGE"; constructor(str99, range, input, replaceDefaultBoolean = false){ - assert3(range, 'Missing "range" argument'); + assert4(range, 'Missing "range" argument'); let msg31 = replaceDefaultBoolean ? str99 : `The value of "${str99}" is out of range.`; let received; if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) { @@ -34399,21 +36792,21 @@ class ERR_METHOD_NOT_IMPLEMENTED extends NodeError { } } class ERR_MISSING_ARGS extends NodeTypeError { - constructor(...args30){ + constructor(...args33){ let msg32 = "The "; - const len39 = args30.length; + const len39 = args33.length; const wrap1 = (a31)=>`"${a31}"`; - args30 = args30.map((a32)=>Array.isArray(a32) ? a32.map(wrap1).join(" or ") : wrap1(a32)); + args33 = args33.map((a32)=>Array.isArray(a32) ? a32.map(wrap1).join(" or ") : wrap1(a32)); switch(len39){ case 1: - msg32 += `${args30[0]} argument`; + msg32 += `${args33[0]} argument`; break; case 2: - msg32 += `${args30[0]} and ${args30[1]} arguments`; + msg32 += `${args33[0]} and ${args33[1]} arguments`; break; default: - msg32 += args30.slice(0, len39 - 1).join(", "); - msg32 += `, and ${args30[len39 - 1]} arguments`; + msg32 += args33.slice(0, len39 - 1).join(", "); + msg32 += `, and ${args33[len39 - 1]} arguments`; break; } super("ERR_MISSING_ARGS", `${msg32} must be specified`); @@ -34426,7 +36819,7 @@ class ERR_MULTIPLE_CALLBACK extends NodeError { } class ERR_SOCKET_BAD_PORT extends NodeRangeError { constructor(name35, port5, allowZero = true){ - assert3(typeof allowZero === "boolean", "The 'allowZero' argument must be of type boolean."); + assert4(typeof allowZero === "boolean", "The 'allowZero' argument must be of type boolean."); const operator = allowZero ? ">=" : ">"; super("ERR_SOCKET_BAD_PORT", `${name35} should be ${operator} 0 and < 65536. Received ${port5}.`); } @@ -34481,16 +36874,16 @@ class ERR_UNKNOWN_ENCODING extends NodeTypeError { super("ERR_UNKNOWN_ENCODING", `Unknown encoding: ${x17}`); } } -function buildReturnPropertyType(value217) { - if (value217 && value217.constructor && value217.constructor.name) { - return `instance of ${value217.constructor.name}`; +function buildReturnPropertyType(value221) { + if (value221 && value221.constructor && value221.constructor.name) { + return `instance of ${value221.constructor.name}`; } else { - return `type ${typeof value217}`; + return `type ${typeof value221}`; } } class ERR_INVALID_RETURN_VALUE extends NodeTypeError { - constructor(input, name36, value218){ - super("ERR_INVALID_RETURN_VALUE", `Expected ${input} to be returned from the "${name36}" function but got ${buildReturnPropertyType(value218)}.`); + constructor(input, name36, value222){ + super("ERR_INVALID_RETURN_VALUE", `Expected ${input} to be returned from the "${name36}" function but got ${buildReturnPropertyType(value222)}.`); } } class ERR_INVALID_URL_SCHEME extends NodeTypeError { @@ -34542,6 +36935,8 @@ function EventEmitter(opts) { EventEmitter.on = on; EventEmitter.once = once1; EventEmitter.getEventListeners = getEventListeners; +EventEmitter.setMaxListeners = setMaxListeners; +EventEmitter.listenerCount = listenerCount; EventEmitter.EventEmitter = EventEmitter; EventEmitter.usingDomains = false; EventEmitter.captureRejectionSymbol = kRejection; @@ -34551,9 +36946,9 @@ Object.defineProperty(EventEmitter, "captureRejections", { get () { return EventEmitter.prototype[kCapture]; }, - set (value219) { - validateBoolean(value219, "EventEmitter.captureRejections"); - EventEmitter.prototype[kCapture] = value219; + set (value223) { + validateBoolean(value223, "EventEmitter.captureRejections"); + EventEmitter.prototype[kCapture] = value223; }, enumerable: true }); @@ -34596,20 +36991,20 @@ Object.defineProperties(EventEmitter, { writable: false } }); -EventEmitter.setMaxListeners = function(n99 = defaultMaxListeners, ...eventTargets) { - if (typeof n99 !== "number" || n99 < 0 || Number.isNaN(n99)) { - throw new ERR_OUT_OF_RANGE("n", "a non-negative number", n99); +function setMaxListeners(n100 = defaultMaxListeners, ...eventTargets) { + if (typeof n100 !== "number" || n100 < 0 || Number.isNaN(n100)) { + throw new ERR_OUT_OF_RANGE("n", "a non-negative number", n100); } if (eventTargets.length === 0) { - defaultMaxListeners = n99; + defaultMaxListeners = n100; } else { - for(let i132 = 0; i132 < eventTargets.length; i132++){ - const target = eventTargets[i132]; + for(let i135 = 0; i135 < eventTargets.length; i135++){ + const target = eventTargets[i135]; if (target instanceof EventTarget) { - target[kMaxEventTargetListeners] = n99; + target[kMaxEventTargetListeners] = n100; target[kMaxEventTargetListenersWarned] = false; } else if (typeof target.setMaxListeners === "function") { - target.setMaxListeners(n99); + target.setMaxListeners(n100); } else { throw new ERR_INVALID_ARG_TYPE("eventTargets", [ "EventEmitter", @@ -34618,7 +37013,7 @@ EventEmitter.setMaxListeners = function(n99 = defaultMaxListeners, ...eventTarge } } } -}; +} EventEmitter.init = function(opts) { if (this._events === undefined || this._events === Object.getPrototypeOf(this)._events) { this._events = Object.create(null); @@ -34632,7 +37027,7 @@ EventEmitter.init = function(opts) { this[kCapture] = EventEmitter.prototype[kCapture]; } }; -function addCatch(that, promise, type28, args31) { +function addCatch(that, promise, type21, args34) { if (!that[kCapture]) { return; } @@ -34640,16 +37035,16 @@ function addCatch(that, promise, type28, args31) { const then = promise.then; if (typeof then === "function") { then.call(promise, undefined, function(err) { - process.nextTick(emitUnhandledRejectionOrErr, that, err, type28, args31); + process.nextTick(emitUnhandledRejectionOrErr, that, err, type21, args34); }); } } catch (err) { that.emit("error", err); } } -function emitUnhandledRejectionOrErr(ee, err, type29, args32) { +function emitUnhandledRejectionOrErr(ee, err, type22, args35) { if (typeof ee[kRejection] === "function") { - ee[kRejection](err, type29, ...args32); + ee[kRejection](err, type22, ...args35); } else { const prev = ee[kCapture]; try { @@ -34660,11 +37055,11 @@ function emitUnhandledRejectionOrErr(ee, err, type29, args32) { } } } -EventEmitter.prototype.setMaxListeners = function setMaxListeners(n100) { - if (typeof n100 !== "number" || n100 < 0 || Number.isNaN(n100)) { - throw new ERR_OUT_OF_RANGE("n", "a non-negative number", n100); +EventEmitter.prototype.setMaxListeners = function setMaxListeners(n101) { + if (typeof n101 !== "number" || n101 < 0 || Number.isNaN(n101)) { + throw new ERR_OUT_OF_RANGE("n", "a non-negative number", n101); } - this._maxListeners = n100; + this._maxListeners = n101; return this; }; function _getMaxListeners(that) { @@ -34676,12 +37071,12 @@ function _getMaxListeners(that) { EventEmitter.prototype.getMaxListeners = function getMaxListeners() { return _getMaxListeners(this); }; -EventEmitter.prototype.emit = function emit(type30, ...args33) { - let doError = type30 === "error"; +EventEmitter.prototype.emit = function emit(type23, ...args36) { + let doError = type23 === "error"; const events = this._events; if (events !== undefined) { if (doError && events[kErrorMonitor] !== undefined) { - this.emit(kErrorMonitor, ...args33); + this.emit(kErrorMonitor, ...args36); } doError = doError && events.error === undefined; } else if (!doError) { @@ -34689,8 +37084,8 @@ EventEmitter.prototype.emit = function emit(type30, ...args33) { } if (doError) { let er; - if (args33.length > 0) { - er = args33[0]; + if (args36.length > 0) { + er = args36[0]; } if (er instanceof Error) { try { @@ -34709,28 +37104,28 @@ EventEmitter.prototype.emit = function emit(type30, ...args33) { err.context = er; throw err; } - const handler = events[type30]; + const handler = events[type23]; if (handler === undefined) { return false; } if (typeof handler === "function") { - const result = handler.apply(this, args33); + const result = handler.apply(this, args36); if (result !== undefined && result !== null) { - addCatch(this, result, type30, args33); + addCatch(this, result, type23, args36); } } else { const len40 = handler.length; const listeners = arrayClone(handler); - for(let i133 = 0; i133 < len40; ++i133){ - const result = listeners[i133].apply(this, args33); + for(let i136 = 0; i136 < len40; ++i136){ + const result = listeners[i136].apply(this, args36); if (result !== undefined && result !== null) { - addCatch(this, result, type30, args33); + addCatch(this, result, type23, args36); } } } return true; }; -function _addListener(target, type31, listener, prepend) { +function _addListener(target, type24, listener, prepend) { let m27; let events; let existing; @@ -34741,17 +37136,17 @@ function _addListener(target, type31, listener, prepend) { target._eventsCount = 0; } else { if (events.newListener !== undefined) { - target.emit("newListener", type31, listener.listener ?? listener); + target.emit("newListener", type24, listener.listener ?? listener); events = target._events; } - existing = events[type31]; + existing = events[type24]; } if (existing === undefined) { - events[type31] = listener; + events[type24] = listener; ++target._eventsCount; } else { if (typeof existing === "function") { - existing = events[type31] = prepend ? [ + existing = events[type24] = prepend ? [ listener, existing ] : [ @@ -34766,24 +37161,24 @@ function _addListener(target, type31, listener, prepend) { m27 = _getMaxListeners(target); if (m27 > 0 && existing.length > m27 && !existing.warned) { existing.warned = true; - const w18 = new Error("Possible EventEmitter memory leak detected. " + `${existing.length} ${String(type31)} listeners ` + `added to ${inspect(target, { + const w18 = new Error("Possible EventEmitter memory leak detected. " + `${existing.length} ${String(type24)} listeners ` + `added to ${inspect(target, { depth: -1 })}. Use ` + "emitter.setMaxListeners() to increase limit"); w18.name = "MaxListenersExceededWarning"; w18.emitter = target; - w18.type = type31; + w18.type = type24; w18.count = existing.length; process.emitWarning(w18); } } return target; } -EventEmitter.prototype.addListener = function addListener(type32, listener) { - return _addListener(this, type32, listener, false); +EventEmitter.prototype.addListener = function addListener(type25, listener) { + return _addListener(this, type25, listener, false); }; EventEmitter.prototype.on = EventEmitter.prototype.addListener; -EventEmitter.prototype.prependListener = function prependListener(type33, listener) { - return _addListener(this, type33, listener, true); +EventEmitter.prototype.prependListener = function prependListener(type26, listener) { + return _addListener(this, type26, listener, true); }; function onceWrapper() { if (!this.fired) { @@ -34795,36 +37190,36 @@ function onceWrapper() { return this.listener.apply(this.target, arguments); } } -function _onceWrap(target, type34, listener) { - const state13 = { +function _onceWrap(target, type27, listener) { + const state14 = { fired: false, wrapFn: undefined, target, - type: type34, + type: type27, listener }; - const wrapped = onceWrapper.bind(state13); + const wrapped = onceWrapper.bind(state14); wrapped.listener = listener; - state13.wrapFn = wrapped; + state14.wrapFn = wrapped; return wrapped; } -EventEmitter.prototype.once = function once(type35, listener) { +EventEmitter.prototype.once = function once(type28, listener) { checkListener(listener); - this.on(type35, _onceWrap(this, type35, listener)); + this.on(type28, _onceWrap(this, type28, listener)); return this; }; -EventEmitter.prototype.prependOnceListener = function prependOnceListener(type36, listener) { +EventEmitter.prototype.prependOnceListener = function prependOnceListener(type29, listener) { checkListener(listener); - this.prependListener(type36, _onceWrap(this, type36, listener)); + this.prependListener(type29, _onceWrap(this, type29, listener)); return this; }; -EventEmitter.prototype.removeListener = function removeListener(type37, listener) { +EventEmitter.prototype.removeListener = function removeListener(type30, listener) { checkListener(listener); const events = this._events; if (events === undefined) { return this; } - const list = events[type37]; + const list = events[type30]; if (list === undefined) { return this; } @@ -34832,16 +37227,16 @@ EventEmitter.prototype.removeListener = function removeListener(type37, listener if (--this._eventsCount === 0) { this._events = Object.create(null); } else { - delete events[type37]; + delete events[type30]; if (events.removeListener) { - this.emit("removeListener", type37, list.listener || listener); + this.emit("removeListener", type30, list.listener || listener); } } } else if (typeof list !== "function") { let position = -1; - for(let i134 = list.length - 1; i134 >= 0; i134--){ - if (list[i134] === listener || list[i134].listener === listener) { - position = i134; + for(let i137 = list.length - 1; i137 >= 0; i137--){ + if (list[i137] === listener || list[i137].listener === listener) { + position = i137; break; } } @@ -34854,16 +37249,16 @@ EventEmitter.prototype.removeListener = function removeListener(type37, listener spliceOne(list, position); } if (list.length === 1) { - events[type37] = list[0]; + events[type30] = list[0]; } if (events.removeListener !== undefined) { - this.emit("removeListener", type37, listener); + this.emit("removeListener", type30, listener); } } return this; }; EventEmitter.prototype.off = EventEmitter.prototype.removeListener; -EventEmitter.prototype.removeAllListeners = function removeAllListeners(type38) { +EventEmitter.prototype.removeAllListeners = function removeAllListeners(type31) { const events = this._events; if (events === undefined) { return this; @@ -34872,41 +37267,41 @@ EventEmitter.prototype.removeAllListeners = function removeAllListeners(type38) if (arguments.length === 0) { this._events = Object.create(null); this._eventsCount = 0; - } else if (events[type38] !== undefined) { + } else if (events[type31] !== undefined) { if (--this._eventsCount === 0) { this._events = Object.create(null); } else { - delete events[type38]; + delete events[type31]; } } return this; } if (arguments.length === 0) { - for (const key58 of Reflect.ownKeys(events)){ - if (key58 === "removeListener") continue; - this.removeAllListeners(key58); + for (const key60 of Reflect.ownKeys(events)){ + if (key60 === "removeListener") continue; + this.removeAllListeners(key60); } this.removeAllListeners("removeListener"); this._events = Object.create(null); this._eventsCount = 0; return this; } - const listeners = events[type38]; + const listeners = events[type31]; if (typeof listeners === "function") { - this.removeListener(type38, listeners); + this.removeListener(type31, listeners); } else if (listeners !== undefined) { - for(let i135 = listeners.length - 1; i135 >= 0; i135--){ - this.removeListener(type38, listeners[i135]); + for(let i138 = listeners.length - 1; i138 >= 0; i138--){ + this.removeListener(type31, listeners[i138]); } } return this; }; -function _listeners(target, type39, unwrap) { +function _listeners(target, type32, unwrap) { const events = target._events; if (events === undefined) { return []; } - const evlistener = events[type39]; + const evlistener = events[type32]; if (evlistener === undefined) { return []; } @@ -34919,23 +37314,16 @@ function _listeners(target, type39, unwrap) { } return unwrap ? unwrapListeners(evlistener) : arrayClone(evlistener); } -EventEmitter.prototype.listeners = function listeners(type40) { - return _listeners(this, type40, true); +EventEmitter.prototype.listeners = function listeners(type33) { + return _listeners(this, type33, true); }; -EventEmitter.prototype.rawListeners = function rawListeners(type41) { - return _listeners(this, type41, false); +EventEmitter.prototype.rawListeners = function rawListeners(type34) { + return _listeners(this, type34, false); }; -EventEmitter.listenerCount = function(emitter, type42) { - if (typeof emitter.listenerCount === "function") { - return emitter.listenerCount(type42); - } - return listenerCount.call(emitter, type42); -}; -EventEmitter.prototype.listenerCount = listenerCount; -function listenerCount(type43) { +const _listenerCount = function listenerCount(type35) { const events = this._events; if (events !== undefined) { - const evlistener = events[type43]; + const evlistener = events[type35]; if (typeof evlistener === "function") { return 1; } else if (evlistener !== undefined) { @@ -34943,6 +37331,13 @@ function listenerCount(type43) { } } return 0; +}; +EventEmitter.prototype.listenerCount = _listenerCount; +function listenerCount(emitter, type36) { + if (typeof emitter.listenerCount === "function") { + return emitter.listenerCount(type36); + } + return _listenerCount.call(emitter, type36); } EventEmitter.prototype.eventNames = function eventNames() { return this._eventsCount > 0 ? Reflect.ownKeys(this._events) : []; @@ -34989,20 +37384,20 @@ function arrayClone(arr) { } function unwrapListeners(arr) { const ret = arrayClone(arr); - for(let i136 = 0; i136 < ret.length; ++i136){ - const orig = ret[i136].listener; + for(let i139 = 0; i139 < ret.length; ++i139){ + const orig = ret[i139].listener; if (typeof orig === "function") { - ret[i136] = orig; + ret[i139] = orig; } } return ret; } -function getEventListeners(emitterOrTarget, type44) { +function getEventListeners(emitterOrTarget, type37) { if (typeof emitterOrTarget.listeners === "function") { - return emitterOrTarget.listeners(type44); + return emitterOrTarget.listeners(type37); } if (emitterOrTarget instanceof EventTarget) { - const root = emitterOrTarget[kEvents].get(type44); + const root = emitterOrTarget[kEvents].get(type37); const listeners = []; let handler = root?.next; while(handler?.listener !== undefined){ @@ -35023,22 +37418,22 @@ async function once1(emitter, name37, options31 = {}) { if (signal?.aborted) { throw new AbortError(); } - return new Promise((resolve18, reject7)=>{ + return new Promise((resolve20, reject8)=>{ const errorListener = (err)=>{ emitter.removeListener(name37, resolver); if (signal != null) { eventTargetAgnosticRemoveListener(signal, "abort", abortListener); } - reject7(err); + reject8(err); }; - const resolver = (...args34)=>{ + const resolver = (...args37)=>{ if (typeof emitter.removeListener === "function") { emitter.removeListener("error", errorListener); } if (signal != null) { eventTargetAgnosticRemoveListener(signal, "abort", abortListener); } - resolve18(args34); + resolve20(args37); }; eventTargetAgnosticAddListener(emitter, name37, resolver, { once: true @@ -35049,7 +37444,7 @@ async function once1(emitter, name37, options31 = {}) { function abortListener() { eventTargetAgnosticRemoveListener(emitter, name37, resolver); eventTargetAgnosticRemoveListener(emitter, "error", errorListener); - reject7(new AbortError()); + reject8(new AbortError()); } if (signal != null) { eventTargetAgnosticAddListener(signal, "abort", abortListener, { @@ -35059,9 +37454,9 @@ async function once1(emitter, name37, options31 = {}) { }); } const AsyncIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf(async function*() {}).prototype); -function createIterResult(value220, done) { +function createIterResult(value224, done) { return { - value: value220, + value: value224, done }; } @@ -35097,26 +37492,26 @@ function on(emitter, event, options32) { } const unconsumedEvents = []; const unconsumedPromises = []; - let error16 = null; + let error17 = null; let finished1 = false; const iterator = Object.setPrototypeOf({ next () { - const value221 = unconsumedEvents.shift(); - if (value221) { - return Promise.resolve(createIterResult(value221, false)); + const value225 = unconsumedEvents.shift(); + if (value225) { + return Promise.resolve(createIterResult(value225, false)); } - if (error16) { - const p42 = Promise.reject(error16); - error16 = null; - return p42; + if (error17) { + const p43 = Promise.reject(error17); + error17 = null; + return p43; } if (finished1) { return Promise.resolve(createIterResult(undefined, true)); } - return new Promise(function(resolve19, reject8) { + return new Promise(function(resolve21, reject9) { unconsumedPromises.push({ - resolve: resolve19, - reject: reject8 + resolve: resolve21, + reject: reject9 }); }); }, @@ -35138,7 +37533,7 @@ function on(emitter, event, options32) { if (!err || !(err instanceof Error)) { throw new ERR_INVALID_ARG_TYPE("EventEmitter.AsyncIterator", "Error", err); } - error16 = err; + error17 = err; eventTargetAgnosticRemoveListener(emitter, event, eventHandler); eventTargetAgnosticRemoveListener(emitter, "error", errorHandler); }, @@ -35159,12 +37554,12 @@ function on(emitter, event, options32) { function abortListener() { errorHandler(new AbortError()); } - function eventHandler(...args35) { + function eventHandler(...args38) { const promise = unconsumedPromises.shift(); if (promise) { - promise.resolve(createIterResult(args35, false)); + promise.resolve(createIterResult(args38, false)); } else { - unconsumedEvents.push(args35); + unconsumedEvents.push(args38); } } function errorHandler(err) { @@ -35173,7 +37568,7 @@ function on(emitter, event, options32) { if (toError) { toError.reject(err); } else { - error16 = err; + error17 = err; } iterator.return(); } @@ -35574,24 +37969,24 @@ function dew8() { } catch (e) {} }(); var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, nodeIsDate = nodeUtil && nodeUtil.isDate, nodeIsMap = nodeUtil && nodeUtil.isMap, nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, nodeIsSet = nodeUtil && nodeUtil.isSet, nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - function apply(func, thisArg, args36) { - switch(args36.length){ + function apply(func, thisArg, args39) { + switch(args39.length){ case 0: return func.call(thisArg); case 1: - return func.call(thisArg, args36[0]); + return func.call(thisArg, args39[0]); case 2: - return func.call(thisArg, args36[0], args36[1]); + return func.call(thisArg, args39[0], args39[1]); case 3: - return func.call(thisArg, args36[0], args36[1], args36[2]); + return func.call(thisArg, args39[0], args39[1], args39[2]); } - return func.apply(thisArg, args36); + return func.apply(thisArg, args39); } function arrayAggregator(array, setter, iteratee, accumulator) { var index = -1, length = array == null ? 0 : array.length; while(++index < length){ - var value222 = array[index]; - setter(accumulator, value222, iteratee(value222), array); + var value226 = array[index]; + setter(accumulator, value226, iteratee(value226), array); } return accumulator; } @@ -35625,21 +38020,21 @@ function dew8() { function arrayFilter(array, predicate) { var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; while(++index < length){ - var value223 = array[index]; - if (predicate(value223, index, array)) { - result[resIndex++] = value223; + var value227 = array[index]; + if (predicate(value227, index, array)) { + result[resIndex++] = value227; } } return result; } - function arrayIncludes(array, value224) { + function arrayIncludes(array, value228) { var length = array == null ? 0 : array.length; - return !!length && baseIndexOf(array, value224, 0) > -1; + return !!length && baseIndexOf(array, value228, 0) > -1; } - function arrayIncludesWith(array, value225, comparator) { + function arrayIncludesWith(array, value229, comparator) { var index = -1, length = array == null ? 0 : array.length; while(++index < length){ - if (comparator(value225, array[index])) { + if (comparator(value229, array[index])) { return true; } } @@ -35697,9 +38092,9 @@ function dew8() { } function baseFindKey(collection1, predicate, eachFunc) { var result; - eachFunc(collection1, function(value226, key59, collection) { - if (predicate(value226, key59, collection)) { - result = key59; + eachFunc(collection1, function(value230, key61, collection) { + if (predicate(value230, key61, collection)) { + result = key61; return false; } }); @@ -35714,38 +38109,38 @@ function dew8() { } return -1; } - function baseIndexOf(array, value227, fromIndex) { - return value227 === value227 ? strictIndexOf(array, value227, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex); + function baseIndexOf(array, value231, fromIndex) { + return value231 === value231 ? strictIndexOf(array, value231, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex); } - function baseIndexOfWith(array, value228, fromIndex, comparator) { + function baseIndexOfWith(array, value232, fromIndex, comparator) { var index = fromIndex - 1, length = array.length; while(++index < length){ - if (comparator(array[index], value228)) { + if (comparator(array[index], value232)) { return index; } } return -1; } - function baseIsNaN(value229) { - return value229 !== value229; + function baseIsNaN(value233) { + return value233 !== value233; } function baseMean(array, iteratee) { var length = array == null ? 0 : array.length; return length ? baseSum(array, iteratee) / length : NAN; } - function baseProperty(key60) { + function baseProperty(key62) { return function(object) { - return object == null ? undefined : object[key60]; + return object == null ? undefined : object[key62]; }; } function basePropertyOf(object) { - return function(key61) { - return object == null ? undefined : object[key61]; + return function(key63) { + return object == null ? undefined : object[key63]; }; } function baseReduce(collection2, iteratee, accumulator, initAccum, eachFunc) { - eachFunc(collection2, function(value230, index, collection) { - accumulator = initAccum ? (initAccum = false, value230) : iteratee(accumulator, value230, index, collection); + eachFunc(collection2, function(value234, index, collection) { + accumulator = initAccum ? (initAccum = false, value234) : iteratee(accumulator, value234, index, collection); }); return accumulator; } @@ -35767,18 +38162,18 @@ function dew8() { } return result; } - function baseTimes(n101, iteratee) { - var index = -1, result = Array(n101); - while(++index < n101){ + function baseTimes(n102, iteratee) { + var index = -1, result = Array(n102); + while(++index < n102){ result[index] = iteratee(index); } return result; } function baseToPairs(object, props) { - return arrayMap(props, function(key62) { + return arrayMap(props, function(key64) { return [ - key62, - object[key62] + key64, + object[key64] ]; }); } @@ -35786,17 +38181,17 @@ function dew8() { return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '') : string; } function baseUnary(func) { - return function(value231) { - return func(value231); + return function(value235) { + return func(value235); }; } function baseValues(object, props) { - return arrayMap(props, function(key63) { - return object[key63]; + return arrayMap(props, function(key65) { + return object[key65]; }); } - function cacheHas(cache, key64) { - return cache.has(key64); + function cacheHas(cache, key66) { + return cache.has(key66); } function charsStartIndex(strSymbols, chrSymbols) { var index = -1, length = strSymbols.length; @@ -35822,8 +38217,8 @@ function dew8() { function escapeStringChar(chr) { return '\\' + stringEscapes[chr]; } - function getValue(object, key65) { - return object == null ? undefined : object[key65]; + function getValue(object, key67) { + return object == null ? undefined : object[key67]; } function hasUnicode(string) { return reHasUnicode.test(string); @@ -35832,18 +38227,18 @@ function dew8() { return reHasUnicodeWord.test(string); } function iteratorToArray(iterator) { - var data41, result = []; - while(!(data41 = iterator.next()).done){ - result.push(data41.value); + var data43, result = []; + while(!(data43 = iterator.next()).done){ + result.push(data43.value); } return result; } function mapToArray(map9) { var index = -1, result = Array(map9.size); - map9.forEach(function(value232, key66) { + map9.forEach(function(value236, key68) { result[++index] = [ - key66, - value232 + key68, + value236 ]; }); return result; @@ -35856,8 +38251,8 @@ function dew8() { function replaceHolders(array, placeholder) { var index = -1, length = array.length, resIndex = 0, result = []; while(++index < length){ - var value233 = array[index]; - if (value233 === placeholder || value233 === PLACEHOLDER) { + var value237 = array[index]; + if (value237 === placeholder || value237 === PLACEHOLDER) { array[index] = PLACEHOLDER; result[resIndex++] = index; } @@ -35866,34 +38261,34 @@ function dew8() { } function setToArray(set) { var index = -1, result = Array(set.size); - set.forEach(function(value234) { - result[++index] = value234; + set.forEach(function(value238) { + result[++index] = value238; }); return result; } function setToPairs(set) { var index = -1, result = Array(set.size); - set.forEach(function(value235) { + set.forEach(function(value239) { result[++index] = [ - value235, - value235 + value239, + value239 ]; }); return result; } - function strictIndexOf(array, value236, fromIndex) { + function strictIndexOf(array, value240, fromIndex) { var index = fromIndex - 1, length = array.length; while(++index < length){ - if (array[index] === value236) { + if (array[index] === value240) { return index; } } return -1; } - function strictLastIndexOf(array, value237, fromIndex) { + function strictLastIndexOf(array, value241, fromIndex) { var index = fromIndex + 1; while(index--){ - if (array[index] === value237) { + if (array[index] === value241) { return index; } } @@ -35955,16 +38350,16 @@ function dew8() { var realNames = {}; var dataViewCtorString = toSource(DataView), mapCtorString = toSource(Map), promiseCtorString = toSource(Promise), setCtorString = toSource(Set), weakMapCtorString = toSource(WeakMap); var symbolProto = Symbol ? Symbol.prototype : undefined, symbolValueOf = symbolProto ? symbolProto.valueOf : undefined, symbolToString = symbolProto ? symbolProto.toString : undefined; - function lodash(value238) { - if (isObjectLike1(value238) && !isArray1(value238) && !(value238 instanceof LazyWrapper)) { - if (value238 instanceof LodashWrapper) { - return value238; + function lodash(value242) { + if (isObjectLike1(value242) && !isArray1(value242) && !(value242 instanceof LazyWrapper)) { + if (value242 instanceof LodashWrapper) { + return value242; } - if (hasOwnProperty.call(value238, '__wrapped__')) { - return wrapperClone(value238); + if (hasOwnProperty.call(value242, '__wrapped__')) { + return wrapperClone(value242); } } - return new LodashWrapper(value238); + return new LodashWrapper(value242); } var baseCreate = function() { function object() {} @@ -35982,8 +38377,8 @@ function dew8() { }; }(); function baseLodash() {} - function LodashWrapper(value239, chainAll) { - (this || _global).__wrapped__ = value239; + function LodashWrapper(value243, chainAll) { + (this || _global).__wrapped__ = value243; (this || _global).__actions__ = []; (this || _global).__chain__ = !!chainAll; (this || _global).__index__ = 0; @@ -36002,8 +38397,8 @@ function dew8() { lodash.prototype.constructor = lodash; LodashWrapper.prototype = baseCreate(baseLodash.prototype); LodashWrapper.prototype.constructor = LodashWrapper; - function LazyWrapper(value240) { - (this || _global).__wrapped__ = value240; + function LazyWrapper(value244) { + (this || _global).__wrapped__ = value244; (this || _global).__actions__ = []; (this || _global).__dir__ = 1; (this || _global).__filtered__ = false; @@ -36033,27 +38428,27 @@ function dew8() { return result; } function lazyValue() { - var array = (this || _global).__wrapped__.value(), dir = (this || _global).__dir__, isArr = isArray1(array), isRight = dir < 0, arrLength = isArr ? array.length : 0, view = getView(0, arrLength, (this || _global).__views__), start30 = view.start, end = view.end, length = end - start30, index = isRight ? end : start30 - 1, iteratees = (this || _global).__iteratees__, iterLength = iteratees.length, resIndex = 0, takeCount = nativeMin(length, (this || _global).__takeCount__); + var array = (this || _global).__wrapped__.value(), dir = (this || _global).__dir__, isArr = isArray1(array), isRight = dir < 0, arrLength = isArr ? array.length : 0, view = getView(0, arrLength, (this || _global).__views__), start31 = view.start, end = view.end, length = end - start31, index = isRight ? end : start31 - 1, iteratees = (this || _global).__iteratees__, iterLength = iteratees.length, resIndex = 0, takeCount = nativeMin(length, (this || _global).__takeCount__); if (!isArr || !isRight && arrLength == length && takeCount == length) { return baseWrapperValue(array, (this || _global).__actions__); } var result = []; outer: while((length--) && resIndex < takeCount){ index += dir; - var iterIndex = -1, value241 = array[index]; + var iterIndex = -1, value245 = array[index]; while(++iterIndex < iterLength){ - var data42 = iteratees[iterIndex], iteratee = data42.iteratee, type45 = data42.type, computed = iteratee(value241); - if (type45 == LAZY_MAP_FLAG) { - value241 = computed; + var data44 = iteratees[iterIndex], iteratee = data44.iteratee, type38 = data44.type, computed = iteratee(value245); + if (type38 == LAZY_MAP_FLAG) { + value245 = computed; } else if (!computed) { - if (type45 == LAZY_FILTER_FLAG) { + if (type38 == LAZY_FILTER_FLAG) { continue outer; } else { break outer; } } } - result[resIndex++] = value241; + result[resIndex++] = value245; } return result; } @@ -36071,27 +38466,27 @@ function dew8() { (this || _global).__data__ = nativeCreate ? nativeCreate(null) : {}; (this || _global).size = 0; } - function hashDelete(key67) { - var result = this.has(key67) && delete (this || _global).__data__[key67]; + function hashDelete(key69) { + var result = this.has(key69) && delete (this || _global).__data__[key69]; (this || _global).size -= result ? 1 : 0; return result; } - function hashGet(key68) { - var data43 = (this || _global).__data__; + function hashGet(key70) { + var data45 = (this || _global).__data__; if (nativeCreate) { - var result = data43[key68]; + var result = data45[key70]; return result === HASH_UNDEFINED ? undefined : result; } - return hasOwnProperty.call(data43, key68) ? data43[key68] : undefined; + return hasOwnProperty.call(data45, key70) ? data45[key70] : undefined; } - function hashHas(key69) { - var data44 = (this || _global).__data__; - return nativeCreate ? data44[key69] !== undefined : hasOwnProperty.call(data44, key69); + function hashHas(key71) { + var data46 = (this || _global).__data__; + return nativeCreate ? data46[key71] !== undefined : hasOwnProperty.call(data46, key71); } - function hashSet(key70, value242) { - var data45 = (this || _global).__data__; - (this || _global).size += this.has(key70) ? 0 : 1; - data45[key70] = nativeCreate && value242 === undefined ? HASH_UNDEFINED : value242; + function hashSet(key72, value246) { + var data47 = (this || _global).__data__; + (this || _global).size += this.has(key72) ? 0 : 1; + data47[key72] = nativeCreate && value246 === undefined ? HASH_UNDEFINED : value246; return this || _global; } Hash3.prototype.clear = hashClear; @@ -36111,37 +38506,37 @@ function dew8() { (this || _global).__data__ = []; (this || _global).size = 0; } - function listCacheDelete(key71) { - var data46 = (this || _global).__data__, index = assocIndexOf(data46, key71); + function listCacheDelete(key73) { + var data48 = (this || _global).__data__, index = assocIndexOf(data48, key73); if (index < 0) { return false; } - var lastIndex = data46.length - 1; + var lastIndex = data48.length - 1; if (index == lastIndex) { - data46.pop(); + data48.pop(); } else { - splice.call(data46, index, 1); + splice.call(data48, index, 1); } --(this || _global).size; return true; } - function listCacheGet(key72) { - var data47 = (this || _global).__data__, index = assocIndexOf(data47, key72); - return index < 0 ? undefined : data47[index][1]; + function listCacheGet(key74) { + var data49 = (this || _global).__data__, index = assocIndexOf(data49, key74); + return index < 0 ? undefined : data49[index][1]; } - function listCacheHas(key73) { - return assocIndexOf((this || _global).__data__, key73) > -1; + function listCacheHas(key75) { + return assocIndexOf((this || _global).__data__, key75) > -1; } - function listCacheSet(key74, value243) { - var data48 = (this || _global).__data__, index = assocIndexOf(data48, key74); + function listCacheSet(key76, value247) { + var data50 = (this || _global).__data__, index = assocIndexOf(data50, key76); if (index < 0) { ++(this || _global).size; - data48.push([ - key74, - value243 + data50.push([ + key76, + value247 ]); } else { - data48[index][1] = value243; + data50[index][1] = value247; } return this || _global; } @@ -36166,21 +38561,21 @@ function dew8() { 'string': new Hash3() }; } - function mapCacheDelete(key75) { - var result = getMapData(this || _global, key75)['delete'](key75); + function mapCacheDelete(key77) { + var result = getMapData(this || _global, key77)['delete'](key77); (this || _global).size -= result ? 1 : 0; return result; } - function mapCacheGet(key76) { - return getMapData(this || _global, key76).get(key76); + function mapCacheGet(key78) { + return getMapData(this || _global, key78).get(key78); } - function mapCacheHas(key77) { - return getMapData(this || _global, key77).has(key77); + function mapCacheHas(key79) { + return getMapData(this || _global, key79).has(key79); } - function mapCacheSet(key78, value244) { - var data49 = getMapData(this || _global, key78), size = data49.size; - data49.set(key78, value244); - (this || _global).size += data49.size == size ? 0 : 1; + function mapCacheSet(key80, value248) { + var data51 = getMapData(this || _global, key80), size = data51.size; + data51.set(key80, value248); + (this || _global).size += data51.size == size ? 0 : 1; return this || _global; } MapCache.prototype.clear = mapCacheClear; @@ -36195,50 +38590,50 @@ function dew8() { this.add(values6[index]); } } - function setCacheAdd(value245) { - (this || _global).__data__.set(value245, HASH_UNDEFINED); + function setCacheAdd(value249) { + (this || _global).__data__.set(value249, HASH_UNDEFINED); return this || _global; } - function setCacheHas(value246) { - return (this || _global).__data__.has(value246); + function setCacheHas(value250) { + return (this || _global).__data__.has(value250); } SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function Stack(entries) { - var data50 = (this || _global).__data__ = new ListCache(entries); - (this || _global).size = data50.size; + var data52 = (this || _global).__data__ = new ListCache(entries); + (this || _global).size = data52.size; } function stackClear() { (this || _global).__data__ = new ListCache(); (this || _global).size = 0; } - function stackDelete(key79) { - var data51 = (this || _global).__data__, result = data51['delete'](key79); - (this || _global).size = data51.size; + function stackDelete(key81) { + var data53 = (this || _global).__data__, result = data53['delete'](key81); + (this || _global).size = data53.size; return result; } - function stackGet(key80) { - return (this || _global).__data__.get(key80); + function stackGet(key82) { + return (this || _global).__data__.get(key82); } - function stackHas(key81) { - return (this || _global).__data__.has(key81); + function stackHas(key83) { + return (this || _global).__data__.has(key83); } - function stackSet(key82, value247) { - var data52 = (this || _global).__data__; - if (data52 instanceof ListCache) { - var pairs = data52.__data__; + function stackSet(key84, value251) { + var data54 = (this || _global).__data__; + if (data54 instanceof ListCache) { + var pairs = data54.__data__; if (!Map || pairs.length < LARGE_ARRAY_SIZE - 1) { pairs.push([ - key82, - value247 + key84, + value251 ]); - (this || _global).size = ++data52.size; + (this || _global).size = ++data54.size; return this || _global; } - data52 = (this || _global).__data__ = new MapCache(pairs); + data54 = (this || _global).__data__ = new MapCache(pairs); } - data52.set(key82, value247); - (this || _global).size = data52.size; + data54.set(key84, value251); + (this || _global).size = data54.size; return this || _global; } Stack.prototype.clear = stackClear; @@ -36246,11 +38641,11 @@ function dew8() { Stack.prototype.get = stackGet; Stack.prototype.has = stackHas; Stack.prototype.set = stackSet; - function arrayLikeKeys(value248, inherited) { - var isArr = isArray1(value248), isArg = !isArr && isArguments(value248), isBuff = !isArr && !isArg && isBuffer1(value248), isType = !isArr && !isArg && !isBuff && isTypedArray2(value248), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value248.length, String) : [], length = result.length; - for(var key83 in value248){ - if ((inherited || hasOwnProperty.call(value248, key83)) && !(skipIndexes && (key83 == 'length' || isBuff && (key83 == 'offset' || key83 == 'parent') || isType && (key83 == 'buffer' || key83 == 'byteLength' || key83 == 'byteOffset') || isIndex(key83, length)))) { - result.push(key83); + function arrayLikeKeys(value252, inherited) { + var isArr = isArray1(value252), isArg = !isArr && isArguments(value252), isBuff = !isArr && !isArg && isBuffer1(value252), isType = !isArr && !isArg && !isBuff && isTypedArray2(value252), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value252.length, String) : [], length = result.length; + for(var key85 in value252){ + if ((inherited || hasOwnProperty.call(value252, key85)) && !(skipIndexes && (key85 == 'length' || isBuff && (key85 == 'offset' || key85 == 'parent') || isType && (key85 == 'buffer' || key85 == 'byteLength' || key85 == 'byteOffset') || isIndex(key85, length)))) { + result.push(key85); } } return result; @@ -36259,35 +38654,35 @@ function dew8() { var length = array.length; return length ? array[baseRandom(0, length - 1)] : undefined; } - function arraySampleSize(array, n102) { - return shuffleSelf(copyArray(array), baseClamp(n102, 0, array.length)); + function arraySampleSize(array, n103) { + return shuffleSelf(copyArray(array), baseClamp(n103, 0, array.length)); } function arrayShuffle(array) { return shuffleSelf(copyArray(array)); } - function assignMergeValue(object, key84, value249) { - if (value249 !== undefined && !eq(object[key84], value249) || value249 === undefined && !(key84 in object)) { - baseAssignValue(object, key84, value249); + function assignMergeValue(object, key86, value253) { + if (value253 !== undefined && !eq(object[key86], value253) || value253 === undefined && !(key86 in object)) { + baseAssignValue(object, key86, value253); } } - function assignValue(object, key85, value250) { - var objValue = object[key85]; - if (!(hasOwnProperty.call(object, key85) && eq(objValue, value250)) || value250 === undefined && !(key85 in object)) { - baseAssignValue(object, key85, value250); + function assignValue(object, key87, value254) { + var objValue = object[key87]; + if (!(hasOwnProperty.call(object, key87) && eq(objValue, value254)) || value254 === undefined && !(key87 in object)) { + baseAssignValue(object, key87, value254); } } - function assocIndexOf(array, key86) { + function assocIndexOf(array, key88) { var length = array.length; while(length--){ - if (eq(array[length][0], key86)) { + if (eq(array[length][0], key88)) { return length; } } return -1; } function baseAggregator(collection3, setter, iteratee, accumulator) { - baseEach(collection3, function(value251, key, collection) { - setter(accumulator, value251, iteratee(value251), collection); + baseEach(collection3, function(value255, key, collection) { + setter(accumulator, value255, iteratee(value255), collection); }); return accumulator; } @@ -36297,16 +38692,16 @@ function dew8() { function baseAssignIn(object, source) { return object && copyObject(source, keysIn(source), object); } - function baseAssignValue(object, key87, value252) { - if (key87 == '__proto__' && defineProperty) { - defineProperty(object, key87, { + function baseAssignValue(object, key89, value256) { + if (key89 == '__proto__' && defineProperty) { + defineProperty(object, key89, { 'configurable': true, 'enumerable': true, - 'value': value252, + 'value': value256, 'writable': true }); } else { - object[key87] = value252; + object[key89] = value256; } } function baseAt(object, paths) { @@ -36327,63 +38722,63 @@ function dew8() { } return number; } - function baseClone(value253, bitmask, customizer, key1, object, stack) { + function baseClone(value257, bitmask, customizer, key1, object, stack) { var result, isDeep = bitmask & CLONE_DEEP_FLAG, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG; if (customizer) { - result = object ? customizer(value253, key1, object, stack) : customizer(value253); + result = object ? customizer(value257, key1, object, stack) : customizer(value257); } if (result !== undefined) { return result; } - if (!isObject8(value253)) { - return value253; + if (!isObject8(value257)) { + return value257; } - var isArr = isArray1(value253); + var isArr = isArray1(value257); if (isArr) { - result = initCloneArray(value253); + result = initCloneArray(value257); if (!isDeep) { - return copyArray(value253, result); + return copyArray(value257, result); } } else { - var tag = getTag(value253), isFunc = tag == funcTag || tag == genTag; - if (isBuffer1(value253)) { - return cloneBuffer(value253, isDeep); + var tag = getTag(value257), isFunc = tag == funcTag || tag == genTag; + if (isBuffer1(value257)) { + return cloneBuffer(value257, isDeep); } if (tag == objectTag || tag == argsTag || isFunc && !object) { - result = isFlat || isFunc ? {} : initCloneObject(value253); + result = isFlat || isFunc ? {} : initCloneObject(value257); if (!isDeep) { - return isFlat ? copySymbolsIn(value253, baseAssignIn(result, value253)) : copySymbols(value253, baseAssign(result, value253)); + return isFlat ? copySymbolsIn(value257, baseAssignIn(result, value257)) : copySymbols(value257, baseAssign(result, value257)); } } else { if (!cloneableTags[tag]) { - return object ? value253 : {}; + return object ? value257 : {}; } - result = initCloneByTag(value253, tag, isDeep); + result = initCloneByTag(value257, tag, isDeep); } } stack || (stack = new Stack()); - var stacked = stack.get(value253); + var stacked = stack.get(value257); if (stacked) { return stacked; } - stack.set(value253, result); - if (isSet2(value253)) { - value253.forEach(function(subValue) { - result.add(baseClone(subValue, bitmask, customizer, subValue, value253, stack)); + stack.set(value257, result); + if (isSet2(value257)) { + value257.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value257, stack)); }); - } else if (isMap3(value253)) { - value253.forEach(function(subValue, key88) { - result.set(key88, baseClone(subValue, bitmask, customizer, key88, value253, stack)); + } else if (isMap3(value257)) { + value257.forEach(function(subValue, key90) { + result.set(key90, baseClone(subValue, bitmask, customizer, key90, value257, stack)); }); } var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys; - var props = isArr ? undefined : keysFunc(value253); - arrayEach(props || value253, function(subValue, key89) { + var props = isArr ? undefined : keysFunc(value257); + arrayEach(props || value257, function(subValue, key91) { if (props) { - key89 = subValue; - subValue = value253[key89]; + key91 = subValue; + subValue = value257[key91]; } - assignValue(result, key89, baseClone(subValue, bitmask, customizer, key89, value253, stack)); + assignValue(result, key91, baseClone(subValue, bitmask, customizer, key91, value257, stack)); }); return result; } @@ -36400,19 +38795,19 @@ function dew8() { } object = Object(object); while(length--){ - var key90 = props[length], predicate = source[key90], value254 = object[key90]; - if (value254 === undefined && !(key90 in object) || !predicate(value254)) { + var key92 = props[length], predicate = source[key92], value258 = object[key92]; + if (value258 === undefined && !(key92 in object) || !predicate(value258)) { return false; } } return true; } - function baseDelay(func, wait, args37) { + function baseDelay(func, wait, args40) { if (typeof func != 'function') { throw new TypeError(FUNC_ERROR_TEXT); } return setTimeout(function() { - func.apply(undefined, args37); + func.apply(undefined, args40); }, wait); } function baseDifference(array, values7, iteratee, comparator) { @@ -36432,8 +38827,8 @@ function dew8() { values7 = new SetCache(values7); } outer: while(++index < length){ - var value255 = array[index], computed = iteratee == null ? value255 : iteratee(value255); - value255 = comparator || value255 !== 0 ? value255 : 0; + var value259 = array[index], computed = iteratee == null ? value259 : iteratee(value259); + value259 = comparator || value259 !== 0 ? value259 : 0; if (isCommon && computed === computed) { var valuesIndex = valuesLength; while(valuesIndex--){ @@ -36441,9 +38836,9 @@ function dew8() { continue outer; } } - result.push(value255); + result.push(value259); } else if (!includes2(values7, computed, comparator)) { - result.push(value255); + result.push(value259); } } return result; @@ -36452,8 +38847,8 @@ function dew8() { var baseEachRight = createBaseEach(baseForOwnRight, true); function baseEvery(collection4, predicate) { var result = true; - baseEach(collection4, function(value256, index, collection) { - result = !!predicate(value256, index, collection); + baseEach(collection4, function(value260, index, collection) { + result = !!predicate(value260, index, collection); return result; }); return result; @@ -36461,34 +38856,34 @@ function dew8() { function baseExtremum(array, iteratee, comparator) { var index = -1, length = array.length; while(++index < length){ - var value257 = array[index], current = iteratee(value257); + var value261 = array[index], current = iteratee(value261); if (current != null && (computed === undefined ? current === current && !isSymbol1(current) : comparator(current, computed))) { - var computed = current, result = value257; + var computed = current, result = value261; } } return result; } - function baseFill(array, value258, start31, end) { + function baseFill(array, value262, start32, end) { var length = array.length; - start31 = toInteger1(start31); - if (start31 < 0) { - start31 = -start31 > length ? 0 : length + start31; + start32 = toInteger1(start32); + if (start32 < 0) { + start32 = -start32 > length ? 0 : length + start32; } end = end === undefined || end > length ? length : toInteger1(end); if (end < 0) { end += length; } - end = start31 > end ? 0 : toLength(end); - while(start31 < end){ - array[start31++] = value258; + end = start32 > end ? 0 : toLength(end); + while(start32 < end){ + array[start32++] = value262; } return array; } function baseFilter(collection5, predicate) { var result = []; - baseEach(collection5, function(value259, index, collection) { - if (predicate(value259, index, collection)) { - result.push(value259); + baseEach(collection5, function(value263, index, collection) { + if (predicate(value263, index, collection)) { + result.push(value263); } }); return result; @@ -36498,15 +38893,15 @@ function dew8() { predicate || (predicate = isFlattenable); result || (result = []); while(++index < length){ - var value260 = array[index]; - if (depth > 0 && predicate(value260)) { + var value264 = array[index]; + if (depth > 0 && predicate(value264)) { if (depth > 1) { - baseFlatten(value260, depth - 1, predicate, isStrict, result); + baseFlatten(value264, depth - 1, predicate, isStrict, result); } else { - arrayPush(result, value260); + arrayPush(result, value264); } } else if (!isStrict) { - result[result.length] = value260; + result[result.length] = value264; } } return result; @@ -36520,15 +38915,15 @@ function dew8() { return object && baseForRight(object, iteratee, keys); } function baseFunctions(object, props) { - return arrayFilter(props, function(key91) { - return isFunction6(object[key91]); + return arrayFilter(props, function(key93) { + return isFunction6(object[key93]); }); } - function baseGet(object, path51) { - path51 = castPath(path51, object); - var index = 0, length = path51.length; + function baseGet(object, path50) { + path50 = castPath(path50, object); + var index = 0, length = path50.length; while(object != null && index < length){ - object = object[toKey(path51[index++])]; + object = object[toKey(path50[index++])]; } return index && index == length ? object : undefined; } @@ -36536,23 +38931,23 @@ function dew8() { var result = keysFunc(object); return isArray1(object) ? result : arrayPush(result, symbolsFunc(object)); } - function baseGetTag(value261) { - if (value261 == null) { - return value261 === undefined ? undefinedTag : nullTag; + function baseGetTag(value265) { + if (value265 == null) { + return value265 === undefined ? undefinedTag : nullTag; } - return symToStringTag && symToStringTag in Object(value261) ? getRawTag(value261) : objectToString(value261); + return symToStringTag && symToStringTag in Object(value265) ? getRawTag(value265) : objectToString(value265); } - function baseGt(value262, other) { - return value262 > other; + function baseGt(value266, other) { + return value266 > other; } - function baseHas(object, key92) { - return object != null && hasOwnProperty.call(object, key92); + function baseHas(object, key94) { + return object != null && hasOwnProperty.call(object, key94); } - function baseHasIn(object, key93) { - return object != null && key93 in Object(object); + function baseHasIn(object, key95) { + return object != null && key95 in Object(object); } - function baseInRange(number, start32, end) { - return number >= nativeMin(start32, end) && number < nativeMax(start32, end); + function baseInRange(number, start33, end) { + return number >= nativeMin(start33, end) && number < nativeMax(start33, end); } function baseIntersection(arrays, iteratee, comparator) { var includes3 = comparator ? arrayIncludesWith : arrayIncludes, length = arrays[0].length, othLength = arrays.length, othIndex = othLength, caches = Array(othLength), maxLength = Infinity, result = []; @@ -36567,8 +38962,8 @@ function dew8() { array = arrays[0]; var index = -1, seen = caches[0]; outer: while(++index < length && result.length < maxLength){ - var value263 = array[index], computed = iteratee ? iteratee(value263) : value263; - value263 = comparator || value263 !== 0 ? value263 : 0; + var value267 = array[index], computed = iteratee ? iteratee(value267) : value267; + value267 = comparator || value267 !== 0 ? value267 : 0; if (!(seen ? cacheHas(seen, computed) : includes3(result, computed, comparator))) { othIndex = othLength; while(--othIndex){ @@ -36580,40 +38975,40 @@ function dew8() { if (seen) { seen.push(computed); } - result.push(value263); + result.push(value267); } } return result; } function baseInverter(object1, setter, iteratee, accumulator) { - baseForOwn(object1, function(value264, key94, object) { - setter(accumulator, iteratee(value264), key94, object); + baseForOwn(object1, function(value268, key96, object) { + setter(accumulator, iteratee(value268), key96, object); }); return accumulator; } - function baseInvoke(object, path52, args38) { - path52 = castPath(path52, object); - object = parent1(object, path52); - var func = object == null ? object : object[toKey(last38(path52))]; - return func == null ? undefined : apply(func, object, args38); + function baseInvoke(object, path51, args41) { + path51 = castPath(path51, object); + object = parent1(object, path51); + var func = object == null ? object : object[toKey(last38(path51))]; + return func == null ? undefined : apply(func, object, args41); } - function baseIsArguments(value265) { - return isObjectLike1(value265) && baseGetTag(value265) == argsTag; + function baseIsArguments(value269) { + return isObjectLike1(value269) && baseGetTag(value269) == argsTag; } - function baseIsArrayBuffer(value266) { - return isObjectLike1(value266) && baseGetTag(value266) == arrayBufferTag; + function baseIsArrayBuffer(value270) { + return isObjectLike1(value270) && baseGetTag(value270) == arrayBufferTag; } - function baseIsDate(value267) { - return isObjectLike1(value267) && baseGetTag(value267) == dateTag; + function baseIsDate(value271) { + return isObjectLike1(value271) && baseGetTag(value271) == dateTag; } - function baseIsEqual(value268, other, bitmask, customizer, stack) { - if (value268 === other) { + function baseIsEqual(value272, other, bitmask, customizer, stack) { + if (value272 === other) { return true; } - if (value268 == null || other == null || !isObjectLike1(value268) && !isObjectLike1(other)) { - return value268 !== value268 && other !== other; + if (value272 == null || other == null || !isObjectLike1(value272) && !isObjectLike1(other)) { + return value272 !== value272 && other !== other; } - return baseIsEqualDeep(value268, other, bitmask, customizer, baseIsEqual, stack); + return baseIsEqualDeep(value272, other, bitmask, customizer, baseIsEqual, stack); } function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { var objIsArr = isArray1(object), othIsArr = isArray1(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); @@ -36645,8 +39040,8 @@ function dew8() { stack || (stack = new Stack()); return equalObjects(object, other, bitmask, customizer, equalFunc, stack); } - function baseIsMap(value269) { - return isObjectLike1(value269) && getTag(value269) == mapTag; + function baseIsMap(value273) { + return isObjectLike1(value273) && getTag(value273) == mapTag; } function baseIsMatch(object, source, matchData, customizer) { var index = matchData.length, length = index, noCustomizer = !customizer; @@ -36655,22 +39050,22 @@ function dew8() { } object = Object(object); while(index--){ - var data53 = matchData[index]; - if (noCustomizer && data53[2] ? data53[1] !== object[data53[0]] : !(data53[0] in object)) { + var data55 = matchData[index]; + if (noCustomizer && data55[2] ? data55[1] !== object[data55[0]] : !(data55[0] in object)) { return false; } } while(++index < length){ - data53 = matchData[index]; - var key95 = data53[0], objValue = object[key95], srcValue = data53[1]; - if (noCustomizer && data53[2]) { - if (objValue === undefined && !(key95 in object)) { + data55 = matchData[index]; + var key97 = data55[0], objValue = object[key97], srcValue = data55[1]; + if (noCustomizer && data55[2]) { + if (objValue === undefined && !(key97 in object)) { return false; } } else { var stack = new Stack(); if (customizer) { - var result = customizer(objValue, srcValue, key95, object, source, stack); + var result = customizer(objValue, srcValue, key97, object, source, stack); } if (!(result === undefined ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) : result)) { return false; @@ -36679,42 +39074,42 @@ function dew8() { } return true; } - function baseIsNative(value270) { - if (!isObject8(value270) || isMasked(value270)) { + function baseIsNative(value274) { + if (!isObject8(value274) || isMasked(value274)) { return false; } - var pattern = isFunction6(value270) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value270)); + var pattern = isFunction6(value274) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value274)); } - function baseIsRegExp(value271) { - return isObjectLike1(value271) && baseGetTag(value271) == regexpTag; + function baseIsRegExp(value275) { + return isObjectLike1(value275) && baseGetTag(value275) == regexpTag; } - function baseIsSet(value272) { - return isObjectLike1(value272) && getTag(value272) == setTag; + function baseIsSet(value276) { + return isObjectLike1(value276) && getTag(value276) == setTag; } - function baseIsTypedArray(value273) { - return isObjectLike1(value273) && isLength(value273.length) && !!typedArrayTags[baseGetTag(value273)]; + function baseIsTypedArray(value277) { + return isObjectLike1(value277) && isLength(value277.length) && !!typedArrayTags[baseGetTag(value277)]; } - function baseIteratee(value274) { - if (typeof value274 == 'function') { - return value274; + function baseIteratee(value278) { + if (typeof value278 == 'function') { + return value278; } - if (value274 == null) { + if (value278 == null) { return identity7; } - if (typeof value274 == 'object') { - return isArray1(value274) ? baseMatchesProperty(value274[0], value274[1]) : baseMatches(value274); + if (typeof value278 == 'object') { + return isArray1(value278) ? baseMatchesProperty(value278[0], value278[1]) : baseMatches(value278); } - return property(value274); + return property(value278); } function baseKeys(object) { if (!isPrototype(object)) { return nativeKeys(object); } var result = []; - for(var key96 in Object(object)){ - if (hasOwnProperty.call(object, key96) && key96 != 'constructor') { - result.push(key96); + for(var key98 in Object(object)){ + if (hasOwnProperty.call(object, key98) && key98 != 'constructor') { + result.push(key98); } } return result; @@ -36724,20 +39119,20 @@ function dew8() { return nativeKeysIn(object); } var isProto = isPrototype(object), result = []; - for(var key97 in object){ - if (!(key97 == 'constructor' && (isProto || !hasOwnProperty.call(object, key97)))) { - result.push(key97); + for(var key99 in object){ + if (!(key99 == 'constructor' && (isProto || !hasOwnProperty.call(object, key99)))) { + result.push(key99); } } return result; } - function baseLt(value275, other) { - return value275 < other; + function baseLt(value279, other) { + return value279 < other; } function baseMap(collection6, iteratee) { var index = -1, result = isArrayLike(collection6) ? Array(collection6.length) : []; - baseEach(collection6, function(value276, key98, collection) { - result[++index] = iteratee(value276, key98, collection); + baseEach(collection6, function(value280, key100, collection) { + result[++index] = iteratee(value280, key100, collection); }); return result; } @@ -36750,39 +39145,39 @@ function dew8() { return object === source || baseIsMatch(object, source, matchData); }; } - function baseMatchesProperty(path53, srcValue) { - if (isKey(path53) && isStrictComparable(srcValue)) { - return matchesStrictComparable(toKey(path53), srcValue); + function baseMatchesProperty(path52, srcValue) { + if (isKey(path52) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path52), srcValue); } return function(object) { - var objValue = get2(object, path53); - return objValue === undefined && objValue === srcValue ? hasIn(object, path53) : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + var objValue = get2(object, path52); + return objValue === undefined && objValue === srcValue ? hasIn(object, path52) : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); }; } function baseMerge(object, source, srcIndex, customizer, stack) { if (object === source) { return; } - baseFor(source, function(srcValue, key99) { + baseFor(source, function(srcValue, key101) { stack || (stack = new Stack()); if (isObject8(srcValue)) { - baseMergeDeep(object, source, key99, srcIndex, baseMerge, customizer, stack); + baseMergeDeep(object, source, key101, srcIndex, baseMerge, customizer, stack); } else { - var newValue = customizer ? customizer(safeGet(object, key99), srcValue, key99 + '', object, source, stack) : undefined; + var newValue = customizer ? customizer(safeGet(object, key101), srcValue, key101 + '', object, source, stack) : undefined; if (newValue === undefined) { newValue = srcValue; } - assignMergeValue(object, key99, newValue); + assignMergeValue(object, key101, newValue); } }, keysIn); } - function baseMergeDeep(object, source, key100, srcIndex, mergeFunc, customizer, stack) { - var objValue = safeGet(object, key100), srcValue = safeGet(source, key100), stacked = stack.get(srcValue); + function baseMergeDeep(object, source, key102, srcIndex, mergeFunc, customizer, stack) { + var objValue = safeGet(object, key102), srcValue = safeGet(source, key102), stacked = stack.get(srcValue); if (stacked) { - assignMergeValue(object, key100, stacked); + assignMergeValue(object, key102, stacked); return; } - var newValue = customizer ? customizer(objValue, srcValue, key100 + '', object, source, stack) : undefined; + var newValue = customizer ? customizer(objValue, srcValue, key102 + '', object, source, stack) : undefined; var isCommon = newValue === undefined; if (isCommon) { var isArr = isArray1(srcValue), isBuff = !isArr && isBuffer1(srcValue), isTyped = !isArr && !isBuff && isTypedArray2(srcValue); @@ -36817,22 +39212,22 @@ function dew8() { mergeFunc(newValue, srcValue, srcIndex, customizer, stack); stack['delete'](srcValue); } - assignMergeValue(object, key100, newValue); + assignMergeValue(object, key102, newValue); } - function baseNth(array, n103) { + function baseNth(array, n104) { var length = array.length; if (!length) { return; } - n103 += n103 < 0 ? length : 0; - return isIndex(n103, length) ? array[n103] : undefined; + n104 += n104 < 0 ? length : 0; + return isIndex(n104, length) ? array[n104] : undefined; } function baseOrderBy(collection, iteratees, orders) { if (iteratees.length) { iteratees = arrayMap(iteratees, function(iteratee) { if (isArray1(iteratee)) { - return function(value277) { - return baseGet(value277, iteratee.length === 1 ? iteratee[0] : iteratee); + return function(value281) { + return baseGet(value281, iteratee.length === 1 ? iteratee[0] : iteratee); }; } return iteratee; @@ -36844,14 +39239,14 @@ function dew8() { } var index = -1; iteratees = arrayMap(iteratees, baseUnary(getIteratee())); - var result = baseMap(collection, function(value278, key, collection) { + var result = baseMap(collection, function(value282, key, collection) { var criteria = arrayMap(iteratees, function(iteratee) { - return iteratee(value278); + return iteratee(value282); }); return { 'criteria': criteria, 'index': ++index, - 'value': value278 + 'value': value282 }; }); return baseSortBy(result, function(object, other) { @@ -36859,23 +39254,23 @@ function dew8() { }); } function basePick(object, paths) { - return basePickBy(object, paths, function(value, path54) { - return hasIn(object, path54); + return basePickBy(object, paths, function(value, path53) { + return hasIn(object, path53); }); } function basePickBy(object, paths, predicate) { var index = -1, length = paths.length, result = {}; while(++index < length){ - var path55 = paths[index], value279 = baseGet(object, path55); - if (predicate(value279, path55)) { - baseSet(result, castPath(path55, object), value279); + var path54 = paths[index], value283 = baseGet(object, path54); + if (predicate(value283, path54)) { + baseSet(result, castPath(path54, object), value283); } } return result; } - function basePropertyDeep(path56) { + function basePropertyDeep(path55) { return function(object) { - return baseGet(object, path56); + return baseGet(object, path55); }; } function basePullAll(array, values8, iteratee, comparator) { @@ -36887,7 +39282,7 @@ function dew8() { seen = arrayMap(array, baseUnary(iteratee)); } while(++index < length){ - var fromIndex = 0, value280 = values8[index], computed = iteratee ? iteratee(value280) : value280; + var fromIndex = 0, value284 = values8[index], computed = iteratee ? iteratee(value284) : value284; while((fromIndex = indexOf2(seen, computed, fromIndex, comparator)) > -1){ if (seen !== array) { splice.call(seen, fromIndex, 1); @@ -36915,65 +39310,65 @@ function dew8() { function baseRandom(lower, upper) { return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); } - function baseRange(start33, end, step, fromRight) { - var index = -1, length = nativeMax(nativeCeil((end - start33) / (step || 1)), 0), result = Array(length); + function baseRange(start34, end, step, fromRight) { + var index = -1, length = nativeMax(nativeCeil((end - start34) / (step || 1)), 0), result = Array(length); while(length--){ - result[fromRight ? length : ++index] = start33; - start33 += step; + result[fromRight ? length : ++index] = start34; + start34 += step; } return result; } - function baseRepeat(string, n104) { + function baseRepeat(string, n105) { var result = ''; - if (!string || n104 < 1 || n104 > MAX_SAFE_INTEGER) { + if (!string || n105 < 1 || n105 > MAX_SAFE_INTEGER) { return result; } do { - if (n104 % 2) { + if (n105 % 2) { result += string; } - n104 = nativeFloor(n104 / 2); - if (n104) { + n105 = nativeFloor(n105 / 2); + if (n105) { string += string; } - }while (n104) + }while (n105) return result; } - function baseRest(func, start34) { - return setToString(overRest(func, start34, identity7), func + ''); + function baseRest(func, start35) { + return setToString(overRest(func, start35, identity7), func + ''); } function baseSample(collection) { return arraySample(values1(collection)); } - function baseSampleSize(collection, n105) { + function baseSampleSize(collection, n106) { var array = values1(collection); - return shuffleSelf(array, baseClamp(n105, 0, array.length)); + return shuffleSelf(array, baseClamp(n106, 0, array.length)); } - function baseSet(object, path57, value281, customizer) { + function baseSet(object, path56, value285, customizer) { if (!isObject8(object)) { return object; } - path57 = castPath(path57, object); - var index = -1, length = path57.length, lastIndex = length - 1, nested = object; + path56 = castPath(path56, object); + var index = -1, length = path56.length, lastIndex = length - 1, nested = object; while(nested != null && ++index < length){ - var key101 = toKey(path57[index]), newValue = value281; - if (key101 === '__proto__' || key101 === 'constructor' || key101 === 'prototype') { + var key103 = toKey(path56[index]), newValue = value285; + if (key103 === '__proto__' || key103 === 'constructor' || key103 === 'prototype') { return object; } if (index != lastIndex) { - var objValue = nested[key101]; - newValue = customizer ? customizer(objValue, key101, nested) : undefined; + var objValue = nested[key103]; + newValue = customizer ? customizer(objValue, key103, nested) : undefined; if (newValue === undefined) { - newValue = isObject8(objValue) ? objValue : isIndex(path57[index + 1]) ? [] : {}; + newValue = isObject8(objValue) ? objValue : isIndex(path56[index + 1]) ? [] : {}; } } - assignValue(nested, key101, newValue); - nested = nested[key101]; + assignValue(nested, key103, newValue); + nested = nested[key103]; } return object; } - var baseSetData = !metaMap ? identity7 : function(func, data54) { - metaMap.set(func, data54); + var baseSetData = !metaMap ? identity7 : function(func, data56) { + metaMap.set(func, data56); return func; }; var baseSetToString = !defineProperty ? identity7 : function(func, string) { @@ -36987,37 +39382,37 @@ function dew8() { function baseShuffle(collection) { return shuffleSelf(values1(collection)); } - function baseSlice(array, start35, end) { + function baseSlice(array, start36, end) { var index = -1, length = array.length; - if (start35 < 0) { - start35 = -start35 > length ? 0 : length + start35; + if (start36 < 0) { + start36 = -start36 > length ? 0 : length + start36; } end = end > length ? length : end; if (end < 0) { end += length; } - length = start35 > end ? 0 : end - start35 >>> 0; - start35 >>>= 0; + length = start36 > end ? 0 : end - start36 >>> 0; + start36 >>>= 0; var result = Array(length); while(++index < length){ - result[index] = array[index + start35]; + result[index] = array[index + start36]; } return result; } function baseSome(collection7, predicate) { var result; - baseEach(collection7, function(value282, index, collection) { - result = predicate(value282, index, collection); + baseEach(collection7, function(value286, index, collection) { + result = predicate(value286, index, collection); return !result; }); return !!result; } - function baseSortedIndex(array, value283, retHighest) { + function baseSortedIndex(array, value287, retHighest) { var low = 0, high = array == null ? low : array.length; - if (typeof value283 == 'number' && value283 === value283 && high <= HALF_MAX_ARRAY_LENGTH) { + if (typeof value287 == 'number' && value287 === value287 && high <= HALF_MAX_ARRAY_LENGTH) { while(low < high){ var mid = low + high >>> 1, computed = array[mid]; - if (computed !== null && !isSymbol1(computed) && (retHighest ? computed <= value283 : computed < value283)) { + if (computed !== null && !isSymbol1(computed) && (retHighest ? computed <= value287 : computed < value287)) { low = mid + 1; } else { high = mid; @@ -37025,15 +39420,15 @@ function dew8() { } return high; } - return baseSortedIndexBy(array, value283, identity7, retHighest); + return baseSortedIndexBy(array, value287, identity7, retHighest); } - function baseSortedIndexBy(array, value284, iteratee, retHighest) { + function baseSortedIndexBy(array, value288, iteratee, retHighest) { var low = 0, high = array == null ? 0 : array.length; if (high === 0) { return 0; } - value284 = iteratee(value284); - var valIsNaN = value284 !== value284, valIsNull = value284 === null, valIsSymbol = isSymbol1(value284), valIsUndefined = value284 === undefined; + value288 = iteratee(value288); + var valIsNaN = value288 !== value288, valIsNull = value288 === null, valIsSymbol = isSymbol1(value288), valIsUndefined = value288 === undefined; while(low < high){ var mid = nativeFloor((low + high) / 2), computed = iteratee(array[mid]), othIsDefined = computed !== undefined, othIsNull = computed === null, othIsReflexive = computed === computed, othIsSymbol = isSymbol1(computed); if (valIsNaN) { @@ -37047,7 +39442,7 @@ function dew8() { } else if (othIsNull || othIsSymbol) { setLow = false; } else { - setLow = retHighest ? computed <= value284 : computed < value284; + setLow = retHighest ? computed <= value288 : computed < value288; } if (setLow) { low = mid + 1; @@ -37060,35 +39455,35 @@ function dew8() { function baseSortedUniq(array, iteratee) { var index = -1, length = array.length, resIndex = 0, result = []; while(++index < length){ - var value285 = array[index], computed = iteratee ? iteratee(value285) : value285; + var value289 = array[index], computed = iteratee ? iteratee(value289) : value289; if (!index || !eq(computed, seen)) { var seen = computed; - result[resIndex++] = value285 === 0 ? 0 : value285; + result[resIndex++] = value289 === 0 ? 0 : value289; } } return result; } - function baseToNumber(value286) { - if (typeof value286 == 'number') { - return value286; + function baseToNumber(value290) { + if (typeof value290 == 'number') { + return value290; } - if (isSymbol1(value286)) { + if (isSymbol1(value290)) { return NAN; } - return +value286; + return +value290; } - function baseToString(value287) { - if (typeof value287 == 'string') { - return value287; + function baseToString(value291) { + if (typeof value291 == 'string') { + return value291; } - if (isArray1(value287)) { - return arrayMap(value287, baseToString) + ''; + if (isArray1(value291)) { + return arrayMap(value291, baseToString) + ''; } - if (isSymbol1(value287)) { - return symbolToString ? symbolToString.call(value287) : ''; + if (isSymbol1(value291)) { + return symbolToString ? symbolToString.call(value291) : ''; } - var result = value287 + ''; - return result == '0' && 1 / value287 == -INFINITY ? '-0' : result; + var result = value291 + ''; + return result == '0' && 1 / value291 == -INFINITY ? '-0' : result; } function baseUniq(array, iteratee, comparator) { var index = -1, includes4 = arrayIncludes, length = array.length, isCommon = true, result = [], seen = result; @@ -37107,8 +39502,8 @@ function dew8() { seen = iteratee ? [] : result; } outer: while(++index < length){ - var value288 = array[index], computed = iteratee ? iteratee(value288) : value288; - value288 = comparator || value288 !== 0 ? value288 : 0; + var value292 = array[index], computed = iteratee ? iteratee(value292) : value292; + value292 = comparator || value292 !== 0 ? value292 : 0; if (isCommon && computed === computed) { var seenIndex = seen.length; while(seenIndex--){ @@ -37119,31 +39514,31 @@ function dew8() { if (iteratee) { seen.push(computed); } - result.push(value288); + result.push(value292); } else if (!includes4(seen, computed, comparator)) { if (seen !== result) { seen.push(computed); } - result.push(value288); + result.push(value292); } } return result; } - function baseUnset(object, path58) { - path58 = castPath(path58, object); - object = parent1(object, path58); - return object == null || delete object[toKey(last38(path58))]; + function baseUnset(object, path57) { + path57 = castPath(path57, object); + object = parent1(object, path57); + return object == null || delete object[toKey(last38(path57))]; } - function baseUpdate(object, path59, updater, customizer) { - return baseSet(object, path59, updater(baseGet(object, path59)), customizer); + function baseUpdate(object, path58, updater, customizer) { + return baseSet(object, path58, updater(baseGet(object, path58)), customizer); } function baseWhile(array, predicate, isDrop, fromRight) { var length = array.length, index = fromRight ? length : -1; while((fromRight ? index-- : ++index < length) && predicate(array[index], index, array)){} return isDrop ? baseSlice(array, fromRight ? 0 : index, fromRight ? index + 1 : length) : baseSlice(array, fromRight ? index + 1 : 0, fromRight ? length : index); } - function baseWrapperValue(value289, actions) { - var result2 = value289; + function baseWrapperValue(value293, actions) { + var result2 = value293; if (result2 instanceof LazyWrapper) { result2 = result2.value(); } @@ -37172,30 +39567,30 @@ function dew8() { function baseZipObject(props, values9, assignFunc) { var index = -1, length = props.length, valsLength = values9.length, result = {}; while(++index < length){ - var value290 = index < valsLength ? values9[index] : undefined; - assignFunc(result, props[index], value290); + var value294 = index < valsLength ? values9[index] : undefined; + assignFunc(result, props[index], value294); } return result; } - function castArrayLikeObject(value291) { - return isArrayLikeObject(value291) ? value291 : []; + function castArrayLikeObject(value295) { + return isArrayLikeObject(value295) ? value295 : []; } - function castFunction(value292) { - return typeof value292 == 'function' ? value292 : identity7; + function castFunction(value296) { + return typeof value296 == 'function' ? value296 : identity7; } - function castPath(value293, object) { - if (isArray1(value293)) { - return value293; + function castPath(value297, object) { + if (isArray1(value297)) { + return value297; } - return isKey(value293, object) ? [ - value293 - ] : stringToPath(toString(value293)); + return isKey(value297, object) ? [ + value297 + ] : stringToPath(toString(value297)); } var castRest = baseRest; - function castSlice(array, start36, end) { + function castSlice(array, start37, end) { var length = array.length; end = end === undefined ? length : end; - return !start36 && end >= length ? array : baseSlice(array, start36, end); + return !start37 && end >= length ? array : baseSlice(array, start37, end); } var clearTimeout = ctxClearTimeout || function(id) { return root.clearTimeout(id); @@ -37229,14 +39624,14 @@ function dew8() { var buffer31 = isDeep ? cloneArrayBuffer1(typedArray.buffer) : typedArray.buffer; return new typedArray.constructor(buffer31, typedArray.byteOffset, typedArray.length); } - function compareAscending(value294, other) { - if (value294 !== other) { - var valIsDefined = value294 !== undefined, valIsNull = value294 === null, valIsReflexive = value294 === value294, valIsSymbol = isSymbol1(value294); + function compareAscending(value298, other) { + if (value298 !== other) { + var valIsDefined = value298 !== undefined, valIsNull = value298 === null, valIsReflexive = value298 === value298, valIsSymbol = isSymbol1(value298); var othIsDefined = other !== undefined, othIsNull = other === null, othIsReflexive = other === other, othIsSymbol = isSymbol1(other); - if (!othIsNull && !othIsSymbol && !valIsSymbol && value294 > other || valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol || valIsNull && othIsDefined && othIsReflexive || !valIsDefined && othIsReflexive || !valIsReflexive) { + if (!othIsNull && !othIsSymbol && !valIsSymbol && value298 > other || valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol || valIsNull && othIsDefined && othIsReflexive || !valIsDefined && othIsReflexive || !valIsReflexive) { return 1; } - if (!valIsNull && !valIsSymbol && !othIsSymbol && value294 < other || othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol || othIsNull && valIsDefined && valIsReflexive || !othIsDefined && valIsReflexive || !othIsReflexive) { + if (!valIsNull && !valIsSymbol && !othIsSymbol && value298 < other || othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol || othIsNull && valIsDefined && valIsReflexive || !othIsDefined && valIsReflexive || !othIsReflexive) { return -1; } } @@ -37256,25 +39651,25 @@ function dew8() { } return object.index - other.index; } - function composeArgs(args39, partials, holders, isCurried) { - var argsIndex = -1, argsLength = args39.length, holdersLength = holders.length, leftIndex = -1, leftLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result = Array(leftLength + rangeLength), isUncurried = !isCurried; + function composeArgs(args42, partials, holders, isCurried) { + var argsIndex = -1, argsLength = args42.length, holdersLength = holders.length, leftIndex = -1, leftLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result = Array(leftLength + rangeLength), isUncurried = !isCurried; while(++leftIndex < leftLength){ result[leftIndex] = partials[leftIndex]; } while(++argsIndex < holdersLength){ if (isUncurried || argsIndex < argsLength) { - result[holders[argsIndex]] = args39[argsIndex]; + result[holders[argsIndex]] = args42[argsIndex]; } } while(rangeLength--){ - result[leftIndex++] = args39[argsIndex++]; + result[leftIndex++] = args42[argsIndex++]; } return result; } - function composeArgsRight(args40, partials, holders, isCurried) { - var argsIndex = -1, argsLength = args40.length, holdersIndex = -1, holdersLength = holders.length, rightIndex = -1, rightLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result = Array(rangeLength + rightLength), isUncurried = !isCurried; + function composeArgsRight(args43, partials, holders, isCurried) { + var argsIndex = -1, argsLength = args43.length, holdersIndex = -1, holdersLength = holders.length, rightIndex = -1, rightLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result = Array(rangeLength + rightLength), isUncurried = !isCurried; while(++argsIndex < rangeLength){ - result[argsIndex] = args40[argsIndex]; + result[argsIndex] = args43[argsIndex]; } var offset116 = argsIndex; while(++rightIndex < rightLength){ @@ -37282,7 +39677,7 @@ function dew8() { } while(++holdersIndex < holdersLength){ if (isUncurried || argsIndex < argsLength) { - result[offset116 + holders[holdersIndex]] = args40[argsIndex++]; + result[offset116 + holders[holdersIndex]] = args43[argsIndex++]; } } return result; @@ -37300,15 +39695,15 @@ function dew8() { object || (object = {}); var index = -1, length = props.length; while(++index < length){ - var key102 = props[index]; - var newValue = customizer ? customizer(object[key102], source[key102], key102, object, source) : undefined; + var key104 = props[index]; + var newValue = customizer ? customizer(object[key104], source[key104], key104, object, source) : undefined; if (newValue === undefined) { - newValue = source[key102]; + newValue = source[key104]; } if (isNew) { - baseAssignValue(object, key102, newValue); + baseAssignValue(object, key104, newValue); } else { - assignValue(object, key102, newValue); + assignValue(object, key104, newValue); } } return object; @@ -37364,8 +39759,8 @@ function dew8() { return function(object, iteratee, keysFunc) { var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; while(length--){ - var key103 = props[fromRight ? length : ++index]; - if (iteratee(iterable[key103], key103, iterable) === false) { + var key105 = props[fromRight ? length : ++index]; + if (iteratee(iterable[key105], key105, iterable) === false) { break; } } @@ -37396,43 +39791,43 @@ function dew8() { } function createCtor(Ctor) { return function() { - var args41 = arguments; - switch(args41.length){ + var args44 = arguments; + switch(args44.length){ case 0: return new Ctor(); case 1: - return new Ctor(args41[0]); + return new Ctor(args44[0]); case 2: - return new Ctor(args41[0], args41[1]); + return new Ctor(args44[0], args44[1]); case 3: - return new Ctor(args41[0], args41[1], args41[2]); + return new Ctor(args44[0], args44[1], args44[2]); case 4: - return new Ctor(args41[0], args41[1], args41[2], args41[3]); + return new Ctor(args44[0], args44[1], args44[2], args44[3]); case 5: - return new Ctor(args41[0], args41[1], args41[2], args41[3], args41[4]); + return new Ctor(args44[0], args44[1], args44[2], args44[3], args44[4]); case 6: - return new Ctor(args41[0], args41[1], args41[2], args41[3], args41[4], args41[5]); + return new Ctor(args44[0], args44[1], args44[2], args44[3], args44[4], args44[5]); case 7: - return new Ctor(args41[0], args41[1], args41[2], args41[3], args41[4], args41[5], args41[6]); + return new Ctor(args44[0], args44[1], args44[2], args44[3], args44[4], args44[5], args44[6]); } - var thisBinding = baseCreate(Ctor.prototype), result = Ctor.apply(thisBinding, args41); + var thisBinding = baseCreate(Ctor.prototype), result = Ctor.apply(thisBinding, args44); return isObject8(result) ? result : thisBinding; }; } function createCurry(func, bitmask, arity) { var Ctor = createCtor(func); function wrapper() { - var length = arguments.length, args42 = Array(length), index = length, placeholder = getHolder(wrapper); + var length = arguments.length, args45 = Array(length), index = length, placeholder = getHolder(wrapper); while(index--){ - args42[index] = arguments[index]; + args45[index] = arguments[index]; } - var holders = length < 3 && args42[0] !== placeholder && args42[length - 1] !== placeholder ? [] : replaceHolders(args42, placeholder); + var holders = length < 3 && args45[0] !== placeholder && args45[length - 1] !== placeholder ? [] : replaceHolders(args45, placeholder); length -= holders.length; if (length < arity) { - return createRecurry(func, bitmask, createHybrid, wrapper.placeholder, undefined, args42, holders, undefined, undefined, arity - length); + return createRecurry(func, bitmask, createHybrid, wrapper.placeholder, undefined, args45, holders, undefined, undefined, arity - length); } var fn = (this || _global) && (this || _global) !== root && (this || _global) instanceof wrapper ? Ctor : func; - return apply(fn, this || _global, args42); + return apply(fn, this || _global, args45); } return wrapper; } @@ -37442,8 +39837,8 @@ function dew8() { if (!isArrayLike(collection)) { var iteratee = getIteratee(predicate, 3); collection = keys(collection); - predicate = function(key104) { - return iteratee(iterable[key104], key104, iterable); + predicate = function(key106) { + return iteratee(iterable[key106], key106, iterable); }; } var index = findIndexFunc(collection, predicate, fromIndex); @@ -37468,19 +39863,19 @@ function dew8() { index1 = wrapper ? index1 : length; while(++index1 < length){ func = funcs[index1]; - var funcName = getFuncName(func), data55 = funcName == 'wrapper' ? getData(func) : undefined; - if (data55 && isLaziable(data55[0]) && data55[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && !data55[4].length && data55[9] == 1) { - wrapper = wrapper[getFuncName(data55[0])].apply(wrapper, data55[3]); + var funcName = getFuncName(func), data57 = funcName == 'wrapper' ? getData(func) : undefined; + if (data57 && isLaziable(data57[0]) && data57[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && !data57[4].length && data57[9] == 1) { + wrapper = wrapper[getFuncName(data57[0])].apply(wrapper, data57[3]); } else { wrapper = func.length == 1 && isLaziable(func) ? wrapper[funcName]() : wrapper.thru(func); } } return function() { - var args43 = arguments, value295 = args43[0]; - if (wrapper && args43.length == 1 && isArray1(value295)) { - return wrapper.plant(value295).value(); + var args46 = arguments, value299 = args46[0]; + if (wrapper && args46.length == 1 && isArray1(value299)) { + return wrapper.plant(value299).value(); } - var index = 0, result = length ? funcs[index].apply(this || _global, args43) : value295; + var index = 0, result = length ? funcs[index].apply(this || _global, args46) : value299; while(++index < length){ result = funcs[index].call(this || _global, result); } @@ -37491,38 +39886,38 @@ function dew8() { function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { var isAry = bitmask & WRAP_ARY_FLAG, isBind = bitmask & WRAP_BIND_FLAG, isBindKey = bitmask & WRAP_BIND_KEY_FLAG, isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), isFlip = bitmask & WRAP_FLIP_FLAG, Ctor = isBindKey ? undefined : createCtor(func); function wrapper() { - var length = arguments.length, args44 = Array(length), index = length; + var length = arguments.length, args47 = Array(length), index = length; while(index--){ - args44[index] = arguments[index]; + args47[index] = arguments[index]; } if (isCurried) { - var placeholder = getHolder(wrapper), holdersCount = countHolders(args44, placeholder); + var placeholder = getHolder(wrapper), holdersCount = countHolders(args47, placeholder); } if (partials) { - args44 = composeArgs(args44, partials, holders, isCurried); + args47 = composeArgs(args47, partials, holders, isCurried); } if (partialsRight) { - args44 = composeArgsRight(args44, partialsRight, holdersRight, isCurried); + args47 = composeArgsRight(args47, partialsRight, holdersRight, isCurried); } length -= holdersCount; if (isCurried && length < arity) { - var newHolders = replaceHolders(args44, placeholder); - return createRecurry(func, bitmask, createHybrid, wrapper.placeholder, thisArg, args44, newHolders, argPos, ary, arity - length); + var newHolders = replaceHolders(args47, placeholder); + return createRecurry(func, bitmask, createHybrid, wrapper.placeholder, thisArg, args47, newHolders, argPos, ary, arity - length); } var thisBinding = isBind ? thisArg : this || _global, fn = isBindKey ? thisBinding[func] : func; - length = args44.length; + length = args47.length; if (argPos) { - args44 = reorder(args44, argPos); + args47 = reorder(args47, argPos); } else if (isFlip && length > 1) { - args44.reverse(); + args47.reverse(); } if (isAry && ary < length) { - args44.length = ary; + args47.length = ary; } if ((this || _global) && (this || _global) !== root && (this || _global) instanceof wrapper) { fn = Ctor || createCtor(fn); } - return fn.apply(thisBinding, args44); + return fn.apply(thisBinding, args47); } return wrapper; } @@ -37532,26 +39927,26 @@ function dew8() { }; } function createMathOperation(operator, defaultValue) { - return function(value296, other) { + return function(value300, other) { var result; - if (value296 === undefined && other === undefined) { + if (value300 === undefined && other === undefined) { return defaultValue; } - if (value296 !== undefined) { - result = value296; + if (value300 !== undefined) { + result = value300; } if (other !== undefined) { if (result === undefined) { return other; } - if (typeof value296 == 'string' || typeof other == 'string') { - value296 = baseToString(value296); + if (typeof value300 == 'string' || typeof other == 'string') { + value300 = baseToString(value300); other = baseToString(other); } else { - value296 = baseToNumber(value296); + value300 = baseToNumber(value300); other = baseToNumber(other); } - result = operator(value296, other); + result = operator(value300, other); } return result; }; @@ -37559,10 +39954,10 @@ function dew8() { function createOver(arrayFunc) { return flatRest(function(iteratees) { iteratees = arrayMap(iteratees, baseUnary(getIteratee())); - return baseRest(function(args45) { + return baseRest(function(args48) { var thisArg = this || _global; return arrayFunc(iteratees, function(iteratee) { - return apply(iteratee, thisArg, args45); + return apply(iteratee, thisArg, args48); }); }); }); @@ -37579,40 +39974,40 @@ function dew8() { function createPartial(func, bitmask, thisArg, partials) { var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func); function wrapper() { - var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args46 = Array(leftLength + argsLength), fn = (this || _global) && (this || _global) !== root && (this || _global) instanceof wrapper ? Ctor : func; + var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args49 = Array(leftLength + argsLength), fn = (this || _global) && (this || _global) !== root && (this || _global) instanceof wrapper ? Ctor : func; while(++leftIndex < leftLength){ - args46[leftIndex] = partials[leftIndex]; + args49[leftIndex] = partials[leftIndex]; } while(argsLength--){ - args46[leftIndex++] = arguments[++argsIndex]; + args49[leftIndex++] = arguments[++argsIndex]; } - return apply(fn, isBind ? thisArg : this || _global, args46); + return apply(fn, isBind ? thisArg : this || _global, args49); } return wrapper; } function createRange(fromRight) { - return function(start37, end, step) { - if (step && typeof step != 'number' && isIterateeCall(start37, end, step)) { + return function(start38, end, step) { + if (step && typeof step != 'number' && isIterateeCall(start38, end, step)) { end = step = undefined; } - start37 = toFinite(start37); + start38 = toFinite(start38); if (end === undefined) { - end = start37; - start37 = 0; + end = start38; + start38 = 0; } else { end = toFinite(end); } - step = step === undefined ? start37 < end ? 1 : -1 : toFinite(step); - return baseRange(start37, end, step, fromRight); + step = step === undefined ? start38 < end ? 1 : -1 : toFinite(step); + return baseRange(start38, end, step, fromRight); }; } function createRelationalOperation(operator) { - return function(value297, other) { - if (!(typeof value297 == 'string' && typeof other == 'string')) { - value297 = toNumber(value297); + return function(value301, other) { + if (!(typeof value301 == 'string' && typeof other == 'string')) { + value301 = toNumber(value301); other = toNumber(other); } - return operator(value297, other); + return operator(value301, other); }; } function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { @@ -37647,8 +40042,8 @@ function dew8() { number = toNumber(number); precision = precision == null ? 0 : nativeMin(toInteger1(precision), 292); if (precision && nativeIsFinite(number)) { - var pair = (toString(number) + 'e').split('e'), value298 = func(pair[0] + 'e' + (+pair[1] + precision)); - pair = (toString(value298) + 'e').split('e'); + var pair = (toString(number) + 'e').split('e'), value302 = func(pair[0] + 'e' + (+pair[1] + precision)); + pair = (toString(value302) + 'e').split('e'); return +(pair[0] + 'e' + (+pair[1] - precision)); } return func(number); @@ -37689,7 +40084,7 @@ function dew8() { var partialsRight = partials, holdersRight = holders; partials = holders = undefined; } - var data56 = isBindKey ? undefined : getData(func); + var data58 = isBindKey ? undefined : getData(func); var newData = [ func, bitmask, @@ -37702,8 +40097,8 @@ function dew8() { ary, arity ]; - if (data56) { - mergeData(newData, data56); + if (data58) { + mergeData(newData, data58); } func = newData[0]; bitmask = newData[1]; @@ -37723,11 +40118,11 @@ function dew8() { } else { result = createHybrid.apply(undefined, newData); } - var setter = data56 ? baseSetData : setData; + var setter = data58 ? baseSetData : setData; return setWrapToString(setter(result, newData), func, bitmask); } - function customDefaultsAssignIn(objValue, srcValue, key105, object) { - if (objValue === undefined || eq(objValue, objectProto[key105]) && !hasOwnProperty.call(object, key105)) { + function customDefaultsAssignIn(objValue, srcValue, key107, object) { + if (objValue === undefined || eq(objValue, objectProto[key107]) && !hasOwnProperty.call(object, key107)) { return srcValue; } return objValue; @@ -37740,8 +40135,8 @@ function dew8() { } return objValue; } - function customOmitClone(value299) { - return isPlainObject5(value299) ? undefined : value299; + function customOmitClone(value303) { + return isPlainObject5(value303) ? undefined : value303; } function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; @@ -37839,8 +40234,8 @@ function dew8() { } var index = objLength; while(index--){ - var key106 = objProps[index]; - if (!(isPartial ? key106 in other : hasOwnProperty.call(other, key106))) { + var key108 = objProps[index]; + if (!(isPartial ? key108 in other : hasOwnProperty.call(other, key108))) { return false; } } @@ -37854,16 +40249,16 @@ function dew8() { stack.set(other, object); var skipCtor = isPartial; while(++index < objLength){ - key106 = objProps[index]; - var objValue = object[key106], othValue = other[key106]; + key108 = objProps[index]; + var objValue = object[key108], othValue = other[key108]; if (customizer) { - var compared = isPartial ? customizer(othValue, objValue, key106, other, object, stack) : customizer(objValue, othValue, key106, object, other, stack); + var compared = isPartial ? customizer(othValue, objValue, key108, other, object, stack) : customizer(objValue, othValue, key108, object, other, stack); } if (!(compared === undefined ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack) : compared)) { result = false; break; } - skipCtor || (skipCtor = key106 == 'constructor'); + skipCtor || (skipCtor = key108 == 'constructor'); } if (result && !skipCtor) { var objCtor = object.constructor, othCtor = other.constructor; @@ -37890,9 +40285,9 @@ function dew8() { function getFuncName(func) { var result = func.name + '', array = realNames[result], length = hasOwnProperty.call(realNames, result) ? array.length : 0; while(length--){ - var data57 = array[length], otherFunc = data57.func; + var data59 = array[length], otherFunc = data59.func; if (otherFunc == null || otherFunc == func) { - return data57.name; + return data59.name; } } return result; @@ -37906,38 +40301,38 @@ function dew8() { result = result === iteratee1 ? baseIteratee : result; return arguments.length ? result(arguments[0], arguments[1]) : result; } - function getMapData(map10, key107) { - var data58 = map10.__data__; - return isKeyable(key107) ? data58[typeof key107 == 'string' ? 'string' : 'hash'] : data58.map; + function getMapData(map10, key109) { + var data60 = map10.__data__; + return isKeyable(key109) ? data60[typeof key109 == 'string' ? 'string' : 'hash'] : data60.map; } function getMatchData(object) { var result = keys(object), length = result.length; while(length--){ - var key108 = result[length], value300 = object[key108]; + var key110 = result[length], value304 = object[key110]; result[length] = [ - key108, - value300, - isStrictComparable(value300) + key110, + value304, + isStrictComparable(value304) ]; } return result; } - function getNative(object, key109) { - var value301 = getValue(object, key109); - return baseIsNative(value301) ? value301 : undefined; + function getNative(object, key111) { + var value305 = getValue(object, key111); + return baseIsNative(value305) ? value305 : undefined; } - function getRawTag(value302) { - var isOwn = hasOwnProperty.call(value302, symToStringTag), tag = value302[symToStringTag]; + function getRawTag(value306) { + var isOwn = hasOwnProperty.call(value306, symToStringTag), tag = value306[symToStringTag]; try { - value302[symToStringTag] = undefined; + value306[symToStringTag] = undefined; var unmasked = true; } catch (e) {} - var result = nativeObjectToString.call(value302); + var result = nativeObjectToString.call(value306); if (unmasked) { if (isOwn) { - value302[symToStringTag] = tag; + value306[symToStringTag] = tag; } else { - delete value302[symToStringTag]; + delete value306[symToStringTag]; } } return result; @@ -37961,8 +40356,8 @@ function dew8() { }; var getTag = baseGetTag; if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag || Map && getTag(new Map()) != mapTag || Promise && getTag(Promise.resolve()) != promiseTag || Set && getTag(new Set()) != setTag || WeakMap && getTag(new WeakMap()) != weakMapTag) { - getTag = function(value303) { - var result = baseGetTag(value303), Ctor = result == objectTag ? value303.constructor : undefined, ctorString = Ctor ? toSource(Ctor) : ''; + getTag = function(value307) { + var result = baseGetTag(value307), Ctor = result == objectTag ? value307.constructor : undefined, ctorString = Ctor ? toSource(Ctor) : ''; if (ctorString) { switch(ctorString){ case dataViewCtorString: @@ -37980,49 +40375,49 @@ function dew8() { return result; }; } - function getView(start38, end, transforms) { + function getView(start39, end, transforms) { var index = -1, length = transforms.length; while(++index < length){ - var data59 = transforms[index], size = data59.size; - switch(data59.type){ + var data61 = transforms[index], size = data61.size; + switch(data61.type){ case 'drop': - start38 += size; + start39 += size; break; case 'dropRight': end -= size; break; case 'take': - end = nativeMin(end, start38 + size); + end = nativeMin(end, start39 + size); break; case 'takeRight': - start38 = nativeMax(start38, end - size); + start39 = nativeMax(start39, end - size); break; } } return { - 'start': start38, + 'start': start39, 'end': end }; } function getWrapDetails(source) { - var match15 = source.match(reWrapDetails); - return match15 ? match15[1].split(reSplitDetails) : []; + var match12 = source.match(reWrapDetails); + return match12 ? match12[1].split(reSplitDetails) : []; } - function hasPath(object, path60, hasFunc) { - path60 = castPath(path60, object); - var index = -1, length = path60.length, result = false; + function hasPath(object, path59, hasFunc) { + path59 = castPath(path59, object); + var index = -1, length = path59.length, result = false; while(++index < length){ - var key110 = toKey(path60[index]); - if (!(result = object != null && hasFunc(object, key110))) { + var key112 = toKey(path59[index]); + if (!(result = object != null && hasFunc(object, key112))) { break; } - object = object[key110]; + object = object[key112]; } if (result || ++index != length) { return result; } length = object == null ? 0 : object.length; - return !!length && isLength(length) && isIndex(key110, length) && (isArray1(object) || isArguments(object)); + return !!length && isLength(length) && isIndex(key112, length) && (isArray1(object) || isArguments(object)); } function initCloneArray(array) { var length = array.length, result = new array.constructor(length); @@ -38078,37 +40473,37 @@ function dew8() { details = details.join(length > 2 ? ', ' : ' '); return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); } - function isFlattenable(value304) { - return isArray1(value304) || isArguments(value304) || !!(spreadableSymbol && value304 && value304[spreadableSymbol]); + function isFlattenable(value308) { + return isArray1(value308) || isArguments(value308) || !!(spreadableSymbol && value308 && value308[spreadableSymbol]); } - function isIndex(value305, length) { - var type46 = typeof value305; + function isIndex(value309, length) { + var type39 = typeof value309; length = length == null ? MAX_SAFE_INTEGER : length; - return !!length && (type46 == 'number' || type46 != 'symbol' && reIsUint.test(value305)) && value305 > -1 && value305 % 1 == 0 && value305 < length; + return !!length && (type39 == 'number' || type39 != 'symbol' && reIsUint.test(value309)) && value309 > -1 && value309 % 1 == 0 && value309 < length; } - function isIterateeCall(value306, index, object) { + function isIterateeCall(value310, index, object) { if (!isObject8(object)) { return false; } - var type47 = typeof index; - if (type47 == 'number' ? isArrayLike(object) && isIndex(index, object.length) : type47 == 'string' && index in object) { - return eq(object[index], value306); + var type40 = typeof index; + if (type40 == 'number' ? isArrayLike(object) && isIndex(index, object.length) : type40 == 'string' && index in object) { + return eq(object[index], value310); } return false; } - function isKey(value307, object) { - if (isArray1(value307)) { + function isKey(value311, object) { + if (isArray1(value311)) { return false; } - var type48 = typeof value307; - if (type48 == 'number' || type48 == 'symbol' || type48 == 'boolean' || value307 == null || isSymbol1(value307)) { + var type41 = typeof value311; + if (type41 == 'number' || type41 == 'symbol' || type41 == 'boolean' || value311 == null || isSymbol1(value311)) { return true; } - return reIsPlainProp.test(value307) || !reIsDeepProp.test(value307) || object != null && value307 in Object(object); + return reIsPlainProp.test(value311) || !reIsDeepProp.test(value311) || object != null && value311 in Object(object); } - function isKeyable(value308) { - var type49 = typeof value308; - return type49 == 'string' || type49 == 'number' || type49 == 'symbol' || type49 == 'boolean' ? value308 !== '__proto__' : value308 === null; + function isKeyable(value312) { + var type42 = typeof value312; + return type42 == 'string' || type42 == 'number' || type42 == 'symbol' || type42 == 'boolean' ? value312 !== '__proto__' : value312 === null; } function isLaziable(func) { var funcName = getFuncName(func), other = lodash[funcName]; @@ -38118,104 +40513,104 @@ function dew8() { if (func === other) { return true; } - var data60 = getData(other); - return !!data60 && func === data60[0]; + var data62 = getData(other); + return !!data62 && func === data62[0]; } function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } var isMaskable = coreJsData ? isFunction6 : stubFalse; - function isPrototype(value309) { - var Ctor = value309 && value309.constructor, proto = typeof Ctor == 'function' && Ctor.prototype || objectProto; - return value309 === proto; + function isPrototype(value313) { + var Ctor = value313 && value313.constructor, proto = typeof Ctor == 'function' && Ctor.prototype || objectProto; + return value313 === proto; } - function isStrictComparable(value310) { - return value310 === value310 && !isObject8(value310); + function isStrictComparable(value314) { + return value314 === value314 && !isObject8(value314); } - function matchesStrictComparable(key111, srcValue) { + function matchesStrictComparable(key113, srcValue) { return function(object) { if (object == null) { return false; } - return object[key111] === srcValue && (srcValue !== undefined || key111 in Object(object)); + return object[key113] === srcValue && (srcValue !== undefined || key113 in Object(object)); }; } function memoizeCapped(func) { - var result = memoize(func, function(key112) { + var result = memoize(func, function(key114) { if (cache.size === MAX_MEMOIZE_SIZE) { cache.clear(); } - return key112; + return key114; }); var cache = result.cache; return result; } - function mergeData(data61, source) { - var bitmask = data61[1], srcBitmask = source[1], newBitmask = bitmask | srcBitmask, isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); - var isCombo = srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_CURRY_FLAG || srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_REARG_FLAG && data61[7].length <= source[8] || srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG) && source[7].length <= source[8] && bitmask == WRAP_CURRY_FLAG; + function mergeData(data63, source) { + var bitmask = data63[1], srcBitmask = source[1], newBitmask = bitmask | srcBitmask, isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); + var isCombo = srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_CURRY_FLAG || srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_REARG_FLAG && data63[7].length <= source[8] || srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG) && source[7].length <= source[8] && bitmask == WRAP_CURRY_FLAG; if (!(isCommon || isCombo)) { - return data61; + return data63; } if (srcBitmask & WRAP_BIND_FLAG) { - data61[2] = source[2]; + data63[2] = source[2]; newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; } - var value311 = source[3]; - if (value311) { - var partials = data61[3]; - data61[3] = partials ? composeArgs(partials, value311, source[4]) : value311; - data61[4] = partials ? replaceHolders(data61[3], PLACEHOLDER) : source[4]; + var value315 = source[3]; + if (value315) { + var partials = data63[3]; + data63[3] = partials ? composeArgs(partials, value315, source[4]) : value315; + data63[4] = partials ? replaceHolders(data63[3], PLACEHOLDER) : source[4]; } - value311 = source[5]; - if (value311) { - partials = data61[5]; - data61[5] = partials ? composeArgsRight(partials, value311, source[6]) : value311; - data61[6] = partials ? replaceHolders(data61[5], PLACEHOLDER) : source[6]; + value315 = source[5]; + if (value315) { + partials = data63[5]; + data63[5] = partials ? composeArgsRight(partials, value315, source[6]) : value315; + data63[6] = partials ? replaceHolders(data63[5], PLACEHOLDER) : source[6]; } - value311 = source[7]; - if (value311) { - data61[7] = value311; + value315 = source[7]; + if (value315) { + data63[7] = value315; } if (srcBitmask & WRAP_ARY_FLAG) { - data61[8] = data61[8] == null ? source[8] : nativeMin(data61[8], source[8]); + data63[8] = data63[8] == null ? source[8] : nativeMin(data63[8], source[8]); } - if (data61[9] == null) { - data61[9] = source[9]; + if (data63[9] == null) { + data63[9] = source[9]; } - data61[0] = source[0]; - data61[1] = newBitmask; - return data61; + data63[0] = source[0]; + data63[1] = newBitmask; + return data63; } function nativeKeysIn(object) { var result = []; if (object != null) { - for(var key113 in Object(object)){ - result.push(key113); + for(var key115 in Object(object)){ + result.push(key115); } } return result; } - function objectToString(value312) { - return nativeObjectToString.call(value312); + function objectToString(value316) { + return nativeObjectToString.call(value316); } - function overRest(func, start39, transform2) { - start39 = nativeMax(start39 === undefined ? func.length - 1 : start39, 0); + function overRest(func, start40, transform2) { + start40 = nativeMax(start40 === undefined ? func.length - 1 : start40, 0); return function() { - var args47 = arguments, index = -1, length = nativeMax(args47.length - start39, 0), array = Array(length); + var args50 = arguments, index = -1, length = nativeMax(args50.length - start40, 0), array = Array(length); while(++index < length){ - array[index] = args47[start39 + index]; + array[index] = args50[start40 + index]; } index = -1; - var otherArgs = Array(start39 + 1); - while(++index < start39){ - otherArgs[index] = args47[index]; + var otherArgs = Array(start40 + 1); + while(++index < start40){ + otherArgs[index] = args50[index]; } - otherArgs[start39] = transform2(array); + otherArgs[start40] = transform2(array); return apply(func, this || _global, otherArgs); }; } - function parent1(object, path61) { - return path61.length < 2 ? object : baseGet(object, baseSlice(path61, 0, -1)); + function parent1(object, path60) { + return path60.length < 2 ? object : baseGet(object, baseSlice(path60, 0, -1)); } function reorder(array, indexes) { var arrLength = array.length, length = nativeMin(indexes.length, arrLength), oldArray = copyArray(array); @@ -38225,14 +40620,14 @@ function dew8() { } return array; } - function safeGet(object, key114) { - if (key114 === 'constructor' && typeof object[key114] === 'function') { + function safeGet(object, key116) { + if (key116 === 'constructor' && typeof object[key116] === 'function') { return; } - if (key114 == '__proto__') { + if (key116 == '__proto__') { return; } - return object[key114]; + return object[key116]; } var setData = shortOut(baseSetData); var setTimeout = ctxSetTimeout || function(func, wait) { @@ -38262,9 +40657,9 @@ function dew8() { var index = -1, length = array.length, lastIndex = length - 1; size = size === undefined ? length : size; while(++index < size){ - var rand = baseRandom(index, lastIndex), value313 = array[rand]; + var rand = baseRandom(index, lastIndex), value317 = array[rand]; array[rand] = array[index]; - array[index] = value313; + array[index] = value317; } array.length = size; return array; @@ -38274,17 +40669,17 @@ function dew8() { if (string.charCodeAt(0) === 46) { result.push(''); } - string.replace(rePropName, function(match16, number, quote, subString) { - result.push(quote ? subString.replace(reEscapeChar, '$1') : number || match16); + string.replace(rePropName, function(match13, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : number || match13); }); return result; }); - function toKey(value314) { - if (typeof value314 == 'string' || isSymbol1(value314)) { - return value314; + function toKey(value318) { + if (typeof value318 == 'string' || isSymbol1(value318)) { + return value318; } - var result = value314 + ''; - return result == '0' && 1 / value314 == -INFINITY ? '-0' : result; + var result = value318 + ''; + return result == '0' && 1 / value318 == -INFINITY ? '-0' : result; } function toSource(func) { if (func != null) { @@ -38299,9 +40694,9 @@ function dew8() { } function updateWrapDetails(details, bitmask) { arrayEach(wrapFlags, function(pair) { - var value315 = '_.' + pair[0]; - if (bitmask & pair[1] && !arrayIncludes(details, value315)) { - details.push(value315); + var value319 = '_.' + pair[0]; + if (bitmask & pair[1] && !arrayIncludes(details, value319)) { + details.push(value319); } }); return details.sort(); @@ -38335,9 +40730,9 @@ function dew8() { function compact3(array) { var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; while(++index < length){ - var value316 = array[index]; - if (value316) { - result[resIndex++] = value316; + var value320 = array[index]; + if (value320) { + result[resIndex++] = value320; } } return result; @@ -38347,13 +40742,13 @@ function dew8() { if (!length) { return []; } - var args48 = Array(length - 1), array = arguments[0], index = length; + var args51 = Array(length - 1), array = arguments[0], index = length; while(index--){ - args48[index - 1] = arguments[index]; + args51[index - 1] = arguments[index]; } return arrayPush(isArray1(array) ? copyArray(array) : [ array - ], baseFlatten(args48, 1)); + ], baseFlatten(args51, 1)); } var difference1 = baseRest(function(array, values11) { return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values11, 1, isArrayLikeObject, true)) : []; @@ -38372,22 +40767,22 @@ function dew8() { } return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values13, 1, isArrayLikeObject, true), undefined, comparator) : []; }); - function drop(array, n106, guard) { + function drop(array, n107, guard) { var length = array == null ? 0 : array.length; if (!length) { return []; } - n106 = guard || n106 === undefined ? 1 : toInteger1(n106); - return baseSlice(array, n106 < 0 ? 0 : n106, length); + n107 = guard || n107 === undefined ? 1 : toInteger1(n107); + return baseSlice(array, n107 < 0 ? 0 : n107, length); } - function dropRight(array, n107, guard) { + function dropRight(array, n108, guard) { var length = array == null ? 0 : array.length; if (!length) { return []; } - n107 = guard || n107 === undefined ? 1 : toInteger1(n107); - n107 = length - n107; - return baseSlice(array, 0, n107 < 0 ? 0 : n107); + n108 = guard || n108 === undefined ? 1 : toInteger1(n108); + n108 = length - n108; + return baseSlice(array, 0, n108 < 0 ? 0 : n108); } function dropRightWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), true, true) : []; @@ -38395,16 +40790,16 @@ function dew8() { function dropWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), true) : []; } - function fill(array, value317, start40, end) { + function fill(array, value321, start41, end) { var length = array == null ? 0 : array.length; if (!length) { return []; } - if (start40 && typeof start40 != 'number' && isIterateeCall(array, value317, start40)) { - start40 = 0; + if (start41 && typeof start41 != 'number' && isIterateeCall(array, value321, start41)) { + start41 = 0; end = length; } - return baseFill(array, value317, start40, end); + return baseFill(array, value321, start41, end); } function findIndex(array, predicate, fromIndex) { var length = array == null ? 0 : array.length; @@ -38456,7 +40851,7 @@ function dew8() { function head(array) { return array && array.length ? array[0] : undefined; } - function indexOf1(array, value318, fromIndex) { + function indexOf1(array, value322, fromIndex) { var length = array == null ? 0 : array.length; if (!length) { return -1; @@ -38465,7 +40860,7 @@ function dew8() { if (index < 0) { index = nativeMax(length + index, 0); } - return baseIndexOf(array, value318, index); + return baseIndexOf(array, value322, index); } function initial(array) { var length = array == null ? 0 : array.length; @@ -38499,7 +40894,7 @@ function dew8() { var length = array == null ? 0 : array.length; return length ? array[length - 1] : undefined; } - function lastIndexOf(array, value319, fromIndex) { + function lastIndexOf(array, value323, fromIndex) { var length = array == null ? 0 : array.length; if (!length) { return -1; @@ -38509,10 +40904,10 @@ function dew8() { index = toInteger1(fromIndex); index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); } - return value319 === value319 ? strictLastIndexOf(array, value319, index) : baseFindIndex(array, baseIsNaN, index, true); + return value323 === value323 ? strictLastIndexOf(array, value323, index) : baseFindIndex(array, baseIsNaN, index, true); } - function nth(array, n108) { - return array && array.length ? baseNth(array, toInteger1(n108)) : undefined; + function nth(array, n109) { + return array && array.length ? baseNth(array, toInteger1(n109)) : undefined; } var pull = baseRest(pullAll); function pullAll(array, values14) { @@ -38539,9 +40934,9 @@ function dew8() { var index = -1, indexes = [], length = array.length; predicate = getIteratee(predicate, 3); while(++index < length){ - var value320 = array[index]; - if (predicate(value320, index, array)) { - result.push(value320); + var value324 = array[index]; + if (predicate(value324, index, array)) { + result.push(value324); indexes.push(index); } } @@ -38551,47 +40946,47 @@ function dew8() { function reverse(array) { return array == null ? array : nativeReverse.call(array); } - function slice(array, start41, end) { + function slice(array, start42, end) { var length = array == null ? 0 : array.length; if (!length) { return []; } - if (end && typeof end != 'number' && isIterateeCall(array, start41, end)) { - start41 = 0; + if (end && typeof end != 'number' && isIterateeCall(array, start42, end)) { + start42 = 0; end = length; } else { - start41 = start41 == null ? 0 : toInteger1(start41); + start42 = start42 == null ? 0 : toInteger1(start42); end = end === undefined ? length : toInteger1(end); } - return baseSlice(array, start41, end); + return baseSlice(array, start42, end); } - function sortedIndex(array, value321) { - return baseSortedIndex(array, value321); + function sortedIndex(array, value325) { + return baseSortedIndex(array, value325); } - function sortedIndexBy(array, value322, iteratee) { - return baseSortedIndexBy(array, value322, getIteratee(iteratee, 2)); + function sortedIndexBy(array, value326, iteratee) { + return baseSortedIndexBy(array, value326, getIteratee(iteratee, 2)); } - function sortedIndexOf(array, value323) { + function sortedIndexOf(array, value327) { var length = array == null ? 0 : array.length; if (length) { - var index = baseSortedIndex(array, value323); - if (index < length && eq(array[index], value323)) { + var index = baseSortedIndex(array, value327); + if (index < length && eq(array[index], value327)) { return index; } } return -1; } - function sortedLastIndex(array, value324) { - return baseSortedIndex(array, value324, true); + function sortedLastIndex(array, value328) { + return baseSortedIndex(array, value328, true); } - function sortedLastIndexBy(array, value325, iteratee) { - return baseSortedIndexBy(array, value325, getIteratee(iteratee, 2), true); + function sortedLastIndexBy(array, value329, iteratee) { + return baseSortedIndexBy(array, value329, getIteratee(iteratee, 2), true); } - function sortedLastIndexOf(array, value326) { + function sortedLastIndexOf(array, value330) { var length = array == null ? 0 : array.length; if (length) { - var index = baseSortedIndex(array, value326, true) - 1; - if (eq(array[index], value326)) { + var index = baseSortedIndex(array, value330, true) - 1; + if (eq(array[index], value330)) { return index; } } @@ -38607,21 +41002,21 @@ function dew8() { var length = array == null ? 0 : array.length; return length ? baseSlice(array, 1, length) : []; } - function take(array, n109, guard) { + function take(array, n114, guard) { if (!(array && array.length)) { return []; } - n109 = guard || n109 === undefined ? 1 : toInteger1(n109); - return baseSlice(array, 0, n109 < 0 ? 0 : n109); + n114 = guard || n114 === undefined ? 1 : toInteger1(n114); + return baseSlice(array, 0, n114 < 0 ? 0 : n114); } - function takeRight(array, n114, guard) { + function takeRight(array, n115, guard) { var length = array == null ? 0 : array.length; if (!length) { return []; } - n114 = guard || n114 === undefined ? 1 : toInteger1(n114); - n114 = length - n114; - return baseSlice(array, n114 < 0 ? 0 : n114, length); + n115 = guard || n115 === undefined ? 1 : toInteger1(n115); + n115 = length - n115; + return baseSlice(array, n115 < 0 ? 0 : n115, length); } function takeRightWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), false, true) : []; @@ -38711,34 +41106,34 @@ function dew8() { iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined; return unzipWith(arrays, iteratee); }); - function chain1(value327) { - var result = lodash(value327); + function chain1(value331) { + var result = lodash(value331); result.__chain__ = true; return result; } - function tap(value328, interceptor) { - interceptor(value328); - return value328; + function tap(value332, interceptor) { + interceptor(value332); + return value332; } - function thru(value329, interceptor) { - return interceptor(value329); + function thru(value333, interceptor) { + return interceptor(value333); } var wrapperAt = flatRest(function(paths) { - var length = paths.length, start42 = length ? paths[0] : 0, value330 = (this || _global).__wrapped__, interceptor = function(object) { + var length = paths.length, start43 = length ? paths[0] : 0, value334 = (this || _global).__wrapped__, interceptor = function(object) { return baseAt(object, paths); }; - if (length > 1 || (this || _global).__actions__.length || !(value330 instanceof LazyWrapper) || !isIndex(start42)) { + if (length > 1 || (this || _global).__actions__.length || !(value334 instanceof LazyWrapper) || !isIndex(start43)) { return this.thru(interceptor); } - value330 = value330.slice(start42, +start42 + (length ? 1 : 0)); - value330.__actions__.push({ + value334 = value334.slice(start43, +start43 + (length ? 1 : 0)); + value334.__actions__.push({ 'func': thru, 'args': [ interceptor ], 'thisArg': undefined }); - return new LodashWrapper(value330, (this || _global).__chain__).thru(function(array) { + return new LodashWrapper(value334, (this || _global).__chain__).thru(function(array) { if (length && !array.length) { array.push(undefined); } @@ -38755,16 +41150,16 @@ function dew8() { if ((this || _global).__values__ === undefined) { (this || _global).__values__ = toArray5(this.value()); } - var done = (this || _global).__index__ >= (this || _global).__values__.length, value331 = done ? undefined : (this || _global).__values__[(this || _global).__index__++]; + var done = (this || _global).__index__ >= (this || _global).__values__.length, value335 = done ? undefined : (this || _global).__values__[(this || _global).__index__++]; return { 'done': done, - 'value': value331 + 'value': value335 }; } function wrapperToIterator() { return this || _global; } - function wrapperPlant(value332) { + function wrapperPlant(value336) { var result, parent = this || _global; while(parent instanceof baseLodash){ var clone4 = wrapperClone(parent); @@ -38778,13 +41173,13 @@ function dew8() { var previous = clone4; parent = parent.__wrapped__; } - previous.__wrapped__ = value332; + previous.__wrapped__ = value336; return result; } function wrapperReverse() { - var value333 = (this || _global).__wrapped__; - if (value333 instanceof LazyWrapper) { - var wrapped = value333; + var value337 = (this || _global).__wrapped__; + if (value337 instanceof LazyWrapper) { + var wrapped = value337; if ((this || _global).__actions__.length) { wrapped = new LazyWrapper(this || _global); } @@ -38803,11 +41198,11 @@ function dew8() { function wrapperValue() { return baseWrapperValue((this || _global).__wrapped__, (this || _global).__actions__); } - var countBy = createAggregator(function(result, value, key115) { - if (hasOwnProperty.call(result, key115)) { - ++result[key115]; + var countBy = createAggregator(function(result, value, key117) { + if (hasOwnProperty.call(result, key117)) { + ++result[key117]; } else { - baseAssignValue(result, key115, 1); + baseAssignValue(result, key117, 1); } }); function every(collection, predicate, guard) { @@ -38841,33 +41236,33 @@ function dew8() { var func = isArray1(collection) ? arrayEachRight : baseEachRight; return func(collection, getIteratee(iteratee, 3)); } - var groupBy3 = createAggregator(function(result, value334, key116) { - if (hasOwnProperty.call(result, key116)) { - result[key116].push(value334); + var groupBy3 = createAggregator(function(result, value338, key118) { + if (hasOwnProperty.call(result, key118)) { + result[key118].push(value338); } else { - baseAssignValue(result, key116, [ - value334 + baseAssignValue(result, key118, [ + value338 ]); } }); - function includes1(collection, value335, fromIndex, guard) { + function includes1(collection, value339, fromIndex, guard) { collection = isArrayLike(collection) ? collection : values1(collection); fromIndex = fromIndex && !guard ? toInteger1(fromIndex) : 0; var length = collection.length; if (fromIndex < 0) { fromIndex = nativeMax(length + fromIndex, 0); } - return isString11(collection) ? fromIndex <= length && collection.indexOf(value335, fromIndex) > -1 : !!length && baseIndexOf(collection, value335, fromIndex) > -1; + return isString11(collection) ? fromIndex <= length && collection.indexOf(value339, fromIndex) > -1 : !!length && baseIndexOf(collection, value339, fromIndex) > -1; } - var invokeMap = baseRest(function(collection, path62, args49) { - var index = -1, isFunc = typeof path62 == 'function', result = isArrayLike(collection) ? Array(collection.length) : []; - baseEach(collection, function(value336) { - result[++index] = isFunc ? apply(path62, value336, args49) : baseInvoke(value336, path62, args49); + var invokeMap = baseRest(function(collection, path61, args52) { + var index = -1, isFunc = typeof path61 == 'function', result = isArrayLike(collection) ? Array(collection.length) : []; + baseEach(collection, function(value340) { + result[++index] = isFunc ? apply(path61, value340, args52) : baseInvoke(value340, path61, args52); }); return result; }); - var keyBy = createAggregator(function(result, value337, key117) { - baseAssignValue(result, key117, value337); + var keyBy = createAggregator(function(result, value341, key119) { + baseAssignValue(result, key119, value341); }); function map1(collection, iteratee) { var func = isArray1(collection) ? arrayMap : baseMap; @@ -38890,8 +41285,8 @@ function dew8() { } return baseOrderBy(collection, iteratees, orders); } - var partition = createAggregator(function(result, value338, key118) { - result[key118 ? 0 : 1].push(value338); + var partition = createAggregator(function(result, value342, key120) { + result[key120 ? 0 : 1].push(value342); }, function() { return [ [], @@ -38906,7 +41301,7 @@ function dew8() { var func = isArray1(collection) ? arrayReduceRight : baseReduce, initAccum = arguments.length < 3; return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); } - function reject9(collection, predicate) { + function reject10(collection, predicate) { var func = isArray1(collection) ? arrayFilter : baseFilter; return func(collection, negate1(getIteratee(predicate, 3))); } @@ -38914,14 +41309,14 @@ function dew8() { var func = isArray1(collection) ? arraySample : baseSample; return func(collection); } - function sampleSize(collection, n115, guard) { - if (guard ? isIterateeCall(collection, n115, guard) : n115 === undefined) { - n115 = 1; + function sampleSize(collection, n116, guard) { + if (guard ? isIterateeCall(collection, n116, guard) : n116 === undefined) { + n116 = 1; } else { - n115 = toInteger1(n115); + n116 = toInteger1(n116); } var func = isArray1(collection) ? arraySampleSize : baseSampleSize; - return func(collection, n115); + return func(collection, n116); } function shuffle(collection) { var func = isArray1(collection) ? arrayShuffle : baseShuffle; @@ -38964,33 +41359,33 @@ function dew8() { var now = ctxNow || function() { return root.Date.now(); }; - function after(n116, func) { + function after(n117, func) { if (typeof func != 'function') { throw new TypeError(FUNC_ERROR_TEXT); } - n116 = toInteger1(n116); + n117 = toInteger1(n117); return function() { - if (--n116 < 1) { + if (--n117 < 1) { return func.apply(this || _global, arguments); } }; } - function ary1(func, n117, guard) { - n117 = guard ? undefined : n117; - n117 = func && n117 == null ? func.length : n117; - return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n117); + function ary1(func, n118, guard) { + n118 = guard ? undefined : n118; + n118 = func && n118 == null ? func.length : n118; + return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n118); } - function before(n118, func) { + function before(n119, func) { var result; if (typeof func != 'function') { throw new TypeError(FUNC_ERROR_TEXT); } - n118 = toInteger1(n118); + n119 = toInteger1(n119); return function() { - if (--n118 > 0) { + if (--n119 > 0) { result = func.apply(this || _global, arguments); } - if (n118 <= 1) { + if (n119 <= 1) { func = undefined; } return result; @@ -39004,13 +41399,13 @@ function dew8() { } return createWrap(func, bitmask, thisArg, partials, holders); }); - var bindKey = baseRest(function(object, key119, partials) { + var bindKey = baseRest(function(object, key121, partials) { var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; if (partials.length) { var holders = replaceHolders(partials, getHolder(bindKey)); bitmask |= WRAP_PARTIAL_FLAG; } - return createWrap(key119, bitmask, object, partials, holders); + return createWrap(key121, bitmask, object, partials, holders); }); function curry(func, arity, guard) { arity = guard ? undefined : arity; @@ -39037,10 +41432,10 @@ function dew8() { trailing = 'trailing' in options33 ? !!options33.trailing : trailing; } function invokeFunc(time) { - var args50 = lastArgs, thisArg = lastThis; + var args53 = lastArgs, thisArg = lastThis; lastArgs = lastThis = undefined; lastInvokeTime = time; - result = func.apply(thisArg, args50); + result = func.apply(thisArg, args53); return result; } function leadingEdge(time) { @@ -39105,11 +41500,11 @@ function dew8() { debounced.flush = flush; return debounced; } - var defer2 = baseRest(function(func, args51) { - return baseDelay(func, 1, args51); + var defer2 = baseRest(function(func, args54) { + return baseDelay(func, 1, args54); }); - var delay = baseRest(function(func, wait, args52) { - return baseDelay(func, toNumber(wait) || 0, args52); + var delay = baseRest(function(func, wait, args55) { + return baseDelay(func, toNumber(wait) || 0, args55); }); function flip(func) { return createWrap(func, WRAP_FLIP_FLAG); @@ -39119,12 +41514,12 @@ function dew8() { throw new TypeError(FUNC_ERROR_TEXT); } var memoized = function() { - var args53 = arguments, key120 = resolver ? resolver.apply(this || _global, args53) : args53[0], cache = memoized.cache; - if (cache.has(key120)) { - return cache.get(key120); + var args56 = arguments, key122 = resolver ? resolver.apply(this || _global, args56) : args56[0], cache = memoized.cache; + if (cache.has(key122)) { + return cache.get(key122); } - var result = func.apply(this || _global, args53); - memoized.cache = cache.set(key120, result) || cache; + var result = func.apply(this || _global, args56); + memoized.cache = cache.set(key122, result) || cache; return result; }; memoized.cache = new (memoize.Cache || MapCache)(); @@ -39136,18 +41531,18 @@ function dew8() { throw new TypeError(FUNC_ERROR_TEXT); } return function() { - var args54 = arguments; - switch(args54.length){ + var args57 = arguments; + switch(args57.length){ case 0: return !predicate.call(this || _global); case 1: - return !predicate.call(this || _global, args54[0]); + return !predicate.call(this || _global, args57[0]); case 2: - return !predicate.call(this || _global, args54[0], args54[1]); + return !predicate.call(this || _global, args57[0], args57[1]); case 3: - return !predicate.call(this || _global, args54[0], args54[1], args54[2]); + return !predicate.call(this || _global, args57[0], args57[1], args57[2]); } - return !predicate.apply(this || _global, args54); + return !predicate.apply(this || _global, args57); }; } function once2(func) { @@ -39156,12 +41551,12 @@ function dew8() { var overArgs = castRest(function(func, transforms) { transforms = transforms.length == 1 && isArray1(transforms[0]) ? arrayMap(transforms[0], baseUnary(getIteratee())) : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); var funcsLength = transforms.length; - return baseRest(function(args55) { - var index = -1, length = nativeMin(args55.length, funcsLength); + return baseRest(function(args58) { + var index = -1, length = nativeMin(args58.length, funcsLength); while(++index < length){ - args55[index] = transforms[index].call(this || _global, args55[index]); + args58[index] = transforms[index].call(this || _global, args58[index]); } - return apply(func, this || _global, args55); + return apply(func, this || _global, args58); }); }); var partial = baseRest(function(func, partials) { @@ -39175,20 +41570,20 @@ function dew8() { var rearg = flatRest(function(func, indexes) { return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes); }); - function rest(func, start43) { + function rest(func, start44) { if (typeof func != 'function') { throw new TypeError(FUNC_ERROR_TEXT); } - start43 = start43 === undefined ? start43 : toInteger1(start43); - return baseRest(func, start43); + start44 = start44 === undefined ? start44 : toInteger1(start44); + return baseRest(func, start44); } - function spread(func, start44) { + function spread(func, start45) { if (typeof func != 'function') { throw new TypeError(FUNC_ERROR_TEXT); } - start44 = start44 == null ? 0 : nativeMax(toInteger1(start44), 0); - return baseRest(function(args56) { - var array = args56[start44], otherArgs = castSlice(args56, 0, start44); + start45 = start45 == null ? 0 : nativeMax(toInteger1(start45), 0); + return baseRest(function(args59) { + var array = args59[start45], otherArgs = castSlice(args59, 0, start45); if (array) { arrayPush(otherArgs, array); } @@ -39213,121 +41608,121 @@ function dew8() { function unary(func) { return ary1(func, 1); } - function wrap2(value339, wrapper) { - return partial(castFunction(wrapper), value339); + function wrap2(value343, wrapper) { + return partial(castFunction(wrapper), value343); } function castArray() { if (!arguments.length) { return []; } - var value340 = arguments[0]; - return isArray1(value340) ? value340 : [ - value340 + var value344 = arguments[0]; + return isArray1(value344) ? value344 : [ + value344 ]; } - function clone1(value341) { - return baseClone(value341, CLONE_SYMBOLS_FLAG); + function clone1(value345) { + return baseClone(value345, CLONE_SYMBOLS_FLAG); } - function cloneWith(value342, customizer) { + function cloneWith(value346, customizer) { customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value342, CLONE_SYMBOLS_FLAG, customizer); + return baseClone(value346, CLONE_SYMBOLS_FLAG, customizer); } - function cloneDeep1(value343) { - return baseClone(value343, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); + function cloneDeep1(value347) { + return baseClone(value347, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); } - function cloneDeepWith(value344, customizer) { + function cloneDeepWith(value348, customizer) { customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value344, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); + return baseClone(value348, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); } function conformsTo(object, source) { return source == null || baseConformsTo(object, source, keys(source)); } - function eq(value345, other) { - return value345 === other || value345 !== value345 && other !== other; + function eq(value349, other) { + return value349 === other || value349 !== value349 && other !== other; } var gt = createRelationalOperation(baseGt); - var gte = createRelationalOperation(function(value346, other) { - return value346 >= other; + var gte = createRelationalOperation(function(value350, other) { + return value350 >= other; }); var isArguments = baseIsArguments(function() { return arguments; - }()) ? baseIsArguments : function(value347) { - return isObjectLike1(value347) && hasOwnProperty.call(value347, 'callee') && !propertyIsEnumerable.call(value347, 'callee'); + }()) ? baseIsArguments : function(value351) { + return isObjectLike1(value351) && hasOwnProperty.call(value351, 'callee') && !propertyIsEnumerable.call(value351, 'callee'); }; var isArray1 = Array.isArray; var isArrayBuffer2 = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; - function isArrayLike(value348) { - return value348 != null && isLength(value348.length) && !isFunction6(value348); + function isArrayLike(value352) { + return value352 != null && isLength(value352.length) && !isFunction6(value352); } - function isArrayLikeObject(value349) { - return isObjectLike1(value349) && isArrayLike(value349); + function isArrayLikeObject(value353) { + return isObjectLike1(value353) && isArrayLike(value353); } - function isBoolean3(value350) { - return value350 === true || value350 === false || isObjectLike1(value350) && baseGetTag(value350) == boolTag; + function isBoolean3(value354) { + return value354 === true || value354 === false || isObjectLike1(value354) && baseGetTag(value354) == boolTag; } var isBuffer1 = nativeIsBuffer || stubFalse; var isDate4 = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; - function isElement(value351) { - return isObjectLike1(value351) && value351.nodeType === 1 && !isPlainObject5(value351); + function isElement(value355) { + return isObjectLike1(value355) && value355.nodeType === 1 && !isPlainObject5(value355); } - function isEmpty11(value352) { - if (value352 == null) { + function isEmpty11(value356) { + if (value356 == null) { return true; } - if (isArrayLike(value352) && (isArray1(value352) || typeof value352 == 'string' || typeof value352.splice == 'function' || isBuffer1(value352) || isTypedArray2(value352) || isArguments(value352))) { - return !value352.length; + if (isArrayLike(value356) && (isArray1(value356) || typeof value356 == 'string' || typeof value356.splice == 'function' || isBuffer1(value356) || isTypedArray2(value356) || isArguments(value356))) { + return !value356.length; } - var tag = getTag(value352); + var tag = getTag(value356); if (tag == mapTag || tag == setTag) { - return !value352.size; + return !value356.size; } - if (isPrototype(value352)) { - return !baseKeys(value352).length; + if (isPrototype(value356)) { + return !baseKeys(value356).length; } - for(var key121 in value352){ - if (hasOwnProperty.call(value352, key121)) { + for(var key123 in value356){ + if (hasOwnProperty.call(value356, key123)) { return false; } } return true; } - function isEqual1(value353, other) { - return baseIsEqual(value353, other); + function isEqual1(value357, other) { + return baseIsEqual(value357, other); } - function isEqualWith(value354, other, customizer) { + function isEqualWith(value358, other, customizer) { customizer = typeof customizer == 'function' ? customizer : undefined; - var result = customizer ? customizer(value354, other) : undefined; - return result === undefined ? baseIsEqual(value354, other, undefined, customizer) : !!result; + var result = customizer ? customizer(value358, other) : undefined; + return result === undefined ? baseIsEqual(value358, other, undefined, customizer) : !!result; } - function isError1(value355) { - if (!isObjectLike1(value355)) { + function isError1(value359) { + if (!isObjectLike1(value359)) { return false; } - var tag = baseGetTag(value355); - return tag == errorTag || tag == domExcTag || typeof value355.message == 'string' && typeof value355.name == 'string' && !isPlainObject5(value355); + var tag = baseGetTag(value359); + return tag == errorTag || tag == domExcTag || typeof value359.message == 'string' && typeof value359.name == 'string' && !isPlainObject5(value359); } - function isFinite(value356) { - return typeof value356 == 'number' && nativeIsFinite(value356); + function isFinite(value360) { + return typeof value360 == 'number' && nativeIsFinite(value360); } - function isFunction6(value357) { - if (!isObject8(value357)) { + function isFunction6(value361) { + if (!isObject8(value361)) { return false; } - var tag = baseGetTag(value357); + var tag = baseGetTag(value361); return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; } - function isInteger(value358) { - return typeof value358 == 'number' && value358 == toInteger1(value358); + function isInteger(value362) { + return typeof value362 == 'number' && value362 == toInteger1(value362); } - function isLength(value359) { - return typeof value359 == 'number' && value359 > -1 && value359 % 1 == 0 && value359 <= MAX_SAFE_INTEGER; + function isLength(value363) { + return typeof value363 == 'number' && value363 > -1 && value363 % 1 == 0 && value363 <= MAX_SAFE_INTEGER; } - function isObject8(value360) { - var type50 = typeof value360; - return value360 != null && (type50 == 'object' || type50 == 'function'); + function isObject8(value364) { + var type43 = typeof value364; + return value364 != null && (type43 == 'object' || type43 == 'function'); } - function isObjectLike1(value361) { - return value361 != null && typeof value361 == 'object'; + function isObjectLike1(value365) { + return value365 != null && typeof value365 == 'object'; } var isMap3 = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; function isMatch(object, source) { @@ -39337,29 +41732,29 @@ function dew8() { customizer = typeof customizer == 'function' ? customizer : undefined; return baseIsMatch(object, source, getMatchData(source), customizer); } - function isNaN(value362) { - return isNumber5(value362) && value362 != +value362; + function isNaN(value366) { + return isNumber5(value366) && value366 != +value366; } - function isNative(value363) { - if (isMaskable(value363)) { + function isNative(value367) { + if (isMaskable(value367)) { throw new Error(CORE_ERROR_TEXT); } - return baseIsNative(value363); + return baseIsNative(value367); } - function isNull1(value364) { - return value364 === null; + function isNull1(value368) { + return value368 === null; } - function isNil1(value365) { - return value365 == null; + function isNil1(value369) { + return value369 == null; } - function isNumber5(value366) { - return typeof value366 == 'number' || isObjectLike1(value366) && baseGetTag(value366) == numberTag; + function isNumber5(value370) { + return typeof value370 == 'number' || isObjectLike1(value370) && baseGetTag(value370) == numberTag; } - function isPlainObject5(value367) { - if (!isObjectLike1(value367) || baseGetTag(value367) != objectTag) { + function isPlainObject5(value371) { + if (!isObjectLike1(value371) || baseGetTag(value371) != objectTag) { return false; } - var proto = getPrototype(value367); + var proto = getPrototype(value371); if (proto === null) { return true; } @@ -39367,96 +41762,96 @@ function dew8() { return typeof Ctor == 'function' && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString; } var isRegExp4 = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; - function isSafeInteger(value368) { - return isInteger(value368) && value368 >= -MAX_SAFE_INTEGER && value368 <= MAX_SAFE_INTEGER; + function isSafeInteger(value372) { + return isInteger(value372) && value372 >= -MAX_SAFE_INTEGER && value372 <= MAX_SAFE_INTEGER; } var isSet2 = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; - function isString11(value369) { - return typeof value369 == 'string' || !isArray1(value369) && isObjectLike1(value369) && baseGetTag(value369) == stringTag; + function isString11(value373) { + return typeof value373 == 'string' || !isArray1(value373) && isObjectLike1(value373) && baseGetTag(value373) == stringTag; } - function isSymbol1(value370) { - return typeof value370 == 'symbol' || isObjectLike1(value370) && baseGetTag(value370) == symbolTag; + function isSymbol1(value374) { + return typeof value374 == 'symbol' || isObjectLike1(value374) && baseGetTag(value374) == symbolTag; } var isTypedArray2 = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - function isUndefined2(value371) { - return value371 === undefined; + function isUndefined2(value375) { + return value375 === undefined; } - function isWeakMap2(value372) { - return isObjectLike1(value372) && getTag(value372) == weakMapTag; + function isWeakMap2(value376) { + return isObjectLike1(value376) && getTag(value376) == weakMapTag; } - function isWeakSet2(value373) { - return isObjectLike1(value373) && baseGetTag(value373) == weakSetTag; + function isWeakSet2(value377) { + return isObjectLike1(value377) && baseGetTag(value377) == weakSetTag; } var lt = createRelationalOperation(baseLt); - var lte = createRelationalOperation(function(value374, other) { - return value374 <= other; + var lte = createRelationalOperation(function(value378, other) { + return value378 <= other; }); - function toArray5(value375) { - if (!value375) { + function toArray5(value379) { + if (!value379) { return []; } - if (isArrayLike(value375)) { - return isString11(value375) ? stringToArray(value375) : copyArray(value375); + if (isArrayLike(value379)) { + return isString11(value379) ? stringToArray(value379) : copyArray(value379); } - if (symIterator && value375[symIterator]) { - return iteratorToArray(value375[symIterator]()); + if (symIterator && value379[symIterator]) { + return iteratorToArray(value379[symIterator]()); } - var tag = getTag(value375), func = tag == mapTag ? mapToArray : tag == setTag ? setToArray : values1; - return func(value375); + var tag = getTag(value379), func = tag == mapTag ? mapToArray : tag == setTag ? setToArray : values1; + return func(value379); } - function toFinite(value376) { - if (!value376) { - return value376 === 0 ? value376 : 0; + function toFinite(value380) { + if (!value380) { + return value380 === 0 ? value380 : 0; } - value376 = toNumber(value376); - if (value376 === INFINITY || value376 === -INFINITY) { - var sign3 = value376 < 0 ? -1 : 1; + value380 = toNumber(value380); + if (value380 === INFINITY || value380 === -INFINITY) { + var sign3 = value380 < 0 ? -1 : 1; return sign3 * MAX_INTEGER; } - return value376 === value376 ? value376 : 0; + return value380 === value380 ? value380 : 0; } - function toInteger1(value377) { - var result = toFinite(value377), remainder = result % 1; + function toInteger1(value381) { + var result = toFinite(value381), remainder = result % 1; return result === result ? remainder ? result - remainder : result : 0; } - function toLength(value378) { - return value378 ? baseClamp(toInteger1(value378), 0, MAX_ARRAY_LENGTH) : 0; + function toLength(value382) { + return value382 ? baseClamp(toInteger1(value382), 0, MAX_ARRAY_LENGTH) : 0; } - function toNumber(value379) { - if (typeof value379 == 'number') { - return value379; + function toNumber(value383) { + if (typeof value383 == 'number') { + return value383; } - if (isSymbol1(value379)) { + if (isSymbol1(value383)) { return NAN; } - if (isObject8(value379)) { - var other = typeof value379.valueOf == 'function' ? value379.valueOf() : value379; - value379 = isObject8(other) ? other + '' : other; + if (isObject8(value383)) { + var other = typeof value383.valueOf == 'function' ? value383.valueOf() : value383; + value383 = isObject8(other) ? other + '' : other; } - if (typeof value379 != 'string') { - return value379 === 0 ? value379 : +value379; + if (typeof value383 != 'string') { + return value383 === 0 ? value383 : +value383; } - value379 = baseTrim(value379); - var isBinary = reIsBinary.test(value379); - return isBinary || reIsOctal.test(value379) ? freeParseInt(value379.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value379) ? NAN : +value379; + value383 = baseTrim(value383); + var isBinary = reIsBinary.test(value383); + return isBinary || reIsOctal.test(value383) ? freeParseInt(value383.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value383) ? NAN : +value383; } - function toPlainObject(value380) { - return copyObject(value380, keysIn(value380)); + function toPlainObject(value384) { + return copyObject(value384, keysIn(value384)); } - function toSafeInteger(value381) { - return value381 ? baseClamp(toInteger1(value381), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) : value381 === 0 ? value381 : 0; + function toSafeInteger(value385) { + return value385 ? baseClamp(toInteger1(value385), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) : value385 === 0 ? value385 : 0; } - function toString(value382) { - return value382 == null ? '' : baseToString(value382); + function toString(value386) { + return value386 == null ? '' : baseToString(value386); } var assign4 = createAssigner(function(object, source) { if (isPrototype(source) || isArrayLike(source)) { copyObject(source, keys(source), object); return; } - for(var key122 in source){ - if (hasOwnProperty.call(source, key122)) { - assignValue(object, key122, source[key122]); + for(var key124 in source){ + if (hasOwnProperty.call(source, key124)) { + assignValue(object, key124, source[key124]); } } }); @@ -39488,18 +41883,18 @@ function dew8() { var propsIndex = -1; var propsLength = props.length; while(++propsIndex < propsLength){ - var key123 = props[propsIndex]; - var value383 = object[key123]; - if (value383 === undefined || eq(value383, objectProto[key123]) && !hasOwnProperty.call(object, key123)) { - object[key123] = source[key123]; + var key125 = props[propsIndex]; + var value387 = object[key125]; + if (value387 === undefined || eq(value387, objectProto[key125]) && !hasOwnProperty.call(object, key125)) { + object[key125] = source[key125]; } } } return object; }); - var defaultsDeep = baseRest(function(args57) { - args57.push(undefined, customDefaultsMerge); - return apply(mergeWith, undefined, args57); + var defaultsDeep = baseRest(function(args60) { + args60.push(undefined, customDefaultsMerge); + return apply(mergeWith, undefined, args60); }); function findKey(object, predicate) { return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); @@ -39525,31 +41920,31 @@ function dew8() { function functionsIn(object) { return object == null ? [] : baseFunctions(object, keysIn(object)); } - function get2(object, path63, defaultValue) { - var result = object == null ? undefined : baseGet(object, path63); + function get2(object, path62, defaultValue) { + var result = object == null ? undefined : baseGet(object, path62); return result === undefined ? defaultValue : result; } - function has4(object, path64) { - return object != null && hasPath(object, path64, baseHas); + function has4(object, path63) { + return object != null && hasPath(object, path63, baseHas); } - function hasIn(object, path65) { - return object != null && hasPath(object, path65, baseHasIn); + function hasIn(object, path64) { + return object != null && hasPath(object, path64, baseHasIn); } - var invert1 = createInverter(function(result, value384, key124) { - if (value384 != null && typeof value384.toString != 'function') { - value384 = nativeObjectToString.call(value384); + var invert1 = createInverter(function(result, value388, key126) { + if (value388 != null && typeof value388.toString != 'function') { + value388 = nativeObjectToString.call(value388); } - result[value384] = key124; + result[value388] = key126; }, constant1(identity7)); - var invertBy = createInverter(function(result, value385, key125) { - if (value385 != null && typeof value385.toString != 'function') { - value385 = nativeObjectToString.call(value385); + var invertBy = createInverter(function(result, value389, key127) { + if (value389 != null && typeof value389.toString != 'function') { + value389 = nativeObjectToString.call(value389); } - if (hasOwnProperty.call(result, value385)) { - result[value385].push(key125); + if (hasOwnProperty.call(result, value389)) { + result[value389].push(key127); } else { - result[value385] = [ - key125 + result[value389] = [ + key127 ]; } }, getIteratee); @@ -39563,16 +41958,16 @@ function dew8() { function mapKeys(object2, iteratee) { var result = {}; iteratee = getIteratee(iteratee, 3); - baseForOwn(object2, function(value386, key126, object) { - baseAssignValue(result, iteratee(value386, key126, object), value386); + baseForOwn(object2, function(value390, key128, object) { + baseAssignValue(result, iteratee(value390, key128, object), value390); }); return result; } function mapValues(object3, iteratee) { var result = {}; iteratee = getIteratee(iteratee, 3); - baseForOwn(object3, function(value387, key127, object) { - baseAssignValue(result, key127, iteratee(value387, key127, object)); + baseForOwn(object3, function(value391, key129, object) { + baseAssignValue(result, key129, iteratee(value391, key129, object)); }); return result; } @@ -39588,10 +41983,10 @@ function dew8() { return result; } var isDeep = false; - paths = arrayMap(paths, function(path66) { - path66 = castPath(path66, object); - isDeep || (isDeep = path66.length > 1); - return path66; + paths = arrayMap(paths, function(path65) { + path65 = castPath(path65, object); + isDeep || (isDeep = path65.length > 1); + return path65; }); copyObject(object, getAllKeysIn(object), result); if (isDeep) { @@ -39619,33 +42014,33 @@ function dew8() { ]; }); predicate = getIteratee(predicate); - return basePickBy(object, props, function(value388, path67) { - return predicate(value388, path67[0]); + return basePickBy(object, props, function(value392, path66) { + return predicate(value392, path66[0]); }); } - function result1(object, path68, defaultValue) { - path68 = castPath(path68, object); - var index = -1, length = path68.length; + function result1(object, path67, defaultValue) { + path67 = castPath(path67, object); + var index = -1, length = path67.length; if (!length) { length = 1; object = undefined; } while(++index < length){ - var value389 = object == null ? undefined : object[toKey(path68[index])]; - if (value389 === undefined) { + var value393 = object == null ? undefined : object[toKey(path67[index])]; + if (value393 === undefined) { index = length; - value389 = defaultValue; + value393 = defaultValue; } - object = isFunction6(value389) ? value389.call(object) : value389; + object = isFunction6(value393) ? value393.call(object) : value393; } return object; } - function set1(object, path69, value390) { - return object == null ? object : baseSet(object, path69, value390); + function set1(object, path68, value394) { + return object == null ? object : baseSet(object, path68, value394); } - function setWith(object, path70, value391, customizer) { + function setWith(object, path69, value395, customizer) { customizer = typeof customizer == 'function' ? customizer : undefined; - return object == null ? object : baseSet(object, path70, value391, customizer); + return object == null ? object : baseSet(object, path69, value395, customizer); } var toPairs = createToPairs(keys); var toPairsIn = createToPairs(keysIn); @@ -39662,20 +42057,20 @@ function dew8() { accumulator = {}; } } - (isArrLike ? arrayEach : baseForOwn)(object4, function(value392, index, object) { - return iteratee(accumulator, value392, index, object); + (isArrLike ? arrayEach : baseForOwn)(object4, function(value396, index, object) { + return iteratee(accumulator, value396, index, object); }); return accumulator; } - function unset(object, path71) { - return object == null ? true : baseUnset(object, path71); + function unset(object, path70) { + return object == null ? true : baseUnset(object, path70); } - function update1(object, path72, updater) { - return object == null ? object : baseUpdate(object, path72, castFunction(updater)); + function update1(object, path71, updater) { + return object == null ? object : baseUpdate(object, path71, castFunction(updater)); } - function updateWith(object, path73, updater, customizer) { + function updateWith(object, path72, updater, customizer) { customizer = typeof customizer == 'function' ? customizer : undefined; - return object == null ? object : baseUpdate(object, path73, castFunction(updater), customizer); + return object == null ? object : baseUpdate(object, path72, castFunction(updater), customizer); } function values1(object) { return object == null ? [] : baseValues(object, keys(object)); @@ -39698,16 +42093,16 @@ function dew8() { } return baseClamp(toNumber(number), lower, upper); } - function inRange(number, start45, end) { - start45 = toFinite(start45); + function inRange(number, start46, end) { + start46 = toFinite(start46); if (end === undefined) { - end = start45; - start45 = 0; + end = start46; + start46 = 0; } else { end = toFinite(end); } number = toNumber(number); - return baseInRange(number, start45, end); + return baseInRange(number, start46, end); } function random1(lower, upper, floating) { if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) { @@ -39810,17 +42205,17 @@ function dew8() { } return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0); } - function repeat(string, n119, guard) { - if (guard ? isIterateeCall(string, n119, guard) : n119 === undefined) { - n119 = 1; + function repeat(string, n120, guard) { + if (guard ? isIterateeCall(string, n120, guard) : n120 === undefined) { + n120 = 1; } else { - n119 = toInteger1(n119); + n120 = toInteger1(n120); } - return baseRepeat(toString(string), n119); + return baseRepeat(toString(string), n120); } function replace() { - var args58 = arguments, string = toString(args58[0]); - return args58.length < 3 ? string : string.replace(args58[1], args58[2]); + var args61 = arguments, string = toString(args61[0]); + return args61.length < 3 ? string : string.replace(args61[1], args61[2]); } var snakeCase1 = createCompounder(function(result, word, index) { return result + (index ? '_' : '') + word.toLowerCase(); @@ -39862,7 +42257,7 @@ function dew8() { var isEscaping, isEvaluating, index = 0, interpolate = options35.interpolate || reNoMatch, source = "__p += '"; var reDelimiters = RegExp((options35.escape || reNoMatch).source + '|' + interpolate.source + '|' + (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' + (options35.evaluate || reNoMatch).source + '|$', 'g'); var sourceURL = '//# sourceURL=' + (hasOwnProperty.call(options35, 'sourceURL') ? (options35.sourceURL + '').replace(/\s/g, ' ') : 'lodash.templateSources[' + ++templateCounter + ']') + '\n'; - string.replace(reDelimiters, function(match17, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset117) { + string.replace(reDelimiters, function(match14, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset117) { interpolateValue || (interpolateValue = esTemplateValue); source += string.slice(index, offset117).replace(reUnescapedString, escapeStringChar); if (escapeValue) { @@ -39876,8 +42271,8 @@ function dew8() { if (interpolateValue) { source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'"; } - index = offset117 + match17.length; - return match17; + index = offset117 + match14.length; + return match14; }); source += "';\n"; var variable = hasOwnProperty.call(options35, 'variable') && options35.variable; @@ -39897,11 +42292,11 @@ function dew8() { } return result; } - function toLower(value393) { - return toString(value393).toLowerCase(); + function toLower(value397) { + return toString(value397).toLowerCase(); } - function toUpper(value394) { - return toString(value394).toUpperCase(); + function toUpper(value398) { + return toString(value398).toUpperCase(); } function trim(string, chars, guard) { string = toString(string); @@ -39911,8 +42306,8 @@ function dew8() { if (!string || !(chars = baseToString(chars))) { return string; } - var strSymbols = stringToArray(string), chrSymbols = stringToArray(chars), start46 = charsStartIndex(strSymbols, chrSymbols), end = charsEndIndex(strSymbols, chrSymbols) + 1; - return castSlice(strSymbols, start46, end).join(''); + var strSymbols = stringToArray(string), chrSymbols = stringToArray(chars), start47 = charsStartIndex(strSymbols, chrSymbols), end = charsEndIndex(strSymbols, chrSymbols) + 1; + return castSlice(strSymbols, start47, end).join(''); } function trimEnd(string, chars, guard) { string = toString(string); @@ -39933,8 +42328,8 @@ function dew8() { if (!string || !(chars = baseToString(chars))) { return string; } - var strSymbols = stringToArray(string), start47 = charsStartIndex(strSymbols, stringToArray(chars)); - return castSlice(strSymbols, start47).join(''); + var strSymbols = stringToArray(string), start48 = charsStartIndex(strSymbols, stringToArray(chars)); + return castSlice(strSymbols, start48).join(''); } function truncate1(string, options36) { var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION; @@ -39965,13 +42360,13 @@ function dew8() { } if (isRegExp4(separator)) { if (string.slice(end).search(separator)) { - var match18, substring = result; + var match15, substring = result; if (!separator.global) { separator = RegExp(separator.source, toString(reFlags.exec(separator)) + 'g'); } separator.lastIndex = 0; - while(match18 = separator.exec(substring)){ - var newEnd = match18.index; + while(match15 = separator.exec(substring)){ + var newEnd = match15.index; } result = result.slice(0, newEnd === undefined ? end : newEnd); } @@ -39999,17 +42394,17 @@ function dew8() { } return string.match(pattern) || []; } - var attempt = baseRest(function(func, args59) { + var attempt = baseRest(function(func, args62) { try { - return apply(func, undefined, args59); + return apply(func, undefined, args62); } catch (e101) { return isError1(e101) ? e101 : new Error(e101); } }); var bindAll = flatRest(function(object, methodNames) { - arrayEach(methodNames, function(key128) { - key128 = toKey(key128); - baseAssignValue(object, key128, bind1(object[key128], object)); + arrayEach(methodNames, function(key130) { + key130 = toKey(key130); + baseAssignValue(object, key130, bind1(object[key130], object)); }); return object; }); @@ -40024,12 +42419,12 @@ function dew8() { pair[1] ]; }); - return baseRest(function(args60) { + return baseRest(function(args63) { var index = -1; while(++index < length){ var pair = pairs[index]; - if (apply(pair[0], this || _global, args60)) { - return apply(pair[1], this || _global, args60); + if (apply(pair[0], this || _global, args63)) { + return apply(pair[1], this || _global, args63); } } }); @@ -40037,18 +42432,18 @@ function dew8() { function conforms(source) { return baseConforms(baseClone(source, CLONE_DEEP_FLAG)); } - function constant1(value395) { + function constant1(value399) { return function() { - return value395; + return value399; }; } - function defaultTo(value396, defaultValue) { - return value396 == null || value396 !== value396 ? defaultValue : value396; + function defaultTo(value400, defaultValue) { + return value400 == null || value400 !== value400 ? defaultValue : value400; } var flow1 = createFlow(); var flowRight = createFlow(true); - function identity7(value397) { - return value397; + function identity7(value401) { + return value401; } function iteratee1(func) { return baseIteratee(typeof func == 'function' ? func : baseClone(func, CLONE_DEEP_FLAG)); @@ -40056,17 +42451,17 @@ function dew8() { function matches(source) { return baseMatches(baseClone(source, CLONE_DEEP_FLAG)); } - function matchesProperty(path74, srcValue) { - return baseMatchesProperty(path74, baseClone(srcValue, CLONE_DEEP_FLAG)); + function matchesProperty(path73, srcValue) { + return baseMatchesProperty(path73, baseClone(srcValue, CLONE_DEEP_FLAG)); } - var method8 = baseRest(function(path75, args61) { + var method8 = baseRest(function(path74, args64) { return function(object) { - return baseInvoke(object, path75, args61); + return baseInvoke(object, path74, args64); }; }); - var methodOf = baseRest(function(object, args62) { - return function(path76) { - return baseInvoke(object, path76, args62); + var methodOf = baseRest(function(object, args65) { + return function(path75) { + return baseInvoke(object, path75, args65); }; }); function mixin(object, source, options37) { @@ -40109,21 +42504,21 @@ function dew8() { return this || _global; } function noop1() {} - function nthArg(n120) { - n120 = toInteger1(n120); - return baseRest(function(args63) { - return baseNth(args63, n120); + function nthArg(n121) { + n121 = toInteger1(n121); + return baseRest(function(args66) { + return baseNth(args66, n121); }); } var over = createOver(arrayMap); var overEvery = createOver(arrayEvery); var overSome = createOver(arraySome); - function property(path77) { - return isKey(path77) ? baseProperty(toKey(path77)) : basePropertyDeep(path77); + function property(path76) { + return isKey(path76) ? baseProperty(toKey(path76)) : basePropertyDeep(path76); } function propertyOf(object) { - return function(path78) { - return object == null ? undefined : baseGet(object, path78); + return function(path77) { + return object == null ? undefined : baseGet(object, path77); }; } var range = createRange(); @@ -40143,27 +42538,27 @@ function dew8() { function stubTrue() { return true; } - function times(n121, iteratee) { - n121 = toInteger1(n121); - if (n121 < 1 || n121 > MAX_SAFE_INTEGER) { + function times(n122, iteratee) { + n122 = toInteger1(n122); + if (n122 < 1 || n122 > MAX_SAFE_INTEGER) { return []; } - var index = MAX_ARRAY_LENGTH, length = nativeMin(n121, MAX_ARRAY_LENGTH); + var index = MAX_ARRAY_LENGTH, length = nativeMin(n122, MAX_ARRAY_LENGTH); iteratee = getIteratee(iteratee); - n121 -= MAX_ARRAY_LENGTH; + n122 -= MAX_ARRAY_LENGTH; var result = baseTimes(length, iteratee); - while(++index < n121){ + while(++index < n122){ iteratee(index); } return result; } - function toPath(value398) { - if (isArray1(value398)) { - return arrayMap(value398, toKey); + function toPath(value402) { + if (isArray1(value402)) { + return arrayMap(value402, toKey); } - return isSymbol1(value398) ? [ - value398 - ] : copyArray(stringToPath(toString(value398))); + return isSymbol1(value402) ? [ + value402 + ] : copyArray(stringToPath(toString(value402))); } function uniqueId3(prefix) { var id = ++idCounter; @@ -40305,7 +42700,7 @@ function dew8() { lodash.range = range; lodash.rangeRight = rangeRight; lodash.rearg = rearg; - lodash.reject = reject9; + lodash.reject = reject10; lodash.remove = remove; lodash.rest = rest; lodash.reverse = reverse; @@ -40540,21 +42935,21 @@ function dew8() { 'drop', 'take' ], function(methodName, index) { - LazyWrapper.prototype[methodName] = function(n122) { - n122 = n122 === undefined ? 1 : nativeMax(toInteger1(n122), 0); + LazyWrapper.prototype[methodName] = function(n123) { + n123 = n123 === undefined ? 1 : nativeMax(toInteger1(n123), 0); var result = (this || _global).__filtered__ && !index ? new LazyWrapper(this || _global) : this.clone(); if (result.__filtered__) { - result.__takeCount__ = nativeMin(n122, result.__takeCount__); + result.__takeCount__ = nativeMin(n123, result.__takeCount__); } else { result.__views__.push({ - 'size': nativeMin(n122, MAX_ARRAY_LENGTH), + 'size': nativeMin(n123, MAX_ARRAY_LENGTH), 'type': methodName + (result.__dir__ < 0 ? 'Right' : '') }); } return result; }; - LazyWrapper.prototype[methodName + 'Right'] = function(n123) { - return this.reverse()[methodName](n123).reverse(); + LazyWrapper.prototype[methodName + 'Right'] = function(n124) { + return this.reverse()[methodName](n124).reverse(); }; }); arrayEach([ @@ -40562,12 +42957,12 @@ function dew8() { 'map', 'takeWhile' ], function(methodName, index) { - var type51 = index + 1, isFilter = type51 == LAZY_FILTER_FLAG || type51 == LAZY_WHILE_FLAG; + var type44 = index + 1, isFilter = type44 == LAZY_FILTER_FLAG || type44 == LAZY_WHILE_FLAG; LazyWrapper.prototype[methodName] = function(iteratee) { var result = this.clone(); result.__iteratees__.push({ 'iteratee': getIteratee(iteratee, 3), - 'type': type51 + 'type': type44 }); result.__filtered__ = result.__filtered__ || isFilter; return result; @@ -40600,31 +42995,31 @@ function dew8() { LazyWrapper.prototype.findLast = function(predicate) { return this.reverse().find(predicate); }; - LazyWrapper.prototype.invokeMap = baseRest(function(path79, args64) { - if (typeof path79 == 'function') { + LazyWrapper.prototype.invokeMap = baseRest(function(path78, args67) { + if (typeof path78 == 'function') { return new LazyWrapper(this || _global); } - return this.map(function(value399) { - return baseInvoke(value399, path79, args64); + return this.map(function(value403) { + return baseInvoke(value403, path78, args67); }); }); LazyWrapper.prototype.reject = function(predicate) { return this.filter(negate1(getIteratee(predicate))); }; - LazyWrapper.prototype.slice = function(start48, end) { - start48 = toInteger1(start48); + LazyWrapper.prototype.slice = function(start49, end) { + start49 = toInteger1(start49); var result = this || _global; - if (result.__filtered__ && (start48 > 0 || end < 0)) { + if (result.__filtered__ && (start49 > 0 || end < 0)) { return new LazyWrapper(result); } - if (start48 < 0) { - result = result.takeRight(-start48); - } else if (start48) { - result = result.drop(start48); + if (start49 < 0) { + result = result.takeRight(-start49); + } else if (start49) { + result = result.drop(start49); } if (end !== undefined) { end = toInteger1(end); - result = end < 0 ? result.dropRight(-end) : result.take(end - start48); + result = end < 0 ? result.dropRight(-end) : result.take(end - start49); } return result; }; @@ -40640,13 +43035,13 @@ function dew8() { return; } lodash.prototype[methodName] = function() { - var value1 = (this || _global).__wrapped__, args65 = isTaker ? [ + var value1 = (this || _global).__wrapped__, args68 = isTaker ? [ 1 - ] : arguments, isLazy = value1 instanceof LazyWrapper, iteratee = args65[0], useLazy = isLazy || isArray1(value1); - var interceptor = function(value400) { + ] : arguments, isLazy = value1 instanceof LazyWrapper, iteratee = args68[0], useLazy = isLazy || isArray1(value1); + var interceptor = function(value404) { var result = lodashFunc.apply(lodash, arrayPush([ - value400 - ], args65)); + value404 + ], args68)); return isTaker && chainAll ? result[0] : result; }; if (useLazy && checkIteratee && typeof iteratee == 'function' && iteratee.length != 1) { @@ -40655,7 +43050,7 @@ function dew8() { var chainAll = (this || _global).__chain__, isHybrid = !!(this || _global).__actions__.length, isUnwrapped = retUnwrapped && !chainAll, onlyLazy = isLazy && !isHybrid; if (!retUnwrapped && useLazy) { value1 = onlyLazy ? value1 : new LazyWrapper(this || _global); - var result3 = func.apply(value1, args65); + var result3 = func.apply(value1, args68); result3.__actions__.push({ 'func': thru, 'args': [ @@ -40666,7 +43061,7 @@ function dew8() { return new LodashWrapper(result3, chainAll); } if (isUnwrapped && onlyLazy) { - return func.apply(this || _global, args65); + return func.apply(this || _global, args68); } result3 = this.thru(interceptor); return isUnwrapped ? isTaker ? result3.value()[0] : result3.value() : result3; @@ -40682,24 +43077,24 @@ function dew8() { ], function(methodName) { var func = arrayProto[methodName], chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru', retUnwrapped = /^(?:pop|shift)$/.test(methodName); lodash.prototype[methodName] = function() { - var args66 = arguments; + var args69 = arguments; if (retUnwrapped && !(this || _global).__chain__) { - var value401 = this.value(); - return func.apply(isArray1(value401) ? value401 : [], args66); + var value405 = this.value(); + return func.apply(isArray1(value405) ? value405 : [], args69); } - return this[chainName](function(value402) { - return func.apply(isArray1(value402) ? value402 : [], args66); + return this[chainName](function(value406) { + return func.apply(isArray1(value406) ? value406 : [], args69); }); }; }); baseForOwn(LazyWrapper.prototype, function(func, methodName) { var lodashFunc = lodash[methodName]; if (lodashFunc) { - var key129 = lodashFunc.name + ''; - if (!hasOwnProperty.call(realNames, key129)) { - realNames[key129] = []; + var key131 = lodashFunc.name + ''; + if (!hasOwnProperty.call(realNames, key131)) { + realNames[key131] = []; } - realNames[key129].push({ + realNames[key131].push({ 'name': methodName, 'func': lodashFunc }); @@ -40755,10 +43150,10 @@ function dew9() { var y6 = d8 * 365.25; exports9 = function(val, options38) { options38 = options38 || {}; - var type52 = typeof val; - if (type52 === 'string' && val.length > 0) { + var type45 = typeof val; + if (type45 === 'string' && val.length > 0) { return parse17(val); - } else if (type52 === 'number' && isFinite(val)) { + } else if (type45 === 'number' && isFinite(val)) { return options38.long ? fmtLong(val) : fmtShort(val); } throw new Error('val is not a non-empty string or a valid number. val=' + JSON.stringify(val)); @@ -40768,51 +43163,51 @@ function dew9() { if (str100.length > 100) { return; } - var match19 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(str100); - if (!match19) { + var match16 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(str100); + if (!match16) { return; } - var n124 = parseFloat(match19[1]); - var type53 = (match19[2] || 'ms').toLowerCase(); - switch(type53){ + var n125 = parseFloat(match16[1]); + var type46 = (match16[2] || 'ms').toLowerCase(); + switch(type46){ case 'years': case 'year': case 'yrs': case 'yr': case 'y': - return n124 * y6; + return n125 * y6; case 'weeks': case 'week': case 'w': - return n124 * w19; + return n125 * w19; case 'days': case 'day': case 'd': - return n124 * d8; + return n125 * d8; case 'hours': case 'hour': case 'hrs': case 'hr': case 'h': - return n124 * h21; + return n125 * h21; case 'minutes': case 'minute': case 'mins': case 'min': case 'm': - return n124 * m28; + return n125 * m28; case 'seconds': case 'second': case 'secs': case 'sec': case 's': - return n124 * s42; + return n125 * s42; case 'milliseconds': case 'millisecond': case 'msecs': case 'msec': case 'ms': - return n124; + return n125; default: return undefined; } @@ -40849,9 +43244,9 @@ function dew9() { } return ms + ' ms'; } - function plural(ms, msAbs, n125, name40) { - var isPlural = msAbs >= n125 * 1.5; - return Math.round(ms / n125) + ' ' + name40 + (isPlural ? 's' : ''); + function plural(ms, msAbs, n126, name40) { + var isPlural = msAbs >= n126 * 1.5; + return Math.round(ms / n126) + ' ' + name40 + (isPlural ? 's' : ''); } return exports9; } @@ -40869,16 +43264,16 @@ function dew10() { createDebug.enabled = enabled6; createDebug.humanize = dew9(); createDebug.destroy = destroy2; - Object.keys(env1).forEach((key130)=>{ - createDebug[key130] = env1[key130]; + Object.keys(env1).forEach((key132)=>{ + createDebug[key132] = env1[key132]; }); createDebug.names = []; createDebug.skips = []; createDebug.formatters = {}; function selectColor(namespace) { let hash5 = 0; - for(let i137 = 0; i137 < namespace.length; i137++){ - hash5 = (hash5 << 5) - hash5 + namespace.charCodeAt(i137); + for(let i140 = 0; i140 < namespace.length; i140++){ + hash5 = (hash5 << 5) - hash5 + namespace.charCodeAt(i140); hash5 |= 0; } return createDebug.colors[Math.abs(hash5) % createDebug.colors.length]; @@ -40889,7 +43284,7 @@ function dew10() { let enableOverride = null; let namespacesCache; let enabledCache; - function debug10(...args67) { + function debug10(...args70) { if (!debug10.enabled) { return; } @@ -40900,28 +43295,28 @@ function dew10() { self.prev = prevTime; self.curr = curr; prevTime = curr; - args67[0] = createDebug.coerce(args67[0]); - if (typeof args67[0] !== 'string') { - args67.unshift('%O'); + args70[0] = createDebug.coerce(args70[0]); + if (typeof args70[0] !== 'string') { + args70.unshift('%O'); } let index = 0; - args67[0] = args67[0].replace(/%([a-zA-Z%])/g, (match20, format20)=>{ - if (match20 === '%%') { + args70[0] = args70[0].replace(/%([a-zA-Z%])/g, (match17, format20)=>{ + if (match17 === '%%') { return '%'; } index++; const formatter = createDebug.formatters[format20]; if (typeof formatter === 'function') { - const val = args67[index]; - match20 = formatter.call(self, val); - args67.splice(index, 1); + const val = args70[index]; + match17 = formatter.call(self, val); + args70.splice(index, 1); index--; } - return match20; + return match17; }); - createDebug.formatArgs.call(self, args67); + createDebug.formatArgs.call(self, args70); const logFn = self.log || createDebug.log; - logFn.apply(self, args67); + logFn.apply(self, args70); } debug10.namespace = namespace; debug10.useColors = createDebug.useColors(); @@ -40941,8 +43336,8 @@ function dew10() { } return enabledCache; }, - set: (v20)=>{ - enableOverride = v20; + set: (v27)=>{ + enableOverride = v27; } }); if (typeof createDebug.init === 'function') { @@ -40960,14 +43355,14 @@ function dew10() { createDebug.namespaces = namespaces; createDebug.names = []; createDebug.skips = []; - let i138; + let i141; const split2 = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); const len41 = split2.length; - for(i138 = 0; i138 < len41; i138++){ - if (!split2[i138]) { + for(i141 = 0; i141 < len41; i141++){ + if (!split2[i141]) { continue; } - namespaces = split2[i138].replace(/\*/g, '.*?'); + namespaces = split2[i141].replace(/\*/g, '.*?'); if (namespaces[0] === '-') { createDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$')); } else { @@ -40987,15 +43382,15 @@ function dew10() { if (name41[name41.length - 1] === '*') { return true; } - let i139; + let i142; let len42; - for(i139 = 0, len42 = createDebug.skips.length; i139 < len42; i139++){ - if (createDebug.skips[i139].test(name41)) { + for(i142 = 0, len42 = createDebug.skips.length; i142 < len42; i142++){ + if (createDebug.skips[i142].test(name41)) { return false; } } - for(i139 = 0, len42 = createDebug.names.length; i139 < len42; i139++){ - if (createDebug.names[i139].test(name41)) { + for(i142 = 0, len42 = createDebug.names.length; i142 < len42; i142++){ + if (createDebug.names[i142].test(name41)) { return true; } } @@ -41126,25 +43521,25 @@ function dew11() { } return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); } - function formatArgs(args68) { - args68[0] = ((this || _global2).useColors ? '%c' : '') + (this || _global2).namespace + ((this || _global2).useColors ? ' %c' : ' ') + args68[0] + ((this || _global2).useColors ? '%c ' : ' ') + '+' + exports11.humanize((this || _global2).diff); + function formatArgs(args71) { + args71[0] = ((this || _global2).useColors ? '%c' : '') + (this || _global2).namespace + ((this || _global2).useColors ? ' %c' : ' ') + args71[0] + ((this || _global2).useColors ? '%c ' : ' ') + '+' + exports11.humanize((this || _global2).diff); if (!(this || _global2).useColors) { return; } const c48 = 'color: ' + (this || _global2).color; - args68.splice(1, 0, c48, 'color: inherit'); + args71.splice(1, 0, c48, 'color: inherit'); let index = 0; let lastC = 0; - args68[0].replace(/%[a-zA-Z%]/g, (match21)=>{ - if (match21 === '%%') { + args71[0].replace(/%[a-zA-Z%]/g, (match18)=>{ + if (match18 === '%%') { return; } index++; - if (match21 === '%c') { + if (match18 === '%c') { lastC = index; } }); - args68.splice(lastC, 0, c48); + args71.splice(lastC, 0, c48); } exports11.log = console.debug || console.log || (()=>{}); function save(namespaces) { @@ -41173,19 +43568,19 @@ function dew11() { } exports11 = dew10()(exports11); const { formatters } = exports11; - formatters.j = function(v21) { + formatters.j = function(v28) { try { - return JSON.stringify(v21); - } catch (error17) { - return '[UnexpectedJSONParseError]: ' + error17.message; + return JSON.stringify(v28); + } catch (error18) { + return '[UnexpectedJSONParseError]: ' + error18.message; } }; return exports11; } const __default7 = dew11(); -function bytesToUuid(bytes19) { +function bytesToUuid(bytes20) { const bits = [ - ...bytes19 + ...bytes20 ].map((bit)=>{ const s43 = bit.toString(16); return bit < 0x10 ? "0" + s43 : s43; @@ -41203,12 +43598,12 @@ function bytesToUuid(bytes19) { ].join(""); } function uuidToBytes(uuid2) { - const bytes20 = []; + const bytes21 = []; uuid2.replace(/[a-fA-F0-9]{2}/g, (hex)=>{ - bytes20.push(parseInt(hex, 16)); + bytes21.push(parseInt(hex, 16)); return ""; }); - return bytes20; + return bytes21; } const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-1[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; function validate1(id) { @@ -41219,8 +43614,8 @@ let _clockseq; let _lastMSecs = 0; let _lastNSecs = 0; function generate(options39, buf, offset118) { - let i140 = buf && offset118 || 0; - const b32 = buf ?? []; + let i143 = buf && offset118 || 0; + const b35 = buf ?? []; options39 ??= {}; let { node =_nodeId , clockseq =_clockseq } = options39; if (node === undefined || clockseq === undefined) { @@ -41255,23 +43650,23 @@ function generate(options39, buf, offset118) { _clockseq = clockseq; msecs += 12219292800000; const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; - b32[i140++] = tl >>> 24 & 0xff; - b32[i140++] = tl >>> 16 & 0xff; - b32[i140++] = tl >>> 8 & 0xff; - b32[i140++] = tl & 0xff; + b35[i143++] = tl >>> 24 & 0xff; + b35[i143++] = tl >>> 16 & 0xff; + b35[i143++] = tl >>> 8 & 0xff; + b35[i143++] = tl & 0xff; const tmh = msecs / 0x100000000 * 10000 & 0xfffffff; - b32[i140++] = tmh >>> 8 & 0xff; - b32[i140++] = tmh & 0xff; - b32[i140++] = tmh >>> 24 & 0xf | 0x10; - b32[i140++] = tmh >>> 16 & 0xff; - b32[i140++] = clockseq >>> 8 | 0x80; - b32[i140++] = clockseq & 0xff; - for(let n126 = 0; n126 < 6; ++n126){ - b32[i140 + n126] = node[n126]; + b35[i143++] = tmh >>> 8 & 0xff; + b35[i143++] = tmh & 0xff; + b35[i143++] = tmh >>> 24 & 0xf | 0x10; + b35[i143++] = tmh >>> 16 & 0xff; + b35[i143++] = clockseq >>> 8 | 0x80; + b35[i143++] = clockseq & 0xff; + for(let n127 = 0; n127 < 6; ++n127){ + b35[i143 + n127] = node[n127]; } - return buf ?? bytesToUuid(b32); + return buf ?? bytesToUuid(b35); } -const mod19 = { +const mod18 = { validate: validate1, generate: generate }; @@ -41282,7 +43677,7 @@ function validate2(id) { function generate1() { return crypto.randomUUID(); } -const mod20 = { +const mod19 = { validate: validate2, generate: generate1 }; @@ -41290,17 +43685,17 @@ const UUID_RE2 = /^[0-9a-f]{8}-[0-9a-f]{4}-[5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9 function validate3(id) { return UUID_RE2.test(id); } -async function generate2(namespace, data62) { +async function generate2(namespace, data64) { const space = uuidToBytes(namespace); - assert3(space.length === 16, "namespace must be a valid UUID"); - const toHash = concat2(new Uint8Array(space), data62); + assert4(space.length === 16, "namespace must be a valid UUID"); + const toHash = concat2(new Uint8Array(space), data64); const buffer32 = await crypto.subtle.digest("sha-1", toHash); - const bytes21 = new Uint8Array(buffer32); - bytes21[6] = bytes21[6] & 0x0f | 0x50; - bytes21[8] = bytes21[8] & 0x3f | 0x80; - return bytesToUuid(bytes21); + const bytes22 = new Uint8Array(buffer32); + bytes22[6] = bytes22[6] & 0x0f | 0x50; + bytes22[8] = bytes22[8] & 0x3f | 0x80; + return bytesToUuid(bytes22); } -const mod21 = { +const mod20 = { validate: validate3, generate: generate2 }; @@ -41317,42 +43712,42 @@ function version1(uuid4) { } return parseInt(uuid4[14], 16); } -const mod22 = { - v1: mod19, - v4: mod20, - v5: mod21, +const mod21 = { + v1: mod18, + v4: mod19, + v5: mod20, NIL_UUID: NIL_UUID, isNil: isNil, validate: validate4, version: version1 }; const CHAR_FORWARD_SLASH1 = 47; -function assertPath1(path80) { - if (typeof path80 !== "string") { - throw new TypeError(`Path must be a string. Received ${JSON.stringify(path80)}`); +function assertPath1(path79) { + if (typeof path79 !== "string") { + throw new TypeError(`Path must be a string. Received ${JSON.stringify(path79)}`); } } -function isPosixPathSeparator1(code46) { - return code46 === 47; +function isPosixPathSeparator1(code47) { + return code47 === 47; } -function isPathSeparator1(code47) { - return isPosixPathSeparator1(code47) || code47 === 92; +function isPathSeparator1(code48) { + return isPosixPathSeparator1(code48) || code48 === 92; } -function isWindowsDeviceRoot1(code48) { - return code48 >= 97 && code48 <= 122 || code48 >= 65 && code48 <= 90; +function isWindowsDeviceRoot1(code49) { + return code49 >= 97 && code49 <= 122 || code49 >= 65 && code49 <= 90; } -function normalizeString1(path81, allowAboveRoot, separator, isPathSeparator11) { +function normalizeString1(path80, allowAboveRoot, separator, isPathSeparator11) { let res = ""; let lastSegmentLength = 0; let lastSlash = -1; let dots = 0; - let code49; - for(let i141 = 0, len43 = path81.length; i141 <= len43; ++i141){ - if (i141 < len43) code49 = path81.charCodeAt(i141); - else if (isPathSeparator11(code49)) break; - else code49 = CHAR_FORWARD_SLASH1; - if (isPathSeparator11(code49)) { - if (lastSlash === i141 - 1 || dots === 1) {} else if (lastSlash !== i141 - 1 && dots === 2) { + let code50; + for(let i144 = 0, len43 = path80.length; i144 <= len43; ++i144){ + if (i144 < len43) code50 = path80.charCodeAt(i144); + else if (isPathSeparator11(code50)) break; + else code50 = CHAR_FORWARD_SLASH1; + if (isPathSeparator11(code50)) { + if (lastSlash === i144 - 1 || dots === 1) {} else if (lastSlash !== i144 - 1 && dots === 2) { if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 || res.charCodeAt(res.length - 2) !== 46) { if (res.length > 2) { const lastSlashIndex = res.lastIndexOf(separator); @@ -41363,13 +43758,13 @@ function normalizeString1(path81, allowAboveRoot, separator, isPathSeparator11) res = res.slice(0, lastSlashIndex); lastSegmentLength = res.length - 1 - res.lastIndexOf(separator); } - lastSlash = i141; + lastSlash = i144; dots = 0; continue; } else if (res.length === 2 || res.length === 1) { res = ""; lastSegmentLength = 0; - lastSlash = i141; + lastSlash = i144; dots = 0; continue; } @@ -41380,13 +43775,13 @@ function normalizeString1(path81, allowAboveRoot, separator, isPathSeparator11) lastSegmentLength = 2; } } else { - if (res.length > 0) res += separator + path81.slice(lastSlash + 1, i141); - else res = path81.slice(lastSlash + 1, i141); - lastSegmentLength = i141 - lastSlash - 1; + if (res.length > 0) res += separator + path80.slice(lastSlash + 1, i144); + else res = path80.slice(lastSlash + 1, i144); + lastSegmentLength = i144 - lastSlash - 1; } - lastSlash = i141; + lastSlash = i144; dots = 0; - } else if (code49 === 46 && dots !== -1) { + } else if (code50 === 46 && dots !== -1) { ++dots; } else { dots = -1; @@ -41396,10 +43791,10 @@ function normalizeString1(path81, allowAboveRoot, separator, isPathSeparator11) } function _format1(sep10, pathObject) { const dir = pathObject.dir || pathObject.root; - const base8 = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); - if (!dir) return base8; - if (dir === pathObject.root) return dir + base8; - return dir + sep10 + base8; + const base9 = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); + if (!dir) return base9; + if (dir === pathObject.root) return dir + base9; + return dir + sep10 + base9; } const WHITESPACE_ENCODINGS1 = { "\u0009": "%09", @@ -41420,57 +43815,57 @@ function resolve3(...pathSegments) { let resolvedDevice = ""; let resolvedTail = ""; let resolvedAbsolute = false; - for(let i142 = pathSegments.length - 1; i142 >= -1; i142--){ - let path82; + for(let i145 = pathSegments.length - 1; i145 >= -1; i145--){ + let path81; const { Deno } = globalThis; - if (i142 >= 0) { - path82 = pathSegments[i142]; + if (i145 >= 0) { + path81 = pathSegments[i145]; } else if (!resolvedDevice) { if (typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a drive-letter-less path without a CWD."); } - path82 = Deno.cwd(); + path81 = Deno.cwd(); } else { if (typeof Deno?.env?.get !== "function" || typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a relative path without a CWD."); } - path82 = Deno.cwd(); - if (path82 === undefined || path82.slice(0, 3).toLowerCase() !== `${resolvedDevice.toLowerCase()}\\`) { - path82 = `${resolvedDevice}\\`; + path81 = Deno.cwd(); + if (path81 === undefined || path81.slice(0, 3).toLowerCase() !== `${resolvedDevice.toLowerCase()}\\`) { + path81 = `${resolvedDevice}\\`; } } - assertPath1(path82); - const len44 = path82.length; + assertPath1(path81); + const len44 = path81.length; if (len44 === 0) continue; let rootEnd = 0; let device = ""; let isAbsolute11 = false; - const code50 = path82.charCodeAt(0); + const code51 = path81.charCodeAt(0); if (len44 > 1) { - if (isPathSeparator1(code50)) { + if (isPathSeparator1(code51)) { isAbsolute11 = true; - if (isPathSeparator1(path82.charCodeAt(1))) { + if (isPathSeparator1(path81.charCodeAt(1))) { let j16 = 2; let last39 = j16; for(; j16 < len44; ++j16){ - if (isPathSeparator1(path82.charCodeAt(j16))) break; + if (isPathSeparator1(path81.charCodeAt(j16))) break; } if (j16 < len44 && j16 !== last39) { - const firstPart = path82.slice(last39, j16); + const firstPart = path81.slice(last39, j16); last39 = j16; for(; j16 < len44; ++j16){ - if (!isPathSeparator1(path82.charCodeAt(j16))) break; + if (!isPathSeparator1(path81.charCodeAt(j16))) break; } if (j16 < len44 && j16 !== last39) { last39 = j16; for(; j16 < len44; ++j16){ - if (isPathSeparator1(path82.charCodeAt(j16))) break; + if (isPathSeparator1(path81.charCodeAt(j16))) break; } if (j16 === len44) { - device = `\\\\${firstPart}\\${path82.slice(last39)}`; + device = `\\\\${firstPart}\\${path81.slice(last39)}`; rootEnd = j16; } else if (j16 !== last39) { - device = `\\\\${firstPart}\\${path82.slice(last39, j16)}`; + device = `\\\\${firstPart}\\${path81.slice(last39, j16)}`; rootEnd = j16; } } @@ -41478,19 +43873,19 @@ function resolve3(...pathSegments) { } else { rootEnd = 1; } - } else if (isWindowsDeviceRoot1(code50)) { - if (path82.charCodeAt(1) === 58) { - device = path82.slice(0, 2); + } else if (isWindowsDeviceRoot1(code51)) { + if (path81.charCodeAt(1) === 58) { + device = path81.slice(0, 2); rootEnd = 2; if (len44 > 2) { - if (isPathSeparator1(path82.charCodeAt(2))) { + if (isPathSeparator1(path81.charCodeAt(2))) { isAbsolute11 = true; rootEnd = 3; } } } } - } else if (isPathSeparator1(code50)) { + } else if (isPathSeparator1(code51)) { rootEnd = 1; isAbsolute11 = true; } @@ -41501,7 +43896,7 @@ function resolve3(...pathSegments) { resolvedDevice = device; } if (!resolvedAbsolute) { - resolvedTail = `${path82.slice(rootEnd)}\\${resolvedTail}`; + resolvedTail = `${path81.slice(rootEnd)}\\${resolvedTail}`; resolvedAbsolute = isAbsolute11; } if (resolvedAbsolute && resolvedDevice.length > 0) break; @@ -41509,38 +43904,38 @@ function resolve3(...pathSegments) { resolvedTail = normalizeString1(resolvedTail, !resolvedAbsolute, "\\", isPathSeparator1); return resolvedDevice + (resolvedAbsolute ? "\\" : "") + resolvedTail || "."; } -function normalize5(path83) { - assertPath1(path83); - const len45 = path83.length; +function normalize5(path82) { + assertPath1(path82); + const len45 = path82.length; if (len45 === 0) return "."; let rootEnd = 0; let device; let isAbsolute21 = false; - const code51 = path83.charCodeAt(0); + const code52 = path82.charCodeAt(0); if (len45 > 1) { - if (isPathSeparator1(code51)) { + if (isPathSeparator1(code52)) { isAbsolute21 = true; - if (isPathSeparator1(path83.charCodeAt(1))) { + if (isPathSeparator1(path82.charCodeAt(1))) { let j17 = 2; let last40 = j17; for(; j17 < len45; ++j17){ - if (isPathSeparator1(path83.charCodeAt(j17))) break; + if (isPathSeparator1(path82.charCodeAt(j17))) break; } if (j17 < len45 && j17 !== last40) { - const firstPart = path83.slice(last40, j17); + const firstPart = path82.slice(last40, j17); last40 = j17; for(; j17 < len45; ++j17){ - if (!isPathSeparator1(path83.charCodeAt(j17))) break; + if (!isPathSeparator1(path82.charCodeAt(j17))) break; } if (j17 < len45 && j17 !== last40) { last40 = j17; for(; j17 < len45; ++j17){ - if (isPathSeparator1(path83.charCodeAt(j17))) break; + if (isPathSeparator1(path82.charCodeAt(j17))) break; } if (j17 === len45) { - return `\\\\${firstPart}\\${path83.slice(last40)}\\`; + return `\\\\${firstPart}\\${path82.slice(last40)}\\`; } else if (j17 !== last40) { - device = `\\\\${firstPart}\\${path83.slice(last40, j17)}`; + device = `\\\\${firstPart}\\${path82.slice(last40, j17)}`; rootEnd = j17; } } @@ -41548,29 +43943,29 @@ function normalize5(path83) { } else { rootEnd = 1; } - } else if (isWindowsDeviceRoot1(code51)) { - if (path83.charCodeAt(1) === 58) { - device = path83.slice(0, 2); + } else if (isWindowsDeviceRoot1(code52)) { + if (path82.charCodeAt(1) === 58) { + device = path82.slice(0, 2); rootEnd = 2; if (len45 > 2) { - if (isPathSeparator1(path83.charCodeAt(2))) { + if (isPathSeparator1(path82.charCodeAt(2))) { isAbsolute21 = true; rootEnd = 3; } } } } - } else if (isPathSeparator1(code51)) { + } else if (isPathSeparator1(code52)) { return "\\"; } let tail7; if (rootEnd < len45) { - tail7 = normalizeString1(path83.slice(rootEnd), !isAbsolute21, "\\", isPathSeparator1); + tail7 = normalizeString1(path82.slice(rootEnd), !isAbsolute21, "\\", isPathSeparator1); } else { tail7 = ""; } if (tail7.length === 0 && !isAbsolute21) tail7 = "."; - if (tail7.length > 0 && isPathSeparator1(path83.charCodeAt(len45 - 1))) { + if (tail7.length > 0 && isPathSeparator1(path82.charCodeAt(len45 - 1))) { tail7 += "\\"; } if (device === undefined) { @@ -41591,16 +43986,16 @@ function normalize5(path83) { return device; } } -function isAbsolute3(path84) { - assertPath1(path84); - const len46 = path84.length; +function isAbsolute3(path83) { + assertPath1(path83); + const len46 = path83.length; if (len46 === 0) return false; - const code52 = path84.charCodeAt(0); - if (isPathSeparator1(code52)) { + const code53 = path83.charCodeAt(0); + if (isPathSeparator1(code53)) { return true; - } else if (isWindowsDeviceRoot1(code52)) { - if (len46 > 2 && path84.charCodeAt(1) === 58) { - if (isPathSeparator1(path84.charCodeAt(2))) return true; + } else if (isWindowsDeviceRoot1(code53)) { + if (len46 > 2 && path83.charCodeAt(1) === 58) { + if (isPathSeparator1(path83.charCodeAt(2))) return true; } } return false; @@ -41610,18 +44005,18 @@ function join5(...paths) { if (pathsCount === 0) return "."; let joined; let firstPart = null; - for(let i143 = 0; i143 < pathsCount; ++i143){ - const path85 = paths[i143]; - assertPath1(path85); - if (path85.length > 0) { - if (joined === undefined) joined = firstPart = path85; - else joined += `\\${path85}`; + for(let i146 = 0; i146 < pathsCount; ++i146){ + const path84 = paths[i146]; + assertPath1(path84); + if (path84.length > 0) { + if (joined === undefined) joined = firstPart = path84; + else joined += `\\${path84}`; } } if (joined === undefined) return "."; let needsReplace = true; let slashCount = 0; - assert3(firstPart != null); + assert4(firstPart != null); if (isPathSeparator1(firstPart.charCodeAt(0))) { ++slashCount; const firstLen = firstPart.length; @@ -41675,37 +44070,37 @@ function relative3(from, to) { const toLen = toEnd - toStart; const length = fromLen < toLen ? fromLen : toLen; let lastCommonSep = -1; - let i144 = 0; - for(; i144 <= length; ++i144){ - if (i144 === length) { + let i147 = 0; + for(; i147 <= length; ++i147){ + if (i147 === length) { if (toLen > length) { - if (to.charCodeAt(toStart + i144) === 92) { - return toOrig.slice(toStart + i144 + 1); - } else if (i144 === 2) { - return toOrig.slice(toStart + i144); + if (to.charCodeAt(toStart + i147) === 92) { + return toOrig.slice(toStart + i147 + 1); + } else if (i147 === 2) { + return toOrig.slice(toStart + i147); } } if (fromLen > length) { - if (from.charCodeAt(fromStart + i144) === 92) { - lastCommonSep = i144; - } else if (i144 === 2) { + if (from.charCodeAt(fromStart + i147) === 92) { + lastCommonSep = i147; + } else if (i147 === 2) { lastCommonSep = 3; } } break; } - const fromCode = from.charCodeAt(fromStart + i144); - const toCode = to.charCodeAt(toStart + i144); + const fromCode = from.charCodeAt(fromStart + i147); + const toCode = to.charCodeAt(toStart + i147); if (fromCode !== toCode) break; - else if (fromCode === 92) lastCommonSep = i144; + else if (fromCode === 92) lastCommonSep = i147; } - if (i144 !== length && lastCommonSep === -1) { + if (i147 !== length && lastCommonSep === -1) { return toOrig; } let out = ""; if (lastCommonSep === -1) lastCommonSep = 0; - for(i144 = fromStart + lastCommonSep + 1; i144 <= fromEnd; ++i144){ - if (i144 === fromEnd || from.charCodeAt(i144) === 92) { + for(i147 = fromStart + lastCommonSep + 1; i147 <= fromEnd; ++i147){ + if (i147 === fromEnd || from.charCodeAt(i147) === 92) { if (out.length === 0) out += ".."; else out += "\\.."; } @@ -41718,15 +44113,15 @@ function relative3(from, to) { return toOrig.slice(toStart, toEnd); } } -function toNamespacedPath3(path86) { - if (typeof path86 !== "string") return path86; - if (path86.length === 0) return ""; - const resolvedPath = resolve3(path86); +function toNamespacedPath3(path85) { + if (typeof path85 !== "string") return path85; + if (path85.length === 0) return ""; + const resolvedPath = resolve3(path85); if (resolvedPath.length >= 3) { if (resolvedPath.charCodeAt(0) === 92) { if (resolvedPath.charCodeAt(1) === 92) { - const code53 = resolvedPath.charCodeAt(2); - if (code53 !== 63 && code53 !== 46) { + const code54 = resolvedPath.charCodeAt(2); + if (code54 !== 63 && code54 !== 46) { return `\\\\?\\UNC\\${resolvedPath.slice(2)}`; } } @@ -41736,38 +44131,38 @@ function toNamespacedPath3(path86) { } } } - return path86; + return path85; } -function dirname3(path87) { - assertPath1(path87); - const len47 = path87.length; +function dirname3(path86) { + assertPath1(path86); + const len47 = path86.length; if (len47 === 0) return "."; let rootEnd = -1; let end = -1; let matchedSlash = true; let offset119 = 0; - const code54 = path87.charCodeAt(0); + const code55 = path86.charCodeAt(0); if (len47 > 1) { - if (isPathSeparator1(code54)) { + if (isPathSeparator1(code55)) { rootEnd = offset119 = 1; - if (isPathSeparator1(path87.charCodeAt(1))) { + if (isPathSeparator1(path86.charCodeAt(1))) { let j18 = 2; let last41 = j18; for(; j18 < len47; ++j18){ - if (isPathSeparator1(path87.charCodeAt(j18))) break; + if (isPathSeparator1(path86.charCodeAt(j18))) break; } if (j18 < len47 && j18 !== last41) { last41 = j18; for(; j18 < len47; ++j18){ - if (!isPathSeparator1(path87.charCodeAt(j18))) break; + if (!isPathSeparator1(path86.charCodeAt(j18))) break; } if (j18 < len47 && j18 !== last41) { last41 = j18; for(; j18 < len47; ++j18){ - if (isPathSeparator1(path87.charCodeAt(j18))) break; + if (isPathSeparator1(path86.charCodeAt(j18))) break; } if (j18 === len47) { - return path87; + return path86; } if (j18 !== last41) { rootEnd = offset119 = j18 + 1; @@ -41775,21 +44170,21 @@ function dirname3(path87) { } } } - } else if (isWindowsDeviceRoot1(code54)) { - if (path87.charCodeAt(1) === 58) { + } else if (isWindowsDeviceRoot1(code55)) { + if (path86.charCodeAt(1) === 58) { rootEnd = offset119 = 2; if (len47 > 2) { - if (isPathSeparator1(path87.charCodeAt(2))) rootEnd = offset119 = 3; + if (isPathSeparator1(path86.charCodeAt(2))) rootEnd = offset119 = 3; } } } - } else if (isPathSeparator1(code54)) { - return path87; + } else if (isPathSeparator1(code55)) { + return path86; } - for(let i145 = len47 - 1; i145 >= offset119; --i145){ - if (isPathSeparator1(path87.charCodeAt(i145))) { + for(let i148 = len47 - 1; i148 >= offset119; --i148){ + if (isPathSeparator1(path86.charCodeAt(i148))) { if (!matchedSlash) { - end = i145; + end = i148; break; } } else { @@ -41800,43 +44195,43 @@ function dirname3(path87) { if (rootEnd === -1) return "."; else end = rootEnd; } - return path87.slice(0, end); + return path86.slice(0, end); } -function basename3(path88, ext = "") { +function basename3(path87, ext = "") { if (ext !== undefined && typeof ext !== "string") { throw new TypeError('"ext" argument must be a string'); } - assertPath1(path88); - let start49 = 0; + assertPath1(path87); + let start50 = 0; let end = -1; let matchedSlash = true; - let i146; - if (path88.length >= 2) { - const drive = path88.charCodeAt(0); + let i149; + if (path87.length >= 2) { + const drive = path87.charCodeAt(0); if (isWindowsDeviceRoot1(drive)) { - if (path88.charCodeAt(1) === 58) start49 = 2; + if (path87.charCodeAt(1) === 58) start50 = 2; } } - if (ext !== undefined && ext.length > 0 && ext.length <= path88.length) { - if (ext.length === path88.length && ext === path88) return ""; + if (ext !== undefined && ext.length > 0 && ext.length <= path87.length) { + if (ext.length === path87.length && ext === path87) return ""; let extIdx = ext.length - 1; let firstNonSlashEnd = -1; - for(i146 = path88.length - 1; i146 >= start49; --i146){ - const code55 = path88.charCodeAt(i146); - if (isPathSeparator1(code55)) { + for(i149 = path87.length - 1; i149 >= start50; --i149){ + const code56 = path87.charCodeAt(i149); + if (isPathSeparator1(code56)) { if (!matchedSlash) { - start49 = i146 + 1; + start50 = i149 + 1; break; } } else { if (firstNonSlashEnd === -1) { matchedSlash = false; - firstNonSlashEnd = i146 + 1; + firstNonSlashEnd = i149 + 1; } if (extIdx >= 0) { - if (code55 === ext.charCodeAt(extIdx)) { + if (code56 === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { - end = i146; + end = i149; } } else { extIdx = -1; @@ -41845,51 +44240,51 @@ function basename3(path88, ext = "") { } } } - if (start49 === end) end = firstNonSlashEnd; - else if (end === -1) end = path88.length; - return path88.slice(start49, end); + if (start50 === end) end = firstNonSlashEnd; + else if (end === -1) end = path87.length; + return path87.slice(start50, end); } else { - for(i146 = path88.length - 1; i146 >= start49; --i146){ - if (isPathSeparator1(path88.charCodeAt(i146))) { + for(i149 = path87.length - 1; i149 >= start50; --i149){ + if (isPathSeparator1(path87.charCodeAt(i149))) { if (!matchedSlash) { - start49 = i146 + 1; + start50 = i149 + 1; break; } } else if (end === -1) { matchedSlash = false; - end = i146 + 1; + end = i149 + 1; } } if (end === -1) return ""; - return path88.slice(start49, end); + return path87.slice(start50, end); } } -function extname3(path89) { - assertPath1(path89); - let start50 = 0; +function extname3(path88) { + assertPath1(path88); + let start51 = 0; let startDot = -1; let startPart = 0; let end = -1; let matchedSlash = true; let preDotState = 0; - if (path89.length >= 2 && path89.charCodeAt(1) === 58 && isWindowsDeviceRoot1(path89.charCodeAt(0))) { - start50 = startPart = 2; + if (path88.length >= 2 && path88.charCodeAt(1) === 58 && isWindowsDeviceRoot1(path88.charCodeAt(0))) { + start51 = startPart = 2; } - for(let i147 = path89.length - 1; i147 >= start50; --i147){ - const code56 = path89.charCodeAt(i147); - if (isPathSeparator1(code56)) { + for(let i150 = path88.length - 1; i150 >= start51; --i150){ + const code57 = path88.charCodeAt(i150); + if (isPathSeparator1(code57)) { if (!matchedSlash) { - startPart = i147 + 1; + startPart = i150 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i147 + 1; + end = i150 + 1; } - if (code56 === 46) { - if (startDot === -1) startDot = i147; + if (code57 === 46) { + if (startDot === -1) startDot = i150; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -41898,7 +44293,7 @@ function extname3(path89) { if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { return ""; } - return path89.slice(startDot, end); + return path88.slice(startDot, end); } function format6(pathObject) { if (pathObject === null || typeof pathObject !== "object") { @@ -41906,8 +44301,8 @@ function format6(pathObject) { } return _format1("\\", pathObject); } -function parse6(path90) { - assertPath1(path90); +function parse6(path89) { + assertPath1(path89); const ret = { root: "", dir: "", @@ -41915,28 +44310,28 @@ function parse6(path90) { ext: "", name: "" }; - const len48 = path90.length; + const len48 = path89.length; if (len48 === 0) return ret; let rootEnd = 0; - let code57 = path90.charCodeAt(0); + let code58 = path89.charCodeAt(0); if (len48 > 1) { - if (isPathSeparator1(code57)) { + if (isPathSeparator1(code58)) { rootEnd = 1; - if (isPathSeparator1(path90.charCodeAt(1))) { + if (isPathSeparator1(path89.charCodeAt(1))) { let j19 = 2; let last42 = j19; for(; j19 < len48; ++j19){ - if (isPathSeparator1(path90.charCodeAt(j19))) break; + if (isPathSeparator1(path89.charCodeAt(j19))) break; } if (j19 < len48 && j19 !== last42) { last42 = j19; for(; j19 < len48; ++j19){ - if (!isPathSeparator1(path90.charCodeAt(j19))) break; + if (!isPathSeparator1(path89.charCodeAt(j19))) break; } if (j19 < len48 && j19 !== last42) { last42 = j19; for(; j19 < len48; ++j19){ - if (isPathSeparator1(path90.charCodeAt(j19))) break; + if (isPathSeparator1(path89.charCodeAt(j19))) break; } if (j19 === len48) { rootEnd = j19; @@ -41946,49 +44341,49 @@ function parse6(path90) { } } } - } else if (isWindowsDeviceRoot1(code57)) { - if (path90.charCodeAt(1) === 58) { + } else if (isWindowsDeviceRoot1(code58)) { + if (path89.charCodeAt(1) === 58) { rootEnd = 2; if (len48 > 2) { - if (isPathSeparator1(path90.charCodeAt(2))) { + if (isPathSeparator1(path89.charCodeAt(2))) { if (len48 === 3) { - ret.root = ret.dir = path90; + ret.root = ret.dir = path89; return ret; } rootEnd = 3; } } else { - ret.root = ret.dir = path90; + ret.root = ret.dir = path89; return ret; } } } - } else if (isPathSeparator1(code57)) { - ret.root = ret.dir = path90; + } else if (isPathSeparator1(code58)) { + ret.root = ret.dir = path89; return ret; } - if (rootEnd > 0) ret.root = path90.slice(0, rootEnd); + if (rootEnd > 0) ret.root = path89.slice(0, rootEnd); let startDot = -1; let startPart = rootEnd; let end = -1; let matchedSlash = true; - let i148 = path90.length - 1; + let i151 = path89.length - 1; let preDotState = 0; - for(; i148 >= rootEnd; --i148){ - code57 = path90.charCodeAt(i148); - if (isPathSeparator1(code57)) { + for(; i151 >= rootEnd; --i151){ + code58 = path89.charCodeAt(i151); + if (isPathSeparator1(code58)) { if (!matchedSlash) { - startPart = i148 + 1; + startPart = i151 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i148 + 1; + end = i151 + 1; } - if (code57 === 46) { - if (startDot === -1) startDot = i148; + if (code58 === 46) { + if (startDot === -1) startDot = i151; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -41996,15 +44391,15 @@ function parse6(path90) { } if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { if (end !== -1) { - ret.base = ret.name = path90.slice(startPart, end); + ret.base = ret.name = path89.slice(startPart, end); } } else { - ret.name = path90.slice(startPart, startDot); - ret.base = path90.slice(startPart, end); - ret.ext = path90.slice(startDot, end); + ret.name = path89.slice(startPart, startDot); + ret.base = path89.slice(startPart, end); + ret.ext = path89.slice(startDot, end); } if (startPart > 0 && startPart !== rootEnd) { - ret.dir = path90.slice(0, startPart - 1); + ret.dir = path89.slice(0, startPart - 1); } else ret.dir = ret.root; return ret; } @@ -42013,17 +44408,17 @@ function fromFileUrl3(url) { if (url.protocol != "file:") { throw new TypeError("Must be a file URL."); } - let path91 = decodeURIComponent(url.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\"); + let path90 = decodeURIComponent(url.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\"); if (url.hostname != "") { - path91 = `\\\\${url.hostname}${path91}`; + path90 = `\\\\${url.hostname}${path90}`; } - return path91; + return path90; } -function toFileUrl3(path92) { - if (!isAbsolute3(path92)) { +function toFileUrl3(path91) { + if (!isAbsolute3(path91)) { throw new TypeError("Must be an absolute path."); } - const [, hostname5, pathname] = path92.match(/^(?:[/\\]{2}([^/\\]+)(?=[/\\](?:[^/\\]|$)))?(.*)/); + const [, hostname5, pathname] = path91.match(/^(?:[/\\]{2}([^/\\]+)(?=[/\\](?:[^/\\]|$)))?(.*)/); const url = new URL("file:///"); url.pathname = encodeWhitespace1(pathname.replace(/%/g, "%25")); if (hostname5 != null && hostname5 != "localhost") { @@ -42034,7 +44429,7 @@ function toFileUrl3(path92) { } return url; } -const mod23 = { +const mod22 = { sep: sep3, delimiter: delimiter3, resolve: resolve3, @@ -42056,22 +44451,22 @@ const delimiter4 = ":"; function resolve4(...pathSegments) { let resolvedPath = ""; let resolvedAbsolute = false; - for(let i149 = pathSegments.length - 1; i149 >= -1 && !resolvedAbsolute; i149--){ - let path93; - if (i149 >= 0) path93 = pathSegments[i149]; + for(let i152 = pathSegments.length - 1; i152 >= -1 && !resolvedAbsolute; i152--){ + let path92; + if (i152 >= 0) path92 = pathSegments[i152]; else { const { Deno } = globalThis; if (typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a relative path without a CWD."); } - path93 = Deno.cwd(); + path92 = Deno.cwd(); } - assertPath1(path93); - if (path93.length === 0) { + assertPath1(path92); + if (path92.length === 0) { continue; } - resolvedPath = `${path93}/${resolvedPath}`; - resolvedAbsolute = path93.charCodeAt(0) === CHAR_FORWARD_SLASH1; + resolvedPath = `${path92}/${resolvedPath}`; + resolvedAbsolute = path92.charCodeAt(0) === CHAR_FORWARD_SLASH1; } resolvedPath = normalizeString1(resolvedPath, !resolvedAbsolute, "/", isPosixPathSeparator1); if (resolvedAbsolute) { @@ -42080,30 +44475,30 @@ function resolve4(...pathSegments) { } else if (resolvedPath.length > 0) return resolvedPath; else return "."; } -function normalize6(path94) { +function normalize6(path93) { + assertPath1(path93); + if (path93.length === 0) return "."; + const isAbsolute12 = path93.charCodeAt(0) === 47; + const trailingSeparator = path93.charCodeAt(path93.length - 1) === 47; + path93 = normalizeString1(path93, !isAbsolute12, "/", isPosixPathSeparator1); + if (path93.length === 0 && !isAbsolute12) path93 = "."; + if (path93.length > 0 && trailingSeparator) path93 += "/"; + if (isAbsolute12) return `/${path93}`; + return path93; +} +function isAbsolute4(path94) { assertPath1(path94); - if (path94.length === 0) return "."; - const isAbsolute12 = path94.charCodeAt(0) === 47; - const trailingSeparator = path94.charCodeAt(path94.length - 1) === 47; - path94 = normalizeString1(path94, !isAbsolute12, "/", isPosixPathSeparator1); - if (path94.length === 0 && !isAbsolute12) path94 = "."; - if (path94.length > 0 && trailingSeparator) path94 += "/"; - if (isAbsolute12) return `/${path94}`; - return path94; -} -function isAbsolute4(path95) { - assertPath1(path95); - return path95.length > 0 && path95.charCodeAt(0) === 47; + return path94.length > 0 && path94.charCodeAt(0) === 47; } function join6(...paths) { if (paths.length === 0) return "."; let joined; - for(let i150 = 0, len49 = paths.length; i150 < len49; ++i150){ - const path96 = paths[i150]; - assertPath1(path96); - if (path96.length > 0) { - if (!joined) joined = path96; - else joined += `/${path96}`; + for(let i153 = 0, len49 = paths.length; i153 < len49; ++i153){ + const path95 = paths[i153]; + assertPath1(path95); + if (path95.length > 0) { + if (!joined) joined = path95; + else joined += `/${path95}`; } } if (!joined) return "."; @@ -42130,32 +44525,32 @@ function relative4(from, to) { const toLen = toEnd - toStart; const length = fromLen < toLen ? fromLen : toLen; let lastCommonSep = -1; - let i151 = 0; - for(; i151 <= length; ++i151){ - if (i151 === length) { + let i154 = 0; + for(; i154 <= length; ++i154){ + if (i154 === length) { if (toLen > length) { - if (to.charCodeAt(toStart + i151) === 47) { - return to.slice(toStart + i151 + 1); - } else if (i151 === 0) { - return to.slice(toStart + i151); + if (to.charCodeAt(toStart + i154) === 47) { + return to.slice(toStart + i154 + 1); + } else if (i154 === 0) { + return to.slice(toStart + i154); } } else if (fromLen > length) { - if (from.charCodeAt(fromStart + i151) === 47) { - lastCommonSep = i151; - } else if (i151 === 0) { + if (from.charCodeAt(fromStart + i154) === 47) { + lastCommonSep = i154; + } else if (i154 === 0) { lastCommonSep = 0; } } break; } - const fromCode = from.charCodeAt(fromStart + i151); - const toCode = to.charCodeAt(toStart + i151); + const fromCode = from.charCodeAt(fromStart + i154); + const toCode = to.charCodeAt(toStart + i154); if (fromCode !== toCode) break; - else if (fromCode === 47) lastCommonSep = i151; + else if (fromCode === 47) lastCommonSep = i154; } let out = ""; - for(i151 = fromStart + lastCommonSep + 1; i151 <= fromEnd; ++i151){ - if (i151 === fromEnd || from.charCodeAt(i151) === 47) { + for(i154 = fromStart + lastCommonSep + 1; i154 <= fromEnd; ++i154){ + if (i154 === fromEnd || from.charCodeAt(i154) === 47) { if (out.length === 0) out += ".."; else out += "/.."; } @@ -42167,19 +44562,19 @@ function relative4(from, to) { return to.slice(toStart); } } -function toNamespacedPath4(path97) { - return path97; +function toNamespacedPath4(path96) { + return path96; } -function dirname4(path98) { - assertPath1(path98); - if (path98.length === 0) return "."; - const hasRoot = path98.charCodeAt(0) === 47; +function dirname4(path97) { + assertPath1(path97); + if (path97.length === 0) return "."; + const hasRoot = path97.charCodeAt(0) === 47; let end = -1; let matchedSlash = true; - for(let i152 = path98.length - 1; i152 >= 1; --i152){ - if (path98.charCodeAt(i152) === 47) { + for(let i155 = path97.length - 1; i155 >= 1; --i155){ + if (path97.charCodeAt(i155) === 47) { if (!matchedSlash) { - end = i152; + end = i155; break; } } else { @@ -42188,37 +44583,37 @@ function dirname4(path98) { } if (end === -1) return hasRoot ? "/" : "."; if (hasRoot && end === 1) return "//"; - return path98.slice(0, end); + return path97.slice(0, end); } -function basename4(path99, ext = "") { +function basename4(path98, ext = "") { if (ext !== undefined && typeof ext !== "string") { throw new TypeError('"ext" argument must be a string'); } - assertPath1(path99); - let start51 = 0; + assertPath1(path98); + let start52 = 0; let end = -1; let matchedSlash = true; - let i153; - if (ext !== undefined && ext.length > 0 && ext.length <= path99.length) { - if (ext.length === path99.length && ext === path99) return ""; + let i156; + if (ext !== undefined && ext.length > 0 && ext.length <= path98.length) { + if (ext.length === path98.length && ext === path98) return ""; let extIdx = ext.length - 1; let firstNonSlashEnd = -1; - for(i153 = path99.length - 1; i153 >= 0; --i153){ - const code58 = path99.charCodeAt(i153); - if (code58 === 47) { + for(i156 = path98.length - 1; i156 >= 0; --i156){ + const code59 = path98.charCodeAt(i156); + if (code59 === 47) { if (!matchedSlash) { - start51 = i153 + 1; + start52 = i156 + 1; break; } } else { if (firstNonSlashEnd === -1) { matchedSlash = false; - firstNonSlashEnd = i153 + 1; + firstNonSlashEnd = i156 + 1; } if (extIdx >= 0) { - if (code58 === ext.charCodeAt(extIdx)) { + if (code59 === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { - end = i153; + end = i156; } } else { extIdx = -1; @@ -42227,47 +44622,47 @@ function basename4(path99, ext = "") { } } } - if (start51 === end) end = firstNonSlashEnd; - else if (end === -1) end = path99.length; - return path99.slice(start51, end); + if (start52 === end) end = firstNonSlashEnd; + else if (end === -1) end = path98.length; + return path98.slice(start52, end); } else { - for(i153 = path99.length - 1; i153 >= 0; --i153){ - if (path99.charCodeAt(i153) === 47) { + for(i156 = path98.length - 1; i156 >= 0; --i156){ + if (path98.charCodeAt(i156) === 47) { if (!matchedSlash) { - start51 = i153 + 1; + start52 = i156 + 1; break; } } else if (end === -1) { matchedSlash = false; - end = i153 + 1; + end = i156 + 1; } } if (end === -1) return ""; - return path99.slice(start51, end); + return path98.slice(start52, end); } } -function extname4(path100) { - assertPath1(path100); +function extname4(path99) { + assertPath1(path99); let startDot = -1; let startPart = 0; let end = -1; let matchedSlash = true; let preDotState = 0; - for(let i154 = path100.length - 1; i154 >= 0; --i154){ - const code59 = path100.charCodeAt(i154); - if (code59 === 47) { + for(let i157 = path99.length - 1; i157 >= 0; --i157){ + const code60 = path99.charCodeAt(i157); + if (code60 === 47) { if (!matchedSlash) { - startPart = i154 + 1; + startPart = i157 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i154 + 1; + end = i157 + 1; } - if (code59 === 46) { - if (startDot === -1) startDot = i154; + if (code60 === 46) { + if (startDot === -1) startDot = i157; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -42276,7 +44671,7 @@ function extname4(path100) { if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { return ""; } - return path100.slice(startDot, end); + return path99.slice(startDot, end); } function format7(pathObject) { if (pathObject === null || typeof pathObject !== "object") { @@ -42284,8 +44679,8 @@ function format7(pathObject) { } return _format1("/", pathObject); } -function parse7(path101) { - assertPath1(path101); +function parse7(path100) { + assertPath1(path100); const ret = { root: "", dir: "", @@ -42293,36 +44688,36 @@ function parse7(path101) { ext: "", name: "" }; - if (path101.length === 0) return ret; - const isAbsolute22 = path101.charCodeAt(0) === 47; - let start52; + if (path100.length === 0) return ret; + const isAbsolute22 = path100.charCodeAt(0) === 47; + let start53; if (isAbsolute22) { ret.root = "/"; - start52 = 1; + start53 = 1; } else { - start52 = 0; + start53 = 0; } let startDot = -1; let startPart = 0; let end = -1; let matchedSlash = true; - let i155 = path101.length - 1; + let i158 = path100.length - 1; let preDotState = 0; - for(; i155 >= start52; --i155){ - const code60 = path101.charCodeAt(i155); - if (code60 === 47) { + for(; i158 >= start53; --i158){ + const code61 = path100.charCodeAt(i158); + if (code61 === 47) { if (!matchedSlash) { - startPart = i155 + 1; + startPart = i158 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i155 + 1; + end = i158 + 1; } - if (code60 === 46) { - if (startDot === -1) startDot = i155; + if (code61 === 46) { + if (startDot === -1) startDot = i158; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -42331,22 +44726,22 @@ function parse7(path101) { if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { if (end !== -1) { if (startPart === 0 && isAbsolute22) { - ret.base = ret.name = path101.slice(1, end); + ret.base = ret.name = path100.slice(1, end); } else { - ret.base = ret.name = path101.slice(startPart, end); + ret.base = ret.name = path100.slice(startPart, end); } } } else { if (startPart === 0 && isAbsolute22) { - ret.name = path101.slice(1, startDot); - ret.base = path101.slice(1, end); + ret.name = path100.slice(1, startDot); + ret.base = path100.slice(1, end); } else { - ret.name = path101.slice(startPart, startDot); - ret.base = path101.slice(startPart, end); + ret.name = path100.slice(startPart, startDot); + ret.base = path100.slice(startPart, end); } - ret.ext = path101.slice(startDot, end); + ret.ext = path100.slice(startDot, end); } - if (startPart > 0) ret.dir = path101.slice(0, startPart - 1); + if (startPart > 0) ret.dir = path100.slice(0, startPart - 1); else if (isAbsolute22) ret.dir = "/"; return ret; } @@ -42357,15 +44752,15 @@ function fromFileUrl4(url) { } return decodeURIComponent(url.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25")); } -function toFileUrl4(path102) { - if (!isAbsolute4(path102)) { +function toFileUrl4(path101) { + if (!isAbsolute4(path101)) { throw new TypeError("Must be an absolute path."); } const url = new URL("file:///"); - url.pathname = encodeWhitespace1(path102.replace(/%/g, "%25").replace(/\\/g, "%5C")); + url.pathname = encodeWhitespace1(path101.replace(/%/g, "%25").replace(/\\/g, "%5C")); return url; } -const mod24 = { +const mod23 = { sep: sep4, delimiter: delimiter4, resolve: resolve4, @@ -42391,11 +44786,11 @@ function common(paths, sep11 = SEP) { } const parts4 = first31.split(sep11); let endOfPrefix = parts4.length; - for (const path103 of remaining){ - const compare2 = path103.split(sep11); - for(let i156 = 0; i156 < endOfPrefix; i156++){ - if (compare2[i156] !== parts4[i156]) { - endOfPrefix = i156; + for (const path102 of remaining){ + const compare2 = path102.split(sep11); + for(let i159 = 0; i159 < endOfPrefix; i159++){ + if (compare2[i159] !== parts4[i159]) { + endOfPrefix = i159; } } if (endOfPrefix === 0) { @@ -42405,7 +44800,7 @@ function common(paths, sep11 = SEP) { const prefix = parts4.slice(0, endOfPrefix).join(sep11); return prefix.endsWith(sep11) ? prefix : `${prefix}${sep11}`; } -const path2 = isWindows1 ? mod23 : mod24; +const path2 = isWindows1 ? mod22 : mod23; const { join: join7 , normalize: normalize7 } = path2; const regExpEscapeChars = [ "!", @@ -42453,100 +44848,100 @@ function globToRegExp(glob, { extended =true , globstar: globstarOption = true , let inRange = false; let inEscape = false; let endsWithSep = false; - let i157 = j20; - for(; i157 < glob.length && !seps.includes(glob[i157]); i157++){ + let i160 = j20; + for(; i160 < glob.length && !seps.includes(glob[i160]); i160++){ if (inEscape) { inEscape = false; const escapeChars = inRange ? rangeEscapeChars : regExpEscapeChars; - segment += escapeChars.includes(glob[i157]) ? `\\${glob[i157]}` : glob[i157]; + segment += escapeChars.includes(glob[i160]) ? `\\${glob[i160]}` : glob[i160]; continue; } - if (glob[i157] == escapePrefix) { + if (glob[i160] == escapePrefix) { inEscape = true; continue; } - if (glob[i157] == "[") { + if (glob[i160] == "[") { if (!inRange) { inRange = true; segment += "["; - if (glob[i157 + 1] == "!") { - i157++; + if (glob[i160 + 1] == "!") { + i160++; segment += "^"; - } else if (glob[i157 + 1] == "^") { - i157++; + } else if (glob[i160 + 1] == "^") { + i160++; segment += "\\^"; } continue; - } else if (glob[i157 + 1] == ":") { - let k8 = i157 + 1; - let value403 = ""; + } else if (glob[i160 + 1] == ":") { + let k8 = i160 + 1; + let value407 = ""; while(glob[k8 + 1] != null && glob[k8 + 1] != ":"){ - value403 += glob[k8 + 1]; + value407 += glob[k8 + 1]; k8++; } if (glob[k8 + 1] == ":" && glob[k8 + 2] == "]") { - i157 = k8 + 2; - if (value403 == "alnum") segment += "\\dA-Za-z"; - else if (value403 == "alpha") segment += "A-Za-z"; - else if (value403 == "ascii") segment += "\x00-\x7F"; - else if (value403 == "blank") segment += "\t "; - else if (value403 == "cntrl") segment += "\x00-\x1F\x7F"; - else if (value403 == "digit") segment += "\\d"; - else if (value403 == "graph") segment += "\x21-\x7E"; - else if (value403 == "lower") segment += "a-z"; - else if (value403 == "print") segment += "\x20-\x7E"; - else if (value403 == "punct") { + i160 = k8 + 2; + if (value407 == "alnum") segment += "\\dA-Za-z"; + else if (value407 == "alpha") segment += "A-Za-z"; + else if (value407 == "ascii") segment += "\x00-\x7F"; + else if (value407 == "blank") segment += "\t "; + else if (value407 == "cntrl") segment += "\x00-\x1F\x7F"; + else if (value407 == "digit") segment += "\\d"; + else if (value407 == "graph") segment += "\x21-\x7E"; + else if (value407 == "lower") segment += "a-z"; + else if (value407 == "print") segment += "\x20-\x7E"; + else if (value407 == "punct") { segment += "!\"#$%&'()*+,\\-./:;<=>?@[\\\\\\]^_‘{|}~"; - } else if (value403 == "space") segment += "\\s\v"; - else if (value403 == "upper") segment += "A-Z"; - else if (value403 == "word") segment += "\\w"; - else if (value403 == "xdigit") segment += "\\dA-Fa-f"; + } else if (value407 == "space") segment += "\\s\v"; + else if (value407 == "upper") segment += "A-Z"; + else if (value407 == "word") segment += "\\w"; + else if (value407 == "xdigit") segment += "\\dA-Fa-f"; continue; } } } - if (glob[i157] == "]" && inRange) { + if (glob[i160] == "]" && inRange) { inRange = false; segment += "]"; continue; } if (inRange) { - if (glob[i157] == "\\") { + if (glob[i160] == "\\") { segment += `\\\\`; } else { - segment += glob[i157]; + segment += glob[i160]; } continue; } - if (glob[i157] == ")" && groupStack.length > 0 && groupStack[groupStack.length - 1] != "BRACE") { + if (glob[i160] == ")" && groupStack.length > 0 && groupStack[groupStack.length - 1] != "BRACE") { segment += ")"; - const type54 = groupStack.pop(); - if (type54 == "!") { + const type47 = groupStack.pop(); + if (type47 == "!") { segment += wildcard; - } else if (type54 != "@") { - segment += type54; + } else if (type47 != "@") { + segment += type47; } continue; } - if (glob[i157] == "|" && groupStack.length > 0 && groupStack[groupStack.length - 1] != "BRACE") { + if (glob[i160] == "|" && groupStack.length > 0 && groupStack[groupStack.length - 1] != "BRACE") { segment += "|"; continue; } - if (glob[i157] == "+" && extended && glob[i157 + 1] == "(") { - i157++; + if (glob[i160] == "+" && extended && glob[i160 + 1] == "(") { + i160++; groupStack.push("+"); segment += "(?:"; continue; } - if (glob[i157] == "@" && extended && glob[i157 + 1] == "(") { - i157++; + if (glob[i160] == "@" && extended && glob[i160 + 1] == "(") { + i160++; groupStack.push("@"); segment += "(?:"; continue; } - if (glob[i157] == "?") { - if (extended && glob[i157 + 1] == "(") { - i157++; + if (glob[i160] == "?") { + if (extended && glob[i160 + 1] == "(") { + i160++; groupStack.push("?"); segment += "(?:"; } else { @@ -42554,39 +44949,39 @@ function globToRegExp(glob, { extended =true , globstar: globstarOption = true , } continue; } - if (glob[i157] == "!" && extended && glob[i157 + 1] == "(") { - i157++; + if (glob[i160] == "!" && extended && glob[i160 + 1] == "(") { + i160++; groupStack.push("!"); segment += "(?!"; continue; } - if (glob[i157] == "{") { + if (glob[i160] == "{") { groupStack.push("BRACE"); segment += "(?:"; continue; } - if (glob[i157] == "}" && groupStack[groupStack.length - 1] == "BRACE") { + if (glob[i160] == "}" && groupStack[groupStack.length - 1] == "BRACE") { groupStack.pop(); segment += ")"; continue; } - if (glob[i157] == "," && groupStack[groupStack.length - 1] == "BRACE") { + if (glob[i160] == "," && groupStack[groupStack.length - 1] == "BRACE") { segment += "|"; continue; } - if (glob[i157] == "*") { - if (extended && glob[i157 + 1] == "(") { - i157++; + if (glob[i160] == "*") { + if (extended && glob[i160 + 1] == "(") { + i160++; groupStack.push("*"); segment += "(?:"; } else { - const prevChar = glob[i157 - 1]; + const prevChar = glob[i160 - 1]; let numStars = 1; - while(glob[i157 + 1] == "*"){ - i157++; + while(glob[i160 + 1] == "*"){ + i160++; numStars++; } - const nextChar = glob[i157 + 1]; + const nextChar = glob[i160 + 1]; if (globstarOption && numStars == 2 && [ ...seps, undefined @@ -42602,25 +44997,25 @@ function globToRegExp(glob, { extended =true , globstar: globstarOption = true , } continue; } - segment += regExpEscapeChars.includes(glob[i157]) ? `\\${glob[i157]}` : glob[i157]; + segment += regExpEscapeChars.includes(glob[i160]) ? `\\${glob[i160]}` : glob[i160]; } if (groupStack.length > 0 || inRange || inEscape) { segment = ""; - for (const c50 of glob.slice(j20, i157)){ + for (const c50 of glob.slice(j20, i160)){ segment += regExpEscapeChars.includes(c50) ? `\\${c50}` : c50; endsWithSep = false; } } regExpString += segment; if (!endsWithSep) { - regExpString += i157 < glob.length ? sep12 : sepMaybe; + regExpString += i160 < glob.length ? sep12 : sepMaybe; endsWithSep = true; } - while(seps.includes(glob[i157]))i157++; - if (!(i157 > j20)) { + while(seps.includes(glob[i160]))i160++; + if (!(i160 > j20)) { throw new Error("Assertion failure: i > j (potential infinite loop)"); } - j20 = i157; + j20 = i160; } regExpString = `^${regExpString}$`; return new RegExp(regExpString, caseInsensitive ? "i" : ""); @@ -42635,16 +45030,16 @@ function isGlob(str101) { if (str101 === "") { return false; } - let match22; - while(match22 = regex.exec(str101)){ - if (match22[2]) return true; - let idx = match22.index + match22[0].length; - const open = match22[1]; + let match19; + while(match19 = regex.exec(str101)){ + if (match19[2]) return true; + let idx = match19.index + match19[0].length; + const open = match19[1]; const close = open ? chars[open] : null; if (open && close) { - const n127 = str101.indexOf(close, idx); - if (n127 !== -1) { - idx = n127 + 1; + const n128 = str101.indexOf(close, idx); + if (n128 !== -1) { + idx = n128 + 1; } } str101 = str101.slice(idx); @@ -42681,13 +45076,13 @@ function joinGlobs(globs, { extended =true , globstar =false } = {}) { globstar }); } -const path3 = isWindows1 ? mod23 : mod24; +const path3 = isWindows1 ? mod22 : mod23; const { basename: basename5 , delimiter: delimiter5 , dirname: dirname5 , extname: extname5 , format: format8 , fromFileUrl: fromFileUrl5 , isAbsolute: isAbsolute5 , join: join8 , normalize: normalize8 , parse: parse8 , relative: relative5 , resolve: resolve5 , sep: sep5 , toFileUrl: toFileUrl5 , toNamespacedPath: toNamespacedPath5 , } = path3; -const mod25 = { +const mod24 = { SEP: SEP, SEP_PATTERN: SEP_PATTERN, - win32: mod23, - posix: mod24, + win32: mod22, + posix: mod23, basename: basename5, delimiter: delimiter5, dirname: dirname5, @@ -42709,27 +45104,6 @@ const mod25 = { normalizeGlob, joinGlobs }; -function consoleSize(...args69) { - if (typeof Deno.consoleSize == "function") { - return Deno.consoleSize(...args69); - } else { - throw new TypeError("Requires --unstable"); - } -} -function utime(...args70) { - if (typeof Deno.utime == "function") { - return Deno.utime(...args70); - } else { - return Promise.reject(new TypeError("Requires --unstable")); - } -} -function utimeSync(...args71) { - if (typeof Deno.utimeSync == "function") { - return Deno.utimeSync(...args71); - } else { - throw new TypeError("Requires --unstable"); - } -} function getConsoleWidth() { try { return consoleSize(Deno.stderr.rid).columns; @@ -42759,10 +45133,10 @@ const kReadableOperator = { function copyError(source) { const keys = ObjectKeys(source); const target = ObjectCreate(ObjectGetPrototypeOf(source)); - for (const key131 of keys){ - const desc = ObjectGetOwnPropertyDescriptor(source, key131); + for (const key133 of keys){ + const desc = ObjectGetOwnPropertyDescriptor(source, key133); if (desc !== undefined) { - ObjectDefineProperty(target, key131, desc); + ObjectDefineProperty(target, key133, desc); } } ObjectDefineProperty(target, "message", { @@ -42790,7 +45164,7 @@ function createErrDiff(actual, expected, operator) { const actualInspected = inspectValue(actual); const actualLines = actualInspected.split("\n"); const expectedLines = inspectValue(expected).split("\n"); - let i158 = 0; + let i161 = 0; let indicator = ""; if (operator === "strictEqual" && (typeof actual === "object" && actual !== null && typeof expected === "object" && expected !== null || typeof actual === "function" && typeof expected === "function")) { operator = "strictEqualObject"; @@ -42807,20 +45181,20 @@ function createErrDiff(actual, expected, operator) { } else if (operator !== "strictEqualObject") { const maxLength = Deno.isatty(Deno.stderr.rid) ? getConsoleWidth() : 80; if (inputLength < maxLength) { - while(actualRaw[i158] === expectedRaw[i158]){ - i158++; + while(actualRaw[i161] === expectedRaw[i161]){ + i161++; } - if (i158 > 2) { - indicator = `\n ${" ".repeat(i158)}^`; - i158 = 0; + if (i161 > 2) { + indicator = `\n ${" ".repeat(i161)}^`; + i161 = 0; } } } } let a33 = actualLines[actualLines.length - 1]; - let b33 = expectedLines[expectedLines.length - 1]; - while(a33 === b33){ - if (i158++ < 3) { + let b36 = expectedLines[expectedLines.length - 1]; + while(a33 === b36){ + if (i161++ < 3) { end = `\n ${a33}${end}`; } else { other = a33; @@ -42831,7 +45205,7 @@ function createErrDiff(actual, expected, operator) { break; } a33 = actualLines[actualLines.length - 1]; - b33 = expectedLines[expectedLines.length - 1]; + b36 = expectedLines[expectedLines.length - 1]; } const maxLines = MathMax(actualLines.length, expectedLines.length); if (maxLines === 0) { @@ -42844,7 +45218,7 @@ function createErrDiff(actual, expected, operator) { } return `${kReadableOperator.notIdentical}\n\n${actualLines.join("\n")}\n`; } - if (i158 >= 5) { + if (i161 >= 5) { end = `\n${blue1}...${defaultColor}${end}`; skipped = true; } @@ -42864,35 +45238,35 @@ function createErrDiff(actual, expected, operator) { plusMinus = `${red2}-${defaultColor}`; maxLength = actualLines.length; } - for(i158 = 0; i158 < maxLines; i158++){ - if (maxLength < i158 + 1) { + for(i161 = 0; i161 < maxLines; i161++){ + if (maxLength < i161 + 1) { if (identical > 2) { if (identical > 3) { if (identical > 4) { if (identical === 5) { - res += `\n ${lines[i158 - 3]}`; + res += `\n ${lines[i161 - 3]}`; printedLines++; } else { res += `\n${blue1}...${defaultColor}`; skipped = true; } } - res += `\n ${lines[i158 - 2]}`; + res += `\n ${lines[i161 - 2]}`; printedLines++; } - res += `\n ${lines[i158 - 1]}`; + res += `\n ${lines[i161 - 1]}`; printedLines++; } identical = 0; if (lines === actualLines) { - res += `\n${plusMinus} ${lines[i158]}`; + res += `\n${plusMinus} ${lines[i161]}`; } else { - other += `\n${plusMinus} ${lines[i158]}`; + other += `\n${plusMinus} ${lines[i161]}`; } printedLines++; } else { - const expectedLine = expectedLines[i158]; - let actualLine = actualLines[i158]; + const expectedLine = expectedLines[i161]; + let actualLine = actualLines[i161]; let divergingLines = actualLine !== expectedLine && (!actualLine.endsWith(",") || actualLine.slice(0, -1) !== expectedLine); if (divergingLines && expectedLine.endsWith(",") && expectedLine.slice(0, -1) === actualLine) { divergingLines = false; @@ -42903,17 +45277,17 @@ function createErrDiff(actual, expected, operator) { if (identical > 3) { if (identical > 4) { if (identical === 5) { - res += `\n ${actualLines[i158 - 3]}`; + res += `\n ${actualLines[i161 - 3]}`; printedLines++; } else { res += `\n${blue1}...${defaultColor}`; skipped = true; } } - res += `\n ${actualLines[i158 - 2]}`; + res += `\n ${actualLines[i161 - 2]}`; printedLines++; } - res += `\n ${actualLines[i158 - 1]}`; + res += `\n ${actualLines[i161 - 1]}`; printedLines++; } identical = 0; @@ -42930,13 +45304,13 @@ function createErrDiff(actual, expected, operator) { } } } - if (printedLines > 50 && i158 < maxLines - 2) { + if (printedLines > 50 && i161 < maxLines - 2) { return `${msg33}${skippedMsg}\n${res}\n${blue1}...${defaultColor}${other}\n` + `${blue1}...${defaultColor}`; } } return `${msg33}${skipped ? skippedMsg : ""}\n${res}${other}${end}${indicator}`; } -class AssertionError1 extends Error1 { +class AssertionError2 extends Error1 { constructor(options40){ if (typeof options40 !== "object" || options40 === null) { throw new ERR_INVALID_ARG_TYPE("options", "Object", options40); @@ -42968,10 +45342,10 @@ class AssertionError1 extends Error1 { if (operator === "deepStrictEqual" || operator === "strictEqual") { super(createErrDiff(actual, expected, operator)); } else if (operator === "notDeepStrictEqual" || operator === "notStrictEqual") { - let base9 = kReadableOperator[operator]; + let base10 = kReadableOperator[operator]; const res = inspectValue(actual).split("\n"); if (operator === "notStrictEqual" && (typeof actual === "object" && actual !== null || typeof actual === "function")) { - base9 = kReadableOperator.notStrictEqualObject; + base10 = kReadableOperator.notStrictEqualObject; } if (res.length > 50) { res[46] = `${blue1}...${defaultColor}`; @@ -42980,9 +45354,9 @@ class AssertionError1 extends Error1 { } } if (res.length === 1) { - super(`${base9}${res[0].length > 5 ? "\n\n" : " "}${res[0]}`); + super(`${base10}${res[0].length > 5 ? "\n\n" : " "}${res[0]}`); } else { - super(`${base9}\n\n${res.join("\n")}\n`); + super(`${base10}\n\n${res.join("\n")}\n`); } } else { let res = inspectValue(actual); @@ -43028,12 +45402,12 @@ class AssertionError1 extends Error1 { this.actual = undefined; this.expected = undefined; this.operator = undefined; - for(let i159 = 0; i159 < details.length; i159++){ - this["message " + i159] = details[i159].message; - this["actual " + i159] = details[i159].actual; - this["expected " + i159] = details[i159].expected; - this["operator " + i159] = details[i159].operator; - this["stack trace " + i159] = details[i159].stack; + for(let i162 = 0; i162 < details.length; i162++){ + this["message " + i162] = details[i162].message; + this["actual " + i162] = details[i162].actual; + this["expected " + i162] = details[i162].expected; + this["operator " + i162] = details[i162].operator; + this["stack trace " + i162] = details[i162].stack; } } else { this.actual = actual; @@ -43055,13 +45429,13 @@ class AssertionError1 extends Error1 { "expected" ]){ if (typeof this[name42] === "string") { - const value404 = this[name42]; - const lines = value404.split("\n"); + const value408 = this[name42]; + const lines = value408.split("\n"); if (lines.length > 10) { lines.length = 10; this[name42] = `${lines.join("\n")}\n...`; - } else if (value404.length > 512) { - this[name42] = `${value404.slice(512)}...`; + } else if (value408.length > 512) { + this[name42] = `${value408.slice(512)}...`; } } } @@ -43075,21 +45449,32 @@ class AssertionError1 extends Error1 { return result; } } +function innerFail(obj) { + if (obj.message instanceof Error) { + throw obj.message; + } + throw new AssertionError2({ + actual: obj.actual, + expected: obj.expected, + message: obj.message, + operator: obj.operator + }); +} function createAssertionError(options41) { - const error18 = new AssertionError1(options41); + const error19 = new AssertionError2(options41); if (options41.generatedMessage) { - error18.generatedMessage = true; + error19.generatedMessage = true; } - return error18; + return error19; } function toNode(fn, opts) { const { operator , message , actual , expected } = opts || {}; try { fn(); } catch (e102) { - if (e102 instanceof AssertionError) { + if (e102 instanceof AssertionError1) { if (typeof message === "string") { - throw new AssertionError1({ + throw new AssertionError2({ operator, message, actual, @@ -43098,7 +45483,7 @@ function toNode(fn, opts) { } else if (message instanceof Error) { throw message; } else { - throw new AssertionError1({ + throw new AssertionError2({ operator, message: e102.message, actual, @@ -43109,9 +45494,9 @@ function toNode(fn, opts) { throw e102; } } -function assert6(actual, message) { +function assert7(actual, message) { if (arguments.length === 0) { - throw new AssertionError1({ + throw new AssertionError2({ message: "No value argument passed to `assert.ok()`" }); } @@ -43121,37 +45506,37 @@ function assert6(actual, message) { expected: true }); } -const ok = assert6; -function __throws(fn, error19, message) { +const ok = assert7; +function __throws(fn, error20, message) { if (typeof fn !== "function") { throw new ERR_INVALID_ARG_TYPE("fn", "function", fn); } - if (typeof error19 === "object" && error19 !== null && Object.getPrototypeOf(error19) === Object.prototype && Object.keys(error19).length === 0) { - throw new ERR_INVALID_ARG_VALUE("error", error19, "may not be an empty object"); + if (typeof error20 === "object" && error20 !== null && Object.getPrototypeOf(error20) === Object.prototype && Object.keys(error20).length === 0) { + throw new ERR_INVALID_ARG_VALUE("error", error20, "may not be an empty object"); } if (typeof message === "string") { - if (!(error19 instanceof RegExp) && typeof error19 !== "function" && !(error19 instanceof Error) && typeof error19 !== "object") { + if (!(error20 instanceof RegExp) && typeof error20 !== "function" && !(error20 instanceof Error) && typeof error20 !== "object") { throw new ERR_INVALID_ARG_TYPE("error", [ "Function", "Error", "RegExp", "Object", - ], error19); + ], error20); } } else { - if (typeof error19 !== "undefined" && typeof error19 !== "string" && !(error19 instanceof RegExp) && typeof error19 !== "function" && !(error19 instanceof Error) && typeof error19 !== "object") { + if (typeof error20 !== "undefined" && typeof error20 !== "string" && !(error20 instanceof RegExp) && typeof error20 !== "function" && !(error20 instanceof Error) && typeof error20 !== "object") { throw new ERR_INVALID_ARG_TYPE("error", [ "Function", "Error", "RegExp", "Object", - ], error19); + ], error20); } } try { fn(); } catch (e103) { - if (validateThrownError(e103, error19, message, { + if (validateThrownError(e103, error20, message, { operator: __throws })) { return; @@ -43159,35 +45544,35 @@ function __throws(fn, error19, message) { } if (message) { let msg34 = `Missing expected exception: ${message}`; - if (typeof error19 === "function" && error19?.name) { - msg34 = `Missing expected exception (${error19.name}): ${message}`; + if (typeof error20 === "function" && error20?.name) { + msg34 = `Missing expected exception (${error20.name}): ${message}`; } - throw new AssertionError1({ + throw new AssertionError2({ message: msg34, operator: "throws", actual: undefined, - expected: error19 + expected: error20 }); - } else if (typeof error19 === "string") { - throw new AssertionError1({ - message: `Missing expected exception: ${error19}`, + } else if (typeof error20 === "string") { + throw new AssertionError2({ + message: `Missing expected exception: ${error20}`, operator: "throws", actual: undefined, expected: undefined }); - } else if (typeof error19 === "function" && error19?.prototype !== undefined) { - throw new AssertionError1({ - message: `Missing expected exception (${error19.name}).`, + } else if (typeof error20 === "function" && error20?.prototype !== undefined) { + throw new AssertionError2({ + message: `Missing expected exception (${error20.name}).`, operator: "throws", actual: undefined, - expected: error19 + expected: error20 }); } else { - throw new AssertionError1({ + throw new AssertionError2({ message: "Missing expected exception.", operator: "throws", actual: undefined, - expected: error19 + expected: error20 }); } } @@ -43218,7 +45603,7 @@ function equal1(actual, expected, message) { return; } if (typeof message === "string") { - throw new AssertionError1({ + throw new AssertionError2({ message }); } else if (message instanceof Error) { @@ -43236,7 +45621,7 @@ function notEqual(actual, expected, message) { throw new ERR_MISSING_ARGS("actual", "expected"); } if (Number.isNaN(actual) && Number.isNaN(expected)) { - throw new AssertionError1({ + throw new AssertionError2({ message: `${actual} != ${expected}`, operator: "!=", actual, @@ -43247,7 +45632,7 @@ function notEqual(actual, expected, message) { return; } if (typeof message === "string") { - throw new AssertionError1({ + throw new AssertionError2({ message }); } else if (message instanceof Error) { @@ -43282,17 +45667,31 @@ function notStrictEqual(actual, expected, message) { operator: "notStrictEqual" }); } -function deepEqual() { +function deepEqual(actual, expected, message) { if (arguments.length < 2) { throw new ERR_MISSING_ARGS("actual", "expected"); } - throw new Error("Not implemented"); + if (!isDeepEqual(actual, expected)) { + innerFail({ + actual, + expected, + message, + operator: "deepEqual" + }); + } } -function notDeepEqual() { +function notDeepEqual(actual, expected, message) { if (arguments.length < 2) { throw new ERR_MISSING_ARGS("actual", "expected"); } - throw new Error("Not implemented"); + if (isDeepEqual(actual, expected)) { + innerFail({ + actual, + expected, + message, + operator: "notDeepEqual" + }); + } } function deepStrictEqual(actual, expected, message) { if (arguments.length < 2) { @@ -43352,7 +45751,7 @@ function doesNotMatch(string, regexp4, message) { if (message instanceof Error) { throw message; } - throw new AssertionError1({ + throw new AssertionError2({ message: message || `The "string" argument must be of type string. Received type ${typeof string} (${inspect(string)})`, actual: string, expected: regexp4, @@ -43368,13 +45767,13 @@ function doesNotMatch(string, regexp4, message) { } function strict(actual, message) { if (arguments.length === 0) { - throw new AssertionError1({ + throw new AssertionError2({ message: "No value argument passed to `assert.ok()`" }); } - assert6(actual, message); + assert7(actual, message); } -function rejects(asyncFn, error20, message1) { +function rejects(asyncFn, error21, message1) { let promise; if (typeof asyncFn === "function") { try { @@ -43395,10 +45794,10 @@ function rejects(asyncFn, error20, message1) { } function onFulfilled() { let message = "Missing expected rejection"; - if (typeof error20 === "string") { - message += `: ${error20}`; - } else if (typeof error20 === "function" && error20.prototype !== undefined) { - message += ` (${error20.name}).`; + if (typeof error21 === "string") { + message += `: ${error21}`; + } else if (typeof error21 === "function" && error21.prototype !== undefined) { + message += ` (${error21.name}).`; } else { message += "."; } @@ -43409,7 +45808,7 @@ function rejects(asyncFn, error20, message1) { })); } function rejects_onRejected(e105) { - if (validateThrownError(e105, error20, message1, { + if (validateThrownError(e105, error21, message1, { operator: rejects, validationFunctionName: "validate" })) { @@ -43418,15 +45817,15 @@ function rejects(asyncFn, error20, message1) { } return promise.then(onFulfilled, rejects_onRejected); } -function doesNotReject(asyncFn, error21, message) { +function doesNotReject(asyncFn, error22, message) { let promise; if (typeof asyncFn === "function") { try { - const value405 = asyncFn(); - if (!isValidThenable(value405)) { - return Promise.reject(new ERR_INVALID_RETURN_VALUE("instance of Promise", "promiseFn", value405)); + const value409 = asyncFn(); + if (!isValidThenable(value409)) { + return Promise.reject(new ERR_INVALID_RETURN_VALUE("instance of Promise", "promiseFn", value409)); } - promise = value405; + promise = value409; } catch (e106) { return Promise.reject(e106); } @@ -43438,11 +45837,11 @@ function doesNotReject(asyncFn, error21, message) { } else { promise = asyncFn; } - return promise.then(()=>{}, (e107)=>gotUnwantedException(e107, error21, message, doesNotReject)); + return promise.then(()=>{}, (e107)=>gotUnwantedException(e107, error22, message, doesNotReject)); } function gotUnwantedException(e108, expected, message, operator) { if (typeof expected === "string") { - throw new AssertionError1({ + throw new AssertionError2({ message: `Got unwanted exception: ${expected}\nActual message: "${e108.message}"`, operator: operator.name }); @@ -43452,7 +45851,7 @@ function gotUnwantedException(e108, expected, message, operator) { if (message) { msg35 += ` ${String(message)}`; } - throw new AssertionError1({ + throw new AssertionError2({ message: msg35, operator: operator.name }); @@ -43465,7 +45864,7 @@ function gotUnwantedException(e108, expected, message, operator) { if (message) { msg36 += ` ${String(message)}`; } - throw new AssertionError1({ + throw new AssertionError2({ message: msg36, operator: operator.name }); @@ -43474,12 +45873,12 @@ function gotUnwantedException(e108, expected, message, operator) { throw e108; } else { if (message) { - throw new AssertionError1({ + throw new AssertionError2({ message: `Got unwanted exception: ${message}\nActual message: "${e108 ? e108.message : String(e108)}"`, operator: operator.name }); } - throw new AssertionError1({ + throw new AssertionError2({ message: `Got unwanted exception.\nActual message: "${e108 ? e108.message : String(e108)}"`, operator: operator.name }); @@ -43497,7 +45896,7 @@ function ifError(err) { } else { message += inspect(err); } - const newErr = new AssertionError1({ + const newErr = new AssertionError2({ actual: err, expected: null, operator: "ifError", @@ -43521,65 +45920,65 @@ function ifError(err) { throw newErr; } } -function validateThrownError(e109, error22, message, options42) { - if (typeof error22 === "string") { +function validateThrownError(e109, error23, message, options42) { + if (typeof error23 === "string") { if (message != null) { throw new ERR_INVALID_ARG_TYPE("error", [ "Object", "Error", "Function", "RegExp" - ], error22); + ], error23); } else if (typeof e109 === "object" && e109 !== null) { - if (e109.message === error22) { + if (e109.message === error23) { throw new ERR_AMBIGUOUS_ARGUMENT("error/message", `The error message "${e109.message}" is identical to the message.`); } - } else if (e109 === error22) { + } else if (e109 === error23) { throw new ERR_AMBIGUOUS_ARGUMENT("error/message", `The error "${e109}" is identical to the message.`); } - message = error22; - error22 = undefined; + message = error23; + error23 = undefined; } - if (error22 instanceof Function && error22.prototype !== undefined && error22.prototype instanceof Error) { - if (e109 instanceof error22) { + if (error23 instanceof Function && error23.prototype !== undefined && error23.prototype instanceof Error) { + if (e109 instanceof error23) { return true; } throw createAssertionError({ - message: `The error is expected to be an instance of "${error22.name}". Received "${e109?.constructor?.name}"\n\nError message:\n\n${e109?.message}`, + message: `The error is expected to be an instance of "${error23.name}". Received "${e109?.constructor?.name}"\n\nError message:\n\n${e109?.message}`, actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: true }); } - if (error22 instanceof Function) { - const received = error22(e109); + if (error23 instanceof Function) { + const received = error23(e109); if (received === true) { return true; } throw createAssertionError({ message: `The ${options42.validationFunctionName ? `"${options42.validationFunctionName}" validation` : "validation"} function is expected to return "true". Received ${inspect(received)}\n\nCaught error:\n\n${e109}`, actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: true }); } - if (error22 instanceof RegExp) { - if (error22.test(String(e109))) { + if (error23 instanceof RegExp) { + if (error23.test(String(e109))) { return true; } throw createAssertionError({ - message: `The input did not match the regular expression ${error22.toString()}. Input:\n\n'${String(e109)}'\n`, + message: `The input did not match the regular expression ${error23.toString()}. Input:\n\n'${String(e109)}'\n`, actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: true }); } - if (typeof error22 === "object" && error22 !== null) { - const keys = Object.keys(error22); - if (error22 instanceof Error) { + if (typeof error23 === "object" && error23 !== null) { + const keys = Object.keys(error23); + if (error23 instanceof Error) { keys.push("name", "message"); } for (const k9 of keys){ @@ -43587,7 +45986,7 @@ function validateThrownError(e109, error22, message, options42) { throw createAssertionError({ message: message || "object is expected to thrown, but got null", actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: message == null }); @@ -43596,7 +45995,7 @@ function validateThrownError(e109, error22, message, options42) { throw createAssertionError({ message: message || `object is expected to thrown, but got string: ${e109}`, actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: message == null }); @@ -43605,7 +46004,7 @@ function validateThrownError(e109, error22, message, options42) { throw createAssertionError({ message: message || `object is expected to thrown, but got number: ${e109}`, actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: message == null }); @@ -43614,13 +46013,13 @@ function validateThrownError(e109, error22, message, options42) { throw createAssertionError({ message: message || `A key in the expected object is missing: ${k9}`, actual: e109, - expected: error22, + expected: error23, operator: options42.operator.name, generatedMessage: message == null }); } const actual = e109[k9]; - const expected = error22[k9]; + const expected = error23[k9]; if (typeof actual === "string" && expected instanceof RegExp) { match(actual, expected); } else { @@ -43629,11 +46028,11 @@ function validateThrownError(e109, error22, message, options42) { } return true; } - if (typeof error22 === "undefined") { + if (typeof error23 === "undefined") { return true; } throw createAssertionError({ - message: `Invalid expectation: ${error22}`, + message: `Invalid expectation: ${error23}`, operator: options42.operator.name, generatedMessage: true }); @@ -43649,7 +46048,7 @@ function isValidThenable(maybeThennable) { return isThenable && typeof maybeThennable !== "function"; } Object.assign(strict, { - AssertionError: AssertionError1, + AssertionError: AssertionError2, deepEqual: deepStrictEqual, deepStrictEqual, doesNotMatch, @@ -43669,8 +46068,8 @@ Object.assign(strict, { strictEqual, throws: __throws }); -const __default8 = Object.assign(assert6, { - AssertionError: AssertionError1, +const __default8 = Object.assign(assert7, { + AssertionError: AssertionError2, deepEqual, deepStrictEqual, doesNotMatch, @@ -43691,34 +46090,34 @@ const __default8 = Object.assign(assert6, { throws: __throws }); const CHAR_FORWARD_SLASH2 = 47; -function assertPath2(path104) { - if (typeof path104 !== "string") { +function assertPath2(path103) { + if (typeof path103 !== "string") { throw new ERR_INVALID_ARG_TYPE("path", [ "string" - ], path104); + ], path103); } } -function isPosixPathSeparator2(code61) { - return code61 === 47; +function isPosixPathSeparator2(code62) { + return code62 === 47; } -function isPathSeparator2(code62) { - return isPosixPathSeparator2(code62) || code62 === 92; +function isPathSeparator2(code63) { + return isPosixPathSeparator2(code63) || code63 === 92; } -function isWindowsDeviceRoot2(code63) { - return code63 >= 97 && code63 <= 122 || code63 >= 65 && code63 <= 90; +function isWindowsDeviceRoot2(code64) { + return code64 >= 97 && code64 <= 122 || code64 >= 65 && code64 <= 90; } -function normalizeString2(path105, allowAboveRoot, separator, isPathSeparator12) { +function normalizeString2(path104, allowAboveRoot, separator, isPathSeparator12) { let res = ""; let lastSegmentLength = 0; let lastSlash = -1; let dots = 0; - let code64; - for(let i160 = 0, len50 = path105.length; i160 <= len50; ++i160){ - if (i160 < len50) code64 = path105.charCodeAt(i160); - else if (isPathSeparator12(code64)) break; - else code64 = CHAR_FORWARD_SLASH2; - if (isPathSeparator12(code64)) { - if (lastSlash === i160 - 1 || dots === 1) {} else if (lastSlash !== i160 - 1 && dots === 2) { + let code65; + for(let i163 = 0, len50 = path104.length; i163 <= len50; ++i163){ + if (i163 < len50) code65 = path104.charCodeAt(i163); + else if (isPathSeparator12(code65)) break; + else code65 = CHAR_FORWARD_SLASH2; + if (isPathSeparator12(code65)) { + if (lastSlash === i163 - 1 || dots === 1) {} else if (lastSlash !== i163 - 1 && dots === 2) { if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 || res.charCodeAt(res.length - 2) !== 46) { if (res.length > 2) { const lastSlashIndex = res.lastIndexOf(separator); @@ -43729,13 +46128,13 @@ function normalizeString2(path105, allowAboveRoot, separator, isPathSeparator12) res = res.slice(0, lastSlashIndex); lastSegmentLength = res.length - 1 - res.lastIndexOf(separator); } - lastSlash = i160; + lastSlash = i163; dots = 0; continue; } else if (res.length === 2 || res.length === 1) { res = ""; lastSegmentLength = 0; - lastSlash = i160; + lastSlash = i163; dots = 0; continue; } @@ -43746,13 +46145,13 @@ function normalizeString2(path105, allowAboveRoot, separator, isPathSeparator12) lastSegmentLength = 2; } } else { - if (res.length > 0) res += separator + path105.slice(lastSlash + 1, i160); - else res = path105.slice(lastSlash + 1, i160); - lastSegmentLength = i160 - lastSlash - 1; + if (res.length > 0) res += separator + path104.slice(lastSlash + 1, i163); + else res = path104.slice(lastSlash + 1, i163); + lastSegmentLength = i163 - lastSlash - 1; } - lastSlash = i160; + lastSlash = i163; dots = 0; - } else if (code64 === 46 && dots !== -1) { + } else if (code65 === 46 && dots !== -1) { ++dots; } else { dots = -1; @@ -43762,10 +46161,10 @@ function normalizeString2(path105, allowAboveRoot, separator, isPathSeparator12) } function _format2(sep13, pathObject) { const dir = pathObject.dir || pathObject.root; - const base10 = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); - if (!dir) return base10; - if (dir === pathObject.root) return dir + base10; - return dir + sep13 + base10; + const base11 = pathObject.base || (pathObject.name || "") + (pathObject.ext || ""); + if (!dir) return base11; + if (dir === pathObject.root) return dir + base11; + return dir + sep13 + base11; } const WHITESPACE_ENCODINGS2 = { "\u0009": "%09", @@ -43786,57 +46185,57 @@ function resolve6(...pathSegments) { let resolvedDevice = ""; let resolvedTail = ""; let resolvedAbsolute = false; - for(let i161 = pathSegments.length - 1; i161 >= -1; i161--){ - let path106; + for(let i164 = pathSegments.length - 1; i164 >= -1; i164--){ + let path105; const { Deno } = globalThis; - if (i161 >= 0) { - path106 = pathSegments[i161]; + if (i164 >= 0) { + path105 = pathSegments[i164]; } else if (!resolvedDevice) { if (typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a drive-letter-less path without a CWD."); } - path106 = Deno.cwd(); + path105 = Deno.cwd(); } else { if (typeof Deno?.env?.get !== "function" || typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a relative path without a CWD."); } - path106 = Deno.cwd(); - if (path106 === undefined || path106.slice(0, 3).toLowerCase() !== `${resolvedDevice.toLowerCase()}\\`) { - path106 = `${resolvedDevice}\\`; + path105 = Deno.cwd(); + if (path105 === undefined || path105.slice(0, 3).toLowerCase() !== `${resolvedDevice.toLowerCase()}\\`) { + path105 = `${resolvedDevice}\\`; } } - assertPath2(path106); - const len51 = path106.length; + assertPath2(path105); + const len51 = path105.length; if (len51 === 0) continue; let rootEnd = 0; let device = ""; let isAbsolute13 = false; - const code65 = path106.charCodeAt(0); + const code66 = path105.charCodeAt(0); if (len51 > 1) { - if (isPathSeparator2(code65)) { + if (isPathSeparator2(code66)) { isAbsolute13 = true; - if (isPathSeparator2(path106.charCodeAt(1))) { + if (isPathSeparator2(path105.charCodeAt(1))) { let j21 = 2; let last43 = j21; for(; j21 < len51; ++j21){ - if (isPathSeparator2(path106.charCodeAt(j21))) break; + if (isPathSeparator2(path105.charCodeAt(j21))) break; } if (j21 < len51 && j21 !== last43) { - const firstPart = path106.slice(last43, j21); + const firstPart = path105.slice(last43, j21); last43 = j21; for(; j21 < len51; ++j21){ - if (!isPathSeparator2(path106.charCodeAt(j21))) break; + if (!isPathSeparator2(path105.charCodeAt(j21))) break; } if (j21 < len51 && j21 !== last43) { last43 = j21; for(; j21 < len51; ++j21){ - if (isPathSeparator2(path106.charCodeAt(j21))) break; + if (isPathSeparator2(path105.charCodeAt(j21))) break; } if (j21 === len51) { - device = `\\\\${firstPart}\\${path106.slice(last43)}`; + device = `\\\\${firstPart}\\${path105.slice(last43)}`; rootEnd = j21; } else if (j21 !== last43) { - device = `\\\\${firstPart}\\${path106.slice(last43, j21)}`; + device = `\\\\${firstPart}\\${path105.slice(last43, j21)}`; rootEnd = j21; } } @@ -43844,19 +46243,19 @@ function resolve6(...pathSegments) { } else { rootEnd = 1; } - } else if (isWindowsDeviceRoot2(code65)) { - if (path106.charCodeAt(1) === 58) { - device = path106.slice(0, 2); + } else if (isWindowsDeviceRoot2(code66)) { + if (path105.charCodeAt(1) === 58) { + device = path105.slice(0, 2); rootEnd = 2; if (len51 > 2) { - if (isPathSeparator2(path106.charCodeAt(2))) { + if (isPathSeparator2(path105.charCodeAt(2))) { isAbsolute13 = true; rootEnd = 3; } } } } - } else if (isPathSeparator2(code65)) { + } else if (isPathSeparator2(code66)) { rootEnd = 1; isAbsolute13 = true; } @@ -43867,7 +46266,7 @@ function resolve6(...pathSegments) { resolvedDevice = device; } if (!resolvedAbsolute) { - resolvedTail = `${path106.slice(rootEnd)}\\${resolvedTail}`; + resolvedTail = `${path105.slice(rootEnd)}\\${resolvedTail}`; resolvedAbsolute = isAbsolute13; } if (resolvedAbsolute && resolvedDevice.length > 0) break; @@ -43875,38 +46274,38 @@ function resolve6(...pathSegments) { resolvedTail = normalizeString2(resolvedTail, !resolvedAbsolute, "\\", isPathSeparator2); return resolvedDevice + (resolvedAbsolute ? "\\" : "") + resolvedTail || "."; } -function normalize9(path107) { - assertPath2(path107); - const len52 = path107.length; +function normalize9(path106) { + assertPath2(path106); + const len52 = path106.length; if (len52 === 0) return "."; let rootEnd = 0; let device; let isAbsolute23 = false; - const code66 = path107.charCodeAt(0); + const code67 = path106.charCodeAt(0); if (len52 > 1) { - if (isPathSeparator2(code66)) { + if (isPathSeparator2(code67)) { isAbsolute23 = true; - if (isPathSeparator2(path107.charCodeAt(1))) { + if (isPathSeparator2(path106.charCodeAt(1))) { let j22 = 2; let last44 = j22; for(; j22 < len52; ++j22){ - if (isPathSeparator2(path107.charCodeAt(j22))) break; + if (isPathSeparator2(path106.charCodeAt(j22))) break; } if (j22 < len52 && j22 !== last44) { - const firstPart = path107.slice(last44, j22); + const firstPart = path106.slice(last44, j22); last44 = j22; for(; j22 < len52; ++j22){ - if (!isPathSeparator2(path107.charCodeAt(j22))) break; + if (!isPathSeparator2(path106.charCodeAt(j22))) break; } if (j22 < len52 && j22 !== last44) { last44 = j22; for(; j22 < len52; ++j22){ - if (isPathSeparator2(path107.charCodeAt(j22))) break; + if (isPathSeparator2(path106.charCodeAt(j22))) break; } if (j22 === len52) { - return `\\\\${firstPart}\\${path107.slice(last44)}\\`; + return `\\\\${firstPart}\\${path106.slice(last44)}\\`; } else if (j22 !== last44) { - device = `\\\\${firstPart}\\${path107.slice(last44, j22)}`; + device = `\\\\${firstPart}\\${path106.slice(last44, j22)}`; rootEnd = j22; } } @@ -43914,29 +46313,29 @@ function normalize9(path107) { } else { rootEnd = 1; } - } else if (isWindowsDeviceRoot2(code66)) { - if (path107.charCodeAt(1) === 58) { - device = path107.slice(0, 2); + } else if (isWindowsDeviceRoot2(code67)) { + if (path106.charCodeAt(1) === 58) { + device = path106.slice(0, 2); rootEnd = 2; if (len52 > 2) { - if (isPathSeparator2(path107.charCodeAt(2))) { + if (isPathSeparator2(path106.charCodeAt(2))) { isAbsolute23 = true; rootEnd = 3; } } } } - } else if (isPathSeparator2(code66)) { + } else if (isPathSeparator2(code67)) { return "\\"; } let tail8; if (rootEnd < len52) { - tail8 = normalizeString2(path107.slice(rootEnd), !isAbsolute23, "\\", isPathSeparator2); + tail8 = normalizeString2(path106.slice(rootEnd), !isAbsolute23, "\\", isPathSeparator2); } else { tail8 = ""; } if (tail8.length === 0 && !isAbsolute23) tail8 = "."; - if (tail8.length > 0 && isPathSeparator2(path107.charCodeAt(len52 - 1))) { + if (tail8.length > 0 && isPathSeparator2(path106.charCodeAt(len52 - 1))) { tail8 += "\\"; } if (device === undefined) { @@ -43957,16 +46356,16 @@ function normalize9(path107) { return device; } } -function isAbsolute6(path108) { - assertPath2(path108); - const len53 = path108.length; +function isAbsolute6(path107) { + assertPath2(path107); + const len53 = path107.length; if (len53 === 0) return false; - const code67 = path108.charCodeAt(0); - if (isPathSeparator2(code67)) { + const code68 = path107.charCodeAt(0); + if (isPathSeparator2(code68)) { return true; - } else if (isWindowsDeviceRoot2(code67)) { - if (len53 > 2 && path108.charCodeAt(1) === 58) { - if (isPathSeparator2(path108.charCodeAt(2))) return true; + } else if (isWindowsDeviceRoot2(code68)) { + if (len53 > 2 && path107.charCodeAt(1) === 58) { + if (isPathSeparator2(path107.charCodeAt(2))) return true; } } return false; @@ -43976,18 +46375,18 @@ function join9(...paths) { if (pathsCount === 0) return "."; let joined; let firstPart = null; - for(let i162 = 0; i162 < pathsCount; ++i162){ - const path109 = paths[i162]; - assertPath2(path109); - if (path109.length > 0) { - if (joined === undefined) joined = firstPart = path109; - else joined += `\\${path109}`; + for(let i165 = 0; i165 < pathsCount; ++i165){ + const path108 = paths[i165]; + assertPath2(path108); + if (path108.length > 0) { + if (joined === undefined) joined = firstPart = path108; + else joined += `\\${path108}`; } } if (joined === undefined) return "."; let needsReplace = true; let slashCount = 0; - assert3(firstPart != null); + assert4(firstPart != null); if (isPathSeparator2(firstPart.charCodeAt(0))) { ++slashCount; const firstLen = firstPart.length; @@ -44041,37 +46440,37 @@ function relative6(from, to) { const toLen = toEnd - toStart; const length = fromLen < toLen ? fromLen : toLen; let lastCommonSep = -1; - let i163 = 0; - for(; i163 <= length; ++i163){ - if (i163 === length) { + let i166 = 0; + for(; i166 <= length; ++i166){ + if (i166 === length) { if (toLen > length) { - if (to.charCodeAt(toStart + i163) === 92) { - return toOrig.slice(toStart + i163 + 1); - } else if (i163 === 2) { - return toOrig.slice(toStart + i163); + if (to.charCodeAt(toStart + i166) === 92) { + return toOrig.slice(toStart + i166 + 1); + } else if (i166 === 2) { + return toOrig.slice(toStart + i166); } } if (fromLen > length) { - if (from.charCodeAt(fromStart + i163) === 92) { - lastCommonSep = i163; - } else if (i163 === 2) { + if (from.charCodeAt(fromStart + i166) === 92) { + lastCommonSep = i166; + } else if (i166 === 2) { lastCommonSep = 3; } } break; } - const fromCode = from.charCodeAt(fromStart + i163); - const toCode = to.charCodeAt(toStart + i163); + const fromCode = from.charCodeAt(fromStart + i166); + const toCode = to.charCodeAt(toStart + i166); if (fromCode !== toCode) break; - else if (fromCode === 92) lastCommonSep = i163; + else if (fromCode === 92) lastCommonSep = i166; } - if (i163 !== length && lastCommonSep === -1) { + if (i166 !== length && lastCommonSep === -1) { return toOrig; } let out = ""; if (lastCommonSep === -1) lastCommonSep = 0; - for(i163 = fromStart + lastCommonSep + 1; i163 <= fromEnd; ++i163){ - if (i163 === fromEnd || from.charCodeAt(i163) === 92) { + for(i166 = fromStart + lastCommonSep + 1; i166 <= fromEnd; ++i166){ + if (i166 === fromEnd || from.charCodeAt(i166) === 92) { if (out.length === 0) out += ".."; else out += "\\.."; } @@ -44084,15 +46483,15 @@ function relative6(from, to) { return toOrig.slice(toStart, toEnd); } } -function toNamespacedPath6(path112) { - if (typeof path112 !== "string") return path112; - if (path112.length === 0) return ""; - const resolvedPath = resolve6(path112); +function toNamespacedPath6(path109) { + if (typeof path109 !== "string") return path109; + if (path109.length === 0) return ""; + const resolvedPath = resolve6(path109); if (resolvedPath.length >= 3) { if (resolvedPath.charCodeAt(0) === 92) { if (resolvedPath.charCodeAt(1) === 92) { - const code68 = resolvedPath.charCodeAt(2); - if (code68 !== 63 && code68 !== 46) { + const code69 = resolvedPath.charCodeAt(2); + if (code69 !== 63 && code69 !== 46) { return `\\\\?\\UNC\\${resolvedPath.slice(2)}`; } } @@ -44102,38 +46501,38 @@ function toNamespacedPath6(path112) { } } } - return path112; + return path109; } -function dirname6(path113) { - assertPath2(path113); - const len54 = path113.length; +function dirname6(path112) { + assertPath2(path112); + const len54 = path112.length; if (len54 === 0) return "."; let rootEnd = -1; let end = -1; let matchedSlash = true; let offset120 = 0; - const code69 = path113.charCodeAt(0); + const code70 = path112.charCodeAt(0); if (len54 > 1) { - if (isPathSeparator2(code69)) { + if (isPathSeparator2(code70)) { rootEnd = offset120 = 1; - if (isPathSeparator2(path113.charCodeAt(1))) { + if (isPathSeparator2(path112.charCodeAt(1))) { let j23 = 2; let last45 = j23; for(; j23 < len54; ++j23){ - if (isPathSeparator2(path113.charCodeAt(j23))) break; + if (isPathSeparator2(path112.charCodeAt(j23))) break; } if (j23 < len54 && j23 !== last45) { last45 = j23; for(; j23 < len54; ++j23){ - if (!isPathSeparator2(path113.charCodeAt(j23))) break; + if (!isPathSeparator2(path112.charCodeAt(j23))) break; } if (j23 < len54 && j23 !== last45) { last45 = j23; for(; j23 < len54; ++j23){ - if (isPathSeparator2(path113.charCodeAt(j23))) break; + if (isPathSeparator2(path112.charCodeAt(j23))) break; } if (j23 === len54) { - return path113; + return path112; } if (j23 !== last45) { rootEnd = offset120 = j23 + 1; @@ -44141,21 +46540,21 @@ function dirname6(path113) { } } } - } else if (isWindowsDeviceRoot2(code69)) { - if (path113.charCodeAt(1) === 58) { + } else if (isWindowsDeviceRoot2(code70)) { + if (path112.charCodeAt(1) === 58) { rootEnd = offset120 = 2; if (len54 > 2) { - if (isPathSeparator2(path113.charCodeAt(2))) rootEnd = offset120 = 3; + if (isPathSeparator2(path112.charCodeAt(2))) rootEnd = offset120 = 3; } } } - } else if (isPathSeparator2(code69)) { - return path113; + } else if (isPathSeparator2(code70)) { + return path112; } - for(let i164 = len54 - 1; i164 >= offset120; --i164){ - if (isPathSeparator2(path113.charCodeAt(i164))) { + for(let i167 = len54 - 1; i167 >= offset120; --i167){ + if (isPathSeparator2(path112.charCodeAt(i167))) { if (!matchedSlash) { - end = i164; + end = i167; break; } } else { @@ -44166,45 +46565,45 @@ function dirname6(path113) { if (rootEnd === -1) return "."; else end = rootEnd; } - return path113.slice(0, end); + return path112.slice(0, end); } -function basename6(path114, ext = "") { +function basename6(path113, ext = "") { if (ext !== undefined && typeof ext !== "string") { throw new ERR_INVALID_ARG_TYPE("ext", [ "string" ], ext); } - assertPath2(path114); - let start53 = 0; + assertPath2(path113); + let start54 = 0; let end = -1; let matchedSlash = true; - let i165; - if (path114.length >= 2) { - const drive = path114.charCodeAt(0); + let i168; + if (path113.length >= 2) { + const drive = path113.charCodeAt(0); if (isWindowsDeviceRoot2(drive)) { - if (path114.charCodeAt(1) === 58) start53 = 2; + if (path113.charCodeAt(1) === 58) start54 = 2; } } - if (ext !== undefined && ext.length > 0 && ext.length <= path114.length) { - if (ext.length === path114.length && ext === path114) return ""; + if (ext !== undefined && ext.length > 0 && ext.length <= path113.length) { + if (ext.length === path113.length && ext === path113) return ""; let extIdx = ext.length - 1; let firstNonSlashEnd = -1; - for(i165 = path114.length - 1; i165 >= start53; --i165){ - const code70 = path114.charCodeAt(i165); - if (isPathSeparator2(code70)) { + for(i168 = path113.length - 1; i168 >= start54; --i168){ + const code71 = path113.charCodeAt(i168); + if (isPathSeparator2(code71)) { if (!matchedSlash) { - start53 = i165 + 1; + start54 = i168 + 1; break; } } else { if (firstNonSlashEnd === -1) { matchedSlash = false; - firstNonSlashEnd = i165 + 1; + firstNonSlashEnd = i168 + 1; } if (extIdx >= 0) { - if (code70 === ext.charCodeAt(extIdx)) { + if (code71 === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { - end = i165; + end = i168; } } else { extIdx = -1; @@ -44213,51 +46612,51 @@ function basename6(path114, ext = "") { } } } - if (start53 === end) end = firstNonSlashEnd; - else if (end === -1) end = path114.length; - return path114.slice(start53, end); + if (start54 === end) end = firstNonSlashEnd; + else if (end === -1) end = path113.length; + return path113.slice(start54, end); } else { - for(i165 = path114.length - 1; i165 >= start53; --i165){ - if (isPathSeparator2(path114.charCodeAt(i165))) { + for(i168 = path113.length - 1; i168 >= start54; --i168){ + if (isPathSeparator2(path113.charCodeAt(i168))) { if (!matchedSlash) { - start53 = i165 + 1; + start54 = i168 + 1; break; } } else if (end === -1) { matchedSlash = false; - end = i165 + 1; + end = i168 + 1; } } if (end === -1) return ""; - return path114.slice(start53, end); + return path113.slice(start54, end); } } -function extname6(path115) { - assertPath2(path115); - let start54 = 0; +function extname6(path114) { + assertPath2(path114); + let start55 = 0; let startDot = -1; let startPart = 0; let end = -1; let matchedSlash = true; let preDotState = 0; - if (path115.length >= 2 && path115.charCodeAt(1) === 58 && isWindowsDeviceRoot2(path115.charCodeAt(0))) { - start54 = startPart = 2; + if (path114.length >= 2 && path114.charCodeAt(1) === 58 && isWindowsDeviceRoot2(path114.charCodeAt(0))) { + start55 = startPart = 2; } - for(let i166 = path115.length - 1; i166 >= start54; --i166){ - const code71 = path115.charCodeAt(i166); - if (isPathSeparator2(code71)) { + for(let i169 = path114.length - 1; i169 >= start55; --i169){ + const code72 = path114.charCodeAt(i169); + if (isPathSeparator2(code72)) { if (!matchedSlash) { - startPart = i166 + 1; + startPart = i169 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i166 + 1; + end = i169 + 1; } - if (code71 === 46) { - if (startDot === -1) startDot = i166; + if (code72 === 46) { + if (startDot === -1) startDot = i169; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -44266,7 +46665,7 @@ function extname6(path115) { if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { return ""; } - return path115.slice(startDot, end); + return path114.slice(startDot, end); } function format9(pathObject) { if (pathObject === null || typeof pathObject !== "object") { @@ -44276,8 +46675,8 @@ function format9(pathObject) { } return _format2("\\", pathObject); } -function parse9(path116) { - assertPath2(path116); +function parse9(path115) { + assertPath2(path115); const ret = { root: "", dir: "", @@ -44285,28 +46684,28 @@ function parse9(path116) { ext: "", name: "" }; - const len55 = path116.length; + const len55 = path115.length; if (len55 === 0) return ret; let rootEnd = 0; - let code72 = path116.charCodeAt(0); + let code73 = path115.charCodeAt(0); if (len55 > 1) { - if (isPathSeparator2(code72)) { + if (isPathSeparator2(code73)) { rootEnd = 1; - if (isPathSeparator2(path116.charCodeAt(1))) { + if (isPathSeparator2(path115.charCodeAt(1))) { let j24 = 2; let last46 = j24; for(; j24 < len55; ++j24){ - if (isPathSeparator2(path116.charCodeAt(j24))) break; + if (isPathSeparator2(path115.charCodeAt(j24))) break; } if (j24 < len55 && j24 !== last46) { last46 = j24; for(; j24 < len55; ++j24){ - if (!isPathSeparator2(path116.charCodeAt(j24))) break; + if (!isPathSeparator2(path115.charCodeAt(j24))) break; } if (j24 < len55 && j24 !== last46) { last46 = j24; for(; j24 < len55; ++j24){ - if (isPathSeparator2(path116.charCodeAt(j24))) break; + if (isPathSeparator2(path115.charCodeAt(j24))) break; } if (j24 === len55) { rootEnd = j24; @@ -44316,49 +46715,49 @@ function parse9(path116) { } } } - } else if (isWindowsDeviceRoot2(code72)) { - if (path116.charCodeAt(1) === 58) { + } else if (isWindowsDeviceRoot2(code73)) { + if (path115.charCodeAt(1) === 58) { rootEnd = 2; if (len55 > 2) { - if (isPathSeparator2(path116.charCodeAt(2))) { + if (isPathSeparator2(path115.charCodeAt(2))) { if (len55 === 3) { - ret.root = ret.dir = path116; + ret.root = ret.dir = path115; return ret; } rootEnd = 3; } } else { - ret.root = ret.dir = path116; + ret.root = ret.dir = path115; return ret; } } } - } else if (isPathSeparator2(code72)) { - ret.root = ret.dir = path116; + } else if (isPathSeparator2(code73)) { + ret.root = ret.dir = path115; return ret; } - if (rootEnd > 0) ret.root = path116.slice(0, rootEnd); + if (rootEnd > 0) ret.root = path115.slice(0, rootEnd); let startDot = -1; let startPart = rootEnd; let end = -1; let matchedSlash = true; - let i167 = path116.length - 1; + let i170 = path115.length - 1; let preDotState = 0; - for(; i167 >= rootEnd; --i167){ - code72 = path116.charCodeAt(i167); - if (isPathSeparator2(code72)) { + for(; i170 >= rootEnd; --i170){ + code73 = path115.charCodeAt(i170); + if (isPathSeparator2(code73)) { if (!matchedSlash) { - startPart = i167 + 1; + startPart = i170 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i167 + 1; + end = i170 + 1; } - if (code72 === 46) { - if (startDot === -1) startDot = i167; + if (code73 === 46) { + if (startDot === -1) startDot = i170; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -44366,15 +46765,15 @@ function parse9(path116) { } if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { if (end !== -1) { - ret.base = ret.name = path116.slice(startPart, end); + ret.base = ret.name = path115.slice(startPart, end); } } else { - ret.name = path116.slice(startPart, startDot); - ret.base = path116.slice(startPart, end); - ret.ext = path116.slice(startDot, end); + ret.name = path115.slice(startPart, startDot); + ret.base = path115.slice(startPart, end); + ret.ext = path115.slice(startDot, end); } if (startPart > 0 && startPart !== rootEnd) { - ret.dir = path116.slice(0, startPart - 1); + ret.dir = path115.slice(0, startPart - 1); } else ret.dir = ret.root; return ret; } @@ -44383,17 +46782,17 @@ function fromFileUrl6(url) { if (url.protocol != "file:") { throw new TypeError("Must be a file URL."); } - let path117 = decodeURIComponent(url.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\"); + let path116 = decodeURIComponent(url.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\"); if (url.hostname != "") { - path117 = `\\\\${url.hostname}${path117}`; + path116 = `\\\\${url.hostname}${path116}`; } - return path117; + return path116; } -function toFileUrl6(path118) { - if (!isAbsolute6(path118)) { +function toFileUrl6(path117) { + if (!isAbsolute6(path117)) { throw new TypeError("Must be an absolute path."); } - const [, hostname6, pathname] = path118.match(/^(?:[/\\]{2}([^/\\]+)(?=[/\\](?:[^/\\]|$)))?(.*)/); + const [, hostname6, pathname] = path117.match(/^(?:[/\\]{2}([^/\\]+)(?=[/\\](?:[^/\\]|$)))?(.*)/); const url = new URL("file:///"); url.pathname = encodeWhitespace2(pathname.replace(/%/g, "%25")); if (hostname6 != null && hostname6 != "localhost") { @@ -44421,7 +46820,7 @@ const __default9 = { toFileUrl: toFileUrl6, toNamespacedPath: toNamespacedPath6 }; -const mod26 = { +const mod25 = { sep: sep6, delimiter: delimiter6, resolve: resolve6, @@ -44444,22 +46843,22 @@ const delimiter7 = ":"; function resolve7(...pathSegments) { let resolvedPath = ""; let resolvedAbsolute = false; - for(let i168 = pathSegments.length - 1; i168 >= -1 && !resolvedAbsolute; i168--){ - let path119; - if (i168 >= 0) path119 = pathSegments[i168]; + for(let i171 = pathSegments.length - 1; i171 >= -1 && !resolvedAbsolute; i171--){ + let path118; + if (i171 >= 0) path118 = pathSegments[i171]; else { const { Deno } = globalThis; if (typeof Deno?.cwd !== "function") { throw new TypeError("Resolved a relative path without a CWD."); } - path119 = Deno.cwd(); + path118 = Deno.cwd(); } - assertPath2(path119); - if (path119.length === 0) { + assertPath2(path118); + if (path118.length === 0) { continue; } - resolvedPath = `${path119}/${resolvedPath}`; - resolvedAbsolute = path119.charCodeAt(0) === CHAR_FORWARD_SLASH2; + resolvedPath = `${path118}/${resolvedPath}`; + resolvedAbsolute = path118.charCodeAt(0) === CHAR_FORWARD_SLASH2; } resolvedPath = normalizeString2(resolvedPath, !resolvedAbsolute, "/", isPosixPathSeparator2); if (resolvedAbsolute) { @@ -44468,30 +46867,30 @@ function resolve7(...pathSegments) { } else if (resolvedPath.length > 0) return resolvedPath; else return "."; } -function normalize10(path120) { +function normalize10(path119) { + assertPath2(path119); + if (path119.length === 0) return "."; + const isAbsolute14 = path119.charCodeAt(0) === 47; + const trailingSeparator = path119.charCodeAt(path119.length - 1) === 47; + path119 = normalizeString2(path119, !isAbsolute14, "/", isPosixPathSeparator2); + if (path119.length === 0 && !isAbsolute14) path119 = "."; + if (path119.length > 0 && trailingSeparator) path119 += "/"; + if (isAbsolute14) return `/${path119}`; + return path119; +} +function isAbsolute7(path120) { assertPath2(path120); - if (path120.length === 0) return "."; - const isAbsolute14 = path120.charCodeAt(0) === 47; - const trailingSeparator = path120.charCodeAt(path120.length - 1) === 47; - path120 = normalizeString2(path120, !isAbsolute14, "/", isPosixPathSeparator2); - if (path120.length === 0 && !isAbsolute14) path120 = "."; - if (path120.length > 0 && trailingSeparator) path120 += "/"; - if (isAbsolute14) return `/${path120}`; - return path120; -} -function isAbsolute7(path121) { - assertPath2(path121); - return path121.length > 0 && path121.charCodeAt(0) === 47; + return path120.length > 0 && path120.charCodeAt(0) === 47; } function join10(...paths) { if (paths.length === 0) return "."; let joined; - for(let i169 = 0, len56 = paths.length; i169 < len56; ++i169){ - const path122 = paths[i169]; - assertPath2(path122); - if (path122.length > 0) { - if (!joined) joined = path122; - else joined += `/${path122}`; + for(let i172 = 0, len56 = paths.length; i172 < len56; ++i172){ + const path121 = paths[i172]; + assertPath2(path121); + if (path121.length > 0) { + if (!joined) joined = path121; + else joined += `/${path121}`; } } if (!joined) return "."; @@ -44518,32 +46917,32 @@ function relative7(from, to) { const toLen = toEnd - toStart; const length = fromLen < toLen ? fromLen : toLen; let lastCommonSep = -1; - let i170 = 0; - for(; i170 <= length; ++i170){ - if (i170 === length) { + let i173 = 0; + for(; i173 <= length; ++i173){ + if (i173 === length) { if (toLen > length) { - if (to.charCodeAt(toStart + i170) === 47) { - return to.slice(toStart + i170 + 1); - } else if (i170 === 0) { - return to.slice(toStart + i170); + if (to.charCodeAt(toStart + i173) === 47) { + return to.slice(toStart + i173 + 1); + } else if (i173 === 0) { + return to.slice(toStart + i173); } } else if (fromLen > length) { - if (from.charCodeAt(fromStart + i170) === 47) { - lastCommonSep = i170; - } else if (i170 === 0) { + if (from.charCodeAt(fromStart + i173) === 47) { + lastCommonSep = i173; + } else if (i173 === 0) { lastCommonSep = 0; } } break; } - const fromCode = from.charCodeAt(fromStart + i170); - const toCode = to.charCodeAt(toStart + i170); + const fromCode = from.charCodeAt(fromStart + i173); + const toCode = to.charCodeAt(toStart + i173); if (fromCode !== toCode) break; - else if (fromCode === 47) lastCommonSep = i170; + else if (fromCode === 47) lastCommonSep = i173; } let out = ""; - for(i170 = fromStart + lastCommonSep + 1; i170 <= fromEnd; ++i170){ - if (i170 === fromEnd || from.charCodeAt(i170) === 47) { + for(i173 = fromStart + lastCommonSep + 1; i173 <= fromEnd; ++i173){ + if (i173 === fromEnd || from.charCodeAt(i173) === 47) { if (out.length === 0) out += ".."; else out += "/.."; } @@ -44555,19 +46954,19 @@ function relative7(from, to) { return to.slice(toStart); } } -function toNamespacedPath7(path123) { - return path123; +function toNamespacedPath7(path122) { + return path122; } -function dirname7(path124) { - assertPath2(path124); - if (path124.length === 0) return "."; - const hasRoot = path124.charCodeAt(0) === 47; +function dirname7(path123) { + assertPath2(path123); + if (path123.length === 0) return "."; + const hasRoot = path123.charCodeAt(0) === 47; let end = -1; let matchedSlash = true; - for(let i171 = path124.length - 1; i171 >= 1; --i171){ - if (path124.charCodeAt(i171) === 47) { + for(let i174 = path123.length - 1; i174 >= 1; --i174){ + if (path123.charCodeAt(i174) === 47) { if (!matchedSlash) { - end = i171; + end = i174; break; } } else { @@ -44576,39 +46975,39 @@ function dirname7(path124) { } if (end === -1) return hasRoot ? "/" : "."; if (hasRoot && end === 1) return "//"; - return path124.slice(0, end); + return path123.slice(0, end); } -function basename7(path125, ext = "") { +function basename7(path124, ext = "") { if (ext !== undefined && typeof ext !== "string") { throw new ERR_INVALID_ARG_TYPE("ext", [ "string" ], ext); } - assertPath2(path125); - let start55 = 0; + assertPath2(path124); + let start56 = 0; let end = -1; let matchedSlash = true; - let i172; - if (ext !== undefined && ext.length > 0 && ext.length <= path125.length) { - if (ext.length === path125.length && ext === path125) return ""; + let i175; + if (ext !== undefined && ext.length > 0 && ext.length <= path124.length) { + if (ext.length === path124.length && ext === path124) return ""; let extIdx = ext.length - 1; let firstNonSlashEnd = -1; - for(i172 = path125.length - 1; i172 >= 0; --i172){ - const code73 = path125.charCodeAt(i172); - if (code73 === 47) { + for(i175 = path124.length - 1; i175 >= 0; --i175){ + const code74 = path124.charCodeAt(i175); + if (code74 === 47) { if (!matchedSlash) { - start55 = i172 + 1; + start56 = i175 + 1; break; } } else { if (firstNonSlashEnd === -1) { matchedSlash = false; - firstNonSlashEnd = i172 + 1; + firstNonSlashEnd = i175 + 1; } if (extIdx >= 0) { - if (code73 === ext.charCodeAt(extIdx)) { + if (code74 === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { - end = i172; + end = i175; } } else { extIdx = -1; @@ -44617,47 +47016,47 @@ function basename7(path125, ext = "") { } } } - if (start55 === end) end = firstNonSlashEnd; - else if (end === -1) end = path125.length; - return path125.slice(start55, end); + if (start56 === end) end = firstNonSlashEnd; + else if (end === -1) end = path124.length; + return path124.slice(start56, end); } else { - for(i172 = path125.length - 1; i172 >= 0; --i172){ - if (path125.charCodeAt(i172) === 47) { + for(i175 = path124.length - 1; i175 >= 0; --i175){ + if (path124.charCodeAt(i175) === 47) { if (!matchedSlash) { - start55 = i172 + 1; + start56 = i175 + 1; break; } } else if (end === -1) { matchedSlash = false; - end = i172 + 1; + end = i175 + 1; } } if (end === -1) return ""; - return path125.slice(start55, end); + return path124.slice(start56, end); } } -function extname7(path126) { - assertPath2(path126); +function extname7(path125) { + assertPath2(path125); let startDot = -1; let startPart = 0; let end = -1; let matchedSlash = true; let preDotState = 0; - for(let i173 = path126.length - 1; i173 >= 0; --i173){ - const code74 = path126.charCodeAt(i173); - if (code74 === 47) { + for(let i176 = path125.length - 1; i176 >= 0; --i176){ + const code75 = path125.charCodeAt(i176); + if (code75 === 47) { if (!matchedSlash) { - startPart = i173 + 1; + startPart = i176 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i173 + 1; + end = i176 + 1; } - if (code74 === 46) { - if (startDot === -1) startDot = i173; + if (code75 === 46) { + if (startDot === -1) startDot = i176; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -44666,7 +47065,7 @@ function extname7(path126) { if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { return ""; } - return path126.slice(startDot, end); + return path125.slice(startDot, end); } function format10(pathObject) { if (pathObject === null || typeof pathObject !== "object") { @@ -44676,8 +47075,8 @@ function format10(pathObject) { } return _format2("/", pathObject); } -function parse10(path127) { - assertPath2(path127); +function parse10(path126) { + assertPath2(path126); const ret = { root: "", dir: "", @@ -44685,36 +47084,36 @@ function parse10(path127) { ext: "", name: "" }; - if (path127.length === 0) return ret; - const isAbsolute24 = path127.charCodeAt(0) === 47; - let start56; + if (path126.length === 0) return ret; + const isAbsolute24 = path126.charCodeAt(0) === 47; + let start57; if (isAbsolute24) { ret.root = "/"; - start56 = 1; + start57 = 1; } else { - start56 = 0; + start57 = 0; } let startDot = -1; let startPart = 0; let end = -1; let matchedSlash = true; - let i174 = path127.length - 1; + let i177 = path126.length - 1; let preDotState = 0; - for(; i174 >= start56; --i174){ - const code75 = path127.charCodeAt(i174); - if (code75 === 47) { + for(; i177 >= start57; --i177){ + const code76 = path126.charCodeAt(i177); + if (code76 === 47) { if (!matchedSlash) { - startPart = i174 + 1; + startPart = i177 + 1; break; } continue; } if (end === -1) { matchedSlash = false; - end = i174 + 1; + end = i177 + 1; } - if (code75 === 46) { - if (startDot === -1) startDot = i174; + if (code76 === 46) { + if (startDot === -1) startDot = i177; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { preDotState = -1; @@ -44723,22 +47122,22 @@ function parse10(path127) { if (startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { if (end !== -1) { if (startPart === 0 && isAbsolute24) { - ret.base = ret.name = path127.slice(1, end); + ret.base = ret.name = path126.slice(1, end); } else { - ret.base = ret.name = path127.slice(startPart, end); + ret.base = ret.name = path126.slice(startPart, end); } } } else { if (startPart === 0 && isAbsolute24) { - ret.name = path127.slice(1, startDot); - ret.base = path127.slice(1, end); + ret.name = path126.slice(1, startDot); + ret.base = path126.slice(1, end); } else { - ret.name = path127.slice(startPart, startDot); - ret.base = path127.slice(startPart, end); + ret.name = path126.slice(startPart, startDot); + ret.base = path126.slice(startPart, end); } - ret.ext = path127.slice(startDot, end); + ret.ext = path126.slice(startDot, end); } - if (startPart > 0) ret.dir = path127.slice(0, startPart - 1); + if (startPart > 0) ret.dir = path126.slice(0, startPart - 1); else if (isAbsolute24) ret.dir = "/"; return ret; } @@ -44749,12 +47148,12 @@ function fromFileUrl7(url) { } return decodeURIComponent(url.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25")); } -function toFileUrl7(path128) { - if (!isAbsolute7(path128)) { +function toFileUrl7(path127) { + if (!isAbsolute7(path127)) { throw new TypeError("Must be an absolute path."); } const url = new URL("file:///"); - url.pathname = encodeWhitespace2(path128.replace(/%/g, "%25").replace(/\\/g, "%5C")); + url.pathname = encodeWhitespace2(path127.replace(/%/g, "%25").replace(/\\/g, "%5C")); return url; } const __default10 = { @@ -44774,7 +47173,7 @@ const __default10 = { toFileUrl: toFileUrl7, toNamespacedPath: toNamespacedPath7 }; -const mod27 = { +const mod26 = { sep: sep7, delimiter: delimiter7, resolve: resolve7, @@ -44792,7 +47191,7 @@ const mod27 = { toFileUrl: toFileUrl7, default: __default10 }; -const path4 = isWindows1 ? mod26 : mod27; +const path4 = isWindows1 ? mod25 : mod26; const { join: join11 , normalize: normalize11 } = path4; const path5 = isWindows1 ? __default9 : __default10; const { basename: basename8 , delimiter: delimiter8 , dirname: dirname8 , extname: extname8 , format: format11 , fromFileUrl: fromFileUrl8 , isAbsolute: isAbsolute8 , join: join12 , normalize: normalize12 , parse: parse11 , relative: relative8 , resolve: resolve8 , sep: sep8 , toFileUrl: toFileUrl8 , toNamespacedPath: toNamespacedPath8 , } = path5; @@ -44802,14 +47201,14 @@ const damp = 700; const delimiter9 = "-"; const regexNonASCII = /[^\0-\x7E]/; const regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; -const errors = { +const errors1 = { "overflow": "Overflow: input needs wider integers to process", "not-basic": "Illegal input >= 0x80 (not a basic code point)", "invalid-input": "Invalid input" }; const baseMinusTMin = 36 - 1; -function error2(type55) { - throw new RangeError(errors[type55]); +function error2(type48) { + throw new RangeError(errors1[type48]); } function mapDomain(str102, fn) { const parts5 = str102.split("@"); @@ -44828,17 +47227,17 @@ function ucs2decode(str103) { let counter = 0; const length = str103.length; while(counter < length){ - const value406 = str103.charCodeAt(counter++); - if (value406 >= 0xD800 && value406 <= 0xDBFF && counter < length) { + const value410 = str103.charCodeAt(counter++); + if (value410 >= 0xD800 && value410 <= 0xDBFF && counter < length) { const extra = str103.charCodeAt(counter++); if ((extra & 0xFC00) == 0xDC00) { - output.push(((value406 & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + output.push(((value410 & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); } else { - output.push(value406); + output.push(value410); counter--; } } else { - output.push(value406); + output.push(value410); } } return output; @@ -44855,11 +47254,11 @@ function adapt(delta, numPoints, firstTime) { } return Math.floor(k10 + (baseMinusTMin + 1) * delta / (delta + 38)); } -function encode4(str104) { +function encode6(str104) { const output = []; const input = ucs2decode(str104); const inputLength = input.length; - let n128 = 128; + let n129 = 128; let delta = 0; let bias = 72; for (const currentValue of input){ @@ -44875,46 +47274,46 @@ function encode4(str104) { while(handledCPCount < inputLength){ let m29 = 2147483647; for (const currentValue of input){ - if (currentValue >= n128 && currentValue < m29) { + if (currentValue >= n129 && currentValue < m29) { m29 = currentValue; } } const handledCPCountPlusOne = handledCPCount + 1; - if (m29 - n128 > Math.floor((2147483647 - delta) / handledCPCountPlusOne)) { + if (m29 - n129 > Math.floor((2147483647 - delta) / handledCPCountPlusOne)) { error2("overflow"); } - delta += (m29 - n128) * handledCPCountPlusOne; - n128 = m29; + delta += (m29 - n129) * handledCPCountPlusOne; + n129 = m29; for (const currentValue1 of input){ - if (currentValue1 < n128 && ++delta > 2147483647) { + if (currentValue1 < n129 && ++delta > 2147483647) { error2("overflow"); } - if (currentValue1 == n128) { - let q5 = delta; + if (currentValue1 == n129) { + let q4 = delta; for(let k11 = 36;; k11 += base){ - const t95 = k11 <= bias ? 1 : k11 >= bias + 26 ? 26 : k11 - bias; - if (q5 < t95) { + const t97 = k11 <= bias ? 1 : k11 >= bias + 26 ? 26 : k11 - bias; + if (q4 < t97) { break; } - const qMinusT = q5 - t95; - const baseMinusT = 36 - t95; - output.push(String.fromCharCode(digitToBasic(t95 + qMinusT % baseMinusT, 0))); - q5 = Math.floor(qMinusT / baseMinusT); + const qMinusT = q4 - t97; + const baseMinusT = 36 - t97; + output.push(String.fromCharCode(digitToBasic(t97 + qMinusT % baseMinusT, 0))); + q4 = Math.floor(qMinusT / baseMinusT); } - output.push(String.fromCharCode(digitToBasic(q5, 0))); + output.push(String.fromCharCode(digitToBasic(q4, 0))); bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); delta = 0; ++handledCPCount; } } ++delta; - ++n128; + ++n129; } return output.join(""); } function toASCII(input) { return mapDomain(input, function(str105) { - return regexNonASCII.test(str105) ? "xn--" + encode4(str105) : str105; + return regexNonASCII.test(str105) ? "xn--" + encode6(str105) : str105; }); } const hexTable = new Array(256); @@ -45184,30 +47583,30 @@ function encodeStr(str106, noEscapeTable, hexTable1) { if (len57 === 0) return ""; let out = ""; let lastPos = 0; - for(let i175 = 0; i175 < len57; i175++){ - let c53 = str106.charCodeAt(i175); + for(let i178 = 0; i178 < len57; i178++){ + let c53 = str106.charCodeAt(i178); if (c53 < 0x80) { if (noEscapeTable[c53] === 1) continue; - if (lastPos < i175) out += str106.slice(lastPos, i175); - lastPos = i175 + 1; + if (lastPos < i178) out += str106.slice(lastPos, i178); + lastPos = i178 + 1; out += hexTable1[c53]; continue; } - if (lastPos < i175) out += str106.slice(lastPos, i175); + if (lastPos < i178) out += str106.slice(lastPos, i178); if (c53 < 0x800) { - lastPos = i175 + 1; + lastPos = i178 + 1; out += hexTable1[0xc0 | c53 >> 6] + hexTable1[0x80 | c53 & 0x3f]; continue; } if (c53 < 0xd800 || c53 >= 0xe000) { - lastPos = i175 + 1; + lastPos = i178 + 1; out += hexTable1[0xe0 | c53 >> 12] + hexTable1[0x80 | c53 >> 6 & 0x3f] + hexTable1[0x80 | c53 & 0x3f]; continue; } - ++i175; - if (i175 >= len57) throw new ERR_INVALID_URI(); - const c210 = str106.charCodeAt(i175) & 0x3ff; - lastPos = i175 + 1; + ++i178; + if (i178 >= len57) throw new ERR_INVALID_URI(); + const c210 = str106.charCodeAt(i178) & 0x3ff; + lastPos = i178 + 1; c53 = 0x10000 + ((c53 & 0x3ff) << 10 | c210); out += hexTable1[0xf0 | c53 >> 18] + hexTable1[0x80 | c53 >> 12 & 0x3f] + hexTable1[0x80 | c53 >> 6 & 0x3f] + hexTable1[0x80 | c53 & 0x3f]; } @@ -45216,7 +47615,7 @@ function encodeStr(str106, noEscapeTable, hexTable1) { return out; } const decode6 = parse12; -const encode5 = stringify; +const encode7 = stringify; function qsEscape(str107) { if (typeof str107 !== "string") { if (typeof str107 === "object") { @@ -45488,28 +47887,28 @@ const isHexTable = new Int8Array([ ]); function charCodes(str108) { const ret = new Array(str108.length); - for(let i176 = 0; i176 < str108.length; ++i176){ - ret[i176] = str108.charCodeAt(i176); + for(let i179 = 0; i179 < str108.length; ++i179){ + ret[i179] = str108.charCodeAt(i179); } return ret; } -function addKeyVal(obj, key132, value407, keyEncoded, valEncoded, decode14) { - if (key132.length > 0 && keyEncoded) { - key132 = decode14(key132); +function addKeyVal(obj, key134, value411, keyEncoded, valEncoded, decode14) { + if (key134.length > 0 && keyEncoded) { + key134 = decode14(key134); } - if (value407.length > 0 && valEncoded) { - value407 = decode14(value407); + if (value411.length > 0 && valEncoded) { + value411 = decode14(value411); } - if (obj[key132] === undefined) { - obj[key132] = value407; + if (obj[key134] === undefined) { + obj[key134] = value411; } else { - const curValue = obj[key132]; + const curValue = obj[key134]; if (curValue.pop) { - curValue[curValue.length] = value407; + curValue[curValue.length] = value411; } else { - obj[key132] = [ + obj[key134] = [ curValue, - value407 + value411 ]; } } @@ -45539,61 +47938,61 @@ function parse12(str109, sep14 = "&", eq = "=", { decodeURIComponent =unescape1 let lastPos = 0; let sepIdx = 0; let eqIdx = 0; - let key133 = ""; - let value408 = ""; + let key135 = ""; + let value412 = ""; let keyEncoded = customDecode; let valEncoded = customDecode; const plusChar = customDecode ? "%20" : " "; let encodeCheck = 0; - for(let i177 = 0; i177 < str109.length; ++i177){ - const code76 = str109.charCodeAt(i177); - if (code76 === sepCodes[sepIdx]) { + for(let i180 = 0; i180 < str109.length; ++i180){ + const code77 = str109.charCodeAt(i180); + if (code77 === sepCodes[sepIdx]) { if (++sepIdx === sepLen) { - const end = i177 - sepIdx + 1; + const end = i180 - sepIdx + 1; if (eqIdx < eqLen) { if (lastPos < end) { - key133 += str109.slice(lastPos, end); - } else if (key133.length === 0) { + key135 += str109.slice(lastPos, end); + } else if (key135.length === 0) { if (--pairs === 0) { return obj; } - lastPos = i177 + 1; + lastPos = i180 + 1; sepIdx = eqIdx = 0; continue; } } else if (lastPos < end) { - value408 += str109.slice(lastPos, end); + value412 += str109.slice(lastPos, end); } - addKeyVal(obj, key133, value408, keyEncoded, valEncoded, decode21); + addKeyVal(obj, key135, value412, keyEncoded, valEncoded, decode21); if (--pairs === 0) { return obj; } - key133 = value408 = ""; + key135 = value412 = ""; encodeCheck = 0; - lastPos = i177 + 1; + lastPos = i180 + 1; sepIdx = eqIdx = 0; } } else { sepIdx = 0; if (eqIdx < eqLen) { - if (code76 === eqCodes[eqIdx]) { + if (code77 === eqCodes[eqIdx]) { if (++eqIdx === eqLen) { - const end = i177 - eqIdx + 1; + const end = i180 - eqIdx + 1; if (lastPos < end) { - key133 += str109.slice(lastPos, end); + key135 += str109.slice(lastPos, end); } encodeCheck = 0; - lastPos = i177 + 1; + lastPos = i180 + 1; } continue; } else { eqIdx = 0; if (!keyEncoded) { - if (code76 === 37) { + if (code77 === 37) { encodeCheck = 1; continue; } else if (encodeCheck > 0) { - if (isHexTable[code76] === 1) { + if (isHexTable[code77] === 1) { if (++encodeCheck === 3) { keyEncoded = true; } @@ -45604,26 +48003,26 @@ function parse12(str109, sep14 = "&", eq = "=", { decodeURIComponent =unescape1 } } } - if (code76 === 43) { - if (lastPos < i177) { - key133 += str109.slice(lastPos, i177); + if (code77 === 43) { + if (lastPos < i180) { + key135 += str109.slice(lastPos, i180); } - key133 += plusChar; - lastPos = i177 + 1; + key135 += plusChar; + lastPos = i180 + 1; continue; } } - if (code76 === 43) { - if (lastPos < i177) { - value408 += str109.slice(lastPos, i177); + if (code77 === 43) { + if (lastPos < i180) { + value412 += str109.slice(lastPos, i180); } - value408 += plusChar; - lastPos = i177 + 1; + value412 += plusChar; + lastPos = i180 + 1; } else if (!valEncoded) { - if (code76 === 37) { + if (code77 === 37) { encodeCheck = 1; } else if (encodeCheck > 0) { - if (isHexTable[code76] === 1) { + if (isHexTable[code77] === 1) { if (++encodeCheck === 3) { valEncoded = true; } @@ -45636,14 +48035,14 @@ function parse12(str109, sep14 = "&", eq = "=", { decodeURIComponent =unescape1 } if (lastPos < str109.length) { if (eqIdx < eqLen) { - key133 += str109.slice(lastPos); + key135 += str109.slice(lastPos); } else if (sepIdx < sepLen) { - value408 += str109.slice(lastPos); + value412 += str109.slice(lastPos); } - } else if (eqIdx === 0 && key133.length === 0) { + } else if (eqIdx === 0 && key135.length === 0) { return obj; } - addKeyVal(obj, key133, value408, keyEncoded, valEncoded, decode21); + addKeyVal(obj, key135, value412, keyEncoded, valEncoded, decode21); return obj; } const noEscape = new Int8Array([ @@ -45776,36 +48175,36 @@ const noEscape = new Int8Array([ 1, 0 ]); -function stringifyPrimitive(v22) { - if (typeof v22 === "string") { - return v22; +function stringifyPrimitive(v29) { + if (typeof v29 === "string") { + return v29; } - if (typeof v22 === "number" && isFinite(v22)) { - return "" + v22; + if (typeof v29 === "number" && isFinite(v29)) { + return "" + v29; } - if (typeof v22 === "bigint") { - return "" + v22; + if (typeof v29 === "bigint") { + return "" + v29; } - if (typeof v22 === "boolean") { - return v22 ? "true" : "false"; + if (typeof v29 === "boolean") { + return v29 ? "true" : "false"; } return ""; } -function encodeStringifiedCustom(v23, encode17) { - return encode17(stringifyPrimitive(v23)); +function encodeStringifiedCustom(v30, encode19) { + return encode19(stringifyPrimitive(v30)); } -function encodeStringified(v24, encode21) { - if (typeof v24 === "string") { - return v24.length ? encode21(v24) : ""; +function encodeStringified(v31, encode21) { + if (typeof v31 === "string") { + return v31.length ? encode21(v31) : ""; } - if (typeof v24 === "number" && isFinite(v24)) { - return Math.abs(v24) < 1e21 ? "" + v24 : encode21("" + v24); + if (typeof v31 === "number" && isFinite(v31)) { + return Math.abs(v31) < 1e21 ? "" + v31 : encode21("" + v31); } - if (typeof v24 === "bigint") { - return "" + v24; + if (typeof v31 === "bigint") { + return "" + v31; } - if (typeof v24 === "boolean") { - return v24 ? "true" : "false"; + if (typeof v31 === "boolean") { + return v31 ? "true" : "false"; } return ""; } @@ -45818,13 +48217,13 @@ function stringify(obj, sep15, eq, options43) { const keys = Object.keys(obj); const len58 = keys.length; let fields = ""; - for(let i178 = 0; i178 < len58; ++i178){ - const k12 = keys[i178]; - const v25 = obj[k12]; + for(let i181 = 0; i181 < len58; ++i181){ + const k12 = keys[i181]; + const v32 = obj[k12]; let ks = convert(k12, encode31); ks += eq; - if (Array.isArray(v25)) { - const vlen = v25.length; + if (Array.isArray(v32)) { + const vlen = v32.length; if (vlen === 0) continue; if (fields) { fields += sep15; @@ -45834,14 +48233,14 @@ function stringify(obj, sep15, eq, options43) { fields += sep15; } fields += ks; - fields += convert(v25[j25], encode31); + fields += convert(v32[j25], encode31); } } else { if (fields) { fields += sep15; } fields += ks; - fields += convert(v25, encode31); + fields += convert(v32, encode31); } } return fields; @@ -46158,7 +48557,7 @@ const __default11 = { parse: parse12, stringify, decode: decode6, - encode: encode5, + encode: encode7, unescape: unescape1, escape: escape3, unescapeBuffer @@ -46402,8 +48801,8 @@ class Url { if (relative10.protocol && relative10.protocol !== result.protocol) { if (!slashedProtocol.has(relative10.protocol)) { const keys = Object.keys(relative10); - for(let v26 = 0; v26 < keys.length; v26++){ - const k13 = keys[v26]; + for(let v33 = 0; v33 < keys.length; v33++){ + const k13 = keys[v33]; result[k13] = relative10[k13]; } result.href = result.format(); @@ -46428,9 +48827,9 @@ class Url { result.hostname = relative10.hostname || relative10.host; result.port = relative10.port; if (result.pathname || result.search) { - const p43 = result.pathname || ""; + const p44 = result.pathname || ""; const s47 = result.search || ""; - result.path = p43 + s47; + result.path = p44 + s47; } result.slashes = result.slashes || relative10.slashes; result.href = result.format(); @@ -46512,15 +48911,15 @@ class Url { let last47 = srcPath.slice(-1)[0]; const hasTrailingSlash = (result.host || relative10.host || srcPath.length > 1) && (last47 === "." || last47 === "..") || last47 === ""; let up = 0; - for(let i179 = srcPath.length - 1; i179 >= 0; i179--){ - last47 = srcPath[i179]; + for(let i182 = srcPath.length - 1; i182 >= 0; i182--){ + last47 = srcPath[i182]; if (last47 === ".") { - srcPath.splice(i179, 1); + srcPath.splice(i182, 1); } else if (last47 === "..") { - srcPath.splice(i179, 1); + srcPath.splice(i182, 1); up++; } else if (up) { - srcPath.splice(i179, 1); + srcPath.splice(i182, 1); up--; } } @@ -46590,21 +48989,21 @@ class Url { } let newPathname = ""; let lastPos = 0; - for(let i180 = 0; i180 < pathname.length; ++i180){ - switch(pathname.charCodeAt(i180)){ + for(let i183 = 0; i183 < pathname.length; ++i183){ + switch(pathname.charCodeAt(i183)){ case 35: - if (i180 - lastPos > 0) { - newPathname += pathname.slice(lastPos, i180); + if (i183 - lastPos > 0) { + newPathname += pathname.slice(lastPos, i183); } newPathname += "%23"; - lastPos = i180 + 1; + lastPos = i183 + 1; break; case 63: - if (i180 - lastPos > 0) { - newPathname += pathname.slice(lastPos, i180); + if (i183 - lastPos > 0) { + newPathname += pathname.slice(lastPos, i183); } newPathname += "%3F"; - lastPos = i180 + 1; + lastPos = i183 + 1; break; } } @@ -46634,49 +49033,49 @@ class Url { } urlParse(url, parseQueryString, slashesDenoteHost) { let hasHash = false; - let start57 = -1; + let start58 = -1; let end = -1; let rest = ""; let lastPos = 0; - for(let i181 = 0, inWs = false, split3 = false; i181 < url.length; ++i181){ - const code77 = url.charCodeAt(i181); - const isWs = code77 === 32 || code77 === 9 || code77 === 13 || code77 === 10 || code77 === 12 || code77 === 160 || code77 === 65279; - if (start57 === -1) { + for(let i184 = 0, inWs = false, split3 = false; i184 < url.length; ++i184){ + const code78 = url.charCodeAt(i184); + const isWs = code78 === 32 || code78 === 9 || code78 === 13 || code78 === 10 || code78 === 12 || code78 === 160 || code78 === 65279; + if (start58 === -1) { if (isWs) continue; - lastPos = start57 = i181; + lastPos = start58 = i184; } else if (inWs) { if (!isWs) { end = -1; inWs = false; } } else if (isWs) { - end = i181; + end = i184; inWs = true; } if (!split3) { - switch(code77){ + switch(code78){ case 35: hasHash = true; case 63: split3 = true; break; case 92: - if (i181 - lastPos > 0) rest += url.slice(lastPos, i181); + if (i184 - lastPos > 0) rest += url.slice(lastPos, i184); rest += "/"; - lastPos = i181 + 1; + lastPos = i184 + 1; break; } - } else if (!hasHash && code77 === 35) { + } else if (!hasHash && code78 === 35) { hasHash = true; } } - if (start57 !== -1) { - if (lastPos === start57) { + if (start58 !== -1) { + if (lastPos === start58) { if (end === -1) { - if (start57 === 0) rest = url; - else rest = url.slice(start57); + if (start58 === 0) rest = url; + else rest = url.slice(start58); } else { - rest = url.slice(start57, end); + rest = url.slice(start58, end); } } else if (end === -1 && lastPos < url.length) { rest += url.slice(lastPos); @@ -46724,8 +49123,8 @@ class Url { let hostEnd = -1; let atSign = -1; let nonHost = -1; - for(let i182 = 0; i182 < rest.length; ++i182){ - switch(rest.charCodeAt(i182)){ + for(let i185 = 0; i185 < rest.length; ++i185){ + switch(rest.charCodeAt(i185)){ case 9: case 10: case 13: @@ -46742,31 +49141,31 @@ class Url { case 123: case 124: case 125: - if (nonHost === -1) nonHost = i182; + if (nonHost === -1) nonHost = i185; break; case 35: case 47: case 63: - if (nonHost === -1) nonHost = i182; - hostEnd = i182; + if (nonHost === -1) nonHost = i185; + hostEnd = i185; break; case 64: - atSign = i182; + atSign = i185; nonHost = -1; break; } if (hostEnd !== -1) break; } - start57 = 0; + start58 = 0; if (atSign !== -1) { this.auth = decodeURIComponent(rest.slice(0, atSign)); - start57 = atSign + 1; + start58 = atSign + 1; } if (nonHost === -1) { - this.host = rest.slice(start57); + this.host = rest.slice(start58); rest = ""; } else { - this.host = rest.slice(start57, nonHost); + this.host = rest.slice(start58, nonHost); rest = rest.slice(nonHost); } this.#parseHost(); @@ -46784,9 +49183,9 @@ class Url { if (!ipv6Hostname) { this.hostname = toASCII(this.hostname); } - const p44 = this.port ? ":" + this.port : ""; + const p45 = this.port ? ":" + this.port : ""; const h22 = this.hostname || ""; - this.host = h22 + p44; + this.host = h22 + p45; if (ipv6Hostname) { this.hostname = this.hostname.slice(1, -1); if (rest[0] !== "/") { @@ -46799,14 +49198,14 @@ class Url { } let questionIdx = -1; let hashIdx = -1; - for(let i183 = 0; i183 < rest.length; ++i183){ - const code78 = rest.charCodeAt(i183); - if (code78 === 35) { - this.hash = rest.slice(i183); - hashIdx = i183; + for(let i186 = 0; i186 < rest.length; ++i186){ + const code79 = rest.charCodeAt(i186); + if (code79 === 35) { + this.hash = rest.slice(i186); + hashIdx = i186; break; - } else if (code78 === 63 && questionIdx === -1) { - questionIdx = i183; + } else if (code79 === 63 && questionIdx === -1) { + questionIdx = i186; } } if (questionIdx !== -1) { @@ -46835,9 +49234,9 @@ class Url { this.pathname = "/"; } if (this.pathname || this.search) { - const p45 = this.pathname || ""; + const p46 = this.pathname || ""; const s48 = this.search || ""; - this.path = p45 + s48; + this.path = p46 + s48; } this.href = this.format(); return this; @@ -46900,12 +49299,12 @@ function isIpv6Hostname(hostname8) { return hostname8.charCodeAt(0) === 91 && hostname8.charCodeAt(hostname8.length - 1) === 93; } function getHostname(self, rest, hostname9) { - for(let i184 = 0; i184 < hostname9.length; ++i184){ - const code79 = hostname9.charCodeAt(i184); - const isValid = code79 >= 97 && code79 <= 122 || code79 === 46 || code79 >= 65 && code79 <= 90 || code79 >= 48 && code79 <= 57 || code79 === 45 || code79 === 43 || code79 === 95 || code79 > 127; + for(let i187 = 0; i187 < hostname9.length; ++i187){ + const code80 = hostname9.charCodeAt(i187); + const isValid = code80 >= 97 && code80 <= 122 || code80 === 46 || code80 >= 65 && code80 <= 90 || code80 >= 48 && code80 <= 57 || code80 === 45 || code80 === 43 || code80 === 95 || code80 > 127; if (!isValid) { - self.hostname = hostname9.slice(0, i184); - return `/${hostname9.slice(i184)}${rest}`; + self.hostname = hostname9.slice(0, i187); + return `/${hostname9.slice(i187)}${rest}`; } } return rest; @@ -47041,14 +49440,14 @@ const escapedCodes = [ function autoEscapeStr(rest) { let escaped = ""; let lastEscapedPos = 0; - for(let i185 = 0; i185 < rest.length; ++i185){ - const escapedChar = escapedCodes[rest.charCodeAt(i185)]; + for(let i188 = 0; i188 < rest.length; ++i188){ + const escapedChar = escapedCodes[rest.charCodeAt(i188)]; if (escapedChar) { - if (i185 > lastEscapedPos) { - escaped += rest.slice(lastEscapedPos, i185); + if (i188 > lastEscapedPos) { + escaped += rest.slice(lastEscapedPos, i188); } escaped += escapedChar; - lastEscapedPos = i185 + 1; + lastEscapedPos = i188 + 1; } } if (lastEscapedPos === 0) { @@ -47072,26 +49471,26 @@ function resolveObject(source, relative11) { if (!source) return relative11; return parse13(source, false, true).resolveObject(relative11); } -function fileURLToPath(path129) { - if (typeof path129 === "string") path129 = new URL(path129); - else if (!(path129 instanceof URL)) { +function fileURLToPath(path128) { + if (typeof path128 === "string") path128 = new URL(path128); + else if (!(path128 instanceof URL)) { throw new ERR_INVALID_ARG_TYPE("path", [ "string", "URL" - ], path129); + ], path128); } - if (path129.protocol !== "file:") { + if (path128.protocol !== "file:") { throw new ERR_INVALID_URL_SCHEME("file"); } - return isWindows1 ? getPathFromURLWin(path129) : getPathFromURLPosix(path129); + return isWindows1 ? getPathFromURLWin(path128) : getPathFromURLPosix(path128); } function getPathFromURLWin(url) { const hostname10 = url.hostname; let pathname = url.pathname; - for(let n129 = 0; n129 < pathname.length; n129++){ - if (pathname[n129] === "%") { - const third = pathname.codePointAt(n129 + 2) | 0x20; - if (pathname[n129 + 1] === "2" && third === 102 || pathname[n129 + 1] === "5" && third === 99) { + for(let n130 = 0; n130 < pathname.length; n130++){ + if (pathname[n130] === "%") { + const third = pathname.codePointAt(n130 + 2) | 0x20; + if (pathname[n130 + 1] === "2" && third === 102 || pathname[n130 + 1] === "5" && third === 99) { throw new ERR_INVALID_FILE_URL_PATH("must not include encoded \\ or / characters"); } } @@ -47114,10 +49513,10 @@ function getPathFromURLPosix(url) { throw new ERR_INVALID_FILE_URL_HOST(osType1); } const pathname = url.pathname; - for(let n130 = 0; n130 < pathname.length; n130++){ - if (pathname[n130] === "%") { - const third = pathname.codePointAt(n130 + 2) | 0x20; - if (pathname[n130 + 1] === "2" && third === 102) { + for(let n131 = 0; n131 < pathname.length; n131++){ + if (pathname[n131] === "%") { + const third = pathname.codePointAt(n131 + 2) | 0x20; + if (pathname[n131 + 1] === "2" && third === 102) { throw new ERR_INVALID_FILE_URL_PATH("must not include encoded / characters"); } } @@ -47183,6 +49582,7 @@ function urlToHttpOptions(url) { } return options46; } +URLSearchParams; const __default12 = { parse: parse13, format: format12, @@ -47204,13 +49604,13 @@ function i6(t112) { throw new RangeError(r3[t112]); } function f3(t212, o112) { - const n131 = t212.split("@"); + const n132 = t212.split("@"); let r111 = ""; - n131.length > 1 && (r111 = n131[0] + "@", t212 = n131[1]); - const c110 = (function(t311, o210) { + n132.length > 1 && (r111 = n132[0] + "@", t212 = n132[1]); + const c110 = (function(t311, o26) { const n2 = []; let e113 = t311.length; - for(; e113--;)n2[e113] = o210(t311[e113]); + for(; e113--;)n2[e113] = o26(t311[e113]); return n2; })((t212 = t212.replace(e3, ".")).split("."), o112).join("."); return r111 + c110; @@ -47245,9 +49645,9 @@ const u3 = function(t5, o41) { d11 >= e5 && i6("invalid-input"); const l21 = (u17 = o6.charCodeAt(d11++)) - 48 < 10 ? u17 - 22 : u17 - 65 < 26 ? u17 - 65 : u17 - 97 < 26 ? u17 - 97 : 36; (l21 >= 36 || l21 > c3((2147483647 - r310) / n6)) && i6("overflow"), r310 += l21 * n6; - const a110 = s112 <= f12 ? 1 : s112 >= f12 + 26 ? 26 : s112 - f12; - if (l21 < a110) break; - const h110 = 36 - a110; + const a111 = s112 <= f12 ? 1 : s112 >= f12 + 26 ? 26 : s112 - f12; + if (l21 < a111) break; + const h110 = 36 - a111; n6 > c3(2147483647 / h110) && i6("overflow"), n6 *= h110; } const h23 = n5.length + 1; @@ -47270,8 +49670,8 @@ const u3 = function(t5, o41) { for(let o8 = 36;; o8 += 36){ const e9 = o8 <= d21 ? 1 : o8 >= d21 + 26 ? 26 : o8 - d21; if (t11 < e9) break; - const r5 = t11 - e9, i186 = 36 - e9; - n7.push(s3(u3(e9 + r5 % i186, 0))), t11 = c3(r5 / i186); + const r5 = t11 - e9, i189 = 36 - e9; + n7.push(s3(u3(e9 + r5 % i189, 0))), t11 = c3(r5 / i189); } n7.push(s3(u3(t11, 0))), d21 = a4(f21, l4, p110 == h31), f21 = 0, ++p110; } @@ -47304,8 +49704,8 @@ p3.toASCII; p3.toUnicode; p3.ucs2; p3.version; -function e4(e114, n132) { - return Object.prototype.hasOwnProperty.call(e114, n132); +function e4(e114, n133) { + return Object.prototype.hasOwnProperty.call(e114, n133); } var n5 = function(n2, r112, t113, o113) { r112 = r112 || "&", t113 = t113 || "="; @@ -47315,11 +49715,11 @@ var n5 = function(n2, r112, t113, o113) { n2 = n2.split(r112); var c54 = 1e3; o113 && "number" == typeof o113.maxKeys && (c54 = o113.maxKeys); - var i187 = n2.length; - c54 > 0 && i187 > c54 && (i187 = c54); - for(var s49 = 0; s49 < i187; ++s49){ - var p46, f10, d9, y7, m30 = n2[s49].replace(u18, "%20"), l = m30.indexOf(t113); - l >= 0 ? (p46 = m30.substr(0, l), f10 = m30.substr(l + 1)) : (p46 = m30, f10 = ""), d9 = decodeURIComponent(p46), y7 = decodeURIComponent(f10), e4(a34, d9) ? Array.isArray(a34[d9]) ? a34[d9].push(y7) : a34[d9] = [ + var i190 = n2.length; + c54 > 0 && i190 > c54 && (i190 = c54); + for(var s49 = 0; s49 < i190; ++s49){ + var p47, f9, d9, y7, m30 = n2[s49].replace(u18, "%20"), l = m30.indexOf(t113); + l >= 0 ? (p47 = m30.substr(0, l), f9 = m30.substr(l + 1)) : (p47 = m30, f9 = ""), d9 = decodeURIComponent(p47), y7 = decodeURIComponent(f9), e4(a34, d9) ? Array.isArray(a34[d9]) ? a34[d9].push(y7) : a34[d9] = [ a34[d9], y7 ] : a34[d9] = y7; @@ -47336,13 +49736,13 @@ var n5 = function(n2, r112, t113, o113) { default: return ""; } -}, t4 = function(e311, n312, t213, o211) { +}, t4 = function(e311, n312, t213, o27) { return n312 = n312 || "&", t213 = t213 || "=", null === e311 && (e311 = void 0), "object" == typeof e311 ? Object.keys(e311).map(function(o32) { var a35 = encodeURIComponent(r4(o32)) + t213; return Array.isArray(e311[o32]) ? e311[o32].map(function(e410) { return a35 + encodeURIComponent(r4(e410)); }).join(n312) : a35 + encodeURIComponent(r4(e311[o32])); - }).join(n312) : o211 ? encodeURIComponent(r4(o211)) + t213 + encodeURIComponent(r4(e311)) : ""; + }).join(n312) : o27 ? encodeURIComponent(r4(o27)) + t213 + encodeURIComponent(r4(e311)) : ""; }, o5 = {}; o5.decode = o5.parse = n5, o5.encode = o5.stringify = t4; o5.decode; @@ -47427,17 +49827,17 @@ function O1(t8, s310, h111) { } r5.prototype.parse = function(t9, s4, h24) { if (!a5.isString(t9)) throw new TypeError("Parameter 'url' must be a string, not " + typeof t9); - var r113 = t9.indexOf("?"), n133 = -1 !== r113 && r113 < t9.indexOf("#") ? "?" : "#", l1 = t9.split(n133); + var r113 = t9.indexOf("?"), n134 = -1 !== r113 && r113 < t9.indexOf("#") ? "?" : "#", l1 = t9.split(n134); l1[0] = l1[0].replace(/\\/g, "/"); - var O11 = t9 = l1.join(n133); + var O11 = t9 = l1.join(n134); if (O11 = O11.trim(), !h24 && 1 === t9.split("#").length) { var d10 = i7.exec(O11); if (d10) return this.path = O11, this.href = O11, this.pathname = d10[1], d10[2] ? (this.search = d10[2], this.query = s4 ? b1.parse(this.search.substr(1)) : this.search.substr(1)) : s4 && (this.search = "", this.query = {}), this; } var j26 = o6.exec(O11); if (j26) { - var q6 = (j26 = j26[0]).toLowerCase(); - this.protocol = q6, O11 = O11.substr(j26.length); + var q5 = (j26 = j26[0]).toLowerCase(); + this.protocol = q5, O11 = O11.substr(j26.length); } if (h24 || j26 || O11.match(/^\/\/[^@\/]+@[^@\/]+/)) { var x18 = "//" === O11.substr(0, 2); @@ -47469,17 +49869,17 @@ r5.prototype.parse = function(t9, s4, h24) { var E5 = this.port ? ":" + this.port : "", P2 = this.hostname || ""; this.host = P2 + E5, this.href += this.host, U2 && (this.hostname = this.hostname.substr(1, this.hostname.length - 2), "/" !== O11[0] && (O11 = "/" + O11)); } - if (!v2[q6]) for(w20 = 0, S2 = p4.length; w20 < S2; w20++){ + if (!v2[q5]) for(w20 = 0, S2 = p4.length; w20 < S2; w20++){ var T2 = p4[w20]; if (-1 !== O11.indexOf(T2)) { - var B6 = encodeURIComponent(T2); - B6 === T2 && (B6 = escape(T2)), O11 = O11.split(T2).join(B6); + var B5 = encodeURIComponent(T2); + B5 === T2 && (B5 = escape(T2)), O11 = O11.split(T2).join(B5); } } var D1 = O11.indexOf("#"); -1 !== D1 && (this.hash = O11.substr(D1), O11 = O11.slice(0, D1)); var F3 = O11.indexOf("?"); - if (-1 !== F3 ? (this.search = O11.substr(F3), this.query = O11.substr(F3 + 1), s4 && (this.query = b1.parse(this.query)), O11 = O11.slice(0, F3)) : s4 && (this.search = "", this.query = {}), O11 && (this.pathname = O11), y2[q6] && this.hostname && !this.pathname && (this.pathname = "/"), this.pathname || this.search) { + if (-1 !== F3 ? (this.search = O11.substr(F3), this.query = O11.substr(F3 + 1), s4 && (this.query = b1.parse(this.query)), O11 = O11.slice(0, F3)) : s4 && (this.search = "", this.query = {}), O11 && (this.pathname = O11), y2[q5] && this.hostname && !this.pathname && (this.pathname = "/"), this.pathname || this.search) { E5 = this.pathname || ""; var G1 = this.search || ""; this.path = E5 + G1; @@ -47501,14 +49901,14 @@ r5.prototype.parse = function(t9, s4, h24) { var s6 = new r5(); s6.parse(t13, !1, !0), t13 = s6; } - for(var h41 = new r5(), e312 = Object.keys(this), o212 = 0; o212 < e312.length; o212++){ - var n313 = e312[o212]; + for(var h41 = new r5(), e312 = Object.keys(this), o28 = 0; o28 < e312.length; o28++){ + var n313 = e312[o28]; h41[n313] = this[n313]; } if (h41.hash = t13.hash, "" === t13.href) return h41.href = h41.format(), h41; if (t13.slashes && !t13.protocol) { - for(var i188 = Object.keys(t13), l22 = 0; l22 < i188.length; l22++){ - var p111 = i188[l22]; + for(var i191 = Object.keys(t13), l22 = 0; l22 < i191.length; l22++){ + var p111 = i191[l22]; "protocol" !== p111 && (h41[p111] = t13[p111]); } return y2[h41.protocol] && h41.hostname && !h41.pathname && (h41.path = h41.pathname = "/"), h41.href = h41.format(), h41; @@ -47527,12 +49927,12 @@ r5.prototype.parse = function(t9, s4, h24) { t13.host || (t13.host = ""), t13.hostname || (t13.hostname = ""), "" !== m110[0] && m110.unshift(""), m110.length < 2 && m110.unshift(""), h41.pathname = m110.join("/"); } if (h41.search = t13.search, h41.query = t13.query, h41.host = t13.host || "", h41.auth = t13.auth, h41.hostname = t13.hostname || t13.host, h41.port = t13.port, h41.pathname || h41.search) { - var v110 = h41.pathname || "", b110 = h41.search || ""; - h41.path = v110 + b110; + var v111 = h41.pathname || "", b110 = h41.search || ""; + h41.path = v111 + b110; } return h41.slashes = h41.slashes || t13.slashes, h41.href = h41.format(), h41; } - var O2 = h41.pathname && "/" === h41.pathname.charAt(0), d12 = t13.host || t13.pathname && "/" === t13.pathname.charAt(0), j27 = d12 || O2 || h41.host && t13.pathname, q7 = j27, x19 = h41.pathname && h41.pathname.split("/") || [], A9 = (m110 = t13.pathname && t13.pathname.split("/") || [], h41.protocol && !y2[h41.protocol]); + var O2 = h41.pathname && "/" === h41.pathname.charAt(0), d12 = t13.host || t13.pathname && "/" === t13.pathname.charAt(0), j27 = d12 || O2 || h41.host && t13.pathname, q6 = j27, x19 = h41.pathname && h41.pathname.split("/") || [], A9 = (m110 = t13.pathname && t13.pathname.split("/") || [], h41.protocol && !y2[h41.protocol]); if (A9 && (h41.hostname = "", h41.port = null, h41.host && ("" === x19[0] ? x19[0] = h41.host : x19.unshift(h41.host)), h41.host = "", t13.protocol && (t13.hostname = null, t13.port = null, t13.host && ("" === m110[0] ? m110[0] = t13.host : m110.unshift(t13.host)), t13.host = null), j27 = j27 && ("" === m110[0] || "" === x19[0])), d12) h41.host = t13.host || "" === t13.host ? t13.host : h41.host, h41.hostname = t13.hostname || "" === t13.hostname ? t13.hostname : h41.hostname, h41.search = t13.search, h41.query = t13.query, x19 = m110; else if (m110.length) x19 || (x19 = []), x19.pop(), x19 = x19.concat(m110), h41.search = t13.search, h41.query = t13.query; else if (!a5.isNullOrUndefined(t13.search)) { @@ -47541,7 +49941,7 @@ r5.prototype.parse = function(t9, s4, h24) { } if (!x19.length) return h41.pathname = null, h41.search ? h41.path = "/" + h41.search : h41.path = null, h41.href = h41.format(), h41; for(var C2 = x19.slice(-1)[0], I2 = (h41.host || t13.host || x19.length > 1) && ("." === C2 || ".." === C2) || "" === C2, w21 = 0, N5 = x19.length; N5 >= 0; N5--)"." === (C2 = x19[N5]) ? x19.splice(N5, 1) : ".." === C2 ? (x19.splice(N5, 1), w21++) : w21 && (x19.splice(N5, 1), w21--); - if (!j27 && !q7) for(; w21--; w21)x19.unshift(".."); + if (!j27 && !q6) for(; w21--; w21)x19.unshift(".."); !j27 || "" === x19[0] || x19[0] && "/" === x19[0].charAt(0) || x19.unshift(""), I2 && "/" !== x19.join("/").substr(-1) && x19.push(""); var U3, k15 = "" === x19[0] || x19[0] && "/" === x19[0].charAt(0); A9 && (h41.hostname = h41.host = k15 ? "" : x19.length ? x19.shift() : "", (U3 = !!(h41.host && h41.host.indexOf("@") > 0) && h41.host.split("@")) && (h41.auth = U3.shift(), h41.host = h41.hostname = U3.shift())); @@ -47784,28 +50184,40 @@ _arch(); Deno.chdir; Deno.cwd; const nextTick1 = nextTick; -new Proxy({}, { - get (_target, prop) { - return Deno.env.get(String(prop)); +const OBJECT_PROTO_PROP_NAMES = Object.getOwnPropertyNames(Object.prototype); +new Proxy(Object(), { + get: (target, prop)=>{ + if (typeof prop === "symbol") { + return target[prop]; + } + const envValue = Deno.env.get(prop); + if (envValue) { + return envValue; + } + if (OBJECT_PROTO_PROP_NAMES.includes(prop)) { + return target[prop]; + } + return envValue; }, ownKeys: ()=>Reflect.ownKeys(Deno.env.toObject()), getOwnPropertyDescriptor: (_target, name43)=>{ const e116 = Deno.env.toObject(); if (name43 in Deno.env.toObject()) { - const o30 = { + const o29 = { enumerable: true, configurable: true }; if (typeof name43 === "string") { - o30.value = e116[name43]; + o29.value = e116[name43]; } - return o30; + return o29; } }, - set (_target, prop, value409) { - Deno.env.set(String(prop), String(value409)); - return value409; - } + set (_target, prop, value413) { + Deno.env.set(String(prop), String(value413)); + return value413; + }, + has: (_target, prop)=>Reflect.ownKeys(Deno.env.toObject()).includes(prop) }); Deno.pid; isWindows1 ? "win32" : Deno.build.os; @@ -47867,11 +50279,11 @@ function eos(stream9, options47, callback) { const writable = options47.writable || options47.writable !== false && isWritable(stream9); const wState = stream9._writableState; const rState = stream9._readableState; - const state14 = wState || rState; + const state15 = wState || rState; const onlegacyfinish = ()=>{ if (!stream9.writable) onfinish(); }; - let willEmitClose = isServerResponse(stream9) || state14 && state14.autoDestroy && state14.emitClose && state14.closed === false && isReadable(stream9) === readable && isWritable(stream9) === writable; + let willEmitClose = isServerResponse(stream9) || state15 && state15.autoDestroy && state15.emitClose && state15.closed === false && isReadable(stream9) === readable && isWritable(stream9) === writable; let writableFinished = stream9.writableFinished || wState && wState.finished; const onfinish = ()=>{ writableFinished = true; @@ -48256,8 +50668,8 @@ function isDestroyed(stream18) { if (!isNodeStream(stream18)) return null; const wState = stream18._writableState; const rState = stream18._readableState; - const state15 = wState || rState; - return !!(stream18.destroyed || state15?.destroyed); + const state16 = wState || rState; + return !!(stream18.destroyed || state16?.destroyed); } function isWritableEnded(stream19) { if (!isWritableNodeStream(stream19)) return null; @@ -48337,32 +50749,32 @@ function _from1(Readable1, iterable, opts) { next(); } }; - readable._destroy = function(error23, cb) { - close(error23).then(()=>nextTick1(cb, error23), (e117)=>nextTick1(cb, e117 || error23)); + readable._destroy = function(error24, cb) { + close(error24).then(()=>nextTick1(cb, error24), (e117)=>nextTick1(cb, e117 || error24)); }; - async function close(error24) { - const hadError = error24 !== undefined && error24 !== null; + async function close(error25) { + const hadError = error25 !== undefined && error25 !== null; const hasThrow = typeof iterator.throw === "function"; if (hadError && hasThrow) { - const { value: value410 , done } = await iterator.throw(error24); - await value410; + const { value: value414 , done } = await iterator.throw(error25); + await value414; if (done) { return; } } if (typeof iterator.return === "function") { - const { value: value411 } = await iterator.return(); - await value411; + const { value: value415 } = await iterator.return(); + await value415; } } async function next() { for(;;){ try { - const { value: value412 , done } = isAsync ? await iterator.next() : iterator.next(); + const { value: value416 , done } = isAsync ? await iterator.next() : iterator.next(); if (done) { readable.push(null); } else { - const res = value412 && typeof value412.then === "function" ? await value412 : value412; + const res = value416 && typeof value416.then === "function" ? await value416 : value416; if (res === null) { reading = false; throw new ERR_STREAM_NULL_VALUES(); @@ -48386,7 +50798,7 @@ function highWaterMarkFrom(options48, isDuplex, duplexKey) { function getDefaultHighWaterMark(objectMode) { return objectMode ? 16 : 16 * 1024; } -function getHighWaterMark(state16, options49, duplexKey, isDuplex) { +function getHighWaterMark(state17, options49, duplexKey, isDuplex) { const hwm = highWaterMarkFrom(options49, isDuplex, duplexKey); if (hwm != null) { if (!Number.isInteger(hwm) || hwm < 0) { @@ -48395,7 +50807,7 @@ function getHighWaterMark(state16, options49, duplexKey, isDuplex) { } return Math.floor(hwm); } - return getDefaultHighWaterMark(state16.objectMode); + return getDefaultHighWaterMark(state17.objectMode); } function Stream(opts) { EventEmitter.call(this, opts); @@ -48492,21 +50904,21 @@ function utf8CheckByte(__byte) { else if (__byte >> 3 === 0x1e) return 4; return __byte >> 6 === 0x02 ? -1 : -2; } -function utf8CheckIncomplete(self, buf, i189) { +function utf8CheckIncomplete(self, buf, i192) { let j28 = buf.length - 1; - if (j28 < i189) return 0; + if (j28 < i192) return 0; let nb = utf8CheckByte(buf[j28]); if (nb >= 0) { if (nb > 0) self.lastNeed = nb - 1; return nb; } - if (--j28 < i189 || nb === -2) return 0; + if (--j28 < i192 || nb === -2) return 0; nb = utf8CheckByte(buf[j28]); if (nb >= 0) { if (nb > 0) self.lastNeed = nb - 2; return nb; } - if (--j28 < i189 || nb === -2) return 0; + if (--j28 < i192 || nb === -2) return 0; nb = utf8CheckByte(buf[j28]); if (nb >= 0) { if (nb > 0) { @@ -48536,14 +50948,14 @@ function utf8CheckExtraBytes(self, buf) { } } function utf8FillLastComplete(buf) { - const p47 = this.lastTotal - this.lastNeed; + const p48 = this.lastTotal - this.lastNeed; const r76 = utf8CheckExtraBytes(this, buf); if (r76 !== undefined) return r76; if (this.lastNeed <= buf.length) { - buf.copy(this.lastChar, p47, 0, this.lastNeed); + buf.copy(this.lastChar, p48, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } - buf.copy(this.lastChar, p47, 0, buf.length); + buf.copy(this.lastChar, p48, 0, buf.length); this.lastNeed -= buf.length; } function utf8FillLastIncomplete(buf) { @@ -48554,13 +50966,13 @@ function utf8FillLastIncomplete(buf) { buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); this.lastNeed -= buf.length; } -function utf8Text(buf, i190) { - const total = utf8CheckIncomplete(this, buf, i190); - if (!this.lastNeed) return buf.toString("utf8", i190); +function utf8Text(buf, i193) { + const total = utf8CheckIncomplete(this, buf, i193); + if (!this.lastNeed) return buf.toString("utf8", i193); this.lastTotal = total; const end = buf.length - (total - this.lastNeed); buf.copy(this.lastChar, 0, end); - return buf.toString("utf8", i190, end); + return buf.toString("utf8", i193, end); } function utf8End(buf) { const r77 = buf && buf.length ? this.write(buf) : ""; @@ -48573,30 +50985,30 @@ function utf8Write(buf) { } if (buf.length === 0) return ""; let r78; - let i191; + let i194; if (this.lastNeed) { r78 = this.fillLast(buf); if (r78 === undefined) return ""; - i191 = this.lastNeed; + i194 = this.lastNeed; this.lastNeed = 0; } else { - i191 = 0; + i194 = 0; } - if (i191 < buf.length) return r78 ? r78 + this.text(buf, i191) : this.text(buf, i191); + if (i194 < buf.length) return r78 ? r78 + this.text(buf, i194) : this.text(buf, i194); return r78 || ""; } -function base64Text(buf, i192) { - const n134 = (buf.length - i192) % 3; - if (n134 === 0) return buf.toString("base64", i192); - this.lastNeed = 3 - n134; +function base64Text(buf, i195) { + const n135 = (buf.length - i195) % 3; + if (n135 === 0) return buf.toString("base64", i195); + this.lastNeed = 3 - n135; this.lastTotal = 3; - if (n134 === 1) { + if (n135 === 1) { this.lastChar[0] = buf[buf.length - 1]; } else { this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; } - return buf.toString("base64", i192, buf.length - n134); + return buf.toString("base64", i195, buf.length - n135); } function base64End(buf) { const r79 = buf && buf.length ? this.write(buf) : ""; @@ -48695,9 +51107,9 @@ class BufferList { this.tail = null; this.length = 0; } - push(v27) { + push(v34) { const entry = { - data: v27, + data: v34, next: null }; if (this.length > 0) { @@ -48708,9 +51120,9 @@ class BufferList { this.tail = entry; ++this.length; } - unshift(v28) { + unshift(v35) { const entry = { - data: v28, + data: v35, next: this.head }; if (this.length === 0) { @@ -48740,105 +51152,105 @@ class BufferList { if (this.length === 0) { return ""; } - let p48 = this.head; - let ret = "" + p48.data; - while(p48 = p48.next){ - ret += s52 + p48.data; + let p49 = this.head; + let ret = "" + p49.data; + while(p49 = p49.next){ + ret += s52 + p49.data; } return ret; } - concat(n135) { + concat(n136) { if (this.length === 0) { return Buffer2.alloc(0); } - const ret = Buffer2.allocUnsafe(n135 >>> 0); - let p49 = this.head; - let i193 = 0; - while(p49){ - ret.set(p49.data, i193); - i193 += p49.data.length; - p49 = p49.next; + const ret = Buffer2.allocUnsafe(n136 >>> 0); + let p50 = this.head; + let i196 = 0; + while(p50){ + ret.set(p50.data, i196); + i196 += p50.data.length; + p50 = p50.next; } return ret; } - consume(n136, hasStrings) { - const data63 = this.head.data; - if (n136 < data63.length) { - const slice = data63.slice(0, n136); - this.head.data = data63.slice(n136); + consume(n137, hasStrings) { + const data65 = this.head.data; + if (n137 < data65.length) { + const slice = data65.slice(0, n137); + this.head.data = data65.slice(n137); return slice; } - if (n136 === data63.length) { + if (n137 === data65.length) { return this.shift(); } - return hasStrings ? this._getString(n136) : this._getBuffer(n136); + return hasStrings ? this._getString(n137) : this._getBuffer(n137); } first() { return this.head.data; } *[Symbol.iterator]() { - for(let p50 = this.head; p50; p50 = p50.next){ - yield p50.data; + for(let p51 = this.head; p51; p51 = p51.next){ + yield p51.data; } } - _getString(n137) { + _getString(n138) { let ret = ""; - let p51 = this.head; + let p52 = this.head; let c55 = 0; do { - const str111 = p51.data; - if (n137 > str111.length) { + const str111 = p52.data; + if (n138 > str111.length) { ret += str111; - n137 -= str111.length; + n138 -= str111.length; } else { - if (n137 === str111.length) { + if (n138 === str111.length) { ret += str111; ++c55; - if (p51.next) { - this.head = p51.next; + if (p52.next) { + this.head = p52.next; } else { this.head = this.tail = null; } } else { - ret += str111.slice(0, n137); - this.head = p51; - p51.data = str111.slice(n137); + ret += str111.slice(0, n138); + this.head = p52; + p52.data = str111.slice(n138); } break; } ++c55; - }while (p51 = p51.next) + }while (p52 = p52.next) this.length -= c55; return ret; } - _getBuffer(n138) { - const ret = Buffer2.allocUnsafe(n138); - const retLen = n138; - let p52 = this.head; + _getBuffer(n139) { + const ret = Buffer2.allocUnsafe(n139); + const retLen = n139; + let p53 = this.head; let c56 = 0; do { - const buf = p52.data; - if (n138 > buf.length) { - ret.set(buf, retLen - n138); - n138 -= buf.length; + const buf = p53.data; + if (n139 > buf.length) { + ret.set(buf, retLen - n139); + n139 -= buf.length; } else { - if (n138 === buf.length) { - ret.set(buf, retLen - n138); + if (n139 === buf.length) { + ret.set(buf, retLen - n139); ++c56; - if (p52.next) { - this.head = p52.next; + if (p53.next) { + this.head = p53.next; } else { this.head = this.tail = null; } } else { - ret.set(new Uint8Array(buf.buffer, buf.byteOffset, n138), retLen - n138); - this.head = p52; - p52.data = buf.slice(n138); + ret.set(new Uint8Array(buf.buffer, buf.byteOffset, n139), retLen - n139); + this.head = p53; + p53.data = buf.slice(n139); } break; } ++c56; - }while (p52 = p52.next) + }while (p53 = p53.next) this.length -= c56; return ret; } @@ -48943,14 +51355,14 @@ Readable.prototype.unshift = function(chunk14, encoding) { }; function readableAddChunk(stream26, chunk15, encoding, addToFront) { debug1("readableAddChunk", chunk15); - const state17 = stream26._readableState; + const state18 = stream26._readableState; let err; - if (!state17.objectMode) { + if (!state18.objectMode) { if (typeof chunk15 === "string") { - encoding = encoding || state17.defaultEncoding; - if (state17.encoding !== encoding) { - if (addToFront && state17.encoding) { - chunk15 = Buffer2.from(chunk15, encoding).toString(state17.encoding); + encoding = encoding || state18.defaultEncoding; + if (state18.encoding !== encoding) { + if (addToFront && state18.encoding) { + chunk15 = Buffer2.from(chunk15, encoding).toString(state18.encoding); } else { chunk15 = Buffer2.from(chunk15, encoding); encoding = ""; @@ -48972,63 +51384,63 @@ function readableAddChunk(stream26, chunk15, encoding, addToFront) { if (err) { errorOrDestroy1(stream26, err); } else if (chunk15 === null) { - state17.reading = false; - onEofChunk(stream26, state17); - } else if (state17.objectMode || chunk15 && chunk15.length > 0) { + state18.reading = false; + onEofChunk(stream26, state18); + } else if (state18.objectMode || chunk15 && chunk15.length > 0) { if (addToFront) { - if (state17.endEmitted) { + if (state18.endEmitted) { errorOrDestroy1(stream26, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT()); } else { - addChunk(stream26, state17, chunk15, true); + addChunk(stream26, state18, chunk15, true); } - } else if (state17.ended) { + } else if (state18.ended) { errorOrDestroy1(stream26, new ERR_STREAM_PUSH_AFTER_EOF()); - } else if (state17.destroyed || state17.errored) { + } else if (state18.destroyed || state18.errored) { return false; } else { - state17.reading = false; - if (state17.decoder && !encoding) { - chunk15 = state17.decoder.write(chunk15); - if (state17.objectMode || chunk15.length !== 0) { - addChunk(stream26, state17, chunk15, false); + state18.reading = false; + if (state18.decoder && !encoding) { + chunk15 = state18.decoder.write(chunk15); + if (state18.objectMode || chunk15.length !== 0) { + addChunk(stream26, state18, chunk15, false); } else { - maybeReadMore(stream26, state17); + maybeReadMore(stream26, state18); } } else { - addChunk(stream26, state17, chunk15, false); + addChunk(stream26, state18, chunk15, false); } } } else if (!addToFront) { - state17.reading = false; - maybeReadMore(stream26, state17); + state18.reading = false; + maybeReadMore(stream26, state18); } - return !state17.ended && (state17.length < state17.highWaterMark || state17.length === 0); + return !state18.ended && (state18.length < state18.highWaterMark || state18.length === 0); } -function addChunk(stream27, state18, chunk16, addToFront) { - if (state18.flowing && state18.length === 0 && !state18.sync && stream27.listenerCount("data") > 0) { - if (state18.multiAwaitDrain) { - state18.awaitDrainWriters.clear(); +function addChunk(stream27, state19, chunk16, addToFront) { + if (state19.flowing && state19.length === 0 && !state19.sync && stream27.listenerCount("data") > 0) { + if (state19.multiAwaitDrain) { + state19.awaitDrainWriters.clear(); } else { - state18.awaitDrainWriters = null; + state19.awaitDrainWriters = null; } - state18.dataEmitted = true; + state19.dataEmitted = true; stream27.emit("data", chunk16); } else { - state18.length += state18.objectMode ? 1 : chunk16.length; + state19.length += state19.objectMode ? 1 : chunk16.length; if (addToFront) { - state18.buffer.unshift(chunk16); + state19.buffer.unshift(chunk16); } else { - state18.buffer.push(chunk16); + state19.buffer.push(chunk16); } - if (state18.needReadable) { + if (state19.needReadable) { emitReadable(stream27); } } - maybeReadMore(stream27, state18); + maybeReadMore(stream27, state19); } Readable.prototype.isPaused = function() { - const state19 = this._readableState; - return state19[kPaused] === true || state19.flowing === false; + const state20 = this._readableState; + return state20[kPaused] === true || state20.flowing === false; }; Readable.prototype.setEncoding = function(enc8) { const decoder11 = new StringDecoder(enc8); @@ -49036,8 +51448,8 @@ Readable.prototype.setEncoding = function(enc8) { this._readableState.encoding = this._readableState.decoder.encoding; const buffer33 = this._readableState.buffer; let content = ""; - for (const data64 of buffer33){ - content += decoder11.write(data64); + for (const data66 of buffer33){ + content += decoder11.write(data66); } buffer33.clear(); if (content !== "") { @@ -49047,197 +51459,197 @@ Readable.prototype.setEncoding = function(enc8) { return this; }; const MAX_HWM = 0x40000000; -function computeNewHighWaterMark(n139) { - if (n139 >= 0x40000000) { - n139 = MAX_HWM; +function computeNewHighWaterMark(n140) { + if (n140 >= 0x40000000) { + n140 = MAX_HWM; } else { - n139--; - n139 |= n139 >>> 1; - n139 |= n139 >>> 2; - n139 |= n139 >>> 4; - n139 |= n139 >>> 8; - n139 |= n139 >>> 16; - n139++; - } - return n139; -} -function howMuchToRead(n140, state20) { - if (n140 <= 0 || state20.length === 0 && state20.ended) { + n140--; + n140 |= n140 >>> 1; + n140 |= n140 >>> 2; + n140 |= n140 >>> 4; + n140 |= n140 >>> 8; + n140 |= n140 >>> 16; + n140++; + } + return n140; +} +function howMuchToRead(n141, state21) { + if (n141 <= 0 || state21.length === 0 && state21.ended) { return 0; } - if (state20.objectMode) { + if (state21.objectMode) { return 1; } - if (Number.isNaN(n140)) { - if (state20.flowing && state20.length) { - return state20.buffer.first().length; + if (Number.isNaN(n141)) { + if (state21.flowing && state21.length) { + return state21.buffer.first().length; } - return state20.length; + return state21.length; } - if (n140 <= state20.length) { - return n140; + if (n141 <= state21.length) { + return n141; } - return state20.ended ? state20.length : 0; + return state21.ended ? state21.length : 0; } -Readable.prototype.read = function(n141) { - debug1("read", n141); - if (n141 === undefined) { - n141 = NaN; - } else if (!Number.isInteger(n141)) { - n141 = Number.parseInt(n141, 10); +Readable.prototype.read = function(n142) { + debug1("read", n142); + if (n142 === undefined) { + n142 = NaN; + } else if (!Number.isInteger(n142)) { + n142 = Number.parseInt(n142, 10); } - const state21 = this._readableState; - const nOrig = n141; - if (n141 > state21.highWaterMark) { - state21.highWaterMark = computeNewHighWaterMark(n141); + const state22 = this._readableState; + const nOrig = n142; + if (n142 > state22.highWaterMark) { + state22.highWaterMark = computeNewHighWaterMark(n142); } - if (n141 !== 0) { - state21.emittedReadable = false; + if (n142 !== 0) { + state22.emittedReadable = false; } - if (n141 === 0 && state21.needReadable && ((state21.highWaterMark !== 0 ? state21.length >= state21.highWaterMark : state21.length > 0) || state21.ended)) { - debug1("read: emitReadable", state21.length, state21.ended); - if (state21.length === 0 && state21.ended) { + if (n142 === 0 && state22.needReadable && ((state22.highWaterMark !== 0 ? state22.length >= state22.highWaterMark : state22.length > 0) || state22.ended)) { + debug1("read: emitReadable", state22.length, state22.ended); + if (state22.length === 0 && state22.ended) { endReadable(this); } else { emitReadable(this); } return null; } - n141 = howMuchToRead(n141, state21); - if (n141 === 0 && state21.ended) { - if (state21.length === 0) { + n142 = howMuchToRead(n142, state22); + if (n142 === 0 && state22.ended) { + if (state22.length === 0) { endReadable(this); } return null; } - let doRead = state21.needReadable; + let doRead = state22.needReadable; debug1("need readable", doRead); - if (state21.length === 0 || state21.length - n141 < state21.highWaterMark) { + if (state22.length === 0 || state22.length - n142 < state22.highWaterMark) { doRead = true; debug1("length less than watermark", doRead); } - if (state21.ended || state21.reading || state21.destroyed || state21.errored || !state21.constructed) { + if (state22.ended || state22.reading || state22.destroyed || state22.errored || !state22.constructed) { doRead = false; debug1("reading, ended or constructing", doRead); } else if (doRead) { debug1("do read"); - state21.reading = true; - state21.sync = true; - if (state21.length === 0) { - state21.needReadable = true; + state22.reading = true; + state22.sync = true; + if (state22.length === 0) { + state22.needReadable = true; } - this._read(state21.highWaterMark); - state21.sync = false; - if (!state21.reading) { - n141 = howMuchToRead(nOrig, state21); + this._read(state22.highWaterMark); + state22.sync = false; + if (!state22.reading) { + n142 = howMuchToRead(nOrig, state22); } } let ret; - if (n141 > 0) { - ret = fromList(n141, state21); + if (n142 > 0) { + ret = fromList(n142, state22); } else { ret = null; } if (ret === null) { - state21.needReadable = state21.length <= state21.highWaterMark; - n141 = 0; + state22.needReadable = state22.length <= state22.highWaterMark; + n142 = 0; } else { - state21.length -= n141; - if (state21.multiAwaitDrain) { - state21.awaitDrainWriters.clear(); + state22.length -= n142; + if (state22.multiAwaitDrain) { + state22.awaitDrainWriters.clear(); } else { - state21.awaitDrainWriters = null; + state22.awaitDrainWriters = null; } } - if (state21.length === 0) { - if (!state21.ended) { - state21.needReadable = true; + if (state22.length === 0) { + if (!state22.ended) { + state22.needReadable = true; } - if (nOrig !== n141 && state21.ended) { + if (nOrig !== n142 && state22.ended) { endReadable(this); } } if (ret !== null) { - state21.dataEmitted = true; + state22.dataEmitted = true; this.emit("data", ret); } return ret; }; -function onEofChunk(stream28, state22) { +function onEofChunk(stream28, state23) { debug1("onEofChunk"); - if (state22.ended) return; - if (state22.decoder) { - const chunk17 = state22.decoder.end(); + if (state23.ended) return; + if (state23.decoder) { + const chunk17 = state23.decoder.end(); if (chunk17 && chunk17.length) { - state22.buffer.push(chunk17); - state22.length += state22.objectMode ? 1 : chunk17.length; + state23.buffer.push(chunk17); + state23.length += state23.objectMode ? 1 : chunk17.length; } } - state22.ended = true; - if (state22.sync) { + state23.ended = true; + if (state23.sync) { emitReadable(stream28); } else { - state22.needReadable = false; - state22.emittedReadable = true; + state23.needReadable = false; + state23.emittedReadable = true; emitReadable_(stream28); } } function emitReadable(stream29) { - const state23 = stream29._readableState; - debug1("emitReadable", state23.needReadable, state23.emittedReadable); - state23.needReadable = false; - if (!state23.emittedReadable) { - debug1("emitReadable", state23.flowing); - state23.emittedReadable = true; + const state24 = stream29._readableState; + debug1("emitReadable", state24.needReadable, state24.emittedReadable); + state24.needReadable = false; + if (!state24.emittedReadable) { + debug1("emitReadable", state24.flowing); + state24.emittedReadable = true; nextTick(emitReadable_, stream29); } } function emitReadable_(stream30) { - const state24 = stream30._readableState; - debug1("emitReadable_", state24.destroyed, state24.length, state24.ended); - if (!state24.destroyed && !state24.errored && (state24.length || state24.ended)) { + const state25 = stream30._readableState; + debug1("emitReadable_", state25.destroyed, state25.length, state25.ended); + if (!state25.destroyed && !state25.errored && (state25.length || state25.ended)) { stream30.emit("readable"); - state24.emittedReadable = false; + state25.emittedReadable = false; } - state24.needReadable = !state24.flowing && !state24.ended && state24.length <= state24.highWaterMark; + state25.needReadable = !state25.flowing && !state25.ended && state25.length <= state25.highWaterMark; flow(stream30); } -function maybeReadMore(stream31, state25) { - if (!state25.readingMore && state25.constructed) { - state25.readingMore = true; - nextTick(maybeReadMore_, stream31, state25); +function maybeReadMore(stream31, state26) { + if (!state26.readingMore && state26.constructed) { + state26.readingMore = true; + nextTick(maybeReadMore_, stream31, state26); } } -function maybeReadMore_(stream32, state26) { - while(!state26.reading && !state26.ended && (state26.length < state26.highWaterMark || state26.flowing && state26.length === 0)){ - const len59 = state26.length; +function maybeReadMore_(stream32, state27) { + while(!state27.reading && !state27.ended && (state27.length < state27.highWaterMark || state27.flowing && state27.length === 0)){ + const len59 = state27.length; debug1("maybeReadMore read 0"); stream32.read(0); - if (len59 === state26.length) { + if (len59 === state27.length) { break; } } - state26.readingMore = false; + state27.readingMore = false; } Readable.prototype._read = function(n) { throw new ERR_METHOD_NOT_IMPLEMENTED("_read()"); }; Readable.prototype.pipe = function(dest, pipeOpts) { const src = this; - const state27 = this._readableState; - if (state27.pipes.length === 1) { - if (!state27.multiAwaitDrain) { - state27.multiAwaitDrain = true; - state27.awaitDrainWriters = new Set(state27.awaitDrainWriters ? [ - state27.awaitDrainWriters + const state28 = this._readableState; + if (state28.pipes.length === 1) { + if (!state28.multiAwaitDrain) { + state28.multiAwaitDrain = true; + state28.awaitDrainWriters = new Set(state28.awaitDrainWriters ? [ + state28.awaitDrainWriters ] : []); } } - state27.pipes.push(dest); - debug1("pipe count=%d opts=%j", state27.pipes.length, pipeOpts); + state28.pipes.push(dest); + debug1("pipe count=%d opts=%j", state28.pipes.length, pipeOpts); const doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== stdio.stdout && dest !== stdio.stderr; const endFn = doEnd ? onend : unpipe; - if (state27.endEmitted) { + if (state28.endEmitted) { nextTick(endFn); } else { src.once("end", endFn); @@ -49271,19 +51683,19 @@ Readable.prototype.pipe = function(dest, pipeOpts) { src.removeListener("end", unpipe); src.removeListener("data", ondata); cleanedUp = true; - if (ondrain && state27.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain)) { + if (ondrain && state28.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain)) { ondrain(); } } function pause() { if (!cleanedUp) { - if (state27.pipes.length === 1 && state27.pipes[0] === dest) { + if (state28.pipes.length === 1 && state28.pipes[0] === dest) { debug1("false write response, pause", 0); - state27.awaitDrainWriters = dest; - state27.multiAwaitDrain = false; - } else if (state27.pipes.length > 1 && state27.pipes.includes(dest)) { - debug1("false write response, pause", state27.awaitDrainWriters.size); - state27.awaitDrainWriters.add(dest); + state28.awaitDrainWriters = dest; + state28.multiAwaitDrain = false; + } else if (state28.pipes.length > 1 && state28.pipes.includes(dest)) { + debug1("false write response, pause", state28.awaitDrainWriters.size); + state28.awaitDrainWriters.add(dest); } src.pause(); } @@ -49332,10 +51744,10 @@ Readable.prototype.pipe = function(dest, pipeOpts) { } dest.emit("pipe", src); if (dest.writableNeedDrain === true) { - if (state27.flowing) { + if (state28.flowing) { pause(); } - } else if (!state27.flowing) { + } else if (!state28.flowing) { debug1("pipe resume"); src.resume(); } @@ -49343,45 +51755,45 @@ Readable.prototype.pipe = function(dest, pipeOpts) { }; function pipeOnDrain(src, dest) { return function pipeOnDrainFunctionResult() { - const state28 = src._readableState; - if (state28.awaitDrainWriters === dest) { + const state29 = src._readableState; + if (state29.awaitDrainWriters === dest) { debug1("pipeOnDrain", 1); - state28.awaitDrainWriters = null; - } else if (state28.multiAwaitDrain) { - debug1("pipeOnDrain", state28.awaitDrainWriters.size); - state28.awaitDrainWriters.delete(dest); + state29.awaitDrainWriters = null; + } else if (state29.multiAwaitDrain) { + debug1("pipeOnDrain", state29.awaitDrainWriters.size); + state29.awaitDrainWriters.delete(dest); } - if ((!state28.awaitDrainWriters || state28.awaitDrainWriters.size === 0) && EventEmitter.listenerCount(src, "data")) { - state28.flowing = true; + if ((!state29.awaitDrainWriters || state29.awaitDrainWriters.size === 0) && EventEmitter.listenerCount(src, "data")) { + state29.flowing = true; flow(src); } }; } Readable.prototype.unpipe = function(dest) { - const state29 = this._readableState; + const state30 = this._readableState; const unpipeInfo = { hasUnpiped: false }; - if (state29.pipes.length === 0) { + if (state30.pipes.length === 0) { return this; } if (!dest) { - const dests = state29.pipes; - state29.pipes = []; + const dests = state30.pipes; + state30.pipes = []; this.pause(); - for(let i194 = 0; i194 < dests.length; i194++){ - dests[i194].emit("unpipe", this, { + for(let i197 = 0; i197 < dests.length; i197++){ + dests[i197].emit("unpipe", this, { hasUnpiped: false }); } return this; } - const index = state29.pipes.indexOf(dest); + const index = state30.pipes.indexOf(dest); if (index === -1) { return this; } - state29.pipes.splice(index, 1); - if (state29.pipes.length === 0) { + state30.pipes.splice(index, 1); + if (state30.pipes.length === 0) { this.pause(); } dest.emit("unpipe", this, unpipeInfo); @@ -49389,21 +51801,21 @@ Readable.prototype.unpipe = function(dest) { }; Readable.prototype.on = function(ev, fn) { const res = Stream.prototype.on.call(this, ev, fn); - const state30 = this._readableState; + const state31 = this._readableState; if (ev === "data") { - state30.readableListening = this.listenerCount("readable") > 0; - if (state30.flowing !== false) { + state31.readableListening = this.listenerCount("readable") > 0; + if (state31.flowing !== false) { this.resume(); } } else if (ev === "readable") { - if (!state30.endEmitted && !state30.readableListening) { - state30.readableListening = state30.needReadable = true; - state30.flowing = false; - state30.emittedReadable = false; - debug1("on readable", state30.length, state30.reading); - if (state30.length) { + if (!state31.endEmitted && !state31.readableListening) { + state31.readableListening = state31.needReadable = true; + state31.flowing = false; + state31.emittedReadable = false; + debug1("on readable", state31.length, state31.reading); + if (state31.length) { emitReadable(this); - } else if (!state30.reading) { + } else if (!state31.reading) { nextTick(nReadingNextTick, this); } } @@ -49427,14 +51839,14 @@ Readable.prototype.removeAllListeners = function(ev) { return res; }; function updateReadableListening(self) { - const state31 = self._readableState; - state31.readableListening = self.listenerCount("readable") > 0; - if (state31.resumeScheduled && state31[kPaused] === false) { - state31.flowing = true; + const state32 = self._readableState; + state32.readableListening = self.listenerCount("readable") > 0; + if (state32.resumeScheduled && state32[kPaused] === false) { + state32.flowing = true; } else if (self.listenerCount("data") > 0) { self.resume(); - } else if (!state31.readableListening) { - state31.flowing = null; + } else if (!state32.readableListening) { + state32.flowing = null; } } function nReadingNextTick(self) { @@ -49442,30 +51854,30 @@ function nReadingNextTick(self) { self.read(0); } Readable.prototype.resume = function() { - const state32 = this._readableState; - if (!state32.flowing) { + const state33 = this._readableState; + if (!state33.flowing) { debug1("resume"); - state32.flowing = !state32.readableListening; - resume(this, state32); + state33.flowing = !state33.readableListening; + resume(this, state33); } - state32[kPaused] = false; + state33[kPaused] = false; return this; }; -function resume(stream33, state33) { - if (!state33.resumeScheduled) { - state33.resumeScheduled = true; - nextTick(resume_, stream33, state33); +function resume(stream33, state34) { + if (!state34.resumeScheduled) { + state34.resumeScheduled = true; + nextTick(resume_, stream33, state34); } } -function resume_(stream34, state34) { - debug1("resume", state34.reading); - if (!state34.reading) { +function resume_(stream34, state35) { + debug1("resume", state35.reading); + if (!state35.reading) { stream34.read(0); } - state34.resumeScheduled = false; + state35.resumeScheduled = false; stream34.emit("resume"); flow(stream34); - if (state34.flowing && !state34.reading) { + if (state35.flowing && !state35.reading) { stream34.read(0); } } @@ -49480,9 +51892,9 @@ Readable.prototype.pause = function() { return this; }; function flow(stream35) { - const state35 = stream35._readableState; - debug1("flow", state35.flowing); - while(state35.flowing && stream35.read() !== null); + const state36 = stream35._readableState; + debug1("flow", state36.flowing); + while(state36.flowing && stream35.read() !== null); } Readable.prototype.wrap = function(stream36) { let paused = false; @@ -49512,9 +51924,9 @@ Readable.prototype.wrap = function(stream36) { }; const streamKeys = Object.keys(stream36); for(let j29 = 1; j29 < streamKeys.length; j29++){ - const i195 = streamKeys[j29]; - if (this[i195] === undefined && typeof stream36[i195] === "function") { - this[i195] = stream36[i195].bind(stream36); + const i198 = streamKeys[j29]; + if (this[i198] === undefined && typeof stream36[i198] === "function") { + this[i198] = stream36[i198].bind(stream36); } } return this; @@ -49545,21 +51957,21 @@ async function* createAsyncIterator(stream38, options56) { destroyOnError: true, ...options56 }; - function next(resolve20) { + function next(resolve22) { if (this === stream38) { callback(); callback = nop1; } else { - callback = resolve20; + callback = resolve22; } } - const state36 = stream38._readableState; - let error25 = state36.errored; - let errorEmitted = state36.errorEmitted; - let endEmitted = state36.endEmitted; - let closeEmitted = state36.closeEmitted; + const state37 = stream38._readableState; + let error26 = state37.errored; + let errorEmitted = state37.errorEmitted; + let endEmitted = state37.endEmitted; + let closeEmitted = state37.closeEmitted; stream38.on("readable", next).on("error", function(err) { - error25 = err; + error26 = err; errorEmitted = true; next.call(this); }).on("end", function() { @@ -49576,7 +51988,7 @@ async function* createAsyncIterator(stream38, options56) { if (chunk20 !== null) { yield chunk20; } else if (errorEmitted) { - throw error25; + throw error26; } else if (endEmitted) { break; } else if (closeEmitted) { @@ -49593,7 +52005,7 @@ async function* createAsyncIterator(stream38, options56) { throw err; } finally{ if (!errorThrown && opts.destroyOnReturn) { - if (state36.autoDestroy || !endEmitted) { + if (state37.autoDestroy || !endEmitted) { __default14.destroyer(stream38, null); } } @@ -49640,9 +52052,9 @@ Object.defineProperties(Readable.prototype, { get: function() { return this._readableState.flowing; }, - set: function(state37) { + set: function(state38) { if (this._readableState) { - this._readableState.flowing = state37; + this._readableState.flowing = state38; } } }, @@ -49672,11 +52084,11 @@ Object.defineProperties(Readable.prototype, { } return this._readableState.destroyed; }, - set (value413) { + set (value417) { if (!this._readableState) { return; } - this._readableState.destroyed = value413; + this._readableState.destroyed = value417; } }, readableEnded: { @@ -49696,48 +52108,48 @@ Object.defineProperties(ReadableState.prototype, { get () { return this[kPaused] !== false; }, - set (value414) { - this[kPaused] = !!value414; + set (value418) { + this[kPaused] = !!value418; } } }); -function fromList(n142, state38) { - if (state38.length === 0) { +function fromList(n143, state39) { + if (state39.length === 0) { return null; } let ret; - if (state38.objectMode) { - ret = state38.buffer.shift(); - } else if (!n142 || n142 >= state38.length) { - if (state38.decoder) { - ret = state38.buffer.join(""); - } else if (state38.buffer.length === 1) { - ret = state38.buffer.first(); + if (state39.objectMode) { + ret = state39.buffer.shift(); + } else if (!n143 || n143 >= state39.length) { + if (state39.decoder) { + ret = state39.buffer.join(""); + } else if (state39.buffer.length === 1) { + ret = state39.buffer.first(); } else { - ret = state38.buffer.concat(state38.length); + ret = state39.buffer.concat(state39.length); } - state38.buffer.clear(); + state39.buffer.clear(); } else { - ret = state38.buffer.consume(n142, state38.decoder); + ret = state39.buffer.consume(n143, state39.decoder); } return ret; } function endReadable(stream39) { - const state39 = stream39._readableState; - debug1("endReadable", state39.endEmitted); - if (!state39.endEmitted) { - state39.ended = true; - nextTick(endReadableNT, state39, stream39); + const state40 = stream39._readableState; + debug1("endReadable", state40.endEmitted); + if (!state40.endEmitted) { + state40.ended = true; + nextTick(endReadableNT, state40, stream39); } } -function endReadableNT(state40, stream40) { - debug1("endReadableNT", state40.endEmitted, state40.length); - if (!state40.errorEmitted && !state40.closeEmitted && !state40.endEmitted && state40.length === 0) { - state40.endEmitted = true; +function endReadableNT(state41, stream40) { + debug1("endReadableNT", state41.endEmitted, state41.length); + if (!state41.errorEmitted && !state41.closeEmitted && !state41.endEmitted && state41.length === 0) { + state41.endEmitted = true; stream40.emit("end"); if (stream40.writable && stream40.allowHalfOpen === false) { nextTick(endWritableNT, stream40); - } else if (state40.autoDestroy) { + } else if (state41.autoDestroy) { const wState = stream40._writableState; const autoDestroy = !wState || wState.autoDestroy && (wState.finished || wState.writable === false); if (autoDestroy) { @@ -49755,10 +52167,67 @@ function endWritableNT(stream41) { function readableFrom(iterable, opts) { return _from1(Readable, iterable, opts); } -function wrap(src, options57) { +function isReadableStream(object) { + return object instanceof ReadableStream; +} +Readable.fromWeb = function(readableStream, options57 = {}) { + if (!isReadableStream(readableStream)) { + throw new ERR_INVALID_ARG_TYPE("readableStream", "ReadableStream", readableStream); + } + validateObject(options57, "options"); + const { highWaterMark , encoding , objectMode =false , signal , } = options57; + if (encoding !== undefined && !Buffer2.isEncoding(encoding)) { + throw new ERR_INVALID_ARG_VALUE(encoding, "options.encoding"); + } + validateBoolean(objectMode, "options.objectMode"); + const reader2 = readableStream.getReader(); + let closed = false; + const readable = new Readable({ + objectMode, + highWaterMark, + encoding, + signal, + read () { + reader2.read().then((chunk21)=>{ + if (chunk21.done) { + readable.push(null); + } else { + readable.push(chunk21.value); + } + }, (error27)=>destroy.call(readable, error27)); + }, + destroy (error110, callback) { + function done() { + try { + callback(error110); + } catch (error28) { + process.nextTick(()=>{ + throw error28; + }); + } + } + if (!closed) { + reader2.cancel(error110).then(done, done); + return; + } + done(); + } + }); + reader2.closed.then(()=>{ + closed = true; + if (!isReadableEnded1(readable)) { + readable.push(null); + } + }, (error29)=>{ + closed = true; + destroy.call(readable, error29); + }); + return readable; +}; +function wrap(src, options58) { return new Readable({ objectMode: (src.readableObjectMode ?? src.objectMode) ?? true, - ...options57, + ...options58, destroy (err, callback) { __default14.destroyer(src, err); callback(err); @@ -49787,24 +52256,24 @@ Object.setPrototypeOf(Writable.prototype, Stream.prototype); Object.setPrototypeOf(Writable, Stream); function nop2() {} const kOnFinished = Symbol("kOnFinished"); -function WritableState(options58, stream42, isDuplex) { +function WritableState(options59, stream42, isDuplex) { if (typeof isDuplex !== "boolean") { isDuplex = isDuplexStream(stream42); } - this.objectMode = !!(options58 && options58.objectMode); + this.objectMode = !!(options59 && options59.objectMode); if (isDuplex) { - this.objectMode = this.objectMode || !!(options58 && options58.writableObjectMode); + this.objectMode = this.objectMode || !!(options59 && options59.writableObjectMode); } - this.highWaterMark = options58 ? getHighWaterMark(this, options58, "writableHighWaterMark", isDuplex) : getDefaultHighWaterMark(false); + this.highWaterMark = options59 ? getHighWaterMark(this, options59, "writableHighWaterMark", isDuplex) : getDefaultHighWaterMark(false); this.finalCalled = false; this.needDrain = false; this.ending = false; this.ended = false; this.finished = false; this.destroyed = false; - const noDecode = !!(options58 && options58.decodeStrings === false); + const noDecode = !!(options59 && options59.decodeStrings === false); this.decodeStrings = !noDecode; - this.defaultEncoding = options58 && options58.defaultEncoding || "utf8"; + this.defaultEncoding = options59 && options59.defaultEncoding || "utf8"; this.length = 0; this.writing = false; this.corked = 0; @@ -49819,18 +52288,18 @@ function WritableState(options58, stream42, isDuplex) { this.constructed = true; this.prefinished = false; this.errorEmitted = false; - this.emitClose = !options58 || options58.emitClose !== false; - this.autoDestroy = !options58 || options58.autoDestroy !== false; + this.emitClose = !options59 || options59.emitClose !== false; + this.autoDestroy = !options59 || options59.autoDestroy !== false; this.errored = null; this.closed = false; this.closeEmitted = false; this[kOnFinished] = []; } -function resetBuffer(state41) { - state41.buffered = []; - state41.bufferedIndex = 0; - state41.allBuffers = true; - state41.allNoop = true; +function resetBuffer(state42) { + state42.buffered = []; + state42.bufferedIndex = 0; + state42.allBuffers = true; + state42.allNoop = true; } WritableState.prototype.getBuffer = function getBuffer() { return this.buffered.slice(this.bufferedIndex); @@ -49840,39 +52309,39 @@ Object.defineProperty(WritableState.prototype, "bufferedRequestCount", { return this.buffered.length - this.bufferedIndex; } }); -function Writable(options59) { +function Writable(options60) { const isDuplex = isDuplexStream(this); if (!isDuplex && !Function.prototype[Symbol.hasInstance].call(Writable, this)) { - return new Writable(options59); + return new Writable(options60); } - this._writableState = new WritableState(options59, this, isDuplex); - if (options59) { - if (typeof options59.write === "function") { - this._write = options59.write; + this._writableState = new WritableState(options60, this, isDuplex); + if (options60) { + if (typeof options60.write === "function") { + this._write = options60.write; } - if (typeof options59.writev === "function") { - this._writev = options59.writev; + if (typeof options60.writev === "function") { + this._writev = options60.writev; } - if (typeof options59.destroy === "function") { - this._destroy = options59.destroy; + if (typeof options60.destroy === "function") { + this._destroy = options60.destroy; } - if (typeof options59.final === "function") { - this._final = options59.final; + if (typeof options60.final === "function") { + this._final = options60.final; } - if (typeof options59.construct === "function") { - this._construct = options59.construct; + if (typeof options60.construct === "function") { + this._construct = options60.construct; } - if (options59.signal) { - addAbortSignalNoValidate(options59.signal, this); + if (options60.signal) { + addAbortSignalNoValidate(options60.signal, this); } } - Stream.call(this, options59); + Stream.call(this, options60); __default14.construct(this, ()=>{ - const state42 = this._writableState; - if (!state42.writing) { - clearBuffer(this, state42); + const state43 = this._writableState; + if (!state43.writing) { + clearBuffer(this, state43); } - finishMaybe(this, state42); + finishMaybe(this, state43); }); } Object.defineProperty(Writable, Symbol.hasInstance, { @@ -49885,14 +52354,14 @@ Object.defineProperty(Writable, Symbol.hasInstance, { Writable.prototype.pipe = function() { errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE()); }; -function _write(stream43, chunk21, encoding, cb) { - const state43 = stream43._writableState; +function _write(stream43, chunk22, encoding, cb) { + const state44 = stream43._writableState; if (typeof encoding === "function") { cb = encoding; - encoding = state43.defaultEncoding; + encoding = state44.defaultEncoding; } else { if (!encoding) { - encoding = state43.defaultEncoding; + encoding = state44.defaultEncoding; } else if (encoding !== "buffer" && !Buffer2.isEncoding(encoding)) { throw new ERR_UNKNOWN_ENCODING(encoding); } @@ -49900,31 +52369,31 @@ function _write(stream43, chunk21, encoding, cb) { cb = nop2; } } - if (chunk21 === null) { + if (chunk22 === null) { throw new ERR_STREAM_NULL_VALUES(); - } else if (!state43.objectMode) { - if (typeof chunk21 === "string") { - if (state43.decodeStrings !== false) { - chunk21 = Buffer2.from(chunk21, encoding); + } else if (!state44.objectMode) { + if (typeof chunk22 === "string") { + if (state44.decodeStrings !== false) { + chunk22 = Buffer2.from(chunk22, encoding); encoding = "buffer"; } - } else if (chunk21 instanceof Buffer2) { + } else if (chunk22 instanceof Buffer2) { encoding = "buffer"; - } else if (isUint8Array(chunk21)) { - chunk21 = _uint8ArrayToBuffer(chunk21); + } else if (isUint8Array(chunk22)) { + chunk22 = _uint8ArrayToBuffer(chunk22); encoding = "buffer"; } else { throw new ERR_INVALID_ARG_TYPE("chunk", [ "string", "Buffer", "Uint8Array" - ], chunk21); + ], chunk22); } } let err; - if (state43.ending) { + if (state44.ending) { err = new ERR_STREAM_WRITE_AFTER_END(); - } else if (state43.destroyed) { + } else if (state44.destroyed) { err = new ERR_STREAM_DESTROYED("write"); } if (err) { @@ -49932,21 +52401,21 @@ function _write(stream43, chunk21, encoding, cb) { errorOrDestroy2(stream43, err, true); return err; } - state43.pendingcb++; - return writeOrBuffer(stream43, state43, chunk21, encoding, cb); + state44.pendingcb++; + return writeOrBuffer(stream43, state44, chunk22, encoding, cb); } -Writable.prototype.write = function(chunk22, encoding, cb) { - return _write(this, chunk22, encoding, cb) === true; +Writable.prototype.write = function(chunk23, encoding, cb) { + return _write(this, chunk23, encoding, cb) === true; }; Writable.prototype.cork = function() { this._writableState.corked++; }; Writable.prototype.uncork = function() { - const state44 = this._writableState; - if (state44.corked) { - state44.corked--; - if (!state44.writing) { - clearBuffer(this, state44); + const state45 = this._writableState; + if (state45.corked) { + state45.corked--; + if (!state45.writing) { + clearBuffer(this, state45); } } }; @@ -49960,181 +52429,181 @@ Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { this._writableState.defaultEncoding = encoding; return this; }; -function writeOrBuffer(stream44, state45, chunk23, encoding, callback) { - const len60 = state45.objectMode ? 1 : chunk23.length; - state45.length += len60; - const ret = state45.length < state45.highWaterMark; +function writeOrBuffer(stream44, state46, chunk24, encoding, callback) { + const len60 = state46.objectMode ? 1 : chunk24.length; + state46.length += len60; + const ret = state46.length < state46.highWaterMark; if (!ret) { - state45.needDrain = true; + state46.needDrain = true; } - if (state45.writing || state45.corked || state45.errored || !state45.constructed) { - state45.buffered.push({ - chunk: chunk23, + if (state46.writing || state46.corked || state46.errored || !state46.constructed) { + state46.buffered.push({ + chunk: chunk24, encoding, callback }); - if (state45.allBuffers && encoding !== "buffer") { - state45.allBuffers = false; + if (state46.allBuffers && encoding !== "buffer") { + state46.allBuffers = false; } - if (state45.allNoop && callback !== nop2) { - state45.allNoop = false; + if (state46.allNoop && callback !== nop2) { + state46.allNoop = false; } } else { - state45.writelen = len60; - state45.writecb = callback; - state45.writing = true; - state45.sync = true; - stream44._write(chunk23, encoding, state45.onwrite); - state45.sync = false; - } - return ret && !state45.errored && !state45.destroyed; -} -function doWrite(stream45, state46, writev, len61, chunk24, encoding, cb) { - state46.writelen = len61; - state46.writecb = cb; - state46.writing = true; - state46.sync = true; - if (state46.destroyed) { - state46.onwrite(new ERR_STREAM_DESTROYED("write")); + state46.writelen = len60; + state46.writecb = callback; + state46.writing = true; + state46.sync = true; + stream44._write(chunk24, encoding, state46.onwrite); + state46.sync = false; + } + return ret && !state46.errored && !state46.destroyed; +} +function doWrite(stream45, state47, writev, len61, chunk25, encoding, cb) { + state47.writelen = len61; + state47.writecb = cb; + state47.writing = true; + state47.sync = true; + if (state47.destroyed) { + state47.onwrite(new ERR_STREAM_DESTROYED("write")); } else if (writev) { - stream45._writev(chunk24, state46.onwrite); + stream45._writev(chunk25, state47.onwrite); } else { - stream45._write(chunk24, encoding, state46.onwrite); + stream45._write(chunk25, encoding, state47.onwrite); } - state46.sync = false; + state47.sync = false; } -function onwriteError(stream46, state47, er, cb) { - --state47.pendingcb; +function onwriteError(stream46, state48, er, cb) { + --state48.pendingcb; cb(er); - errorBuffer(state47); + errorBuffer(state48); errorOrDestroy2(stream46, er); } function onwrite(stream47, er) { - const state48 = stream47._writableState; - const sync = state48.sync; - const cb = state48.writecb; + const state49 = stream47._writableState; + const sync = state49.sync; + const cb = state49.writecb; if (typeof cb !== "function") { errorOrDestroy2(stream47, new ERR_MULTIPLE_CALLBACK()); return; } - state48.writing = false; - state48.writecb = null; - state48.length -= state48.writelen; - state48.writelen = 0; + state49.writing = false; + state49.writecb = null; + state49.length -= state49.writelen; + state49.writelen = 0; if (er) { er.stack; - if (!state48.errored) { - state48.errored = er; + if (!state49.errored) { + state49.errored = er; } if (stream47._readableState && !stream47._readableState.errored) { stream47._readableState.errored = er; } if (sync) { - nextTick(onwriteError, stream47, state48, er, cb); + nextTick(onwriteError, stream47, state49, er, cb); } else { - onwriteError(stream47, state48, er, cb); + onwriteError(stream47, state49, er, cb); } } else { - if (state48.buffered.length > state48.bufferedIndex) { - clearBuffer(stream47, state48); + if (state49.buffered.length > state49.bufferedIndex) { + clearBuffer(stream47, state49); } if (sync) { - if (state48.afterWriteTickInfo !== null && state48.afterWriteTickInfo.cb === cb) { - state48.afterWriteTickInfo.count++; + if (state49.afterWriteTickInfo !== null && state49.afterWriteTickInfo.cb === cb) { + state49.afterWriteTickInfo.count++; } else { - state48.afterWriteTickInfo = { + state49.afterWriteTickInfo = { count: 1, cb, stream: stream47, - state: state48 + state: state49 }; - nextTick(afterWriteTick, state48.afterWriteTickInfo); + nextTick(afterWriteTick, state49.afterWriteTickInfo); } } else { - afterWrite(stream47, state48, 1, cb); + afterWrite(stream47, state49, 1, cb); } } } -function afterWriteTick({ stream: stream48 , state: state49 , count , cb }) { - state49.afterWriteTickInfo = null; - return afterWrite(stream48, state49, count, cb); +function afterWriteTick({ stream: stream48 , state: state50 , count , cb }) { + state50.afterWriteTickInfo = null; + return afterWrite(stream48, state50, count, cb); } -function afterWrite(stream49, state50, count, cb) { - const needDrain = !state50.ending && !stream49.destroyed && state50.length === 0 && state50.needDrain; +function afterWrite(stream49, state51, count, cb) { + const needDrain = !state51.ending && !stream49.destroyed && state51.length === 0 && state51.needDrain; if (needDrain) { - state50.needDrain = false; + state51.needDrain = false; stream49.emit("drain"); } while(count-- > 0){ - state50.pendingcb--; + state51.pendingcb--; cb(); } - if (state50.destroyed) { - errorBuffer(state50); + if (state51.destroyed) { + errorBuffer(state51); } - finishMaybe(stream49, state50); + finishMaybe(stream49, state51); } -function errorBuffer(state51) { - if (state51.writing) { +function errorBuffer(state52) { + if (state52.writing) { return; } - for(let n143 = state51.bufferedIndex; n143 < state51.buffered.length; ++n143){ - const { chunk: chunk25 , callback } = state51.buffered[n143]; - const len62 = state51.objectMode ? 1 : chunk25.length; - state51.length -= len62; + for(let n144 = state52.bufferedIndex; n144 < state52.buffered.length; ++n144){ + const { chunk: chunk26 , callback } = state52.buffered[n144]; + const len62 = state52.objectMode ? 1 : chunk26.length; + state52.length -= len62; callback(new ERR_STREAM_DESTROYED("write")); } - const onfinishCallbacks = state51[kOnFinished].splice(0); - for(let i196 = 0; i196 < onfinishCallbacks.length; i196++){ - onfinishCallbacks[i196](new ERR_STREAM_DESTROYED("end")); + const onfinishCallbacks = state52[kOnFinished].splice(0); + for(let i199 = 0; i199 < onfinishCallbacks.length; i199++){ + onfinishCallbacks[i199](new ERR_STREAM_DESTROYED("end")); } - resetBuffer(state51); + resetBuffer(state52); } -function clearBuffer(stream50, state52) { - if (state52.corked || state52.bufferProcessing || state52.destroyed || !state52.constructed) { +function clearBuffer(stream50, state53) { + if (state53.corked || state53.bufferProcessing || state53.destroyed || !state53.constructed) { return; } - const { buffered , bufferedIndex , objectMode } = state52; + const { buffered , bufferedIndex , objectMode } = state53; const bufferedLength = buffered.length - bufferedIndex; if (!bufferedLength) { return; } - let i197 = bufferedIndex; - state52.bufferProcessing = true; + let i200 = bufferedIndex; + state53.bufferProcessing = true; if (bufferedLength > 1 && stream50._writev) { - state52.pendingcb -= bufferedLength - 1; - const callback = state52.allNoop ? nop2 : (err)=>{ - for(let n144 = i197; n144 < buffered.length; ++n144){ - buffered[n144].callback(err); + state53.pendingcb -= bufferedLength - 1; + const callback = state53.allNoop ? nop2 : (err)=>{ + for(let n145 = i200; n145 < buffered.length; ++n145){ + buffered[n145].callback(err); } }; - const chunks = state52.allNoop && i197 === 0 ? buffered : buffered.slice(i197); - chunks.allBuffers = state52.allBuffers; - doWrite(stream50, state52, true, state52.length, chunks, "", callback); - resetBuffer(state52); + const chunks = state53.allNoop && i200 === 0 ? buffered : buffered.slice(i200); + chunks.allBuffers = state53.allBuffers; + doWrite(stream50, state53, true, state53.length, chunks, "", callback); + resetBuffer(state53); } else { do { - const { chunk: chunk26 , encoding , callback } = buffered[i197]; - buffered[i197++] = null; - const len63 = objectMode ? 1 : chunk26.length; - doWrite(stream50, state52, false, len63, chunk26, encoding, callback); - }while (i197 < buffered.length && !state52.writing) - if (i197 === buffered.length) { - resetBuffer(state52); - } else if (i197 > 256) { - buffered.splice(0, i197); - state52.bufferedIndex = 0; + const { chunk: chunk27 , encoding , callback } = buffered[i200]; + buffered[i200++] = null; + const len63 = objectMode ? 1 : chunk27.length; + doWrite(stream50, state53, false, len63, chunk27, encoding, callback); + }while (i200 < buffered.length && !state53.writing) + if (i200 === buffered.length) { + resetBuffer(state53); + } else if (i200 > 256) { + buffered.splice(0, i200); + state53.bufferedIndex = 0; } else { - state52.bufferedIndex = i197; + state53.bufferedIndex = i200; } } - state52.bufferProcessing = false; + state53.bufferProcessing = false; } -Writable.prototype._write = function(chunk27, encoding, cb) { +Writable.prototype._write = function(chunk28, encoding, cb) { if (this._writev) { this._writev([ { - chunk: chunk27, + chunk: chunk28, encoding } ], cb); @@ -50143,49 +52612,49 @@ Writable.prototype._write = function(chunk27, encoding, cb) { } }; Writable.prototype._writev = null; -Writable.prototype.end = function(chunk28, encoding, cb) { - const state53 = this._writableState; - if (typeof chunk28 === "function") { - cb = chunk28; - chunk28 = null; +Writable.prototype.end = function(chunk29, encoding, cb) { + const state54 = this._writableState; + if (typeof chunk29 === "function") { + cb = chunk29; + chunk29 = null; encoding = null; } else if (typeof encoding === "function") { cb = encoding; encoding = null; } let err; - if (chunk28 !== null && chunk28 !== undefined) { - const ret = _write(this, chunk28, encoding); + if (chunk29 !== null && chunk29 !== undefined) { + const ret = _write(this, chunk29, encoding); if (ret instanceof Error) { err = ret; } } - if (state53.corked) { - state53.corked = 1; + if (state54.corked) { + state54.corked = 1; this.uncork(); } - if (err) {} else if (!state53.errored && !state53.ending) { - state53.ending = true; - finishMaybe(this, state53, true); - state53.ended = true; - } else if (state53.finished) { + if (err) {} else if (!state54.errored && !state54.ending) { + state54.ending = true; + finishMaybe(this, state54, true); + state54.ended = true; + } else if (state54.finished) { err = new ERR_STREAM_ALREADY_FINISHED("end"); - } else if (state53.destroyed) { + } else if (state54.destroyed) { err = new ERR_STREAM_DESTROYED("end"); } if (typeof cb === "function") { - if (err || state53.finished) { + if (err || state54.finished) { nextTick1(cb, err); } else { - state53[kOnFinished].push(cb); + state54[kOnFinished].push(cb); } } return this; }; -function needFinish(state54) { - return state54.ending && state54.constructed && state54.length === 0 && !state54.errored && state54.buffered.length === 0 && !state54.finished && !state54.writing && !state54.errorEmitted && !state54.closeEmitted; +function needFinish(state55) { + return state55.ending && state55.constructed && state55.length === 0 && !state55.errored && state55.buffered.length === 0 && !state55.finished && !state55.writing && !state55.errorEmitted && !state55.closeEmitted; } -function callFinal(stream51, state55) { +function callFinal(stream51, state56) { let called = false; function onFinish(err) { if (called) { @@ -50193,22 +52662,22 @@ function callFinal(stream51, state55) { return; } called = true; - state55.pendingcb--; + state56.pendingcb--; if (err) { - const onfinishCallbacks = state55[kOnFinished].splice(0); - for(let i198 = 0; i198 < onfinishCallbacks.length; i198++){ - onfinishCallbacks[i198](err); + const onfinishCallbacks = state56[kOnFinished].splice(0); + for(let i201 = 0; i201 < onfinishCallbacks.length; i201++){ + onfinishCallbacks[i201](err); } - errorOrDestroy2(stream51, err, state55.sync); - } else if (needFinish(state55)) { - state55.prefinished = true; + errorOrDestroy2(stream51, err, state56.sync); + } else if (needFinish(state56)) { + state56.prefinished = true; stream51.emit("prefinish"); - state55.pendingcb++; - nextTick(finish, stream51, state55); + state56.pendingcb++; + nextTick(finish, stream51, state56); } } - state55.sync = true; - state55.pendingcb++; + state56.sync = true; + state56.pendingcb++; try { const result = stream51._final(onFinish); if (result != null) { @@ -50222,43 +52691,43 @@ function callFinal(stream51, state55) { } } } catch (err) { - onFinish(stream51, state55, err); + onFinish(stream51, state56, err); } - state55.sync = false; + state56.sync = false; } -function prefinish(stream52, state56) { - if (!state56.prefinished && !state56.finalCalled) { - if (typeof stream52._final === "function" && !state56.destroyed) { - state56.finalCalled = true; - callFinal(stream52, state56); +function prefinish(stream52, state57) { + if (!state57.prefinished && !state57.finalCalled) { + if (typeof stream52._final === "function" && !state57.destroyed) { + state57.finalCalled = true; + callFinal(stream52, state57); } else { - state56.prefinished = true; + state57.prefinished = true; stream52.emit("prefinish"); } } } -function finishMaybe(stream53, state57, sync) { - if (needFinish(state57)) { - prefinish(stream53, state57); - if (state57.pendingcb === 0 && needFinish(state57)) { - state57.pendingcb++; +function finishMaybe(stream53, state58, sync) { + if (needFinish(state58)) { + prefinish(stream53, state58); + if (state58.pendingcb === 0 && needFinish(state58)) { + state58.pendingcb++; if (sync) { - nextTick(finish, stream53, state57); + nextTick(finish, stream53, state58); } else { - finish(stream53, state57); + finish(stream53, state58); } } } } -function finish(stream54, state58) { - state58.pendingcb--; - state58.finished = true; - const onfinishCallbacks = state58[kOnFinished].splice(0); - for(let i199 = 0; i199 < onfinishCallbacks.length; i199++){ - onfinishCallbacks[i199](); +function finish(stream54, state59) { + state59.pendingcb--; + state59.finished = true; + const onfinishCallbacks = state59[kOnFinished].splice(0); + for(let i202 = 0; i202 < onfinishCallbacks.length; i202++){ + onfinishCallbacks[i202](); } stream54.emit("finish"); - if (state58.autoDestroy) { + if (state59.autoDestroy) { const rState = stream54._readableState; const autoDestroy = !rState || rState.autoDestroy && (rState.endEmitted || rState.readable === false); if (autoDestroy) { @@ -50271,9 +52740,9 @@ Object.defineProperties(Writable.prototype, { get () { return this._writableState ? this._writableState.destroyed : false; }, - set (value415) { + set (value419) { if (this._writableState) { - this._writableState.destroyed = value415; + this._writableState.destroyed = value419; } } }, @@ -50333,9 +52802,9 @@ Object.defineProperties(Writable.prototype, { }); const destroy1 = __default14.destroy; Writable.prototype.destroy = function(err, cb) { - const state59 = this._writableState; - if (!state59.destroyed && (state59.bufferedIndex < state59.buffered.length || state59[kOnFinished].length)) { - nextTick1(errorBuffer, state59); + const state60 = this._writableState; + if (!state60.destroyed && (state60.bufferedIndex < state60.buffered.length || state60[kOnFinished].length)) { + nextTick1(errorBuffer, state60); } destroy1.call(this, err, cb); return this; @@ -50348,6 +52817,94 @@ Writable.prototype[EventEmitter.captureRejectionSymbol] = function(err) { this.destroy(err); }; Writable.WritableState = WritableState; +function isWritableStream(object) { + return object instanceof WritableStream; +} +Writable.fromWeb = function(writableStream, options61 = {}) { + if (!isWritableStream(writableStream)) { + throw new ERR_INVALID_ARG_TYPE("writableStream", "WritableStream", writableStream); + } + validateObject(options61, "options"); + const { highWaterMark , decodeStrings =true , objectMode =false , signal , } = options61; + validateBoolean(objectMode, "options.objectMode"); + validateBoolean(decodeStrings, "options.decodeStrings"); + const writer = writableStream.getWriter(); + let closed = false; + const writable = new Writable({ + highWaterMark, + objectMode, + decodeStrings, + signal, + writev (chunks, callback) { + function done(error30) { + error30 = error30.filter((e118)=>e118); + try { + callback(error30.length === 0 ? undefined : error30); + } catch (error111) { + nextTick1(()=>destroy1.call(writable, error111)); + } + } + writer.ready.then(()=>Promise.all(chunks.map((data67)=>writer.write(data67.chunk))).then(done, done), done); + }, + write (chunk30, encoding, callback) { + if (typeof chunk30 === "string" && decodeStrings && !objectMode) { + chunk30 = Buffer2.from(chunk30, encoding); + chunk30 = new Uint8Array(chunk30.buffer, chunk30.byteOffset, chunk30.byteLength); + } + function done(error31) { + try { + callback(error31); + } catch (error210) { + destroy1(this, duplex, error210); + } + } + writer.ready.then(()=>writer.write(chunk30).then(done, done), done); + }, + destroy (error3, callback) { + function done() { + try { + callback(error3); + } catch (error32) { + nextTick1(()=>{ + throw error32; + }); + } + } + if (!closed) { + if (error3 != null) { + writer.abort(error3).then(done, done); + } else { + writer.close().then(done, done); + } + return; + } + done(); + }, + final (callback) { + function done(error33) { + try { + callback(error33); + } catch (error4) { + nextTick1(()=>destroy1.call(writable, error4)); + } + } + if (!closed) { + writer.close().then(done, done); + } + } + }); + writer.closed.then(()=>{ + closed = true; + if (!isWritableEnded(writable)) { + destroy1.call(writable, new ERR_STREAM_PREMATURE_CLOSE()); + } + }, (error34)=>{ + closed = true; + destroy1.call(writable, error34); + }); + return writable; +}; +Writable.Writable = Writable; Object.setPrototypeOf(Duplex.prototype, Readable.prototype); Object.setPrototypeOf(Duplex, Readable); { @@ -50356,21 +52913,21 @@ Object.setPrototypeOf(Duplex, Readable); Duplex.prototype[method] = Writable.prototype[method]; } } -}function Duplex(options60) { +}function Duplex(options62) { if (!(this instanceof Duplex)) { - return new Duplex(options60); + return new Duplex(options62); } - Readable.call(this, options60); - Writable.call(this, options60); + Readable.call(this, options62); + Writable.call(this, options62); this.allowHalfOpen = true; - if (options60) { - if (options60.readable === false) { + if (options62) { + if (options62.readable === false) { this.readable = false; } - if (options60.writable === false) { + if (options62.writable === false) { this.writable = false; } - if (options60.allowHalfOpen === false) { + if (options62.allowHalfOpen === false) { this.allowHalfOpen = false; } } @@ -50392,37 +52949,37 @@ Object.defineProperties(Duplex.prototype, { } return this._readableState.destroyed && this._writableState.destroyed; }, - set (value416) { + set (value420) { if (this._readableState && this._writableState) { - this._readableState.destroyed = value416; - this._writableState.destroyed = value416; + this._readableState.destroyed = value420; + this._writableState.destroyed = value420; } } } }); -function isReadableStream(object) { +function isReadableStream1(object) { return object instanceof ReadableStream; } -function isWritableStream(object) { +function isWritableStream1(object) { return object instanceof WritableStream; } -Duplex.fromWeb = function(pair, options61) { +Duplex.fromWeb = function(pair, options63) { validateObject(pair, "pair"); const { readable: readableStream , writable: writableStream , } = pair; - if (!isReadableStream(readableStream)) { + if (!isReadableStream1(readableStream)) { throw new ERR_INVALID_ARG_TYPE("pair.readable", "ReadableStream", readableStream); } - if (!isWritableStream(writableStream)) { + if (!isWritableStream1(writableStream)) { throw new ERR_INVALID_ARG_TYPE("pair.writable", "WritableStream", writableStream); } - validateObject(options61, "options"); - const { allowHalfOpen =false , objectMode =false , encoding: encoding1 , decodeStrings =true , highWaterMark , signal , } = options61; + validateObject(options63, "options"); + const { allowHalfOpen =false , objectMode =false , encoding: encoding1 , decodeStrings =true , highWaterMark , signal , } = options63; validateBoolean(objectMode, "options.objectMode"); if (encoding1 !== undefined && !Buffer2.isEncoding(encoding1)) { throw new ERR_INVALID_ARG_VALUE(encoding1, "options.encoding"); } const writer = writableStream.getWriter(); - const reader2 = readableStream.getReader(); + const reader3 = readableStream.getReader(); let writableClosed = false; let readableClosed = false; const duplex = new Duplex({ @@ -50433,34 +52990,34 @@ Duplex.fromWeb = function(pair, options61) { decodeStrings, signal, writev (chunks, callback) { - function done(error26) { - error26 = error26.filter((e118)=>e118); + function done(error35) { + error35 = error35.filter((e119)=>e119); try { - callback(error26.length === 0 ? undefined : error26); - } catch (error110) { - nextTick1(()=>destroy(duplex, error110)); + callback(error35.length === 0 ? undefined : error35); + } catch (error112) { + nextTick1(()=>destroy(duplex, error112)); } } - writer.ready.then(()=>Promise.All(chunks.map((data65)=>writer.write(data65.chunk))).then(done, done), done); + writer.ready.then(()=>Promise.all(chunks.map((data68)=>writer.write(data68.chunk))).then(done, done), done); }, - write (chunk29, encoding, callback) { - if (typeof chunk29 === "string" && decodeStrings && !objectMode) { - chunk29 = Buffer2.from(chunk29, encoding); - chunk29 = new Uint8Array(chunk29.buffer, chunk29.byteOffset, chunk29.byteLength); + write (chunk31, encoding, callback) { + if (typeof chunk31 === "string" && decodeStrings && !objectMode) { + chunk31 = Buffer2.from(chunk31, encoding); + chunk31 = new Uint8Array(chunk31.buffer, chunk31.byteOffset, chunk31.byteLength); } - function done(error27) { + function done(error36) { try { - callback(error27); - } catch (error28) { - destroy(duplex, error28); + callback(error36); + } catch (error211) { + destroy(duplex, error211); } } - writer.ready.then(()=>writer.write(chunk29).then(done, done), done); + writer.ready.then(()=>writer.write(chunk31).then(done, done), done); }, final (callback) { - function done(error29) { + function done(error37) { try { - callback(error29); + callback(error37); } catch (error3) { nextTick1(()=>destroy(duplex, error3)); } @@ -50470,21 +53027,21 @@ Duplex.fromWeb = function(pair, options61) { } }, read () { - reader2.read().then((chunk30)=>{ - if (chunk30.done) { + reader3.read().then((chunk32)=>{ + if (chunk32.done) { duplex.push(null); } else { - duplex.push(chunk30.value); + duplex.push(chunk32.value); } - }, (error30)=>destroy(duplex, error30)); + }, (error38)=>destroy(duplex, error38)); }, destroy (error4, callback) { function done() { try { callback(error4); - } catch (error31) { + } catch (error39) { nextTick1(()=>{ - throw error31; + throw error39; }); } } @@ -50495,11 +53052,11 @@ Duplex.fromWeb = function(pair, options61) { } async function closeReader() { if (!readableClosed) { - await reader2.cancel(error4); + await reader3.cancel(error4); } } if (!writableClosed || !readableClosed) { - Promise.All([ + Promise.all([ closeWriter(), closeReader(), ]).then(done, done); @@ -50513,32 +53070,32 @@ Duplex.fromWeb = function(pair, options61) { if (!isWritableEnded(duplex)) { destroy(duplex, new ERR_STREAM_PREMATURE_CLOSE()); } - }, (error32)=>{ + }, (error40)=>{ writableClosed = true; readableClosed = true; - destroy(duplex, error32); + destroy(duplex, error40); }); - reader2.closed.then(()=>{ + reader3.closed.then(()=>{ readableClosed = true; if (!isReadableEnded1(duplex)) { duplex.push(null); } - }, (error33)=>{ + }, (error41)=>{ writableClosed = true; readableClosed = true; - destroy(duplex, error33); + destroy(duplex, error41); }); return duplex; }; class Duplexify extends Duplex { - constructor(options62){ - super(options62); - if (options62?.readable === false) { + constructor(options64){ + super(options64); + if (options64?.readable === false) { this._readableState.readable = false; this._readableState.ended = true; this._readableState.endEmitted = true; } - if (options62?.writable === false) { + if (options64?.writable === false) { this._writableState.writable = false; this._writableState.ending = true; this._writableState.ended = true; @@ -50567,19 +53124,19 @@ function duplexify(body, name46) { }); } if (typeof body === "function") { - const { value: value417 , write: write2 , final: __final2 , destroy } = fromAsyncGen(body); - if (isIterable(value417)) { - return _from1(Duplexify, value417, { + const { value: value421 , write: write2 , final: __final2 , destroy } = fromAsyncGen(body); + if (isIterable(value421)) { + return _from1(Duplexify, value421, { objectMode: true, write: write2, final: __final2, destroy }); } - const then = value417?.then; + const then = value421?.then; if (typeof then === "function") { let d13; - const promise = then.call(value417, (val)=>{ + const promise = then.call(value421, (val)=>{ if (val != null) { throw new ERR_INVALID_RETURN_VALUE("nully", "body", val); } @@ -50603,7 +53160,7 @@ function duplexify(body, name46) { destroy }); } - throw new ERR_INVALID_RETURN_VALUE("Iterable, AsyncIterable or AsyncFunction", name46, value417); + throw new ERR_INVALID_RETURN_VALUE("Iterable, AsyncIterable or AsyncFunction", name46, value421); } if (isBlob(body)) { return duplexify(body.arrayBuffer()); @@ -50652,37 +53209,37 @@ function duplexify(body, name46) { ], body); } function fromAsyncGen(fn) { - let { promise , resolve: resolve21 } = createDeferredPromise(); + let { promise , resolve: resolve23 } = createDeferredPromise(); const ac = new AbortController(); const signal = ac.signal; - const value418 = fn(async function*() { + const value422 = fn(async function*() { while(true){ const _promise = promise; promise = null; - const { chunk: chunk31 , done , cb } = await _promise; + const { chunk: chunk33 , done , cb } = await _promise; nextTick(cb); if (done) return; if (signal.aborted) throw new AbortError(); - ({ promise , resolve: resolve21 } = createDeferredPromise()); - yield chunk31; + ({ promise , resolve: resolve23 } = createDeferredPromise()); + yield chunk33; } }(), { signal }); return { - value: value418, - write (chunk32, encoding, cb) { - const _resolve = resolve21; - resolve21 = null; + value: value422, + write (chunk34, encoding, cb) { + const _resolve = resolve23; + resolve23 = null; _resolve({ - chunk: chunk32, + chunk: chunk34, done: false, cb }); }, final (cb) { - const _resolve = resolve21; - resolve21 = null; + const _resolve = resolve23; + resolve23 = null; _resolve({ done: true, cb @@ -50729,8 +53286,8 @@ function _duplexify(pair) { } onfinished(err); }); - d15._write = function(chunk33, encoding, callback) { - if (w32.write(chunk33, encoding)) { + d15._write = function(chunk35, encoding, callback) { + if (w32.write(chunk35, encoding)) { callback(); } else { ondrain = callback; @@ -50807,22 +53364,23 @@ function duplexFrom(body) { return duplexify(body, "body"); } Duplex.from = duplexFrom; +Duplex.duplexify = duplexify; Object.setPrototypeOf(Transform.prototype, Duplex.prototype); Object.setPrototypeOf(Transform, Duplex); const kCallback = Symbol("kCallback"); -function Transform(options63) { +function Transform(options65) { if (!(this instanceof Transform)) { - return new Transform(options63); + return new Transform(options65); } - Duplex.call(this, options63); + Duplex.call(this, options65); this._readableState.sync = false; this[kCallback] = null; - if (options63) { - if (typeof options63.transform === "function") { - this._transform = options63.transform; + if (options65) { + if (typeof options65.transform === "function") { + this._transform = options65.transform; } - if (typeof options63.flush === "function") { - this._flush = options63.flush; + if (typeof options65.flush === "function") { + this._flush = options65.flush; } } this.on("prefinish", prefinish1); @@ -50830,7 +53388,7 @@ function Transform(options63) { function __final(cb) { let called = false; if (typeof this._flush === "function" && !this.destroyed) { - const result = this._flush((er, data66)=>{ + const result = this._flush((er, data69)=>{ called = true; if (er) { if (cb) { @@ -50840,8 +53398,8 @@ function __final(cb) { } return; } - if (data66 != null) { - this.push(data66); + if (data69 != null) { + this.push(data69); } this.push(null); if (cb) { @@ -50852,12 +53410,12 @@ function __final(cb) { try { const then = result.then; if (typeof then === "function") { - then.call(result, (data67)=>{ + then.call(result, (data70)=>{ if (called) { return; } - if (data67 != null) { - this.push(data67); + if (data70 != null) { + this.push(data70); } this.push(null); if (cb) { @@ -50891,12 +53449,12 @@ Transform.prototype._final = __final; Transform.prototype._transform = function(chunk, encoding, callback) { throw new ERR_METHOD_NOT_IMPLEMENTED("_transform()"); }; -Transform.prototype._write = function(chunk34, encoding, callback) { +Transform.prototype._write = function(chunk36, encoding, callback) { const rState = this._readableState; const wState = this._writableState; const length = rState.length; let called = false; - const result = this._transform(chunk34, encoding, (err, val)=>{ + const result = this._transform(chunk36, encoding, (err, val)=>{ called = true; if (err) { callback(err); @@ -50945,14 +53503,14 @@ Transform.prototype._read = function() { }; Object.setPrototypeOf(PassThrough.prototype, Transform.prototype); Object.setPrototypeOf(PassThrough, Transform); -function PassThrough(options64) { +function PassThrough(options66) { if (!(this instanceof PassThrough)) { - return new PassThrough(options64); + return new PassThrough(options66); } - Transform.call(this, options64); + Transform.call(this, options66); } -PassThrough.prototype._transform = function(chunk35, encoding, cb) { - cb(null, chunk35); +PassThrough.prototype._transform = function(chunk37, encoding, cb) { + cb(null, chunk37); }; function destroyer1(stream55, reading, writing, callback) { callback = once(callback); @@ -50999,11 +53557,11 @@ async function* fromReadable(val) { yield* Readable.prototype[Symbol.asyncIterator].call(val); } async function pump(iterable, writable, finish1) { - let error34; + let error42; let onresolve = null; const resume1 = (err)=>{ if (err) { - error34 = err; + error42 = err; } if (onresolve) { const callback = onresolve; @@ -51011,15 +53569,15 @@ async function pump(iterable, writable, finish1) { callback(); } }; - const wait = ()=>new Promise((resolve22, reject10)=>{ - if (error34) { - reject10(error34); + const wait = ()=>new Promise((resolve24, reject11)=>{ + if (error42) { + reject11(error42); } else { onresolve = ()=>{ - if (error34) { - reject10(error34); + if (error42) { + reject11(error42); } else { - resolve22(); + resolve24(); } }; } @@ -51032,8 +53590,8 @@ async function pump(iterable, writable, finish1) { if (writable.writableNeedDrain) { await wait(); } - for await (const chunk36 of iterable){ - if (!writable.write(chunk36)) { + for await (const chunk38 of iterable){ + if (!writable.write(chunk38)) { await wait(); } } @@ -51041,7 +53599,7 @@ async function pump(iterable, writable, finish1) { await wait(); finish1(); } catch (err) { - finish1(error34 !== err ? aggregateTwoErrors(error34, err) : err); + finish1(error42 !== err ? aggregateTwoErrors(error42, err) : err); } finally{ cleanup(); writable.off("drain", resume1); @@ -51066,39 +53624,39 @@ function pipelineImpl(streams, callback, opts) { finishImpl(new AbortError()); } outerSignal?.addEventListener("abort", abort); - let error35; - let value419; + let error43; + let value423; const destroys = []; let finishCount = 0; function finish2(err) { finishImpl(err, --finishCount === 0); } function finishImpl(err, __final3) { - if (err && (!error35 || error35.code === "ERR_STREAM_PREMATURE_CLOSE")) { - error35 = err; + if (err && (!error43 || error43.code === "ERR_STREAM_PREMATURE_CLOSE")) { + error43 = err; } - if (!error35 && !__final3) { + if (!error43 && !__final3) { return; } while(destroys.length){ - destroys.shift()(error35); + destroys.shift()(error43); } outerSignal?.removeEventListener("abort", abort); ac.abort(); if (__final3) { - callback(error35, value419); + callback(error43, value423); } } let ret; - for(let i200 = 0; i200 < streams.length; i200++){ - const stream56 = streams[i200]; - const reading = i200 < streams.length - 1; - const writing = i200 > 0; + for(let i203 = 0; i203 < streams.length; i203++){ + const stream56 = streams[i203]; + const reading = i203 < streams.length - 1; + const writing = i203 > 0; if (isNodeStream(stream56)) { finishCount++; destroys.push(destroyer1(stream56, reading, writing, finish2)); } - if (i200 === 0) { + if (i203 === 0) { if (typeof stream56 === "function") { ret = stream56({ signal @@ -51118,7 +53676,7 @@ function pipelineImpl(streams, callback, opts) { }); if (reading) { if (!isIterable(ret, true)) { - throw new ERR_INVALID_RETURN_VALUE("AsyncIterable", `transform[${i200 - 1}]`, ret); + throw new ERR_INVALID_RETURN_VALUE("AsyncIterable", `transform[${i203 - 1}]`, ret); } } else { const pt = new PassThrough({ @@ -51127,7 +53685,7 @@ function pipelineImpl(streams, callback, opts) { const then = ret?.then; if (typeof then === "function") { then.call(ret, (val)=>{ - value419 = val; + value423 = val; pt.end(val); }, (err)=>{ pt.destroy(err); @@ -51164,14 +53722,14 @@ function pipelineImpl(streams, callback, opts) { return ret; } class ComposeDuplex extends Duplex { - constructor(options65){ - super(options65); - if (options65?.readable === false) { + constructor(options67){ + super(options67); + if (options67?.readable === false) { this._readableState.readable = false; this._readableState.ended = true; this._readableState.endEmitted = true; } - if (options65?.writable === false) { + if (options67?.writable === false) { this._writableState.writable = false; this._writableState.ending = true; this._writableState.ended = true; @@ -51196,15 +53754,15 @@ function compose1(...streams) { const idx = streams.length - 1; streams[idx] = Duplex.from(streams[idx]); } - for(let n145 = 0; n145 < streams.length; ++n145){ - if (!isNodeStream(streams[n145])) { + for(let n146 = 0; n146 < streams.length; ++n146){ + if (!isNodeStream(streams[n146])) { continue; } - if (n145 < streams.length - 1 && !isReadable1(streams[n145])) { - throw new ERR_INVALID_ARG_VALUE(`streams[${n145}]`, orgStreams[n145], "must be readable"); + if (n146 < streams.length - 1 && !isReadable1(streams[n146])) { + throw new ERR_INVALID_ARG_VALUE(`streams[${n146}]`, orgStreams[n146], "must be readable"); } - if (n145 > 0 && !isWritable1(streams[n145])) { - throw new ERR_INVALID_ARG_VALUE(`streams[${n145}]`, orgStreams[n145], "must be writable"); + if (n146 > 0 && !isWritable1(streams[n146])) { + throw new ERR_INVALID_ARG_VALUE(`streams[${n146}]`, orgStreams[n146], "must be writable"); } } let ondrain; @@ -51234,8 +53792,8 @@ function compose1(...streams) { readable }); if (writable) { - d16._write = function(chunk37, encoding, callback) { - if (head.write(chunk37, encoding)) { + d16._write = function(chunk39, encoding, callback) { + if (head.write(chunk39, encoding)) { callback(); } else { ondrain = callback; @@ -51301,20 +53859,20 @@ function compose1(...streams) { return d16; } function pipeline1(...streams) { - return new Promise((resolve23, reject11)=>{ + return new Promise((resolve25, reject12)=>{ let signal; let end; const lastArg = streams[streams.length - 1]; if (lastArg && typeof lastArg === "object" && !isNodeStream(lastArg) && !isIterable(lastArg)) { - const options66 = streams.pop(); - signal = options66.signal; - end = options66.end; + const options68 = streams.pop(); + signal = options68.signal; + end = options68.end; } - pipelineImpl(streams, (err, value420)=>{ + pipelineImpl(streams, (err, value424)=>{ if (err) { - reject11(err); + reject12(err); } else { - resolve23(value420); + resolve25(value424); } }, { signal, @@ -51323,12 +53881,12 @@ function pipeline1(...streams) { }); } function finished(stream57, opts) { - return new Promise((resolve24, reject12)=>{ + return new Promise((resolve26, reject13)=>{ eos(stream57, opts, (err)=>{ if (err) { - reject12(err); + reject13(err); } else { - resolve24(); + resolve26(); } }); }); @@ -51402,8 +53960,8 @@ const isPlainObject = __default6.isPlainObject; const isTypedArray1 = __default6.isTypedArray; function normalizeArr() { const args74 = new Array(arguments.length); - for(let i201 = 0; i201 < args74.length; i201++){ - args74[i201] = arguments[i201]; + for(let i204 = 0; i204 < args74.length; i204++){ + args74[i204] = arguments[i204]; } if (Array.isArray(args74[0])) { return args74[0]; @@ -51417,14 +53975,14 @@ function containsUndefined(mixed) { return argContainsUndefined; } if (Array.isArray(mixed)) { - for(let i202 = 0; i202 < mixed.length; i202++){ + for(let i205 = 0; i205 < mixed.length; i205++){ if (argContainsUndefined) break; - argContainsUndefined = containsUndefined(mixed[i202]); + argContainsUndefined = containsUndefined(mixed[i205]); } } else if (isPlainObject(mixed)) { - Object.keys(mixed).forEach((key134)=>{ + Object.keys(mixed).forEach((key136)=>{ if (!argContainsUndefined) { - argContainsUndefined = containsUndefined(mixed[key134]); + argContainsUndefined = containsUndefined(mixed[key136]); } }); } else { @@ -51441,9 +53999,9 @@ function getUndefinedIndices(mixed) { } }); } else if (isPlainObject(mixed)) { - Object.keys(mixed).forEach((key135)=>{ - if (containsUndefined(mixed[key135])) { - indices.push(key135); + Object.keys(mixed).forEach((key137)=>{ + if (containsUndefined(mixed[key137])) { + indices.push(key137); } }); } else { @@ -51489,11 +54047,11 @@ const isEmpty = __default6.isEmpty; const callbackify1 = __default5.callbackify; function __default19(Target) { Target.prototype.toQuery = function(tz) { - let data68 = this.toSQL(this._method, tz); - if (!Array.isArray(data68)) data68 = [ - data68 + let data71 = this.toSQL(this._method, tz); + if (!Array.isArray(data71)) data71 = [ + data71 ]; - return data68.map((statement)=>{ + return data71.map((statement)=>{ return this.client._formatQuery(statement.sql, statement.bindings, tz); }).join(';\n'); }; @@ -51523,25 +54081,25 @@ function __default19(Target) { this._debug = arguments.length ? enabled7 : true; return this; }; - Target.prototype.transacting = function(t96) { - if (t96 && t96.client) { - if (!t96.client.transacting) { - t96.client.logger.warn(`Invalid transaction value: ${t96.client}`); + Target.prototype.transacting = function(t98) { + if (t98 && t98.client) { + if (!t98.client.transacting) { + t98.client.logger.warn(`Invalid transaction value: ${t98.client}`); } else { - this.client = t96.client; + this.client = t98.client; } } - if (isEmpty(t96)) { + if (isEmpty(t98)) { this.client.logger.error('Invalid value on transacting call, potential bug'); throw Error('Invalid transacting value (null, undefined or empty object)'); } return this; }; - Target.prototype.stream = function(options67) { - return this.client.runner(this).stream(options67); + Target.prototype.stream = function(options69) { + return this.client.runner(this).stream(options69); }; - Target.prototype.pipe = function(writable, options68) { - return this.client.runner(this).pipe(writable, options68); + Target.prototype.pipe = function(writable, options70) { + return this.client.runner(this).pipe(writable, options70); }; Target.prototype.asCallback = function(cb) { const promise = this.then(); @@ -51563,7 +54121,7 @@ const isObject2 = __default6.isObject; const isPlainObject1 = __default6.isPlainObject; const reduce = __default6.reduce; const uuid = { - v1: mod22.v1.generate + v1: mod21.v1.generate }; const debugBindings = __default7('knex:bindings'); function Raw(client) { @@ -51647,15 +54205,15 @@ function replaceRawArrBindings(raw, formatter) { const expectedBindings = raw.bindings.length; const values20 = raw.bindings; let index = 0; - const sql = raw.sql.replace(/\\?\?\??/g, function(match23) { - if (match23 === '\\?') { - return match23; + const sql = raw.sql.replace(/\\?\?\??/g, function(match20) { + if (match20 === '\\?') { + return match20; } - const value421 = values20[index++]; - if (match23 === '??') { - return formatter.columnize(value421); + const value425 = values20[index++]; + if (match20 === '??') { + return formatter.columnize(value425); } - return formatter.parameter(value421); + return formatter.parameter(value425); }); if (expectedBindings !== index) { throw new Error(`Expected ${expectedBindings} bindings, saw ${index}`); @@ -51669,24 +54227,24 @@ function replaceRawArrBindings(raw, formatter) { function replaceKeyBindings(raw, formatter) { const values21 = raw.bindings; const regex = /\\?(:(\w+):(?=::)|:(\w+):(?!:)|:(\w+))/g; - const sql = raw.sql.replace(regex, function(match24, p112, p210, p310, p410) { - if (match24 !== p112) { + const sql = raw.sql.replace(regex, function(match21, p112, p210, p310, p410) { + if (match21 !== p112) { return p112; } const part = p210 || p310 || p410; - const key136 = match24.trim(); - const isIdentifier = key136[key136.length - 1] === ':'; - const value422 = values21[part]; - if (value422 === undefined) { + const key138 = match21.trim(); + const isIdentifier = key138[key138.length - 1] === ':'; + const value426 = values21[part]; + if (value426 === undefined) { if (Object.prototype.hasOwnProperty.call(values21, part)) { - formatter.bindings.push(value422); + formatter.bindings.push(value426); } - return match24; + return match21; } if (isIdentifier) { - return match24.replace(p112, formatter.columnize(value422)); + return match21.replace(p112, formatter.columnize(value426)); } - return match24.replace(p112, formatter.parameter(value422)); + return match21.replace(p112, formatter.parameter(value426)); }); return { method: 'raw', @@ -51727,17 +54285,17 @@ class KnexTimeoutError extends Error { } } function timeout(promise, ms) { - return new Promise(function(resolve25, reject13) { + return new Promise(function(resolve27, reject14) { const id = setTimeout(function() { - reject13(new KnexTimeoutError('operation timed out')); + reject14(new KnexTimeoutError('operation timed out')); }, ms); - function wrappedResolve(value423) { + function wrappedResolve(value427) { clearTimeout(id); - resolve25(value423); + resolve27(value427); } function wrappedReject(err) { clearTimeout(id); - reject13(err); + reject14(err); } promise.then(wrappedResolve, wrappedReject); }); @@ -51774,11 +54332,11 @@ Object.assign(Runner.prototype, { return res; }); }, - stream (options69, handler) { + stream (options71, handler) { if (arguments.length === 1) { - if (typeof options69 === 'function') { - handler = options69; - options69 = {}; + if (typeof options71 === 'function') { + handler = options71; + options71 = {}; } } const hasHandler = typeof handler === 'function'; @@ -51796,10 +54354,10 @@ Object.assign(Runner.prototype, { if (Array.isArray(sql) && hasHandler) { throw new Error('The stream may only be used with a single query statement.'); } - return runner.client.stream(runner.connection, sql, stream58, options69); - } catch (e119) { - stream58.emit('error', e119); - throw e119; + return runner.client.stream(runner.connection, sql, stream58, options71); + } catch (e120) { + stream58.emit('error', e120); + throw e120; } }); if (hasHandler) { @@ -51811,8 +54369,8 @@ Object.assign(Runner.prototype, { }); return stream58; }, - pipe (writable, options70) { - return this.stream(options70).pipe(writable); + pipe (writable, options72) { + return this.stream(options72).pipe(writable); }, query: async function(obj) { const { __knexUid , __knexTxId } = this.connection; @@ -51835,20 +54393,20 @@ Object.assign(Runner.prototype, { __knexUid: this.connection.__knexUid }, obj), this.builder); return postProcessedResponse; - }).catch((error36)=>{ - if (!(error36 instanceof KnexTimeoutError)) { - return Promise.reject(error36); + }).catch((error44)=>{ + if (!(error44 instanceof KnexTimeoutError)) { + return Promise.reject(error44); } const { timeout: timeout1 , sql , bindings } = obj; let cancelQuery; if (obj.cancelOnTimeout) { cancelQuery = this.client.cancelQuery(this.connection); } else { - this.connection.__knex__disposed = error36; + this.connection.__knex__disposed = error44; cancelQuery = Promise.resolve(); } return cancelQuery.catch((cancelError)=>{ - this.connection.__knex__disposed = error36; + this.connection.__knex__disposed = error44; throw Object.assign(cancelError, { message: `After query timeout of ${timeout1}ms exceeded, cancelling of query failed.`, sql, @@ -51856,18 +54414,18 @@ Object.assign(Runner.prototype, { timeout: timeout1 }); }).then(()=>{ - throw Object.assign(error36, { + throw Object.assign(error44, { message: `Defined query timeout of ${timeout1}ms exceeded when running query.`, sql, bindings, timeout: timeout1 }); }); - }).catch((error37)=>{ - this.builder.emit('query-error', error37, Object.assign({ + }).catch((error45)=>{ + this.builder.emit('query-error', error45, Object.assign({ __knexUid: this.connection.__knexUid }, obj)); - throw error37; + throw error45; }); }, async queryArray (queries) { @@ -51887,15 +54445,15 @@ Object.assign(Runner.prototype, { if (this.connection) { return cb(this.connection); } - return this.client.acquireConnection().catch((error38)=>{ - if (!(error38 instanceof KnexTimeoutError)) { - return Promise.reject(error38); + return this.client.acquireConnection().catch((error46)=>{ + if (!(error46 instanceof KnexTimeoutError)) { + return Promise.reject(error46); } if (this.builder) { - error38.sql = this.builder.sql; - error38.bindings = this.builder.bindings; + error46.sql = this.builder.sql; + error46.bindings = this.builder.bindings; } - throw error38; + throw error46; }).then(async (connection)=>{ try { return await cb(connection); @@ -51905,17 +54463,17 @@ Object.assign(Runner.prototype, { }); } }); -function JoinClause(table, type56, schema) { +function JoinClause(table, type49, schema) { this.schema = schema; this.table = table; - this.joinType = type56; + this.joinType = type49; this.and = this; this.clauses = []; } function getClauseFromArguments(compilerType, bool, first32, operator, second) { - let data69 = null; + let data72 = null; if (typeof first32 === 'function') { - data69 = { + data72 = { type: 'onWrapped', value: first32, bool: bool @@ -51924,7 +54482,7 @@ function getClauseFromArguments(compilerType, bool, first32, operator, second) { switch(arguments.length){ case 3: { - data69 = { + data72 = { type: 'onRaw', value: first32, bool @@ -51932,7 +54490,7 @@ function getClauseFromArguments(compilerType, bool, first32, operator, second) { break; } case 4: - data69 = { + data72 = { type: compilerType, column: first32, operator: '=', @@ -51941,7 +54499,7 @@ function getClauseFromArguments(compilerType, bool, first32, operator, second) { }; break; default: - data69 = { + data72 = { type: compilerType, column: first32, operator, @@ -51950,23 +54508,23 @@ function getClauseFromArguments(compilerType, bool, first32, operator, second) { }; } } - return data69; + return data72; } Object.assign(JoinClause.prototype, { grouping: 'join', on (first33) { if (typeof first33 === 'object' && typeof first33.toSQL !== 'function') { const keys = Object.keys(first33); - let i203 = -1; + let i206 = -1; const method9 = this._bool() === 'or' ? 'orOn' : 'on'; - while(++i203 < keys.length){ - this[method9](keys[i203], first33[keys[i203]]); + while(++i206 < keys.length){ + this[method9](keys[i206], first33[keys[i206]]); } return this; } - const data70 = getClauseFromArguments('onBasic', this._bool(), ...arguments); - if (data70) { - this.clauses.push(data70); + const data73 = getClauseFromArguments('onBasic', this._bool(), ...arguments); + if (data73) { + this.clauses.push(data73); } return this; }, @@ -51983,16 +54541,16 @@ Object.assign(JoinClause.prototype, { onVal (first34) { if (typeof first34 === 'object' && typeof first34.toSQL !== 'function') { const keys = Object.keys(first34); - let i204 = -1; + let i207 = -1; const method10 = this._bool() === 'or' ? 'orOnVal' : 'onVal'; - while(++i204 < keys.length){ - this[method10](keys[i204], first34[keys[i204]]); + while(++i207 < keys.length){ + this[method10](keys[i207], first34[keys[i207]]); } return this; } - const data71 = getClauseFromArguments('onVal', this._bool(), ...arguments); - if (data71) { - this.clauses.push(data71); + const data74 = getClauseFromArguments('onVal', this._bool(), ...arguments); + if (data74) { + this.clauses.push(data74); } return this; }, @@ -52079,8 +54637,8 @@ Object.assign(JoinClause.prototype, { orOnNotExists (callback) { return this._not(true)._bool('or').onExists(callback); }, - type (type57) { - this.joinType = type57; + type (type50) { + this.joinType = type50; return this; }, _bool (bool) { @@ -52236,9 +54794,9 @@ assign1(Builder.prototype, { this._single.schema = schemaName; return this; }, - table (tableName, options71 = {}) { + table (tableName, options73 = {}) { this._single.table = tableName; - this._single.only = options71.only === true; + this._single.only = options73.only === true; return this; }, distinct () { @@ -52250,13 +54808,13 @@ assign1(Builder.prototype, { return this; }, distinctOn () { - const value424 = __default16.normalizeArr.apply(null, arguments); - if (isEmpty1(value424)) { + const value428 = __default16.normalizeArr.apply(null, arguments); + if (isEmpty1(value428)) { throw new Error('distinctOn requires atleast on argument'); } this._statements.push({ grouping: 'columns', - value: value424, + value: value428, distinctOn: true }); return this; @@ -52306,7 +54864,7 @@ assign1(Builder.prototype, { joinRaw () { return this._joinType('raw').join.apply(this, arguments); }, - where (column, operator, value425) { + where (column, operator, value429) { if (column === false || column === true) { return this.where(1, '=', column ? 1 : 0); } @@ -52316,9 +54874,9 @@ assign1(Builder.prototype, { if (column instanceof Raw && arguments.length === 1) return this.whereRaw(column); if (isObject3(column) && !(column instanceof Raw)) return this._objectWhere(column); if (arguments.length === 2) { - value425 = operator; + value429 = operator; operator = '='; - if (value425 === null) { + if (value429 === null) { return this.whereNull(column); } } @@ -52331,7 +54889,7 @@ assign1(Builder.prototype, { return this._not(checkOperator === 'not between').whereBetween(arguments[0], arguments[2]); } } - if (value425 === null) { + if (value429 === null) { if (checkOperator === 'is' || checkOperator === 'is not') { return this._not(checkOperator === 'is not').whereNull(column); } @@ -52341,7 +54899,7 @@ assign1(Builder.prototype, { type: 'whereBasic', column, operator, - value: value425, + value: value429, not: this._not(), bool: this._bool(), asColumn: this._asColumnFlag @@ -52359,8 +54917,8 @@ assign1(Builder.prototype, { const obj = arguments[0]; if (isObject3(obj) && !isFunction2(obj) && !(obj instanceof Raw)) { return this.whereWrapped(function() { - for(const key137 in obj){ - this.andWhere(key137, obj[key137]); + for(const key139 in obj){ + this.andWhere(key139, obj[key139]); } }); } @@ -52371,8 +54929,8 @@ assign1(Builder.prototype, { const obj = arguments[0]; if (isObject3(obj) && !isFunction2(obj) && !(obj instanceof Raw)) { return this.whereWrapped(function() { - for(const key138 in obj){ - this.andWhereColumn(key138, '=', obj[key138]); + for(const key140 in obj){ + this.andWhereColumn(key140, '=', obj[key140]); } }); } @@ -52393,8 +54951,8 @@ assign1(Builder.prototype, { _objectWhere (obj) { const boolVal = this._bool(); const notVal = this._not() ? 'Not' : ''; - for(const key139 in obj){ - this[boolVal + 'Where' + notVal](key139, obj[key139]); + for(const key141 in obj){ + this[boolVal + 'Where' + notVal](key141, obj[key141]); } return this; }, @@ -52536,8 +55094,8 @@ assign1(Builder.prototype, { return this; }, _orderByArray (columnDefs) { - for(let i205 = 0; i205 < columnDefs.length; i205++){ - const columnInfo = columnDefs[i205]; + for(let i208 = 0; i208 < columnDefs.length; i208++){ + const columnInfo = columnDefs[i208]; if (isObject3(columnInfo)) { this._statements.push({ grouping: 'order', @@ -52573,11 +55131,11 @@ assign1(Builder.prototype, { callbacks ]; } - for(let i206 = 0, l = callbacks.length; i206 < l; i206++){ + for(let i209 = 0, l = callbacks.length; i209 < l; i209++){ this._statements.push({ grouping: 'union', clause: clause, - value: callbacks[i206], + value: callbacks[i209], wrap: wrap3 || false }); } @@ -52608,11 +55166,11 @@ assign1(Builder.prototype, { callbacks ]; } - for(let i207 = 0, l = callbacks.length; i207 < l; i207++){ + for(let i211 = 0, l = callbacks.length; i211 < l; i211++){ this._statements.push({ grouping: 'union', clause: 'intersect', - value: callbacks[i207], + value: callbacks[i211], wrap: wrap4 || false }); } @@ -52627,7 +55185,7 @@ assign1(Builder.prototype, { } return this; }, - having (column, operator, value426) { + having (column, operator, value430) { if (column instanceof Raw && arguments.length === 1) { return this.havingRaw(column); } @@ -52639,7 +55197,7 @@ assign1(Builder.prototype, { type: 'havingBasic', column, operator, - value: value426, + value: value430, bool: this._bool(), not: this._not() }); @@ -52650,8 +55208,8 @@ assign1(Builder.prototype, { const obj = arguments[0]; if (isObject3(obj) && !isFunction2(obj) && !(obj instanceof Raw)) { return this.havingWrapped(function() { - for(const key140 in obj){ - this.andHaving(key140, obj[key140]); + for(const key142 in obj){ + this.andHaving(key142, obj[key142]); } }); } @@ -52762,11 +55320,11 @@ assign1(Builder.prototype, { orHavingRaw (sql, bindings) { return this._bool('or').havingRaw(sql, bindings); }, - offset (value427) { - if (value427 == null || value427 instanceof Raw || value427 instanceof Builder) { - this._single.offset = value427; + offset (value431) { + if (value431 == null || value431 instanceof Raw || value431 instanceof Builder) { + this._single.offset = value431; } else { - const val = parseInt(value427, 10); + const val = parseInt(value431, 10); if (isNaN(val)) { this.client.logger.warn('A valid integer must be provided to offset'); } else { @@ -52775,8 +55333,8 @@ assign1(Builder.prototype, { } return this; }, - limit (value428) { - const val = parseInt(value428, 10); + limit (value432) { + const val = parseInt(value432, 10); if (isNaN(val)) { this.client.logger.warn('A valid integer must be provided to limit'); } else { @@ -52784,26 +55342,26 @@ assign1(Builder.prototype, { } return this; }, - count (column, options72) { - return this._aggregate('count', column || '*', options72); + count (column, options74) { + return this._aggregate('count', column || '*', options74); }, - min (column, options73) { - return this._aggregate('min', column, options73); + min (column, options75) { + return this._aggregate('min', column, options75); }, - max (column, options74) { - return this._aggregate('max', column, options74); + max (column, options76) { + return this._aggregate('max', column, options76); }, - sum (column, options75) { - return this._aggregate('sum', column, options75); + sum (column, options77) { + return this._aggregate('sum', column, options77); }, - avg (column, options76) { - return this._aggregate('avg', column, options76); + avg (column, options78) { + return this._aggregate('avg', column, options78); }, countDistinct () { let columns = __default16.normalizeArr.apply(null, arguments); - let options77; + let options79; if (columns.length > 1 && isPlainObject2(last(columns))) { - [options77] = columns.splice(columns.length - 1, 1); + [options79] = columns.splice(columns.length - 1, 1); } if (!columns.length) { columns = '*'; @@ -52811,26 +55369,26 @@ assign1(Builder.prototype, { columns = columns[0]; } return this._aggregate('count', columns, { - ...options77, + ...options79, distinct: true }); }, - sumDistinct (column, options78) { + sumDistinct (column, options80) { return this._aggregate('sum', column, { - ...options78, + ...options80, distinct: true }); }, - avgDistinct (column, options79) { + avgDistinct (column, options81) { return this._aggregate('avg', column, { - ...options79, + ...options81, distinct: true }); }, increment (column, amount = 1) { if (isObject3(column)) { - for(const key141 in column){ - this._counter(key141, column[key141]); + for(const key143 in column){ + this._counter(key143, column[key143]); } return this; } @@ -52838,8 +55396,8 @@ assign1(Builder.prototype, { }, decrement (column, amount = 1) { if (isObject3(column)) { - for(const key142 in column){ - this._counter(key142, -column[key142]); + for(const key144 in column){ + this._counter(key144, -column[key144]); } return this; } @@ -52854,8 +55412,8 @@ assign1(Builder.prototype, { throw new Error(`Cannot chain .first() on "${this._method}" query!`); } const args78 = new Array(arguments.length); - for(let i208 = 0; i208 < args78.length; i208++){ - args78[i208] = arguments[i208]; + for(let i212 = 0; i212 < args78.length; i212++){ + args78[i212] = arguments[i212]; } this.select.apply(this, args78); this._method = 'first'; @@ -52916,9 +55474,9 @@ assign1(Builder.prototype, { if (this._single.update) { this.client.logger.warn('Update called multiple times with objects.'); } - let i209 = -1; - while(++i209 < keys.length){ - obj[keys[i209]] = values47[keys[i209]]; + let i213 = -1; + while(++i213 < keys.length){ + obj[keys[i213]] = values47[keys[i213]]; } ret = arguments[1]; } @@ -52984,14 +55542,14 @@ assign1(Builder.prototype, { return this; }, fromJS (obj) { - each(obj, (val, key143)=>{ - if (typeof this[key143] !== 'function') { - this.client.logger.warn(`Knex Error: unknown key ${key143}`); + each(obj, (val, key145)=>{ + if (typeof this[key145] !== 'function') { + this.client.logger.warn(`Knex Error: unknown key ${key145}`); } if (Array.isArray(val)) { - this[key143].apply(this, val); + this[key145].apply(this, val); } else { - this[key143](val); + this[key145](val); } }); return this; @@ -53036,14 +55594,14 @@ assign1(Builder.prototype, { this._joinFlag = 'inner'; return ret; }, - _aggregate (method13, column, options80 = {}) { + _aggregate (method13, column, options82 = {}) { this._statements.push({ grouping: 'columns', type: column instanceof Raw ? 'aggregateRaw' : 'aggregate', method: method13, value: column, - aggregateDistinct: options80.distinct || false, - alias: options80.as + aggregateDistinct: options82.distinct || false, + alias: options82.as }); return this; }, @@ -53163,11 +55721,11 @@ const operators = transform([ '?&', '\\?&' ], -], (result, key144)=>{ - if (Array.isArray(key144)) { - result[key144[0]] = key144[1]; +], (result, key146)=>{ + if (Array.isArray(key146)) { + result[key146[0]] = key146[1]; } else { - result[key144] = key144; + result[key146] = key146; } }, {}); class Formatter { @@ -53180,10 +55738,10 @@ class Formatter { const columns = Array.isArray(target) ? target : [ target ]; - let str112 = '', i211 = -1; - while(++i211 < columns.length){ - if (i211 > 0) str112 += ', '; - str112 += this.wrap(columns[i211]); + let str112 = '', i214 = -1; + while(++i214 < columns.length){ + if (i214 > 0) str112 += ', '; + str112 += this.wrap(columns[i214]); } return str112; } @@ -53192,17 +55750,17 @@ class Formatter { values48 = Array.isArray(values48) ? values48 : [ values48 ]; - let str113 = '', i212 = -1; - while(++i212 < values48.length){ - if (i212 > 0) str113 += ', '; - str113 += this.parameter(values48[i212] === undefined ? notSetValue : values48[i212]); + let str113 = '', i215 = -1; + while(++i215 < values48.length){ + if (i215 > 0) str113 += ', '; + str113 += this.parameter(values48[i215] === undefined ? notSetValue : values48[i215]); } return str113; } values(values49) { if (Array.isArray(values49)) { if (Array.isArray(values49[0])) { - return `(${values49.map((value429)=>`(${this.parameterize(value429)})`).join(', ')})`; + return `(${values49.map((value433)=>`(${this.parameterize(value433)})`).join(', ')})`; } return `(${this.parameterize(values49)})`; } @@ -53211,78 +55769,78 @@ class Formatter { } return this.parameter(values49); } - parameter(value430) { - if (typeof value430 === 'function') { - return this.outputQuery(this.compileCallback(value430), true); + parameter(value434) { + if (typeof value434 === 'function') { + return this.outputQuery(this.compileCallback(value434), true); } - return this.unwrapRaw(value430, true) || '?'; + return this.unwrapRaw(value434, true) || '?'; } - unwrapRaw(value431, isParameter) { + unwrapRaw(value435, isParameter) { let query; - if (value431 instanceof Builder) { - query = this.client.queryCompiler(value431).toSQL(); + if (value435 instanceof Builder) { + query = this.client.queryCompiler(value435).toSQL(); if (query.bindings) { this.bindings = this.bindings.concat(query.bindings); } return this.outputQuery(query, isParameter); } - if (value431 instanceof Raw) { - value431.client = this.client; + if (value435 instanceof Raw) { + value435.client = this.client; if (this.builder._queryContext) { - value431.queryContext = ()=>{ + value435.queryContext = ()=>{ return this.builder._queryContext; }; } - query = value431.toSQL(); + query = value435.toSQL(); if (query.bindings) { this.bindings = this.bindings.concat(query.bindings); } return query.sql; } if (isParameter) { - this.bindings.push(value431); + this.bindings.push(value435); } } - rawOrFn(value432, method14) { - if (typeof value432 === 'function') { - return this.outputQuery(this.compileCallback(value432, method14)); + rawOrFn(value436, method14) { + if (typeof value436 === 'function') { + return this.outputQuery(this.compileCallback(value436, method14)); } - return this.unwrapRaw(value432) || ''; + return this.unwrapRaw(value436) || ''; } - wrap(value433, isParameter) { - const raw = this.unwrapRaw(value433, isParameter); + wrap(value437, isParameter) { + const raw = this.unwrapRaw(value437, isParameter); if (raw) return raw; - switch(typeof value433){ + switch(typeof value437){ case 'function': - return this.outputQuery(this.compileCallback(value433), true); + return this.outputQuery(this.compileCallback(value437), true); case 'object': - return this.parseObject(value433); + return this.parseObject(value437); case 'number': - return value433; + return value437; default: - return this.wrapString(value433 + ''); + return this.wrapString(value437 + ''); } } - wrapAsIdentifier(value434) { + wrapAsIdentifier(value438) { const queryContext = this.builder.queryContext(); - return this.client.wrapIdentifier((value434 || '').trim(), queryContext); + return this.client.wrapIdentifier((value438 || '').trim(), queryContext); } alias(first36, second) { return first36 + ' as ' + second; } - operator(value435) { - const raw = this.unwrapRaw(value435); + operator(value439) { + const raw = this.unwrapRaw(value439); if (raw) return raw; - const operator = operators[(value435 || '').toLowerCase()]; + const operator = operators[(value439 || '').toLowerCase()]; if (!operator) { - throw new TypeError(`The operator "${value435}" is not permitted`); + throw new TypeError(`The operator "${value439}" is not permitted`); } return operator; } - direction(value436) { - const raw = this.unwrapRaw(value436); + direction(value440) { + const raw = this.unwrapRaw(value440); if (raw) return raw; - return orderBys.indexOf((value436 || '').toLowerCase()) !== -1 ? value436 : 'asc'; + return orderBys.indexOf((value440 || '').toLowerCase()) !== -1 ? value440 : 'asc'; } compileCallback(callback, method15) { const { client } = this; @@ -53318,22 +55876,22 @@ class Formatter { } return ret.join(', '); } - wrapString(value437) { - const asIndex = value437.toLowerCase().indexOf(' as '); + wrapString(value441) { + const asIndex = value441.toLowerCase().indexOf(' as '); if (asIndex !== -1) { - const first37 = value437.slice(0, asIndex); - const second = value437.slice(asIndex + 4); + const first37 = value441.slice(0, asIndex); + const second = value441.slice(asIndex + 4); return this.alias(this.wrap(first37), this.wrapAsIdentifier(second)); } const wrapped = []; - let i213 = -1; - const segments = value437.split('.'); - while(++i213 < segments.length){ - value437 = segments[i213]; - if (i213 === 0 && segments.length > 1) { - wrapped.push(this.wrap((value437 || '').trim())); + let i216 = -1; + const segments = value441.split('.'); + while(++i216 < segments.length){ + value441 = segments[i216]; + if (i216 === 0 && segments.length > 1) { + wrapped.push(this.wrap((value441 || '').trim())); } else { - wrapped.push(this.wrapAsIdentifier(value437)); + wrapped.push(this.wrapAsIdentifier(value441)); } } return wrapped.join('.'); @@ -53362,24 +55920,24 @@ function ensureTable(tableName, schemaName, trxOrKnex) { return !exists4 && _createMigrationLockTable(lockTable, schemaName, trxOrKnex); }).then(()=>{ return getTable(trxOrKnex, lockTable, schemaName).select('*'); - }).then((data72)=>{ - return !data72.length && trxOrKnex.into(lockTableWithSchema).insert({ + }).then((data75)=>{ + return !data75.length && trxOrKnex.into(lockTableWithSchema).insert({ is_locked: 0 }); }); } function _createMigrationTable(tableName, schemaName, trxOrKnex) { - return getSchemaBuilder(trxOrKnex, schemaName).createTable(getTableName(tableName), function(t97) { - t97.increments(); - t97.string('name'); - t97.integer('batch'); - t97.timestamp('migration_time'); + return getSchemaBuilder(trxOrKnex, schemaName).createTable(getTableName(tableName), function(t99) { + t99.increments(); + t99.string('name'); + t99.integer('batch'); + t99.timestamp('migration_time'); }); } function _createMigrationLockTable(tableName, schemaName, trxOrKnex) { - return getSchemaBuilder(trxOrKnex, schemaName).createTable(tableName, function(t98) { - t98.increments('index').primary(); - t98.integer('is_locked'); + return getSchemaBuilder(trxOrKnex, schemaName).createTable(tableName, function(t100) { + t100.increments('index').primary(); + t100.integer('is_locked'); }); } function getSchemaBuilder(trxOrKnex, schemaName) { @@ -53407,15 +55965,15 @@ const __default20 = { const template = __default6.template; const readFile = Deno.readFile; const writeFile = Deno.writeFile; -const jsSourceTemplate = (content, options81)=>template(content, { +const jsSourceTemplate = (content, options83)=>template(content, { interpolate: /<%=([\s\S]+?)%>/g, - ...options81 + ...options83 }); -const jsFileTemplate = async (filePath, options82)=>{ +const jsFileTemplate = async (filePath, options84)=>{ const contentBuffer = await readFile(filePath); - return jsSourceTemplate(contentBuffer.toString(), options82); + return jsSourceTemplate(contentBuffer.toString(), options84); }; -const writeJsFileUsingTemplate = async (targetFilePath, sourceFilePath, options83, variables)=>writeFile(targetFilePath, (await jsFileTemplate(sourceFilePath, options83))(variables)); +const writeJsFileUsingTemplate = async (targetFilePath, sourceFilePath, options85, variables)=>writeFile(targetFilePath, (await jsFileTemplate(sourceFilePath, options85))(variables)); const importMeta1 = { url: "https://raw.githubusercontent.com/Zhomart/dex/930253915093e1e08d48ec0409b4aee800d8bd0c/lib-dyn/util/fs.js", main: false @@ -53433,7 +55991,7 @@ function crossPlatformPathConversion(filePath) { } function mkdirp(dir) { const __dirname = crossPlatformPathConversion(new URL(".", importMeta1.url).pathname); - let newDir = mod25.join(__dirname, startDir); + let newDir = mod24.join(__dirname, startDir); return Deno.mkdir(dir, { recursive: true }).then(()=>newDir); @@ -53465,7 +56023,7 @@ class FsMigrations { } getMigrations(loadExtensions) { const readMigrationsPromises = this.migrationsPaths.map((configDir)=>{ - const absoluteDir = mod25.resolve(process.cwd(), configDir); + const absoluteDir = mod24.resolve(process.cwd(), configDir); return readdir(absoluteDir).then((files)=>({ files, configDir, @@ -53493,14 +56051,14 @@ class FsMigrations { return migration.file; } getMigration(migration) { - const absoluteDir = mod25.resolve(process.cwd(), migration.directory); - return require(mod25.join(absoluteDir, migration.file)); + const absoluteDir = mod24.resolve(process.cwd(), migration.directory); + return require(mod24.join(absoluteDir, migration.file)); } } function filterMigrations(migrationSource, migrations, loadExtensions) { return migrations.filter((migration)=>{ const migrationName = migrationSource.getMigrationName(migration); - const extension3 = mod25.extname(migrationName); + const extension3 = mod24.extname(migrationName); return loadExtensions.includes(extension3); }); } @@ -53543,7 +56101,7 @@ class MigrationGenerator { return Promise.all(promises1); } _getStubPath() { - return this.config.stub || mod25.join(__dirname, 'stub', this.config.extension + '.stub'); + return this.config.stub || mod24.join(__dirname, 'stub', this.config.extension + '.stub'); } _getNewMigrationName(name48) { if (name48[0] === '-') name48 = name48.slice(1); @@ -53553,7 +56111,7 @@ class MigrationGenerator { const fileName = this._getNewMigrationName(name49); const dirs = this._absoluteConfigDirs(); const dir = dirs.slice(-1)[0]; - return mod25.join(dir, fileName); + return mod24.join(dir, fileName); } async _writeNewMigration(name50) { const migrationPath = this._getNewMigrationPath(name50); @@ -53570,7 +56128,7 @@ class MigrationGenerator { if (!directory) { console.warn('Failed to resolve config file, knex cannot determine where to generate migrations'); } - return mod25.resolve(process.cwd(), directory); + return mod24.resolve(process.cwd(), directory); }); } } @@ -53616,11 +56174,11 @@ class Migrator { latest(config) { this._disableProcessing(); this.config = getMergedConfig(config, this.config); - return __default20.listAllAndCompleted(this.config, this.knex).then((value438)=>{ + return __default20.listAllAndCompleted(this.config, this.knex).then((value442)=>{ if (!this.config.disableMigrationsListValidation) { - validateMigrationList(this.config.migrationSource, value438); + validateMigrationList(this.config.migrationSource, value442); } - return value438; + return value442; }).then(([all, completed])=>{ const migrations = getNewMigrations(this.config.migrationSource, all, completed); const transactionForAll = !this.config.disableTransactions && !migrations.some((migration)=>{ @@ -53639,11 +56197,11 @@ class Migrator { up(config) { this._disableProcessing(); this.config = getMergedConfig(config, this.config); - return __default20.listAllAndCompleted(this.config, this.knex).then((value439)=>{ + return __default20.listAllAndCompleted(this.config, this.knex).then((value443)=>{ if (!this.config.disableMigrationsListValidation) { - validateMigrationList(this.config.migrationSource, value439); + validateMigrationList(this.config.migrationSource, value443); } - return value439; + return value443; }).then(([all, completed])=>{ const newMigrations = getNewMigrations(this.config.migrationSource, all, completed); let migrationToRun; @@ -53676,17 +56234,17 @@ class Migrator { } rollback(config, all = false) { this._disableProcessing(); - return new Promise((resolve26, reject14)=>{ + return new Promise((resolve28, reject15)=>{ try { this.config = getMergedConfig(config, this.config); - } catch (e120) { - reject14(e120); + } catch (e121) { + reject15(e121); } - __default20.listAllAndCompleted(this.config, this.knex).then((value440)=>{ + __default20.listAllAndCompleted(this.config, this.knex).then((value444)=>{ if (!this.config.disableMigrationsListValidation) { - validateMigrationList(this.config.migrationSource, value440); + validateMigrationList(this.config.migrationSource, value444); } - return value440; + return value444; }).then((val)=>{ const [allMigrations, completedMigrations] = val; return all ? allMigrations.filter((migration)=>{ @@ -53694,17 +56252,17 @@ class Migrator { }).reverse() : this._getLastBatch(val); }).then((migrations)=>{ return this._runBatch(migrations, 'down'); - }).then(resolve26, reject14); + }).then(resolve28, reject15); }); } down(config) { this._disableProcessing(); this.config = getMergedConfig(config, this.config); - return __default20.listAllAndCompleted(this.config, this.knex).then((value441)=>{ + return __default20.listAllAndCompleted(this.config, this.knex).then((value445)=>{ if (!this.config.disableMigrationsListValidation) { - validateMigrationList(this.config.migrationSource, value441); + validateMigrationList(this.config.migrationSource, value445); } - return value441; + return value445; }).then(([all, completed])=>{ const completedMigrations = all.filter((migration)=>{ return completed.includes(this.config.migrationSource.getMigrationName(migration)); @@ -53734,13 +56292,13 @@ class Migrator { return Promise.all([ getTable(this.knex, this.config.tableName, this.config.schemaName).select('*'), __default20.listAll(this.config.migrationSource), - ]).then(([db, code80])=>db.length - code80.length); + ]).then(([db, code81])=>db.length - code81.length); } currentVersion(config) { this._disableProcessing(); this.config = getMergedConfig(config, this.config); return __default20.listCompleted(this.config.tableName, this.config.schemaName, this.knex).then((completed)=>{ - const val = max(completed.map((value442)=>value442.split('_')[0])); + const val = max(completed.map((value446)=>value446.split('_')[0])); return val === undefined ? 'none' : val; }); } @@ -53807,22 +56365,22 @@ class Migrator { }).then(async (res)=>{ await this._freeLock(trx); return res; - }).catch(async (error39)=>{ + }).catch(async (error47)=>{ let cleanupReady = Promise.resolve(); - if (error39 instanceof LockError) { - this.knex.client.logger.warn(`Can't take lock to run migrations: ${error39.message}`); + if (error47 instanceof LockError) { + this.knex.client.logger.warn(`Can't take lock to run migrations: ${error47.message}`); this.knex.client.logger.warn('If you are sure migrations are not running you can release the ' + 'lock manually by deleting all the rows = require(migrations lock ' + 'table: ' + getLockTableNameWithSchema(this.config.tableName, this.config.schemaName)); } else { if (this._activeMigration.fileName) { this.knex.client.logger.warn(`migration file "${this._activeMigration.fileName}" failed`); } - this.knex.client.logger.warn(`migration failed with error: ${error39.message}`); + this.knex.client.logger.warn(`migration failed with error: ${error47.message}`); cleanupReady = this._freeLock(trx); } try { await cleanupReady; } catch (e) {} - throw error39; + throw error47; }); } _validateMigrationStructure(migration) { @@ -53948,8 +56506,8 @@ class Seeder { async _listAll(config) { this.config = this.setConfig(config); const loadExtensions = this.config.loadExtensions; - return readdir(this._absoluteConfigDir()).then((seeds)=>seeds.filter((value443)=>{ - const extension4 = mod25.extname(value443); + return readdir(this._absoluteConfigDir()).then((seeds)=>seeds.filter((value447)=>{ + const extension4 = mod24.extname(value447); return includes(loadExtensions, extension4); }).sort()); } @@ -53962,21 +56520,21 @@ class Seeder { return this._waterfallBatch(seeds); } _validateSeedStructure(name58) { - const seed = require(mod25.join(this._absoluteConfigDir(), name58)); + const seed = require(mod24.join(this._absoluteConfigDir(), name58)); if (typeof seed.seed !== 'function') { throw new Error(`Invalid seed file: ${name58} must have a seed function`); } return name58; } _getStubPath() { - return this.config.stub || mod25.join(__dirname, 'stub', this.config.extension + '.stub'); + return this.config.stub || mod24.join(__dirname, 'stub', this.config.extension + '.stub'); } _getNewStubFileName(name59) { if (name59[0] === '-') name59 = name59.slice(1); return name59 + '.' + this.config.extension; } _getNewStubFilePath(name60) { - return mod25.join(this._absoluteConfigDir(), this._getNewStubFileName(name60)); + return mod24.join(this._absoluteConfigDir(), this._getNewStubFileName(name60)); } async _writeNewSeed(name61) { const seedPath = this._getNewStubFilePath(name61); @@ -53990,16 +56548,16 @@ class Seeder { const seedDirectory = this._absoluteConfigDir(); const log2 = []; for (const seedName of seeds){ - const seedPath = mod25.join(seedDirectory, seedName); + const seedPath = mod24.join(seedDirectory, seedName); const seed = require(seedPath); try { await seed.seed(knex); log2.push(seedPath); } catch (originalError) { - const error40 = new Error(`Error while executing "${seedPath}" seed: ${originalError.message}`); - error40.original = originalError; - error40.stack = error40.stack.split('\n').slice(0, 2).join('\n') + '\n' + originalError.stack; - throw error40; + const error48 = new Error(`Error while executing "${seedPath}" seed: ${originalError.message}`); + error48.original = originalError; + error48.stack = error48.stack.split('\n').slice(0, 2).join('\n') + '\n' + originalError.stack; + throw error48; } } return [ @@ -54007,7 +56565,7 @@ class Seeder { ]; } _absoluteConfigDir() { - return mod25.resolve(process.cwd(), this.config.directory); + return mod24.resolve(process.cwd(), this.config.directory); } setConfig(config) { return extend({ @@ -54234,8 +56792,8 @@ for (const m3 of CONTEXT_METHODS){ }; } function makeKnex(client) { - function knex(tableName, options84) { - return createQueryBuilder(knex.context, tableName, options84); + function knex(tableName, options86) { + return createQueryBuilder(knex.context, tableName, options86); } redefineProperties(knex, client); return knex; @@ -54265,9 +56823,9 @@ function initContext(knexFn) { const trx = this.client.transaction(container, config, outerTx); return trx; } else { - return new Promise((resolve27, reject15)=>{ - const trx = this.client.transaction(resolve27, config, outerTx); - trx.catch(reject15); + return new Promise((resolve29, reject16)=>{ + const trx = this.client.transaction(resolve29, config, outerTx); + trx.catch(reject16); }); } }, @@ -54346,8 +56904,8 @@ function redefineProperties(knex, client) { knex.client.makeKnex = makeKnex; knex.userParams = {}; const ee = new EventEmitter3(); - for(const key145 in ee){ - knex[key145] = ee[key145]; + for(const key147 in ee){ + knex[key147] = ee[key147]; } if (knex._internalListeners) { knex._internalListeners.forEach(({ eventName , listener })=>{ @@ -54375,16 +56933,16 @@ function _addInternalListener(knex, eventName, listener) { listener }); } -function createQueryBuilder(knexContext, tableName, options85) { +function createQueryBuilder(knexContext, tableName, options87) { const qb = knexContext.queryBuilder(); if (!tableName) knexContext.client.logger.warn('calling knex without a tableName is deprecated. Use knex.queryBuilder() instead.'); - return tableName ? qb.table(tableName, options85) : qb; + return tableName ? qb.table(tableName, options87) : qb; } function shallowCloneFunction(originalFunction) { const fnContext = Object.create(Object.getPrototypeOf(originalFunction), Object.getOwnPropertyDescriptors(originalFunction)); const knexContext = {}; - const knexFnWrapper = (tableName, options86)=>{ - return createQueryBuilder(knexContext, tableName, options86); + const knexFnWrapper = (tableName, options88)=>{ + return createQueryBuilder(knexContext, tableName, options88); }; const clonedFunction = knexFnWrapper.bind(fnContext); Object.assign(clonedFunction, originalFunction); @@ -54431,54 +56989,54 @@ class Transaction extends EventEmitter4 { savepoint(conn) { return this.query(conn, `SAVEPOINT ${this.txid};`); } - commit(conn, value444) { - return this.query(conn, 'COMMIT;', 1, value444); + commit(conn, value448) { + return this.query(conn, 'COMMIT;', 1, value448); } - release(conn, value445) { - return this.query(conn, `RELEASE SAVEPOINT ${this.txid};`, 1, value445); + release(conn, value449) { + return this.query(conn, `RELEASE SAVEPOINT ${this.txid};`, 1, value449); } - rollback(conn, error41) { - return timeout(this.query(conn, 'ROLLBACK', 2, error41), 5000).catch((err)=>{ + rollback(conn, error49) { + return timeout(this.query(conn, 'ROLLBACK', 2, error49), 5000).catch((err)=>{ if (!(err instanceof KnexTimeoutError)) { return Promise.reject(err); } - this._rejecter(error41); + this._rejecter(error49); }); } - rollbackTo(conn, error42) { - return timeout(this.query(conn, `ROLLBACK TO SAVEPOINT ${this.txid}`, 2, error42), 5000).catch((err)=>{ + rollbackTo(conn, error50) { + return timeout(this.query(conn, `ROLLBACK TO SAVEPOINT ${this.txid}`, 2, error50), 5000).catch((err)=>{ if (!(err instanceof KnexTimeoutError)) { return Promise.reject(err); } - this._rejecter(error42); + this._rejecter(error50); }); } - query(conn, sql, status, value446) { - const q8 = this.trxClient.query(conn, sql).catch((err)=>{ + query(conn, sql, status, value450) { + const q7 = this.trxClient.query(conn, sql).catch((err)=>{ status = 2; - value446 = err; + value450 = err; this._completed = true; debug2('%s error running transaction query', this.txid); }).then((res)=>{ if (status === 1) { - this._resolver(value446); + this._resolver(value450); } if (status === 2) { - if (value446 === undefined) { + if (value450 === undefined) { if (this.doNotRejectOnRollback && /^ROLLBACK\b/i.test(sql)) { this._resolver(); return; } - value446 = new Error(`Transaction rejected with non-error: ${value446}`); + value450 = new Error(`Transaction rejected with non-error: ${value450}`); } - this._rejecter(value446); + this._rejecter(value450); } return res; }); if (status === 1 || status === 2) { this._completed = true; } - return q8; + return q7; } debug(enabled8) { this._debug = arguments.length ? enabled8 : true; @@ -54510,8 +57068,8 @@ class Transaction extends EventEmitter4 { }); } return null; - }).catch((e121)=>{ - return this._rejecter(e121); + }).catch((e122)=>{ + return this._rejecter(e122); }); return executionPromise; }); @@ -54550,25 +57108,25 @@ function makeTransactor(trx, connection, trxClient) { }; transactor.isTransaction = true; transactor.userParams = trx.userParams || {}; - transactor.context.transaction = function(container, options87) { - if (!options87) { - options87 = { + transactor.context.transaction = function(container, options89) { + if (!options89) { + options89 = { doNotRejectOnRollback: true }; - } else if (options87.doNotRejectOnRollback === undefined) { - options87.doNotRejectOnRollback = true; + } else if (options89.doNotRejectOnRollback === undefined) { + options89.doNotRejectOnRollback = true; } - return this._transaction(container, options87, trx); + return this._transaction(container, options89, trx); }; - transactor.savepoint = function(container, options88) { - return transactor.transaction(container, options88); + transactor.savepoint = function(container, options90) { + return transactor.transaction(container, options90); }; if (trx.client.transacting) { - transactor.commit = (value447)=>trx.release(connection, value447); - transactor.rollback = (error43)=>trx.rollbackTo(connection, error43); + transactor.commit = (value451)=>trx.release(connection, value451); + transactor.rollback = (error51)=>trx.rollbackTo(connection, error51); } else { - transactor.commit = (value448)=>trx.commit(connection, value448); - transactor.rollback = (error44)=>trx.rollback(connection, error44); + transactor.commit = (value452)=>trx.commit(connection, value452); + transactor.rollback = (error52)=>trx.rollback(connection, error52); } transactor.isCompleted = ()=>trx.isCompleted(); return transactor; @@ -54597,26 +57155,26 @@ function makeTxClient(trx, client, connection) { const _query = trxClient.query; trxClient.query = function(conn, obj) { const completed = trx.isCompleted(); - return new Promise(function(resolve28, reject16) { + return new Promise(function(resolve30, reject17) { try { if (conn !== connection) throw new Error('Invalid connection for transaction query.'); if (completed) completedError(trx, obj); - resolve28(_query.call(trxClient, conn, obj)); - } catch (e122) { - reject16(e122); + resolve30(_query.call(trxClient, conn, obj)); + } catch (e123) { + reject17(e123); } }); }; const _stream = trxClient.stream; - trxClient.stream = function(conn, obj, stream59, options89) { + trxClient.stream = function(conn, obj, stream59, options91) { const completed = trx.isCompleted(); - return new Promise(function(resolve29, reject17) { + return new Promise(function(resolve31, reject18) { try { if (conn !== connection) throw new Error('Invalid connection for transaction query.'); if (completed) completedError(trx, obj); - resolve29(_stream.call(trxClient, conn, obj, stream59, options89)); - } catch (e123) { - reject17(e123); + resolve31(_stream.call(trxClient, conn, obj, stream59, options91)); + } catch (e124) { + reject18(e124); } }); }; @@ -54645,7 +57203,7 @@ const map = __default6.map; const omitBy = __default6.omitBy; const reduce1 = __default6.reduce; const uuid1 = { - v1: mod22.v1.generate + v1: mod21.v1.generate }; const debugBindings1 = __default7('knex:bindings'); const components = [ @@ -54747,10 +57305,10 @@ class QueryCompiler { if (insertData.columns.length) { sql += `(${this.formatter.columnize(insertData.columns)}`; sql += ') values ('; - let i214 = -1; - while(++i214 < insertData.values.length){ - if (i214 !== 0) sql += '), ('; - sql += this.formatter.parameterize(insertData.values[i214], this.client.valueForUndefined); + let i217 = -1; + while(++i217 < insertData.values.length){ + if (i217 !== 0) sql += '), ('; + sql += this.formatter.parameterize(insertData.values[i217], this.client.valueForUndefined); } sql += ')'; } else if (insertValues.length === 1 && insertValues[0]) { @@ -54772,10 +57330,10 @@ class QueryCompiler { let distinctClause = ''; if (this.onlyUnions()) return ''; const columns = this.grouped.columns || []; - let i215 = -1, sql = []; + let i218 = -1, sql = []; if (columns) { - while(++i215 < columns.length){ - const stmt = columns[i215]; + while(++i218 < columns.length){ + const stmt = columns[i218]; if (stmt.distinct) distinctClause = 'distinct '; if (stmt.distinctOn) { distinctClause = this.distinctOn(stmt.value); @@ -54800,14 +57358,14 @@ class QueryCompiler { const method18 = stmt.method; const distinct = stmt.aggregateDistinct ? 'distinct ' : ''; const wrap5 = (identifier)=>this.formatter.wrap(identifier); - const addAlias = (value449, alias)=>{ + const addAlias = (value453, alias)=>{ if (alias) { - return value449 + aliasSeparator + wrap5(alias); + return value453 + aliasSeparator + wrap5(alias); } - return value449; + return value453; }; - const aggregateArray = (value450, alias)=>{ - let columns = value450.map(wrap5).join(', '); + const aggregateArray = (value454, alias)=>{ + let columns = value454.map(wrap5).join(', '); if (distinct) { const openParen = distinctParentheses ? '(' : ' '; const closeParen = distinctParentheses ? ')' : ''; @@ -54816,8 +57374,8 @@ class QueryCompiler { const aggregated = `${method18}(${columns})`; return addAlias(aggregated, alias); }; - const aggregateString = (value451, alias)=>{ - const aggregated = `${method18}(${distinct + wrap5(value451)})`; + const aggregateString = (value455, alias)=>{ + const aggregated = `${method18}(${distinct + wrap5(value455)})`; return addAlias(aggregated, alias); }; if (Array.isArray(value1)) { @@ -54859,13 +57417,13 @@ class QueryCompiler { } join() { let sql = ''; - let i216 = -1; + let i219 = -1; const joins = this.grouped.join; if (!joins) return ''; - while(++i216 < joins.length){ - const join16 = joins[i216]; + while(++i219 < joins.length){ + const join16 = joins[i219]; const table = join16.schema ? `${join16.schema}.${join16.table}` : join16.table; - if (i216 > 0) sql += ' '; + if (i219 > 0) sql += ' '; if (join16.joinType === 'raw') { sql += this.formatter.unwrapRaw(join16.table); } else { @@ -54901,11 +57459,11 @@ class QueryCompiler { return this.formatter.wrap(statement.column) + ' ' + this._not(statement, 'in ') + this.wrap(this.formatter.parameterize(statement.value)); } multiOnIn(statement) { - let i217 = -1, sql = `(${this.formatter.columnize(statement.column)}) `; + let i220 = -1, sql = `(${this.formatter.columnize(statement.column)}) `; sql += this._not(statement, 'in ') + '(('; - while(++i217 < statement.value.length){ - if (i217 !== 0) sql += '),('; - sql += this.formatter.parameterize(statement.value[i217]); + while(++i220 < statement.value.length){ + if (i220 !== 0) sql += '),('; + sql += this.formatter.parameterize(statement.value[i220]); } return sql + '))'; } @@ -54913,9 +57471,9 @@ class QueryCompiler { const wheres = this.grouped.where; if (!wheres) return; const sql = []; - let i218 = -1; - while(++i218 < wheres.length){ - const stmt = wheres[i218]; + let i221 = -1; + while(++i221 < wheres.length){ + const stmt = wheres[i221]; if (Object.prototype.hasOwnProperty.call(stmt, 'value') && __default16.containsUndefined(stmt.value)) { this.undefinedBindingsInfo.push(stmt.column); this._undefinedInWhereClause = true; @@ -54944,8 +57502,8 @@ class QueryCompiler { const sql = [ 'having' ]; - for(let i219 = 0, l = havings.length; i219 < l; i219++){ - const s54 = havings[i219]; + for(let i222 = 0, l = havings.length; i222 < l; i222++){ + const s54 = havings[i222]; const val = this[s54.type](s54); if (val) { if (sql.length === 0) { @@ -54983,11 +57541,11 @@ class QueryCompiler { return this.formatter.wrap(statement.column) + ' ' + this._not(statement, 'in ') + this.wrap(this.formatter.parameterize(statement.value)); } multiHavingIn(statement) { - let i220 = -1, sql = `(${this.formatter.columnize(statement.column)}) `; + let i223 = -1, sql = `(${this.formatter.columnize(statement.column)}) `; sql += this._not(statement, 'in ') + '(('; - while(++i220 < statement.value.length){ - if (i220 !== 0) sql += '),('; - sql += this.formatter.parameterize(statement.value[i220]); + while(++i223 < statement.value.length){ + if (i223 !== 0) sql += '),('; + sql += this.formatter.parameterize(statement.value[i223]); } return sql + '))'; } @@ -54996,10 +57554,10 @@ class QueryCompiler { const unions = this.grouped.union; if (!unions) return ''; let sql = ''; - for(let i221 = 0, l = unions.length; i221 < l; i221++){ - const union = unions[i221]; - if (i221 > 0) sql += ' '; - if (i221 > 0 || !onlyUnions) sql += union.clause + ' '; + for(let i224 = 0, l = unions.length; i224 < l; i224++){ + const union = unions[i224]; + if (i224 > 0) sql += ' '; + if (i224 > 0 || !onlyUnions) sql += union.clause + ' '; const statement = this.formatter.rawOrFn(union.value); if (statement) { if (union.wrap) sql += '('; @@ -55120,10 +57678,10 @@ class QueryCompiler { const withs = this.grouped.with; if (!withs) return; const sql = []; - let i222 = -1; + let i225 = -1; let isRecursive = false; - while(++i222 < withs.length){ - const stmt = withs[i222]; + while(++i225 < withs.length){ + const stmt = withs[i225]; if (stmt.recursive) { isRecursive = true; } @@ -55140,34 +57698,34 @@ class QueryCompiler { if (statement.not) return `not ${str115}`; return str115; } - _prepInsert(data73) { - const isRaw = this.formatter.rawOrFn(data73); + _prepInsert(data76) { + const isRaw = this.formatter.rawOrFn(data76); if (isRaw) return isRaw; let columns = []; const values51 = []; - if (!Array.isArray(data73)) data73 = data73 ? [ - data73 + if (!Array.isArray(data76)) data76 = data76 ? [ + data76 ] : []; - let i223 = -1; - while(++i223 < data73.length){ - if (data73[i223] == null) break; - if (i223 === 0) columns = Object.keys(data73[i223]).sort(); + let i226 = -1; + while(++i226 < data76.length){ + if (data76[i226] == null) break; + if (i226 === 0) columns = Object.keys(data76[i226]).sort(); const row = new Array(columns.length); - const keys = Object.keys(data73[i223]); + const keys = Object.keys(data76[i226]); let j30 = -1; while(++j30 < keys.length){ - const key146 = keys[j30]; - let idx = columns.indexOf(key146); + const key148 = keys[j30]; + let idx = columns.indexOf(key148); if (idx === -1) { - columns = columns.concat(key146).sort(); - idx = columns.indexOf(key146); + columns = columns.concat(key148).sort(); + idx = columns.indexOf(key148); let k17 = -1; while(++k17 < values51.length){ values51[k17].splice(idx, 0, undefined); } row.splice(idx, 0, undefined); } - row[idx] = data73[i223][key146]; + row[idx] = data76[i226][key148]; } values51.push(row); } @@ -55176,29 +57734,29 @@ class QueryCompiler { values: values51 }; } - _prepUpdate(data74 = {}) { + _prepUpdate(data77 = {}) { const { counter ={} } = this.single; for (const column of Object.keys(counter)){ - if (has(data74, column)) { + if (has(data77, column)) { this.client.logger.warn(`increment/decrement called for a column that has already been specified in main .update() call. Ignoring increment/decrement and using value from .update() call.`); continue; } - let value452 = counter[column]; - const symbol = value452 < 0 ? '-' : '+'; + let value456 = counter[column]; + const symbol = value456 < 0 ? '-' : '+'; if (symbol === '-') { - value452 = -value452; + value456 = -value456; } - data74[column] = this.client.raw(`?? ${symbol} ?`, [ + data77[column] = this.client.raw(`?? ${symbol} ?`, [ column, - value452 + value456 ]); } - data74 = omitBy(data74, isUndefined1); + data77 = omitBy(data77, isUndefined1); const vals = []; - const columns = Object.keys(data74); - let i224 = -1; - while(++i224 < columns.length){ - vals.push(this.formatter.wrap(columns[i224]) + ' = ' + this.formatter.parameter(data74[columns[i224]])); + const columns = Object.keys(data77); + let i227 = -1; + while(++i227 < columns.length){ + vals.push(this.formatter.wrap(columns[i227]) + ' = ' + this.formatter.parameter(data77[columns[i227]])); } if (isEmpty3(vals)) { throw new Error([ @@ -55211,26 +57769,26 @@ class QueryCompiler { } return vals; } - _formatGroupsItemValue(value453) { + _formatGroupsItemValue(value457) { const { formatter } = this; - if (value453 instanceof Raw) { - return formatter.unwrapRaw(value453); - } else if (value453 instanceof Builder) { - return '(' + formatter.columnize(value453) + ')'; + if (value457 instanceof Raw) { + return formatter.unwrapRaw(value457); + } else if (value457 instanceof Builder) { + return '(' + formatter.columnize(value457) + ')'; } else { - return formatter.columnize(value453); + return formatter.columnize(value457); } } - _groupsOrders(type58) { - const items = this.grouped[type58]; + _groupsOrders(type51) { + const items = this.grouped[type51]; if (!items) return ''; const { formatter } = this; const sql = items.map((item)=>{ const column = this._formatGroupsItemValue(item.value); - const direction = type58 === 'order' && item.type !== 'orderByRaw' ? ` ${formatter.direction(item.direction)}` : ''; + const direction = type51 === 'order' && item.type !== 'orderByRaw' ? ` ${formatter.direction(item.direction)}` : ''; return column + direction; }); - return sql.length ? type58 + ' by ' + sql.join(', ') : ''; + return sql.length ? type51 + ' by ' + sql.join(', ') : ''; } get tableName() { if (!this._tableName) { @@ -55383,24 +57941,24 @@ Object.assign(SchemaCompiler.prototype, { }, toSQL () { const sequence = this.builder._sequence; - for(let i225 = 0, l = sequence.length; i225 < l; i225++){ - const query = sequence[i225]; + for(let i228 = 0, l = sequence.length; i228 < l; i228++){ + const query = sequence[i228]; this[query.method].apply(this, query.args); } return this.sequence; } }); -function buildTable(type59) { +function buildTable(type52) { return function(tableName, fn) { - const builder = this.client.tableBuilder(type59, tableName, fn); + const builder = this.client.tableBuilder(type52, tableName, fn); const queryContext = this.builder.queryContext(); if (queryContext !== undefined && builder.queryContext() === undefined) { builder.queryContext(queryContext); } builder.setSchema(this.schema); const sql = builder.toSQL(); - for(let i226 = 0, l = sql.length; i226 < l; i226++){ - this.sequence.push(sql[i226]); + for(let i229 = 0, l = sql.length; i229 < l; i229++){ + this.sequence.push(sql[i229]); } }; } @@ -55464,14 +58022,14 @@ const specialMethods = { }; each1(specialMethods, function(methods3, dialect) { methods3.forEach(function(method22) { - TableBuilder.prototype[method22] = function(value454) { + TableBuilder.prototype[method22] = function(value458) { if (this.client.dialect !== dialect) { throw new Error(`Knex only supports ${method22} statement with ${dialect}.`); } if (this._method === 'alter') { throw new Error(`Knex does not support altering the ${method22} outside of create ` + `table, please use knex.raw statement.`); } - this._single[method22] = value454; + this._single[method22] = value458; }; }); }); @@ -55529,10 +58087,10 @@ const columnTypes = [ 'enu', 'specificType', ]; -each1(columnTypes, function(type60) { - TableBuilder.prototype[type60] = function() { +each1(columnTypes, function(type53) { + TableBuilder.prototype[type53] = function() { const args80 = toArray2(arguments); - const builder = this.client.columnBuilder(this, type60, args80); + const builder = this.client.columnBuilder(this, type53, args80); this._statements.push({ grouping: 'columns', builder @@ -55551,11 +58109,11 @@ TableBuilder.prototype.timestamps = function timestamps() { } return; }; -TableBuilder.prototype.comment = function(value455) { - if (typeof value455 !== 'string') { +TableBuilder.prototype.comment = function(value459) { + if (typeof value459 !== 'string') { throw new TypeError('Table comment must be string'); } - this._single.comment = value455; + this._single.comment = value459; }; TableBuilder.prototype.foreign = function(column, keyName1) { const foreignData = { @@ -55642,7 +58200,7 @@ AlterMethods.dropColumn = AlterMethods.dropColumns = function() { return this; }; const groupBy1 = __default6.groupBy; -const indexOf = __default6.indexOf; +const indexOf1 = __default6.indexOf; const isEmpty4 = __default6.isEmpty; const tail2 = __default6.tail; function TableCompiler(client, tableBuilder) { @@ -55725,8 +58283,8 @@ TableCompiler.prototype.columnQueries = function(columns) { if (!isEmpty4(column)) return memo2.concat(column); return memo2; }, []); - for (const q9 of queries){ - this.pushQuery(q9); + for (const q8 of queries){ + this.pushQuery(q8); } }; TableCompiler.prototype.addColumnsPrefix = 'add column '; @@ -55765,8 +58323,8 @@ TableCompiler.prototype.tableName = function() { }; TableCompiler.prototype.alterTable = function() { const alterTable = this.grouped.alterTable || []; - for(let i227 = 0, l = alterTable.length; i227 < l; i227++){ - const statement = alterTable[i227]; + for(let i230 = 0, l = alterTable.length; i230 < l; i230++){ + const statement = alterTable[i230]; if (this[statement.method]) { this[statement.method].apply(this, statement.args); } else { @@ -55782,9 +58340,9 @@ TableCompiler.prototype.alterTableForCreate = function(columnTypes2) { const savedSequence = this.sequence; const alterTable = this.grouped.alterTable || []; this.grouped.alterTable = []; - for(let i228 = 0, l = alterTable.length; i228 < l; i228++){ - const statement = alterTable[i228]; - if (indexOf(this.createAlterTableMethods, statement.method) < 0) { + for(let i231 = 0, l = alterTable.length; i231 < l; i231++){ + const statement = alterTable[i231]; + if (indexOf1(this.createAlterTableMethods, statement.method) < 0) { this.grouped.alterTable.push(statement); continue; } @@ -55799,8 +58357,8 @@ TableCompiler.prototype.alterTableForCreate = function(columnTypes2) { this.sequence = savedSequence; this.forCreate = false; }; -TableCompiler.prototype.dropIndex = function(value456) { - this.pushQuery(`drop index${value456}`); +TableCompiler.prototype.dropIndex = function(value460) { + this.pushQuery(`drop index${value460}`); }; TableCompiler.prototype.dropUnique = TableCompiler.prototype.dropForeign = function() { throw new Error('Method implemented in the dialect driver'); @@ -55815,23 +58373,23 @@ TableCompiler.prototype.dropColumn = function() { }); this.pushQuery((this.lowerCase ? 'alter table ' : 'ALTER TABLE ') + this.tableName() + ' ' + drops.join(', ')); }; -TableCompiler.prototype._indexCommand = function(type61, tableName, columns) { +TableCompiler.prototype._indexCommand = function(type54, tableName, columns) { if (!Array.isArray(columns)) columns = columns ? [ columns ] : []; const table = tableName.replace(/\.|-/g, '_'); - const indexName = (table + '_' + columns.join('_') + '_' + type61).toLowerCase(); + const indexName = (table + '_' + columns.join('_') + '_' + type54).toLowerCase(); return this.formatter.wrap(indexName); }; const extend2 = __default6.extend; const toArray3 = __default6.toArray; -function ColumnBuilder(client, tableBuilder, type62, args81) { +function ColumnBuilder(client, tableBuilder, type55, args81) { this.client = client; this._method = 'add'; this._single = {}; this._modifiers = {}; this._statements = []; - this._type = columnAlias[type62] || type62; + this._type = columnAlias[type55] || type55; this._args = args81; this._tableBuilder = tableBuilder; if (tableBuilder._method === 'alter') { @@ -55854,9 +58412,9 @@ const aliasMethod = { defaultsTo: 'defaultTo' }; modifiers.forEach(function(method25) { - const key147 = aliasMethod[method25] || method25; + const key149 = aliasMethod[method25] || method25; ColumnBuilder.prototype[method25] = function() { - this._modifiers[key147] = toArray3(arguments); + this._modifiers[key149] = toArray3(arguments); return this; }; }); @@ -55878,18 +58436,18 @@ ColumnBuilder.prototype.notNull = ColumnBuilder.prototype.notNullable = function return this; }; }); -ColumnBuilder.prototype.references = function(value457) { - return this._tableBuilder.foreign.call(this._tableBuilder, this._args[0], undefined, this)._columnBuilder(this).references(value457); +ColumnBuilder.prototype.references = function(value461) { + return this._tableBuilder.foreign.call(this._tableBuilder, this._args[0], undefined, this)._columnBuilder(this).references(value461); }; const AlterMethods1 = {}; AlterMethods1.drop = function() { this._single.drop = true; return this; }; -AlterMethods1.alterType = function(type63) { +AlterMethods1.alterType = function(type56) { this._statements.push({ grouping: 'alterType', - value: type63 + value: type56 }); return this; }; @@ -55952,17 +58510,17 @@ ColumnCompiler.prototype.compileColumn = function() { return this.formatter.wrap(this.getColumnName()) + ' ' + this.getColumnType() + this.getModifiers(); }; ColumnCompiler.prototype.getColumnName = function() { - const value458 = first(this.args); - return value458 || this.defaults('columnName'); + const value462 = first(this.args); + return value462 || this.defaults('columnName'); }; ColumnCompiler.prototype.getColumnType = function() { - const type64 = this[this.type]; - return typeof type64 === 'function' ? type64.apply(this, tail3(this.args)) : type64; + const type57 = this[this.type]; + return typeof type57 === 'function' ? type57.apply(this, tail3(this.args)) : type57; }; ColumnCompiler.prototype.getModifiers = function() { const modifiers1 = []; - for(let i229 = 0, l = this.modifiers.length; i229 < l; i229++){ - const modifier = this.modifiers[i229]; + for(let i232 = 0, l = this.modifiers.length; i232 < l; i232++){ + const modifier = this.modifiers[i232]; if (!this.isIncrements || this.isIncrements && modifier === 'comment') { if (has1(this.modified, modifier)) { const val = this[modifier].apply(this, this.modified[modifier]); @@ -55999,27 +58557,27 @@ ColumnCompiler.prototype.timestamp = 'timestamp'; ColumnCompiler.prototype.enu = 'varchar'; ColumnCompiler.prototype.bit = ColumnCompiler.prototype.json = 'text'; ColumnCompiler.prototype.uuid = 'char(36)'; -ColumnCompiler.prototype.specifictype = (type65)=>type65; +ColumnCompiler.prototype.specifictype = (type58)=>type58; ColumnCompiler.prototype.nullable = (nullable)=>nullable === false ? 'not null' : 'null'; ColumnCompiler.prototype.notNullable = function() { return this.nullable(false); }; -ColumnCompiler.prototype.defaultTo = function(value459) { - if (value459 === void 0) { +ColumnCompiler.prototype.defaultTo = function(value463) { + if (value463 === void 0) { return ''; - } else if (value459 === null) { - value459 = 'null'; - } else if (value459 instanceof Raw) { - value459 = value459.toQuery(); + } else if (value463 === null) { + value463 = 'null'; + } else if (value463 instanceof Raw) { + value463 = value463.toQuery(); } else if (this.type === 'bool') { - if (value459 === 'false') value459 = 0; - value459 = `'${value459 ? 1 : 0}'`; - } else if ((this.type === 'json' || this.type === 'jsonb') && isObject4(value459)) { - value459 = `'${JSON.stringify(value459)}'`; + if (value463 === 'false') value463 = 0; + value463 = `'${value463 ? 1 : 0}'`; + } else if ((this.type === 'json' || this.type === 'jsonb') && isObject4(value463)) { + value463 = `'${JSON.stringify(value463)}'`; } else { - value459 = `'${value459}'`; + value463 = `'${value463}'`; } - return `default ${value459}`; + return `default ${value463}`; }; ColumnCompiler.prototype._num = function(val, fallback) { if (val === undefined || val === null) return fallback; @@ -56083,12 +58641,12 @@ function escapeObject(val, finalEscape, ctx) { } function arrayToList(array, finalEscape, ctx) { let sql = ''; - for(let i230 = 0; i230 < array.length; i230++){ - const val = array[i230]; + for(let i233 = 0; i233 < array.length; i233++){ + const val = array[i233]; if (Array.isArray(val)) { - sql += (i230 === 0 ? '' : ', ') + '(' + arrayToList(val, finalEscape, ctx) + ')'; + sql += (i233 === 0 ? '' : ', ') + '(' + arrayToList(val, finalEscape, ctx) + ')'; } else { - sql += (i230 === 0 ? '' : ', ') + finalEscape(val, ctx); + sql += (i233 === 0 ? '' : ', ') + finalEscape(val, ctx); } } return sql; @@ -56099,9 +58657,9 @@ function bufferToString(buffer34) { function escapeString1(val, finalEscape, ctx) { let chunkIndex = charsRegex.lastIndex = 0; let escapedVal = ''; - let match25; - while(match25 = charsRegex.exec(val)){ - escapedVal += val.slice(chunkIndex, match25.index) + charsMap[match25[0]]; + let match22; + while(match22 = charsRegex.exec(val)){ + escapedVal += val.slice(chunkIndex, match22.index) + charsMap[match22[0]]; chunkIndex = charsRegex.lastIndex; } if (chunkIndex === 0) { @@ -56167,12 +58725,12 @@ const isFunction5 = __default6.isFunction; const isString5 = __default6.isString; class Logger1 { constructor(config){ - const { log: { debug: debug11 , warn , error: error45 , deprecate: deprecate2 , inspectionDepth , enableColors , } = {} , } = config; + const { log: { debug: debug11 , warn , error: error53 , deprecate: deprecate2 , inspectionDepth , enableColors , } = {} , } = config; this._inspectionDepth = inspectionDepth || 5; this._enableColors = resolveIsEnabledColors(enableColors); this._debug = debug11; this._warn = warn; - this._error = error45; + this._error = error53; this._deprecate = deprecate2; } _log(message, userFn, colorFn) { @@ -56270,14 +58828,14 @@ Object.assign(Client1.prototype, { schemaCompiler (builder) { return new SchemaCompiler(this, builder); }, - tableBuilder (type66, tableName, fn) { - return new TableBuilder(this, type66, tableName, fn); + tableBuilder (type59, tableName, fn) { + return new TableBuilder(this, type59, tableName, fn); }, tableCompiler (tableBuilder) { return new TableCompiler(this, tableBuilder); }, - columnBuilder (tableBuilder, type67, args82) { - return new ColumnBuilder(this, tableBuilder, type67, args82); + columnBuilder (tableBuilder, type60, args82) { + return new ColumnBuilder(this, tableBuilder, type60, args82); }, columnCompiler (tableBuilder, columnBuilder) { return new ColumnCompiler(this, tableBuilder, columnBuilder); @@ -56297,15 +58855,15 @@ Object.assign(Client1.prototype, { _formatQuery (sql, bindings, timeZone) { bindings = bindings == null ? [] : [].concat(bindings); let index = 0; - return sql.replace(/\\?\?/g, (match26)=>{ - if (match26 === '\\?') { + return sql.replace(/\\?\?/g, (match23)=>{ + if (match23 === '\\?') { return '?'; } if (index === bindings.length) { - return match26; + return match23; } - const value460 = bindings[index++]; - return this._escapeBinding(value460, { + const value464 = bindings[index++]; + return this._escapeBinding(value464, { timeZone }); }); @@ -56337,7 +58895,7 @@ Object.assign(Client1.prototype, { throw err; }); }, - stream (connection, obj, stream60, options90) { + stream (connection, obj, stream60, options92) { if (typeof obj === 'string') obj = { sql: obj }; @@ -56350,7 +58908,7 @@ Object.assign(Client1.prototype, { debugQuery(obj.sql, __knexTxId); debugBindings2(obj.bindings, __knexTxId); obj.sql = this.positionBindings(obj.sql); - return this._stream(connection, obj, stream60, options90); + return this._stream(connection, obj, stream60, options92); }, prepBindings (bindings) { return bindings; @@ -56364,25 +58922,25 @@ Object.assign(Client1.prototype, { } return resp; }, - wrapIdentifier (value461, queryContext) { - return this.customWrapIdentifier(value461, this.wrapIdentifierImpl, queryContext); + wrapIdentifier (value465, queryContext) { + return this.customWrapIdentifier(value465, this.wrapIdentifierImpl, queryContext); }, - customWrapIdentifier (value462, origImpl, queryContext) { + customWrapIdentifier (value466, origImpl, queryContext) { if (this.config.wrapIdentifier) { - return this.config.wrapIdentifier(value462, origImpl, queryContext); + return this.config.wrapIdentifier(value466, origImpl, queryContext); } - return origImpl(value462); + return origImpl(value466); }, - wrapIdentifierImpl (value463) { - return value463 !== '*' ? `"${value463.replace(/"/g, '""')}"` : '*'; + wrapIdentifierImpl (value467) { + return value467 !== '*' ? `"${value467.replace(/"/g, '""')}"` : '*'; }, initializeDriver () { try { this.driver = this._driver(); - } catch (e124) { + } catch (e125) { const message = `Knex: run\n$ npm install ${this.driverName} --save`; - this.logger.error(`${message}\n${e124.message}\n${e124.stack}`); - throw new Error(`${message}\n${e124.message}`); + this.logger.error(`${message}\n${e125.message}\n${e125.stack}`); + throw new Error(`${message}\n${e125.message}`); } }, poolDefaults () { @@ -56471,9 +59029,9 @@ Object.assign(Client1.prototype, { const connection = await this.pool.acquire().promise; debug3('acquired connection from pool: %s', connection.__knexUid); return connection; - } catch (error46) { - let convertedError = error46; - if (error46 instanceof TimeoutError) { + } catch (error54) { + let convertedError = error54; + if (error54 instanceof TimeoutError) { convertedError = new KnexTimeoutError('Knex: Timeout acquiring a connection. The pool is probably full. ' + 'Are you missing a .transacting(trx) call?'); } throw convertedError; @@ -56571,8 +59129,8 @@ function connectionObject(parsed) { } } if (parsed.query) { - for(const key148 in parsed.query){ - connection[key148] = parsed.query[key148]; + for(const key150 in parsed.query){ + connection[key150] = parsed.query[key150]; } } return connection; @@ -56592,36 +59150,36 @@ class Transaction_MSSQL extends Transaction { debug4('%s: savepoint at', this.txid); return this.query(conn, `SAVE TRANSACTION ${this.txid}`); } - commit(conn, value464) { + commit(conn, value468) { this._completed = true; debug4('%s: commit', this.txid); - return conn.tx_.commit().then(()=>this._resolver(value464), this._rejecter); + return conn.tx_.commit().then(()=>this._resolver(value468), this._rejecter); } - release(conn, value465) { - return this._resolver(value465); + release(conn, value469) { + return this._resolver(value469); } - rollback(conn, error47) { + rollback(conn, error55) { this._completed = true; debug4('%s: rolling back', this.txid); return conn.tx_.rollback().then(()=>{ - let err = error47; - if (error47 === undefined) { + let err = error55; + if (error55 === undefined) { if (this.doNotRejectOnRollback) { this._resolver(); return; } - err = new Error(`Transaction rejected with non-error: ${error47}`); + err = new Error(`Transaction rejected with non-error: ${error55}`); } this._rejecter(err); }, (err)=>{ - if (error47) err.originalError = error47; + if (error55) err.originalError = error55; return this._rejecter(err); }); } - async rollbackTo(conn, error48) { + async rollbackTo(conn, error56) { debug4('%s: rolling backTo', this.txid); - await this.query(conn, `ROLLBACK TRANSACTION ${this.txid}`, 2, error48); - this._rejecter(error48); + await this.query(conn, `ROLLBACK TRANSACTION ${this.txid}`, 2, error56); + this._rejecter(error56); } async acquireConnection(config, cb) { const configConnection = config && config.connection; @@ -56700,10 +59258,10 @@ class QueryCompiler_MSSQL extends QueryCompiler { if (insertData.columns.length) { sql += `(${this.formatter.columnize(insertData.columns)}`; sql += `) ${returningSql}values (`; - let i231 = -1; - while(++i231 < insertData.values.length){ - if (i231 !== 0) sql += '), ('; - sql += this.formatter.parameterize(insertData.values[i231], this.client.valueForUndefined); + let i234 = -1; + while(++i234 < insertData.values.length){ + if (i234 !== 0) sql += '), ('; + sql += this.formatter.parameterize(insertData.values[i234], this.client.valueForUndefined); } sql += ')'; } else if (insertValues.length === 1 && insertValues[0]) { @@ -56745,10 +59303,10 @@ class QueryCompiler_MSSQL extends QueryCompiler { if (this.onlyUnions()) return ''; const top = this.top(); const columns = this.grouped.columns || []; - let i232 = -1, sql = []; + let i235 = -1, sql = []; if (columns) { - while(++i232 < columns.length){ - const stmt = columns[i232]; + while(++i235 < columns.length){ + const stmt = columns[i235]; if (stmt.distinct) distinctClause = 'distinct '; if (stmt.distinctOn) { distinctClause = this.distinctOn(stmt.value); @@ -56768,15 +59326,15 @@ class QueryCompiler_MSSQL extends QueryCompiler { ]; return `select ${distinctClause}` + (top ? top + ' ' : '') + sql.join(', ') + (this.tableName ? ` from ${this.tableName}` : ''); } - _returning(method28, value466) { + _returning(method28, value470) { switch(method28){ case 'update': case 'insert': - return value466 ? `output ${this.formatter.columnizeWithPrefix('inserted.', value466)}` : ''; + return value470 ? `output ${this.formatter.columnizeWithPrefix('inserted.', value470)}` : ''; case 'del': - return value466 ? `output ${this.formatter.columnizeWithPrefix('deleted.', value466)}` : ''; + return value470 ? `output ${this.formatter.columnizeWithPrefix('deleted.', value470)}` : ''; case 'rowcount': - return value466 ? ';select @@rowcount' : ''; + return value470 ? ';select @@rowcount' : ''; } } truncate() { @@ -57081,7 +59639,7 @@ Object.assign(Client_MSSQL.prototype, { _driver () { const tds = require('tedious'); const mssqlTedious = require('mssql'); - const base11 = require('mssql/lib/base'); + const base12 = require('mssql/lib/base'); const mssqlVersion = require('mssql/package.json').version; if (mssqlVersion === '4.1.0') { mssqlTedious.ConnectionPool.prototype.release = release; @@ -57098,7 +59656,7 @@ Object.assign(Client_MSSQL.prototype, { } } function _poolCreate() { - return new base11.Promise((resolve30, reject18)=>{ + return new base12.Promise((resolve32, reject19)=>{ const cfg = { userName: this.config.user, password: this.config.password, @@ -57132,21 +59690,21 @@ Object.assign(Client_MSSQL.prototype, { function safeResolve(err) { if (!alreadyResolved) { alreadyResolved = true; - resolve30(err); + resolve32(err); } } function safeReject(err) { if (!alreadyResolved) { alreadyResolved = true; - reject18(err); + reject19(err); } } tedious.once('end', (evt)=>{ - safeReject(new base11.ConnectionError('Connection ended unexpectedly during connecting')); + safeReject(new base12.ConnectionError('Connection ended unexpectedly during connecting')); }); tedious.once('connect', (err)=>{ if (err) { - err = new base11.ConnectionError(err); + err = new base12.ConnectionError(err); return safeReject(err); } safeResolve(tedious); @@ -57183,11 +59741,11 @@ Object.assign(Client_MSSQL.prototype, { columnCompiler () { return new ColumnCompiler_MSSQL(this, ...arguments); }, - wrapIdentifierImpl (value467) { - if (value467 === '*') { + wrapIdentifierImpl (value471) { + if (value471 === '*') { return '*'; } - return `[${value467.replace(/[[\]']+/g, '')}]`; + return `[${value471.replace(/[[\]']+/g, '')}]`; }, acquireRawConnection () { return new Promise((resolver, rejecter)=>{ @@ -57236,8 +59794,8 @@ Object.assign(Client_MSSQL.prototype, { req.multiple = true; req.stream = true; if (obj.bindings) { - for(let i233 = 0; i233 < obj.bindings.length; i233++){ - this._setReqInput(req, i233, obj.bindings[i233]); + for(let i236 = 0; i236 < obj.bindings.length; i236++){ + this._setReqInput(req, i236, obj.bindings[i236]); } } req.pipe(stream61); @@ -57255,8 +59813,8 @@ Object.assign(Client_MSSQL.prototype, { const req = (connection.tx_ || connection).request(); req.multiple = true; if (obj.bindings) { - for(let i234 = 0; i234 < obj.bindings.length; i234++){ - client._setReqInput(req, i234, obj.bindings[i234]); + for(let i237 = 0; i237 < obj.bindings.length; i237++){ + client._setReqInput(req, i237, obj.bindings[i237]); } } req.query(sql, (err, recordset)=>{ @@ -57268,20 +59826,20 @@ Object.assign(Client_MSSQL.prototype, { }); }); }, - _setReqInput (req, i235, binding) { + _setReqInput (req, i238, binding) { if (typeof binding == 'number') { if (binding % 1 !== 0) { - req.input(`p${i235}`, this.driver.Decimal(38, 10), binding); + req.input(`p${i238}`, this.driver.Decimal(38, 10), binding); } else if (binding < SQL_INT4.MIN || binding > SQL_INT4.MAX) { if (binding < SQL_BIGINT_SAFE.MIN || binding > SQL_BIGINT_SAFE.MAX) { throw new Error(`Bigint must be safe integer or must be passed as string, saw ${binding}`); } - req.input(`p${i235}`, this.driver.BigInt, binding); + req.input(`p${i238}`, this.driver.BigInt, binding); } else { - req.input(`p${i235}`, this.driver.Int, binding); + req.input(`p${i238}`, this.driver.Int, binding); } } else { - req.input(`p${i235}`, binding); + req.input(`p${i238}`, binding); } }, processResponse (obj, runner) { @@ -57318,10 +59876,10 @@ class MSSQL_Formatter extends Formatter { const columns = typeof target === 'string' ? [ target ] : target; - let str118 = '', i236 = -1; - while(++i236 < columns.length){ - if (i236 > 0) str118 += ', '; - str118 += prefix + this.wrap(columns[i236]); + let str118 = '', i239 = -1; + while(++i239 < columns.length){ + if (i239 > 0) str118 += ', '; + str118 += prefix + this.wrap(columns[i239]); } return str118; } @@ -57330,35 +59888,35 @@ const debug5 = __default7('knex:tx'); class Transaction_MySQL extends Transaction { } Object.assign(Transaction_MySQL.prototype, { - query (conn, sql, status, value468) { - const t99 = this; - const q10 = this.trxClient.query(conn, sql).catch((err)=>{ + query (conn, sql, status, value472) { + const t101 = this; + const q9 = this.trxClient.query(conn, sql).catch((err)=>{ if (err.errno === 1305) { this.trxClient.logger.warn('Transaction was implicitly committed, do not mix transactions and ' + 'DDL with MySQL (#805)'); return; } status = 2; - value468 = err; - t99._completed = true; - debug5('%s error running transaction query', t99.txid); + value472 = err; + t101._completed = true; + debug5('%s error running transaction query', t101.txid); }).then(function(res) { - if (status === 1) t99._resolver(value468); + if (status === 1) t101._resolver(value472); if (status === 2) { - if (value468 === undefined) { - if (t99.doNotRejectOnRollback && /^ROLLBACK\b/i.test(sql)) { - t99._resolver(); + if (value472 === undefined) { + if (t101.doNotRejectOnRollback && /^ROLLBACK\b/i.test(sql)) { + t101._resolver(); return; } - value468 = new Error(`Transaction rejected with non-error: ${value468}`); + value472 = new Error(`Transaction rejected with non-error: ${value472}`); } - t99._rejecter(value468); + t101._rejecter(value472); } return res; }); if (status === 1 || status === 2) { - t99._completed = true; + t101._completed = true; } - return q10; + return q9; } }); const identity1 = __default6.identity; @@ -57473,10 +60031,10 @@ Object.assign(TableCompiler_MySQL.prototype, { if (client.connectionSettings) { conn = client.connectionSettings; } - const charset6 = this.single.charset || conn.charset || ''; + const charset = this.single.charset || conn.charset || ''; const collation = this.single.collate || conn.collate || ''; const engine = this.single.engine || ''; - if (charset6) sql += ` default character set ${charset6}`; + if (charset) sql += ` default character set ${charset}`; if (collation) sql += ` collate ${collation}`; if (engine) sql += ` engine = ${engine}`; if (this.single.comment) { @@ -57502,14 +60060,14 @@ Object.assign(TableCompiler_MySQL.prototype, { output (resp) { const column = resp[0]; const runner = this; - return compiler.getFKRefs(runner).then(([refs])=>new Promise((resolve31, reject19)=>{ + return compiler.getFKRefs(runner).then(([refs])=>new Promise((resolve33, reject20)=>{ try { if (!refs.length) { - resolve31(); + resolve33(); } - resolve31(compiler.dropFKRefs(runner, refs)); - } catch (e125) { - reject19(e125); + resolve33(compiler.dropFKRefs(runner, refs)); + } catch (e126) { + reject20(e126); } }).then(function() { let sql = `alter table ${table} change ${wrapped} ${column.Type}`; @@ -57685,12 +60243,12 @@ Object.assign(ColumnCompiler_MySQL.prototype, { jsonb () { return 'json'; }, - defaultTo (value469) { - if (value469 === null || value469 === undefined) { + defaultTo (value473) { + if (value473 === null || value473 === undefined) { return; } - if ((this.type === 'json' || this.type === 'jsonb') && isObject5(value469)) { - return `default ('${JSON.stringify(value469)}')`; + if ((this.type === 'json' || this.type === 'jsonb') && isObject5(value473)) { + return `default ('${JSON.stringify(value473)}')`; } const defaultVal = ColumnCompiler_MySQL.super_.prototype.defaultTo.apply(this, arguments); if (this.type !== 'blob' && this.type.indexOf('text') === -1) { @@ -57746,8 +60304,8 @@ Object.assign(Client_MySQL.prototype, { return new Transaction_MySQL(this, ...arguments); }, _escapeBinding: makeEscape(), - wrapIdentifierImpl (value470) { - return value470 !== '*' ? `\`${value470.replace(/`/g, '``')}\`` : '*'; + wrapIdentifierImpl (value474) { + return value474 !== '*' ? `\`${value474.replace(/`/g, '``')}\`` : '*'; }, acquireRawConnection () { return new Promise((resolver, rejecter)=>{ @@ -57780,15 +60338,15 @@ Object.assign(Client_MySQL.prototype, { } return false; }, - _stream (connection, obj, stream62, options91) { - options91 = options91 || {}; + _stream (connection, obj, stream62, options93) { + options93 = options93 || {}; const queryOptions = Object.assign({ sql: obj.sql }, obj.options); return new Promise((resolver, rejecter)=>{ stream62.on('error', rejecter); stream62.on('end', resolver); - const queryStream = connection.query(queryOptions, obj.bindings).stream(options91); + const queryStream = connection.query(queryOptions, obj.bindings).stream(options93); queryStream.on('error', (err)=>{ rejecter(err); stream62.emit('error', err); @@ -57868,35 +60426,35 @@ const debug6 = __default7('knex:tx'); class Transaction_MySQL2 extends Transaction { } Object.assign(Transaction_MySQL2.prototype, { - query (conn, sql, status, value471) { - const t100 = this; - const q11 = this.trxClient.query(conn, sql).catch((err)=>{ + query (conn, sql, status, value475) { + const t102 = this; + const q10 = this.trxClient.query(conn, sql).catch((err)=>{ if (err.code === 'ER_SP_DOES_NOT_EXIST') { this.trxClient.logger.warn('Transaction was implicitly committed, do not mix transactions and ' + 'DDL with MySQL (#805)'); return; } status = 2; - value471 = err; - t100._completed = true; - debug6('%s error running transaction query', t100.txid); + value475 = err; + t102._completed = true; + debug6('%s error running transaction query', t102.txid); }).then(function(res) { - if (status === 1) t100._resolver(value471); + if (status === 1) t102._resolver(value475); if (status === 2) { - if (value471 === undefined) { - if (t100.doNotRejectOnRollback && /^ROLLBACK\b/i.test(sql)) { - t100._resolver(); + if (value475 === undefined) { + if (t102.doNotRejectOnRollback && /^ROLLBACK\b/i.test(sql)) { + t102._resolver(); return; } - value471 = new Error(`Transaction rejected with non-error: ${value471}`); + value475 = new Error(`Transaction rejected with non-error: ${value475}`); } - t100._rejecter(value471); + t102._rejecter(value475); return res; } }); if (status === 1 || status === 2) { - t100._completed = true; + t102._completed = true; } - return q11; + return q10; } }); function Client_MySQL2(config) { @@ -58032,9 +60590,9 @@ class QueryCompiler_Oracle extends QueryCompiler { return this._addReturningToSqlAndConvert(`insert into ${this.tableName} (${this.formatter.columnize(insertData.columns)}) values (${this.formatter.parameterize(insertData.values[0])})`, returning, this.tableName); } const insertDefaultsOnly = insertData.columns.length === 0; - sql.sql = 'begin ' + insertData.values.map((value472)=>{ + sql.sql = 'begin ' + insertData.values.map((value476)=>{ let returningHelper; - const parameterizedValues = !insertDefaultsOnly ? this.formatter.parameterize(value472, this.client.valueForUndefined) : ''; + const parameterizedValues = !insertDefaultsOnly ? this.formatter.parameterize(value476, this.client.valueForUndefined) : ''; const returningValues = Array.isArray(returning) ? returning : [ returning ]; @@ -58055,7 +60613,7 @@ class QueryCompiler_Oracle extends QueryCompiler { }).join(' ') + 'end;'; if (returning) { sql.returning = returning; - sql.returningSql = `select ${this.formatter.columnize(returning)}` + ' from ' + this.tableName + ' where ROWID in (' + sql.outParams.map((v, i237)=>`:${i237 + 1}`).join(', ') + ')' + ' order by case ROWID ' + sql.outParams.map((v, i238)=>`when CHARTOROWID(:${i238 + 1}) then ${i238}`).join(' ') + ' end'; + sql.returningSql = `select ${this.formatter.columnize(returning)}` + ' from ' + this.tableName + ' where ROWID in (' + sql.outParams.map((v, i240)=>`:${i240 + 1}`).join(', ') + ')' + ' order by case ROWID ' + sql.outParams.map((v, i241)=>`when CHARTOROWID(:${i241 + 1}) then ${i241}`).join(' ') + ' end'; } return sql; } @@ -58156,9 +60714,9 @@ class QueryCompiler_Oracle extends QueryCompiler { return 'select * from ' + '(select row_.*, ROWNUM rownum_ from (' + query + ') row_ ' + 'where rownum <= ' + this.formatter.parameter(endRow) + ') ' + 'where rownum_ > ' + this.formatter.parameter(offset122); } } -function BlobHelper(columnName, value473) { +function BlobHelper(columnName, value477) { this.columnName = columnName; - this.value = value473; + this.value = value477; this.returning = false; } BlobHelper.prototype.toString = function() { @@ -58198,8 +60756,8 @@ class Oracledb_Compiler extends QueryCompiler_Oracle { } const insertDefaultsOnly = insertData.columns.length === 0; sql.returning = returning; - sql.sql = 'begin ' + insertData.values.map(function(value474, index) { - const parameterizedValues = !insertDefaultsOnly ? self.formatter.parameterize(value474, self.client.valueForUndefined) : ''; + sql.sql = 'begin ' + insertData.values.map(function(value478, index) { + const parameterizedValues = !insertDefaultsOnly ? self.formatter.parameterize(value478, self.client.valueForUndefined) : ''; let subSql = 'insert into ' + self.tableName; if (insertDefaultsOnly) { subSql += ' (' + self.formatter.wrap(self.single.returning) + ') values (default)'; @@ -58210,7 +60768,7 @@ class Oracledb_Compiler extends QueryCompiler_Oracle { let intoClause = ''; let usingClause = ''; let outClause = ''; - each2(value474, function(val) { + each2(value478, function(val) { if (!(val instanceof BlobHelper1)) { usingClause += ' ?,'; } @@ -58234,15 +60792,15 @@ class Oracledb_Compiler extends QueryCompiler_Oracle { } subSql = self.formatter.client.positionBindings(subSql); const parameterizedValuesWithoutDefaultAndBlob = parameterizedValues.replace('DEFAULT, ', '').replace(', DEFAULT', '').replace('EMPTY_BLOB(), ', '').replace(', EMPTY_BLOB()', ''); - return "execute immediate '" + subSql.replace(/'/g, "''") + (parameterizedValuesWithoutDefaultAndBlob || value474 ? "' using " : '') + parameterizedValuesWithoutDefaultAndBlob + (parameterizedValuesWithoutDefaultAndBlob && outClause ? ',' : '') + outClause + ';'; + return "execute immediate '" + subSql.replace(/'/g, "''") + (parameterizedValuesWithoutDefaultAndBlob || value478 ? "' using " : '') + parameterizedValuesWithoutDefaultAndBlob + (parameterizedValuesWithoutDefaultAndBlob && outClause ? ',' : '') + outClause + ';'; }).join(' ') + 'end;'; sql.outBinding = outBinding; if (returning[0] === '*') { sql.returningSql = function() { - return 'select * from ' + self.tableName + ' where ROWID in (' + this.outBinding.map(function(v, i239) { - return ':' + (i239 + 1); - }).join(', ') + ')' + ' order by case ROWID ' + this.outBinding.map(function(v, i240) { - return 'when CHARTOROWID(:' + (i240 + 1) + ') then ' + i240; + return 'select * from ' + self.tableName + ' where ROWID in (' + this.outBinding.map(function(v, i242) { + return ':' + (i242 + 1); + }).join(', ') + ')' + ' order by case ROWID ' + this.outBinding.map(function(v, i243) { + return 'when CHARTOROWID(:' + (i243 + 1) + ') then ' + i243; }).join(' ') + ' end'; }; } @@ -58310,18 +60868,18 @@ class Oracledb_Compiler extends QueryCompiler_Oracle { } else { outBinding[index] = clone2(returning); } - each2(values52, function(value475, key149) { - if (value475 instanceof Buffer) { - values52[key149] = new BlobHelper1(key149, value475); - const blobIndex = outBinding[index].indexOf(key149); + each2(values52, function(value479, key151) { + if (value479 instanceof Buffer) { + values52[key151] = new BlobHelper1(key151, value479); + const blobIndex = outBinding[index].indexOf(key151); if (blobIndex >= 0) { outBinding[index].splice(blobIndex, 1); - values52[key149].returning = true; + values52[key151].returning = true; } - outBinding[index].push(values52[key149]); + outBinding[index].push(values52[key151]); } - if (value475 === undefined) { - delete params[index][key149]; + if (value479 === undefined) { + delete params[index][key151]; } }); }); @@ -58368,10 +60926,10 @@ class Oracledb_Compiler extends QueryCompiler_Oracle { const modifiedRowsCount = this.rowsAffected.length || this.rowsAffected; let returningSqlIn = ' where ROWID in ('; let returningSqlOrderBy = ') order by case ROWID '; - for(let i241 = 0; i241 < modifiedRowsCount; i241++){ + for(let i244 = 0; i244 < modifiedRowsCount; i244++){ if (this.returning[0] === '*') { - returningSqlIn += ':' + (i241 + 1) + ', '; - returningSqlOrderBy += 'when CHARTOROWID(:' + (i241 + 1) + ') then ' + i241 + ' '; + returningSqlIn += ':' + (i244 + 1) + ', '; + returningSqlOrderBy += 'when CHARTOROWID(:' + (i244 + 1) + ') then ' + i244 + ' '; } } if (this.returning[0] === '*') { @@ -58485,17 +61043,17 @@ Object.assign(ColumnCompiler_Oracle.prototype, { this.pushQuery(`comment on column ${this.tableCompiler.tableName()}.` + this.formatter.wrap(columnName) + " is '" + (comment || '') + "'"); }, comment); }, - checkIn (value476) { - if (value476 === undefined) { + checkIn (value480) { + if (value480 === undefined) { return ''; - } else if (value476 instanceof Raw) { - value476 = value476.toQuery(); - } else if (Array.isArray(value476)) { - value476 = value476.map((v29)=>`'${v29}'`).join(', '); + } else if (value480 instanceof Raw) { + value480 = value480.toQuery(); + } else if (Array.isArray(value480)) { + value480 = value480.map((v36)=>`'${v36}'`).join(', '); } else { - value476 = `'${value476}'`; + value480 = `'${value480}'`; } - return `check (${this.formatter.wrap(this.args[0])} in (${value476}))`; + return `check (${this.formatter.wrap(this.args[0])} in (${value480}))`; } }); const isObject6 = __default6.isObject; @@ -58529,26 +61087,26 @@ class Oracle_Transaction extends Transaction { begin() { return Promise.resolve(); } - async commit(conn, value477) { + async commit(conn, value481) { this._completed = true; try { await conn.commitAsync(); - this._resolver(value477); + this._resolver(value481); } catch (err) { this._rejecter(err); } } - release(conn, value478) { - return this._resolver(value478); + release(conn, value482) { + return this._resolver(value482); } rollback(conn, err) { this._completed = true; debugTx('%s: rolling back', this.txid); - return timeout(conn.rollbackAsync(), 5000).catch((e126)=>{ - if (!(e126 instanceof KnexTimeoutError)) { - return Promise.reject(e126); + return timeout(conn.rollbackAsync(), 5000).catch((e127)=>{ + if (!(e127 instanceof KnexTimeoutError)) { + return Promise.reject(e127); } - this._rejecter(e126); + this._rejecter(e127); }).then(()=>{ if (err === undefined) { if (this.doNotRejectOnRollback) { @@ -58685,8 +61243,8 @@ Object.assign(TableCompiler_Oracle.prototype, { this.pushQuery(`alter table ${this.tableName()} drop (${this.formatter.columnize(columns)})`); }, changeType () {}, - _indexCommand (type68, tableName, columns) { - return this.formatter.wrap(__default24.generateCombinedName(this.client.logger, type68, tableName, columns)); + _indexCommand (type61, tableName, columns) { + return this.formatter.wrap(__default24.generateCombinedName(this.client.logger, type61, tableName, columns)); }, primary (columns, constraintName) { constraintName = constraintName ? this.formatter.wrap(constraintName) : this.formatter.wrap(`${this.tableNameRaw}_pkey`); @@ -58746,7 +61304,7 @@ Object.assign(Client_Oracle.prototype, { return `:${questionCount}`; }); }, - _stream (connection, obj, stream63, options92) { + _stream (connection, obj, stream63, options94) { return new Promise(function(resolver, rejecter) { stream63.on('error', (err)=>{ if (isConnectionError(err)) { @@ -58755,11 +61313,11 @@ Object.assign(Client_Oracle.prototype, { rejecter(err); }); stream63.on('end', resolver); - const queryStream = connection.queryStream(obj.sql, obj.bindings, options92); + const queryStream = connection.queryStream(obj.sql, obj.bindings, options94); queryStream.pipe(stream63); - queryStream.on('error', function(error49) { - rejecter(error49); - stream63.emit('error', error49); + queryStream.on('error', function(error57) { + rejecter(error57); + stream63.emit('error', error57); }); }); } @@ -58768,13 +61326,13 @@ class Oracle_Formatter extends Formatter { alias(first38, second) { return first38 + ' ' + second; } - parameter(value479, notSetValue) { - if (value479 instanceof ReturningHelper && this.client.driver) { - value479 = new this.client.driver.OutParam(this.client.driver.OCCISTRING); - } else if (typeof value479 === 'boolean') { - value479 = value479 ? 1 : 0; + parameter(value483, notSetValue) { + if (value483 instanceof ReturningHelper && this.client.driver) { + value483 = new this.client.driver.OutParam(this.client.driver.OCCISTRING); + } else if (typeof value483 === 'boolean') { + value483 = value483 ? 1 : 0; } - return super.parameter(value479, notSetValue); + return super.parameter(value483, notSetValue); } } const each3 = __default6.each; @@ -58800,14 +61358,14 @@ Client_Oracledb.prototype._driver = function() { const oracledb = require('oracledb'); client.fetchAsString = []; if (this.config.fetchAsString && Array.isArray(this.config.fetchAsString)) { - this.config.fetchAsString.forEach(function(type69) { - if (!isString8(type69)) return; - type69 = type69.toUpperCase(); - if (oracledb[type69]) { - if (type69 !== 'NUMBER' && type69 !== 'DATE' && type69 !== 'CLOB' && type69 !== 'BUFFER') { + this.config.fetchAsString.forEach(function(type62) { + if (!isString8(type62)) return; + type62 = type62.toUpperCase(); + if (oracledb[type62]) { + if (type62 !== 'NUMBER' && type62 !== 'DATE' && type62 !== 'CLOB' && type62 !== 'BUFFER') { this.logger.warn('Only "date", "number", "clob" and "buffer" are supported for fetchAsString'); } - client.fetchAsString.push(oracledb[type69]); + client.fetchAsString.push(oracledb[type62]); } }); } @@ -58826,21 +61384,21 @@ Client_Oracledb.prototype.transaction = function() { return new Oracle_Transaction(this, ...arguments); }; Client_Oracledb.prototype.prepBindings = function(bindings) { - return map3(bindings, (value480)=>{ - if (value480 instanceof BlobHelper && this.driver) { + return map3(bindings, (value484)=>{ + if (value484 instanceof BlobHelper && this.driver) { return { type: this.driver.BLOB, dir: this.driver.BIND_OUT }; - } else if (value480 instanceof ReturningHelper2 && this.driver) { + } else if (value484 instanceof ReturningHelper2 && this.driver) { return { type: this.driver.STRING, dir: this.driver.BIND_OUT }; - } else if (typeof value480 === 'boolean') { - return value480 ? 1 : 0; + } else if (typeof value484 === 'boolean') { + return value484 ? 1 : 0; } - return value480; + return value484; }); }; Client_Oracledb.prototype.acquireRawConnection = function() { @@ -58884,14 +61442,14 @@ Client_Oracledb.prototype.acquireRawConnection = function() { }); }); }; - const fetchAsync = promisify4(function(sql, bindParams, options93, cb) { - options93 = options93 || {}; - options93.outFormat = client.driver.OUT_FORMAT_OBJECT || client.driver.OBJECT; - if (!options93.outFormat) { + const fetchAsync = promisify4(function(sql, bindParams, options95, cb) { + options95 = options95 || {}; + options95.outFormat = client.driver.OUT_FORMAT_OBJECT || client.driver.OBJECT; + if (!options95.outFormat) { throw new Error('not found oracledb.outFormat constants'); } - if (options93.resultSet) { - connection1.execute(sql, bindParams || [], options93, function(err2, result) { + if (options95.resultSet) { + connection1.execute(sql, bindParams || [], options95, function(err2, result) { if (err2) { if (isConnectionError1(err2)) { connection1.close().catch(function(err) {}); @@ -58930,7 +61488,7 @@ Client_Oracledb.prototype.acquireRawConnection = function() { fetchRowsFromRS(connection1, result.resultSet, numRows1); }); } else { - connection1.execute(sql, bindParams || [], options93, function(err, result) { + connection1.execute(sql, bindParams || [], options95, function(err, result) { if (err) { if (isConnectionError1(err)) { connection1.close().catch(function(err) {}); @@ -58942,20 +61500,20 @@ Client_Oracledb.prototype.acquireRawConnection = function() { }); } }); - connection1.executeAsync = function(sql, bindParams, options94) { - return fetchAsync(sql, bindParams, options94).then(async (results)=>{ + connection1.executeAsync = function(sql, bindParams, options96) { + return fetchAsync(sql, bindParams, options96).then(async (results)=>{ const closeResultSet = ()=>{ return results.resultSet ? promisify4(results.resultSet.close).call(results.resultSet) : Promise.resolve(); }; const lobs = []; if (results.rows) { if (Array.isArray(results.rows)) { - for(let i242 = 0; i242 < results.rows.length; i242++){ - const row = results.rows[i242]; + for(let i245 = 0; i245 < results.rows.length; i245++){ + const row = results.rows[i245]; for(const column in row){ if (row[column] instanceof stream.Readable) { lobs.push({ - index: i242, + index: i245, key: column, stream: row[column] }); @@ -58968,9 +61526,9 @@ Client_Oracledb.prototype.acquireRawConnection = function() { for (const lob of lobs){ results.rows[lob.index][lob.key] = await lobProcessing(lob.stream); } - } catch (e127) { + } catch (e128) { await closeResultSet().catch(()=>{}); - throw e127; + throw e128; } await closeResultSet(); return results; @@ -58986,13 +61544,13 @@ Client_Oracledb.prototype.destroyRawConnection = function(connection) { }; Client_Oracledb.prototype._query = function(connection, obj) { if (!obj.sql) throw new Error('The query is empty'); - const options95 = { + const options97 = { autoCommit: false }; if (obj.method === 'select') { - options95.resultSet = true; + options97.resultSet = true; } - return connection.executeAsync(obj.sql, obj.bindings, options95).then(async function(response) { + return connection.executeAsync(obj.sql, obj.bindings, options97).then(async function(response) { let outBinds = flatten2(response.outBinds); obj.response = response.rows || []; obj.rowsAffected = response.rows ? response.rows.rowsAffected : response.rowsAffected; @@ -59005,9 +61563,9 @@ Client_Oracledb.prototype._query = function(connection, obj) { const modifiedRowsCount = obj.rowsAffected.length || obj.rowsAffected; const updatedObjOutBinding = []; const updatedOutBinds = []; - const updateOutBinds = (i243)=>function(value, index) { + const updateOutBinds = (i246)=>function(value, index) { const OutBindsOffset = index * modifiedRowsCount; - updatedOutBinds.push(outBinds[i243 + OutBindsOffset]); + updatedOutBinds.push(outBinds[i246 + OutBindsOffset]); }; for(let i1100 = 0; i1100 < modifiedRowsCount; i1100++){ updatedObjOutBinding.push(obj.outBinding[0]); @@ -59068,24 +61626,24 @@ Client_Oracledb.prototype._query = function(connection, obj) { return obj; }); }; -function readStream(stream1, type70) { - return new Promise((resolve32, reject20)=>{ - let data75 = type70 === 'string' ? '' : Buffer.alloc(0); +function readStream(stream1, type63) { + return new Promise((resolve34, reject21)=>{ + let data78 = type63 === 'string' ? '' : Buffer.alloc(0); stream1.on('error', function(err) { - reject20(err); + reject21(err); }); - stream1.on('data', function(chunk38) { - if (type70 === 'string') { - data75 += chunk38; + stream1.on('data', function(chunk40) { + if (type63 === 'string') { + data78 += chunk40; } else { - data75 = Buffer.concat([ - data75, - chunk38 + data78 = Buffer.concat([ + data78, + chunk40 ]); } }); stream1.on('end', function() { - resolve32(data75); + resolve34(data78); }); }); } @@ -59123,35 +61681,35 @@ Client_Oracledb.prototype.processResponse = function(obj, runner) { }; const lobProcessing = function(stream2) { const oracledb = require('oracledb'); - let type71; + let type64; if (stream2.type) { if (stream2.type === oracledb.BLOB) { - type71 = 'buffer'; + type64 = 'buffer'; } else if (stream2.type === oracledb.CLOB) { - type71 = 'string'; + type64 = 'string'; } } else if (stream2.iLob) { if (stream2.iLob.type === oracledb.CLOB) { - type71 = 'string'; + type64 = 'string'; } else if (stream2.iLob.type === oracledb.BLOB) { - type71 = 'buffer'; + type64 = 'buffer'; } } else { throw new Error('Unrecognized oracledb lob stream type'); } - if (type71 === 'string') { + if (type64 === 'string') { stream2.setEncoding('utf-8'); } - return readStream(stream2, type71); + return readStream(stream2, type64); }; class Oracledb_Formatter extends Oracle_Formatter { - parameter(value481) { - if (typeof value481 === 'function') { - return this.outputQuery(this.compileCallback(value481), true); - } else if (value481 instanceof BlobHelper) { + parameter(value485) { + if (typeof value485 === 'function') { + return this.outputQuery(this.compileCallback(value485), true); + } else if (value485 instanceof BlobHelper) { return 'EMPTY_BLOB()'; } - return this.unwrapRaw(value481, true) || '?'; + return this.unwrapRaw(value485, true) || '?'; } } const identity3 = __default6.identity; @@ -59196,14 +61754,14 @@ class QueryCompiler_PG extends QueryCompiler { distinctParentheses: true }); } - _returning(value482) { - return value482 ? ` returning ${this.formatter.columnize(value482)}` : ''; + _returning(value486) { + return value486 ? ` returning ${this.formatter.columnize(value486)}` : ''; } _tableNames(tables) { const schemaName = this.single.schema; const sql = []; - for(let i244 = 0; i244 < tables.length; i244++){ - let tableName = tables[i244]; + for(let i247 = 0; i247 < tables.length; i247++){ + let tableName = tables[i247]; if (tableName) { if (schemaName) { tableName = `${schemaName}.${tableName}`; @@ -59262,8 +61820,8 @@ class QueryCompiler_PG extends QueryCompiler { } }; } - distinctOn(value483) { - return 'distinct on (' + this.formatter.columnize(value483) + ') '; + distinctOn(value487) { + return 'distinct on (' + this.formatter.columnize(value487) + ') '; } } const isObject7 = __default6.isObject; @@ -59284,17 +61842,17 @@ Object.assign(ColumnCompiler_PG.prototype, { return column.length !== false ? `bit(${column.length})` : 'bit'; }, bool: 'boolean', - enu (allowed, options96) { - options96 = options96 || {}; - const values53 = options96.useNative && options96.existingType ? undefined : allowed.join("', '"); - if (options96.useNative) { + enu (allowed, options98) { + options98 = options98 || {}; + const values53 = options98.useNative && options98.existingType ? undefined : allowed.join("', '"); + if (options98.useNative) { let enumName = ''; - const schemaName = options96.schemaName || this.tableCompiler.schemaNameRaw; + const schemaName = options98.schemaName || this.tableCompiler.schemaNameRaw; if (schemaName) { enumName += `"${schemaName}".`; } - enumName += `"${options96.enumName}"`; - if (!options96.existingType) { + enumName += `"${options98.enumName}"`; + if (!options98.existingType) { this.tableCompiler.unshiftQuery(`create type ${enumName} as enum ('${values53}')`); } return enumName; @@ -59379,7 +61937,7 @@ TableCompiler_PG.prototype.addColumns = function(columns, prefix, colCompilers) if (prefix === this.alterColumnsPrefix) { for (const col of colCompilers){ const quotedTableName = this.tableName(); - const type72 = col.getColumnType(); + const type65 = col.getColumnType(); const colName = this.client.wrapIdentifier(col.getColumnName(), col.columnBuilder.queryContext()); this.pushQuery({ sql: `alter table ${quotedTableName} alter column ${colName} drop default`, @@ -59390,7 +61948,7 @@ TableCompiler_PG.prototype.addColumns = function(columns, prefix, colCompilers) bindings: [] }); this.pushQuery({ - sql: `alter table ${quotedTableName} alter column ${colName} type ${type72} using (${colName}::${type72})`, + sql: `alter table ${quotedTableName} alter column ${colName} type ${type65} using (${colName}::${type65})`, bindings: [] }); const defaultTo = col.modified['defaultTo']; @@ -59558,8 +62116,8 @@ Object.assign(Client_PG.prototype, { escapeString (str119) { let hasBackslash = false; let escaped = "'"; - for(let i245 = 0; i245 < str119.length; i245++){ - const c57 = str119[i245]; + for(let i248 = 0; i248 < str119.length; i248++){ + const c57 = str119[i248]; if (c57 === "'") { escaped += c57 + c57; } else if (c57 === '\\') { @@ -59587,15 +62145,15 @@ Object.assign(Client_PG.prototype, { return JSON.stringify(val); } }), - wrapIdentifierImpl (value484) { - if (value484 === '*') return value484; + wrapIdentifierImpl (value488) { + if (value488 === '*') return value488; let arrayAccessor = ''; - const arrayAccessorMatch = value484.match(/(.*?)(\[[0-9]+\])/); + const arrayAccessorMatch = value488.match(/(.*?)(\[[0-9]+\])/); if (arrayAccessorMatch) { - value484 = arrayAccessorMatch[1]; + value488 = arrayAccessorMatch[1]; arrayAccessor = arrayAccessorMatch[2]; } - return `"${value484.replace(/"/g, '""')}"${arrayAccessor}`; + return `"${value488.replace(/"/g, '""')}"${arrayAccessor}`; }, acquireRawConnection () { const client = this; @@ -59648,37 +62206,37 @@ Object.assign(Client_PG.prototype, { }); }, setSchemaSearchPath (connection, searchPath1) { - let path130 = searchPath1 || this.searchPath; - if (!path130) return Promise.resolve(true); - if (!Array.isArray(path130) && !isString9(path130)) { - throw new TypeError(`knex: Expected searchPath to be Array/String, got: ${typeof path130}`); - } - if (isString9(path130)) { - if (path130.includes(',')) { - const parts6 = path130.split(','); + let path129 = searchPath1 || this.searchPath; + if (!path129) return Promise.resolve(true); + if (!Array.isArray(path129) && !isString9(path129)) { + throw new TypeError(`knex: Expected searchPath to be Array/String, got: ${typeof path129}`); + } + if (isString9(path129)) { + if (path129.includes(',')) { + const parts6 = path129.split(','); const arraySyntax = `[${parts6.map((searchPath)=>`'${searchPath}'`).join(', ')}]`; - this.logger.warn(`Detected comma in searchPath "${path130}".` + `If you are trying to specify multiple schemas, use Array syntax: ${arraySyntax}`); + this.logger.warn(`Detected comma in searchPath "${path129}".` + `If you are trying to specify multiple schemas, use Array syntax: ${arraySyntax}`); } - path130 = [ - path130 + path129 = [ + path129 ]; } - path130 = path130.map((schemaName)=>`"${schemaName}"`).join(','); + path129 = path129.map((schemaName)=>`"${schemaName}"`).join(','); return new Promise(function(resolver, rejecter) { - connection.query(`set search_path to ${path130}`, function(err) { + connection.query(`set search_path to ${path129}`, function(err) { if (err) return rejecter(err); resolver(true); }); }); }, - _stream (connection, obj, stream64, options97) { + _stream (connection, obj, stream64, options99) { const PGQueryStream = process.browser ? undefined : require('pg-query-stream'); const sql = obj.sql; return new Promise(function(resolver, rejecter) { - const queryStream = connection.query(new PGQueryStream(sql, obj.bindings, options97)); - queryStream.on('error', function(error50) { - rejecter(error50); - stream64.emit('error', error50); + const queryStream = connection.query(new PGQueryStream(sql, obj.bindings, options99)); + queryStream.on('error', function(error58) { + rejecter(error58); + stream64.emit('error', error58); }); stream64.on('end', resolver); queryStream.pipe(stream64); @@ -59712,12 +62270,12 @@ Object.assign(Client_PG.prototype, { } if (returning) { const returns = []; - for(let i246 = 0, l = resp.rows.length; i246 < l; i246++){ - const row = resp.rows[i246]; + for(let i249 = 0, l = resp.rows.length; i249 < l; i249++){ + const row = resp.rows[i249]; if (returning === '*' || Array.isArray(returning)) { - returns[i246] = row; + returns[i249] = row; } else { - returns[i246] = row[Object.keys(row)[0]]; + returns[i249] = row[Object.keys(row)[0]]; } } return returns; @@ -59749,9 +62307,9 @@ Object.assign(Client_PG.prototype, { }); function arrayString(arr, esc) { let result = '{'; - for(let i247 = 0; i247 < arr.length; i247++){ - if (i247 > 0) result += ','; - const val = arr[i247]; + for(let i250 = 0; i250 < arr.length; i250++){ + if (i250 > 0) result += ','; + const val = arr[i250]; if (val === null || typeof val === 'undefined') { result += 'NULL'; } else if (Array.isArray(val)) { @@ -59943,8 +62501,8 @@ TableCompiler_Redshift.prototype.primary = function(columns, constraintName) { } const thiscolumns = self.grouped.columns; if (thiscolumns) { - for(let i248 = 0; i248 < columns.length; i248++){ - let exists5 = thiscolumns.find((tcb)=>tcb.grouping === 'columns' && tcb.builder && tcb.builder._method === 'add' && tcb.builder._args && tcb.builder._args.indexOf(columns[i248]) > -1); + for(let i251 = 0; i251 < columns.length; i251++){ + let exists5 = thiscolumns.find((tcb)=>tcb.grouping === 'columns' && tcb.builder && tcb.builder._method === 'add' && tcb.builder._args && tcb.builder._args.indexOf(columns[i251]) > -1); if (exists5) { exists5 = exists5.builder; } @@ -60073,16 +62631,16 @@ class QueryCompiler_SQLite3 extends QueryCompiler { return sql + ` values (${parameters})`; } const blocks1 = []; - let i249 = -1; - while(++i249 < insertData.values.length){ - let i250 = -1; - const block = blocks1[i249] = []; - let current = insertData.values[i249]; + let i252 = -1; + while(++i252 < insertData.values.length){ + let i253 = -1; + const block = blocks1[i252] = []; + let current = insertData.values[i252]; current = current === undefined ? this.client.valueForUndefined : current; - while(++i250 < insertData.columns.length){ - block.push(this.formatter.alias(this.formatter.parameter(current[i250]), this.formatter.wrap(insertData.columns[i250]))); + while(++i253 < insertData.columns.length){ + block.push(this.formatter.alias(this.formatter.parameter(current[i253]), this.formatter.wrap(insertData.columns[i253]))); } - blocks1[i249] = block.join(', '); + blocks1[i252] = block.join(', '); } return sql + ' select ' + blocks1.join(' union all select '); } @@ -60105,14 +62663,14 @@ class QueryCompiler_SQLite3 extends QueryCompiler { output (resp) { const maxLengthRegex = /.*\((\d+)\)/; const out = reduce5(resp, function(columns, val) { - let { type: type73 } = val; - let maxLength = type73.match(maxLengthRegex); + let { type: type66 } = val; + let maxLength = type66.match(maxLengthRegex); if (maxLength) { maxLength = maxLength[1]; } - type73 = maxLength ? type73.split('(')[0] : type73; + type66 = maxLength ? type66.split('(')[0] : type66; columns[val.name] = { - type: type73.toLowerCase(), + type: type66.toLowerCase(), maxLength, nullable: !val.notnull, defaultValue: val.dflt_value @@ -60187,10 +62745,10 @@ TableCompiler_SQLite3.prototype.addColumns = function(columns, prefix) { if (prefix) { throw new Error('Sqlite does not support alter column.'); } - for(let i251 = 0, l = columns.sql.length; i251 < l; i251++){ + for(let i254 = 0, l = columns.sql.length; i254 < l; i254++){ this.pushQuery({ - sql: `alter table ${this.tableName()} add column ${columns.sql[i251]}`, - bindings: columns.bindings[i251] + sql: `alter table ${this.tableName()} add column ${columns.sql[i254]}`, + bindings: columns.bindings[i254] }); } }; @@ -60235,8 +62793,8 @@ TableCompiler_SQLite3.prototype.foreignKeys = function() { const foreignKeys = filter(this.grouped.alterTable || [], { method: 'foreign' }); - for(let i252 = 0, l = foreignKeys.length; i252 < l; i252++){ - const foreign = foreignKeys[i252].args[0]; + for(let i255 = 0, l = foreignKeys.length; i255 < l; i255++){ + const foreign = foreignKeys[i255].args[0]; const column = this.formatter.columnize(foreign.column); const references = this.formatter.columnize(foreign.references); const foreignTable = this.formatter.wrap(foreign.inTable); @@ -60289,11 +62847,11 @@ function SQLite3_DDL(client, tableCompiler, pragma, connection) { this.tableNameRaw = this.tableCompiler.tableNameRaw; this.alteredName = uniqueId2('_knex_temp_alter'); this.connection = connection; - this.formatter = client && client.config && client.config.wrapIdentifier ? client.config.wrapIdentifier : (value485)=>value485; + this.formatter = client && client.config && client.config.wrapIdentifier ? client.config.wrapIdentifier : (value489)=>value489; } assign3(SQLite3_DDL.prototype, { tableName () { - return this.formatter(this.tableNameRaw, (value486)=>value486); + return this.formatter(this.tableNameRaw, (value490)=>value490); }, getColumn: async function(column) { const currentCol = find(this.pragma, (col)=>{ @@ -60343,10 +62901,10 @@ assign3(SQLite3_DDL.prototype, { throw new Error('No column definitions in this statement!'); } let parens = 0, args83 = [], ptr = 0; - let i253 = 0; + let i256 = 0; const x21 = defs.length; - for(i253 = 0; i253 < x21; i253++){ - switch(defs[i253]){ + for(i256 = 0; i256 < x21; i256++){ + switch(defs[i256]){ case '(': parens++; break; @@ -60355,18 +62913,18 @@ assign3(SQLite3_DDL.prototype, { break; case ',': if (parens === 0) { - args83.push(defs.slice(ptr, i253)); - ptr = i253 + 1; + args83.push(defs.slice(ptr, i256)); + ptr = i256 + 1; } break; case ' ': - if (ptr === i253) { - ptr = i253 + 1; + if (ptr === i256) { + ptr = i256 + 1; } break; } } - args83.push(defs.slice(ptr, i253)); + args83.push(defs.slice(ptr, i256)); const fromIdentifier = from.replace(/[`"'[\]]/g, ''); args83 = args83.map((item)=>{ let split4 = item.trim().split(' '); @@ -60424,9 +62982,9 @@ assign3(SQLite3_DDL.prototype, { const column = await this.getColumn(from); const sql = await this.getTableSql(column); const a36 = this.client.wrapIdentifier(from); - const b34 = this.client.wrapIdentifier(to); + const b37 = this.client.wrapIdentifier(to); const createTable = sql[0]; - const newSql = this._doReplace(createTable.sql, a36, b34); + const newSql = this._doReplace(createTable.sql, a36, b37); if (sql === newSql) { throw new Error('Unable to find the column to change'); } @@ -60473,7 +63031,7 @@ class SQlite3_Formatter extends Formatter { values(values54) { if (Array.isArray(values54)) { if (Array.isArray(values54[0])) { - return `( values ${values54.map((value487)=>`(${this.parameterize(value487)})`).join(', ')})`; + return `( values ${values54.map((value491)=>`(${this.parameterize(value491)})`).join(', ')})`; } return `(${this.parameterize(values54)})`; } @@ -60514,16 +63072,16 @@ Object.assign(Client_SQLite3.prototype, { ddl (compiler, pragma, connection) { return new SQLite3_DDL(this, compiler, pragma, connection); }, - wrapIdentifierImpl (value488) { - return value488 !== '*' ? `\`${value488.replace(/`/g, '``')}\`` : '*'; + wrapIdentifierImpl (value492) { + return value492 !== '*' ? `\`${value492.replace(/`/g, '``')}\`` : '*'; }, acquireRawConnection () { - return new Promise((resolve33, reject21)=>{ + return new Promise((resolve35, reject22)=>{ const db = new this.driver.Database(this.connectionSettings.filename, (err)=>{ if (err) { - return reject21(err); + return reject22(err); } - resolve33(db); + resolve35(db); }); }); }, @@ -60749,8 +63307,8 @@ function normalCase(str122, locale, replacement) { return ""; } replacement = typeof replacement !== "string" ? " " : replacement; - function replace(match27, index, value489) { - if (index === 0 || index === value489.length - match27.length) { + function replace(match24, index, value493) { + if (index === 0 || index === value493.length - match24.length) { return ""; } return replacement; @@ -60758,8 +63316,8 @@ function normalCase(str122, locale, replacement) { str122 = String(str122).replace(camelCaseRegexp, "$1 $2").replace(camelCaseUpperRegexp, "$1 $2").replace(nonWordRegexp, replace); return __default26(str122, locale); } -function camelCase(value490, locale, mergeNumbers) { - let result = normalCase(value490, locale); +function camelCase(value494, locale, mergeNumbers) { + let result = normalCase(value494, locale); if (!mergeNumbers) { result = result.replace(/ (?=\d)/g, "_"); } @@ -60767,8 +63325,8 @@ function camelCase(value490, locale, mergeNumbers) { return __default25($1, locale); }); } -function snakeCase(value491, locale) { - return normalCase(value491, locale, "_"); +function snakeCase(value495, locale) { + return normalCase(value495, locale, "_"); } class ConnnectionError extends Error { constructor(msg38){ @@ -60795,24 +63353,24 @@ class ProtocolError extends ConnnectionError { super(msg42); } } -function deferred() { +function deferred1() { let methods4; - let state60 = "pending"; - const promise = new Promise((resolve34, reject22)=>{ + let state61 = "pending"; + const promise = new Promise((resolve36, reject23)=>{ methods4 = { - async resolve (value492) { - await value492; - state60 = "fulfilled"; - resolve34(value492); + async resolve (value496) { + await value496; + state61 = "fulfilled"; + resolve36(value496); }, reject (reason) { - state60 = "rejected"; - reject22(reason); + state61 = "rejected"; + reject23(reason); } }; }); Object.defineProperty(promise, "state", { - get: ()=>state60 + get: ()=>state61 }); return Object.assign(promise, methods4); } @@ -60837,16 +63395,16 @@ new RegExp([ "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))", ].join("|"), "g"); -function format13(data76) { - const bytes22 = new Uint8Array(data76.buffer); +function format13(data79) { + const bytes23 = new Uint8Array(data79.buffer); let out = " +-------------------------------------------------+\n"; out += ` |${green3(" 0 1 2 3 4 5 6 7 8 9 a b c d e f ")}|\n`; out += "+--------+-------------------------------------------------+----------------+\n"; - const lineCount = Math.ceil(bytes22.length / 16); + const lineCount = Math.ceil(bytes23.length / 16); for(let line = 0; line < lineCount; line++){ - const start58 = line * 16; - const addr = start58.toString(16).padStart(8, "0"); - const lineBytes = bytes22.slice(start58, start58 + 16); + const start59 = line * 16; + const addr = start59.toString(16).padStart(8, "0"); + const lineBytes = bytes23.slice(start59, start59 + 16); out += `|${green3(addr)}| `; lineBytes.forEach((__byte)=>out += __byte.toString(16).padStart(2, "0") + " "); if (lineBytes.length < 16) { @@ -60864,7 +63422,7 @@ function format13(data76) { out += "+--------+-------------------------------------------------+----------------+"; return out; } -const base64abc2 = [ +const base64abc4 = [ "A", "B", "C", @@ -60930,25 +63488,25 @@ const base64abc2 = [ "+", "/" ]; -function encode6(data77) { - const uint8 = typeof data77 === "string" ? new TextEncoder().encode(data77) : data77 instanceof Uint8Array ? data77 : new Uint8Array(data77); - let result = "", i254; +function encode8(data80) { + const uint8 = typeof data80 === "string" ? new TextEncoder().encode(data80) : data80 instanceof Uint8Array ? data80 : new Uint8Array(data80); + let result = "", i257; const l = uint8.length; - for(i254 = 2; i254 < l; i254 += 3){ - result += base64abc2[uint8[i254 - 2] >> 2]; - result += base64abc2[(uint8[i254 - 2] & 0x03) << 4 | uint8[i254 - 1] >> 4]; - result += base64abc2[(uint8[i254 - 1] & 0x0f) << 2 | uint8[i254] >> 6]; - result += base64abc2[uint8[i254] & 0x3f]; - } - if (i254 === l + 1) { - result += base64abc2[uint8[i254 - 2] >> 2]; - result += base64abc2[(uint8[i254 - 2] & 0x03) << 4]; + for(i257 = 2; i257 < l; i257 += 3){ + result += base64abc4[uint8[i257 - 2] >> 2]; + result += base64abc4[(uint8[i257 - 2] & 0x03) << 4 | uint8[i257 - 1] >> 4]; + result += base64abc4[(uint8[i257 - 1] & 0x0f) << 2 | uint8[i257] >> 6]; + result += base64abc4[uint8[i257] & 0x3f]; + } + if (i257 === l + 1) { + result += base64abc4[uint8[i257 - 2] >> 2]; + result += base64abc4[(uint8[i257 - 2] & 0x03) << 4]; result += "=="; } - if (i254 === l) { - result += base64abc2[uint8[i254 - 2] >> 2]; - result += base64abc2[(uint8[i254 - 2] & 0x03) << 4 | uint8[i254 - 1] >> 4]; - result += base64abc2[(uint8[i254 - 1] & 0x0f) << 2]; + if (i257 === l) { + result += base64abc4[uint8[i257 - 2] >> 2]; + result += base64abc4[(uint8[i257 - 2] & 0x03) << 4 | uint8[i257 - 1] >> 4]; + result += base64abc4[(uint8[i257 - 1] & 0x0f) << 2]; result += "="; } return result; @@ -60956,23 +63514,23 @@ function encode6(data77) { function decode7(b64) { const binString = atob(b64); const size = binString.length; - const bytes23 = new Uint8Array(size); - for(let i255 = 0; i255 < size; i255++){ - bytes23[i255] = binString.charCodeAt(i255); + const bytes24 = new Uint8Array(size); + for(let i258 = 0; i258 < size; i258++){ + bytes24[i258] = binString.charCodeAt(i258); } - return bytes23; + return bytes24; } let cachedTextDecoder1 = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }); cachedTextDecoder1.decode(); -let cachegetUint8Memory01 = null; +let cachegetUint8Memory0 = null; function getUint8Memory01() { - if (cachegetUint8Memory01 === null || cachegetUint8Memory01.buffer !== wasm1.memory.buffer) { - cachegetUint8Memory01 = new Uint8Array(wasm1.memory.buffer); + if (cachegetUint8Memory0 === null || cachegetUint8Memory0.buffer !== wasm1.memory.buffer) { + cachegetUint8Memory0 = new Uint8Array(wasm1.memory.buffer); } - return cachegetUint8Memory01; + return cachegetUint8Memory0; } function getStringFromWasm01(ptr, len64) { return cachedTextDecoder1.decode(getUint8Memory01().subarray(ptr, ptr + len64)); @@ -61018,9 +63576,9 @@ function passStringToWasm01(arg, malloc, realloc) { const mem2 = getUint8Memory01(); let offset124 = 0; for(; offset124 < len65; offset124++){ - const code81 = arg.charCodeAt(offset124); - if (code81 > 0x7F) break; - mem2[ptr + offset124] = code81; + const code82 = arg.charCodeAt(offset124); + if (code82 > 0x7F) break; + mem2[ptr + offset124] = code82; } if (offset124 !== len65) { if (offset124 !== 0) { @@ -61052,18 +63610,18 @@ function passArray8ToWasm0(arg, malloc) { WASM_VECTOR_LEN1 = arg.length; return ptr; } -function update_hash(hash7, data78) { +function update_hash(hash7, data81) { _assertClass(hash7, DenoHash); - var ptr0 = passArray8ToWasm0(data78, wasm1.__wbindgen_malloc); + var ptr0 = passArray8ToWasm0(data81, wasm1.__wbindgen_malloc); var len0 = WASM_VECTOR_LEN1; wasm1.update_hash(hash7.ptr, ptr0, len0); } -let cachegetInt32Memory01 = null; +let cachegetInt32Memory0 = null; function getInt32Memory01() { - if (cachegetInt32Memory01 === null || cachegetInt32Memory01.buffer !== wasm1.memory.buffer) { - cachegetInt32Memory01 = new Int32Array(wasm1.memory.buffer); + if (cachegetInt32Memory0 === null || cachegetInt32Memory0.buffer !== wasm1.memory.buffer) { + cachegetInt32Memory0 = new Int32Array(wasm1.memory.buffer); } - return cachegetInt32Memory01; + return cachegetInt32Memory0; } function getArrayU8FromWasm01(ptr, len66) { return getUint8Memory01().subarray(ptr / 1, ptr / 1 + len66); @@ -61115,7 +63673,7 @@ const imports1 = { } } }; -const wasmModule1 = new WebAssembly.Module(decode7("AGFzbQEAAAAB64CAgAAQYAAAYAF/AGABfwF/YAF/AX5gAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH\ +const wasmModule = new WebAssembly.Module(decode7("AGFzbQEAAAAB64CAgAAQYAAAYAF/AGABfwF/YAF/AX5gAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH\ 9/f38Bf2AFf39/f38AYAV/f39/fwF/YAZ/f39/f38Bf2AFf39/fn8AYAd/f39+f39/AX9gAn9+AGAC\ fn8BfwKMgYCAAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFV9fd2JpbmRnZW5fc3RyaW5nX25ldw\ AFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxBfX3diaW5kZ2VuX3Rocm93AAQYX193YmluZGdlbl9w\ @@ -63366,15 +65924,15 @@ dGQ6OmFsbG9jOjpkZWZhdWx0X2FsbG9jX2Vycm9yX2hvb2s6OmgwZWNjZGFjMjRmZGEzNzhmxgFvY2\ ZWQ8Y29yZTo6c2xpY2U6Oml0ZXI6Okl0ZXI8dTg+Pj46OmhmN2JkMDQzN2MzZTg4NjM5AO+AgIAACX\ Byb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS41NC4wIChhMTc4\ ZDAzMjIgMjAyMS0wNy0yNikGd2FscnVzBjAuMTkuMAx3YXNtLWJpbmRnZW4GMC4yLjc0")); -const wasmInstance1 = new WebAssembly.Instance(wasmModule1, imports1); -const wasm1 = wasmInstance1.exports; +const wasmInstance = new WebAssembly.Instance(wasmModule, imports1); +const wasm1 = wasmInstance.exports; const hexTable1 = new TextEncoder().encode("0123456789abcdef"); -function encode7(src) { +function encode9(src) { const dst = new Uint8Array(src.length * 2); - for(let i256 = 0; i256 < dst.length; i256++){ - const v30 = src[i256]; - dst[i256 * 2] = hexTable1[v30 >> 4]; - dst[i256 * 2 + 1] = hexTable1[v30 & 0x0f]; + for(let i259 = 0; i259 < dst.length; i259++){ + const v37 = src[i259]; + dst[i259 * 2] = hexTable1[v37 >> 4]; + dst[i259 * 2 + 1] = hexTable1[v37 & 0x0f]; } return dst; } @@ -63413,9 +65971,9 @@ class Hash { const finalized = new Uint8Array(this.digest()); switch(format21){ case "hex": - return new TextDecoder().decode(encode7(finalized)); + return new TextDecoder().decode(encode9(finalized)); case "base64": - return encode6(finalized); + return encode8(finalized); default: throw new Error("hash: invalid format"); } @@ -63499,7 +66057,7 @@ var LogLevels1; LogLevels3[LogLevels3["ERROR"] = 40] = "ERROR"; LogLevels3[LogLevels3["CRITICAL"] = 50] = "CRITICAL"; })(LogLevels1 || (LogLevels1 = {})); -Object.keys(LogLevels1).filter((key150)=>isNaN(Number(key150))); +Object.keys(LogLevels1).filter((key152)=>isNaN(Number(key152))); const byLevel1 = { [String(LogLevels1.NOTSET)]: "NOTSET", [String(LogLevels1.DEBUG)]: "DEBUG", @@ -63540,15 +66098,15 @@ class LogRecord1 { level; levelName; loggerName; - constructor(options98){ - this.msg = options98.msg; + constructor(options100){ + this.msg = options100.msg; this.#args = [ - ...options98.args + ...options100.args ]; - this.level = options98.level; - this.loggerName = options98.loggerName; + this.level = options100.level; + this.loggerName = options100.loggerName; this.#datetime = new Date(); - this.levelName = getLevelName1(options98.level); + this.levelName = getLevelName1(options100.level); } get args() { return [ @@ -63563,10 +66121,10 @@ class Logger2 { #level; #handlers; #loggerName; - constructor(loggerName, levelName, options99 = {}){ + constructor(loggerName, levelName, options101 = {}){ this.#loggerName = loggerName; this.#level = getLevelByName1(levelName); - this.#handlers = options99.handlers || []; + this.#handlers = options101.handlers || []; } get level() { return this.#level; @@ -63612,15 +66170,15 @@ class Logger2 { }); return msg43 instanceof Function ? fnResult : msg43; } - asString(data79) { - if (typeof data79 === "string") { - return data79; - } else if (data79 === null || typeof data79 === "number" || typeof data79 === "bigint" || typeof data79 === "boolean" || typeof data79 === "undefined" || typeof data79 === "symbol") { - return String(data79); - } else if (data79 instanceof Error) { - return data79.stack; - } else if (typeof data79 === "object") { - return JSON.stringify(data79); + asString(data82) { + if (typeof data82 === "string") { + return data82; + } else if (data82 === null || typeof data82 === "number" || typeof data82 === "bigint" || typeof data82 === "boolean" || typeof data82 === "undefined" || typeof data82 === "symbol") { + return String(data82); + } else if (data82 instanceof Error) { + return data82.stack; + } else if (typeof data82 === "object") { + return JSON.stringify(data82); } return "undefined"; } @@ -63640,8 +66198,8 @@ class Logger2 { return this._log(LogLevels1.CRITICAL, msg48, ...args89); } } -const { Deno: Deno1 } = globalThis; -const noColor2 = typeof Deno1?.noColor === "boolean" ? Deno1.noColor : true; +const { Deno: Deno2 } = globalThis; +const noColor2 = typeof Deno2?.noColor === "boolean" ? Deno2.noColor : true; let enabled2 = !noColor2; function code2(open, close) { return { @@ -63714,17 +66272,17 @@ class DenoStdInternalError4 extends Error { this.name = "DenoStdInternalError"; } } -function assert7(expr, msg49 = "") { +function assert8(expr, msg49 = "") { if (!expr) { throw new DenoStdInternalError4(msg49); } } -var DiffType1; -(function(DiffType4) { - DiffType4["removed"] = "removed"; - DiffType4["common"] = "common"; - DiffType4["added"] = "added"; -})(DiffType1 || (DiffType1 = {})); +var DiffType2; +(function(DiffType6) { + DiffType6["removed"] = "removed"; + DiffType6["common"] = "common"; + DiffType6["added"] = "added"; +})(DiffType2 || (DiffType2 = {})); async function writeAll1(w33, arr) { let nwritten = 0; while(nwritten < arr.length){ @@ -63787,13 +66345,13 @@ class BufReader5 { if (this.w >= this.buf.byteLength) { throw Error("bufio: tried to fill full buffer"); } - for(let i257 = 100; i257 > 0; i257--){ + for(let i260 = 100; i260 > 0; i260--){ const rr = await this.rd.read(this.buf.subarray(this.w)); if (rr === null) { this.eof = true; return; } - assert7(rr >= 0, "negative read"); + assert8(rr >= 0, "negative read"); this.w += rr; if (rr > 0) { return; @@ -63809,32 +66367,32 @@ class BufReader5 { this.rd = rd; this.eof = false; } - async read(p53) { - let rr = p53.byteLength; - if (p53.byteLength === 0) return rr; + async read(p54) { + let rr = p54.byteLength; + if (p54.byteLength === 0) return rr; if (this.r === this.w) { - if (p53.byteLength >= this.buf.byteLength) { - const rr = await this.rd.read(p53); + if (p54.byteLength >= this.buf.byteLength) { + const rr = await this.rd.read(p54); const nread = rr ?? 0; - assert7(nread >= 0, "negative read"); + assert8(nread >= 0, "negative read"); return rr; } this.r = 0; this.w = 0; rr = await this.rd.read(this.buf); if (rr === 0 || rr === null) return rr; - assert7(rr >= 0, "negative read"); + assert8(rr >= 0, "negative read"); this.w += rr; } - const copied = copy4(this.buf.subarray(this.r, this.w), p53, 0); + const copied = copy4(this.buf.subarray(this.r, this.w), p54, 0); this.r += copied; return copied; } - async readFull(p54) { + async readFull(p55) { let bytesRead = 0; - while(bytesRead < p54.length){ + while(bytesRead < p55.length){ try { - const rr = await this.read(p54.subarray(bytesRead)); + const rr = await this.read(p55.subarray(bytesRead)); if (rr === null) { if (bytesRead === 0) { return null; @@ -63844,11 +66402,11 @@ class BufReader5 { } bytesRead += rr; } catch (err) { - err.partial = p54.subarray(0, bytesRead); + err.partial = p55.subarray(0, bytesRead); throw err; } } - return p54; + return p55; } async readByte() { while(this.r === this.w){ @@ -63876,12 +66434,12 @@ class BufReader5 { throw err; } let { partial } = err; - assert7(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + assert8(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); if (!(err instanceof BufferFullError5)) { throw err; } if (!this.eof && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR6) { - assert7(this.r > 0, "bufio: tried to rewind past start of buffer"); + assert8(this.r > 0, "bufio: tried to rewind past start of buffer"); this.r--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -63915,11 +66473,11 @@ class BufReader5 { let s55 = 0; let slice; while(true){ - let i258 = this.buf.subarray(this.r + s55, this.w).indexOf(delim); - if (i258 >= 0) { - i258 += s55; - slice = this.buf.subarray(this.r, this.r + i258 + 1); - this.r += i258 + 1; + let i261 = this.buf.subarray(this.r + s55, this.w).indexOf(delim); + if (i261 >= 0) { + i261 += s55; + slice = this.buf.subarray(this.r, this.r + i261 + 1); + this.r += i261 + 1; break; } if (this.eof) { @@ -63947,12 +66505,12 @@ class BufReader5 { } return slice; } - async peek(n146) { - if (n146 < 0) { + async peek(n147) { + if (n147 < 0) { throw Error("negative count"); } let avail = this.w - this.r; - while(avail < n146 && avail < this.buf.byteLength && !this.eof){ + while(avail < n147 && avail < this.buf.byteLength && !this.eof){ try { await this._fill(); } catch (err) { @@ -63963,12 +66521,12 @@ class BufReader5 { } if (avail === 0 && this.eof) { return null; - } else if (avail < n146 && this.eof) { + } else if (avail < n147 && this.eof) { return this.buf.subarray(this.r, this.r + avail); - } else if (avail < n146) { + } else if (avail < n147) { throw new BufferFullError5(this.buf.subarray(this.r, this.w)); } - return this.buf.subarray(this.r, this.r + n146); + return this.buf.subarray(this.r, this.r + n147); } } class AbstractBufBase4 { @@ -64007,35 +66565,35 @@ class BufWriter4 extends AbstractBufBase4 { if (this.usedBufferBytes === 0) return; try { await writeAll1(this.writer, this.buf.subarray(0, this.usedBufferBytes)); - } catch (e128) { - this.err = e128; - throw e128; + } catch (e129) { + this.err = e129; + throw e129; } this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - async write(data80) { + async write(data83) { if (this.err !== null) throw this.err; - if (data80.length === 0) return 0; + if (data83.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data80.byteLength > this.available()){ + while(data83.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = await this.writer.write(data80); - } catch (e129) { - this.err = e129; - throw e129; + numBytesWritten = await this.writer.write(data83); + } catch (e130) { + this.err = e130; + throw e130; } } else { - numBytesWritten = copy4(data80, this.buf, this.usedBufferBytes); + numBytesWritten = copy4(data83, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; await this.flush(); } totalBytesWritten += numBytesWritten; - data80 = data80.subarray(numBytesWritten); + data83 = data83.subarray(numBytesWritten); } - numBytesWritten = copy4(data80, this.buf, this.usedBufferBytes); + numBytesWritten = copy4(data83, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -64064,35 +66622,35 @@ class BufWriterSync4 extends AbstractBufBase4 { if (this.usedBufferBytes === 0) return; try { writeAllSync(this.writer, this.buf.subarray(0, this.usedBufferBytes)); - } catch (e130) { - this.err = e130; - throw e130; + } catch (e131) { + this.err = e131; + throw e131; } this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - writeSync(data81) { + writeSync(data84) { if (this.err !== null) throw this.err; - if (data81.length === 0) return 0; + if (data84.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data81.byteLength > this.available()){ + while(data84.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = this.writer.writeSync(data81); - } catch (e131) { - this.err = e131; - throw e131; + numBytesWritten = this.writer.writeSync(data84); + } catch (e132) { + this.err = e132; + throw e132; } } else { - numBytesWritten = copy4(data81, this.buf, this.usedBufferBytes); + numBytesWritten = copy4(data84, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; this.flush(); } totalBytesWritten += numBytesWritten; - data81 = data81.subarray(numBytesWritten); + data84 = data84.subarray(numBytesWritten); } - numBytesWritten = copy4(data81, this.buf, this.usedBufferBytes); + numBytesWritten = copy4(data84, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -64104,10 +66662,10 @@ class BaseHandler1 { level; levelName; formatter; - constructor(levelName, options100 = {}){ + constructor(levelName, options102 = {}){ this.level = getLevelByName1(levelName); this.levelName = levelName; - this.formatter = options100.formatter || DEFAULT_FORMATTER1; + this.formatter = options102.formatter || DEFAULT_FORMATTER1; } handle(logRecord) { if (this.level > logRecord.level) return; @@ -64118,12 +66676,12 @@ class BaseHandler1 { if (this.formatter instanceof Function) { return this.formatter(logRecord); } - return this.formatter.replace(/{(\S+)}/g, (match28, p113)=>{ - const value493 = logRecord[p113]; - if (value493 == null) { - return match28; + return this.formatter.replace(/{(\S+)}/g, (match25, p113)=>{ + const value497 = logRecord[p113]; + if (value497 == null) { + return match25; } - return String(value493); + return String(value497); }); } log(_msg) {} @@ -64169,10 +66727,10 @@ class FileHandler1 extends WriterHandler1 { #unloadCallback() { this.destroy(); } - constructor(levelName, options101){ - super(levelName, options101); - this._filename = options101.filename; - this._mode = options101.mode ? options101.mode : "a"; + constructor(levelName, options103){ + super(levelName, options103); + this._filename = options103.filename; + this._mode = options103.mode ? options103.mode : "a"; this._openOptions = { createNew: this._mode === "x", create: this._mode !== "x", @@ -64213,10 +66771,10 @@ class RotatingFileHandler1 extends FileHandler1 { #maxBytes; #maxBackupCount; #currentFileSize = 0; - constructor(levelName, options102){ - super(levelName, options102); - this.#maxBytes = options102.maxBytes; - this.#maxBackupCount = options102.maxBackupCount; + constructor(levelName, options104){ + super(levelName, options104); + this.#maxBytes = options104.maxBytes; + this.#maxBackupCount = options104.maxBackupCount; } async setup() { if (this.#maxBytes < 1) { @@ -64229,16 +66787,16 @@ class RotatingFileHandler1 extends FileHandler1 { } await super.setup(); if (this._mode === "w") { - for(let i259 = 1; i259 <= this.#maxBackupCount; i259++){ - if (await exists2(this._filename + "." + i259)) { - await Deno.remove(this._filename + "." + i259); + for(let i262 = 1; i262 <= this.#maxBackupCount; i262++){ + if (await exists2(this._filename + "." + i262)) { + await Deno.remove(this._filename + "." + i262); } } } else if (this._mode === "x") { - for(let i260 = 1; i260 <= this.#maxBackupCount; i260++){ - if (await exists2(this._filename + "." + i260)) { + for(let i263 = 1; i263 <= this.#maxBackupCount; i263++){ + if (await exists2(this._filename + "." + i263)) { this.destroy(); - throw new Deno.errors.AlreadyExists("Backup log file " + this._filename + "." + i260 + " already exists"); + throw new Deno.errors.AlreadyExists("Backup log file " + this._filename + "." + i263 + " already exists"); } } } else { @@ -64257,9 +66815,9 @@ class RotatingFileHandler1 extends FileHandler1 { rotateLogFiles() { this._buf.flush(); Deno.close(this._file.rid); - for(let i261 = this.#maxBackupCount - 1; i261 >= 0; i261--){ - const source = this._filename + (i261 === 0 ? "" : "." + i261); - const dest = this._filename + "." + (i261 + 1); + for(let i264 = this.#maxBackupCount - 1; i264 >= 0; i264--){ + const source = this._filename + (i264 === 0 ? "" : "." + i264); + const dest = this._filename + "." + (i264 + 1); if (existsSync1(source)) { Deno.renameSync(source, dest); } @@ -64302,7 +66860,7 @@ const handlers1 = { function getLogger1(name68) { if (!name68) { const d18 = state1.loggers.get("default"); - assert7(d18 != null, `"default" logger must be set for getting logger without name`); + assert8(d18 != null, `"default" logger must be set for getting logger without name`); return d18; } const result = state1.loggers.get(name68); @@ -64386,7 +66944,7 @@ async function setup1(config) { } } await setup1(DEFAULT_CONFIG2); -const mod28 = await async function() { +const mod27 = await async function() { return { LogLevels: LogLevels1, Logger: Logger2, @@ -64401,7 +66959,7 @@ const mod28 = await async function() { setup: setup1 }; }(); -let logger = mod28.getLogger(); +let logger = mod27.getLogger(); let isDebug = false; function debug8(func) { if (isDebug) { @@ -64413,13 +66971,13 @@ async function configLogger(config) { if (config.logger) level4 = config.logger.levelName; isDebug = level4 == "DEBUG"; if (!enable) { - logger = new mod28.Logger("fakeLogger", "NOTSET", {}); + logger = new mod27.Logger("fakeLogger", "NOTSET", {}); logger.level = 100; } else { if (!config.logger) { - await mod28.setup({ + await mod27.setup({ handlers: { - console: new mod28.handlers.ConsoleHandler(level4) + console: new mod27.handlers.ConsoleHandler(level4) }, loggers: { default: { @@ -64430,20 +66988,20 @@ async function configLogger(config) { } } }); - logger = mod28.getLogger(); + logger = mod27.getLogger(); } else { logger = config.logger; } } } -function xor(a38, b35) { +function xor(a38, b38) { return a38.map((__byte, index)=>{ - return __byte ^ b35[index]; + return __byte ^ b38[index]; }); } const encoder8 = new TextEncoder(); const decoder5 = new TextDecoder(); -function encode8(input) { +function encode10(input) { return encoder8.encode(input); } function decode8(input) { @@ -64469,8 +67027,8 @@ class BufferReader { } readUints(len69) { let num = 0; - for(let n147 = 0; n147 < len69; n147++){ - num += this.buffer[this.pos++] << 8 * n147; + for(let n148 = 0; n148 < len69; n148++){ + num += this.buffer[this.pos++] << 8 * n148; } return num; } @@ -64567,8 +67125,8 @@ class BufferWriter { return this.writeUints(8, num); } writeUints(len73, num) { - for(let n148 = 0; n148 < len73; n148++){ - this.buffer[this.pos++] = num >> n148 * 8 & 0xff; + for(let n149 = 0; n149 < len73; n149++){ + this.buffer[this.pos++] = num >> n149 * 8 & 0xff; } return this; } @@ -64576,18 +67134,18 @@ class BufferWriter { return this.writeString(str133).write(0x00); } writeString(str134) { - const buf = encode8(str134); + const buf = encode10(str134); this.buffer.set(buf, this.pos); this.pos += buf.length; return this; } buffer; } -function hash(algorithm, data82) { - return new Uint8Array(createHash(algorithm).update(data82).digest()); +function hash(algorithm, data85) { + return new Uint8Array(createHash(algorithm).update(data85).digest()); } function mysqlNativePassword(password1, seed) { - const pwd1 = hash("sha1", encode8(password1)); + const pwd1 = hash("sha1", encode10(password1)); const pwd2 = hash("sha1", pwd1); let seedAndPwd2 = new Uint8Array(seed.length + pwd2.length); seedAndPwd2.set(seed); @@ -64596,7 +67154,7 @@ function mysqlNativePassword(password1, seed) { return xor(seedAndPwd2, pwd1); } function cachingSha2Password(password2, seed) { - const stage1 = hash("sha256", encode8(password2)); + const stage1 = hash("sha256", encode10(password2)); const stage2 = hash("sha256", stage1); const stage3 = hash("sha256", Uint8Array.from([ ...stage2, @@ -64923,10 +67481,10 @@ function buildAuth(packet, params) { return Uint8Array.from([]); } function buildQuery(sql, params = []) { - const data83 = encode8(replaceParams(sql, params)); - const writer = new BufferWriter(new Uint8Array(data83.length + 1)); + const data86 = encode10(replaceParams(sql, params)); + const writer = new BufferWriter(new Uint8Array(data86.length + 1)); writer.write(0x03); - writer.writeBuffer(data83); + writer.writeBuffer(data86); return writer.buffer; } var PacketType; @@ -64947,18 +67505,18 @@ class SendPacket { } async send(conn) { const body = this.body; - const data84 = new BufferWriter(new Uint8Array(4 + body.length)); - data84.writeUints(3, this.header.size); - data84.write(this.header.no); - data84.writeBuffer(body); - logger.debug(`send: ${data84.length}B \n${format13(data84.buffer)}\n`); + const data87 = new BufferWriter(new Uint8Array(4 + body.length)); + data87.writeUints(3, this.header.size); + data87.write(this.header.no); + data87.writeBuffer(body); + logger.debug(`send: ${data87.length}B \n${format13(data87.buffer)}\n`); try { let wrote = 0; do { - wrote += await conn.write(data84.buffer.subarray(wrote)); - }while (wrote < data84.length) - } catch (error51) { - throw new WriteError(error51.message); + wrote += await conn.write(data87.buffer.subarray(wrote)); + }while (wrote < data87.length) + } catch (error59) { + throw new WriteError(error59.message); } } body; @@ -64967,10 +67525,10 @@ class ReceivePacket { header; body; type; - async parse(reader3) { + async parse(reader4) { const header = new BufferReader(new Uint8Array(4)); let readCount = 0; - let nread = await this.read(reader3, header.buffer); + let nread = await this.read(reader4, header.buffer); if (nread === null) return null; readCount = nread; const bodySize = header.readUints(3); @@ -64979,7 +67537,7 @@ class ReceivePacket { no: header.readUint8() }; this.body = new BufferReader(new Uint8Array(bodySize)); - nread = await this.read(reader3, this.body.buffer); + nread = await this.read(reader4, this.body.buffer); if (nread === null) return null; readCount += nread; const { OK_Packet , ERR_Packet , EOF_Packet , Result } = PacketType; @@ -64998,61 +67556,61 @@ class ReceivePacket { break; } debug8(()=>{ - const data85 = new Uint8Array(readCount); - data85.set(header.buffer); - data85.set(this.body.buffer, 4); - logger.debug(`receive: ${readCount}B, size = ${this.header.size}, no = ${this.header.no} \n${format13(data85)}\n`); + const data88 = new Uint8Array(readCount); + data88.set(header.buffer); + data88.set(this.body.buffer, 4); + logger.debug(`receive: ${readCount}B, size = ${this.header.size}, no = ${this.header.no} \n${format13(data88)}\n`); }); return this; } - async read(reader4, buffer40) { + async read(reader5, buffer40) { const size = buffer40.length; let haveRead = 0; while(haveRead < size){ - const nread = await reader4.read(buffer40.subarray(haveRead)); + const nread = await reader5.read(buffer40.subarray(haveRead)); if (nread === null) return null; haveRead += nread; } return haveRead; } } -function parseError(reader5, conn) { - const code82 = reader5.readUint16(); +function parseError(reader6, conn) { + const code83 = reader6.readUint16(); const packet = { - code: code82, + code: code83, message: "" }; if (conn.capabilities & ServerCapabilities.CLIENT_PROTOCOL_41) { - packet.sqlStateMarker = reader5.readUint8(); - packet.sqlState = reader5.readUints(5); + packet.sqlStateMarker = reader6.readUint8(); + packet.sqlState = reader6.readUints(5); } - packet.message = reader5.readNullTerminatedString(); + packet.message = reader6.readNullTerminatedString(); return packet; } -function parseHandshake(reader6) { - const protocolVersion = reader6.readUint8(); - const serverVersion = reader6.readNullTerminatedString(); - const threadId = reader6.readUint32(); +function parseHandshake(reader7) { + const protocolVersion = reader7.readUint8(); + const serverVersion = reader7.readNullTerminatedString(); + const threadId = reader7.readUint32(); const seedWriter = new BufferWriter(new Uint8Array(20)); - seedWriter.writeBuffer(reader6.readBuffer(8)); - reader6.skip(1); - let serverCapabilities = reader6.readUint16(); + seedWriter.writeBuffer(reader7.readBuffer(8)); + reader7.skip(1); + let serverCapabilities = reader7.readUint16(); let characterSet = 0, statusFlags = 0, authPluginDataLength = 0, authPluginName = ""; - if (!reader6.finished) { - characterSet = reader6.readUint8(); - statusFlags = reader6.readUint16(); - serverCapabilities |= reader6.readUint16() << 16; + if (!reader7.finished) { + characterSet = reader7.readUint8(); + statusFlags = reader7.readUint16(); + serverCapabilities |= reader7.readUint16() << 16; if ((serverCapabilities & ServerCapabilities.CLIENT_PLUGIN_AUTH) != 0) { - authPluginDataLength = reader6.readUint8(); + authPluginDataLength = reader7.readUint8(); } else { - reader6.skip(1); + reader7.skip(1); } - reader6.skip(10); + reader7.skip(10); if ((serverCapabilities & ServerCapabilities.CLIENT_SECURE_CONNECTION) != 0) { - seedWriter.writeBuffer(reader6.readBuffer(Math.max(13, authPluginDataLength - 8))); + seedWriter.writeBuffer(reader7.readBuffer(Math.max(13, authPluginDataLength - 8))); } if ((serverCapabilities & ServerCapabilities.CLIENT_PLUGIN_AUTH) != 0) { - authPluginName = reader6.readNullTerminatedString(); + authPluginName = reader7.readNullTerminatedString(); } } return { @@ -65084,21 +67642,21 @@ function parseAuth(packet) { return AuthResult.AuthPassed; } } -function parseField(reader7) { - const catalog = reader7.readLenCodeString(); - const schema = reader7.readLenCodeString(); - const table = reader7.readLenCodeString(); - const originTable = reader7.readLenCodeString(); - const name69 = reader7.readLenCodeString(); - const originName = reader7.readLenCodeString(); - reader7.skip(1); - const encoding = reader7.readUint16(); - const fieldLen = reader7.readUint32(); - const fieldType = reader7.readUint8(); - const fieldFlag = reader7.readUint16(); - const decimals = reader7.readUint8(); - reader7.skip(1); - const defaultVal = reader7.readLenCodeString(); +function parseField(reader8) { + const catalog = reader8.readLenCodeString(); + const schema = reader8.readLenCodeString(); + const table = reader8.readLenCodeString(); + const originTable = reader8.readLenCodeString(); + const name69 = reader8.readLenCodeString(); + const originName = reader8.readLenCodeString(); + reader8.skip(1); + const encoding = reader8.readUint16(); + const fieldLen = reader8.readUint32(); + const fieldType = reader8.readUint8(); + const fieldFlag = reader8.readUint16(); + const decimals = reader8.readUint8(); + reader8.skip(1); + const defaultVal = reader8.readLenCodeString(); return { catalog, schema, @@ -65114,11 +67672,11 @@ function parseField(reader7) { defaultVal }; } -function parseRow(reader8, fields) { +function parseRow(reader9, fields) { const row = {}; for (const field of fields){ const name70 = field.name; - const val = reader8.readLenCodeString(); + const val = reader9.readLenCodeString(); row[name70] = val === null ? null : convertType(field, val); } return row; @@ -65161,34 +67719,33 @@ function convertType(field, val) { return val; } } -function power_mod(n149, p55, m34) { - if (p55 === 1n) return n149; - if (p55 % 2n === 0n) { - const t101 = power_mod(n149, p55 >> 1n, m34); - return t101 * t101 % m34; +function power_mod(n150, p56, m34) { + if (p56 === 1n) return n150; + if (p56 % 2n === 0n) { + const t103 = power_mod(n150, p56 >> 1n, m34); + return t103 * t103 % m34; } else { - const t102 = power_mod(n149, p55 >> 1n, m34); - return t102 * t102 * n149 % m34; + const t104 = power_mod(n150, p56 >> 1n, m34); + return t104 * t104 * n150 % m34; } } -let cachedTextDecoder2 = new TextDecoder("utf-8", { +let wasm2; +const cachedTextDecoder2 = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }); cachedTextDecoder2.decode(); -let cachegetUint8Memory02 = null; +let cachedUint8Memory01; function getUint8Memory02() { - if (cachegetUint8Memory02 === null || cachegetUint8Memory02.buffer !== wasm2.memory.buffer) { - cachegetUint8Memory02 = new Uint8Array(wasm2.memory.buffer); + if (cachedUint8Memory01.byteLength === 0) { + cachedUint8Memory01 = new Uint8Array(wasm2.memory.buffer); } - return cachegetUint8Memory02; + return cachedUint8Memory01; } function getStringFromWasm02(ptr, len74) { return cachedTextDecoder2.decode(getUint8Memory02().subarray(ptr, ptr + len74)); } -const heap2 = Array.from({ - length: 32 -}); +const heap2 = new Array(32).fill(undefined); heap2.push(undefined, null, true, false); let heap_next2 = heap2.length; function addHeapObject2(obj) { @@ -65198,21 +67755,8 @@ function addHeapObject2(obj) { heap2[idx] = obj; return idx; } -function getObject2(idx) { - return heap2[idx]; -} -function dropObject2(idx) { - if (idx < 36) return; - heap2[idx] = heap_next2; - heap_next2 = idx; -} -function takeObject2(idx) { - const ret = getObject2(idx); - dropObject2(idx); - return ret; -} let WASM_VECTOR_LEN2 = 0; -let cachedTextEncoder2 = new TextEncoder("utf-8"); +const cachedTextEncoder2 = new TextEncoder("utf-8"); const encodeString2 = function(arg, view) { return cachedTextEncoder2.encodeInto(arg, view); }; @@ -65229,9 +67773,9 @@ function passStringToWasm02(arg, malloc, realloc) { const mem3 = getUint8Memory02(); let offset126 = 0; for(; offset126 < len75; offset126++){ - const code83 = arg.charCodeAt(offset126); - if (code83 > 0x7F) break; - mem3[ptr + offset126] = code83; + const code84 = arg.charCodeAt(offset126); + if (code84 > 0x7F) break; + mem3[ptr + offset126] = code84; } if (offset126 !== len75) { if (offset126 !== 0) { @@ -65245,11 +67789,42 @@ function passStringToWasm02(arg, malloc, realloc) { WASM_VECTOR_LEN2 = offset126; return ptr; } +let cachedInt32Memory01; +function getInt32Memory02() { + if (cachedInt32Memory01.byteLength === 0) { + cachedInt32Memory01 = new Int32Array(wasm2.memory.buffer); + } + return cachedInt32Memory01; +} +function getObject2(idx) { + return heap2[idx]; +} +function dropObject2(idx) { + if (idx < 36) return; + heap2[idx] = heap_next2; + heap_next2 = idx; +} +function takeObject2(idx) { + const ret = getObject2(idx); + dropObject2(idx); + return ret; +} function create_hash1(algorithm) { - var ptr0 = passStringToWasm02(algorithm, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc); - var len0 = WASM_VECTOR_LEN2; - var ret = wasm2.create_hash(ptr0, len0); - return DenoHash1.__wrap(ret); + try { + const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16); + const ptr0 = passStringToWasm02(algorithm, wasm2.__wbindgen_malloc, wasm2.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN2; + wasm2.create_hash(retptr, ptr0, len0); + var r0 = getInt32Memory02()[retptr / 4 + 0]; + var r115 = getInt32Memory02()[retptr / 4 + 1]; + var r212 = getInt32Memory02()[retptr / 4 + 2]; + if (r212) { + throw takeObject2(r115); + } + return DenoHash1.__wrap(r0); + } finally{ + wasm2.__wbindgen_add_to_stack_pointer(16); + } } function _assertClass1(instance, klass) { if (!(instance instanceof klass)) { @@ -65263,19 +67838,12 @@ function passArray8ToWasm01(arg, malloc) { WASM_VECTOR_LEN2 = arg.length; return ptr; } -function update_hash1(hash9, data86) { +function update_hash1(hash9, data89) { _assertClass1(hash9, DenoHash1); - var ptr0 = passArray8ToWasm01(data86, wasm2.__wbindgen_malloc); - var len0 = WASM_VECTOR_LEN2; + const ptr0 = passArray8ToWasm01(data89, wasm2.__wbindgen_malloc); + const len0 = WASM_VECTOR_LEN2; wasm2.update_hash(hash9.ptr, ptr0, len0); } -let cachegetInt32Memory02 = null; -function getInt32Memory02() { - if (cachegetInt32Memory02 === null || cachegetInt32Memory02.buffer !== wasm2.memory.buffer) { - cachegetInt32Memory02 = new Int32Array(wasm2.memory.buffer); - } - return cachegetInt32Memory02; -} function getArrayU8FromWasm02(ptr, len76) { return getUint8Memory02().subarray(ptr / 1, ptr / 1 + len76); } @@ -65285,9 +67853,9 @@ function digest_hash1(hash10) { _assertClass1(hash10, DenoHash1); wasm2.digest_hash(retptr, hash10.ptr); var r0 = getInt32Memory02()[retptr / 4 + 0]; - var r115 = getInt32Memory02()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm02(r0, r115).slice(); - wasm2.__wbindgen_free(r0, r115 * 1); + var r116 = getInt32Memory02()[retptr / 4 + 1]; + var v0 = getArrayU8FromWasm02(r0, r116).slice(); + wasm2.__wbindgen_free(r0, r116 * 1); return v0; } finally{ wasm2.__wbindgen_add_to_stack_pointer(16); @@ -65315,2559 +67883,2595 @@ class DenoHash1 { const imports2 = { __wbindgen_placeholder__: { __wbindgen_string_new: function(arg0, arg1) { - var ret = getStringFromWasm02(arg0, arg1); + const ret = getStringFromWasm02(arg0, arg1); return addHeapObject2(ret); }, __wbindgen_throw: function(arg0, arg1) { throw new Error(getStringFromWasm02(arg0, arg1)); - }, - __wbindgen_rethrow: function(arg0) { - throw takeObject2(arg0); } } }; -const wasmModule2 = new WebAssembly.Module(decode2("AGFzbQEAAAAB+4CAgAASYAAAYAF/AGABfwF/YAF/AX5gAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH\ +function instantiate1() { + return instantiateWithInstance1().exports; +} +let instanceWithExports1; +function instantiateWithInstance1() { + if (instanceWithExports1 == null) { + const instance = instantiateInstance1(); + wasm2 = instance.exports; + cachedInt32Memory01 = new Int32Array(wasm2.memory.buffer); + cachedUint8Memory01 = new Uint8Array(wasm2.memory.buffer); + instanceWithExports1 = { + instance, + exports: { + create_hash: create_hash1, + update_hash: update_hash1, + digest_hash: digest_hash1, + DenoHash: DenoHash1 + } + }; + } + return instanceWithExports1; +} +function instantiateInstance1() { + const wasmBytes = base64decode1("\ +AGFzbQEAAAAB+4CAgAASYAAAYAF/AGABfwF/YAF/AX5gAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH\ 9/f38AYAR/f39/AX9gBX9/f39/AGAFf39/f38Bf2AGf39/f39/AGAGf39/f39/AX9gBX9/f35/AGAH\ -f39/fn9/fwF/YAJ/fgBgAn5/AX8CjIGAgAADGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxVfX3diaW\ +f39/fn9/fwF/YAJ/fgBgAn5/AX8C3oCAgAACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxVfX3diaW\ 5kZ2VuX3N0cmluZ19uZXcABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18QX193YmluZGdlbl90aHJv\ -dwAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxJfX3diaW5kZ2VuX3JldGhyb3cAAQPQgYCAAM4BBg\ -YEBAUGAgQOBgQEDwEEBAQBBwUEEAQEBAQHCwQEBAQNBAQEBAQEBAQEBAQEBAQEAQQEBAQEBAQEBwUE\ -BAQGBgYGBAQEDAQEEQEFBAQEBAEEBgYGBgYGBAQEBAQEBAYEBAQEBAYGBAQEBAQEBAQEBgQEBAQEBg\ -QEBAQEBAQEBAoFBQEBBAQEBAQGBgYGBQYBAAUIBAcHAQYJAQYBAQcBAQEBBAEHAgEBBwEFBQIFBQQA\ -BQEBAQECAAAFBAEDAgICAgICAgICAgICAgIABAEEhYCAgAABcAF5eQWDgICAAAEAEQaJgICAAAF/AU\ -GAgMAACweugYCAAAkGbWVtb3J5AgATX193YmdfZGVub2hhc2hfZnJlZQCZAQtjcmVhdGVfaGFzaAAH\ -C3VwZGF0ZV9oYXNoAJoBC2RpZ2VzdF9oYXNoAJYBEV9fd2JpbmRnZW5fbWFsbG9jAKgBEl9fd2Jpbm\ -RnZW5fcmVhbGxvYwCrAR9fX3diaW5kZ2VuX2FkZF90b19zdGFja19wb2ludGVyALkBD19fd2JpbmRn\ -ZW5fZnJlZQCyAQmrgYCAAAEAQQELeLEBzwG0AbABvAGQAdABYRlmUskBO1dbbqkBxgF3VVptdlk+Xa\ -MByAFvWCExnAHHAVNoP1ykAXBnMkefAc0Bcy80ngHMAXRUGieFAcsBYhsshgHKAWNDSUa2AcABekE6\ -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\ -YCACACIAEoADQiBjYCNCAFIAEoADgiDjYCACACIAEoADwiATYCPCAAIA4gAyABIAsgAigCACIFIAko\ -AgAiCSAFIAcgAigCDCIPIAIoAgQiECABIAUgASAMIAIoAhQiAiAFIAAoAggiESAAKAIEIhJzIAAoAg\ -wiE3MgACgCACIUampBC3cgACgCECIVaiIWQQp3IhdqIA8gEUEKdyIRaiAQIBVqIBEgEnMgFnNqQQ53\ -IBNqIhUgF3MgCCgCACIIIBNqIBYgEkEKdyIScyAVc2pBD3cgEWoiE3NqQQx3IBJqIhYgE0EKdyIRcy\ -AJIBJqIBMgFUEKdyIScyAWc2pBBXcgF2oiE3NqQQh3IBJqIhdBCnciFWogAyAWQQp3IhZqIAogEmog\ -EyAWcyAXc2pBB3cgEWoiEiAVcyAEIBFqIBcgE0EKdyITcyASc2pBCXcgFmoiFnNqQQt3IBNqIhcgFk\ -EKdyIRcyALIBNqIBYgEkEKdyIScyAXc2pBDXcgFWoiE3NqQQ53IBJqIhZBCnciFWogBiAXQQp3Ihdq\ -IBIgB2ogEyAXcyAWc2pBD3cgEWoiEiAVcyARIA1qIBYgE0EKdyITcyASc2pBBncgF2oiFnNqQQd3IB\ -NqIhEgFkEKdyIYcyATIA5qIBYgEkEKdyIZcyARc2pBCXcgFWoiFXNqQQh3IBlqIhdBCnciEmogDyAM\ -IAYgBSAAKAIcIhpBCnciE2ogBCAAKAIgIhZqIA4gACgCJCIbaiACIAAoAhRqIBogFkF/c3IgACgCGC\ -Iac2pB5peKhQVqQQh3IBtqIhsgGiATQX9zcnNqQeaXioUFakEJdyAWaiIWIBsgGkEKdyIaQX9zcnNq\ -QeaXioUFakEJdyATaiITIBYgG0EKdyIbQX9zcnNqQeaXioUFakELdyAaaiIcQQp3Ih1qIAkgE0EKdy\ -IeaiAHIBZBCnciFmogCCAbaiALIBpqIBwgEyAWQX9zcnNqQeaXioUFakENdyAbaiITIBwgHkF/c3Jz\ -akHml4qFBWpBD3cgFmoiFiATIB1Bf3Nyc2pB5peKhQVqQQ93IB5qIhogFiATQQp3IhNBf3Nyc2pB5p\ -eKhQVqQQV3IB1qIhsgGiAWQQp3IhZBf3Nyc2pB5peKhQVqQQd3IBNqIhxBCnciHWogECAbQQp3Ih5q\ -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\ -IANqIgRBCndqNgIAIAAgASAVaiAGIApqIAkgDyAgQX9zcnNqQc76z8p6akEGd2ogAyALaiANIAVzIA\ -RzakELdyACaiIKajYCECAAIAEgEGogBWogAiAHaiAEIBZzIApzakELd2o2AgwL4jgCCH8EfiMAQeAD\ -ayICJAAgAiABNgIMIAIgADYCCAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAk\ -ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAFBfWoOBwAIBwIJAwEJCwJAAkAgAEGAgMAAQQMQ\ -mAFFDQAgAEGogMAAQQMQmAFFDQEgAEHQgMAAQQMQmAENCiACQbABakEMakIANwIAIAJBsAFqQRRqQg\ -A3AgAgAkGwAWpBHGpCADcCACACQbABakEkakIANwIAIAJBsAFqQSxqQgA3AgAgAkGwAWpBNGpCADcC\ -ACACQbABakE8akIANwIAIAJCADcCtAEgAkHAADYCsAEgAkHIAmogAkGwAWpBxAAQoAEaIAJB2ABqIg\ -MgAkHIAmpBPGopAgA3AwAgAkHQAGoiBCACQcgCakE0aikCADcDACACQcgAaiIFIAJByAJqQSxqKQIA\ -NwMAIAJBwABqIgYgAkHIAmpBJGopAgA3AwAgAkE4aiIHIAJByAJqQRxqKQIANwMAIAJBMGoiCCACQc\ -gCakEUaikCADcDACACQSBqQQhqIgkgAkHIAmpBDGopAgA3AwAgAiACKQLMAjcDIEHgABAJIgFFDQ0g\ -AUEANgIIIAFCADcDACABIAIpAyA3AgwgAUEUaiAJKQMANwIAIAFBHGogCCkDADcCACABQSRqIAcpAw\ -A3AgAgAUEsaiAGKQMANwIAIAFBNGogBSkDADcCACABQTxqIAQpAwA3AgAgAUHEAGogAykDADcCACAB\ -QdQAakEAKQLUnEA3AgAgAUEAKQLMnEA3AkxB1IDAACEDDCELIAJBsAFqQQxqIgFCADcCACACQgA3Ar\ -QBIAJBEDYCsAEgAkHIAmpBEGoiBCACQbABakEQaiIFKAIANgIAIAJByAJqQQhqIgMgAkGwAWpBCGoi\ -BikDADcDACACQSBqQQhqIgcgAkHIAmpBDGoiCCkCADcDACACIAIpA7ABNwPIAiACIAIpAswCNwMgIA\ -FCADcCACACQgA3ArQBIAJBEDYCsAEgBCAFKAIANgIAIAMgBikDADcDACACIAIpA7ABNwPIAiACQRBq\ -QQhqIgQgCCkCADcDACACIAIpAswCNwMQIAMgBykDADcDACACIAIpAyA3A8gCQdQAEAkiAUUNCiABQQ\ -A2AgAgASACKQPIAjcCBCABQgA3AhQgASACKQMQNwJEIAFBHGpCADcCACABQSRqQgA3AgAgAUEsakIA\ -NwIAIAFBNGpCADcCACABQTxqQgA3AgAgAUEMaiADKQMANwIAIAFBzABqIAQpAwA3AgBBhIDAACEDDC\ -ALIAJBsAFqQQxqQgA3AgAgAkGwAWpBFGpCADcCACACQbABakEcakIANwIAIAJBsAFqQSRqQgA3AgAg\ -AkGwAWpBLGpCADcCACACQbABakE0akIANwIAIAJBsAFqQTxqQgA3AgAgAkIANwK0ASACQcAANgKwAS\ -ACQcgCaiACQbABakHEABCgARogAkHYAGoiAyACQcgCakE8aikCADcDACACQdAAaiIEIAJByAJqQTRq\ -KQIANwMAIAJByABqIgUgAkHIAmpBLGopAgA3AwAgAkHAAGoiBiACQcgCakEkaikCADcDACACQThqIg\ -cgAkHIAmpBHGopAgA3AwAgAkEwaiIIIAJByAJqQRRqKQIANwMAIAJBIGpBCGoiCSACQcgCakEMaikC\ -ADcDACACIAIpAswCNwMgQeAAEAkiAUUNCiABQQA2AgggAUIANwMAIAEgAikDIDcCDCABQRRqIAkpAw\ -A3AgAgAUEcaiAIKQMANwIAIAFBJGogBykDADcCACABQSxqIAYpAwA3AgAgAUE0aiAFKQMANwIAIAFB\ -PGogBCkDADcCACABQcQAaiADKQMANwIAIAFB1ABqQQApAtScQDcCACABQQApAsycQDcCTEGsgMAAIQ\ -MMHwsCQAJAIABB+IDAAEEJEJgBRQ0AIABBqIHAAEEJEJgBRQ0BIABBvITAACABEJgBRQ0EIABB7ITA\ -ACABEJgBRQ0FIABBnIXAACABEJgBRQ0GIABBzIXAACABEJgBDQkgAkEANgKwASACQbABakEEckEAQc\ -gAEKcBGiACQcgANgKwASACQcgCaiACQbABakHMABCgARogAkEgaiACQcgCakEEckHIABCgARpBmAIQ\ -CSIBRQ0aIAFBAEHMARCnAUHMAWogAkEgakHIABCgARpB2IXAACEDDCALIAJBsAFqQQxqQgA3AgAgAk\ -GwAWpBFGpCADcCACACQbABakEcakIANwIAIAJBsAFqQSRqQgA3AgAgAkGwAWpBLGpCADcCACACQbAB\ -akE0akIANwIAIAJBsAFqQTxqQgA3AgAgAkIANwK0ASACQcAANgKwASACQcgCaiACQbABakHEABCgAR\ -ogAkEgakE4aiIDIAJByAJqQTxqKQIANwMAIAJBIGpBMGoiBCACQcgCakE0aikCADcDACACQSBqQShq\ -IgUgAkHIAmpBLGopAgA3AwAgAkHAAGoiBiACQcgCakEkaikCADcDACACQSBqQRhqIgcgAkHIAmpBHG\ -opAgA3AwAgAkEgakEQaiIIIAJByAJqQRRqKQIANwMAIAJBIGpBCGoiCSACQcgCakEMaikCADcDACAC\ -IAIpAswCNwMgQeAAEAkiAUUNDCABQgA3AwAgAUEANgIcIAEgAikDIDcCICABQQApA4idQDcDCCABQR\ -BqQQApA5CdQDcDACABQRhqQQAoApidQDYCACABQShqIAkpAwA3AgAgAUEwaiAIKQMANwIAIAFBOGog\ -BykDADcCACABQcAAaiAGKQMANwIAIAFByABqIAUpAwA3AgAgAUHQAGogBCkDADcCACABQdgAaiADKQ\ -MANwIAQYSBwAAhAwwfCyACQbABakEMakIANwIAIAJBsAFqQRRqQgA3AgAgAkGwAWpBHGpCADcCACAC\ -QbABakEkakIANwIAIAJBsAFqQSxqQgA3AgAgAkGwAWpBNGpCADcCACACQbABakE8akIANwIAIAJCAD\ -cCtAEgAkHAADYCsAEgAkHIAmogAkGwAWpBxAAQoAEaIAJB2ABqIgMgAkHIAmpBPGopAgA3AwAgAkHQ\ -AGoiBCACQcgCakE0aikCADcDACACQSBqQShqIgUgAkHIAmpBLGopAgA3AwAgAkEgakEgaiIGIAJByA\ -JqQSRqKQIANwMAIAJBIGpBGGoiByACQcgCakEcaikCADcDACACQSBqQRBqIgggAkHIAmpBFGopAgA3\ -AwAgAkEgakEIaiIJIAJByAJqQQxqKQIANwMAIAIgAikCzAI3AyBB+AAQCSIBRQ0MIAFCADcDACABQQ\ -A2AjAgASACKQMgNwI0IAFBACkD4JxANwMIIAFBEGpBACkD6JxANwMAIAFBGGpBACkD8JxANwMAIAFB\ -IGpBACkD+JxANwMAIAFBKGpBACkDgJ1ANwMAIAFBPGogCSkDADcCACABQcQAaiAIKQMANwIAIAFBzA\ -BqIAcpAwA3AgAgAUHUAGogBikDADcCACABQdwAaiAFKQMANwIAIAFB5ABqIAQpAwA3AgAgAUHsAGog\ -AykDADcCAEG0gcAAIQMMHgsCQAJAAkACQCAAQfyBwABBBhCYAUUNACAAQaiCwABBBhCYAUUNASAAQd\ -SCwABBBhCYAUUNAiAAQYCDwABBBhCYAUUNAyAAQfyFwABBBhCYAQ0KIAJB5QJqIgNBACkD2J1AIgo3\ -AAAgAkHdAmpBACkD0J1AIgs3AAAgAkHVAmpBACkDyJ1AIgw3AAAgAkEAKQPAnUAiDTcAzQJB+A4QCS\ -IBRQ0cIAFCADcDACABIA03AwggAUEQaiAMNwMAIAFBGGogCzcDACABQSBqIAo3AwAgAUEoakEAQcMA\ -EKcBGiABQQA6APAOIAFBiAFqIAMpAAA3AAAgAUGDAWogAkHIAmpBGGopAAA3AAAgAUH7AGogAkHIAm\ -pBEGopAAA3AAAgAUHzAGogAkHQAmopAAA3AAAgASACKQDIAjcAa0GEhsAAIQMMIQsgAkGwAWpBDGpC\ -ADcCACACQbABakEUakIANwIAIAJBsAFqQRxqQgA3AgAgAkGwAWpBJGpCADcCACACQbABakEsakIANw\ -IAIAJBsAFqQTRqQgA3AgAgAkGwAWpBPGpCADcCACACQgA3ArQBIAJBwAA2ArABIAJByAJqIAJBsAFq\ -QcQAEKABGiACQdgAaiIDIAJByAJqQTxqKQIANwMAIAJB0ABqIgQgAkHIAmpBNGopAgA3AwAgAkHIAG\ -oiBSACQcgCakEsaikCADcDACACQcAAaiIGIAJByAJqQSRqKQIANwMAIAJBOGoiByACQcgCakEcaikC\ -ADcDACACQTBqIgggAkHIAmpBFGopAgA3AwAgAkEgakEIaiIJIAJByAJqQQxqKQIANwMAIAIgAikCzA\ -I3AyBB8AAQCSIBRQ0PIAEgAikDIDcCDCABQQA2AgggAUIANwMAIAFBHGogCCkDADcCACABQRRqIAkp\ -AwA3AgAgAUEkaiAHKQMANwIAIAFBLGogBikDADcCACABQTRqIAUpAwA3AgAgAUE8aiAEKQMANwIAIA\ -FBxABqIAMpAwA3AgAgAUHUAGpBACkCpJ1ANwIAIAFBACkCnJ1ANwJMIAFB5ABqQQApArSdQDcCACAB\ -QdwAakEAKQKsnUA3AgBBhILAACEDDCALIAJBsAFqQQxqQgA3AgAgAkGwAWpBFGpCADcCACACQbABak\ -EcakIANwIAIAJBsAFqQSRqQgA3AgAgAkGwAWpBLGpCADcCACACQbABakE0akIANwIAIAJBsAFqQTxq\ -QgA3AgAgAkIANwK0ASACQcAANgKwASACQcgCaiACQbABakHEABCgARogAkHYAGoiAyACQcgCakE8ai\ -kCADcDACACQdAAaiIEIAJByAJqQTRqKQIANwMAIAJByABqIgUgAkHIAmpBLGopAgA3AwAgAkHAAGoi\ -BiACQcgCakEkaikCADcDACACQThqIgcgAkHIAmpBHGopAgA3AwAgAkEwaiIIIAJByAJqQRRqKQIANw\ -MAIAJBIGpBCGoiCSACQcgCakEMaikCADcDACACIAIpAswCNwMgQfAAEAkiAUUNDyABIAIpAyA3Agwg\ -AUEANgIIIAFCADcDACABQRxqIAgpAwA3AgAgAUEUaiAJKQMANwIAIAFBJGogBykDADcCACABQSxqIA\ -YpAwA3AgAgAUE0aiAFKQMANwIAIAFBPGogBCkDADcCACABQcQAaiADKQMANwIAIAFB1ABqQQApA8id\ -QDcCACABQQApA8CdQDcCTCABQeQAakEAKQPYnUA3AgAgAUHcAGpBACkD0J1ANwIAQbCCwAAhAwwfCy\ -ACQQA2ArABIAJBsAFqQQRyQQBBgAEQpwEaIAJBgAE2ArABIAJByAJqIAJBsAFqQYQBEKABGiACQSBq\ -IAJByAJqQQRyQYABEKABGkHYARAJIgFFDQ8gAUIANwMIIAFCADcDACABQQA2AlAgAUEAKQPgnUA3Ax\ -AgAUEYakEAKQPonUA3AwAgAUEgakEAKQPwnUA3AwAgAUEoakEAKQP4nUA3AwAgAUEwakEAKQOAnkA3\ -AwAgAUE4akEAKQOInkA3AwAgAUHAAGpBACkDkJ5ANwMAIAFByABqQQApA5ieQDcDACABQdQAaiACQS\ -BqQYABEKABGkHcgsAAIQMMHgsgAkEANgKwASACQbABakEEckEAQYABEKcBGiACQYABNgKwASACQcgC\ -aiACQbABakGEARCgARogAkEgaiACQcgCakEEckGAARCgARpB2AEQCSIBRQ0PIAFCADcDCCABQgA3Aw\ -AgAUEANgJQIAFBACkDoJ5ANwMQIAFBGGpBACkDqJ5ANwMAIAFBIGpBACkDsJ5ANwMAIAFBKGpBACkD\ -uJ5ANwMAIAFBMGpBACkDwJ5ANwMAIAFBOGpBACkDyJ5ANwMAIAFBwABqQQApA9CeQDcDACABQcgAak\ -EAKQPYnkA3AwAgAUHUAGogAkEgakGAARCgARpBiIPAACEDDB0LAkACQAJAIAApAABC89CFm9PFjJk0\ -UQ0AIAApAABC89CFm9PFzJo2UQ0BIAApAABC89CFm9PljJw0UQ0CIAApAABC89CFm9OlzZgyUg0IIA\ -JBADYCsAEgAkGwAWpBBHJBAEHIABCnARogAkHIADYCsAEgAkHIAmogAkGwAWpBzAAQoAEaIAJBIGog\ -AkHIAmpBBHJByAAQoAEaQZgCEAkiAUUNFSABQQBBzAEQpwFBzAFqIAJBIGpByAAQoAEaQZiEwAAhAw\ -wfCyACQQA2ArABIAJBsAFqQQRyQQBBkAEQpwEaIAJBkAE2ArABIAJByAJqIAJBsAFqQZQBEKABGiAC\ -QSBqIAJByAJqQQRyQZABEKABGkHgAhAJIgFFDREgAUEAQcwBEKcBQcwBaiACQSBqQZABEKABGkGsg8\ -AAIQMMHgsgAkEANgKwASACQbABakEEckEAQYgBEKcBGiACQYgBNgKwASACQcgCaiACQbABakGMARCg\ -ARogAkEgaiACQcgCakEEckGIARCgARpB2AIQCSIBRQ0RIAFBAEHMARCnAUHMAWogAkEgakGIARCgAR\ -pB0IPAACEDDB0LIAJBADYCsAEgAkGwAWpBBHJBAEHoABCnARogAkHoADYCsAEgAkHIAmogAkGwAWpB\ -7AAQoAEaIAJBIGogAkHIAmpBBHJB6AAQoAEaQbgCEAkiAUUNESABQQBBzAEQpwFBzAFqIAJBIGpB6A\ -AQoAEaQfSDwAAhAwwcCyACQQA2ArABIAJBsAFqQQRyQQBBkAEQpwEaIAJBkAE2ArABIAJByAJqIAJB\ -sAFqQZQBEKABGiACQSBqIAJByAJqQQRyQZABEKABGkHgAhAJIgFFDRIgAUEAQcwBEKcBQcwBaiACQS\ -BqQZABEKABGkHIhMAAIQMMGwsgAkEANgKwASACQbABakEEckEAQYgBEKcBGiACQYgBNgKwASACQcgC\ -aiACQbABakGMARCgARogAkEgaiACQcgCakEEckGIARCgARpB2AIQCSIBRQ0SIAFBAEHMARCnAUHMAW\ -ogAkEgakGIARCgARpB+ITAACEDDBoLIAJBADYCsAEgAkGwAWpBBHJBAEHoABCnARogAkHoADYCsAEg\ -AkHIAmogAkGwAWpB7AAQoAEaIAJBIGogAkHIAmpBBHJB6AAQoAEaQbgCEAkiAUUNEiABQQBBzAEQpw\ -FBzAFqIAJBIGpB6AAQoAEaQaiFwAAhAwwZCyAAQaiGwABBBRCYAQ0BIAJBsAFqQQxqQgA3AgAgAkGw\ -AWpBFGpCADcCACACQbABakEcakIANwIAIAJBsAFqQSRqQgA3AgAgAkGwAWpBLGpCADcCACACQbABak\ -E0akIANwIAIAJBsAFqQTxqQgA3AgAgAkIANwK0ASACQcAANgKwASACQcgCaiACQbABakHEABCgARog\ -AkHYAGoiAyACQcgCakE8aikCADcDACACQdAAaiIEIAJByAJqQTRqKQIANwMAIAJByABqIgUgAkHIAm\ -pBLGopAgA3AwAgAkHAAGoiBiACQcgCakEkaikCADcDACACQSBqQRhqIgcgAkHIAmpBHGopAgA3AwAg\ -AkEgakEQaiIIIAJByAJqQRRqKQIANwMAIAJBIGpBCGoiCSACQcgCakEMaikCADcDACACIAIpAswCNw\ -MgQegAEAkiAUUNFCABQgA3AwAgAUEANgIgIAEgAikDIDcCJCABQQApA6CjQDcDCCABQRBqQQApA6ij\ -QDcDACABQRhqQQApA7CjQDcDACABQSxqIAkpAwA3AgAgAUE0aiAIKQMANwIAIAFBPGogBykDADcCAC\ -ABQcQAaiAGKQMANwIAIAFBzABqIAUpAwA3AgAgAUHUAGogBCkDADcCACABQdwAaiADKQMANwIAQbCG\ -wAAhAwwYCyAAKAAAQfPQhYsDRg0WCyACQQE2AiQgAiACQQhqNgIgQTgQCSIDRQ0TIAJCODcCtAEgAi\ -ADNgKwASACIAJBsAFqNgIQIAJB3AJqQQE2AgAgAkIBNwLMAiACQfCGwAA2AsgCIAIgAkEgajYC2AIg\ -AkEQakG4h8AAIAJByAJqEB0NFCACKAKwASACKAK4ARAAIQMCQCACKAK0AUUNACACKAKwARAQCwJAIA\ -FFDQAgABAQCyADEL4BAAtB1ABBBEEAKAKs6kAiAkECIAIbEQQAAAtB4ABBCEEAKAKs6kAiAkECIAIb\ -EQQAAAtB4ABBCEEAKAKs6kAiAkECIAIbEQQAAAtB4ABBCEEAKAKs6kAiAkECIAIbEQQAAAtB+ABBCE\ -EAKAKs6kAiAkECIAIbEQQAAAtB8ABBCEEAKAKs6kAiAkECIAIbEQQAAAtB8ABBCEEAKAKs6kAiAkEC\ -IAIbEQQAAAtB2AFBCEEAKAKs6kAiAkECIAIbEQQAAAtB2AFBCEEAKAKs6kAiAkECIAIbEQQAAAtB4A\ -JBCEEAKAKs6kAiAkECIAIbEQQAAAtB2AJBCEEAKAKs6kAiAkECIAIbEQQAAAtBuAJBCEEAKAKs6kAi\ -AkECIAIbEQQAAAtBmAJBCEEAKAKs6kAiAkECIAIbEQQAAAtB4AJBCEEAKAKs6kAiAkECIAIbEQQAAA\ -tB2AJBCEEAKAKs6kAiAkECIAIbEQQAAAtBuAJBCEEAKAKs6kAiAkECIAIbEQQAAAtBmAJBCEEAKAKs\ -6kAiAkECIAIbEQQAAAtB+A5BCEEAKAKs6kAiAkECIAIbEQQAAAtB6ABBCEEAKAKs6kAiAkECIAIbEQ\ -QAAAtBOEEBQQAoAqzqQCICQQIgAhsRBAAAC0HQh8AAQTMgAkHIAmpBhIjAAEGUiMAAEIIBAAsgAkGw\ -AWpBDGpCADcCACACQbABakEUakIANwIAIAJBsAFqQRxqQgA3AgAgAkGwAWpBJGpCADcCACACQbABak\ -EsakIANwIAIAJBsAFqQTRqQgA3AgAgAkGwAWpBPGpCADcCACACQgA3ArQBIAJBwAA2ArABIAJByAJq\ -IAJBsAFqQcQAEKABGiACQSBqQThqIgMgAkHIAmpBPGopAgA3AwAgAkEgakEwaiIEIAJByAJqQTRqKQ\ -IANwMAIAJBIGpBKGoiBSACQcgCakEsaikCADcDACACQcAAaiIGIAJByAJqQSRqKQIANwMAIAJBIGpB\ -GGoiByACQcgCakEcaikCADcDACACQSBqQRBqIgggAkHIAmpBFGopAgA3AwAgAkEgakEIaiIJIAJByA\ -JqQQxqKQIANwMAIAIgAikCzAI3AyBB4AAQCSIBRQ0BIAFCADcDACABQQA2AhwgASACKQMgNwIgIAFB\ -ACkDiJ1ANwMIIAFBEGpBACkDkJ1ANwMAIAFBGGpBACgCmJ1ANgIAIAFBKGogCSkDADcCACABQTBqIA\ -gpAwA3AgAgAUE4aiAHKQMANwIAIAFBwABqIAYpAwA3AgAgAUHIAGogBSkDADcCACABQdAAaiAEKQMA\ -NwIAIAFB2ABqIAMpAwA3AgBB2IHAACEDCyAAEBACQEEMEAkiAA0AQQxBBEEAKAKs6kAiAkECIAIbEQ\ -QAAAsgACADNgIIIAAgATYCBCAAQQA2AgAgAkHgA2okACAADwtB4ABBCEEAKAKs6kAiAkECIAIbEQQA\ -AAu3JAFTfyMAQcAAayIDQThqQgA3AwAgA0EwakIANwMAIANBKGpCADcDACADQSBqQgA3AwAgA0EYak\ -IANwMAIANBEGpCADcDACADQQhqQgA3AwAgA0IANwMAIAAoAhAhBCAAKAIMIQUgACgCCCEGIAAoAgQh\ -ByAAKAIAIQgCQCACRQ0AIAEgAkEGdGohCQNAIAMgASgAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP\ -4DcSACQRh2cnI2AgAgAyABQQRqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZycjYC\ -BCADIAFBCGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyNgIIIAMgAUEMaigAAC\ -ICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnI2AgwgAyABQRBqKAAAIgJBGHQgAkEIdEGA\ -gPwHcXIgAkEIdkGA/gNxIAJBGHZycjYCECADIAFBFGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QY\ -D+A3EgAkEYdnJyNgIUIAMgAUEcaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIi\ -CjYCHCADIAFBIGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIgs2AiAgAyABQR\ -hqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIMNgIYIAMoAgAhDSADKAIEIQ4g\ -AygCCCEPIAMoAhAhECADKAIMIREgAygCFCESIAMgAUEkaigAACICQRh0IAJBCHRBgID8B3FyIAJBCH\ -ZBgP4DcSACQRh2cnIiEzYCJCADIAFBKGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEY\ -dnJyIhQ2AiggAyABQTBqKAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIVNgIwIA\ -MgAUEsaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiFjYCLCADIAFBNGooAAAi\ -AkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIgI2AjQgAyABQThqKAAAIhdBGHQgF0EIdE\ -GAgPwHcXIgF0EIdkGA/gNxIBdBGHZyciIXNgI4IAMgAUE8aigAACIYQRh0IBhBCHRBgID8B3FyIBhB\ -CHZBgP4DcSAYQRh2cnIiGDYCPCAIIBMgCnMgGHMgDCAQcyAVcyARIA5zIBNzIBdzQQF3IhlzQQF3Ih\ -pzQQF3IhsgCiAScyACcyAQIA9zIBRzIBhzQQF3IhxzQQF3Ih1zIBggAnMgHXMgFSAUcyAccyAbc0EB\ -dyIec0EBdyIfcyAaIBxzIB5zIBkgGHMgG3MgFyAVcyAacyAWIBNzIBlzIAsgDHMgF3MgEiARcyAWcy\ -APIA1zIAtzIAJzQQF3IiBzQQF3IiFzQQF3IiJzQQF3IiNzQQF3IiRzQQF3IiVzQQF3IiZzQQF3Iicg\ -HSAhcyACIBZzICFzIBQgC3MgIHMgHXNBAXciKHNBAXciKXMgHCAgcyAocyAfc0EBdyIqc0EBdyIrcy\ -AfIClzICtzIB4gKHMgKnMgJ3NBAXciLHNBAXciLXMgJiAqcyAscyAlIB9zICdzICQgHnMgJnMgIyAb\ -cyAlcyAiIBpzICRzICEgGXMgI3MgICAXcyAicyApc0EBdyIuc0EBdyIvc0EBdyIwc0EBdyIxc0EBdy\ -Iyc0EBdyIzc0EBdyI0c0EBdyI1ICsgL3MgKSAjcyAvcyAoICJzIC5zICtzQQF3IjZzQQF3IjdzICog\ -LnMgNnMgLXNBAXciOHNBAXciOXMgLSA3cyA5cyAsIDZzIDhzIDVzQQF3IjpzQQF3IjtzIDQgOHMgOn\ -MgMyAtcyA1cyAyICxzIDRzIDEgJ3MgM3MgMCAmcyAycyAvICVzIDFzIC4gJHMgMHMgN3NBAXciPHNB\ -AXciPXNBAXciPnNBAXciP3NBAXciQHNBAXciQXNBAXciQnNBAXciQyA5ID1zIDcgMXMgPXMgNiAwcy\ -A8cyA5c0EBdyJEc0EBdyJFcyA4IDxzIERzIDtzQQF3IkZzQQF3IkdzIDsgRXMgR3MgOiBEcyBGcyBD\ -c0EBdyJIc0EBdyJJcyBCIEZzIEhzIEEgO3MgQ3MgQCA6cyBCcyA/IDVzIEFzID4gNHMgQHMgPSAzcy\ -A/cyA8IDJzID5zIEVzQQF3IkpzQQF3IktzQQF3IkxzQQF3Ik1zQQF3Ik5zQQF3Ik9zQQF3IlBzQQF3\ -aiBGIEpzIEQgPnMgSnMgR3NBAXciUXMgSXNBAXciUiBFID9zIEtzIFFzQQF3IlMgTCBBIDogOSA8ID\ -EgJiAfICggISAXIBMgECAIQR53IlRqIA4gBSAHQR53IhAgBnMgCHEgBnNqaiANIAQgCEEFd2ogBiAF\ -cyAHcSAFc2pqQZnzidQFaiIOQQV3akGZ84nUBWoiVUEedyIIIA5BHnciDXMgBiAPaiAOIFQgEHNxIB\ -BzaiBVQQV3akGZ84nUBWoiDnEgDXNqIBAgEWogVSANIFRzcSBUc2ogDkEFd2pBmfOJ1AVqIhBBBXdq\ -QZnzidQFaiIRQR53Ig9qIAwgCGogESAQQR53IhMgDkEedyIMc3EgDHNqIBIgDWogDCAIcyAQcSAIc2\ -ogEUEFd2pBmfOJ1AVqIhFBBXdqQZnzidQFaiISQR53IgggEUEedyIQcyAKIAxqIBEgDyATc3EgE3Nq\ -IBJBBXdqQZnzidQFaiIKcSAQc2ogCyATaiAQIA9zIBJxIA9zaiAKQQV3akGZ84nUBWoiDEEFd2pBmf\ -OJ1AVqIg9BHnciC2ogFSAKQR53IhdqIAsgDEEedyITcyAUIBBqIAwgFyAIc3EgCHNqIA9BBXdqQZnz\ -idQFaiIUcSATc2ogFiAIaiAPIBMgF3NxIBdzaiAUQQV3akGZ84nUBWoiFUEFd2pBmfOJ1AVqIhYgFU\ -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\ -IAEgADYCCAwDCyABIAdBEGogBhshBgNAIAYhCAJAIAAiAUEUaiIGKAIAIgANACABQRBqIQYgASgCEC\ -EACyAADQALIAhBADYCAAwCCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQAoAuzpQCIAIAJPDQBB\ -ACgC8OlAIgAgAksNBEEAIQEgAkGvgARqIgVBEHZAACIAQX9GIgcNDSAAQRB0IgZFDQ1BAEEAKAL86U\ -BBACAFQYCAfHEgBxsiCGoiADYC/OlAQQBBACgCgOpAIgEgACABIABLGzYCgOpAQQAoAvjpQCIBRQ0B\ -QYTqwAAhAANAIAAoAgAiBSAAKAIEIgdqIAZGDQMgACgCCCIADQAMBAsLQQAoAvTpQCEBAkACQCAAIA\ -JrIgVBD0sNAEEAQQA2AvTpQEEAQQA2AuzpQCABIABBA3I2AgQgASAAaiIAIAAoAgRBAXI2AgQMAQtB\ -ACAFNgLs6UBBACABIAJqIgY2AvTpQCAGIAVBAXI2AgQgASAAaiAFNgIAIAEgAkEDcjYCBAsgAUEIag\ -8LAkACQEEAKAKY6kAiAEUNACAAIAZNDQELQQAgBjYCmOpAC0EAQf8fNgKc6kBBACAINgKI6kBBACAG\ -NgKE6kBBAEHk5sAANgLw5kBBAEHs5sAANgL45kBBAEHk5sAANgLs5kBBAEH05sAANgKA50BBAEHs5s\ -AANgL05kBBAEH85sAANgKI50BBAEH05sAANgL85kBBAEGE58AANgKQ50BBAEH85sAANgKE50BBAEGM\ -58AANgKY50BBAEGE58AANgKM50BBAEGU58AANgKg50BBAEGM58AANgKU50BBAEGc58AANgKo50BBAE\ -GU58AANgKc50BBAEEANgKQ6kBBAEGk58AANgKw50BBAEGc58AANgKk50BBAEGk58AANgKs50BBAEGs\ -58AANgK450BBAEGs58AANgK050BBAEG058AANgLA50BBAEG058AANgK850BBAEG858AANgLI50BBAE\ -G858AANgLE50BBAEHE58AANgLQ50BBAEHE58AANgLM50BBAEHM58AANgLY50BBAEHM58AANgLU50BB\ -AEHU58AANgLg50BBAEHU58AANgLc50BBAEHc58AANgLo50BBAEHc58AANgLk50BBAEHk58AANgLw50\ -BBAEHs58AANgL450BBAEHk58AANgLs50BBAEH058AANgKA6EBBAEHs58AANgL050BBAEH858AANgKI\ -6EBBAEH058AANgL850BBAEGE6MAANgKQ6EBBAEH858AANgKE6EBBAEGM6MAANgKY6EBBAEGE6MAANg\ -KM6EBBAEGU6MAANgKg6EBBAEGM6MAANgKU6EBBAEGc6MAANgKo6EBBAEGU6MAANgKc6EBBAEGk6MAA\ -NgKw6EBBAEGc6MAANgKk6EBBAEGs6MAANgK46EBBAEGk6MAANgKs6EBBAEG06MAANgLA6EBBAEGs6M\ -AANgK06EBBAEG86MAANgLI6EBBAEG06MAANgK86EBBAEHE6MAANgLQ6EBBAEG86MAANgLE6EBBAEHM\ -6MAANgLY6EBBAEHE6MAANgLM6EBBAEHU6MAANgLg6EBBAEHM6MAANgLU6EBBAEHc6MAANgLo6EBBAE\ -HU6MAANgLc6EBBACAGNgL46UBBAEHc6MAANgLk6EBBACAIQVhqIgA2AvDpQCAGIABBAXI2AgQgBiAA\ -akEoNgIEQQBBgICAATYClOpADAoLIAAoAgwNACAFIAFLDQAgBiABSw0CC0EAQQAoApjqQCIAIAYgAC\ -AGSRs2ApjqQCAGIAhqIQVBhOrAACEAAkACQAJAA0AgACgCACAFRg0BIAAoAggiAA0ADAILCyAAKAIM\ -RQ0BC0GE6sAAIQACQANAAkAgACgCACIFIAFLDQAgBSAAKAIEaiIFIAFLDQILIAAoAggiAA0ACwALQQ\ -AgBjYC+OlAQQAgCEFYaiIANgLw6UAgBiAAQQFyNgIEIAYgAGpBKDYCBEEAQYCAgAE2ApTqQCABIAVB\ -YGpBeHFBeGoiACAAIAFBEGpJGyIHQRs2AgRBACkChOpAIQogB0EQakEAKQKM6kA3AgAgByAKNwIIQQ\ -AgCDYCiOpAQQAgBjYChOpAQQAgB0EIajYCjOpAQQBBADYCkOpAIAdBHGohAANAIABBBzYCACAFIABB\ -BGoiAEsNAAsgByABRg0JIAcgBygCBEF+cTYCBCABIAcgAWsiBkEBcjYCBCAHIAY2AgACQCAGQYACSQ\ -0AQR8hAAJAIAZB////B0sNACAGQQYgBkEIdmciAGtBH3F2QQFxIABBAXRrQT5qIQALIAFCADcCECAB\ -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\ -6AFqQRhqIgkgBykCADcDACADQegBakEQaiIHIAYpAgA3AwAgA0HoAWpBCGoiBiAEKQIANwMAIAMgAC\ -kCCDcD6AEgA0HoAWogA0H4AGpBKGogCiAeIAgQCyAJKAIAIQggBygCACEHIAYoAgAhCSADKAKEAiEK\ -IAMoAvwBIQsgAygC9AEhDCADKALsASENIAMoAugBIQ4gACAAKQMAEBggAEHwDmoiDy0AACIGQTdPDQ\ -IgACAGQQV0aiIEQZABaiAONgIAIARBrAFqIAo2AgAgBEGoAWogCDYCACAEQaQBaiALNgIAIARBoAFq\ -IAc2AgAgBEGcAWogDDYCACAEQZgBaiAJNgIAIARBlAFqIA02AgAgDyAGQQFqOgAAIABBKGoiBEIANw\ -MAIARBCGpCADcDACAEQRBqQgA3AwAgBEEYakIANwMAIARBIGpCADcDACAEQShqQgA3AwAgBEEwakIA\ -NwMAIARBOGpCADcDACAAQQA7AWggAEEIaiIEIAApA3A3AwAgBEEIaiAAQfgAaikDADcDACAEQRBqIA\ -BBgAFqKQMANwMAIARBGGogAEGIAWopAwA3AwAgACAAKQMAQgF8NwMAIAEgBWohAQsCQCACQYEISQ0A\ -IABBkAFqIQ4gAEHwAGohByAAKQMAIR8gA0EIakEoaiEKIANBCGpBCGohDSADQfgAakEoaiEJIANB+A\ -BqQQhqIQsgAEHwDmohDANAIB9CCoYhHkF/IAJBAXZndkEBaiEFA0AgBSIEQQF2IQUgHiAEQX9qrYNC\ -AFINAAsgBEEKdq0hHgJAAkAgBEGBCEkNACACIARJDQYgAC0AaiEIIANB+ABqQThqQgA3AwAgA0H4AG\ -pBMGpCADcDACAJQgA3AwAgA0H4AGpBIGpCADcDACADQfgAakEYakIANwMAIANB+ABqQRBqQgA3AwAg\ -C0IANwMAIANCADcDeCABIAQgByAfIAggA0H4AGpBwAAQDyEFIANBkAJqQRhqQgA3AwAgA0GQAmpBEG\ -pCADcDACADQZACakEIakIANwMAIANCADcDkAICQCAFQQNJDQADQCAFQQV0IgVBwQBPDQkgA0H4AGog\ -BSAHIAggA0GQAmpBIBAjIgVBBXQiBkHBAE8NCiAGQSFPDQsgA0H4AGogA0GQAmogBhCgARogBUECSw\ -0ACwsgAygCtAEhECADKAKwASERIAMoAqwBIRIgAygCqAEhEyADKAKkASEUIAMoAqABIRUgAygCnAEh\ -FiADKAKYASEXIAMoApQBIQggAygCkAEhDyADKAKMASEYIAMoAogBIRkgAygChAEhGiADKAKAASEbIA\ -MoAnwhHCADKAJ4IR0gACAAKQMAEBggDC0AACIGQTdPDQogDiAGQQV0aiIFIB02AgAgBSAINgIcIAUg\ -DzYCGCAFIBg2AhQgBSAZNgIQIAUgGjYCDCAFIBs2AgggBSAcNgIEIAwgBkEBajoAACAAIAApAwAgHk\ -IBiHwQGCAMLQAAIgZBN08NCyAOIAZBBXRqIgUgFzYCACAFIBA2AhwgBSARNgIYIAUgEjYCFCAFIBM2\ -AhAgBSAUNgIMIAUgFTYCCCAFIBY2AgQgDCAGQQFqOgAADAELIAlCADcDACAJQQhqIg9CADcDACAJQR\ -BqIhhCADcDACAJQRhqIhlCADcDACAJQSBqIhpCADcDACAJQShqIhtCADcDACAJQTBqIhxCADcDACAJ\ -QThqIh1CADcDACALIAcpAwA3AwAgC0EIaiIFIAdBCGopAwA3AwAgC0EQaiIGIAdBEGopAwA3AwAgC0\ -EYaiIIIAdBGGopAwA3AwAgA0EAOwHgASADIB83A3ggAyAALQBqOgDiASADQfgAaiABIAQQPBogDSAL\ -KQMANwMAIA1BCGogBSkDADcDACANQRBqIAYpAwA3AwAgDUEYaiAIKQMANwMAIAogCSkDADcDACAKQQ\ -hqIA8pAwA3AwAgCkEQaiAYKQMANwMAIApBGGogGSkDADcDACAKQSBqIBopAwA3AwAgCkEoaiAbKQMA\ -NwMAIApBMGogHCkDADcDACAKQThqIB0pAwA3AwAgAy0A4gEhDyADLQDhASEYIAMgAy0A4AEiGToAcC\ -ADIAMpA3giHzcDCCADIA8gGEVyQQJyIg86AHEgA0HoAWpBGGoiGCAIKQIANwMAIANB6AFqQRBqIggg\ -BikCADcDACADQegBakEIaiIGIAUpAgA3AwAgAyALKQIANwPoASADQegBaiAKIBkgHyAPEAsgGCgCAC\ -EPIAgoAgAhCCAGKAIAIRggAygChAIhGSADKAL8ASEaIAMoAvQBIRsgAygC7AEhHCADKALoASEdIAAg\ -ACkDABAYIAwtAAAiBkE3Tw0LIA4gBkEFdGoiBSAdNgIAIAUgGTYCHCAFIA82AhggBSAaNgIUIAUgCD\ -YCECAFIBs2AgwgBSAYNgIIIAUgHDYCBCAMIAZBAWo6AAALIAAgACkDACAefCIfNwMAIAIgBEkNCyAB\ -IARqIQEgAiAEayICQYAISw0ACwsgAkUNACAAIAEgAhA8GiAAIAApAwAQGAsgA0GwAmokAA8LIANBkA\ -JqQQhqIgQgCTYCACADQZACakEQaiIFIAc2AgAgA0GQAmpBGGoiBiAINgIAIAMgDDYCnAIgA0GBAWoi\ -ByAEKQIANwAAIAMgCzYCpAIgA0GJAWoiBCAFKQIANwAAIAMgCjYCrAIgA0GRAWoiBSAGKQIANwAAIA\ -MgDTYClAIgAyAONgKQAiADIAMpApACNwB5IANBCGpBGGogBSkAADcDACADQQhqQRBqIAQpAAA3AwAg\ -A0EIakEIaiAHKQAANwMAIAMgAykAeTcDCEHgnsAAQSsgA0EIakGYi8AAQaiLwAAQggEACyAEIAJB2I\ -rAABCNAQALIAVBwABBxInAABCNAQALIAZBwABB1InAABCNAQALIAZBIEHkicAAEI0BAAsgA0GQAmpB\ -CGoiBCAbNgIAIANBkAJqQRBqIgUgGTYCACADQZACakEYaiIGIA82AgAgAyAaNgKcAiADQYEBaiIHIA\ -QpAwA3AAAgAyAYNgKkAiADQYkBaiIEIAUpAwA3AAAgAyAINgKsAiADQZEBaiIFIAYpAwA3AAAgAyAc\ -NgKUAiADIB02ApACIAMgAykDkAI3AHkgA0EIakEYaiAFKQAANwMAIANBCGpBEGogBCkAADcDACADQQ\ -hqQQhqIAcpAAA3AwAgAyADKQB5NwMIQeCewABBKyADQQhqQZiLwABBqIvAABCCAQALIANBkAJqQQhq\ -IgQgFTYCACADQZACakEQaiIFIBM2AgAgA0GQAmpBGGoiBiARNgIAIAMgFDYCnAIgA0GBAWoiByAEKQ\ -MANwAAIAMgEjYCpAIgA0GJAWoiBCAFKQMANwAAIAMgEDYCrAIgA0GRAWoiBSAGKQMANwAAIAMgFjYC\ -lAIgAyAXNgKQAiADIAMpA5ACNwB5IANBCGpBGGogBSkAADcDACADQQhqQRBqIAQpAAA3AwAgA0EIak\ -EIaiAHKQAANwMAIAMgAykAeTcDCEHgnsAAQSsgA0EIakGYi8AAQaiLwAAQggEACyADQZgCaiIEIBg2\ -AgAgA0GgAmoiBSAINgIAIANBqAJqIgYgDzYCACADIBs2ApwCIANB8QFqIgcgBCkDADcAACADIBo2Aq\ -QCIANB+QFqIgggBSkDADcAACADIBk2AqwCIANBgQJqIgAgBikDADcAACADIBw2ApQCIAMgHTYCkAIg\ -AyADKQOQAjcA6QEgBiAAKQAANwMAIAUgCCkAADcDACAEIAcpAAA3AwAgAyADKQDpATcDkAJB4J7AAE\ -ErIANBkAJqQZiLwABBqIvAABCCAQALIAQgAkHoisAAEIwBAAvqEQEYfyMAIQIgACgCACEDIAAoAggh\ -BCAAKAIMIQUgACgCBCEGIAJBwABrIgJBGGoiB0IANwMAIAJBIGoiCEIANwMAIAJBOGoiCUIANwMAIA\ -JBMGoiCkIANwMAIAJBKGoiC0IANwMAIAJBCGoiDCABKQAINwMAIAJBEGoiDSABKQAQNwMAIAcgASgA\ -GCIONgIAIAggASgAICIPNgIAIAIgASkAADcDACACIAEoABwiEDYCHCACIAEoACQiETYCJCALIAEoAC\ -giEjYCACACIAEoACwiCzYCLCAKIAEoADAiEzYCACACIAEoADQiCjYCNCAJIAEoADgiFDYCACACIAEo\ -ADwiCTYCPCAAIAMgDSgCACINIA8gEyACKAIAIhUgESAKIAIoAgQiFiACKAIUIhcgCiARIBcgFiATIA\ -8gDSAGIBUgAyAEIAZxaiAFIAZBf3NxampB+Miqu31qQQd3aiIBaiAGIAIoAgwiGGogBCAMKAIAIgxq\ -IAUgFmogASAGcWogBCABQX9zcWpB1u6exn5qQQx3IAFqIgIgAXFqIAYgAkF/c3FqQdvhgaECakERdy\ -ACaiIHIAJxaiABIAdBf3NxakHunfeNfGpBFncgB2oiASAHcWogAiABQX9zcWpBr5/wq39qQQd3IAFq\ -IghqIBAgAWogDiAHaiAXIAJqIAggAXFqIAcgCEF/c3FqQaqMn7wEakEMdyAIaiICIAhxaiABIAJBf3\ -NxakGTjMHBempBEXcgAmoiASACcWogCCABQX9zcWpBgaqaampBFncgAWoiByABcWogAiAHQX9zcWpB\ -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\ -ogCCABQX9zcWogAigCFCIZakEHdyICIAFxIAhqIAkgAkF/c3FqakELdyIHIAJxIAlqIAEgB0F/c3Fq\ -akETdyIIIAdxIAFqIAIgCEF/c3FqakEDdyIBIAhxIAJqIAcgAUF/c3FqakEHdyICIAFxIAdqIAggAk\ -F/c3FqakELdyIHIAJxIAhqIAEgB0F/c3FqakETdyIIIAdxIAFqIAIgCEF/c3FqakEDdyIBIBQgASAK\ -IAEgCHEgAmogByABQX9zcWpqQQd3IglxIAdqIAggCUF/c3FqakELdyICIAlyIBUgAiAJcSIHIAhqIA\ -EgAkF/c3FqakETdyIBcSAHcmogFmpBmfOJ1AVqQQN3IgcgAiAPaiAJIA1qIAcgASACcnEgASACcXJq\ -QZnzidQFakEFdyICIAcgAXJxIAcgAXFyakGZ84nUBWpBCXciCCACciABIBNqIAggAiAHcnEgAiAHcX\ -JqQZnzidQFakENdyIBcSAIIAJxcmogF2pBmfOJ1AVqQQN3IgcgCCARaiACIBlqIAcgASAIcnEgASAI\ -cXJqQZnzidQFakEFdyICIAcgAXJxIAcgAXFyakGZ84nUBWpBCXciCCACciABIApqIAggAiAHcnEgAi\ -AHcXJqQZnzidQFakENdyIBcSAIIAJxcmogDGpBmfOJ1AVqQQN3IgcgCCASaiACIA5qIAcgASAIcnEg\ -ASAIcXJqQZnzidQFakEFdyICIAcgAXJxIAcgAXFyakGZ84nUBWpBCXciCCACciABIBRqIAggAiAHcn\ -EgAiAHcXJqQZnzidQFakENdyIBcSAIIAJxcmogGGpBmfOJ1AVqQQN3IgcgASAVaiAIIAtqIAIgEGog\ -ByABIAhycSABIAhxcmpBmfOJ1AVqQQV3IgIgByABcnEgByABcXJqQZnzidQFakEJdyIIIAIgB3JxIA\ -IgB3FyakGZ84nUBWpBDXciByAIcyIJIAJzaiAWakGh1+f2BmpBA3ciASATIAcgASAPIAIgCSABc2pq\ -QaHX5/YGakEJdyICcyAIIA1qIAEgB3MgAnNqQaHX5/YGakELdyIIc2pqQaHX5/YGakEPdyIHIAhzIg\ -kgAnNqIAxqQaHX5/YGakEDdyIBIBQgByABIBIgAiAJIAFzampBodfn9gZqQQl3IgJzIAggDmogASAH\ -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\ -AKEAsgECkDACESIA4pAwAhEyAEKQMAIRQgAikDACEVIA0gCEEYaikDADcDACAPIAhBEGopAwA3AwAg\ -ESAIQQhqKQMANwMAIAUgCCkDADcDACAHIAEpAwA3AwAgB0EIaiABQQhqKQMANwMAIAdBEGogAUEQai\ -kDADcDACAHQRhqIAFBGGopAwA3AwAgAiAUNwPQASACIBM3A8gBIAIgEjcDwAEgAiAVNwO4ASACIAk6\ -ANkBQcAAIQYgAkHAADoA2AFCACESIAJCADcDcCABQWBqIQEgCSEKIAtBAWoiC0EBRw0ACwsgAiACQf\ -AAakHwABCgASIBLQBpIQggAS0AaCEGDAILQQAgC2sgA0GIi8AAEI8BAAsgAkEQaiABQRBqKQMANwMA\ -IAJBGGogAUEYaikDADcDACACQSBqIAFBIGopAwA3AwAgAkEwaiABQTBqKQMANwMAIAJBOGogAUE4ai\ -kDADcDACACQcAAaiABQcAAaikDADcDACACQcgAaiABQcgAaikDADcDACACQdAAaiABQdAAaikDADcD\ -ACACQdgAaiABQdgAaikDADcDACACQeAAaiABQeAAaikDADcDACACIAEpAwg3AwggAiABKQMoNwMoIA\ -FB6QBqLQAAIQUgAS0AaiEHIAIgAS0AaCIGOgBoIAIgASkDADcDACACIAcgBUVyQQJyIgg6AGkLIAJB\ -8ABqQRhqIgEgAkEgaikDADcDACACQfAAakEQaiIFIAJBGGopAwA3AwAgAkHwAGpBCGoiByACQRBqKQ\ -MANwMAIAIgAikDCDcDcCACQfAAaiACQShqIAZCACAIQQhyEAsgACABKQMANwAYIAAgBSkDADcAECAA\ -IAcpAwA3AAggACACKQNwNwAAIAJB4AFqJAAPCyAHIANB+IrAABCPAQALpwgCAX8tfiAAKQPAASECIA\ -ApA5gBIQMgACkDcCEEIAApA0ghBSAAKQMgIQYgACkDuAEhByAAKQOQASEIIAApA2ghCSAAKQNAIQog\ -ACkDGCELIAApA7ABIQwgACkDiAEhDSAAKQNgIQ4gACkDOCEPIAApAxAhECAAKQOoASERIAApA4ABIR\ -IgACkDWCETIAApAzAhFCAAKQMIIRUgACkDoAEhFiAAKQN4IRcgACkDUCEYIAApAyghGSAAKQMAIRpB\ -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\ -ALKQAANwOQASAAQThqIAJBkAFqQThqKQMANwAAIABBMGogAkGQAWpBMGopAwA3AAAgAEEoaiACQZAB\ -akEoaikDADcAACAAQSBqIAopAwA3AAAgAEEYaiAEKQMANwAAIABBEGogDCkDADcAACAAQQhqIA0pAw\ -A3AAAgACACKQOQATcAACACQcAAOgCIASACIAg6AIkBIAJCADcDICAEIBEpAgA3AwAgDCAQKQIANwMA\ -IA0gDikCADcDACACIAYpAgA3A5ABIAJBkAFqIABBwABCACAIEAsgBCgCACELIAwoAgAhDCANKAIAIQ\ -0gAigCrAEhDiACKAKkASEQIAIoApwBIREgAigClAEhEiACKAKQASETIA9B/wFxIgRBN08NAyAHIARB\ -BXRqIgQgEzYCACAEIA42AhwgBCALNgIYIAQgEDYCFCAEIAw2AhAgBCARNgIMIAQgDTYCCCAEIBI2Ag\ -QgAyAPQQFqIgQ6AAAgBEH/AXEgBUsNAAsLIAJB0AFqJAAPC0HYocAAQStByIrAABCdAQALIAIgDjYC\ -rAEgAiALNgKoASACIBA2AqQBIAIgDDYCoAEgAiARNgKcASACIA02ApgBIAIgEjYClAEgAiATNgKQAU\ -HgnsAAQSsgAkGQAWpBmIvAAEGoi8AAEIIBAAuoBgERfyMAQYABayICJAACQAJAIAEoAgAiA0EQTw0A\ -IAFBBGoiBCADakEQIANrIgMgAxCnARogAUEANgIAIAFBFGoiAyAEEA4gAkEQakEIaiIEIAFBzABqIg\ -UpAAA3AwAgAiABQcQAaiIGKQAANwMQIAMgAkEQahAOIAJBCGoiByABQRxqIggpAgA3AwAgAiABKQIU\ -NwMAIAJBEGpBKGoiCUIANwMAIAJBEGpBIGoiCkIANwMAIAJBEGpBGGoiC0IANwMAIAJBEGpBEGoiDE\ -IANwMAIARCADcDACACQgA3AxAgAkHQAGpBDGoiDUIANwIAIAJCADcCVCACQRA2AlAgAkHoAGpBEGog\ -AkHQAGpBEGooAgA2AgAgAkHoAGpBCGoiDiACQdAAakEIaiIPKQMANwMAIAIgAikDUDcDaCACQRBqQT\ -hqIhAgAkHoAGpBDGoiESkCADcDACACQRBqQTBqIhIgAikCbDcDACAFIBApAwA3AAAgBiASKQMANwAA\ -IAFBPGogCSkDADcAACABQTRqIAopAwA3AAAgAUEsaiALKQMANwAAIAFBJGogDCkDADcAACAIIAQpAw\ -A3AAAgASACKQMQNwAUIAFBADYCAEEQEAkiBUUNASAFIAIpAwA3AAAgBUEIaiAHKQMANwAAIAlCADcD\ -ACAKQgA3AwAgC0IANwMAIAJBEGpBEGoiBkIANwMAIARCADcDACACQgA3AxAgDUIANwIAIAJCADcCVC\ -ACQRA2AlAgAkHoAGpBEGogAkHQAGpBEGooAgA2AgAgDiAPKQMANwMAIAIgAikDUDcDaCAQIBEpAgA3\ -AwAgEiACKQJsNwMAIANBOGogECkDADcAACADQTBqIBIpAwA3AAAgA0EoaiAJKQMANwAAIANBIGogCi\ -kDADcAACADQRhqIAspAwA3AAAgA0EQaiAGKQMANwAAIANBCGogBCkDADcAACADIAIpAxA3AAAgAUEA\ -NgIAIABBEDYCBCAAIAU2AgAgAkGAAWokAA8LQdyfwABBFyACQRBqQdibwABB6JvAABCCAQALQRBBAU\ -EAKAKs6kAiAkECIAIbEQQAAAv2BQIHfwh+IwBBoAFrIgIkACACQTBqQSxqQgA3AgAgAkEwakEkakIA\ -NwIAIAJBMGpBHGpCADcCACACQTBqQRRqQgA3AgAgAkEwakEMakIANwIAIAJCADcCNCACQTA2AjAgAk\ -HoAGpBMGogAkEwakEwaigCADYCACACQegAakEoaiACQTBqQShqKQMANwMAIAJB6ABqQSBqIAJBMGpB\ -IGopAwA3AwAgAkHoAGpBGGogAkEwakEYaikDADcDACACQegAakEQaiACQTBqQRBqKQMANwMAIAJB6A\ -BqQQhqIAJBMGpBCGopAwA3AwAgAiACKQMwNwNoIAJBKGoiAyACQegAakEsaikCADcDACACQSBqIgQg\ -AkHoAGpBJGopAgA3AwAgAkEYaiIFIAJB6ABqQRxqKQIANwMAIAJBEGoiBiACQegAakEUaikCADcDAC\ -ACQQhqIgcgAkHoAGpBDGopAgA3AwAgAiACKQJsNwMAIAEgAhAfIAFCADcDCCABQgA3AwAgAUEANgJQ\ -IAFBACkD4J1AIgk3AxAgAUEYakEAKQPonUAiCjcDACABQSBqQQApA/CdQCILNwMAIAFBKGpBACkD+J\ -1AIgw3AwAgAUEwakEAKQOAnkAiDTcDACABQThqQQApA4ieQCIONwMAIAFBwABqQQApA5CeQCIPNwMA\ -IAFByABqQQApA5ieQCIQNwMAAkBBMBAJIggNAEEwQQFBACgCrOpAIgJBAiACGxEEAAALIAggAikDAD\ -cAACAIQShqIAMpAwA3AAAgCEEgaiAEKQMANwAAIAhBGGogBSkDADcAACAIQRBqIAYpAwA3AAAgCEEI\ -aiAHKQMANwAAIAFCADcDCCABQgA3AwAgAUEANgJQIAFBEGoiASAJNwMAIAFBCGogCjcDACABQRBqIA\ -s3AwAgAUEYaiAMNwMAIAFBIGogDTcDACABQShqIA43AwAgAUEwaiAPNwMAIAFBOGogEDcDACAAQTA2\ -AgQgACAINgIAIAJBoAFqJAAL4QUCCX8IfiMAQdABayICJAAgAkHAAGpBDGpCADcCACACQcAAakEUak\ +dwAEA9CBgIAAzgEGBgQEBgYCBA4GBAQPAQQEBAEHBQQQBAQEBAcLBAQEBA0EBAQEBAQEBAQEBAQEBA\ +QBBQQEBAQEBAQEBwUEBAQGBgYGBAQEDAQEEQEFBAQEBAEEBgYGBgYGBAQEBAQEBAYEBAQEBAYGBAQE\ +BAQEBAQEBgQEBAQEBgQEBAQEBAQEBAoFBQEBBAQEBAQGBgYGBQYBAAUIBAcHAQYJAQYBAQcBAgEBAQ\ +QBBwEBBwEFBQIFBQQABQEBAQECAAAFBAMCAgICAgICAgICAgICAgAEAQSFgICAAAFwAXl5BYOAgIAA\ +AQARBomAgIAAAX8BQYCAwAALB66BgIAACQZtZW1vcnkCABNfX3diZ19kZW5vaGFzaF9mcmVlAJkBC2\ +NyZWF0ZV9oYXNoAAYLdXBkYXRlX2hhc2gAmgELZGlnZXN0X2hhc2gAlgEfX193YmluZGdlbl9hZGRf\ +dG9fc3RhY2tfcG9pbnRlcgC5ARFfX3diaW5kZ2VuX21hbGxvYwCiARJfX3diaW5kZ2VuX3JlYWxsb2\ +MAqwEPX193YmluZGdlbl9mcmVlALIBCauBgIAAAQBBAQt4sQHOAbQBsAG8AZABzwFhGGZSyAE7V1tu\ +qQHDAXdWWm12WD9dpQHGAW9ZIDCcAccBU2g+XKQBcGcxR54ByQFzLjSfAcoBdFQZJoUBywFjGiuGAc\ +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\ +EKdyICcyANc2pBDXcgA2oiBEEKd2o2AgAgACABIBVqIAYgCmogCSAPICBBf3Nyc2pBzvrPynpqQQZ3\ +aiADIAtqIA0gBXMgBHNqQQt3IAJqIgpqNgIQIAAgASAQaiAFaiACIAdqIAQgFnMgCnNqQQt3ajYCDA\ +uBOQIIfwR+IwBB4ANrIgMkACADIAI2AgwgAyABNgIIAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC\ +QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBfWoOBwAIBwIJAw\ +EJCwJAAkAgAUGAgMAAQQMQmAFFDQAgAUGogMAAQQMQmAFFDQEgAUHQgMAAQQMQmAENCiADQbABakEM\ +akIANwIAIANBsAFqQRRqQgA3AgAgA0GwAWpBHGpCADcCACADQbABakEkakIANwIAIANBsAFqQSxqQg\ +A3AgAgA0GwAWpBNGpCADcCACADQbABakE8akIANwIAIANCADcCtAEgA0HAADYCsAEgA0HIAmogA0Gw\ +AWpBxAAQoAEaIANB2ABqIgQgA0HIAmpBPGopAgA3AwAgA0HQAGoiBSADQcgCakE0aikCADcDACADQc\ +gAaiIGIANByAJqQSxqKQIANwMAIANBwABqIgcgA0HIAmpBJGopAgA3AwAgA0E4aiIIIANByAJqQRxq\ +KQIANwMAIANBMGoiCSADQcgCakEUaikCADcDACADQSBqQQhqIgogA0HIAmpBDGopAgA3AwAgAyADKQ\ +LMAjcDIEHgABAIIgJFDQ0gAkEANgIIIAJCADcDACACIAMpAyA3AgwgAkEUaiAKKQMANwIAIAJBHGog\ +CSkDADcCACACQSRqIAgpAwA3AgAgAkEsaiAHKQMANwIAIAJBNGogBikDADcCACACQTxqIAUpAwA3Ag\ +AgAkHEAGogBCkDADcCACACQdQAakEAKQKwnEA3AgAgAkEAKQKonEA3AkxB1IDAACEEDCELIANBsAFq\ +QQxqIgJCADcCACADQgA3ArQBIANBEDYCsAEgA0HIAmpBEGoiBSADQbABakEQaiIGKAIANgIAIANByA\ +JqQQhqIgQgA0GwAWpBCGoiBykDADcDACADQSBqQQhqIgggA0HIAmpBDGoiCSkCADcDACADIAMpA7AB\ +NwPIAiADIAMpAswCNwMgIAJCADcCACADQgA3ArQBIANBEDYCsAEgBSAGKAIANgIAIAQgBykDADcDAC\ +ADIAMpA7ABNwPIAiADQRBqQQhqIgUgCSkCADcDACADIAMpAswCNwMQIAQgCCkDADcDACADIAMpAyA3\ +A8gCQdQAEAgiAkUNCiACQQA2AgAgAiADKQPIAjcCBCACQgA3AhQgAiADKQMQNwJEIAJBHGpCADcCAC\ +ACQSRqQgA3AgAgAkEsakIANwIAIAJBNGpCADcCACACQTxqQgA3AgAgAkEMaiAEKQMANwIAIAJBzABq\ +IAUpAwA3AgBBhIDAACEEDCALIANBsAFqQQxqQgA3AgAgA0GwAWpBFGpCADcCACADQbABakEcakIANw\ +IAIANBsAFqQSRqQgA3AgAgA0GwAWpBLGpCADcCACADQbABakE0akIANwIAIANBsAFqQTxqQgA3AgAg\ +A0IANwK0ASADQcAANgKwASADQcgCaiADQbABakHEABCgARogA0HYAGoiBCADQcgCakE8aikCADcDAC\ +ADQdAAaiIFIANByAJqQTRqKQIANwMAIANByABqIgYgA0HIAmpBLGopAgA3AwAgA0HAAGoiByADQcgC\ +akEkaikCADcDACADQThqIgggA0HIAmpBHGopAgA3AwAgA0EwaiIJIANByAJqQRRqKQIANwMAIANBIG\ +pBCGoiCiADQcgCakEMaikCADcDACADIAMpAswCNwMgQeAAEAgiAkUNCiACQQA2AgggAkIANwMAIAIg\ +AykDIDcCDCACQRRqIAopAwA3AgAgAkEcaiAJKQMANwIAIAJBJGogCCkDADcCACACQSxqIAcpAwA3Ag\ +AgAkE0aiAGKQMANwIAIAJBPGogBSkDADcCACACQcQAaiAEKQMANwIAIAJB1ABqQQApArCcQDcCACAC\ +QQApAqicQDcCTEGsgMAAIQQMHwsCQAJAIAFB+IDAAEEJEJgBRQ0AIAFBqIHAAEEJEJgBRQ0BIAFBvI\ +TAACACEJgBRQ0EIAFB7ITAACACEJgBRQ0FIAFBnIXAACACEJgBRQ0GIAFBzIXAACACEJgBDQkgA0EA\ +NgKwASADQbABakEEckEAQcgAEKgBGiADQcgANgKwASADQcgCaiADQbABakHMABCgARogA0EgaiADQc\ +gCakEEckHIABCgARpBmAIQCCICRQ0aIAJBAEHMARCoAUHMAWogA0EgakHIABCgARpB2IXAACEEDCAL\ +IANBsAFqQQxqQgA3AgAgA0GwAWpBFGpCADcCACADQbABakEcakIANwIAIANBsAFqQSRqQgA3AgAgA0\ +GwAWpBLGpCADcCACADQbABakE0akIANwIAIANBsAFqQTxqQgA3AgAgA0IANwK0ASADQcAANgKwASAD\ +QcgCaiADQbABakHEABCgARogA0EgakE4aiIEIANByAJqQTxqKQIANwMAIANBIGpBMGoiBSADQcgCak\ +E0aikCADcDACADQSBqQShqIgYgA0HIAmpBLGopAgA3AwAgA0HAAGoiByADQcgCakEkaikCADcDACAD\ +QSBqQRhqIgggA0HIAmpBHGopAgA3AwAgA0EgakEQaiIJIANByAJqQRRqKQIANwMAIANBIGpBCGoiCi\ +ADQcgCakEMaikCADcDACADIAMpAswCNwMgQeAAEAgiAkUNDCACQgA3AwAgAkEANgIcIAIgAykDIDcC\ +ICACQQApA+CcQDcDCCACQRBqQQApA+icQDcDACACQRhqQQAoAvCcQDYCACACQShqIAopAwA3AgAgAk\ +EwaiAJKQMANwIAIAJBOGogCCkDADcCACACQcAAaiAHKQMANwIAIAJByABqIAYpAwA3AgAgAkHQAGog\ +BSkDADcCACACQdgAaiAEKQMANwIAQYSBwAAhBAwfCyADQbABakEMakIANwIAIANBsAFqQRRqQgA3Ag\ +AgA0GwAWpBHGpCADcCACADQbABakEkakIANwIAIANBsAFqQSxqQgA3AgAgA0GwAWpBNGpCADcCACAD\ +QbABakE8akIANwIAIANCADcCtAEgA0HAADYCsAEgA0HIAmogA0GwAWpBxAAQoAEaIANB2ABqIgQgA0\ +HIAmpBPGopAgA3AwAgA0HQAGoiBSADQcgCakE0aikCADcDACADQSBqQShqIgYgA0HIAmpBLGopAgA3\ +AwAgA0EgakEgaiIHIANByAJqQSRqKQIANwMAIANBIGpBGGoiCCADQcgCakEcaikCADcDACADQSBqQR\ +BqIgkgA0HIAmpBFGopAgA3AwAgA0EgakEIaiIKIANByAJqQQxqKQIANwMAIAMgAykCzAI3AyBB+AAQ\ +CCICRQ0MIAJCADcDACACQQA2AjAgAiADKQMgNwI0IAJBACkDuJxANwMIIAJBEGpBACkDwJxANwMAIA\ +JBGGpBACkDyJxANwMAIAJBIGpBACkD0JxANwMAIAJBKGpBACkD2JxANwMAIAJBPGogCikDADcCACAC\ +QcQAaiAJKQMANwIAIAJBzABqIAgpAwA3AgAgAkHUAGogBykDADcCACACQdwAaiAGKQMANwIAIAJB5A\ +BqIAUpAwA3AgAgAkHsAGogBCkDADcCAEG0gcAAIQQMHgsCQAJAAkACQCABQfyBwABBBhCYAUUNACAB\ +QaiCwABBBhCYAUUNASABQdSCwABBBhCYAUUNAiABQYCDwABBBhCYAUUNAyABQfyFwABBBhCYAQ0KIA\ +NB5QJqIgRBACkDsJ1AIgs3AAAgA0HdAmpBACkDqJ1AIgw3AAAgA0HVAmpBACkDoJ1AIg03AAAgA0EA\ +KQOYnUAiDjcAzQJB+A4QCCICRQ0cIAJCADcDACACIA43AwggAkEQaiANNwMAIAJBGGogDDcDACACQS\ +BqIAs3AwAgAkEoakEAQcMAEKgBGiACQQA6APAOIAJBiAFqIAQpAAA3AAAgAkGDAWogA0HIAmpBGGop\ +AAA3AAAgAkH7AGogA0HIAmpBEGopAAA3AAAgAkHzAGogA0HQAmopAAA3AAAgAiADKQDIAjcAa0GEhs\ +AAIQQMIQsgA0GwAWpBDGpCADcCACADQbABakEUakIANwIAIANBsAFqQRxqQgA3AgAgA0GwAWpBJGpC\ +ADcCACADQbABakEsakIANwIAIANBsAFqQTRqQgA3AgAgA0GwAWpBPGpCADcCACADQgA3ArQBIANBwA\ +A2ArABIANByAJqIANBsAFqQcQAEKABGiADQdgAaiIEIANByAJqQTxqKQIANwMAIANB0ABqIgUgA0HI\ +AmpBNGopAgA3AwAgA0HIAGoiBiADQcgCakEsaikCADcDACADQcAAaiIHIANByAJqQSRqKQIANwMAIA\ +NBOGoiCCADQcgCakEcaikCADcDACADQTBqIgkgA0HIAmpBFGopAgA3AwAgA0EgakEIaiIKIANByAJq\ +QQxqKQIANwMAIAMgAykCzAI3AyBB8AAQCCICRQ0PIAIgAykDIDcCDCACQQA2AgggAkIANwMAIAJBHG\ +ogCSkDADcCACACQRRqIAopAwA3AgAgAkEkaiAIKQMANwIAIAJBLGogBykDADcCACACQTRqIAYpAwA3\ +AgAgAkE8aiAFKQMANwIAIAJBxABqIAQpAwA3AgAgAkHUAGpBACkC/JxANwIAIAJBACkC9JxANwJMIA\ +JB5ABqQQApAoydQDcCACACQdwAakEAKQKEnUA3AgBBhILAACEEDCALIANBsAFqQQxqQgA3AgAgA0Gw\ +AWpBFGpCADcCACADQbABakEcakIANwIAIANBsAFqQSRqQgA3AgAgA0GwAWpBLGpCADcCACADQbABak\ +E0akIANwIAIANBsAFqQTxqQgA3AgAgA0IANwK0ASADQcAANgKwASADQcgCaiADQbABakHEABCgARog\ +A0HYAGoiBCADQcgCakE8aikCADcDACADQdAAaiIFIANByAJqQTRqKQIANwMAIANByABqIgYgA0HIAm\ +pBLGopAgA3AwAgA0HAAGoiByADQcgCakEkaikCADcDACADQThqIgggA0HIAmpBHGopAgA3AwAgA0Ew\ +aiIJIANByAJqQRRqKQIANwMAIANBIGpBCGoiCiADQcgCakEMaikCADcDACADIAMpAswCNwMgQfAAEA\ +giAkUNDyACIAMpAyA3AgwgAkEANgIIIAJCADcDACACQRxqIAkpAwA3AgAgAkEUaiAKKQMANwIAIAJB\ +JGogCCkDADcCACACQSxqIAcpAwA3AgAgAkE0aiAGKQMANwIAIAJBPGogBSkDADcCACACQcQAaiAEKQ\ +MANwIAIAJB1ABqQQApA6CdQDcCACACQQApA5idQDcCTCACQeQAakEAKQOwnUA3AgAgAkHcAGpBACkD\ +qJ1ANwIAQbCCwAAhBAwfCyADQQA2ArABIANBsAFqQQRyQQBBgAEQqAEaIANBgAE2ArABIANByAJqIA\ +NBsAFqQYQBEKABGiADQSBqIANByAJqQQRyQYABEKABGkHYARAIIgJFDQ8gAkIANwMIIAJCADcDACAC\ +QQA2AlAgAkEAKQO4nUA3AxAgAkEYakEAKQPAnUA3AwAgAkEgakEAKQPInUA3AwAgAkEoakEAKQPQnU\ +A3AwAgAkEwakEAKQPYnUA3AwAgAkE4akEAKQPgnUA3AwAgAkHAAGpBACkD6J1ANwMAIAJByABqQQAp\ +A/CdQDcDACACQdQAaiADQSBqQYABEKABGkHcgsAAIQQMHgsgA0EANgKwASADQbABakEEckEAQYABEK\ +gBGiADQYABNgKwASADQcgCaiADQbABakGEARCgARogA0EgaiADQcgCakEEckGAARCgARpB2AEQCCIC\ +RQ0PIAJCADcDCCACQgA3AwAgAkEANgJQIAJBACkD+J1ANwMQIAJBGGpBACkDgJ5ANwMAIAJBIGpBAC\ +kDiJ5ANwMAIAJBKGpBACkDkJ5ANwMAIAJBMGpBACkDmJ5ANwMAIAJBOGpBACkDoJ5ANwMAIAJBwABq\ +QQApA6ieQDcDACACQcgAakEAKQOwnkA3AwAgAkHUAGogA0EgakGAARCgARpBiIPAACEEDB0LAkACQA\ +JAIAEpAABC89CFm9PFjJk0UQ0AIAEpAABC89CFm9PFzJo2UQ0BIAEpAABC89CFm9PljJw0UQ0CIAEp\ +AABC89CFm9OlzZgyUg0IIANBADYCsAEgA0GwAWpBBHJBAEHIABCoARogA0HIADYCsAEgA0HIAmogA0\ +GwAWpBzAAQoAEaIANBIGogA0HIAmpBBHJByAAQoAEaQZgCEAgiAkUNFSACQQBBzAEQqAFBzAFqIANB\ +IGpByAAQoAEaQZiEwAAhBAwfCyADQQA2ArABIANBsAFqQQRyQQBBkAEQqAEaIANBkAE2ArABIANByA\ +JqIANBsAFqQZQBEKABGiADQSBqIANByAJqQQRyQZABEKABGkHgAhAIIgJFDREgAkEAQcwBEKgBQcwB\ +aiADQSBqQZABEKABGkGsg8AAIQQMHgsgA0EANgKwASADQbABakEEckEAQYgBEKgBGiADQYgBNgKwAS\ +ADQcgCaiADQbABakGMARCgARogA0EgaiADQcgCakEEckGIARCgARpB2AIQCCICRQ0RIAJBAEHMARCo\ +AUHMAWogA0EgakGIARCgARpB0IPAACEEDB0LIANBADYCsAEgA0GwAWpBBHJBAEHoABCoARogA0HoAD\ +YCsAEgA0HIAmogA0GwAWpB7AAQoAEaIANBIGogA0HIAmpBBHJB6AAQoAEaQbgCEAgiAkUNESACQQBB\ +zAEQqAFBzAFqIANBIGpB6AAQoAEaQfSDwAAhBAwcCyADQQA2ArABIANBsAFqQQRyQQBBkAEQqAEaIA\ +NBkAE2ArABIANByAJqIANBsAFqQZQBEKABGiADQSBqIANByAJqQQRyQZABEKABGkHgAhAIIgJFDRIg\ +AkEAQcwBEKgBQcwBaiADQSBqQZABEKABGkHIhMAAIQQMGwsgA0EANgKwASADQbABakEEckEAQYgBEK\ +gBGiADQYgBNgKwASADQcgCaiADQbABakGMARCgARogA0EgaiADQcgCakEEckGIARCgARpB2AIQCCIC\ +RQ0SIAJBAEHMARCoAUHMAWogA0EgakGIARCgARpB+ITAACEEDBoLIANBADYCsAEgA0GwAWpBBHJBAE\ +HoABCoARogA0HoADYCsAEgA0HIAmogA0GwAWpB7AAQoAEaIANBIGogA0HIAmpBBHJB6AAQoAEaQbgC\ +EAgiAkUNEiACQQBBzAEQqAFBzAFqIANBIGpB6AAQoAEaQaiFwAAhBAwZCyABQaiGwABBBRCYAQ0BIA\ +NBsAFqQQxqQgA3AgAgA0GwAWpBFGpCADcCACADQbABakEcakIANwIAIANBsAFqQSRqQgA3AgAgA0Gw\ +AWpBLGpCADcCACADQbABakE0akIANwIAIANBsAFqQTxqQgA3AgAgA0IANwK0ASADQcAANgKwASADQc\ +gCaiADQbABakHEABCgARogA0HYAGoiBCADQcgCakE8aikCADcDACADQdAAaiIFIANByAJqQTRqKQIA\ +NwMAIANByABqIgYgA0HIAmpBLGopAgA3AwAgA0HAAGoiByADQcgCakEkaikCADcDACADQSBqQRhqIg\ +ggA0HIAmpBHGopAgA3AwAgA0EgakEQaiIJIANByAJqQRRqKQIANwMAIANBIGpBCGoiCiADQcgCakEM\ +aikCADcDACADIAMpAswCNwMgQegAEAgiAkUNFCACQgA3AwAgAkEANgIgIAIgAykDIDcCJCACQQApA+\ +CiQDcDCCACQRBqQQApA+iiQDcDACACQRhqQQApA/CiQDcDACACQSxqIAopAwA3AgAgAkE0aiAJKQMA\ +NwIAIAJBPGogCCkDADcCACACQcQAaiAHKQMANwIAIAJBzABqIAYpAwA3AgAgAkHUAGogBSkDADcCAC\ +ACQdwAaiAEKQMANwIAQbCGwAAhBAwYCyABKAAAQfPQhYsDRg0WCyADQQE2AiQgAyADQQhqNgIgQTgQ\ +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\ +AkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIgs2AiAgAyABQRhqKAAAIgJBGHQgAkEIdE\ +GAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIMNgIYIAMoAgAhDSADKAIEIQ4gAygCCCEPIAMoAhAhECAD\ +KAIMIREgAygCFCESIAMgAUEkaigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiEz\ +YCJCADIAFBKGooAAAiAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyIhQ2AiggAyABQTBq\ +KAAAIgJBGHQgAkEIdEGAgPwHcXIgAkEIdkGA/gNxIAJBGHZyciIVNgIwIAMgAUEsaigAACICQRh0IA\ +JBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnIiFjYCLCADIAFBNGooAAAiAkEYdCACQQh0QYCA/Adx\ +ciACQQh2QYD+A3EgAkEYdnJyIgI2AjQgAyABQThqKAAAIhdBGHQgF0EIdEGAgPwHcXIgF0EIdkGA/g\ +NxIBdBGHZyciIXNgI4IAMgAUE8aigAACIYQRh0IBhBCHRBgID8B3FyIBhBCHZBgP4DcSAYQRh2cnIi\ +GDYCPCAIIBMgCnMgGHMgDCAQcyAVcyARIA5zIBNzIBdzQQF3IhlzQQF3IhpzQQF3IhsgCiAScyACcy\ +AQIA9zIBRzIBhzQQF3IhxzQQF3Ih1zIBggAnMgHXMgFSAUcyAccyAbc0EBdyIec0EBdyIfcyAaIBxz\ +IB5zIBkgGHMgG3MgFyAVcyAacyAWIBNzIBlzIAsgDHMgF3MgEiARcyAWcyAPIA1zIAtzIAJzQQF3Ii\ +BzQQF3IiFzQQF3IiJzQQF3IiNzQQF3IiRzQQF3IiVzQQF3IiZzQQF3IicgHSAhcyACIBZzICFzIBQg\ +C3MgIHMgHXNBAXciKHNBAXciKXMgHCAgcyAocyAfc0EBdyIqc0EBdyIrcyAfIClzICtzIB4gKHMgKn\ +MgJ3NBAXciLHNBAXciLXMgJiAqcyAscyAlIB9zICdzICQgHnMgJnMgIyAbcyAlcyAiIBpzICRzICEg\ +GXMgI3MgICAXcyAicyApc0EBdyIuc0EBdyIvc0EBdyIwc0EBdyIxc0EBdyIyc0EBdyIzc0EBdyI0c0\ +EBdyI1ICsgL3MgKSAjcyAvcyAoICJzIC5zICtzQQF3IjZzQQF3IjdzICogLnMgNnMgLXNBAXciOHNB\ +AXciOXMgLSA3cyA5cyAsIDZzIDhzIDVzQQF3IjpzQQF3IjtzIDQgOHMgOnMgMyAtcyA1cyAyICxzID\ +RzIDEgJ3MgM3MgMCAmcyAycyAvICVzIDFzIC4gJHMgMHMgN3NBAXciPHNBAXciPXNBAXciPnNBAXci\ +P3NBAXciQHNBAXciQXNBAXciQnNBAXciQyA5ID1zIDcgMXMgPXMgNiAwcyA8cyA5c0EBdyJEc0EBdy\ +JFcyA4IDxzIERzIDtzQQF3IkZzQQF3IkdzIDsgRXMgR3MgOiBEcyBGcyBDc0EBdyJIc0EBdyJJcyBC\ +IEZzIEhzIEEgO3MgQ3MgQCA6cyBCcyA/IDVzIEFzID4gNHMgQHMgPSAzcyA/cyA8IDJzID5zIEVzQQ\ +F3IkpzQQF3IktzQQF3IkxzQQF3Ik1zQQF3Ik5zQQF3Ik9zQQF3IlBzQQF3aiBGIEpzIEQgPnMgSnMg\ +R3NBAXciUXMgSXNBAXciUiBFID9zIEtzIFFzQQF3IlMgTCBBIDogOSA8IDEgJiAfICggISAXIBMgEC\ +AIQR53IlRqIA4gBSAHQR53IhAgBnMgCHEgBnNqaiANIAQgCEEFd2ogBiAFcyAHcSAFc2pqQZnzidQF\ +aiIOQQV3akGZ84nUBWoiVUEedyIIIA5BHnciDXMgBiAPaiAOIFQgEHNxIBBzaiBVQQV3akGZ84nUBW\ +oiDnEgDXNqIBAgEWogVSANIFRzcSBUc2ogDkEFd2pBmfOJ1AVqIhBBBXdqQZnzidQFaiIRQR53Ig9q\ +IAwgCGogESAQQR53IhMgDkEedyIMc3EgDHNqIBIgDWogDCAIcyAQcSAIc2ogEUEFd2pBmfOJ1AVqIh\ +FBBXdqQZnzidQFaiISQR53IgggEUEedyIQcyAKIAxqIBEgDyATc3EgE3NqIBJBBXdqQZnzidQFaiIK\ +cSAQc2ogCyATaiAQIA9zIBJxIA9zaiAKQQV3akGZ84nUBWoiDEEFd2pBmfOJ1AVqIg9BHnciC2ogFS\ +AKQR53IhdqIAsgDEEedyITcyAUIBBqIAwgFyAIc3EgCHNqIA9BBXdqQZnzidQFaiIUcSATc2ogFiAI\ +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\ +IMIAAgBjYCCAtBACAFNgKk6UBBACACNgKc6UAgCA8LIAcoAggiACABNgIMIAEgADYCCAwDCyABIAdB\ +EGogBhshBgNAIAYhCAJAIAAiAUEUaiIGKAIAIgANACABQRBqIQYgASgCECEACyAADQALIAhBADYCAA\ +wCCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQAoApzpQCIAIAJPDQBBACgCoOlAIgAgAksNBEEA\ +IQEgAkGvgARqIgVBEHZAACIAQX9GIgcNDSAAQRB0IgZFDQ1BAEEAKAKs6UBBACAFQYCAfHEgBxsiCG\ +oiADYCrOlAQQBBACgCsOlAIgEgACABIABLGzYCsOlAQQAoAqjpQCIBRQ0BQbTpwAAhAANAIAAoAgAi\ +BSAAKAIEIgdqIAZGDQMgACgCCCIADQAMBAsLQQAoAqTpQCEBAkACQCAAIAJrIgVBD0sNAEEAQQA2Aq\ +TpQEEAQQA2ApzpQCABIABBA3I2AgQgASAAaiIAIAAoAgRBAXI2AgQMAQtBACAFNgKc6UBBACABIAJq\ +IgY2AqTpQCAGIAVBAXI2AgQgASAAaiAFNgIAIAEgAkEDcjYCBAsgAUEIag8LAkACQEEAKALI6UAiAE\ +UNACAAIAZNDQELQQAgBjYCyOlAC0EAQf8fNgLM6UBBACAINgK46UBBACAGNgK06UBBAEGU5sAANgKg\ +5kBBAEGc5sAANgKo5kBBAEGU5sAANgKc5kBBAEGk5sAANgKw5kBBAEGc5sAANgKk5kBBAEGs5sAANg\ +K45kBBAEGk5sAANgKs5kBBAEG05sAANgLA5kBBAEGs5sAANgK05kBBAEG85sAANgLI5kBBAEG05sAA\ +NgK85kBBAEHE5sAANgLQ5kBBAEG85sAANgLE5kBBAEHM5sAANgLY5kBBAEHE5sAANgLM5kBBAEEANg\ +LA6UBBAEHU5sAANgLg5kBBAEHM5sAANgLU5kBBAEHU5sAANgLc5kBBAEHc5sAANgLo5kBBAEHc5sAA\ +NgLk5kBBAEHk5sAANgLw5kBBAEHk5sAANgLs5kBBAEHs5sAANgL45kBBAEHs5sAANgL05kBBAEH05s\ +AANgKA50BBAEH05sAANgL85kBBAEH85sAANgKI50BBAEH85sAANgKE50BBAEGE58AANgKQ50BBAEGE\ +58AANgKM50BBAEGM58AANgKY50BBAEGM58AANgKU50BBAEGU58AANgKg50BBAEGc58AANgKo50BBAE\ +GU58AANgKc50BBAEGk58AANgKw50BBAEGc58AANgKk50BBAEGs58AANgK450BBAEGk58AANgKs50BB\ +AEG058AANgLA50BBAEGs58AANgK050BBAEG858AANgLI50BBAEG058AANgK850BBAEHE58AANgLQ50\ +BBAEG858AANgLE50BBAEHM58AANgLY50BBAEHE58AANgLM50BBAEHU58AANgLg50BBAEHM58AANgLU\ +50BBAEHc58AANgLo50BBAEHU58AANgLc50BBAEHk58AANgLw50BBAEHc58AANgLk50BBAEHs58AANg\ +L450BBAEHk58AANgLs50BBAEH058AANgKA6EBBAEHs58AANgL050BBAEH858AANgKI6EBBAEH058AA\ +NgL850BBAEGE6MAANgKQ6EBBAEH858AANgKE6EBBAEGM6MAANgKY6EBBAEGE6MAANgKM6EBBACAGNg\ +Ko6UBBAEGM6MAANgKU6EBBACAIQVhqIgA2AqDpQCAGIABBAXI2AgQgBiAAakEoNgIEQQBBgICAATYC\ +xOlADAoLIAAoAgwNACAFIAFLDQAgBiABSw0CC0EAQQAoAsjpQCIAIAYgACAGSRs2AsjpQCAGIAhqIQ\ +VBtOnAACEAAkACQAJAA0AgACgCACAFRg0BIAAoAggiAA0ADAILCyAAKAIMRQ0BC0G06cAAIQACQANA\ +AkAgACgCACIFIAFLDQAgBSAAKAIEaiIFIAFLDQILIAAoAggiAA0ACwALQQAgBjYCqOlAQQAgCEFYai\ +IANgKg6UAgBiAAQQFyNgIEIAYgAGpBKDYCBEEAQYCAgAE2AsTpQCABIAVBYGpBeHFBeGoiACAAIAFB\ +EGpJGyIHQRs2AgRBACkCtOlAIQogB0EQakEAKQK86UA3AgAgByAKNwIIQQAgCDYCuOlAQQAgBjYCtO\ +lAQQAgB0EIajYCvOlAQQBBADYCwOlAIAdBHGohAANAIABBBzYCACAFIABBBGoiAEsNAAsgByABRg0J\ +IAcgBygCBEF+cTYCBCABIAcgAWsiBkEBcjYCBCAHIAY2AgACQCAGQYACSQ0AQR8hAAJAIAZB////B0\ +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\ +IgVBBXQiBkHBAE8NCiAGQSFPDQsgA0H4AGogA0GQAmogBhCgARogBUECSw0ACwsgAygCtAEhECADKA\ +KwASERIAMoAqwBIRIgAygCqAEhEyADKAKkASEUIAMoAqABIRUgAygCnAEhFiADKAKYASEXIAMoApQB\ +IQggAygCkAEhDyADKAKMASEYIAMoAogBIRkgAygChAEhGiADKAKAASEbIAMoAnwhHCADKAJ4IR0gAC\ +AAKQMAEBcgDC0AACIGQTdPDQogDiAGQQV0aiIFIB02AgAgBSAINgIcIAUgDzYCGCAFIBg2AhQgBSAZ\ +NgIQIAUgGjYCDCAFIBs2AgggBSAcNgIEIAwgBkEBajoAACAAIAApAwAgHkIBiHwQFyAMLQAAIgZBN0\ +8NCyAOIAZBBXRqIgUgFzYCACAFIBA2AhwgBSARNgIYIAUgEjYCFCAFIBM2AhAgBSAUNgIMIAUgFTYC\ +CCAFIBY2AgQgDCAGQQFqOgAADAELIAlCADcDACAJQQhqIg9CADcDACAJQRBqIhhCADcDACAJQRhqIh\ +lCADcDACAJQSBqIhpCADcDACAJQShqIhtCADcDACAJQTBqIhxCADcDACAJQThqIh1CADcDACALIAcp\ +AwA3AwAgC0EIaiIFIAdBCGopAwA3AwAgC0EQaiIGIAdBEGopAwA3AwAgC0EYaiIIIAdBGGopAwA3Aw\ +AgA0EAOwHgASADIB83A3ggAyAALQBqOgDiASADQfgAaiABIAQQPBogDSALKQMANwMAIA1BCGogBSkD\ +ADcDACANQRBqIAYpAwA3AwAgDUEYaiAIKQMANwMAIAogCSkDADcDACAKQQhqIA8pAwA3AwAgCkEQai\ +AYKQMANwMAIApBGGogGSkDADcDACAKQSBqIBopAwA3AwAgCkEoaiAbKQMANwMAIApBMGogHCkDADcD\ +ACAKQThqIB0pAwA3AwAgAy0A4gEhDyADLQDhASEYIAMgAy0A4AEiGToAcCADIAMpA3giHzcDCCADIA\ +8gGEVyQQJyIg86AHEgA0HoAWpBGGoiGCAIKQIANwMAIANB6AFqQRBqIgggBikCADcDACADQegBakEI\ +aiIGIAUpAgA3AwAgAyALKQIANwPoASADQegBaiAKIBkgHyAPEAogGCgCACEPIAgoAgAhCCAGKAIAIR\ +ggAygChAIhGSADKAL8ASEaIAMoAvQBIRsgAygC7AEhHCADKALoASEdIAAgACkDABAXIAwtAAAiBkE3\ +Tw0LIA4gBkEFdGoiBSAdNgIAIAUgGTYCHCAFIA82AhggBSAaNgIUIAUgCDYCECAFIBs2AgwgBSAYNg\ +IIIAUgHDYCBCAMIAZBAWo6AAALIAAgACkDACAefCIfNwMAIAIgBEkNCyABIARqIQEgAiAEayICQYAI\ +Sw0ACwsgAkUNACAAIAEgAhA8GiAAIAApAwAQFwsgA0GwAmokAA8LIANBkAJqQQhqIgQgCTYCACADQZ\ +ACakEQaiIFIAc2AgAgA0GQAmpBGGoiBiAINgIAIAMgDDYCnAIgA0GBAWoiByAEKQIANwAAIAMgCzYC\ +pAIgA0GJAWoiBCAFKQIANwAAIAMgCjYCrAIgA0GRAWoiBSAGKQIANwAAIAMgDTYClAIgAyAONgKQAi\ +ADIAMpApACNwB5IANBCGpBGGogBSkAADcDACADQQhqQRBqIAQpAAA3AwAgA0EIakEIaiAHKQAANwMA\ +IAMgAykAeTcDCEG4nsAAQSsgA0EIakH4i8AAQZyLwAAQggEACyAEIAJBzIrAABCNAQALIAVBwABBuI\ +nAABCNAQALIAZBwABByInAABCNAQALIAZBIEHYicAAEI0BAAsgA0GQAmpBCGoiBCAbNgIAIANBkAJq\ +QRBqIgUgGTYCACADQZACakEYaiIGIA82AgAgAyAaNgKcAiADQYEBaiIHIAQpAwA3AAAgAyAYNgKkAi\ +ADQYkBaiIEIAUpAwA3AAAgAyAINgKsAiADQZEBaiIFIAYpAwA3AAAgAyAcNgKUAiADIB02ApACIAMg\ +AykDkAI3AHkgA0EIakEYaiAFKQAANwMAIANBCGpBEGogBCkAADcDACADQQhqQQhqIAcpAAA3AwAgAy\ +ADKQB5NwMIQbiewABBKyADQQhqQfiLwABBnIvAABCCAQALIANBkAJqQQhqIgQgFTYCACADQZACakEQ\ +aiIFIBM2AgAgA0GQAmpBGGoiBiARNgIAIAMgFDYCnAIgA0GBAWoiByAEKQMANwAAIAMgEjYCpAIgA0\ +GJAWoiBCAFKQMANwAAIAMgEDYCrAIgA0GRAWoiBSAGKQMANwAAIAMgFjYClAIgAyAXNgKQAiADIAMp\ +A5ACNwB5IANBCGpBGGogBSkAADcDACADQQhqQRBqIAQpAAA3AwAgA0EIakEIaiAHKQAANwMAIAMgAy\ +kAeTcDCEG4nsAAQSsgA0EIakH4i8AAQZyLwAAQggEACyADQZgCaiIEIBg2AgAgA0GgAmoiBSAINgIA\ +IANBqAJqIgYgDzYCACADIBs2ApwCIANB8QFqIgcgBCkDADcAACADIBo2AqQCIANB+QFqIgggBSkDAD\ +cAACADIBk2AqwCIANBgQJqIgAgBikDADcAACADIBw2ApQCIAMgHTYCkAIgAyADKQOQAjcA6QEgBiAA\ +KQAANwMAIAUgCCkAADcDACAEIAcpAAA3AwAgAyADKQDpATcDkAJBuJ7AAEErIANBkAJqQfiLwABBnI\ +vAABCCAQALIAQgAkHcisAAEIwBAAvqEQEYfyMAIQIgACgCACEDIAAoAgghBCAAKAIMIQUgACgCBCEG\ +IAJBwABrIgJBGGoiB0IANwMAIAJBIGoiCEIANwMAIAJBOGoiCUIANwMAIAJBMGoiCkIANwMAIAJBKG\ +oiC0IANwMAIAJBCGoiDCABKQAINwMAIAJBEGoiDSABKQAQNwMAIAcgASgAGCIONgIAIAggASgAICIP\ +NgIAIAIgASkAADcDACACIAEoABwiEDYCHCACIAEoACQiETYCJCALIAEoACgiEjYCACACIAEoACwiCz\ +YCLCAKIAEoADAiEzYCACACIAEoADQiCjYCNCAJIAEoADgiFDYCACACIAEoADwiCTYCPCAAIAMgDSgC\ +ACINIA8gEyACKAIAIhUgESAKIAIoAgQiFiACKAIUIhcgCiARIBcgFiATIA8gDSAGIBUgAyAEIAZxai\ +AFIAZBf3NxampB+Miqu31qQQd3aiIBaiAGIAIoAgwiGGogBCAMKAIAIgxqIAUgFmogASAGcWogBCAB\ +QX9zcWpB1u6exn5qQQx3IAFqIgIgAXFqIAYgAkF/c3FqQdvhgaECakERdyACaiIHIAJxaiABIAdBf3\ +NxakHunfeNfGpBFncgB2oiASAHcWogAiABQX9zcWpBr5/wq39qQQd3IAFqIghqIBAgAWogDiAHaiAX\ +IAJqIAggAXFqIAcgCEF/c3FqQaqMn7wEakEMdyAIaiICIAhxaiABIAJBf3NxakGTjMHBempBEXcgAm\ +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\ +AgA3AwAgAkEIaiIQIAVBCGoiESkCADcDACACIAUpAgA3AwAgAiAHIAYgEiAKEAogECkDACESIA4pAw\ +AhEyAEKQMAIRQgAikDACEVIA0gCEEYaikDADcDACAPIAhBEGopAwA3AwAgESAIQQhqKQMANwMAIAUg\ +CCkDADcDACAHIAEpAwA3AwAgB0EIaiABQQhqKQMANwMAIAdBEGogAUEQaikDADcDACAHQRhqIAFBGG\ +opAwA3AwAgAiAUNwPQASACIBM3A8gBIAIgEjcDwAEgAiAVNwO4ASACIAk6ANkBQcAAIQYgAkHAADoA\ +2AFCACESIAJCADcDcCABQWBqIQEgCSEKIAtBAWoiC0EBRw0ACwsgAiACQfAAakHwABCgASIBLQBpIQ\ +ggAS0AaCEGDAILQQAgC2sgA0H8isAAEI8BAAsgAkEQaiABQRBqKQMANwMAIAJBGGogAUEYaikDADcD\ +ACACQSBqIAFBIGopAwA3AwAgAkEwaiABQTBqKQMANwMAIAJBOGogAUE4aikDADcDACACQcAAaiABQc\ +AAaikDADcDACACQcgAaiABQcgAaikDADcDACACQdAAaiABQdAAaikDADcDACACQdgAaiABQdgAaikD\ +ADcDACACQeAAaiABQeAAaikDADcDACACIAEpAwg3AwggAiABKQMoNwMoIAFB6QBqLQAAIQUgAS0Aai\ +EHIAIgAS0AaCIGOgBoIAIgASkDADcDACACIAcgBUVyQQJyIgg6AGkLIAJB8ABqQRhqIgEgAkEgaikD\ +ADcDACACQfAAakEQaiIFIAJBGGopAwA3AwAgAkHwAGpBCGoiByACQRBqKQMANwMAIAIgAikDCDcDcC\ +ACQfAAaiACQShqIAZCACAIQQhyEAogACABKQMANwAYIAAgBSkDADcAECAAIAcpAwA3AAggACACKQNw\ +NwAAIAJB4AFqJAAPCyAHIANB7IrAABCPAQALpwgCAX8tfiAAKQPAASECIAApA5gBIQMgACkDcCEEIA\ +ApA0ghBSAAKQMgIQYgACkDuAEhByAAKQOQASEIIAApA2ghCSAAKQNAIQogACkDGCELIAApA7ABIQwg\ +ACkDiAEhDSAAKQNgIQ4gACkDOCEPIAApAxAhECAAKQOoASERIAApA4ABIRIgACkDWCETIAApAzAhFC\ +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\ +AwA3AwAgCUEQaiAGQRBqIhApAwA3AwAgCUEYaiAGQRhqIhEpAwA3AwAgAiALKQAANwOQASAAQThqIA\ +JBkAFqQThqKQMANwAAIABBMGogAkGQAWpBMGopAwA3AAAgAEEoaiACQZABakEoaikDADcAACAAQSBq\ +IAopAwA3AAAgAEEYaiAEKQMANwAAIABBEGogDCkDADcAACAAQQhqIA0pAwA3AAAgACACKQOQATcAAC\ +ACQcAAOgCIASACIAg6AIkBIAJCADcDICAEIBEpAgA3AwAgDCAQKQIANwMAIA0gDikCADcDACACIAYp\ +AgA3A5ABIAJBkAFqIABBwABCACAIEAogBCgCACELIAwoAgAhDCANKAIAIQ0gAigCrAEhDiACKAKkAS\ +EQIAIoApwBIREgAigClAEhEiACKAKQASETIA9B/wFxIgRBN08NAyAHIARBBXRqIgQgEzYCACAEIA42\ +AhwgBCALNgIYIAQgEDYCFCAEIAw2AhAgBCARNgIMIAQgDTYCCCAEIBI2AgQgAyAPQQFqIgQ6AAAgBE\ +H/AXEgBUsNAAsLIAJB0AFqJAAPC0GkocAAQStBvIrAABCdAQALIAIgDjYCrAEgAiALNgKoASACIBA2\ +AqQBIAIgDDYCoAEgAiARNgKcASACIA02ApgBIAIgEjYClAEgAiATNgKQAUG4nsAAQSsgAkGQAWpB+I\ +vAAEGci8AAEIIBAAuoBgERfyMAQYABayICJAACQAJAIAEoAgAiA0EQTw0AIAFBBGoiBCADakEQIANr\ +IgMgAxCoARogAUEANgIAIAFBFGoiAyAEEA0gAkEQakEIaiIEIAFBzABqIgUpAAA3AwAgAiABQcQAai\ +IGKQAANwMQIAMgAkEQahANIAJBCGoiByABQRxqIggpAgA3AwAgAiABKQIUNwMAIAJBEGpBKGoiCUIA\ +NwMAIAJBEGpBIGoiCkIANwMAIAJBEGpBGGoiC0IANwMAIAJBEGpBEGoiDEIANwMAIARCADcDACACQg\ +A3AxAgAkHQAGpBDGoiDUIANwIAIAJCADcCVCACQRA2AlAgAkHoAGpBEGogAkHQAGpBEGooAgA2AgAg\ +AkHoAGpBCGoiDiACQdAAakEIaiIPKQMANwMAIAIgAikDUDcDaCACQRBqQThqIhAgAkHoAGpBDGoiES\ +kCADcDACACQRBqQTBqIhIgAikCbDcDACAFIBApAwA3AAAgBiASKQMANwAAIAFBPGogCSkDADcAACAB\ +QTRqIAopAwA3AAAgAUEsaiALKQMANwAAIAFBJGogDCkDADcAACAIIAQpAwA3AAAgASACKQMQNwAUIA\ +FBADYCAEEQEAgiBUUNASAFIAIpAwA3AAAgBUEIaiAHKQMANwAAIAlCADcDACAKQgA3AwAgC0IANwMA\ +IAJBEGpBEGoiBkIANwMAIARCADcDACACQgA3AxAgDUIANwIAIAJCADcCVCACQRA2AlAgAkHoAGpBEG\ +ogAkHQAGpBEGooAgA2AgAgDiAPKQMANwMAIAIgAikDUDcDaCAQIBEpAgA3AwAgEiACKQJsNwMAIANB\ +OGogECkDADcAACADQTBqIBIpAwA3AAAgA0EoaiAJKQMANwAAIANBIGogCikDADcAACADQRhqIAspAw\ +A3AAAgA0EQaiAGKQMANwAAIANBCGogBCkDADcAACADIAIpAxA3AAAgAUEANgIAIABBEDYCBCAAIAU2\ +AgAgAkGAAWokAA8LQbSfwABBFyACQRBqQcCbwABB0JvAABCCAQALQRBBAUEAKALc6UAiAkECIAIbEQ\ +QAAAv2BQIHfwh+IwBBoAFrIgIkACACQTBqQSxqQgA3AgAgAkEwakEkakIANwIAIAJBMGpBHGpCADcC\ +ACACQTBqQRRqQgA3AgAgAkEwakEMakIANwIAIAJCADcCNCACQTA2AjAgAkHoAGpBMGogAkEwakEwai\ +gCADYCACACQegAakEoaiACQTBqQShqKQMANwMAIAJB6ABqQSBqIAJBMGpBIGopAwA3AwAgAkHoAGpB\ +GGogAkEwakEYaikDADcDACACQegAakEQaiACQTBqQRBqKQMANwMAIAJB6ABqQQhqIAJBMGpBCGopAw\ +A3AwAgAiACKQMwNwNoIAJBKGoiAyACQegAakEsaikCADcDACACQSBqIgQgAkHoAGpBJGopAgA3AwAg\ +AkEYaiIFIAJB6ABqQRxqKQIANwMAIAJBEGoiBiACQegAakEUaikCADcDACACQQhqIgcgAkHoAGpBDG\ +opAgA3AwAgAiACKQJsNwMAIAEgAhAeIAFCADcDCCABQgA3AwAgAUEANgJQIAFBACkDuJ1AIgk3AxAg\ +AUEYakEAKQPAnUAiCjcDACABQSBqQQApA8idQCILNwMAIAFBKGpBACkD0J1AIgw3AwAgAUEwakEAKQ\ +PYnUAiDTcDACABQThqQQApA+CdQCIONwMAIAFBwABqQQApA+idQCIPNwMAIAFByABqQQApA/CdQCIQ\ +NwMAAkBBMBAIIggNAEEwQQFBACgC3OlAIgJBAiACGxEEAAALIAggAikDADcAACAIQShqIAMpAwA3AA\ +AgCEEgaiAEKQMANwAAIAhBGGogBSkDADcAACAIQRBqIAYpAwA3AAAgCEEIaiAHKQMANwAAIAFCADcD\ +CCABQgA3AwAgAUEANgJQIAFBEGoiASAJNwMAIAFBCGogCjcDACABQRBqIAs3AwAgAUEYaiAMNwMAIA\ +FBIGogDTcDACABQShqIA43AwAgAUEwaiAPNwMAIAFBOGogEDcDACAAQTA2AgQgACAINgIAIAJBoAFq\ +JAAL4QUCCX8IfiMAQdABayICJAAgAkHAAGpBDGpCADcCACACQcAAakEUakIANwIAIAJBwABqQRxqQg\ +A3AgAgAkHAAGpBJGpCADcCACACQcAAakEsakIANwIAIAJBwABqQTRqQgA3AgAgAkHAAGpBPGpCADcC\ +ACACQgA3AkQgAkHAADYCQCACQYgBaiACQcAAakHEABCgARogAkE4aiIDIAJBiAFqQTxqKQIANwMAIA\ +JBMGoiBCACQYgBakE0aikCADcDACACQShqIgUgAkGIAWpBLGopAgA3AwAgAkEgaiIGIAJBiAFqQSRq\ +KQIANwMAIAJBGGoiByACQYgBakEcaikCADcDACACQRBqIgggAkGIAWpBFGopAgA3AwAgAkEIaiIJIA\ +JBiAFqQQxqKQIANwMAIAIgAikCjAE3AwAgASACEBYgAUIANwMIIAFCADcDACABQQA2AlAgAUEAKQP4\ +nUAiCzcDECABQRhqQQApA4CeQCIMNwMAIAFBIGpBACkDiJ5AIg03AwAgAUEoakEAKQOQnkAiDjcDAC\ +ABQTBqQQApA5ieQCIPNwMAIAFBOGpBACkDoJ5AIhA3AwAgAUHAAGpBACkDqJ5AIhE3AwAgAUHIAGpB\ +ACkDsJ5AIhI3AwACQEHAABAIIgoNAEHAAEEBQQAoAtzpQCICQQIgAhsRBAAACyAKIAIpAwA3AAAgCk\ +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\ +BqQRRqQgA3AgAgAkEgakEMakIANwIAIAJCADcCJCACQSA2AiAgAkHIAGpBGGogAkEgakEYaikDADcD\ +ACACQcgAakEQaiACQSBqQRBqKQMANwMAIAJByABqQQhqIAJBIGpBCGopAwA3AwAgAkHIAGpBIGogAk\ +EgakEgaigCADYCACACIAIpAyA3A0ggAkEQaiACQcgAakEUaikCADcDACACQQhqIAJByABqQQxqKQIA\ +NwMAIAJBGGogAkHIAGpBHGopAgA3AwAgAiACKQJMNwMAIAIgARASIAFCADcDACABQSBqIAFBiAFqKQ\ +MANwMAIAFBGGogAUGAAWopAwA3AwAgAUEQaiABQfgAaikDADcDACABIAEpA3A3AwggAUEoakEAQcIA\ +EKgBIQMCQCABQfAOaiIELQAARQ0AIARBADoAAAsCQEEgEAgiBA0AQSBBAUEAKALc6UAiAkECIAIbEQ\ +QAAAsgBCACKQMANwAAIARBGGogAkEYaikDADcAACAEQRBqIAJBEGopAwA3AAAgBEEIaiACQQhqKQMA\ +NwAAIAFCADcDACABQQhqIgVBGGogAUHwAGoiAUEYaikDADcDACAFQRBqIAFBEGopAwA3AwAgBUEIai\ +ABQQhqKQMANwMAIAUgASkDADcDACADQQBBwgAQqAEaIABBIDYCBCAAIAQ2AgAgAkHwAGokAAuJBAEH\ +fyMAQaADayICJAAgAkHoAmpBLGpCADcCACACQegCakEkakIANwIAIAJB6AJqQRxqQgA3AgAgAkHoAm\ +pBFGpCADcCACACQegCakEMakIANwIAIAJCADcC7AIgAkEwNgLoAiACQTBqQTBqIAJB6AJqQTBqKAIA\ +NgIAIAJBMGpBKGogAkHoAmpBKGopAwA3AwAgAkEwakEgaiACQegCakEgaikDADcDACACQTBqQRhqIA\ +JB6AJqQRhqKQMANwMAIAJBMGpBEGogAkHoAmpBEGopAwA3AwAgAkEwakEIaiACQegCakEIaikDADcD\ +ACACIAIpA+gCNwMwIAJBKGoiAyACQTBqQSxqKQIANwMAIAJBIGoiBCACQTBqQSRqKQIANwMAIAJBGG\ +oiBSACQTBqQRxqKQIANwMAIAJBEGoiBiACQTBqQRRqKQIANwMAIAJBCGoiByACQTBqQQxqKQIANwMA\ +IAIgAikCNDcDACACQTBqIAFBuAIQoAEaIAJBMGogAhBgAkBBMBAIIggNAEEwQQFBACgC3OlAIgJBAi\ +ACGxEEAAALIAggAikDADcAACAIQShqIAMpAwA3AAAgCEEgaiAEKQMANwAAIAhBGGogBSkDADcAACAI\ +QRBqIAYpAwA3AAAgCEEIaiAHKQMANwAAIAEQDyAAQTA2AgQgACAINgIAIAJBoANqJAALiQQBB38jAE\ +GgA2siAiQAIAJB6AJqQSxqQgA3AgAgAkHoAmpBJGpCADcCACACQegCakEcakIANwIAIAJB6AJqQRRq\ +QgA3AgAgAkHoAmpBDGpCADcCACACQgA3AuwCIAJBMDYC6AIgAkEwakEwaiACQegCakEwaigCADYCAC\ +ACQTBqQShqIAJB6AJqQShqKQMANwMAIAJBMGpBIGogAkHoAmpBIGopAwA3AwAgAkEwakEYaiACQegC\ +akEYaikDADcDACACQTBqQRBqIAJB6AJqQRBqKQMANwMAIAJBMGpBCGogAkHoAmpBCGopAwA3AwAgAi\ +ACKQPoAjcDMCACQShqIgMgAkEwakEsaikCADcDACACQSBqIgQgAkEwakEkaikCADcDACACQRhqIgUg\ +AkEwakEcaikCADcDACACQRBqIgYgAkEwakEUaikCADcDACACQQhqIgcgAkEwakEMaikCADcDACACIA\ +IpAjQ3AwAgAkEwaiABQbgCEKABGiACQTBqIAIQXwJAQTAQCCIIDQBBMEEBQQAoAtzpQCICQQIgAhsR\ +BAAACyAIIAIpAwA3AAAgCEEoaiADKQMANwAAIAhBIGogBCkDADcAACAIQRhqIAUpAwA3AAAgCEEQai\ +AGKQMANwAAIAhBCGogBykDADcAACABEA8gAEEwNgIEIAAgCDYCACACQaADaiQAC4kEAQd/IwBBwAJr\ +IgIkACACQYgCakEsakIANwIAIAJBiAJqQSRqQgA3AgAgAkGIAmpBHGpCADcCACACQYgCakEUakIANw\ +IAIAJBiAJqQQxqQgA3AgAgAkIANwKMAiACQTA2AogCIAJBMGpBMGogAkGIAmpBMGooAgA2AgAgAkEw\ +akEoaiACQYgCakEoaikDADcDACACQTBqQSBqIAJBiAJqQSBqKQMANwMAIAJBMGpBGGogAkGIAmpBGG\ +opAwA3AwAgAkEwakEQaiACQYgCakEQaikDADcDACACQTBqQQhqIAJBiAJqQQhqKQMANwMAIAIgAikD\ +iAI3AzAgAkEoaiIDIAJBMGpBLGopAgA3AwAgAkEgaiIEIAJBMGpBJGopAgA3AwAgAkEYaiIFIAJBMG\ +pBHGopAgA3AwAgAkEQaiIGIAJBMGpBFGopAgA3AwAgAkEIaiIHIAJBMGpBDGopAgA3AwAgAiACKQI0\ +NwMAIAJBMGogAUHYARCgARogAkEwaiACEB4CQEEwEAgiCA0AQTBBAUEAKALc6UAiAkECIAIbEQQAAA\ +sgCCACKQMANwAAIAhBKGogAykDADcAACAIQSBqIAQpAwA3AAAgCEEYaiAFKQMANwAAIAhBEGogBikD\ +ADcAACAIQQhqIAcpAwA3AAAgARAPIABBMDYCBCAAIAg2AgAgAkHAAmokAAuIBAEHfyMAQaABayICJA\ +AgAkEwakEsakIANwIAIAJBMGpBJGpCADcCACACQTBqQRxqQgA3AgAgAkEwakEUakIANwIAIAJBMGpB\ +DGpCADcCACACQgA3AjQgAkEwNgIwIAJB6ABqQTBqIAJBMGpBMGooAgA2AgAgAkHoAGpBKGogAkEwak\ +EoaikDADcDACACQegAakEgaiACQTBqQSBqKQMANwMAIAJB6ABqQRhqIAJBMGpBGGopAwA3AwAgAkHo\ +AGpBEGogAkEwakEQaikDADcDACACQegAakEIaiACQTBqQQhqKQMANwMAIAIgAikDMDcDaCACQShqIg\ +MgAkHoAGpBLGopAgA3AwAgAkEgaiIEIAJB6ABqQSRqKQIANwMAIAJBGGoiBSACQegAakEcaikCADcD\ +ACACQRBqIgYgAkHoAGpBFGopAgA3AwAgAkEIaiIHIAJB6ABqQQxqKQIANwMAIAIgAikCbDcDACABIA\ +IQXyABQQBBzAEQqAEhCAJAQTAQCCIBDQBBMEEBQQAoAtzpQCICQQIgAhsRBAAACyABIAIpAwA3AAAg\ +AUEoaiADKQMANwAAIAFBIGogBCkDADcAACABQRhqIAUpAwA3AAAgAUEQaiAGKQMANwAAIAFBCGogBy\ +kDADcAACAIQQBBzAEQqAEaIABBMDYCBCAAIAE2AgAgAkGgAWokAAuIBAEHfyMAQaABayICJAAgAkEw\ +akEsakIANwIAIAJBMGpBJGpCADcCACACQTBqQRxqQgA3AgAgAkEwakEUakIANwIAIAJBMGpBDGpCAD\ +cCACACQgA3AjQgAkEwNgIwIAJB6ABqQTBqIAJBMGpBMGooAgA2AgAgAkHoAGpBKGogAkEwakEoaikD\ +ADcDACACQegAakEgaiACQTBqQSBqKQMANwMAIAJB6ABqQRhqIAJBMGpBGGopAwA3AwAgAkHoAGpBEG\ +ogAkEwakEQaikDADcDACACQegAakEIaiACQTBqQQhqKQMANwMAIAIgAikDMDcDaCACQShqIgMgAkHo\ +AGpBLGopAgA3AwAgAkEgaiIEIAJB6ABqQSRqKQIANwMAIAJBGGoiBSACQegAakEcaikCADcDACACQR\ +BqIgYgAkHoAGpBFGopAgA3AwAgAkEIaiIHIAJB6ABqQQxqKQIANwMAIAIgAikCbDcDACABIAIQYCAB\ +QQBBzAEQqAEhCAJAQTAQCCIBDQBBMEEBQQAoAtzpQCICQQIgAhsRBAAACyABIAIpAwA3AAAgAUEoai\ +ADKQMANwAAIAFBIGogBCkDADcAACABQRhqIAUpAwA3AAAgAUEQaiAGKQMANwAAIAFBCGogBykDADcA\ +ACAIQQBBzAEQqAEaIABBMDYCBCAAIAE2AgAgAkGgAWokAAv0AwEJfyMAQaADayICJAAgAkHYAmpBDG\ +pCADcCACACQdgCakEUakIANwIAIAJB2AJqQRxqQgA3AgAgAkHYAmpBJGpCADcCACACQdgCakEsakIA\ +NwIAIAJB2AJqQTRqQgA3AgAgAkHYAmpBPGpCADcCACACQgA3AtwCIAJBwAA2AtgCIAJBwABqIAJB2A\ +JqQcQAEKABGiACQThqIgMgAkHAAGpBPGopAgA3AwAgAkEwaiIEIAJBwABqQTRqKQIANwMAIAJBKGoi\ +BSACQcAAakEsaikCADcDACACQSBqIgYgAkHAAGpBJGopAgA3AwAgAkEYaiIHIAJBwABqQRxqKQIANw\ +MAIAJBEGoiCCACQcAAakEUaikCADcDACACQQhqIgkgAkHAAGpBDGopAgA3AwAgAiACKQJENwMAIAJB\ +wABqIAFBmAIQoAEaIAJBwABqIAIQTwJAQcAAEAgiCg0AQcAAQQFBACgC3OlAIgJBAiACGxEEAAALIA\ +ogAikDADcAACAKQThqIAMpAwA3AAAgCkEwaiAEKQMANwAAIApBKGogBSkDADcAACAKQSBqIAYpAwA3\ +AAAgCkEYaiAHKQMANwAAIApBEGogCCkDADcAACAKQQhqIAkpAwA3AAAgARAPIABBwAA2AgQgACAKNg\ +IAIAJBoANqJAAL9AMBCX8jAEGgA2siAiQAIAJB2AJqQQxqQgA3AgAgAkHYAmpBFGpCADcCACACQdgC\ +akEcakIANwIAIAJB2AJqQSRqQgA3AgAgAkHYAmpBLGpCADcCACACQdgCakE0akIANwIAIAJB2AJqQT\ +xqQgA3AgAgAkIANwLcAiACQcAANgLYAiACQcAAaiACQdgCakHEABCgARogAkE4aiIDIAJBwABqQTxq\ +KQIANwMAIAJBMGoiBCACQcAAakE0aikCADcDACACQShqIgUgAkHAAGpBLGopAgA3AwAgAkEgaiIGIA\ +JBwABqQSRqKQIANwMAIAJBGGoiByACQcAAakEcaikCADcDACACQRBqIgggAkHAAGpBFGopAgA3AwAg\ +AkEIaiIJIAJBwABqQQxqKQIANwMAIAIgAikCRDcDACACQcAAaiABQZgCEKABGiACQcAAaiACEFACQE\ +HAABAIIgoNAEHAAEEBQQAoAtzpQCICQQIgAhsRBAAACyAKIAIpAwA3AAAgCkE4aiADKQMANwAAIApB\ +MGogBCkDADcAACAKQShqIAUpAwA3AAAgCkEgaiAGKQMANwAAIApBGGogBykDADcAACAKQRBqIAgpAw\ +A3AAAgCkEIaiAJKQMANwAAIAEQDyAAQcAANgIEIAAgCjYCACACQaADaiQAC/QDAQl/IwBB4AJrIgIk\ +ACACQZgCakEMakIANwIAIAJBmAJqQRRqQgA3AgAgAkGYAmpBHGpCADcCACACQZgCakEkakIANwIAIA\ +JBmAJqQSxqQgA3AgAgAkGYAmpBNGpCADcCACACQZgCakE8akIANwIAIAJCADcCnAIgAkHAADYCmAIg\ +AkHAAGogAkGYAmpBxAAQoAEaIAJBOGoiAyACQcAAakE8aikCADcDACACQTBqIgQgAkHAAGpBNGopAg\ +A3AwAgAkEoaiIFIAJBwABqQSxqKQIANwMAIAJBIGoiBiACQcAAakEkaikCADcDACACQRhqIgcgAkHA\ +AGpBHGopAgA3AwAgAkEQaiIIIAJBwABqQRRqKQIANwMAIAJBCGoiCSACQcAAakEMaikCADcDACACIA\ +IpAkQ3AwAgAkHAAGogAUHYARCgARogAkHAAGogAhAWAkBBwAAQCCIKDQBBwABBAUEAKALc6UAiAkEC\ +IAIbEQQAAAsgCiACKQMANwAAIApBOGogAykDADcAACAKQTBqIAQpAwA3AAAgCkEoaiAFKQMANwAAIA\ +pBIGogBikDADcAACAKQRhqIAcpAwA3AAAgCkEQaiAIKQMANwAAIApBCGogCSkDADcAACABEA8gAEHA\ +ADYCBCAAIAo2AgAgAkHgAmokAAvzAwEJfyMAQdABayICJAAgAkHAAGpBDGpCADcCACACQcAAakEUak\ IANwIAIAJBwABqQRxqQgA3AgAgAkHAAGpBJGpCADcCACACQcAAakEsakIANwIAIAJBwABqQTRqQgA3\ AgAgAkHAAGpBPGpCADcCACACQgA3AkQgAkHAADYCQCACQYgBaiACQcAAakHEABCgARogAkE4aiIDIA\ JBiAFqQTxqKQIANwMAIAJBMGoiBCACQYgBakE0aikCADcDACACQShqIgUgAkGIAWpBLGopAgA3AwAg\ AkEgaiIGIAJBiAFqQSRqKQIANwMAIAJBGGoiByACQYgBakEcaikCADcDACACQRBqIgggAkGIAWpBFG\ -opAgA3AwAgAkEIaiIJIAJBiAFqQQxqKQIANwMAIAIgAikCjAE3AwAgASACEBcgAUIANwMIIAFCADcD\ -ACABQQA2AlAgAUEAKQOgnkAiCzcDECABQRhqQQApA6ieQCIMNwMAIAFBIGpBACkDsJ5AIg03AwAgAU\ -EoakEAKQO4nkAiDjcDACABQTBqQQApA8CeQCIPNwMAIAFBOGpBACkDyJ5AIhA3AwAgAUHAAGpBACkD\ -0J5AIhE3AwAgAUHIAGpBACkD2J5AIhI3AwACQEHAABAJIgoNAEHAAEEBQQAoAqzqQCICQQIgAhsRBA\ -AACyAKIAIpAwA3AAAgCkE4aiADKQMANwAAIApBMGogBCkDADcAACAKQShqIAUpAwA3AAAgCkEgaiAG\ -KQMANwAAIApBGGogBykDADcAACAKQRBqIAgpAwA3AAAgCkEIaiAJKQMANwAAIAFCADcDCCABQgA3Aw\ -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\ -A3AwAgAkHIAGpBIGogAkEgakEgaigCADYCACACIAIpAyA3A0ggAkEQaiACQcgAakEUaikCADcDACAC\ -QQhqIAJByABqQQxqKQIANwMAIAJBGGogAkHIAGpBHGopAgA3AwAgAiACKQJMNwMAIAIgARATIAFCAD\ -cDACABQSBqIAFBiAFqKQMANwMAIAFBGGogAUGAAWopAwA3AwAgAUEQaiABQfgAaikDADcDACABIAEp\ -A3A3AwggAUEoakEAQcIAEKcBIQMCQCABQfAOaiIELQAARQ0AIARBADoAAAsCQEEgEAkiBA0AQSBBAU\ -EAKAKs6kAiAkECIAIbEQQAAAsgBCACKQMANwAAIARBGGogAkEYaikDADcAACAEQRBqIAJBEGopAwA3\ -AAAgBEEIaiACQQhqKQMANwAAIAFCADcDACABQQhqIgVBGGogAUHwAGoiAUEYaikDADcDACAFQRBqIA\ -FBEGopAwA3AwAgBUEIaiABQQhqKQMANwMAIAUgASkDADcDACADQQBBwgAQpwEaIABBIDYCBCAAIAQ2\ -AgAgAkHwAGokAAuJBAEHfyMAQaADayICJAAgAkHoAmpBLGpCADcCACACQegCakEkakIANwIAIAJB6A\ -JqQRxqQgA3AgAgAkHoAmpBFGpCADcCACACQegCakEMakIANwIAIAJCADcC7AIgAkEwNgLoAiACQTBq\ -QTBqIAJB6AJqQTBqKAIANgIAIAJBMGpBKGogAkHoAmpBKGopAwA3AwAgAkEwakEgaiACQegCakEgai\ -kDADcDACACQTBqQRhqIAJB6AJqQRhqKQMANwMAIAJBMGpBEGogAkHoAmpBEGopAwA3AwAgAkEwakEI\ -aiACQegCakEIaikDADcDACACIAIpA+gCNwMwIAJBKGoiAyACQTBqQSxqKQIANwMAIAJBIGoiBCACQT\ -BqQSRqKQIANwMAIAJBGGoiBSACQTBqQRxqKQIANwMAIAJBEGoiBiACQTBqQRRqKQIANwMAIAJBCGoi\ -ByACQTBqQQxqKQIANwMAIAIgAikCNDcDACACQTBqIAFBuAIQoAEaIAJBMGogAhBgAkBBMBAJIggNAE\ -EwQQFBACgCrOpAIgJBAiACGxEEAAALIAggAikDADcAACAIQShqIAMpAwA3AAAgCEEgaiAEKQMANwAA\ -IAhBGGogBSkDADcAACAIQRBqIAYpAwA3AAAgCEEIaiAHKQMANwAAIAEQECAAQTA2AgQgACAINgIAIA\ -JBoANqJAALiQQBB38jAEGgA2siAiQAIAJB6AJqQSxqQgA3AgAgAkHoAmpBJGpCADcCACACQegCakEc\ -akIANwIAIAJB6AJqQRRqQgA3AgAgAkHoAmpBDGpCADcCACACQgA3AuwCIAJBMDYC6AIgAkEwakEwai\ -ACQegCakEwaigCADYCACACQTBqQShqIAJB6AJqQShqKQMANwMAIAJBMGpBIGogAkHoAmpBIGopAwA3\ -AwAgAkEwakEYaiACQegCakEYaikDADcDACACQTBqQRBqIAJB6AJqQRBqKQMANwMAIAJBMGpBCGogAk\ -HoAmpBCGopAwA3AwAgAiACKQPoAjcDMCACQShqIgMgAkEwakEsaikCADcDACACQSBqIgQgAkEwakEk\ -aikCADcDACACQRhqIgUgAkEwakEcaikCADcDACACQRBqIgYgAkEwakEUaikCADcDACACQQhqIgcgAk\ -EwakEMaikCADcDACACIAIpAjQ3AwAgAkEwaiABQbgCEKABGiACQTBqIAIQXwJAQTAQCSIIDQBBMEEB\ -QQAoAqzqQCICQQIgAhsRBAAACyAIIAIpAwA3AAAgCEEoaiADKQMANwAAIAhBIGogBCkDADcAACAIQR\ -hqIAUpAwA3AAAgCEEQaiAGKQMANwAAIAhBCGogBykDADcAACABEBAgAEEwNgIEIAAgCDYCACACQaAD\ -aiQAC4kEAQd/IwBBwAJrIgIkACACQYgCakEsakIANwIAIAJBiAJqQSRqQgA3AgAgAkGIAmpBHGpCAD\ -cCACACQYgCakEUakIANwIAIAJBiAJqQQxqQgA3AgAgAkIANwKMAiACQTA2AogCIAJBMGpBMGogAkGI\ -AmpBMGooAgA2AgAgAkEwakEoaiACQYgCakEoaikDADcDACACQTBqQSBqIAJBiAJqQSBqKQMANwMAIA\ -JBMGpBGGogAkGIAmpBGGopAwA3AwAgAkEwakEQaiACQYgCakEQaikDADcDACACQTBqQQhqIAJBiAJq\ -QQhqKQMANwMAIAIgAikDiAI3AzAgAkEoaiIDIAJBMGpBLGopAgA3AwAgAkEgaiIEIAJBMGpBJGopAg\ -A3AwAgAkEYaiIFIAJBMGpBHGopAgA3AwAgAkEQaiIGIAJBMGpBFGopAgA3AwAgAkEIaiIHIAJBMGpB\ -DGopAgA3AwAgAiACKQI0NwMAIAJBMGogAUHYARCgARogAkEwaiACEB8CQEEwEAkiCA0AQTBBAUEAKA\ -Ks6kAiAkECIAIbEQQAAAsgCCACKQMANwAAIAhBKGogAykDADcAACAIQSBqIAQpAwA3AAAgCEEYaiAF\ -KQMANwAAIAhBEGogBikDADcAACAIQQhqIAcpAwA3AAAgARAQIABBMDYCBCAAIAg2AgAgAkHAAmokAA\ -uIBAEHfyMAQaABayICJAAgAkEwakEsakIANwIAIAJBMGpBJGpCADcCACACQTBqQRxqQgA3AgAgAkEw\ -akEUakIANwIAIAJBMGpBDGpCADcCACACQgA3AjQgAkEwNgIwIAJB6ABqQTBqIAJBMGpBMGooAgA2Ag\ -AgAkHoAGpBKGogAkEwakEoaikDADcDACACQegAakEgaiACQTBqQSBqKQMANwMAIAJB6ABqQRhqIAJB\ -MGpBGGopAwA3AwAgAkHoAGpBEGogAkEwakEQaikDADcDACACQegAakEIaiACQTBqQQhqKQMANwMAIA\ -IgAikDMDcDaCACQShqIgMgAkHoAGpBLGopAgA3AwAgAkEgaiIEIAJB6ABqQSRqKQIANwMAIAJBGGoi\ -BSACQegAakEcaikCADcDACACQRBqIgYgAkHoAGpBFGopAgA3AwAgAkEIaiIHIAJB6ABqQQxqKQIANw\ -MAIAIgAikCbDcDACABIAIQXyABQQBBzAEQpwEhCAJAQTAQCSIBDQBBMEEBQQAoAqzqQCICQQIgAhsR\ -BAAACyABIAIpAwA3AAAgAUEoaiADKQMANwAAIAFBIGogBCkDADcAACABQRhqIAUpAwA3AAAgAUEQai\ -AGKQMANwAAIAFBCGogBykDADcAACAIQQBBzAEQpwEaIABBMDYCBCAAIAE2AgAgAkGgAWokAAuIBAEH\ -fyMAQaABayICJAAgAkEwakEsakIANwIAIAJBMGpBJGpCADcCACACQTBqQRxqQgA3AgAgAkEwakEUak\ -IANwIAIAJBMGpBDGpCADcCACACQgA3AjQgAkEwNgIwIAJB6ABqQTBqIAJBMGpBMGooAgA2AgAgAkHo\ -AGpBKGogAkEwakEoaikDADcDACACQegAakEgaiACQTBqQSBqKQMANwMAIAJB6ABqQRhqIAJBMGpBGG\ -opAwA3AwAgAkHoAGpBEGogAkEwakEQaikDADcDACACQegAakEIaiACQTBqQQhqKQMANwMAIAIgAikD\ -MDcDaCACQShqIgMgAkHoAGpBLGopAgA3AwAgAkEgaiIEIAJB6ABqQSRqKQIANwMAIAJBGGoiBSACQe\ -gAakEcaikCADcDACACQRBqIgYgAkHoAGpBFGopAgA3AwAgAkEIaiIHIAJB6ABqQQxqKQIANwMAIAIg\ -AikCbDcDACABIAIQYCABQQBBzAEQpwEhCAJAQTAQCSIBDQBBMEEBQQAoAqzqQCICQQIgAhsRBAAACy\ -ABIAIpAwA3AAAgAUEoaiADKQMANwAAIAFBIGogBCkDADcAACABQRhqIAUpAwA3AAAgAUEQaiAGKQMA\ -NwAAIAFBCGogBykDADcAACAIQQBBzAEQpwEaIABBMDYCBCAAIAE2AgAgAkGgAWokAAv0AwEJfyMAQa\ -ADayICJAAgAkHYAmpBDGpCADcCACACQdgCakEUakIANwIAIAJB2AJqQRxqQgA3AgAgAkHYAmpBJGpC\ -ADcCACACQdgCakEsakIANwIAIAJB2AJqQTRqQgA3AgAgAkHYAmpBPGpCADcCACACQgA3AtwCIAJBwA\ -A2AtgCIAJBwABqIAJB2AJqQcQAEKABGiACQThqIgMgAkHAAGpBPGopAgA3AwAgAkEwaiIEIAJBwABq\ -QTRqKQIANwMAIAJBKGoiBSACQcAAakEsaikCADcDACACQSBqIgYgAkHAAGpBJGopAgA3AwAgAkEYai\ -IHIAJBwABqQRxqKQIANwMAIAJBEGoiCCACQcAAakEUaikCADcDACACQQhqIgkgAkHAAGpBDGopAgA3\ -AwAgAiACKQJENwMAIAJBwABqIAFBmAIQoAEaIAJBwABqIAIQTwJAQcAAEAkiCg0AQcAAQQFBACgCrO\ -pAIgJBAiACGxEEAAALIAogAikDADcAACAKQThqIAMpAwA3AAAgCkEwaiAEKQMANwAAIApBKGogBSkD\ -ADcAACAKQSBqIAYpAwA3AAAgCkEYaiAHKQMANwAAIApBEGogCCkDADcAACAKQQhqIAkpAwA3AAAgAR\ -AQIABBwAA2AgQgACAKNgIAIAJBoANqJAAL9AMBCX8jAEGgA2siAiQAIAJB2AJqQQxqQgA3AgAgAkHY\ -AmpBFGpCADcCACACQdgCakEcakIANwIAIAJB2AJqQSRqQgA3AgAgAkHYAmpBLGpCADcCACACQdgCak\ -E0akIANwIAIAJB2AJqQTxqQgA3AgAgAkIANwLcAiACQcAANgLYAiACQcAAaiACQdgCakHEABCgARog\ -AkE4aiIDIAJBwABqQTxqKQIANwMAIAJBMGoiBCACQcAAakE0aikCADcDACACQShqIgUgAkHAAGpBLG\ -opAgA3AwAgAkEgaiIGIAJBwABqQSRqKQIANwMAIAJBGGoiByACQcAAakEcaikCADcDACACQRBqIggg\ -AkHAAGpBFGopAgA3AwAgAkEIaiIJIAJBwABqQQxqKQIANwMAIAIgAikCRDcDACACQcAAaiABQZgCEK\ -ABGiACQcAAaiACEFACQEHAABAJIgoNAEHAAEEBQQAoAqzqQCICQQIgAhsRBAAACyAKIAIpAwA3AAAg\ -CkE4aiADKQMANwAAIApBMGogBCkDADcAACAKQShqIAUpAwA3AAAgCkEgaiAGKQMANwAAIApBGGogBy\ -kDADcAACAKQRBqIAgpAwA3AAAgCkEIaiAJKQMANwAAIAEQECAAQcAANgIEIAAgCjYCACACQaADaiQA\ -C/QDAQl/IwBB4AJrIgIkACACQZgCakEMakIANwIAIAJBmAJqQRRqQgA3AgAgAkGYAmpBHGpCADcCAC\ -ACQZgCakEkakIANwIAIAJBmAJqQSxqQgA3AgAgAkGYAmpBNGpCADcCACACQZgCakE8akIANwIAIAJC\ -ADcCnAIgAkHAADYCmAIgAkHAAGogAkGYAmpBxAAQoAEaIAJBOGoiAyACQcAAakE8aikCADcDACACQT\ -BqIgQgAkHAAGpBNGopAgA3AwAgAkEoaiIFIAJBwABqQSxqKQIANwMAIAJBIGoiBiACQcAAakEkaikC\ -ADcDACACQRhqIgcgAkHAAGpBHGopAgA3AwAgAkEQaiIIIAJBwABqQRRqKQIANwMAIAJBCGoiCSACQc\ -AAakEMaikCADcDACACIAIpAkQ3AwAgAkHAAGogAUHYARCgARogAkHAAGogAhAXAkBBwAAQCSIKDQBB\ -wABBAUEAKAKs6kAiAkECIAIbEQQAAAsgCiACKQMANwAAIApBOGogAykDADcAACAKQTBqIAQpAwA3AA\ -AgCkEoaiAFKQMANwAAIApBIGogBikDADcAACAKQRhqIAcpAwA3AAAgCkEQaiAIKQMANwAAIApBCGog\ -CSkDADcAACABEBAgAEHAADYCBCAAIAo2AgAgAkHgAmokAAvzAwEJfyMAQdABayICJAAgAkHAAGpBDG\ -pCADcCACACQcAAakEUakIANwIAIAJBwABqQRxqQgA3AgAgAkHAAGpBJGpCADcCACACQcAAakEsakIA\ -NwIAIAJBwABqQTRqQgA3AgAgAkHAAGpBPGpCADcCACACQgA3AkQgAkHAADYCQCACQYgBaiACQcAAak\ -HEABCgARogAkE4aiIDIAJBiAFqQTxqKQIANwMAIAJBMGoiBCACQYgBakE0aikCADcDACACQShqIgUg\ -AkGIAWpBLGopAgA3AwAgAkEgaiIGIAJBiAFqQSRqKQIANwMAIAJBGGoiByACQYgBakEcaikCADcDAC\ -ACQRBqIgggAkGIAWpBFGopAgA3AwAgAkEIaiIJIAJBiAFqQQxqKQIANwMAIAIgAikCjAE3AwAgASAC\ -EE8gAUEAQcwBEKcBIQoCQEHAABAJIgENAEHAAEEBQQAoAqzqQCICQQIgAhsRBAAACyABIAIpAwA3AA\ -AgAUE4aiADKQMANwAAIAFBMGogBCkDADcAACABQShqIAUpAwA3AAAgAUEgaiAGKQMANwAAIAFBGGog\ -BykDADcAACABQRBqIAgpAwA3AAAgAUEIaiAJKQMANwAAIApBAEHMARCnARogAEHAADYCBCAAIAE2Ag\ -AgAkHQAWokAAvzAwEJfyMAQdABayICJAAgAkHAAGpBDGpCADcCACACQcAAakEUakIANwIAIAJBwABq\ -QRxqQgA3AgAgAkHAAGpBJGpCADcCACACQcAAakEsakIANwIAIAJBwABqQTRqQgA3AgAgAkHAAGpBPG\ -pCADcCACACQgA3AkQgAkHAADYCQCACQYgBaiACQcAAakHEABCgARogAkE4aiIDIAJBiAFqQTxqKQIA\ -NwMAIAJBMGoiBCACQYgBakE0aikCADcDACACQShqIgUgAkGIAWpBLGopAgA3AwAgAkEgaiIGIAJBiA\ -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\ -AwAgAkEIaiIFIAJBIGpBDGopAgA3AwAgAiACKQIkNwMAIAJBIGogAUH4DhCgARogAiACQSBqEBMCQE\ -EgEAkiBg0AQSBBAUEAKAKs6kAiAkECIAIbEQQAAAsgBiACKQMANwAAIAZBGGogAykDADcAACAGQRBq\ -IAQpAwA3AAAgBkEIaiAFKQMANwAAIAEQECAAQSA2AgQgACAGNgIAIAJBwA9qJAAL+gIBBX8jAEHwAG\ -siAiQAIAJBIGpBHGpCADcCACACQSBqQRRqQgA3AgAgAkEgakEMakIANwIAIAJCADcCJCACQSA2AiAg\ -AkHIAGpBIGogAkEgakEgaigCADYCACACQcgAakEYaiACQSBqQRhqKQMANwMAIAJByABqQRBqIAJBIG\ -pBEGopAwA3AwAgAkHIAGpBCGogAkEgakEIaikDADcDACACIAIpAyA3A0ggAkEYaiIDIAJByABqQRxq\ -KQIANwMAIAJBEGoiBCACQcgAakEUaikCADcDACACQQhqIgUgAkHIAGpBDGopAgA3AwAgAiACKQJMNw\ -MAIAEgAhBpIAFBAEHMARCnASEGAkBBIBAJIgENAEEgQQFBACgCrOpAIgJBAiACGxEEAAALIAEgAikD\ -ADcAACABQRhqIAMpAwA3AAAgAUEQaiAEKQMANwAAIAFBCGogBSkDADcAACAGQQBBzAEQpwEaIABBID\ -YCBCAAIAE2AgAgAkHwAGokAAv6AgEFfyMAQfAAayICJAAgAkEgakEcakIANwIAIAJBIGpBFGpCADcC\ -ACACQSBqQQxqQgA3AgAgAkIANwIkIAJBIDYCICACQcgAakEgaiACQSBqQSBqKAIANgIAIAJByABqQR\ -hqIAJBIGpBGGopAwA3AwAgAkHIAGpBEGogAkEgakEQaikDADcDACACQcgAakEIaiACQSBqQQhqKQMA\ -NwMAIAIgAikDIDcDSCACQRhqIgMgAkHIAGpBHGopAgA3AwAgAkEQaiIEIAJByABqQRRqKQIANwMAIA\ -JBCGoiBSACQcgAakEMaikCADcDACACIAIpAkw3AwAgASACEGwgAUEAQcwBEKcBIQYCQEEgEAkiAQ0A\ -QSBBAUEAKAKs6kAiAkECIAIbEQQAAAsgASACKQMANwAAIAFBGGogAykDADcAACABQRBqIAQpAwA3AA\ -AgAUEIaiAFKQMANwAAIAZBAEHMARCnARogAEEgNgIEIAAgATYCACACQfAAaiQAC4wDAQd/IwBBsAFr\ -IgIkACACQdgAakEEciABQQRqEHkgAiABKAIANgJYIAJBmAFqIgMgAUE8aikAADcDACACQZABaiIEIA\ -FBNGopAAA3AwAgAkGIAWoiBSABQSxqKQAANwMAIAJB8ABqQRBqIgYgAUEkaikAADcDACACQfAAakEI\ -aiIHIAFBHGopAAA3AwAgAiABKQAUNwNwIAJBoAFqIgggAUHEAGoQeSACQRBqIAJB2ABqQRBqKAIANg\ -IAIAJBCGogAkHYAGpBCGopAwA3AwAgAkEcaiAHKQMANwIAIAJBJGogBikDADcCACACQSxqIAUpAwA3\ -AgAgAkE0aiAEKQMANwIAIAJBPGogAykDADcCACACQcQAaiAIKQMANwIAIAJBzABqIAJBqAFqKQMANw\ -IAIAIgAikDWDcDACACIAIpA3A3AhQCQEHUABAJIgENAEHUAEEEQQAoAqzqQCICQQIgAhsRBAAACyAB\ -IAJB1AAQoAEhASAAQeCWwAA2AgQgACABNgIAIAJBsAFqJAAL8gIBA38CQAJAAkACQAJAIAAtAGgiA0\ -UNACADQcEATw0DIAAgA2pBKGogASACQcAAIANrIgMgAyACSxsiAxCgARogACAALQBoIANqIgQ6AGgg\ -ASADaiEBAkAgAiADayICDQBBACECDAILIABBCGogAEEoaiIEQcAAIAApAwAgAC0AaiAAQekAaiIDLQ\ -AARXIQCyAEQQBBwQAQpwEaIAMgAy0AAEEBajoAAAtBACEDIAJBwQBJDQEgAEEIaiEFIABB6QBqIgMt\ -AAAhBANAIAUgAUHAACAAKQMAIAAtAGogBEH/AXFFchALIAMgAy0AAEEBaiIEOgAAIAFBwABqIQEgAk\ -FAaiICQcAASw0ACyAALQBoIQQLIARB/wFxIgNBwQBPDQIgAkHAACADayIEIAQgAksbIQILIAAgA2pB\ -KGogASACEKABGiAAIAAtAGggAmo6AGggAA8LIANBwABBvIjAABCMAQALIANBwABBvIjAABCMAQAL6Q\ -IBA38jAEEQayICJAAgACgCACEAAkACQAJAAkACQCABQYABSQ0AIAJBADYCDCABQYAQSQ0BIAFBgIAE\ -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\ -EFIAAgA2pBzAFqIAEgBBCgARpBACEDA0AgACADaiIBIAEtAAAgAUHMAWotAABzOgAAIANBAWoiA0Ho\ -AEcNAAsgABAUCyAFIAIgAkHoAHAiBmsiAmohBwJAIAJB6ABJDQADQCAFQegAaiEEIAJBmH9qIQJBAC\ -EDA0AgACADaiIBIAEtAAAgBSADai0AAHM6AAAgA0EBaiIDQegARw0ACyAAEBQgBCEFIAJB6ABPDQAL\ -CyAAQcwBaiAHIAYQoAEaIAAgBjYCyAEPCyADIAVBuKPAABCRAQALIAVB6ABBuKPAABCNAQALIANB6A\ -BByKPAABCMAQAL5AIBBX8jAEGgA2siAiQAIAJBgANqQRxqQQA2AgAgAkGAA2pBFGpCADcCACACQYAD\ -akEMakIANwIAIAJCADcChAMgAkEcNgKAAyACQSBqQRBqIAJBgANqQRBqKQMANwMAIAJBIGpBCGogAk\ -GAA2pBCGopAwA3AwAgAkEgakEYaiACQYADakEYaikDADcDACACQQhqIgMgAkEgakEMaikCADcDACAC\ -QRBqIgQgAkEgakEUaikCADcDACACQRhqIgUgAkEgakEcaigCADYCACACIAIpA4ADNwMgIAIgAikCJD\ -cDACACQSBqIAFB4AIQoAEaIAJBIGogAhBrAkBBHBAJIgYNAEEcQQFBACgCrOpAIgJBAiACGxEEAAAL\ -IAYgAikDADcAACAGQRhqIAUoAgA2AAAgBkEQaiAEKQMANwAAIAZBCGogAykDADcAACABEBAgAEEcNg\ -IEIAAgBjYCACACQaADaiQAC+QCAQV/IwBBoANrIgIkACACQYADakEcakEANgIAIAJBgANqQRRqQgA3\ -AgAgAkGAA2pBDGpCADcCACACQgA3AoQDIAJBHDYCgAMgAkEgakEQaiACQYADakEQaikDADcDACACQS\ -BqQQhqIAJBgANqQQhqKQMANwMAIAJBIGpBGGogAkGAA2pBGGopAwA3AwAgAkEIaiIDIAJBIGpBDGop\ -AgA3AwAgAkEQaiIEIAJBIGpBFGopAgA3AwAgAkEYaiIFIAJBIGpBHGooAgA2AgAgAiACKQOAAzcDIC\ -ACIAIpAiQ3AwAgAkEgaiABQeACEKABGiACQSBqIAIQagJAQRwQCSIGDQBBHEEBQQAoAqzqQCICQQIg\ -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\ -EBaiIDNgIwAkAgA0HBAE8NACAAQTBqIANqQQRqQQBBPyAFaxCnARoCQEHAACAAKAIwa0EITw0AIAIg\ -BBAFIAAoAjAiA0HBAE8NAyAEQQAgAxCnARoLIABB7ABqIAZCA4Y3AgAgAiAEEAUgAEEANgIwIAEgAC\ -gCCDYAACABIABBDGopAgA3AAQgASAAQRRqKQIANwAMIAEgAEEcaikCADcAFCABIABBJGopAgA3ABwg\ -ASAAQSxqKAIANgAkDwsgA0HAAEGsn8AAEIwBAAsgA0HAAEG8n8AAEI8BAAsgA0HAAEHMn8AAEI0BAA\ -u6AgEDfyMAQRBrIgIkAAJAIAAoAsgBIgNBxwBLDQAgACADakHMAWpBBjoAAAJAIANBAWoiBEHIAEYN\ -ACAAIARqQcwBakEAQccAIANrEKcBGgtBACEDIABBADYCyAEgAEGTAmoiBCAELQAAQYABcjoAAANAIA\ -AgA2oiBCAELQAAIARBzAFqLQAAczoAACADQQFqIgNByABHDQALIAAQFCABIAApAAA3AAAgAUE4aiAA\ -QThqKQAANwAAIAFBMGogAEEwaikAADcAACABQShqIABBKGopAAA3AAAgAUEgaiAAQSBqKQAANwAAIA\ -FBGGogAEEYaikAADcAACABQRBqIABBEGopAAA3AAAgAUEIaiAAQQhqKQAANwAAIAJBEGokAA8LQdyf\ -wABBFyACQQhqQfSfwABByKHAABCCAQALugIBA38jAEEQayICJAACQCAAKALIASIDQccASw0AIAAgA2\ -pBzAFqQQE6AAACQCADQQFqIgRByABGDQAgACAEakHMAWpBAEHHACADaxCnARoLQQAhAyAAQQA2AsgB\ -IABBkwJqIgQgBC0AAEGAAXI6AAADQCAAIANqIgQgBC0AACAEQcwBai0AAHM6AAAgA0EBaiIDQcgARw\ -0ACyAAEBQgASAAKQAANwAAIAFBOGogAEE4aikAADcAACABQTBqIABBMGopAAA3AAAgAUEoaiAAQShq\ -KQAANwAAIAFBIGogAEEgaikAADcAACABQRhqIABBGGopAAA3AAAgAUEQaiAAQRBqKQAANwAAIAFBCG\ -ogAEEIaikAADcAACACQRBqJAAPC0Hcn8AAQRcgAkEIakH0n8AAQYihwAAQggEAC7QCAQR/IwBBoAFr\ -IgIkACACQYABakEUakIANwIAIAJBgAFqQQxqQgA3AgAgAkIANwKEASACQRg2AoABIAJBGGpBEGogAk\ -GAAWpBEGopAwA3AwAgAkEYakEIaiACQYABakEIaikDADcDACACQRhqQRhqIAJBgAFqQRhqKAIANgIA\ -IAJBCGoiAyACQRhqQQxqKQIANwMAIAJBEGoiBCACQRhqQRRqKQIANwMAIAIgAikDgAE3AxggAiACKQ\ -IcNwMAIAJBGGogAUHoABCgARogAkEYaiACEBwCQEEYEAkiBQ0AQRhBAUEAKAKs6kAiAkECIAIbEQQA\ -AAsgBSACKQMANwAAIAVBEGogBCkDADcAACAFQQhqIAMpAwA3AAAgARAQIABBGDYCBCAAIAU2AgAgAk\ -GgAWokAAu2AgEIfyMAQfAAayIBQShqIgJCADcDACABQSBqIgNCADcDACABQRhqIgRCADcDACABQRBq\ -IgVCADcDACABQQhqIgZCADcDACABQgA3AwAgAUHAAGpBDGpCADcCACABQgA3AkQgAUEQNgJAIAFB2A\ -BqQRBqIAFBwABqQRBqKAIANgIAIAFB2ABqQQhqIAFBwABqQQhqKQMANwMAIAEgASkDQDcDWCABQThq\ -IgcgAUHYAGpBDGopAgA3AwAgAUEwaiIIIAEpAlw3AwAgAEHMAGogBykDADcAACAAQcQAaiAIKQMANw\ -AAIABBPGogAikDADcAACAAQTRqIAMpAwA3AAAgAEEsaiAEKQMANwAAIABBJGogBSkDADcAACAAQRxq\ -IAYpAwA3AAAgACABKQMANwAUIABBADYCAAu3AgIFfwF+IwBBwAFrIgIkACACQdAAakEIaiIDIAFBEG\ -opAwA3AwAgAkHQAGpBEGoiBCABQRhqKQMANwMAIAJB0ABqQRhqIgUgAUEgaikDADcDACACQdAAakEg\ -aiIGIAFBKGopAwA3AwAgAiABKQMINwNQIAEpAwAhByACQfgAakEEciABQTRqEHEgAiABKAIwNgJ4IA\ -JBCGogAkH4AGpBxAAQoAEaAkBB+AAQCSIBDQBB+ABBCEEAKAKs6kAiAkECIAIbEQQAAAsgASAHNwMA\ -IAEgAikDUDcDCCABQRBqIAMpAwA3AwAgAUEYaiAEKQMANwMAIAFBIGogBSkDADcDACABQShqIAYpAw\ -A3AwAgAUEwaiACQQhqQcQAEKABGiAAQfSVwAA2AgQgACABNgIAIAJBwAFqJAALowICBH8CfiAAIAAp\ -AwAiByACrUIDhnwiCDcDACAAQQhqIgMgAykDACAIIAdUrXw3AwACQAJAQYABIAAoAlAiA2siBCACSw\ -0AIABBEGohBQJAIANFDQAgA0GBAU8NAiAAQdQAaiIGIANqIAEgBBCgARogAEEANgJQIAUgBkEBEAMg\ -AiAEayECIAEgBGohAQsgBSABIAJBB3YQAyAAQdQAaiABIAJBgH9xaiACQf8AcSICEKABGiAAIAI2Al\ -APCwJAAkAgAyACaiIEIANJDQAgBEGAAUsNASAAQdAAaiADakEEaiABIAIQoAEaIAAgACgCUCACajYC\ -UA8LIAMgBEGMn8AAEJEBAAsgBEGAAUGMn8AAEI0BAAsgA0GAAUGcn8AAEIwBAAueAgEEfyAAIAApAw\ -AgAq18NwMAAkACQEHAACAAKAIIIgNrIgQgAksNACAAQcwAaiEFAkAgA0UNACADQcEATw0CIABBDGoi\ -BiADaiABIAQQoAEaIAUgBhANIAIgBGshAiABIARqIQELIAJBP3EhAyABIAJBQHEiAmohBAJAIAJFDQ\ -BBACACayECA0AgBSABEA0gAUHAAGohASACQcAAaiICDQALCyAAQQxqIAQgAxCgARogACADNgIIDwsC\ -QAJAIAMgAmoiBSADSQ0AIAVBwABLDQEgAEEIaiADakEEaiABIAIQoAEaIAAgACgCCCACajYCCA8LIA\ -MgBUG4o8AAEJEBAAsgBUHAAEG4o8AAEI0BAAsgA0HAAEHIo8AAEIwBAAudAgEEfyAAIAApAwAgAq18\ -NwMAAkACQEHAACAAKAIgIgNrIgQgAksNACAAQQhqIQUCQCADRQ0AIANBwQBPDQIgAEEkaiIGIANqIA\ -EgBBCgARogBSAGEAogAiAEayECIAEgBGohAQsgAkE/cSEDIAEgAkFAcSICaiEEAkAgAkUNAEEAIAJr\ -IQIDQCAFIAEQCiABQcAAaiEBIAJBwABqIgINAAsLIABBJGogBCADEKABGiAAIAM2AiAPCwJAAkAgAy\ -ACaiIFIANJDQAgBUHAAEsNASAAQSBqIANqQQRqIAEgAhCgARogACAAKAIgIAJqNgIgDwsgAyAFQbij\ -wAAQkQEACyAFQcAAQbijwAAQjQEACyADQcAAQcijwAAQjAEAC54CAQR/IAAgACkDACACrXw3AwACQA\ -JAQcAAIAAoAggiA2siBCACSw0AIABBzABqIQUCQCADRQ0AIANBwQBPDQIgAEEMaiIGIANqIAEgBBCg\ -ARogBSAGEBEgAiAEayECIAEgBGohAQsgAkE/cSEDIAEgAkFAcSICaiEEAkAgAkUNAEEAIAJrIQIDQC\ -AFIAEQESABQcAAaiEBIAJBwABqIgINAAsLIABBDGogBCADEKABGiAAIAM2AggPCwJAAkAgAyACaiIF\ -IANJDQAgBUHAAEsNASAAQQhqIANqQQRqIAEgAhCgARogACAAKAIIIAJqNgIIDwsgAyAFQbijwAAQkQ\ -EACyAFQcAAQbijwAAQjQEACyADQcAAQcijwAAQjAEAC50CAQR/IAAgACkDACACrXw3AwACQAJAQcAA\ -IAAoAjAiA2siBCACSw0AIABBCGohBQJAIANFDQAgA0HBAE8NAiAAQTRqIgYgA2ogASAEEKABGiAFIA\ -YQBSACIARrIQIgASAEaiEBCyACQT9xIQMgASACQUBxIgJqIQQCQCACRQ0AQQAgAmshAgNAIAUgARAF\ -IAFBwABqIQEgAkHAAGoiAg0ACwsgAEE0aiAEIAMQoAEaIAAgAzYCMA8LAkACQCADIAJqIgUgA0kNAC\ -AFQcAASw0BIABBMGogA2pBBGogASACEKABGiAAIAAoAjAgAmo2AjAPCyADIAVBuKPAABCRAQALIAVB\ -wABBuKPAABCNAQALIANBwABByKPAABCMAQALnQIBBH8gACAAKQMAIAKtfDcDAAJAAkBBwAAgACgCHC\ -IDayIEIAJLDQAgAEEIaiEFAkAgA0UNACADQcEATw0CIABBIGoiBiADaiABIAQQoAEaIAUgBhAGIAIg\ -BGshAiABIARqIQELIAJBP3EhAyABIAJBQHEiAmohBAJAIAJFDQBBACACayECA0AgBSABEAYgAUHAAG\ -ohASACQcAAaiICDQALCyAAQSBqIAQgAxCgARogACADNgIcDwsCQAJAIAMgAmoiBSADSQ0AIAVBwABL\ -DQEgAEEcaiADakEEaiABIAIQoAEaIAAgACgCHCACajYCHA8LIAMgBUG4o8AAEJEBAAsgBUHAAEG4o8\ -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\ -AAEIIBAAuaAgEDfyMAQRBrIgIkAAJAIAAoAsgBIgNB5wBLDQAgACADakHMAWpBBjoAAAJAIANBAWoi\ -BEHoAEYNACAAIARqQcwBakEAQecAIANrEKcBGgtBACEDIABBADYCyAEgAEGzAmoiBCAELQAAQYABcj\ -oAAANAIAAgA2oiBCAELQAAIARBzAFqLQAAczoAACADQQFqIgNB6ABHDQALIAAQFCABIAApAAA3AAAg\ -AUEoaiAAQShqKQAANwAAIAFBIGogAEEgaikAADcAACABQRhqIABBGGopAAA3AAAgAUEQaiAAQRBqKQ\ -AANwAAIAFBCGogAEEIaikAADcAACACQRBqJAAPC0Hcn8AAQRcgAkEIakH0n8AAQbihwAAQggEAC4UC\ -AQR/AkACQEEQIAAoAgAiA2siBCACSw0AIABBFGohBQJAIANFDQAgA0ERTw0CIABBBGoiBiADaiABIA\ -QQoAEaIAUgBhAOIAIgBGshAiABIARqIQELIAJBD3EhAyABIAJBcHEiAmohBAJAIAJFDQBBACACayEC\ -A0AgBSABEA4gAUEQaiEBIAJBEGoiAg0ACwsgAEEEaiAEIAMQoAEaIAAgAzYCAA8LAkACQCADIAJqIg\ -UgA0kNACAFQRBLDQEgACADakEEaiABIAIQoAEaIAAgACgCACACajYCAA8LIAMgBUG4o8AAEJEBAAsg\ -BUEQQbijwAAQjQEACyADQRBByKPAABCMAQALpQICAn8CfiMAQZACayICJAAgAUEIaikDACEEIAEpAw\ -AhBSACQYgBakEEciABQdQAahCJASACIAEoAlA2AogBIAIgAkGIAWpBhAEQoAEhAwJAQdgBEAkiAg0A\ -QdgBQQhBACgCrOpAIgFBAiABGxEEAAALIAIgBTcDACACIAQ3AwggAiABKQMQNwMQIAJBGGogAUEYai\ -kDADcDACACQSBqIAFBIGopAwA3AwAgAkEoaiABQShqKQMANwMAIAJBMGogAUEwaikDADcDACACQThq\ -IAFBOGopAwA3AwAgAkHAAGogAUHAAGopAwA3AwAgAkHIAGogAUHIAGopAwA3AwAgAkHQAGogA0GEAR\ -CgARogAEGEl8AANgIEIAAgAjYCACADQZACaiQAC6UCAgJ/An4jAEGQAmsiAiQAIAFBCGopAwAhBCAB\ -KQMAIQUgAkGIAWpBBHIgAUHUAGoQiQEgAiABKAJQNgKIASACIAJBiAFqQYQBEKABIQMCQEHYARAJIg\ -INAEHYAUEIQQAoAqzqQCIBQQIgARsRBAAACyACIAU3AwAgAiAENwMIIAIgASkDEDcDECACQRhqIAFB\ -GGopAwA3AwAgAkEgaiABQSBqKQMANwMAIAJBKGogAUEoaikDADcDACACQTBqIAFBMGopAwA3AwAgAk\ -E4aiABQThqKQMANwMAIAJBwABqIAFBwABqKQMANwMAIAJByABqIAFByABqKQMANwMAIAJB0ABqIANB\ -hAEQoAEaIABBqJfAADYCBCAAIAI2AgAgA0GQAmokAAuZAgIEfwF+IABBzABqIQIgACkDACEGAkACQA\ -JAAkAgACgCCCIDQcAARw0AIAIgAEEMahANQQAhAyAAQQA2AggMAQsgA0E/Sw0BCyAAQQxqIgQgA2pB\ -gAE6AAAgACAAKAIIIgVBAWoiAzYCCAJAIANBwQBPDQAgAEEIaiADakEEakEAQT8gBWsQpwEaAkBBwA\ -AgACgCCGtBCE8NACACIAQQDSAAKAIIIgNBwQBPDQMgBEEAIAMQpwEaCyAAQcQAaiAGQgOGNwIAIAIg\ -BBANIABBADYCCCABIAApAkw3AAAgASAAQdQAaikCADcACA8LIANBwABBrJ/AABCMAQALIANBwABBvJ\ -/AABCPAQALIANBwABBzJ/AABCNAQALmQICBH8BfiAAQcwAaiECIAApAwAhBgJAAkACQAJAIAAoAggi\ -A0HAAEcNACACIABBDGoQEUEAIQMgAEEANgIIDAELIANBP0sNAQsgAEEMaiIEIANqQYABOgAAIAAgAC\ -gCCCIFQQFqIgM2AggCQCADQcEATw0AIABBCGogA2pBBGpBAEE/IAVrEKcBGgJAQcAAIAAoAghrQQhP\ -DQAgAiAEEBEgACgCCCIDQcEATw0DIARBACADEKcBGgsgAEHEAGogBkIDhjcCACACIAQQESAAQQA2Ag\ -ggASAAKQJMNwAAIAEgAEHUAGopAgA3AAgPCyADQcAAQayfwAAQjAEACyADQcAAQbyfwAAQjwEACyAD\ -QcAAQcyfwAAQjQEAC5ICAQN/IwBBgAFrIgIkACACQRhqIAFB1AAQoAEaAkACQCACKAIYIgNBEE8NAC\ -ACQRhqQQRyIgQgA2pBECADayIDIAMQpwEaIAJBADYCGCACQSxqIgMgBBAOIAJB8ABqQQhqIAJB5ABq\ -KQIANwMAIAIgAkHcAGopAgA3A3AgAyACQfAAahAOIAJBCGpBCGoiBCACQTRqKQIANwMAIAIgAikCLD\ -cDCEEQEAkiA0UNASADIAIpAwg3AAAgA0EIaiAEKQMANwAAIAEQECAAQRA2AgQgACADNgIAIAJBgAFq\ -JAAPC0Hcn8AAQRcgAkHwAGpB2JvAAEHom8AAEIIBAAtBEEEBQQAoAqzqQCICQQIgAhsRBAAAC4MCAQ\ -R/IAAgACkDACACrUIDhnw3AwACQAJAQcAAIAAoAggiA2siBCACSw0AIABBzABqIQUCQCADRQ0AIANB\ -wQBPDQIgAEEMaiIGIANqIAEgBBCgARogAEEANgIIIAUgBkEBEAQgAiAEayECIAEgBGohAQsgBSABIA\ -JBBnYQBCAAQQxqIAEgAkFAcWogAkE/cSICEKABGiAAIAI2AggPCwJAAkAgAyACaiIEIANJDQAgBEHA\ -AEsNASAAQQhqIANqQQRqIAEgAhCgARogACAAKAIIIAJqNgIIDwsgAyAEQYyfwAAQkQEACyAEQcAAQY\ -yfwAAQjQEACyADQcAAQZyfwAAQjAEAC/8BAQR/IAAgACkDACACrXw3AwACQAJAQcAAIAAoAhwiA2si\ -BCACSw0AIABBCGohBQJAIANFDQAgA0HBAE8NAiAAQSBqIgYgA2ogASAEEKABGiAAQQA2AhwgBSAGQQ\ -EQCCACIARrIQIgASAEaiEBCyAFIAEgAkEGdhAIIABBIGogASACQUBxaiACQT9xIgIQoAEaIAAgAjYC\ -HA8LAkACQCADIAJqIgQgA0kNACAEQcAASw0BIABBHGogA2pBBGogASACEKABGiAAIAAoAhwgAmo2Ah\ -wPCyADIARBjJ/AABCRAQALIARBwABBjJ/AABCNAQALIANBwABBnJ/AABCMAQAL+gEBA38jAEEQayIC\ -JAACQCAAKALIASIDQYcBSw0AIAAgA2pBzAFqQQE6AAACQCADQQFqIgRBiAFGDQAgACAEakHMAWpBAE\ -GHASADaxCnARoLQQAhAyAAQQA2AsgBIABB0wJqIgQgBC0AAEGAAXI6AAADQCAAIANqIgQgBC0AACAE\ -QcwBai0AAHM6AAAgA0EBaiIDQYgBRw0ACyAAEBQgASAAKQAANwAAIAFBGGogAEEYaikAADcAACABQR\ -BqIABBEGopAAA3AAAgAUEIaiAAQQhqKQAANwAAIAJBEGokAA8LQdyfwABBFyACQQhqQfSfwABB6KDA\ -ABCCAQAL+gEBA38jAEEQayICJAACQCAAKALIASIDQY8BSw0AIAAgA2pBzAFqQQY6AAACQCADQQFqIg\ -RBkAFGDQAgACAEakHMAWpBAEGPASADaxCnARoLQQAhAyAAQQA2AsgBIABB2wJqIgQgBC0AAEGAAXI6\ -AAADQCAAIANqIgQgBC0AACAEQcwBai0AAHM6AAAgA0EBaiIDQZABRw0ACyAAEBQgASAAKQAANwAAIA\ -FBGGogAEEYaigAADYAACABQRBqIABBEGopAAA3AAAgAUEIaiAAQQhqKQAANwAAIAJBEGokAA8LQdyf\ -wABBFyACQQhqQfSfwABBmKHAABCCAQAL+gEBA38jAEEQayICJAACQCAAKALIASIDQY8BSw0AIAAgA2\ -pBzAFqQQE6AAACQCADQQFqIgRBkAFGDQAgACAEakHMAWpBAEGPASADaxCnARoLQQAhAyAAQQA2AsgB\ -IABB2wJqIgQgBC0AAEGAAXI6AAADQCAAIANqIgQgBC0AACAEQcwBai0AAHM6AAAgA0EBaiIDQZABRw\ -0ACyAAEBQgASAAKQAANwAAIAFBGGogAEEYaigAADYAACABQRBqIABBEGopAAA3AAAgAUEIaiAAQQhq\ -KQAANwAAIAJBEGokAA8LQdyfwABBFyACQQhqQfSfwABBhKDAABCCAQAL+gEBA38jAEEQayICJAACQC\ -AAKALIASIDQYcBSw0AIAAgA2pBzAFqQQY6AAACQCADQQFqIgRBiAFGDQAgACAEakHMAWpBAEGHASAD\ -axCnARoLQQAhAyAAQQA2AsgBIABB0wJqIgQgBC0AAEGAAXI6AAADQCAAIANqIgQgBC0AACAEQcwBai\ -0AAHM6AAAgA0EBaiIDQYgBRw0ACyAAEBQgASAAKQAANwAAIAFBGGogAEEYaikAADcAACABQRBqIABB\ -EGopAAA3AAAgAUEIaiAAQQhqKQAANwAAIAJBEGokAA8LQdyfwABBFyACQQhqQfSfwABBqKHAABCCAQ\ -AL8AEBA38jAEGQAWsiAiQAIAJB+ABqQQxqQgA3AgAgAkIANwJ8IAJBEDYCeCACQRhqQRBqIAJB+ABq\ -QRBqKAIANgIAIAJBGGpBCGogAkH4AGpBCGopAwA3AwAgAkEIakEIaiIDIAJBGGpBDGopAgA3AwAgAi\ -ACKQN4NwMYIAIgAikCHDcDCCACQRhqIAFB4AAQoAEaIAJBGGogAkEIahBkAkBBEBAJIgQNAEEQQQFB\ -ACgCrOpAIgJBAiACGxEEAAALIAQgAikDCDcAACAEQQhqIAMpAwA3AAAgARAQIABBEDYCBCAAIAQ2Ag\ -AgAkGQAWokAAvwAQEDfyMAQZABayICJAAgAkH4AGpBDGpCADcCACACQgA3AnwgAkEQNgJ4IAJBGGpB\ -EGogAkH4AGpBEGooAgA2AgAgAkEYakEIaiACQfgAakEIaikDADcDACACQQhqQQhqIgMgAkEYakEMai\ -kCADcDACACIAIpA3g3AxggAiACKQIcNwMIIAJBGGogAUHgABCgARogAkEYaiACQQhqEGUCQEEQEAki\ -BA0AQRBBAUEAKAKs6kAiAkECIAIbEQQAAAsgBCACKQMINwAAIARBCGogAykDADcAACABEBAgAEEQNg\ -IEIAAgBDYCACACQZABaiQAC/EBAgN/AX4jAEGwAWsiAiQAIAJB0ABqQQhqIgMgAUEQaikDADcDACAC\ -QdAAakEQaiIEIAFBGGooAgA2AgAgAiABKQMINwNQIAEpAwAhBSACQegAakEEciABQSBqEHEgAiABKA\ -IcNgJoIAJBCGogAkHoAGpBxAAQoAEaAkBB4AAQCSIBDQBB4ABBCEEAKAKs6kAiAkECIAIbEQQAAAsg\ -ASAFNwMAIAEgAikDUDcDCCABQRBqIAMpAwA3AwAgAUEYaiAEKAIANgIAIAFBHGogAkEIakHEABCgAR\ -ogAEGYlsAANgIEIAAgATYCACACQbABaiQAC/EBAgN/AX4jAEGwAWsiAiQAIAJB0ABqQQhqIgMgAUEQ\ -aikDADcDACACQdAAakEQaiIEIAFBGGooAgA2AgAgAiABKQMINwNQIAEpAwAhBSACQegAakEEciABQS\ -BqEHEgAiABKAIcNgJoIAJBCGogAkHoAGpBxAAQoAEaAkBB4AAQCSIBDQBB4ABBCEEAKAKs6kAiAkEC\ -IAIbEQQAAAsgASAFNwMAIAEgAikDUDcDCCABQRBqIAMpAwA3AwAgAUEYaiAEKAIANgIAIAFBHGogAk\ -EIakHEABCgARogAEG8lsAANgIEIAAgATYCACACQbABaiQAC+ABAQN/IwBBkAFrIgIkAEEAIQMgAkEA\ -NgIAIAJBBHIhBANAIAQgA2ogASADai0AADoAACADQQFqIgNBwABHDQALIAJBwAA2AgAgAkHIAGogAk\ -HEABCgARogAEE4aiACQYQBaikCADcAACAAQTBqIAJB/ABqKQIANwAAIABBKGogAkH0AGopAgA3AAAg\ -AEEgaiACQewAaikCADcAACAAQRhqIAJB5ABqKQIANwAAIABBEGogAkHcAGopAgA3AAAgAEEIaiACQd\ -QAaikCADcAACAAIAIpAkw3AAAgAkGQAWokAAvFAQECfyMAQSBrIgMkAAJAIAEgAmoiAiABSQ0AIABB\ -BGooAgAiAUEBdCIEIAIgBCACSxsiAkEIIAJBCEsbIQICQAJAIAFFDQAgA0EQakEIakEBNgIAIAMgAT\ -YCFCADIAAoAgA2AhAMAQsgA0EANgIQCyADIAIgA0EQahB4AkAgAygCAEEBRw0AIANBCGooAgAiAEUN\ -ASADKAIEIABBACgCrOpAIgNBAiADGxEEAAALIAAgAykCBDcCACADQSBqJAAPCxCzAQAL0gECAn8Bfi\ -MAQZABayICJAAgASkDACEEIAJByABqQQRyIAFBDGoQcSACIAEoAgg2AkggAiACQcgAakHEABCgASED\ -AkBB8AAQCSICDQBB8ABBCEEAKAKs6kAiAUECIAEbEQQAAAsgAiAENwMAIAJBCGogA0HEABCgARogAk\ -HkAGogAUHkAGopAgA3AgAgAkHcAGogAUHcAGopAgA3AgAgAkHUAGogAUHUAGopAgA3AgAgAiABKQJM\ -NwJMIABBzJfAADYCBCAAIAI2AgAgA0GQAWokAAvSAQICfwF+IwBBkAFrIgIkACABKQMAIQQgAkHIAG\ -pBBHIgAUEMahBxIAIgASgCCDYCSCACIAJByABqQcQAEKABIQMCQEHwABAJIgINAEHwAEEIQQAoAqzq\ -QCIBQQIgARsRBAAACyACIAQ3AwAgAkEIaiADQcQAEKABGiACQeQAaiABQeQAaikCADcCACACQdwAai\ -ABQdwAaikCADcCACACQdQAaiABQdQAaikCADcCACACIAEpAkw3AkwgAEHwl8AANgIEIAAgAjYCACAD\ -QZABaiQAC7wBAgJ/AX4jAEGQAWsiAiQAIAEpAwAhBCACQcgAakEEciABQSRqEHEgAiABKAIgNgJIIA\ -IgAkHIAGpBxAAQoAEhAwJAQegAEAkiAg0AQegAQQhBACgCrOpAIgFBAiABGxEEAAALIAIgBDcDACAC\ -IAEpAwg3AwggAkEQaiABQRBqKQMANwMAIAJBGGogAUEYaikDADcDACACQSBqIANBxAAQoAEaIABB5J\ -TAADYCBCAAIAI2AgAgA0GQAWokAAuuAQICfwF+IwBBkAFrIgIkACABKQMAIQQgAkHIAGpBBHIgAUEM\ -ahBxIAIgASgCCDYCSCACIAJByABqQcQAEKABIQMCQEHgABAJIgINAEHgAEEIQQAoAqzqQCIBQQIgAR\ -sRBAAACyACIAQ3AwAgAkEIaiADQcQAEKABGiACQdQAaiABQdQAaikCADcCACACIAEpAkw3AkwgAEGI\ -lcAANgIEIAAgAjYCACADQZABaiQAC64BAgJ/AX4jAEGQAWsiAiQAIAEpAwAhBCACQcgAakEEciABQQ\ -xqEHEgAiABKAIINgJIIAIgAkHIAGpBxAAQoAEhAwJAQeAAEAkiAg0AQeAAQQhBACgCrOpAIgFBAiAB\ -GxEEAAALIAIgBDcDACACQQhqIANBxAAQoAEaIAJB1ABqIAFB1ABqKQIANwIAIAIgASkCTDcCTCAAQd\ -CVwAA2AgQgACACNgIAIANBkAFqJAALmAEBAX9BACEDAkACQCABQQBIDQACQAJAAkACQAJAIAIoAgAi\ -A0UNAAJAIAIoAgQNACABDQIMBAsgAyABEBYhAgwCCyABRQ0CCyABEAkhAgsCQCACRQ0AIAEhAwwCCy\ -AAIAE2AgRBASEDDAILQQEhAkEAIQMLIAAgAjYCBEEAIQEMAQtBASEBCyAAIAE2AgAgAEEIaiADNgIA\ -C5UBAQF/IwBBMGsiAkEJaiABKQAFNwAAIAJBEWogAS8ADTsAACACQRNqIAEtAA86AAAgAiABLQAAOg\ -AEIAIgASgAATYABSACQRA2AgAgAkEYakEIaiACQQhqKQMANwMAIAJBGGpBEGogAkEQaigCADYCACAC\ -IAIpAwA3AxggACACKQIcNwAAIABBCGogAkEkaikCADcAAAubAQEBfyMAQYAEayICJAAgAkEIaiABQc\ -gBEKABGiACQegCakEEciABQcwBahCHASACIAEoAsgBNgLoAiACQQhqQcgBaiACQegCakGUARCgARoC\ -QEHgAhAJIgENAEHgAkEIQQAoAqzqQCICQQIgAhsRBAAACyABIAJBCGpB4AIQoAEhASAAQcSSwAA2Ag\ -QgACABNgIAIAJBgARqJAALmwEBAX8jAEHwAmsiAiQAIAJBCGogAUHIARCgARogAkGgAmpBBHIgAUHM\ -AWoQigEgAiABKALIATYCoAIgAkEIakHIAWogAkGgAmpBzAAQoAEaAkBBmAIQCSIBDQBBmAJBCEEAKA\ -Ks6kAiAkECIAIbEQQAAAsgASACQQhqQZgCEKABIQEgAEHoksAANgIEIAAgATYCACACQfACaiQAC5sB\ -AQF/IwBB8AJrIgIkACACQQhqIAFByAEQoAEaIAJBoAJqQQRyIAFBzAFqEIoBIAIgASgCyAE2AqACIA\ -JBCGpByAFqIAJBoAJqQcwAEKABGgJAQZgCEAkiAQ0AQZgCQQhBACgCrOpAIgJBAiACGxEEAAALIAEg\ -AkEIakGYAhCgASEBIABBjJPAADYCBCAAIAE2AgAgAkHwAmokAAubAQEBfyMAQbADayICJAAgAkEIai\ -ABQcgBEKABGiACQcACakEEciABQcwBahCLASACIAEoAsgBNgLAAiACQQhqQcgBaiACQcACakHsABCg\ -ARoCQEG4AhAJIgENAEG4AkEIQQAoAqzqQCICQQIgAhsRBAAACyABIAJBCGpBuAIQoAEhASAAQbCTwA\ -A2AgQgACABNgIAIAJBsANqJAALmwEBAX8jAEGwA2siAiQAIAJBCGogAUHIARCgARogAkHAAmpBBHIg\ -AUHMAWoQiwEgAiABKALIATYCwAIgAkEIakHIAWogAkHAAmpB7AAQoAEaAkBBuAIQCSIBDQBBuAJBCE\ -EAKAKs6kAiAkECIAIbEQQAAAsgASACQQhqQbgCEKABIQEgAEHUk8AANgIEIAAgATYCACACQbADaiQA\ -C5sBAQF/IwBB8ANrIgIkACACQQhqIAFByAEQoAEaIAJB4AJqQQRyIAFBzAFqEIgBIAIgASgCyAE2Au\ -ACIAJBCGpByAFqIAJB4AJqQYwBEKABGgJAQdgCEAkiAQ0AQdgCQQhBACgCrOpAIgJBAiACGxEEAAAL\ -IAEgAkEIakHYAhCgASEBIABB+JPAADYCBCAAIAE2AgAgAkHwA2okAAubAQEBfyMAQYAEayICJAAgAk\ -EIaiABQcgBEKABGiACQegCakEEciABQcwBahCHASACIAEoAsgBNgLoAiACQQhqQcgBaiACQegCakGU\ -ARCgARoCQEHgAhAJIgENAEHgAkEIQQAoAqzqQCICQQIgAhsRBAAACyABIAJBCGpB4AIQoAEhASAAQZ\ -yUwAA2AgQgACABNgIAIAJBgARqJAALmwEBAX8jAEHwA2siAiQAIAJBCGogAUHIARCgARogAkHgAmpB\ -BHIgAUHMAWoQiAEgAiABKALIATYC4AIgAkEIakHIAWogAkHgAmpBjAEQoAEaAkBB2AIQCSIBDQBB2A\ -JBCEEAKAKs6kAiAkECIAIbEQQAAAsgASACQQhqQdgCEKABIQEgAEHAlMAANgIEIAAgATYCACACQfAD\ -aiQAC38BAX8jAEHAAGsiBSQAIAUgATYCDCAFIAA2AgggBSADNgIUIAUgAjYCECAFQSxqQQI2AgAgBU\ -E8akEENgIAIAVCAjcCHCAFQdCRwAA2AhggBUEBNgI0IAUgBUEwajYCKCAFIAVBEGo2AjggBSAFQQhq\ -NgIwIAVBGGogBBClAQALfgECfyMAQTBrIgIkACACQRRqQQE2AgAgAkG4jMAANgIQIAJBATYCDCACQb\ -CMwAA2AgggAUEcaigCACEDIAEoAhghASACQSxqQQI2AgAgAkICNwIcIAJB0JHAADYCGCACIAJBCGo2\ -AiggASADIAJBGGoQHSEBIAJBMGokACABC34BAn8jAEEwayICJAAgAkEUakEBNgIAIAJBuIzAADYCEC\ -ACQQE2AgwgAkGwjMAANgIIIAFBHGooAgAhAyABKAIYIQEgAkEsakECNgIAIAJCAjcCHCACQdCRwAA2\ -AhggAiACQQhqNgIoIAEgAyACQRhqEB0hASACQTBqJAAgAQuOAQAgAEIANwMIIABCADcDACAAQQA2Al\ -AgAEEAKQPgnUA3AxAgAEEYakEAKQPonUA3AwAgAEEgakEAKQPwnUA3AwAgAEEoakEAKQP4nUA3AwAg\ -AEEwakEAKQOAnkA3AwAgAEE4akEAKQOInkA3AwAgAEHAAGpBACkDkJ5ANwMAIABByABqQQApA5ieQD\ -cDAAuOAQAgAEIANwMIIABCADcDACAAQQA2AlAgAEEAKQOgnkA3AxAgAEEYakEAKQOonkA3AwAgAEEg\ -akEAKQOwnkA3AwAgAEEoakEAKQO4nkA3AwAgAEEwakEAKQPAnkA3AwAgAEE4akEAKQPInkA3AwAgAE\ -HAAGpBACkD0J5ANwMAIABByABqQQApA9ieQDcDAAtxAQN/IwBBsAJrIgIkAEEAIQMgAkEANgIAIAJB\ -BHIhBANAIAQgA2ogASADai0AADoAACADQQFqIgNBkAFHDQALIAJBkAE2AgAgAkGYAWogAkGUARCgAR\ -ogACACQZgBakEEckGQARCgARogAkGwAmokAAtxAQN/IwBBoAJrIgIkAEEAIQMgAkEANgIAIAJBBHIh\ -BANAIAQgA2ogASADai0AADoAACADQQFqIgNBiAFHDQALIAJBiAE2AgAgAkGQAWogAkGMARCgARogAC\ -ACQZABakEEckGIARCgARogAkGgAmokAAtxAQN/IwBBkAJrIgIkAEEAIQMgAkEANgIAIAJBBHIhBANA\ -IAQgA2ogASADai0AADoAACADQQFqIgNBgAFHDQALIAJBgAE2AgAgAkGIAWogAkGEARCgARogACACQY\ -gBakEEckGAARCgARogAkGQAmokAAtxAQN/IwBBoAFrIgIkAEEAIQMgAkEANgIAIAJBBHIhBANAIAQg\ -A2ogASADai0AADoAACADQQFqIgNByABHDQALIAJByAA2AgAgAkHQAGogAkHMABCgARogACACQdAAak\ -EEckHIABCgARogAkGgAWokAAtxAQN/IwBB4AFrIgIkAEEAIQMgAkEANgIAIAJBBHIhBANAIAQgA2og\ -ASADai0AADoAACADQQFqIgNB6ABHDQALIAJB6AA2AgAgAkHwAGogAkHsABCgARogACACQfAAakEEck\ -HoABCgARogAkHgAWokAAttAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpB\ -BTYCACADQgI3AgwgA0GIj8AANgIIIANBBTYCJCADIANBIGo2AhggAyADQQRqNgIoIAMgAzYCICADQQ\ -hqIAIQpQEAC20BAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRxqQQI2AgAgA0EsakEFNgIAIANC\ -AjcCDCADQcyPwAA2AgggA0EFNgIkIAMgA0EgajYCGCADIANBBGo2AiggAyADNgIgIANBCGogAhClAQ\ -ALbQEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBHGpBAjYCACADQSxqQQU2AgAgA0IDNwIMIANB\ -5JHAADYCCCADQQU2AiQgAyADQSBqNgIYIAMgAzYCKCADIANBBGo2AiAgA0EIaiACEKUBAAttAQF/Iw\ -BBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBBTYCACADQgI3AgwgA0HsjMAANgII\ -IANBBTYCJCADIANBIGo2AhggAyADNgIoIAMgA0EEajYCICADQQhqIAIQpQEAC2QBAn8jAEEgayICJA\ -AgAUEcaigCACEDIAEoAhghASACQQhqQRBqIABBEGopAgA3AwAgAkEIakEIaiAAQQhqKQIANwMAIAIg\ -ACkCADcDCCABIAMgAkEIahAdIQAgAkEgaiQAIAALbQEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIA\ -NBHGpBAjYCACADQSxqQQU2AgAgA0ICNwIMIANBnJHAADYCCCADQQU2AiQgAyADQSBqNgIYIAMgA0EE\ -ajYCKCADIAM2AiAgA0EIaiACEKUBAAtsACAAQgA3AwAgACAAKQNwNwMIIABBIGogAEGIAWopAwA3Aw\ -AgAEEYaiAAQYABaikDADcDACAAQRBqIABB+ABqKQMANwMAIABBKGpBAEHCABCnARoCQCAAQfAOaiIA\ -LQAARQ0AIABBADoAAAsLdgECf0EBIQBBAEEAKALY5kAiAUEBajYC2OZAAkACQEEAKAKg6kBBAUcNAE\ -EAKAKk6kBBAWohAAwBC0EAQQE2AqDqQAtBACAANgKk6kACQCABQQBIDQAgAEECSw0AQQAoAqjqQEF/\ -TA0AIABBAUsNABDOAQALAAtjAQF/IwBBIGsiAiQAIAIgACgCADYCBCACQQhqQRBqIAFBEGopAgA3Aw\ -AgAkEIakEIaiABQQhqKQIANwMAIAIgASkCADcDCCACQQRqQbiHwAAgAkEIahAdIQEgAkEgaiQAIAEL\ -ZgEBfyMAQSBrIgQkACAEIAE2AgQgBCAANgIAIARBCGpBEGogAkEQaikCADcDACAEQQhqQQhqIAJBCG\ -opAgA3AwAgBCACKQIANwMIIARBkKPAACAEQQRqQZCjwAAgBEEIaiADEEgAC2UCAX8BfiMAQRBrIgIk\ -AAJAAkAgAUUNACABKAIADQEgAUF/NgIAIAJBCGogASgCBCABQQhqKAIAKAIQEQQAIAIpAwghAyABQQ\ -A2AgAgACADNwMAIAJBEGokAA8LELoBAAsQuwEAC1EBAn8CQCAAKAIAIgNBBGooAgAgA0EIaiIEKAIA\ -IgBrIAJPDQAgAyAAIAIQciAEKAIAIQALIAMoAgAgAGogASACEKABGiAEIAAgAmo2AgBBAAtKAQN/QQ\ -AhAwJAIAJFDQACQANAIAAtAAAiBCABLQAAIgVHDQEgAEEBaiEAIAFBAWohASACQX9qIgJFDQIMAAsL\ -IAQgBWshAwsgAwtRAQJ/AkACQCAARQ0AIAAoAgANASAAQQA2AgAgACgCBCEBIAAoAgghAiAAEBAgAS\ -ACKAIAEQEAAkAgAigCBEUNACABEBALDwsQugEACxC7AQALTgACQAJAIABFDQAgACgCAA0BIABBfzYC\ -ACAAKAIEIAEgAiAAQQhqKAIAKAIMEQYAAkAgAkUNACABEBALIABBADYCAA8LELoBAAsQuwEAC1QBAX\ -8CQAJAAkAgAUGAgMQARg0AQQEhBCAAKAIYIAEgAEEcaigCACgCEBEFAA0BCyACDQFBACEECyAEDwsg\ -ACgCGCACIAMgAEEcaigCACgCDBEHAAtYACAAQgA3AwAgAEEANgIwIABBACkD4JxANwMIIABBEGpBAC\ -kD6JxANwMAIABBGGpBACkD8JxANwMAIABBIGpBACkD+JxANwMAIABBKGpBACkDgJ1ANwMAC0gBAX8j\ -AEEgayIDJAAgA0EUakEANgIAIANB2KHAADYCECADQgE3AgQgAyABNgIcIAMgADYCGCADIANBGGo2Ag\ -AgAyACEKUBAAtMACAAQQA2AgggAEIANwMAIABBACkDwJ1ANwJMIABB1ABqQQApA8idQDcCACAAQdwA\ -akEAKQPQnUA3AgAgAEHkAGpBACkD2J1ANwIAC0wAIABBADYCCCAAQgA3AwAgAEEAKQKcnUA3AkwgAE\ -HUAGpBACkCpJ1ANwIAIABB3ABqQQApAqydQDcCACAAQeQAakEAKQK0nUA3AgALNgEBfwJAIAJFDQAg\ -ACEDA0AgAyABLQAAOgAAIAFBAWohASADQQFqIQMgAkF/aiICDQALCyAACzkBA38jAEEQayIBJAAgAC\ -gCDCECIAAoAggQrwEhAyABIAI2AgggASAANgIEIAEgAzYCACABEKYBAAs6ACAAQgA3AwAgAEEANgIg\ -IABBACkDoKNANwMIIABBEGpBACkDqKNANwMAIABBGGpBACkDsKNANwMACzoAIABCADcDACAAQQA2Ah\ -wgAEEAKQOInUA3AwggAEEQakEAKQOQnUA3AwAgAEEYakEAKAKYnUA2AgALOgAgAEEANgIcIABCADcD\ -ACAAQRhqQQAoApidQDYCACAAQRBqQQApA5CdQDcDACAAQQApA4idQDcDCAs1AQF/IwBBEGsiAiQAIA\ -IgATYCDCACIAA2AgggAkH8jMAANgIEIAJB2KHAADYCACACEKEBAAstAQF/IwBBEGsiASQAIAFBCGog\ -AEEIaigCADYCACABIAApAgA3AwAgARCqAQALLAEBfwJAIAJFDQAgACEDA0AgAyABOgAAIANBAWohAy\ -ACQX9qIgINAAsLIAALIwACQCAAQXxLDQACQCAADQBBBA8LIAAQCSIARQ0AIAAPCwALLAAgAEEANgII\ -IABCADcDACAAQdQAakEAKQLUnEA3AgAgAEEAKQLMnEA3AkwLIQAgACgCACIAQRRqKAIAGgJAIAAoAg\ -QOAgAAAAsQkwEACxwAAkACQCABQXxLDQAgACACEBYiAQ0BCwALIAELGgACQCAAQfAOaiIALQAARQ0A\ -IABBADoAAAsLHAAgASgCGEHijMAAQQggAUEcaigCACgCDBEHAAscACABKAIYQbySwABBBSABQRxqKA\ -IAKAIMEQcACxsAAkAgAA0AQdihwABBK0GEosAAEJ0BAAsgAAsUACAAKAIAIAEgACgCBCgCDBEFAAsQ\ -ACABIAAoAgAgACgCBBAVCw4AAkAgAUUNACAAEBALCxIAQfiGwABBEUGMh8AAEJ0BAAsNACAAKAIAGg\ -N/DAALCw0AIABBAEHMARCnARoLDQAgAEEAQcwBEKcBGgsNACAAQQBBzAEQpwEaCw0AIABBAEHMARCn\ -ARoLCwAgACMAaiQAIwALDQBB7OXAAEEbEL0BAAsOAEGH5sAAQc8AEL0BAAsLACAANQIAIAEQSwsJAC\ -AAIAEQAQALBwAgABACAAsMAEKqkq2it6bAzmALBABBHAsFAEHAAAsEAEEgCwQAQTALBABBGAsEAEEg\ -CwQAQRALBABBKAsEAEEUCwQAQRALBQBBwAALBABBMAsEAEEgCwQAQRwLAwAACwIACwIACwvg5oCAAA\ -EAQYCAwAAL1mZtZDIABwAAAFQAAAAEAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAAbWQ0AAcAAABg\ -AAAACAAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAAG1kNQAHAAAAYAAAAAgAAAAUAAAAFQAAABYAAA\ -ARAAAAEgAAABcAAAByaXBlbWQxNjAAAAAHAAAAYAAAAAgAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0A\ -AAByaXBlbWQzMjAAAAAHAAAAeAAAAAgAAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAHAAAAYAAAAA\ -gAAAAkAAAAJQAAACYAAAAnAAAAHAAAACgAAABzaGEyMjQAAAcAAABwAAAACAAAACkAAAAqAAAAKwAA\ -ACwAAAAtAAAALgAAAHNoYTI1NgAABwAAAHAAAAAIAAAAKQAAAC8AAAAwAAAAMQAAADIAAAAzAAAAc2\ -hhMzg0AAAHAAAA2AAAAAgAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAABzaGE1MTIAAAcAAADYAAAA\ -CAAAADQAAAA6AAAAOwAAADwAAAA9AAAAPgAAAAcAAABgAQAACAAAAD8AAABAAAAAQQAAAEIAAABDAA\ -AARAAAAAcAAABYAQAACAAAAEUAAABGAAAARwAAAEgAAABJAAAASgAAAAcAAAA4AQAACAAAAEsAAABM\ -AAAATQAAAE4AAABPAAAAUAAAAAcAAAAYAQAACAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAGtlY2\ -NhazIyNAAAAAcAAABgAQAACAAAAD8AAABXAAAAWAAAAEIAAABDAAAAWQAAAGtlY2NhazI1NgAAAAcA\ -AABYAQAACAAAAEUAAABaAAAAWwAAAEgAAABJAAAAXAAAAGtlY2NhazM4NAAAAAcAAAA4AQAACAAAAE\ -sAAABdAAAAXgAAAE4AAABPAAAAXwAAAGtlY2NhazUxMgAAAAcAAAAYAQAACAAAAFEAAABgAAAAYQAA\ -AFQAAABVAAAAYgAAAGJsYWtlMwAAYwAAAHgHAAAIAAAAZAAAAGUAAABmAAAAZwAAAGgAAABpAAAAdG\ -lnZXIAAAAHAAAAaAAAAAgAAABqAAAAawAAAGwAAABtAAAAbgAAAG8AAAB1bnN1cHBvcnRlZCBoYXNo\ -IGFsZ29yaXRobTogVAMQABwAAABjYXBhY2l0eSBvdmVyZmxvdwAAAJwDEAAcAAAALwIAAAUAAABsaW\ -JyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjLnJzBwAAAAQAAAAEAAAAcAAAAHEAAAByAAAAYSBmb3JtYXR0\ -aW5nIHRyYWl0IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yAAcAAAAAAAAAAQAAAHMAAA\ -AkBBAAGAAAAEcCAAAcAAAAbGlicmFyeS9hbGxvYy9zcmMvZm10LnJzTAQQAFYAAABlAQAACQAAAEM6\ -XFVzZXJzXFRPR29TXC5jYXJnb1xyZWdpc3RyeVxzcmNcZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjOD\ -IzXGJsYWtlMy0wLjMuOFxzcmNcbGliLnJzAABMBBAAVgAAAAsCAAAKAAAATAQQAFYAAAA5AgAACQAA\ -AEwEEABWAAAArgIAABkAAABMBBAAVgAAALACAAAJAAAATAQQAFYAAACwAgAAOAAAAGFzc2VydGlvbi\ -BmYWlsZWQ6IG1pZCA8PSBzZWxmLmxlbigpAEAREABNAAAA4wUAAAkAAABMBBAAVgAAAIMCAAAJAAAA\ -TAQQAFYAAACKAgAACgAAAEwEEABWAAAAmgMAADIAAABMBBAAVgAAAFUEAAAWAAAATAQQAFYAAABnBA\ -AAFgAAAEwEEABWAAAAmAQAABIAAABMBBAAVgAAAKIEAAASAAAABwAAACAAAAABAAAAdAAAALgFEABY\ -AAAAzQAAACAAAABDOlxVc2Vyc1xUT0dvU1wuY2FyZ29ccmVnaXN0cnlcc3JjXGdpdGh1Yi5jb20tMW\ -VjYzYyOTlkYjllYzgyM1xhcnJheXZlYy0wLjUuMlxzcmNcbGliLnJzBwAAAAQAAAAEAAAAdQAAAAcA\ -AAAEAAAABAAAAHUAAABVBhAADQAAAEAGEAAVAAAAaW5zdWZmaWNpZW50IGNhcGFjaXR5Q2FwYWNpdH\ -lFcnJvclBhZEVycm9yAACMBhAAIAAAAKwGEAASAAAABwAAAAAAAAABAAAAdgAAAGluZGV4IG91dCBv\ -ZiBib3VuZHM6IHRoZSBsZW4gaXMgIGJ1dCB0aGUgaW5kZXggaXMgMDAwMTAyMDMwNDA1MDYwNzA4MD\ -kxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4\ -Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2Nz\ -Y4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5\ -Nzk4OTkAAJgHEAASAAAAqgcQACIAAAByYW5nZSBzdGFydCBpbmRleCAgb3V0IG9mIHJhbmdlIGZvci\ -BzbGljZSBvZiBsZW5ndGgg3AcQABAAAACqBxAAIgAAAHJhbmdlIGVuZCBpbmRleCA9PQAAMAgQABkA\ -AABJCBAAEgAAAFsIEAAMAAAAaggQAAEAAAAwCBAAGQAAAEkIEAASAAAAWwgQAAwAAABnCBAAAwAAAG\ -Fzc2VydGlvbiBmYWlsZWQ6IGAobGVmdCAgcmlnaHQpYAogIGxlZnQ6IGBgLAogcmlnaHQ6IGBgOiBg\ -AH4IEAAbAAAAZQAAABQAAAAweGxpYnJhcnkvY29yZS9zcmMvZm10L251bS5ycwAAAKwIEAAWAAAAwg\ -gQAA0AAABzbGljZSBpbmRleCBzdGFydHMgYXQgIGJ1dCBlbmRzIGF0IADYEBAAAAAAAOAIEAACAAAA\ -OiApAPwIEAAVAAAAEQkQACsAAADiCBAAAQAAAHNvdXJjZSBzbGljZSBsZW5ndGggKCkgZG9lcyBub3\ -QgbWF0Y2ggZGVzdGluYXRpb24gc2xpY2UgbGVuZ3RoIChFcnJvcgAAAAcAAABgAQAACAAAAD8AAABA\ -AAAAQQAAAEIAAABDAAAARAAAAAcAAAAYAQAACAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAAcAAA\ -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\ -AAVAAAAEgAAAABAAAAFBAQAFQAAABPAAAAAQAAABQQEABUAAAAVgAAAAEAAAAUEBAAVAAAAGYAAAAB\ -AAAAFBAQAFQAAABtAAAAAQAAABQQEABUAAAAdAAAAAEAAAAUEBAAVAAAAHsAAAABAAAAY2FsbGVkIG\ -BPcHRpb246OnVud3JhcCgpYCBvbiBhIGBOb25lYCB2YWx1ZQAUERAAHAAAAAICAAAeAAAAbGlicmFy\ -eS9zdGQvc3JjL3Bhbmlja2luZy5yc0AREABNAAAA8gsAAA0AAAAvcnVzdGMvYzhkZmNmZTA0NmE3Nj\ -gwNTU0YmY0ZWI2MTJiYWQ4NDBlNzYzMWM0Yi9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21vZC5ycwAA\ -AAcAAAAEAAAABAAAAHgAAADvzauJZ0UjARAyVHaYutz+h+Gyw7SllvDYERAAXAAAABsAAAANAAAA2B\ -EQAFwAAAAiAAAADQAAAEM6XFVzZXJzXFRPR29TXC5jYXJnb1xyZWdpc3RyeVxzcmNcZ2l0aHViLmNv\ -bS0xZWNjNjI5OWRiOWVjODIzXGJsb2NrLWJ1ZmZlci0wLjkuMFxzcmNcbGliLnJzAAAAAF4M6fd8sa\ -oC7KhD4gNLQqzT/NUN41vNcjp/+faTmwFtk5Ef0v94mc3iKYBwyaFzdcODKpJrMmSxcFiRBO4+iEbm\ -7ANxBeOs6lxTowi4aUHFfMTejZFU50wM9A3c3/SiCvq+TacYb7cQaqvRWiO2zMb/4i9XIWFyEx6SnR\ -lvjEgaygcA2vT5yUvHQVLo9ub1JrZHWerbeZCFkoyeycWFGE9Lhm+pHnaO133BtVKMQjaOwWMwNydo\ -z2luxbSbPckHtuq1dg52DoJ9Qtx/8MacXGTgQjMkeKA4vwR9Lp08NGtfxg4LYOuKwvKsvFRyX9gObO\ -VP26SBIllxn+0Pzmn6ZxnbRWW5+JNS/Qtgp/LX6XnIThmTAZJIAoazwJwtO1P5pBN2lRVsg1OQ8Xs1\ -/IrPbdtXDzd6euq+GGaQuVDKF3EDNUpCdJcKs2qbJCXjAi/p9OHKHAYH2zl3BSqk7Jy089hzLzhRP7\ -5WvSi7sENY7fpFgx+/EVw9gRxpoV/XtuTwipmZrYekGO4zEETJseroJjz5IqjAKxAQtTsS5gwx7x4U\ -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\ -RodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjNcdGlnZXItMC4xLjBcc3JjXGxpYi5ycwAAAAQAAAAAAAAA\ -bnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZW\ -N0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdACp6oCAAARuYW1l\ -AZ7qgIAA0QEANndhc21fYmluZGdlbjo6X193YmluZGdlbl9zdHJpbmdfbmV3OjpoZDFlZWI2OWY2MD\ -QyMzFmNwExd2FzbV9iaW5kZ2VuOjpfX3diaW5kZ2VuX3Rocm93OjpoZDc5ZWY5ZDVlZDExMTdmNQIz\ -d2FzbV9iaW5kZ2VuOjpfX3diaW5kZ2VuX3JldGhyb3c6OmhmY2VlZDdlODFiYWE5YjQ0Ay9zaGEyOj\ -pzaGE1MTI6OnNvZnQ6OmNvbXByZXNzOjpoYzZlMjRlZWYyMTg2MjQxMQQvc2hhMjo6c2hhMjU2Ojpz\ -b2Z0Ojpjb21wcmVzczo6aDY3MTk3Y2NiNGE4YzViMmUFNnJpcGVtZDMyMDo6YmxvY2s6OnByb2Nlc3\ -NfbXNnX2Jsb2NrOjpoOTM4Yzc0YTJlZDRlZjQ5YgY2cmlwZW1kMTYwOjpibG9jazo6cHJvY2Vzc19t\ -c2dfYmxvY2s6OmgwZWI2OTRmYjBiNTA3NzM2BwtjcmVhdGVfaGFzaAgrc2hhMTo6Y29tcHJlc3M6Om\ -NvbXByZXNzOjpoMjdkMjgzODUxMjAyOTc2NAk6ZGxtYWxsb2M6OmRsbWFsbG9jOjpEbG1hbGxvYzxB\ -Pjo6bWFsbG9jOjpoODE3ZDBiZGJlNzQ4OTk0ZAopdGlnZXI6OlRpZ2VyOjpjb21wcmVzczo6aDY4YT\ -JjODYyOTEyNjVkYzYLNmJsYWtlMzo6cG9ydGFibGU6OmNvbXByZXNzX2luX3BsYWNlOjpoYzIwN2Nk\ -OWFhZWZjZTc3Ngw/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6Om\ -g5MWYwMzczM2JiZDA3NTk0DSdtZDU6OnV0aWxzOjpjb21wcmVzczo6aDVmN2ZjZWQ4YjhlYjI1MmQO\ -L21kMjo6TWQyU3RhdGU6OnByb2Nlc3NfYmxvY2s6OmhiOTQxMTkzYTc3ZDQ1YjRlDzBibGFrZTM6Om\ -NvbXByZXNzX3N1YnRyZWVfd2lkZTo6aGJhZDQxZGIzYTU1ZWFiYTgQOGRsbWFsbG9jOjpkbG1hbGxv\ -Yzo6RGxtYWxsb2M8QT46OmZyZWU6OmgzN2YyY2NiMTI2MDg0OWI2ES9tZDQ6Ok1kNFN0YXRlOjpwcm\ -9jZXNzX2Jsb2NrOjpoNmM2MjhlZmIxNzhkM2E5MxJBZGxtYWxsb2M6OmRsbWFsbG9jOjpEbG1hbGxv\ -YzxBPjo6ZGlzcG9zZV9jaHVuazo6aGIxOWJhNGY1N2M4NjJkMTITK2JsYWtlMzo6SGFzaGVyOjpmaW\ -5hbGl6ZTo6aDg5ZWNkMjkzNzkwOTRmNGYUIGtlY2Nhazo6ZjE2MDA6Omg1MTE3ODc3YTYxZmRlMWU0\ -FSxjb3JlOjpmbXQ6OkZvcm1hdHRlcjo6cGFkOjpoMzgxYjdjOWVlZjAxNWU4YhYOX19ydXN0X3JlYW\ -xsb2MXYTxzaGEyOjpzaGE1MTI6OlNoYTUxMiBhcyBkaWdlc3Q6OmZpeGVkOjpGaXhlZE91dHB1dERp\ -cnR5Pjo6ZmluYWxpemVfaW50b19kaXJ0eTo6aDc5NjZjNmQ4MmEyOGRhY2IYMWJsYWtlMzo6SGFzaG\ -VyOjptZXJnZV9jdl9zdGFjazo6aDkyZTUyN2YwZmQyZTQ0Y2EZRzxEIGFzIGRpZ2VzdDo6ZHluX2Rp\ -Z2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Omg4ZTdmMGVkNTFjMzJiZDM3Gkc8RCBhcy\ -BkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0OjpoZTgyMWZlZjBl\ -Y2YxMTUwZhtHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZX\ -NldDo6aDBiMmZkNTY0MDM1MDdjYWQcWTx0aWdlcjo6VGlnZXIgYXMgZGlnZXN0OjpmaXhlZDo6Rml4\ -ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6OmgwNDMxMTgzMDdhMDY5ODk4HSNjb3\ -JlOjpmbXQ6OndyaXRlOjpoOWI5YWEyM2U3ZDM1NzAyYx41Y29yZTo6Zm10OjpGb3JtYXR0ZXI6OnBh\ -ZF9pbnRlZ3JhbDo6aDA4ZTNlNTNhMGRlNTE3YTEfYTxzaGEyOjpzaGE1MTI6OlNoYTM4NCBhcyBkaW\ -dlc3Q6OmZpeGVkOjpGaXhlZE91dHB1dERpcnR5Pjo6ZmluYWxpemVfaW50b19kaXJ0eTo6aDdmNWM5\ -YTRlMzE4MzcyZGYgQjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb2\ -5lOjpoOGJkZjljNGNmOTlmZmYxMSFHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+\ -OjpmaW5hbGl6ZV9yZXNldDo6aDYyNGUwYjg5NjJhZTVkZTEiVzxzaGExOjpTaGExIGFzIGRpZ2VzdD\ -o6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoYTQ3YTg4MDhk\ -OGViYmFiMiM0Ymxha2UzOjpjb21wcmVzc19wYXJlbnRzX3BhcmFsbGVsOjpoOWRkN2U1ZDc3NGY2Ym\ -ZhNCRHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6\ -aGNlNDhhZTI1MDNjNTYwZTglQTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Zm\ -luYWxpemU6OmgyODczOWQ1MDNmZDIzNDA0JkE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRp\ -Z2VzdD46OmZpbmFsaXplOjpoNzY3YmU3YjA5MjRhZDM0NSdBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZX\ -N0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aGMzN2JiMjJmMGYxMmU1NGEoRzxEIGFzIGRpZ2VzdDo6\ -ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6OmgzN2EwOTg0MjhlYTc2ODNlKU\ -c8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0OjpoM2Y1\ -ZDA1ZDcxODExYWRjYypBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbG\ -l6ZTo6aDBiMTdiMDBhNGJmNzRjNTcrQTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0\ -Pjo6ZmluYWxpemU6OmhhNTBmYjBkNjcwNDE5NGRiLEE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6Ok\ -R5bkRpZ2VzdD46OmZpbmFsaXplOjpoZDVmYTU1OWY4Mjk3YzUyMS1HPEQgYXMgZGlnZXN0OjpkeW5f\ -ZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aDRmZTI1ZjY4YjZkY2ZkYTcuRzxEIG\ -FzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Omg5ZWUyMzU5\ -ZGFlMDU0NWVlL0c8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3\ -Jlc2V0OjpoZDNlYTUxM2E5NTJlMTdiMTBhPHNoYTI6OnNoYTI1Njo6U2hhMjU2IGFzIGRpZ2VzdDo6\ -Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoZGY2N2YxNGRlMG\ -U4ZTg3NzFBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aGU2\ -NTc5MmM3ODQ0ZmI2YWQyRzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYW\ -xpemVfcmVzZXQ6Omg2NTg4ZjcwMTBiNmZlZmUzMzJzaGEyOjpzaGE1MTI6OkVuZ2luZTUxMjo6Zmlu\ -aXNoOjpoNTQxMTM0NjdhNjI4OGM2MzRBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3\ -Q+OjpmaW5hbGl6ZTo6aDg0Y2MyNDczY2NkOGRkZDc1RzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6\ -RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6OmhlY2UxMDlmY2IxMTRkMTgwNkE8RCBhcyBkaWdlc3\ -Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoNzhkMmNlZDM1YjExOThhODdBPEQg\ -YXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aGQ5MTVjYzFiNzljNz\ -gxOTk4QTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6OmgzMzhj\ -ODQ5MTRhZmEyM2JhOUc8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaX\ -plX3Jlc2V0OjpoNGI5YTNhYmFhNjY5ZGJmNzpHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5E\ -aWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aGUwMDk0YjA3ZDlhMmU5NDE7QjxEIGFzIGRpZ2VzdDo6ZH\ -luX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoNTI3OTM1MWYyZWVlMDU2NzwtYmxha2Uz\ -OjpDaHVua1N0YXRlOjp1cGRhdGU6OmhiY2IyNDc1NGRkODRmNGE0PTs8Jm11dCBXIGFzIGNvcmU6Om\ -ZtdDo6V3JpdGU+Ojp3cml0ZV9jaGFyOjpoNjBmNDg3ZTJjZWQwMDQxZj5HPEQgYXMgZGlnZXN0Ojpk\ -eW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aDJiNjU1MjYyMjY1NGNjNmY/Rz\ -xEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6OmhhNzAx\ -ZDQxODI4ZTVhOTZiQGE8c2hhMjo6c2hhMjU2OjpTaGEyMjQgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZW\ -RPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6OmgyNzQxMzY0MjFhZTNiMTdiQT88RCBh\ -cyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0ZTo6aDAxZmRmZTkzMzVkOTQ5NT\ -NCPzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6dXBkYXRlOjpoM2EwODZkMmQ2\ -ZDA5YmQ5MUM/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6Omg0Nz\ -RjNWE0NmEwZmVmOWJjRD88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0\ -ZTo6aDY1YjIzOGIyZDc4NzYzZGNFQTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pj\ -o6ZmluYWxpemU6Omg5ZDRmNDRkZTgyODNlM2ZlRkE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5\ -bkRpZ2VzdD46OmZpbmFsaXplOjpoYjZiYWQ5NGY3ODI1MTc4YUdBPEQgYXMgZGlnZXN0OjpkeW5fZG\ -lnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aDBlY2RkZTdlYWJhYWMyNjlIN2NvcmU6OnBhbmlj\ -a2luZzo6YXNzZXJ0X2ZhaWxlZF9pbm5lcjo6aDg4YTJhOGIzNmI4NTkyNmNJRzxEIGFzIGRpZ2VzdD\ -o6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Omg3ODJhY2Q5ZDQxNGY1MDQz\ -Skc8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0OjpoZG\ -Q2ODBlNzJlMTU5YWUxMksvY29yZTo6Zm10OjpudW06OmltcDo6Zm10X3U2NDo6aGYwNDY5NDMxZGFj\ -ZTQwNDZMMnNoYTI6OnNoYTI1Njo6RW5naW5lMjU2OjpmaW5pc2g6OmhlNWU2ZjllMDUwZTUyNjc1TT\ -A8JlQgYXMgY29yZTo6Zm10OjpEZWJ1Zz46OmZtdDo6aGM0MzY0Njc3ODkwOGMyMTBOYTxyaXBlbWQz\ -MjA6OlJpcGVtZDMyMCBhcyBkaWdlc3Q6OmZpeGVkOjpGaXhlZE91dHB1dERpcnR5Pjo6ZmluYWxpem\ -VfaW50b19kaXJ0eTo6aDRiZmNiNDJhZGI3YjdkNjhPWzxzaGEzOjpTaGEzXzUxMiBhcyBkaWdlc3Q6\ -OmZpeGVkOjpGaXhlZE91dHB1dERpcnR5Pjo6ZmluYWxpemVfaW50b19kaXJ0eTo6aDRlODVhNTAwOD\ -E4NDJhYjNQXDxzaGEzOjpLZWNjYWs1MTIgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0\ -eT46OmZpbmFsaXplX2ludG9fZGlydHk6OmhmZTJmMDA5NWJmMWNkNjE5UUE8RCBhcyBkaWdlc3Q6Om\ -R5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoMmNhN2M2Y2IzMWJkMjEzNVI+PEQgYXMg\ -ZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldDo6aGZmMGUxZjVlNWM0ZjA3N2JTQj\ -xEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoMTBhZDZlZDBj\ -OWI4M2U2MVQ/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6OmgzNT\ -QyZjg5NGJlYzIzYjdjVT88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0\ -ZTo6aGIxNTMyZWJlYzc5MThjYjFWPzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pj\ -o6dXBkYXRlOjpoZTRlZDQzZmJkOWUyMWMxZVc/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5E\ -aWdlc3Q+Ojp1cGRhdGU6Omg4MmE4Nzg2NzBlMmI4ZmI3WD88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3\ -Q6OkR5bkRpZ2VzdD46OnVwZGF0ZTo6aGY1MjNkY2Y5YTAzYTQ4N2FZPzxEIGFzIGRpZ2VzdDo6ZHlu\ -X2RpZ2VzdDo6RHluRGlnZXN0Pjo6dXBkYXRlOjpoYjM1MjdkODZmMWFhYTI3M1pHPEQgYXMgZGlnZX\ -N0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aDRiZWFlMjI2Y2JlMGE5\ -NTBbRzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Om\ -gyOWNmZGI0NTdhZTIxY2QyXEE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZp\ -bmFsaXplOjpoOTY0YzE2MTg0MmQ3OGE4Y11BPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaW\ -dlc3Q+OjpmaW5hbGl6ZTo6aGE0OTAzMjZmMGI3MWUyYTleYTxyaXBlbWQxNjA6OlJpcGVtZDE2MCBh\ -cyBkaWdlc3Q6OmZpeGVkOjpGaXhlZE91dHB1dERpcnR5Pjo6ZmluYWxpemVfaW50b19kaXJ0eTo6aG\ -Y4MGUyZDY5ODU0ZDIwOThfXDxzaGEzOjpLZWNjYWszODQgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRP\ -dXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6Omg5NjU2OTY0ZTUyMzE5MGQzYFs8c2hhMz\ -o6U2hhM18zODQgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2lu\ -dG9fZGlydHk6OmhhNDQwYjI2MjM1OTc2N2E5YT88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bk\ -RpZ2VzdD46OnVwZGF0ZTo6aDdjZThiNmM4ZDQ3NjUzZDBiQjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2Vz\ -dDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoMDBkYWYzZWQwNjU0YjVlM2NCPEQgYXMgZGlnZXN0Oj\ -pkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6OmgzY2MyOTUwNTY1Yjg3NGY5ZFU8bWQ1\ -OjpNZDUgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZG\ -lydHk6Omg3ZGQ5N2EzMTg0NzgwM2IwZVU8bWQ0OjpNZDQgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRP\ -dXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6Omg3OThkODJiZWY0MDIyZmY0ZkE8RCBhcy\ -BkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoOWViMGQ5ZTI1MjJhMjIw\ -NGc/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6OmgzZTlmNzdhZD\ -Q0YTFiMzZkaD88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0ZTo6aDZl\ -MTFjNTZiOGI2Y2IzOTJpXDxzaGEzOjpLZWNjYWsyNTYgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdX\ -RwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6OmgyNzNmNjU1ZWM4Y2YwYjgyals8c2hhMzo6\ -U2hhM18yMjQgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG\ -9fZGlydHk6Omg1OWFiYTQyMmY2M2E5MGVma1w8c2hhMzo6S2VjY2FrMjI0IGFzIGRpZ2VzdDo6Zml4\ -ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoM2Q2MjBjYzE2NzBlZW\ -M0Y2xbPHNoYTM6OlNoYTNfMjU2IGFzIGRpZ2VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+Ojpm\ -aW5hbGl6ZV9pbnRvX2RpcnR5OjpoYjMwYjE1YTA4ZTUwOWJjOW1BPEQgYXMgZGlnZXN0OjpkeW5fZG\ -lnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aDUyYmEyZjg0YmE1ZWE5MTJuQTxEIGFzIGRpZ2Vz\ -dDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6OmhmNjhhMzMwN2QxMjFhMWIyb0I8RC\ -BhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aDVjY2M3M2MxZjE1\ -OTNiNzRwQjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoYW\ -ZhMmI5YWNlOWIyNTc5Y3FuZ2VuZXJpY19hcnJheTo6aW1wbHM6OjxpbXBsIGNvcmU6OmNsb25lOjpD\ -bG9uZSBmb3IgZ2VuZXJpY19hcnJheTo6R2VuZXJpY0FycmF5PFQsTj4+OjpjbG9uZTo6aDgxOTE1M2\ -U4OGZlNmE4N2ZyTmFsbG9jOjpyYXdfdmVjOjpSYXdWZWM8VCxBPjo6cmVzZXJ2ZTo6ZG9fcmVzZXJ2\ -ZV9hbmRfaGFuZGxlOjpoMzA2YjQ0NGFhZWI1YWRjNXNCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0Oj\ -pEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6Omg3ZjIwNjJhMDg2Yzg5Y2Y3dEI8RCBhcyBkaWdlc3Q6OmR5\ -bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aGFmNmQ4YzZiMGY0ZTA1MTZ1QjxEIGFzIG\ -RpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoYWFhZmZhZjY0MDJmMDJm\ -OXZCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6OmhmOTFkYW\ -U5ZWNjY2YxYzE4d0I8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9u\ -ZTo6aGVkNGE4OWNkZTEyYzU1NGR4LmFsbG9jOjpyYXdfdmVjOjpmaW5pc2hfZ3Jvdzo6aGZmNmEyMj\ -Q3ZWJiMjE3MzV5bmdlbmVyaWNfYXJyYXk6OmltcGxzOjo8aW1wbCBjb3JlOjpjbG9uZTo6Q2xvbmUg\ -Zm9yIGdlbmVyaWNfYXJyYXk6OkdlbmVyaWNBcnJheTxULE4+Pjo6Y2xvbmU6OmhlOWNhNWM2ZTA1Yj\ -U4NzYwekI8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aDRl\ -ZWQyYzIxZTNkY2ExZDR7QjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2\ -Nsb25lOjpoNzBiZjgzYzQxNjJhYzM0MXxCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdl\ -c3Q+Ojpib3hfY2xvbmU6Omg5ODUwZWM0ZTBjMmUzZTUxfUI8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3\ -Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aGFjMmM4NmM5Y2NlOGE2MzN+QjxEIGFzIGRpZ2VzdDo6\ -ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoYjA3ZWI3MTNiYjY5ZTAzMn9CPEQgYX\ -MgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6OmhiNTU3ZTFiNmEzNGFm\ -YzFmgAFCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6OmhiZm\ -ZlMTRiNmY2Y2M4YjM3gQFCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hf\ -Y2xvbmU6OmhmMzBlYmEwMmZhN2I2OTJjggEuY29yZTo6cmVzdWx0Ojp1bndyYXBfZmFpbGVkOjpoMj\ -dmNDNkOTkzYzM4NjRhMYMBUDxhcnJheXZlYzo6ZXJyb3JzOjpDYXBhY2l0eUVycm9yPFQ+IGFzIGNv\ -cmU6OmZtdDo6RGVidWc+OjpmbXQ6Omg0MzVlZTAyMGE3Mzc5NzA5hAFQPGFycmF5dmVjOjplcnJvcn\ -M6OkNhcGFjaXR5RXJyb3I8VD4gYXMgY29yZTo6Zm10OjpEZWJ1Zz46OmZtdDo6aDQ2YjVhZTU5ZGUx\ -NjEzZTOFAT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnJlc2V0OjpoYTU2Nj\ -gyYmJmMzE3NjAyOIYBPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6\ -OmhiY2U5YmU5ZTJiMTUxM2FhhwFuZ2VuZXJpY19hcnJheTo6aW1wbHM6OjxpbXBsIGNvcmU6OmNsb2\ -5lOjpDbG9uZSBmb3IgZ2VuZXJpY19hcnJheTo6R2VuZXJpY0FycmF5PFQsTj4+OjpjbG9uZTo6aDBk\ -OGRhNjYzODgwZWMyZDKIAW5nZW5lcmljX2FycmF5OjppbXBsczo6PGltcGwgY29yZTo6Y2xvbmU6Ok\ -Nsb25lIGZvciBnZW5lcmljX2FycmF5OjpHZW5lcmljQXJyYXk8VCxOPj46OmNsb25lOjpoZDQwZTlm\ -MjE2NmJkZDM0M4kBbmdlbmVyaWNfYXJyYXk6OmltcGxzOjo8aW1wbCBjb3JlOjpjbG9uZTo6Q2xvbm\ -UgZm9yIGdlbmVyaWNfYXJyYXk6OkdlbmVyaWNBcnJheTxULE4+Pjo6Y2xvbmU6OmhkNjEzMjczZThk\ -YjM4ODNhigFuZ2VuZXJpY19hcnJheTo6aW1wbHM6OjxpbXBsIGNvcmU6OmNsb25lOjpDbG9uZSBmb3\ -IgZ2VuZXJpY19hcnJheTo6R2VuZXJpY0FycmF5PFQsTj4+OjpjbG9uZTo6aGU5NGEyNGM4Zjk2ODdm\ -MjeLAW5nZW5lcmljX2FycmF5OjppbXBsczo6PGltcGwgY29yZTo6Y2xvbmU6OkNsb25lIGZvciBnZW\ -5lcmljX2FycmF5OjpHZW5lcmljQXJyYXk8VCxOPj46OmNsb25lOjpoZjg5ZWQ5MWMyYzRiNmVkMowB\ -QWNvcmU6OnNsaWNlOjppbmRleDo6c2xpY2Vfc3RhcnRfaW5kZXhfbGVuX2ZhaWw6OmhlZjNlMzM3ZD\ -ZlODU5YmI0jQE/Y29yZTo6c2xpY2U6OmluZGV4OjpzbGljZV9lbmRfaW5kZXhfbGVuX2ZhaWw6Omgx\ -OTI1MDVhMTVhYzRiMzQ1jgFOY29yZTo6c2xpY2U6OjxpbXBsIFtUXT46OmNvcHlfZnJvbV9zbGljZT\ -o6bGVuX21pc21hdGNoX2ZhaWw6OmgxM2JmNWEwZTE0MDdiMTRkjwE2Y29yZTo6cGFuaWNraW5nOjpw\ -YW5pY19ib3VuZHNfY2hlY2s6Omg4MDhiNTI0YWYxNzY0MGIxkAFEPGNvcmU6OmZtdDo6QXJndW1lbn\ -RzIGFzIGNvcmU6OmZtdDo6RGlzcGxheT46OmZtdDo6aDZmNDM0MjBmNzA3MDcxMjaRAT1jb3JlOjpz\ -bGljZTo6aW5kZXg6OnNsaWNlX2luZGV4X29yZGVyX2ZhaWw6Omg3MWUyNDdkZWMzZjI2NmZmkgE+PE\ -QgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldDo6aGJmMDJmZjcxZTYxYTM1\ -YmSTATdzdGQ6OnBhbmlja2luZzo6cnVzdF9wYW5pY193aXRoX2hvb2s6OmhlOWJmZTAzMjE5ZDcxNW\ -JhlAE6PCZtdXQgVyBhcyBjb3JlOjpmbXQ6OldyaXRlPjo6d3JpdGVfZm10OjpoYmUxMDBkNDY0NGZj\ -MDkzZpUBMWNvcmU6OnBhbmlja2luZzo6YXNzZXJ0X2ZhaWxlZDo6aGE1MTY0M2VjODA5NmM3MTCWAQ\ -tkaWdlc3RfaGFzaJcBOjwmbXV0IFcgYXMgY29yZTo6Zm10OjpXcml0ZT46OndyaXRlX3N0cjo6aDY4\ -Yjc2YjFmOThkMzZkODiYAQZtZW1jbXCZARNfX3diZ19kZW5vaGFzaF9mcmVlmgELdXBkYXRlX2hhc2\ -ibAUNjb3JlOjpmbXQ6OkZvcm1hdHRlcjo6cGFkX2ludGVncmFsOjp3cml0ZV9wcmVmaXg6OmhhYjhj\ -OWQwN2Y0OTczYTg0nAE+PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldD\ -o6aDZiYjhiZTM4ZTZhNWIwNWKdASljb3JlOjpwYW5pY2tpbmc6OnBhbmljOjpoMmZkMzg1YTg4N2M4\ -YmYxM54BPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6OmgzNzQzOD\ -gzMmNkZTI4M2QznwE+PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldDo6\ -aGMyYWM0MzNmOTIxZjQwNzKgAQZtZW1jcHmhARFydXN0X2JlZ2luX3Vud2luZKIBPjxEIGFzIGRpZ2\ -VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6Omg2ODE3ZGY2MWRjOTRkOTNkowE+PEQg\ -YXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldDo6aDE5NmJiNjU4NjFiMmU2YT\ -ekAT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnJlc2V0OjpoMjhiOTFkZTI2\ -YmI0M2UzNqUBLWNvcmU6OnBhbmlja2luZzo6cGFuaWNfZm10OjpoYmYyMWEzZDRiYmI4MmJmOKYBSX\ -N0ZDo6c3lzX2NvbW1vbjo6YmFja3RyYWNlOjpfX3J1c3RfZW5kX3Nob3J0X2JhY2t0cmFjZTo6aGYz\ -MTA0OTE2OWJlZGExNzGnAQZtZW1zZXSoARFfX3diaW5kZ2VuX21hbGxvY6kBPjxEIGFzIGRpZ2VzdD\ -o6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6Omg3ZTU5M2MwZmJlNGUzOGVhqgFDc3RkOjpw\ -YW5pY2tpbmc6OmJlZ2luX3BhbmljX2hhbmRsZXI6Ont7Y2xvc3VyZX19OjpoM2U2ZGI3YzY3NGU3OT\ -IwM6sBEl9fd2JpbmRnZW5fcmVhbGxvY6wBO2NvcmU6OnB0cjo6ZHJvcF9pbl9wbGFjZTxibGFrZTM6\ -Okhhc2hlcj46Omg3NWMzMGM4OTUxMTVjZjg4rQFFPGJsb2NrX3BhZGRpbmc6OlBhZEVycm9yIGFzIG\ -NvcmU6OmZtdDo6RGVidWc+OjpmbXQ6Omg2NjU3MWM0MDQyMDBiMTFhrgE+PGNvcmU6OmZtdDo6RXJy\ -b3IgYXMgY29yZTo6Zm10OjpEZWJ1Zz46OmZtdDo6aGRjZWJjMGEwMzg1MGNhMzCvATJjb3JlOjpvcH\ -Rpb246Ok9wdGlvbjxUPjo6dW53cmFwOjpoMTMzNzM4NmUzMWUwNjlmYrABMDwmVCBhcyBjb3JlOjpm\ -bXQ6OkRlYnVnPjo6Zm10OjpoZTk5OGQ2ZTczZTI4NTU4YrEBMjwmVCBhcyBjb3JlOjpmbXQ6OkRpc3\ -BsYXk+OjpmbXQ6OmgzNjFkOGFkZWY1YzJjYmUysgEPX193YmluZGdlbl9mcmVlswE0YWxsb2M6OnJh\ -d192ZWM6OmNhcGFjaXR5X292ZXJmbG93OjpoNTEzMTIwMDRhMzFmMGVhNrQBOWNvcmU6Om9wczo6Zn\ -VuY3Rpb246OkZuT25jZTo6Y2FsbF9vbmNlOjpoNDRhNTMzYTA4MDM4ODY0MbUBPjxEIGFzIGRpZ2Vz\ -dDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6OmgxNDY4YWM3Yzg3YTYxNzE0tgE+PEQgYX\ -MgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldDo6aDU2Nzk0YzIwOGE2ZGE0YTW3\ -AT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnJlc2V0OjpoNmY1MDI4NTRlYz\ -dkOWU3YrgBPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6OmhhNDkz\ -ZDRiZjBiZTJhZTQzuQEfX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcroBMXdhc21fYmluZG\ -dlbjo6X19ydDo6dGhyb3dfbnVsbDo6aGJmYTc2YWI1ZmJhZDk4M2G7ATJ3YXNtX2JpbmRnZW46Ol9f\ -cnQ6OmJvcnJvd19mYWlsOjpoOGYwNDA4NDhiYWFiOGFlNbwBTmNvcmU6OmZtdDo6bnVtOjppbXA6Oj\ -xpbXBsIGNvcmU6OmZtdDo6RGlzcGxheSBmb3IgdTMyPjo6Zm10OjpoODRmMDc2YzVlNWQ4MzllZb0B\ -Kndhc21fYmluZGdlbjo6dGhyb3dfc3RyOjpoY2YwMzc0YzFiNDM5N2JjYb4BKndhc21fYmluZGdlbj\ -o6dGhyb3dfdmFsOjpoNjE0OWRkYzQwMWUzOTVkMb8BMTxUIGFzIGNvcmU6OmFueTo6QW55Pjo6dHlw\ -ZV9pZDo6aGM5MDdmNDAzNGRiZDBhNjTAAUQ8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2\ -VzdD46Om91dHB1dF9zaXplOjpoMGU0NDk4ZTU0OWRiNGY2NMEBRDxEIGFzIGRpZ2VzdDo6ZHluX2Rp\ -Z2VzdDo6RHluRGlnZXN0Pjo6b3V0cHV0X3NpemU6OmgxZDEyNmNmNDM4OWRlNmRkwgFEPEQgYXMgZG\ -lnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpvdXRwdXRfc2l6ZTo6aDI0NGMzMTU4YjBlNzVk\ -YznDAUQ8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpoND\ -QxZDhjOTk5YjQ5NzcxN8QBRDxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6b3V0\ -cHV0X3NpemU6OmgxZjQ4MTYzMmRiZjNlYjdmxQFEPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW\ -5EaWdlc3Q+OjpvdXRwdXRfc2l6ZTo6aGY5ZTg3NDQwYjUyMTA3OTHGAUQ8RCBhcyBkaWdlc3Q6OmR5\ -bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpoMzRlMmRmM2VmMDY1Y2I4NccBRDxEIG\ -FzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6b3V0cHV0X3NpemU6OmgwOTlmMDUxNWVl\ -ZGQzNTI3yAFEPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpvdXRwdXRfc2l6ZT\ -o6aDNhOTlmNzMyYTk4ZDRhN2PJAUQ8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46\ -Om91dHB1dF9zaXplOjpoZGE2YTJkODdjZThhYTMyZMoBRDxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdD\ -o6RHluRGlnZXN0Pjo6b3V0cHV0X3NpemU6OmgwMGNiYTcxMTE1NTBlNGQ1ywFEPEQgYXMgZGlnZXN0\ -OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpvdXRwdXRfc2l6ZTo6aDA2MGM0OWNhMDhjMDg4YWHMAU\ -Q8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpoNTlhOWUz\ -MDIwOTNiYmNhNs0BRDxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6b3V0cHV0X3\ -NpemU6Omg1OWIyZTE1NzQzN2I5NTRlzgEKcnVzdF9wYW5pY88BN3N0ZDo6YWxsb2M6OmRlZmF1bHRf\ -YWxsb2NfZXJyb3JfaG9vazo6aGNjOGY2YzE0YTFjZjAyMGHQAW9jb3JlOjpwdHI6OmRyb3BfaW5fcG\ -xhY2U8JmNvcmU6Oml0ZXI6OmFkYXB0ZXJzOjpjb3BpZWQ6OkNvcGllZDxjb3JlOjpzbGljZTo6aXRl\ -cjo6SXRlcjx1OD4+Pjo6aDNlOWI3MWEwNzlkMTZlMDMA74CAgAAJcHJvZHVjZXJzAghsYW5ndWFnZQ\ -EEUnVzdAAMcHJvY2Vzc2VkLWJ5AwVydXN0Yx0xLjU1LjAgKGM4ZGZjZmUwNCAyMDIxLTA5LTA2KQZ3\ -YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbgYwLjIuNzQ=")); -const wasmInstance2 = new WebAssembly.Instance(wasmModule2, imports2); -const wasm2 = wasmInstance2.exports; +opAgA3AwAgAkEIaiIJIAJBiAFqQQxqKQIANwMAIAIgAikCjAE3AwAgASACEE8gAUEAQcwBEKgBIQoC\ +QEHAABAIIgENAEHAAEEBQQAoAtzpQCICQQIgAhsRBAAACyABIAIpAwA3AAAgAUE4aiADKQMANwAAIA\ +FBMGogBCkDADcAACABQShqIAUpAwA3AAAgAUEgaiAGKQMANwAAIAFBGGogBykDADcAACABQRBqIAgp\ +AwA3AAAgAUEIaiAJKQMANwAAIApBAEHMARCoARogAEHAADYCBCAAIAE2AgAgAkHQAWokAAvzAwEJfy\ +MAQdABayICJAAgAkHAAGpBDGpCADcCACACQcAAakEUakIANwIAIAJBwABqQRxqQgA3AgAgAkHAAGpB\ +JGpCADcCACACQcAAakEsakIANwIAIAJBwABqQTRqQgA3AgAgAkHAAGpBPGpCADcCACACQgA3AkQgAk\ +HAADYCQCACQYgBaiACQcAAakHEABCgARogAkE4aiIDIAJBiAFqQTxqKQIANwMAIAJBMGoiBCACQYgB\ +akE0aikCADcDACACQShqIgUgAkGIAWpBLGopAgA3AwAgAkEgaiIGIAJBiAFqQSRqKQIANwMAIAJBGG\ +oiByACQYgBakEcaikCADcDACACQRBqIgggAkGIAWpBFGopAgA3AwAgAkEIaiIJIAJBiAFqQQxqKQIA\ +NwMAIAIgAikCjAE3AwAgASACEFAgAUEAQcwBEKgBIQoCQEHAABAIIgENAEHAAEEBQQAoAtzpQCICQQ\ +IgAhsRBAAACyABIAIpAwA3AAAgAUE4aiADKQMANwAAIAFBMGogBCkDADcAACABQShqIAUpAwA3AAAg\ +AUEgaiAGKQMANwAAIAFBGGogBykDADcAACABQRBqIAgpAwA3AAAgAUEIaiAJKQMANwAAIApBAEHMAR\ +CoARogAEHAADYCBCAAIAE2AgAgAkHQAWokAAvwAwIFfwR+IwBB8ABrIgIkACACQSBqQRxqQgA3AgAg\ +AkEgakEUakIANwIAIAJBIGpBDGpCADcCACACQgA3AiQgAkEgNgIgIAJByABqQSBqIAJBIGpBIGooAg\ +A2AgAgAkHIAGpBGGogAkEgakEYaikDADcDACACQcgAakEQaiACQSBqQRBqKQMANwMAIAJByABqQQhq\ +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\ +JBIDYCmAEgAkEoakEgaiACQZgBakEgaigCADYCACACQShqQRhqIAJBmAFqQRhqKQMANwMAIAJBKGpB\ +EGogAkGYAWpBEGopAwA3AwAgAkEoakEIaiACQZgBakEIaikDADcDACACIAIpA5gBNwMoIAJBCGpBGG\ +oiAyACQShqQRxqKQIANwMAIAJBCGpBEGoiBCACQShqQRRqKQIANwMAIAJBCGpBCGoiBSACQShqQQxq\ +KQIANwMAIAIgAikCLDcDCCACQShqIAFB8AAQoAEaIAJBKGogAkEIahAvAkBBIBAIIgYNAEEgQQFBAC\ +gC3OlAIgJBAiACGxEEAAALIAYgAikDCDcAACAGQRhqIAMpAwA3AAAgBkEQaiAEKQMANwAAIAZBCGog\ +BSkDADcAACABEA8gAEEgNgIEIAAgBjYCACACQcABaiQAC5MDAgR/A34jAEHgAGsiAiQAIAJBIGpBFG\ +pCADcCACACQSBqQQxqQgA3AgAgAkIANwIkIAJBGDYCICACQcAAakEQaiACQSBqQRBqKQMANwMAIAJB\ +wABqQQhqIAJBIGpBCGopAwA3AwAgAkHAAGpBGGogAkEgakEYaigCADYCACACQQhqQQhqIgMgAkHAAG\ +pBDGopAgA3AwAgAkEIakEQaiIEIAJBwABqQRRqKQIANwMAIAIgAikDIDcDQCACIAIpAkQ3AwggASAC\ +QQhqEBsgAUIANwMAIAFBADYCICABQQApA+CiQCIGNwMIIAFBEGpBACkD6KJAIgc3AwAgAUEYakEAKQ\ +PwokAiCDcDAAJAQRgQCCIFDQBBGEEBQQAoAtzpQCICQQIgAhsRBAAACyAFIAIpAwg3AAAgBUEQaiAE\ +KQMANwAAIAVBCGogAykDADcAACABQgA3AwAgAUEANgIgIAFBCGoiASAGNwMAIAFBCGogBzcDACABQR\ +BqIAg3AwAgAEEYNgIEIAAgBTYCACACQeAAaiQAC/sCAQV/IwBBoANrIgIkACACQfgCakEcakIANwIA\ +IAJB+AJqQRRqQgA3AgAgAkH4AmpBDGpCADcCACACQgA3AvwCIAJBIDYC+AIgAkEgakEgaiACQfgCak\ +EgaigCADYCACACQSBqQRhqIAJB+AJqQRhqKQMANwMAIAJBIGpBEGogAkH4AmpBEGopAwA3AwAgAkEg\ +akEIaiACQfgCakEIaikDADcDACACIAIpA/gCNwMgIAJBGGoiAyACQSBqQRxqKQIANwMAIAJBEGoiBC\ +ACQSBqQRRqKQIANwMAIAJBCGoiBSACQSBqQQxqKQIANwMAIAIgAikCJDcDACACQSBqIAFB2AIQoAEa\ +IAJBIGogAhBpAkBBIBAIIgYNAEEgQQFBACgC3OlAIgJBAiACGxEEAAALIAYgAikDADcAACAGQRhqIA\ +MpAwA3AAAgBkEQaiAEKQMANwAAIAZBCGogBSkDADcAACABEA8gAEEgNgIEIAAgBjYCACACQaADaiQA\ +C/sCAQV/IwBBoANrIgIkACACQfgCakEcakIANwIAIAJB+AJqQRRqQgA3AgAgAkH4AmpBDGpCADcCAC\ +ACQgA3AvwCIAJBIDYC+AIgAkEgakEgaiACQfgCakEgaigCADYCACACQSBqQRhqIAJB+AJqQRhqKQMA\ +NwMAIAJBIGpBEGogAkH4AmpBEGopAwA3AwAgAkEgakEIaiACQfgCakEIaikDADcDACACIAIpA/gCNw\ +MgIAJBGGoiAyACQSBqQRxqKQIANwMAIAJBEGoiBCACQSBqQRRqKQIANwMAIAJBCGoiBSACQSBqQQxq\ +KQIANwMAIAIgAikCJDcDACACQSBqIAFB2AIQoAEaIAJBIGogAhBqAkBBIBAIIgYNAEEgQQFBACgC3O\ +lAIgJBAiACGxEEAAALIAYgAikDADcAACAGQRhqIAMpAwA3AAAgBkEQaiAEKQMANwAAIAZBCGogBSkD\ +ADcAACABEA8gAEEgNgIEIAAgBjYCACACQaADaiQAC/sCAQV/IwBBwA9rIgIkACACQZgPakEcakIANw\ +IAIAJBmA9qQRRqQgA3AgAgAkGYD2pBDGpCADcCACACQgA3ApwPIAJBIDYCmA8gAkEgakEgaiACQZgP\ +akEgaigCADYCACACQSBqQRhqIAJBmA9qQRhqKQMANwMAIAJBIGpBEGogAkGYD2pBEGopAwA3AwAgAk\ +EgakEIaiACQZgPakEIaikDADcDACACIAIpA5gPNwMgIAJBGGoiAyACQSBqQRxqKQIANwMAIAJBEGoi\ +BCACQSBqQRRqKQIANwMAIAJBCGoiBSACQSBqQQxqKQIANwMAIAIgAikCJDcDACACQSBqIAFB+A4QoA\ +EaIAIgAkEgahASAkBBIBAIIgYNAEEgQQFBACgC3OlAIgJBAiACGxEEAAALIAYgAikDADcAACAGQRhq\ +IAMpAwA3AAAgBkEQaiAEKQMANwAAIAZBCGogBSkDADcAACABEA8gAEEgNgIEIAAgBjYCACACQcAPai\ +QAC/oCAQV/IwBB8ABrIgIkACACQSBqQRxqQgA3AgAgAkEgakEUakIANwIAIAJBIGpBDGpCADcCACAC\ +QgA3AiQgAkEgNgIgIAJByABqQSBqIAJBIGpBIGooAgA2AgAgAkHIAGpBGGogAkEgakEYaikDADcDAC\ +ACQcgAakEQaiACQSBqQRBqKQMANwMAIAJByABqQQhqIAJBIGpBCGopAwA3AwAgAiACKQMgNwNIIAJB\ +GGoiAyACQcgAakEcaikCADcDACACQRBqIgQgAkHIAGpBFGopAgA3AwAgAkEIaiIFIAJByABqQQxqKQ\ +IANwMAIAIgAikCTDcDACABIAIQaSABQQBBzAEQqAEhBgJAQSAQCCIBDQBBIEEBQQAoAtzpQCICQQIg\ +AhsRBAAACyABIAIpAwA3AAAgAUEYaiADKQMANwAAIAFBEGogBCkDADcAACABQQhqIAUpAwA3AAAgBk\ +EAQcwBEKgBGiAAQSA2AgQgACABNgIAIAJB8ABqJAAL+gIBBX8jAEHwAGsiAiQAIAJBIGpBHGpCADcC\ +ACACQSBqQRRqQgA3AgAgAkEgakEMakIANwIAIAJCADcCJCACQSA2AiAgAkHIAGpBIGogAkEgakEgai\ +gCADYCACACQcgAakEYaiACQSBqQRhqKQMANwMAIAJByABqQRBqIAJBIGpBEGopAwA3AwAgAkHIAGpB\ +CGogAkEgakEIaikDADcDACACIAIpAyA3A0ggAkEYaiIDIAJByABqQRxqKQIANwMAIAJBEGoiBCACQc\ +gAakEUaikCADcDACACQQhqIgUgAkHIAGpBDGopAgA3AwAgAiACKQJMNwMAIAEgAhBqIAFBAEHMARCo\ +ASEGAkBBIBAIIgENAEEgQQFBACgC3OlAIgJBAiACGxEEAAALIAEgAikDADcAACABQRhqIAMpAwA3AA\ +AgAUEQaiAEKQMANwAAIAFBCGogBSkDADcAACAGQQBBzAEQqAEaIABBIDYCBCAAIAE2AgAgAkHwAGok\ +AAuMAwEHfyMAQbABayICJAAgAkHYAGpBBHIgAUEEahB5IAIgASgCADYCWCACQZgBaiIDIAFBPGopAA\ +A3AwAgAkGQAWoiBCABQTRqKQAANwMAIAJBiAFqIgUgAUEsaikAADcDACACQfAAakEQaiIGIAFBJGop\ +AAA3AwAgAkHwAGpBCGoiByABQRxqKQAANwMAIAIgASkAFDcDcCACQaABaiIIIAFBxABqEHkgAkEQai\ +ACQdgAakEQaigCADYCACACQQhqIAJB2ABqQQhqKQMANwMAIAJBHGogBykDADcCACACQSRqIAYpAwA3\ +AgAgAkEsaiAFKQMANwIAIAJBNGogBCkDADcCACACQTxqIAMpAwA3AgAgAkHEAGogCCkDADcCACACQc\ +wAaiACQagBaikDADcCACACIAIpA1g3AwAgAiACKQNwNwIUAkBB1AAQCCIBDQBB1ABBBEEAKALc6UAi\ +AkECIAIbEQQAAAsgASACQdQAEKABIQEgAEHIlsAANgIEIAAgATYCACACQbABaiQAC/ICAQN/AkACQA\ +JAAkACQCAALQBoIgNFDQAgA0HBAE8NAyAAIANqQShqIAEgAkHAACADayIDIAMgAksbIgMQoAEaIAAg\ +AC0AaCADaiIEOgBoIAEgA2ohAQJAIAIgA2siAg0AQQAhAgwCCyAAQQhqIABBKGoiBEHAACAAKQMAIA\ +AtAGogAEHpAGoiAy0AAEVyEAogBEEAQcEAEKgBGiADIAMtAABBAWo6AAALQQAhAyACQcEASQ0BIABB\ +CGohBSAAQekAaiIDLQAAIQQDQCAFIAFBwAAgACkDACAALQBqIARB/wFxRXIQCiADIAMtAABBAWoiBD\ +oAACABQcAAaiEBIAJBQGoiAkHAAEsNAAsgAC0AaCEECyAEQf8BcSIDQcEATw0CIAJBwAAgA2siBCAE\ +IAJLGyECCyAAIANqQShqIAEgAhCgARogACAALQBoIAJqOgBoIAAPCyADQcAAQbyIwAAQjAEACyADQc\ +AAQbyIwAAQjAEAC+kCAQN/IwBBEGsiAiQAIAAoAgAhAAJAAkACQAJAAkAgAUGAAUkNACACQQA2Agwg\ +AUGAEEkNASABQYCABE8NAiACIAFBP3FBgAFyOgAOIAIgAUEMdkHgAXI6AAwgAiABQQZ2QT9xQYABcj\ +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\ +ACgCMGtBCE8NACACIAQQBCAAKAIwIgNBwQBPDQMgBEEAIAMQqAEaCyAAQewAaiAGQgOGNwIAIAIgBB\ +AEIABBADYCMCABIAAoAgg2AAAgASAAQQxqKQIANwAEIAEgAEEUaikCADcADCABIABBHGopAgA3ABQg\ +ASAAQSRqKQIANwAcIAEgAEEsaigCADYAJA8LIANBwABBhJ/AABCMAQALIANBwABBlJ/AABCPAQALIA\ +NBwABBpJ/AABCNAQALugIBA38jAEEQayICJAACQCAAKALIASIDQccASw0AIAAgA2pBzAFqQQY6AAAC\ +QCADQQFqIgRByABGDQAgACAEakHMAWpBAEHHACADaxCoARoLQQAhAyAAQQA2AsgBIABBkwJqIgQgBC\ +0AAEGAAXI6AAADQCAAIANqIgQgBC0AACAEQcwBai0AAHM6AAAgA0EBaiIDQcgARw0ACyAAEBMgASAA\ +KQAANwAAIAFBOGogAEE4aikAADcAACABQTBqIABBMGopAAA3AAAgAUEoaiAAQShqKQAANwAAIAFBIG\ +ogAEEgaikAADcAACABQRhqIABBGGopAAA3AAAgAUEQaiAAQRBqKQAANwAAIAFBCGogAEEIaikAADcA\ +ACACQRBqJAAPC0G0n8AAQRcgAkEIakHMn8AAQZShwAAQggEAC7oCAQN/IwBBEGsiAiQAAkAgACgCyA\ +EiA0HHAEsNACAAIANqQcwBakEBOgAAAkAgA0EBaiIEQcgARg0AIAAgBGpBzAFqQQBBxwAgA2sQqAEa\ +C0EAIQMgAEEANgLIASAAQZMCaiIEIAQtAABBgAFyOgAAA0AgACADaiIEIAQtAAAgBEHMAWotAABzOg\ +AAIANBAWoiA0HIAEcNAAsgABATIAEgACkAADcAACABQThqIABBOGopAAA3AAAgAUEwaiAAQTBqKQAA\ +NwAAIAFBKGogAEEoaikAADcAACABQSBqIABBIGopAAA3AAAgAUEYaiAAQRhqKQAANwAAIAFBEGogAE\ +EQaikAADcAACABQQhqIABBCGopAAA3AAAgAkEQaiQADwtBtJ/AAEEXIAJBCGpBzJ/AAEHUoMAAEIIB\ +AAu0AgEEfyMAQaABayICJAAgAkGAAWpBFGpCADcCACACQYABakEMakIANwIAIAJCADcChAEgAkEYNg\ +KAASACQRhqQRBqIAJBgAFqQRBqKQMANwMAIAJBGGpBCGogAkGAAWpBCGopAwA3AwAgAkEYakEYaiAC\ +QYABakEYaigCADYCACACQQhqIgMgAkEYakEMaikCADcDACACQRBqIgQgAkEYakEUaikCADcDACACIA\ +IpA4ABNwMYIAIgAikCHDcDACACQRhqIAFB6AAQoAEaIAJBGGogAhAbAkBBGBAIIgUNAEEYQQFBACgC\ +3OlAIgJBAiACGxEEAAALIAUgAikDADcAACAFQRBqIAQpAwA3AAAgBUEIaiADKQMANwAAIAEQDyAAQR\ +g2AgQgACAFNgIAIAJBoAFqJAALtgIBCH8jAEHwAGsiAUEoaiICQgA3AwAgAUEgaiIDQgA3AwAgAUEY\ +aiIEQgA3AwAgAUEQaiIFQgA3AwAgAUEIaiIGQgA3AwAgAUIANwMAIAFBwABqQQxqQgA3AgAgAUIANw\ +JEIAFBEDYCQCABQdgAakEQaiABQcAAakEQaigCADYCACABQdgAakEIaiABQcAAakEIaikDADcDACAB\ +IAEpA0A3A1ggAUE4aiIHIAFB2ABqQQxqKQIANwMAIAFBMGoiCCABKQJcNwMAIABBzABqIAcpAwA3AA\ +AgAEHEAGogCCkDADcAACAAQTxqIAIpAwA3AAAgAEE0aiADKQMANwAAIABBLGogBCkDADcAACAAQSRq\ +IAUpAwA3AAAgAEEcaiAGKQMANwAAIAAgASkDADcAFCAAQQA2AgALtwICBX8BfiMAQcABayICJAAgAk\ +HQAGpBCGoiAyABQRBqKQMANwMAIAJB0ABqQRBqIgQgAUEYaikDADcDACACQdAAakEYaiIFIAFBIGop\ +AwA3AwAgAkHQAGpBIGoiBiABQShqKQMANwMAIAIgASkDCDcDUCABKQMAIQcgAkH4AGpBBHIgAUE0ah\ +BxIAIgASgCMDYCeCACQQhqIAJB+ABqQcQAEKABGgJAQfgAEAgiAQ0AQfgAQQhBACgC3OlAIgJBAiAC\ +GxEEAAALIAEgBzcDACABIAIpA1A3AwggAUEQaiADKQMANwMAIAFBGGogBCkDADcDACABQSBqIAUpAw\ +A3AwAgAUEoaiAGKQMANwMAIAFBMGogAkEIakHEABCgARogAEGklsAANgIEIAAgATYCACACQcABaiQA\ +C6MCAgR/An4gACAAKQMAIgcgAq1CA4Z8Igg3AwAgAEEIaiIDIAMpAwAgCCAHVK18NwMAAkACQEGAAS\ +AAKAJQIgNrIgQgAksNACAAQRBqIQUCQCADRQ0AIANBgQFPDQIgAEHUAGoiBiADaiABIAQQoAEaIABB\ +ADYCUCAFIAZBARACIAIgBGshAiABIARqIQELIAUgASACQQd2EAIgAEHUAGogASACQYB/cWogAkH/AH\ +EiAhCgARogACACNgJQDwsCQAJAIAMgAmoiBCADSQ0AIARBgAFLDQEgAEHQAGogA2pBBGogASACEKAB\ +GiAAIAAoAlAgAmo2AlAPCyADIARB5J7AABCRAQALIARBgAFB5J7AABCNAQALIANBgAFB9J7AABCMAQ\ +ALnQIBBH8gACAAKQMAIAKtfDcDAAJAAkBBwAAgACgCICIDayIEIAJLDQAgAEEIaiEFAkAgA0UNACAD\ +QcEATw0CIABBJGoiBiADaiABIAQQoAEaIAUgBhAJIAIgBGshAiABIARqIQELIAJBP3EhAyABIAJBQH\ +EiAmohBAJAIAJFDQBBACACayECA0AgBSABEAkgAUHAAGohASACQcAAaiICDQALCyAAQSRqIAQgAxCg\ +ARogACADNgIgDwsCQAJAIAMgAmoiBSADSQ0AIAVBwABLDQEgAEEgaiADakEEaiABIAIQoAEaIAAgAC\ +gCICACajYCIA8LIAMgBUH4osAAEJEBAAsgBUHAAEH4osAAEI0BAAsgA0HAAEGIo8AAEIwBAAueAgEE\ +fyAAIAApAwAgAq18NwMAAkACQEHAACAAKAIIIgNrIgQgAksNACAAQcwAaiEFAkAgA0UNACADQcEATw\ +0CIABBDGoiBiADaiABIAQQoAEaIAUgBhAMIAIgBGshAiABIARqIQELIAJBP3EhAyABIAJBQHEiAmoh\ +BAJAIAJFDQBBACACayECA0AgBSABEAwgAUHAAGohASACQcAAaiICDQALCyAAQQxqIAQgAxCgARogAC\ +ADNgIIDwsCQAJAIAMgAmoiBSADSQ0AIAVBwABLDQEgAEEIaiADakEEaiABIAIQoAEaIAAgACgCCCAC\ +ajYCCA8LIAMgBUH4osAAEJEBAAsgBUHAAEH4osAAEI0BAAsgA0HAAEGIo8AAEIwBAAueAgEEfyAAIA\ +ApAwAgAq18NwMAAkACQEHAACAAKAIIIgNrIgQgAksNACAAQcwAaiEFAkAgA0UNACADQcEATw0CIABB\ +DGoiBiADaiABIAQQoAEaIAUgBhAQIAIgBGshAiABIARqIQELIAJBP3EhAyABIAJBQHEiAmohBAJAIA\ +JFDQBBACACayECA0AgBSABEBAgAUHAAGohASACQcAAaiICDQALCyAAQQxqIAQgAxCgARogACADNgII\ +DwsCQAJAIAMgAmoiBSADSQ0AIAVBwABLDQEgAEEIaiADakEEaiABIAIQoAEaIAAgACgCCCACajYCCA\ +8LIAMgBUH4osAAEJEBAAsgBUHAAEH4osAAEI0BAAsgA0HAAEGIo8AAEIwBAAudAgEEfyAAIAApAwAg\ +Aq18NwMAAkACQEHAACAAKAIcIgNrIgQgAksNACAAQQhqIQUCQCADRQ0AIANBwQBPDQIgAEEgaiIGIA\ +NqIAEgBBCgARogBSAGEAUgAiAEayECIAEgBGohAQsgAkE/cSEDIAEgAkFAcSICaiEEAkAgAkUNAEEA\ +IAJrIQIDQCAFIAEQBSABQcAAaiEBIAJBwABqIgINAAsLIABBIGogBCADEKABGiAAIAM2AhwPCwJAAk\ +AgAyACaiIFIANJDQAgBUHAAEsNASAAQRxqIANqQQRqIAEgAhCgARogACAAKAIcIAJqNgIcDwsgAyAF\ +QfiiwAAQkQEACyAFQcAAQfiiwAAQjQEACyADQcAAQYijwAAQjAEAC50CAQR/IAAgACkDACACrXw3Aw\ +ACQAJAQcAAIAAoAjAiA2siBCACSw0AIABBCGohBQJAIANFDQAgA0HBAE8NAiAAQTRqIgYgA2ogASAE\ +EKABGiAFIAYQBCACIARrIQIgASAEaiEBCyACQT9xIQMgASACQUBxIgJqIQQCQCACRQ0AQQAgAmshAg\ +NAIAUgARAEIAFBwABqIQEgAkHAAGoiAg0ACwsgAEE0aiAEIAMQoAEaIAAgAzYCMA8LAkACQCADIAJq\ +IgUgA0kNACAFQcAASw0BIABBMGogA2pBBGogASACEKABGiAAIAAoAjAgAmo2AjAPCyADIAVB+KLAAB\ +CRAQALIAVBwABB+KLAABCNAQALIANBwABBiKPAABCMAQALpwICA38CfiMAQcAAayICJAAgAkEQakEM\ +akIANwIAIAJCADcCFCACQRA2AhAgAkEoakEQaiACQRBqQRBqKAIANgIAIAJBKGpBCGogAkEQakEIai\ +kDADcDACACQQhqIgMgAkEoakEMaikCADcDACACIAIpAxA3AyggAiACKQIsNwMAIAEgAhBkIAFBADYC\ +CCABQgA3AwAgAUHUAGpBACkCsJxAIgU3AgAgAUEAKQKonEAiBjcCTAJAQRAQCCIEDQBBEEEBQQAoAt\ +zpQCICQQIgAhsRBAAACyAEIAIpAwA3AAAgBEEIaiADKQMANwAAIAFBADYCCCABQgA3AwAgAUHMAGoi\ +AUEIaiAFNwIAIAEgBjcCACAAQRA2AgQgACAENgIAIAJBwABqJAALpwICA38CfiMAQcAAayICJAAgAk\ +EQakEMakIANwIAIAJCADcCFCACQRA2AhAgAkEoakEQaiACQRBqQRBqKAIANgIAIAJBKGpBCGogAkEQ\ +akEIaikDADcDACACQQhqIgMgAkEoakEMaikCADcDACACIAIpAxA3AyggAiACKQIsNwMAIAEgAhBlIA\ +FBADYCCCABQgA3AwAgAUHUAGpBACkCsJxAIgU3AgAgAUEAKQKonEAiBjcCTAJAQRAQCCIEDQBBEEEB\ +QQAoAtzpQCICQQIgAhsRBAAACyAEIAIpAwA3AAAgBEEIaiADKQMANwAAIAFBADYCCCABQgA3AwAgAU\ +HMAGoiAUEIaiAFNwIAIAEgBjcCACAAQRA2AgQgACAENgIAIAJBwABqJAALmgIBBH8jAEGQAWsiAiQA\ +IAJB+ABqQRRqQQA2AgAgAkH4AGpBDGpCADcCACACQgA3AnwgAkEUNgJ4IAJBGGpBEGogAkH4AGpBEG\ +opAwA3AwAgAkEYakEIaiACQfgAakEIaikDADcDACACQQhqIgMgAkEYakEMaikCADcDACACQRBqIgQg\ +AkEYakEUaigCADYCACACIAIpA3g3AxggAiACKQIcNwMAIAJBGGogAUHgABCgARogAkEYaiACECECQE\ +EUEAgiBQ0AQRRBAUEAKALc6UAiAkECIAIbEQQAAAsgBSACKQMANwAAIAVBEGogBCgCADYAACAFQQhq\ +IAMpAwA3AAAgARAPIABBFDYCBCAAIAU2AgAgAkGQAWokAAuaAgEEfyMAQZABayICJAAgAkH4AGpBFG\ +pBADYCACACQfgAakEMakIANwIAIAJCADcCfCACQRQ2AnggAkEYakEQaiACQfgAakEQaikDADcDACAC\ +QRhqQQhqIAJB+ABqQQhqKQMANwMAIAJBCGoiAyACQRhqQQxqKQIANwMAIAJBEGoiBCACQRhqQRRqKA\ +IANgIAIAIgAikDeDcDGCACIAIpAhw3AwAgAkEYaiABQeAAEKABGiACQRhqIAIQXgJAQRQQCCIFDQBB\ +FEEBQQAoAtzpQCICQQIgAhsRBAAACyAFIAIpAwA3AAAgBUEQaiAEKAIANgAAIAVBCGogAykDADcAAC\ +ABEA8gAEEUNgIEIAAgBTYCACACQZABaiQAC6QCAgR/AX4gAEEIaiECIAApAwAhBgJAAkACQAJAIAAo\ +AhwiA0HAAEcNACACIABBIGoQBUEAIQMgAEEANgIcDAELIANBP0sNAQsgAEEgaiIEIANqQYABOgAAIA\ +AgACgCHCIFQQFqIgM2AhwCQCADQcEATw0AIABBHGogA2pBBGpBAEE/IAVrEKgBGgJAQcAAIAAoAhxr\ +QQhPDQAgAiAEEAUgACgCHCIDQcEATw0DIARBACADEKgBGgsgAEHYAGogBkIDhjcDACACIAQQBSAAQQ\ +A2AhwgASAAKAIINgAAIAEgAEEMaikCADcABCABIABBFGopAgA3AAwPCyADQcAAQYSfwAAQjAEACyAD\ +QcAAQZSfwAAQjwEACyADQcAAQaSfwAAQjQEAC5oCAQN/IwBBEGsiAiQAAkAgACgCyAEiA0HnAEsNAC\ +AAIANqQcwBakEBOgAAAkAgA0EBaiIEQegARg0AIAAgBGpBzAFqQQBB5wAgA2sQqAEaC0EAIQMgAEEA\ +NgLIASAAQbMCaiIEIAQtAABBgAFyOgAAA0AgACADaiIEIAQtAAAgBEHMAWotAABzOgAAIANBAWoiA0\ +HoAEcNAAsgABATIAEgACkAADcAACABQShqIABBKGopAAA3AAAgAUEgaiAAQSBqKQAANwAAIAFBGGog\ +AEEYaikAADcAACABQRBqIABBEGopAAA3AAAgAUEIaiAAQQhqKQAANwAAIAJBEGokAA8LQbSfwABBFy\ +ACQQhqQcyfwABBxKDAABCCAQALmgIBA38jAEEQayICJAACQCAAKALIASIDQecASw0AIAAgA2pBzAFq\ +QQY6AAACQCADQQFqIgRB6ABGDQAgACAEakHMAWpBAEHnACADaxCoARoLQQAhAyAAQQA2AsgBIABBsw\ +JqIgQgBC0AAEGAAXI6AAADQCAAIANqIgQgBC0AACAEQcwBai0AAHM6AAAgA0EBaiIDQegARw0ACyAA\ +EBMgASAAKQAANwAAIAFBKGogAEEoaikAADcAACABQSBqIABBIGopAAA3AAAgAUEYaiAAQRhqKQAANw\ +AAIAFBEGogAEEQaikAADcAACABQQhqIABBCGopAAA3AAAgAkEQaiQADwtBtJ/AAEEXIAJBCGpBzJ/A\ +AEGEocAAEIIBAAuFAgEEfwJAAkBBECAAKAIAIgNrIgQgAksNACAAQRRqIQUCQCADRQ0AIANBEU8NAi\ +AAQQRqIgYgA2ogASAEEKABGiAFIAYQDSACIARrIQIgASAEaiEBCyACQQ9xIQMgASACQXBxIgJqIQQC\ +QCACRQ0AQQAgAmshAgNAIAUgARANIAFBEGohASACQRBqIgINAAsLIABBBGogBCADEKABGiAAIAM2Ag\ +APCwJAAkAgAyACaiIFIANJDQAgBUEQSw0BIAAgA2pBBGogASACEKABGiAAIAAoAgAgAmo2AgAPCyAD\ +IAVB+KLAABCRAQALIAVBEEH4osAAEI0BAAsgA0EQQYijwAAQjAEAC6UCAgJ/An4jAEGQAmsiAiQAIA\ +FBCGopAwAhBCABKQMAIQUgAkGIAWpBBHIgAUHUAGoQiAEgAiABKAJQNgKIASACIAJBiAFqQYQBEKAB\ +IQMCQEHYARAIIgINAEHYAUEIQQAoAtzpQCIBQQIgARsRBAAACyACIAU3AwAgAiAENwMIIAIgASkDED\ +cDECACQRhqIAFBGGopAwA3AwAgAkEgaiABQSBqKQMANwMAIAJBKGogAUEoaikDADcDACACQTBqIAFB\ +MGopAwA3AwAgAkE4aiABQThqKQMANwMAIAJBwABqIAFBwABqKQMANwMAIAJByABqIAFByABqKQMANw\ +MAIAJB0ABqIANBhAEQoAEaIABBtJfAADYCBCAAIAI2AgAgA0GQAmokAAulAgICfwJ+IwBBkAJrIgIk\ +ACABQQhqKQMAIQQgASkDACEFIAJBiAFqQQRyIAFB1ABqEIgBIAIgASgCUDYCiAEgAiACQYgBakGEAR\ +CgASEDAkBB2AEQCCICDQBB2AFBCEEAKALc6UAiAUECIAEbEQQAAAsgAiAFNwMAIAIgBDcDCCACIAEp\ +AxA3AxAgAkEYaiABQRhqKQMANwMAIAJBIGogAUEgaikDADcDACACQShqIAFBKGopAwA3AwAgAkEwai\ +ABQTBqKQMANwMAIAJBOGogAUE4aikDADcDACACQcAAaiABQcAAaikDADcDACACQcgAaiABQcgAaikD\ +ADcDACACQdAAaiADQYQBEKABGiAAQdiXwAA2AgQgACACNgIAIANBkAJqJAALmQICBH8BfiAAQcwAai\ +ECIAApAwAhBgJAAkACQAJAIAAoAggiA0HAAEcNACACIABBDGoQDEEAIQMgAEEANgIIDAELIANBP0sN\ +AQsgAEEMaiIEIANqQYABOgAAIAAgACgCCCIFQQFqIgM2AggCQCADQcEATw0AIABBCGogA2pBBGpBAE\ +E/IAVrEKgBGgJAQcAAIAAoAghrQQhPDQAgAiAEEAwgACgCCCIDQcEATw0DIARBACADEKgBGgsgAEHE\ +AGogBkIDhjcCACACIAQQDCAAQQA2AgggASAAKQJMNwAAIAEgAEHUAGopAgA3AAgPCyADQcAAQYSfwA\ +AQjAEACyADQcAAQZSfwAAQjwEACyADQcAAQaSfwAAQjQEAC5kCAgR/AX4gAEHMAGohAiAAKQMAIQYC\ +QAJAAkACQCAAKAIIIgNBwABHDQAgAiAAQQxqEBBBACEDIABBADYCCAwBCyADQT9LDQELIABBDGoiBC\ +ADakGAAToAACAAIAAoAggiBUEBaiIDNgIIAkAgA0HBAE8NACAAQQhqIANqQQRqQQBBPyAFaxCoARoC\ +QEHAACAAKAIIa0EITw0AIAIgBBAQIAAoAggiA0HBAE8NAyAEQQAgAxCoARoLIABBxABqIAZCA4Y3Ag\ +AgAiAEEBAgAEEANgIIIAEgACkCTDcAACABIABB1ABqKQIANwAIDwsgA0HAAEGEn8AAEIwBAAsgA0HA\ +AEGUn8AAEI8BAAsgA0HAAEGkn8AAEI0BAAuSAgEDfyMAQYABayICJAAgAkEYaiABQdQAEKABGgJAAk\ +AgAigCGCIDQRBPDQAgAkEYakEEciIEIANqQRAgA2siAyADEKgBGiACQQA2AhggAkEsaiIDIAQQDSAC\ +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\ +gCADYCACABQRxqIAJBCGpBxAAQoAEaIABBgJbAADYCBCAAIAE2AgAgAkGwAWokAAvgAQEDfyMAQZAB\ +ayICJABBACEDIAJBADYCACACQQRyIQQDQCAEIANqIAEgA2otAAA6AAAgA0EBaiIDQcAARw0ACyACQc\ +AANgIAIAJByABqIAJBxAAQoAEaIABBOGogAkGEAWopAgA3AAAgAEEwaiACQfwAaikCADcAACAAQShq\ +IAJB9ABqKQIANwAAIABBIGogAkHsAGopAgA3AAAgAEEYaiACQeQAaikCADcAACAAQRBqIAJB3ABqKQ\ +IANwAAIABBCGogAkHUAGopAgA3AAAgACACKQJMNwAAIAJBkAFqJAALxQEBAn8jAEEgayIDJAACQCAB\ +IAJqIgIgAUkNACAAQQRqKAIAIgFBAXQiBCACIAQgAksbIgJBCCACQQhLGyECAkACQCABRQ0AIANBEG\ +pBCGpBATYCACADIAE2AhQgAyAAKAIANgIQDAELIANBADYCEAsgAyACIANBEGoQeAJAIAMoAgBBAUcN\ +ACADQQhqKAIAIgBFDQEgAygCBCAAQQAoAtzpQCIDQQIgAxsRBAAACyAAIAMpAgQ3AgAgA0EgaiQADw\ +sQswEAC9IBAgJ/AX4jAEGQAWsiAiQAIAEpAwAhBCACQcgAakEEciABQQxqEHEgAiABKAIINgJIIAIg\ +AkHIAGpBxAAQoAEhAwJAQfAAEAgiAg0AQfAAQQhBACgC3OlAIgFBAiABGxEEAAALIAIgBDcDACACQQ\ +hqIANBxAAQoAEaIAJB5ABqIAFB5ABqKQIANwIAIAJB3ABqIAFB3ABqKQIANwIAIAJB1ABqIAFB1ABq\ +KQIANwIAIAIgASkCTDcCTCAAQeyWwAA2AgQgACACNgIAIANBkAFqJAAL0gECAn8BfiMAQZABayICJA\ +AgASkDACEEIAJByABqQQRyIAFBDGoQcSACIAEoAgg2AkggAiACQcgAakHEABCgASEDAkBB8AAQCCIC\ +DQBB8ABBCEEAKALc6UAiAUECIAEbEQQAAAsgAiAENwMAIAJBCGogA0HEABCgARogAkHkAGogAUHkAG\ +opAgA3AgAgAkHcAGogAUHcAGopAgA3AgAgAkHUAGogAUHUAGopAgA3AgAgAiABKQJMNwJMIABBkJfA\ +ADYCBCAAIAI2AgAgA0GQAWokAAu8AQICfwF+IwBBkAFrIgIkACABKQMAIQQgAkHIAGpBBHIgAUEkah\ +BxIAIgASgCIDYCSCACIAJByABqQcQAEKABIQMCQEHoABAIIgINAEHoAEEIQQAoAtzpQCIBQQIgARsR\ +BAAACyACIAQ3AwAgAiABKQMINwMIIAJBEGogAUEQaikDADcDACACQRhqIAFBGGopAwA3AwAgAkEgai\ +ADQcQAEKABGiAAQcyUwAA2AgQgACACNgIAIANBkAFqJAALrgECAn8BfiMAQZABayICJAAgASkDACEE\ +IAJByABqQQRyIAFBDGoQcSACIAEoAgg2AkggAiACQcgAakHEABCgASEDAkBB4AAQCCICDQBB4ABBCE\ +EAKALc6UAiAUECIAEbEQQAAAsgAiAENwMAIAJBCGogA0HEABCgARogAkHUAGogAUHUAGopAgA3AgAg\ +AiABKQJMNwJMIABB8JTAADYCBCAAIAI2AgAgA0GQAWokAAuuAQICfwF+IwBBkAFrIgIkACABKQMAIQ\ +QgAkHIAGpBBHIgAUEMahBxIAIgASgCCDYCSCACIAJByABqQcQAEKABIQMCQEHgABAIIgINAEHgAEEI\ +QQAoAtzpQCIBQQIgARsRBAAACyACIAQ3AwAgAkEIaiADQcQAEKABGiACQdQAaiABQdQAaikCADcCAC\ +ACIAEpAkw3AkwgAEG4lcAANgIEIAAgAjYCACADQZABaiQAC5gBAQF/QQAhAwJAAkAgAUEASA0AAkAC\ +QAJAAkACQCACKAIAIgNFDQACQCACKAIEDQAgAQ0CDAQLIAMgARAVIQIMAgsgAUUNAgsgARAIIQILAk\ +AgAkUNACABIQMMAgsgACABNgIEQQEhAwwCC0EBIQJBACEDCyAAIAI2AgRBACEBDAELQQEhAQsgACAB\ +NgIAIABBCGogAzYCAAuVAQEBfyMAQTBrIgJBCWogASkABTcAACACQRFqIAEvAA07AAAgAkETaiABLQ\ +APOgAAIAIgAS0AADoABCACIAEoAAE2AAUgAkEQNgIAIAJBGGpBCGogAkEIaikDADcDACACQRhqQRBq\ +IAJBEGooAgA2AgAgAiACKQMANwMYIAAgAikCHDcAACAAQQhqIAJBJGopAgA3AAALmwEBAX8jAEHwA2\ +siAiQAIAJBCGogAUHIARCgARogAkHgAmpBBHIgAUHMAWoQhwEgAiABKALIATYC4AIgAkEIakHIAWog\ +AkHgAmpBjAEQoAEaAkBB2AIQCCIBDQBB2AJBCEEAKALc6UAiAkECIAIbEQQAAAsgASACQQhqQdgCEK\ +ABIQEgAEGsksAANgIEIAAgATYCACACQfADaiQAC5sBAQF/IwBBgARrIgIkACACQQhqIAFByAEQoAEa\ +IAJB6AJqQQRyIAFBzAFqEIsBIAIgASgCyAE2AugCIAJBCGpByAFqIAJB6AJqQZQBEKABGgJAQeACEA\ +giAQ0AQeACQQhBACgC3OlAIgJBAiACGxEEAAALIAEgAkEIakHgAhCgASEBIABB0JLAADYCBCAAIAE2\ +AgAgAkGABGokAAubAQEBfyMAQfACayICJAAgAkEIaiABQcgBEKABGiACQaACakEEciABQcwBahCKAS\ +ACIAEoAsgBNgKgAiACQQhqQcgBaiACQaACakHMABCgARoCQEGYAhAIIgENAEGYAkEIQQAoAtzpQCIC\ +QQIgAhsRBAAACyABIAJBCGpBmAIQoAEhASAAQfSSwAA2AgQgACABNgIAIAJB8AJqJAALmwEBAX8jAE\ +GwA2siAiQAIAJBCGogAUHIARCgARogAkHAAmpBBHIgAUHMAWoQiQEgAiABKALIATYCwAIgAkEIakHI\ +AWogAkHAAmpB7AAQoAEaAkBBuAIQCCIBDQBBuAJBCEEAKALc6UAiAkECIAIbEQQAAAsgASACQQhqQb\ +gCEKABIQEgAEGYk8AANgIEIAAgATYCACACQbADaiQAC5sBAQF/IwBBgARrIgIkACACQQhqIAFByAEQ\ +oAEaIAJB6AJqQQRyIAFBzAFqEIsBIAIgASgCyAE2AugCIAJBCGpByAFqIAJB6AJqQZQBEKABGgJAQe\ +ACEAgiAQ0AQeACQQhBACgC3OlAIgJBAiACGxEEAAALIAEgAkEIakHgAhCgASEBIABBvJPAADYCBCAA\ +IAE2AgAgAkGABGokAAubAQEBfyMAQfACayICJAAgAkEIaiABQcgBEKABGiACQaACakEEciABQcwBah\ +CKASACIAEoAsgBNgKgAiACQQhqQcgBaiACQaACakHMABCgARoCQEGYAhAIIgENAEGYAkEIQQAoAtzp\ +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\ +IANBLGpBBTYCACADQgI3AgwgA0G0j8AANgIIIANBBTYCJCADIANBIGo2AhggAyADQQRqNgIoIAMgAz\ +YCICADQQhqIAIQpgEAC20BAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRxqQQI2AgAgA0EsakEF\ +NgIAIANCAzcCDCADQcyRwAA2AgggA0EFNgIkIAMgA0EgajYCGCADIAM2AiggAyADQQRqNgIgIANBCG\ +ogAhCmAQALbQEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBHGpBAjYCACADQSxqQQU2AgAgA0IC\ +NwIMIANB1IzAADYCCCADQQU2AiQgAyADQSBqNgIYIAMgAzYCKCADIANBBGo2AiAgA0EIaiACEKYBAA\ +tkAQJ/IwBBIGsiAiQAIAFBHGooAgAhAyABKAIYIQEgAkEIakEQaiAAQRBqKQIANwMAIAJBCGpBCGog\ +AEEIaikCADcDACACIAApAgA3AwggASADIAJBCGoQHCEAIAJBIGokACAAC20BAX8jAEEwayIDJAAgAy\ +ABNgIEIAMgADYCACADQRxqQQI2AgAgA0EsakEFNgIAIANCAjcCDCADQYSRwAA2AgggA0EFNgIkIAMg\ +A0EgajYCGCADIANBBGo2AiggAyADNgIgIANBCGogAhCmAQALbAAgAEIANwMAIAAgACkDcDcDCCAAQS\ +BqIABBiAFqKQMANwMAIABBGGogAEGAAWopAwA3AwAgAEEQaiAAQfgAaikDADcDACAAQShqQQBBwgAQ\ +qAEaAkAgAEHwDmoiAC0AAEUNACAAQQA6AAALC3YBAn9BASEAQQBBACgCiOZAIgFBAWo2AojmQAJAAk\ +BBACgC0OlAQQFHDQBBACgC1OlAQQFqIQAMAQtBAEEBNgLQ6UALQQAgADYC1OlAAkAgAUEASA0AIABB\ +AksNAEEAKALY6UBBf0wNACAAQQFLDQAQzQEACwALYwEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEIak\ +EQaiABQRBqKQIANwMAIAJBCGpBCGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakG4h8AAIAJBCGoQ\ +HCEBIAJBIGokACABC2YBAX8jAEEgayIEJAAgBCABNgIEIAQgADYCACAEQQhqQRBqIAJBEGopAgA3Aw\ +AgBEEIakEIaiACQQhqKQIANwMAIAQgAikCADcDCCAEQYTlwAAgBEEEakGE5cAAIARBCGogAxBIAAtl\ +AgF/AX4jAEEQayICJAACQAJAIAFFDQAgASgCAA0BIAFBfzYCACACQQhqIAEoAgQgAUEIaigCACgCEB\ +EEACACKQMIIQMgAUEANgIAIAAgAzcDACACQRBqJAAPCxC6AQALELsBAAtRAQJ/AkAgACgCACIDQQRq\ +KAIAIANBCGoiBCgCACIAayACTw0AIAMgACACEHIgBCgCACEACyADKAIAIABqIAEgAhCgARogBCAAIA\ +JqNgIAQQALSgEDf0EAIQMCQCACRQ0AAkADQCAALQAAIgQgAS0AACIFRw0BIABBAWohACABQQFqIQEg\ +AkF/aiICRQ0CDAALCyAEIAVrIQMLIAMLUQECfwJAAkAgAEUNACAAKAIADQEgAEEANgIAIAAoAgQhAS\ +AAKAIIIQIgABAPIAEgAigCABEBAAJAIAIoAgRFDQAgARAPCw8LELoBAAsQuwEAC04AAkACQCAARQ0A\ +IAAoAgANASAAQX82AgAgACgCBCABIAIgAEEIaigCACgCDBEGAAJAIAJFDQAgARAPCyAAQQA2AgAPCx\ +C6AQALELsBAAtUAQF/AkACQAJAIAFBgIDEAEYNAEEBIQQgACgCGCABIABBHGooAgAoAhARBQANAQsg\ +Ag0BQQAhBAsgBA8LIAAoAhggAiADIABBHGooAgAoAgwRBwALWAAgAEIANwMAIABBADYCMCAAQQApA7\ +icQDcDCCAAQRBqQQApA8CcQDcDACAAQRhqQQApA8icQDcDACAAQSBqQQApA9CcQDcDACAAQShqQQAp\ +A9icQDcDAAtIAQF/IwBBIGsiAyQAIANBFGpBADYCACADQaShwAA2AhAgA0IBNwIEIAMgATYCHCADIA\ +A2AhggAyADQRhqNgIAIAMgAhCmAQALTAAgAEEANgIIIABCADcDACAAQQApAvScQDcCTCAAQdQAakEA\ +KQL8nEA3AgAgAEHcAGpBACkChJ1ANwIAIABB5ABqQQApAoydQDcCAAtMACAAQQA2AgggAEIANwMAIA\ +BBACkDmJ1ANwJMIABB1ABqQQApA6CdQDcCACAAQdwAakEAKQOonUA3AgAgAEHkAGpBACkDsJ1ANwIA\ +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\ +AABRAAAAYAAAAGEAAABUAAAAVQAAAGIAAABibGFrZTMAAGMAAAB4BwAACAAAAGQAAABlAAAAZgAAAG\ +cAAABoAAAAaQAAAHRpZ2VyAAAABwAAAGgAAAAIAAAAagAAAGsAAABsAAAAbQAAAG4AAABvAAAAdW5z\ +dXBwb3J0ZWQgaGFzaCBhbGdvcml0aG06IFQDEAAcAAAAY2FwYWNpdHkgb3ZlcmZsb3cAAACcAxAAHA\ +AAAC8CAAAFAAAAbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5ycwcAAAAEAAAABAAAAHAAAABxAAAA\ +cgAAAGEgZm9ybWF0dGluZyB0cmFpdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5lZCBhbiBlcnJvcgAHAA\ +AAAAAAAAEAAABzAAAAJAQQABgAAABHAgAAHAAAAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5yc0wEEABJ\ +AAAAZQEAAAkAAAB+Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjOD\ +IzL2JsYWtlMy0wLjMuOC9zcmMvbGliLnJzAAAATAQQAEkAAAALAgAACgAAAEwEEABJAAAAOQIAAAkA\ +AABMBBAASQAAAK4CAAAZAAAATAQQAEkAAACwAgAACQAAAEwEEABJAAAAsAIAADgAAABhc3NlcnRpb2\ +4gZmFpbGVkOiBtaWQgPD0gc2VsZi5sZW4oKQAMERAATQAAAOMFAAAJAAAATAQQAEkAAACDAgAACQAA\ +AEwEEABJAAAAigIAAAoAAABMBBAASQAAAJoDAAAyAAAATAQQAEkAAABVBAAAFgAAAEwEEABJAAAAZw\ +QAABYAAABMBBAASQAAAJgEAAASAAAATAQQAEkAAACiBAAAEgAAAAcAAAAEAAAABAAAAHQAAACsBRAA\ +SwAAAM0AAAAgAAAAfi8uY2FyZ28vcmVnaXN0cnkvc3JjL2dpdGh1Yi5jb20tMWVjYzYyOTlkYjllYz\ +gyMy9hcnJheXZlYy0wLjUuMi9zcmMvbGliLnJzAAcAAAAgAAAAAQAAAHUAAAAHAAAABAAAAAQAAAB0\ +AAAAPQYQAA0AAAAoBhAAFQAAAGluc3VmZmljaWVudCBjYXBhY2l0eUNhcGFjaXR5RXJyb3JQYWRFcn\ +JvcgAAdAYQACAAAACUBhAAEgAAAAcAAAAAAAAAAQAAAHYAAABpbmRleCBvdXQgb2YgYm91bmRzOiB0\ +aGUgbGVuIGlzICBidXQgdGhlIGluZGV4IGlzIDAwMDEwMjAzMDQwNTA2MDcwODA5MTAxMTEyMTMxND\ +E1MTYxNzE4MTkyMDIxMjIyMzI0MjUyNjI3MjgyOTMwMzEzMjMzMzQzNTM2MzczODM5NDA0MTQyNDM0\ +NDQ1NDY0NzQ4NDk1MDUxNTI1MzU0NTU1NjU3NTg1OTYwNjE2MjYzNjQ2NTY2Njc2ODY5NzA3MTcyNz\ +M3NDc1NzY3Nzc4Nzk4MDgxODI4Mzg0ODU4Njg3ODg4OTkwOTE5MjkzOTQ5NTk2OTc5ODk5AACABxAA\ +EgAAAJIHEAAiAAAAcmFuZ2Ugc3RhcnQgaW5kZXggIG91dCBvZiByYW5nZSBmb3Igc2xpY2Ugb2YgbG\ +VuZ3RoIMQHEAAQAAAAkgcQACIAAAByYW5nZSBlbmQgaW5kZXggPT0AABgIEAAZAAAAMQgQABIAAABD\ +CBAADAAAAFIIEAABAAAAGAgQABkAAAAxCBAAEgAAAEMIEAAMAAAATwgQAAMAAABhc3NlcnRpb24gZm\ +FpbGVkOiBgKGxlZnQgIHJpZ2h0KWAKICBsZWZ0OiBgYCwKIHJpZ2h0OiBgYDogYABmCBAAGwAAAGUA\ +AAAUAAAAMHhsaWJyYXJ5L2NvcmUvc3JjL2ZtdC9udW0ucnMAAACUCBAAFgAAAKoIEAANAAAAc2xpY2\ +UgaW5kZXggc3RhcnRzIGF0ICBidXQgZW5kcyBhdCAApBAQAAAAAADICBAAAgAAADogKQDkCBAAFQAA\ +APkIEAArAAAAyggQAAEAAABzb3VyY2Ugc2xpY2UgbGVuZ3RoICgpIGRvZXMgbm90IG1hdGNoIGRlc3\ +RpbmF0aW9uIHNsaWNlIGxlbmd0aCAoRXJyb3IAAAAHAAAAWAEAAAgAAABFAAAAWgAAAFsAAABIAAAA\ +SQAAAFwAAAAHAAAAYAEAAAgAAAA/AAAAQAAAAEEAAABCAAAAQwAAAEQAAAAHAAAAGAEAAAgAAABRAA\ +AAUgAAAFMAAABUAAAAVQAAAFYAAAAHAAAAOAEAAAgAAABLAAAAXQAAAF4AAABOAAAATwAAAF8AAAAH\ +AAAAYAEAAAgAAAA/AAAAVwAAAFgAAABCAAAAQwAAAFkAAAAHAAAAGAEAAAgAAABRAAAAYAAAAGEAAA\ +BUAAAAVQAAAGIAAAAHAAAAWAEAAAgAAABFAAAARgAAAEcAAABIAAAASQAAAEoAAAAHAAAAOAEAAAgA\ +AABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAHAAAAaAAAAAgAAABqAAAAawAAAGwAAABtAAAAbgAAAG\ +8AAAAHAAAAYAAAAAgAAAAUAAAAFQAAABYAAAARAAAAEgAAABcAAABjAAAAeAcAAAgAAABkAAAAZQAA\ +AGYAAABnAAAAaAAAAGkAAAAHAAAAYAAAAAgAAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAHAAAAYA\ +AAAAgAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAHAAAAYAAAAAgAAAAkAAAAJQAAACYAAAAnAAAA\ +HAAAACgAAAAHAAAAeAAAAAgAAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAHAAAAVAAAAAQAAAAIAA\ +AACQAAAAoAAAALAAAADAAAAA0AAAAHAAAAcAAAAAgAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAH\ +AAAAcAAAAAgAAAApAAAALwAAADAAAAAxAAAAMgAAADMAAAAHAAAA2AAAAAgAAAA0AAAAOgAAADsAAA\ +A8AAAAPQAAAD4AAAAHAAAA2AAAAAgAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAAAAAAAAQAAAAAA\ +AACCgAAAAAAAAIqAAAAAAACAAIAAgAAAAICLgAAAAAAAAAEAAIAAAAAAgYAAgAAAAIAJgAAAAAAAgI\ +oAAAAAAAAAiAAAAAAAAAAJgACAAAAAAAoAAIAAAAAAi4AAgAAAAACLAAAAAAAAgImAAAAAAACAA4AA\ +AAAAAIACgAAAAAAAgIAAAAAAAACACoAAAAAAAAAKAACAAAAAgIGAAIAAAACAgIAAAAAAAIABAACAAA\ +AAAAiAAIAAAACAKS5DyaLYfAE9NlSh7PAGE2KnBfPAx3OMmJMr2bxMgsoem1c8/dTgFmdCbxiKF+US\ +vk7E1tqe3kmg+/WOuy/ueqloeZEVsgc/lMIQiQsiXyGAf12aWpAyJzU+zOe/95cD/xkws0iltdHXXp\ +IqrFaqxk+4ONKWpH22dvxr4px0BPFFnXBZZHGHIIZbz2XmLagCG2Alra6wufYcRmFpNEB+D1VHoyPd\ +Ua86w1z5zrrF6iYsUw1uhSiECdPfzfRBgU1Satw3yGzBq/ok4XsIDL2xSniIlYvjY+ht6cvV/jsAHT\ +ny77cOZljQ5KZ3cvjrdUsKMURQtI/tHxrbmY0znxGDFAcAAAAAAAAAAQAAAHcAAADgDRAARgAAAG8A\ +AAAOAAAAfi8uY2FyZ28vcmVnaXN0cnkvc3JjL2dpdGh1Yi5jb20tMWVjYzYyOTlkYjllYzgyMy9tZD\ +ItMC45LjAvc3JjL2xpYi5ycwAAASNFZ4mrze/+3LqYdlQyEAEjRWeJq83v/ty6mHZUMhDw4dLDEDJU\ +dpi63P7vzauJZ0UjAQ8eLTwBI0VniavN7/7cuph2VDIQ8OHSw9ieBcEH1Xw2F91wMDlZDvcxC8D/ER\ +VYaKeP+WSkT/q+AAAAAGfmCWqFrme7cvNuPDr1T6V/Ug5RjGgFm6vZgx8ZzeBb2J4FwV2du8sH1Xw2\ +KimaYhfdcDBaAVmROVkO99jsLxUxC8D/ZyYzZxEVWGiHSrSOp4/5ZA0uDNukT/q+HUi1RwjJvPNn5g\ +lqO6fKhIWuZ7sr+JT+cvNuPPE2HV869U+l0YLmrX9SDlEfbD4rjGgFm2u9Qfur2YMfeSF+ExnN4Ftj\ +YWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAJgREABPAAAAOgAAAA0AAA\ +CYERAATwAAAEEAAAANAAAAmBEQAE8AAACHAAAAFwAAAJgREABPAAAAhAAAAAkAAACYERAATwAAAIsA\ +AAAbAAAAd2UgbmV2ZXIgdXNlIGlucHV0X2xhenkABwAAAAAAAAABAAAAdwAAAOwPEABHAAAAQQAAAA\ +EAAAB+Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjODIzL3NoYTMt\ +MC45LjEvc3JjL2xpYi5ycwDsDxAARwAAAEgAAAABAAAA7A8QAEcAAABPAAAAAQAAAOwPEABHAAAAVg\ +AAAAEAAADsDxAARwAAAGYAAAABAAAA7A8QAEcAAABtAAAAAQAAAOwPEABHAAAAdAAAAAEAAADsDxAA\ +RwAAAHsAAAABAAAAY2FsbGVkIGBPcHRpb246OnVud3JhcCgpYCBvbiBhIGBOb25lYCB2YWx1ZQDgEB\ +AAHAAAAAICAAAeAAAAbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycwwREABNAAAA8gsAAA0AAAAv\ +cnVzdGMvYzhkZmNmZTA0NmE3NjgwNTU0YmY0ZWI2MTJiYWQ4NDBlNzYzMWM0Yi9saWJyYXJ5L2Nvcm\ +Uvc3JjL3NsaWNlL21vZC5ycwAAAAAAAADvzauJZ0UjARAyVHaYutz+h+Gyw7SllvCYERAATwAAABsA\ +AAANAAAAmBEQAE8AAAAiAAAADQAAAH4vLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2\ +M2Mjk5ZGI5ZWM4MjMvYmxvY2stYnVmZmVyLTAuOS4wL3NyYy9saWIucnMAXgzp93yxqgLsqEPiA0tC\ +rNP81Q3jW81yOn/59pObAW2TkR/S/3iZzeIpgHDJoXN1w4MqkmsyZLFwWJEE7j6IRubsA3EF46zqXF\ +OjCLhpQcV8xN6NkVTnTAz0Ddzf9KIK+r5NpxhvtxBqq9FaI7bMxv/iL1chYXITHpKdGW+MSBrKBwDa\ +9PnJS8dBUuj25vUmtkdZ6tt5kIWSjJ7JxYUYT0uGb6kedo7XfcG1UoxCNo7BYzA3J2jPaW7FtJs9yQ\ +e26rV2DnYOgn1C3H/wxpxcZOBCMyR4oDi/BH0unTw0a1/GDgtg64rC8qy8VHJf2A5s5U/bpIEiWXGf\ +7Q/OafpnGdtFZbn4k1L9C2Cn8tfpechOGZMBkkgChrPAnC07U/mkE3aVFWyDU5DxezX8is9t21cPN3\ +p66r4YZpC5UMoXcQM1SkJ0lwqzapskJeMCL+n04cocBgfbOXcFKqTsnLTz2HMvOFE/vla9KLuwQ1jt\ ++kWDH78RXD2BHGmhX9e25PCKmZmth6QY7jMQRMmx6ugmPPkiqMArEBC1OxLmDDHvHhRUsd1ZALll/A\ +fm4MVAhhXgz6PDJpgHToj9NcUjlQ0NkwArmk51jWM11Z1GQM/8hUBMOuKL0nqxxC5qPmr88LLKzT+U\ +axqXYChGBOMS4m7ePa5lF+Aq8yJi/giDR7ULVV0qou2gjanvqacNxIYWp1HDhHyGnG1YBRFTKKL9he\ +7/3HbvXiwm0PvMAdKQicuU8rp12foq9WSU5hQ+E9+vE7CUWMkjKKPRpwYZEfYwUf6Vb8AGLEZOsyrZ\ +0nF8iDPee+0+ORhlbm10eSkzcV04GaRbZHWpSLmmG3xnrP17GXyYMQI9BUvEI2zeTdYC0P5JHFhxFS\ +Y4Y01H3WLQc+TDRkWqYPhVlDTOj5LZlKvKuhsWSGhvDncwJJFjHGTGAualyG4r3X0zFSUohxtwSwNC\ +a9osbQnLgcE3PbBvHMdmgkMI4VWyUevHgDErvIvAli+4kt+68zKmwMhoXFYFPRyGzARVj2uyX+Wkv6\ +u0zrqzCouEQTJdRKpzojSzgdhaqPCWprxs1Si1Zez2JEpS9JAuUeEMWtMGVZ3XnU55l87G+gWJJTOb\ +ED5bKRkgzFSgc4tHqfiwfkE0+fIkKcQbbVN9NZM5i/+2HcIaqDi/FmB98fvER/XjZ3bdqg8eluuLk2\ +L/vHrJecGPlK2Npw3lESm3mB+PkRoSJ66O5GEImIUxrfdiTevqXO9Fo+vszoSWvF6yzvUhYve3DOIz\ +9uSTgqsG3yyjpCzupSwgWpixj4rMR4QLz6NZmJdEUnafFwAkobEW1agmx127PrrXCznbarhVykvlY4\ +BHbP06eh3dnmbnCMaeUSOqSdGiFVcOlPGPhHFFfRciTAFBMl+17sIubjqhXF4PYcP1dXuSKYA25NbD\ +q58TrS9Az0yp8V0NyN+lvkjZiz5+9z+9V9OgpUX2dB8lLtGigqCBXlKe/WZJemh/zpAMLsU7l7q+vO\ +jCX3QJ5bwBAADWs9rmu3c3QrVu8K5+HGbR2M+qTTUfeKH8rxYrSigRLR8difpnT/zx2gqSy13C7HNR\ +JqHCIgxhroq3VtMQqOCWD4fnLx84mlowVU7p7WKt1ScUjTbo5SXSMUavx3B7l2VP1zneson4mUPR4V\ +S/MD8jlzym2dN1lpqo+TTzT1VwVIhWT0p0y2oWra7ksqpMx3ASTSlvZJHQ8NExQGiJKrhXawu+YVpa\ +2e+a8vJp6RK9L+if//4TcNObBloI1gQEmz8V/mwW88FASfve881NLFQJ41zNhYMhxbRBpmJE3Lc1yT\ ++2046m+Bc0QFshWylZCbhyhYw779qc+V25/PgUBowB8806Gs2sFBstc7sA8nHUhBba6JUOEaPBuIIa\ +vyByCkMOId85DQl+t51e0DyfvfReRKRXftr2T534pdSD4WAd2keOmReEw4eyhhizGxLcPv7vywyYzD\ +z+xwP9mxiQtW/k3FdMmkb9MjdlrfF8oAD3flmIHaNoRMZZ9mFb1LSwL3YYdwSZ0K5bFaa6UD1MXnVo\ +37TYIn9OIen0lawuU7/dKgkBvbQJOa4yUDSOsDf1TYONciBCqJ0g+vcj/p6bHWmef42uxIjSRgRbeG\ +nhJMVMe4UTyjUBf9ghpYp7Ew9Au86+lgdYZisuJ96wwiVBJhI2svserb0CdwXpS/isjru61HvGG2Q5\ +MViRJOA2gOAt3IvtaJ/0VoE8YBFR79v3NtL3gB7SilnEJ5fXXwpnlgiKoMup6wlDj0rLoTZwD0tWr4\ +G9mhl4p5q5wFLpyD/IHp+VuYFKeXdQUIzwOGMFj6/KOnhnemJQP7QHd8zs9UmrREqY7nm25NbDO4wQ\ +FM/R1MCcoMhrIAvABkSJLdfIVIihgixDPFyzZuNn8jcrEGHdI7kdJ4TYeSerVq8lFf+w4YO+qUl+Id\ +RlfPvU50ht5+Dba54X2UWHgt8INL1T3Zpq6iIKICJWHBRu4+5Qt4wbXYB/N+hYn6XH5a88wrFPapl/\ +4tDwdQf7fYbTGomIbt5z5tAlbLivnus6EpW4RcHV1fEw52ly7i1KQ7s4+jH57GfLeJy/OzJyAzvzdJ\ +wn+zZj1lKqTvsKrDNfUIfhzKKZzaXouzAtHoB0SVOQbYfVEVctjY4DvJEoQRofSGblgh3n4ta3MndJ\ +OmwDdKv1YWPZfraJogLq8diV7f891GQU1jsr5yBI3AsXDzCmeqd47WCHwes4IaEFWr6m5ph8+LSlIq\ +G1kGkLFIlgPFbVXR85LstGTDSUt8nbrTLZ9a8VIORw6gjxjEc+Z6Zl15mNJ6t+dfvEkgZuLYbGEd8W\ +O38N8YTr3QTqZaYE9i5vs9/g8A8PjkpRurw9+O7tpR43pA4qCk/8KYSzXKgdPujiHBu6gviP3A3oU4\ +NeUEXNFwfb1ACa0RgBgfOl7c+gNPLKh4hRfucLNlHEszgUNB75zImQ9JdX4BQdWfKdP9L/zcWVhSLa\ +PVQzKgWZ/YEfZnZ7D9tB5jaHB1OOQSV3IhX6si4WRn9f4v7ZE2wSsqhI6m7nkhdU3K+PidHGvxLZAx\ +v1gxv6qrEx2bcq5JYnrPGs69L816ejQMW8+wptE1YQhQxtmt3hiXiqdHkqeCU105vAigcJXeKn0O3G\ +6rM4Qb1wnutxvr8Kklxiwk/10KWio5ASC2vjVMArk/5i/1nd9n2sqBFFNTc11Nz6cpFehMrcIJ0yYC\ +v4hBgvZ83hLMZ5LGQk0a2iCYsm59kZaunB0AxQqUubanha80NMYzYDAg4i2GbrSkd7wcKqm+zjGnNq\ +WAKE4HpmJoKl7MqRdlbUZ7WtdUhcFZQd3z+BW5j9AG0GzXS3/G4oUa9Epx9HNIheLq5h566gLPea4O\ +iuzeRAvmX2GFG7C5fpZBnfM+tLbnJilxkpBwA7cKcw7/UW2DFGvqYEFbW1gLhsS9h+w5MXZJZ96fZ3\ +7SF7c2v5LjEGY3f082/oSIlSrvj4o4by19tTYxD8TOfcyhbdxlL6vRlcANNq1GRdj4ZoahgezyxRnT\ +quYFY4wmJ+Ntex3Hfq51njbr6adHMHbFJLc5/Q+eVac6iLVYrMxz9JRatBMFPBubC9WQpHulgZMpPD\ +Rl8LsC2F5bA20yubIJGf8Z5lfU9gbiTLLHjiipq5x8QUyLYq9cx7chG+r9knR02zIQEMDZV+H0etcF\ +ZDb3VJaFphQtSt9XqVuYCZ4IdOVeOuUN+hzypW1S/9OiaY2NaPDNhNkvTIOhdKdT3Kmc88v5GvrHtH\ +/i3BkNb2cVPtlHBoXihcGoOkoAg3CsnTxYBl0Bc3kH8Pf/L9uBO7+RlDKFBNG2+9sRJA/4+jG3YcOx\ +/i4sQwFQ2KLDenac5DiWbOtf4RThjlIWZzvYDbi2ELTVeL1ropfVv+5iU+YbuBP5EHvBCcHAeXLawJ\ +eeu+x1fXxTs1jeXD6GGP85J4AesawhybnPvv1Kv3lPQmfXKZAz5rlaJj4KMwnKBKmotKnbQPCQDVt2\ +o/wIomV6DywJzRQr/tLZ3uPXKpYHnISQ8zQRtChwJyssacNgB8wJ7FCiU0NctJrE7v2CkB704kUPS2\ +3vTK5UbMivdjkphjq/4veEV6Xf65fI81RmNOZPfYWwDJLb8Vc3pCHCYlIarE0BdQjlGTbEiSOcPU16\ +Lg/su0jd1dLCDWdXxhbFvj2JXC2xkrAwLTabNgMkHk3F9oQs4QVvbdud3zBvBI4bUd0qSOb0nNL+b8\ +sCAx7rBYI5EbLAij9Ri4F4Oyz9KmnBgenKjI26pqVxhrDOP6mRKp6l225ycQf0t5K/vrWztEfzHkBK\ +bQOVkyLYVL/H8g++5rrtV008eBsoKWMHW0w5ShCeO6BZ+0E3v5w4xnOSn4L0KpmHz/dhCwFksk7mc9\ +ZhxXv/ihDePuWGcNH7e53nrZEbbJoldse4jVr7fhT5hrhK6QYv2lwazeTN+U/zpIxdFbigU3PLpCwW\ +wWY0Bv97JuUriNTm0NbwOACOEdMR2XySMFnpHWfMwkKOxFyYIj5lmDW1eVmYjEDUCe+mgVckXLPoLR\ +LwgGgjuY/drLqIYjCCl9qoh1uANEzZ8m4NG9KPf1kRv2AQIEOZ9m5N5K8IwhfB16zuWc1yk8YmWxC8\ +CWkERoI7oDpZ2H8ZurjgVYpLHsI7zMHkC7Ad9Ymj0UX6ho6HCgniPyfTCI8U+DEWQatGXVFAIWcFJ0\ +MxPuCV4oP889DpVTCci5VAKTWW3aMIlAmfI7hxNpUz+UVamEh8upyt5eoaDpKzUnIRQp+3pO/x838H\ +YoIk8nUPQ5AouGXh3wOge7wZYOwXEFyL8jLiJohQhn0rC1gI7Uo3GWgbuT4YrTtVW4BIuh0OI6aV8z\ +1a3stEhcyqEWSRk7dP3EmL40gQF3Ja2kVDzoh3nnueEz2hQQ4SgTomoinsUMJ2BfGm11X0lxd++vYP\ +tT6Ju/PUT3p4bHrYKasnNhRQQJXr0ywmZ6vFiyyDpnjFUG8yp3ybbGOfZB2jXan+nvbSEV5nscxwxk\ +ESdVXFaUNsSTOXh3RmKOA+ppJD5azvOr+dIS0w+Ndh50xlLWzoO4RAFShT+jW1oLwp1aQ8MzluYa7P\ +2MCKSMopcg9JYePKQkiEan7m6mL2E3Wg7P+WWxTGtK+6ugBhyqQ2t5YvFvwk1/D5vtVI7Mumw+JbvS\ +7/+3pk+dorCVvCUujDjx3oul1oZU8LZ2xUrX3l2ARSu8vTCAiZJN6XCvgTzbADGe2m3/PkeIzN+fw4\ +2zfrgXjVKFOBJCtrFA0g7a8qn5S9Xc+s5E5n48Qw4gEhNIx3g6T8j8n7t2hSRyH83w5M84NgV0aexM\ +TuwMfLanK+0yzuXzTS+sEUzqJkPRM8u8WH7HTATppO/8NNmTMlFfRFTlBlVkyV0K5H0xj0HeUFni3W\ +kas4w4hgqCVTSotC3pGnGEHqkQkHGDSbG38PdNeXGXwKsuKtYOXI2ql8D6Ipvz2vEvzJ/0gZLyb8bV\ +f0g/qNz8Zwaj6GPO/NLjS5sswrv7k0v3P9pmunD+0mWhL9STDpd54gOhcV7ksHfszb6X5IU5ch60zx\ +dQ914Cqgq34LhAOPAJI9R5hYk10Br8jsWrsuILksaWcpFaN2NBr2b7J3HK3Kt0IUH/ckqmzjyzpWYw\ +CDNJSvD1mijXzQqXjV7CyDHg6JaPR12HdiLA/vPdkGEFEPN77JEUD7uusK31kojVD4X4UJvoTbdYg0\ +h1SWEcU5H2TzWj7sbSgeS7AgeY7e19BST7iQLploUTdTCs7XInF4A1LR0Nw2uOwo9z6yZDBGOP71RY\ +vjvdWjJSXJ4jRlwyz1OqkGfQnTRRTdLBJKaepu7PUSBPfi6GCg8iE2RI4ASUOTnOt/yGcKQsxNnM5w\ +OKI9JaaNvxL6uyhGQG7Hm/73Bdnf5UGEic3bkTW60JFe111PAVUZjHDgbN6wv4tzoYkWeM1eTu81JQ\ +fBjR/4JO5ZIRXcmibKy5TKHuhl19Z1OxvoU0KkmMH3gdGd3564SnumYI9nSM0KI7ZI9RInwI4VbpUo\ +iNrhDEjctopxqO7L8mdwQ4qkU7zbQ4d6YZ3g3sHGkWrQcuRoCTMdTGOBmmC22HpcVA2I+lH/q5FhhP\ +pzwXsYoYHwKcyZgv2qsW6EoTq4AFPrtaZHO3BTtf9vJ1Vb6iASWpi35OAHQvG1PZ6HEDWNccME52Yp\ +XYbn89AG9Z/yZZsbnWxag9KWWfTPiQ1k3wzm6IrzP/XyeCRwEIgj8IMxTktfkamkD+Df1rOdssNKMl\ +Q1KyAbNifueKWmFVZp+eb8MJLNOSLVpFhYV0R0mp3sfyup6jM8G0z2NiVLxuzECwg7Ams/3IVJQ7jN\ +f/h55q9VbGK/SZDZTCLS1uCWsJ3/eYv1LYOh7gphkLtNTby5ypQlnF6UWvmJmlhjHZB+iVYjZz96H6\ +GxhIax0KehXiV+wf1Rog9mpEZ0Z18LDPyusV5ngHKWhPH/O4HtEiztY+cSI7ycMup8FXMC8fP3zDrE\ +bLDvWqAv2TuNvPnwtgLtkfM9Y66khh+Zik6oNqi25C2KjcXHO3dLKJoBFKUh5zs/aHSWfJy+UIiBGU\ +05uxx+QGmQyiJJt+f+2vp0Q2697qCWXeDu/o0/EebLSPeelDfcm5oygMdITX8qJvVpdhR5aEe50GX7\ +bm41t6EG++eO0wY/kVagd65w3m7tCbi6BK7ksrTom4xz6mVmr0/jS6WRMSAvwDNyj4mb9MyDCvDDVx\ +gDl6aBfwiXqn0Gk1Qp7rqcHxmYHuLSh2eYy9eh/dpTcXXYD6qQk8Q1NP2aF831MMi/p3y2yIvNzZPy\ +BHG6l8kUDA39zR+UIB0H1YezhPHfx2hANlMfPF5/gjOXPj50QiKgNLp/VQ16WHXC6ZmDbETCsIPPZY\ +uOx7kd/abfhb/LhwMnbdtSm7cq4QKzYAd07JaleP+x7G2hLRGiek+sUOwxtpQ3EyzBFjJP8GMuUwjj\ +ZCMZajLOAxDjhx8XatCpZcjZU2pW3BMPTW+NLh5xs/0f/I4dtNAGaueHVG5nsGAT+DBW1Y/juttTS7\ +8Jcrock0XwmoDNYlRbZ6JNF3dAHzxtvcTdLK3tQULkrrHgq+2ea1vasBQ3n3cH4q/UAFJ4ot9N7BIk\ +yjwI4HAYdjwfQaUd7lCjOavVI6u341ZH2qV3hpdzJMrgMWg04AEuN4rSAQoufyILRqDKdBneZBEeoY\ +bOAoKGtPmL2MstKDnW5EbF+3Jn+NQU2MVke6jj0Y5r+tC9hEYBZff20gDj7KyxE5pFjivMAdskYXOn\ +LTzdf1VKjKx5wdJj2IMqx8LJS6I2TCkHa4QoBHJFXlF584olZ2R77goC2rZ16bKE0x/buPnCuGRGUT\ +FJ0EyHy0k8eRKzYbLILY3xP7VUaxTnup4hQHusseFF/eXJ1FQ2GJrPDV8fuoUwBbXhzYBOqX87P91K\ +iBIWIIEipXQdO86YrlzEOGJREUpODGpP7FRJEPYs9lZdAzDaGcIZ9IjaRUIchjbaxePsSvDXdyOoty\ +qe+H3yB7TpPX5YY+GrYDVeME1RnI+yHjyqa/YKyzUJoSw7affupoXs3HsYOUGZAcsGw3lcLVPOk9E6\ +25Kt8u1a6EeKDAEvVgLskQYuOjhj28zlE5FpudJjX6tc3QKm59DDNXf9iXYuhZ57CNiSHyjil+qqXR\ +KQAAVUUbBrXhisCLOnCSbCscw8JC7yWva1nMlFYEVCLbcx0KmhfE2fmgtgRgPD2uoq/978SWlLRbB8\ +j349QcHRTHxZw0VY4hOBa9eGokUPhoFfGyKbwClfq8+u0bBSPa8uVseXxTk9ywKOGqrilL7qA9STrX\ +lWhBLGvftTd/LRIlvav8scRdEFgLgXCQKoj3N90P4Vw/ilG1yk1SWyVRhIeFnjziNL0ZgYIpQMvsPF\ +1vW6B0yj7hQhUCELas4lkv0Xn5D1DM+eQn2jdgfYTxDVqXkl7+I+bTkOFt1kiAVnu41jJQbiE1gs63\ +NppKS/YkeiongPcWaYyL7e+TVRXOTPS/3TclvZlLXduVS8AvgWmh/dOStgtmkJpKGvuyuaRGaRkMc2\ +jaSX+qieKBX6Cxgw+aZmSL9ESWff+zJ7N1to1cYWvMlb7rvLkgT2eCWWV1giMxbwXPRT5xiORaVxHC\ +VJmfYb/p6qhAYMS66s3BwPLpb0xFHGkSZEn2nEFwD1sm7zvc056KV8P1YA5tVTwyJoVgDlv1WRv6qc\ +FGGvqPTHyhReKp11Up21lRymXCrzXOdgrbBUU9Eal+x+qBDQqstor4jlL/43tZU6KeoFbNSKyz3w1D\ +b+Rc9Hqms8Re0OL72M/OTvA1mbMQb/U+xhnWnILWIgtpIN90Ckb9F0DtEIWOzPhsp8puOr8kyNZJcI\ +EaWD0kYaJjwbu2rIsEMsxEfcKKo9mrEPSqW//df0uCBKhaSW2tlJ+MLU+npuHj6N41EoX31JPYQGWI\ +f0v92r+kKgQgfCR8MtEXxaFuCYVmGja0ZmnVfQUhEsOlfSf3zzqkk5jVlIEiwM0cxfBk24lh/8S8Mz\ +3xauZMGMsF4OqbuR0dzVz/D5hC/qdUuLCfS41xamrUe4z9pSLMqA/RMb3kK5WEFNNHOCTLX5f6xwfE\ +Rlge7YZIBAu3HnnbzSh/QXP14guwwnf4gCFFkJVcAOtw8//da3qk1tnWOJ5QzgKnf2QAD+vrBm9gds\ +8GzB0K/4aii/LZ5GLCGMldMFrYVF8iMocdW0f+tcxoFrVPLSC6K9fZuXmmpUMtkQ0chFPopBK/SKp+\ +O98dL/JHDh54cwm1CuYM8u9Ct/+d0WHSIDkuKgYDK6EWlQRlOSLrYBm4uA7V/hYcJW4BJvgww8CacX\ +Y+lWUmFe1wlTamlDHWAofJsZSD8HRQ4VyykIxZunD2QpcLgRVKeWyMr/zpJVkNTnRo2GxxZzAbc9fo\ +d7AKkWEvxFrbu2FqZxWF8Ps+UZPV6YOeS3KU9I1kCVyY4Yfo/Qw3dcbTsTRdJQ28M+Q13OAbEzRCuK\ +rQr36LtFAqBAg1q6NE7sSXmdCZFyBJe5qCQUTFtweDOyambGr99JUvdeXGCCxAF3KS7tmVp1S3iio9\ +lHIvVfdCpAgSeBlOMzEskWLu6nyNqU8Js11mL4bDVfOxU10XEAa9Jz9BQLhs/kZZ+gzfkjfgP49euC\ +43AOfPGOG8recpvqfdMYTeXO5E5T6H8UEbG3iK5/DSoHhMyaUoB7Z3KC5BOSymya/zXiahxQYlagx3\ +wrwSzuHc1W22OjdbZ0rQmVTmFtK/gTRSj32J8xXs/GRvD8gTW4thvu90HT4nFLeC3KwXnRkD4L9A3f\ +hh4OdXkuk3qlp3BGliUvr5Vj1GOva7i2RuokMVPwHwmMieh59+MKjMdwEVpCdMzEgzHcosL0MbE6Bv\ +n48fHd7W3adHoAJmYMeyHMxkqzfS09H8JXKOk5t29A+OcANO7C3BAz3a+7L+mohD7tLOC65DT/vrI4\ +nLIm059zwBDTZpIuDU0gI2XoVMeB/QugU4B0b1UjgTeuEzOLbHigV0SN9KoYpnnLKSus2t+mzHn+gM\ +NJ4zCAlOnV+5I1kfKemv8V8mSg/2gDRuHISbsio6v+6ttJGPqDgZ4sPTxkX4799X8qos9gtrAC947n\ +Vv73n0YqkWiRzUWqURU9T+hJDSKfLmALAWe8LxQnTAI5h0dh8rYFN0wqPsdku9kRa5Y/SYjGrmrfE8\ +ybwUl4NFbT4hhYgRR00n8H0XjlEpP1C1c5u0a2v5w2iBFhCusMpjO5Y9DhTboVVWS/yNXN4UbjXxif\ +fB2lFOr2g+aNkPS42dT6jJ0fmgUj/gkTaAjofhRm7YXlBx0JkOGnE8EJNODLJlCFouaPDkH/z7Vpvf\ +XhDjXY3qehh5I7H9q3Gce+e+4Z25LiNFzzPqwOwhoccFGFLXpFlyfK5W6/WWONx1j7E9j2OqjoDpq4\ +01OZ+scgvAkfret5ItSWL9QVVrW00u+ejexm1+6r7Eq1c/Nc6QVtrWaVdzhBQ5QqZKIwqdDfgogFD5\ +9hXys3qiGeO4TRo0URGcrTEFWO97pSI8dzOGlgcaVsdFNr6dJJ7aE/loTKZ4my1l2u80wzt/qSdM9B\ +dr5iASYnYLfc2aiUN3loJn7eDKW+7z/HnIADZ1n0C2bZK1OZrQBojFejGwroNvIR84hkrK5gElMJ/R\ +YjT/Zvs7/d0kfCBy6+Ls4tO29kreCOrHvk2ZnMSLmrCX5axJupcHz2ZHjLN1KnzFc5MbE1gek2HOLI\ +KxDBy6CblVdZ3SEX2T3a9/EuSSbcatO9opvOzCVHHVwaIk/vaCTRPFWE8nYltR4zocJoHLAS7IB+nL\ +f+MTGQnt+MlGAMj52EkyY/uI4+2bz4Ce8WwRmlOBGFck1Wv38wNRqPdHrvXmtxXPnH7U3sbX2xq7KA\ +JBXOVEmU7bXiXUR7Yw/Kq4K4gRXSoh0ym7iwn1s5YC6RTqtY9aAt1XIZR7Z7WskKPA51j7AUq9g0xn\ +04k7ufNL36QtnilIq4wyHsT8UixYupaM8wOyXdh/vb3RyoOugmDBQrS7sJrapWvoX7k/qXE3ZwQust\ +hSMUnJWFOEHlS0l4ZIKr5maY7TLdyilSuFPJKsESzAe6jyDZmxiCO+N08b+giAfAPlVE3I0HAf1FfO\ +fuytkFQ6OgbZJzwrAL+iMICEo65+wAMg7W0yAsaGQKlpfSing4p69TDLX3rFeefreeREaLXpvNwFD7\ +Rzo+IOV4hueBrXoPbovc26nIcvo2TBvNFql4vXZpZe4iGrPMPl5apjEJCQjWlIRLMYmLuKHj6uh2Tj\ +tNw7iTH5va8Z1btf3KBFY8pllJsm/iiG7FGcP2ABXR63SVChBkDkTbHLdvflcGy/7StV7/IYEkGjNl\ +pwCAcMy0RgmE91FE3nDiioDkPZVs1lUF9T15ElwZbvCnLxIzLIH6Vjc285oMMBAAAAAAAAAAAAAAAA\ +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwyEA\ +BIAAAATQAAAA0AAAB+Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVj\ +ODIzL3RpZ2VyLTAuMS4wL3NyYy9saWIucnMHAAAABAAAAAQAAAB4AAAAbnVsbCBwb2ludGVyIHBhc3\ +NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQg\ +bGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdAAABAAAAAAAAAAA1emAgAAEbmFtZQHK6YCAAN\ +ABADZ3YXNtX2JpbmRnZW46Ol9fd2JpbmRnZW5fc3RyaW5nX25ldzo6aGQ5ZjZmNjUzOTRjYjJhYWQB\ +MXdhc21fYmluZGdlbjo6X193YmluZGdlbl90aHJvdzo6aDRlNTI2YThmMzFhZjQ1MDYCL3NoYTI6On\ +NoYTUxMjo6c29mdDo6Y29tcHJlc3M6OmhlY2JhMjdhNzgzMTlmOTE2Ay9zaGEyOjpzaGEyNTY6OnNv\ +ZnQ6OmNvbXByZXNzOjpoMzkzODkyZjYwM2UzMGVlZgQ2cmlwZW1kMzIwOjpibG9jazo6cHJvY2Vzc1\ +9tc2dfYmxvY2s6OmgxMTE0MGYzNDZjMjBkYzEyBTZyaXBlbWQxNjA6OmJsb2NrOjpwcm9jZXNzX21z\ +Z19ibG9jazo6aDYzZTVlNWNlYWZhZTlhZWQGC2NyZWF0ZV9oYXNoBytzaGExOjpjb21wcmVzczo6Y2\ +9tcHJlc3M6Omg5ZDFiMmQ1ZDkxYjM4NzhhCDpkbG1hbGxvYzo6ZGxtYWxsb2M6OkRsbWFsbG9jPEE+\ +OjptYWxsb2M6Omg4MTdkMGJkYmU3NDg5OTRkCSl0aWdlcjo6VGlnZXI6OmNvbXByZXNzOjpoZTI3NG\ +M5ZGEwNmYzMWNiYgo2Ymxha2UzOjpwb3J0YWJsZTo6Y29tcHJlc3NfaW5fcGxhY2U6Omg4ZThhMGYz\ +NmI2NmYxNjQxCz88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0ZTo6aG\ +U4ZDRhZDI3YjJlNjI3ZTcMJ21kNTo6dXRpbHM6OmNvbXByZXNzOjpoNDVkOGYwOTM2OTk2NTk4MA0v\ +bWQyOjpNZDJTdGF0ZTo6cHJvY2Vzc19ibG9jazo6aGExMDE5ZmViMzk2YWQ2NTMOMGJsYWtlMzo6Y2\ +9tcHJlc3Nfc3VidHJlZV93aWRlOjpoMDNjMGRmMzEzZWRiMzgxNg84ZGxtYWxsb2M6OmRsbWFsbG9j\ +OjpEbG1hbGxvYzxBPjo6ZnJlZTo6aDM3ZjJjY2IxMjYwODQ5YjYQL21kNDo6TWQ0U3RhdGU6OnByb2\ +Nlc3NfYmxvY2s6Omg3YWMxYzZjNmIyOTY0ZDllEUFkbG1hbGxvYzo6ZGxtYWxsb2M6OkRsbWFsbG9j\ +PEE+OjpkaXNwb3NlX2NodW5rOjpoYjE5YmE0ZjU3Yzg2MmQxMhIrYmxha2UzOjpIYXNoZXI6OmZpbm\ +FsaXplOjpoZTY2NzE0ZjVjNWU5OTcwMRMga2VjY2FrOjpmMTYwMDo6aDExYTgwOWMzMmI4MTEwMmQU\ +LGNvcmU6OmZtdDo6Rm9ybWF0dGVyOjpwYWQ6OmgzODFiN2M5ZWVmMDE1ZThiFQ5fX3J1c3RfcmVhbG\ +xvYxZhPHNoYTI6OnNoYTUxMjo6U2hhNTEyIGFzIGRpZ2VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGly\ +dHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoY2Q3NDBiNTQ4MTQ4ZDE4OBcxYmxha2UzOjpIYXNoZX\ +I6Om1lcmdlX2N2X3N0YWNrOjpoMDNiNmQwNzlmN2I1NTE0YxhHPEQgYXMgZGlnZXN0OjpkeW5fZGln\ +ZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aDU2YTBkZGZhYjEzM2EzYjIZRzxEIGFzIG\ +RpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6OmhhOWFkM2FmZTc0\ +N2I2NThhGkc8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2\ +V0OjpoYjUwOTAwMjlmZTY0MGFhMhtZPHRpZ2VyOjpUaWdlciBhcyBkaWdlc3Q6OmZpeGVkOjpGaXhl\ +ZE91dHB1dERpcnR5Pjo6ZmluYWxpemVfaW50b19kaXJ0eTo6aDVhNmU1NTUxZTU5ZjA3YzYcI2Nvcm\ +U6OmZtdDo6d3JpdGU6Omg5YjlhYTIzZTdkMzU3MDJjHTVjb3JlOjpmbXQ6OkZvcm1hdHRlcjo6cGFk\ +X2ludGVncmFsOjpoMDhlM2U1M2EwZGU1MTdhMR5hPHNoYTI6OnNoYTUxMjo6U2hhMzg0IGFzIGRpZ2\ +VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoYjNmN2E1\ +OWQ4ZjY5MmZlZh9CPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbm\ +U6Omg5NWYxYTJjMTMzNWZlOWZlIEc8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46\ +OmZpbmFsaXplX3Jlc2V0OjpoY2Q1ZDRhNDZiNjllZDEyMCFXPHNoYTE6OlNoYTEgYXMgZGlnZXN0Oj\ +pmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6Omg3NmJlMjliNWU0\ +MjgzY2E5IjRibGFrZTM6OmNvbXByZXNzX3BhcmVudHNfcGFyYWxsZWw6OmhjMTE3M2JmNWE3ZGYwYz\ +M3I0c8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0Ojpo\ +NzM0YTEwYzFhMWVkNjBmNCRBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW\ +5hbGl6ZTo6aGNjZDE4ZWNjMmEyNzJhOWQlQTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGln\ +ZXN0Pjo6ZmluYWxpemU6OmhmNGM2MmFiOWYxYTEzNTI2JkE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3\ +Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoNDUwN2Y0MDlmZjIzZTIwNCdHPEQgYXMgZGlnZXN0Ojpk\ +eW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aDRmY2U4MWVjZWQ4ZWU2ZDQoRz\ +xEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6OmhhYmE0\ +ZDYxYjQ4NGYxMTFjKUE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaX\ +plOjpoNjZlZjNiNDc5ZTAwNmQ4MCpBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+\ +OjpmaW5hbGl6ZTo6aGE3OTNlNjc2ODJjMDQ1ZDMrQTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RH\ +luRGlnZXN0Pjo6ZmluYWxpemU6Omg1MDE5YmZkMTM2ZDkyNjIzLEc8RCBhcyBkaWdlc3Q6OmR5bl9k\ +aWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0OjpoOWZiZGRmOWQ2ZTE2OGRhNS1HPEQgYX\ +MgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aGZmOTFlZWQ1\ +OWE3OGJmN2QuRzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcm\ +VzZXQ6OmgzNWIyODdhMDc1NGViZDFkL2E8c2hhMjo6c2hhMjU2OjpTaGEyNTYgYXMgZGlnZXN0Ojpm\ +aXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6Omg3MTQwM2IxNzJmZT\ +lmYWRiMEE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoZTE4\ +ODgyYzM1MTFiZTU0NzFHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbG\ +l6ZV9yZXNldDo6aGEyZjYxOWJiYTVmZGVhOTEyMnNoYTI6OnNoYTUxMjo6RW5naW5lNTEyOjpmaW5p\ +c2g6Omg1ZDdmZmFlN2MzYjA1MzU3MwxfX3J1c3RfYWxsb2M0QTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2\ +VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6OmgxZjg2MDhhNDdlYzc0YjZiNUc8RCBhcyBkaWdlc3Q6\ +OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0OjpoMzI3MjJmZDcwN2U4NzViZT\ +ZBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aDFmN2Q5NjNj\ +ZjRkOTAzZDA3QTxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6Om\ +hlYTRhNTViY2I1NjEzZDlmOEE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZp\ +bmFsaXplOjpoNWFhZDMzODkwNTA5MzUyNjlHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaW\ +dlc3Q+OjpmaW5hbGl6ZV9yZXNldDo6aDEyY2IzYTZmOGQ2OGZmN2M6RzxEIGFzIGRpZ2VzdDo6ZHlu\ +X2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Omg1MWQ1MmEzNDY1MDEyM2QyO0I8RC\ +BhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aDgxNTZiMDA2NTA3\ +YzM1MGM8LWJsYWtlMzo6Q2h1bmtTdGF0ZTo6dXBkYXRlOjpoNGExYWY4ZjZlYzY3NjU0Mj07PCZtdX\ +QgVyBhcyBjb3JlOjpmbXQ6OldyaXRlPjo6d3JpdGVfY2hhcjo6aDYwZjQ4N2UyY2VkMDA0MWY+RzxE\ +IGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Omg5NDNiYj\ +I2MTc1NWMxZWRiP0c8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXpl\ +X3Jlc2V0OjpoOWY3ZjM5ZTU2NTk2ODRhN0BhPHNoYTI6OnNoYTI1Njo6U2hhMjI0IGFzIGRpZ2VzdD\ +o6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoZmYyMjZiYTgz\ +MWI4ZGQ1NEE/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6OmgxMj\ +U2ZmM2ZGE0ZWE4MDVhQj88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0\ +ZTo6aDE0MzdlZjg1Y2VhMjZlYzFDPzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pj\ +o6dXBkYXRlOjpoMjI1ZjdiNjhlMWQ1ODkyNUQ/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5E\ +aWdlc3Q+Ojp1cGRhdGU6Omg0YTdlODhiYTE3Mzg0MmUyRUE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3\ +Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoOGRkY2Y3ZDg3N2YyYTcwMUZBPEQgYXMgZGlnZXN0Ojpk\ +eW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aGY2YjJkYmZjMDc0MzJkMDhHQTxEIGFzIG\ +RpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6OmgyOTdiMmQxMjFkZTM1MTE5\ +SDdjb3JlOjpwYW5pY2tpbmc6OmFzc2VydF9mYWlsZWRfaW5uZXI6Omg4OGEyYThiMzZiODU5MjZjSU\ +c8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplX3Jlc2V0OjpoN2Iy\ +NTk3ZTVjOTQ1MDE4Y0pHPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbG\ +l6ZV9yZXNldDo6aGIwNmYxYWM1MGYyNGNmNTFLL2NvcmU6OmZtdDo6bnVtOjppbXA6OmZtdF91NjQ6\ +OmhmMDQ2OTQzMWRhY2U0MDQ2TDJzaGEyOjpzaGEyNTY6OkVuZ2luZTI1Njo6ZmluaXNoOjpoODk4Nz\ +ljNGZlYTNkNDQ1YU0wPCZUIGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6OmhjZDNhNjgwYTEyZjA3\ +N2I0TmE8cmlwZW1kMzIwOjpSaXBlbWQzMjAgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaX\ +J0eT46OmZpbmFsaXplX2ludG9fZGlydHk6Omg3NzA0NjVlN2YxMDZhNWM1T1s8c2hhMzo6U2hhM181\ +MTIgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydH\ +k6OmhiZWUxNjA2YmNmMjk5ZTFiUFw8c2hhMzo6S2VjY2FrNTEyIGFzIGRpZ2VzdDo6Zml4ZWQ6OkZp\ +eGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoNjM0NWZmYmRkODVlODk2NlFBPE\ +QgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aDJhMGJkMTYzNGZj\ +ZWVmY2NSPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6Omg2NjY3ZG\ +JjNTJiOTY0YzlhU0I8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9u\ +ZTo6aDQxMTIxNjJlMWQxNGFmN2JUPzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pj\ +o6dXBkYXRlOjpoNTM0ZjYzNGYzYWNmODJiYVU/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5E\ +aWdlc3Q+Ojp1cGRhdGU6Omg4ZWQxYWYwMGM3MmZkMDdlVj88RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3\ +Q6OkR5bkRpZ2VzdD46OnVwZGF0ZTo6aGM3ODAwYzA4ZjgwMzhiMzdXPzxEIGFzIGRpZ2VzdDo6ZHlu\ +X2RpZ2VzdDo6RHluRGlnZXN0Pjo6dXBkYXRlOjpoMTE3NDAxNDAxZTg3YTcwMlg/PEQgYXMgZGlnZX\ +N0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6Omg0ZWNiM2UzZjEwYWVjMjI4WT88RCBh\ +cyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnVwZGF0ZTo6aDg4ZDk2MTUzODM3YzY2M2\ +NaRzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemVfcmVzZXQ6Omgx\ +MDE5NTBiZmFjZWVkN2Q0W0c8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbm\ +FsaXplX3Jlc2V0OjpoODFhZTA3ZDA5MTdiNzNhOVxBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpE\ +eW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aDYwNjI3NWI5NGIwZDk1NjhdQTxEIGFzIGRpZ2VzdDo6ZHluX2\ +RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6OmhkYjk3OTFkZTc5ZGE4ZTgzXmE8cmlwZW1kMTYw\ +OjpSaXBlbWQxNjAgYXMgZGlnZXN0OjpmaXhlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2\ +ludG9fZGlydHk6OmgzMzEwZjQ1ZmI1NjJmM2FmX1w8c2hhMzo6S2VjY2FrMzg0IGFzIGRpZ2VzdDo6\ +Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoZjZlZTdiZjI2ND\ +EzODdmNmBbPHNoYTM6OlNoYTNfMzg0IGFzIGRpZ2VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+\ +OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoNTQ5ZWI4YmI3MzAzMGNjYWE/PEQgYXMgZGlnZXN0OjpkeW\ +5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojp1cGRhdGU6Omg0NGMwZTQ0ZmY3NDlmNTkxYkI8RCBhcyBkaWdl\ +c3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aDNlYjUyYTA1OWY2NTA5ZGZjQj\ +xEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoYjU3MjMxN2Mx\ +MDdkNmQxZGRVPG1kNTo6TWQ1IGFzIGRpZ2VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW\ +5hbGl6ZV9pbnRvX2RpcnR5OjpoNzIwN2Q4ZTYyY2IyMjE0NWVVPG1kNDo6TWQ0IGFzIGRpZ2VzdDo6\ +Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoMmQ4ZmMzZjAyMz\ +A5MzIxYmZBPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpmaW5hbGl6ZTo6aDli\ +NmIzNDIwYmZhZGY5MDlnPzxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6dXBkYX\ +RlOjpoNGE1MzA4NzNlOTc3OGE2N2g/PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+\ +Ojp1cGRhdGU6OmhmNmIxYTliM2NmYWVlZmRmaVs8c2hhMzo6U2hhM18yNTYgYXMgZGlnZXN0OjpmaX\ +hlZDo6Rml4ZWRPdXRwdXREaXJ0eT46OmZpbmFsaXplX2ludG9fZGlydHk6OmhjYTYxNDk0ZjUxNGEx\ +NWZjalw8c2hhMzo6S2VjY2FrMjU2IGFzIGRpZ2VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+Oj\ +pmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoN2Y0OTA0MjYxZTE0ZjA1M2tbPHNoYTM6OlNoYTNfMjI0IGFz\ +IGRpZ2VzdDo6Zml4ZWQ6OkZpeGVkT3V0cHV0RGlydHk+OjpmaW5hbGl6ZV9pbnRvX2RpcnR5OjpoNW\ +FkNDE2MWMzOTRiNzNjNGxcPHNoYTM6OktlY2NhazIyNCBhcyBkaWdlc3Q6OmZpeGVkOjpGaXhlZE91\ +dHB1dERpcnR5Pjo6ZmluYWxpemVfaW50b19kaXJ0eTo6aGUzZjM5NzU2N2M4ODg1ZjltQTxEIGFzIG\ +RpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6ZmluYWxpemU6OmhhMTczZmQzNjQzMzQ0MmNl\ +bkE8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmZpbmFsaXplOjpoZjBjZTMzYz\ +A2OWVlMmYwM29CPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6\ +OmgxMWQ5MzBiMjkwOTBlZGFhcEI8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om\ +JveF9jbG9uZTo6aGVjN2Q0NjJlYzBlNmNmOTlxbmdlbmVyaWNfYXJyYXk6OmltcGxzOjo8aW1wbCBj\ +b3JlOjpjbG9uZTo6Q2xvbmUgZm9yIGdlbmVyaWNfYXJyYXk6OkdlbmVyaWNBcnJheTxULE4+Pjo6Y2\ +xvbmU6OmgwYTkxZDYxN2VlZDNhNGQ5ck5hbGxvYzo6cmF3X3ZlYzo6UmF3VmVjPFQsQT46OnJlc2Vy\ +dmU6OmRvX3Jlc2VydmVfYW5kX2hhbmRsZTo6aDMwNmI0NDRhYWViNWFkYzVzQjxEIGFzIGRpZ2VzdD\ +o6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoMjgzMzVkYzM4NmQ5MTY3OXRCPEQg\ +YXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6Omg2OWQ4ZmVmZWQzZm\ +JjMDM1dUI8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aDVm\ +NTQyMjJmYWJlZjk4M2J2QjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2\ +Nsb25lOjpoOGNlNWExNzNjN2U4ZDUwYXdCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdl\ +c3Q+Ojpib3hfY2xvbmU6OmhmYTg2YzJmZWQ4MzNmNzFmeC5hbGxvYzo6cmF3X3ZlYzo6ZmluaXNoX2\ +dyb3c6OmhmZjZhMjI0N2ViYjIxNzM1eW5nZW5lcmljX2FycmF5OjppbXBsczo6PGltcGwgY29yZTo6\ +Y2xvbmU6OkNsb25lIGZvciBnZW5lcmljX2FycmF5OjpHZW5lcmljQXJyYXk8VCxOPj46OmNsb25lOj\ +poNWFlM2RhOWY2ODg1ZjI5OXpCPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpi\ +b3hfY2xvbmU6OmgwMGY5MWZlMGJjMGI3MmY1e0I8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bk\ +RpZ2VzdD46OmJveF9jbG9uZTo6aDVkYThmMmM3MDYxY2NkYmN8QjxEIGFzIGRpZ2VzdDo6ZHluX2Rp\ +Z2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpoNzE2YTljNTZhYTllMDkyN31CPEQgYXMgZGlnZX\ +N0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Ojpib3hfY2xvbmU6Omg4ZWI1ZmQyMzU1MzI0NDlifkI8\ +RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OmJveF9jbG9uZTo6aDlmY2QyODAyMj\ +MxNmU1MDd/QjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym94X2Nsb25lOjpo\ +YzlhNWRhZmRhYzA0M2EyMYABQjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6Ym\ +94X2Nsb25lOjpoZTQxYzM0MTY1MWIzMWQwMIEBQjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHlu\ +RGlnZXN0Pjo6Ym94X2Nsb25lOjpoZjAzNzkwNGY4NGMwNDhhZIIBLmNvcmU6OnJlc3VsdDo6dW53cm\ +FwX2ZhaWxlZDo6aDI3ZjQzZDk5M2MzODY0YTGDAVA8YXJyYXl2ZWM6OmVycm9yczo6Q2FwYWNpdHlF\ +cnJvcjxUPiBhcyBjb3JlOjpmbXQ6OkRlYnVnPjo6Zm10OjpoYWYwNDdiNjQ3MDUwYjlhOYQBUDxhcn\ +JheXZlYzo6ZXJyb3JzOjpDYXBhY2l0eUVycm9yPFQ+IGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6\ +OmhjYzhlMzY1MDY0NTc5M2Q2hQE+PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+Oj\ +pyZXNldDo6aDM4NzRmMDFkMzBkMjBiMzWGAT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRp\ +Z2VzdD46OnJlc2V0OjpoYzc2YmEwZTUyMGJiNGJkY4cBbmdlbmVyaWNfYXJyYXk6OmltcGxzOjo8aW\ +1wbCBjb3JlOjpjbG9uZTo6Q2xvbmUgZm9yIGdlbmVyaWNfYXJyYXk6OkdlbmVyaWNBcnJheTxULE4+\ +Pjo6Y2xvbmU6Omg3MjI2M2YxY2UxODhjNGZliAFuZ2VuZXJpY19hcnJheTo6aW1wbHM6OjxpbXBsIG\ +NvcmU6OmNsb25lOjpDbG9uZSBmb3IgZ2VuZXJpY19hcnJheTo6R2VuZXJpY0FycmF5PFQsTj4+Ojpj\ +bG9uZTo6aDdiMjhiOWE4NmU0NDkxZDaJAW5nZW5lcmljX2FycmF5OjppbXBsczo6PGltcGwgY29yZT\ +o6Y2xvbmU6OkNsb25lIGZvciBnZW5lcmljX2FycmF5OjpHZW5lcmljQXJyYXk8VCxOPj46OmNsb25l\ +OjpoOGFlNGU3YTk5OGNjMDczZYoBbmdlbmVyaWNfYXJyYXk6OmltcGxzOjo8aW1wbCBjb3JlOjpjbG\ +9uZTo6Q2xvbmUgZm9yIGdlbmVyaWNfYXJyYXk6OkdlbmVyaWNBcnJheTxULE4+Pjo6Y2xvbmU6Omhh\ +NjU4OWVlMTkzMjk4ZTFkiwFuZ2VuZXJpY19hcnJheTo6aW1wbHM6OjxpbXBsIGNvcmU6OmNsb25lOj\ +pDbG9uZSBmb3IgZ2VuZXJpY19hcnJheTo6R2VuZXJpY0FycmF5PFQsTj4+OjpjbG9uZTo6aGQ3YWFj\ +NmEwZDUzYTg5MDeMAUFjb3JlOjpzbGljZTo6aW5kZXg6OnNsaWNlX3N0YXJ0X2luZGV4X2xlbl9mYW\ +lsOjpoZWYzZTMzN2Q2ZTg1OWJiNI0BP2NvcmU6OnNsaWNlOjppbmRleDo6c2xpY2VfZW5kX2luZGV4\ +X2xlbl9mYWlsOjpoMTkyNTA1YTE1YWM0YjM0NY4BTmNvcmU6OnNsaWNlOjo8aW1wbCBbVF0+Ojpjb3\ +B5X2Zyb21fc2xpY2U6Omxlbl9taXNtYXRjaF9mYWlsOjpoMTNiZjVhMGUxNDA3YjE0ZI8BNmNvcmU6\ +OnBhbmlja2luZzo6cGFuaWNfYm91bmRzX2NoZWNrOjpoODA4YjUyNGFmMTc2NDBiMZABRDxjb3JlOj\ +pmbXQ6OkFyZ3VtZW50cyBhcyBjb3JlOjpmbXQ6OkRpc3BsYXk+OjpmbXQ6Omg2ZjQzNDIwZjcwNzA3\ +MTI2kQE9Y29yZTo6c2xpY2U6OmluZGV4OjpzbGljZV9pbmRleF9vcmRlcl9mYWlsOjpoNzFlMjQ3ZG\ +VjM2YyNjZmZpIBPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6Omgz\ +ODE0NjVhZjYwNjQxMDZlkwE3c3RkOjpwYW5pY2tpbmc6OnJ1c3RfcGFuaWNfd2l0aF9ob29rOjpoZT\ +liZmUwMzIxOWQ3MTViYZQBOjwmbXV0IFcgYXMgY29yZTo6Zm10OjpXcml0ZT46OndyaXRlX2ZtdDo6\ +aGJlMTAwZDQ2NDRmYzA5M2aVATFjb3JlOjpwYW5pY2tpbmc6OmFzc2VydF9mYWlsZWQ6OmhkOTAxMm\ +ViNmM3NDhmYjJllgELZGlnZXN0X2hhc2iXATo8Jm11dCBXIGFzIGNvcmU6OmZtdDo6V3JpdGU+Ojp3\ +cml0ZV9zdHI6Omg2OGI3NmIxZjk4ZDM2ZDg4mAEGbWVtY21wmQETX193YmdfZGVub2hhc2hfZnJlZZ\ +oBC3VwZGF0ZV9oYXNomwFDY29yZTo6Zm10OjpGb3JtYXR0ZXI6OnBhZF9pbnRlZ3JhbDo6d3JpdGVf\ +cHJlZml4OjpoYWI4YzlkMDdmNDk3M2E4NJwBPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRG\ +lnZXN0Pjo6cmVzZXQ6OmgzMDc5MTNkMDU2ZTFlYzFinQEpY29yZTo6cGFuaWNraW5nOjpwYW5pYzo6\ +aDJmZDM4NWE4ODdjOGJmMTOeAT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46On\ +Jlc2V0OjpoYTIzOGM2ZmM5NmY0ODgwOJ8BPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGln\ +ZXN0Pjo6cmVzZXQ6OmhjOWRhMDQyZGVkNmFiNzZioAEGbWVtY3B5oQERcnVzdF9iZWdpbl91bndpbm\ +SiARFfX3diaW5kZ2VuX21hbGxvY6MBPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0\ +Pjo6cmVzZXQ6OmhkMmM2NGQ0MTViMDJhMTE1pAE+PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW\ +5EaWdlc3Q+OjpyZXNldDo6aGUwNDEyM2YxNGUzYTgwYjKlAT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdl\ +c3Q6OkR5bkRpZ2VzdD46OnJlc2V0OjpoZWJhOGI5ZTg3OTUxMzM5ZaYBLWNvcmU6OnBhbmlja2luZz\ +o6cGFuaWNfZm10OjpoYmYyMWEzZDRiYmI4MmJmOKcBSXN0ZDo6c3lzX2NvbW1vbjo6YmFja3RyYWNl\ +OjpfX3J1c3RfZW5kX3Nob3J0X2JhY2t0cmFjZTo6aGYzMTA0OTE2OWJlZGExNzGoAQZtZW1zZXSpAT\ +48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnJlc2V0OjpoMzY5NGMyNWMzY2Q5\ +OWQyZaoBQ3N0ZDo6cGFuaWNraW5nOjpiZWdpbl9wYW5pY19oYW5kbGVyOjp7e2Nsb3N1cmV9fTo6aD\ +NlNmRiN2M2NzRlNzkyMDOrARJfX3diaW5kZ2VuX3JlYWxsb2OsATtjb3JlOjpwdHI6OmRyb3BfaW5f\ +cGxhY2U8Ymxha2UzOjpIYXNoZXI+OjpoMWFlNmNlM2VjNjFjYzIwYa0BRTxibG9ja19wYWRkaW5nOj\ +pQYWRFcnJvciBhcyBjb3JlOjpmbXQ6OkRlYnVnPjo6Zm10OjpoNDE1OTMyZjRlY2QyM2Q5Mq4BPjxj\ +b3JlOjpmbXQ6OkVycm9yIGFzIGNvcmU6OmZtdDo6RGVidWc+OjpmbXQ6OmhkY2ViYzBhMDM4NTBjYT\ +MwrwEyY29yZTo6b3B0aW9uOjpPcHRpb248VD46OnVud3JhcDo6aDEzMzczODZlMzFlMDY5ZmKwATA8\ +JlQgYXMgY29yZTo6Zm10OjpEZWJ1Zz46OmZtdDo6aGU5OThkNmU3M2UyODU1OGKxATI8JlQgYXMgY2\ +9yZTo6Zm10OjpEaXNwbGF5Pjo6Zm10OjpoNTZjMzY0MjYwNGI3MWUzNLIBD19fd2JpbmRnZW5fZnJl\ +ZbMBNGFsbG9jOjpyYXdfdmVjOjpjYXBhY2l0eV9vdmVyZmxvdzo6aDUxMzEyMDA0YTMxZjBlYTa0AT\ +ljb3JlOjpvcHM6OmZ1bmN0aW9uOjpGbk9uY2U6OmNhbGxfb25jZTo6aDQ0YTUzM2EwODAzODg2NDG1\ +AT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46OnJlc2V0OjpoMjBlZmJlODQ2Nm\ +NhNDU1MLYBPjxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6cmVzZXQ6OmgzNTFl\ +NmMwNGY4ZDA3MWRmtwE+PEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpyZXNldD\ +o6aDViZjQ0Yjk2MzliZDRjMzG4AT48RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46\ +OnJlc2V0OjpoNjRjYTNiMmQzZTY1ZDRkZrkBH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZX\ +K6ATF3YXNtX2JpbmRnZW46Ol9fcnQ6OnRocm93X251bGw6Omg4NzZlNzY2NTk3MGNiMmE4uwEyd2Fz\ +bV9iaW5kZ2VuOjpfX3J0Ojpib3Jyb3dfZmFpbDo6aDViMjBhMGI0ODAzNjM1NDK8AU5jb3JlOjpmbX\ +Q6Om51bTo6aW1wOjo8aW1wbCBjb3JlOjpmbXQ6OkRpc3BsYXkgZm9yIHUzMj46OmZtdDo6aDg0ZjA3\ +NmM1ZTVkODM5ZWW9ASp3YXNtX2JpbmRnZW46OnRocm93X3N0cjo6aGQ4ZGEzZTgwOWIyNWNhYzS+AT\ +E8VCBhcyBjb3JlOjphbnk6OkFueT46OnR5cGVfaWQ6OmhjOTA3ZjQwMzRkYmQwYTY0vwFEPEQgYXMg\ +ZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpvdXRwdXRfc2l6ZTo6aDA5ZmZkOGZkZjE2ZT\ +ExNjfAAUQ8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpo\ +MWZkYTdhZTFmNjA0NmE3ZsEBRDxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6b3\ +V0cHV0X3NpemU6Omg3ZmEzNDJhOTEzNzc2YzZjwgFEPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpE\ +eW5EaWdlc3Q+OjpvdXRwdXRfc2l6ZTo6aDgxMzA1OTVjMDE3MTRiMWPDAUQ8RCBhcyBkaWdlc3Q6Om\ +R5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpoM2Q3YjAxYjNjNTI5MjE1Y8QBRDxE\ +IGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6b3V0cHV0X3NpemU6Omg3ODJiYzA2Yz\ +U0NTdlM2NlxQFEPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpvdXRwdXRfc2l6\ +ZTo6aDQwZjBmOTE1MWQ3MjliOWbGAUQ8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD\ +46Om91dHB1dF9zaXplOjpoNGNiZTc1NTE1ZjgxNTAwMMcBRDxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2Vz\ +dDo6RHluRGlnZXN0Pjo6b3V0cHV0X3NpemU6Omg2NGNlMTRiMDA0OTI2NzkxyAFEPEQgYXMgZGlnZX\ +N0OjpkeW5fZGlnZXN0OjpEeW5EaWdlc3Q+OjpvdXRwdXRfc2l6ZTo6aDgzNjZjMjZjZDY2ZDgxNTPJ\ +AUQ8RCBhcyBkaWdlc3Q6OmR5bl9kaWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpoMGFiNT\ +YwY2NkZDZlNTY0MsoBRDxEIGFzIGRpZ2VzdDo6ZHluX2RpZ2VzdDo6RHluRGlnZXN0Pjo6b3V0cHV0\ +X3NpemU6Omg0ZGY1ZTliZDM5NTRmMDJhywFEPEQgYXMgZGlnZXN0OjpkeW5fZGlnZXN0OjpEeW5EaW\ +dlc3Q+OjpvdXRwdXRfc2l6ZTo6aDBhYWIzNzE0ZjBlNzlmMmLMAUQ8RCBhcyBkaWdlc3Q6OmR5bl9k\ +aWdlc3Q6OkR5bkRpZ2VzdD46Om91dHB1dF9zaXplOjpoMzU3YjE3ZjM0YmRkMTA5ZM0BCnJ1c3RfcG\ +FuaWPOATdzdGQ6OmFsbG9jOjpkZWZhdWx0X2FsbG9jX2Vycm9yX2hvb2s6OmhjYzhmNmMxNGExY2Yw\ +MjBhzwFvY29yZTo6cHRyOjpkcm9wX2luX3BsYWNlPCZjb3JlOjppdGVyOjphZGFwdGVyczo6Y29waW\ +VkOjpDb3BpZWQ8Y29yZTo6c2xpY2U6Oml0ZXI6Okl0ZXI8dTg+Pj46OmgzZTliNzFhMDc5ZDE2ZTAz\ +AO+AgIAACXByb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS41NS\ +4wIChjOGRmY2ZlMDQgMjAyMS0wOS0wNikGd2FscnVzBjAuMTkuMAx3YXNtLWJpbmRnZW4GMC4yLjgx\ +\ +"); + const wasmModule4 = new WebAssembly.Module(wasmBytes); + return new WebAssembly.Instance(wasmModule4, imports2); +} +function base64decode1(b64) { + const binString = atob(b64); + const size = binString.length; + const bytes25 = new Uint8Array(size); + for(let i265 = 0; i265 < size; i265++){ + bytes25[i265] = binString.charCodeAt(i265); + } + return bytes25; +} const hexTable2 = new TextEncoder().encode("0123456789abcdef"); -function encode9(src) { +function encode11(src) { const dst = new Uint8Array(src.length * 2); - for(let i262 = 0; i262 < dst.length; i262++){ - const v31 = src[i262]; - dst[i262 * 2] = hexTable2[v31 >> 4]; - dst[i262 * 2 + 1] = hexTable2[v31 & 0x0f]; + for(let i266 = 0; i266 < dst.length; i266++){ + const v38 = src[i266]; + dst[i266 * 2] = hexTable2[v38 >> 4]; + dst[i266 * 2 + 1] = hexTable2[v38 & 0x0f]; } return dst; } @@ -67875,7 +70479,7 @@ class Hash1 { #hash; #digested; constructor(algorithm){ - this.#hash = create_hash1(algorithm); + this.#hash = instantiate1().create_hash(algorithm); this.#digested = false; } update(message) { @@ -67892,23 +70496,24 @@ class Hash1 { throw new Error("hash: `data` is invalid type"); } const chunkSize = 65_536; + const updateHash = instantiate1().update_hash; for(let offset127 = 0; offset127 < view.byteLength; offset127 += chunkSize){ - update_hash1(this.#hash, new Uint8Array(view.buffer, view.byteOffset + offset127, Math.min(65_536, view.byteLength - offset127))); + updateHash(this.#hash, new Uint8Array(view.buffer, view.byteOffset + offset127, Math.min(65_536, view.byteLength - offset127))); } return this; } digest() { if (this.#digested) throw new Error("hash: already digested"); this.#digested = true; - return digest_hash1(this.#hash); + return instantiate1().digest_hash(this.#hash); } toString(format22 = "hex") { const finalized = new Uint8Array(this.digest()); switch(format22){ case "hex": - return new TextDecoder().decode(encode9(finalized)); + return new TextDecoder().decode(encode11(finalized)); case "base64": - return encode1(finalized); + return encode2(finalized); default: throw new Error("hash: invalid format"); } @@ -67918,18 +70523,18 @@ function createHash1(algorithm) { return new Hash1(algorithm); } function i2osp(x22, length) { - const t103 = new Uint8Array(length); - for(let i263 = length - 1; i263 >= 0; i263--){ + const t105 = new Uint8Array(length); + for(let i267 = length - 1; i267 >= 0; i267--){ if (x22 === 0n) break; - t103[i263] = Number(x22 & 255n); + t105[i267] = Number(x22 & 255n); x22 = x22 >> 8n; } - return t103; + return t105; } function os2ip(m35) { - let n150 = 0n; - for (const c60 of m35)n150 = (n150 << 8n) + BigInt(c60); - return n150; + let n151 = 0n; + for (const c60 of m35)n151 = (n151 << 8n) + BigInt(c60); + return n151; } function mgf1(seed, length, hash11) { let counter = 0n; @@ -67960,29 +70565,29 @@ function str2bytes(str135) { const encoder13 = new TextEncoder(); return encoder13.encode(str135); } -function xor1(a39, b36) { +function xor1(a39, b39) { const c62 = new Uint8Array(a39.length); - for(let i264 = 0; i264 < c62.length; i264++){ - c62[i264] = a39[i264] ^ b36[i264 % b36.length]; + for(let i268 = 0; i268 < c62.length; i268++){ + c62[i268] = a39[i268] ^ b39[i268 % b39.length]; } return c62; } function concat3(...arg) { - const length = arg.reduce((a40, b37)=>a40 + b37.length, 0); + const length = arg.reduce((a40, b40)=>a40 + b40.length, 0); const c63 = new Uint8Array(length); let ptr = 0; - for(let i265 = 0; i265 < arg.length; i265++){ - c63.set(arg[i265], ptr); - ptr += arg[i265].length; + for(let i269 = 0; i269 < arg.length; i269++){ + c63.set(arg[i269], ptr); + ptr += arg[i269].length; } return c63; } function random_bytes(length) { - const n151 = new Uint8Array(length); - for(let i266 = 0; i266 < length; i266++)n151[i266] = (Math.random() * 254 | 0) + 1; - return n151; + const n152 = new Uint8Array(length); + for(let i270 = 0; i270 < length; i270++)n152[i270] = (Math.random() * 254 | 0) + 1; + return n152; } -function get_key_size(n152) { +function get_key_size(n153) { const size_list = [ 64n, 128n, @@ -67991,11 +70596,11 @@ function get_key_size(n152) { 1024n ]; for (const size of size_list){ - if (n152 < 1n << size * 8n) return Number(size); + if (n153 < 1n << size * 8n) return Number(size); } return 2048; } -function base64_to_binary(b38) { +function base64_to_binary(b41) { const base64_map = [ -2, -2, @@ -68254,30 +70859,30 @@ function base64_to_binary(b38) { -2, -2 ]; - let e132 = ""; - for (const c64 of b38){ - const v32 = base64_map[c64.charCodeAt(0)]; - if (v32 === -2) throw "Invalid"; - if (v32 >= 0) e132 += c64; + let e133 = ""; + for (const c64 of b41){ + const v39 = base64_map[c64.charCodeAt(0)]; + if (v39 === -2) throw "Invalid"; + if (v39 >= 0) e133 += c64; } - const bytes24 = new Uint8Array(Math.floor(e132.length * 6 / 8)); + const bytes26 = new Uint8Array(Math.floor(e133.length * 6 / 8)); let ptr = 0; - for(let i267 = 0; i267 < e132.length; i267 += 4){ - const remain = e132.length - i267; + for(let i271 = 0; i271 < e133.length; i271 += 4){ + const remain = e133.length - i271; if (remain >= 4) { - const v33 = (base64_map[e132.charCodeAt(i267)] << 18) + (base64_map[e132.charCodeAt(i267 + 1)] << 12) + (base64_map[e132.charCodeAt(i267 + 2)] << 6) + base64_map[e132.charCodeAt(i267 + 3)]; - bytes24[ptr++] = v33 >> 16 % 256; - bytes24[ptr++] = v33 >> 8 % 256; - bytes24[ptr++] = v33 % 256; + const v40 = (base64_map[e133.charCodeAt(i271)] << 18) + (base64_map[e133.charCodeAt(i271 + 1)] << 12) + (base64_map[e133.charCodeAt(i271 + 2)] << 6) + base64_map[e133.charCodeAt(i271 + 3)]; + bytes26[ptr++] = v40 >> 16 % 256; + bytes26[ptr++] = v40 >> 8 % 256; + bytes26[ptr++] = v40 % 256; } else if (remain === 3) { - const v34 = (base64_map[e132.charCodeAt(i267)] << 10) + (base64_map[e132.charCodeAt(i267 + 1)] << 4) + (base64_map[e132.charCodeAt(i267 + 2)] >> 2); - bytes24[ptr++] = v34 >> 8 % 256; - bytes24[ptr++] = v34 % 256; + const v41 = (base64_map[e133.charCodeAt(i271)] << 10) + (base64_map[e133.charCodeAt(i271 + 1)] << 4) + (base64_map[e133.charCodeAt(i271 + 2)] >> 2); + bytes26[ptr++] = v41 >> 8 % 256; + bytes26[ptr++] = v41 % 256; } else if (remain === 2) { - bytes24[ptr++] = (base64_map[e132.charCodeAt(i267)] << 2) + (base64_map[e132.charCodeAt(i267 + 1)] >> 4); + bytes26[ptr++] = (base64_map[e133.charCodeAt(i271)] << 2) + (base64_map[e133.charCodeAt(i271 + 1)] >> 4); } } - return bytes24; + return bytes26; } function eme_oaep_encode(label, m36, k18, algorithm) { const labelHash = new Uint8Array(createHash1(algorithm).update(label).digest()); @@ -68306,36 +70911,36 @@ function eme_oaep_decode(label, c65, k19, algorithm) { while(ptr < db.length && db[ptr] === 0)ptr++; return db.slice(ptr + 1); } -function rsaep(n153, e133, m37) { - return power_mod(m37, e133, n153); +function rsaep(n154, e134, m37) { + return power_mod(m37, e134, n154); } -function rsadp(n154, d19, c66) { - return power_mod(c66, d19, n154); +function rsadp(n155, d19, c66) { + return power_mod(c66, d19, n155); } -function rsa_oaep_encrypt(bytes25, n155, e134, m38, algorithm) { - const em = eme_oaep_encode(new Uint8Array(0), m38, bytes25, algorithm); +function rsa_oaep_encrypt(bytes27, n156, e135, m38, algorithm) { + const em = eme_oaep_encode(new Uint8Array(0), m38, bytes27, algorithm); const msg60 = os2ip(em); - const c67 = rsaep(n155, e134, msg60); - return i2osp(c67, bytes25); + const c67 = rsaep(n156, e135, msg60); + return i2osp(c67, bytes27); } -function rsa_oaep_decrypt(bytes26, n156, d20, c68, algorithm) { - const em = rsadp(n156, d20, os2ip(c68)); - const m39 = eme_oaep_decode(new Uint8Array(0), i2osp(em, bytes26), bytes26, algorithm); +function rsa_oaep_decrypt(bytes28, n157, d20, c68, algorithm) { + const em = rsadp(n157, d20, os2ip(c68)); + const m39 = eme_oaep_decode(new Uint8Array(0), i2osp(em, bytes28), bytes28, algorithm); return m39; } -function rsa_pkcs1_encrypt(bytes27, n157, e135, m40) { - const p56 = concat3([ +function rsa_pkcs1_encrypt(bytes29, n158, e136, m40) { + const p57 = concat3([ 0x00, 0x02 - ], random_bytes(bytes27 - m40.length - 3), [ + ], random_bytes(bytes29 - m40.length - 3), [ 0x00 ], m40); - const msg61 = os2ip(p56); - const c69 = rsaep(n157, e135, msg61); - return i2osp(c69, bytes27); + const msg61 = os2ip(p57); + const c69 = rsaep(n158, e136, msg61); + return i2osp(c69, bytes29); } -function rsa_pkcs1_decrypt(bytes28, n158, d22, c70) { - const em = i2osp(rsadp(n158, d22, os2ip(c70)), bytes28); +function rsa_pkcs1_decrypt(bytes30, n159, d22, c70) { + const em = i2osp(rsadp(n159, d22, os2ip(c70)), bytes30); if (em[0] !== 0) throw "Decryption error"; if (em[1] !== 0x02) throw "Decryption error"; let psCursor = 2; @@ -68345,117 +70950,117 @@ function rsa_pkcs1_decrypt(bytes28, n158, d22, c70) { if (psCursor < 10) throw "Decryption error"; return em.slice(psCursor + 1); } -function ber_decode(bytes29, from, to) { - return ber_next(bytes29); +function ber_decode(bytes31, from, to) { + return ber_next(bytes31); } -function ber_sequence(bytes30, from, length) { +function ber_sequence(bytes32, from, length) { const end = from + length; let res = []; let ptr = from; while(ptr < end){ - const next = ber_next(bytes30, ptr); + const next = ber_next(bytes32, ptr); res.push(next); ptr += next.totalLength; } return res; } -function ber_integer(bytes31, from, length) { - let n159 = 0n; - for (const b39 of bytes31.slice(from, from + length)){ - n159 = (n159 << 8n) + BigInt(b39); +function ber_integer(bytes33, from, length) { + let n160 = 0n; + for (const b42 of bytes33.slice(from, from + length)){ + n160 = (n160 << 8n) + BigInt(b42); } - return n159; + return n160; } -function ber_oid(bytes32, from, length) { +function ber_oid(bytes34, from, length) { const id = [ - bytes32[from] / 40 | 0, - bytes32[from] % 40, + bytes34[from] / 40 | 0, + bytes34[from] % 40, ]; - let value494 = 0; - for (const b40 of bytes32.slice(from + 1, from + length)){ - if (b40 > 128) value494 += value494 * 127 + (b40 - 128); + let value498 = 0; + for (const b43 of bytes34.slice(from + 1, from + length)){ + if (b43 > 128) value498 += value498 * 127 + (b43 - 128); else { - value494 = value494 * 128 + b40; - id.push(value494); - value494 = 0; + value498 = value498 * 128 + b43; + id.push(value498); + value498 = 0; } } return id.join("."); } -function ber_unknown(bytes33, from, length) { - return bytes33.slice(from, from + length); +function ber_unknown(bytes35, from, length) { + return bytes35.slice(from, from + length); } -function ber_simple(n160) { - if (Array.isArray(n160.value)) return n160.value.map((x23)=>ber_simple(x23)); - return n160.value; +function ber_simple(n162) { + if (Array.isArray(n162.value)) return n162.value.map((x23)=>ber_simple(x23)); + return n162.value; } -function ber_next(bytes34, from, to) { +function ber_next(bytes36, from, to) { if (!from) from = 0; - if (!to) to = bytes34.length; + if (!to) to = bytes36.length; let ptr = from; - const type74 = bytes34[ptr++]; - let size = bytes34[ptr++]; + const type67 = bytes36[ptr++]; + let size = bytes36[ptr++]; if ((size & 0x80) > 0) { let ext = size - 0x80; size = 0; while(--ext >= 0){ - size = (size << 8) + bytes34[ptr++]; - } - } - let value495 = null; - if (type74 === 0x30) { - value495 = ber_sequence(bytes34, ptr, size); - } else if (type74 === 0x2) { - value495 = ber_integer(bytes34, ptr, size); - } else if (type74 === 0x3) { - value495 = ber_sequence(bytes34, ptr + 1, size - 1); - } else if (type74 === 0x5) { - value495 = null; - } else if (type74 === 0x6) { - value495 = ber_oid(bytes34, ptr, size); + size = (size << 8) + bytes36[ptr++]; + } + } + let value499 = null; + if (type67 === 0x30) { + value499 = ber_sequence(bytes36, ptr, size); + } else if (type67 === 0x2) { + value499 = ber_integer(bytes36, ptr, size); + } else if (type67 === 0x3) { + value499 = ber_sequence(bytes36, ptr + 1, size - 1); + } else if (type67 === 0x5) { + value499 = null; + } else if (type67 === 0x6) { + value499 = ber_oid(bytes36, ptr, size); } else { - value495 = ber_unknown(bytes34, ptr, size); + value499 = ber_unknown(bytes36, ptr, size); } return { totalLength: ptr - from + size, - type: type74, + type: type67, length: size, - value: value495 + value: value499 }; } class RSA { - static encrypt(message, key151, options103) { - if (!key151.e) throw "Invalid RSA key"; + static encrypt(message, key153, options105) { + if (!key153.e) throw "Invalid RSA key"; const computedOptions = { hash: "sha1", padding: "oaep", - ...options103 + ...options105 }; const computedMessage = typeof message === "string" ? str2bytes(message) : message; if (computedOptions.padding === "oaep") { - return rsa_oaep_encrypt(key151.length, key151.n, key151.e, computedMessage, computedOptions.hash); + return rsa_oaep_encrypt(key153.length, key153.n, key153.e, computedMessage, computedOptions.hash); } else if (computedOptions.padding === "pkcs1") { - return rsa_pkcs1_encrypt(key151.length, key151.n, key151.e, computedMessage); + return rsa_pkcs1_encrypt(key153.length, key153.n, key153.e, computedMessage); } throw "Invalid parameters"; } - static decrypt(ciper, key152, options104) { - if (!key152.d) throw "Invalid RSA key"; + static decrypt(ciper, key154, options106) { + if (!key154.d) throw "Invalid RSA key"; const computedOptions = { hash: "sha1", padding: "oaep", - ...options104 + ...options106 }; if (computedOptions.padding === "oaep") { - return rsa_oaep_decrypt(key152.length, key152.n, key152.d, ciper, computedOptions.hash); + return rsa_oaep_decrypt(key154.length, key154.n, key154.d, ciper, computedOptions.hash); } else if (computedOptions.padding === "pkcs1") { - return rsa_pkcs1_decrypt(key152.length, key152.n, key152.d, ciper); + return rsa_pkcs1_decrypt(key154.length, key154.n, key154.d, ciper); } throw "Invalid parameters"; } - static parseKey(key153) { - if (key153.indexOf("-----BEGIN RSA PRIVATE KEY-----") === 0) { - const trimmedKey = key153.substr(31, key153.length - 61); + static parseKey(key155) { + if (key155.indexOf("-----BEGIN RSA PRIVATE KEY-----") === 0) { + const trimmedKey = key155.substr(31, key155.length - 61); const parseKey = ber_simple(ber_decode(base64_to_binary(trimmedKey))); return { n: parseKey[1], @@ -68463,8 +71068,8 @@ class RSA { e: parseKey[2], length: get_key_size(parseKey[1]) }; - } else if (key153.indexOf("-----BEGIN PUBLIC KEY-----") === 0) { - const trimmedKey = key153.substr(26, key153.length - 51); + } else if (key155.indexOf("-----BEGIN PUBLIC KEY-----") === 0) { + const trimmedKey = key155.substr(26, key155.length - 51); const parseKey = ber_simple(ber_decode(base64_to_binary(trimmedKey))); return { length: get_key_size(parseKey[1][0][0]), @@ -68475,9 +71080,9 @@ class RSA { throw "Invalid key format"; } } -function encryptWithPublicKey(key154, data87) { - const publicKey = RSA.parseKey(key154); - return RSA.encrypt(data87, publicKey); +function encryptWithPublicKey(key156, data90) { + const publicKey = RSA.parseKey(key156); + return RSA.encrypt(data90, publicKey); } let scramble, password; function start(scramble_, password_) { @@ -68520,8 +71125,8 @@ function encryptWithKey(packet) { const publicKey = parsePublicKey(packet); const len77 = password.length; let passwordBuffer = new Uint8Array(len77 + 1); - for(let n162 = 0; n162 < len77; n162++){ - passwordBuffer[n162] = password.charCodeAt(n162); + for(let n163 = 0; n163 < len77; n163++){ + passwordBuffer[n163] = password.charCodeAt(n163); } passwordBuffer[len77] = 0x00; const encryptedPassword = encrypt(passwordBuffer, scramble, publicKey); @@ -68534,9 +71139,9 @@ function encryptWithKey(packet) { function parsePublicKey(packet) { return packet.body.skip(1).readNullTerminatedString(); } -function encrypt(password1, scramble1, key155) { +function encrypt(password1, scramble1, key157) { const stage1 = xor(password1, scramble1); - const encrypted = encryptWithPublicKey(key155, stage1); + const encrypted = encryptWithPublicKey(key157, stage1); return encrypted; } function terminate() { @@ -68544,11 +71149,11 @@ function terminate() { done: true }; } -const mod29 = { +const mod28 = { start: start }; const __default27 = { - caching_sha2_password: mod29 + caching_sha2_password: mod28 }; var ConnectionState; (function(ConnectionState1) { @@ -68593,12 +71198,12 @@ class Connection { try { let receive = await this.nextPacket(); const handshakePacket = parseHandshake(receive.body); - const data88 = buildAuth(handshakePacket, { + const data91 = buildAuth(handshakePacket, { username, password: password4, db: this.config.db }); - await new SendPacket(data88, 0x1).send(this.conn); + await new SendPacket(data91, 0x1).send(this.conn); this.state = ConnectionState.CONNECTING; this.serverVersion = handshakePacket.serverVersion; this.capabilities = handshakePacket.serverCapabilities; @@ -68632,10 +71237,10 @@ class Connection { } const header = receive.body.readUint8(); if (header === 0xff) { - const error52 = parseError(receive.body, this); - logger.error(`connect error(${error52.code}): ${error52.message}`); + const error60 = parseError(receive.body, this); + logger.error(`connect error(${error60.code}): ${error60.message}`); this.close(); - throw new Error(error52.message); + throw new Error(error60.message); } else { logger.info(`connected to ${this.remoteAddr}`); this.state = ConnectionState.CONNECTED; @@ -68643,9 +71248,9 @@ class Connection { if (this.config.charset) { await this.execute(`SET NAMES ${this.config.charset}`); } - } catch (error53) { + } catch (error61) { this.close(); - throw error53; + throw error61; } } async connect() { @@ -68659,13 +71264,13 @@ class Connection { let packet; try { packet = await new ReceivePacket().parse(this.conn); - } catch (error54) { + } catch (error62) { if (this._timedOut) { throw new ResponseTimeoutError("Connection read timed out"); } timeoutTimer && clearTimeout(timeoutTimer); this.close(); - throw error54; + throw error62; } timeoutTimer && clearTimeout(timeoutTimer); if (!packet) { @@ -68674,8 +71279,8 @@ class Connection { } if (packet.type === PacketType.ERR_Packet) { packet.body.skip(1); - const error55 = parseError(packet.body, this); - throw new Error(error55.message); + const error63 = parseError(packet.body, this); + throw new Error(error63.message); } return packet; } @@ -68715,9 +71320,9 @@ class Connection { throw new ConnnectionError("Must be connected first"); } } - const data89 = buildQuery(sql, params); + const data92 = buildQuery(sql, params); try { - await new SendPacket(data89, 0).send(this.conn); + await new SendPacket(data92, 0).send(this.conn); let receive = await this.nextPacket(); if (receive.type === PacketType.OK_Packet) { receive.body.skip(1); @@ -68763,9 +71368,9 @@ class Connection { fields, iterator: this.buildIterator(fields) }; - } catch (error56) { + } catch (error64) { this.close(); - throw error56; + throw error64; } } buildIterator(fields) { @@ -68776,10 +71381,10 @@ class Connection { done: true }; } - const value496 = parseRow(receive.body, fields); + const value500 = parseRow(receive.body, fields); return { done: false, - value: value496 + value: value500 }; }; return { @@ -68826,7 +71431,7 @@ class DeferredStack { } return item; } - const defer3 = deferred(); + const defer3 = deferred1(); this._queue.push(defer3); return await defer3; } @@ -68868,8 +71473,8 @@ class PoolConnection extends Connection { this._pool.remove(this); try { this.close(); - } catch (error57) { - logger.warning(`error closing idle connection`, error57); + } catch (error65) { + logger.warning(`error closing idle connection`, error65); } }, this.config.idleTimeout); } @@ -69000,12 +71605,12 @@ class Client2 { const result = await processor(connection); await connection.execute("COMMIT"); return result; - } catch (error58) { + } catch (error66) { if (connection.state == ConnectionState.CONNECTED) { - logger.info(`ROLLBACK: ${error58.message}`); + logger.info(`ROLLBACK: ${error66.message}`); await connection.execute("ROLLBACK"); } - throw error58; + throw error66; } }); } @@ -69016,7 +71621,7 @@ class Client2 { } } } -const base64abc3 = [ +const base64abc5 = [ "A", "B", "C", @@ -69082,25 +71687,25 @@ const base64abc3 = [ "+", "/", ]; -function encode10(data90) { - const uint8 = typeof data90 === "string" ? new TextEncoder().encode(data90) : data90 instanceof Uint8Array ? data90 : new Uint8Array(data90); - let result = "", i268; +function encode12(data93) { + const uint8 = typeof data93 === "string" ? new TextEncoder().encode(data93) : data93 instanceof Uint8Array ? data93 : new Uint8Array(data93); + let result = "", i272; const l = uint8.length; - for(i268 = 2; i268 < l; i268 += 3){ - result += base64abc3[uint8[i268 - 2] >> 2]; - result += base64abc3[(uint8[i268 - 2] & 0x03) << 4 | uint8[i268 - 1] >> 4]; - result += base64abc3[(uint8[i268 - 1] & 0x0f) << 2 | uint8[i268] >> 6]; - result += base64abc3[uint8[i268] & 0x3f]; - } - if (i268 === l + 1) { - result += base64abc3[uint8[i268 - 2] >> 2]; - result += base64abc3[(uint8[i268 - 2] & 0x03) << 4]; + for(i272 = 2; i272 < l; i272 += 3){ + result += base64abc5[uint8[i272 - 2] >> 2]; + result += base64abc5[(uint8[i272 - 2] & 0x03) << 4 | uint8[i272 - 1] >> 4]; + result += base64abc5[(uint8[i272 - 1] & 0x0f) << 2 | uint8[i272] >> 6]; + result += base64abc5[uint8[i272] & 0x3f]; + } + if (i272 === l + 1) { + result += base64abc5[uint8[i272 - 2] >> 2]; + result += base64abc5[(uint8[i272 - 2] & 0x03) << 4]; result += "=="; } - if (i268 === l) { - result += base64abc3[uint8[i268 - 2] >> 2]; - result += base64abc3[(uint8[i268 - 2] & 0x03) << 4 | uint8[i268 - 1] >> 4]; - result += base64abc3[(uint8[i268 - 1] & 0x0f) << 2]; + if (i272 === l) { + result += base64abc5[uint8[i272 - 2] >> 2]; + result += base64abc5[(uint8[i272 - 2] & 0x03) << 4 | uint8[i272 - 1] >> 4]; + result += base64abc5[(uint8[i272 - 1] & 0x0f) << 2]; result += "="; } return result; @@ -69108,14 +71713,14 @@ function encode10(data90) { function decode9(b64) { const binString = atob(b64); const size = binString.length; - const bytes35 = new Uint8Array(size); - for(let i269 = 0; i269 < size; i269++){ - bytes35[i269] = binString.charCodeAt(i269); + const bytes37 = new Uint8Array(size); + for(let i273 = 0; i273 < size; i273++){ + bytes37[i273] = binString.charCodeAt(i273); } - return bytes35; + return bytes37; } -const mod30 = { - encode: encode10, +const mod29 = { + encode: encode12, decode: decode9 }; class Tokenizer { @@ -69136,11 +71741,11 @@ class Tokenizer { for (const rule of rules){ const result = rule.test(string); if (result) { - const { value: value497 , length } = result; + const { value: value501 , length } = result; index += length; string = string.slice(length); const token = { - ...rule.fn(value497), + ...rule.fn(value501), index }; yield receiver(token); @@ -69159,20 +71764,20 @@ class Tokenizer { return tokens; } } -function digits(value498, count = 2) { - return String(value498).padStart(count, "0"); +function digits(value502, count = 2) { + return String(value502).padStart(count, "0"); } -function createLiteralTestFunction(value499) { +function createLiteralTestFunction(value503) { return (string)=>{ - return string.startsWith(value499) ? { - value: value499, - length: value499.length + return string.startsWith(value503) ? { + value: value503, + length: value503.length } : undefined; }; } -function createMatchTestFunction(match29) { +function createMatchTestFunction(match26) { return (string)=>{ - const result = match29.exec(string); + const result = match26.exec(string); if (result) return { value: result, length: result[0].length @@ -69303,23 +71908,23 @@ const defaultRules = [ }, { test: createLiteralTestFunction("a"), - fn: (value500)=>({ + fn: (value504)=>({ type: "dayPeriod", - value: value500 + value: value504 }) }, { test: createMatchTestFunction(/^(')(?\\.|[^\']*)\1/), - fn: (match30)=>({ + fn: (match27)=>({ type: "literal", - value: match30.groups.value + value: match27.groups.value }) }, { test: createMatchTestFunction(/^.+?\s*/), - fn: (match31)=>({ + fn: (match28)=>({ type: "literal", - value: match31[0] + value: match28[0] }) }, ]; @@ -69327,33 +71932,33 @@ class DateTimeFormatter { #format; constructor(formatString, rules = defaultRules){ const tokenizer = new Tokenizer(rules); - this.#format = tokenizer.tokenize(formatString, ({ type: type75 , value: value501 , hour12 })=>{ + this.#format = tokenizer.tokenize(formatString, ({ type: type68 , value: value505 , hour12 })=>{ const result = { - type: type75, - value: value501 + type: type68, + value: value505 }; if (hour12) result.hour12 = hour12; return result; }); } - format(date, options105 = {}) { + format(date, options107 = {}) { let string = ""; - const utc = options105.timeZone === "UTC"; + const utc = options107.timeZone === "UTC"; for (const token of this.#format){ - const type76 = token.type; - switch(type76){ + const type69 = token.type; + switch(type69){ case "year": { - const value502 = utc ? date.getUTCFullYear() : date.getFullYear(); + const value506 = utc ? date.getUTCFullYear() : date.getFullYear(); switch(token.value){ case "numeric": { - string += value502; + string += value506; break; } case "2-digit": { - string += digits(value502, 2).slice(-2); + string += digits(value506, 2).slice(-2); break; } default: @@ -69363,16 +71968,16 @@ class DateTimeFormatter { } case "month": { - const value503 = (utc ? date.getUTCMonth() : date.getMonth()) + 1; + const value507 = (utc ? date.getUTCMonth() : date.getMonth()) + 1; switch(token.value){ case "numeric": { - string += value503; + string += value507; break; } case "2-digit": { - string += digits(value503, 2); + string += digits(value507, 2); break; } default: @@ -69382,16 +71987,16 @@ class DateTimeFormatter { } case "day": { - const value504 = utc ? date.getUTCDate() : date.getDate(); + const value508 = utc ? date.getUTCDate() : date.getDate(); switch(token.value){ case "numeric": { - string += value504; + string += value508; break; } case "2-digit": { - string += digits(value504, 2); + string += digits(value508, 2); break; } default: @@ -69401,17 +72006,17 @@ class DateTimeFormatter { } case "hour": { - let value505 = utc ? date.getUTCHours() : date.getHours(); - value505 -= token.hour12 && date.getHours() > 12 ? 12 : 0; + let value509 = utc ? date.getUTCHours() : date.getHours(); + value509 -= token.hour12 && date.getHours() > 12 ? 12 : 0; switch(token.value){ case "numeric": { - string += value505; + string += value509; break; } case "2-digit": { - string += digits(value505, 2); + string += digits(value509, 2); break; } default: @@ -69421,16 +72026,16 @@ class DateTimeFormatter { } case "minute": { - const value506 = utc ? date.getUTCMinutes() : date.getMinutes(); + const value510 = utc ? date.getUTCMinutes() : date.getMinutes(); switch(token.value){ case "numeric": { - string += value506; + string += value510; break; } case "2-digit": { - string += digits(value506, 2); + string += digits(value510, 2); break; } default: @@ -69440,16 +72045,16 @@ class DateTimeFormatter { } case "second": { - const value507 = utc ? date.getUTCSeconds() : date.getSeconds(); + const value511 = utc ? date.getUTCSeconds() : date.getSeconds(); switch(token.value){ case "numeric": { - string += value507; + string += value511; break; } case "2-digit": { - string += digits(value507, 2); + string += digits(value511, 2); break; } default: @@ -69459,8 +72064,8 @@ class DateTimeFormatter { } case "fractionalSecond": { - const value508 = utc ? date.getUTCMilliseconds() : date.getMilliseconds(); - string += digits(value508, Number(token.value)); + const value512 = utc ? date.getUTCMilliseconds() : date.getMilliseconds(); + string += digits(value512, Number(token.value)); break; } case "timeZoneName": @@ -69486,20 +72091,20 @@ class DateTimeFormatter { parseToParts(string) { const parts7 = []; for (const token of this.#format){ - const type77 = token.type; - let value509 = ""; + const type70 = token.type; + let value513 = ""; switch(token.type){ case "year": { switch(token.value){ case "numeric": { - value509 = /^\d{1,4}/.exec(string)?.[0]; + value513 = /^\d{1,4}/.exec(string)?.[0]; break; } case "2-digit": { - value509 = /^\d{1,2}/.exec(string)?.[0]; + value513 = /^\d{1,2}/.exec(string)?.[0]; break; } } @@ -69510,27 +72115,27 @@ class DateTimeFormatter { switch(token.value){ case "numeric": { - value509 = /^\d{1,2}/.exec(string)?.[0]; + value513 = /^\d{1,2}/.exec(string)?.[0]; break; } case "2-digit": { - value509 = /^\d{2}/.exec(string)?.[0]; + value513 = /^\d{2}/.exec(string)?.[0]; break; } case "narrow": { - value509 = /^[a-zA-Z]+/.exec(string)?.[0]; + value513 = /^[a-zA-Z]+/.exec(string)?.[0]; break; } case "short": { - value509 = /^[a-zA-Z]+/.exec(string)?.[0]; + value513 = /^[a-zA-Z]+/.exec(string)?.[0]; break; } case "long": { - value509 = /^[a-zA-Z]+/.exec(string)?.[0]; + value513 = /^[a-zA-Z]+/.exec(string)?.[0]; break; } default: @@ -69543,12 +72148,12 @@ class DateTimeFormatter { switch(token.value){ case "numeric": { - value509 = /^\d{1,2}/.exec(string)?.[0]; + value513 = /^\d{1,2}/.exec(string)?.[0]; break; } case "2-digit": { - value509 = /^\d{2}/.exec(string)?.[0]; + value513 = /^\d{2}/.exec(string)?.[0]; break; } default: @@ -69561,16 +72166,16 @@ class DateTimeFormatter { switch(token.value){ case "numeric": { - value509 = /^\d{1,2}/.exec(string)?.[0]; - if (token.hour12 && parseInt(value509) > 12) { + value513 = /^\d{1,2}/.exec(string)?.[0]; + if (token.hour12 && parseInt(value513) > 12) { console.error(`Trying to parse hour greater than 12. Use 'H' instead of 'h'.`); } break; } case "2-digit": { - value509 = /^\d{2}/.exec(string)?.[0]; - if (token.hour12 && parseInt(value509) > 12) { + value513 = /^\d{2}/.exec(string)?.[0]; + if (token.hour12 && parseInt(value513) > 12) { console.error(`Trying to parse hour greater than 12. Use 'HH' instead of 'hh'.`); } break; @@ -69585,12 +72190,12 @@ class DateTimeFormatter { switch(token.value){ case "numeric": { - value509 = /^\d{1,2}/.exec(string)?.[0]; + value513 = /^\d{1,2}/.exec(string)?.[0]; break; } case "2-digit": { - value509 = /^\d{2}/.exec(string)?.[0]; + value513 = /^\d{2}/.exec(string)?.[0]; break; } default: @@ -69603,12 +72208,12 @@ class DateTimeFormatter { switch(token.value){ case "numeric": { - value509 = /^\d{1,2}/.exec(string)?.[0]; + value513 = /^\d{1,2}/.exec(string)?.[0]; break; } case "2-digit": { - value509 = /^\d{2}/.exec(string)?.[0]; + value513 = /^\d{2}/.exec(string)?.[0]; break; } default: @@ -69618,17 +72223,17 @@ class DateTimeFormatter { } case "fractionalSecond": { - value509 = new RegExp(`^\\d{${token.value}}`).exec(string)?.[0]; + value513 = new RegExp(`^\\d{${token.value}}`).exec(string)?.[0]; break; } case "timeZoneName": { - value509 = token.value; + value513 = token.value; break; } case "dayPeriod": { - value509 = /^(A|P)M/.exec(string)?.[0]; + value513 = /^(A|P)M/.exec(string)?.[0]; break; } case "literal": @@ -69636,20 +72241,20 @@ class DateTimeFormatter { if (!string.startsWith(token.value)) { throw Error(`Literal "${token.value}" not found "${string.slice(0, 25)}"`); } - value509 = token.value; + value513 = token.value; break; } default: throw Error(`${token.type} ${token.value}`); } - if (!value509) { - throw Error(`value not valid for token { ${type77} ${value509} } ${string.slice(0, 25)}`); + if (!value513) { + throw Error(`value not valid for token { ${type70} ${value513} } ${string.slice(0, 25)}`); } parts7.push({ - type: type77, - value: value509 + type: type70, + value: value513 }); - string = string.slice(value509.length); + string = string.slice(value513.length); } if (string.length) { throw Error(`datetime string was not fully parsed! ${string.slice(0, 25)}`); @@ -69667,8 +72272,8 @@ class DateTimeFormatter { "second", "fractionalSecond", ]; - for (const type78 of typeArray){ - const current = parts8.findIndex((el)=>el.type === type78); + for (const type71 of typeArray){ + const current = parts8.findIndex((el)=>el.type === type71); if (current !== -1) { result = result.concat(parts8.splice(current, 1)); } @@ -69684,46 +72289,46 @@ class DateTimeFormatter { switch(part1.type){ case "year": { - const value510 = Number(part1.value.padStart(4, "20")); - utc ? date.setUTCFullYear(value510) : date.setFullYear(value510); + const value514 = Number(part1.value.padStart(4, "20")); + utc ? date.setUTCFullYear(value514) : date.setFullYear(value514); break; } case "month": { - const value511 = Number(part1.value) - 1; - utc ? date.setUTCMonth(value511) : date.setMonth(value511); + const value515 = Number(part1.value) - 1; + utc ? date.setUTCMonth(value515) : date.setMonth(value515); break; } case "day": { - const value512 = Number(part1.value); - utc ? date.setUTCDate(value512) : date.setDate(value512); + const value516 = Number(part1.value); + utc ? date.setUTCDate(value516) : date.setDate(value516); break; } case "hour": { - let value513 = Number(part1.value); + let value517 = Number(part1.value); const dayPeriod = parts9.find((part)=>part.type === "dayPeriod"); - if (dayPeriod?.value === "PM") value513 += 12; - utc ? date.setUTCHours(value513) : date.setHours(value513); + if (dayPeriod?.value === "PM") value517 += 12; + utc ? date.setUTCHours(value517) : date.setHours(value517); break; } case "minute": { - const value514 = Number(part1.value); - utc ? date.setUTCMinutes(value514) : date.setMinutes(value514); + const value518 = Number(part1.value); + utc ? date.setUTCMinutes(value518) : date.setMinutes(value518); break; } case "second": { - const value515 = Number(part1.value); - utc ? date.setUTCSeconds(value515) : date.setSeconds(value515); + const value519 = Number(part1.value); + utc ? date.setUTCSeconds(value519) : date.setSeconds(value519); break; } case "fractionalSecond": { - const value516 = Number(part1.value); - utc ? date.setUTCMilliseconds(value516) : date.setMilliseconds(value516); + const value520 = Number(part1.value); + utc ? date.setUTCMilliseconds(value520) : date.setMilliseconds(value520); break; } } @@ -69776,8 +72381,8 @@ function weekOfYear(date) { return Math.ceil((workingDate.getTime() - yearStart.getTime() + DAY) / WEEK); } function toIMF(date) { - function dtPad(v35, lPad = 2) { - return v35.padStart(lPad, "0"); + function dtPad(v42, lPad = 2) { + return v42.padStart(lPad, "0"); } const d23 = dtPad(date.getUTCDate().toString()); const h26 = dtPad(date.getUTCHours().toString()); @@ -69813,9 +72418,9 @@ function isLeap(year) { const yearNumber = year instanceof Date ? year.getFullYear() : year; return yearNumber % 4 === 0 && yearNumber % 100 !== 0 || yearNumber % 400 === 0; } -function difference(from, to, options106) { - const uniqueUnits = options106?.units ? [ - ...new Set(options106?.units) +function difference(from, to, options108) { + const uniqueUnits = options108?.units ? [ + ...new Set(options108?.units) ] : [ "milliseconds", "seconds", @@ -69876,7 +72481,7 @@ function calculateMonthsDifference(bigger, smaller) { const months2 = compareResult * (calendarDifferences - isLastMonthNotFull); return months2 === 0 ? 0 : months2; } -const mod31 = function() { +const mod30 = function() { return { SECOND: 1e3, MINUTE: MINUTE, @@ -69898,7 +72503,7 @@ class DenoStdInternalError5 extends Error { this.name = "DenoStdInternalError"; } } -function assert8(expr, msg62 = "") { +function assert9(expr, msg62 = "") { if (!expr) { throw new DenoStdInternalError5(msg62); } @@ -69962,13 +72567,13 @@ class BufReader6 { if (this.w >= this.buf.byteLength) { throw Error("bufio: tried to fill full buffer"); } - for(let i270 = 100; i270 > 0; i270--){ + for(let i274 = 100; i274 > 0; i274--){ const rr = await this.rd.read(this.buf.subarray(this.w)); if (rr === null) { this.eof = true; return; } - assert8(rr >= 0, "negative read"); + assert9(rr >= 0, "negative read"); this.w += rr; if (rr > 0) { return; @@ -69984,32 +72589,32 @@ class BufReader6 { this.rd = rd; this.eof = false; } - async read(p57) { - let rr = p57.byteLength; - if (p57.byteLength === 0) return rr; + async read(p58) { + let rr = p58.byteLength; + if (p58.byteLength === 0) return rr; if (this.r === this.w) { - if (p57.byteLength >= this.buf.byteLength) { - const rr = await this.rd.read(p57); + if (p58.byteLength >= this.buf.byteLength) { + const rr = await this.rd.read(p58); const nread = rr ?? 0; - assert8(nread >= 0, "negative read"); + assert9(nread >= 0, "negative read"); return rr; } this.r = 0; this.w = 0; rr = await this.rd.read(this.buf); if (rr === 0 || rr === null) return rr; - assert8(rr >= 0, "negative read"); + assert9(rr >= 0, "negative read"); this.w += rr; } - const copied = copy5(this.buf.subarray(this.r, this.w), p57, 0); + const copied = copy5(this.buf.subarray(this.r, this.w), p58, 0); this.r += copied; return copied; } - async readFull(p58) { + async readFull(p59) { let bytesRead = 0; - while(bytesRead < p58.length){ + while(bytesRead < p59.length){ try { - const rr = await this.read(p58.subarray(bytesRead)); + const rr = await this.read(p59.subarray(bytesRead)); if (rr === null) { if (bytesRead === 0) { return null; @@ -70020,19 +72625,19 @@ class BufReader6 { bytesRead += rr; } catch (err) { if (err instanceof PartialReadError5) { - err.partial = p58.subarray(0, bytesRead); + err.partial = p59.subarray(0, bytesRead); } else if (err instanceof Error) { - const e136 = new PartialReadError5(); - e136.partial = p58.subarray(0, bytesRead); - e136.stack = err.stack; - e136.message = err.message; - e136.cause = err.cause; + const e137 = new PartialReadError5(); + e137.partial = p59.subarray(0, bytesRead); + e137.stack = err.stack; + e137.message = err.message; + e137.cause = err.cause; throw err; } throw err; } } - return p58; + return p59; } async readByte() { while(this.r === this.w){ @@ -70062,14 +72667,14 @@ class BufReader6 { let partial; if (err instanceof PartialReadError5) { partial = err.partial; - assert8(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + assert9(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); } if (!(err instanceof BufferFullError6)) { throw err; } partial = err.partial; if (!this.eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR7) { - assert8(this.r > 0, "bufio: tried to rewind past start of buffer"); + assert9(this.r > 0, "bufio: tried to rewind past start of buffer"); this.r--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -70105,11 +72710,11 @@ class BufReader6 { let s57 = 0; let slice; while(true){ - let i271 = this.buf.subarray(this.r + s57, this.w).indexOf(delim); - if (i271 >= 0) { - i271 += s57; - slice = this.buf.subarray(this.r, this.r + i271 + 1); - this.r += i271 + 1; + let i275 = this.buf.subarray(this.r + s57, this.w).indexOf(delim); + if (i275 >= 0) { + i275 += s57; + slice = this.buf.subarray(this.r, this.r + i275 + 1); + this.r += i275 + 1; break; } if (this.eof) { @@ -70134,11 +72739,11 @@ class BufReader6 { if (err instanceof PartialReadError5) { err.partial = slice; } else if (err instanceof Error) { - const e137 = new PartialReadError5(); - e137.partial = slice; - e137.stack = err.stack; - e137.message = err.message; - e137.cause = err.cause; + const e138 = new PartialReadError5(); + e138.partial = slice; + e138.stack = err.stack; + e138.message = err.message; + e138.cause = err.cause; throw err; } throw err; @@ -70158,11 +72763,11 @@ class BufReader6 { if (err instanceof PartialReadError5) { err.partial = this.buf.subarray(this.r, this.w); } else if (err instanceof Error) { - const e138 = new PartialReadError5(); - e138.partial = this.buf.subarray(this.r, this.w); - e138.stack = err.stack; - e138.message = err.message; - e138.cause = err.cause; + const e139 = new PartialReadError5(); + e139.partial = this.buf.subarray(this.r, this.w); + e139.stack = err.stack; + e139.message = err.message; + e139.cause = err.cause; throw err; } throw err; @@ -70214,44 +72819,44 @@ class BufWriter5 extends AbstractBufBase5 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p59 = this.buf.subarray(0, this.usedBufferBytes); + const p60 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p59.length){ - nwritten += await this.writer.write(p59.subarray(nwritten)); + while(nwritten < p60.length){ + nwritten += await this.writer.write(p60.subarray(nwritten)); } - } catch (e139) { - if (e139 instanceof Error) { - this.err = e139; + } catch (e140) { + if (e140 instanceof Error) { + this.err = e140; } - throw e139; + throw e140; } this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - async write(data91) { + async write(data94) { if (this.err !== null) throw this.err; - if (data91.length === 0) return 0; + if (data94.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data91.byteLength > this.available()){ + while(data94.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = await this.writer.write(data91); - } catch (e140) { - if (e140 instanceof Error) { - this.err = e140; + numBytesWritten = await this.writer.write(data94); + } catch (e141) { + if (e141 instanceof Error) { + this.err = e141; } - throw e140; + throw e141; } } else { - numBytesWritten = copy5(data91, this.buf, this.usedBufferBytes); + numBytesWritten = copy5(data94, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; await this.flush(); } totalBytesWritten += numBytesWritten; - data91 = data91.subarray(numBytesWritten); + data94 = data94.subarray(numBytesWritten); } - numBytesWritten = copy5(data91, this.buf, this.usedBufferBytes); + numBytesWritten = copy5(data94, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -70279,44 +72884,44 @@ class BufWriterSync5 extends AbstractBufBase5 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p60 = this.buf.subarray(0, this.usedBufferBytes); + const p61 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p60.length){ - nwritten += this.writer.writeSync(p60.subarray(nwritten)); + while(nwritten < p61.length){ + nwritten += this.writer.writeSync(p61.subarray(nwritten)); } - } catch (e141) { - if (e141 instanceof Error) { - this.err = e141; + } catch (e142) { + if (e142 instanceof Error) { + this.err = e142; } - throw e141; + throw e142; } this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - writeSync(data92) { + writeSync(data95) { if (this.err !== null) throw this.err; - if (data92.length === 0) return 0; + if (data95.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data92.byteLength > this.available()){ + while(data95.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = this.writer.writeSync(data92); - } catch (e142) { - if (e142 instanceof Error) { - this.err = e142; + numBytesWritten = this.writer.writeSync(data95); + } catch (e143) { + if (e143 instanceof Error) { + this.err = e143; } - throw e142; + throw e143; } } else { - numBytesWritten = copy5(data92, this.buf, this.usedBufferBytes); + numBytesWritten = copy5(data95, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; this.flush(); } totalBytesWritten += numBytesWritten; - data92 = data92.subarray(numBytesWritten); + data95 = data95.subarray(numBytesWritten); } - numBytesWritten = copy5(data92, this.buf, this.usedBufferBytes); + numBytesWritten = copy5(data95, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -70328,12 +72933,12 @@ let cachedTextDecoder3 = new TextDecoder("utf-8", { fatal: true }); cachedTextDecoder3.decode(); -let cachegetUint8Memory03 = null; +let cachegetUint8Memory01 = null; function getUint8Memory03() { - if (cachegetUint8Memory03 === null || cachegetUint8Memory03.buffer !== wasm3.memory.buffer) { - cachegetUint8Memory03 = new Uint8Array(wasm3.memory.buffer); + if (cachegetUint8Memory01 === null || cachegetUint8Memory01.buffer !== wasm3.memory.buffer) { + cachegetUint8Memory01 = new Uint8Array(wasm3.memory.buffer); } - return cachegetUint8Memory03; + return cachegetUint8Memory01; } function getStringFromWasm03(ptr, len78) { return cachedTextDecoder3.decode(getUint8Memory03().subarray(ptr, ptr + len78)); @@ -70379,9 +72984,9 @@ function passStringToWasm03(arg, malloc, realloc) { const mem4 = getUint8Memory03(); let offset128 = 0; for(; offset128 < len79; offset128++){ - const code84 = arg.charCodeAt(offset128); - if (code84 > 0x7F) break; - mem4[ptr + offset128] = code84; + const code85 = arg.charCodeAt(offset128); + if (code85 > 0x7F) break; + mem4[ptr + offset128] = code85; } if (offset128 !== len79) { if (offset128 !== 0) { @@ -70413,18 +73018,18 @@ function passArray8ToWasm02(arg, malloc) { WASM_VECTOR_LEN3 = arg.length; return ptr; } -function update_hash2(hash12, data93) { +function update_hash2(hash12, data96) { _assertClass2(hash12, DenoHash2); - var ptr0 = passArray8ToWasm02(data93, wasm3.__wbindgen_malloc); + var ptr0 = passArray8ToWasm02(data96, wasm3.__wbindgen_malloc); var len0 = WASM_VECTOR_LEN3; wasm3.update_hash(hash12.ptr, ptr0, len0); } -let cachegetInt32Memory03 = null; +let cachegetInt32Memory01 = null; function getInt32Memory03() { - if (cachegetInt32Memory03 === null || cachegetInt32Memory03.buffer !== wasm3.memory.buffer) { - cachegetInt32Memory03 = new Int32Array(wasm3.memory.buffer); + if (cachegetInt32Memory01 === null || cachegetInt32Memory01.buffer !== wasm3.memory.buffer) { + cachegetInt32Memory01 = new Int32Array(wasm3.memory.buffer); } - return cachegetInt32Memory03; + return cachegetInt32Memory01; } function getArrayU8FromWasm03(ptr, len80) { return getUint8Memory03().subarray(ptr / 1, ptr / 1 + len80); @@ -70435,9 +73040,9 @@ function digest_hash2(hash13) { _assertClass2(hash13, DenoHash2); wasm3.digest_hash(retptr, hash13.ptr); var r0 = getInt32Memory03()[retptr / 4 + 0]; - var r116 = getInt32Memory03()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm03(r0, r116).slice(); - wasm3.__wbindgen_free(r0, r116 * 1); + var r117 = getInt32Memory03()[retptr / 4 + 1]; + var v0 = getArrayU8FromWasm03(r0, r117).slice(); + wasm3.__wbindgen_free(r0, r117 * 1); return v0; } finally{ wasm3.__wbindgen_add_to_stack_pointer(16); @@ -70476,7 +73081,7 @@ const imports3 = { } } }; -const wasmModule3 = new WebAssembly.Module(decode9("AGFzbQEAAAAB64CAgAAQYAAAYAF/AGABfwF/YAF/AX5gAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH\ +const wasmModule1 = new WebAssembly.Module(decode9("AGFzbQEAAAAB64CAgAAQYAAAYAF/AGABfwF/YAF/AX5gAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH\ 9/f38Bf2AFf39/f38AYAV/f39/fwF/YAZ/f39/f38Bf2AFf39/fn8AYAd/f39+f39/AX9gAn9+AGAC\ fn8BfwKMgYCAAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFV9fd2JpbmRnZW5fc3RyaW5nX25ldw\ AFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxBfX3diaW5kZ2VuX3Rocm93AAQYX193YmluZGdlbl9w\ @@ -72727,15 +75332,15 @@ dGQ6OmFsbG9jOjpkZWZhdWx0X2FsbG9jX2Vycm9yX2hvb2s6OmgwZWNjZGFjMjRmZGEzNzhmxgFvY2\ ZWQ8Y29yZTo6c2xpY2U6Oml0ZXI6Okl0ZXI8dTg+Pj46OmhmN2JkMDQzN2MzZTg4NjM5AO+AgIAACX\ Byb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS41NC4wIChhMTc4\ ZDAzMjIgMjAyMS0wNy0yNikGd2FscnVzBjAuMTkuMAx3YXNtLWJpbmRnZW4GMC4yLjc0")); -const wasmInstance3 = new WebAssembly.Instance(wasmModule3, imports3); -const wasm3 = wasmInstance3.exports; +const wasmInstance1 = new WebAssembly.Instance(wasmModule1, imports3); +const wasm3 = wasmInstance1.exports; const hexTable3 = new TextEncoder().encode("0123456789abcdef"); -function encode11(src) { +function encode13(src) { const dst = new Uint8Array(src.length * 2); - for(let i272 = 0; i272 < dst.length; i272++){ - const v36 = src[i272]; - dst[i272 * 2] = hexTable3[v36 >> 4]; - dst[i272 * 2 + 1] = hexTable3[v36 & 0x0f]; + for(let i276 = 0; i276 < dst.length; i276++){ + const v43 = src[i276]; + dst[i276 * 2] = hexTable3[v43 >> 4]; + dst[i276 * 2 + 1] = hexTable3[v43 & 0x0f]; } return dst; } @@ -72774,9 +75379,9 @@ class Hash2 { const finalized = new Uint8Array(this.digest()); switch(format23){ case "hex": - return new TextDecoder().decode(encode11(finalized)); + return new TextDecoder().decode(encode13(finalized)); case "base64": - return encode10(finalized); + return encode12(finalized); default: throw new Error("hash: invalid format"); } @@ -72950,46 +75555,46 @@ class Sha256 { const length = msg63.length; const blocks1 = this.#blocks; while(index < length){ - let i273; + let i277; if (this.#hashed) { this.#hashed = false; blocks1[0] = this.#block; blocks1[16] = blocks1[1] = blocks1[2] = blocks1[3] = blocks1[4] = blocks1[5] = blocks1[6] = blocks1[7] = blocks1[8] = blocks1[9] = blocks1[10] = blocks1[11] = blocks1[12] = blocks1[13] = blocks1[14] = blocks1[15] = 0; } if (typeof msg63 !== "string") { - for(i273 = this.#start; index < length && i273 < 64; ++index){ - blocks1[i273 >> 2] |= msg63[index] << SHIFT[(i273++) & 3]; + for(i277 = this.#start; index < length && i277 < 64; ++index){ + blocks1[i277 >> 2] |= msg63[index] << SHIFT[(i277++) & 3]; } } else { - for(i273 = this.#start; index < length && i273 < 64; ++index){ - let code85 = msg63.charCodeAt(index); - if (code85 < 0x80) { - blocks1[i273 >> 2] |= code85 << SHIFT[(i273++) & 3]; - } else if (code85 < 0x800) { - blocks1[i273 >> 2] |= (0xc0 | code85 >> 6) << SHIFT[(i273++) & 3]; - blocks1[i273 >> 2] |= (0x80 | code85 & 0x3f) << SHIFT[(i273++) & 3]; - } else if (code85 < 0xd800 || code85 >= 0xe000) { - blocks1[i273 >> 2] |= (0xe0 | code85 >> 12) << SHIFT[(i273++) & 3]; - blocks1[i273 >> 2] |= (0x80 | code85 >> 6 & 0x3f) << SHIFT[(i273++) & 3]; - blocks1[i273 >> 2] |= (0x80 | code85 & 0x3f) << SHIFT[(i273++) & 3]; + for(i277 = this.#start; index < length && i277 < 64; ++index){ + let code86 = msg63.charCodeAt(index); + if (code86 < 0x80) { + blocks1[i277 >> 2] |= code86 << SHIFT[(i277++) & 3]; + } else if (code86 < 0x800) { + blocks1[i277 >> 2] |= (0xc0 | code86 >> 6) << SHIFT[(i277++) & 3]; + blocks1[i277 >> 2] |= (0x80 | code86 & 0x3f) << SHIFT[(i277++) & 3]; + } else if (code86 < 0xd800 || code86 >= 0xe000) { + blocks1[i277 >> 2] |= (0xe0 | code86 >> 12) << SHIFT[(i277++) & 3]; + blocks1[i277 >> 2] |= (0x80 | code86 >> 6 & 0x3f) << SHIFT[(i277++) & 3]; + blocks1[i277 >> 2] |= (0x80 | code86 & 0x3f) << SHIFT[(i277++) & 3]; } else { - code85 = 0x10000 + ((code85 & 0x3ff) << 10 | msg63.charCodeAt(++index) & 0x3ff); - blocks1[i273 >> 2] |= (0xf0 | code85 >> 18) << SHIFT[(i273++) & 3]; - blocks1[i273 >> 2] |= (0x80 | code85 >> 12 & 0x3f) << SHIFT[(i273++) & 3]; - blocks1[i273 >> 2] |= (0x80 | code85 >> 6 & 0x3f) << SHIFT[(i273++) & 3]; - blocks1[i273 >> 2] |= (0x80 | code85 & 0x3f) << SHIFT[(i273++) & 3]; + code86 = 0x10000 + ((code86 & 0x3ff) << 10 | msg63.charCodeAt(++index) & 0x3ff); + blocks1[i277 >> 2] |= (0xf0 | code86 >> 18) << SHIFT[(i277++) & 3]; + blocks1[i277 >> 2] |= (0x80 | code86 >> 12 & 0x3f) << SHIFT[(i277++) & 3]; + blocks1[i277 >> 2] |= (0x80 | code86 >> 6 & 0x3f) << SHIFT[(i277++) & 3]; + blocks1[i277 >> 2] |= (0x80 | code86 & 0x3f) << SHIFT[(i277++) & 3]; } } } - this.#lastByteIndex = i273; - this.#bytes += i273 - this.#start; - if (i273 >= 64) { + this.#lastByteIndex = i277; + this.#bytes += i277 - this.#start; + if (i277 >= 64) { this.#block = blocks1[16]; - this.#start = i273 - 64; + this.#start = i277 - 64; this.hash(); this.#hashed = true; } else { - this.#start = i273; + this.#start = i277; } } if (this.#bytes > 4294967295) { @@ -73004,11 +75609,11 @@ class Sha256 { } this.#finalized = true; const blocks2 = this.#blocks; - const i274 = this.#lastByteIndex; + const i278 = this.#lastByteIndex; blocks2[16] = this.#block; - blocks2[i274 >> 2] |= EXTRA[i274 & 3]; + blocks2[i278 >> 2] |= EXTRA[i278 & 3]; this.#block = blocks2[16]; - if (i274 >= 56) { + if (i278 >= 56) { if (!this.#hashed) { this.hash(); } @@ -73021,11 +75626,11 @@ class Sha256 { } hash() { let a41 = this.#h0; - let b41 = this.#h1; + let b44 = this.#h1; let c72 = this.#h2; let d24 = this.#h3; - let e143 = this.#h4; - let f14 = this.#h5; + let e144 = this.#h4; + let f10 = this.#h5; let g3 = this.#h6; let h27 = this.#h7; const blocks3 = this.#blocks; @@ -73046,7 +75651,7 @@ class Sha256 { s114 = (t115 >>> 17 | t115 << 15) ^ (t115 >>> 19 | t115 << 13) ^ t115 >>> 10; blocks3[j31] = blocks3[j31 - 16] + s0 + blocks3[j31 - 7] + s114 << 0; } - bc = b41 & c72; + bc = b44 & c72; for(let j1 = 0; j1 < 64; j1 += 4){ if (this.#first) { if (this.#is224) { @@ -73063,10 +75668,10 @@ class Sha256 { this.#first = false; } else { s0 = (a41 >>> 2 | a41 << 30) ^ (a41 >>> 13 | a41 << 19) ^ (a41 >>> 22 | a41 << 10); - s114 = (e143 >>> 6 | e143 << 26) ^ (e143 >>> 11 | e143 << 21) ^ (e143 >>> 25 | e143 << 7); - ab = a41 & b41; + s114 = (e144 >>> 6 | e144 << 26) ^ (e144 >>> 11 | e144 << 21) ^ (e144 >>> 25 | e144 << 7); + ab = a41 & b44; maj = ab ^ a41 & c72 ^ bc; - ch = e143 & f14 ^ ~e143 & g3; + ch = e144 & f10 ^ ~e144 & g3; t115 = h27 + s114 + ch + K1[j1] + blocks3[j1]; t215 = s0 + maj; h27 = d24 + t115 << 0; @@ -73075,8 +75680,8 @@ class Sha256 { s0 = (d24 >>> 2 | d24 << 30) ^ (d24 >>> 13 | d24 << 19) ^ (d24 >>> 22 | d24 << 10); s114 = (h27 >>> 6 | h27 << 26) ^ (h27 >>> 11 | h27 << 21) ^ (h27 >>> 25 | h27 << 7); da = d24 & a41; - maj = da ^ d24 & b41 ^ ab; - ch = h27 & e143 ^ ~h27 & f14; + maj = da ^ d24 & b44 ^ ab; + ch = h27 & e144 ^ ~h27 & f10; t115 = g3 + s114 + ch + K1[j1 + 1] + blocks3[j1 + 1]; t215 = s0 + maj; g3 = c72 + t115 << 0; @@ -73085,27 +75690,27 @@ class Sha256 { s114 = (g3 >>> 6 | g3 << 26) ^ (g3 >>> 11 | g3 << 21) ^ (g3 >>> 25 | g3 << 7); cd = c72 & d24; maj = cd ^ c72 & a41 ^ da; - ch = g3 & h27 ^ ~g3 & e143; - t115 = f14 + s114 + ch + K1[j1 + 2] + blocks3[j1 + 2]; + ch = g3 & h27 ^ ~g3 & e144; + t115 = f10 + s114 + ch + K1[j1 + 2] + blocks3[j1 + 2]; t215 = s0 + maj; - f14 = b41 + t115 << 0; - b41 = t115 + t215 << 0; - s0 = (b41 >>> 2 | b41 << 30) ^ (b41 >>> 13 | b41 << 19) ^ (b41 >>> 22 | b41 << 10); - s114 = (f14 >>> 6 | f14 << 26) ^ (f14 >>> 11 | f14 << 21) ^ (f14 >>> 25 | f14 << 7); - bc = b41 & c72; - maj = bc ^ b41 & d24 ^ cd; - ch = f14 & g3 ^ ~f14 & h27; - t115 = e143 + s114 + ch + K1[j1 + 3] + blocks3[j1 + 3]; + f10 = b44 + t115 << 0; + b44 = t115 + t215 << 0; + s0 = (b44 >>> 2 | b44 << 30) ^ (b44 >>> 13 | b44 << 19) ^ (b44 >>> 22 | b44 << 10); + s114 = (f10 >>> 6 | f10 << 26) ^ (f10 >>> 11 | f10 << 21) ^ (f10 >>> 25 | f10 << 7); + bc = b44 & c72; + maj = bc ^ b44 & d24 ^ cd; + ch = f10 & g3 ^ ~f10 & h27; + t115 = e144 + s114 + ch + K1[j1 + 3] + blocks3[j1 + 3]; t215 = s0 + maj; - e143 = a41 + t115 << 0; + e144 = a41 + t115 << 0; a41 = t115 + t215 << 0; } this.#h0 = this.#h0 + a41 << 0; - this.#h1 = this.#h1 + b41 << 0; + this.#h1 = this.#h1 + b44 << 0; this.#h2 = this.#h2 + c72 << 0; this.#h3 = this.#h3 + d24 << 0; - this.#h4 = this.#h4 + e143 << 0; - this.#h5 = this.#h5 + f14 << 0; + this.#h4 = this.#h4 + e144 << 0; + this.#h5 = this.#h5 + f10 << 0; this.#h6 = this.#h6 + g3 << 0; this.#h7 = this.#h7 + h27 << 0; } @@ -73200,47 +75805,47 @@ class HmacSha256 extends Sha256 { #sharedMemory; constructor(secretKey, is224 = false, sharedMemory = false){ super(is224, sharedMemory); - let key156; + let key158; if (typeof secretKey === "string") { - const bytes36 = []; + const bytes38 = []; const length = secretKey.length; let index = 0; - for(let i275 = 0; i275 < length; ++i275){ - let code86 = secretKey.charCodeAt(i275); - if (code86 < 0x80) { - bytes36[index++] = code86; - } else if (code86 < 0x800) { - bytes36[index++] = 0xc0 | code86 >> 6; - bytes36[index++] = 0x80 | code86 & 0x3f; - } else if (code86 < 0xd800 || code86 >= 0xe000) { - bytes36[index++] = 0xe0 | code86 >> 12; - bytes36[index++] = 0x80 | code86 >> 6 & 0x3f; - bytes36[index++] = 0x80 | code86 & 0x3f; + for(let i279 = 0; i279 < length; ++i279){ + let code87 = secretKey.charCodeAt(i279); + if (code87 < 0x80) { + bytes38[index++] = code87; + } else if (code87 < 0x800) { + bytes38[index++] = 0xc0 | code87 >> 6; + bytes38[index++] = 0x80 | code87 & 0x3f; + } else if (code87 < 0xd800 || code87 >= 0xe000) { + bytes38[index++] = 0xe0 | code87 >> 12; + bytes38[index++] = 0x80 | code87 >> 6 & 0x3f; + bytes38[index++] = 0x80 | code87 & 0x3f; } else { - code86 = 0x10000 + ((code86 & 0x3ff) << 10 | secretKey.charCodeAt(++i275) & 0x3ff); - bytes36[index++] = 0xf0 | code86 >> 18; - bytes36[index++] = 0x80 | code86 >> 12 & 0x3f; - bytes36[index++] = 0x80 | code86 >> 6 & 0x3f; - bytes36[index++] = 0x80 | code86 & 0x3f; + code87 = 0x10000 + ((code87 & 0x3ff) << 10 | secretKey.charCodeAt(++i279) & 0x3ff); + bytes38[index++] = 0xf0 | code87 >> 18; + bytes38[index++] = 0x80 | code87 >> 12 & 0x3f; + bytes38[index++] = 0x80 | code87 >> 6 & 0x3f; + bytes38[index++] = 0x80 | code87 & 0x3f; } } - key156 = bytes36; + key158 = bytes38; } else { if (secretKey instanceof ArrayBuffer) { - key156 = new Uint8Array(secretKey); + key158 = new Uint8Array(secretKey); } else { - key156 = secretKey; + key158 = secretKey; } } - if (key156.length > 64) { - key156 = new Sha256(is224, true).update(key156).array(); + if (key158.length > 64) { + key158 = new Sha256(is224, true).update(key158).array(); } const oKeyPad = []; const iKeyPad = []; - for(let i276 = 0; i276 < 64; ++i276){ - const b42 = key156[i276] || 0; - oKeyPad[i276] = 0x5c ^ b42; - iKeyPad[i276] = 0x36 ^ b42; + for(let i280 = 0; i280 < 64; ++i280){ + const b45 = key158[i280] || 0; + oKeyPad[i280] = 0x5c ^ b45; + iKeyPad[i280] = 0x36 ^ b45; } this.update(iKeyPad); this.#oKeyPad = oKeyPad; @@ -73260,29 +75865,29 @@ class HmacSha256 extends Sha256 { } } } -function deferred1() { +function deferred2() { let methods5; - let state61 = "pending"; - const promise = new Promise((resolve35, reject23)=>{ + let state62 = "pending"; + const promise = new Promise((resolve37, reject24)=>{ methods5 = { - async resolve (value517) { - await value517; - state61 = "fulfilled"; - resolve35(value517); + async resolve (value521) { + await value521; + state62 = "fulfilled"; + resolve37(value521); }, reject (reason) { - state61 = "rejected"; - reject23(reason); + state62 = "rejected"; + reject24(reason); } }; }); Object.defineProperty(promise, "state", { - get: ()=>state61 + get: ()=>state62 }); return Object.assign(promise, methods5); } -const { Deno: Deno2 } = globalThis; -const noColor3 = typeof Deno2?.noColor === "boolean" ? Deno2.noColor : true; +const { Deno: Deno3 } = globalThis; +const noColor3 = typeof Deno3?.noColor === "boolean" ? Deno3.noColor : true; let enabled3 = !noColor3; function code3(open, close) { return { @@ -73333,13 +75938,13 @@ class DeferredStack1 { this.#size++; return await this.#creator(); } - const d25 = deferred1(); + const d25 = deferred2(); this.#queue.push(d25); await d25; return this.#array.pop(); } - push(value518) { - this.#array.push(value518); + push(value522) { + this.#array.push(value522); if (this.#queue.length > 0) { const d26 = this.#queue.shift(); d26.resolve(); @@ -73398,22 +76003,22 @@ class PacketReader { this.#buffer = buffer46; } readInt16() { - const value519 = readInt16BE(this.#buffer, this.#offset); + const value523 = readInt16BE(this.#buffer, this.#offset); this.#offset += 2; - return value519; + return value523; } readInt32() { - const value520 = readInt32BE(this.#buffer, this.#offset); + const value524 = readInt32BE(this.#buffer, this.#offset); this.#offset += 4; - return value520; + return value524; } readByte() { return this.readBytes(1)[0]; } readBytes(length) { - const start59 = this.#offset; - const end = start59 + length; - const slice = this.#buffer.slice(start59, end); + const start60 = this.#offset; + const end = start60 + length; + const slice = this.#buffer.slice(start60, end); this.#offset = end; return slice; } @@ -73423,13 +76028,13 @@ class PacketReader { return slice; } readString(length) { - const bytes37 = this.readBytes(length); - return this.#decoder.decode(bytes37); + const bytes39 = this.readBytes(length); + return this.#decoder.decode(bytes39); } readCString() { - const start60 = this.#offset; - const end = this.#buffer.indexOf(0, start60); - const slice = this.#buffer.slice(start60, end); + const start61 = this.#offset; + const end = this.#buffer.indexOf(0, start61); + const slice = this.#buffer.slice(start61, end); this.#offset = end + 1; return this.#decoder.decode(slice); } @@ -73508,10 +76113,10 @@ class PacketWriter { this.#offset = 5; this.#headerPosition = 0; } - addHeader(code87, last48) { + addHeader(code88, last48) { const origOffset = this.#offset; this.#offset = this.#headerPosition; - this.#buffer[this.#offset++] = code87; + this.#buffer[this.#offset++] = code88; this.addInt32(origOffset - (this.#headerPosition + 1)); this.#headerPosition = origOffset; this.#offset = origOffset; @@ -73521,14 +76126,14 @@ class PacketWriter { } return this; } - join(code88) { - if (code88) { - this.addHeader(code88, true); + join(code89) { + if (code89) { + this.addHeader(code89, true); } - return this.#buffer.slice(code88 ? 0 : 5, this.#offset); + return this.#buffer.slice(code89 ? 0 : 5, this.#offset); } - flush(code89) { - const result = this.join(code89); + flush(code90) { + const result = this.join(code90); this.clear(); return result; } @@ -73799,27 +76404,27 @@ const DATETIME_RE = /^(\d{1,})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})(\.\d{1,}) const HEX = 16; const HEX_PREFIX_REGEX = /^\\x/; const TIMEZONE_RE = /([Z+-])(\d{2})?:?(\d{2})?:?(\d{2})?/; -function decodeBigint(value521) { - return BigInt(value521); +function decodeBigint(value525) { + return BigInt(value525); } -function decodeBigintArray(value522) { - return parseArray(value522, (x24)=>BigInt(x24)); +function decodeBigintArray(value526) { + return parseArray(value526, (x24)=>BigInt(x24)); } -function decodeBoolean(value523) { - return value523[0] === "t"; +function decodeBoolean(value527) { + return value527[0] === "t"; } -function decodeBooleanArray(value524) { - return parseArray(value524, (x25)=>x25[0] === "t"); +function decodeBooleanArray(value528) { + return parseArray(value528, (x25)=>x25[0] === "t"); } -function decodeBox(value525) { - const [a42, b43] = value525.match(/\(.*?\)/g) || []; +function decodeBox(value529) { + const [a42, b46] = value529.match(/\(.*?\)/g) || []; return { a: decodePoint(a42), - b: decodePoint(b43) + b: decodePoint(b46) }; } -function decodeBoxArray(value526) { - return parseArray(value526, decodeBox, ";"); +function decodeBoxArray(value530) { + return parseArray(value530, decodeBox, ";"); } function decodeBytea(byteaStr) { if (HEX_PREFIX_REGEX.test(byteaStr)) { @@ -73828,52 +76433,52 @@ function decodeBytea(byteaStr) { return decodeByteaEscape(byteaStr); } } -function decodeByteaArray(value527) { - return parseArray(value527, decodeBytea); +function decodeByteaArray(value531) { + return parseArray(value531, decodeBytea); } function decodeByteaEscape(byteaStr) { - const bytes38 = []; - let i277 = 0; + const bytes40 = []; + let i281 = 0; let k20 = 0; - while(i277 < byteaStr.length){ - if (byteaStr[i277] !== "\\") { - bytes38.push(byteaStr.charCodeAt(i277)); - ++i277; + while(i281 < byteaStr.length){ + if (byteaStr[i281] !== "\\") { + bytes40.push(byteaStr.charCodeAt(i281)); + ++i281; } else { - if (/[0-7]{3}/.test(byteaStr.substr(i277 + 1, 3))) { - bytes38.push(parseInt(byteaStr.substr(i277 + 1, 3), 8)); - i277 += 4; + if (/[0-7]{3}/.test(byteaStr.substr(i281 + 1, 3))) { + bytes40.push(parseInt(byteaStr.substr(i281 + 1, 3), 8)); + i281 += 4; } else { let backslashes = 1; - while(i277 + backslashes < byteaStr.length && byteaStr[i277 + backslashes] === "\\"){ + while(i281 + backslashes < byteaStr.length && byteaStr[i281 + backslashes] === "\\"){ backslashes++; } for(k20 = 0; k20 < Math.floor(backslashes / 2); ++k20){ - bytes38.push(92); + bytes40.push(92); } - i277 += Math.floor(backslashes / 2) * 2; + i281 += Math.floor(backslashes / 2) * 2; } } } - return new Uint8Array(bytes38); + return new Uint8Array(bytes40); } function decodeByteaHex(byteaStr) { const bytesStr = byteaStr.slice(2); - const bytes39 = new Uint8Array(bytesStr.length / 2); - for(let i278 = 0, j32 = 0; i278 < bytesStr.length; i278 += 2, j32++){ - bytes39[j32] = parseInt(bytesStr[i278] + bytesStr[i278 + 1], HEX); + const bytes41 = new Uint8Array(bytesStr.length / 2); + for(let i282 = 0, j32 = 0; i282 < bytesStr.length; i282 += 2, j32++){ + bytes41[j32] = parseInt(bytesStr[i282] + bytesStr[i282 + 1], HEX); } - return bytes39; + return bytes41; } -function decodeCircle(value528) { - const [point, radius] = value528.substring(1, value528.length - 1).split(/,(?![^(]*\))/); +function decodeCircle(value532) { + const [point, radius] = value532.substring(1, value532.length - 1).split(/,(?![^(]*\))/); return { point: decodePoint(point), radius: radius }; } -function decodeCircleArray(value529) { - return parseArray(value529, decodeCircle); +function decodeCircleArray(value533) { + return parseArray(value533, decodeCircle); } function decodeDate(dateStr) { if (dateStr === "infinity") { @@ -73881,10 +76486,10 @@ function decodeDate(dateStr) { } else if (dateStr === "-infinity") { return Number(-Infinity); } - return mod31.parse(dateStr, "yyyy-MM-dd"); + return mod30.parse(dateStr, "yyyy-MM-dd"); } -function decodeDateArray(value530) { - return parseArray(value530, decodeDate); +function decodeDateArray(value534) { + return parseArray(value534, decodeDate); } function decodeDatetime(dateStr) { const matches = DATETIME_RE.exec(dateStr); @@ -73911,52 +76516,52 @@ function decodeDatetime(dateStr) { date1.setUTCFullYear(year); return date1; } -function decodeDatetimeArray(value531) { - return parseArray(value531, decodeDatetime); +function decodeDatetimeArray(value535) { + return parseArray(value535, decodeDatetime); } -function decodeInt(value532) { - return parseInt(value532, 10); +function decodeInt(value536) { + return parseInt(value536, 10); } -function decodeIntArray(value533) { - if (!value533) return null; - return parseArray(value533, decodeInt); +function decodeIntArray(value537) { + if (!value537) return null; + return parseArray(value537, decodeInt); } -function decodeJson(value534) { - return JSON.parse(value534); +function decodeJson(value538) { + return JSON.parse(value538); } -function decodeJsonArray(value535) { - return parseArray(value535, JSON.parse); +function decodeJsonArray(value539) { + return parseArray(value539, JSON.parse); } -function decodeLine(value536) { - const [a43, b44, c74] = value536.substring(1, value536.length - 1).split(","); +function decodeLine(value540) { + const [a43, b47, c74] = value540.substring(1, value540.length - 1).split(","); return { a: a43, - b: b44, + b: b47, c: c74 }; } -function decodeLineArray(value537) { - return parseArray(value537, decodeLine); +function decodeLineArray(value541) { + return parseArray(value541, decodeLine); } -function decodeLineSegment(value538) { - const [a44, b45] = value538.substring(1, value538.length - 1).match(/\(.*?\)/g) || []; +function decodeLineSegment(value542) { + const [a44, b48] = value542.substring(1, value542.length - 1).match(/\(.*?\)/g) || []; return { a: decodePoint(a44), - b: decodePoint(b45) + b: decodePoint(b48) }; } -function decodeLineSegmentArray(value539) { - return parseArray(value539, decodeLineSegment); +function decodeLineSegmentArray(value543) { + return parseArray(value543, decodeLineSegment); } -function decodePath(value540) { - const points = value540.substring(1, value540.length - 1).split(/,(?![^(]*\))/); +function decodePath(value544) { + const points = value544.substring(1, value544.length - 1).split(/,(?![^(]*\))/); return points.map(decodePoint); } -function decodePathArray(value541) { - return parseArray(value541, decodePath); +function decodePathArray(value545) { + return parseArray(value545, decodePath); } -function decodePoint(value542) { - const [x26, y9] = value542.substring(1, value542.length - 1).split(","); +function decodePoint(value546) { + const [x26, y9] = value546.substring(1, value546.length - 1).split(","); if (Number.isNaN(parseFloat(x26)) || Number.isNaN(parseFloat(y9))) { throw new Error(`Invalid point value: "${Number.isNaN(parseFloat(x26)) ? x26 : y9}"`); } @@ -73965,18 +76570,18 @@ function decodePoint(value542) { y: y9 }; } -function decodePointArray(value543) { - return parseArray(value543, decodePoint); +function decodePointArray(value547) { + return parseArray(value547, decodePoint); } -function decodePolygon(value544) { - return decodePath(value544); +function decodePolygon(value548) { + return decodePath(value548); } -function decodePolygonArray(value545) { - return parseArray(value545, decodePolygon); +function decodePolygonArray(value549) { + return parseArray(value549, decodePolygon); } function decodeStringArray(value1) { if (!value1) return null; - return parseArray(value1, (value546)=>value546); + return parseArray(value1, (value550)=>value550); } function decodeTimezoneOffset(dateStr) { const timeStr = dateStr.split(" ")[1]; @@ -73984,26 +76589,26 @@ function decodeTimezoneOffset(dateStr) { if (!matches) { return null; } - const type79 = matches[1]; - if (type79 === "Z") { + const type72 = matches[1]; + if (type72 === "Z") { return 0; } - const sign4 = type79 === "-" ? 1 : -1; + const sign4 = type72 === "-" ? 1 : -1; const hours = parseInt(matches[2], 10); const minutes = parseInt(matches[3] || "0", 10); const seconds = parseInt(matches[4] || "0", 10); const offset134 = hours * 3600 + minutes * 60 + seconds; return sign4 * offset134 * 1000; } -function decodeTid(value547) { - const [x27, y10] = value547.substring(1, value547.length - 1).split(","); +function decodeTid(value551) { + const [x27, y10] = value551.substring(1, value551.length - 1).split(","); return [ BigInt(x27), BigInt(y10) ]; } -function decodeTidArray(value548) { - return parseArray(value548, decodeTid); +function decodeTidArray(value552) { + return parseArray(value552, decodeTid); } class Column { constructor(name71, tableOid, index, typeOid, columnLength, typeModifier, format24){ @@ -74032,8 +76637,8 @@ const decoder6 = new TextDecoder(); function decodeBinary() { throw new Error("Not implemented!"); } -function decodeText(value549, typeOid) { - const strValue = decoder6.decode(value549); +function decodeText(value553, typeOid) { + const strValue = decoder6.decode(value553); switch(typeOid){ case Oid.bpchar: case Oid.char: @@ -74160,11 +76765,11 @@ function decodeText(value549, typeOid) { return strValue; } } -function decode10(value550, column) { +function decode10(value554, column) { if (column.format === Format.BINARY) { return decodeBinary(); } else if (column.format === Format.TEXT) { - return decodeText(value550, column.typeOid); + return decodeText(value554, column.typeOid); } else { throw new Error(`Unknown column format: ${column.format}`); } @@ -74193,8 +76798,8 @@ function encodeDate(date) { const encodedTz = `${tzSign}${tzHours}:${tzMinutes}`; return encodedDate + encodedTz; } -function escapeArrayElement(value551) { - const strValue = value551.toString(); +function escapeArrayElement(value555) { + const strValue = value555.toString(); const escapedValue = strValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); return `"${escapedValue}"`; } @@ -74211,30 +76816,30 @@ function encodeArray(array) { } else if (element instanceof Uint8Array) { throw new Error("Can't encode array of buffers."); } else { - const encodedElement = encode12(element); + const encodedElement = encode14(element); encodedArray += escapeArrayElement(encodedElement); } }); encodedArray += "}"; return encodedArray; } -function encodeBytes(value552) { - const hex = Array.from(value552).map((val)=>val < 0x10 ? `0${val.toString(16)}` : val.toString(16)).join(""); +function encodeBytes(value556) { + const hex = Array.from(value556).map((val)=>val < 0x10 ? `0${val.toString(16)}` : val.toString(16)).join(""); return `\\x${hex}`; } -function encode12(value553) { - if (value553 === null || typeof value553 === "undefined") { +function encode14(value557) { + if (value557 === null || typeof value557 === "undefined") { return null; - } else if (value553 instanceof Uint8Array) { - return encodeBytes(value553); - } else if (value553 instanceof Date) { - return encodeDate(value553); - } else if (value553 instanceof Array) { - return encodeArray(value553); - } else if (value553 instanceof Object) { - return JSON.stringify(value553); + } else if (value557 instanceof Uint8Array) { + return encodeBytes(value557); + } else if (value557 instanceof Date) { + return encodeDate(value557); + } else if (value557 instanceof Array) { + return encodeArray(value557); + } else if (value557 instanceof Object) { + return JSON.stringify(value557); } else { - return String(value553); + return String(value557); } } const commandTagRegexp = /^([A-Za-z]+)(?: (\d+))?(?: (\d+))?/; @@ -74278,13 +76883,13 @@ class QueryResult { this.rowDescription = description; } handleCommandComplete(commandTag) { - const match32 = commandTagRegexp.exec(commandTag); - if (match32) { - this.command = match32[1]; - if (match32[3]) { - this.rowCount = parseInt(match32[3], 10); + const match29 = commandTagRegexp.exec(commandTag); + if (match29) { + this.command = match29[1]; + if (match29[3]) { + this.rowCount = parseInt(match29[3], 10); } else { - this.rowCount = parseInt(match32[2], 10); + this.rowCount = parseInt(match29[2], 10); } } } @@ -74319,8 +76924,8 @@ function findDuplicatesInArray(array) { }, []); } function snakecaseToCamelcase(input) { - return input.split("_").reduce((res, word, i279)=>{ - if (i279 !== 0) { + return input.split("_").reduce((res, word, i283)=>{ + if (i283 !== 0) { word = word[0].toUpperCase() + word.slice(1); } res += word; @@ -74403,14 +77008,14 @@ class Query { this.args = this.#prepareArgs(config); } #prepareArgs(config) { - const encodingFn = config.encoder ? config.encoder : encode12; + const encodingFn = config.encoder ? config.encoder : encode14; return (config.args || []).map(encodingFn); } } class Message { reader; - constructor(type80, byteCount, body){ - this.type = type80; + constructor(type73, byteCount, body){ + this.type = type73; this.byteCount = byteCount; this.body = body; this.reader = new PacketReader(body); @@ -74497,7 +77102,7 @@ function parseNoticeMessage(message) { function parseRowDataMessage(message) { const field_count = message.reader.readInt16(); const row = []; - for(let i280 = 0; i280 < field_count; i280++){ + for(let i284 = 0; i284 < field_count; i284++){ const col_length = message.reader.readInt32(); if (col_length == -1) { row.push(null); @@ -74510,13 +77115,13 @@ function parseRowDataMessage(message) { function parseRowDescriptionMessage(message) { const column_count = message.reader.readInt16(); const columns = []; - for(let i281 = 0; i281 < column_count; i281++){ + for(let i285 = 0; i285 < column_count; i285++){ const column = new Column(message.reader.readCString(), message.reader.readInt32(), message.reader.readInt16(), message.reader.readInt32(), message.reader.readInt16(), message.reader.readInt32(), message.reader.readInt16()); columns.push(column); } return new RowDescription(column_count, columns); } -function assert9(cond) { +function assert10(cond) { if (!cond) { throw new Error("assertion failed"); } @@ -74556,7 +77161,7 @@ class Client3 { this.#state = State1.Init; } composeChallenge() { - assert9(this.#state === State1.Init); + assert10(this.#state === State1.Init); try { const header = "n,,"; const username = escape1(normalize13(this.#username)); @@ -74565,13 +77170,13 @@ class Client3 { this.#authMessage += challenge; this.#state = State1.ClientChallenge; return message; - } catch (e144) { + } catch (e145) { this.#state = State1.Failed; - throw e144; + throw e145; } } async receiveChallenge(challenge) { - assert9(this.#state === State1.ClientChallenge); + assert10(this.#state === State1.ClientChallenge); try { const attrs = parseAttributes(challenge); const nonce = attrs.r; @@ -74584,7 +77189,7 @@ class Client3 { throw new Error(Reason.BadSalt); } try { - salt = mod30.decode(attrs.s); + salt = mod29.decode(attrs.s); } catch { throw new Error(Reason.BadSalt); } @@ -74595,48 +77200,48 @@ class Client3 { this.#keys = await deriveKeys(this.#password, salt, iterCount); this.#authMessage += "," + challenge; this.#state = State1.ServerChallenge; - } catch (e145) { + } catch (e146) { this.#state = State1.Failed; - throw e145; + throw e146; } } async composeResponse() { - assert9(this.#state === State1.ServerChallenge); - assert9(this.#keys); - assert9(this.#serverNonce); + assert10(this.#state === State1.ServerChallenge); + assert10(this.#keys); + assert10(this.#serverNonce); try { const responseWithoutProof = `c=biws,r=${this.#serverNonce}`; this.#authMessage += "," + responseWithoutProof; - const proof = mod30.encode(computeProof(await computeSignature(this.#authMessage, this.#keys.stored), this.#keys.client)); + const proof = mod29.encode(computeProof(await computeSignature(this.#authMessage, this.#keys.stored), this.#keys.client)); const message = `${responseWithoutProof},p=${proof}`; this.#state = State1.ClientResponse; return message; - } catch (e146) { + } catch (e147) { this.#state = State1.Failed; - throw e146; + throw e147; } } async receiveResponse(response) { - assert9(this.#state === State1.ClientResponse); - assert9(this.#keys); + assert10(this.#state === State1.ClientResponse); + assert10(this.#keys); try { const attrs = parseAttributes(response); if (attrs.e) { throw new Error(attrs.e ?? Reason.Rejected); } - const verifier = mod30.encode(await computeSignature(this.#authMessage, this.#keys.server)); + const verifier = mod29.encode(await computeSignature(this.#authMessage, this.#keys.server)); if (attrs.v !== verifier) { throw new Error(Reason.BadVerifier); } this.#state = State1.ServerResponse; - } catch (e147) { + } catch (e148) { this.#state = State1.Failed; - throw e147; + throw e148; } } } function generateNonce(size2) { - return mod30.encode(crypto.getRandomValues(new Uint8Array(size2))); + return mod29.encode(crypto.getRandomValues(new Uint8Array(size2))); } function parseAttributes(str140) { const attrs = {}; @@ -74645,17 +77250,17 @@ function parseAttributes(str140) { if (pos < 1) { throw new Error(Reason.BadMessage); } - const key157 = entry.substr(0, pos); - const value554 = entry.substr(pos + 1); - attrs[key157] = value554; + const key159 = entry.substr(0, pos); + const value558 = entry.substr(pos + 1); + attrs[key159] = value558; } return attrs; } async function deriveKeys(password7, salt, iterCount) { const ikm = bytes(normalize13(password7)); - const key158 = await pbkdf2((msg64)=>sign1(msg64, ikm), salt, iterCount, 1); - const server = await sign1(bytes("Server Key"), key158); - const client = await sign1(bytes("Client Key"), key158); + const key160 = await pbkdf2((msg64)=>sign1(msg64, ikm), salt, iterCount, 1); + const server = await sign1(bytes("Server Key"), key160); + const client = await sign1(bytes("Client Key"), key160); const stored = new Uint8Array(await crypto.subtle.digest("SHA-256", client)); return { server, @@ -74663,13 +77268,13 @@ async function deriveKeys(password7, salt, iterCount) { stored }; } -function computeSignature(message, key159) { - return sign1(bytes(message), key159); +function computeSignature(message, key161) { + return sign1(bytes(message), key161); } -function computeProof(signature, key160) { +function computeProof(signature, key162) { const proof = new Uint8Array(signature.length); - for(let i282 = 0; i282 < proof.length; i282++){ - proof[i282] = signature[i282] ^ key160[i282]; + for(let i286 = 0; i286 < proof.length; i286++){ + proof[i286] = signature[i286] ^ key162[i286]; } return proof; } @@ -74686,8 +77291,8 @@ function normalize13(str142) { function escape1(str143) { return str143.replace(/=/g, "=3D").replace(/,/g, "=2C"); } -async function sign1(msg65, key161) { - const hmac = new HmacSha256(key161); +async function sign1(msg65, key163) { + const hmac = new HmacSha256(key163); hmac.update(msg65); return new Uint8Array(hmac.arrayBuffer()); } @@ -74699,14 +77304,14 @@ async function pbkdf2(prf, salt, iterCount, index) { block[salt.length + 2] = index >> 8 & 0xFF; block[salt.length + 3] = index & 0xFF; block = await prf(block); - const key162 = block; + const key164 = block; for(let r86 = 1; r86 < iterCount; r86++){ block = await prf(block); - for(let i283 = 0; i283 < key162.length; i283++){ - key162[i283] ^= block[i283]; + for(let i287 = 0; i287 < key164.length; i287++){ + key164[i287] ^= block[i287]; } } - return key162; + return key164; } class ConnectionError extends Error { constructor(message){ @@ -74772,8 +77377,8 @@ const INCOMING_QUERY_MESSAGES = { ROW_DESCRIPTION: "T" }; const encoder9 = new TextEncoder(); -function md5(bytes40) { - return createHash2("md5").update(bytes40).toString("hex"); +function md5(bytes42) { + return createHash2("md5").update(bytes42).toString("hex"); } function hashMd5Password(password8, username, salt) { const innerHash = md5(encoder9.encode(password8 + username)); @@ -74879,8 +77484,8 @@ class Connection1 { await this.#bufWriter.flush(); return await this.#readMessage(); } - async #createNonTlsConnection(options107) { - this.#conn = await Deno.connect(options107); + async #createNonTlsConnection(options109) { + this.#conn = await Deno.connect(options109); this.#bufWriter = new BufWriter5(this.#conn); this.#bufReader = new BufReader6(this.#conn); } @@ -74919,9 +77524,9 @@ class Connection1 { }); this.#tls = false; if (tls_enabled) { - const accepts_tls = await this.#serverAcceptsTLS().catch((e148)=>{ + const accepts_tls = await this.#serverAcceptsTLS().catch((e149)=>{ this.#closeConnection(); - throw e148; + throw e149; }); if (accepts_tls) { try { @@ -75003,29 +77608,29 @@ class Connection1 { } let reconnection_attempts = 0; const max_reconnections = this.#connection_params.connection.attempts; - let error59; + let error67; if (!is_reconnection && this.#connection_params.connection.attempts === 0) { try { await this.#startup(); - } catch (e149) { - error59 = e149; + } catch (e150) { + error67 = e150; } } else { while(reconnection_attempts < max_reconnections){ try { await this.#startup(); break; - } catch (e150) { + } catch (e151) { reconnection_attempts++; if (reconnection_attempts === max_reconnections) { - error59 = e150; + error67 = e151; } } } } - if (error59) { + if (error67) { await this.end(); - throw error59; + throw error67; } } async #authenticate(authentication_request) { @@ -75327,11 +77932,11 @@ class Connection1 { } else { return await this.#preparedQuery(query4); } - } catch (e151) { - if (e151 instanceof ConnectionError) { + } catch (e152) { + if (e152 instanceof ConnectionError) { await this.end(); } - throw e151; + throw e152; } finally{ this.#queryLock.push(undefined); } @@ -75368,11 +77973,11 @@ function getPgEnv() { function formatMissingParams(missingParams) { return `Missing connection parameters: ${missingParams.join(", ")}`; } -function assertRequiredOptions(options108, requiredKeys, has_env_access) { +function assertRequiredOptions(options111, requiredKeys, has_env_access) { const missingParams = []; - for (const key163 of requiredKeys){ - if (options108[key163] === "" || options108[key163] === null || options108[key163] === undefined) { - missingParams.push(key163); + for (const key165 of requiredKeys){ + if (options111[key165] === "" || options111[key165] === null || options111[key165] === undefined) { + missingParams.push(key165); } } if (missingParams.length) { @@ -75445,11 +78050,11 @@ function createParams(params = {}) { let has_env_access = true; try { pgEnv = getPgEnv(); - } catch (e152) { - if (e152 instanceof Deno.errors.PermissionDenied) { + } catch (e153) { + if (e153 instanceof Deno.errors.PermissionDenied) { has_env_access = false; } else { - throw e152; + throw e153; } } let port7; @@ -75527,14 +78132,14 @@ class Transaction1 { #savepoints; #snapshot; #updateClientLock; - constructor(name73, options109, client, execute_query_callback, update_client_lock_callback){ + constructor(name73, options112, client, execute_query_callback, update_client_lock_callback){ this.name = name73; this.#savepoints = []; this.#client = client; this.#executeQuery = execute_query_callback; - this.#isolation_level = options109?.isolation_level ?? "read_committed"; - this.#read_only = options109?.read_only ?? false; - this.#snapshot = options109?.snapshot; + this.#isolation_level = options112?.isolation_level ?? "read_committed"; + this.#read_only = options112?.read_only ?? false; + this.#snapshot = options112?.snapshot; this.#updateClientLock = update_client_lock_callback; } get isolation_level() { @@ -75590,25 +78195,25 @@ class Transaction1 { } try { await this.#client.queryArray(`BEGIN ${permissions} ISOLATION LEVEL ${isolation_level};${snapshot}`); - } catch (e153) { - if (e153 instanceof PostgresError) { - throw new TransactionError(this.name, e153); + } catch (e154) { + if (e154 instanceof PostgresError) { + throw new TransactionError(this.name, e154); } else { - throw e153; + throw e154; } } this.#updateClientLock(this.name); } - async commit(options111) { + async commit(options113) { this.#assertTransactionOpen(); - const chain = options111?.chain ?? false; + const chain = options113?.chain ?? false; try { await this.queryArray(`COMMIT ${chain ? "AND CHAIN" : ""}`); - } catch (e154) { - if (e154 instanceof PostgresError) { - throw new TransactionError(this.name, e154); + } catch (e155) { + if (e155 instanceof PostgresError) { + throw new TransactionError(this.name, e155); } else { - throw e154; + throw e155; } } this.#resetTransaction(); @@ -75639,12 +78244,12 @@ class Transaction1 { } try { return await this.#executeQuery(query5); - } catch (e155) { - if (e155 instanceof PostgresError) { + } catch (e156) { + if (e156 instanceof PostgresError) { await this.commit(); - throw new TransactionError(this.name, e155); + throw new TransactionError(this.name, e156); } else { - throw e155; + throw e156; } } } @@ -75660,12 +78265,12 @@ class Transaction1 { } try { return await this.#executeQuery(query6); - } catch (e156) { - if (e156 instanceof PostgresError) { + } catch (e157) { + if (e157 instanceof PostgresError) { await this.commit(); - throw new TransactionError(this.name, e156); + throw new TransactionError(this.name, e157); } else { - throw e156; + throw e157; } } } @@ -75703,12 +78308,12 @@ class Transaction1 { } try { await this.queryArray(`ROLLBACK ${chain_option ? "AND CHAIN" : ""}`); - } catch (e157) { - if (e157 instanceof PostgresError) { + } catch (e158) { + if (e158 instanceof PostgresError) { await this.commit(); - throw new TransactionError(this.name, e157); + throw new TransactionError(this.name, e158); } else { - throw e157; + throw e158; } } this.#resetTransaction(); @@ -75732,12 +78337,12 @@ class Transaction1 { if (savepoint) { try { await savepoint.update(); - } catch (e158) { - if (e158 instanceof PostgresError) { + } catch (e159) { + if (e159 instanceof PostgresError) { await this.commit(); - throw new TransactionError(this.name, e158); + throw new TransactionError(this.name, e159); } else { - throw e158; + throw e159; } } } else { @@ -75748,12 +78353,12 @@ class Transaction1 { }); try { await savepoint.update(); - } catch (e159) { - if (e159 instanceof PostgresError) { + } catch (e160) { + if (e160 instanceof PostgresError) { await this.commit(); - throw new TransactionError(this.name, e159); + throw new TransactionError(this.name, e160); } else { - throw e159; + throw e160; } } this.#savepoints.push(savepoint); @@ -75790,9 +78395,9 @@ class QueryClient { } this.resetSessionMetadata(); } - createTransaction(name1, options112) { + createTransaction(name1, options114) { this.#assertOpenConnection(); - return new Transaction1(name1, options112, this, this.#executeQuery.bind(this), (name79)=>{ + return new Transaction1(name1, options114, this, this.#executeQuery.bind(this), (name79)=>{ this.#transaction = name79; }); } @@ -75909,28 +78514,28 @@ var Values; })(Values || (Values = {})); function getStr(wasm7, ptr) { const len81 = wasm7.str_len(ptr); - const bytes41 = new Uint8Array(wasm7.memory.buffer, ptr, len81); + const bytes43 = new Uint8Array(wasm7.memory.buffer, ptr, len81); if (len81 > 16) { - return new TextDecoder().decode(bytes41); + return new TextDecoder().decode(bytes43); } else { let str144 = ""; let idx = 0; while(idx < len81){ - let u0 = bytes41[idx++]; + let u0 = bytes43[idx++]; if (!(u0 & 0x80)) { str144 += String.fromCharCode(u0); continue; } - const u110 = bytes41[idx++] & 63; + const u110 = bytes43[idx++] & 63; if ((u0 & 0xE0) == 0xC0) { str144 += String.fromCharCode((u0 & 31) << 6 | u110); continue; } - const u21 = bytes41[idx++] & 63; + const u21 = bytes43[idx++] & 63; if ((u0 & 0xF0) == 0xE0) { u0 = (u0 & 15) << 12 | u110 << 6 | u21; } else { - u0 = (u0 & 7) << 18 | u110 << 12 | u21 << 6 | bytes41[idx++] & 63; + u0 = (u0 & 7) << 18 | u110 << 12 | u21 << 6 | bytes43[idx++] & 63; } if (u0 < 0x10000) { str144 += String.fromCharCode(u0); @@ -75943,7 +78548,7 @@ function getStr(wasm7, ptr) { } } class SqliteError extends Error { - constructor(context10, code90){ + constructor(context10, code91){ let message; let status; if (typeof context10 === "string") { @@ -75954,7 +78559,7 @@ class SqliteError extends Error { status = context10.get_status(); } super(message); - this.code = code90 ?? status; + this.code = code91 ?? status; this.name = "SqliteError"; } code; @@ -75963,21 +78568,21 @@ class SqliteError extends Error { } } function setStr(wasm8, str145, closure) { - const bytes42 = new TextEncoder().encode(str145); - const ptr = wasm8.malloc(bytes42.length + 1); + const bytes44 = new TextEncoder().encode(str145); + const ptr = wasm8.malloc(bytes44.length + 1); if (ptr === 0) { throw new SqliteError("Out of memory."); } - const mem5 = new Uint8Array(wasm8.memory.buffer, ptr, bytes42.length + 1); - mem5.set(bytes42); - mem5[bytes42.length] = 0; + const mem5 = new Uint8Array(wasm8.memory.buffer, ptr, bytes44.length + 1); + mem5.set(bytes44); + mem5[bytes44.length] = 0; try { const result = closure(ptr); wasm8.free(ptr); return result; - } catch (error60) { + } catch (error68) { wasm8.free(ptr); - throw error60; + throw error68; } } function setArr(wasm9, arr, closure) { @@ -75991,9 +78596,9 @@ function setArr(wasm9, arr, closure) { const result = closure(ptr); wasm9.free(ptr); return result; - } catch (error61) { + } catch (error69) { wasm9.free(ptr); - throw error61; + throw error69; } } function env(inst) { @@ -76003,20 +78608,20 @@ function env(inst) { console.log(text[text.length - 1] === "\n" ? text.slice(0, -1) : text); }, js_open: (path_ptr, mode, flags6)=>{ - let path131; + let path130; switch(mode){ case 0: - path131 = getStr(inst.exports, path_ptr); + path130 = getStr(inst.exports, path_ptr); break; case 1: - path131 = Deno.makeTempFileSync({ + path130 = Deno.makeTempFileSync({ prefix: "deno_sqlite" }); break; } const write3 = !!(flags6 & 0x00000002); const create4 = !!(flags6 & 0x00000004); - const rid = Deno.openSync(path131, { + const rid = Deno.openSync(path130, { read: true, write: write3, create: create4 @@ -76027,8 +78632,8 @@ function env(inst) { Deno.close(rid); }, js_delete: (path_ptr)=>{ - const path132 = getStr(inst.exports, path_ptr); - Deno.removeSync(path132); + const path131 = getStr(inst.exports, path_ptr); + Deno.removeSync(path131); }, js_read: (rid, buffer_ptr, offset136, amount)=>{ const buffer47 = new Uint8Array(inst.exports.memory.buffer, buffer_ptr, amount); @@ -76062,22 +78667,22 @@ function env(inst) { return new Date().getTimezoneOffset(); }, js_exists: (path_ptr)=>{ - const path133 = getStr(inst.exports, path_ptr); + const path132 = getStr(inst.exports, path_ptr); try { - Deno.statSync(path133); - } catch (e160) { - if (e160 instanceof Deno.errors.NotFound) { + Deno.statSync(path132); + } catch (e161) { + if (e161 instanceof Deno.errors.NotFound) { return 0; } } return 1; }, js_access: (path_ptr)=>{ - const path134 = getStr(inst.exports, path_ptr); + const path133 = getStr(inst.exports, path_ptr); try { - Deno.statSync(path134); - } catch (e161) { - if (e161 instanceof Deno.errors.PermissionDenied) { + Deno.statSync(path133); + } catch (e162) { + if (e162 instanceof Deno.errors.PermissionDenied) { return 0; } } @@ -76091,14 +78696,14 @@ function env(inst) { const wasm4 = "AGFzbQEAAAABvQM7YAN/f38AYAF/AX9gAX8AYAJ/fwF/YAN/f38Bf2ACf38AYAR/f39/AX9gBH9/f34Bf2ACf34Bf2AAAGAFf39/f38Bf2AFf39/f34AYAZ/f39/f38Bf2AEf39/fwBgAAF/YAABfGAEf398fwF/YAJ/fABgAX8BfGABfABgA39/fAF/YAJ/fwF8YAF+AX9gAX4BfmABfwF+YAN/f34Bf2AFf39+f38Bf2ABfAF+YAV/f39/fwBgBH9/fn8AYAJ/fgBgBX9/fn9/AGAHf39/f39/fwF/YAJ/fwF+YAZ/f39+f38Bf2ALf39/f39/f39/f38Bf2ADf35/AX9gAn5/AGAHf39/f39/fwBgC39/f39/f39/f39/AGAJf39/f39/f39/AX9gBn9/f39/fwBgCH9/f39/f39/AX9gCH9/f39/f39/AGAJf39/f39/f39/AGANf39/f39/f39/f39/fwBgA39+fgF/YAV/fn9/fwF/YAR/fn9/AX9gB39+fn9/f38Bf2AEf35/fwBgA39/fwF+YAF+AGACfn8Bf2AEfn5+fgF/YAJ+fgF/YAJ+fgF8YAV/fn5+fgBgBH9+fn8AAtcBDgNlbnYLanNfdGltZXpvbmUADgNlbnYHanNfb3BlbgAEA2Vudglqc19kZWxldGUAAgNlbnYJanNfZXhpc3RzAAEDZW52CWpzX2FjY2VzcwABA2Vudgdqc190aW1lAA8DZW52CGpzX2Nsb3NlAAIDZW52B2pzX3JlYWQAEANlbnYIanNfd3JpdGUAEANlbnYLanNfdHJ1bmNhdGUAEQNlbnYHanNfc3luYwACA2Vudgdqc19zaXplABIDZW52B2pzX2xvY2sABQNlbnYJanNfdW5sb2NrAAIDqwmpCQMKBAYGAwAEBQQDAw4BBwcIAwMDAwMEAQEBEw4DDg4BAQEBFBQEBgoDAwEBAxUVAwMDAwMDDw8PAAMFBQUFBQUFBQUABQEOAwUWAgMCFxcBCAAAGBIDAAgFAAADBQgCAxkBAQMDBgUDAwQNBQQCGgMBAgMEBgYCAQQCAQQDAwMBBgICBAMDAgICAQEBAwIDAQMCAwQGBgICBAQGAQEAAgQBBQICBQIFAgEBAwECAQEBAQIBAQQDAxIbGAMBAQEcHRECHh8DBQUCAQEAASADAw0BAwMDFSEDAwMDBAMDCiIDFBkDCgMEAQUGBgIGAAQBCgQFAQQEAQoACgEFBQEFCgEEBgEKAQEKCCAFCgMEAwECBgAEAwQEAQMGGAEBAQMCBQMjIwQKAAQDBAEGCgwKCgwMAwIGBgMBBgYDAAMDBAQDAQUZCAIDAgECAQECAgECBQEBAAUEAwIEAwIFBBoKJAMCAgEHBwgDAwMBAwADAAAAAwUDAQYKDAECAQIGBgUcAQ0ABQUBAgUNBQoDBQICAgQEAxkEJQUBAAEABAQDAQEDBAgYAQIDAAoKBAQDGgMDBgENBgMDFgMBAQYEAwEGAgEBAAMBAR4CDQANBwUDBgQEAwYAAgYDCAoGAQQEBAEBAR0DGgEEDSYBAAEAAwQGAgIGAwQKAwoEBAMABgMGIAwMDAQDAAMMAQcDAQQBAAQNAwUABQUFBQMFAwUKDAMBAwECCgEBBAMFBQUDBgEgCgAEAwQCJgoFBAMEHAAAAAMcHAoEBgMBDQAAJgUFBgYECgYEAwQEBgMFAwMDBQMDAA0cAAINAAoGJwQDBAUAKAAFBAMDDQYEAA0GBAQFDCkGDQAEKQAABioEBQQEDRwFHA0cAAMBDQIDAAADBgQCCgIEAAAFAQIGACkFAwUEAAUDAwMGBAMDBQMDBQMFDQMGBQADBAAEDQMDACsEBAUDBQoGAAUFAwMBAwUgDQ0CBQ0DHAMDAAUCHAYpBAoGBA0DBQMqBScCBQQpAyADACwtKSksKQQGAwQAAwAKAgMDBQUeAQ0qAAoNDQIBBQAFAwAEAwQNAA0NBAQEBgAGJgMEHA0MLAAcAQMDAwwDAAEDBAUDBgoDBQADBAMDAwUDAw0NAwMNAwMGHBgGBgMEAwQDAwMFAwYDAwwrAwoGBQAAAwMABAADIi4ILgUFIRkEHA0MDQUKAA0DAwAEAgUMJgUDKg0EBSAhKQIhIS8NMAQMAQEDMQMGAAYyBQMDAwoDBQAcAAoDBgYpLCsAAwMGAwMcAAAcKQUAAgAAAAAAAAgAAAIFAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgIAAgAAAgIAAAAKAwMBDQ0FChwCAAMDAAAAAwQAAgACAAIAAgAAAgAAAgAAAgIAAAICAAIABgIAAgACAAAAAAABBAMDMwECAwEBAQIBAgQCAgUCAQQEAAUNBQUCAgEBAAAEBgAABQIFAAQAAAAFAAUAAAAEAAAAAAACBQIAAgUCAwoGBgYDAgECDAMBAwECCgABAQQADQMDNAUBAQICAwUJAQM1BAQEAwQBBAQDAwM2NhE3HgU4OTo5Dg46OTk5BAcBcAGHAocCBQMBAAIGCAF/AUGA/wYLB8YDIgZtZW1vcnkCAAdzdHJfbGVuACcIc2VlZF9ybmcAKApnZXRfc3RhdHVzACkEb3BlbgAqBWNsb3NlACsUZ2V0X3NxbGl0ZV9lcnJvcl9zdHIALAdwcmVwYXJlAC0IZmluYWxpemUALgVyZXNldAAvDmNsZWFyX2JpbmRpbmdzADAIYmluZF9pbnQAMQtiaW5kX2RvdWJsZQAyCWJpbmRfdGV4dAAzCWJpbmRfYmxvYgA0DGJpbmRfYmlnX2ludAA1CWJpbmRfbnVsbAA2FGJpbmRfcGFyYW1ldGVyX2luZGV4ADcEc3RlcAA4DGNvbHVtbl9jb3VudAA5C2NvbHVtbl90eXBlADoKY29sdW1uX2ludAA7DWNvbHVtbl9kb3VibGUAPAtjb2x1bW5fdGV4dAA9C2NvbHVtbl9ibG9iAD4MY29sdW1uX2J5dGVzAD8LY29sdW1uX25hbWUAQBJjb2x1bW5fb3JpZ2luX25hbWUAQRFjb2x1bW5fdGFibGVfbmFtZQBCEWxhc3RfaW5zZXJ0X3Jvd2lkAEMHY2hhbmdlcwBEDXRvdGFsX2NoYW5nZXMARQZtYWxsb2MAkgkEZnJlZQCUCQn4AwEAQQELhgIPEBESExQVFhcYGRscHR4fICEiIyQlJnuiAaMBWMwD2wO7A7wD5ATlBOYE/gT/BLMCuQK7ArwCpQLUAtUClAH4AvkC+gL7AvwC6APpA+oDjASNBI4E/QP7A6IE0wbUBsoGrgKfBpcGmAaBBp4EuwW8Bb0FwAXBBcMFxAXFBckFSc0F2QXeBeAF4QXpBuoG6wbcBtsG7AbOBvoG/gaQB5EH6gXHB8gHUp0G3gbfBucG7Qa1B7sH0AeDCIQIjQiOCJII1wj+CPAC8QLyAvMC9AL1AqkEqgSrBKwErQSvBLAEsQSyBLMEygfLB88H0QfSB9MH1AfVB9YH2AfZB9oH3AfdB94H3wfgB+EH4gfjB+QH5QfmB+cH6AfpB+oH6wfsB+0H7gfvB/AH8QfyB/MH9Af1B/YH9wf4B/kH+gf7B/wH/Qf+B/8HgAiBCIwIjwiQCJEIlAiVCJYIlwiYCJkImgibCJwInQieCJ8IoAihCKIIowikCKUIpginCKgIqQiqCKsIrAivCLEIswi0CLUItgi3CL0Ivgi/CMAIwQjCCMMIxAjFCMYIyQjLCMwIzgjQCNEIyAjTCNUI1gjYCNwI4AjiCOYI6AjqCOwI7QjuCO8I8AjxCPMI9Aj1CPcIgQmCCYMJhAmFCYcJiQmKCYsJjgmPCQrjjCKpCUYBAX8jgICAgABBEGsiAiSAgICAACACIAApAwAQgICAgABBPGysfTcDCCACQQhqIAEQmomAgAAhASACQRBqJICAgIAAIAELMAAgAkGIiICAADYCACACIAEgAUUgAxCBgICAADYCBAJAIARFDQAgBCADNgIAC0EACwwAIAEQgoCAgABBAAsrAAJAAkAgAg0AIAEQg4CAgAAhAgwBCyABEISAgIAAIQILIAMgAjYCAEEACzwBAX8jgICAgABBEGsiBCSAgICAACAEIAE2AgAgAiADQdSIgIAAIAQQ84CAgAAaIARBEGokgICAgABBAAsEAEEACyIAIAEgAkHXiICAAEEAEPOAgIAAGiABIAJqQX9qQQA6AAALBABBAAsCAAsOACACIAEQkYmAgABBAAsEAEEACy0AIAEQhYCAgABEAAAAAABAj0CjRAAAAAAAGPVAo0QAAADAxZ5CQaA5AwBBAAsQAEHQ1IKAAEEBENmAgIAACw8AIAAoAgQQhoCAgABBAAtVAQF/QQAhBAJAIANC/////////w9VDQAgACgCBCABIAO5IAIQh4CAgAAhBAsCQCAEIAJODQAgASAEakEAIAIgBGsQo4mAgAAaC0GKBEEAIAQgAkgbCzgBAX9BACEEAkAgA0L/////////D1UNACAAKAIEIAEgA7kgAhCIgICAACEEC0EAQYoGIAQgAkYbCy0BAX9BCiECAkAgAUL/////////D1UNACAAKAIEIAG5EImAgIAAQQAhAgsgAgsPACAAKAIEEIqAgIAAQQALRAIBfAF+AkACQCAAKAIEEIuAgIAAIgKZRAAAAAAAAOBDY0UNACACsCEDDAELQoCAgICAgICAgH8hAwsgASADNwMAQQALLQACQCABQX9qIgFBA0sNACAAKAIEIAFBAnRBgImAgABqKAIAEIyAgIAAC0EACxwAAkAgAUF/akEDSw0AIAAoAgQQjYCAgAALQQALCwAgAUEANgIAQQALBABBDAsEAEEACwQAQQALJwEDf0EAIQEDQCAAIAFqIQIgAUEBaiIDIQEgAi0AAA0ACyADQX9qCzkBAX4CQAJAIABEAAAAAAAA8ENjIABEAAAAAAAAAABmcUUNACAAsSEBDAELQgAhAQsgARCQiYCAAAsLAEEAKAKA9oKAAAs3AQF/QRUhAgJAQQAoAoT2goAADQAgAEGE9oKAACABQQAQwYKAgAAhAgtBACACNgKA9oKAACACCzIBAX9BAEEAKAKE9oKAABCqgoCAACIANgKA9oKAAAJAIAANAEEAQQA2AoT2goAACyAACyMBAX8CQEEAKAKE9oKAACIADQBBkImAgAAPCyAAEIqCgIAAC1MBAn8jgICAgABBEGsiASSAgICAAEEAQQAoAoT2goAAIABBfyABQQxqQQAQlIKAgAAiADYCgPaCgAAgASgCDCECIAFBEGokgICAgABBACACIAAbCxcAQQAgABC2gYCAACIANgKA9oKAACAACxcAQQAgABC7gYCAACIANgKA9oKAACAACxcAQQAgABC+gYCAACIANgKA9oKAACAAC0cBAX4CQAJAIAKZRAAAAAAAAOBDY0UNACACsCEDDAELQoCAgICAgICAgH8hAwtBACAAIAEgAxDvgYCAACIANgKA9oKAACAACxsAQQAgACABIAIQ7oGAgAAiADYCgPaCgAAgAAsfAEEAIAAgASACQX9BfxDxgYCAACIANgKA9oKAACAACx8AQQAgACABIAIgA0F/EOuBgIAAIgA2AoD2goAAIAALJwBBACAAIAEgA61CIIYgBK2EIAKsfhDvgYCAACIANgKA9oKAACAACxkAQQAgACABEPCBgIAAIgA2AoD2goAAIAALEwAgACABEPKBgIAAIgBBfyAAGwsXAEEAIAAQ1oGAgAAiADYCgPaCgAAgAAsKACAAEN6BgIAAC0UBAn8CQAJAIAAgARDmgYCAACICQQFHDQBBBiEDIAAgARDjgYCAAEL/////////D3xC/v///////x9WDQELIAIhAwsgAwsNACAAIAEQ44GAgAC5CwwAIAAgARDigYCAAAsMACAAIAEQ5IGAgAALDAAgACABEN+BgIAACwwAIAAgARDhgYCAAAsMACAAIAEQ54GAgAALDAAgACABEOqBgIAACwwAIAAgARDpgYCAAAsSAEEAKAKE9oKAABCngoCAALkLEgBBACgChPaCgAAQqIKAgAC3CxIAQQAoAoT2goAAEKmCgIAAtwuiAQEBfyOAgICAAEGAAmsiAySAgICAAAJAQQAoApTXgoAARQ0AIAMgAjYCDCADQfwBakEAOwEAIANCADcC9AEgA0HSATYC8AEgA0EANgLoASADIANBEGo2AuwBIANB6AFqIAEgAhDfgICAAEEAKAKU14KAACECQQAoApjXgoAAIAAgA0HoAWoQ74CAgAAgAhGAgICAAAALIANBgAJqJICAgIAAC+YBAQV/QQAhAkEAIQMCQCAAQaQCaigCACIERQ0AQQAhAwNAIANBAWohAyAEKAIAIgQNAAsLAkAgAEGoAmooAgAiBEUNAEEAIQIDQCACQQFqIQIgBCgCACIEDQALC0EAIQRBACEFAkAgAEGsAmooAgAiBkUNAEEAIQUDQCAFQQFqIQUgBigCACIGDQALCwJAIABBsAJqKAIAIgZFDQBBACEEA0AgBEEBaiEEIAYoAgAiBg0ACwsgBSADaiEDAkAgAUUNACABIABBlAJqKAIAIANrNgIACyAAQZQCaigCACADIAJqIARqawt8AQF/AkAgAUUNACABLQAKDQAgACABKAIcEMyAgIAAAkAgASgCACICRQ0AIAAgAhDLgICAAAsCQCABKAIEIgJFDQAgACACEMuAgIAACwJAIAEoAgwiAkUNACAAIAIQzYCAgAALIAAgASgCEBDOgICAACAAIAEQy4CAgAALCzwBAX8CQCABRQ0AAkACQCAARQ0AIAAoAtgDDQELIAEgASgCIEF/aiICNgIgIAINAQsgACABEM+AgIAACwvjAQECfyABKAJ0IAEvAYQBQQVsENCAgIAAAkAgASgCyAEiAkUNAANAIAIoAhghAyAAIAIoAgAgAigCBBDRgICAACAAIAIQy4CAgAAgAyECIAMNAAsLAkAgASgCFEGl1fO1AUYNACABKAJkIAEuARAQ0ICAgAACQCABKAKAASICRQ0AIAAgAhDLgICAAAsgASgCtAEiAkUNACAAIAIQy4CAgAALIAAgASgCaCABKAJsENGAgIAAAkAgASgCdCICRQ0AIAAgAhDLgICAAAsCQCABKAKwASICRQ0AIAAgAhDLgICAAAsLhgEAAkAgAEUNAAJAIAAoAtgDRQ0AIAAgARDPgoCAAA8LIABBvAJqKAIAIAFNDQACQCAAQbQCaigCACABSw0AIAEgAEGwAmoiACgCADYCACAAIAE2AgAPCyAAQbgCaigCACABSw0AIAEgAEGoAmoiACgCADYCACAAIAE2AgAPCyABENiAgIAAC7cBAQJ/AkAgAUUNAANAIAEoAighAgJAIAEoAhQiA0UNACAAIAMQzYCAgAALAkAgASgCGCIDRQ0AIAAgAxCLgoCAAAsCQCABKAIIIgNFDQAgACADQQEQn4SAgAALIAAgASgCHBDOgICAAAJAIAEoAiAiA0UNACAAIAMQtoSAgAALIAAgASgCEBChhICAAAJAIAEoAiQiA0UNACAAIAMQy4CAgAALIAAgARDLgICAACACIQEgAg0ACwsL8wEBAn8CQCABKAIEQYCAgQRxDQACQCABKAIMIgJFDQAgAS0AAEGxAUYNACAAIAIQzYCAgAALAkAgASgCECICRQ0AIAAgAhDNgICAAAwBCwJAIAEoAgQiAkGAEHFFDQAgASgCFCICRQ0BIAAgAkEBEJ+EgIAADAELAkAgASgCFCIDRQ0AIAAgAxCLgoCAACABKAIEIQILIAJBgICACHFFDQAgACABKAIsEKCEgIAACwJAIAEoAgQiAkGAgARxRQ0AIAEoAggiA0UNACAAIAMQy4CAgAAgASgCBCECCwJAIAJBgICAwABxDQAgACABEMuAgIAACwuEAQEFfwJAIAFFDQAgASgCACECAkAgASgCBCIDQQFIDQBBACEEQQAhBQNAAkAgAiAEaigCACIGRQ0AIAAgBhDLgICAACABKAIAIQIgASgCBCEDCyAEQQhqIQQgBUEBaiIFIANIDQALCwJAIAJFDQAgACACEMuAgIAACyAAIAEQy4CAgAALC9sEAQR/AkAgASgCCCICRQ0AA0AgAiIDKAIUIQICQAJAIABFDQAgACgC2AMNAQsgASgCOA0AIAMoAhhBGGogAygCAEEAELaCgIAAGgsgACADENmDgIAAIAINAAsLAkAgASgCECIDRQ0AA0AgAyECAkACQCAARQ0AIAAoAtgDDQELAkACQCACKAIQIgNFDQAgAyACKAIMNgIMDAELIAEoAkhBOGogAigCDCIDIAIgAxsoAgggAxC2goCAABoLIAIoAgwiA0UNACADIAIoAhA2AhALIAAgAigCHBC0hICAACAAIAJBIGooAgAQtISAgAAgAigCBCEDIAAgAhDLgICAACADDQALCyAAIAEQtYSAgAACQCABKAIAIgJFDQAgACACEMuAgIAACwJAIAEoAhQiAkUNACAAIAIQy4CAgAALAkAgASgCDCICRQ0AIAAgAkEBEJ+EgIAACwJAIAEoAhgiAkUNACAAIAIQi4KAgAALAkACQCAARQ0AIAAoAtgDDQELIAEoAkAhAiABQQA2AkAgAkUNAANAIAIoAhghAwJAAkAgAigCACIEDQAgAkEANgIYIAEgAjYCQAwBCyACIAQoAuQCNgIYIAQgAjYC5AILIAMhAiADDQALCwJAIAEoAjwiAkUNAAJAIAEoAjgiBEEBSA0AQQAhA0EAIQIDQAJAIAJBAUYNACABKAI8IANqKAIAIgVFDQAgACAFEMuAgIAAIAEoAjghBAsgA0EEaiEDIAJBAWoiAiAESA0ACyABKAI8IQILIAJFDQAgACACEMuAgIAACyAAIAEQy4CAgAALvQEBAn8CQCAARQ0AIAFFDQAgACABQShsaiEBAkAgACgCICICKALYAw0AA0ACQAJAIABBCWotAABBJHFFDQAgABC/gYCAAAwBCyAAQRhqIgMoAgBFDQAgAiAAQRRqKAIAEMuAgIAAIANBADYCAAsgAEEIakGAATsBACAAQShqIgAgAUkNAAwCCwsDQAJAIABBGGooAgBFDQAgAEEUaigCACIDRQ0AIAIgAxDLgICAAAsgAEEoaiIAIAFJDQALCwtgAQF/AkAgAUUNAAJAIAJBAUgNACACQRRsIAFqQWxqIQIDQAJAIAJBAWosAAAiA0F5Sg0AIAAgAyACQRBqKAIAEI+DgIAACyACQWxqIgIgAU8NAAsLIAAgARDLgICAAAsLFAACQCABRQ0AIAAgARDLgICAAAsLSgEBf0EAIQECQBDUgICAAA0AQQAoAtj2goAAIQEgAEUNACABRQ0AA0AgACABKAIQEKSJgIAARQ0BIAEoAgwiAQ0AC0EAIQELIAEL9gYBB38jgICAgABBIGsiACSAgICAAEEAIQECQEEAKAL41oKAAA0AQQBBATYCgNeCgAACQAJAQQAoAoTXgoAADQACQEEAKALI1YKAAA0AIABBjL+CgAA2AhBBBCAAQRBqENWAgIAAGgtBAEEINgLg9oKAAAJAAkBBACgC4NaCgABFDQBBACgC5NaCgABBgARIDQBBACgC6NaCgABBAEoNAQtBAEIANwPg1oKAAAtBACgC5NWCgABBACgC3NWCgAARgYCAgAAAIgENAQtBAEEBNgKE14KAAAJAQQAoApDXgoAADQBBAEEINgKQ14KAAAtBAEEAKAKM14KAAEEBaiICNgKM14KAAEEAIQECQEEAKAL81oKAAEEAKAL41oKAAHINAEEAQQE2AvzWgoAAQYj5goAAQQBB3AAQo4mAgAAaQcDrgoAAQQUQ1oCAgABBkO2CgABBDxDWgICAAEHw8YKAAEEIENaAgIAAQcDXgoAAQcAAENaAgIAAAkACQEEAKAKI14KAAA0AAkBBACgClNaCgAAiAQ0AIABB+L+CgAA2AgBBEiAAENWAgIAAGkEAKAKU1oKAACEBC0EAKAKQ1oKAACABEYGAgIAAACIBDQELQQBBATYCiNeCgABBByEBENSAgIAADQBCChDXgICAACICRQ0AIAIQ2ICAgAAQmoCAgAAiAQ0AQQAhAQJAQQAoApj6goAARQ0AQQBBACgC6NaCgABBAEEAKALg1oKAACICGyIDNgLA+oKAAEEAIAM2Aqj6goAAQQBBACgC5NaCgABBeHFBACADG0EAIAIbIgQ2AqT6goAAQQohBQJAIANB2gBKDQAgA0EKbUEBaiEFC0EAIQZBACACNgKw+oKAAEEAIAU2Aqz6goAAQQBBADYCxPqCgABBAEEANgK8+oKAAAJAAkAgAw0AIAIhBQwBCwNAIAIgBjYCACACIQYgAiAEaiIFIQIgA0F/aiIDDQALQQAgBSAEazYCvPqCgAALQQAgBTYCtPqCgAALQQBBATYC+NaCgAALQQBBADYC/NaCgABBACgCjNeCgAAhAgtBACACQX9qNgKM14KAACACQQFKDQFBAEEANgKQ14KAAAwBC0EAQgA3A/j2goAAQQBCADcD8PaCgABBAEIANwPo9oKAAEEAQgA3A+D2goAACyAAQSBqJICAgIAAIAEL/wcBAn8jgICAgABBMGsiAiSAgICAAEEAIQMCQAJAQQAoAvjWgoAARQ0AIAJB1JqAgAA2AiggAkGNjQo2AiQgAkGO0YKAADYCIEEVIQNBFUGGnICAACACQSBqEMaAgIAADAELIAIgATYCLAJAIABBfGoiAEEXSw0AAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAOGAABDwQPAg8PDwgQDwkKBgcLDwwPBQ0OAwALIAIgAigCLCIAQQRqNgIsQQAhA0EAIAAoAgAiACkCADcDyNWCgABBACAAQRhqKQIANwPg1YKAAEEAIABBEGopAgA3A9jVgoAAQQAgAEEIaikCADcD0NWCgAAMDwtBACEDAkBBACgCyNWCgAANACACQYy/goAANgIAQQQgAhDVgICAABoLIAIgAigCLCIAQQRqNgIsIAAoAgAiAEEAKQPI1YKAADcCACAAQRhqQQApA+DVgoAANwIAIABBEGpBACkD2NWCgAA3AgAgAEEIakEAKQPQ1YKAADcCAAwOCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIANgKo1YKAAAwNCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIAOgCw1YKAAAwMCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIANgLg1oKAAEEAIAAoAgQ2AuTWgoAAQQAgACgCCDYC6NaCgAAgAiAAQQxqNgIsDAsLIAIgAigCLCIAQQRqNgIsIAAoAgBBoAE2AgAMCgsgAiACKAIsIgBBBGo2AixBjNaCgAAgACgCAEE0EKCJgIAAGgwJC0EAIQMCQEEAKAKU1oKAAA0AIAJB+L+CgAA2AhBBEiACQRBqENWAgIAAGgsgAiACKAIsIgBBBGo2AiwgACgCAEGM1oKAAEE0EKCJgIAAGgwICyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIANgK81YKAAEEAIAAoAgQ2AsDVgoAAIAIgAEEIajYCLAwHCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIANgKU14KAAEEAIAAoAgQ2ApjXgoAAIAIgAEEIajYCLAwGCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIAOgCu1YKAAAwFCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIAOgCv1YKAAAwEC0EAIQNBAEIANwPQ1oKAAEEAQgA3A9jWgoAAIAIgAigCLEEHakF4cUEQajYCLAwDCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIANgL01oKAAAwCCyACIAIoAiwiAEEEajYCLEEAIQNBACAAKAIANgLE1YKAAAwBC0EBIQMLIAJBMGokgICAgAAgAwumAQECfwJAIAFBAUgNAANAQQAhAgJAIABBIGooAgAiA0UNACADEKGJgIAAQf////8DcSECCwJAAkAgAiADLAAAakEXbyICIAMQtYKAgAAiA0UNACAAQQxqIAMoAgw2AgAgA0EMaiEDDAELIABBDGpBADYCACAAQSRqIAJBAnRBiPmCgABqIgMoAgA2AgALIAMgADYCACAAQShqIQAgAUF/aiIBDQALCwvqAgICfwJ+QQAhAQJAAkAgAEJ/fEL+/f//B1YNAAJAQQAoAqjVgoAARQ0AIACnIgFBACgC2NWCgAARgYCAgAAAIQICQEEAKALE9oKAACABTw0AQQAgATYCxPaCgAALAkBBACkD6PaCgAAiAEIBUw0AQQAhAQJAIAAgAqwiA31BADUCiPaCgAAiAFUNAEEAQQE2Avj2goAAQQApA/D2goAAIgRQDQEgBCADfSAAVQ0BDAMLQQBBADYC+PaCgAALQQAhASACQQAoAsjVgoAAEYGAgIAAACICRQ0BQQAgAkEAKALU1YKAABGBgICAAABBACgCiPaCgABqIgE2Aoj2goAAAkAgAUEAKAKw9oKAAE0NAEEAIAE2ArD2goAAC0EAQQAoAqz2goAAQQFqIgE2Aqz2goAAIAFBACgC1PaCgABNDQJBACABNgLU9oKAAAwCCyAAp0EAKALI1YKAABGBgICAAAAhAQsgAQ8LIAILfgEBfwJAIABFDQACQEEAKAKo1YKAAEUNACAAQQAoAtTVgoAAEYGAgIAAACEBQQBBACgCiPaCgAAgAWs2Aoj2goAAQQBBACgCrPaCgABBf2o2Aqz2goAAIABBACgCzNWCgAARgoCAgAAADwsgAEEAKALM1YKAABGCgICAAAALC2ABAn8CQBDUgICAACICDQAgABDagICAAEEAKALY9oKAACEDAkACQAJAIAENACADDQELIAAgAzYCDEHY9oKAACEBDAELIAAgAygCDDYCDCADQQxqIQELIAEgADYCAAsgAgtcAQJ/AkAgAEUNAAJAQQAoAtj2goAAIgEgAEcNAEEAIAAoAgw2Atj2goAADwsgAUUNAAJAA0AgASICKAIMIgEgAEYNASABDQALCyABIABHDQAgAiAAKAIMNgIMCwtuAQJ+Qn8hAQJAENSAgIAADQBBACkD6PaCgAAhASAAQgBTDQBBAEEAKQPw9oKAACICIAIgACACIABTGyAAUBsgACACQgBVGyIANwPo9oKAAEEAIABCAFUgAEEANQKI9oKAAFdxNgL49oKAAAsgAQtXAQJ+Qn8hAQJAENSAgIAADQBBACkD8PaCgAAhASAAQgBTDQBBACAANwPw9oKAAAJAQQApA+j2goAAIgIgAFUNACACQgBSDQELQQAgADcD6PaCgAALIAELKwECfxDUgICAACEBQQAhAgJAIABBAUgNACABDQAgAK0Q14CAgAAhAgsgAgvqAgIEfwJ+AkAgAA0AIAEQ14CAgAAPCwJAIAFCAFINACAAENiAgIAAQQAPC0EAIQICQAJAIAFC//3//wdWDQACQCAAQQAoAtTVgoAAEYGAgIAAACIDIAGnIgJBACgC2NWCgAARgYCAgAAAIgRHDQAgAA8LAkBBACgCqNWCgABFDQACQEEAKALE9oKAACACTw0AQQAgAjYCxPaCgAALAkAgBCADayIFQQFIDQBBACECQQApA+j2goAAIAWtIgF9QQA1Aoj2goAAIgZVDQBBACkD8PaCgAAiB0IBUw0AIAcgAX0gBlcNAgtBACECIAAgBEEAKALQ1YKAABGDgICAAAAiAEUNASAAQQAoAtTVgoAAEYGAgIAAACECQQBBACgCiPaCgAAgAiADa2oiAjYCiPaCgAAgAkEAKAKw9oKAAE0NAkEAIAI2ArD2goAADAILIAAgBEEAKALQ1YKAABGDgICAAAAhAgsgAg8LIAALmTUJEn8BfgF/AX4BfAF+AX8DfgF/I4CAgIAAQeACayIDJICAgIAAAkACQCAALQAVQQJxDQBBASEEQQAhBSACIQYMAQsgAkEEaiEGIAIoAgAhBUEAIQQLQQAhBwJAA0ACQAJAIAEtAAAiAkElRw0AIAEhCAwBCyACRQ0CIAEhAgJAA0AgAkEBaiEIIAItAAEiCUElRg0BIAghAiAJDQALCyAAIAEgCCABaxDggICAACABIQcgCC0AAEUNAgsCQCAILQABIgpFDQAgCEEBaiEBQX8hC0EAIQxBACENQQAhDkEAIQ9BACEQQQAhEUEAIQlBACESIAYhEwJAA0AgASECIAkhFAJAAkACQAJAAkACQAJAAkAgCkEYdEEYdSIIQWBqIgFBGU0NACAIQewARw0JIAItAAEiCEHsAEYNAUEBIQwgAkEBaiECDAILQQEhCQJAAkACQAJAAkACQCABDhoBAw4CDg4ODg4OCQAFDAoOBAgICAgICAgICAELQSshEQwKC0EgIREMCQtBASEQDAgLQQEhDwwHC0EBIQ4MBgtBLCENDAULQQIhDCACLQACIQggAkECaiECCyAIQRh0QRh1IQgMBgsgCEFQaiEJAkACQCACLAABIghBUGpB/wFxQQlNDQAgAkEBaiEKDAELA0AgCCAJQQpsakFQaiEJIAJBAmohCCACQQFqIgEhAiAILAAAIghBUGpB/wFxQQpJDQALIAFBAWohCiABIQILIAlB/////wdxIRIgCEEuRg0CIBQhCSAIQf8BcUHsAEYNAyAKIQIMBQsCQAJAIAQNAEIAIRUCQCAFKAIAIAUoAgQiCEwNACAFIAhBAWo2AgQgBSgCCCAIQQJ0aigCABDhgICAACEVCyAVpyEIDAELIBMoAgAhCCATQQRqIRMLQQBBACAIayAIQYCAgIB4RhsgCCAIQQBIIgkbIRJBASAUIAkbIQkgAi0AASIIQS5GDQIgCEHsAEYNAiAIQRh0QRh1IQggAkEBaiECIAkhFAwECwJAAkACQAJAIAItAAEiAUEqRg0AIAJBAWohAiABQRh0QRh1IQhBACEJIAFBUGpB/wFxQQlNDQEgAiEBDAILAkACQCAEDQBCACEVAkAgBSgCACAFKAIEIghMDQAgBSAIQQFqNgIEIAUoAgggCEECdGooAgAQ4YCAgAAhFQsgFachCAwBCyATKAIAIQggE0EEaiETC0F/QQAgCGsgCEGAgICAeEYbIAggCEEASBshCyACQQJqIQEgAiwAAiEIDAILQQAhCQNAIAlBCmwgCGpBUGohCSACLAABIQggAkEBaiIBIQIgCEFQakH/AXFBCkkNAAsLIAlB/////wdxIQsLAkAgCEHsAEYNACABIQIMBAsgAUF/aiECCyAUIQkLIAJBAWohASACLQABIgoNAAtBACEMIAkhFEEAIQggASECC0EAIQlBACEBAkADQCAIIAlBsImAgABqLAAARg0BIAFBAWohASAJQQZqIglBigFHDQAMBAsLIAlBs4mAgABqLQAAIhZBEEsNAgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAWDhEBAwMDBAcHBQYICAoJAAgBAgELQQEhDAtBACENCwJAQfqf+AEgAXZBAXENAAJAIAQNAEIAIRcgBSgCACAFKAIEIghMDRQgBSAIQQFqNgIEIAUoAgggCEECdGooAgAQ4YCAgAAhFwwUCwJAIAxBAksNAAJAIAwOAwEBAAELIBNBB2pBeHEiCEEIaiEGIAgpAwAhFwwVCyATQQRqIQYgEzQCACEXDBQLAkAgBA0AQQAhDwJAIAUoAgAgBSgCBCIISg0AIBMhBgwXCyAFIAhBAWo2AgQgBSgCCCAIQQJ0aigCABDhgICAACEVQQAhDyATIQYMFQsCQAJAIAxBAksNAAJAIAwOAwEBAAELIBNBB2pBeHEiCEEIaiEGIAgpAwAhFQwBCyATQQRqIQYgEzUCACEVC0EAIQ8MFAsCQAJAIAQNAEQAAAAAAAAAACEYIAUoAgAgBSgCBCIITA0BIAUgCEEBajYCBCAFKAIIIAhBAnRqKAIAEOKAgIAAIRgMAQsgE0EHakF4cSIIQQhqIRMgCCsDACEYCyADQeABaiAYEKmJgIAAIAMgAykD4AEiFTcD0AIgAyADQeABakEIaikDACIXQoCAgICAgICAgH+FIBcgGEQAAAAAAAAAAGMiChsiFzcD2AJBBiALIAtBAEgbIghBgMLXLyAIQYDC1y9IGyINIAhBAEogCUEMRiAJQdoARnJxayIGQf8fcSIIQQpwQQN0QYCLgIAAaisDACEYAkAgCEEKSQ0AIAhBCmohCANAIBhEu73X2d982z2iIRggCEF2aiIIQRNKDQALCwJAIAlByABHDQAgA0HQAWogFSAXQoCAgICAgICAUEL0zPj4hbzW5T8QtYmAgAAgA0HAAWogGBCpiYCAACADQbABaiADKQPQASADQdABakEIaikDACADKQPAASADQcABakEIaikDABCuiYCAACADQaABaiADKQOwASADQbABakEIaikDABCtiYCAACAYIBUgFxCtiYCAAL1CNIinQf8PcUGBeGpBA20gBmpBD0gbIhgQqYmAgAAgA0GQAWogFSAXIAMpA6ABIANBoAFqQQhqKQMAEK6JgIAAIAMgA0GQAWpBCGopAwAiFzcD2AIgAyADKQOQASIVNwPQAgsCQCAVIBcQrYmAgAC9IhlC/////////weDUA0AIBlCgICAgICAgPj/AINCgICAgICAgPj/AFINAEHQi4CAACEHQQMhCEEAIQwMEQtBLSARIAobIRpBACEIAkAgFSAXQgBCABCoiYCAAEEBSA0AQoCAgICAgMD/PyEbQgAhHEGcfyEIQXYhEUF/IQsCQANAIBEhCiALIQcgA0GAAWogHCIZIBsiHUKAgICAgICAgFBCt5jlkq2TyaXBABC1iYCAACAIQeQAaiIIQd4CSw0BIAdB5ABqIQsgCkHkAGohESAVIBcgAykDgAEiHCADQYABakEIaikDACIbEKiJgIAAQX9KDQALCwJAA0AgByEIIANB8ABqIBkiGyAdIhxCAEKAgICQ38CKkMAAELWJgIAAIApBCmoiCkHeAksNASAIQQpqIQcgFSAXIAMpA3AiGSADQfAAakEIaikDACIdEKiJgIAAQX9KDQALCwJAA0AgA0HgAGogGyIZIBwiHUIAQoCAgICAgJCBwAAQtYmAgAAgCEEBaiIIQd4CSw0BIBUgFyADKQNgIhsgA0HgAGpBCGopAwAiHBCoiYCAAEF/Sg0ACwsgA0HQAGogFSAXIBkgHRCwiYCAACADIANB0ABqQQhqKQMAIhc3A9gCIAMgAykDUCIVNwPQAgJAIBUgF0KAgICAgICAgKB/QsORjPGO85XyPxCniYCAAEF/Sg0AA0AgA0HAAGogFSAXQgBCgICAgISv34zAABC1iYCAACAIQXhqIQggAykDQCIVIANBwABqQQhqKQMAIhdCgICAgICAgICgf0LDkYzxjvOV8j8Qp4mAgABBAEgNAAsgAyAVNwPQAiADIBc3A9gCCwJAIBUgF0IAQoCAgICAgMD/PxCniYCAAEF/Sg0AA0AgA0EwaiAVIBdCAEKAgICAgICQgcAAELWJgIAAIAhBf2ohCCADKQMwIhUgA0EwakEIaikDACIXQgBCgICAgICAwP8/EKeJgIAAQQBIDQALIAMgFTcD0AIgAyAXNwPYAgsgCEHfAkgNACADIBo6AIACQQAhDCADQYACaiAaQf8BcSIIQQBHckHJ3JkDNgAAQQRBAyAIGyEIIANBgAJqIQcMEQsgCUHIAEYNDiADQSBqIBgQqYmAgAAgA0EQaiAVIBcgAykDICADQSBqQQhqKQMAEK6JgIAAIAMgA0EQakEIaikDACIVNwPYAiADIAMpAxAiFzcD0AICQCAXIBVCAEKAgICAgICQgcAAEKiJgIAAQQBIDQAgAyAXIBVCgICAgICAgICgf0KZs+bMmbPm/T8QtYmAgAAgAyADQQhqKQMANwPYAiADIAMpAwA3A9ACIAhBAWohCAsCQCABQQ9GDQAgAUECRw0PC0ECQQEgCEF8SCAGIAhIciIBGyEWIAZBACAIIAEbayENIBBB/wFxRSEGDA8LQQAhDAJAIAQNAEEAIRIMCgsgEygCACAAKAIQNgIAIBNBBGohBgwGCyADQSU6AIACQQEhCEEAIQwgA0GAAmohBwwOCwJAAkAgBA0AAkAgBSgCACAFKAIEIghMDQAgBSAIQQFqNgIEIAUoAgggCEECdGooAgBBARDjgICAACIBRQ0AIAMgAS0AACIJOgCAAkEBIQggCUHAAUkNAkEBIQgDQCABIAhqLQAAIglBwAFxQYABRw0DIANBgAJqIAhqIAk6AAAgCEEBaiIIQQRHDQALQQQhCAwCCyADQQA6AIACQQEhCAwBCyATQQRqIQkCQAJAIBMoAgAiCEH/AEsNACADIAg6AIACQQEhCAwBCwJAIAhB/w9LDQAgAyAIQT9xQYABcjoAgQIgAyAIQQZ2QcABcjoAgAJBAiEIDAELAkAgCEH//wNLDQAgAyAIQT9xQYABcjoAggIgAyAIQQx2QeABcjoAgAIgAyAIQQZ2QT9xQYABcjoAgQJBAyEIDAELIAMgCEE/cUGAAXI6AIMCIAMgCEEGdkE/cUGAAXI6AIICIAMgCEEMdkE/cUGAAXI6AIECIAMgCEESdkEHcUHwAXI6AIACQQQhCAsgCSETC0EBIQ9BACEMIANBgAJqIQcgC0ECSA0KAkAgEiALa0EBaiISQQJIDQAgFEH/AXENACAAIBJBf2pBIBDkgICAAEEAIRILIAtBAWohCQNAIAAgA0GAAmogCBDggICAACAJQX9qIglBAkoNAAwLCwsCQAJAIAQNAAJAIAUoAgAgBSgCBCIISg0AQdSLgIAAIQdBACEMDAgLIAUgCEEBajYCBCAFKAIIIAhBAnRqKAIAQQEQ44CAgAAhB0EFIRYgEyEGDAELIBNBBGohBiATKAIAIQcLQQAhDAJAAkACQCAHDQBB1IuAgAAhBwwBCyAWQQZGDQELIAYhEwwGCyAAKAIQDQQgC0F/Sg0EIBINBCAAKAIMRQ0EAkAgAC0AFEUNACAHIQwgBiETDAkLIAAgBzYCBAJAAkAgACgCACIIRQ0AIAhBvAJqKAIAIAdNDQBBgAEhCSAIQbQCaigCACAHTQ0BIAhBuAJqKAIAIAdLDQAgCEGOAmovAQAhCQwBCyAHQQAoAtTVgoAAEYGAgIAAACEJCyAAIAk2AgggACAHEKGJgIAAQf////8HcTYCECAAIAAtABVBBHI6ABUMAwsgCUEkRiEIAkACQCAEDQBBACEQIAUoAgAgBSgCBCIBTA0BIAUgAUEBajYCBCAFKAIIIAFBAnRqKAIAQQEQ44CAgAAhEAwBCyATKAIAIRAgE0EEaiETC0EiQScgCBshDSAQQdWLgIAAQdqLgIAAIAlBHkYiDhsgEBshEUEAIQFBACEGAkAgC0UNACARQQFqIQpBACEGQQAhAQNAIBEgAWosAAAiCEUNASAIIA1GIQcCQAJAIA9B/wFxRQ0AIAhBwAFxQcABRw0AIAEhCANAIAogCGohCSAIQQFqIgEhCCAJLQAAQcABcUGAAUYNAAwCCwsgAUEBaiEBCyAGIAdqIQYgC0F/aiILDQALCyADQYACaiEHQQAhDAJAIAEgBmpBA2oiCEHHAEgNACAAIAitEOWAgIAAIgwhByAMRQ0VC0EAIQgCQCAOIBBBAEdxIgtFDQAgByANOgAAQQEhCAsCQCABQQFIDQADQCAHIAhqIBEsAAAiCToAACAIQQFqIQoCQAJAIAkgDUYNACAKIQgMAQsgByAKaiAJOgAAIAhBAmohCAsgEUEBaiERIAFBf2oiAQ0ACwsCQCALRQ0AIAcgCGogDToAACAIQQFqIQgLIAcgCGpBADoAAAwICyAALQAVQQFxRQ0TIBNBBGohBiATKAIAIgkoAgwhCAJAIA9B/wFxDQAgCEUNACAAIAgQ5oCAgAAMAgsCQCAJKAIIRQ0AAkAgCSgCBCIIRQ0AIAAgCCAIEKGJgIAAQf////8DcRDggICAAAJAIAAoAhAiCEEBaiIBIAAoAghJDQAgAEHhi4CAAEEBEOeAgIAADAELIAAgATYCECAAKAIEIAhqQS46AAALIAAgCSgCCBDmgICAAAwCCwJAIAhFDQAgACAIIAgQoYmAgABB/////wNxEOCAgIAADAILIAkoAhQiCEUNASADIAgoAhA2AvABIABB44uAgAAgA0HwAWoQ6ICAgAAMAQsgAC0AFUEBcUUNEiATQQRqIQYgEygCACIIRQ0AIAgoAgQiCUUNACAAIAgoAgAgCRDggICAAAtBACEMQQAhEkEAIQgMDgsgBiETIAchDAsgC0EASA0CAkAgD0H/AXFFDQAgByEIAkAgC0UNAANAIAgtAAAiCUUNAQJAAkAgCUHAAU8NACAIQQFqIQgMAQsDQCAIQQFqIggtAABBwAFxQYABRg0ACwsgC0EBSiEJIAtBf2ohCyAJDQALCyAIIAdrIQhBASEPDAQLIAsNAQtBACEIDAULQQAhCANAIAcgCGotAABFDQUgCyAIQQFqIghHDQALIAshCAwECyAHEKGJgIAAQf////8HcSEICyAPQf8BcUUNAiASQQFIDQIgCEEBSA0CIAhBAWohCQNAIBIgByAJakF+ai0AAEHAAXFBgAFGaiESIAlBf2oiCUEBSg0ADAMLCyAPIQYLQQAhDCADQYACaiEHAkAgDawgEqx8QQAgCCAWQQJGGyILQQAgC0EAShutfCIVQjhTDQAgACAVQg98EOWAgIAAIgwhByAMRQ0KCyADIA9B/wFxIh5BCmxBEGo2AswCIA1BAEohCiAPIBByIREgByEBAkAgGkH/AXEiEEUNACAHIBo6AAAgB0EBaiEBCyARIApyIQ8CQAJAIAtBAEgNACALIQoDQCABIANB0AJqIANBzAJqEOmAgIAAOgAAIAFBAWohASAKQQBKIREgCkF/aiILIQogEQ0ADAILCyABQTA6AAAgAUEBaiEBCwJAIA9B/wFxIhFFDQAgAUEuOgAAIAFBAWohAQsCQCALQX5KDQAgAUEwIAtBf3MQo4mAgAAaIAtBf2ohCgNAIA1Bf2ohDSABQQFqIQEgCkEBaiIKQX5IDQALCwJAIA1BAUgNACANQQFqIQoDQCABIANB0AJqIANBzAJqEOmAgIAAOgAAIAFBAWohASAKQX9qIgpBAUoNAAsLAkAgBkH/AXFFDQAgEUUNAANAAkAgAUF/aiIBLQAAIgpBMEYNAAJAIApBLkcNAAJAIB5FDQAgAUEBakEwOgAAIAFBAmohAQwECyABQQA6AAAMAwsgAUEBaiEBDAILIAFBADoAAAwACwsCQCAWQQJHDQAgASAJQbSJgIAAai0AAEHQioCAAGotAAA6AAACQAJAIAhBf0oNACABQS06AAFBACAIayEIDAELIAFBKzoAAQsCQAJAIAhB5ABODQAgAUECaiEJDAELIAEgCEHkAG4iCkEwajoAAiABQQNqIQkgCCAKQeQAbGshCAsgCSAIQf8BcUEKbiIBQTBqOgAAIAkgCCABQQpsa0EwcjoAASAJQQJqIQELIAFBADoAACABIAdrIQggFEH/AXENACAOQf8BcUUNACASIAhMDQAgEiAIayERAkAgCEEASA0AIBIhCQNAIAcgCWogByAIai0AADoAACAIQX9qIQggCSARSiEKIAlBf2ohCSAKDQALCwJAIBFFDQAgByAQQQBHakEwIBIgB2ogAWsQo4mAgAAaCyASIQgLIBMhBgwFCyATIQYLIBcgF0I/hyIVfCAVhSEVQS0gESAXQgBTGyEPCyAVQgBSDQELQQAhEEIAIRULAkAgDkH/AXFFDQAgEiAPQf8BcUEAR2siCCALIAsgCEgbIQsLAkACQCALQSVODQBBACEMQcYAIQogA0GAAmohCAwBCyALrUIKfCEXAkAgDUH/AXFFDQAgFyALQQNurXwhFwsgACAXEOWAgIAAIghFDQQgF6chCiAIIQwLIAogCGpBf2oiEyEHAkAgCUGEAUcNACATQX5qIgdBAEEAIBUgFUIKgCIXQgp+faciCCAXQgqCQgFRGyAIQQNLG0EBdCIIQbqKgIAAai0AADoAACATQX9qIAhBAXJBuoqAgABqLQAAOgAACyAJQbSJgIAAai0AAEHQioCAAGohCiAJQbGJgIAAajEAACEXA0AgB0F/aiIHIAogFSAVIBeAIhkgF359p2otAAA6AAAgFSAXWiEIIBkhFSAIDQALAkACQCALIBMgB2siCEoNACAIIQsMAQsgByAIIAtrakEwIAsgB2ogE2siChCjiYCAABpBACEIA0AgCiAIQQFqIghHDQALIAcgCGshBwsCQCANQf8BcUUNACAHIAtBf2oiCEEDbSIKayEHIAtBBEgNACAIIApBA2xrQQFqIRFBACEIA0AgByAIaiAHIAggCmpqLQAAOgAAAkAgEUF/aiIRDQAgByAIQQFqIghqIA06AAAgCkF/aiEKQQMhEQsgCEEBaiEIIApBAEoNAAsLAkAgD0H/AXFFDQAgB0F/aiIHIA86AAALAkAgEEH/AXFFDQBB/+XfAyABdkEBcQ0AIAlBtYmAgABqLQAAIglB8oqAgABqIQggCUHxioCAAGotAAAhCQNAIAdBf2oiByAJOgAAIAgtAAAhCSAIQQFqIQggCQ0ACwsgEyAHayEICwJAAkACQCASIAhrIglBAUgNACAUQf8BcQ0BIAAgCUEgEOSAgIAACyAAIAcgCBDggICAAAwBCyAAIAcgCBDggICAACAAIAlBIBDkgICAAAsCQCAMRQ0AIAAoAgAgDBDLgICAAAsgAkEBaiEBDAELCwJAIAAoAhAiAkEBaiIIIAAoAghJDQAgAEGpiYCAAEEBEOeAgIAADAELIAAgCDYCECAAKAIEIAJqQSU6AAALIANB4AJqJICAgIAAC0oBAn8CQCAAKAIQIgMgAmoiBCAAKAIISQ0AIAAgASACEOeAgIAADwsCQCACRQ0AIAAgBDYCECAAKAIEIANqIAEgAhCgiYCAABoLC1YCAX8BfgJAIAAvAQgiAUEkcUUNACAAKQMADwsCQCABQQhxRQ0AIAArAwAQxoGAgAAPC0IAIQICQCABQRJxRQ0AIAAoAhBFDQAgABDHgYCAACECCyACC0gBAX8CQCAALwEIIgFBCHFFDQAgACsDAA8LAkAgAUEkcUUNACAAKQMAuQ8LAkAgAUEScQ0ARAAAAAAAAAAADwsgABDFgYCAAAtJAQJ/QQAhAgJAIABFDQACQCAALwEIIgNBggRxQYIERw0AIAAtAAogAUcNACAAKAIQDwsgA0EBcQ0AIAAgARDIgYCAACECCyACC2oBAX8CQAJAAkAgADUCECABrHwgADUCCFMNACAAIAEQ7YCAgAAiAUEBTg0BDAILIAFBAUgNAQsgAUEBaiEBA0AgACAAKAIQIgNBAWo2AhAgAyAAKAIEaiACOgAAIAFBf2oiAUEBSg0ACwsLfQEBfwJAAkAgAC0AFA0AAkAgADUCCCABWQ0AIAA1AgwgAVkNACAAQRIQ6oCAgAAMAQsCQAJAIAAoAgAiAkUNACACIAEQ64CAgAAhAgwBCyABENeAgIAAIQILIAINASAAQQc6ABQgACgCDEUNACAAEOyAgIAAC0EAIQILIAILMQEBfwJAAkAgAQ0AQQAhAgwBCyABEKGJgIAAQf////8DcSECCyAAIAEgAhDggICAAAs5AAJAIAAgAhDtgICAACICQQFIDQAgACgCBCAAKAIQaiABIAIQoImAgAAaIAAgACgCECACajYCEAsLMwEBfyOAgICAAEEQayIDJICAgIAAIAMgAjYCDCAAIAEgAhDfgICAACADQRBqJICAgIAAC9oBBQJ/AX4BfwF+AX8jgICAgABBMGsiAiSAgICAAAJAAkAgASgCACIDQQFODQBBMCEADAELIAJBIGogACkDACIEIABBCGoiBSkDACIGEKqJgIAAIgcQrImAgAAgAkEQaiAEIAYgAikDICACQSBqQQhqKQMAELaJgIAAIAIgAikDECACQRBqQQhqKQMAQgBCgICAgICAkIHAABC1iYCAACABIANBf2o2AgAgACACKQMANwMAIAUgAkEIaikDADcDACAHQTBqIQALIAJBMGokgICAgAAgAEEYdEEYdQtPACAAIAE6ABQCQCAAKAIMRQ0AIAAQ7ICAgAALAkAgAUESRw0AIAAoAgAiAEUNACAAKALsASIARQ0AIABBEjYCDCAAIAAoAiRBAWo2AiQLC7oCAQF/AkACQAJAIABBjAJqMwEAIAFaDQACQCAAKAKIAg0AIABBnAJqIgIgAigCAEEBajYCAAwCC0EAIQIgAC0AU0UNAQwCCwJAIAFCgAFWDQACQCAAQbACaigCACICRQ0AIAAgAigCADYCsAIgAEGYAmoiACAAKAIAQQFqNgIAIAIPCyAAQawCaigCACICRQ0AIAAgAigCADYCrAIgAEGYAmoiACAAKAIAQQFqNgIAIAIPCwJAIABBqAJqKAIAIgJFDQAgACACKAIANgKoAiAAQZgCaiIAIAAoAgBBAWo2AgAgAg8LAkAgAEGkAmooAgAiAkUNACAAIAIoAgA2AqQCIABBmAJqIgAgACgCAEEBajYCACACDwsgAEGgAmoiAiACKAIAQQFqNgIACyAAIAEQ0YKAgAAhAgsgAgtOAQJ/AkAgAC0AFSIBQQRxRQ0AAkAgACgCBCICRQ0AIAAoAgAgAhDLgICAACAALQAVIQELIAAgAUH7AXE6ABULIABBADYCECAAQgA3AgQLpwMDAn8CfgF/QQAhAgJAIAAtABQNAAJAIAAoAgwiAg0AIABBEhDqgICAACAAKAIIIAAoAhBBf3NqDwtBACEDAkAgAC0AFUEEcUUNACAAKAIEIQMLAkAgAawgADUCECIEfEIBfCIFIAUgBHwiBCAEIAKtIgVVGyIEIAVXDQAgABDsgICAACAAQRIQ6oCAgABBAA8LIAAgBD4CCCAEQv////8PgyEEAkACQCAAKAIAIgJFDQAgAiADIAQQ7oCAgAAhAgwBCyADIAQQ3oCAgAAhAgsCQAJAAkAgAkUNAAJAIAAtABVBBHENACAAKAIQIgNFDQAgAiAAKAIEIAMQoImAgAAaCyAAIAI2AgQgACgCACIDRQ0BIANBvAJqKAIAIAJNDQFBgAEhBiADQbQCaigCACACTQ0CIANBuAJqKAIAIAJLDQEgA0GOAmovAQAhBgwCCyAAEOyAgIAAIABBBzoAFEEAIQIgACgCDEUNAiAAEOyAgIAAQQAPCyACQQAoAtTVgoAAEYGAgIAAACEGCyAAIAY2AgggACAALQAVQQRyOgAVIAEhAgsgAgtvAAJAIAENACAAIAIQ64CAgAAPCwJAAkAgAEG8AmooAgAgAU0NAAJAIABBtAJqKAIAIAFLDQAgAkKBAVoNAQwCCyAAQbgCaigCACABSw0AIABBjgJqMwEAIAJaDQELIAAgASACENCCgIAAIQELIAELPgEBfwJAIAAoAgQiAUUNACABIAAoAhBqQQA6AAAgACgCDEUNACAALQAVQQRxDQAgABDwgICAAA8LIAAoAgQLiQECAX4BfyAAKAIQQQFqrSEBAkACQCAAKAIAIgJFDQAgAiABEOuAgIAAIQIMAQsgARDXgICAACECCwJAAkAgAkUNACACIAAoAgQgACgCEEEBahCgiYCAABogACAALQAVQQRyOgAVDAELIABBBzoAFCAAKAIMRQ0AIAAQ7ICAgAALIAAgAjYCBCACC30BAn8jgICAgABB8ABrIgIkgICAgABBACEDAkAQ1ICAgAANACACQQA7ARwgAkEANgIYIAJCxoCAgIDAss07NwMQIAJBADYCCCACIAJBIGo2AgwgAkEIaiAAIAEQ34CAgAAgAkEIahDvgICAACEDCyACQfAAaiSAgICAACADC0QBAn8jgICAgABBEGsiAiSAgICAAEEAIQMCQBDUgICAAA0AIAIgATYCDCAAIAEQ8YCAgAAhAwsgAkEQaiSAgICAACADC3UBAX8jgICAgABBIGsiBCSAgICAACAEIAM2AgQCQCAAQQFIDQAgBEEcakEAOwEAIARCADcCFCAEIAA2AhAgBEEANgIIIAQgATYCDCAEQQhqIAIgAxDfgICAACABIAQoAhhqQQA6AAALIARBIGokgICAgAAgAQv9AwEHfyOAgICAAEGAAmsiAiSAgICAAAJAENSAgIAADQACQAJAIABBAUgNACABDQELQQBBADoAgPeCgAAMAQsCQEEALQCA94KAAA0AAkACQAJAAkAQ1ICAgABFDQBBAEEAOwCB94KAAAwBC0EAQQA7AIH3goAAQQAoAtj2goAAIgMNAQsgAkEAQYACEKOJgIAAGgwBCwJAQQAoAqzXgoAAIgRFDQAgAkEAQYACEKOJgIAAIAQ2AgAMAQsgA0GAAiACIAMoAjgRhICAgAAAGgtBACEDA0AgA0GD94KAAGogAzoAACADQQFqIgNBgAJHDQALQQAtAIL3goAAIQRBACEDA0AgAiADai0AACADQYP3goAAaiIFLQAAIgZqIARqIgRB/wFxQYP3goAAaiIHLQAAIQggByAGOgAAQQAgBDoAgveCgAAgBSAIOgAAIANBAWoiA0GAAkcNAAtBAEEBOgCA94KAAAsDQEEALQCB94KAAEEBaiIFQf8BcUGD94KAAGoiA0EALQCC94KAACADLQAAIgRqIgZB/wFxQYP3goAAaiIHLQAAOgAAIAcgBDoAAEEAIAU6AIH3goAAQQAgBjoAgveCgAAgASAEIAMtAABqQf8BcUGD94KAAGotAAA6AAAgAUEBaiEBIABBf2oiAA0ACwsgAkGAAmokgICAgAALcwECfwJAAkAgAA0AQX9BACABGyECDAELAkAgAQ0AQQEPCwNAAkACQCAALQAAIgIgAS0AACIDRw0AIAINAUEADwsgAkHwi4CAAGotAAAgA0Hwi4CAAGotAABrIgINAgsgAUEBaiEBIABBAWohAAwACwsgAgtaAQJ/AkADQAJAAkAgAC0AACICIAEtAAAiA0cNACACDQFBACECDAMLIAJB8IuAgABqLQAAIANB8IuAgABqLQAAayICDQILIAFBAWohASAAQQFqIQAMAAsLIAILlwEBAX8CQCAADQBBf0EAIAEbDwsCQCABDQBBAQ8LAkAgAkEBSA0AIAJBAWohAwJAA0ACQCAALQAAIgINAEEAIQIMAgsgAkHwi4CAAGotAAAiAiABLQAAQfCLgIAAai0AAEcNASABQQFqIQEgAEEBaiEAIANBf2oiA0EBTA0CDAALCyACIAEtAABB8IuAgABqLQAAaw8LQQALnAIBA38jgICAgABBEGsiBCSAgICAACAAIAE2AkACQCABQYoYRg0AIAFB+wFxQQRyQQ5HDQACQAJAIAAoAgAiBSgCRCIGDQBBACEFDAELIAVBAEEAIAYRhICAgAAAIQULIAAgBTYCSAsCQAJAIAINACAAIAE2AkACQCABDQAgACgC/AFFDQILIAAgARD5gICAAAwBCwJAIAAoAvwBDQACQCAAQigQ64CAgAAiAQ0AIAAgATYC/AEMAgsgAUEAQSgQo4mAgAAiASAANgIgIAFBATsBCCAAIAE2AvwBCyAEIAM2AgwgACACIAMQ+oCAgAAhASAAKAL8ASIARQ0AIAAgAUJ/QQFBmICAgAAQ/ICAgAAaCyAEQRBqJICAgIAAC38BAX8CQCAAKAL8ASICRQ0AAkAgAkEJai0AAEEkcUUNACACEM+BgIAADAELIAJBATsBCAsCQCABQYoYRg0AIAFB+wFxQQRyQQ5HDQACQAJAIAAoAgAiASgCRCICDQBBACEBDAELIAFBAEEAIAIRhICAgAAAIQELIAAgATYCSAsLhwEBAX8jgICAgABB8ABrIgMkgICAgAAgA0GAAjsBHCADQQA2AhggA0HGADYCECADIAA2AgggAyAAKAJwNgIUIAMgA0EgajYCDCADQQhqIAEgAhDfgICAACADQQhqEO+AgIAAIQECQCADLQAcQQdHDQAgABD7gICAAAsgA0HwAGokgICAgAAgAQtcAAJAIAAtAFMNACAALQBUDQAgAEEBOgBTAkAgACgCvAFBAUgNACAAQQE2AoACCyAAQYwCakEAOwEAIAAgACgCiAJBAWo2AogCIAAoAuwBIgBFDQAgAEEHNgIMCwupBQQBfwF+An8BfgJAIAENAAJAIABBCWotAABBJHFFDQAgABDPgYCAAEEADwsgAEEBOwEIQQAPCwJAAkAgACgCICIFDQBCgJTr3AMhBgwBCyAFNAJwIQYLQQJBECADGyEHAkAgAkJ/VQ0AAkACQCADQQFGDQBCACECIAZCAFMNAUIAIQIgASEIA0AgCEEBai0AACAILQAAckUNAiAIQQJqIQggAkICfCICIAZXDQAMAgsLIAEQoYmAgACtIQILIAdBgARyIQcLAkACQAJAIARBf0cNAAJAIAIgBlcNAEESIQggBUUNAyAFKALsASIARQ0DIABBEjYCDCAAIAAoAiRBAWo2AiRBEg8LAkACQCAAKAIYQgFCAiADQQFGG0IAIAdBgARxGyACfCIJQiAgCUIgVRunIgRIDQAgACAAKAIUIgg2AhAgACAALwEIQS1xOwEIDAELQQchCCAAIARBABDCgYCAAA0DIAAoAhAhCAsgCCABIAmnEKCJgIAAGgwBCwJAAkAgAEEJai0AAEEkcQ0AIAAoAhhFDQELIAAQv4GAgAALIAAgATYCEAJAIARBmICAgABHDQAgACABNgIUAkACQCAAKAIgIghFDQAgCEG8AmooAgAgAU0NAEGAASEEIAhBtAJqKAIAIAFNDQEgCEG4AmooAgAgAUsNACAIQY4Cai8BACEEDAELIAFBACgC1NWCgAARgYCAgAAAIQQLIAAgBDYCGAwBCyAAIAQ2AiQgB0GACEGAECAEG3IhBwsgACAHOwEIIAAgAqdB/////wdxNgIMAkAgAw0AIAAoAiAtAFAhAwsgACADOgAKQQAhCCACIAZXDQBBEiEIIAAoAiAiAEUNACAAKALsASIARQ0AQRIhCCAAQRI2AgwgACAAKAIkQQFqNgIkCyAIC4kCAQV/AkAgAQ0AQX8PCyAAKAIUIgJBf2ohAwJAIAJBAUgNACAAKAIQIANBBHRqIQQDQAJAIAQoAgAiAEUNACABIQIDQAJAAkAgAC0AACIFIAItAAAiBkcNACAFRQ0FDAELIAVB8IuAgABqLQAAIAZB8IuAgABqLQAARw0CCyACQQFqIQIgAEEBaiEADAALCwJAIAMNAEEAIQADQAJAAkAgAEHyuoCAAGotAAAiAiABIABqLQAAIgVHDQAgAg0BQQAPCyACQfCLgIAAai0AACAFQfCLgIAAai0AAEcNAgsgAEEBaiEADAALCyAEQXBqIQQgA0EASiEAIANBf2ohAyAADQALQX8PCyADC74BAQN/I4CAgIAAQRBrIgEkgICAgABBACECAkAgACgCACIDKAIQQRRqKAIADQAgAC0AvwENAAJAIAMoAgBBACADIAFBDGpBAEGeBBC+goCAACICRQ0AIABBlZuAgABBABD6gYCAACAAIAI2AgxBASECDAELIAMoAhBBFGogASgCDCIANgIAAkAgACADKAJgQQBBABCCgYCAAEEHRw0AIAMQ+4CAgABBASECDAELQQAhAgsgAUEQaiSAgICAACACC8ABAQN/IAAoAgAhAQJAIAAoAoACIgJFDQADQCAAIAIoAgA2AoACIAEgAigCBCACKAIIEYWAgIAAACABIAIQy4CAgAAgACgCgAIiAg0ACwsCQCAAKAJAIgJFDQAgASACEMuAgIAACwJAIAAoAkQiAkUNACABIAIQi4KAgAALAkAgAUUNACABIAEoAogCIAAtABhrIgM2AogCQQAhAgJAIAMNACABQY4Cai8BACECCyABQYwCaiACOwEACyAAQQA6ABgLvwsECn8CfgF/An4jgICAgABBEGsiAiSAgICAAAJAIAAoAhwiA0EGSw0AQQEgA3RB4QBxRQ0AIAAoAgQoAgQoAgAhBCAAKAIYIgUoAgQiAygCACEGAkACQCAAKAIARQ0AIAMtABRBAkcNAEEFIQNBACEHDAELAkAgBUUNAEEAIQdBACEDIAUtAAgNAQsgBUEAQQAQgYGAgAAhA0EBIQcLAkACQAJAIAAoAgwiBSADcg0AQQchAyAAKAIEIAAoAhgoAgQoAiRBAEEAEIKBgIAAQQdGDQIgACgCDCEFDAELIAMNAQtBACEDIAUNACAAKAIEQQIgAEEIahCBgYCAACIDDQAgAEEBNgIMQQAhAwsgAyAAKAIYKAIEIggoAiQiCSAAKAIEKAIEIgUoAiQiCkdBA3QgAyAFKAIALQAFIgtBBUYbIAMbIQUgCCgCMCEIAkAgAUUNACAAKAIQIQMDQCAFDQEgAyAISw0BQQAhBQJAIANBACgCsNeCgAAgACgCGCgCBCgCJG5BAWpGDQACQCAGIAMgAkEIakECIAYoAswBEYaAgIAAACIFDQAgACADIAIoAggoAgRBABCDgYCAACEFIAIoAggiA0UNACADEISBgIAACyAAKAIQIQMLIAAgA0EBaiIDNgIQIAFBf2oiAQ0ACwsCQAJAIAVB5QBGDQAgBQ0BIAAgCDYCJCAAIAggACgCECIDa0EBajYCICAIIANJDQBBACEFIAAoAigNASAAIAAoAhgoAgQoAgAiAygCWDYCLCAAQQE2AiggAyAANgJYDAELAkAgCA0AIAAoAgQoAgQiA0EANgIwQQEhCCADEIWBgIAAIgVB5QBGDQAgBQ0BCyAAKAIEQQEgACgCCEEBahCGgYCAACIFDQACQCAAKAIAIgNFDQAgAxCHgYCAAAsCQAJAIAtBBUcNACAAKAIEIgEoAgQiAyADLwEYQd//A3E7ARggAUEAQQAQgYGAgAAiBQ0BAkACQCADKAIMKAI4IgstABJBAkcNACALLQATQQJGDQELIAFBAkEAEIGBgIAAIgUNAiADKAIMKAJIEIiBgIAAIgUNAiALQYIEOwASCyADIAMvARhB3/8DcTsBGAsCQAJAIAkgCk4NACAIrCAJrCIMfiENIAQoAjwhDgJAAkAgCCAKIAltIgNqQX9qIANtIgMgA0EAKAKw14KAACIBIAAoAgQoAgQoAiQiCG5BAWpGayIDIAQoAhgiC0sNAANAQQAhBQJAIAMgASAIbkEBakYNACAEIAMgAkEIakEAIAQoAswBEYaAgIAAACIFDQAgAigCCBCIgYCAACEFIAIoAggiAUUNACABEISBgIAACwJAIANBAWoiAyALSw0AIAUNAEEAKAKw14KAACEBIAAoAgQoAgQoAiQhCAwBCwsgBQ0BCyAEQQBBARCJgYCAACEFCyAFRSEDAkBBACgCsNeCgAAiASAKaqwiDyANIA0gD1UbIhAgASAJaqwiD1cNACAFDQADQCAGKALMASEDIAJBADYCCAJAIAYgDyAMf6dBAWogAkEIakEAIAMRhoCAgAAAIgUNACAOIAIoAggoAgQgCSAPIA4oAgAoAgwRh4CAgAAAIQULAkAgAigCCCIDRQ0AIAMQhIGAgAALIAVFIQMgDyAMfCIPIBBZDQEgBUUNAAsLIANFDQMgDiACQQhqIA4oAgAoAhgRg4CAgAAAIgUNAwJAIAIpAwggDVcNACAOIA0gDigCACgCEBGIgICAAAAiBQ0ECyAEQQAQioGAgAAhBQwBCyAEIAkgCm0gCGw2AhggBEEAQQAQiYGAgAAhBQsgBQ0BIAAoAgRBABCLgYCAACIDQeUAIAMbIQUMAQsgAyADLwEYQd//A3E7ARgLAkAgB0UNACAAKAIYQQAQjIGAgAAaIAAoAhhBABCLgYCAABoLIABBByAFIAVBihhGGyIDNgIcCyACQRBqJICAgIAAIAML2wwDCH8BfgR/I4CAgIAAQRBrIgMkgICAgAAgACgCBCIEKAIAIQUCQAJAIAAtAAgiBkECRg0AAkAgAQ0AIAZBAUYNAQsCQCAAKAIAQSNqLQAAQQJxRQ0AIAUtAA4NACAEIAQvARhB/v8DcTsBGAsgBC8BGCEGAkAgAUUNAEEIIQcgBkEBcQ0CCyAEIAZB7/8DcTsBGAJAIAQoAjANACAEIAZBEHI7ARgLIARBJGohCEEAIQcCQANAAkACQAJAIAQoAgwNAANAIAQoAgAQjYGAgAAiBw0CIARBASADQQxqQQAQjoGAgAAiBw0CIAQoAgAoAhghCQJAAkAgAygCDCIKKAI4IgYoABwiB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyIgdFDQAgBigAGCAGKABcRg0BCyAJIQcLAkACQAJAAkACQCAHQQAgBCgCBCkDICILQoCAgBCDUBsiDA0AIAQoAighDQwBC0EaIQcgBkHQnYCAAEEQEJyJgIAADQECQCAGLQASQQJJDQAgBCAELwEYQQFyOwEYCyAGLQATQQFLDQEgBkEVakHgnYCAAEEDEJyJgIAADQEgBi0AEUEQdCAGLQAQQQh0ciIOQf99akH//QNLDQEgDkF/aiAOcQ0BIAQgBC8BGEECcjsBGCAOIAYtABQiD2shDQJAIA4gBCgCJEYNACAKEI+BgIAAIAQgDjYCJCAEIA02AigCQCAEKAJEIgZFDQAgBCAGQXxqIgY2AkQgBhCQgYCAACAEQQA2AkQLIAQoAgAgCCAPEJGBgIAAIgdFDQMMBwsCQCALQoGAgIABg0IBUQ0AIAwgCU0NACADQdSagIAANgIIIANBwJgENgIEIANBqJyAgAA2AgBBCyEHQQtBhpyAgAAgAxDGgICAAAwCCyANQeADSQ0BIAQgDTYCKCAEIA42AiQgBCAGKAA0IgdBGHQgB0EIdEGAgPwHcXIgB0EIdkGA/gNxIAdBGHZyckEARzoAESAEIAYoAEAiBkEYdCAGQQh0QYCA/AdxciAGQQh2QYD+A3EgBkEYdnJyQQBHOgASCyAEIAw2AjAgBCAKNgIMIAQgDUFdajsBHiAEIA1BBXRBgH1qQf8BbkFpaiIGOwEgIAQgBjsBHCAEIA1BBnRBgHpqQf8BbkFpaiIGOwEaIAQgBkH/ACAGQf//A3FB/wBJGzoAFQwCCyAKEI+BgIAAIARBADYCDAwECyAEKAIMIQoLIApFDQALQQAhBwsCQAJAIAFFDQAgBw0AQQghByAELQAYQQFxDQICQAJAIAUoAigiBw0AIAUgACgCAC0AUkEBRzoAFSAFLQAQQQFHDQEgBUECEJKBgIAAIQcCQCABQQJIDQAgBw0AA0AgBUEEEJKBgIAAIgdBBUcNAUEFIQcgBSgCtAEgBSgCsAERgYCAgAAADQAMBgsLIAcNACAFQQI6ABAgBUIANwNIIAUgBSgCGCIGNgIkIAUgBjYCICAFIAY2AhwMAQsgB0GFBEYNAiAHDQMLIAQQhYGAgAAhBwtBACEKIAcNAgwEC0GFBEEFIAQtABQbIQcLIAdFIQoLAkAgBC0AFA0AIAQoAgwiBkUNACAEQQA2AgwgBhCPgYCAAAsCQAJAIAdB/wFxQQVHDQAgBC0AFA0AIAQoAgQiBigCiAMiDUUNACAGQZADaigCACIOQQBIDQAgBkGMA2ooAgAgDiANEYOAgIAAAA0BIAZBfzYCkAMLIAoNAgwECyAGIAYoApADQQFqNgKQAwwACwsCQCAALQAIDQAgBCAEKAIsQQFqNgIsCyAAQQJBASABGyIGOgAIAkAgBiAELQAUTQ0AIAQgBjoAFAsgAUUNACAEKAIwIAQoAgwiDSgCOCgAHCIGQRh0IAZBCHRBgID8B3FyIAZBCHZBgP4DcSAGQRh2cnJGDQAgDSgCSBCIgYCAACIHDQEgDSgCOCAEKAIwIgZBGHQgBkEIdEGAgPwHcXIgBkEIdkGA/gNxIAZBGHZycjYAHAsCQCACRQ0AIAIgBCgCDCgCOCgAKCIEQRh0IARBCHRBgID8B3FyIARBCHZBgP4DcSAEQRh2cnI2AgALQQAhByABRQ0AIAUoAmAgACgCACgCwAMiBE4NACAFLQAGRQ0AIAUgBBCTgYCAACEHCyADQRBqJICAgIAAIAcLzAEBAX8gACgCBCIAIAI6ABZBCCEEAkAgAC0AGEECcQ0AIAAoAiQgACgCKGsiBCACIAQgAkobIQIgAEEkaiEEAkAgAUGAfGpBgPwDSw0AIAFpQQFLDQAgAEGACCABIAJBIEobIAEgAUGABEYbNgIkIAAoAkQiAUUNACAAIAFBfGoiATYCRCABEJCBgIAAIABBADYCRAsgACgCACAEIAIQkYGAgAAhBCAAIAAoAiQgAkH//wNxazYCKCADRQ0AIAAgAC8BGEECcjsBGAsgBAuxAwMHfwR+AX8jgICAgABBEGsiBCSAgICAACAAKAIEKAIEIgUoAgAhBkEAIQcCQCAAKAIYKAIEKAIkIgggBSgCJCIFRg0AIAYtAAxBAEdBA3QhBwsCQCAIQQFIDQAgBw0AIAggBSAIIAVIGyEJQQAgBWshCiAIrCILIAGtfiIMIAt9IQ0gCCABQX9qbCEIIAWsIQ4gBSEBA0AgBEEANgIMQQAhBwJAQQAoArDXgoAAIAFuIA0gDn+nIgFGDQACQCAGIAFBAWogBEEMakEAIAYoAswBEYaAgIAAACIHDQAgBCgCDBCIgYCAACIHDQAgBCgCDCgCBCAKIAFsaiAIaiACIA0gC4GnaiAJEKCJgIAAIQFBACEHIAQoAgwoAghBADoAACADDQAgDUIAUg0AIAFBHGogACgCGCgCBCgCMCIPQRh2OgAAIAFBHWogD0EQdjoAACABQR5qIA9BCHY6AAAgAUEfaiAPOgAACyAEKAIMIgFFDQAgARCEgYCAAAsgDSAOfCINIAxZDQEgBw0BIAggBWohCCAAKAIEKAIEKAIkIQEMAAsLIARBEGokgICAgAAgBwtEAQJ/AkAgAC0AHEEgcUUNACAAKAIUIgEoAogBIQIgASAANgKIASAAIAI2AhAgASABKAJ4QX9qNgJ4DwsgABDvgoCAAAuCAgEFf0EAIQECQCAAKAIwDQAgACgCDCICKAI4IQMgAigCSBCIgYCAACIBDQBBACEBIANBCGpBACkD2J2AgAA3AAAgA0EAKQPQnYCAADcAACADIAAoAiRBCHY6ABAgAyAAQSZqLwEAOgARIANBgQI7ABIgACgCJCEEIAAoAighBSADQcDAADsAFSADQSA6ABcgAyAEIAVrOgAUIANBGGpBAEHMABCjiYCAABogAkENEP+CgIAAIAAgAC8BGEECcjsBGCADIAAtABE6ADcgA0EAOgA2IANBADsANCADIAAtABI6AEMgA0EAOgBCIANBADsAQCAAQQE2AjAgA0EBOgAfCyABC2cBAn8gACgCBCIDKAIMIgAoAjghBAJAIAAoAkgQiIGAgAAiAA0AIAFBAnQgBGpBJGogAkEYdCACQQh0QYCA/AdxciACQQh2QYD+A3EgAkEYdnJyNgAAIAFBB0cNACADIAI6ABILIAALkwEBBH8CQCAAKAIUIgFBAUgNAEEAIQJBDCEDA0ACQCAAKAIQIANqKAIAIgRFDQACQCAAKAI4DQAgBBCUgYCAACAAKAIUIQEMAQsgBCAELwFOQQhyOwFOCyADQRBqIQMgAkEBaiICIAFIDQALCyAAIAAoAhhBbnE2AhggABCVgYCAAAJAIAAoAjgNACAAEJaBgIAACwtvAQJ/IAAoAhQhAQJAIAAtABxBBHFFDQAgASgCGCAAKAIYSQ0AAkAgASgCYA0AQQAPCyAAEJeBgIAADwsCQCABKAIoIgINAAJAIAEoApQBIAEoApgBTQ0AIAAQmIGAgAAPCyAAEJmBgIAAIQILIAIL7gcCB38BfiOAgICAAEEQayIDJICAgIAAAkAgACgCKCIEDQACQEEAKAKc14KAACIFRQ0AQQohBEGQAyAFEYGAgIAAAA0BCwJAIAAtABBBA0kNAAJAAkAgAEEBEJqBgIAADQAgACgCWCIERQ0BA0AgBEEBNgIQIAQoAiwiBA0ADAILCwJAIAAtABINACAAKAIYRQ0AAkAgAEEBIANBACAAKALMARGGgICAAAAiBA0AIAMoAgAQiIGAgAAiBA0AIAMoAgAQm4GAgAAgAEEBOgASQQAhBAsCQCADKAIAIgVFDQAgBRCEgYCAAAsgBA0DCwJAIAFFDQAgAC0ABUEERg0AIAAoAkAiBigCAEUNACAAQQE6ABMCQAJAIAEtAAAiBw0AQQAhCEEAIQUMAQsgAUEBaiEJQQAhBUEAIQQDQCAFIAdBGHRBGHVqIQUgCSAEaiEHIARBAWoiCCEEIActAAAiBw0ACwsgACkDSCEKAkAgAC0ACEUNAAJAAkAgClBFDQBCACEKDAELIApCf3wgADUClAEiCn9CAXwgCn4hCgsgACAKNwNICyADQQAoArDXgoAAIAAoApgBbUEBaiIEQRh0IARBCHRBgID8B3FyIARBCHZBgP4DcSAEQRh2cnI2AAwgBiADQQxqQQQgCiAGKAIAKAIMEYeAgIAAACIEDQMgACgCQCIEIAEgCCAKQgR8IgogBCgCACgCDBGHgICAAAAiBA0DIAAoAkAhBCADIAhBGHQgCEEIdEGAgPwHcXIgCEEIdkGA/gNxIAhBGHZycjYADCAEIANBDGpBBCAKIAitfCIKIAQoAgAoAgwRh4CAgAAAIgQNAyAAKAJAIQQgAyAFQRh0IAVBCHRBgID8B3FyIAVBCHZBgP4DcSAFQRh2cnI2AAwgBCADQQxqQQQgCkIEfCAEKAIAKAIMEYeAgIAAACIEDQMgACgCQCIEQZ+cgIAAQQggCkIIfCAEKAIAKAIMEYeAgIAAACIEDQMgACAAKQNIIAhBFGqtfDcDSCAAKAJAIgQgAyAEKAIAKAIYEYOAgIAAACIEDQMgAykDACAAKQNIIgpXDQAgACgCQCIEIAogBCgCACgCEBGIgICAAAAiBA0DCyAAQQAQnIGAgAAiBA0CIAAgACgC1AEQnYGAgAAQnoGAgAAiBA0CIAAoAtQBIQUCQANAIAUoAgAiBEUNASAEEJ+BgIAADAALCwJAIAAoAhgiBCAAKAIgTQ0AIAAgBCAEQQAoArDXgoAAIAAoApgBbUEBakZrEKCBgIAAIgQNAwsgAg0AIAAgARCKgYCAACIEDQILIABBBToAEAtBACEECyADQRBqJICAgIAAIAQLZwECfwJAAkAgACgCPCICKAIAIgNFDQAgAkEVIAEgAygCKBGEgICAAAAiAUEMRg0AIAENAQtBACEBIAAtAAcNACAALQAKIgJFDQAgACgCPCIAIAIgACgCACgCFBGDgICAAAAhAQsgAQv9AQEEfwJAAkAgAC0ACCICQQJLDQBBACEDAkAgAg4DAgEAAgsCQAJAIAAoAgQiBCgCACICKAIoIgMNACACIAIoAmRBAWo2AmQCQCACLQAQQQJHDQAgAi0ABEUNACACLQAFQQFHDQAgAkEBOgAQDAILIAIgAi0AE0EBEKGBgIAAIgNB/wFxQXZqIgVBA0sNAAJAIAUOBAABAQAACyACQQY6ABAgAiADNgIoIAJBmYCAgABBmoCAgAAgAxs2AswBCyABDQAgAw0CCyAEQQE6ABQgACAAKAIUQX9qNgIUIAQoAkAQpIGAgAAgBEEANgJACyAAEKWBgIAAQQAhAwsgAwulBQEHfyOAgICAAEEgayICJICAgIAAQQAhAwJAIAAtAAhBAkcNAAJAIAAoAgQiAC0AEUUNACAAKAIAIQQCQCAAKAIIIgVFDQAgBSEDA0AgAyADLQABQfsBcToAASADKAIYIgMNAAsLIAAtABINAEEAIQMCQCAAKAIwIgZBAkkNAEEDQQIgBkF+aiIDIAMgACgCKEEFbkEBanBrIgNBAWpBACgCsNeCgAAgACgCJG5GGyADaiEDCwJAAkAgAyAGRg0AIAZBACgCsNeCgAAgACgCJG5BAWpHDQELIAJB1JqAgAA2AgggAkGvngQ2AgQgAkGonICAADYCAEELIQNBC0GGnICAACACEMaAgIAADAILAkAgACAGIAAoAgwoAjgoACQiA0EYdCADQQh0QYCA/AdxciADQQh2QYD+A3EgA0EYdnJyIgcQpoGAgAAiCCAGTQ0AIAJB1JqAgAA2AhggAkG0ngQ2AhQgAkGonICAADYCEEELIQNBC0GGnICAACACQRBqEMaAgIAADAILQQAhAwJAIAVFDQAgCCAGTw0AIAVBAEEAEKeBgIAAIQMLIANFIQUCQCAGIAhNDQAgAw0AA0AgACAIIAZBARCogYCAACIDRSEFIAMNASAGQX9qIgYgCEsNAAsLAkAgB0UNACADQeUARiAFckUNACAAKAIMKAJIEIiBgIAAIQMgACgCDCgCOEEANgAgIAAoAgwoAjhBADYAJCAAKAIMKAI4IAhBGHQgCEEIdEGAgPwHcXIgCEEIdkGA/gNxIAhBGHZycjYAHCAAIAg2AjAgAEEBOgATCyADRQ0AIAQQqYGAgAAaDAELIAAoAgAhAwJAIAAtABNFDQAgAyAAKAIwNgIYCyADIAFBABCJgYCAACEDCyACQSBqJICAgIAAIAMLiAoBBn8jgICAgABBMGsiASSAgICAAAJAAkACQAJAAkAgAC0AEA0AAkACQAJAAkACQAJAA0ACQCAAQQEQkoGAgAAiAkEFRg0AIAINCkEBIQMgAC0AEUEBSw0GIAAoAgAhBCABQQE2AhBBACEFQQAhAgJAIAAoAkAoAgAiBg0AIAQgACgCrAFBACABQRBqIAQoAiARhoCAgAAAIQIgASgCEEEARyEDCyADRQ0FIAINBUEAIQUgAUEANgIsIAAoAjwiAiABQSxqIAIoAgAoAiQRg4CAgAAAIgIgASgCLHINBUEAIQUgACABQShqEICDgIAAIgINBSAGDQMgASgCKA0DAkBBACgC+PqCgAAiAkUNACACEYmAgIAAAAsCQCAAQQIQkoGAgAANAAJAIAQoAhwiAkUNACAEIAAoAqwBQQAgAhGEgICAAAAaCyAALQAEDQACQCAAKAI8IgIoAgAiA0UNAAJAIAAtAA0NACACQQEgAygCIBGDgICAAAAaCyAALQARQQVGDQAgAEEBOgARCyAAIAAtAAw6ABILQQAhBUEAKAL8+oKAACICDQIMBAsgACgCtAEgACgCsAERgYCAgAAADQALQQUhAgwICyACEYmAgIAAAAwBCwJAAkAgBg0AIAAoAqwBIQIgAUGBEDYCJCAEIAIgACgCQEGBECABQSRqIAQoAhgRioCAgAAAIgJBDkYNASACDQMLIAFBADoAJCAAKAJAIgIgAUEkakEBQgAgAigCACgCCBGHgICAAAAiAkGKBEYhAwJAIAYNACAAKAJAIgUoAgAiBEUNACAFIAQoAgQRgYCAgAAAGiAFQQA2AgALQQAgAiADGyECIAEtACRBAEchBQwCC0EAIQJBASEFDAELQQAhAgsgAg0EIAVFDQELQYgGIQIgAC0ADg0DIABBBBCSgYCAACICDQMCQAJAAkACQCAAKAJAKAIADQACQCAAKAIAIgMgACgCrAFBACABQRBqIAMoAiARhoCAgAAAIgINACABKAIQRQ0AIAFBADYCLCADIAAoAqwBIAAoAkBBghAgAUEsaiADKAIYEYqAgIAAACICDQBBACECIAEtACxBAXFFDQAgAUHUmoCAADYCCCABQbnEAzYCBCABQfWbgIAANgIAQQ4hAkEOQYacgIAAIAEQxoCAgAAgACgCQCIDKAIAIgVFDQAgAyAFKAIEEYGAgIAAABogA0EANgIACyAAKAJAKAIARQ0BCyAAENuCgIAAIgINAiAAIAAtAAxFEOaCgIAAIQIgAEEAOgAQDAELIAAtAAQNAAJAIAAoAjwiAygCACIFRQ0AAkAgAC0ADQ0AIANBASAFKAIgEYOAgIAAABoLIAAtABFBBUYNACAAQQE6ABELIAAgAC0ADDoAEgsgAkUNAQsgAkH/AXFBdmoiA0EDSw0DAkAgAw4EAAQEAAALIABBmYCAgAA2AswBIABBBjoAECAAIAI2AigMAwsgAC0ADA0AIAAtABdFDQACQCAAKAI8IgIgAUEQakEQQhggAigCACgCCBGHgICAAAAiAkUNACACQYoERw0CIAFCADcDGCABQgA3AxALIABB6ABqIAFBEGpBEBCciYCAAEUNACAAENmCgIAACyAALQAMDQIgAC0AEA0CIAAgAEEYahCAg4CAACECCyACRQ0BCyAAENqCgIAADAELIABBAToAFyAAQQE6ABBBACECCyABQTBqJICAgIAAIAILkwEBA38jgICAgABBEGsiBCSAgICAAAJAIAAoAgAiBSABIARBDGogAyAFKALMARGGgICAAAAiAw0AAkAgBCgCDCIGKAIIIgUoAgQgAUYNACAFIAY2AkggBSAANgI0IAUgATYCBCAFIAYoAgQ2AjggBUHkAEEAIAFBAUYbOgAJCyACIAU2AgALIARBEGokgICAgAAgAwsuAQF/IAAoAkgiASgCFCEAIAEQ74KAgAACQCAAKALUASgCDA0AIAAQ3IKAgAALC7sBAQF/AkAgAEUNAAJAQQAoArD6goAAIABLDQBBACgCtPqCgAAgAE0NAEEAKAK8+oKAACEBQQAgADYCvPqCgAAgACABNgIAQQBBACgCjPaCgABBf2o2Aoz2goAAQQBBACgC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gIAAGgtBACECIAAtAAogAUH3AXFHDQAgACgCECECCyACC8ABAgJ/AX5BACEBAkACQCAARQ0AENSAgIAADQBCKBDXgICAACICRQ0AIAJBJGpBADYCACACQRxqQgA3AgAgAkEUakIANwIAIAJBCGoiASAAQQhqKQMAIgM3AwAgAiAAKQMANwMAIAJBEGogAEEQaigCADYCACACQQA2AiAgASADpyIAQf/3A3E7AQAgAEEScUUNASACIABB/8cDcUGAIHI7AQggAhDKgYCAAEUNASACELWBgIAAQQAhAQsgAQ8LIAILawEBfwJAAkAgAC8BCCIBQRJxRQ0AAkAgAUGAgAFxRQ0AQQchASAAEMGBgIAADQILAkAgACgCGEUNACAAKAIQIAAoAhRGDQELIAAQy4GAgAAiAQ0BCyAAIAAvAQhB/98DcTsBCEEAIQELIAELaQEBf0EHIQECQCAAIAAoAgxBA2pBARDCgYCAAA0AQQAhASAAKAIQIAAoAgxqQQA6AAAgACgCDCAAKAIQakEBakEAOgAAIAAoAgwgACgCEGpBAmpBADoAACAAIAAvAQhBgARyOwEICyABCz0AAkAgACgCACABIAKsIAMgBBD8gICAAEESRw0AIABBEjYCFCAAKAIAQdCOgIAAQn9BAUEAEPyAgIAAGgsLWQACQCACQoCAgIAIVA0AAkAgA0EBakECSQ0AIAEgAxGCgICAAAALIABBEjYCFCAAKAIAQdCOgIAAQn9BAUEAEPyAgIAAGg8LIAAgASACp0EAIAMQzIGAgAALawEBfgJAAkAgAEEJai0AAEEkcUUNACAAEM+BgIAADAELIABBATsBCAsCQAJAIAG9IgJC/////////weDUA0AIAJCgICAgICAgPj/AINCgICAgICAgPj/AFENAQsgAEEIOwEIIAAgATkDAAsLTwEBfwJAIAAvAQgiAUGAwABxRQ0AIAAgACgCABCfg4CAABogAC8BCCEBCwJAIAFBgAhxRQ0AIAAoAhAgACgCJBGCgICAAAALIABBATsBCAs1AAJAAkAgAEEJai0AAEEkcUUNACAAEM+BgIAADAELIABBATsBCAsgAEEEOwEIIAAgATcDAAthAAJAIAJCgICAgAhUDQACQCADQQFqQQJJDQAgASADEYKAgIAAAAsgAEESNgIUIAAoAgBB0I6AgABCf0EBQQAQ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gICAgAAL+ZkCCgR/AX4UfwF+B38CfgJ8AX8BfgN/I4CAgIAAQaAFayIBJICAgIAAQQchAiAAKAJoIQMgACgCACEEQgAhBQJAAkACQAJAIAAoAihBB0cNAEEAIQYgAyEHDAELIAAoAlghCCAELQBQIQlBACEGIABBADYCeEIAIQUgAEIANwM4IABBADYCKCAEQZADakEANgIAAkAgBCgCgAJFDQBBCSECIAMhBwwCCyAAQdgAaiEKIARBzAJqIQsgAEH8AGohDCAAQeAAaiENIARBEGohDiAAQcwBaiEPIAMgACgCJEEUbGohByABQeADakEEciEQIAFB+ARqIREgAUHQBGpBFGohEkEAIRNCACEFQQAhBkEAIRQDQCAUIRUgBUIBfCEFAkACQCAHLQAAIhZBrgFLDQACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAWDq8BMjM0kwGSAZIBiQFubWRgtQEBAwUcIicoJSktQEBAQENERUVFRkdVVldXWIwBjAGMAYwBfiMjfXt4dnQqLB8fHx8fHyBzbGJcXV0CBAYHCAkMDQ4PEBESExQVFhkbHR6JASEkK4kBLi8wMTU2Nzg4OjsaGhoaGBgYGBgXOyY8PQs+P4kBQUJKS0xNTk9QUVJTVFWRAZABjwGOAY4BjQGLAYoBiAGHAYYBhQGEAYMBggGBAYABfwp6eXd1cXEAb29rammJAWhnZmVjYV9eXDILIAcoAhAhFwxx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CyABQQAgDBCjiYCAABogACAALQABQQRyOgABDAELIAAoAgwgBiAKbiIBQQJ0aigCACIIRQ0AIAUgCDYCPCAGIAEgCmxrIQYgCCEJDAELQQAhASAJRQ0BCyABQQJ0IQggBEVBAXQhDANAAkAgCSAHKAIwTQ0AIAVB1JqAgAA2AiggBUHipQQ2AiQgBUGonICAADYCIEELIQFBC0GGnICAACAFQSBqEMaAgIAADAMLIAAoAgwgCGoiASAJNgIAAkACQCAGIApJDQACQAJAIAFBBGooAgAiAUUNACAFIAE2AjxBACEBDAELIAcgCUEAIAVBPGoQiYOAgAAhAQsgBiAKayEGDAELIAogBmsgAiAGIAJqIApLGyELAkAgBygCACIBIAkgBUE4aiAMIAEoAswBEYaAgIAAACIBDQAgBSAFKAI4Ig0oAgQiCSgAACIBQRh0IAFBCHRBgID8B3FyIAFBCHZBgP4DcSABQRh2cnI2AjwgBiAJakEEaiEJAkACQAJAIARFDQAgDRCIgYCAACIBDQIgCSADIAsQoImAgAAaDAELIAMgCSALEKCJgIAAGgtBACEBC0EAIQYgBSgCOCIJRQ0AIAkQhIGAgAALIAIgC2siAkUNAyADIAtqIQMLIAENASAIQQRqIQggBSgCPCIJDQALQQAhAQsgAQ0AIAJFDQAgBUHUmoCAADYCGCAFQbemBDYCFCAFQaicgIAANgIQQQshAUELQYacgIAAIAVBEGoQxoCAgAALIAVBwABqJICAgIAAIAEL0wEBA38jgICAgABBEGsiASSAgICAACABQQA2AgwCQAJAIAAtAABBBEcNACAAKAIEIQIMAQsgAEEBOgAAAkBBACgCnNeCgAAiA0UNAEEKIQJBmgMgAxGBgICAAAANAQsgACAAKAIQIAApAzhBACABQQxqEPCDgIAAIgINACAAKAIQENiAgIAAIABBADYCEAJAAkAgASgCDCICRQ0AIAAgAjYCBAwBCyAAKAIEDQBBACECDAELQQAhAiAALQAADQAgAEECOgAACyABQRBqJICAgIAAIAILXAACQAJAIAAoAggiAEUNAANAAkAgACACRg0AIAFFDQMgACgCQCABRg0DCyAAKAIYIgANAAsLAkAgAkUNACACIAItAAFB3wFxOgABC0EADwsgACABIAIQp4GAgAAL8gkBC38jgICAgABB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DwsgAUHrADYCAAtBASEECyAEDwsgAEEBaiEDQQAhBANAIAMgBGohACAEQQFqIgIhBCAALQAAQZCPgIAAai0AAEEBcQ0ACyABQbYBNgIAIAIPCwJAAkACQCAALQABIgMNAEEBIQQMAQtBASEEA0ACQCADQf8BcSACRw0AIAAgBEEBaiIEai0AACACRw0DCyAAIARBAWoiBGotAAAiAw0ACwsgAUG3ATYCACAEDwsCQCACQSdHDQAgAUH0ADYCACAEDwsgAUE7NgIAIAQLlAEBA38jgICAgABBEGsiASSAgICAACAAKAIAIQIDQCACIAIgAUEMahCbgoCAAGohAiABKAIMIgNBtgFGDQALAkACQCADQYx/akECSQ0AIANB3X5qQQJJDQAgA0E7Rg0AIANBAXRBwOaAgABqLwEAQTtHDQELQTshAyABQTs2AgwLIAAgAjYCACABQRBqJICAgIAAIAMLYQEDfyAAKAIEIQECQCAAKAIAIgIgAEEIaiIDTQ0AA0AgACACQXRqNgIAIAAgAi8BAiACQQRqEJ+CgIAAIAAoAgAiAiADSw0ACwsgAUHEwIGAAEEAEPqBgIAAIAAgATYCBAuhyQEDDn8BfgZ/I4CAgIAAQaAGayIEJICAgIAAIAAoAgAhBQJAIAFB0AJLDQACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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IgIoAgghByACQQA2AggCQCAGKAIAIgJFDQAgAygCACACEIuCgIAACyADQa0BIAdBABDahICAACEGIAVBVGoiAiADQTUgAigCACAGENqEgIAAIgY2AgAgBUFgaigCAEUNqgEgAiADQRMgBkEAENqEgIAANgIADKoBCyAFQVRqIgIgA0ExIAIoAgBBABDahICAACIHNgIAAkACQCAHRQ0AIAcgBigCADYCFCADIAIoAgAQ+ISAgAAMAQsgBigCACIGRQ0AIAMoAgAgBhCLgoCAAAsgBUFgaigCAEUNqQEgAiADQRMgAigCAEEAENqEgIAANgIADKkBCyADIAMoAgAgBUFsaigCABD2hICAACAFKAIEEPeEgIAAIQcgBUFUaiICIANBMCACKAIAQQAQ2oSAgAAiBjYCAAJAAkAgBkUNACAGIAc2AhQMAQsgB0UNACADKAIAIAcQi4KAgAALIAVBYGooAgBFDagBIAIgA0ETIAIoAgBBABDahICAADYCAAyoAQsgBUEANgIEDKcBCyAFQXhqIANBrQFBrAEgBUF2ai8BAEHqAEYbIAUoAgRBABDahICAADYCAAymAQsgBUF4aiADIAVBdmovAQAgBSgCBEEAENqEgIAANgIADKUBCyAFQWBqIgIgA0GqASACKAIAIAUoAgQQ2oSAgAAiAjYCACADIAUoAgQgAkEzEICFgIAADKQBCyAFQWxqIgIgA0EtIAIoAgAgBSgCBBDahICAACICNgIAIAMgBSgCBCACQTIQgIWAgAAMowELIAVBbGoiAiADQTMgAigCAEEAENqEgIAANgIADKIBCyAFQXhqIgIgAyAFLwECIAIoAgBBABDahICAADYCAAyhAQsgBUFkaiICIAIoAgAiB0H/////B3E2AgAgBUFUaiIGIAMgAyADIAMoAgAgBUFsaigCABD2hICAACAGKAIAEPeEgIAAIAUoAgQQ94SAgAAgBUFgakEAEIGFgIAAIgI2AgACQCAHQX9KDQAgBiADQRMgAkEAENqEgIAAIgI2AgALIAJFDaABIAIgAigCBEGAAXI2AgQMoAELIAVBfGoiAiACKAIAIgdB/////wdxNgIAIAVBbGoiBiADIAMgAygCACAFKAIEEPaEgIAAIAYoAgAQ94SAgAAgBUF4akEAEIGFgIAAIgI2AgACQCAHQX9KDQAgBiADQRMgAkEA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AkUNACACQQVqLQAAQQFxDQELIAAgARC3hICAACIBDQELIAAgAhC3hICAACEBCyABC7gCAQh/AkACQCABQQJIDQAgAC0AACIDQfCLgIAAai0AAEECdCABcyABIABqQX9qLQAAQfCLgIAAai0AAEEDbHNB/wBvQeDggIAAai0AACIERQ0AIABBAmohBSABQX5qIQYgA0HfAXEhByABQQNIIQgDQCAEQf8BcSIEQX9qIQkCQCAEQd+YgIAAai0AACABRw0AIAcgCUEBdEGwloCAAGovAQAiBEGQkYCAAGotAABHDQAgAC0AAUHfAXEgBEGRkYCAAGotAABHDQAgCA0DIARBkpGAgABqIQQgBSEDIAYhCgNAIAMtAABB3wFxIAQtAABHDQEgA0EBaiEDIARBAWohBCAKQX9qIgpFDQQMAAsLIAlBgOOAgABqLQAAIgQNAAsLIAEPCyACIAlB4OGAgABqLQAANgIAIAELbAEEfwJAIAAoAhQiAUEBSA0AQQQhAkEAIQMDQAJAIAAoAhAgAmooAgAiBEUNACAEKAIEKAIAKALUASgCLEEAKAK81oKAABGCgICAAAAgACgCFCEBCyACQRBqIQIgA0EBaiIDIAFIDQALC0EAC8wBAQJ/QQAhAgJAIAAoAigNAAJAAkAgAC0AFCIDDQAgAS8BHCEDDAELIANBA3ENASABLwEcIgNBCHENAQsgAUEANgIQIAAgACgCxAFBAWo2AsQBAkACQAJAIANBCHENACAALQAQQQNHDQELIABBARCcgYCAACICDQELIAAgARCegYCAACICDQAgARCfgYCAAEEADwsgAkH/AXFBdmoiAUEDSw0AAkAgAQ4EAAEBAAALIABBmYCAgAA2AswBIABBBjoAECAAIAI2AigLIAILkwUDA38BfgJ/QQUhBAJAIABBABDHgICAAEEASg0AAkAgAEGQAmotAABFDQAgAEG4AmooAgAQ2ICAgAALQQAhBQJAAkAgA0EBSA0AQQAgAkF4cSIEIARBBUgbIgZFDQAgA6wgAqx+IQcCQAJAIAFFDQAgASEDDAELAkBBACgC+PqCgAAiBEUNACAEEYmAgIAAAAsgBxDXgICAACEDAkBBACgC/PqCgAAiBEUNACAEEYmAgIAAAAsCQCADDQBBACEDDAELIANBACgC1NWCgAARgYCAgAAArCEHCwJAIAZB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+4CAgABBAAtRAAJAIABFDQAgAEF8aiEAAkADQAJAIABBA2otAAANACAAQQJqLQAADQAgAEEBai0AAA0AIAAtAABFDQILIABBf2ohAAwACwsgABDYgICAAAsLEAAgACABIAIgAxC4goCAAAuEAgIEfwF+AkACQCACRQ0AQQAhBCAAQfgCaiIFIAJBABCCgoCAACgCCCEGAkACQCADRQ0AIAYNACACEKGJgIAAQf////8DcSIHQT1qIgOtIQgCQAJAIABFDQAgACAIEOuAgIAAIQYMAQsgCBDXgICAACEGCyAGRQ0DIAZBACADEKOJgIAAIgNBAzoALCADIANBPGoiBDYCKCADQQI6ABggAyAENgIUIANBAToABCADIAQ2AgAgBSAEIAIgB0EBahCgiYCAACADELaCgIAAIgJFDQEgABD7gICAACAAIAIQy4CAgABBAA8LIAZFDQILIAFBFGwgBmpBbGoPCyAAKAIIIQQLIAQLugEBBH8gACAAKAIQKAIMIgItAE06AFAgACgCGCEDAkACQCACLQBOQQFxDQAgAEEAIAFBABDFgoCAACIEDQELAkAgACgCFCICQQJIDQAgAkEBaiEFIAJBBHRBfGohAgNAAkAgACgCECACaigCAC0ATkEBcQ0AIAAgBUF+aiABQQAQxYKAgAAiBA0DCyACQXBqIQIgBUF/aiIFQQJKDQALC0EAIQQgA0EBcQ0AIAAgACgCGEF+cTYCGAsgBAuEAgEDf0EAIQECQANAAkACQCAAIAFqLQAAIgIgAUG20YKAAGotAAAiA0cNACACDQEMAwsgAkHwi4CAAGotAAAgA0Hwi4CAAGotAABGDQBBACEBA0ACQAJAIAAgAWotAAAiAiABQdfXgYAAai0AACIDRw0AIAJFDQUMAQsgAkHwi4CAAGotAAAgA0Hwi4CAAGotAABGDQBBACEBA0ACQAJAIAAgAWotAAAiAiABQb7RgoAAai0AACIDRw0AIAJFDQcMAQsgAkHwi4CAAGotAAAgA0Hwi4CAAGotAABGDQBBAA8LIAFBAWohAQwACwsgAUEBaiEBDAALCyABQQFqIQEMAAsLQQELmAkBB38jgICAgABB8ABrIgQkgICAgAAgAEGpAWpBAToAACAEQQA2AmQgBEGluICAADYCYCAEQaO4gIAANgJcIARBiriAgAA2AlAgBEGQuICA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IAIRiYCAgAAACwJAIAAoAkAiAigCACIDRQ0AIAIgAygCBBGBgICAAAAaIAJBADYCAAsCQCAAKAI8IgIoAgAiA0UNACACIAMoAgQRgYCAgAAAGiACQQA2AgALIAEQkIGAgAAgACgC1AEoAixBACgCuNaCgAARgoCAgAAAIAAQ2ICAgAAL6AIBB38jgICAgABBIGsiASSAgICAACAAKAI0IQICQAJAIAAgACgCOCAALQAJaiIDLQAAEPaCgIAARQ0AIAFB1JqAgAA2AhggAUGhjwQ2AhQgAUGonICAADYCEEELIQRBC0GGnICAACABQRBqEMaAgIAADAELQQAhBCAAQQA6AAwgACACKAIkIgVBf2o7ARogACAAKAI4IgYgAC0ACiIHajYCRCAAIAYgAigCKGo2AjwgACADIAdqQQhqNgJAIAAgByAALQAJakEIajsBEiAAIAMvAAMiA0EYdCADQQh0QYCA/AdxckEQdiIDOwEYAkAgBUF4akEGbiADTw0AIAFB1JqAgAA2AgggAUGvjwQ2AgQgAUGonICAADYCAEELIQRBC0GGnICAACABEMaAgIAADAELIABBAToAACAAQX82AhQgAigCBEEiai0AAEEgcUUNACAAEPeCgIAAIQQLIAFBIGokgICAgAAgBAuqAgECfwJAAkBBACgCpPqCgAAgAEgNAEEAKAK8+oKAACIBRQ0AQQAgASgCADYCvPqCgABBAEEAKALA+oKAACICQX9qNgLA+oKAAEEAIAJBACgCrPqCgABMNgLE+oKAAAJAQQAoAsz2goAAIABPDQBBACAANgLM9oKAAAtBAEEAKAKM9oKAAEEBaiIANgKM9oKAACAAQQAoArT2goAATQ0BQQAgADYCtPaCgAAgAQ8LQQAhASAArBDXgICAACICRQ0AIAJBACgC1NWCgAARgYCAgAAAIQECQEEAKALM9oKAACAATw0AQQAgADYCzPaCgAALQQBBACgCkPaCgAAgAWoiADYCkPaCgAACQCAAQQAoArj2goAATQ0AQQAgADYCuPaCgAALIAIhAQsgAQs/AQF/IAAgACgCZEEBajYCZAJAIAAoAlgiAUUNAANAIAFBATYCECABKAIsIgENAAsLIAAoAtQBQQAQ6IKAgAAL6gIBA38gACgCOBCkgYCAACAAQQA2AjggABDngoCAAAJAIAAtAAQNAAJAAkAgACgCPCIBKAIAIgJFDQAgASACKAIwEYGAgIAAAEGAEHFFDQAgAC0ABUEFcUEBRg0BCyAAKAJAIgEoAgAiAkUNACABIAIoAgQRgYCAgAAAGiABQQA2AgALAkACQCAAKAI8IgIoAgAiAw0AIAAgAC0ADDoAEgwBC0EAIQECQCAALQANDQAgAkEAIAMoAiARg4CAgAAAIQELAkAgAC0AEUEFRg0AIABBADoAEQsgACAALQAMOgASIAFFDQAgAC0AEEEGRw0AIABBBToAEQsgAEEAOgAQCwJAIAAoAihFDQACQAJAIAAtAAwNACAAENmCgIAAQQAhASAAQQA6ABIMAQsgACgCQCgCAEUhAQsgAEGagICAADYCzAEgAEEANgIoIAAgAToAEAsgAEIANwNIIABBADoAEyAAQdAAakIANwMAC00BAX8CQAJAIAAtAAcNACAAKAJAIgFBAiABKAIAKAIUEYOAgIAAACIBDQELIAAoAkAiASAAQdAAaiABKAIAKAIYEYOAgIAAACEBCyABC30BAX8CQAJAAkAgAC0AECIBQQZLDQAgAQ4HAgEAAAAAAgILAkBBACgC+PqCgAAiAUUNACABEYmAgIAAAAsgABCpgYCAABpBACgC/PqCgAAiAUUNASABEYmAgIAAAAwBCyAALQAEDQAgAEEAQQAQoYGAgAAaCyAAENqCgIAAC1kBAn8gACgCBCgCACgC1AEiACABNgIQQQAoAqDWgoAAIQIgACgCLCEDAkAgAUF/Sg0AQgAgAaxCCoZ9IAAoAhwgACgCGGqsf6chAQsgAyABIAIRhYCAgAAACz8BAX8CQCAAKAIoIgENAANAIABBBBCSgYCAACIBQQVHDQEgACgCtAEgACgCsAERgYCAgAAADQALQQUhAQsgAQu8BAIGfwF+IAAoApQBIQEgACgCmAEhAiAAKALQASEDAkAgACgCYCIEQQFIDQAgACgCXEEIaiEFQQAhBgNAAkAgBSkDAEIAUg0AIAUgACkDSDcDAAsgBUEgaiEFIAZBAWoiBiAESA0ACwsgAiABSyEFAkACQCAAKQNIIgdQRQ0AQgAhBwwBCyAHQn98IAGtIgd/QgF8IAd+IQcLIAEgAiAFGyEFIAAgBzcDUCAAIAc3A0gCQAJAAkAgAC0ABw0AIAAtAAVBBEYNACAAKAI8IgYgBigCACgCMBGBgICAAABBgARxRQ0BCyADQX82AAggA0LZq5fIj6TosVc3AAAMAQsgA0IANwAAIANBCGpBADYAAAtBBCAAQTBqEPSAgIAAIAMgACgCMCIGQRh0IAZBCHRBgID8B3FyIAZBCHZBgP4DcSAGQRh2cnI2AAwgAyAAKAIcIgZBGHQgBkEIdEGAgPwHcXIgBkEIdkGA/gNxIAZBGHZycjYAECADIAAoApQBIgZBGHQgBkEIdEGAgPwHcXIgBkEIdkGA/gNxIAZBGHZycjYAFCADIAAoApgBIgZBGHQgBkEIdEGAgPwHcXIgBkEIdkGA/gNxIAZBGHZycjYAGCADQRxqQQAgBUFkahCjiYCAABpBACAFayEGIAWtIQcDQAJAIAYgBWoiBiAAKAKUAUkNAEEADwsgACgCQCIEIAMgBSAAKQNIIAQoAgAoAgwRh4CAgAAAIQQgACAAKQNIIAd8NwNIIARFDQALIAQLTwEBfwNAAkAgACgCHCIDQQZLDQBBASADdEHhAHFFDQAgACgCECABTQ0AIAAgASACQQEQg4GAgAAiA0UNACAAIAM2AhwLIAAoAiwiAA0ACwviAQEDfyAAKAIMIQICQCABQQFxRQ0AIAAoAiQhAwJAIAIoAgggAEcNACACIAM2AggLAkACQCAAKAIgIgRFDQAgBCADNgIkIAAoAiQhAwwBCyACIAM2AgQLAkAgA0UNACADIAQ2AiAMAQsgAiAENgIAIAQNACACQQI6ACELAkAgAUECcUUNACAAQQA2AiQgACACKAIAIgE2AiACQAJAIAFFDQAgASAANgIkDAELIAIgADYCBCACLQAgRQ0AIAJBAToAIQsgAiAANgIAIAIoAggNACAALQAcQQhxDQAgAiAANgIICws8AQF/AkAgAigCBCIDKAIADQAgACABIAIQ5YKAgAAPCyAAIAAoAgxBAWo2AgwgAyADLwEeQQFqOwEeIAMLawEFfwJAIAAoAmAiAkEBTg0AQQAPC0EAIQNBFCEEQQAhBQNAAkAgACgCXCAEaiIGKAIAIAFJDQAgBkF8aigCACABEMeCgIAAIAVyIQUgACgCYCECCyAEQSBqIQQgA0EBaiIDIAJIDQALIAULSgEBfwJAIAAtABxBAnFFDQAgAEEBEOGCgIAACyAAKAIMIgEgASgCDEF/ajYCDCABKAIsIAAoAgBBAUEAKAKs1oKAABGAgICAAAALaAECfyACKAIEIgNCADcCGCADQgA3AhAgA0EgakIANwIAIAMgAjYCACADIAA2AgwgAyADQShqNgIIIANBATsBHCADIAE2AhggAigCACEEIANCADcAKCADIAQ2AgQgACABIAIQ4oKAgAAL/goDBn8Dfgd/I4CAgIAAQTBrIgIkgICAgAAgACgCACEDQQAhBCACQQA2AhAgAkEBNgIMIAIgACgCmAE2AggCQAJAAkAgACgCQCIFIAJBGGogBSgCACgCGBGDgICAAAAiBQ0AIAAoAkAgACgC0AEiBiAAKAIAKAIIQQFqEOmCgIAAIgUNAEEAIQRBACEFAkAgBi0AAEUNACADIAZBACACQQxqIAMoAiARhoCAgAAAIQULAkAgBQ0AIAIoAgxFDQAgAEIANwNIIABByABqIQcgASEGQQAhBANAAkAgACABIAIpAxggAkEUaiACQRBqEOqCgIAAIgVFDQAgBUHlAEcNAgwECwJAIAIoAhQiA0F/Rw0AIAIgAikDGCAANQKUAX0gACgCmAFBCGqsf6ciAzYCFAsCQAJAIAMgAXJFDQAgADUClAEhCCAAKQNIIQkMAQsCQCAAKQNQIAA1ApQBIgh8IgkgACkDSCIKUQ0AIAohCQwBCyACIAIpAxggCX0gACgCmAFBCGqsf6ciAzYCFAsCQCAJIAhSDQAgACACKAIQIgsQoIGAgAAiBQ0DIAAgCzYCGAsgA0UNAEEAIQsCQAJAA0ACQCAGRQ0AIAAQ2YKAgAALAkACQCAAIAdBAEEBQQAQ64KAgAAiBUUNACAFQeUARg0BIAVBigRGDQQgBCALaiEEDAYLQQAhBiALQQFqIgsgA0kNAQwCCwsgByACKQMYNwMACyAEIAtqIQRBACEGDAELCyAEIAtqIQQMAgsgBUUNAQsgACAALQAMOgASDAELIAAgAkEIakF/EJGBgIAAIQUgACAALQAMOgASIAUNACAAKAJAIAAoAtABIgZBBGoiAyAAKAIAKAIIQQFqEOmCgIAAIgUNAAJAIAAtABBBf2pB/wFxQQNJDQAgAEEAEIqBgIAAIgUNAQsgACADLQAAQQBHQQAQoYGAgAAiBQ0AAkAgAy0AAEUNACACKAIMRQ0AQQAhByAGQQA2AAACQCAAKAIAIgsoAgRBAXQiBawQ14CAgAAiBg0AQQchBQwCCwJAAkAgCyADIAZBACAFEKOJgIAAIgZBgYABQQAgCygCGBGKgICAAAAiBQ0AIAsoAgQhDCAGIAJBKGogBigCACgCGBGDgICAAAAiBQ0AAkAgAikDKCALKAIIQQFqIg2sfEIGfBDXgICAACIODQBBByEFDAELIA5BADYAAAJAIAYgDkEEaiIPIAIoAigiB0IAIAYoAgAoAggRh4CAgAAAIgUNACAPIAIoAihqQQA6AAAgAigCKCAPakEBakEAOgAAAkACQCACKQMoQgFTDQAgBiAMaiEMIAcgD2pBAmohECAPIQcDQCALIAdBACACQSRqIAsoAiARhoCAgAAAIgUNAgJAIAIoAiRFDQAgCyAHIAxBgYABQQAgCygCGBGKgICAAAAiBQ0DIAwgECANEOmCgIAAIQUCQCAMKAIAIhFFDQAgDCARKAIEEYGAgIAAABogDEEANgIACyAFDQMgEC0AAEUNACAQIAMQpImAgAANAEEAIQUMAwsgAikDKCAHEKGJgIAAQf////8DcSAHakEBaiIHIA9rrFUNAAsLAkAgBigCACIFRQ0AIAYgBSgCBBGBgICAAAAaIAZBADYCAAsCQCALKAIcIgUNAEEAIQUMAgsgCyADQQAgBRGEgICAAAAhBQsgDhDYgICAAAwCCyAOIQcLIAcQ2ICAgAALAkAgBigCACIDRQ0AIAYgAygCBBGBgICAAAAaIAZBADYCAAsgBhDYgICAAAwBC0EAIQULAkAgAUUNACAERQ0AIAIgACgCrAE2AgQgAiAENgIAQZsEQbycgIAAIAIQxoCAgAALIAAQ0oKAgAAgAkEwaiSAgICAACAFC60BAQN/AkAgACgCYEEBSA0AQQAhAUEQIQIDQCAAKAJcIAJqKAIAEKSBgIAAIAJBIGohAiABQQFqIgEgACgCYEgNAAsLIAAoAkQiASgCACECAkACQAJAIAAtAARFDQBB2JyAgAAhAyACQdicgIAARg0BDAILIAIhAyACRQ0BCyABIAMoAgQRgYCAgAAAGiABQQA2AgALIAAoAlwQ2ICAgAAgAEIANwJcIABBADYCNAutAQECfwJAIAAoAixFDQACQCAAKAIAIgJFDQADQCACKAIgIQMCQCACKAIYIAFNDQAgAhCfgYCAAAsgAyECIAMNAAsLAkAgAQ0AAkAgACgCDA0AQQAhAQwBC0EAIQEgACgCLEEBQQBBACgCqNaCgAARhICAgAAAIgJFDQAgAigCAEEAIAAoAhgQo4mAgAAaQQEhAQsgACgCLCABQQFqQQAoArTWgoAAEYWAgIAAAAsL2AIEAn8BfgF/AX4jgICAgABBIGsiAySAgICAACABQQA6AAACQCAAIANBEGogACgCACgCGBGDgICAAAAiBA0AIAMpAxAiBUIQUw0AIAAgBUJwfCADQRxqEOyCgIAAIgQNAEEAIQQgAygCHCIGIAJPDQAgBkUNACADKQMQIgVCcHwgBq0iB1MNACAAIAVCdHwgA0EMahDsgoCAACIEDQAgACADQQRqQQggAykDEEJ4fCAAKAIAKAIIEYeAgIAAACIEDQBBACEEIAMpAARC2auXyI+k6LFXUg0AIAAgASAGIAMpAxAgB31CcHwgACgCACgCCBGHgICAAAAiBA0AQQAhACADKAIMIQQDQCAEIAEgAGosAABrIQQgBiAAQQFqIgBHDQALIAMgBDYCDAJAIARFDQBBACEGIANBADYCHAtBACEEIAEgBmpBADsAAAsgA0EgaiSAgICAACAEC8gDAwF/An4BfyOAgICAAEEQayIFJICAgIAAQgAhBgJAAkAgACkDSCIHQgBSDQAgADUClAEhBwwBCyAHQn98IAA1ApQBIgd/QgF8IAd+IQYLIAAgBjcDSEHlACEIAkAgBiAHfCACVQ0AAkACQCABDQAgBiAAKQNQUQ0BCyAAKAJAIgggBUEIakEIIAYgCCgCACgCCBGHgICAAAAiCA0BQeUAIQggBSkACELZq5fIj6TosVdSDQELIAAoAkAgBkIIfCADEOyCgIAAIggNACAAKAJAIAZCDHwgAEEwahDsgoCAACIIDQAgACgCQCAGQhB8IAQQ7IKAgAAiCA0AAkACQCAAKQNIIgdQDQAgACgClAEhAUEAIQgMAQsgACgCQCAGQhR8IAUQ7IKAgAAiCA0BIAAoAkAgBkIYfCAFQQRqEOyCgIAAIggNAQJAIAUoAgQiAw0AIAUgACgCmAEiAzYCBAtB5QAhCCADQYB8akGA/ANLDQEgBSgCACIBQWBqQeD/A0sNASABaSADaXJBPnENASAAIAVBBGpBfxCRgYCAACEIIAAgATYClAEgACkDSCEHCyAAIAcgAa18NwNICyAFQRBqJICAgIAAIAgLlAYDBX8BfgF/I4CAgIAAQRBrIgUkgICAgAAgACgC0AEhBgJAIABBwABBxAAgAxtqKAIAIgcgASkDACAFQQhqEOyCgIAAIggNACAHIAYgACgCmAEgASkDAEIEfCAHKAIAKAIIEYeAgIAAACIIDQAgASABKQMAIANBAnQgACgCmAEiCWpBBGqsfCIKNwMAAkAgBSgCCCILRQ0AQQAhCCALQQAoArDXgoAAIAltQQFqRg0AIAsgACgCGEsNAQJAIAJFDQAgAiALEMmCgIAADQILAkAgA0UNACAHIApCfHwgBUEEahDsgoCAACIIDQIgBA0AIAAoAjAhBwJAIAAoApgBIghByQFIDQAgCEHIAWohCANAIAcgBiAIakHwfGotAABqIQcgCEG4fmoiCEGQA0oNAAsLQeUAIQggByAFKAIERw0CCwJAIAJFDQAgAiALEMeCgIAAIggNAgsCQCALQQFHDQAgAC4BjgEgBi0AFCIIRg0AIAAgCDsBjgELIAUgACALEO2CgIAAIgc2AgwCQAJAIANFDQBBASEIIAAtAAcNASABKQMAIAApA1BXIQgMAQsCQCAHDQBBASEIDAELIAcvARxBA3ZBf3NBAXEhCAsCQAJAIAAoAjwiASgCACICRQ0AIAhFDQAgAC0AEEF/akH/AXFBA0kNACABIAYgACgCmAEiCCAIrCALQX9qrX4gAigCDBGHgICAAAAhCAJAIAsgACgCIE0NACAAIAs2AiALIAAoAlgiAUUNASABIAsgBhDggoCAAAwBC0EAIQggAw0AIAcNACAAIAAtABRBAnI6ABQgACALIAVBDGpBASAAKALMARGGgICAAAAhCCAAIAAtABRB/QFxOgAUIAgNAiAFKAIMEO6CgIAAIAUoAgwhB0EAIQgLIAdFDQEgBygCBCAGIAAoApgBEKCJgIAAIQEgBSgCDCAAKALIARGCgICAAAACQCALQQFHDQAgACABKQAYNwBoIABB8ABqIAFBIGopAAA3AAALIAUoAgwQ74KAgAAMAQtB5QAhCAsgBUEQaiSAgICAACAIC28BAn8jgICAgABBEGsiAySAgICAAAJAIAAgA0EMakEEIAEgACgCACgCCBGHgICAAAAiAA0AIAIgAygADCIEQRh0IARBCHRBgID8B3FyIARBCHZBgP4DcSAEQRh2cnI2AgALIANBEGokgICAgAAgAAtBAQJ/QQAhAgJAIAAoAtQBKAIsIAFBAEEAKAKo1oKAABGEgICAAAAiA0UNACAAKALUASABIAMQ4oKAgAAhAgsgAgs+AQJ/AkAgAC8BHCIBQRFxRQ0AIAAgAUHv/wNxIgI7ARwgAUEBcUUNACAAIAJBA3M7ARwgAEECEOGCgIAACwtuAQJ/IAAgAC8BHkF/aiIBOwEeIAAoAgwiAiACKAIMQX9qNgIMAkAgAUH//wNxDQACQCAALQAcQQFxRQ0AIAItACBFDQEgAigCLCAAKAIAQQBBACgCrNaCgAARgICAgAAADwsgAEEDEOGCgIAACwstAQF/AkAgACgCDCIARQ0AA0AgACgCACEBIAAQ2ICAgAAgASEAIAENAAsLQQALnQIFAX8BfgJ/An4Bf0GKBCEEAkAgAqwgA3wiBSAAKQMQVQ0AAkACQAJAIANQDQAgACkDICADUQ0BC0EAIQYgACgCDCIHRQ0BIAA0AgQhCEIAIQkDQAJAIAkgCHwiCSADVw0AIAchBgwDCyAHKAIAIgcNAAwCCwsgACgCKCEGCyABIAYgAyAAKAIEIgesgaciCmpBBGogAiAHIAprIgcgAiAHSBsiChCgiYCAABpBACEEAkAgAiAHayIHQQBIDQADQCAGKAIAIQYgB0UNASAGRQ0BIAEgCmoiASAGQQRqIAcgACgCBCICIAcgAkgbIgoQoImAgAAaIAohCiAHIAJrIgdBf0oNAAsLIAAgBjYCKCAAIAVCACAGGzcDIAsgBAu/BQUCfwF+CH8BfgJ/I4CAgIAAQSBrIgQkgICAgAACQAJAIAAoAggiBUEBSA0AIAKsIAN8IAWtVw0AIARBEGogAEEgaikDADcDACAEQRhqIABBKGopAwA3AwAgBCAAKQMYNwMIIAApAxAhBiAAKAIMIQcgACgCBCEIIAAoAgAhCSAAKAI8IQogACgCMCELAkAgACgCNCIMIAAoAjgiDSAAQQBBwAAQo4mAgAAiACALQf/+oQhxQQAgDCgCGBGKgICAAAAiDg0AAkAgB0UNAEIAIQ8gByEQIAghEQNAIAAgEEEEaiAGIA99pyARIA8gEax8IAZVGyIRIA8gACgCACgCDBGHgICAAAAiDg0CIA8gEax8IQ8gECgCACIQDQALA0AgBygCACERIAcQ2ICAgAAgESEHIBENAAsLIAAgASACIAMgACgCACgCDBGHgICAAAAhDgwCCyAAQRhqIQICQCAAKAIAIhFFDQAgACARKAIEEYGAgIAAABogAEEANgIACyAAIAY3AxAgACAHNgIMIAAgBTYCCCAAIAg2AgQgACAJNgIAIAIgBCkDCDcDACAAIAo2AjwgACANNgI4IAAgDDYCNCAAIAs2AjAgAkEIaiAEQQhqQQhqKQMANwMAIAJBEGogBEEIakEQaikDADcDAAwBCwJAIAJBAU4NAEEAIQ4MAQsgAEEMaiEFIAApAxAhDwNAIAAoAhghEAJAAkAgDyAAKAIEIgesgaciDkUNACAQIREMAQsCQCAHQQRqEN2AgIAAIhENAEGKGCEODAMLIBFBADYCACAQIAUgEBsgETYCACAAIBE2AhgLIBEgDmpBBGogASACIAcgDmsiESACIBFIGyIREKCJgIAAGiAAIAApAxAgEax8Ig83AxAgASARaiEBQQAhDiACIBFrIgJBAEoNAAsLIARBIGokgICAgAAgDgv1AQIEfwJ+AkAgACkDECABVw0AAkACQAJAIAFCAFINACAAQQxqIQJBACEDIAAoAgwiBEUNAQNAIAQoAgAhBSAEENiAgIAAIAUhBCAFDQAMAgsLQQAhAyAAKAIMIgJBAEchBAJAIAA0AgQiBiABVQ0AIAJFDQAgBkIBhiEHA0AgAigCACICQQBHIQQgByABVQ0BIAcgBnwhByACDQALCyAERQ0BAkAgAigCACIERQ0AA0AgBCgCACEFIAQQ2ICAgAAgBSEEIAUNAAsLIAIhAwsgAkEANgIACyAAQQA2AiggACABNwMQIAAgAzYCGCAAQgA3AyALQQALBABBAAsOACABIAApAxA3AwBBAAu/AgEDfyOAgICAAEEQayICJICAgIAAIABBrYCAgAA2AkwgACABQQN2IgM6AAggAEEEIANBAnRrOgAKAkACQAJAAkAgAUF3cUF+aiIEQQNLDQAgACgCNCEBAkAgBA4EAgEBAAILIABBAToAAgJAAkAgA0H/AXFFDQAgAEEBOgADQa6AgIAAIQMMAQsgAEGvgICAADYCTCAAQQA6AANBsICAgAAhAwsgACADNgJQIAAgAS8BHjsBDiABQSBqIQMMAgsgAkHUmoCAADYCCCACQYuOBDYCBCACQaicgIAANgIAQQshAEELQYacgIAAIAIQxoCAgAAMAgsgAEGxgICAADYCUCAAQQA7AQIgACABLwEaOwEOIAFBHGohAwsgACADLwEAOwEQIAAgAS0AFToAC0EAIQALIAJBEGokgICAgAAgAAu3AgEIfyOAgICAAEEgayIBJICAgIAAAkACQCAALwEYIgJFDQBBfEF7IAAtAAgbIAAoAjQoAigiA2ohBCACQQF0IAAvARIiAmohBSAAKAI4IgYgAmohAkEAIQcDQAJAAkAgAi0AAEEIdCACQQFqLQAAciIIIAVJDQAgCCAETA0BCyABQdSagIAANgIIIAFB/I4ENgIEIAFBqJyAgAA2AgBBCyECQQtBhpyAgAAgARDGgICAAAwDCwJAIAggACAGIAhqIAAoAkwRg4CAgAAAaiADSg0AIAJBAmohAiAHQQFqIgcgAC8BGE8NAgwBCwsgAUHUmoCAADYCGCABQYGPBDYCFCABQaicgIAANgIQQQshAkELQYacgIAAIAFBEGoQxoCAgAAMAQtBACECCyABQSBqJICAgIAAIAILmgIBBX8gASAALQAKaiICLAAAIgNB/wFxIQQCQCADQX9KDQAgBEH/AHEhBEEAIQMCQANAIARBB3QgAiADakEBaiwAACIFQf8AcXIhBCADQQFqIQYgA0EGSw0BIAYhAyAFQQBIDQALCyACIAZqIQILAkACQCAALQACDQAgAkEBaiEDDAELQQEhAwJAA0AgA0EBaiEGIANBCEsNASACIANqIQUgBiEDIAUsAABBAEgNAAsLIAIgBmohAwsCQAJAIAQgAC8BDiIGSw0AIAMgAWsgBGoiA0EEIANBBEsbIQMMAQsgAyABa0H//wNxIAAvARAiAyADIAQgA2sgACgCNCgCKEF8anBqIgMgAyAGSxtqQQRqIQMLIANB//8DcQvKAgIFfwF+IAEsAAAiA0H/AXEhBAJAAkAgA0F/TA0AIAEhBQwBCyAEQf8AcSEEQQAhAwJAA0AgBEEHdCABIANqQQFqLAAAIgZB/wBxciEEIANBAWohByADQQZLDQEgByEDIAZBAEgNAAsLIAEgB2ohBQsgBSwAASIDrUL/AYMhCAJAAkAgA0F/TA0AIAVBAWohAwwBCyAFQQJqIQYgCEL/AIMhCEEAIQMCQANAIAhCB4YgBiADaiwAACIHQf8Aca2EIQggB0F/Sg0BIANBAWoiA0EHRw0ACyAIQgiGIAVBCWoiAzEAAIQhCAwBCyAFIANqQQJqIQMLIAIgBDYCDCACIAg3AwAgAiADQQFqIgM2AggCQCAEIAAvAQ5LDQAgAiAEOwEQIAIgAyABayAEaiIDQQQgA0H8/wNxGzsBEg8LIAAgASACEP2CgIAACzgBA39BBCECAkADQCACQQFqIQMgAkELSw0BIAEgAmohBCADIQIgBCwAAEEASA0ACwsgA0H//wNxCykAIAFBBGogAhD+goCAACEBIAJBADsBECACQgA3AwggAiABQQRqOwESC8MBAQV/IAEgAC0ACmoiAywAACIEQf8BcSEFAkAgBEF/Sg0AIAVB/wBxIQVBACEEAkADQCAFQQd0IAMgBGpBAWosAAAiBkH/AHFyIQUgBEEBaiEHIARBBksNASAHIQQgBkEASA0ACwsgAyAHaiEDCyACIAU2AgwgAiAFrTcDACACIANBAWoiBDYCCAJAIAUgAC8BDksNACACIAU7ARAgAiAEIAFrIAVqIgRBBCAEQfz/A3EbOwESDwsgACABIAIQ/YKAgAALRwEBfyACIAAvARAiAyADIAIoAgwgA2sgACgCNCgCKEF8anBqIgMgAyAALwEOShsiADsBECACIAIoAgggAGogAWtBBGo7ARILhAQDAX8BfgV/AkACQCAALAAAIgJBAEgNACACrUL/AYMhA0EBIQAMAQsgAkH/AXEhAiAALAABIgRB/wFxIQUCQCAEQQBIDQAgAkEHdEGA/wBxIAVyrSEDQQIhAAwBCyACQQ50IAAtAAIiBHJB/4D/AHEhAgJAIARBgAFxDQAgAiAFQQd0QYD/AHFyrSEDQQMhAAwBCyAFQQ50IAAtAAMiBXJB/4D/AHEhBAJAIAVBgAFxDQAgBCACQQd0cq0hA0EEIQAMAQsgAkEOdCAALQAEIgVyIQYCQCAFQYABcQ0AIAJBEnatQiCGIAYgBEEHdHKthCEDQQUhAAwBCyAEQQ50IAAtAAUiB3IhCCAEIAJBB3RyIQICQCAHQYABcQ0AIAJBEnatQiCGIAggBkEHdEGA/4D/AHFyrYQhA0EGIQAMAQsgBkEOdCAALQAGIgRyIQYCQCAEQYABcQ0AQQchACACQQt2rUIghiAGQf+A/4B/cSAIQQd0QYD/gP8AcXKthCEDDAELIAZB/4D/AHEhBCAIQQ50IAAtAAciBnIhBwJAIAZBgAFxDQAgAkEEdq1CIIYgB0H/gP+Af3EgBEEHdHKthCEDQQghAAwBCyACQQR0IAVBA3ZBD3FyrUIghiAHQQh0QYD+gf4BcSAEQQ90ciAALQAIcq2EIQNBCSEACyABIAM3AwAgAAvvAQEEfyAALQAJIQIgACgCOCEDAkAgACgCNCIELQAYQQxxRQ0AIAMgAmpBACAEKAIoIAJrEKOJgIAAGgsgAyACaiIFIAE6AAAgBUEHakEAOgAAIAVBAWpBADYAACAFQQVqIAQoAihBCHY6AAAgBUEGaiAEKAIoOgAAIAAgBCgCKEEIQQwgAUEIcRsgAmoiBWtB//8DcTYCFCAAIAEQ9oKAgAAaIAAgBTsBEiAAIAMgBWo2AkAgAEEAOgAMIABBADsBGCAAQQE6AAAgACADIAQoAihqNgI8IAAgAyAALQAKajYCRCAAIAQvASRBf2o7ARoLmAECBX8BfiOAgICAAEEQayICJICAgIAAQQAhA0EAIQQCQAJAIAAoAjwiBSgCACIGRQ0AIAJCADcDCAJAIAUgAkEIaiAGKAIYEYOAgIAAACIERQ0AIAQhAwwCCyAAKAKcASACKQMIIAA0ApgBIgd8Qn98IAd/pyIETw0AIAAgBDYCnAELIAEgBDYCAAsgAkEQaiSAgICAACADC6ADBAR/AX4CfwF+I4CAgIAAQRBrIgEkgICAgAAgACgCBCECIAAoAhQiAygCMCEEIAMpA0ghBQJAIAMoApgBIgZByQFIDQAgBkHIAWohBgNAIAQgAiAGakHwfGotAABqIQQgBkG4fmoiBkGQA0oNAAsLIAAgAC8BHEEIcjsBHCADKAJAIQcgASAAKAIYIgZBGHQgBkEIdEGAgPwHcXIgBkEIdkGA/gNxIAZBGHZycjYADAJAIAcgAUEMakEEIAUgBygCACgCDBGHgICAAAAiBg0AIAMoAkAiBiACIAMoApgBIAVCBHwiBSAGKAIAKAIMEYeAgIAAACIGDQAgAygCQCEGIAM0ApgBIQggASAEQRh0IARBCHRBgID8B3FyIARBCHZBgP4DcSAEQRh2cnI2AAwgBiABQQxqQQQgBSAIfCAGKAIAKAIMEYeAgIAAACIGDQAgAyADKAIsQQFqNgIsIAMgAykDSCADKAKYAUEIaqx8NwNIIAMoAjggACgCGBDHgoCAACADIAAoAhgQ44KAgAByIQYLIAFBEGokgICAgAAgBguOAwECfyOAgICAAEEgayIEJICAgIAAQQAhBQJAIAFBAkkNAEEDQQIgAUF+aiIFIAUgACgCKEEFbkEBanBrIgVBAWpBACgCsNeCgAAgACgCJG5GGyAFaiEFCwJAIAAoAgAiACAFIARBHGpBACAAKALMARGGgICAAAAiAA0AIAQoAhwhAAJAIAVBf3MgAWpBBWwiAUF/Sg0AAkAgAEUNACAAEISBgIAACyAEQdSagIAANgIIIARB34cENgIEIARBqJyAgAA2AgBBCyEAQQtBhpyAgAAgBBDGgICAAAwBCyACIAAoAgQgAWoiAS0AADoAAAJAIANFDQAgAyABQQFqKAAAIgFBGHQgAUEIdEGAgPwHcXIgAUEIdkGA/gNxIAFBGHZycjYCAAsCQCAARQ0AIAAQhIGAgAALQQAhACACLQAAQX9qQf8BcUEFSQ0AIARB1JqAgAA2AhggBEHnhwQ2AhQgBEGonICAADYCEEELIQBBC0GGnICAACAEQRBqEMaAgIAACyAEQSBqJICAgIAAIAAL/hIBEH8jgICAgABB0ABrIgUkgICAgAAgBUEANgJMAkACQCAAKAIMIgYoAjgoACQiB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyIgggACgCMCIJSQ0AIAVB1JqAgAA2AjggBUGLrgQ2AjQgBUGonICAADYCMEELIQdBC0GGnICAACAFQTBqEMaAgIAADAELAkACQAJAAkACQCAIRQ0AQQAhCgJAIARBf2oiB0EBSw0AAkACQCAHDgIAAQALIAkgA0kNASAAIAMgBUHIAGpBABCCg4CAACIHDQcgBS0ASEECRiEKDAELQQEhCgsgBigCSBCIgYCAACIHDQUgBigCOCAIQX9qIgdBGHQgB0EIdEGAgPwHcXIgB0EIdkGA/gNxIAdBGHZycjYAJEEAIQtBACEMA0ACQAJAIAtFDQAgCygCOCIHLQABQRB0IActAABBGHRyIActAAJBCHRyIQ0gB0EDaiEHDAELIAYoAjgiBy0AIUEQdCAHLQAgQRh0ciAHLQAiQQh0ciENIAdBI2ohBwsCQAJAAkACQCANIActAAByIg4gCUsNACAMIAhNDQELIAVB1JqAgAA2AgggBUHDrgQ2AgQgBUGonICAADYCAEELIQdBC0GGnICAACAFEMaAgIAADAELIAAgDiAFQcwAakEAEIqDgIAAIgdFDQELIAVBADYCTAwGCyAFKAJMIg8oAjgiECgABCIHQRh0IAdBCHRBgID8B3FyIAdBCHZBgP4DcSAHQRh2cnIhDQJAAkACQAJAAkACQAJAIApB/wFxIhENACANDQAgDygCSBCIgYCAACIHDQsgAiAONgIAIAYoAjggDygCOCgAADYAICABIA82AgAMAQsCQCANIAAoAihBAnZBfmpNDQBB4K4EIRIMCQsgEUUNAQJAIA4gA0YNACAEQQJGIA4gA0lxRQ0CCyABIA82AgAgAiAONgIAIA8oAkgQiIGAgAAiBw0KAkAgDQ0AAkAgCw0AIAYoAjggDygCOCgAADYAIAwCCyALKAJIEIiBgIAAIgcNCyALKAI4IA8oAjgoAAA2AAAMAQsCQCAPKAI4IgctAAkiE0EQdCAHLQAIIhRBGHRyIActAAoiEkEIdHIgBy0ACyIKciIHIAlNDQAgBUHUmoCAADYCKCAFQYKvBDYCJCAFQaicgIAANgIgQQshB0ELQYacgIAAIAVBIGoQxoCAgAAMCwsgACAHIAVByABqQQAQioOAgAAiBw0KAkAgBSgCSCIOKAJIEIiBgIAAIgdFDQAgDkUNCyAOKAJIEISBgIAADAsLIA4oAjggDygCOCgAADYAACAOKAI4IA1Bf2oiB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyNgAEIA4oAjhBCGogDygCOEEMaiAHQQJ0EKCJgIAAGgJAIA5FDQAgDigCSBCEgYCAAAsCQAJAIAsNACAGKAI4IgcgEjoAIiAHIBM6ACEgByAUOgAgIAdBI2ohBwwBCyALKAJIEIiBgIAAIgcNCyALKAI4IgcgEjoAAiAHIBM6AAEgByAUOgAAIAdBA2ohBwsgByAKOgAAC0EAIQ8gBUEANgJMDAELIA1FDQJBACEOAkAgA0UNAAJAIARBAkcNACAQQQtqIRNBACEOA0AgE0F9aigAACIHQRh0IAdBCHRBgID8B3FyIAdBCHZBgP4DcSAHQRh2cnIgA00NAiATQQRqIRMgDSAOQQFqIg5HDQALQQAhDgwBCyANQQJJDQBBACEOIBAoAAgiB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyIANrIgdB/////wdBACAHayAHQYCAgIB4RhsgB0F/ShshEyAQQQ9qIRRBASESA0AgFEF9aigAACIHQRh0IAdBCHRBgID8B3FyIAdBCHZBgP4DcSAHQRh2cnIgA2siB0H/////B0EAIAdrIAdBgICAgHhGGyAHQX9KGyIHIBMgByATSCIHGyETIBIgDiAHGyEOIBRBBGohFCANIBJBAWoiEkcNAAsLQcOvBCESIA5BAnQgEGpBCGoiFCgAACIHQRh0IAdBCHRBgID8B3FyIAdBCHZBgP4DcSAHQRh2cnIiEyAJSw0GIBNBAkkNBgJAIBMgA0YNACARRQ0AQQAhByAEQQJGIBMgA0lxRQ0ECyACIBM2AgAgDygCSBCIgYCAACIHDQgCQCAOIA1Bf2oiB08NACAUIA1BAnQgEGpBBGooAAA2AAALIBAgB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyNgAEIAIoAgAhB0EAIQpBACENAkAgACgCQCIORQ0AQQEhDSAOKAIAIAdJDQAgDiAHEMmCgIAAQQBHIQ0LIAAgByABIA1BAXMQioOAgAAiBw0DIAEoAgAoAkgQiIGAgAAiBw0BC0EAIQoMAQsCQCABKAIAIg1FDQAgDSgCSBCEgYCAAAtBACEKIAFBADYCAAwBC0EAIQcLAkAgC0UNACALKAJIEISBgIAACyAMQQFqIQwgDyELIApB/wFxDQALQQAhCwwCCyAALQATIQMgBigCSBCIgYCAACIHDQQgACAAKAIwIgtBAWoiBzYCMAJAIAtBACgCsNeCgAAgACgCJG4iDUcNACAAIAtBAmoiBzYCMAsgA0UhAwJAIAAtABFFDQBBACELAkAgB0ECSQ0AQQNBAiAHQX5qIgsgCyAAKAIoQQVuQQFqcGsiC0EBaiANRhsgC2ohCwsgCyAHRw0AIAVBADYCSCAAIAcgBUHIAGogAxCKg4CAACIHDQUgBSgCSCILKAJIEIiBgIAAIQcCQCALRQ0AIAsoAkgQhIGAgAALIAcNBSAAIAAoAjAiC0EBaiIHNgIwIAtBACgCsNeCgAAgACgCJG5HDQAgACALQQJqIgc2AjALIAAoAgwoAjggB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyNgAcIAIgACgCMCIHNgIAIAAgByABIAMQioOAgAAiBw0EAkAgASgCACgCSBCIgYCAACIHDQBBACEHDAULAkAgASgCACIARQ0AIAAoAkgQhIGAgAALIAFBADYCAAwECyAFQdSagIAANgIYIAUgEjYCFCAFQaicgIAANgIQQQshB0ELQYacgIAAIAVBEGoQxoCAgAALIA9FDQELIA8oAkgQhIGAgAALIAtFDQAgCygCSBCEgYCAAAsgBUHQAGokgICAgAAgBwvXDAEIfyOAgICAAEHwAGsiBiSAgICAAAJAAkAgASgCBCIHQQJLDQAgBkHUmoCAADYCCCAGQaqcBDYCBCAGQaicgIAANgIAQQshCEELQYacgIAAIAYQxoCAgAAMAQsgASgCSCEJAkACQAJAAkAgACgCACIKLQAMRQ0AIAkQiIGAgAAiCA0BCwJAIAkvARwiCEECcUUNACAJEJeBgIAAIggNASAJLwEcIQgLQQAhCwJAIAUNACAIQQhxRQ0AIAkoAhghCwsgCSAIQff/A3E7ARwCQCAKIAQQ7YKAgAAiCEUNAAJAIAguAR5BAkgNACAIEISBgIAAIAZB1JqAgAA2AhggBkH/0gM2AhQgBkGonICAADYCEEELIQhBC0GGnICAACAGQRBqEMaAgIAADAILIAkgCS8BHCAILwEcQQhxcjsBHAJAIAotAAxFDQAgCCAKKAIYQQFqEIuDgIAADAELIAgQ5IKAgAALIAkoAhghBSAJIAQQi4OAgAAgCRDugoCAAAJAIAhFDQAgCi0ADEH/AXFFDQAgCCAFEIuDgIAAIAgQhIGAgAALIAtFDQIgCiALIAZB2ABqQQAgCigCzAERhoCAgAAAIghFDQEgCyAKKAIcSw0AIAooAjggCyAKKALQARDIgoCAAAsgBiAINgJQDAILIAYoAlgiCCAILwEcQQhyOwEcIAgQ7oKAgAAgBigCWBCEgYCAAAsgASAENgIEIAZBADYCUAJAAkACQCACQX9qIghBBEsNACAIDgUBAAAAAQELIAEoAjgoAAAiCEEYdCAIQQh0QYCA/AdxciAIQQh2QYD+A3EgCEEYdnJyIghFDQEgACAIQQQgBCAGQdAAahCMg4CAACAGKAJQIghFDQEMAgsgBiABEI2DgIAAIgg2AlAgCA0BQQAhCCACQQFGDQELIAYgACADIAZB1ABqQQAQjoGAgAAiCDYCUCAIDQAgBiAGKAJUIgEoAkgQiIGAgAAiCDYCUAJAIAhFDQAgAUUNASABKAJIEISBgIAADAELAkACQAJAAkACQCACQQRHDQACQCABKAI4IgkoAAAiCEEYdCAIQQh0QYCA/AdxciAIQQh2QYD+A3EgCEEYdnJyIAdGDQAgBkHUmoCAADYCKCAGQeKbBDYCJCAGQaicgIAANgIgQQshCEELQYacgIAAIAZBIGoQxoCAgAAMAwsgCSAEQRh0IARBCHRBgID8B3FyIARBCHZBgP4DcSAEQRh2cnI2AAAMAQsCQCABLQAADQAgARDXgoCAACIIDQILQQAhCEEAIQUCQAJAAkACQCABLwEYIgxFDQBBACEFIAJBA0chDUEBIQkDQCABKAI4IAEoAkAgCWoiCkF/ai0AAEEIdCAKLQAAciABLwEacWohCgJAAkAgDQ0AIAEgCiAGQdgAaiABKAJQEYCAgIAAACAGKAJkIAYvAWhNDQECQCAKIAYvAWpqIgsgASgCOCABKAI0KAIoak0NACAGQdSagIAANgJIIAZB9ZsENgJEIAZBqJyAgAA2AkBBCyEIQQtBhpyAgAAgBkHAAGoQxoCAgAAMCQsgC0F8aigAACIKQRh0IApBCHRBgID8B3FyIApBCHZBgP4DcSAKQRh2cnIgB0cNASALQXxqIARBGHQgBEEIdEGAgPwHcXIgBEEIdkGA/gNxIARBGHZycjYAAAwDCyAKKAAAIgtBGHQgC0EIdEGAgPwHcXIgC0EIdkGA/gNxIAtBGHZyciAHRw0AIAogBEEYdCAEQQh0QYCA/AdxciAEQQh2QYD+A3EgBEEYdnJyNgAADAILIAlBAmohCSAMIAVBAWoiBUcNAAwCCwsgBSAMRw0BCwJAIAJBBUcNACABLQAJIAEoAjhqQQhqIgkoAAAiCEEYdCAIQQh0QYCA/AdxciAIQQh2QYD+A3EgCEEYdnJyIAdGDQILIAZB1JqAgAA2AjggBkGHnAQ2AjQgBkGonICAADYCMEELIQhBC0GGnICAACAGQTBqEMaAgIAACyAGIAg2AlAgAQ0DDAQLIAkgBEEYdCAEQQh0QYCA/AdxciAEQQh2QYD+A3EgBEEYdnJyNgAAC0EAIQgLIAYgCDYCUAsgASgCSBCEgYCAAAsgCA0AIAAgBCACIAMgBkHQAGoQjIOAgAAgBigCUCEICyAGQfAAaiSAgICAACAIC2UBAX9BkxYhAQJAIAAtAAFBwABxDQACQAJAIAAtAABBAkcNACAAQQA6AAAMAQsgAEEANgIECwJAIAAQh4OAgAAiAQ0AIAAQhoOAgAAgAEEDOgAACyAAIAAtAAFB8QFxOgABCyABC2QBAn8CQCAALABEIgFBAEgNAAJAIAFFDQAgAEH4AGohAUEAIQIDQCABKAIAKAJIEISBgIAAIAFBBGohASACQQFqIgIgACwAREgNAAsLIAAoAnQoAkgQhIGAgAAgAEH/AToARAsLoQEDAX8BfgF/IAAtAEUhASAAEIiDgIAAAkAgAUUNACAAIAApAyA3AzhBAA8LIAAgAEEsajUCACICNwM4AkAgAkIRfBDXgICAACIBDQBBBw8LAkAgAEEAIAAoAjggAUEAEIyCgIAAIgMNACABIAAoAjhqIgNCADcAACADQRBqQQA6AAAgA0EIakIANwAAIAAgATYCEEEADwsgARDYgICAACADC14BAn8CQCAAQTJqLwEADQAgACAALQABQQJyOgABIAAoAnQiASABKAI4IAEoAkAgAC8BRkEBdGoiAi0AAEEIdCACLQABciABLwEacWogAEEgaiABKAJQEYCAgIAAAAsL/AIBBX8jgICAgABBEGsiBCSAgICAACAEQQA2AgwCQAJAIAAtABFFDQBBACgCsNeCgAAhBSABIQYDQEEAIQcCQCAGIghBAWoiBkECSQ0AQQNBAiAIQX9qIgcgByAAKAIoQQVuQQFqcGsiB0EBaiAFIAAoAiRuRhsgB2ohBwsgBiAHRg0AIAggBSAAKAIkbkYNAAsgCEEBaiIFIAAoAjBLDQBBACEHQQAhCCAAIAUgBEEHaiAEQQhqEIKDgIAAIgYNASAELQAHQQRHDQBB5QAhBiAFIQggBCgCCCABRg0BCyAAIAEgBEEMaiACRUEBdBCOgYCAACEGIAQoAgwhBwJAIAZFDQBBACEIDAELIAcoAjgoAAAiBkEYdCAGQQh0QYCA/AdxciAGQQh2QYD+A3EgBkEYdnJyIQhBACEGCyADIAg2AgACQAJAIAJFDQAgAiAHNgIADAELIAdFDQAgBygCSBCEgYCAAAsgBEEQaiSAgICAAEEAIAYgBkHlAEYbC7EBAQF/I4CAgIAAQRBrIgQkgICAgAACQAJAIAAgASACIAMQjoGAgAAiAA0AAkAgAigCACIBKAJIIgAuAR5BAkgNAAJAIAFFDQAgABCEgYCAAAsgAkEANgIAIARB1JqAgAA2AgggBEGhkQQ2AgQgBEGonICAADYCAEELIQBBC0GGnICAACAEEMaAgIAADAILQQAhACABQQA6AAAMAQsgAkEANgIACyAEQRBqJICAgIAAIAALRwAgACgCDCgCLCAAKAIAIAAoAhggAUEAKAKw1oKAABGNgICAAAAgACABNgIYAkAgAC8BHEEKcUEKRw0AIABBAxDhgoCAAAsLogQBAn8jgICAgABBMGsiBSSAgICAAAJAIAQoAgANAAJAAkAgAUEBSw0AQQAhBgJAIAEOAgACAAsgBUHUmoCAADYCKCAFQaCHBDYCJCAFQaicgIAANgIgQQtBhpyAgAAgBUEgahDGgICAACAEQQs2AgAMAgtBA0ECIAFBfmoiBiAGIAAoAihBBW5BAWpwayIGQQFqQQAoArDXgoAAIAAoAiRuRhsgBmohBgsCQCAAKAIAIgAgBiAFQSxqQQAgACgCzAERhoCAgAAAIgBFDQAgBCAANgIADAELAkACQCAFKAIsIgAoAggtAABFDQAgBUHUmoCAADYCGCAFQa2HBDYCFCAFQaicgIAANgIQQQtBhpyAgAAgBUEQahDGgICAACAEQQs2AgAMAQsCQCAGQX9zIAFqQQVsIgFBf0oNACAFQdSagIAANgIIIAVBsocENgIEIAVBqJyAgAA2AgBBC0GGnICAACAFEMaAgIAAIARBCzYCAAwBCwJAIAAoAgQgAWoiAS0AACACRw0AIAFBAWooAAAiBkEYdCAGQQh0QYCA/AdxciAGQQh2QYD+A3EgBkEYdnJyIANGDQELIAQgABCIgYCAACIANgIAIAANACABIAI6AAAgAUEEaiADOgAAIAFBA2ogA0EIdjoAACABQQJqIANBEHY6AAAgAUEBaiADQRh2OgAACyAFKAIsIgRFDQAgBBCEgYCAAAsgBUEwaiSAgICAAAvRAgEGfyOAgICAAEEQayIBJICAgIAAIAAoAgQhAiAAKAI0IQMCQAJAAkAgAC0AAEUNACABQQA2AgwMAQsgASAAENeCgIAAIgQ2AgwgBA0BCwJAIAAvARgiBEUNACAEQQF0IQVBACEEA0AgACAAIAAoAjggACgCQCAEaiIGLQAAQQh0IAZBAWotAAByIAAvARpxaiIGIAFBDGoQjoOAgAACQCAALQAIDQAgAyAGKAAAIgZBGHQgBkEIdEGAgPwHcXIgBkEIdkGA/gNxIAZBGHZyckEFIAIgAUEMahCMg4CAAAsgBSAEQQJqIgRHDQALCwJAIAAtAAgNACADIAAtAAkgACgCOGpBCGooAAAiAEEYdCAAQQh0QYCA/AdxciAAQQh2QYD+A3EgAEEYdnJyQQUgAiABQQxqEIyDgIAACyABKAIMIQQLIAFBEGokgICAgAAgBAvjAQECfyOAgICAAEEwayIEJICAgIAAAkAgAygCAA0AIAAgAiAEQRhqIAAoAlARgICAgAAAIAQoAiQgBC8BKCIFTQ0AAkAgASgCPCIBIAJJDQAgASACIAVqTw0AIARB1JqAgAA2AgggBEGzigQ2AgQgBEGonICAADYCAEELQYacgIAAIAQQxoCAgAAgA0ELNgIADAELIAAoAjQgBC8BKiACakF8aigAACICQRh0IAJBCHRBgID8B3FyIAJBCHZBgP4DcSACQRh2cnJBAyAAKAIEIAMQjIOAgAALIARBMGokgICAgAALvAEAAkACQCABQRFqIgFBCksNAAJAAkACQAJAAkACQCABDgsBAAEBAQUEBgIDAQELIAAgAhCQg4CAAA8LIAJFDQQMBQsgAkUNAyAAKALYAw0DIAIgAigCAEF/aiIBNgIAIAENAyACKAIMIAIQy4CAgAAPCyACLQAEQRBxDQMMAgsCQCAAKALYAw0AIAIQtYGAgAAPCyAAIAIQkYOAgAAPCyAAKALYAw0AIAIQrIKAgAALDwsgACACEMuAgIAACysBAX8CQCABKAIEIgItAARBEHFFDQAgACACEMuAgIAACyAAIAEQy4CAgAALLQEBfwJAIAEoAhhFDQAgASgCFCICRQ0AIAAgAhDLgICAAAsgACABEMuAgIAAC5kBAQJ/IAAoAgAiARCTg4CAACABIAAoAgg2AmggASAAKAI0NgJsIAEgACgCEDYCWCABIAAoAjg2AhggASAAKAIUNgJgIAEgACgCLDYCHCABKAIAIgIgACkDIDcDKCABIAAoAkQ2AiwgAiAAKAJINgJoIAIgAUHMAWpBf0EAEJWDgIAAIAEgACgCKDYCzAEgAEEANgIoIAAoAjALdAEEfwJAIAAoAmAiAUUNACAAKAIcIgJBAUgNAEEAIQNBASEEA0ACQCABIANqKAIAIgFFDQAgACABEJSDgIAAIAAoAmAgA2pBADYCACAAKAIcIQILIAQgAk4NASADQQRqIQMgBEEBaiEEIAAoAmAhAQwACwsLyQIBA38CQCABRQ0AIAEtAAAiAkECSw0AAkACQAJAIAIOAwEAAgELIAEoAigiAkUNAiAAKAIAIgAgAhCZg4CAACACQShqKAIAENiAgIAAIAAgAhDLgICAACABQQA2AigPCyABKAIoIgIoAggiA0UNAQJAAkAgAigCFCIEKAIIIgAgAkcNACAEIAIoAhg2AggMAQsDQAJAIAAoAhgiASACRw0AIAAgAigCGDYCGAwCCyABIQAgAQ0ACwsgAhCGg4CAAAJAIAQtABQNACAEKAIMIgFFDQAgBEEANgIMIAEQj4GAgAALIAIoAgwQ2ICAgAAgAigCEBDYgICAAAJAIAQtABBBBHFFDQAgBCgCCA0AIAMQsYGAgAALIAJBADYCCA8LIAEoAigiACgCACIBIAEoAgRBf2o2AgQgACABKAIAKAIcEYGAgIAAABoLC5ABAQN/AkAgASgCACIERQ0AIAJBAEghBQNAAkACQAJAIAUNACAEKAIAIAJHDQEgBCgCBCIGQQBIDQEgBkEfSg0AIAMgBnZBAXENAQsCQCAEKAIMIgZFDQAgBCgCCCAGEYKAgIAAAAsgASAEKAIQNgIAIAAgBBDLgICAAAwBCyAEQRBqIQELIAEoAgAiBA0ACwsLVwEDfwJAIAEoAggiAkUNACAAKAIAIQMCQCAAKAJ8IgRFDQAgAyAEEMuAgIAAIAEoAgghAgsgACADIAIQ24GAgAA2AnwgASgCCBDYgICAACABQQA2AggLC2ABAn8CQCAAKAIEIgWsENeAgIAAIgYNAEEHDwsCQCAAIAEgBkEAIAUQo4mAgAAiBSADQf/+oQhxIAQgACgCGBGKgICAAAAiAEUNACAFENiAgIAAIAAPCyACIAU2AgBBAAubAgEIfyAAKAIwQX9qIQJBACEDAkACQAJAAkACQCAAKAIAIgQoAhQiBUEASg0AIABBADYCMCAEIAQoAsQDQX9qNgLEAwwBC0EEIQYgAUECRyEHQQAhCANAAkAgBCgCECAGaigCACIJRQ0AAkACQCAHDQAgCUECIAIQnYOAgAAiBQ0BCyAJQQEgAhCdg4CAACEFCyADIAUgAxshAyAEKAIUIQULIAZBEGohBiAIQQFqIgggBUgNAAsgAEEANgIwIAQgBCgCxANBf2o2AsQDIAMNAQsCQCABQQJHDQAgBEECIAIQnoOAgAAiAw0CCyAEQQEgAhCeg4CAACEDCyABQQJHDQELIAQgACkDSDcDyAMgBCAAKQNQNwPQAwsgAwuNAwEFfyABKAIUEJqDgIAAIAFBADYCFAJAIAEtADtFDQBBACECA0ACQCABIAJByABsaiIDQcwAaigCACIERQ0AIAAgBBDLgICAAAsCQCADQdAAaigCACIERQ0AA0AgBCgCBCEFIAQQ2ICAgAAgBSEEIAUNAAsLAkAgA0HoAGooAgAiBEUNAAJAIAQoAgAiBUUNACAEIAUoAgQRgYCAgAAAGiAEQQA2AgALIAQQ2ICAgAALIANBwABqIQUCQCADQfgAaigCACIERQ0AAkAgBCgCACIGRQ0AIAQgBigCBBGBgICAAAAaIARBADYCAAsgBBDYgICAAAsgBUEAQcgAEKOJgIAAGiADQcgAaiABNgIAIAJBAWoiAiABLQA7SQ0ACwsCQCABQShqKAIADQAgASgCJCIERQ0AA0AgBCgCBCEFIAQQ2ICAgAAgBSEEIAUNAAsLIAFBADoAOCABQQA2AiQgAUEANgIIIAFBLGpCADcCAAJAIAEoAiAiBEUNACAAIAQQy4CAgAALIAFBADYCIAtNAQJ/AkAgAEUNACAAKAIAQQFIDQBBACEBQQAhAgNAIAAoAgwgAWoQm4OAgAAgAUE4aiEBIAJBAWoiAiAAKAIASA0ACwsgABDYgICAAAswACAAKAIcENiAgIAAIAAoAiQQ2ICAgAAgACgCMBCcg4CAACAAQQBBOBCjiYCAABoLHQACQCAARQ0AIAAoAgQQmoOAgAAgABDYgICAAAsL9wcCCH8DfiOAgICAAEEQayIDJICAgIAAQQAhBAJAIABFDQAgAC0ACEECRw0AIAAoAgQhBQJAIAFBAkcNACAFKAIIIgRFDQAgBEEAQQAQp4GAgAAiBA0BCyAFKAIAIgAoAigiBA0AAkAgACgCYCIEIAJMDQACQCABQQFHIgYgAmoiByAETg0AIAYgAmpBBXRBEHIhBCAHIQEDQCAAKAJcIARqKAIAEKSBgIAAIARBIGohBCABQQFqIgEgACgCYEgNAAsLIAAgBzYCYAJAAkAgBg0AIAAoAlwiBCAHQQV0aigCHEUNAiAAKAJEIgYoAgAiAUUNAiABQdicgIAARg0BIAAgBCAHQQV0aigCGDYCNAwCCyAAKAJAKAIARQ0BAkACQAJAIAdFDQAgACgCXCIERQ0AIAQgB0F/akEFdCIBaiIHKAIUIQZCgAQQ14CAgAAiCA0BQQchBAwFCyAAQRxqIQRBACEIQQAhCUEAIQoMAQsgBCABaiEJIAdBFGohBCAIQQRqQQBB/AMQo4mAgAAaIAggBjYCAEEBIQoLIAAgBCgCADYCGCAAIAAtAAw6ABIgAEHIAGohByAAKQNIIQsCQAJAAkAgCkUNACAHIAkpAwAiDDcDACAMIAsgCSkDCCINIA1QGyINWQ0BA0AgACAHIAhBAUEBEOuCgIAAIgQNAyAHKQMAIgwgDVMNAAwCCwtCACEMIAdCADcDAAtBACEEIAwgC1kNAANAIANBADYCACAAQQAgCyADIANBDGoQ6oKAgAAhBAJAAkACQCADKAIAIgYNACAAKQNQIAA1ApQBfCIMIAApA0hSDQEgAyALIAx9IAAoApgBQQhqrH+nIgY2AgALIAQNACAGRQ0AQQEhAQNAIAcpAwAiDCALWQ0CIAAgByAIQQFBARDrgoCAACEEIAEgBk8NASABQQFqIQEgBEUNAAsLIAQNAiAHKQMAIQwLIAwgC1MNAAtBACEECwJAIApFDQAgAyAAKAKYAUEEaqwgCSgCGCIBrX43AwAgBA0AIAFBf2ohAQNAAkAgAUEBaiIBIAAoAjRJDQBBACEEDAILIAAgAyAIQQBBARDrgoCAACIERQ0ACwsgCBCkgYCAACAEDQIgByALNwMADAELIAYgACgCmAFBBGogBCAHQQV0aiIBKAIYbK0Q84KAgAAhBCAAIAEoAhg2AjQgBA0BCwJAIAJBf0oNACAFLQAYQRBxRQ0AIAVBADYCMAsgBRCFgYCAACEEAkAgBSgCDCgCOCgAHCIAQRh0IABBCHRBgID8B3FyIABBCHZBgP4DcSAAQRh2cnIiAA0AIAUoAgAoAhghAAsgBSAANgIwCyADQRBqJICAgIAAIAQL5wEBB38CQCAAKALgAkUNACACQQFqIQNBfyEEQQAhBQNAIARBAWoiBCAAKALIAk4NAUEAIQYCQCAAKALgAiAFaigCACIHKAIIIghFDQAgBygCBCgCACIJKAIAQQJIDQAgByAHKAIMQQFqNgIMAkACQCABQQJLDQACQAJAIAEOAwACAQALIAcgAzYCFCAJKAJQIQkMAgsgCSgCWCEJDAELIAkoAlQhCQtBACEGAkAgCUUNACAHKAIUIAJMDQAgCCACIAkRg4CAgAAAIQYLIAcQrIKAgAALIAVBBGohBSAGRQ0ACyAGDwtBAAu/AQEBfyOAgICAAEHQAGsiAiSAgICAACACQcQAakIANwIAIAJBzABqQQA2AgAgAkIANwI8IAJBCGpBAEEoEKOJgIAAGiACIAA2AjggAiAAKAIgNgIoIAIgAkEIajYCMCACQQE7ARAgAiABNgI0IAJBMGogASgCFBGCgICAAAACQCAAKAIYQQFIDQAgACgCICAAKAIUEMuAgIAACyAAIAJBCGpBKBCgiYCAABogAigCRCEAIAJB0ABqJICAgIAAIAALKgEBfyAAIAEgAhDugICAACEDAkAgAUUNACADDQAgACABEMuAgIAACyADC8kCAgN/AXwjgICAgABBIGsiAySAgICAAAJAAkACQAJAIAAoAhhBIEgNACAAIAAoAhQiBDYCECAAIAAvAQhBLXEiBTsBCAwBCyAAQSBBABDCgYCAAA0BIAAvAQghBSAAKAIQIQQLAkACQCAFQQRxRQ0AIAApAwAgBBCig4CAAAwBCyADQRxqQQA7AQAgA0IANwIUIANBADYCCCADIAQ2AgwgA0EgNgIQAkACQCAFQSBxRQ0AIAApAwC5IQYMAQsgACsDACEGCyADIAY5AwAgA0EIakHlnoCAACADEOiAgIAAIAQgAygCGGpBADoAAAsgACgCEBChiYCAACEFIABBAToACiAAIAVB/////wNxNgIMIAAgAC8BCEGCBHIiBUHT/wNxIAUgAhs7AQhBACEADAELIABBADoACkEHIQALIANBIGokgICAgAAgAAulAQUBfwF+AX8BfgF/I4CAgIAAQSBrIgIkgICAgAAgAkEAOgAVIAAgAEI/hyIDfCADhSEDQRQhBANAIAIgBGogAyADQgqAIgVCCn59p0EwcjoAACAEQX9qIQQgA0IJViEGIAUhAyAGDQALAkAgAEJ/VQ0AIAIgBGpBLToAACAEQX9qIQQLIAEgBCACakEBakEVIARrEKCJgIAAGiACQSBqJICAgIAAC9ABAwF/BH4BfyOAgICAAEEgayICJICAgIAAQoCAgICAgJCBwAAhA0KAgICAgICQgcAAQoCAgICAgMD/PyABQQFxGyEEQgAhBQJAIAFBAXUiAUUNAEIAIQYDQCACQRBqIAYgAyAGIAMQtYmAgAAgAiACKQMQIgYgAkEQakEIaikDACIDIAUgBBC1iYCAACACQQhqKQMAIAQgAUEBcSIHGyEEIAIpAwAgBSAHGyEFIAFBAXUiAQ0ACwsgACAFNwMAIAAgBDcDCCACQSBqJICAgIAACzAAAkACQCAAQQlqLQAAQSRxRQ0AIAAQz4GAgAAMAQsgAEEBOwEICyAAQQQ7AQggAAtsAAJAIABBCWotAABBJHFFDQAgACABIAIQ4IOAgAAPCyAAIAEpAwA3AwAgAEEQaiABQRBqKAIANgIAIABBCGogAUEIaikDADcDAAJAIAFBCWotAABBCHENACAAIAAvAQhB/8cDcSACcjsBCAsL1wEBA38jgICAgABBEGsiASSAgICAAAJAAkACQCAAQQlqLQAAQcAAcUUNACAAEMGBgIAARQ0AIABCADcDAAwBCwJAIAAoAhAgACAAKAIMIAAtAAoQ9oGAgAAiAkEASg0AQQghAyACDQIgACgCECABQQhqIAAoAgwgAC0AChD3gYCAAEEBSg0CIAAgASkDCDcDAAwBC0EIIQMgAkEBRw0BIAAoAhAgAUEIaiAAKAIMIAAtAAoQ94GAgAANASAAIAEpAwg3AwALQQQhAwsgAUEQaiSAgICAACADC4EBAAJAAkAgAUHDAEgNACAALwEIIgFBBHENAQJAIAFBCHENACABQQJxRQ0CIABBARD1gYCAAA8LIAAQ+IGAgAAPCyABQcIARw0AAkAgAC8BCCIBQQJxDQAgAUEscUUNACAAIAJBARChg4CAABogAC8BCCEBCyAAIAFB0/8DcTsBCAsLkwIBAn9BACEDAkAgAC8BCCIEQQFxDQACQCABQb9/aiIBQQRLDQACQAJAAkACQCABDgUABAECAwALAkAgBEEQcQ0AIABBwgAgAhCng4CAACAALwEIIgFBAnFFDQUgACABQcD8AHFBEHI7AQhBAA8LIAAgBEHQ/ABxOwEIQQAPCyAAEOGDgIAAQQAPCyAAIAAQ4YCAgAA3AwAgACAALwEIQcD8AHFBBHI7AQhBAA8LIAAgABDigICAADkDACAAIAAvAQhBwPwAcUEIcjsBCEEADwsgACAEQQN2QQJxIARyOwEIIABBwgAgAhCng4CAACAAIAAvAQgiAUHD/wJxOwEIIAFBAnFFDQAgAC0ACiACRyEDCyADC6sEBAR/An4CfAJ+I4CAgIAAQcAAayIDJICAgIAAAkACQCABLwEIIgQgAC8BCCIFciIGQQFxRQ0AIARBAXEgBUEBcWshBgwBCwJAIAZBLHFFDQACQCAEIAVxIgZBJHFFDQBBfyEGIAApAwAiByABKQMAIghTDQIgByAIVSEGDAILAkAgBkEIcUUNAEF/IQYgACsDACIJIAErAwAiCmMNAiAJIApkIQYMAgsCQCAFQSRxRQ0AAkAgBEEIcUUNACADQSBqIAErAwAQqYmAgAAgA0EwaiAAKQMAEKuJgIAAIAMpAzAiByADQTBqQQhqKQMAIgggAykDICILIANBIGpBCGopAwAiDBCniYCAACEBQX8gByAIIAsgDBCoiYCAAEEASiABQQBIGyEGDAMLQX8hBiAEQSRxRQ0CIAApAwAiByABKQMAIghTDQIgByAIVSEGDAILQQEhBiAFQQhxRQ0BAkAgBEEkcQ0AQX8hBgwCCyADIAArAwAQqYmAgAAgA0EQaiABKQMAEKuJgIAAQQFBf0EAIAMpAxAiByADQRBqQQhqKQMAIgggAykDACILIANBCGopAwAiDBCoiYCAAEEAShsgByAIIAsgDBCniYCAAEEASBshBgwBCwJAIAZBAnFFDQBBASEGIAVBAnFFDQFBfyEGIARBAnFFDQEgAkUNACAAIAEgAkEAEOKDgIAAIQYMAQsgACABEOODgIAAIQYLIANBwABqJICAgIAAIAYLPQEBfwJAIAAvAQgiAkEkcUUNACAAKQMAQgBSDwsCQCACQQFxDQAgABDigICAAEQAAAAAAAAAAGIhAQsgAQuUAQECfyOAgICAAEEQayIBJICAgIAAAkAgACgCKEEAIAApA0BBACABQQxqELqDgIAAIgINAAJAIAEoAgxFDQAgAUHUmoCAADYCCCABQe+DBTYCBCABQaicgIAANgIAQQshAkELQYacgIAAIAEQxoCAgAAMAQtBACECIABBADYCHCAAQQA6AAMLIAFBEGokgICAgAAgAgtbAQN/AkACQAJAIAAoAigiAS0AACICQQNJDQACQCABEI2CgIAAIgNFDQAgAEEANgIcDAILIAEtAAAhAgtBACEDIABBADYCHCACQf8BcUUNAQsgAEEBOgACCyADC7UBAgR/AX4jgICAgABBEGsiAiSAgICAACAALQAAIQMCQAJAIAAtAAEiBEGAAXENACABIANBB3RBgP8AcSAEcjYCAEECIQAM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gAAiBzYCNCAHDQIgAygCPCEICyAIQQ1BCiACQQFxGxD/goCAAAJAIAgoAkgiBUUNACAFEISBgIAACyABIAMoAjg2AgBBACEHDAELIANB1JqAgAA2AgggA0GlyAQ2AgQgA0GonICAADYCAEELIQdBC0GGnICAACADEMaAgIAACyADQcAAaiSAgICAACAHC38BAn8CQCAAKAIEIgMgAUEAEI6CgIAAIgQNAAJAIAAtAAtFDQAgAEEAOgALIAAoAgQoAggiBEUNAANAAkAgBC0AAUEQcUUNACAAQQE6AAsgBCgCQCABRw0AIARBAToAAAsgBCgCGCIEDQALCyADIAFBACACEOaDgIAAIQQLIAQLgwEBAX8CQCAALQAADQAgAC0AAUEIcUUNACABQQA2AgBBAA8LAkACQCAAELGDgIAAIgJBEEYNACACDQEgAUEANgIAIAAQ54OAgAAhAiAALQABIQECQCACDQAgACABQQhyOgABQQAPCyAAIAFB9wFxOgABIAIPCyABQQE2AgBBACECCyACC9wLAwN/AX4IfyOAgICAAEHAAGsiBSSAgICAAAJAAkACQCABDQBBACEGIAAtAAANASAALQABIgdBAnFFDQECQCAAKQMgIgggAlINAEEAIQcgBEEANgIADAMLIAggAlkNAQJAIAdBCHFFDQAgBEF/NgIAQQAhBwwDCyAIQgF8IAJSDQFBACEGIARBADYCACAAQQAQu4OAgAAiB0HlAEYNASAHDQIgABCIg4CAAEEAIQZBACEHIAApAyAgAlINAQwCCwJAAkAgASgCACIHLwEIQQ1LDQAgASgCBC8BCCEJAkACQCAHKAIQLQAAIgoNAEEBIQpB/wEhCwwBC0GygICAACEGIApBAnENAkH/ASEKQQEhCwsgASAKOgANIAEgCzoADEGzgICAACEGIAlBBHENASAJQTlxDQBBsoCAgAAhBiAHKAIUDQFBtICAgAAhBgwBC0GygICAACEGCyABQQA6AAsLAkAgABCxg4CAACIHQRBGDQAgBw0BIABBIGohDEEBIANrIQ0CQANAIAAgACgCdCIDLwEYQX9qIgogDXUiCTsBRgJAAkACQCAGRQ0AQQAhCwNAIAMoAkQgAygCQCAJQQF0aiIHLQAAQQh0IActAAFyIAMvARpxaiIHQQFqIQ4CQAJAIActAAAiDyADLQALSw0A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Sw0FAkAgBUEJai0AAEHAAHFFDQACQCAQRQ0AIAEgCWohCyAQIREDQCALLQAADQwgC0EBaiELIBFBf2oiEQ0ACwsgECAFKAIAayELDAILIAEgCWogBSgCECAQIAUoAgwiESAQIBFIGxCciYCAACILDQsgECARayELDAELIBFBAEchCwsgC0UNAQwJC0EHIQYgEiATZA0GCwJAIAhBAWoiCCACLwEIRg0AAkACQCAGQYABSQ0AIAZBdGpBAXYhCwwBCyAGQeC2gIAAai0AACELCyAFQShqIQUgBq0hDANAIANBAWohAyAMQgeIIgxQRQ0ACyALIAlqIgkgAEsNACADIAdJDQELCyACQQE6AA4gAiwACiELDAcLIARB1JqAgAA2AhggBEHCjAU2AhQgBEGonICAADYCEEELQYacgIAAIARBEGoQxoCAgAAgCkELOgAADAELIARB1JqAgAA2AgggBEHXiwU2AgQgBEGonICAADYCAEELQYacgIAAIAQQxoCAgAAgAkELOgALC0EAIQsMBAtBByEGDAILQQEhCwwBC0EAIQYLIAIoAgAoAhAgCGotAAAiA0UNAAJAIANBAnFFDQACQCAGDQAgA0EBcUUNAQwCCyADQQFxIAUtAAhBAXFGDQELQQAgC2shCwsgBEGwAWokgICAgAAgCwtlAgF+AX8gADMBBkIofkI4fCEBAkACQCAAKAIMIgJFDQAgAiABEOuAgIAAIQIMAQsgARDXgICAACECCwJAIAINAEEADwsgAiAANgIAIAIgAkEQajYCBCACIAAvAQZBAWo7AQggAgv3AgEIfyOAgICAAEEQayIEJICAgIAAIANBADoACiADKAIEIQUCQAJAIAIsAAAiBkEASA0AIAQgBkH/AXEiBzYCDEEBIQgMAQsgAiAEQQxqEK2DgIAAIQggBCgCDCEHCyAHIQZBACEJAkACQANAIAYgAUsNASAIIAdPDQECQAJAIAIgCGoiCiwAACILQQBIDQAgBCALQf8BcSILNgIIQQEhCgwBCyAKIARBCGoQrYOAgAAhCiAEKAIIIQsLIAVBCmogAC0ABDoAACAFQSBqIAAoAgw2AgAgBUEYakEANgIAIAVBEGpBADYCACAIIApqIQggAiAGaiALIAUQ3YOAgAAgBmohBiAFQShqIgshBSAJQQFqIglB//8DcSADLwEISQ0ADAIL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BEHQAGpB/////wcQgIGAgAAaIARB0ABqEKqBgIAAIgUNASAKKAIEIgUgBS8BGEH9/wNxOwEYCyADQQBHIQAgERD3g4CAACIFQQBHQQF0IQMgBQ0DIAANAyARKAIEIgMtABENAUEAIQ8MAgsgBCgCVCgCBCgCACIALQAMDQQgABDZgoCAAAwEC0ECQQEgAy0AEhshDwsCQCAKKAIEIgwtABhBAnFFDQBBACEDIAwtABEgD0EAR0cNAQsgDCAPQQJGOgASQQAhAyAMIA9BAEc6ABELIANBAEcgAHINASAKIBEoAgQoAiQgAkEBEIKBgIAAIQUMAQsgACABQZPDgIAAEPaDgIAAQQEhBQsgASANNgJsIAEgDjYCaCABIAk3AyAgASAINgIYIAEgBzoAWiABQagBakEAOgAAIApBf0EAQQEQgoGAgAAaIAFBAToAUQJAIAZFDQAgBigCBBCxgYCAACAGQQA2AgwgBkEANgIECyABEIeBgIAACyAEQYABaiSAgICAACAFCxwBAX8gACAAKAIAIgEoArwBNgIEIAEgADYCvAEL/AEBA38gACgCICEBAkACQCAAQQlqLQAAQSRxDQAgACgCGEUNAQsgABC/gYCAAAsCQCABQiAQ64CAgAAiAg0AQQcPCwJAAkAgAUUNACABQbwCaigCACACTQ0AQYABIQMgAUG0AmooAgAgAk0NASABQbgCaigCACACSw0AIAFBjgJqLwEAIQMMAQsgAkEAKALU1YKAABGBgICAAAAhAwsgAkEANgIUIAJCADcCCCACIAE2AgQgAkEANgIAIAJBADYCHCACQQE7ARogACACNgIQIABBuICAgAA2AiQgAEGQCDsBCCACIAJBIGo2AhAgAiADQeD/P2pBBHY7ARhBAAvXAQEEfyOAgICAAEGgAWsiASSAgICAAEEAIQIgAUEAQaABEKOJgIAAIQMCQCAARQ0AQQAhAgNAIAAoAgghBCAAQQA2AgggAyEBAkAgAkUNAANAIAIgABDQg4CAACEAIAFBADYCACABQQRqIgEoAgAiAg0ACwsgASAANgIAIAMoAgAhAiAEIQAgBA0ACwtBBCEBA0ACQCADIAFqKAIAIgBFDQACQCACDQAgACECDAELIAIgABDQg4CAACECCyABQQRqIgFBoAFHDQALIANBoAFqJICAgIAAIAILegECfyOAgICA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BHFFDQAgACgCACABKAIAaw8LAkAgBUUNACACQQFIDQIgASgCECEBQX8hBCACIQMDQCABLQAADQQgAUEBaiEBIANBf2oiA0UNAwwACwsCQCADQQFIDQAgACgCECEAIAMhAgJAA0AgAC0AAA0BIABBAWohACACQX9qIgJFDQIMAAsLQQEPCyADIAEoAgBrDwsgACgCECABKAIQIAIgAyADIAJKGxCciYCAACIBIAMgAmsgARsPCyAAKAIAIAJrIQQLIAQL3AEBBH8jgICAgABBEGshAgJAAkAgAUL//////////wBWDQBBACEDA0AgAkEGaiADaiABp0GAAXI6AAAgA0EBaiEDIAFCB4giAUIAUg0ACyACIAItAAZB/wBxOgAGIANBf2ohBCACQQZqQX9qIQUgAyECA0AgACAFIAJqLQAAOgAAIABBAWohACACQX9qIQIgBEF/aiIEQX9HDQAMAgsLIAAgATwACCABQgiIIQFBByEDA0AgACADaiABp0GAAXI6AAAgAUIHiCEBIANBf2oiA0F/Rw0AC0EJIQMLIAML1gIBA38jgICAgABBEGsiBSSAgICAACAAKAIEIQYCQAJAIAJFDQAgBigCRA0AIAYgBigCJBDYgoCAACIHNgJEAkAgBw0AQQchAAwCCyAHQgA3AAAgBiAGKAJEQQRqNgJECwJAIAFBAUsNAAJAIAENACAFQdSagIAANgIIIAVBhqIENgIEIAVBqJyAgAA2AgBBCyEAQQtBhpyAgAAgBRDGgICAAAwCCyABQQAgBigCMBshAQsgBCADNgJwIAQgBjYCFCAEIAA2AgggBEH/AToARCAEIAE2AkBBACEAIAQgAkEARzoAASAEIAJFQQF0OgACAkAgBigCCCIDRQ0AIAMhAgNAAkAgAigCQCABRw0AIAIgAi0AAUEgcjoAASAEIAQtAAFBIHI6AAELIAIoAhgiAg0ACwsgBiAENgIIIAQgAzYCGCAEQQE6AAALIAVBEGokgICAgAAgAAvuBAEGfyOAgICAAEHAAGsiBCSAgICAAAJAAkAgACgCMCABTw0AIARB1JqAgAA2AgggBEGvyQQ2AgQgBEGonICAADYCAEELIQVBC0GGnICAACAEEMaAgIAADAELIAAgASAEQTxqQQBBABCBhICAACIFDQACQAJAIAQoAjwiAS0AAQ0AIAFBAToAASAB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CyABQdSagIAANgIIIAFB3Y4ENgIEIAFBqJyAgAA2AgBBCyEGQQtBhpyAgAAgARDGgICAAAwCCyAAIAggBmtB//8DcTYCFEEAIQYMAQsgAUHUmoCAADYCSCABQb6OBDYCRCABQaicgIAANgJAQQshBkELQYacgIAAIAFBwABqEMaAgIAACyABQdAAaiSAgICAACAGC/0DAQJ/I4CAgIAAQcAAayIDJICAgIAAAkACQCABIAIvARJqIgEgACgCPE0NACADQdSagIAANgIIIANB1bEENgIEIANBqJyAgAA2AgBBCyECQQtBhpyAgAAgAxDGgICAAAwBCyABQXxqKAAAIgFBGHQgAUEIdEGAgPwHcXIgAUEIdkGA/gNxIAFBGHZyciEBIAIvARBBf3MgAigCDCAAKAI0IgQoAihBfGoiAmpqIAJuIQADQAJAIAANAEEAIQIMAgsgA0EANgI8IANBADYCOAJAAkAgAUECSQ0AIAEgBCgCME0NAQsgA0HUmoCAADYCGCADQeaxBDYCFCADQaicgIAANgIQQQshAkELQYacgIAAIANBEGoQxoCAgAAMAgsCQAJAAkACQCAAQX9qIgBFDQAgBCABIANBOGogA0E8ahCJg4CAACICDQUgAygCOCICDQELIAMgBCABEIKEgIAAIgI2AjggAg0AQQAhAgwBCyACKAJILwEeQQFGDQAgA0HUmoCAADYCKCADQfqxBDYCJCADQaicgIAANgIgQQshAkELQYacgIAAIANBIGoQxoCAgAAMAQsgBCACIAEQ3IOAgAAhAgsCQCADKAI4IgFFDQAgASgCSCIBRQ0AIAEQhIGAgAALIAMoAjwhASACRQ0ACwsgA0HAAGokgICAgAAgAgv9AgEFfyOAgICAAEEQayIEJICAgIAAAkAgAygCAA0AAkAgACgCQCABQQF0aiIFLQAAQQh0IAUtAAFyIgYgAmogACgCNCgCKE0NACAEQdSagIAANgIIIARB9bMENgIEIARBqJyAgAA2AgBBC0GGnICAACAEEMaAgIAAIANBCzYCAAwBCyAALQAJIQcgACgCOCEIAkAgACAGIAJB//8DcRCEhICAACICRQ0AIAMgAjYCAAwBCyAAIAAvARhBf2oiAzsBGAJAIANB//8DcQ0AIAcgCGoiA0EHakEAOgAAIANBAWpBADYAACADQQVqIAAoAjQo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LwEYIhNqQQF0EKOJgIAAGgJAAkACQAJAICEtAAwiG0UNACATICEvARwiHEkNAQJAIBxFDQAgD0ECdCETA0AgASgC6AEgE2ogHyANLQAAQQh0IA1BAWotAAByICBxajYCACABIA9BAWoiDzYC4AEgDUECaiENIBNBBGohEyAcQX9qIhwNAAsLICFBJGohEyAPQQJ0IRxBACEdA0AgASgC6AEgHGogEygCADYCACATQQRqIRMgHEEEaiEcIB1BAWoiHSAbSQ0ACyABIA8gHWoiDzYC4AELAkAgDSAfICMvAQBqICEvARhBAXRqIhxPDQAgD0ECdCETA0AgASgC6AEgE2ogHyANLQAAQQh0IA1BAWotAAByICBxajYCACABIA9BAWoiDzYC4AEgE0EEaiETIA1BAmoiDSAcSQ0ACwsgAUGQA2ogKUECdCINaiAPNgIAICYNAiApIBhPDQIgASgC7AEgD0EBdCITaiABQfACaiANaigCACIcOwEAICIgHmogAUHIA2ogDWooAgAgHEH//wNxIg0QoImAgAAhHCABKALoASAPQQJ0Ih1qIBwgJWo2AgAgASgC7AEgE2oiEyATLwEAICVrIhM7AQAgDSAeaiEeAkAgIS0ACEUNACATQf//A3FBA0sNAgNAICIgHmpBADoAACABKALsASABKALgASIPQQF0aiINIA0vAQBBAWoiDTsBACAeQQFqIR4gDUH//wNxQQRJDQAMAwsLIAEoAugBIB1qKAIAICgoAgAoAAg2AAAgASgC4AEhDwwBCyABQdSagIAANgKYASABQaG8BDYClAEgAUGonICAADYCkAFBC0GGnICAACABQZABahDGgICAAAwHCyABIA9BAWo2AuABCwJAICkgGEYNACABQfADaiApQQFqIilBAnRqKAIAIiEoAjgiHy0AACAnKAIALQAARw0FICFBOGohKCAfICFBEmoiIy8BAGohDSABKALsASETDAELCyAlIBYoAihqQXRqISFBACEdQQAhDQNAIAFB4AFqIA1BAnRqIg9BEGogECgCPDYCACAPQShqIAFBkANqIB1BAnQiIGooAgAiGzYCAEEAIR8CQCANRQ0AIA1Bf2oiDyANIBsgAUHgAWogD0ECdGpBKGooAgBGGyEfCwJAICYNACABQeABaiAfQQFqIh9BAnRqIg1BKGogG0EBajYCACANQRBqIBIoAjw2AgALIAFB8AJqICBqIhwgISAQKAIUayIPNgIAAkAgEC0ADEUNACAQQSRqIQ1BACETA0AgHCAPIBAgDSgCACAQKAJMEYOAgIAAAGpBAmoiDzYCACANQQRqIQ0gE0EBaiITIBAtAAxJDQALCyABQbADaiAgaiAbNgIAIB0gGEYNAyAfQQFqIQ0gAUHwA2ogHUEBaiIdQQJ0aigCACEQDAALCyABQdSagIAANgIIIAFBocEENgIEIAFBqJyAgAA2AgBBCyENQQtBhpyAgAAgARDGgICAAAwOCyALQQA6AAwMCAsgGSEjAkAgGEEASA0AQQAhGyAZISMDQAJAAkAgAUHwAmogG0ECdCIpaiIdKAIAIg8gIUoNACABQbADaiApaigCACENDAELIBtBAmohHiABQbADaiApaiEcIAFBsANqIBtBAWoiIEECdCINaiEiIAFB8AJqIA1qIRMDQAJAICAgI0gNAAJAIBtBBEkNACABQdSagIAANgJ4IAFBhr0ENgJ0IAFBqJyAgAA2AnBBC0GGnICAACABQfAAahDGgICAAAwHCyATQQA2AgAgIiABKALgATYCACAeISMLAkAgASgC7AEgHCgCACIfQX9qIg1BAXRqLwEAIhANACABQeABaiANEImEgIAAIRALIB0gDyAQQQJqIhBrIg82AgACQCAmDQBBACEQIB8gASgC4AFODQACQCABKALsASAfQQF0ai8BACIQDQAgAUHgAWogHxCJhICAACEQCyAQQQJqIRALIBwgDTYCACATIBMoAgAgEGo2AgAgDyAhSg0ACwsCQCANIAEoAuABIhNODQAgAUGwA2ogKWohHyANQQF0IRAgKSABQfACampBBGohHANAAkAgASgC7AEgEGovAQAiEw0AIAFB4AFqIA0QiYSAgAAhEwsCQCATQQJqIhMgD2oiDyAhTA0AIAEoAuABIRMMAgsgHSAPNgIAIB8gDUEBaiINNgIAAkAgJg0AQQAhEyANIAEoAuABTg0AAkAgASgC7AEgEGpBAmovAQAiEw0AIAFB4AFqIA0QiYSAgAAhEwsgE0ECaiETCyAcIBwoAgAgE2s2AgAgEEECaiEQIA0gASgC4AEiE0gNAAsLAkAgDSATSA0AIBtBAWohIwwCCwJAAkAgGw0AQQAhDwwBCyApIAFBsANqakF8aigCACEPCwJAIA0gD0oNACABQdSagIAANgJoIAFBp70ENgJkIAFBqJyAgAA2AmBBC0GGnICAACABQeAAahDGgICAAAwECyAbQQFqIhsgI0gNAAsLQQAgJkEBdGshHiAjQX9qIiohKQNAAkACQAJAIClBAUgNACABQfACaiApQQJ0IitqIigoAgAhEyABQfACaiApQX9qIixBAnQiDWoiLSgCACEcAkAgASgC7AEiECABQbADaiANaiIbKAIAIh0gJmsiDUEBdGovAQANACABQeABaiANEImEgIAAGiABKALsASEQC0EAQX4gKSAqRhshIiAdQQF0QX5qIQ0DQCAdQX9qIQ8CQCAQIA1qLwEADQAgAUHgAWogDxCJhICAABoLAkACQCATDQAgASgC7AEiECAeaiANakECai8BAEECaiEfIBAgDWovAQAhIAwBCyAVDQMgEyABKALsASIQIB5qIA1qQQJqLwEAakECaiIfIBwgImogECANai8BACIga0oNAwsgGyAPNgIAIA1BfmohDSAcICBrQX5qIRwgHyETIA8hHSAPQQFqQQFKDQAMAwsLICcoAgAtAAAhIAJAAkACQAJAICNBAU4NAEEAIRAMAQsgESAXayEbQQAhECABQZADaiEcIAFB0ANqIRMgAUHwA2ohD0EAIQ0DQAJAAkACQCANIBhLDQAgEyAPKAIAIh02AgAgASAdNgLIASAPQQA2AgAgASAdKAJIEIiBgIAAIh82AvwDIBBBAWohEEECQQEgGyANRhsgHSgCSC4BHkYNASABQdSagIAANgJYIAFB8L0ENgJUIAFBqJyAgAA2AlBBC0GGnICAACABQdAAahDGgICAACABQQs2AvwDDA0LIAEgFiABQcgBaiABQewCakEBIAEoAuwCIBUbQQAQg4OAgAAiHTYC/AMgHQ0MIAEoAsgBIh0gIBD/goCAACATIB02AgAgHCABKALgATYCACAQQQFqIRAgFi0AEUUNASAWIB0oAgRBBSASKAIEIAFB/ANqEIyDgIAAIAEoAvwDRQ0BDAwLIB8NCwsgD0EEaiEPIBNBBGohEyAcQQRqIRwgIyANQQFqIg1HDQALIBBBAU4NAQtBACEsDAELQQAhHANAIAFB0AJqIBxBAnQiDWogAUHQA2ogDWooAgAiDygCBCITNgIAIAFBsAJqIA1qIBM2AgAgAUGmAmogHEEBdGog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jQQ2AlQgA0GonICAADYCUEELIQVBC0GGnICAACADQdAAahDGgICAAAwECwJAIA0gB2oiC0ECai0AAEEIdCALQQNqLQAAciANaiIRIA9NDQAgA0HUmoCAADYCaCADQaaNBDYCZCADQaicgIAANgJgQQshBUELQYacgIAAIANB4ABqEMaAgIAADAQLIA0gBGshECARIAFrIQUgCy0AASEKIAstAAAhCwwBCyACIQUgBCERCwJAAkAgBiAJTw0AIA5BAmotAABBCHQgDkEDai0AAHIgCWoiDUEDaiABSQ0AAkAgDSABSw0AIBEgDGshBSAQIAEgDWtqIRAgDCENDAILIANB1JqAgAA2AkggA0GzjQQ2AkQgA0GonICAADYCQEELIQVBC0GGnICAACADQcAAahDGgICAAAwDCyABIQ0LAkAgCEEHaiIOLQAAIgkgEEH/AXFPDQAgA0HUmoCAADYCOCADQbmNBDYCNCADQaicgIAANgIwQQshBUELQYacgIAAIANBMGoQxoCAgAAMAgsgDiAJIBBrOgAAIA1B//8DcSIBQQh2IQkgESEECwJAAkAgCEEFaiIPLQAAQQh0IAhBBmotAAByIg4gAUkNAAJAIA4gAU0NACADQdSagIAANgIIIANBwY0ENgIEIANBqJyAgAA2AgBBCyEFQQtBhpyAgAAgAxDGgICAAAwDCwJAIAYgDEH//wNxRg0AIANB1JqAgAA2AhggA0HCjQQ2AhQgA0GonICAADYCEEELIQVBC0GGnICAACADQRBqEMaAgIAADAMLIA8gBDoAASAHIAZqIg0gCjoAASANIAs6AAAgDyAEQQh2OgAADAELIAcgDEH//wNxaiIOIA06AAEgDiAJOgAACwJAIAAoAjQtABhBDHFFDQAgByABakEAIAVB//8DcRCjiYCAABoLIAcgAWoiDSAKOgABIA0gCzoAACANQQNqIAU6AAAgDUECaiAFQQh2OgAAIAAgACgCFCACajYCFEEAIQULIANBgAFqJICAgIAAIAUL6wMBCn8jgICAgABBMGsiAySAgICAACAAKAI4IgQgAC0ACSIFQQFqIgZqIgctAABBCHQgBy0AAXIhByAAKAI0KAIoIgggAWshCQJAAkADQCAHIgAgCUoNAQJAIAAgBGoiB0ECaiIKLQAAQQh0IAdBA2otAAByIgsgAWsiDEEASA0AAkACQCAMQQNKDQBBACELIAUgBGpBB2oiAS0AAEE5Sw0FIAQgBmogBy8AADsAACABIAEtAAAgDGo6AAAgDCAAaiEADAELAkAgDCAAaiIAIAlMDQAgA0HUmoCAADYCGCADQe6LBDYCFCADQaicgIAANgIQQQtBhpyAgAAgA0EQahDGgICAACACQQs2AgBBACELDAULIAogDEEYdCAMQQh0QYCA/AdxckEQdjsAAAsgBCAAaiELDAMLIAAhBiAHLQAAQQh0IActAAFyIgcgCyAAakoNAAtBACELIAdFDQEgA0HUmoCAADYCKCADQfyLBDYCJCADQaicgIAANgIgQQtBhpyAgAAgA0EgahDGgICAACACQQs2AgAMAQtBACELIAAgCEF8akwNACADQdSagIAANgIIIANBg4wENgIEIANBqJyAgAA2AgBBC0GGnICAACADEMaAgIAAIAJBCzYCAAsgA0EwaiSAgICAACALC+IKARB/I4CAgIAAQZABayICJICAgIAAIAAvARgiA0EBdCAALwESIgRqIQUgACgCNCgCKCEGAkACQAJAAkAgAC0ACSAAKAI4IgdqIghBB2oiCS0AACABTA0AIAZBfGohCgwBCwJAIAhBAWotAABBCHQgCEECai0AAHIiCyAGQXxqIgpMDQAgAkHUmoCAADYCOCACQe6KBDYCNCACQaicgIAANgIwQQshBEELQYacgIAAIAJBMGoQxoCAgAAMAwsgC0UNAAJAIAcgC2oiAS0AAEEIdCABLQABciIMIApMDQAgAkHUmoCAADYCSCACQfGKBDYCRCACQaicgIAANgJAQQshBEELQYacgIAAIAJBwABqEMaAgIAADAMLAkAgDEUNACAHIAxqIg0tAAANASANQQFqLQAADQELAkAgCyAIQQVqLQAAQQh0IAhBBmotAAByIg1LDQAgAkHUmoCAADYCiAEgAkH5igQ2AoQBIAJBqJyAgAA2AoABQQshBEELQYacgIAAIAJBgAFqEMaAgIAADAMLIAFBAmotAABBCHQgAUEDai0AAHIiDiALaiEBAkACQAJAIAxFDQACQCAMIAFPDQAgAkHUmoCAADYCaCACQfyKBDYCZCACQaicgIAANgJgQQshBEELQYacgIAAIAJB4ABqEMaAgIAADAYLIAwgB2oiD0ECai0AAEEIdCAPQQNqLQAAciIPIAxq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ACgCKCIFrIGnIgRFDQAgBSAEa0EJSA0AIAAoAiQgBGogARD+goCAACEEIAAgACkDACAErXw3AwAMAQtBACEEA0AgAEEBIAJBDGoQmISAgAAiBQ0CIAJBEGogBEEPcXIgAigCDCwAACIFOgAAIARBAWohBCAFQQBIDQALIAJBEGogARD+goCAABoLQQAhBQsgAkEgaiSAgICAACAFC/EBAgN/An4jgICAgABBEGsiASSAgICAACABQgA3AwgCQAJAIAApAwAgACkDCFMNAEEAIQICQAJAIAAoAjAiA0UNACADEJmEgIAAIQIgA0EoaiADQThqKQMAIgQ3AwAgAyADQTBqKQMANwMgAkAgBCADKQMIIgVSDQAgA0EBNgIUCyACDQBBACECIAMoAhRFDQELIAAQm4OAgAAMAgsgAygCACAAIANBIGogBRCVhICAACICDQELIAAgAUEIahCWhICAACICDQAgACABKAIIIgI2AhQgACACIABBIGoQmISAgAAhAgsgAUEQaiSAgICAACACC88DBgF/AX4CfwF+AX8BfiOAgICAAEEQayIDJICAgIAAIAApAwAhBAJAAkACQCAAKAIsIgVFDQAgACAEIAGsfDcDACACIAUgBKdqNgIADAELAkAgBCAAKAIoIgasIgeBpyIFDQAgACgCGCIIIAAoAiQgBiAAKQMIIAR9IgmnIAkgB1UbIAQgCCgCACgCCBGHgICAAAAiCA0CIAAoAighBgsCQCAGIAVrIgYgAUgNACACIAAoAiQgBWo2AgAgACAAKQMAIAGsfDcDAAwBCwJAAkAgACgCECIIIAFIDQAgACgCHCEIDAELQoABIAisQgGGIAhBwABIGyEHIAGsIQkDQCAHIgRCAYYhByAEIAlTDQALAkAgACgCHCAEEN6AgIAAIggNAEEHIQgMAwsgACAINgIcIAAgBD4CEAsgCCAAKAIkIAVqIAYQoImAgAAaIAAgACkDACAGrHw3AwACQCABIAZrIgVBAUgNAANAIAAgACgCKCIGIAUgBSAGShsiBiADQQxqEJiEgIAAIggNAyAAKAIcIAEgBWtqIAMoAgwgBhCgiYCAABogBSAGayIFQQBKDQALCyACIAAoAhw2AgALQQAhCAsgA0EQaiSAgICAACAIC4ADBgJ/AX4CfwF+AX8CfiOAgICAAEHAAGsiASSAgICAACAA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QQFIDQAgAUEMaiECQQAhAwNAIAAgAhCjhICAACACQRhqIQIgA0EBaiIDIAEoAgBIDQALCyAAIAEQy4CAgAALC0sBAX8CQCABKAIEIgJFDQAgACACEIuCgIAACwJAIAEoAggiAkUNACAAIAJBARCfhICAAAsCQCABKAIAIgFFDQAgACABEMuAgIAACwuuAQEFfyOAgICAAEEgayICJICAgIAAAkACQCABQX9qIAAoAgxJDQAgAiABNgIQIABB9b2AgAAgAkEQahDWg4CAAEEBIQMMAQtBASEDAkBBASABQQdxdCIEIAAoAgggAUEDdmoiBS0AACIGcUUNACACIAE2AgAgAEGMvoCAACACENaDgIAADAELIAAoAkQoAoACDQAgBSAGIARyOgAAQQAhAwsgAkEgaiSAgICAACADC4kBAQV/IAAgACgCAEEBaiICNgIAIAAgAkECdGogATYCAAJAIAJBAXYiA0UNACAAIANBAnRqIgQoAgAiBSABTQ0AA0AgBCABNgIAIAAgAkECdGogBTYCACADQQF2IgVFDQEgBCgCACEBIAAgBUECdGoiBiEEIAMhAiAFIQMgBigCACIFIAFLDQALCwtxAQJ/AkAgACgCACICDQBBAA8LAkACQCABQQJIDQAgACABQX9qIgMQpoSAgAAhAiAAKAIAIgFFDQEgASACNgIMIAAgASgCCDYCACABIAAgAxCmhICAADYCCCABDwsgACACKAIINgIAIAJCADcDCAsgAgvIAQEEfwJAAkAgACgCBCgCACIALQAMRQ0AQQAhAkEBIQNBACEEDAELIAFBB3EiA0EERiEEIANBAkshAiADQQFGIQMLIAAgBDoACSAAIAI6AAggACADOgAHAkACQCADRQ0AQQAhBAwBCwJAIAFBCHFFDQBBAyEEDAELQQIhBAsgACAEOgAKIAAgAC0AFCIFQf4BcSAFQQFyIAFBIHEbOgAUIAAgBEECdCAEQQAgAhtyIgUgBEEMckEMIAIbIAMbIAUgAUEQcRs6AAsLKQEBf0EBIQUCQCAAEIeCgIAADQAgACABIAIgAyAEEP2BgIAAIQULIAULzgQBBX8jgICAgABBkAJrIgYkgICAgABBACEHIAZBjAJqQQA7AQAgBkIANwKEAiAGQcgBNgKAAiAGQQA2AvgBIAYgBkEwajYC/AEgBkH4AWpBqduAgABB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IgNBCGogASAGaiIEQQhqKAIANgIAIANBDGogACAEQQxqKAIAENuBgIAANgIAIANBEGogACAEQRBqKAIAENuBgIAANgIAIANBFGogACAEQRRqKAIAENuBgIAANgIAIANBLGogBEEsaigCADYCACADQTBqIARBMGooAgA2AgAgA0EgaiAEQSBqKQMANwMAAkAgA0EtaiIILwAAIglBAnFFDQAgA0HIAGogACAEQcgAaigCABDbgYCAADYCACAILwAAIQkLIANBzABqIARBzABqKAIAIgo2AgACQCAJQYABcUUNACAKIAooAgBBAWo2AgAgCC8AACEJCwJAIAlBBHFFDQAgA0HIAGogACAEQcgAaigCACACEOCEgIAANgIACyADQRhqIARBGGooAgAiCTYCAAJAIAlFDQAgCSAJKAIgQQFqNgIgCyADQRxqIAAgBEEcaigCACACEN6EgIAANgIAAkACQCAEQTRqKAIAIgkNAEEAIQkMAQsgACAJIAJBABDdhICAACEJCyADQTRqIAk2AgAgA0E4aiAAIARBOGooAgAQ1YaAgAA2AgAgA0HAAGogBEHAAGopAwA3AwAgBkHIAGohBiAHQQFqIgcgASgCAEgNAAsLIAUhAwsgAwujAQECfyOAgICAAEEQayIEJICAgIAAIAAoAgAhBQJAAkAgAigCBEUNAAJAIAVBqQFqLQAARQ0AIABBk8+BgABBABD6gYCAAEF/IQIMAgsgAyACNgIAIAUgARCohoCAACICQX9KDQEgBCABNgIAIABBpM+BgAAgBBD6gYCAAEF/IQIMAQsgAyABNgIAIAVBqAFqLQAAIQILIARBEGokgICAgAAgAgtoAQN/IABBACABQQhqIgIQxISAgAAhAyAAKAIAIAFBGGoiBCgCABDJgICAACAEIAM2AgACQCADRQ0AIAMgAygCIEEBajYCICABQS1qLQAAQQJxRQ0AQQAgAyAAIAIQ8IaAgAAbDwsgAwsCAAurAwILfwF+I4CAgIAAQRBrIgIkgICAgAAgACgCGCIDKAIAKAIAIgQgAygCKBD9gICAACEFQQAhBgJAIAEoAiAiB0UNAAJAAkAgBygCAEEBSA0AIAdBNGohCCADQQRqIQlBACEKA0ACQCADLQAkDQACQAJAIAhBWGoiCygCACIMDQAgCEF5ai8AACELDAELAkAgBSAEIAwQ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IAwgBxDNgICAAAsCQCAERQ0AIAwgBBCLgoCAAAsgDCADEKGEgIAAAkAgDUUNACAMIA0Qy4CAgAALIAtB0AJqJICAgIAAC3MBAX8CQCAALQDAAUEDRg0AAkACQCAAKAIAIgNFDQAgA0IQEOuAgIAAIQMMAQtCEBDXgICAACEDCyADRQ0AIANBADYADCADQgA3AAQgAyABNgIAIAMgAikCADcCBCADIAAoAoQCNgIMIAAgAzYChAILIAELVQEBfwJAAkAgAELYABDrgICAACICDQBBACECIAFFDQEgACABEM2AgIAAQQAPCyACQgA3AgwgAkKBgICAwAA3AgAgAiABNgIIIAJBFGpBADYCAAsgAgttAQF/AkAgAQ0AIAAoAgAgAhD2hICAAA8LAkAgASgCBCABKAIAIgNKDQAgACgCACABIAIQ9YWAgAAPCyABIANBAWo2AgAgASADQQR0aiIAQRRqQQA2AgAgAEEMakIANwIAIABBCGogAjYCACABC18BAn8jgICAgABBEGsiAiSAgICAAAJAIAAoAiQNACABEJaGgIAAIAAoAgBB/ABqKAIAIgMgASgCGE4NACACIAM2AgAgAEGh44GAACACEPqBgIAACyACQRBqJICAgIAAC0MAAkAgAUUNACABIAI2AhQgASABKAIEQYCQgAFyNgIEIAAgARD4hICAAA8LAkAgAkUNACAAKAIAIAJBARCfhICAAAsL4QIBBH8jgICAgABB4ABrIgkkgICAgAAgACgCAELMABDrgICAACIKIAlBCGogChshCwJAIAENACAAKAIAIQEgCUIANwNYIAFBswEgCUHYAGpBABDZhICAACEBIAAoAgAgARD2hICAACEBCyAAIAAoAmRBAWoiDDYCZCALQgA3AgggCyAHNgIEIAtBiQE6AAAgCyABNgIcIAtBADsBAiALIAw2AhAgC0J/NwIUAkAgAg0AAkACQCAAKAIAIgJFDQAgAkLQABDrgICAACECDAELQtAAENeAgIAAIQILIAJFDQAgAkEAQdAAEKOJgIAAGgsgC0EANgJIIAtCADcCQCALIAg2AjwgC0IANwI0IAsgBjYCMCALIAU2AiwgCyAENgIoIAsgAzYCJCALIAI2AiACQCAAKAIAIgAtAFNFDQAgACALIAsgCUEIakcQn4SAgABBACEKCyAJQeAAaiSAgICAACAK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QdgARw0AAkACQCAGQdgARw0AIActABAhBiADQdgBakEDIBVBABDzhYCAABogBkHZAEcNASADQdgBakECIBNBABDzhYCAABogA0HYAWpBAUEAQQAQ84WAgAAaDAMLIANB2AFqQQMgFUEAEPOFgIAAGgsgA0HYAWpBAUEAQQAQ84WAgAAaIANB2AFqQQIgE0EAEPOFgIAAGgwBCyADQdgBakEDQQBBABDzhYCAABogBy0AEkHaAEYNAAJAIActABBB2QBHDQAgDygCbCEKQQAhBgJAIBVFDQAgACAAKAI4QX9qIgY2AjggA0HYAWpBOSADKAKAAiAVIAMoAogCIAYQ9IWAgAALIANB2AFqQQFBAEEAEPOFgIAAGiADQdgBakECIBNBABDzhYCAABogFUUNASAPQQtBACAKQQAQ/YGAgAAaIA8gBhC1hYCAAAwBC0EAIQYCQCAVRQ0AIA9BMCAVQQBBARD9gYCAACEGCyADQdgBakEBQQBBABDzhYCAABogA0HYAWpBAiATQQAQ84WAgAAaIBVFDQAgDygCbCEKQdz6goAAIQgCQCAPKAIALQBTDQAgDygCaCAKQX9qIAYgBkEASBtBFGxqIQgLIAggCjYCCAsgDyAZELWFgIAAIBIQ6IWAgABBACEIAkAgBygCCEUNACAPQcUAQQAgGEEAEP2BgIAAIQggDygCbCEGQdz6goAAIQoCQCAPKAIALQBTDQAgDygCaCAGQX9qICIgIkEASBtBFGxqIQoLIAogBjYCCAsgA0EANgL0ASAPQSUgEEEAQQAQ/YGAgAAhCyAHLQARIQYCQAJAIActABJB2ABHDQACQAJAIAZB/wFxQdgARw0AIActABAhBiADQdgBakEDIBVBABDzhYCAABogBkHZAEcNASADQdgBakECIBNBABDzhYCAABoMAQsgA0HYAWpBAyAVQQAQ84WAgAAaCyADQdgBakEBQQBBABDzhYCAABogDygCbCEGIA8oAgAtAFMhCQwBCyADQdgBakEDQQBBABDzhYCAABoCQCAGQf8BcUHWAEcNAAJAAkAgBy0AEEHZAEcNACAPKAJsIQYgA0HYAWpBAiATQQEQ84WAgAAhCSADQdgBakEBQQBBARDzhYCAACERDAELIA8oAmwhBgJAIActABJB2gBHDQAgA0HYAWpBASATQQEQ84WAgAAhESADQdgB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IQYCQCAEKAIALQBTDQAgBCgCaCABQX9qIAcgB0EASBtBFGxqIQYLIAYgATYCCCAEIBAQtYWAgAAgBUE0Rw0BIARBEyACIAJBABD9gYCAABoMAQsgACAGIANB2ABqELKGgIAAIQcgACABKAIQIANB1ABqELKGgIAAIQggBEHFAEEBIAJBABD9gYCAABogACAGIAEoAhAgBSAHIAggBCgCbEECaiAJIAEoAgRBCXZBAXEQvYaAgAACQCAJQYABRw0AIARBxQBBACACQQAQ/YGAgAAaDAELIARB2QAgByACIAgQ/YGAgAAaCwJAIAMoAlgiAUUNACAALQATIgVBB0sNACAAIAVBAWo6ABMgACAFQQJ0akGMAWogATYCAAsgAygCVCIBRQ0CIAAtABMiBUEHSw0CIAAgBUEBajoAEyAAIAVBAnRqQYwBaiABNgIADAILAkAgACABKAIMIAIQrIaAgAAiBSACRg0AIARBzgAgBSACQQAQ/YGAgAAaCyAEQdUAIAIgASgCCEEAEKOFgIAAQQAQ/YGAgAAaDAELIARByABBACACQQAQ/YGAgAAaCyACIQYLIANBoAFqJICAgIAAIAYLwwEBAX8CQCABLAABIgRFDQAgACgCACAEIAEoAhAQj4OAgAAgAUEANgIQIAFBADoAAQsCQCADQX9KDQAgACABIAAoAmhrQRRtIAIgAxDThICAAA8LAkACQAJAAkACQCADDQAgAg0BDAMLIAJFDQIMAQsgAhChiYCAAEH/////A3EhAwsgACgCACADrUIBfBDrgICAACIARQ0AIAAgAiADEKCJgIAAIANqQQA6AAAMAQtBACEACyABQfkBOgABIAEgADYCEAu4AQECfyAAKAIIIQMCQAJAIAAoAjQiBEEBTg0AQQAhBAwBCyADQRUgBEF/akEAIAIQ/YGAgAAhBAsgACABKAIEIAIQvoaAgAACQCABLAANQcIASA0AIAMgA0HcACACQQFBABD9gYCAACABQQ1qQQEQ04SAgAALAkAgBEUNACADKAJsIQBB3PqCgAAhAQJAIAMoAgAtAFMNACADKAJoIABBf2ogBCAEQQBIG0EUbGohAQsgASAANgIICwugAwMDfwF+An8jgICAgABBEGsiBCSAgICAACAAKAIIIQUCQAJAIAFBBWotAABBBHFFDQAgBUHFAEEAIAEoAggiAWsg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ACADIAAgASgCACIEKAIAENuBgIAANgIAIAMgBCgCBDYCBCABKAIEQQJIDQBBCCEDQQEhBANAIAIoAgAgA2oiBSAAIAEoAgAgA2oiBigCABDbgYCAADYCACAFQQRqIAZBBGooAgA2AgAgA0EIaiEDIARBAWoiBCABKAIESA0ACwsgAg8LIAAgAhDLgICAAAtBAAuRAQECfwJAIABFDQAgAEHEAGohAgJAAkACQCAAKAJEIgMNACABIAM2AiQMAQtBACADIAFBABDMhoCAAA0BIAEgAigCACIANgIkIABFDQAgACABQSRqNgIgCyABIAI2AiAgAiABNgIADwsgASgCCCACKAIAKAIIQX8Qv4WAgABFDQAgACAAKAIEQYCAgBByNgIECwtJAQF/AkACQCAADQBBACECDAELIAAgARDYhoCAACECIAFBAXFFDQAgACgCDCABENeGgIAAIAJqIAAoAhAgARDXhoCAAGoPCyACC3gBAX9BNCECAkAgAUUNACAALQAAQbEBRg0AIABBB2otAABBAXENAEEcIQIgACgCDA0AQRxBDCAAKAIUGyECCwJAIABBBWotAABBBHENACAAKAIIIgBFDQAgAkEBciAAEKGJgIAAQf////8DcWohAgsgAkEHakF4cQvZCAMFfwF+Bn8jgICAgABBMGsiBCSAgICAACAAKAIAIQUgBEEgakIANwMAIARCADcDGAJAAkACQCABDQBBACEGIANBADYCACACQQA7AQAgBUHTAGohBwwBCyABKAIAIgBBFGwiCK0hCQJAAkAgBUUNACAFIAkQ64CAgAAhBgwBCyAJENeAgIAAIQYLAkAgBkUNACAGQQAgCBCjiYCAABoLQf//ASEKAkACQCAAQf//AUgNACADIAY2AgAgAkH//wE7AQAgBUHTAGohBwwBCyADIAY2AgAgAiAAOwEAIAVB0wBqIQcgAEEBSA0BIAAhCgsgBiELQQAhDANAIActAAANAgJAAkACQAJAIAEgDEEEdGoiAEEMaigCACINRQ0AIABBEWotAABBA3FFDQELAkAgAEEIaigCACIAKAIEIghBgKAQcUUNAANAAkACQCAIQYCAEHFFDQAgACgCFEEIaiEADAELIABBDGohAAsgACgCACIAKAIEIghBgKAQcQ0ACwsCQCAALQAAQYwBRw0AA0AgACgCECIALQAAQYwB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QRhqKAIAIgY2AiwgAEH//wM7ASIgAEGmAToAACAAQQE2AhggACAFQTBqKAIANgIcAkAgBi4BKCADRw0AIABB//8DOwEgIAAPCyAAIAM7ASACQCAGLQAkQeAAcUUNACAGKAIEIANBFGxqLQAQQeAAcUUNACABIAJByABsakHAAGpCf0J/IAYyASoiB0L/////D4OGQn+FIAdCP1UbNwMAIAAPCyABIAJByABsakHAAGoiACAAKQMAQgEgA0E/IANBP0gbrYaENwMACyAEC6QCAQp/I4CAgIAAQSBrIgIkgICAgAACQCABKAJAIgNFDQAgACgCACEEQQAhBQJAIANBFGooAgAtAARBwABxDQAgBCAEKAIAIAMQ0YaAgABBARC/hICAACEFCwJAIAMoAgBBAUgNACADQRRqIQEgAkEEciIGQRhqIQcgBkEQaiEIIAZBCGohCUEAIQoDQCABKAIAIQsgB0EANgIAIAhCADcCACAJQgA3AgAgBkIANwIAIAIgBDYCAAJAIAVFDQAgBCALIAIQuYWAgAALIAAgCxDnhICAABogBCABQXxqKAIAEJqFgIAAIAFBGGohASAKQQFqIgogAygCAEgNAAsLIAVFDQAgBCgC/AEgBUcNACAEIAUoAgg2AvwBCyACQSBqJICAgIAAC5kDAQd/I4CAgIAAQSBrIgMkgICAgAAgA0EAOwEcIANBADYCGCADQgA3AgwgAyAAKAIAIgQ2AgggAyAEKAJwNgIUAkACQCACKAIoDQAgAi8BMkUNASACKAIMIQVBACEEQQAhBgNAIAUoAgQgAigCBCAEai4BAEEUbGooAgAhBwJAIAZFDQACQCADKAIYIghBAmoiCSADKAIQSQ0AIANBCGpB0OqBgABBAhDngICAAAwBCyADIAk2AhggAygCDCAIakGswAA7AAALIANBCGogBSgCABDmgICAAAJAAkAgAygCGCIIQQFqIgkgAygCEEkNACADQQhqQeGLgIAAQQEQ54CAgAAMAQsgAyAJNgIYIAMoAgwgCGpBLjoAAAsgA0EIaiAHEOaAgIAAIARBAmohBCAGQQFqIgYgAi8BMkkNAAwCCwsgAyACKAIANgIAIANBCGpBxeqBgAAgAxDogICAAAsgA0EIahDvgICAACEEIABBkwxBkxAgAi8AN0EDcUECRhsgASAEQXlBAhC0hYCAACAD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KAIIIQQCQAJAIAJBAUgNAANAIAMsAABBwQBKDQEgA0EBaiEDIAFBAWohASACQQFKIQAgAkF/aiIFIQIgAA0ADAILCyACIQULIAVBf2ohAAJAAkADQCAAIgJBAWpBAkgNASACQX9qIQAgAyACaiwAAEHCAEgNAAwCCwsgAg0BCyAEIARB3AAgASACQQFqIgJBABD9gYCAACADIAIQ04SAgAALC4EBAQF/QQAhAgJAQQAgASAAKAIYIgAoAgAgACgCBBCPhoCAAA0AIAAgARC4h4CAACABEMCGgIAAIQIgAUGmAToAACABIAI6AAEgACgCDCECIAAoAgghACABQQA2AiwgASAANgIcIAEgAjsBICABIAEoAgRB/99vcTYCBEEBIQILIAILmAEBAX8CQCABLQAAQaYBRw0AIAEoAhwgACgCGCIAKAIERw0AIAAoAhAgAS4BIEcNACAAIAEQuIeAgAACQAJAIAEuASAiAkEATg0AQcQAIQIMAQsgASgCLCgCBCACQf//A3FBFGxqLQANIQILIAEgAjoAASAAKAIMIQIgACgCCCEAIAFBADYCLCABIAA2AhwgASACOwEgC0EAC5UBAQN/AkAgAC0AAEEsRw0AA0AgACgCDCABIAIQkoeAgAAgACgCECIALQAAQSxGDQALCwJAIAIoAgxBAUgNACACKAIUIQNBACEEA0ACQCADQQpqIgUtAABBBHENAEEAIAMoAgAgACABEI+GgIAADQAgBSAFLwEAQQRyOwEACyADQTBqIQMgBEEBaiIEIAIoAgxIDQALCwuGAQEBfyOAgICAAEEwayIDJICAgIAAIANBGGpCADcDACADQSBqQgA3AwAgA0IANwMQIANB54CAgAA2AhQgAyABNgIMIAMgAjYCCCADIANBCGo2AigCQAJAIAANAEEBIQAMAQsgA0EQaiAAEOmEgIAAGiADLwEkRSEACyADQTBqJICAgIAAIAALSgEBfwJAIAAoAkAiAUUNAANAIAAgASgCADYCQCABKAIEIAFBCGpBNBCgiYCAABogACgCACgCACABEMuAgIAAIAAoAkAiAQ0ACwsLtwEBBH8CQCABLQAsIgJFDQAgAUGwBmohA0EAIQQDQAJAIAMoAgAiBUUNACAFQSVqLQAAQQhxRQ0AIANBfGooAgAiBUUNACAAIAUQy4CAgAAgAS0ALCECCyAD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GiAJIAsQy4CAgAAgASgCACISDQALCyAAIBFBf0EBQX8QzIGAgAAgCSAREMuAgIAAQQAhCwsgChDYgICAAAsgBUEgaiSAgICAACALC6gBAQJ/I4CAgIAAQSBrIgUkgICAgAAgAkEBEOOAgIAAIQIgA0EBEOOAgIAAIQMgAS0AACEGIAVBEGogBCgCBDYCACAFIAE2AgwgBSADNgIEIAUgAjYCACAFQfX9gYAAQdSLgIAAIAYbNgIIQZi6goAAIAUQ8oCAgAAhASAAQQE2AhQgACgCACABQn9BAUF/EPyAgIAAGiABENiAgIAAIAVBIGokgICAgAALrgEBA38gACgCACEBAkAgACgCCCICRQ0AIAIQt4GAgAAaCyABIAAoAtwBEMmAgIAAAkADQCAAKALgASICRQ0BIAAgAigCFDYC4AEgASACENmDgIAADAALCyABIAAoAuQBEMiAgIAAAkAgACgCBCICRQ0AIAEgAhDLgICAAAsCQCAAKAKEAiICRQ0AA0AgAigCDCEDIAEgAhDLgICAACADIQIgAw0ACwsgABD/gICAAAuHDgMGfwF+CH8jgICAgABB4AJrIgMkgICAgAAgACgCACgCICEEIAIoAgBBARDjgICAACEFIAIoAgxBARDjgICAACEGIAIoAhBBARDjgICAACEHIAIoAhRBARDjgICAACEIIAIoAhgQ4YCAgAAhCQJAIAZFDQAgB0UNACAIRQ0AIANByABqQgA3AwAgA0HQAGpBADYCACAEKALAAiEKIARBADYCwAIgA0IANwNAIAQgByAFEIGCgIAAIQsgA0E0akEANgIAIANCADcCLCADIAs2AkwgA0HsgICAADYCKCADQe2AgIAANgIkIAMgA0HAAGo2AjggAyADQdgAajYCIAJAAkAgA0HYAGogBSAEIAYgCacQgoiAgAAiBQ0AIAQpAyAiCadBgICAIHEhDAJAAkAgAygCtAIiDUUNAAJAAkAgDSgCDCIFRQ0AIAwNAyADQRxqQQA2AgAgA0EUakIANwIAIANBDGpCADcCACADQgA3AgQgBSAFKAIEQf///35xNgIEIAMgA0HYAGo2AgAgA0HYAGogDSgCDCADELmFgIAAIAMoAnwNASADQSBqIA0oAgwQ54SAgAAaDAMLAkACQCAJQoCAAYNCAFINACAMDQELIA0oAhAiDkUNACADQdwC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fyAAQgA3AgAgAEEYakIANwIAIABBEGpCADcCACAAQQhqQgA3AgACQAJAIAJFDQAgACACNgIMIABBABD4iICAACEDIAAtABQhBAJAIANBAUgNACAEQf8BcQ0AA0AgAiADaiEFIANBAWoiBiEDIAUtAAAiBUGQy4KAAGotAAANAAsgBkF/akEBSA0AQQAhAyAFRQ0CCwJAIAFFDQACQCAEQf8BcUUNACABENWBgIAADAELIAFBATYCFCABKAIAQfTKgoAAQn9BAUF/EPyAgIAAGgsgACgCCBDYgICAACAAQgA3AgAgAEEANgIIIAAoAhAQ2ICAgAAgAEEANgIQC0EBIQMLIAMLzgEBAn8jgICAgABBEGsiBCSAgICAAEEAIQUgBEEANgIMAkAgAUUNAAJAAkAgAS0AAEEkRg0AIAQgATYCDAwBCyAAQQAgAUEBaiACIARBDGoQ+YiAgAAhBSAEKAIMIgFFDQELIAAgAC0AFUEBajoAFSAEIAE2AgACQAJAQZTNgoAAIAQQ8oCAgAAiAUUNACADQQE2AhQgAygCACABQn9BAUF/EPyAgIAAGiABENiAgIAADAELIAMQ1YGAgAALQQAhBQsgBEEQaiSAgICAACAFC78BAQJ/I4CAgIAAQYABayIDJICAgIAAIAMgATYCACADQQE7ARggA0IANwMQIANC5AA3AwggAyADQRpqIgQ2AgQgACADIAIQ44iAgAACQCADLQAZDQAgAygCACADKAIEIAMpAxBBf0GbgICAACADLQAYG0EBENGBgIAAIANBAToAGCADQgA3AxAgA0LkADcDCCADIAQ2AgQLIAEoAgAiAUHKADoACyABIAEvAQhBgIACcjsBCCADQYABaiSAgICAAAv7AQECfyOAgICAAEGAAWsiAySAgICAACADIAA2AgAgA0IANwMQIANC5AA3AwggAyADQRpqIgQ2AgQgA0EBOwEYIANB2wAQ3YiAgAACQCABQQFIDQADQCADEN6IgIAAIAMgAigCABDfiICAACACQQRqIQIgAUF/aiIBDQALCyADQd0AEN2IgIAAAkAgAy0AGQ0AIAMoAgAgAygCBCADKQMQQX9Bm4CAgAAgAy0AGBtBARDRgYCAACADQQE6ABggA0IANwMQIANC5AA3AwggAyAENgIECyAAKAIAIgJBygA6AAsgAiACLwEIQYCAAnI7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IAEgCiAAQQFBm4CAgAAQzIGAgAAMAgsgARDVgYCAAAwBCyAAIAFBABDbiICAAAsgAkEQaiSAgICAAAv8AgEFfyOAgICAAEEwayIDJICAgIAAAkAgAUEBSA0AIAAoAgQoAggoAgAhBAJAIAFBAXENACAAQYHOgoAAQYXOgoAAIAQbEOeIgIAADAELIANBEGogACACKAIAQQEQ44CAgAAQ2YiAgAANAAJAAkAgAUECSQ0AIAJBBGohBUEBIQYDQCAFKAIAQQEQ44CAgAAhByADQQA2AgwgA0EQaiAHIANBDGogABDaiICAACEHAkAgAy0AJEUNACAAENWBgIAADAMLIAMtACUNAgJAIAdFDQAgAygCDCAEckUNACAHIAZBAWo2AgggByAHLQABQQhyOgABCyAFQQhqIQUgBkECaiIGIAFJDQALCwJAIAMoAhgiAS0AAUEIcUUNACAAKAIAIAIgASgCCEECdGooAgAQ0oGAgAAaDAELIAEgACACENuIgIAACyADKAIYENiAgIAAIANCADcDECADQQA2AhggAygCIBDYgICAACADQQA2AiALIANBMGokgICAgAALWgEBfyOAgICAAEEQayICJICAgIAAIAIgATYCAEGMzoKAACACEPKAgIAAIQEgAEEBNgIUIAAoAgAgAUJ/QQFBfxD8gICAABogARDYgICAACACQRBqJICAgIAAC9EDAQN/I4CAgIAAQYABayIDJICAgIAAAkACQCABQQFxRQ0AIABBATYCFCAAKAIAQbfOgoAAQn9BAUF/EPyAgIAAGgwBCyADIAA2AgAgA0IANwMQIANC5AA3AwggAyADQRpqIgQ2AgQgA0EBOwEYIANB+wAQ3YiAgAACQCABQQFIDQBBACEFA0ACQEKEgJCAwICAAiACKAIAMwEIQj+DiKdBAXENACAAQQE2AhQgACgCAEHqzoKAAEJ/QQFBfxD8gICAABoCQCADLQAYDQAgAygCBBDYgICAAAsgA0EBOgAYIANCADcDECADQuQANwMIIAMgBDYCBAwDCyADEN6IgIAAIAMgAigCAEEBEOOAgIAAIAIoAgBBARDDgYCAABDpiICAACADQToQ3YiAgAAgAyACQQRqKAIAEN+IgIAAIAJBCGohAiAFQQJqIgUgAUgNAAsLIANB/QAQ3YiAgAACQCADLQAZDQAgAygCACADKAIEIAMpAxBBf0GbgICAACADLQAYG0EBENGBgIAAIANBAToAGCADQgA3AxAgA0LkADcDCCADIAQ2AgQLIAAoAgAiAkHKADoACyACIAIvAQhBgIACcjsBCAsgA0GAAWokgICAgAALqwQCA34CfwJAIAFFDQACQCACrSIDIAApAxAiBHxCAnwgACkDCFQNACAAIAJBAmoQ/YiAgAANASAAKQMQIQQLIAAgBEIBfDcDECAAKAIEIASnakEiOgAAAkAgAkUNACADQgd8IQUgAkEDaiEGIANCA3whBANAAkACQAJAAkAgAS0AACICQdwARg0AIAJBIkcNAQsgAiEHDAELAkAgAkEfTQ0AIAIhBwwCCyACQdDNgoAAai0AACIHDQACQCAFIAApAxAiA3wgACkDCFgNACAAIAZBBGoQ/YiAgAANBSAAKQMQIQMLIAAgA0IBfDcDECAAKAIEIAOnakHcADoAACAAIAApAxAiA0IBfDcDECAAKAIEIAOnakH1ADoAACAAIAApAxAiA0IBfDcDECAAKAIEIAOnakEwOgAAIAAgACkDECIDQgF8NwMQIAAoAgQgA6dqQTA6AAAgACAAKQMQIgNCAXw3AxAgACgCBCADp2ogAkEEdkEwcjoAACACQQ9xQfDNgoAAai0AACEHDAELAkAgBCAAKQMQIgN8IAApAwhYDQAgACAGEP2IgIAADQQgACkDECEDCyAAIANCAXw3AxAgACgCBCADp2pB3AA6AAALIAAgACkDECIDQgF8NwMQIAAoAgQgA6dqIAc6AAAgBkF/aiEGIAFBAWohASAFQgF8IQUgBEJ/fCIEQgNSDQALCyAAIAApAxAiBEIBfDcDECAAKAIEIASnakEiOgAACwuXAgEBfyOAgICAAEHAAGsiAySAgICAAAJAIANBIGogACACKAIAQQEQ44CAgAAQ2YiAgAANAAJAAkAgAyAAIAIoAgRBARDjgICAABDZiICAAEUNACADKAIoENiAgIAAIANBADYCICADQQA2AiggA0EgaiEADAELAkACQCADQSBqQQAgAygCCBDriICAACICRQ0AIAIgAEEAENuIgIAADAELIAAQ1YGAgAALIAMoAigQ2ICAgAAgA0IANwMgIANBADYCKCADKAIwENiAgIAAIANBADYCMCADKAIIENiAgIAAIANBADYCACADQQA2AgggAyEACyAA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IANC5AA3AyggAyADQTpqIgI2AiQCQAJAIAAtABVFDQAgACADQSBqIAUQjImAgAAMAQsCQAJAIAAoAhwiAUUNACADQSBqIAEgARChiYCAABDkiICAAAwBCyADQSBqQSQQ3YiAgAALIAAtABRBemoiAUEBSw0AAkACQCABDgIAAQALIAMgACgCBDYCAEEeIANBIGpBltCCgAAgAxCNiYCAAAwBCyAEIAVBDGxqIgEoAgQhACADIAEoAghBAWo2AhQgAyAAQX5qNgIQIAAgA0EgakGb0IKAACADQRBqEI2JgIAACyADLQA5DQMgAygCICADKAIkIAMpAzBBf0GbgICAACADLQA4G0EBENGBgIAAIANBAToAOCADQgA3AzAgA0LkADcDKCADIAI2AiQMAwsgAC0AFUUNACADIAE2AiAgA0EBOwE4IANCADcDMCADQuQANwMoIAMgA0E6aiICNgIkIAAgA0EgaiAAKAIwIAVBAnRqKAIAEIyJgIAAIAMtADkNAiADKAIgIAMoAiQgAykDMEF/QZuAgIAAIAMtADgbQQEQ0YGAgAAgA0EBOgA4IANCADcDMCADQuQANwMoIAMgAjYCJAwCCyABIAAoAhwiAEGh0IKAACAAG0F/QQFBABDMgYCAAAwBCyABIAAoAixBf0EBQQAQzIGAgAALIANBoAFqJICAgIAAQQAL3QEBAn8jgICAgABBIGsiAySAgICAAAJAAkAgAg0AIAFBJBDdiICAAAwBCyAAIAEgAEEwaigCACACQQJ0aigCACIEEIyJgIAAAkAgAEEoaigCACIAIARBDGxqIgQtAABBBkcNACADIAQoAgg2AgBBHiABQZbQgoAAIAMQjYmAgAAMAQsgACACQQxsaiICIAJBdGogAi0AAUHAAHEbIgAoAgQhAiADIAAoAghBAWo2AhQgAyACQX5qNgIQIAJBAWogAUGb0IKAACADQRBqEI2JgIAACyADQSBqJICAgIAAC8gBAgN/AX4jgICAgABBIGsiBCSAgICAAAJAAkAgASkDECAArHwgASkDCFQNACABIAAQ/YiAgAANAQsgBCADNgIEAkAgAEEBSA0AIAEoAhAhBSABKAIEIQYgBEEcakEAOwEAIARCADcCFCAEIAA2AhAgBEEANgIIIAQgBiAFaiIANgIMIARBCGogAiADEN+AgIAAIAAgBCgCGGpB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IAJB/wFxRg0ACwsgAyACQf8BcWsL5AEBAn8CQCABQf8BcSICRQ0AAkACQCAAQQNxRQ0AA0AgAC0AACIDRQ0CIAMgAUH/AXFGDQIgAEEBaiIAQQNxDQALCwJAIAAoAgAiA0F/cyADQf/9+3dqcUGAgYKEeHENACACQYGChAhsIQIDQCADIAJzIgNBf3MgA0H//ft3anFBgIGChHhxDQEgACgCBCEDIABBBGohACADQX9zIANB//37d2pxQYCBgoR4cUUNAAsLIABBf2ohAANAIABBAWoiAC0AACIDRQ0BIAMgAUH/AXFHDQALCyAADwsgACAAEKGJgIAAagv7AQEDfyOAgICAAEEgayICJICAgIAAAkACQAJAIAEtAAAiA0UNACABLQABDQELIAAgA0EYdEEYdRCliYCAACEEDAELIAJBGGpCADcDACACQRBqQgA3AwAgAkIANwMIIAJCADcDACABQQFqIQEDQCACIANBA3ZBHHFqIgQgBCgCAEEBIANBH3F0cjYCACABLQAAIQMgAUEBaiEBIAMNAAsgACEEIAAtAAAiA0UNACAAIQEDQAJAIAIgA0EDdkEccWooAgAgA0EfcXZBAXFFDQAgASEEDAILIAEtAAEhAyABQQFqIgQhASADDQALCyACQSBqJICAgIAAIAQgAGsL4AECAX8CfkEBIQQCQCAAQgBSIAFC////////////AIMiBUKAgICAgIDA//8AViAFQoCAgICAgMD//wBRGw0AIAJCAFIgA0L///////////8AgyIGQoCAgICAgMD//wBWIAZCgICAgICAwP//AFEbDQACQCACIACEIAYgBYSEUEUNAEEADwsCQCADIAGDQgBTDQBBfyEEIAAgAlQgASADUyABIANRGw0BIAAgAoUgASADhYRCAFIPC0F/IQQgACACViABIANVIAEgA1EbDQAgACAChSABIAOFhEIAUiEECyAEC9gBAgF/An5BfyEEAkAgAEIAUiABQv///////////wCDIgVCgICAgICAwP//AFYgBUKAgICAgIDA//8AURsNACACQgBSIANC////////////AIMiBkKAgICAgIDA//8AViAGQoCAgICAgMD//wBRGw0AAkAgAiAAhCAGIAWEhFBFDQBBAA8LAkAgAyABg0IAUw0AIAAgAlQgASADUyABIANRGw0BIAAgAoUgASADhYRCAFIPCyAAIAJWIAEgA1UgASADURsNACAAIAKFIAEgA4WEQgBSIQQLIAQLsAIDAX8EfgF/I4CAgIAAQRBrIgIkgICAgAAgAb0iA0KAgICAgICAgIB/gyEEAkACQCADQv///////////wCDIgVCgICAgICAgHh8Qv/////////v/wBWDQAgBUI8hiEGIAVCBIhCgICAgICAgIA8fCEFDAELAkAgBUKAgICAgICA+P8AVA0AIANCPIYhBiADQgSIQoCAgICAgMD//wCEIQUMAQsCQCAFUEUNAEIAIQZCACEFDAELAkACQCAFQoCAgIAQVA0AIAVCIIinZyEHDAELIAOnZ0EgaiEHCyACIAVCACAHQTFqEK+JgIAAIAJBCGopAwBCgICAgICAwACFQYz4ACAHa61CMIaEIQUgAikDACEGCyAAIAY3AwAgACAFIASENwMIIAJBEGokgICAgAALnAEBA38jgICAgABBEGsiAiSAgICAAEEAIQMCQCABQjCIp0H//wFxIgRB//8ASQ0AAkAgBEGBgH9qQSBJDQBBgICAgHhB/////wcgAUIAUxshAwwBCyACIAAgAUL///////8/g0KAgICAgIDAAIRB74ABIARrELOJgIAAQQAgAigCACIDayADIAFCAFMbIQMLIAJBEGokgICAgAAgAwugAQMBfwF+AX8jgICAgABBEGsiAiSAgICAAAJAAkAgAVBFDQBCACEBQgAhAwwBCyACIAEgAUI/hyIDfCADhSIDQgAgA3mnIgRBMWoQr4mAgAAgAkEIaikDAEKAgICAgIDAAIVBvoABIARrrUIwhnwgAUKAgICAgICAgIB/g4QhAyACKQMAIQELIAAgATcDACAAIAM3AwggAkEQaiSAgICAAAueAQMBfwJ+AX8jgICAgABBEGsiAiSAgICAAAJAAkAgAQ0AQgAhA0IAIQQMAQsgAiABIAFBH3UiBWogBXMiBa1CACAFZyIFQdEAahCviYCAACACQQhqKQMAQoCAgICAgMAAhUGegAEgBWutQjCGfCABQYCAgIB4ca1CIIaEIQQgAikDACEDCyAAIAM3AwAgACAENwMIIAJBEGokgICAgAAL/gMDAX8CfgF/I4CAgIAAQSBrIgIkgICAgAACQAJAIAFC////////////AIMiA0KAgICAgIDA/0N8IANCgICAgICAwIC8f3xaDQAgAEI8iCABQgSGhCEDAkAgAEL//////////w+DIgBCgYCAgICAgIAIVA0AIANCgYCAgICAgIDAAHwhBAwCCyADQoCAgICAgICAwAB8IQQgAEKAgICAgICAgAiFQgBSDQEgBEIBgyAEfCEEDAELAkAgAFAgA0KAgICAgIDA//8AVCADQoCAgICAgMD//wBRGw0AIABCPIggAUIEhoRC/////////wODQoCAgICAgID8/wCEIQQMAQtCgICAgICAgPj/ACEEIANC////////v//DAFYNAEIAIQQgA0IwiKciBUGR9wBJDQAgAiAAIAFC////////P4NCgICAgICAwACEIgNBgfgAIAVrELOJgIAAIAJBEGogACADIAVB/4h/ahCviYCAACACKQMAIgNCPIggAkEIaikDAEIEhoQhBAJAIANC//////////8PgyACKQMQIAJBEGpBCGopAwCEQgBSrYQiA0KBgICAgICAgAhUDQAgBEIBfCEEDAELIANCgICAgICAgIAIhUIAUg0AIARCAYMgBHwhBAsgAkEgaiSAgICAACAEIAFCgICAgICAgICAf4OEvwukCwQBfwN+A38BfiOAgICAAEHwAGsiBSSAgICAACAEQv///////////wCDIQYCQAJAAkAgAUJ/fCIHQn9RIAJC////////////AIMiCCAHIAFUrXxCf3wiB0L///////+///8AViAHQv///////7///wBRGw0AIANCf3wiB0J/UiAGIAcgA1StfEJ/fCIHQv///////7///wBUIAdC////////v///AFEbDQELAkAgAVAgCEKAgICAgIDA//8AVCAIQoCAgICAgMD//wBRGw0AIAJCgICAgICAIIQhBCABIQMMAgsCQCADUCAGQoCAgICAgMD//wBUIAZCgICAgICAwP//AFEbDQAgBEKAgICAgIAghCEEDAILAkAgASAIQoCAgICAgMD//wCFhEIAUg0AQoCAgICAgOD//wAgAiADIAGFIAQgAoVCgICAgICAgICAf4WEUCIJGyEEQgAgASAJGyEDDAILIAMgBkKAgICAgIDA//8AhYRQDQECQCABIAiEQgBSDQAgAyAGhEIAUg0CIAMgAYMhAyAEIAKDIQQMAgsgAyAGhFBFDQAgASEDIAIhBAwBCyADIAEgAyABViAGIAhWIAYgCFEbIgobIQYgBCACIAobIghC////////P4MhByACIAQgChsiAkIwiKdB//8BcSELAkAgCEIwiKdB//8BcSIJDQAgBUHgAGogBiAHIAYgByAHUCIJG3kgCUEGdK18pyIJQXFqEK+JgIAAQRAgCWshCSAFQegAaikDACEHIAUpA2AhBgsgASADIAobIQMgAkL///////8/gyEBAkAgCw0AIAVB0ABqIAMgASADIAEgAVAiCht5IApBBnStfKciCkFxahCviYCAAEEQIAprIQsgBUHYAGopAwAhASAFKQNQIQMLIAFCA4YgA0I9iIRCgICAgICAgASEIQQgB0IDhiAGQj2IhCEBIANCA4YhAyAIIAKFIQcCQCAJIAtrIgpFDQACQCAKQf8ATQ0AQgAhBEIBIQMMAQsgBUHAAGogAyAEQYABIAprEK+JgIAAIAVBMGogAyAEIAoQs4mAgAAgBSkDMCAFKQNAIAVBwABqQQhqKQMAhEIAUq2EIQMgBUEwakEIaikDACEECyABQoCAgICAgIAEhCEMIAZCA4YhAgJAAkAgB0J/VQ0AAkAgAiADfSIBIAwgBH0gAiADVK19IgOEUEUNAEIAIQNCACEEDAMLIANC/////////wNWDQEgBUEgaiABIAMgASADIANQIgobeSAKQQZ0rXynQXRqIgoQr4mAgAAgCSAKayEJIAVBKGopAwAhAyAFKQMgIQEMAQsgBCAMfCADIAJ8IgEgA1StfCIDQoCAgICAgIAIg1ANACABQgGIIANCP4aEIAFCAYOEIQEgCUEBaiEJIANCAYghAwsgCEKAgICAgICAgIB/gyECAkAgCUH//wFIDQAgAkKAgICAgIDA//8AhCEEQgAhAwwBC0EAIQoCQAJAIAlBAEwNACAJIQoMAQsgBUEQaiABIAMgCUH/AGoQr4mAgAAgBSABIANBASAJaxCziYCAACAFKQMAIAUpAxAgBUEQakEIaikDAIRCAFKthCEBIAVBCGopAwAhAwsgAUIDiCADQj2GhCEGIANCA4hC////////P4MgAoQgCq1CMIaEIQQgAadBB3EhCQJAAkACQBCxiYCAACIKQQJNDQAgBiEDDAELAkACQAJAIAoOAwABAgALIAQgBiAJQQRLrXwiAyAGVK18IQQgCUEERw0CIAQgA0IBgyIBIAN8IgMgAVStfCEEDAMLIAQgBiACQgBSIAlBAEdxrXwiAyAGVK18IQQMAQsgBCAGIAJQIAlBAEdxrXwiAyAGVK18IQQLIAlFDQELELKJgIAAGgsgACADNwMAIAAgBDcDCCAFQfAAaiSAgICAAAtdAQF+AkACQAJAIANBwABxRQ0AIAEgA0FAaq2GIQJCACEBDAELIANFDQEgAUHAACADa62IIAIgA60iBIaEIQIgASAEhiEBCyACQgCEIQILIAAgATcDACAAIAI3AwgL3RIGAX8DfgN/AX4Bfwh+I4CAgIAAQcABayIFJICAgIAAIARC////////P4MhBiACQv///////z+DIQcgBCAChUKAgICAgICAgIB/gyEIIARCMIinQf//AXEhCQJAAkACQAJAIAJCMIinQf//AXEiCkF/akH9/wFLDQBBACELIAlBf2pB/v8BSQ0BCwJAIAFQIAJC////////////AIMiDEKAgICAgIDA//8AVCAMQoCAgICAgMD//wBRGw0AIAJCgICAgICAIIQhCAwCCwJAIANQIARC////////////AIMiAkKAgICAgIDA//8AVCACQoCAgICAgMD//wBRGw0AIARCgICAgICAIIQhCCADIQEMAgsCQCABIAxCgICAgICAwP//AIWEQgBSDQACQCADIAJCgICAgICAwP//AIWEUEUNAEIAIQFCgICAgICA4P//ACEIDAMLIAhCgICAgICAwP//AIQhCEIAIQEMAgsCQCADIAJCgICAgICAwP//AIWEQgBSDQBCACEBDAILIAEgDIRCAFENAgJAIAMgAoRCAFINACAIQoCAgICAgMD//wCEIQhCACEBDAILQQAhCwJAIAxC////////P1YNACAFQbABaiABIAcgASAHIAdQIgsbeSALQQZ0rXynIgtBcWoQr4mAgABBECALayELIAVBuAFqKQMAIQcgBSkDsAEhAQsgAkL///////8/Vg0AIAVBoAFqIAMgBiADIAYgBlAiDRt5IA1BBnStfKciDUFxahCviYCAACANIAtqQXBqIQsgBUGoAWopAwAhBiAFKQOgASEDCyAFQZABaiADQjGIIAZCgICAgICAwACEIg5CD4aEIgJCAEKEyfnOv+a8gvUAIAJ9IgRCABC0iYCAACAFQYABakIAIAVBkAFqQQhqKQMAfUIAIARCABC0iYCAACAFQfAAaiAFKQOAAUI/iCAFQYABakEIaikDAEIBhoQiBEIAIAJCABC0iYCAACAFQeAAaiAEQgBCACAFQfAAakEIaikDAH1CABC0iYCAACAFQdAAaiAFKQNgQj+IIAVB4ABqQQhqKQMAQgGGhCIEQgAgAkIAELSJgIAAIAVBwABqIARCAEIAIAVB0ABqQQhqKQMAfUIAELSJgIAAIAVBMGogBSkDQEI/iCAFQcAAakEIaikDAEIBhoQiBEIAIAJCABC0iYCAACAFQSBqIARCAEIAIAVBMGpBCGopAwB9QgAQtImAgAAgBUEQaiAFKQMgQj+IIAVBIGpBCGopAwBCAYaEIgRCACACQgAQtImAgAAgBSAEQgBCACAFQRBqQQhqKQMAfUIAELSJgIAAIAsgCiAJa2ohCQJAAkBCACAFKQMAQj+IIAVBCGopAwBCAYaEQn98IgxC/////w+DIgQgAkIgiCIPfiIQIAxCIIgiDCACQv////8PgyIRfnwiAkIghiISIAQgEX58IhEgElStIAJCIIggAiAQVK1CIIaEIAwgD358fCARIAQgA0IRiEL/////D4MiD34iECAMIANCD4ZCgID+/w+DIhJ+fCICQiCGIhMgBCASfnwgE1StIAJCIIggAiAQVK1CIIaEIAwgD358fHwiAiARVK18IAJCAFKtfH0iEUL/////D4MiDyAEfiIQIA8gDH4iEiAEIBFCIIgiE358IhFCIIZ8Ig8gEFStIBFCIIggESASVK1CIIaEIAwgE358fCAPQgAgAn0iAkIgiCIRIAR+IhAgAkL/////D4MiEiAMfnwiAkIghiITIBIgBH58IBNUrSACQiCIIAIgEFStQiCGhCARIAx+fHx8IgIgD1StfCACQn58IhAgAlStfEJ/fCIRQv////8PgyICIAFCPoggB0IChoRC/////w+DIgR+Ig8gAUIeiEL/////D4MiDCARQiCIIhF+fCISIA9UrSASIBBCIIgiDyAHQh6IQv//7/8Pg0KAgBCEIgd+fCITIBJUrXwgByARfnwgAiAHfiIUIAQgEX58IhIgFFStQiCGIBJCIIiEfCATIBJCIIZ8IhIgE1StfCASIA8gDH4iFCAQQv////8PgyIQIAR+fCITIBRUrSATIAIgAUIChkL8////D4MiFH58IhUgE1StfHwiEyASVK18IBMgFCARfiISIBAgB358IhEgDyAEfnwiBCACIAx+fCICQiCIIBEgElStIAQgEVStfCACIARUrXxCIIaEfCIRIBNUrXwgESAVIA8gFH4iBCAQIAx+fCIMQiCIIAwgBFStQiCGhHwiBCAVVK0gBCACQiCGfCAEVK18fCIEIBFUrXwiAkL/////////AFYNACABQjGGIARC/////w+DIgEgA0L/////D4MiDH4iEUIAUq19QgAgEX0iECAEQiCIIhEgDH4iEiABIANCIIgiD358IgdCIIYiE1StfSACQv////8PgyAMfiABIAZC/////w+DfnwgESAPfnwgB0IgiCAHIBJUrUIghoR8IAQgDkIgiH4gAyACQiCIfnwgAiAPfnwgESAGfnxCIIZ8fSEMIBAgE30hASAJQX9qIQkMAQsgBEIhiCEPIAFCMIYgBEIBiCACQj+GhCIEQv////8PgyIBIANC/////w+DIgx+IhFCAFKtfUIAIBF9IhAgASADQiCIIhF+IhIgDyACQh+GhCITQv////8PgyIHIAx+fCIPQiCGIhRUrX0gByARfiACQgGIIgdC/////w+DIAx+fCABIAZC/////w+DfnwgD0IgiCAPIBJUrUIghoR8IAQgDkIgiH4gAyACQiGIfnwgByARfnwgEyAGfnxCIIZ8fSEMIBAgFH0hASAHIQILAkAgCUGAgAFIDQAgCEKAgICAgIDA//8AhCEIQgAhAQwBCyAJQf//AGohCgJAIAlBgYB/Sg0AAkAgCg0AIAJC////////P4MgBCABQgGGIANWIAxCAYYgAUI/iIQiASAOViABIA5RG618IgEgBFStfCIDQoCAgICAgMAAg1ANACADIAiEIQgMAgtCACEBDAELIAqtQjCGIAJC////////P4OEIAQgAUIBhiADWiAMQgGGIAFCP4iEIgEgDlogASAOURutfCIBIARUrXwgCIQhCAsgACABNwMAIAAgCDcDCCAFQcABaiSAgICAAA8LIABCADcDACAAIAhCgICAgICA4P//ACADIAKEQgBSGzcDCCAFQcABaiSAgICAAAsEAEEACwQAQQALZQEBfgJAAkACQCADQcAAcUUNACACIANBQGqtiCEBQgAhBEIAIQIMAQsgA0UNASACQcAAIANrrYYgASADrSIEiIQhASACIASIIQJCACEECyAEIAGEIQELIAAgATcDACAAIAI3AwgLdQEBfiAAIAQgAX4gAiADfnwgA0IgiCIEIAFCIIgiAn58IANC/////w+DIgMgAUL/////D4MiAX4iBUIgiCADIAJ+fCIDQiCIfCADQv////8PgyAEIAF+fCIDQiCIfDcDCCAAIANCIIYgBUL/////D4OENwMAC5EMBgF/CH4DfwF+AX8GfiOAgICAAEHgAGsiBSSAgICAACADQhGIIARCL4aEIQYgAUIgiCACQiCGhCEHIANCMYggBEL///////8/gyIIQg+GhCEJIAQgAoVCgICAgICAgICAf4MhCiAIQhGIIQsgAkL///////8/gyIMQiCIIQ0gBEIwiKdB//8BcSEOAkACQAJAIAJCMIinQf//AXEiD0F/akH9/wFLDQBBACEQIA5Bf2pB/v8BSQ0BCwJAIAFQIAJC////////////AIMiEUKAgICAgIDA//8AVCARQoCAgICAgMD//wBRGw0AIAJCgICAgICAIIQhCgwCCwJAIANQIARC////////////AIMiAkKAgICAgIDA//8AVCACQoCAgICAgMD//wBRGw0AIARCgICAgICAIIQhCiADIQEMAgsCQCABIBFCgICAgICAwP//AIWEQgBSDQACQCADIAKEUEUNAEKAgICAgIDg//8AIQpCACEBDAMLIApCgICAgICAwP//AIQhCkIAIQEMAgsCQCADIAJCgICAgICAwP//AIWEQgBSDQAgASARhCECQgAhAQJAIAJQRQ0AQoCAgICAgOD//wAhCgwDCyAKQoCAgICAgMD//wCEIQoMAgsCQCABIBGEQgBSDQBCACEBDAILAkAgAyAChEIAUg0AQgAhAQwCC0EAIRACQCARQv///////z9WDQAgBUHQAGogASAMIAEgDCAMUCIQG3kgEEEGdK18pyIQQXFqEK+JgIAAQRAgEGshECAFKQNQIgFCIIggBUHYAGopAwAiDEIghoQhByAMQiCIIQ0LIAJC////////P1YNACAFQcAAaiADIAggAyAIIAhQIhIbeSASQQZ0rXynIhJBcWoQr4mAgAAgECASa0EQaiEQIAUpA0AiA0IxiCAFQcgAaikDACICQg+GhCEJIANCEYggAkIvhoQhBiACQhGIIQsLIAZC/////w+DIgIgAUL/////D4MiBH4iEyADQg+GQoCA/v8PgyIBIAdC/////w+DIgN+fCIGQiCGIgggASAEfnwiByAIVK0gAiADfiIUIAEgDEL/////D4MiCH58IhEgCUL/////D4MiDCAEfnwiCSAGQiCIIAYgE1StQiCGhHwiEyACIAh+IhUgASANQoCABIQiBn58Ig0gDCADfnwiFiALQv////8Hg0KAgICACIQiASAEfnwiC0IghnwiF3whBCAPIA5qIBBqQYGAf2ohDgJAAkAgDCAIfiIYIAIgBn58IgIgGFStIAIgASADfnwiAyACVK18IAMgESAUVK0gCSARVK18fCICIANUrXwgASAGfnwgASAIfiIDIAwgBn58IgEgA1StQiCGIAFCIIiEfCACIAFCIIZ8IgEgAlStfCABIAtCIIggDSAVVK0gFiANVK18IAsgFlStfEIghoR8IgMgAVStfCADIBMgCVStIBcgE1StfHwiAiADVK18IgFCgICAgICAwACDUA0AIA5BAWohDgwBCyAHQj+IIQMgAUIBhiACQj+IhCEBIARCP4ggAkIBhoQhAiAHQgGGIQcgAyAEQgGGhCEECwJAIA5B//8BSA0AIApCgICAgICAwP//AIQhCkIAIQEMAQsCQAJAIA5BAEoNAAJAQQEgDmsiD0H/AEsNACAFQRBqIAcgBCAPELOJgIAAIAVBIGogAiABIA5B/wBqIg4Qr4mAgAAgBUEwaiAHIAQgDhCviYCAACAFIAIgASAPELOJgIAAIAUpAyAgBSkDEIQgBSkDMCAFQTBqQQhqKQMAhEIAUq2EIQcgBUEgakEIaikDACAFQRBqQQhqKQMAhCEEIAVBCGopAwAhASAFKQMAIQIMAgtCACEBDAILIA6tQjCGIAFC////////P4OEIQELIAEgCoQhCgJAIAdQIARCf1UgBEKAgICAgICAgIB/URsNACAKIAJCAXwiASACVK18IQoMAQsCQCAHIARCgICAgICAgICAf4WEQgBRDQAgAiEBDAELIAogAiACQgGDfCIBIAJUrXwhCgsgACABNwMAIAAgCjcDCCAFQeAAaiSAgICAAAtUAQF/I4CAgIAAQRBrIgUkgICAgAAgBSABIAIgAyAEQoCAgICAgICAgH+FEK6JgIAAIAUpAwAhASAAIAUpAwg3AwggACABNwMAIAVBEGokgICAgAALC43uAgIAQYAIC8zMAmRlbm8AAAAAAQAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVzAExvYWRhYmxlIGV4dGVuc2lvbnMgYXJlIG5vdCBzdXBwb3J0ZWQAAAAAAAAAAAAAAAABAAAAAQAAAE5vIG9wZW4gZGF0YWJhc2UuADMuMzYuMAAlAAAAAAAAZAoBEAAAcwAEBQAAZwABAx4AegAEBgAAcQAECQAAUQAECgAAdwAEDgAAYwAACAAAbwgAAAACdQoAEAAAeBAAABABWBAAAAAEZgABAQAAZQABAh4ARQABAg4ARwABAw4AaQoBEAAAbgAABAAAJQAABwAAcBAADQABVAAACwAAUwAADAAAcgoBDwAAdGhzdG5kcmQAAAAAAAAAAAAAAAAAADAxMjM0NTY3ODlBQkNERUYwMTIzNDU2Nzg5YWJjZGVmAC14MABYMAAAAAAAAAAAAAAAAAAAAOA/mpmZmZmZqT97FK5H4Xp0P/yp8dJNYkA/LUMc6+I2Cj/xaOOItfjUPo3ttaD3xqA+SK+8mvLXaj46jDDijnk1PpXWJugLLgE+TmFOAABOVUxMAChOVUxMKQAuAFNVQlFVRVJZICV1AAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6W1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/AQAAAQEAAAEAAQABAQABAAABAAAAAAAAAAAAAAAAAAAEBQMFAQUBBQIFAgUBBQEFBAUDBQEFAQUCBQIFAQUBBQIFAwUCBQIFAgUCBQIFAgUEBQMFAgUCBQIFAgUCBQIFc3RyaW5nIG9yIGJsb2IgdG9vIGJpZwBubyBzdWNoIGNvbHVtbjogIiVzIgAlcwAqP1sAJV8AAQAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAAAAAAAAAAAAAAAAAAAAAAAAAQCAAEAAAIAAAAAAAAAAAAwMDAwMDAwMDAwAAAAAAAAACgoKCgoKAgICAgICAgICAgICAgICAgICAgKAAAAAQIAqKioqKioiIiIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBSRUlOREVYRURFU0NBUEVBQ0hFQ0tFWUJFRk9SRUlHTk9SRUdFWFBMQUlOU1RFQUREQVRBQkFTRUxFQ1RBQkxFRlRIRU5ERUZFUlJBQkxFTFNFWENMVURFTEVURU1QT1JBUllJU05VTExTQVZFUE9JTlRFUlNFQ1RJRVNOT1ROVUxMSUtFWENFUFRSQU5TQUNUSU9OQVRVUkFMVEVSQUlTRVhDTFVTSVZFWElTVFNDT05TVFJBSU5UT0ZGU0VUUklHR0VSQU5HRU5FUkFURURFVEFDSEFWSU5HTE9CRUdJTk5FUkVGRVJFTkNFU1VOSVFVRVJZV0lUSE9VVEVSRUxFQVNFQVRUQUNIQkVUV0VFTk9USElOR1JPVVBTQ0FTQ0FERUZBVUxUQ0FTRUNPTExBVEVDUkVBVEVDVVJSRU5UX0RBVEVJTU1FRElBVEVKT0lOU0VSVE1BVENIUExBTkFMWVpFUFJBR01BVEVSSUFMSVpFREVGRVJSRURJU1RJTkNUVVBEQVRFVkFMVUVTVklSVFVBTFdBWVNXSEVOV0hFUkVDVVJTSVZFQUJPUlRBRlRFUkVOQU1FQU5EUk9QQVJUSVRJT05BVVRPSU5DUkVNRU5UQ0FTVENPTFVNTkNPTU1JVENPTkZMSUNUQ1JPU1NDVVJSRU5UX1RJTUVTVEFNUFJFQ0VESU5HRkFJTEFTVEZJTFRFUkVQTEFDRUZJUlNURk9MTE9XSU5HRlJPTUZVTExJTUlUSUZPUkRFUkVTVFJJQ1RPVEhFUlNPVkVSRVRVUk5JTkdSSUdIVFJPTExCQUNLUk9XU1VOQk9VTkRFRFVOSU9OVVNJTkdWQUNVVU1WSUVXSU5ET1dCWUlOSVRJQUxMWVBSSU1B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AxcAABEXAAAcFwAAJBcAACoXAAAyFwAAOhcAAEQXAABRFwAAWxcAAGgXAABxFwAAfBcAAIQXAACKFwAAlhcAAKIXAACqFwAAthcAAMMXAADNFwAA1xcAAOMXAADvFwAA+RcAAP4XAAAEGAAADhgAABUYAAAhGAAALBgAADQYAAA9GAAARhgAAE8YAABWGAAAYRgAAG4YAAB4GAAAfxgAAIcYAACQGAAAlhgAAJ4YAACmGAAAsBgAALkYAAC/GAAAyhgAANUYAADaGAAA4hgAAFNhdmVwb2ludABBdXRvQ29tbWl0AFRyYW5zYWN0aW9uAFNvcnRlck5leHQAUHJldgBOZXh0AENoZWNrcG9pbnQASm91cm5hbE1vZGUAVmFjdXVtAFZGaWx0ZXIAVlVwZGF0ZQBHb3RvAEdvc3ViAEluaXRDb3JvdXRpbmUAWWllbGQATXVzdEJlSW50AEp1bXAAT25jZQBJZgBOb3QASWZOb3QASWZOdWxsUm93AFNlZWtMVABTZWVrTEUAU2Vla0dFAFNlZWtHVABJZk5vdE9wZW4ASWZOb0hvcGUATm9Db25mbGljdABOb3RGb3VuZABGb3VuZABTZWVrUm93aWQATm90RXhpc3RzAExhc3QASWZTbWFsbGVyAFNvcnRlclNvcnQAU29ydABSZXdpbmQASWR4TEUASWR4R1QASWR4TFQASWR4R0UAUm93U2V0UmVhZABPcgBBbmQAUm93U2V0VGVzdABQcm9ncmFtAEZrSWZaZXJvAElmUG9zAElmTm90WmVybwBJc051bGwATm90TnVsbABOZQBFcQBHdABMZQBMdABHZQBFbHNlRXEARGVjckp1bXBaZXJvAEluY3JWYWN1dW0AVk5leHQASW5pdABQdXJlRnVuYwBGdW5jdGlvbgBSZXR1cm4ARW5kQ29yb3V0aW5lAEhhbHRJZk51bGwASGFsdABJbnRlZ2VyAEludDY0AFN0cmluZwBOdWxsAFNvZnROdWxsAEJsb2IAVmFyaWFibGUATW92ZQBDb3B5AFNDb3B5AEludENvcHkAQ2huZ0NudFJvdwBSZXN1bHRSb3cAQ29sbFNlcQBBZGRJbW0AUmVhbEFmZmluaXR5AENhc3QAUGVybXV0YXRpb24AQ29tcGFyZQBJc1RydWUAWmVyb09yTnVsbABPZmZzZXQAQ29sdW1uAEFmZmluaXR5AE1ha2VSZWNvcmQAQ291bnQAUmVhZENvb2tpZQBTZXRDb29raWUAUmVvcGVuSWR4AE9wZW5SZWFkAE9wZW5Xcml0ZQBPcGVuRHVwAE9wZW5BdXRvaW5kZXgAQml0QW5kAEJpdE9yAFNoaWZ0TGVmdABTaGlmdFJpZ2h0AEFkZABTdWJ0cmFjdABNdWx0aXBseQBEaXZpZGUAUmVtYWluZGVyAENvbmNhdABPcGVuRXBoZW1lcmFsAEJpdE5vdABTb3J0ZXJPcGVuAFNlcXVlbmNlVGVzdABTdHJpbmc4AE9wZW5Qc2V1ZG8AQ2xvc2UAQ29sdW1uc1VzZWQAU2Vla1NjYW4AU2Vla0hpdABTZXF1ZW5jZQBOZXdSb3dpZABJbnNlcnQAUm93Q2VsbABEZWxldGUAUmVzZXRDb3VudABTb3J0ZXJDb21wYXJlAFNvcnRlckRhdGEAUm93RGF0YQBSb3dpZABOdWxsUm93AFNlZWtFbmQASWR4SW5zZXJ0AFNvcnRlckluc2VydABJZHhEZWxldGUARGVmZXJyZWRTZWVrAElkeFJvd2lkAEZpbmlzaFNlZWsARGVzdHJveQBDbGVhcgBSZXNldFNvcnRlcgBDcmVhdGVCdHJlZQBTcWxFeGVjAFBhcnNlU2NoZW1hAExvYWRBbmFseXNpcwBEcm9wVGFibGUARHJvcEluZGV4AERyb3BUcmlnZ2VyAEludGVncml0eUNrAFJvd1NldEFkZABSZWFsAFBhcmFtAEZrQ291bnRlcgBNZW1NYXgAT2Zmc2V0TGltaXQAQWdnSW52ZXJzZQBBZ2dTdGVwAEFnZ1N0ZXAxAEFnZ1ZhbHVlAEFnZ0ZpbmFsAEV4cGlyZQBDdXJzb3JMb2NrAEN1cnNvclVubG9jawBUYWJsZUxvY2sAVkJlZ2luAFZDcmVhdGUAVkRlc3Ryb3kAVk9wZW4AVkNvbHVtbgBWUmVuYW1lAFBhZ2Vjb3VudABNYXhQZ2NudABUcmFjZQBDdXJzb3JIaW50AFJlbGVhc2VSZWcATm9vcABFeHBsYWluAEFib3J0YWJsZQAAAAAAABkAAAkZAAAQGQAAFhkAAE5PVCBOVUxMAFVOSVFVRQBDSEVDSwBGT1JFSUdOIEtFWQAlcyBjb25zdHJhaW50IGZhaWxlZAAlejogJXMAYWJvcnQgYXQgJWQgaW4gWyVzXTogJXMAAAAAAAECAAICAAECAQEBAgECEAACAmNhbm5vdCBvcGVuIHNhdmVwb2ludCAtIFNRTCBzdGF0ZW1lbnRzIGluIHByb2dyZXNzAG5vIHN1Y2ggc2F2ZXBvaW50OiAlcwBjYW5ub3QgcmVsZWFzZSBzYXZlcG9pbnQgLSBTUUwgc3RhdGVtZW50cyBpbiBwcm9ncmVzcwBjYW5ub3QgY29tbWl0IHRyYW5zYWN0aW9uIC0gU1FMIHN0YXRlbWVudHMgaW4gcHJvZ3Jlc3MAY2Fubm90IHN0YXJ0IGEgdHJhbnNhY3Rpb24gd2l0aGluIGEgdHJhbnNhY3Rpb24AY2Fubm90IHJvbGxiYWNrIC0gbm8gdHJhbnNhY3Rpb24gaXMgYWN0aXZlAGNhbm5vdCBjb21taXQgLSBubyB0cmFuc2FjdGlvbiBpcyBhY3RpdmUAZGF0YWJhc2Ugc2NoZW1hIGhhcyBjaGFuZ2VkAGluZGV4IGNvcnJ1cHRpb24Ac3FsaXRlX21hc3RlcgBTRUxFQ1QqRlJPTSIldyIuJXMgV0hFUkUgJXMgT1JERVIgQlkgcm93aWQAdG9vIG1hbnkgbGV2ZWxzIG9mIHRyaWdnZXIgcmVjdXJzaW9uAHN0YXRlbWVudCBhYm9ydHMgYXQgJWQ6IFslc10gJXMAb3V0IG9mIG1lbW9yeQAAAAECAwQGCAgAAAAAAAABAQICAwMEBAUFBgYHBwgICQkKCgsLDAwNDQ4ODw8QEBEREhITExQUFRUWFhcXGBgZGRoaGxscHB0dHh4fHyAgISEiIiMjJCQlJSYmJycoKCkpKiorKywsLS0uLi8vMDAxMTIyMzM0NDU1NjY3Nzg4OTkQEAIQAAAAAAAAAAAAAAAAAAACAAMABQAGAAcACAAJAAABAgMEBggAAAB0YWJsZQBzcWxpdGVfdGVtcF9tYXN0ZXIAMQBDUkVBVEUgVEFCTEUgeCh0eXBlIHRleHQsbmFtZSB0ZXh0LHRibF9uYW1lIHRleHQscm9vdHBhZ2UgaW50LHNxbCB0ZXh0KQBhdHRhY2hlZCBkYXRhYmFzZXMgbXVzdCB1c2UgdGhlIHNhbWUgdGV4dCBlbmNvZGluZyBhcyBtYWluIGRhdGFiYXNlAHVuc3VwcG9ydGVkIGZpbGUgZm9ybWF0AFNFTEVDVCpGUk9NIiV3Ii4lcyBPUkRFUiBCWSByb3dpZABpbnZhbGlkIHJvb3RwYWdlAG9ycGhhbiBpbmRleABlcnJvciBpbiAlcyAlcyBhZnRlciAlczogJXMAcmVuYW1lAGRyb3AgY29sdW1uAG1hbGZvcm1lZCBkYXRhYmFzZSBzY2hlbWEgKCVzKQAleiAtICVzAHN0YXRlbWVudCB0b28gbG9uZwBtYWluAHNxbGl0ZV9zdGF0MQBTRUxFQ1QgdGJsLGlkeCxzdGF0IEZST00gJVEuc3FsaXRlX3N0YXQxAHVub3JkZXJlZCoAc3o9WzAtOV0qAG5vc2tpcHNjYW4qACEAIAAeABwAGgBNYWluIGZyZWVsaXN0OiAAbWF4IHJvb3RwYWdlICglZCkgZGlzYWdyZWVzIHdpdGggaGVhZGVyICglZCkAaW5jcmVtZW50YWxfdmFjdXVtIGVuYWJsZWQgd2l0aCBhIG1heCByb290cGFnZSBvZiB6ZXJvAFBhZ2UgJWQgaXMgbmV2ZXIgdXNlZABQb2ludGVyIG1hcCBwYWdlICVkIGlzIHJlZmVyZW5jZWQAZmFpbGVkIHRvIGdldCBwYWdlICVkAGZyZWVsaXN0IGxlYWYgY291bnQgdG9vIGJpZyBvbiBwYWdlICVkACVzIGlzICVkIGJ1dCBzaG91bGQgYmUgJWQAc2l6ZQBvdmVyZmxvdyBsaXN0IGxlbmd0aABpbnZhbGlkIHBhZ2UgbnVtYmVyICVkADJuZCByZWZlcmVuY2UgdG8gcGFnZSAlZAAKAEZhaWxlZCB0byByZWFkIHB0cm1hcCBrZXk9JWQAQmFkIHB0ciBtYXAgZW50cnkga2V5PSVkIGV4cGVjdGVkPSglZCwlZCkgZ290PSglZCwlZCkAUGFnZSAldTogAHVuYWJsZSB0byBnZXQgdGhlIHBhZ2UuIGVycm9yIGNvZGU9JWQAYnRyZWVJbml0UGFnZSgpIHJldHVybnMgZXJyb3IgY29kZSAlZABmcmVlIHNwYWNlIGNvcnJ1cHRpb24AT24gdHJlZSBwYWdlICV1IGNlbGwgJWQ6IABPbiBwYWdlICV1IGF0IHJpZ2h0IGNoaWxkOiAAT2Zmc2V0ICVkIG91dCBvZiByYW5nZSAlZC4uJWQARXh0ZW5kcyBvZmYgZW5kIG9mIHBhZ2UAUm93aWQgJWxsZCBvdXQgb2Ygb3JkZXIAQ2hpbGQgcGFnZSBkZXB0aCBkaWZmZXJzAE11bHRpcGxlIHVzZXMgZm9yIGJ5dGUgJXUgb2YgcGFnZSAldQBGcmFnbWVudGF0aW9uIG9mICVkIGJ5dGVzIHJlcG9ydGVkIGFzICVkIG9uIHBhZ2UgJXUAAAAAAPQgAAD7IAAAAyEAAAchAAAQIQAAZGVsZXRlAHBlcnNpc3QAb2ZmAHRydW5jYXRlAG1lbW9yeQBjYW5ub3QgVkFDVVVNIGZyb20gd2l0aGluIGEgdHJhbnNhY3Rpb24AY2Fubm90IFZBQ1VVTSAtIFNRTCBzdGF0ZW1lbnRzIGluIHByb2dyZXNzAG5vbi10ZXh0IGZpbGVuYW1lAEFUVEFDSCAlUSBBUyB2YWN1dW1fZGIAb3V0cHV0IGZpbGUgYWxyZWFkeSBleGlzdHMAQkVHSU4AU0VMRUNUIHNxbCBGUk9NICIldyIuc3FsaXRlX3NjaGVtYSBXSEVSRSB0eXBlPSd0YWJsZSdBTkQgbmFtZTw+J3NxbGl0ZV9zZXF1ZW5jZScgQU5EIGNvYWxlc2NlKHJvb3RwYWdlLDEpPjAAU0VMRUNUIHNxbCBGUk9NICIldyIuc3FsaXRlX3NjaGVtYSBXSEVSRSB0eXBlPSdpbmRleCcAU0VMRUNUJ0lOU0VSVCBJTlRPIHZhY3V1bV9kYi4nfHxxdW90ZShuYW1lKXx8JyBTRUxFQ1QqRlJPTSIldyIuJ3x8cXVvdGUobmFtZSlGUk9NIHZhY3V1bV9kYi5zcWxpdGVfc2NoZW1hIFdIRVJFIHR5cGU9J3RhYmxlJ0FORCBjb2FsZXNjZShyb290cGFnZSwxKT4wAElOU0VSVCBJTlRPIHZhY3V1bV9kYi5zcWxpdGVfc2NoZW1hIFNFTEVDVCpGUk9NICIldyIuc3FsaXRlX3NjaGVtYSBXSEVSRSB0eXBlIElOKCd2aWV3JywndHJpZ2dlcicpIE9SKHR5cGU9J3RhYmxlJ0FORCByb290cGFnZT0wKQABAQMABQAGAAgAQ1JFAElOUwBubyBzdWNoIG1vZHVsZTogJXMAdnRhYmxlIGNvbnN0cnVjdG9yIGNhbGxlZCByZWN1cnNpdmVseTogJXMAdnRhYmxl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ZV9vcHRpb25zAGNvdW50X2NoYW5nZXMAZGF0YV92ZXJzaW9uAGRhdGFiYXNlX2xpc3QAZGVmZXJfZm9yZWlnbl9rZXlzAGVtcHR5X3Jlc3VsdF9jYWxsYmFja3MAZm9yZWlnbl9rZXlfY2hlY2sAZm9yZWlnbl9rZXlfbGlzdABmb3JlaWduX2tleXMAZnJlZWxpc3RfY291bnQAZnVsbF9jb2x1bW5fbmFtZXMAZnVsbGZzeW5jAGZ1bmN0aW9uX2xpc3QAaGFyZF9oZWFwX2xpbWl0AGlnbm9yZV9jaGVja19jb25zdHJhaW50cwBpbmNyZW1lbnRhbF92YWN1dW0AaW5kZXhfaW5mbwBpbmRleF9saXN0AGluZGV4X3hpbmZvAGludGVncml0eV9jaGVjawBqb3VybmFsX21vZGUAam91cm5hbF9zaXplX2xpbWl0AGxlZ2FjeV9hbHRlcl90YWJsZQBsb2NraW5nX21vZGUAbWF4X3BhZ2VfY291bnQAbW1hcF9zaXplAG1vZHVsZV9saXN0AG9wdGltaXplAHBhZ2VfY291bnQAcGFnZV9zaXplAHByYWdtYV9saXN0AHF1ZXJ5X29ubHkAcXVpY2tfY2hlY2sAcmVhZF91bmNvbW1pdHRlZAByZWN1cnNpdmVfdHJpZ2dlcnMAcmV2ZXJzZV91bm9yZGVyZWRfc2VsZWN0cwBzY2hlbWFfdmVyc2lvbgBzZWN1cmVfZGVsZXRlAHNob3J0X2NvbHVtbl9uYW1lcwBzaHJpbmtfbWVtb3J5AHNvZnRfaGVhcF9saW1pdABzeW5jaHJvbm91cwB0YWJsZV9pbmZvAHRhYmxlX3hpbmZvAHRlbXBfc3RvcmUAdGVtcF9zdG9yZV9kaXJlY3RvcnkAdGhyZWFkcwB0cnVzdGVkX3NjaGVtYQB1c2VyX3ZlcnNpb24Ad3JpdGFibGVfc2NoZW1hAENSRUFURSBUQUJMRSB4ACVjIiVzIgAAgyUAAK0uAAAKHAAAsS4AALYuAAC5LgAAwy4AAM0uAADTLgAA1y4AANwuAADhLgAA6S4AAPQuAAAKJAAA9y4AANMuAADXLgAA/S4AAAIvAAAHLwAA1y4AAAsvAADcLgAAEy8AABcvAAAcLwAAIi8AACYvAAAqLwAALy8AADQvAACtLgAA1y4AADkvAABALwAA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SgarBiQGxAbXBiQGxAYkBsQG1waBBoEGgQa7BuYG5gbXBoEGgAaBBrsGgQaBBl0G7AaiBqIG1waKBq0GigatBooGrQaKBq0GJAbIBsgG0gbSBpIGlgYSByQGmAaSBp8GoQZEBh0HLgc9Bz0HSAdIB0gH5wfnB+cH5wfnB+cH5wfnB+cH5wfnB+cH5wfnB+cH6ABlAGsEqQRrAqcCSQONBQYFcwBIBTYFUQWLBT4F4QX7BTEGOQZFBkwGAAU5BdMFTgWrBTQFUAZRBpEFUgZqBZcFWAZaBncFtAVYB1sHSQe+BlQHVQdNB08H3QbTBucGUAdQB1MH3wZZB+AGXgdvB+QG8QZQB/IGNwdWB1AH4gZEB0UHRwdKB/wGCwdfB/QGgQd+B24HEwfoBkIHbQdGBz4HYgcABxsHdgd7B30HDwcWB38HUQeAB4IHfAeDB1cHXAeEBzsHhQeHB10HeQeIBw4HjQeOB48HkAeKB5EHkwdLBx4HlAeWBzwHjAeaByMHmAeSB5UHlweZB2AHaAdkB4kHawdhB5sHpQepB6gHpweqB6AHrAeYB64HrwewB7EHsgezB7UHvge3B7gHuQe6B7wHvQe7B04HQwdMB1IHWge/B8gH2AfZBwAAAAAAAAAAAAAAAMAA3QDAAN8AwADWABABEQESAdkAwADnANkAwADAAMAAEAERARIBEwDpAOoA1gDXANYA1wDLACUBywDpAOoAHwDWANcA1gDWANcA1gDXACcA0ADRANIAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkA7AATAO0A7gDtAO4AEAERARIBEAERARIBwADTAPsA+gD7APoAGgDAAMgA/gD/AAQBzAArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQDAANYA1wDWAGYAZwBoAGkAagBrAGwAbQBuAG8AcAA7AOUAwAAmARAAMgEzATgBOQE4ATcBOgE7AFYAzABYABMAOAE5ARABEQESAQ8BGgAWADYANwA4ADkAZgBnAGgAaQBqAGsAbABtAG4AbwBwACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADUAcwB0AHUAdgA1ATYBeQB6AHsATQBFAE8AcwB0AHUAOwCDAGYAZwBoAGkAagBrAGwAbQBuAG8AcABIAJQAEwA2ADcAOAA5ADoAbABtAG4AbwBwADABMQFmAGcAaABpAGoAawBsAG0AbgBvAHAAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAEwBwAHMAdAB1ABgA0ADRANIAQwBmAGcAaABpAGoAawBsAG0AbgBvAHAAwAA7AKAAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAEwAuAC8AMAAxAGYAZwBoAGkAagBrAGwAbQBuAG8AcADVAEkAuAC5ALoAuwC8AL0A3QBRAOwALgDCAMAAxAATADsAhQA7AIcAiADLAMAAcwB0AHUAfwCAAGYAZwBoAGkAagBrAGwAbQBuAG8AcAArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQB+AO0A7gBkAJYAeADmALoAuwC8AL0AiQCKAGwA+gDCABoAxABzAHQAcwB0AHUAeADLAHIApAClAAgBZgBnAGgAaQBqAGsAbABtAG4AbwBwAMAAggBvAHAAZgBnAGgAaQBqAGsAbABtAG4AbwBwAJgAmQCaAO0A7gAoAcAA1gDXAOQAwAAzAcAAEwA7ADcB+gAXABYAagBrAGwAbQBuAG8AcADAAEgA1gDXAAgBwADWANcA1gDXAJUAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAdQDWANcAOwATALsAwAC9ABcAUQAoAcAAwgD7AMQAOwDlAPsAcwB0AHUAywAEAWoAawCOAAQBCwErACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQAFAWYAZwBoAGkAagBrAGwAbQBuAG8AcADtAO4ATADAAHMAdAB1AJAAwABMAIkAigDAAPoAmABZAJoAdABcABMAVwAGAVkAFwAWAFwAowAIAcAAFgDWANcAZgBnAGgAaQBqAGsAbABtAG4AbwBwACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ABMAKAF2ADsAFwB5AHoAewA7APsAGgAuADIBMwEFAYMAwAA3AcAAkADAABYAywBkACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5AHQA1gDXAA8BeABmAGcAaABpAGoAawBsAG0AbgBvAHAA5QDtAO4AOwBzAHQAdQArASwBcwB0AHUAOwAQAPoAEwDAAMAAEwAXAJgAmQCaABgAcgA1ATYBwABmAGcAaABpAGoAawBsAG0AbgBvAHAAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAEwAHAAgACQAXAHMAdAB1AMsAIgHvAO4AiQCKAHMAdAB1AOwAwAAWAE0AUQBPAPoAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAwABfAI4A7QDuAGYAZwBoAGkAagBrAGwAbQBuAG8AcAD6ADsAcADAAHcAGgDWANcAdgB3AHgAeQB6AHsAfAATAMAACwEuARcAggDlAIkAigAXANYA1wAaAGYAZwBoAGkAagBrAGwAbQBuAG8AcAArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQATAEwACwBzAHQAdQDAAB0A+wDvAEkAIQDAAMAAWQDAAMAAXADAAMAAfgB/AIAA4AArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQDAACMA1gDXAEEAZgBnAGgAaQBqAGsAbABtAG4AbwBwADsA5QDAAMAA7wDvANYA1wB+AH8AgAB+AH8AgAAzARMAQgAuATcBwAAFAeUA4AAWAEoA1gDXAMAAZgBnAGgAaQBqAGsAbABtAG4AbwBwACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5AMAAwABzAHQAdQATADsAIgH7AH8AgADAABcALgEuARoALgHsAMAAFgAVABgA1gDXAMAAgQAWAMAAGACOAJ4ALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQBmAGcAaABpAGoAawBsAG0AbgBvAHAAwAA7AAwAwAD7AMAAMQHAAHQAFgAXAPIAywAaAMsAGADsABsA7QDuAAoB/ADWANcAUADWANcA1gDXANYA1wD6ACoAZgBnAGgAaQBqAGsAbABtAG4AbwBwAOUAngDtAO4A7QDuADsAdQAZAT8AwADAAMAAwAB0APoAwAD6APsASQD7ABMAegAiAe0A7gAYAAQB0QDSANEA0gCOAPIA1gDXAMUA+gAWABcAFAETABoA/ABlACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5AKAAEwDTAHQAwAArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQDAAMAAFgDAAAoBKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAwAAaAcAAGgFmAGcAaABpAGoAawBsAG0AbgBvAHAAOwDAAGUAFwHAAMAA5gAbAcAAZgBnAGgAaQBqAGsAbABtAG4AbwBwAMwA0wBCANYA1wAhAdYA1wBsAGYAZwBoAGkAagBrAGwAbQBuAG8AcAAKAVUA4gDAAOQAFgAXAGoAawATAF4AagBrAMAAhgByAHMAdAB1AIsAdwAKAcsAzgDPANYA1wDAAH8AwADOAM8AOwDAACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQDAAEwAwADWANcAmAAcAZoA7QDuAMAAIQFXAJEAWQATABQAXAAWABYAFwD6ADMB7ADWANcANwHLAAwA9wDAAPkAJAAzAcAABgFlADcBiQCKAHMAdAB1ABsAZgBnAGgAaQBqAGsAbABtAG4AbwBwADsA1gDXACoAywAzAe0A7gDAADcBwAAaAEcAwACQAAYBKQEqAcsA+gATABQAUQAWAD8ABgH+AP8ADwAaANYA1wDWANcAGgDWANcAJADtAO4AwABkAHIAZQDAAAYBwABqAGsAMACGAPoA7QDuAHEAiwBzAHQAdQDAADsAeADWANcA8gD6ANYA1wDWANcAlACVAEcAPAD8APIAwACVAIkAigDAANYA1wDAABMA/ABVAMAAOwDAAJ0AWgCfAJgAmQCaAJsAnADWANcAwABkANYA1wATANYA1wBqAGsA1gDXANYA1wAWAHEAwABzAHQAdQDAAPIAeADWANcAwAAYAMAAHwDAAJAA/AAaAMAAfQBjACcAwADWANcAwAA7ANYA1wDAAI0AdADWANcA1gDXANYA1wA9AJgAmQCaAJsAnAAAAAEAAgDWANcABQDAANYA1wCEAAoACwAMAA0ADgABAAIAEQDAAAUAEwAUAHMAFgAKAAsADAANAA4AwAAeABEAIAAXAMAAFwAaACQAGgB0ACgAwABzAMAAHgDAACAAdwB4ADsABQDWANcAgAAoAAoACwAMAA0ADgA7ABMAEQDWANcA1gDXANYA1wB4AEYAwABHABYAwAAeAJcAIABOAIIAgABRAMAAjABGACgAVQDAAI0ABwAIAFoATgDWANcAUQDWANcAYgBTAFQAZADAAJcA1gDXAHQAagBrANYA1wDAAGIAwABxAEYAcwB0AHUAFwDgAHgAGgBOANYA1wBRABMAFACYABYAmgCEANYA1wDWANcAiQCKAGEAwAAAAcAAYgAkABcAhADAABoAwADAAIkAigCYAJkAmgCbAJwAwADAAMAAoQDWANcA1gDXAMAAOwDAANYA1wDWANcAwACYAKEAmgCEAMAARwDWANcAiQCKAMAAwADAABMAFADAABYAjAD9AFUAwADWANcAwABaABcA1gDXABoAwAAkAMAAoQAXAGQAwAAaANYA1wDAAGoAawDWANcAwAAXAMAAcQAaAHMAdAB1ABcAOwB4ABoAFwAXABcAGgAaABoAPAHqABcARwAXABoAwAAaAMAAwADAAMAAwADAAMAAwAD9ANQAvgAeAR0B/QDwAP0AmACZAJoAmwCcAPEA8wAnAWQAIwEjAd8A/QDjAGoAawBsAA0B9AD0AAkBcQABAXMAdAB1AAEB8wB4AA0B2gDZAAkB2QATABQA2QAWAMMADQENATwAJwGMAAEB8wDxAPcA9wDHABYBJADHAMcAJgATABQAlgAWAJUAmACZAJoAmwCcABYAKwDoACcBJAEkARIAJADrADsADAEOAesAxwDrAOsAEgDGAJQAGQH0AEcADgEOAQwB9ADoAOgA9ADHADsA9ADGAJ0AIAE+AMcAHwHGABYA2wDbAEcAxwDGAHIAxwDGANgA2ABkANgA4QBAABYAfQBqAGsA3gCkANsA3gAYAHEA2ABzAHQAdQDaANgAeABkANgA2AA2AS8BcABqAGsA4QAYARgB2wCPAHEAAwFzAHQAdQByAAMBeADHAFsAUgCTAJAAOwEWABMBxwA7AZgAmQCaAJsAnACSAJEA9wACAZ0AGQACAfUA+AD0AAMBAgHKAAMB+AACAZgAmQCaAJsAnAAHAQcBGgD2AA0AyQDBAMEABgC/AL8AzQC/ANwA3ADNANMAFQHTANMA0wDNAAQA1AADABYAogDUANMADwAXABAAFwCKAIEAlgAaABgAjQAUABAAjwABAI0AgQCBAD0ALQEtASoBlgA1ADUAJQA1AIEAcwA1AIwAIgABAAUAFgByAEQAGgCgAEsARAApAIwAcgAYABQAEwCCAHwAFwBDABYAFgA7ABYAFgBDAGAAGAAWACUAFwBDABwAlAAWABoAFwAXABcAFwAWAIwAFwBhABcAIgBzABYAjgAaAEsAIgAsAEsAIgBYACIAVgAiABcAIgBdABYAGAAaACIAFwAaABcAFwAXABcACwAXABYAGgAWABYAjAAXABcAFgAWAIYAGgAXAA8AjAABAAEAPQE9AT0BjAA9AT0BPQE9AT0BPQE9AYwAPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQE9AT0BPQEAADMCDwUzAvoEqADpBHMAcADaAHUBMwIPBXYBMwLoATMCcwBwANoAlgEUBRQFKQApACkAKQACAuAFCAISBRIFvwMpACkA7ARHAEcAMwAzAMADLQItAi0CegB7AHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkAngGWAREBEQERAREBcwBwANoAcwBwANoAxQAMASECMAIDAjAC0wAzAoEB+ADXAAkCjwF6AHsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQAcAg0ADQDrBHcAdwB3AHcAdgB2AHUAdQB1AHQAuQGYBKMBxQC+AUABAAIDBgkGdAELBgYAcwGYBHwEigF8BJYBCQYWAnMAcADaAIcFYwAeAHkAeQB5AHkAdwB3AHcAdwB2AHYAdQB1AHUAdAC5AXoAewBxALAEsAQLBA4EBAQEBHgAeAB5AHkAeQB5AB8AmASZBJoE8QBlARYG9QHyAfEBPQF8AD8BmASZBJoEmATwAXcAdwB3AHcAdgB2AHUAdQB1AHQAuQGLAGAAlgF5AHkAeQB5AHIAdQB1AHUAdAC5AR0C/AV3AHcAdwB3AHYAdgB1AHUAdQB0ALkBegB7AHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkAlgG5AZgEmQSaBFEAtwG3AbcBUAB3AHcAdwB3AHYAdgB1AHUAdQB0ALkB6AGYBD4BegB7AHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkA7QEBBAEEDAQPBHcAdwB3AHcAdgB2AHUAdQB1AHQAuQEwBuMDyAQBAAEAOQICAMwE8wSJAN8F9QAxAdkBjACWAVwDMQKYBJIDkgMcBWcBmASZBJoEzgFKAXcAdwB3AHcAdgB2AHUAdQB1AHQAuQF6AHsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQBIAREBEQH3A1MABQSpARwGOQICAMwEMAEqAp0DMAIxAbADjABcA+4DmASZBJoE7QMcBZsB1QD/AeUAdwB3AHcAdwB2AHYAdQB1AHUAdAC5AQcCWwF0ALkBdwB3AHcAdwB2AHYAdQB1AHUAdAC5Ae0D7QPvAxEBEQG9ATMCEAAQADYGMwIEBjMClgGYBAYAMAJYAbYAdgB2AHUAdQB1AHQAuQGgAY4ARwBHAOUAMwJHAEcANwA3AMsAegB7AHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkA2QANAA0AmASWATgCeAXMBPYBiQC9AagAMQEhAowAnASoASECmASZBJoEHAUgArYBtQGwAwECxAF6AHsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQA7AXcAdwB3AHcAdgB2AHUAdQB1AHQAuQERAREBdwSgAZgEmQSaBB8CMwJ3BDABKgIZBjACtwR3BLcEnAR3BJYBEgKlAXcEYAO3AHcEjwDlADICIABHAEcAdwB3AHcAdwB2AHYAdQB1AHUAdAC5AXoAewBxALAEsAQLBA4EBAQEBHgAeAB5AHkAeQB5AJYBvQHxAJgEWQP1AfIB8QGYBA4CvQD1ABoCAwYaAfABcgEGADMCEQLdAQUAFwH3A3oAewBxALAEsAQLBA4EBAQEBHgAeAB5AHkAeQB5AO4DDQANAIYF7QN3AHcAdwB3AHYAdgB1AHUAdQB0ALkBqgERAREBmASYBJkEmgRTBogBmASZBJoEmARWATAClgENAmkBrgGJBO0D7QPvA1wBmwFlARYG6AF3AHcAdwB3AHYAdgB1AHUAdQB0ALkBegB7AHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkAlgE+Az8DQAP4A5gEmQSaBIwBHQGUACAFMAEqApgEmQSaBLsF2AADAFEBiQBUATACegB7AHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkAMwL4AbIDEQERAXcAdwB3AHcAdgB2AHUAdQB1AHQAuQEwApgEqwEzAsMBYgANAA0AAwEUAWQB+wFfAfoB9gCWAWkB1QH6BegDWwElATABKgI1BkcARwB5A3cAdwB3AHcAdgB2AHUAdQB1AHQAuQF6AHsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQCWAXcENgSYBJkEmgSgATgELAGWAOMDOARpAWkBdwRpAXoBdwTdATMC9ADzAPIA/gR6AHsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQAzAnADDQANAOMBdwB3AHcAdwB2AHYAdQB1AHUAdAC5AZgEvwAcAjMCkwCVAA0ADQBIAckBPAE7BDsE5QEBBpYB+QH6BQYA6gUcAcAA/QSRAHEDRwBHAOgBdwB3AHcAdwB2AHYAdQB1AHUAdAC5AXoAewBxALAEsAQLBA4EBAQEBHgAeAB5AHkAeQB5ADMC1wGYBJkEmgSWAVQDRwEtAc4BSgHsBQ4B+gX6BbAD+wUbBTkBCQBKA/sARwBHAN0BrAGSAOgBJgCxA2UAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQB3AHcAdwB3AHYAdgB1AHUAdQB0ALkBMwKtBEsEMwK0ATMC/QUzAlQDYgRRBsYBIgFRBiIC+wAXBUwECwELARkBlAFGAEYAzAFHAEcARwBHAA0ADQAwAk0EdwB3AHcAdwB2AHYAdQB1AHUAdAC5AR4CaAARAREBEQERAa0E2QC8BYQD1wHCATMCwQWtBDACvwEwAiEChQO4AZYBIgQkARIBEgHGACMCwgHBAcEFwwWwA8cBOAA4AJoBMAJiBFIGewGWAVIGlAFgBHoAewBxALAEsAQLBA4EBAQEBHgAeAB5AHkAeQB5ALQFlgEMAK0E6AV6AHsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQA0AdcBfgBnAR4BegBvAHEAsASwBAsEDgQEBAQEeAB4AHkAeQB5AHkANQHCAdcBwQV3AHcAdwB3AHYAdgB1AHUAdQB0ALkBmAQzAmAE4gEzAjgBsQHfAcUAdwB3AHcAdwB2AHYAdQB1AHUAdAC5AZUBDAAYAg8ADwDeASsAKwD9AXcAdwB3AHcAdgB2AHUAdQB1AHQAuQEhARcCJgEzAiYBhwHEBLYBtQGWAYIEkwGSAXgFmAO0BJgEmQSaBJcDtgQjARoF4QScATkAOQDoAbUEMwIsApwBmARABXsAcQCwBLAECwQOBAQEBAR4AHgAeQB5AHkAeQB4BXcEMwIsACwAtwTCALcEEQERAXgFzQEZAoIEdwRsACsCdwQEAIcBYQQwAgIGTwE6ADoABgDeBEsEfAF4BXgBLgIABjMCpgHFBAYAMAEqApgEmQSaBEwEdwB3AHcAdwB2AHYAdQB1AHUAdAC5AboBOwA7AE0EBAL/BREBEQEzAgYAMwJuACgCMwIQAqcBnQGpACQCMAJsACsCiQAEACcC5AEQAdcA3gDTADwAPAA9AD0AYgA+AD4ALgIRAREBMwL3A9MBxQQzArIBMwJqAGoACACYAzACEQERAWsAlwO6ATUCNAIzAroB7QMtAC0A0AEwAi4ALgAvAC8AVADKACgCvwSUAdQBMwLNADABKgIzAjEAMQAzAgoClAEUAjMCYwMzAmkAEwJnAO0D7QPvA/ADGwAyADIAMwL3Az8APwDbAUAAQABqAGoAQQBBAA4ADgARAGsAMwK6ATUCNAIzAi8B7QNCAEIAMwLiADMCvwMzAh8ClAGsBD8FZwMWAcADyAGAAIAAMwIpBEMAQwAzAs4AYwM0ADQARABEAEUARQChAe0D7QPvA/ADGwAbBo0EvAE1ADUAFQHvBZwAnAAzAYUBhQGEAQYBggGNBLwBRwNBARUBbAArAgsCBACFAYUBhAEGAYIBMwLfAEcDNwFGAdQFXQRiAC4CiQEpBDYBMwLcATMC3wAzAjcBbwNuA/EDFQGdAJ0AzwE2AYUBhQGEAQYBggG6AQYCRwNMAEwANgA2AEgASABjAeEAMwIoAhMBMwLfAEUBNwGhAGIB0QGHADMC5ADhADYBFAIzAs4AdgN3AxUCoQCBAIEAhwBJAEkA4ADCA8MD9wMzAh8BggCCAPEDagBqAIMAgwAzAuAAMwJrAOEAugE1AjQC5QP8BO0D+gChAH8AfwCHAGwAKwI1BAQANQSXAZsAmwCaAJoAMAEqAmYEMwIzBTMC4AAuAtYBlwEzAvoAMwLTBTABKgLtA+0D7wPwAxsAMwLgAUwBwAGIAIgAhgCGADwFugFQAYQAhACFAIUAMwI0BMABNASXATMCKAJLAEsAMAEqAlMBVQFXAWwAKwIzAgQAKQYrARQCMwJNAE0ACwUTAtgBSgBKAPoA+wQuAl4BwAFLAfcDaAFiACoAKgBIBWoAagAwADAAdwXuAS8FawD3ALoBNQI0AlkBugHtA2IAJQS5A5UD9wD6AG4AEAYmAlIDKAKWA5AAOgVuACUCfQXoBOAE1QTUBNYEIwYsBdAAhgHpAQkBawHIAG0B7QPtA+8D8AMbAAsAGAHdAPcDQwHaAfoEbwHUAGoAagCcA2oFRAEgAWUFawDFAboBNQI0AhsBSQHtA28F8wFhAV4FuAVsACsCtwUEACYGbgWNAb8EqwD+AHEBfwHPAMMAxADnBSkCLgLlBZ8BvARkACsCUwAEAMwA7QPtA+8D8AMbALQApgCtANsATwBSAMoBLgKvALoBIwBrBbAAywGxALIA7AHnAGAAvQWLASgCcQVwBSQA0gFzBbgAjgHhAboBsgXrAFkAyAXnAQoBTgHtALwA6gGQASgCUgHuAPwB1wTvAA4FDQX3AwwFBQWtAVsAZwNqAGoANAbVAJEBMwavAWsA8AS6ATUCNALvBGAB7QP3A+4EMgYVBgUCsAFqAGoABAUpASoBZgEMAmsANwW6ATUCNAJfADgF7QP8AP0AswF9AB8CBwYKAKQFeQEGBu0D7QPvA/ADGwBhAA8CdwFqAWYABAFsAX0BJQV+ATYFbgHdBDUFJAVwAe0D7QPvA/ADGwBPBU4FIgDHAJMENgIFAQcBCAE3AtIEngDNBI0AJwGfANgFLgHZBdcF1gWgADoD0QC7AckAMgHSAE4A3AAzBIoAMQQ6AaIArACsBOMArgCHA0IB5gBBBLMAowCkAKIBmAGZAaoAtQBVAFYApAFXAKUARARYAOkA6ABABJcAEgDqADkE+gBNAbkEuQDmAewAugAlAEkD6wFiAfAAWgHvAbsAWgBlAxMAFAD0AfcBXQFcAKcAmAAoAXIDXQD+AV4AhwSZABEEaAQnANYADQFnBA8B+QC4A74AswNuAH0EFQAHAIEEFgB5BBcAewQYAG0EGQCABCEAGwLBABoAIARiABIEEAQUBEoEFQRJBAAB/wAcACgAAQHyA1MDbQAdAJEDLwKAAYMBAgGPBI4EyQTJBMkEKwbJBMkEyQTJBMkEyQTJBCoGAABXBlcGVwatBccENAXHBMcExwStBa0FrQXHBFIFUgXiBeYExwTHBMcExwTHBMcExwTHBMcExwSsBccExwTHBMcEBQYFBscExwTHBMcExwTHBMcExwRbBccEYgXHBMcExwTHBMcErgWvBccExwTHBOEF4wW+BWkFaAVnBWYF0AVFBWAFWQVdBagFqQWnBasFrwWuBccEXAWLBZkFigXHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBJMFmAWeBZcFlAWNBYwFjgXHBI8FxwTHBMcE3AQQBccExwTHBMcExwT1BfQFxwTHBOYEhQWEBZAFkQWbBZoF6QUoBicGvwXHBMcExwTHBMcExwQFBscExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcEBQYFBscE5gQFBgUG4gTiBEwFxwTwBSsFKwUrBSsFNAUrBccExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBOYF5AXHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwQwBccExwTHBMcExwTHBMcExwTHBMcExwQiBscEywUeBTAFMAUwBTAFMgUfBR0FKgXnBM4ETwZsBWEFMQVHBWEFRwVMBl8FbAVsBV8FbAUxBUwG9wQ4BvIEUgVSBVIFRwVMBUwFqgUxBSoFxwRPBk8GOQU5BU4GTgY5Bb8FPwZ1BRMFGQUZBRkFGQU5BdkEXwU/Bj8GXwV1BRMFXwUTBV8FOQXZBM8FSQY5BdkEtQU5BdkEOQXZBLUFEQURBREFBgXHBMcEtQURBfcEEQUGBREFEQUXBscEuQW5BbUFSwVGBUsFRgVLBUYFSwVGBTkFDwYPBlUFVQVaBUwFsAU5BccEWgVYBVYFXwXfBAkFJQYlBiEGIQYhBlQGVAbwBTEG5gTmBOYE5gQxBvkE+QTnBOcE5gQxBscExwTHBMcExwTHBCwGxwTrBcAFPQXHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcE9gXHBMcExwTHBMcExwTHBMcExwTHBHoFxwTKBO0FxwTHBMcExwTHBMcExwTHBGMFZAU+BccExwTHBMcExwTHBMcEcgXHBMcExwRtBccExwTHBMcExwTHBMcExwRLBscExwTHBMcExwTHBM4FzQXHBMcEOwXHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBPUExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBFcFxwTHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBBQGTQXHBMcEQgbHBMcExwTHBMcExwTHBMcExwTHBMcExwTHBMcEPAYhBXwFxwR7BX8FxwTTBMcExwRwYXJzZXIgc3RhY2sgb3ZlcmZsb3cAdW5rbm93biB0YWJsZSBvcHRpb246ICUuKnMAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHNldCBsaXN0AG5lYXIgIiVUIjogc3ludGF4IGVycm9yADAAcXVhbGlmaWVkIHRhYmxlIG5hbWVzIGFyZSBub3QgYWxsb3dlZCBvbiBJTlNFUlQsIFVQREFURSwgYW5kIERFTEVURSBzdGF0ZW1lbnRzIHdpdGhpbiB0cmlnZ2VycwB0aGUgSU5ERVhFRCBCWSBjbGF1c2UgaXMgbm90IGFsbG93ZWQgb24gVVBEQVRFIG9yIERFTEVURSBzdGF0ZW1lbnRzIHdpdGhpbiB0cmlnZ2VycwB0aGUgTk9UIElOREVYRUQgY2xhdXNlIGlzIG5vdCBhbGxvd2VkIG9uIFVQREFURSBvciBERUxFVEUgc3RhdGVtZW50cyB3aXRoaW4gdHJpZ2dlcnMAALwAvAC7AL0AvgC+AL4AvgC9AL0AvQC9AL0AwgDEAMYAxgDFAMUAwwDDAMoAygDMAM4AzgDOAM8A0wDUANUA1QDVANUA1QDVANUA1QDVANUA1QDVANUA3gDeANoA2gDcANwA3wDfAN8A3wDgAOAA4ADgAOAA3QDdAOEA4QDhAMkA4wDkAOQA5ADkAOQA5wDYANgA6ADoAOkA6QC9AOsA6wC9AL0AvQDLAMsAywDtAPAA8ADwAO4A7gD6APoA8QDxAPEA/ADyAPIA8gD9AP0A8wDzAP8A/wD+AP4A/gD+AMcAxwDsAOwABQEFAQUBBQEAAQABAAEAAQIBAgEBAQEBAQEDAQMB9wD3AOUA5QDZANkA2QAHAQcBBwH1APUA9gD2APgA+AD4APgAvQD0APQACQEJAQkBCQG9AAoBCgEKAQoBvQC9AA0BDQENAQ0BDQENAQ4BCwELAQwBDAEGAQYB1wDXANcA1wDXANYA1gDWANcA1wDXANcA1wDXANcA1gDXANcA1wDXANcA1wDXANcA1wAQAdcA1wDXANcA1wDXANcA1wDXABEBEQHXABIBEgHXANcA1wDXANcA1wAVARUBFgEWARQBFAEEAfsA+wATARMBvQAXARcB2wDbAOYA5gAYARgBvQC9AL0AGQEZAb0AvQC9AL0AvQDRANIAvQAbAR0BHQEdAR4BHgEeASABIAEcARwBIgEjASMBIQEhASEBIQHXANcA6gDqAOoAvQC9AL0AJQElAb0AvQC9AL0AvQC9AL0AJgG9AL0AvQAoASoBKwErASwBCAEIAS8BLwEvAS4B7wDvADABMAExATIBMgEyATIBMgEyATMBMwEzATcBOQE5AToBOgE4ATgBOwE7ATwBPAE8AfkADwEPAQ8BNgE2ATUBuAC5ALkAugC6ALoAvwC/AL8AwQDBAL0AyADIAMAAwADAAM4AzwDQANAAzQDNANUA1QDVAMkA4gDiAOMA5wDpAO0A7gD8AP0ADgHXABABBAEaARoBGgEaARoB0QAfAR8BIgEjASQBJAEnAScBKQEpASoBLQEtAS0BCAEAAAAASAAAACUACgBbAAAANAAJAIMAAABbAAEAUwAAAE0AAAALAAsABQACAEUAAAB2AAAAQgBDAEQARQBnZW5lcmF0ZWQgY29sdW1uIGxvb3Agb24gIiVzIgBtaXN1c2Ugb2YgYWdncmVnYXRlOiAlcygpAHVua25vd24gZnVuY3Rpb246ICVzKCkAJWQgY29sdW1ucyBhc3NpZ25lZCAlZCB2YWx1ZXMAcm93IHZhbHVlIG1pc3VzZWQAUkFJU0UoKSBtYXkgb25seSBiZSB1c2VkIHdpdGhpbiBhIHRyaWdnZXItcHJvZ3JhbQAlcyVzADB4AGhleCBsaXRlcmFsIHRvbyBiaWc6ICVzJXMAdW5zYWZlIHVzZSBvZiAlcygpAHN1Yi1zZWxlY3QgcmV0dXJucyAlZCBjb2x1bW5zIC0gZXhwZWN0ZWQgJWQAUkVVU0UgU1VCUVVFUlkgJWQAJXNTQ0FMQVIgU1VCUVVFUlkgJWQAQ09SUkVMQVRFRCAAVVNJTkcgUk9XSUQgU0VBUkNIIE9OIFRBQkxFICVzIEZPUiBJTi1PUEVSQVRPUgBVU0lORyBJTkRFWCAlcyBGT1IgSU4tT1BFUkFUT1IAUkVVU0UgTElTVCBTVUJRVUVSWSAlZAAlc0xJU1QgU1VCUVVFUlkgJWQAbm90IGF1dGhvcml6ZWQAYXV0aG9yaXplciBtYWxmdW5jdGlvbgBST0xMQkFDSwBDT01NSVQAAK4hAAAYZwAA+2YAAFJFTEVBU0UAdGVtcG9yYXJ5IHRhYmxlIG5hbWUgbXVzdCBiZSB1bnF1YWxpZmllZAB2aWV3AAIECAZ0YWJsZSAlVCBhbHJlYWR5IGV4aXN0cwB0aGVyZSBpcyBhbHJlYWR5IGFuIGluZGV4IG5hbWVkICVzAAYAAAAAAGNvcnJ1cHQgZGF0YWJhc2UAdW5rbm93biBkYXRhYmFzZSAlVABzcWxpdGVfAG9iamVjdCBuYW1lIHJlc2VydmVkIGZvciBpbnRlcm5hbCB1c2U6ICVzAEFVVE9JTkNSRU1FTlQgbm90IGFsbG93ZWQgb24gV0lUSE9VVCBST1dJRCB0YWJsZXMAUFJJTUFSWSBLRVkgbWlzc2luZyBvbiB0YWJsZSAlcwBtdXN0IGhhdmUgYXQgbGVhc3Qgb25lIG5vbi1nZW5lcmF0ZWQgY29sdW1uAFRBQkxFAFZJRVcAQ1JFQVRFICVzICUuKnMAVVBEQVRFICVRLnNxbGl0ZV9tYXN0ZXIgU0VUIHR5cGU9JyVzJywgbmFtZT0lUSwgdGJsX25hbWU9JVEsIHJvb3RwYWdlPSMlZCwgc3FsPSVRIFdIRVJFIHJvd2lkPSMlZABDUkVBVEUgVEFCTEUgJVEuc3FsaXRlX3NlcXVlbmNlKG5hbWUsc2VxKQB0YmxfbmFtZT0nJXEnIEFORCB0eXBlIT0ndHJpZ2dlcicAc3FsaXRlX3NlcXVlbmNlAHRydWUAZmFsc2UAdGhlICIuIiBvcGVyYXRvcgBzZWNvbmQgYXJndW1lbnQgdG8gbGlrZWxpaG9vZCgpIG11c3QgYmUgYSBjb25zdGFudCBiZXR3ZWVuIDAuMCBhbmQgMS4wAG5vdCBhdXRob3JpemVkIHRvIHVzZSBmdW5jdGlvbjogJXMAbm9uLWRldGVybWluaXN0aWMgZnVuY3Rpb25zACUuKnMoKSBtYXkgbm90IGJlIHVzZWQgYXMgYSB3aW5kb3cgZnVuY3Rpb24Ad2luZG93AGFnZ3JlZ2F0ZQBtaXN1c2Ugb2YgJXMgZnVuY3Rpb24gJS4qcygpAG5vIHN1Y2ggZnVuY3Rpb246ICUuKnMAd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyB0byBmdW5jdGlvbiAlLipzKCkARklMVEVSIG1heSBub3QgYmUgdXNlZCB3aXRoIG5vbi1hZ2dyZWdhdGUgJS4qcygpAHN1YnF1ZXJpZXMAcGFyYW1ldGVycwBwYXJ0aWFsIGluZGV4IFdIRVJFIGNsYXVzZXMAaW5kZXggZXhwcmVzc2lvbnMAQ0hFQ0sgY29uc3RyYWludHMAZ2VuZXJhdGVkIGNvbHVtbnMAJXMgcHJvaGliaXRlZCBpbiAlcwBuZXcAb2xkAGV4Y2x1ZGVkAG1pc3VzZSBvZiBhbGlhc2VkIGFnZ3JlZ2F0ZSAlcwBtaXN1c2Ugb2YgYWxpYXNlZCB3aW5kb3cgZnVuY3Rpb24gJXMAZG91YmxlLXF1b3RlZCBzdHJpbmcgbGl0ZXJhbDogIiV3IgBubyBzdWNoIGNvbHVtbgBhbWJpZ3VvdXMgY29sdW1uIG5hbWUAJXM6ICVzLiVzLiVzAFJPV0lEACVzLiVzACVzLiV6AGFjY2VzcyB0byAleiBpcyBwcm9oaWJpdGVkAFJBTkdFIHdpdGggb2Zmc2V0IFBSRUNFRElORy9GT0xMT1dJTkcgcmVxdWlyZXMgb25lIE9SREVSIEJZIGV4cHJlc3Npb24ARklMVEVSIGNsYXVzZSBtYXkgb25seSBiZSB1c2VkIHdpdGggYWdncmVnYXRlIHdpbmRvdyBmdW5jdGlvbnMAcm93X251bWJlcgBkZW5zZV9yYW5rAHJhbmsAcGVyY2VudF9yYW5rAGN1bWVfZGlzdABudGlsZQBsZWFkAGxhZwAAAAAAAIpsAABMAAAAWgAAAFUAAACVbAAAWQAAAFoAAABVAAAAoGwAAFkAAABaAAAAVQAAAKVsAABcAAAAVQAAAFoAAACybAAAXAAAAFYAAABaAAAAvGwAAEwAAABVAAAAWgAAAMJsAABMAAAAWgAAAFoAAADHbAAATAAAAFoAAABVAAAAbm8gc3VjaCB3aW5kb3c6ICVzAGEgR1JPVVAgQlkgY2xhdXNlIGlzIHJlcXVpcmVkIGJlZm9yZSBIQVZJTkcAT1JERVIAR1JPVVAAYWdncmVnYXRlIGZ1bmN0aW9ucyBhcmUgbm90IGFsbG93ZWQgaW4gdGhlIEdST1VQIEJZIGNsYXVzZQB0b28gbWFueSByZWZlcmVuY2VzIHRvICIlcyI6IG1heCA2NTUzNQBhY2Nlc3MgdG8gdmlldyAiJXMiIHByb2hpYml0ZWQAdW5zYWZlIHVzZSBvZiB2aXJ0dWFsIHRhYmxlICIlcyIAKgAlcy4lcy4lcwBubyBzdWNoIHRhYmxlOiAlcwBubyB0YWJsZXMgc3BlY2lmaWVkAHRvbyBtYW55IGNvbHVtbnMgaW4gcmVzdWx0IHNldABzdWJxdWVyeV8ldQBjb2x1bW4lZAAlLip6OiV1AG11bHRpcGxlIHJlZmVyZW5jZXMgdG8gcmVjdXJzaXZlIHRhYmxlOiAlcwBjaXJjdWxhciByZWZlcmVuY2U6ICVzAHRhYmxlICVzIGhhcyAlZCB2YWx1ZXMgZm9yICVkIGNvbHVtbnMAbXVsdGlwbGUgcmVjdXJzaXZlIHJlZmVyZW5jZXM6ICVzAHJlY3Vyc2l2ZSByZWZlcmVuY2UgaW4gYSBzdWJxdWVyeTogJXMAJyVzJyBpcyBub3QgYSBmdW5jdGlvbgB2aWV3ICVzIGlzIGNpcmN1bGFybHkgZGVmaW5lZABubyBzdWNoIGluZGV4OiAlcwBhIE5BVFVSQUwgam9pbiBtYXkgbm90IGhhdmUgYW4gT04gb3IgVVNJTkcgY2xhdXNlAGNhbm5vdCBoYXZlIGJvdGggT04gYW5kIFVTSU5HIGNsYXVzZXMgaW4gdGhlIHNhbWUgam9pbgBjYW5ub3Qgam9pbiB1c2luZyBjb2x1bW4gJXMgLSBjb2x1bW4gbm90IHByZXNlbnQgaW4gYm90aCB0YWJsZXMAJXIgJXMgQlkgdGVybSBvdXQgb2YgcmFuZ2UgLSBzaG91bGQgYmUgYmV0d2VlbiAxIGFuZCAlZAB0b28gbWFueSB0ZXJtcyBpbiAlcyBCWSBjbGF1c2UAYWxsIFZBTFVFUyBtdXN0IGhhdmUgdGhlIHNhbWUgbnVtYmVyIG9mIHRlcm1zAFNFTEVDVHMgdG8gdGhlIGxlZnQgYW5kIHJpZ2h0IG9mICVzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIG51bWJlciBvZiByZXN1bHQgY29sdW1ucwBVTklPTiBBTEwASU5URVJTRUNUAEVYQ0VQVABVTklPTgB0b28gbWFueSB0ZXJtcyBpbiBPUkRFUiBCWSBjbGF1c2UAJXIgT1JERVIgQlkgdGVybSBkb2VzIG5vdCBtYXRjaCBhbnkgY29sdW1uIGluIHRoZSByZXN1bHQgc2V0AEV4cHJlc3Npb24gdHJlZSBpcyB0b28gbGFyZ2UgKG1heGltdW0gZGVwdGggJWQpACwACiAgACwKICAACikAQ1JFQVRFIFRBQkxFIAAAAADUBQAABHIAAApyAAAPcgAAFHIAACBURVhUACBOVU0AIElOVAAgUkVBTABkdXBsaWNhdGUgY29sdW1uIG5hbWU6ICVzAGRlZmF1bHQgdmFsdWUgb2YgY29sdW1uIFslc10gaXMgbm90IGNvbnN0YW50AGNhbm5vdCB1c2UgREVGQVVMVCBvbiBhIGdlbmVyYXRlZCBjb2x1bW4AdGFibGUgIiVzIiBoYXMgbW9yZSB0aGFuIG9uZSBwcmltYXJ5IGtleQBBVVRPSU5DUkVNRU5UIGlzIG9ubHkgYWxsb3dlZCBvbiBhbiBJTlRFR0VSIFBSSU1BUlkgS0VZAGdlbmVyYXRlZCBjb2x1bW5zIGNhbm5vdCBiZSBwYXJ0IG9mIHRoZSBQUklNQVJZIEtFWQB1bnN1cHBvcnRlZCB1c2Ugb2YgTlVMTFMgJXMARklSU1QATEFTVABpbmRleABjYW5ub3QgY3JlYXRlIGEgVEVNUCBpbmRleCBvbiBub24tVEVNUCB0YWJsZSAiJXMiAHRhYmxlICVzIG1heSBub3QgYmUgaW5kZXhlZAB2aWV3cyBtYXkgbm90IGJlIGluZGV4ZWQAdmlydHVhbCB0YWJsZXMgbWF5IG5vdCBiZSBpbmRleGVkAHRoZXJlIGlzIGFscmVhZHkgYSB0YWJsZSBuYW1lZCAlcwBpbmRleCAlcyBhbHJlYWR5IGV4aXN0cwBzcWxpdGVfYXV0b2luZGV4XyVzXyVkAGV4cHJlc3Npb25zIHByb2hpYml0ZWQgaW4gUFJJTUFSWSBLRVkgYW5kIFVOSVFVRSBjb25zdHJhaW50cwBjb25mbGljdGluZyBPTiBDT05GTElDVCBjbGF1c2VzIHNwZWNpZmllZABDUkVBVEUlcyBJTkRFWCAlLipzACBVTklRVUUASU5TRVJUIElOVE8gJVEuc3FsaXRlX21hc3RlciBWQUxVRVMoJ2luZGV4JywlUSwlUSwjJWQsJVEpOwBuYW1lPSclcScgQU5EIHR5cGU9J2luZGV4JwAlcyBjYW5ub3QgdXNlIHZhcmlhYmxlcwAlcyAlVCBjYW5ub3QgcmVmZXJlbmNlIG9iamVjdHMgaW4gZGF0YWJhc2UgJXMAaW5kZXggJyVxJwAsIABmb3JlaWduIGtleSBvbiAlcyBzaG91bGQgcmVmZXJlbmNlIG9ubHkgb25lIGNvbHVtbiBvZiB0YWJsZSAlVABudW1iZXIgb2YgY29sdW1ucyBpbiBmb3JlaWduIGtleSBkb2VzIG5vdCBtYXRjaCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIHJlZmVyZW5jZWQgdGFibGUAdW5rbm93biBjb2x1bW4gIiVzIiBpbiBmb3JlaWduIGtleSBkZWZpbml0aW9uAHZpcnR1YWwgdGFibGVzIGNhbm5vdCB1c2UgY29tcHV0ZWQgY29sdW1ucwB2aXJ0dWFsAHN0b3JlZABlcnJvciBpbiBnZW5lcmF0ZWQgY29sdW1uICIlcyIAdGFibGUgJXMgbWF5IG5vdCBiZSBkcm9wcGVkAHVzZSBEUk9QIFRBQkxFIHRvIGRlbGV0ZSB0YWJsZSAlcwB1c2UgRFJPUCBWSUVXIHRvIGRlbGV0ZSB2aWV3ICVzAHN0YXQAc3FsaXRlX3N0YXQlZABERUxFVEUgRlJPTSAlUS4lcyBXSEVSRSAlcz0lUQBERUxFVEUgRlJPTSAlUS5zcWxpdGVfc2VxdWVuY2UgV0hFUkUgbmFtZT0lUQBERUxFVEUgRlJPTSAlUS5zcWxpdGVfbWFzdGVyIFdIRVJFIHRibF9uYW1lPSVRIGFuZCB0eXBlIT0ndHJpZ2dlcicAREVMRVRFIEZST00gJVEuc3FsaXRlX21hc3RlciBXSEVSRSBuYW1lPSVRIEFORCB0eXBlPSd0cmlnZ2VyJwBjb3JydXB0IHNjaGVtYQBVUERBVEUgJVEuc3FsaXRlX21hc3RlciBTRVQgcm9vdHBhZ2U9JWQgV0hFUkUgIyVkIEFORCByb290cGFnZT0jJWQAcGFyYW1ldGVycyBhcmUgbm90IGFsbG93ZWQgaW4gdmlld3MAdGFyZ2V0IG9iamVjdC9hbGlhcyBtYXkgbm90IGFwcGVhciBpbiBGUk9NIGNsYXVzZTogJXMAZXhwZWN0ZWQgJWQgY29sdW1ucyBmb3IgJyVzJyBidXQgZ290ICVkAENPLVJPVVRJTkUgJSFTAE1BVEVSSUFMSVpFICUhUwBESVNUSU5DVABHUk9VUCBCWQBSSUdIVCBQQVJUIE9GIE9SREVSIEJZAE9SREVSIEJZAHRvbyBtYW55IEZST00gY2xhdXNlIHRlcm1zLCBtYXg6ICVkAENPTVBPVU5EIFFVRVJZAExFRlQtTU9TVCBTVUJRVUVSWQAlcyBVU0lORyBURU1QIEItVFJFRQBTQ0FOICVkIENPTlNUQU5UIFJPVyVzAFMAY2Fubm90IHVzZSB3aW5kb3cgZnVuY3Rpb25zIGluIHJlY3Vyc2l2ZSBxdWVyaWVzAHJlY3Vyc2l2ZSBhZ2dyZWdhdGUgcXVlcmllcyBub3Qgc3VwcG9ydGVkAFNFVFVQAFJFQ1VSU0lWRSBTVEVQAE1FUkdFICglcykATEVGVABSSUdIVAAAAAAAAAAAAAAAAAAACgoJCQgIBwcHBgYGBQUFBAQEBAMDAwMDAwICAgICAgJudGhfdmFsdWUAZmlyc3RfdmFsdWUAYXQgbW9zdCAlZCB0YWJsZXMgaW4gYSBqb2luAFNDQU4gQ09OU1RBTlQgUk9XAHRvbyBtYW55IGFyZ3VtZW50cyBvbiAlcygpIC0gbWF4ICVkAE9OIGNsYXVzZSByZWZlcmVuY2VzIHRhYmxlcyB0byBpdHMgcmlnaHQAOTdOT0NBU0UAAAAAAAAAzS4AAEAAAADAegAAQgAAAMV6AABBAAAAynoAAEMAAABnbG9iAGxpa2UAcmVnZXhwAGFiYnJldmlhdGVkIHF1ZXJ5IGFsZ29yaXRobSBzZWFyY2gAJXMueEJlc3RJbmRleCBtYWxmdW5jdGlvbgBubyBxdWVyeSBzb2x1dGlvbgBhdXRvbWF0aWMgaW5kZXggb24gJXMoJXMpAGF1dG8taW5kZXgAJXMgJVMAU0VBUkNIAFNDQU4AUFJJTUFSWSBLRVkAQVVUT01BVElDIFBBUlRJQUwgQ09WRVJJTkcgSU5ERVgAQVVUT01BVElDIENPVkVSSU5HIElOREVYAENPVkVSSU5HIElOREVYICVzAElOREVYICVzACBVU0lORyAAPQA+PyBBTkQgcm93aWQ8AD4APAAgVVNJTkcgSU5URUdFUiBQUklNQVJZIEtFWSAocm93aWQlcz8pACBWSVJUVUFMIFRBQkxFIElOREVYICVkOiVzACAoACBBTkQgACVzPT8AQU5ZKCVzKQA8ZXhwcj4AKAAZFxYYAAAlIRkWGBcpJyYoTVVMVEktSU5ERVggT1IASU5ERVggJWQABQQlIXR8AACpfAAA3HwAABR9AABIfQAAZnJhbWUgc3RhcnRpbmcgb2Zmc2V0IG11c3QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlcgBmcmFtZSBlbmRpbmcgb2Zmc2V0IG11c3QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlcgBzZWNvbmQgYXJndW1lbnQgdG8gbnRoX3ZhbHVlIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyAGZyYW1lIHN0YXJ0aW5nIG9mZnNldCBtdXN0IGJlIGEgbm9uLW5lZ2F0aXZlIG51bWJlcgBmcmFtZSBlbmRpbmcgb2Zmc2V0IG11c3QgYmUgYSBub24tbmVnYXRpdmUgbnVtYmVyAAAAAAAAADkAAAA5AAAANgAAADkAAAA5AAAAbWluAG1heABVU0UgVEVNUCBCLVRSRUUgRk9SICVzAERJU1RJTkNUIGFnZ3JlZ2F0ZXMgbXVzdCBoYXZlIGV4YWN0bHkgb25lIGFyZ3VtZW50AFVTRSBURU1QIEItVFJFRSBGT1IgJXMoRElTVElOQ1QpAFNDQU4gJXMlcyVzACBVU0lORyBDT1ZFUklORyBJTkRFWCAAJXMgY2xhdXNlIHNob3VsZCBjb21lIGFmdGVyICVzIG5vdCBiZWZvcmUATElNSVQAdG9vIG1hbnkgdGVybXMgaW4gY29tcG91bmQgU0VMRUNUAGEgSk9JTiBjbGF1c2UgaXMgcmVxdWlyZWQgYmVmb3JlICVzAE9OAFVTSU5HAAAAAAAAAABuYXR1cmFsZWZ0b3V0ZXJpZ2h0ZnVsbGlubmVyY3Jvc3MAAAAAAAAAAAAAAAAAAAAABwQGBCgKBSAOBTATBDgXBQEcBQMgAHVua25vd24gb3IgdW5zdXBwb3J0ZWQgam9pbiB0eXBlOiAlVCAlVCVzJVQAUklHSFQgYW5kIEZVTEwgT1VURVIgSk9JTnMgYXJlIG5vdCBjdXJyZW50bHkgc3VwcG9ydGVkAHJvd3MgZGVsZXRlZAAlcyBSRVRVUk5JTkcgaXMgbm90IGF2YWlsYWJsZSBvbiB2aXJ0dWFsIHRhYmxlcwBERUxFVEUAVVBEQVRFAHRhYmxlICVzIG1heSBub3QgYmUgbW9kaWZpZWQAY2Fubm90IG1vZGlmeSAlcyBiZWNhdXNlIGl0IGlzIGEgdmlldwBmb3JlaWduIGtleSBtaXNtYXRjaCAtICIldyIgcmVmZXJlbmNpbmcgIiV3IgBSRVRVUk5JTkcgbWF5IG5vdCB1c2UgIlRBQkxFLioiIHdpbGRjYXJkcwAAMWsAAAMAAAAtawAAAwAAADMAAgB7AAAAXQACAHwAAAB2AAAAY2Fubm90IHVzZSBSRVRVUk5JTkcgaW4gYSB0cmlnZ2VyAHNxbGl0ZV9yZXR1cm5pbmcAdG9vIG1hbnkgY29sdW1ucyBpbiAlcwBjYW5ub3QgVVBEQVRFIGdlbmVyYXRlZCBjb2x1bW4gIiVzIgBubyBzdWNoIGNvbHVtbjogJXMAcm93cyB1cGRhdGVkACVzLnJvd2lkAGNhbm5vdCBJTlNFUlQgaW50byBnZW5lcmF0ZWQgY29sdW1uICIlcyIAdGFibGUgJVMgaGFzIG5vIGNvbHVtbiBuYW1lZCAlcwB0YWJsZSAlUyBoYXMgJWQgY29sdW1ucyBidXQgJWQgdmFsdWVzIHdlcmUgc3VwcGxpZWQAJWQgdmFsdWVzIGZvciAlZCBjb2x1bW5zAFVQU0VSVCBub3QgaW1wbGVtZW50ZWQgZm9yIHZpcnR1YWwgdGFibGUgIiVzIgBjYW5ub3QgVVBTRVJUIGEgdmlldwByb3dzIGluc2VydGVkACVyIAAlc09OIENPTkZMSUNUIGNsYXVzZSBkb2VzIG5vdCBtYXRjaCBhbnkgUFJJTUFSWSBLRVkgb3IgVU5JUVVFIGNvbnN0cmFpbnQAdmFyaWFibGUgbnVtYmVyIG11c3QgYmUgYmV0d2VlbiA/MSBhbmQgPyVkAHRvbyBtYW55IFNRTCB2YXJpYWJsZXMAdG9vIG1hbnkgYXJndW1lbnRzIG9uIGZ1bmN0aW9uICVUAERJU1RJTkNUIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIHdpbmRvdyBmdW5jdGlvbnMAc3ludGF4IGVycm9yIGFmdGVyIGNvbHVtbiBuYW1lICIlLipzIgBubyBzdWNoIGluZGV4OiAlUwBpbmRleCBhc3NvY2lhdGVkIHdpdGggVU5JUVVFIG9yIFBSSU1BUlkgS0VZIGNvbnN0cmFpbnQgY2Fubm90IGJlIGRyb3BwZWQAREVMRVRFIEZST00gJVEuc3FsaXRlX21hc3RlciBXSEVSRSBuYW1lPSVRIEFORCB0eXBlPSdpbmRleCcALSVUAGZhc3QAbm9ybWFsAGV4Y2x1c2l2ZQAAAAAAAAAAAgABAF8AAQQSAQAARAACAGAABwBub3QgYSB3cml0YWJsZSBkaXJlY3RvcnkAU2FmZXR5IGxldmVsIG1heSBub3QgYmUgY2hhbmdlZCBpbnNpZGUgYSB0cmFuc2FjdGlvbgBpc3Npc2lpAGlzc2lzaQBpaXNYAGlzaVgAYwB1AAAbhAAAHYQAAPQuAABpc2lzaQBpc3MAaXMAcwBpaXNzc3NzcwBOT05FAHNpWAAqKiogaW4gZGF0YWJhc2UgJXMgKioqCgBOVUxMIHZhbHVlIGluICVzLiVzAENIRUNLIGNvbnN0cmFpbnQgZmFpbGVkIGluICVzAHJvdyAAIG1pc3NpbmcgZnJvbSBpbmRleCAAbm9uLXVuaXF1ZSBlbnRyeSBpbiBpbmRleCAAd3JvbmcgIyBvZiBlbnRyaWVzIGluIGluZGV4IAAAAAAAAAAAUwEAADEBBAB0AAMAUQMBAEQAAAB0AAMACwADAG9rAAIAAQBgAAAAAgAAAF8AAQBRAQEAQU5BTFlaRSAiJXciLiIldyIAbm9uZQBmdWxsAGluY3JlbWVudGFsAHRlbXBvcmFyeSBzdG9yYWdlIGNhbm5vdCBiZSBjaGFuZ2VkIGZyb20gd2l0aGluIGEgdHJhbnNhY3Rpb24AAAAAAAAAAG9ub2ZmYWxzZXllc3RydWV4dHJhZnVsbAAAAQIECQwPFAICAwUDBAUEAQAAAAEBAwIAAAAAAAAAAAAAAAAAAAAAAAAA4IUAAOWFAADthQAAdXRmOAB1dGYxNmxlAHV0ZjE2YmUAdwBhAHNpc3NpaQBTRVQgTlVMTABTRVQgREVGQVVMVABDQVNDQURFAFJFU1RSSUNUAE5PIEFDVElPTgAlXwAAdW5hYmxlIHRvIGRlbGV0ZS9tb2RpZnkgdXNlci1mdW5jdGlvbiBkdWUgdG8gYWN0aXZlIHN0YXRlbWVudHMATElLRSBvciBHTE9CIHBhdHRlcm4gdG9vIGNvbXBsZXgARVNDQVBFIGV4cHJlc3Npb24gbXVzdCBiZSBhIHNpbmdsZSBjaGFyYWN0ZXIAdHJpZ2dlcgBJTlNFUlQgSU5UTyAlUS5zcWxpdGVfbWFzdGVyIFZBTFVFUygndHJpZ2dlcicsJVEsJVEsMCwnQ1JFQVRFIFRSSUdHRVIgJXEnKQB0eXBlPSd0cmlnZ2VyJyBBTkQgbmFtZT0nJXEnAHRlbXBvcmFyeSB0cmlnZ2VyIG1heSBub3QgaGF2ZSBxdWFsaWZpZWQgbmFtZQBjYW5ub3QgY3JlYXRlIHRyaWdnZXJzIG9uIHZpcnR1YWwgdGFibGVzAHRyaWdnZXIgJVQgYWxyZWFkeSBleGlzdHMAY2Fubm90IGNyZWF0ZSB0cmlnZ2VyIG9uIHN5c3RlbSB0YWJsZQBjYW5ub3QgY3JlYXRlICVzIHRyaWdnZXIgb24gdmlldzogJVMAQkVGT1JFAEFGVEVSAGNhbm5vdCBjcmVhdGUgSU5TVEVBRCBPRiB0cmlnZ2VyIG9uIHRhYmxlOiAlUwBubyBzdWNoIHRyaWdnZXI6ICVTAAMAAAABAAAAAAAAAAAAAACBAAAAAAAAAAAAAAAAAAAAZIgAAAAAAABzcWxpdGVfYXR0YWNoAHRvbyBtYW55IGF0dGFjaGVkIGRhdGFiYXNlcyAtIG1heCAlZABkYXRhYmFzZSAlcyBpcyBhbHJlYWR5IGluIHVzZQBkYXRhYmFzZSBpcyBhbHJlYWR5IGF0dGFjaGVkAHVuYWJsZSB0byBvcGVuIGRhdGFiYXNlOiAlcwBmaWxlOgBsb2NhbGhvc3QAaW52YWxpZCB1cmkgYXV0aG9yaXR5OiAlLipzAHZmcwBjYWNoZQAAAAAAAAAAAAAAAABIiQAAAAACAE+JAAAAAAQAAAAAAAAAAABzaGFyZWQAcHJpdmF0ZQAAAAAAAAAAAACIiQAAAQAAAIuJAAACAAAAjokAAAYAAAAQIQAAgAAAAAAAAAAAAAAAcm8AcncAcndjAGFjY2VzcwBubyBzdWNoICVzIG1vZGU6ICVzACVzIG1vZGUgbm90IGFsbG93ZWQ6ICVzAG5vIHN1Y2ggdmZzOiAlcwAAAAABAAAAAQAAAAAAAAAAAAAAggAAAAAAAAAAAAAAAAAAAACKAAAAAAAAc3FsaXRlX2RldGFjaABubyBzdWNoIGRhdGFiYXNlOiAlcwBjYW5ub3QgZGV0YWNoIGRhdGFiYXNlICVzAGRhdGFiYXNlICVzIGlzIGxvY2tlZAB1bmFibGUgdG8gaWRlbnRpZnkgdGhlIG9iamVjdCB0byBiZSByZWluZGV4ZWQAAAAAAAAAAAAAAAAAAAAAdx0AAKiKAAC1igAAAAAAAMKKAAAAAAAAdGJsLGlkeCxzdGF0AHNxbGl0ZV9zdGF0NABzcWxpdGVfc3RhdDMAQ1JFQVRFIFRBQkxFICVRLiVzKCVzKQBzcWxpdGVcXyUABAAAAAEAAAAAAAAAAAAAAIMAAAAAAAAAAAAAAAAAAABEiwAAAAAAAAIAAAABAAAAAAAAAAAAAACEAAAAAAAAAAAAAAAAAAAATosAAAAAAABCQkIAc3RhdF9pbml0AHN0YXRfcHVzaAABAAAAAQAAAAAAAAAAAAAAhQAAAAAAAAAAAAAAAAAAAICLAAAAAAAAc3RhdF9nZXQAJWxsdQAgJWxsdQB0aGVyZSBpcyBhbHJlYWR5IGFub3RoZXIgdGFibGUgb3IgaW5kZXggd2l0aCB0aGlzIG5hbWU6ICVzAHZpZXcgJXMgbWF5IG5vdCBiZSBhbHRlcmVkAFVQREFURSAiJXciLnNxbGl0ZV9tYXN0ZXIgU0VUIHNxbCA9IHNxbGl0ZV9yZW5hbWVfdGFibGUoJVEsIHR5cGUsIG5hbWUsIHNxbCwgJVEsICVRLCAlZCkgV0hFUkUgKHR5cGUhPSdpbmRleCcgT1IgdGJsX25hbWU9JVEgQ09MTEFURSBub2Nhc2UpQU5EICAgbmFtZSBOT1QgTElLRSAnc3FsaXRlWF8lJScgRVNDQVBFICdYJwBVUERBVEUgJVEuc3FsaXRlX21hc3RlciBTRVQgdGJsX25hbWUgPSAlUSwgbmFtZSA9IENBU0UgV0hFTiB0eXBlPSd0YWJsZScgVEhFTiAlUSBXSEVOIG5hbWUgTElLRSAnc3FsaXRlWF9hdXRvaW5kZXglJScgRVNDQVBFICdYJyAgICAgIEFORCB0eXBlPSdpbmRleCcgVEhFTiAnc3FsaXRlX2F1dG9pbmRleF8nIHx8ICVRIHx8IHN1YnN0cihuYW1lLCVkKzE4KSBFTFNFIG5hbWUgRU5EIFdIRVJFIHRibF9uYW1lPSVRIENPTExBVEUgbm9jYXNlIEFORCAodHlwZT0ndGFibGUnIE9SIHR5cGU9J2luZGV4JyBPUiB0eXBlPSd0cmlnZ2VyJyk7AFVQREFURSAiJXciLnNxbGl0ZV9zZXF1ZW5jZSBzZXQgbmFtZSA9ICVRIFdIRVJFIG5hbWUgPSAlUQBVUERBVEUgc3FsaXRlX3RlbXBfc2NoZW1hIFNFVCBzcWwgPSBzcWxpdGVfcmVuYW1lX3RhYmxlKCVRLCB0eXBlLCBuYW1lLCBzcWwsICVRLCAlUSwgMSksIHRibF9uYW1lID0gQ0FTRSBXSEVOIHRibF9uYW1lPSVRIENPTExBVEUgbm9jYXNlIEFORCAgIHNxbGl0ZV9yZW5hbWVfdGVzdCglUSwgc3FsLCB0eXBlLCBuYW1lLCAxLCAnYWZ0ZXIgcmVuYW1lJywgMCkgVEhFTiAlUSBFTFNFIHRibF9uYW1lIEVORCBXSEVSRSB0eXBlIElOICgndmlldycsICd0cmlnZ2VyJykAYWZ0ZXIgcmVuYW1lAHRhYmxlICVzIG1heSBub3QgYmUgYWx0ZXJlZABTRUxFQ1QgMSBGUk9NICIldyIuc3FsaXRlX21hc3RlciBXSEVSRSBuYW1lIE5PVCBMSUtFICdzcWxpdGVYXyUlJyBFU0NBUEUgJ1gnIEFORCBzcWwgTk9UIExJS0UgJ2NyZWF0ZSB2aXJ0dWFsJSUnIEFORCBzcWxpdGVfcmVuYW1lX3Rlc3QoJVEsIHNxbCwgdHlwZSwgbmFtZSwgJWQsICVRLCAlZCk9TlVMTCAAU0VMRUNUIDEgRlJPTSB0ZW1wLnNxbGl0ZV9tYXN0ZXIgV0hFUkUgbmFtZSBOT1QgTElLRSAnc3FsaXRlWF8lJScgRVNDQVBFICdYJyBBTkQgc3FsIE5PVCBMSUtFICdjcmVhdGUgdmlydHVhbCUlJyBBTkQgc3FsaXRlX3JlbmFtZV90ZXN0KCVRLCBzcWwsIHR5cGUsIG5hbWUsIDEsICVRLCAlZCk9TlVMTCAAQ2Fubm90IGFkZCBhIFBSSU1BUlkgS0VZIGNvbHVtbgBDYW5ub3QgYWRkIGEgVU5JUVVFIGNvbHVtbgBDYW5ub3QgYWRkIGEgUkVGRVJFTkNFUyBjb2x1bW4gd2l0aCBub24tTlVMTCBkZWZhdWx0IHZhbHVlAENhbm5vdCBhZGQgYSBOT1QgTlVMTCBjb2x1bW4gd2l0aCBkZWZhdWx0IHZhbHVlIE5VTEwAQ2Fubm90IGFkZCBhIGNvbHVtbiB3aXRoIG5vbi1jb25zdGFudCBkZWZhdWx0AGNhbm5vdCBhZGQgYSBTVE9SRUQgY29sdW1uAFVQREFURSAiJXciLnNxbGl0ZV9tYXN0ZXIgU0VUIHNxbCA9IHByaW50ZignJSUuJWRzLCAnLHNxbCkgfHwgJVEgfHwgc3Vic3RyKHNxbCwxK2xlbmd0aChwcmludGYoJyUlLiVkcycsc3FsKSkpIFdIRVJFIHR5cGUgPSAndGFibGUnIEFORCBuYW1lID0gJVEAU0VMRUNUIHJhaXNlKEFCT1JULCVRKSBGUk9NICIldyIuIiV3IgBjYW5ub3QgZHJvcCAlcyBjb2x1bW46ICIlcyIAY2Fubm90IGRyb3AgY29sdW1uICIlcyI6IG5vIG90aGVyIGNvbHVtbnMgZXhpc3QAVVBEQVRFICIldyIuc3FsaXRlX21hc3RlciBTRVQgc3FsID0gc3FsaXRlX2Ryb3BfY29sdW1uKCVkLCBzcWwsICVkKSBXSEVSRSAodHlwZT09J3RhYmxlJyBBTkQgdGJsX25hbWU9JVEgQ09MTEFURSBub2Nhc2UpAGFmdGVyIGRyb3AgY29sdW1uAHZpcnR1YWwgdGFibGUAY2Fubm90ICVzICVzICIlcyIAZHJvcCBjb2x1bW4gZnJvbQByZW5hbWUgY29sdW1ucyBvZgBVUERBVEUgIiV3Ii5zcWxpdGVfbWFzdGVyIFNFVCBzcWwgPSBzcWxpdGVfcmVuYW1lX3F1b3RlZml4KCVRLCBzcWwpV0hFUkUgbmFtZSBOT1QgTElLRSAnc3FsaXRlWF8lJScgRVNDQVBFICdYJyBBTkQgc3FsIE5PVCBMSUtFICdjcmVhdGUgdmlydHVhbCUlJwBVUERBVEUgdGVtcC5zcWxpdGVfbWFzdGVyIFNFVCBzcWwgPSBzcWxpdGVfcmVuYW1lX3F1b3RlZml4KCd0ZW1wJywgc3FsKVdIRVJFIG5hbWUgTk9UIExJS0UgJ3NxbGl0ZVhfJSUnIEVTQ0FQRSAnWCcgQU5EIHNxbCBOT1QgTElLRSAnY3JlYXRlIHZpcnR1YWwlJScAdmlydHVhbCB0YWJsZXMgbWF5IG5vdCBiZSBhbHRlcmVkAENhbm5vdCBhZGQgYSBjb2x1bW4gdG8gYSB2aWV3AHNxbGl0ZV9hbHRlcnRhYl8lcwBVUERBVEUgIiV3Ii5zcWxpdGVfbWFzdGVyIFNFVCBzcWwgPSBzcWxpdGVfcmVuYW1lX2NvbHVtbihzcWwsIHR5cGUsIG5hbWUsICVRLCAlUSwgJWQsICVRLCAlZCwgJWQpIFdIRVJFIG5hbWUgTk9UIExJS0UgJ3NxbGl0ZVhfJSUnIEVTQ0FQRSAnWCcgIEFORCAodHlwZSAhPSAnaW5kZXgnIE9SIHRibF9uYW1lID0gJVEpIEFORCBzcWwgTk9UIExJS0UgJ2NyZWF0ZSB2aXJ0dWFsJSUnAFVQREFURSB0ZW1wLnNxbGl0ZV9tYXN0ZXIgU0VUIHNxbCA9IHNxbGl0ZV9yZW5hbWVfY29sdW1uKHNxbCwgdHlwZSwgbmFtZSwgJVEsICVRLCAlZCwgJVEsICVkLCAxKSBXSEVSRSB0eXBlIElOICgndHJpZ2dlcicsICd2aWV3JykAQ1JFQVRFIFZJUlRVQUwgVEFCTEUgJVQAVVBEQVRFICVRLnNxbGl0ZV9tYXN0ZXIgU0VUIHR5cGU9J3RhYmxlJywgbmFtZT0lUSwgdGJsX25hbWU9JVEsIHJvb3RwYWdlPTAsIHNxbD0lUSBXSEVSRSByb3dpZD0jJWQAbmFtZT0lUSBBTkQgc3FsPSVRAGR1cGxpY2F0ZSBXSVRIIHRhYmxlIG5hbWU6ICVzAFBBUlRJVElPTiBjbGF1c2UAT1JERVIgQlkgY2xhdXNlAGZyYW1lIHNwZWNpZmljYXRpb24AY2Fubm90IG92ZXJyaWRlICVzIG9mIHdpbmRvdzogJXMAdW5zdXBwb3J0ZWQgZnJhbWUgc3BlY2lmaWNhdGlvbgAAAG8AqAAQAfgCT/9R/0D/Qv9K/03/2ADcAOEBMP8z//b+dP+N//EAiQELAkUBZAJ4Ah4CiwL8AvUCvgL6AiwDLgNE/xEBnAOCAfYCxwP8AxwEKgQA/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/8MA3gAtA5UDmAO/A9kD7gMOBCsELQQwBEsETwRRBF4EbwRzBHYEegR8BIcElgSaBJ8EoQSjBK4EsgTeBOoE7ATuBAgFCwUTBRgFJwUwBTIFTQVPBVQFVgVfBW4FcwV+BYMFAP8A/wD/AP8A/wD/AP8A/78BAP8rAk7/XQJAAyT/XgKi/1j/JACG/9oCDAPaAgwDlgN4/1IBAP8A/wD/AP9QAFAAUADQAr8CKwNyA4cDK/80/2oASgFKAbP/7ABAAVcCQwDJAaMC2QKLAQwBYwLJA+wD1gL2A9cDewB0A2ACCgQjAo8DigJMA5oDtQPFA8wD0gPBAcoDzgIQAzEEPAT/A2kEL/9M/4//cgC3AEkBWQGHAb4B9gFhApsCyQIxA2EDcQOFA5kD3QOnBKsE1gDHBNME4wRXBWAFYQVnBWkFeQV6BXsFhgVIAn4CGQWMBY4FkgUOBZYFmwWdBUQFMQWzBbUFhAW2BVkBtwW4BbkFugW7BbwFYgVkBZMFgAWFBYcFlAUOBZMFkwWZBaoFwQVlBYkFkAWYBZoFnAWeBWsFowWVBZ8FpAWgBa0FbAXJBa8FsQXLBc0F0AWwBb0FvgWhBb8FwgXoBYgFogXvBfIFpgWnBfMFwAXDBcQF4AXjBecF6QXqBQwGEQbmBc4FzwXrBdIF+AXuBfkF8QUcBiAGyAXMBSMGJgYTBioGLAYtBi8GFAYeBh8GIQYZBiIGJQYnBi4GMAYzBjQGNgY3BtoF4gX+Bf8FPQYYBjIGHQY1BjgGOgY7Bj4GWwbsBfAFPwZABkEGPAYWBmMGQgZHBlMGQwZGBnMGggaLBowGkAaRBpMGSAZJBk0GhAaDBoUGhgaHBogGdwZ4BokGjQaPBo4GaW5jb21wbGV0ZSBpbnB1dABpbXBsaWVzX25vbm51bGxfcm93AGV4cHJfY29tcGFyZQBleHByX2ltcGxpZXNfZXhwcgBzcWxpdGVfY29tcGlsZW9wdGlvbl91c2VkAHNxbGl0ZV9jb21waWxlb3B0aW9uX2dldAB1bmxpa2VseQBsaWtlbGlob29kAGxpa2VseQBsdHJpbQBydHJpbQB0cmltAHR5cGVvZgBsZW5ndGgAaW5zdHIAcHJpbnRmAHVuaWNvZGUAY2hhcgBhYnMAcm91bmQAdXBwZXIAbG93ZXIAaGV4AGlmbnVsbAByYW5kb20AcmFuZG9tYmxvYgBudWxsaWYAc3FsaXRlX3ZlcnNpb24Ac3FsaXRlX3NvdXJjZV9pZABzcWxpdGVfbG9nAHF1b3RlAGxhc3RfaW5zZXJ0X3Jvd2lkAGNoYW5nZXMAdG90YWxfY2hhbmdlcwByZXBsYWNlAHplcm9ibG9iAHN1YnN0cgBzdWJzdHJpbmcAc3VtAHRvdGFsAGF2ZwBjb3VudABncm91cF9jb25jYXQAY29hbGVzY2UAc2lnbgBpaWYAAAEAAAD1fgAAAAAAAAAAAACmJQAAoSUAAGScAABpnAAAnCUAAHRleHQAYmxvYgBpbnRlZ2VyIG92ZXJmbG93ACUuKmYAAAAAAAAAAAAAAAAAMDEyMzQ1Njc4OUFCQ0RFRiUhLjIwZQBzcWxpdGVfcmVuYW1lX2NvbHVtbgBzcWxpdGVfcmVuYW1lX3RhYmxlAHNxbGl0ZV9yZW5hbWVfdGVzdABzcWxpdGVfZHJvcF9jb2x1bW4Ac3FsaXRlX3JlbmFtZV9xdW90ZWZpeAAiJXciIAAlUSVzAGVycm9yIGluICVzICVzJXMlczogJXMAJS4qcyVzAGxhc3RfdmFsdWUAYXJndW1lbnQgb2YgbnRpbGUgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIAanVsaWFuZGF5AGRhdGUAdGltZQBkYXRldGltZQBzdHJmdGltZQBjdXJyZW50X3RpbWUAY3VycmVudF90aW1lc3RhbXAAY3VycmVudF9kYXRlAGEgQ0hFQ0sgY29uc3RyYWludABhIGdlbmVyYXRlZCBjb2x1bW4AYW4gaW5kZXgAbm9uLWRldGVybWluaXN0aWMgdXNlIG9mICVzKCkgaW4gJXMAbm93ADQwZi0yMWEtMjFkAAAMAA4AGAAfADsADycyMGM6MjBlADIwZQAyMGI6MjBlAGxvY2FsdGltZQB1bml4ZXBvY2gAdXRjAHdlZWtkYXkgAHN0YXJ0IG9mIABtb250aAB5ZWFyAGRheQAAAAAGAAAnnwAAAACw6iUGW0IAAAAAAECPQAAGAAAunwAAAAAApVvT/EEAAAAAAEztQAAEAAA1nwAAAAAAsFC/nkEAAAAAQHdLQQADAAB6ngAA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kwj1AwAAuAQAAAIAkwi4BAAABAUAAAIAkwgEBQAAxQYAAAIAkwjlBgAA6gYAAAIAkwjqBgAAcwcAAAIAkwimBwAAqwcAAAIAkwirBwAAQAgAAAIAkwgAAAAAAAAAAIECAACTAgAAAgCTCJMCAAChAgAAAgCTCKECAACwAgAAAgCTCLACAAC0AgAAAgCTCLQCAADdAgAAAgCTCN0CAADhAgAAAgCTCOECAADxAgAAAgCTCPECAADzAgAAAgCTCPMCAAACAwAAAgCTCAIDAAAqAwAAAgCTCCoDAAAuAwAAAgCTCC4DAAA+AwAAAgCTCD4DAABAAwAAAgCTCEADAABPAwAAAgCTCE8DAAB2AwAAAgCTCHYDAAB6AwAAAgCTCHoDAACJAwAAAgCTCIkDAACLAwAAAgCTCIsDAACZAwAAAgCTCJkDAAC/AwAAAgCTCL8DAADDAwAAAgCTCMMDAADPAwAAAgCTCM8DAADRAwAAAgCTCNEDAADfAwAAAgCTCN8DAADlAwAAAgCTCOUDAAD1AwAAAgCTCPUDAAC4BAAAAgCTCLgEAAAEBQAAAgCTCAQFAADFBgAAAgCTCOUGAADqBgAAAgCTCOoGAABzBwAAAgCTCKYHAACrBwAAAgCTCKsHAABACAAAAgCTCAAAAAAAAAAAgQIAAJMCAAACAJMIkwIAAKECAAACAJMIoQIAALACAAACAJMIsAIAALQCAAACAJMItAIAAN0CAAACAJMI3QIAAOECAAACAJMI4QIAAPECAAACAJMI8QIAAPMCAAACAJMI8wIAAAIDAAACAJMIAgMAACoDAAACAJMIKgMAAC4DAAACAJMILgMAAD4DAAACAJMIPgMAAEADAAACAJMIQAMAAE8DAAACAJMITwMAAHYDAAACAJMIdgMAAHoDAAACAJMIegMAAIkDAAACAJMIiQMAAIsDAAACAJMIiwMAAJkDAAACAJMImQMAAL8DAAACAJMIvwMAAMMDAAACAJMIwwMAAM8DAAACAJMIzwMAANEDAAACAJMI0QMAAN8DAAACAJMI3wMAAPUDAAACAJMI9QMAALgEAAACAJMIuAQAALwEAAACAJMIvAQAAL4EAAACAJMIvgQAAAQFAAAGAO0AEZ+TCAQFAADFBgAABgDtABGfkwjlBgAA6gYAAAIAkwjqBgAAcwcAAAIAkwimBwAAqwcAAAIAkwirBwAAQAgAAAIAkwgAAAAAAAAAAIECAACTAgAAAgCTCJMCAAChAgAAAgCTCKECAACwAgAAAgCTCLACAAC0AgAAAgCTCLQCAADdAgAAAgCTCN0CAADhAgAAAgCTCOECAADxAgAAAgCTCPECAADzAgAAAgCTCPMCAAACAwAAAgCTCAIDAAAqAwAAAgCTCCoDAAAuAwAAAgCTCC4DAAA+AwAAAgCTCD4DAABAAwAAAgCTCEADAABPAwAAAgCTCE8DAAB2AwAAAgCTCHYDAAB6AwAAAgCTCHoDAACJAwAAAgCTCIkDAACLAwAAAgCTCIsDAACZAwAAAgCTCJkDAAC/AwAAAgCTCL8DAADDAwAAAgCTCMMDAADPAwAAAgCTCM8DAADRAwAAAgCTCNEDAADfAwAAAgCTCN8DAAD1AwAAAgCTCPUDAAC4BAAAAgCTCLgEAAC8BAAAAgCTCLwEAAC+BAAAAgCTCL4EAAAEBQAABgDtABGfkwgEBQAAxQYAAAYA7QARn5MI5QYAAOoGAAACAJMI6gYAAHMHAAACAJMIpgcAAKsHAAACAJMIqwcAAEAIAAACAJMIAAAAAAAAAACBAgAAkwIAAAIAkwiTAgAAoQIAAAIAkwihAgAAsAIAAAIAkwiwAgAAtAIAAAIAkwi0AgAA3QIAAAIAkwjdAgAA4QIAAAIAkwjhAgAA8QIAAAIAkwjxAgAA8wIAAAIAkwjzAgAAAgMAAAIAkwgCAwAAKgMAAAIAkwgqAwAALgMAAAIAkwguAwAAPgMAAAIAkwg+AwAAQAMAAAIAkwhAAwAATwMAAAIAkwhPAwAAdgMAAAIAkwh2AwAAegMAAAIAkwh6AwAAiQMAAAIAkwiJAwAAiwMAAAIAkwiLAwAAmQMAAAIAkwiZAwAAvwMAAAIAkwi/AwAAwwMAAAIAkwjDAwAAzwMAAAIAkwjPAwAA0QMAAAIAkwjRAwAA3wMAAAIAkwjfAwAA5QMAAAIAkwjlAwAA9QMAAAIAkwj1AwAAuAQAAAIAkwi4BAAABAUAAAIAkwgEBQAAxQYAAAIAkwjlBgAA6gYAAAIAkwjqBgAAcwcAAAIAkwimBwAAqwcAAAIAkwirBwAAQAgAAAIAkwgAAAAAAAAAAIECAACTAgAAAgCTCJMCAAChAgAAAgCTCKECAACwAgAAAgCTCLACAAC0AgAAAgCTCLQC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AAEBAfsODQABAQEBAAAAAQAAAXdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucwAAc3VidGYzLmMAAQAAZnBfbGliLmgAAQAAAAAFAg+GCAADEwEFCgoIPQUnBoIFCtYFA8gFCi4FA1gCFgABAQC3NAouZGVidWdfc3RyY2xhbmcgdmVyc2lvbiAxMC4wLjAgKGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdCBkMzIxNzBkYmQ1YjBkNTQ0MzY1MzdiNmI3NWJlYWY0NDMyNGUwYzI4KQB3YXNpc2RrOi8vdjExLjAvc3JjL2xsdm0tcHJvamVjdC9jb21waWxlci1ydC9saWIvYnVpbHRpbnMvY29tcGFyZXRmMi5jAHdhc2lzZGs6Ly92MTEuMC9idWlsZC9jb21waWxlci1ydABpbnQATEVfTEVTUwBMRV9FUVVBTABMRV9HUkVBVEVSAExFX1VOT1JERVJFRABMRV9SRVNVTFQAR0VfTEVTUwBHRV9FUVVBTABHRV9HUkVBVEVSAEdFX1VOT1JERVJFRABHRV9SRVNVTFQAdW5zaWduZWQgX19pbnQxMjgAX191aW50MTI4X3QAX19sZXRmMgBfX2dldGYyAF9fdW5vcmR0ZjIAYQBsb25nIGRvdWJsZQBmcF90AGIAYUludABfX2ludDEyOABfX2ludDEyOF90AHNyZXBfdABiSW50AGFBYnMAcmVwX3QAYkFicwBjbGFuZyB2ZXJzaW9uIDEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgpAHdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucy9leHRlbmRkZnRmMi5jAHdhc2lzZGs6Ly92MTEuMC9idWlsZC9jb21waWxlci1ydABzcmNTaWdCaXRzAGludABkc3RTaWdCaXRzAGxvbmcgbG9uZyB1bnNpZ25lZCBpbnQAdWludDY0X3QAc3JjX3JlcF90AHVuc2lnbmVkIF9faW50MTI4AF9fdWludDEyOF90AGRzdF9yZXBfdABzcmNUb1JlcAB4AGRvdWJsZQBzcmNfdAByZXAAZgBpAF9fZXh0ZW5kWGZZZjJfXwBsb25nIGRvdWJsZQBkc3RfdABhAHNyY0JpdHMAc3JjRXhwQml0cwBzcmNJbmZFeHAAc3JjRXhwQmlhcwBzcmNNaW5Ob3JtYWwAc3JjSW5maW5pdHkAc3JjU2lnbk1hc2sAc3JjQWJzTWFzawBzcmNRTmFOAHNyY05hTkNvZGUAZHN0Qml0cwBkc3RFeHBCaXRzAGRzdEluZkV4cABkc3RFeHBCaWFzAGRzdE1pbk5vcm1hbABhUmVwAHNpZ24AYUFicwBhYnNSZXN1bHQAcmVzdWx0AHNjYWxlAHJlc3VsdEV4cG9uZW50AHNyY19yZXBfdF9jbHoAX19leHRlbmRkZnRmMgBmcF90AGNsYW5nIHZlcnNpb24gMTAuMC4wIChodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QgZDMyMTcwZGJkNWIwZDU0NDM2NTM3YjZiNzViZWFmNDQzMjRlMGMyOCkAd2FzaXNkazovL3YxMS4wL3NyYy9sbHZtLXByb2plY3QvY29tcGlsZXItcnQvbGliL2J1aWx0aW5zL2ZpeHRmc2kuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAaW50AHNpX2ludABmaXhpbnRfdAB1bnNpZ25lZCBpbnQAc3VfaW50AGZpeHVpbnRfdAB1bnNpZ25lZCBfX2ludDEyOABfX3VpbnQxMjhfdABfX2ZpeGludABhAGxvbmcgZG91YmxlAGZwX3QAc2lnbmlmaWNhbmQAcmVwX3QAYUFicwBzaWduAGFSZXAAZml4aW50X21heABmaXhpbnRfbWluAGV4cG9uZW50AF9fZml4dGZzaQBjbGFuZyB2ZXJzaW9uIDEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgpAHdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucy9mbG9hdGRpdGYuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAbG9uZyBsb25nIHVuc2lnbmVkIGludABkdV9pbnQAdW5zaWduZWQgX19pbnQxMjgAX191aW50MTI4X3QAcmVwX3QAX19mbG9hdGRpdGYAbG9uZyBkb3VibGUAZnBfdABhAGxvbmcgbG9uZyBpbnQAZGlfaW50AGFXaWR0aABpbnQAc2lnbgBhQWJzAGV4cG9uZW50AHNoaWZ0AHJlc3VsdABjbGFuZyB2ZXJzaW9uIDEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgpAHdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucy9mbG9hdHNpdGYuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAdW5zaWduZWQgaW50AHVuc2lnbmVkIF9faW50MTI4AF9fdWludDEyOF90AHJlcF90AF9fZmxvYXRzaXRmAGxvbmcgZG91YmxlAGZwX3QAYVdpZHRoAGludABhAHNpZ24AYUFicwBleHBvbmVudABzaGlmdAByZXN1bHQAY2xhbmcgdmVyc2lvbiAxMC4wLjAgKGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdCBkMzIxNzBkYmQ1YjBkNTQ0MzY1MzdiNmI3NWJlYWY0NDMyNGUwYzI4KQB3YXNpc2RrOi8vdjExLjAvc3JjL2xsdm0tcHJvamVjdC9jb21waWxlci1ydC9saWIvYnVpbHRpbnMvdHJ1bmN0ZmRmMi5jAHdhc2lzZGs6Ly92MTEuMC9idWlsZC9jb21waWxlci1ydABzcmNTaWdCaXRzAGludABkc3RTaWdCaXRzAHVuc2lnbmVkIF9faW50MTI4AF9fdWludDEyOF90AHNyY19yZXBfdABsb25nIGxvbmcgdW5zaWduZWQgaW50AHVpbnQ2NF90AGRzdF9yZXBfdABfX3RydW5jWGZZZjJfXwBkb3VibGUAZHN0X3QAYQBsb25nIGRvdWJsZQBzcmNfdABhUmVwAHNpZ24Ac3JjQml0cwBzcmNFeHBCaXRzAHNyY0luZkV4cABzcmNFeHBCaWFzAHNyY01pbk5vcm1hbABzcmNTaWduaWZpY2FuZE1hc2sAc3JjSW5maW5pdHkAc3JjU2lnbk1hc2sAc3JjQWJzTWFzawByb3VuZE1hc2sAaGFsZndheQBzcmNRTmFOAHNyY05hTkNvZGUAZHN0Qml0cwBkc3RFeHBCaXRzAGRzdEluZkV4cABkc3RFeHBCaWFzAHVuZGVyZmxvd0V4cG9uZW50AG92ZXJmbG93RXhwb25lbnQAdW5kZXJmbG93AG92ZXJmbG93AGRzdFFOYU4AZHN0TmFOQ29kZQBhQWJzAGFic1Jlc3VsdAByZXN1bHQAcm91bmRCaXRzAHNoaWZ0AHNpZ25pZmljYW5kAGFFeHAAZGVub3JtYWxpemVkU2lnbmlmaWNhbmQAc3RpY2t5AF9Cb29sAGRzdEZyb21SZXAAeAByZXAAZgBpAF9fdHJ1bmN0ZmRmMgBjbGFuZyB2ZXJzaW9uIDEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgpAHdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucy9hZGR0ZjMuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAdW5zaWduZWQgX19pbnQxMjgAX191aW50MTI4X3QAcmVwX3QAX19hZGRYZjNfXwBsb25nIGRvdWJsZQBmcF90AGEAYgBhUmVwAGFBYnMAYlJlcABiQWJzAGFTaWduaWZpY2FuZABiU2lnbmlmaWNhbmQAYkV4cG9uZW50AGludABhRXhwb25lbnQAcmVzdWx0U2lnbgBhbGlnbgB1bnNpZ25lZCBpbnQAcmVzdWx0AHJvdW5kR3VhcmRTdGlja3kAc3VidHJhY3Rpb24AX0Jvb2wAdGVtcABzdGlja3kAc2hpZnQAbm9ybWFsaXplAHNpZ25pZmljYW5kAHJlcF9jbHoAdXUAbGwAcwBsb3cAbG9uZyBsb25nIHVuc2lnbmVkIGludAB1aW50NjRfdABoaWdoAHdvcmQAYWRkAF9fYWRkdGYzAGNsYW5nIHZlcnNpb24gMTAuMC4wIChodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QgZDMyMTcwZGJkNWIwZDU0NDM2NTM3YjZiNzViZWFmNDQzMjRlMGMyOCkAd2FzaXNkazovL3YxMS4wL3NyYy9sbHZtLXByb2plY3QvY29tcGlsZXItcnQvbGliL2J1aWx0aW5zL2FzaGx0aTMuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAaW50AF9fYXNobHRpMwBfX2ludDEyOAB0aV9pbnQAYgBzaV9pbnQAaW5wdXQAYWxsAHMAbG93AGxvbmcgbG9uZyB1bnNpZ25lZCBpbnQAZHVfaW50AGhpZ2gAbG9uZyBsb25nIGludABkaV9pbnQAdHdvcmRzAGEAYml0c19pbl9kd29yZAByZXN1bHQAY2xhbmcgdmVyc2lvbiAxMC4wLjAgKGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdCBkMzIxNzBkYmQ1YjBkNTQ0MzY1MzdiNmI3NWJlYWY0NDMyNGUwYzI4KQB3YXNpc2RrOi8vdjExLjAvc3JjL2xsdm0tcHJvamVjdC9jb21waWxlci1ydC9saWIvYnVpbHRpbnMvZGl2dGYzLmMAd2FzaXNkazovL3YxMS4wL2J1aWxkL2NvbXBpbGVyLXJ0AHVuc2lnbmVkIF9faW50MTI4AF9fdWludDEyOF90AHJlcF90AGxvbmcgbG9uZyB1bnNpZ25lZCBpbnQAdWludDY0X3QAbm9ybWFsaXplAGludABzaWduaWZpY2FuZABzaGlmdAByZXBfY2x6AGEAdXUAbGwAcwBsb3cAaGlnaAB3b3JkAGFkZAB3aWRlTXVsdGlwbHkAYgBoaQBsbwBzdW0wAHByb2R1Y3QxMwBwcm9kdWN0MTQAcHJvZHVjdDIxAHByb2R1Y3QyMgBwcm9kdWN0MjMAcHJvZHVjdDI0AHByb2R1Y3QxMQBwcm9kdWN0MTIAcHJvZHVjdDQxAHByb2R1Y3Q0MgBzdW0zAHN1bTQAc3VtNQBzdW02AHN1bTIAcHJvZHVjdDMxAHByb2R1Y3QzMgByMQByMABwcm9kdWN0NDQAcHJvZHVjdDQzAHByb2R1Y3QzNABzdW0xAHByb2R1Y3QzMwBfX2RpdnRmMwBsb25nIGRvdWJsZQBmcF90AGJTaWduaWZpY2FuZABhU2lnbmlmaWNhbmQAcXVvdGllbnRTaWduAGJFeHBvbmVudAB1bnNpZ25lZCBpbnQAc2NhbGUAYUV4cG9uZW50AGFBYnMAYkFicwBxNjNiAGNIaQByZWNpcDY0AGNvcnJlY3Rpb242NAByNjRxMTI3AHI2NGNIAHI2NGNMAHJlY2lwcm9jYWwAcXVvdGllbnRFeHBvbmVudAByNjRxNjMAcTEyN2JsbwBjTG8AY29ycmVjdGlvbgBxdW90aWVudABxYgByZXNpZHVhbAB3cml0dGVuRXhwb25lbnQAYWJzUmVzdWx0AHJvdW5kAF9Cb29sAHJlc3VsdABkdW1teQBxdW90aWVudExvAGNsYW5nIHZlcnNpb24gMTAuMC4wIChodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QgZDMyMTcwZGJkNWIwZDU0NDM2NTM3YjZiNzViZWFmNDQzMjRlMGMyOCkAd2FzaXNkazovL3YxMS4wL3NyYy9sbHZtLXByb2plY3QvY29tcGlsZXItcnQvbGliL2J1aWx0aW5zL2ZwX21vZGUuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAdW5zaWduZWQgaW50AEZFX1RPTkVBUkVTVABGRV9ET1dOV0FSRABGRV9VUFdBUkQARkVfVE9XQVJEWkVSTwBfX2ZlX2dldHJvdW5kAEZFX1JPVU5EX01PREUAX19mZV9yYWlzZV9pbmV4YWN0AGludABjbGFuZyB2ZXJzaW9uIDEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgpAHdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucy9sc2hydGkzLmMAd2FzaXNkazovL3YxMS4wL2J1aWxkL2NvbXBpbGVyLXJ0AGludABfX2xzaHJ0aTMAX19pbnQxMjgAdGlfaW50AGIAc2lfaW50AGlucHV0AGFsbAB1bnNpZ25lZCBfX2ludDEyOAB0dV9pbnQAcwBsb3cAbG9uZyBsb25nIHVuc2lnbmVkIGludABkdV9pbnQAaGlnaAB1dHdvcmRzAGEAYml0c19pbl9kd29yZAByZXN1bHQAY2xhbmcgdmVyc2lvbiAxMC4wLjAgKGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdCBkMzIxNzBkYmQ1YjBkNTQ0MzY1MzdiNmI3NWJlYWY0NDMyNGUwYzI4KQB3YXNpc2RrOi8vdjExLjAvc3JjL2xsdm0tcHJvamVjdC9jb21waWxlci1ydC9saWIvYnVpbHRpbnMvbXVsdGkzLmMAd2FzaXNkazovL3YxMS4wL2J1aWxkL2NvbXBpbGVyLXJ0AGludABsb25nIGxvbmcgdW5zaWduZWQgaW50AGR1X2ludABfX211bGRkaTMAX19pbnQxMjgAdGlfaW50AGEAYgByAGFsbABzAGxvdwBoaWdoAGxvbmcgbG9uZyBpbnQAZGlfaW50AHR3b3JkcwBiaXRzX2luX2R3b3JkXzIAbG93ZXJfbWFzawB0AF9fbXVsdGkzAHkAeABjbGFuZyB2ZXJzaW9uIDEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgpAHdhc2lzZGs6Ly92MTEuMC9zcmMvbGx2bS1wcm9qZWN0L2NvbXBpbGVyLXJ0L2xpYi9idWlsdGlucy9tdWx0ZjMuYwB3YXNpc2RrOi8vdjExLjAvYnVpbGQvY29tcGlsZXItcnQAdW5zaWduZWQgX19pbnQxMjgAX191aW50MTI4X3QAdW5zaWduZWQgaW50AHJlcF90AGxvbmcgbG9uZyB1bnNpZ25lZCBpbnQAdWludDY0X3QAX19tdWxYZjNfXwBsb25nIGRvdWJsZQBmcF90AGEAYgBiU2lnbmlmaWNhbmQAYVNpZ25pZmljYW5kAHByb2R1Y3RTaWduAGJFeHBvbmVudABzY2FsZQBpbnQAYUV4cG9uZW50AHByb2R1Y3RFeHBvbmVudABwcm9kdWN0SGkAcHJvZHVjdExvAGFBYnMAYkFicwBzaGlmdABub3JtYWxpemUAc2lnbmlmaWNhbmQAcmVwX2NsegB1dQBsbABzAGxvdwBoaWdoAHdvcmQAYWRkAHdpZGVNdWx0aXBseQBoaQBsbwBzdW00AHN1bTAAc3VtNgBwcm9kdWN0NDMAcHJvZHVjdDM0AHN1bTEAcHJvZHVjdDQ0AHIwAHByb2R1Y3QzMwBwcm9kdWN0MjQAcHJvZHVjdDQyAHN1bTIAcHJvZHVjdDIzAHByb2R1Y3QxNABwcm9kdWN0MzIAcHJvZHVjdDQxAHN1bTMAcjEAcHJvZHVjdDIyAHByb2R1Y3QxMwBwcm9kdWN0MzEAcHJvZHVjdDExAHByb2R1Y3QyMQBwcm9kdWN0MTIAc3VtNQB3aWRlTGVmdFNoaWZ0AGNvdW50AHdpZGVSaWdodFNoaWZ0V2l0aFN0aWNreQBzdGlja3kAX0Jvb2wAX19tdWx0ZjMAY2xhbmcgdmVyc2lvbiAxMC4wLjAgKGh0dHBzOi8vZ2l0aHViLmNvbS9sbHZtL2xsdm0tcHJvamVjdCBkMzIxNzBkYmQ1YjBkNTQ0MzY1MzdiNmI3NWJlYWY0NDMyNGUwYzI4KQB3YXNpc2RrOi8vdjExLjAvc3JjL2xsdm0tcHJvamVjdC9jb21waWxlci1ydC9saWIvYnVpbHRpbnMvc3VidGYzLmMAd2FzaXNkazovL3YxMS4wL2J1aWxkL2NvbXBpbGVyLXJ0AHVuc2lnbmVkIF9faW50MTI4AF9fdWludDEyOF90AF9fc3VidGYzAGxvbmcgZG91YmxlAGZwX3QAYQBiAACbugEEbmFtZQGSugG3CQALanNfdGltZXpvbmUBB2pzX29wZW4CCWpzX2RlbGV0ZQMJanNfZXhpc3RzBAlqc19hY2Nlc3MFB2pzX3RpbWUGCGpzX2Nsb3NlBwdqc19yZWFkCAhqc193cml0ZQkLanNfdHJ1bmNhdGUKB2pzX3N5bmMLB2pzX3NpemUMB2pzX2xvY2sNCWpzX3VubG9jaw4LbG9jYWx0aW1lX3IPCGRlbm9PcGVuEApkZW5vRGVsZXRlEQpkZW5vQWNjZXNzEhBkZW5vRnVsbFBhdGhuYW1lEwpkZW5vRGxPcGVuFAtkZW5vRGxFcnJvchUJZGVub0RsU3ltFgtkZW5vRGxDbG9zZRcOZGVub1JhbmRvbW5lc3MYCWRlbm9TbGVlcBkPZGVub0N1cnJlbnRUaW1lGg9zcWxpdGUzX29zX2luaXQbCWRlbm9DbG9zZRwIZGVub1JlYWQdCWRlbm9Xcml0ZR4MZGVub1RydW5jYXRlHwhkZW5vU3luYyAMZGVub0ZpbGVTaXplIQhkZW5vTG9jayIKZGVub1VubG9jayMVZGVub0NoZWNrUmVzZXJ2ZWRMb2NrJA9kZW5vRmlsZUNvbnRyb2wlDmRlbm9TZWN0b3JTaXplJhlkZW5vRGV2aWNlQ2hhcmFjdGVyaXN0aWNzJwdzdHJfbGVuKAhzZWVkX3JuZykKZ2V0X3N0YXR1cyoEb3BlbisFY2xvc2UsFGdldF9zcWxpdGVfZXJyb3Jfc3RyLQdwcmVwYXJlLghmaW5hbGl6ZS8FcmVzZXQwDmNsZWFyX2JpbmRpbmdzMQhiaW5kX2ludDILYmluZF9kb3VibGUzCWJpbmRfdGV4dDQJYmluZF9ibG9iNQxiaW5kX2JpZ19pbnQ2CWJpbmRfbnVsbDcUYmluZF9wYXJhbWV0ZXJfaW5kZXg4BHN0ZXA5DGNvbHVtbl9jb3VudDoLY29sdW1uX3R5cGU7CmNvbHVtbl9pbnQ8DWNvbHVtbl9kb3VibGU9C2NvbHVtbl90ZXh0Pgtjb2x1bW5fYmxvYj8MY29sdW1uX2J5dGVzQAtjb2x1bW5fbmFtZUESY29sdW1uX29yaWdpbl9uYW1lQhFjb2x1bW5fdGFibGVfbmFtZUMRbGFzdF9pbnNlcnRfcm93aWREB2NoYW5nZXNFDXRvdGFsX2NoYW5nZXNGC3NxbGl0ZTNfbG9nRxRzcWxpdGUzTG9va2FzaWRlVXNlZEgUc3FsaXRlM0RlbGV0ZVRyaWdnZXJJEnNxbGl0ZTNEZWxldGVUYWJsZUoWc3FsaXRlM1ZkYmVDbGVhck9iamVjdEsPc3FsaXRlM0RiRnJlZU5OTBhzcWxpdGUzRGVsZXRlVHJpZ2dlclN0ZXBNE3NxbGl0ZTNFeHByRGVsZXRlTk5OE3NxbGl0ZTNJZExpc3REZWxldGVPC2RlbGV0ZVRhYmxlUA9yZWxlYXNlTWVtQXJyYXlRD3ZkYmVGcmVlT3BBcnJheVINc3FsaXRlM0RiRnJlZVMQc3FsaXRlM192ZnNfZmluZFQSc3FsaXRlM19pbml0aWFsaXplVQ5zcWxpdGUzX2NvbmZpZ1YZc3FsaXRlM0luc2VydEJ1aWx0aW5GdW5jc1cNc3FsaXRlM01hbGxvY1gMc3FsaXRlM19mcmVlWRRzcWxpdGUzX3Zmc19yZWdpc3RlcloJdmZzVW5saW5rWxlzcWxpdGUzX3NvZnRfaGVhcF9saW1pdDY0XBlzcWxpdGUzX2hhcmRfaGVhcF9saW1pdDY0XQ5zcWxpdGUzX21hbGxvY14Oc3FsaXRlM1JlYWxsb2NfFHNxbGl0ZTNfc3RyX3ZhcHBlbmRmYBJzcWxpdGUzX3N0cl9hcHBlbmRhE3NxbGl0ZTNWZGJlSW50VmFsdWViFHNxbGl0ZTNWZGJlUmVhbFZhbHVlYxBzcWxpdGUzVmFsdWVUZXh0ZBZzcWxpdGUzX3N0cl9hcHBlbmRjaGFyZQ1wcmludGZUZW1wQnVmZhVzcWxpdGUzX3N0cl9hcHBlbmRhbGxnEGVubGFyZ2VBbmRBcHBlbmRoE3NxbGl0ZTNfc3RyX2FwcGVuZGZpC2V0X2dldGRpZ2l0ahBzZXRTdHJBY2N1bUVycm9yaxRzcWxpdGUzRGJNYWxsb2NSYXdOTmwRc3FsaXRlM19zdHJfcmVzZXRtFnNxbGl0ZTNTdHJBY2N1bUVubGFyZ2VuEHNxbGl0ZTNEYlJlYWxsb2NvFXNxbGl0ZTNTdHJBY2N1bUZpbmlzaHAVc3RyQWNjdW1GaW5pc2hSZWFsbG9jcRBzcWxpdGUzX3ZtcHJpbnRmcg9zcWxpdGUzX21wcmludGZzEHNxbGl0ZTNfc25wcmludGZ0EnNxbGl0ZTNfcmFuZG9tbmVzc3UPc3FsaXRlM19zdHJpY21wdg5zcWxpdGUzU3RySUNtcHcQc3FsaXRlM19zdHJuaWNtcHgTc3FsaXRlM0Vycm9yV2l0aE1zZ3kSc3FsaXRlM0Vycm9yRmluaXNoeg9zcWxpdGUzVk1QcmludGZ7D3NxbGl0ZTNPb21GYXVsdHwUc3FsaXRlM1ZkYmVNZW1TZXRTdHJ9EXNxbGl0ZTNGaW5kRGJOYW1lfhdzcWxpdGUzT3BlblRlbXBEYXRhYmFzZX8Sc3FsaXRlM1BhcnNlclJlc2V0gAETc3FsaXRlM19iYWNrdXBfc3RlcIEBFnNxbGl0ZTNCdHJlZUJlZ2luVHJhbnOCARdzcWxpdGUzQnRyZWVTZXRQYWdlU2l6ZYMBDWJhY2t1cE9uZVBhZ2WEARhzcWxpdGUzUGFnZXJVbnJlZk5vdE51bGyFAQtuZXdEYXRhYmFzZYYBFnNxbGl0ZTNCdHJlZVVwZGF0ZU1ldGGHASJzcWxpdGUzUmVzZXRBbGxTY2hlbWFzT2ZDb25uZWN0aW9uiAERc3FsaXRlM1BhZ2VyV3JpdGWJARpzcWxpdGUzUGFnZXJDb21taXRQaGFzZU9uZYoBEHNxbGl0ZTNQYWdlclN5bmOLARpzcWxpdGUzQnRyZWVDb21taXRQaGFzZVR3b4wBGnNxbGl0ZTNCdHJlZUNvbW1pdFBoYXNlT25ljQEWc3FsaXRlM1BhZ2VyU2hhcmVkTG9ja44BDGJ0cmVlR2V0UGFnZY8BDnJlbGVhc2VQYWdlT25lkAELcGNhY2hlMUZyZWWRARdzcWxpdGUzUGFnZXJTZXRQYWdlc2l6ZZIBC3BhZ2VyTG9ja0RikwEScGFnZXJPcGVuU2F2ZXBvaW50lAESc3FsaXRlM1NjaGVtYUNsZWFylQEVc3FsaXRlM1Z0YWJVbmxvY2tMaXN0lgEcc3FsaXRlM0NvbGxhcHNlRGF0YWJhc2VBcnJheZcBGHN1YmpvdXJuYWxQYWdlSWZSZXF1aXJlZJgBFXBhZ2VyV3JpdGVMYXJnZVNlY3RvcpkBC3BhZ2VyX3dyaXRlmgEScGFnZXJGbHVzaE9uQ29tbWl0mwEZcGFnZXJfd3JpdGVfY2hhbmdlY291bnRlcpwBC3N5bmNKb3VybmFsnQEWc3FsaXRlM1BjYWNoZURpcnR5TGlzdJ4BFHBhZ2VyX3dyaXRlX3BhZ2VsaXN0nwEWc3FsaXRlM1BjYWNoZU1ha2VDbGVhbqABDnBhZ2VyX3RydW5jYXRloQEVcGFnZXJfZW5kX3RyYW5zYWN0aW9uogEMZ2V0UGFnZUVycm9yowENZ2V0UGFnZU5vcm1hbKQBFHNxbGl0ZTNCaXR2ZWNEZXN0cm95pQETYnRyZWVFbmRUcmFuc2FjdGlvbqYBC2ZpbmFsRGJTaXplpwERc2F2ZUN1cnNvcnNPbkxpc3SoAQ5pbmNyVmFjdXVtU3RlcKkBFHNxbGl0ZTNQYWdlclJvbGxiYWNrqgEVc3FsaXRlM19iYWNrdXBfZmluaXNoqwEUc3FsaXRlM0J0cmVlUm9sbGJhY2usAR9zcWxpdGUzTGVhdmVNdXRleEFuZENsb3NlWm9tYmllrQEac3FsaXRlM0J0cmVlVHJpcEFsbEN1cnNvcnOuARBjb25uZWN0aW9uSXNCdXN5rwESc3FsaXRlM1JvbGxiYWNrQWxssAEWc3FsaXRlM0Nsb3NlU2F2ZXBvaW50c7EBEXNxbGl0ZTNCdHJlZUNsb3NlsgEPZnVuY3Rpb25EZXN0cm95swEQc3FsaXRlM0hhc2hDbGVhcrQBFnNxbGl0ZTNWdGFiTW9kdWxlVW5yZWa1ARBzcWxpdGUzVmFsdWVGcmVltgEQc3FsaXRlM19maW5hbGl6ZbcBE3NxbGl0ZTNWZGJlRmluYWxpemW4AQ5hcGlIYW5kbGVFcnJvcrkBEHNxbGl0ZTNWZGJlUmVzZXS6ARFzcWxpdGUzVmRiZURlbGV0ZbsBDXNxbGl0ZTNfcmVzZXS8AQ9zcWxpdGUzVmRiZUhhbHS9ARhzcWxpdGUzVmRiZVRyYW5zZmVyRXJyb3K+ARZzcWxpdGUzX2NsZWFyX2JpbmRpbmdzvwEMdmRiZU1lbUNsZWFywAESc3FsaXRlM192YWx1ZV9ibG9iwQEYc3FsaXRlM1ZkYmVNZW1FeHBhbmRCbG9iwgESc3FsaXRlM1ZkYmVNZW1Hcm93wwERc3FsaXRlM1ZhbHVlQnl0ZXPEAQp2YWx1ZUJ5dGVzxQEMbWVtUmVhbFZhbHVlxgENZG91YmxlVG9JbnQ2NMcBC21lbUludFZhbHVlyAELdmFsdWVUb1RleHTJARFzcWxpdGUzX3ZhbHVlX2R1cMoBG3NxbGl0ZTNWZGJlTWVtTWFrZVdyaXRlYWJsZcsBFHZkYmVNZW1BZGRUZXJtaW5hdG9yzAETc2V0UmVzdWx0U3RyT3JFcnJvcs0BFXNxbGl0ZTNfcmVzdWx0X2Jsb2I2NM4BF3NxbGl0ZTNWZGJlTWVtU2V0RG91YmxlzwEcdmRiZU1lbUNsZWFyRXh0ZXJuQW5kU2V0TnVsbNABFnZkYmVSZWxlYXNlQW5kU2V0SW50NjTRARVzcWxpdGUzX3Jlc3VsdF90ZXh0NjTSARJzcWxpdGUzVmRiZU1lbUNvcHnTARlzcWxpdGUzVmRiZU1lbVNldFplcm9CbG9i1AEZc3FsaXRlM19yZXN1bHRfZXJyb3JfY29kZdUBGnNxbGl0ZTNfcmVzdWx0X2Vycm9yX25vbWVt1gEMc3FsaXRlM19zdGVw1wERdmRiZVNhZmV0eU5vdE51bGzYARBzcWxpdGUzVmRiZUVycm9y2QEPc3FsaXRlM1ZkYmVFeGVj2gEVc3FsaXRlM0xvY2tBbmRQcmVwYXJl2wEPc3FsaXRlM0RiU3RyRHVw3AEQY3JlYXRlQWdnQ29udGV4dN0BE3NxbGl0ZTNfc2V0X2F1eGRhdGHeARRzcWxpdGUzX2NvbHVtbl9jb3VudN8BE3NxbGl0ZTNfY29sdW1uX2Jsb2LgAQljb2x1bW5NZW3hARRzcWxpdGUzX2NvbHVtbl9ieXRlc+IBFXNxbGl0ZTNfY29sdW1uX2RvdWJsZeMBFHNxbGl0ZTNfY29sdW1uX2ludDY05AETc3FsaXRlM19jb2x1bW5fdGV4dOUBFHNxbGl0ZTNfY29sdW1uX3ZhbHVl5gETc3FsaXRlM19jb2x1bW5fdHlwZecBE3NxbGl0ZTNfY29sdW1uX25hbWXoAQpjb2x1bW5OYW1l6QEZc3FsaXRlM19jb2x1bW5fdGFibGVfbmFtZeoBGnNxbGl0ZTNfY29sdW1uX29yaWdpbl9uYW1l6wERc3FsaXRlM19iaW5kX2Jsb2LsAQhiaW5kVGV4dO0BCnZkYmVVbmJpbmTuARNzcWxpdGUzX2JpbmRfZG91Ymxl7wESc3FsaXRlM19iaW5kX2ludDY08AERc3FsaXRlM19iaW5kX251bGzxARFzcWxpdGUzX2JpbmRfdGV4dPIBHHNxbGl0ZTNfYmluZF9wYXJhbWV0ZXJfaW5kZXjzARVzcWxpdGUzVkxpc3ROYW1lVG9OdW30ARpzcWxpdGUzX3ZhbHVlX251bWVyaWNfdHlwZfUBFGFwcGx5TnVtZXJpY0FmZmluaXR59gELc3FsaXRlM0F0b0b3AQ1zcWxpdGUzQXRvaTY0+AEac3FsaXRlM1ZkYmVJbnRlZ2VyQWZmaW5pdHn5ARJzcWxpdGUzTG9jYXRlVGFibGX6AQ9zcWxpdGUzRXJyb3JNc2f7AQ5zcWxpdGUzTVByaW50ZvwBEXNxbGl0ZTNWZGJlQ3JlYXRl/QERc3FsaXRlM1ZkYmVBZGRPcDP+ARRzcWxpdGUzVmRiZUFkZE9wTGlzdP8BFHNxbGl0ZTNWZGJlTWFrZVJlYWR5gAIRc3FsaXRlM1JlYWRTY2hlbWGBAhBzcWxpdGUzRmluZFRhYmxlggITZmluZEVsZW1lbnRXaXRoSGFzaIMCDHByYWdtYUxvY2F0ZYQCF3NxbGl0ZTNWdGFiQ3JlYXRlTW9kdWxlhQIRYWRkTW9kdWxlQXJndW1lbnSGAhN2dGFiQ2FsbENvbnN0cnVjdG9yhwILZ3Jvd09wQXJyYXmIAg9yZXNvbHZlUDJWYWx1ZXOJAhVzcWxpdGUzVmRiZVNldE51bUNvbHOKAg5zcWxpdGUzX2Vycm1zZ4sCEGV4cHJMaXN0RGVsZXRlTk6MAg1hY2Nlc3NQYXlsb2FkjQIaYnRyZWVSZXN0b3JlQ3Vyc29yUG9zaXRpb26OAg5zYXZlQWxsQ3Vyc29yc48CDnBhdHRlcm5Db21wYXJlkAIPc3FsaXRlM1V0ZjhSZWFkkQIMc3FsaXRlM19leGVjkgIUc3FsaXRlM1NhZmV0eUNoZWNrT2uTAhpzcWxpdGUzU2FmZXR5Q2hlY2tTaWNrT3JPa5QCEnNxbGl0ZTNfcHJlcGFyZV92MpUCEnNxbGl0ZTNEYk1hbGxvY1Jhd5YCDnNxbGl0ZTNQcmVwYXJllwIVc3FsaXRlM1Jlc2V0T25lU2NoZW1hmAIMY3JlYXRlTW9kdWxlmQIUc3FsaXRlM19kZWNsYXJlX3Z0YWKaAhBzcWxpdGUzUnVuUGFyc2VymwIPc3FsaXRlM0dldFRva2VunAIIZ2V0VG9rZW6dAg95eVN0YWNrT3ZlcmZsb3eeAgl5eV9yZWR1Y2WfAg15eV9kZXN0cnVjdG9yoAITc3FsaXRlM192dGFiX2NvbmZpZ6ECGXNxbGl0ZTNFeHByQ29tcGFyZUNvbGxTZXGiAhtzcWxpdGUzQmluYXJ5Q29tcGFyZUNvbGxTZXGjAgtrZXl3b3JkQ29kZaQCGXNxbGl0ZTNfZGJfcmVsZWFzZV9tZW1vcnmlAgtwYWdlclN0cmVzc6YCDnNldHVwTG9va2FzaWRlpwIZc3FsaXRlM19sYXN0X2luc2VydF9yb3dpZKgCD3NxbGl0ZTNfY2hhbmdlc6kCFXNxbGl0ZTNfdG90YWxfY2hhbmdlc6oCDXNxbGl0ZTNfY2xvc2WrAgxzcWxpdGUzQ2xvc2WsAhFzcWxpdGUzVnRhYlVubG9ja60CDWNhbGxGaW5hbGlzZXKuAhlzcWxpdGVEZWZhdWx0QnVzeUNhbGxiYWNrrwIRY3JlYXRlRnVuY3Rpb25BcGmwAhFzcWxpdGUzQ3JlYXRlRnVuY7ECGXNxbGl0ZTNfb3ZlcmxvYWRfZnVuY3Rpb26yAhNzcWxpdGUzRmluZEZ1bmN0aW9uswIWc3FsaXRlM0ludmFsaWRGdW5jdGlvbrQCDG1hdGNoUXVhbGl0ebUCFXNxbGl0ZTNGdW5jdGlvblNlYXJjaLYCEXNxbGl0ZTNIYXNoSW5zZXJ0twIPc3FsaXRlM19lcnJjb2RluAIMb3BlbkRhdGFiYXNluQILYmluQ29sbEZ1bmO6Ag9jcmVhdGVDb2xsYXRpb267AhNub2Nhc2VDb2xsYXRpbmdGdW5jvAINcnRyaW1Db2xsRnVuY70CD3NxbGl0ZTNQYXJzZVVyab4CEHNxbGl0ZTNCdHJlZU9wZW6/AhBzcWxpdGUzU2NoZW1hR2V0wAIVc3FsaXRlM19mcmVlX2ZpbGVuYW1lwQIPc3FsaXRlM19vcGVuX3YywgISc3FsaXRlM0ZpbmRDb2xsU2VxwwILc3FsaXRlM0luaXTEAg5zcWxpdGUzSXNSb3dpZMUCDnNxbGl0ZTNJbml0T25lxgIUc3FsaXRlM19maWxlX2NvbnRyb2zHAhBzcWxpdGUzQml0dmVjU2V0yAISc3FsaXRlM0JpdHZlY0NsZWFyyQIYc3FsaXRlM0JpdHZlY1Rlc3ROb3ROdWxsygIVc3FsaXRlM191cmlfcGFyYW1ldGVyywITc3FsaXRlM191cmlfYm9vbGVhbswCDmdldFNhZmV0eUxldmVszQIUc3FsaXRlM0RlY09ySGV4VG9JNjTOAhpzcWxpdGUzX2NvbXBpbGVvcHRpb25fdXNlZM8CFW1lYXN1cmVBbGxvY2F0aW9uU2l6ZdACD2RiUmVhbGxvY0ZpbmlzaNECEWRiTWFsbG9jUmF3RmluaXNo0gINc2V0U2VjdG9yU2l6ZdMCGHNxbGl0ZTNQY2FjaGVTZXRQYWdlU2l6ZdQCCnBhZ2VSZWluaXTVAhZidHJlZUludm9rZUJ1c3lIYW5kbGVy1gIRc3FsaXRlM1BhZ2VyQ2xvc2XXAg1idHJlZUluaXRQYWdl2AIMcGNhY2hlMUFsbG9j2QILcGFnZXJfcmVzZXTaAgxwYWdlcl91bmxvY2vbAhNwYWdlclN5bmNIb3RKb3VybmFs3AIWcGFnZXJVbmxvY2tBbmRSb2xsYmFja90CGHNxbGl0ZTNCdHJlZVNldENhY2hlU2l6Zd4CGXNxbGl0ZTNQYWdlckV4Y2x1c2l2ZUxvY2vfAg93cml0ZUpvdXJuYWxIZHLgAgxiYWNrdXBVcGRhdGXhAhVwY2FjaGVNYW5hZ2VEaXJ0eUxpc3TiAhhzcWxpdGUzUGNhY2hlRmV0Y2hGaW5pc2jjAhVhZGRUb1NhdmVwb2ludEJpdHZlY3PkAhFzcWxpdGUzUGNhY2hlRHJvcOUCGXBjYWNoZUZldGNoRmluaXNoV2l0aEluaXTmAg5wYWdlcl9wbGF5YmFja+cCFHJlbGVhc2VBbGxTYXZlcG9pbnRz6AIVc3FsaXRlM1BjYWNoZVRydW5jYXRl6QIQcmVhZFN1cGVySm91cm5hbOoCDnJlYWRKb3VybmFsSGRy6wIXcGFnZXJfcGxheWJhY2tfb25lX3BhZ2XsAgpyZWFkMzJiaXRz7QISc3FsaXRlM1BhZ2VyTG9va3Vw7gIWc3FsaXRlM1BjYWNoZU1ha2VEaXJ0ee8CFHNxbGl0ZTNQY2FjaGVSZWxlYXNl8AIMbWVtanJubENsb3Nl8QILbWVtanJubFJlYWTyAgxtZW1qcm5sV3JpdGXzAg9tZW1qcm5sVHJ1bmNhdGX0AgttZW1qcm5sU3luY/UCD21lbWpybmxGaWxlU2l6ZfYCC2RlY29kZUZsYWdz9wISYnRyZWVDZWxsU2l6ZUNoZWNr+AILY2VsbFNpemVQdHL5AhFidHJlZVBhcnNlQ2VsbFB0cvoCFGNlbGxTaXplUHRyTm9QYXlsb2Fk+wIaYnRyZWVQYXJzZUNlbGxQdHJOb1BheWxvYWT8AhZidHJlZVBhcnNlQ2VsbFB0ckluZGV4/QIjYnRyZWVQYXJzZUNlbGxBZGp1c3RTaXplRm9yT3ZlcmZsb3f+AhBzcWxpdGUzR2V0VmFyaW50/wIIemVyb1BhZ2WAAw5wYWdlclBhZ2Vjb3VudIEDHXBhZ2VyQWRkUGFnZVRvUm9sbGJhY2tKb3VybmFsggMJcHRybWFwR2V0gwMRYWxsb2NhdGVCdHJlZVBhZ2WEAwxyZWxvY2F0ZVBhZ2WFAxJzYXZlQ3Vyc29yUG9zaXRpb26GAxpidHJlZVJlbGVhc2VBbGxDdXJzb3JQYWdlc4cDDXNhdmVDdXJzb3JLZXmIAwtnZXRDZWxsSW5mb4kDD2dldE92ZXJmbG93UGFnZYoDEmJ0cmVlR2V0VW51c2VkUGFnZYsDEXNxbGl0ZTNQY2FjaGVNb3ZljAMJcHRybWFwUHV0jQMPc2V0Q2hpbGRQdHJtYXBzjgMQcHRybWFwUHV0T3ZmbFB0co8DBmZyZWVQNJADDWZyZWVQNEZ1bmNDdHiRAwlmcmVlUDRNZW2SAxdzcWxpdGUzVmRiZUZyYW1lUmVzdG9yZZMDE2Nsb3NlQ3Vyc29yc0luRnJhbWWUAxVzcWxpdGUzVmRiZUZyZWVDdXJzb3KVAxhzcWxpdGUzVmRiZURlbGV0ZUF1eERhdGGWAxdzcWxpdGUzVnRhYkltcG9ydEVycm1zZ5cDE3NxbGl0ZTNPc09wZW5NYWxsb2OYAxJ2ZGJlQ2xvc2VTdGF0ZW1lbnSZAxZzcWxpdGUzVmRiZVNvcnRlclJlc2V0mgMTdmRiZU1lcmdlRW5naW5lRnJlZZsDEnZkYmVQbWFSZWFkZXJDbGVhcpwDDHZkYmVJbmNyRnJlZZ0DFXNxbGl0ZTNCdHJlZVNhdmVwb2ludJ4DFHNxbGl0ZTNWdGFiU2F2ZXBvaW50nwMWc3FsaXRlM1ZkYmVNZW1GaW5hbGl6ZaADFnNxbGl0ZTNEYlJlYWxsb2NPckZyZWWhAxdzcWxpdGUzVmRiZU1lbVN0cmluZ2lmeaIDEnNxbGl0ZTNJbnQ2NFRvVGV4dKMDDHNxbGl0ZTNQb3cxMKQDF291dDJQcmVyZWxlYXNlV2l0aENsZWFypQMZc3FsaXRlM1ZkYmVNZW1TaGFsbG93Q29weaYDEmNvbXB1dGVOdW1lcmljVHlwZacDDWFwcGx5QWZmaW5pdHmoAxJzcWxpdGUzVmRiZU1lbUNhc3SpAxFzcWxpdGUzTWVtQ29tcGFyZaoDF3NxbGl0ZTNWZGJlQm9vbGVhblZhbHVlqwMXc3FsaXRlM1ZkYmVGaW5pc2hNb3ZldG+sAxFoYW5kbGVNb3ZlZEN1cnNvcq0DEnNxbGl0ZTNHZXRWYXJpbnQzMq4DIXNxbGl0ZTNWZGJlTWVtRnJvbUJ0cmVlWmVyb09mZnNldK8DEHNxbGl0ZTNQdXRWYXJpbnSwAxdzcWxpdGUzQnRyZWVSb3dDb3VudEVzdLEDCm1vdmVUb1Jvb3SyAwxtb3ZlVG9QYXJlbnSzAwttb3ZlVG9DaGlsZLQDE3NxbGl0ZTNCdHJlZUdldE1ldGG1Aw5hbGxvY2F0ZUN1cnNvcrYDEnNxbGl0ZTNCdHJlZUN1cnNvcrcDF3NxbGl0ZTNCdHJlZUNyZWF0ZVRhYmxluAMWc3FsaXRlM0J0cmVlQ2xlYXJUYWJsZbkDEHNxbGl0ZTNCdHJlZUxhc3S6AxpzcWxpdGUzQnRyZWVNb3ZldG9VbnBhY2tlZLsDEHNxbGl0ZTNCdHJlZU5leHS8AxRzcWxpdGUzQnRyZWVQcmV2aW91c70DIHNxbGl0ZTNWZGJlUmVjb3JkQ29tcGFyZVdpdGhTa2lwvgMec3FsaXRlM1ZkYmVBbGxvY1VucGFja2VkUmVjb3JkvwMXc3FsaXRlM1ZkYmVSZWNvcmRVbnBhY2vAAxJzcWxpdGUzQnRyZWVJbnNlcnTBAxJzcWxpdGUzQnRyZWVEZWxldGXCAxFzcWxpdGUzQnRyZWVGaXJzdMMDDXNxbGl0ZTNMb2dFc3TEAw52ZGJlU29ydGVyU29ydMUDEnZkYmVTb3J0ZXJGbHVzaFBNQcYDEnZkYmVNZXJnZUVuZ2luZU5ld8cDFXZkYmVNZXJnZUVuZ2luZUxldmVsMMgDEXZkYmVJbmNyTWVyZ2VyTmV3yQMTdmRiZU1lcmdlRW5naW5lSW5pdMoDCmdyb3dWVHJhbnPLAxBzcWxpdGUzUnVuVmFjdXVtzAMWc3FsaXRlM1ZkYmVGcmFtZU1lbURlbM0DF3NxbGl0ZTNWZGJlTWVtU2V0Um93U2V0zgMPcm93U2V0RW50cnlTb3J0zwMQcm93U2V0VHJlZVRvTGlzdNADEHJvd1NldEVudHJ5TWVyZ2XRAxByb3dTZXRFbnRyeUFsbG9j0gMQcm93U2V0TGlzdFRvVHJlZdMDE3NxbGl0ZTNSb3dTZXRJbnNlcnTUAxJzcWxpdGUzUm93U2V0Q2xlYXLVAwljaGVja0xpc3TWAw5jaGVja0FwcGVuZE1zZ9cDC2NoZWNrUHRybWFw2AMNY2hlY2tUcmVlUGFnZdkDEHNxbGl0ZTNGcmVlSW5kZXjaAxNzcWxpdGUzQW5hbHlzaXNMb2Fk2wMTc3FsaXRlM0luaXRDYWxsYmFja9wDCWZyZWVQYWdlMt0DFHNxbGl0ZTNWZGJlU2VyaWFsR2V03gMTdmRiZU1lcmdlRW5naW5lU3RlcN8DF3NxbGl0ZTNWZGJlTWVtRnJvbUJ0cmVl4AMLdmRiZUNsckNvcHnhAxZzcWxpdGUzVmRiZU1lbU51bWVyaWZ54gMUdmRiZUNvbXBhcmVNZW1TdHJpbmfjAxJzcWxpdGUzQmxvYkNvbXBhcmXkAwtwdXRWYXJpbnQ2NOUDC2J0cmVlQ3Vyc29y5gMRY2xlYXJEYXRhYmFzZVBhZ2XnAw9tb3ZlVG9SaWdodG1vc3ToAxhzcWxpdGUzVmRiZVJlY29yZENvbXBhcmXpAxR2ZGJlUmVjb3JkQ29tcGFyZUludOoDF3ZkYmVSZWNvcmRDb21wYXJlU3RyaW5n6wMObW92ZVRvTGVmdG1vc3TsAwlidHJlZU5leHTtAw1idHJlZVByZXZpb3Vz7gMZaW52YWxpZGF0ZUluY3JibG9iQ3Vyc29yc+8DEmJ0cmVlT3ZlcndyaXRlQ2VsbPADC2J0cmVlTW92ZXRv8QMVYnRyZWVDb21wdXRlRnJlZVNwYWNl8gMRY2xlYXJDZWxsT3ZlcmZsb3fzAwhkcm9wQ2VsbPQDCmluc2VydENlbGz1AwdiYWxhbmNl9gMQc3FsaXRlM1NldFN0cmluZ/cDEnNxbGl0ZTNCdHJlZUNvbW1pdPgDDWNvcnJ1cHRTY2hlbWH5AxBzcWxpdGUzR2V0VUludDMy+gMQc3FsaXRlM0ZpbmRJbmRlePsDDmFuYWx5c2lzTG9hZGVy/AMUc3FsaXRlM0RlZmF1bHRSb3dFc3T9AxNzcWxpdGUzUm93U2V0RGVsZXRl/gMIZXhlY1NxbEb/AxhzcWxpdGUzQnRyZWVTZXRTcGlsbFNpemWABAdleGVjU3FsgQQOZ2V0QW5kSW5pdFBhZ2WCBA9idHJlZVBhZ2VMb29rdXCDBBVidHJlZU92ZXJ3cml0ZUNvbnRlbnSEBAlmcmVlU3BhY2WFBAxwYWdlRmluZFNsb3SGBA5kZWZyYWdtZW50UGFnZYcED2NvcHlOb2RlQ29udGVudIgEC3JlYnVpbGRQYWdliQQPY29tcHV0ZUNlbGxTaXpligQNcGFnZUZyZWVBcnJheYsED3BhZ2VJbnNlcnRBcnJheYwEFHZkYmVTb3J0ZXJDb21wYXJlSW50jQQVdmRiZVNvcnRlckNvbXBhcmVUZXh0jgQRdmRiZVNvcnRlckNvbXBhcmWPBA92ZGJlU29ydGVyTWVyZ2WQBBZ2ZGJlU29ydGVyT3BlblRlbXBGaWxlkQQQdmRiZVBtYVdyaXRlQmxvYpIEE3ZkYmVQbWFXcml0ZXJGaW5pc2iTBBV2ZGJlU29ydGVyQ29tcGFyZVRhaWyUBBp2ZGJlUG1hUmVhZGVySW5jck1lcmdlSW5pdJUEEXZkYmVQbWFSZWFkZXJTZWVrlgQRdmRiZVBtYVJlYWRWYXJpbnSXBBF2ZGJlUG1hUmVhZGVyTmV4dJgED3ZkYmVQbWFSZWFkQmxvYpkEEHZkYmVJbmNyUG9wdWxhdGWaBA1pbnNlcnRFbGVtZW50mwQQc3FsaXRlM0RiSXNOYW1lZJwEDmRlY29kZUludEFycmF5nQQPc3FsaXRlM0dldEludDMyngQVc3FsaXRlM0V4cHJMaXN0RGVsZXRlnwQLY2xlYXJTZWxlY3SgBBNzcWxpdGUzV2luZG93RGVsZXRloQQUc3FsaXRlM1NyY0xpc3REZWxldGWiBBFzcWxpdGUzV2l0aERlbGV0ZaMECGN0ZUNsZWFypAQIY2hlY2tSZWalBA9idHJlZUhlYXBJbnNlcnSmBA9yb3dTZXRORGVlcFRyZWWnBBlzcWxpdGUzQnRyZWVTZXRQYWdlckZsYWdzqAQHZ3Jvd09wM6kEEXByYWdtYVZ0YWJDb25uZWN0qgQTcHJhZ21hVnRhYkJlc3RJbmRleKsEFHByYWdtYVZ0YWJEaXNjb25uZWN0rAQOcHJhZ21hVnRhYk9wZW6tBA9wcmFnbWFWdGFiQ2xvc2WuBBVwcmFnbWFWdGFiQ3Vyc29yQ2xlYXKvBBBwcmFnbWFWdGFiRmlsdGVysAQOcHJhZ21hVnRhYk5leHSxBA1wcmFnbWFWdGFiRW9msgQQcHJhZ21hVnRhYkNvbHVtbrMED3ByYWdtYVZ0YWJSb3dpZLQED2ZrVHJpZ2dlckRlbGV0ZbUEGHNxbGl0ZTNEZWxldGVDb2x1bW5OYW1lc7YEDHVwc2VydERlbGV0ZbcEEnNxbGl0ZTNFeHByQ29sbFNlcbgEEXNxbGl0ZTNHZXRDb2xsU2VxuQQOc3FsaXRlM0dldFZkYmW6BBJzcWxpdGUzV2luZG93QWxsb2O7BBVzcWxpdGUzV2luZG93QXNzZW1ibGW8BBJzcWxpdGUzV2luZG93Q2hhaW69BA5zcWxpdGUzV2l0aEFkZL4EFHNxbGl0ZTNOYW1lRnJvbVRva2VuvwQPc3FsaXRlM1dpdGhQdXNowAQRYWRkQXJndW1lbnRUb1Z0YWLBBBFzcWxpdGUzU3RhcnRUYWJsZcIEEHNxbGl0ZTNBdXRoQ2hlY2vDBBZzcWxpdGUzVnRhYkZpbmlzaFBhcnNlxAQWc3FsaXRlM0xvY2F0ZVRhYmxlSXRlbcUEEGlzQWx0ZXJhYmxlVGFibGXGBAtpc1JlYWxUYWJsZccEEHJlbmFtZVRlc3RTY2hlbWHIBA9yZW5hbWVGaXhRdW90ZXPJBBJzcWxpdGUzTmVzdGVkUGFyc2XKBBJyZW5hbWVSZWxvYWRTY2hlbWHLBBJzcWxpdGUzQ29sdW1uSW5kZXjMBBBzcWxpdGUzT3BlblRhYmxlzQQfc3FsaXRlM0V4cHJDb2RlR2V0Q29sdW1uT2ZUYWJsZc4EDXZhbHVlRnJvbUV4cHLPBBZzcWxpdGUzSXNTaGFkb3dUYWJsZU9m0AQWc3FsaXRlM0NoZWNrT2JqZWN0TmFtZdEEGXNxbGl0ZTNWaWV3R2V0Q29sdW1uTmFtZXPSBBJzcWxpdGUzVXRmOENoYXJMZW7TBBNzcWxpdGUzVmRiZUNoYW5nZVA01AQOc3FsaXRlM0FuYWx5emXVBA5zcWxpdGUzUmVpbmRleNYECmNvZGVBdHRhY2jXBBxzcWxpdGUzQ29kZVZlcmlmeU5hbWVkU2NoZW1h2AQVc3FsaXRlM0Ryb3BUcmlnZ2VyUHRy2QQQc3FsaXRlM0V4cHJBbGxvY9oEDHNxbGl0ZTNQRXhwctsEDnRyaWdnZXJTcGFuRHVw3AQTdHJpZ2dlclN0ZXBBbGxvY2F0Zd0EB2V4cHJEdXDeBBBzcWxpdGUzU2VsZWN0RHVw3wQXc3FsaXRlM0hhc0V4cGxpY2l0TnVsbHPgBBJzcWxpdGUzRXhwckxpc3REdXDhBBFzcWxpdGUzU3JjTGlzdER1cOIEEnNxbGl0ZTNUd29QYXJ0TmFtZeMEFHNxbGl0ZTNTcmNMaXN0TG9va3Vw5AQfc3FsaXRlM1dhbGtXaW5EZWZuRHVtbXlDYWxsYmFja+UEC2ZpeFNlbGVjdENi5gQJZml4RXhwckNi5wQRc3FsaXRlM1dhbGtTZWxlY3ToBBdzcWxpdGUzQ29kZVZlcmlmeVNjaGVtYekECHdhbGtFeHBy6gQTc3FsaXRlM1dhbGtFeHByTGlzdOsEGnNxbGl0ZTNCZWdpbldyaXRlT3BlcmF0aW9u7AQbc3FsaXRlM1ZkYmVBZGRQYXJzZVNjaGVtYU9w7QQNc3FsaXRlM1ByYWdtYe4EDXNxbGl0ZTNWYWN1dW3vBBdzcWxpdGUzRm9yY2VOb3RSZWFkT25sefAEFnNxbGl0ZTNDbGVhclN0YXRUYWJsZXPxBA9kZXN0cm95Um9vdFBhZ2XyBBdwYXJzZXJBZGRFeHBySWRMaXN0VGVybfMEFHNxbGl0ZTNTcmNMaXN0QXBwZW5k9AQSc3FsaXRlM0NyZWF0ZUluZGV49QQVc3FsaXRlM1JlbmFtZVRva2VuTWFw9gQYc3FsaXRlM0V4cHJMaXN0QXBwZW5kTmV39wQVc3FsaXRlM0V4cHJMaXN0QXBwZW5k+AQcc3FsaXRlM0V4cHJTZXRIZWlnaHRBbmRGbGFnc/kEFXNxbGl0ZTNQRXhwckFkZFNlbGVjdPoEEHNxbGl0ZTNTZWxlY3ROZXf7BBZzcWxpdGUzU3JjTGlzdEZ1bmNBcmdz/AQZc3FsaXRlM0V4cHJVbm1hcEFuZERlbGV0Zf0EC3NxbGl0ZTNFeHBy/gQVc3FsaXRlM1NlbGVjdFdhbGtGYWls/wQSZXhwck5vZGVJc0NvbnN0YW50gAUTYmluYXJ5VG9VbmFyeUlmTnVsbIEFE3NxbGl0ZTNFeHByRnVuY3Rpb26CBQ5zcWxpdGUzRXhwckFuZIMFE3NxbGl0ZTNXaW5kb3dBdHRhY2iEBRlzcWxpdGUzRXhwckF0dGFjaFN1YnRyZWVzhQUac3FsaXRlM0V4cHJBZGRDb2xsYXRlVG9rZW6GBQl0b2tlbkV4cHKHBRNzcWxpdGUzSWRMaXN0QXBwZW5kiAUTc3FsaXRlM0FkZFJldHVybmluZ4kFEHNxbGl0ZTNVcHNlcnROZXeKBQ1zcWxpdGUzSW5zZXJ0iwUbc3FsaXRlM0V4cHJMaXN0QXBwZW5kVmVjdG9yjAUWc3FsaXRlM0V4cHJMaXN0U2V0TmFtZY0FF3NxbGl0ZTNTcmNMaXN0SW5kZXhlZEJ5jgUYc3FsaXRlM1NyY0xpc3RBcHBlbmRMaXN0jwUNc3FsaXRlM1VwZGF0ZZAFEXNxbGl0ZTNEZWxldGVGcm9tkQUbc3FsaXRlM0V4cHJMaXN0U2V0U29ydE9yZGVykgUPc3FsaXRlM0pvaW5UeXBlkwUcc3FsaXRlM1NyY0xpc3RBcHBlbmRGcm9tVGVybZQFEHNxbGl0ZTNEYlNwYW5EdXCVBRZwYXJzZXJEb3VibGVMaW5rU2VsZWN0lgUSYXR0YWNoV2l0aFRvU2VsZWN0lwUNc3FsaXRlM1NlbGVjdJgFEHNxbGl0ZTNEcm9wVGFibGWZBQ9zcWxpdGUzRW5kVGFibGWaBRpzcWxpdGUzUmVuYW1lRXhwcmxpc3RVbm1hcJsFF3NxbGl0ZTNDcmVhdGVGb3JlaWduS2V5nAUZc3FsaXRlM0FkZENoZWNrQ29uc3RyYWludJ0FFHNxbGl0ZTNBZGRQcmltYXJ5S2V5ngUTc3FsaXRlM0FkZEdlbmVyYXRlZJ8FFHNxbGl0ZTNMb2NhdGVDb2xsU2VxoAUYc3FsaXRlM0V4cHJJZFRvVHJ1ZUZhbHNloQUWc3FsaXRlM0FkZERlZmF1bHRWYWx1ZaIFDnNxbGl0ZTNEZXF1b3RlowUTc3FsaXRlM0FmZmluaXR5VHlwZaQFEHNxbGl0ZTNTYXZlcG9pbnSlBQ9zcWxpdGUzRXhwckNvZGWmBRZzcWxpdGUzU2hhZG93VGFibGVOYW1lpwULaXNEdXBDb2x1bW6oBRFyZXNpemVJbmRleE9iamVjdKkFGnJlY29tcHV0ZUNvbHVtbnNOb3RJbmRleGVkqgUbc3FsaXRlM1Jlc29sdmVTZWxmUmVmZXJlbmNlqwUSZXN0aW1hdGVJbmRleFdpZHRorAUYc3FsaXRlM1Jlc3VsdFNldE9mU2VsZWN0rQUUc3FsaXRlM1RhYmxlQWZmaW5pdHmuBQhpZGVudFB1dK8FFnNxbGl0ZTNSZW5hbWVFeHByVW5tYXCwBRRzcWxpdGUzSXNUcnVlT3JGYWxzZbEFEXNxbGl0ZTNTdHJpbmdUb0lksgUac3FsaXRlM0FsbG9jYXRlSW5kZXhPYmplY3SzBRJzcWxpdGUzUmVmaWxsSW5kZXi0BRVzcWxpdGUzSGFsdENvbnN0cmFpbnS1BRdzcWxpdGUzVmRiZVJlc29sdmVMYWJlbLYFEnNxbGl0ZTNUcmlnZ2VyTGlzdLcFDGRlc3Ryb3lUYWJsZbgFF3NxbGl0ZTNQYXJzZXJBZGRDbGVhbnVwuQURc3FsaXRlM1NlbGVjdFByZXC6BRpzcWxpdGUzR2VuZXJhdGVDb2x1bW5OYW1lc7sFFXNxbGl0ZTNTZWxlY3RXYWxrTm9vcLwFFGFnZ2luZm9QZXJzaXN0RXhwckNivQUdZGlzYWxsb3dBZ2dyZWdhdGVzSW5PcmRlckJ5Q2K+BRJleHByTGlzdEFwcGVuZExpc3S/BRZzcWxpdGUzRXhwckxpc3RDb21wYXJlwAUbc2VsZWN0V2luZG93UmV3cml0ZVNlbGVjdENiwQUZc2VsZWN0V2luZG93UmV3cml0ZUV4cHJDYsIFG3NxbGl0ZTNTcmNMaXN0QXNzaWduQ3Vyc29yc8MFGnNxbGl0ZTNXYWxrZXJEZXB0aEluY3JlYXNlxAUec3FsaXRlM1dpbmRvd0V4dHJhQWdnRnVuY0RlcHRoxQUac3FsaXRlM1dhbGtlckRlcHRoRGVjcmVhc2XGBRxzcWxpdGUzRXhwckltcGxpZXNOb25OdWxsUm93xwUNdW5zZXRKb2luRXhwcsgFFnNyY2xpc3RSZW51bWJlckN1cnNvcnPJBRFyZW51bWJlckN1cnNvcnNDYsoFFXNxbGl0ZTNTcmNMaXN0RW5sYXJnZcsFEnNxbGl0ZTNTZXRKb2luRXhwcswFC3N1YnN0U2VsZWN0zQUYcmVjb21wdXRlQ29sdW1uc1VzZWRFeHByzgURbXVsdGlTZWxlY3RWYWx1ZXPPBRpnZW5lcmF0ZVdpdGhSZWN1cnNpdmVRdWVyedAFEm11bHRpU2VsZWN0T3JkZXJCedEFEnNxbGl0ZTNWZGJlRXhwbGFpbtIFEHNxbGl0ZTNMb2dFc3RBZGTTBRRzcWxpdGUzRXhwcklzSW50ZWdlctQFFWNvbXB1dGVMaW1pdFJlZ2lzdGVyc9UFD3NlbGVjdElubmVyTG9vcNYFE3NxbGl0ZTNLZXlJbmZvQWxsb2PXBRJtdWx0aVNlbGVjdENvbGxTZXHYBRBmaW5kQ29uc3RJbldoZXJl2QUccHJvcGFnYXRlQ29uc3RhbnRFeHByUmV3cml0ZdoFDmhlaWdodE9mU2VsZWN02wUScHVzaERvd25XaGVyZVRlcm1z3AUac3FsaXRlM0tleUluZm9Gcm9tRXhwckxpc3TdBRNzcWxpdGUzVmRiZUFwcGVuZFA03gULYWdnaW5mb0ZyZWXfBRlzcWxpdGUzRXhwckFuYWx5emVBZ2dMaXN04AUTaGF2aW5nVG9XaGVyZUV4cHJDYuEFEGFuYWx5emVBZ2dyZWdhdGXiBRRzcWxpdGUzRXhwckNhbkJlTnVsbOMFFXNxbGl0ZTNLZXlJbmZvT2ZJbmRleOQFEHJlc2V0QWNjdW11bGF0b3LlBRFzcWxpdGUzV2hlcmVCZWdpbuYFEXVwZGF0ZUFjY3VtdWxhdG9y5wUSZml4RGlzdGluY3RPcGVuRXBo6AUPc3FsaXRlM1doZXJlRW5k6QUUZmluYWxpemVBZ2dGdW5jdGlvbnPqBRJzcWxpdGUzRXhwcklmRmFsc2XrBRNzcWxpdGUzR2V0VGVtcFJhbmdl7AUXc3FsaXRlM0V4cHJDb2RlRXhwckxpc3TtBRdzcWxpdGUzVmRiZUNoYW5nZVRvTm9vcO4FEHdpbmRvd0V4cHJHdFplcm/vBRB3aW5kb3dDaGVja1ZhbHVl8AUOd2luZG93QWdnRmluYWzxBRJ3aW5kb3dSZXR1cm5PbmVSb3fyBQ93aW5kb3dJZk5ld1BlZXLzBQx3aW5kb3dDb2RlT3D0BRN3aW5kb3dDb2RlUmFuZ2VUZXN09QUZc3FsaXRlM0V4cHJMaXN0QXBwZW5kR3Jvd/YFFHNxbGl0ZTNUcmlnZ2Vyc0V4aXN09wURc3FsaXRlM0ZrUmVxdWlyZWT4BRFzcWxpdGUzSXNSZWFkT25sefkFFnNxbGl0ZTNNYXRlcmlhbGl6ZVZpZXf6BRdzcWxpdGUzUmVzb2x2ZUV4cHJOYW1lc/sFF3NxbGl0ZTNWZGJlU2V0UDRLZXlJbmZv/AUXc3FsaXRlM0luZGV4QWZmaW5pdHlTdHL9BRpzcWxpdGUzT3BlblRhYmxlQW5kSW5kaWNlc/4FF3NxbGl0ZTNWdGFiTWFrZVdyaXRhYmxl/wUYc3FsaXRlM0dlbmVyYXRlUm93RGVsZXRlgAYQYXV0b0luY3JlbWVudEVuZIEGFnNxbGl0ZTNEZWxldGVSZXR1cm5pbmeCBiJzcWxpdGUzRXhwclJlZmVyZW5jZXNVcGRhdGVkQ29sdW1ugwYQdXBkYXRlRnJvbVNlbGVjdIQGEHNxbGl0ZTNGa09sZG1hc2uFBhVzcWxpdGUzVHJpZ2dlckNvbG1hc2uGBhtzcWxpdGUzVGFibGVDb2x1bW5Ub1N0b3JhZ2WHBh5zcWxpdGUzQ29tcHV0ZUdlbmVyYXRlZENvbHVtbnOIBhVzcWxpdGUzQ29kZVJvd1RyaWdnZXKJBh9zcWxpdGUzR2VuZXJhdGVDb25zdHJhaW50Q2hlY2tzigYOc3FsaXRlM0ZrQ2hlY2uLBh1zcWxpdGUzR2VuZXJhdGVSb3dJbmRleERlbGV0ZYwGGHNxbGl0ZTNDb21wbGV0ZUluc2VydGlvbo0GEHNxbGl0ZTNGa0FjdGlvbnOOBhlzcWxpdGUzRXhwckZvclZlY3RvckZpZWxkjwYSc3FsaXRlM0V4cHJDb21wYXJlkAYTeGZlckNvbXBhdGlibGVJbmRleJEGDGF1dG9JbmNCZWdpbpIGFnNxbGl0ZTNSb3dpZENvbnN0cmFpbnSTBhtzcWxpdGUzUmVzb2x2ZUV4cHJMaXN0TmFtZXOUBhlzcWxpdGUzRXhwckNvZGVGYWN0b3JhYmxllQYUc3FsaXRlM0FycmF5QWxsb2NhdGWWBg1leHByU2V0SGVpZ2h0lwYTcmVuYW1lVW5tYXBTZWxlY3RDYpgGEXJlbmFtZVVubWFwRXhwckNimQYQcmV0dXJuU2luZ2xlVGV4dJoGGnNldFByYWdtYVJlc3VsdENvbHVtbk5hbWVzmwYPcmV0dXJuU2luZ2xlSW50nAYXaW50ZWdyaXR5Q2hlY2tSZXN1bHRSb3edBhFzcWxpdGUzRXhwcklmVHJ1ZZ4GF3NxbGl0ZTNHZW5lcmF0ZUluZGV4S2V5nwYIbGlrZUZ1bmOgBhRzcWxpdGUzRmtMb2NhdGVJbmRleKEGFHNxbGl0ZTNWZGJlTXVsdGlMb2FkogYScHJhZ21hRnVuY2xpc3RMaW5lowYQc2V0QWxsUGFnZXJGbGFnc6QGFWludmFsaWRhdGVUZW1wU3RvcmFnZaUGEHJlaW5kZXhEYXRhYmFzZXOmBgxyZWluZGV4VGFibGWnBg9hbmFseXplRGF0YWJhc2WoBg1zcWxpdGUzRmluZERiqQYMYW5hbHl6ZVRhYmxlqgYKd2luZG93RmluZKsGF3NxbGl0ZTNXaW5kb3dPZmZzZXRFeHByrAYVc3FsaXRlM0V4cHJDb2RlVGFyZ2V0rQYQdmRiZUNoYW5nZVA0RnVsbK4GHnNxbGl0ZTNFeHByQ29kZUdlbmVyYXRlZENvbHVtbq8GC2NvZGVJbnRlZ2VysAYIY29kZVJlYWyxBhBzcWxpdGUzSGV4VG9CbG9isgYTc3FsaXRlM0V4cHJDb2RlVGVtcLMGGnNxbGl0ZTNFeHByQ29kZVJ1bkp1c3RPbmNltAYWc3FsaXRlM0V4cHJJbXBsaWVzRXhwcrUGGXNxbGl0ZTNFeHByRnVuY3Rpb25Vc2FibGW2BhtzcWxpdGUzVnRhYk92ZXJsb2FkRnVuY3Rpb263BhpzcWxpdGUzVmRiZUFkZEZ1bmN0aW9uQ2FsbLgGFHNxbGl0ZTNDb2RlU3Vic2VsZWN0uQYOZXhwckNvZGVWZWN0b3K6Bg9leHByQ29kZUJldHdlZW67BhFzcWxpdGUzRXhwckNvZGVJTrwGEmV4cHJWZWN0b3JSZWdpc3Rlcr0GC2NvZGVDb21wYXJlvgYTc3FsaXRlM0V4cHJDb2RlQ29web8GFXNxbGl0ZTNWZGJlQWRkT3A0RHVwOMAGE3NxbGl0ZTNFeHByQWZmaW5pdHnBBhZzcWxpdGUzQ29tcGFyZUFmZmluaXR5wgYSc3FsaXRlM0V4cHJDaGVja0lOwwYOZXhwcklOQWZmaW5pdHnEBhJzcWxpdGUzRmluZEluSW5kZXjFBhlzcWxpdGUzVmVjdG9yRmllbGRTdWJleHByxgYScmVzaXplUmVzb2x2ZUxhYmVsxwYac3FsaXRlM0V4cHJTaW1wbGlmaWVkQW5kT3LIBg9zcWxpdGUzV2Fsa0V4cHLJBg53YWxrV2luZG93TGlzdMoGFHNxbGl0ZTNTZWxlY3RQb3BXaXRoywYYc3FsaXRlM1ZkYmVHZXRCb3VuZFZhbHVlzAYUc3FsaXRlM1dpbmRvd0NvbXBhcmXNBhJleHBySW1wbGllc05vdE51bGzOBhFpbXBsaWVzTm90TnVsbFJvd88GFXNxbGl0ZTNWZWN0b3JFcnJvck1zZ9AGFXNxbGl0ZTNTZXRIYXNOdWxsRmxhZ9EGDnNxbGl0ZTNXaXRoRHVw0gYQc3FsaXRlM1dpbmRvd0R1cNMGIWdhdGhlclNlbGVjdFdpbmRvd3NTZWxlY3RDYWxsYmFja9QGG2dhdGhlclNlbGVjdFdpbmRvd3NDYWxsYmFja9UGEHNxbGl0ZTNJZExpc3REdXDWBhFzcWxpdGUzV2luZG93TGlua9cGDWR1cGVkRXhwclNpemXYBhFkdXBlZEV4cHJOb2RlU2l6ZdkGGnNxbGl0ZTNDb2x1bW5zRnJvbUV4cHJMaXN02gYmc3FsaXRlM1NlbGVjdEFkZENvbHVtblR5cGVBbmRDb2xsYXRpb27bBg9yZXNvbHZlRXhwclN0ZXDcBhFyZXNvbHZlU2VsZWN0U3RlcN0GDG5vdFZhbGlkSW1wbN4GDnNlbGVjdFNyY0NvdW503wYMZXhwclNyY0NvdW504AYRc3FsaXRlM01hdGNoRU5hbWXhBgxyZXNvbHZlQWxpYXPiBhJzcWxpdGUzRXhwckNvbFVzZWTjBhJzcWxpdGUzQXV0aFJlYWRDb2zkBhNyZXNvbHZlT3JkZXJHcm91cEJ55QYNcmVzb2x2ZUFzTmFtZeYGHHJlc29sdmVPcmRlckJ5VGVybVRvRXhwckxpc3TnBgxpbmNyQWdnRGVwdGjoBhtzcWxpdGUzRXhwckFkZENvbGxhdGVTdHJpbmfpBhNzcWxpdGUzRXhwcldhbGtOb29w6gYfY29udmVydENvbXBvdW5kU2VsZWN0VG9TdWJxdWVyeesGDnNlbGVjdEV4cGFuZGVy7AYZc2VsZWN0QWRkU3VicXVlcnlUeXBlSW5mb+0GFnJlc29sdmVSZW1vdmVXaW5kb3dzQ2LuBhpzcWxpdGUzUmVzb2x2ZU9yZGVyR3JvdXBCee8GFXNxbGl0ZTNFeHBhbmRTdWJxdWVyefAGFnNxbGl0ZTNJbmRleGVkQnlMb29rdXDxBhN0YWJsZUFuZENvbHVtbkluZGV48gYMYWRkV2hlcmVUZXJt8wYSc3FsaXRlM0lkTGlzdEluZGV49AYOY29sdW1uVHlwZUltcGz1BhdzcWxpdGUzQ3JlYXRlQ29sdW1uRXhwcvYGDnJlbmFtZVdhbGtXaXRo9wYXc3FsaXRlM1VuaXF1ZUNvbnN0cmFpbnT4BhVzcWxpdGUzRXhwcklmRmFsc2VEdXD5BglzdWJzdEV4cHL6BhtleHByTm9kZUlzQ29uc3RhbnRPckdyb3VwQnn7BhFzcWxpdGUzV2hlcmVTcGxpdPwGEXdoZXJlQ2xhdXNlSW5zZXJ0/QYLZXhwckFuYWx5emX+BhdleHByTm9kZUlzRGV0ZXJtaW5pc3RpY/8GFHNxbGl0ZTNXaGVyZUZpbmRUZXJtgAcTd2hlcmVMb29wQWRkVmlydHVhbIEHEXdoZXJlTG9vcEFkZEJ0cmVlggcOd2hlcmVMb29wQWRkT3KDBw53aGVyZUxvb3BDbGVhcoQHD3doZXJlUGF0aFNvbHZlcoUHGXNxbGl0ZTNXaGVyZUV4cHJMaXN0VXNhZ2WGBxF0ZXJtQ2FuRHJpdmVJbmRleIcHD3doZXJlTG9vcFJlc2l6ZYgHFXRyYW5zbGF0ZUNvbHVtblRvQ29weYkHGnNxbGl0ZTNXaGVyZUV4cGxhaW5PbmVTY2FuigcQY29kZUVxdWFsaXR5VGVybYsHEGNvZGVFeHByT3JWZWN0b3KMBwtkaXNhYmxlVGVybY0HFGNvZGVBbGxFcXVhbGl0eVRlcm1zjgcWdXBkYXRlUmFuZ2VBZmZpbml0eVN0co8HEWNvZGVBcHBseUFmZmluaXR5kAcXd2hlcmVJbmRleEV4cHJUcmFuc05vZGWRBxl3aGVyZUluZGV4RXhwclRyYW5zQ29sdW1ukgchd2hlcmVBcHBseVBhcnRpYWxJbmRleENvbnN0cmFpbnRzkwcZc3FsaXRlM0V4cHJDb3ZlcmVkQnlJbmRleJQHEXdoZXJlVW5kb0V4cHJNb2RzlQcNd2hlcmVJbmZvRnJlZZYHDGNvZGVEaXN0aW5jdJcHDnB1c2hPbnRvU29ydGVymAccc3FsaXRlM0V4cHJBbmFseXplQWdncmVnYXRlc5kHGW11bHRpU2VsZWN0T3JkZXJCeUtleUluZm+aBxhnZW5lcmF0ZU91dHB1dFN1YnJvdXRpbmWbBwtjb25zdEluc2VydJwHH3Byb3BhZ2F0ZUNvbnN0YW50RXhwclJld3JpdGVPbmWdBxBoZWlnaHRPZkV4cHJMaXN0ngcZd2hlcmVQYXRoU2F0aXNmaWVzT3JkZXJCeZ8HFXNxbGl0ZTNXaGVyZUV4cHJVc2FnZaAHEWV4cGxhaW5BcHBlbmRUZXJtoQcXc3FsaXRlM1doZXJlQ2xhdXNlQ2xlYXKiBxdzcWxpdGUzV2hlcmVFeHByVXNhZ2VOTqMHD2V4cHJTZWxlY3RVc2FnZaQHEmV4cHJNaWdodEJlSW5kZXhlZKUHFXdoZXJlQ29tYmluZURpc2p1bmN0c6YHE2V4cHJNaWdodEJlSW5kZXhlZDKnBxZzcWxpdGUzRXhwckNvbXBhcmVTa2lwqAcNd2hlcmVTY2FuSW5pdKkHDXdoZXJlU2Nhbk5leHSqBxZ3aGVyZVNjYW5Jbml0SW5kZXhFeHByqwcWc3FsaXRlM0luZGV4QWZmaW5pdHlPa6wHFndoZXJlTG9vcEFkZFZpcnR1YWxPbmWtBw93aGVyZUxvb3BJbnNlcnSuBxd3aGVyZVVzYWJsZVBhcnRpYWxJbmRleK8HFXdoZXJlTG9vcE91dHB1dEFkanVzdLAHFndoZXJlTG9vcEFkZEJ0cmVlSW5kZXixBw13aGVyZU9ySW5zZXJ0sgcTd2hlcmVMb29wQ2xlYXJVbmlvbrMHHHdoZXJlTG9vcENoZWFwZXJQcm9wZXJTdWJzZXS0BxN3aGVyZUxvb3BGaW5kTGVzc2VytQcMZXhwcklkeENvdmVytgcTd2hlcmVSYW5nZVZlY3RvckxlbrcHIHNxbGl0ZTNFeHByTmVlZHNOb0FmZmluaXR5Q2hhbmdluAcMcHJlc2VydmVFeHByuQcUd2luZG93UmVhZFBlZXJWYWx1ZXO6Bw13aW5kb3dBZ2dTdGVwuwcMbm9vcFN0ZXBGdW5jvAcQbWFrZVNvcnRlclJlY29yZL0HEmNoZWNrQ29sdW1uT3ZlcmxhcL4HEmZrUGFyZW50SXNNb2RpZmllZL8HDWdldFJvd1RyaWdnZXLABxtzcWxpdGUzQ29kZVJvd1RyaWdnZXJEaXJlY3TBBw5ma0xvb2t1cFBhcmVudMIHDmZrU2NhbkNoaWxkcmVuwwcSY29kZVRyaWdnZXJQcm9ncmFtxAcVc3FsaXRlM1RyaWdnZXJTdGVwU3JjxQcQc3FsaXRlM1Vwc2VydER1cMYHEWV4cHJUYWJsZVJlZ2lzdGVyxwcXY2hlY2tDb25zdHJhaW50RXhwck5vZGXIBxNleHByQ29sdW1uRmxhZ1VuaW9uyQcVc3FsaXRlM1Vwc2VydERvVXBkYXRlygcKYXR0YWNoRnVuY8sHCmRldGFjaEZ1bmPMBw1vcGVuU3RhdFRhYmxlzQcPYW5hbHl6ZU9uZVRhYmxlzgcMbG9hZEFuYWx5c2lzzwcIc3RhdEluaXTQBxNzdGF0QWNjdW1EZXN0cnVjdG9y0QcIc3RhdFB1c2jSBwdzdGF0R2V00wcLdmVyc2lvbkZ1bmPUBxVjb21waWxlb3B0aW9udXNlZEZ1bmPVBxRjb21waWxlb3B0aW9uZ2V0RnVuY9YHCHRyaW1GdW5j1wcNY29udGV4dE1hbGxvY9gHCm1pbm1heEZ1bmPZBwptaW5tYXhTdGVw2gcObWluTWF4RmluYWxpemXbBxNtaW5NYXhWYWx1ZUZpbmFsaXpl3AcLbWluTWF4VmFsdWXdBwp0eXBlb2ZGdW5j3gcKbGVuZ3RoRnVuY98HCWluc3RyRnVuY+AHCnByaW50ZkZ1bmPhBwt1bmljb2RlRnVuY+IHCGNoYXJGdW5j4wcHYWJzRnVuY+QHCXJvdW5kRnVuY+UHCXVwcGVyRnVuY+YHCWxvd2VyRnVuY+cHB2hleEZ1bmPoBwpyYW5kb21GdW5j6QcKcmFuZG9tQmxvYuoHCm51bGxpZkZ1bmPrBwxzb3VyY2VpZEZ1bmPsBwplcnJsb2dGdW5j7QcJcXVvdGVGdW5j7gcRbGFzdF9pbnNlcnRfcm93aWTvBwdjaGFuZ2Vz8AcNdG90YWxfY2hhbmdlc/EHC3JlcGxhY2VGdW5j8gcMemVyb2Jsb2JGdW5j8wcKc3Vic3RyRnVuY/QHB3N1bVN0ZXD1BwtzdW1GaW5hbGl6ZfYHCnN1bUludmVyc2X3Bw10b3RhbEZpbmFsaXpl+AcLYXZnRmluYWxpemX5Bwljb3VudFN0ZXD6Bw1jb3VudEZpbmFsaXpl+wcMY291bnRJbnZlcnNl/AcPZ3JvdXBDb25jYXRTdGVw/QcTZ3JvdXBDb25jYXRGaW5hbGl6Zf4HEGdyb3VwQ29uY2F0VmFsdWX/BxJncm91cENvbmNhdEludmVyc2WACAhzaWduRnVuY4EIEHJlbmFtZUNvbHVtbkZ1bmOCCA5yZW5hbWVQYXJzZVNxbIMIFHJlbmFtZUNvbHVtblNlbGVjdENihAgScmVuYW1lQ29sdW1uRXhwckNihQgUcmVuYW1lUmVzb2x2ZVRyaWdnZXKGCBZyZW5hbWVDb2x1bW5FbGlzdE5hbWVzhwgXcmVuYW1lQ29sdW1uSWRsaXN0TmFtZXOICBFyZW5hbWVXYWxrVHJpZ2dlcokIDXJlbmFtZUVkaXRTcWyKCBZyZW5hbWVDb2x1bW5QYXJzZUVycm9yiwgScmVuYW1lUGFyc2VDbGVhbnVwjAgPcmVuYW1lVGFibGVGdW5jjQgTcmVuYW1lVGFibGVTZWxlY3RDYo4IEXJlbmFtZVRhYmxlRXhwckNijwgPcmVuYW1lVGFibGVUZXN0kAgOZHJvcENvbHVtbkZ1bmORCBJyZW5hbWVRdW90ZWZpeEZ1bmOSCBRyZW5hbWVRdW90ZWZpeEV4cHJDYpMID3JlbmFtZVRva2VuRmluZJQIEnJvd19udW1iZXJTdGVwRnVuY5UIE3Jvd19udW1iZXJWYWx1ZUZ1bmOWCBJkZW5zZV9yYW5rU3RlcEZ1bmOXCBNkZW5zZV9yYW5rVmFsdWVGdW5jmAgMcmFua1N0ZXBGdW5jmQgNcmFua1ZhbHVlRnVuY5oIFHBlcmNlbnRfcmFua1N0ZXBGdW5jmwgVcGVyY2VudF9yYW5rVmFsdWVGdW5jnAgTcGVyY2VudF9yYW5rSW52RnVuY50IEWN1bWVfZGlzdFN0ZXBGdW5jnggSY3VtZV9kaXN0VmFsdWVGdW5jnwgQY3VtZV9kaXN0SW52RnVuY6AIDW50aWxlU3RlcEZ1bmOhCA5udGlsZVZhbHVlRnVuY6IIDG50aWxlSW52RnVuY6MIEmxhc3RfdmFsdWVTdGVwRnVuY6QIFmxhc3RfdmFsdWVGaW5hbGl6ZUZ1bmOlCBNsYXN0X3ZhbHVlVmFsdWVGdW5jpggRbGFzdF92YWx1ZUludkZ1bmOnCBFudGhfdmFsdWVTdGVwRnVuY6gIFW50aF92YWx1ZUZpbmFsaXplRnVuY6kIDW5vb3BWYWx1ZUZ1bmOqCBNmaXJzdF92YWx1ZVN0ZXBGdW5jqwgXZmlyc3RfdmFsdWVGaW5hbGl6ZUZ1bmOsCA1qdWxpYW5kYXlGdW5jrQgGaXNEYXRlrggJY29tcHV0ZUpErwgIZGF0ZUZ1bmOwCApjb21wdXRlWU1EsQgIdGltZUZ1bmOyCApjb21wdXRlSE1TswgMZGF0ZXRpbWVGdW5jtAgMc3RyZnRpbWVGdW5jtQgJY3RpbWVGdW5jtggOY3RpbWVzdGFtcEZ1bmO3CAljZGF0ZUZ1bmO4CBJzcWxpdGUzTm90UHVyZUZ1bmO5CAlnZXREaWdpdHO6CAtwYXJzZUhoTW1Tc7sIFHNldERhdGVUaW1lVG9DdXJyZW50vAgPbG9jYWx0aW1lT2Zmc2V0vQgQc3FsaXRlM01lbU1hbGxvY74IDnNxbGl0ZTNNZW1GcmVlvwgRc3FsaXRlM01lbVJlYWxsb2PACA5zcWxpdGUzTWVtU2l6ZcEIEXNxbGl0ZTNNZW1Sb3VuZHVwwggOc3FsaXRlM01lbUluaXTDCBJzcWxpdGUzTWVtU2h1dGRvd27ECAtwY2FjaGUxSW5pdMUID3BjYWNoZTFTaHV0ZG93bsYIDXBjYWNoZTFDcmVhdGXHCBFwY2FjaGUxUmVzaXplSGFzaMgIDnBjYWNoZTFEZXN0cm95yQgQcGNhY2hlMUNhY2hlc2l6ZcoIFXBjYWNoZTFFbmZvcmNlTWF4UGFnZcsIEHBjYWNoZTFQYWdlY291bnTMCAxwY2FjaGUxRmV0Y2jNCBJwY2FjaGUxRmV0Y2hTdGFnZTLOCAxwY2FjaGUxVW5waW7PCBVwY2FjaGUxUmVtb3ZlRnJvbUhhc2jQCAxwY2FjaGUxUmVrZXnRCA9wY2FjaGUxVHJ1bmNhdGXSCBVwY2FjaGUxVHJ1bmNhdGVVbnNhZmXTCA1wY2FjaGUxU2hyaW5r1AgPcGNhY2hlMUZyZWVQYWdl1QgSc3FsaXRlM1Rlc3RFeHRJbml01ggQc3FsaXRlM0pzb24xSW5pdNcIEGpzb25Hcm91cEludmVyc2XYCA5qc29uUmVtb3ZlRnVuY9kICWpzb25QYXJzZdoICmpzb25Mb29rdXDbCA5qc29uUmV0dXJuSnNvbtwIDWpzb25BcnJheUZ1bmPdCA5qc29uQXBwZW5kQ2hhct4IE2pzb25BcHBlbmRTZXBhcmF0b3LfCA9qc29uQXBwZW5kVmFsdWXgCBNqc29uQXJyYXlMZW5ndGhGdW5j4QgPanNvblBhcnNlQ2FjaGVk4ggPanNvbkV4dHJhY3RGdW5j4wgOanNvblJlbmRlck5vZGXkCA1qc29uQXBwZW5kUmF35QgKanNvblJldHVybuYIC2pzb25TZXRGdW5j5wgQanNvbldyb25nTnVtQXJnc+gIDmpzb25PYmplY3RGdW5j6QgQanNvbkFwcGVuZFN0cmluZ+oIDWpzb25QYXRjaEZ1bmPrCA5qc29uTWVyZ2VQYXRjaOwIDWpzb25RdW90ZUZ1bmPtCA9qc29uUmVwbGFjZUZ1bmPuCAxqc29uVHlwZUZ1bmPvCA1qc29uVmFsaWRGdW5j8AgNanNvbkFycmF5U3RlcPEIDmpzb25BcnJheUZpbmFs8ggQanNvbkFycmF5Q29tcHV0ZfMIDmpzb25BcnJheVZhbHVl9AgOanNvbk9iamVjdFN0ZXD1CA9qc29uT2JqZWN0RmluYWz2CBFqc29uT2JqZWN0Q29tcHV0ZfcID2pzb25PYmplY3RWYWx1ZfgIDmpzb25QYXJzZVZhbHVl+QgOanNvbkxvb2t1cFN0ZXD6CBBqc29uUGFyc2VBZGROb2Rl+wgWanNvblBhcnNlQWRkTm9kZUV4cGFuZPwIEGpzb25Mb29rdXBBcHBlbmT9CAhqc29uR3Jvd/4IDWpzb25QYXJzZUZyZWX/CA1qc29uSGV4VG9JbnQ0gAkSanNvblJlbW92ZUFsbE51bGxzgQkPanNvbkVhY2hDb25uZWN0ggkRanNvbkVhY2hCZXN0SW5kZXiDCRJqc29uRWFjaERpc2Nvbm5lY3SECRBqc29uRWFjaE9wZW5FYWNohQkNanNvbkVhY2hDbG9zZYYJE2pzb25FYWNoQ3Vyc29yUmVzZXSHCQ5qc29uRWFjaEZpbHRlcogJGGpzb25QYXJzZUZpbGxJblBhcmVudGFnZYkJDGpzb25FYWNoTmV4dIoJC2pzb25FYWNoRW9miwkOanNvbkVhY2hDb2x1bW6MCRNqc29uRWFjaENvbXB1dGVQYXRojQkKanNvblByaW50Zo4JDWpzb25FYWNoUm93aWSPCRBqc29uRWFjaE9wZW5UcmVlkAkIcGNnX3NlZWSRCQlwY2dfYnl0ZXOSCQZtYWxsb2OTCQhkbG1hbGxvY5QJBGZyZWWVCQZkbGZyZWWWCQdyZWFsbG9jlwkNZGlzcG9zZV9jaHVua5gJBWFib3J0mQkEc2Jya5oJCl9fZ210aW1lX3KbCQxfX3NlY3NfdG9fdG2cCQZtZW1jbXCdCQdtZW1tb3ZlngkJX19tZW1yY2hynwkHc3RycmNocqAJBm1lbWNweaEJBnN0cmxlbqIJB3N0cm5jbXCjCQZtZW1zZXSkCQZzdHJjbXClCQtfX3N0cmNocm51bKYJB3N0cmNzcG6nCQdfX2xldGYyqAkHX19nZXRmMqkJDV9fZXh0ZW5kZGZ0ZjKqCQlfX2ZpeHRmc2mrCQtfX2Zsb2F0ZGl0ZqwJC19fZmxvYXRzaXRmrQkMX190cnVuY3RmZGYyrgkIX19hZGR0ZjOvCQlfX2FzaGx0aTOwCQhfX2RpdnRmM7EJDV9fZmVfZ2V0cm91bmSyCRJfX2ZlX3JhaXNlX2luZXhhY3SzCQlfX2xzaHJ0aTO0CQhfX211bHRpM7UJCF9fbXVsdGYztgkIX19zdWJ0ZjMAhQEJcHJvZHVjZXJzAghsYW5ndWFnZQEDQzk5AAxwcm9jZXNzZWQtYnkBBWNsYW5nVjEwLjAuMCAoaHR0cHM6Ly9naXRodWIuY29tL2xsdm0vbGx2bS1wcm9qZWN0IGQzMjE3MGRiZDViMGQ1NDQzNjUzN2I2Yjc1YmVhZjQ0MzI0ZTBjMjgp"; function decode11(base64) { const bytesStr = atob(base64); - const bytes43 = new Uint8Array(bytesStr.length); - for(let i284 = 0, c75 = bytesStr.length; i284 < c75; i284++){ - bytes43[i284] = bytesStr.charCodeAt(i284); + const bytes45 = new Uint8Array(bytesStr.length); + for(let i288 = 0, c75 = bytesStr.length; i288 < c75; i288++){ + bytes45[i288] = bytesStr.charCodeAt(i288); } - return bytes43; + return bytes45; } const module1 = new WebAssembly.Module(decode11(wasm4)); -function instantiate() { +function instantiate2() { const placeholder = { exports: null }; @@ -76133,8 +78738,8 @@ class PreparedQuery { if (Array.isArray(params)) { parameters = params; } else if (typeof params === "object") { - for (const key164 of Object.keys(params)){ - let name80 = key164; + for (const key166 of Object.keys(params)){ + let name80 = key166; if (name80[0] !== ":" && name80[0] !== "@" && name80[0] !== "$") { name80 = `:${name80}`; } @@ -76142,46 +78747,46 @@ class PreparedQuery { if (idx === Values.Error) { throw new SqliteError(`No parameter named '${name80}'.`); } - parameters[idx - 1] = params[key164]; + parameters[idx - 1] = params[key166]; } } - for(let i285 = 0; i285 < parameters.length; i285++){ - let value555 = parameters[i285]; + for(let i289 = 0; i289 < parameters.length; i289++){ + let value559 = parameters[i289]; let status; - switch(typeof value555){ + switch(typeof value559){ case "boolean": - value555 = value555 ? 1 : 0; + value559 = value559 ? 1 : 0; case "number": - if (Number.isSafeInteger(value555)) { - status = this._wasm.bind_int(this._stmt, i285 + 1, value555); + if (Number.isSafeInteger(value559)) { + status = this._wasm.bind_int(this._stmt, i289 + 1, value559); } else { - status = this._wasm.bind_double(this._stmt, i285 + 1, value555); + status = this._wasm.bind_double(this._stmt, i289 + 1, value559); } break; case "bigint": - if (value555 > 9223372036854775807n || value555 < -9223372036854775808n) { - throw new SqliteError(`BigInt value ${value555} overflows 64 bit integer.`); + if (value559 > 9223372036854775807n || value559 < -9223372036854775808n) { + throw new SqliteError(`BigInt value ${value559} overflows 64 bit integer.`); } else { - const posVal = value555 >= 0n ? value555 : -value555; - const sign5 = value555 >= 0n ? 1 : -1; + const posVal = value559 >= 0n ? value559 : -value559; + const sign5 = value559 >= 0n ? 1 : -1; const upper = Number(BigInt.asUintN(32, posVal >> 32n)); const lower = Number(BigInt.asUintN(32, posVal)); - status = this._wasm.bind_big_int(this._stmt, i285 + 1, sign5, upper, lower); + status = this._wasm.bind_big_int(this._stmt, i289 + 1, sign5, upper, lower); } break; case "string": - status = setStr(this._wasm, value555, (ptr)=>this._wasm.bind_text(this._stmt, i285 + 1, ptr)); + status = setStr(this._wasm, value559, (ptr)=>this._wasm.bind_text(this._stmt, i289 + 1, ptr)); break; default: - if (value555 instanceof Date) { - status = setStr(this._wasm, value555.toISOString(), (ptr)=>this._wasm.bind_text(this._stmt, i285 + 1, ptr)); - } else if (value555 instanceof Uint8Array) { - const size4 = value555.length; - status = setArr(this._wasm, value555, (ptr)=>this._wasm.bind_blob(this._stmt, i285 + 1, ptr, size4)); - } else if (value555 === null || value555 === undefined) { - status = this._wasm.bind_null(this._stmt, i285 + 1); + if (value559 instanceof Date) { + status = setStr(this._wasm, value559.toISOString(), (ptr)=>this._wasm.bind_text(this._stmt, i289 + 1, ptr)); + } else if (value559 instanceof Uint8Array) { + const size4 = value559.length; + status = setArr(this._wasm, value559, (ptr)=>this._wasm.bind_blob(this._stmt, i289 + 1, ptr, size4)); + } else if (value559 === null || value559 === undefined) { + status = this._wasm.bind_null(this._stmt, i289 + 1); } else { - throw new SqliteError(`Can not bind ${typeof value555}.`); + throw new SqliteError(`Can not bind ${typeof value559}.`); } break; } @@ -76196,31 +78801,31 @@ class PreparedQuery { } const columnCount = this._wasm.column_count(this._stmt); const row = []; - for(let i286 = 0; i286 < columnCount; i286++){ - switch(this._wasm.column_type(this._stmt, i286)){ + for(let i290 = 0; i290 < columnCount; i290++){ + switch(this._wasm.column_type(this._stmt, i290)){ case Types.Integer: - row.push(this._wasm.column_int(this._stmt, i286)); + row.push(this._wasm.column_int(this._stmt, i290)); break; case Types.Float: - row.push(this._wasm.column_double(this._stmt, i286)); + row.push(this._wasm.column_double(this._stmt, i290)); break; case Types.Text: - row.push(getStr(this._wasm, this._wasm.column_text(this._stmt, i286))); + row.push(getStr(this._wasm, this._wasm.column_text(this._stmt, i290))); break; case Types.Blob: { - const ptr = this._wasm.column_blob(this._stmt, i286); + const ptr = this._wasm.column_blob(this._stmt, i290); if (ptr === 0) { row.push(null); } else { - const length = this._wasm.column_bytes(this._stmt, i286); + const length = this._wasm.column_bytes(this._stmt, i290); row.push(new Uint8Array(this._wasm.memory.buffer, ptr, length).slice()); } break; } case Types.BigInteger: { - const ptr = this._wasm.column_text(this._stmt, i286); + const ptr = this._wasm.column_text(this._stmt, i290); row.push(BigInt(getStr(this._wasm, ptr))); break; } @@ -76235,8 +78840,8 @@ class PreparedQuery { if (this._rowKeys == null) { const rowCount = this._wasm.column_count(this._stmt); this._rowKeys = []; - for(let i287 = 0; i287 < rowCount; i287++){ - this._rowKeys.push(getStr(this._wasm, this._wasm.column_name(this._stmt, i287))); + for(let i291 = 0; i291 < rowCount; i291++){ + this._rowKeys.push(getStr(this._wasm, this._wasm.column_name(this._stmt, i291))); } } const obj1 = row.reduce((obj, val, idx)=>{ @@ -76264,16 +78869,16 @@ class PreparedQuery { } next() { if (this._status === Status1.SqliteRow) { - const value556 = this.getQueryRow(); + const value560 = this.getQueryRow(); this._status = this._wasm.step(this._stmt); if (this._iterKv) { return { - value: this.makeRowObject(value556), + value: this.makeRowObject(value560), done: false }; } else { return { - value: value556, + value: value560, done: false }; } @@ -76349,10 +78954,10 @@ class PreparedQuery { } const columnCount = this._wasm.column_count(this._stmt); const columns = []; - for(let i288 = 0; i288 < columnCount; i288++){ - const name81 = getStr(this._wasm, this._wasm.column_name(this._stmt, i288)); - const originName = getStr(this._wasm, this._wasm.column_origin_name(this._stmt, i288)); - const tableName = getStr(this._wasm, this._wasm.column_table_name(this._stmt, i288)); + for(let i292 = 0; i292 < columnCount; i292++){ + const name81 = getStr(this._wasm, this._wasm.column_name(this._stmt, i292)); + const originName = getStr(this._wasm, this._wasm.column_origin_name(this._stmt, i292)); + const tableName = getStr(this._wasm, this._wasm.column_table_name(this._stmt, i292)); columns.push({ name: name81, originName, @@ -76366,12 +78971,12 @@ class DB { _wasm; _open; _statements; - constructor(path135 = ":memory:", options113 = {}){ - this._wasm = instantiate().exports; + constructor(path134 = ":memory:", options115 = {}){ + this._wasm = instantiate2().exports; this._open = false; this._statements = new Set(); let flags7 = 0; - switch(options113.mode){ + switch(options115.mode){ case "read": flags7 = OpenFlags.ReadOnly; break; @@ -76383,13 +78988,13 @@ class DB { flags7 = OpenFlags.ReadWrite | OpenFlags.Create; break; } - if (options113.memory === true) { + if (options115.memory === true) { flags7 |= OpenFlags.Memory; } - if (options113.uri === true) { + if (options115.uri === true) { flags7 |= OpenFlags.Uri; } - const status = setStr(this._wasm, path135, (ptr)=>this._wasm.open(ptr, flags7)); + const status = setStr(this._wasm, path134, (ptr)=>this._wasm.open(ptr, flags7)); if (status !== Status1.SqliteOk) { throw new SqliteError(this._wasm, status); } @@ -76463,12 +79068,12 @@ function createCommonjsModule(fn, module2) { var byteLength_1 = byteLength1; var toByteArray_1 = toByteArray; var fromByteArray_1 = fromByteArray; -var lookup1 = []; +var lookup = []; var revLookup = []; var Arr = typeof Uint8Array !== "undefined" ? Uint8Array : Array; var code4 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; for(var i8 = 0, len = code4.length; i8 < len; ++i8){ - lookup1[i8] = code4[i8]; + lookup[i8] = code4[i8]; revLookup[code4.charCodeAt(i8)] = i8; } revLookup["-".charCodeAt(0)] = 62; @@ -76522,13 +79127,13 @@ function toByteArray(b64) { return arr; } function tripletToBase64(num) { - return lookup1[num >> 18 & 63] + lookup1[num >> 12 & 63] + lookup1[num >> 6 & 63] + lookup1[num & 63]; + return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63]; } -function encodeChunk(uint8, start61, end) { +function encodeChunk(uint8, start62, end) { var tmp; var output = []; - for(var i289 = start61; i289 < end; i289 += 3){ - tmp = (uint8[i289] << 16 & 16711680) + (uint8[i289 + 1] << 8 & 65280) + (uint8[i289 + 2] & 255); + for(var i293 = start62; i293 < end; i293 += 3){ + tmp = (uint8[i293] << 16 & 16711680) + (uint8[i293 + 1] << 8 & 65280) + (uint8[i293 + 2] & 255); output.push(tripletToBase64(tmp)); } return output.join(""); @@ -76544,10 +79149,10 @@ function fromByteArray(uint8) { } if (extraBytes === 1) { tmp = uint8[len3 - 1]; - parts12.push(lookup1[tmp >> 2] + lookup1[tmp << 4 & 63] + "=="); + parts12.push(lookup[tmp >> 2] + lookup[tmp << 4 & 63] + "=="); } else if (extraBytes === 2) { tmp = (uint8[len3 - 2] << 8) + uint8[len3 - 1]; - parts12.push(lookup1[tmp >> 10] + lookup1[tmp >> 4 & 63] + lookup1[tmp << 2 & 63] + "="); + parts12.push(lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + "="); } return parts12.join(""); } @@ -76557,7 +79162,7 @@ var base64Js = { fromByteArray: fromByteArray_1 }; var read = function read2(buffer2, offset138, isLE, mLen, nBytes) { - var e162, m41; + var e163, m41; var eLen = nBytes * 8 - mLen - 1; var eMax = (1 << eLen) - 1; var eBias = eMax >> 1; @@ -76566,67 +79171,67 @@ var read = function read2(buffer2, offset138, isLE, mLen, nBytes) { var d27 = isLE ? -1 : 1; var s58 = buffer2[offset138 + i410]; i410 += d27; - e162 = s58 & (1 << -nBits) - 1; + e163 = s58 & (1 << -nBits) - 1; s58 >>= -nBits; nBits += eLen; - for(; nBits > 0; e162 = e162 * 256 + buffer2[offset138 + i410], i410 += d27, nBits -= 8){} - m41 = e162 & (1 << -nBits) - 1; - e162 >>= -nBits; + for(; nBits > 0; e163 = e163 * 256 + buffer2[offset138 + i410], i410 += d27, nBits -= 8){} + m41 = e163 & (1 << -nBits) - 1; + e163 >>= -nBits; nBits += mLen; for(; nBits > 0; m41 = m41 * 256 + buffer2[offset138 + i410], i410 += d27, nBits -= 8){} - if (e162 === 0) { - e162 = 1 - eBias; - } else if (e162 === eMax) { + if (e163 === 0) { + e163 = 1 - eBias; + } else if (e163 === eMax) { return m41 ? NaN : (s58 ? -1 : 1) * Infinity; } else { m41 = m41 + Math.pow(2, mLen); - e162 = e162 - eBias; + e163 = e163 - eBias; } - return (s58 ? -1 : 1) * m41 * Math.pow(2, e162 - mLen); + return (s58 ? -1 : 1) * m41 * Math.pow(2, e163 - mLen); }; -var write = function write2(buffer2, value557, offset139, isLE, mLen, nBytes) { - var e163, m42, c76; +var write = function write2(buffer2, value561, offset139, isLE, mLen, nBytes) { + var e164, m42, c76; var eLen = nBytes * 8 - mLen - 1; var eMax = (1 << eLen) - 1; var eBias = eMax >> 1; var rt = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0; var i510 = isLE ? 0 : nBytes - 1; var d28 = isLE ? 1 : -1; - var s59 = value557 < 0 || value557 === 0 && 1 / value557 < 0 ? 1 : 0; - value557 = Math.abs(value557); - if (isNaN(value557) || value557 === Infinity) { - m42 = isNaN(value557) ? 1 : 0; - e163 = eMax; + var s59 = value561 < 0 || value561 === 0 && 1 / value561 < 0 ? 1 : 0; + value561 = Math.abs(value561); + if (isNaN(value561) || value561 === Infinity) { + m42 = isNaN(value561) ? 1 : 0; + e164 = eMax; } else { - e163 = Math.floor(Math.log(value557) / Math.LN2); - if (value557 * (c76 = Math.pow(2, -e163)) < 1) { - e163--; + e164 = Math.floor(Math.log(value561) / Math.LN2); + if (value561 * (c76 = Math.pow(2, -e164)) < 1) { + e164--; c76 *= 2; } - if (e163 + eBias >= 1) { - value557 += rt / c76; + if (e164 + eBias >= 1) { + value561 += rt / c76; } else { - value557 += rt * Math.pow(2, 1 - eBias); + value561 += rt * Math.pow(2, 1 - eBias); } - if (value557 * c76 >= 2) { - e163++; + if (value561 * c76 >= 2) { + e164++; c76 /= 2; } - if (e163 + eBias >= eMax) { + if (e164 + eBias >= eMax) { m42 = 0; - e163 = eMax; - } else if (e163 + eBias >= 1) { - m42 = (value557 * c76 - 1) * Math.pow(2, mLen); - e163 = e163 + eBias; + e164 = eMax; + } else if (e164 + eBias >= 1) { + m42 = (value561 * c76 - 1) * Math.pow(2, mLen); + e164 = e164 + eBias; } else { - m42 = value557 * Math.pow(2, eBias - 1) * Math.pow(2, mLen); - e163 = 0; + m42 = value561 * Math.pow(2, eBias - 1) * Math.pow(2, mLen); + e164 = 0; } } for(; mLen >= 8; buffer2[offset139 + i510] = m42 & 255, i510 += d28, m42 /= 256, mLen -= 8){} - e163 = e163 << mLen | m42; + e164 = e164 << mLen | m42; eLen += mLen; - for(; eLen > 0; buffer2[offset139 + i510] = e163 & 255, i510 += d28, e163 /= 256, eLen -= 8){} + for(; eLen > 0; buffer2[offset139 + i510] = e164 & 255, i510 += d28, e164 /= 256, eLen -= 8){} buffer2[offset139 + i510 - d28] |= s59 * 128; }; var ieee754 = { @@ -76691,38 +79296,38 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { return from(arg, encodingOrOffset, length); } Buffer.poolSize = 8192; - function from(value558, encodingOrOffset, length) { - if (typeof value558 === "string") { - return fromString1(value558, encodingOrOffset); + function from(value562, encodingOrOffset, length) { + if (typeof value562 === "string") { + return fromString1(value562, encodingOrOffset); } - if (ArrayBuffer.isView(value558)) { - return fromArrayView(value558); + if (ArrayBuffer.isView(value562)) { + return fromArrayView(value562); } - if (value558 == null) { - throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + babelHelpers["typeof"](value558)); + if (value562 == null) { + throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + babelHelpers["typeof"](value562)); } - if (isInstance1(value558, ArrayBuffer) || value558 && isInstance1(value558.buffer, ArrayBuffer)) { - return fromArrayBuffer1(value558, encodingOrOffset, length); + if (isInstance1(value562, ArrayBuffer) || value562 && isInstance1(value562.buffer, ArrayBuffer)) { + return fromArrayBuffer1(value562, encodingOrOffset, length); } - if (typeof SharedArrayBuffer !== "undefined" && (isInstance1(value558, SharedArrayBuffer) || value558 && isInstance1(value558.buffer, SharedArrayBuffer))) { - return fromArrayBuffer1(value558, encodingOrOffset, length); + if (typeof SharedArrayBuffer !== "undefined" && (isInstance1(value562, SharedArrayBuffer) || value562 && isInstance1(value562.buffer, SharedArrayBuffer))) { + return fromArrayBuffer1(value562, encodingOrOffset, length); } - if (typeof value558 === "number") { + if (typeof value562 === "number") { throw new TypeError('The "value" argument must not be of type number. Received type number'); } - var valueOf = value558.valueOf && value558.valueOf(); - if (valueOf != null && valueOf !== value558) { + var valueOf = value562.valueOf && value562.valueOf(); + if (valueOf != null && valueOf !== value562) { return Buffer.from(valueOf, encodingOrOffset, length); } - var b46 = fromObject1(value558); - if (b46) return b46; - if (typeof Symbol !== "undefined" && Symbol.toPrimitive != null && typeof value558[Symbol.toPrimitive] === "function") { - return Buffer.from(value558[Symbol.toPrimitive]("string"), encodingOrOffset, length); + var b49 = fromObject1(value562); + if (b49) return b49; + if (typeof Symbol !== "undefined" && Symbol.toPrimitive != null && typeof value562[Symbol.toPrimitive] === "function") { + return Buffer.from(value562[Symbol.toPrimitive]("string"), encodingOrOffset, length); } - throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + babelHelpers["typeof"](value558)); + throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + babelHelpers["typeof"](value562)); } - Buffer.from = function(value559, encodingOrOffset, length) { - return from(value559, encodingOrOffset, length); + Buffer.from = function(value563, encodingOrOffset, length) { + return from(value563, encodingOrOffset, length); }; Object.setPrototypeOf(Buffer.prototype, Uint8Array.prototype); Object.setPrototypeOf(Buffer, Uint8Array); @@ -76836,22 +79441,22 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } return Buffer.alloc(+length); } - Buffer.isBuffer = function isBuffer(b47) { - return b47 != null && b47._isBuffer === true && b47 !== Buffer.prototype; + Buffer.isBuffer = function isBuffer(b50) { + return b50 != null && b50._isBuffer === true && b50 !== Buffer.prototype; }; - Buffer.compare = function compare(a45, b48) { + Buffer.compare = function compare(a45, b51) { if (isInstance1(a45, Uint8Array)) a45 = Buffer.from(a45, a45.offset, a45.byteLength); - if (isInstance1(b48, Uint8Array)) b48 = Buffer.from(b48, b48.offset, b48.byteLength); - if (!Buffer.isBuffer(a45) || !Buffer.isBuffer(b48)) { + if (isInstance1(b51, Uint8Array)) b51 = Buffer.from(b51, b51.offset, b51.byteLength); + if (!Buffer.isBuffer(a45) || !Buffer.isBuffer(b51)) { throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); } - if (a45 === b48) return 0; + if (a45 === b51) return 0; var x28 = a45.length; - var y11 = b48.length; + var y11 = b51.length; for(var i710 = 0, len5 = Math.min(x28, y11); i710 < len5; ++i710){ - if (a45[i710] !== b48[i710]) { + if (a45[i710] !== b51[i710]) { x28 = a45[i710]; - y11 = b48[i710]; + y11 = b51[i710]; break; } } @@ -76952,12 +79557,12 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } } Buffer.byteLength = byteLength2; - function slowToString(encoding, start62, end) { + function slowToString(encoding, start63, end) { var loweredCase = false; - if (start62 === void 0 || start62 < 0) { - start62 = 0; + if (start63 === void 0 || start63 < 0) { + start63 = 0; } - if (start62 > this.length) { + if (start63 > this.length) { return ""; } if (end === void 0 || end > this.length) { @@ -76967,30 +79572,30 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { return ""; } end >>>= 0; - start62 >>>= 0; - if (end <= start62) { + start63 >>>= 0; + if (end <= start63) { return ""; } if (!encoding) encoding = "utf8"; while(true){ switch(encoding){ case "hex": - return hexSlice1(this, start62, end); + return hexSlice1(this, start63, end); case "utf8": case "utf-8": - return utf8Slice(this, start62, end); + return utf8Slice(this, start63, end); case "ascii": - return asciiSlice(this, start62, end); + return asciiSlice(this, start63, end); case "latin1": case "binary": - return latin1Slice(this, start62, end); + return latin1Slice(this, start63, end); case "base64": - return base64Slice(this, start62, end); + return base64Slice(this, start63, end); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": - return utf16leSlice(this, start62, end); + return utf16leSlice(this, start63, end); default: if (loweredCase) throw new TypeError("Unknown encoding: " + encoding); encoding = (encoding + "").toLowerCase(); @@ -76999,10 +79604,10 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } } Buffer.prototype._isBuffer = true; - function swap1(b49, n163, m43) { - var i9 = b49[n163]; - b49[n163] = b49[m43]; - b49[m43] = i9; + function swap1(b52, n164, m43) { + var i9 = b52[n164]; + b52[n164] = b52[m43]; + b52[m43] = i9; } Buffer.prototype.swap16 = function swap16() { var len7 = this.length; @@ -77045,10 +79650,10 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { return slowToString.apply(this, arguments); }; Buffer.prototype.toLocaleString = Buffer.prototype.toString; - Buffer.prototype.equals = function equals(b50) { - if (!Buffer.isBuffer(b50)) throw new TypeError("Argument must be a Buffer"); - if (this === b50) return true; - return Buffer.compare(this, b50) === 0; + Buffer.prototype.equals = function equals(b53) { + if (!Buffer.isBuffer(b53)) throw new TypeError("Argument must be a Buffer"); + if (this === b53) return true; + return Buffer.compare(this, b53) === 0; }; Buffer.prototype.inspect = function inspect() { var str146 = ""; @@ -77060,15 +79665,15 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { if (customInspectSymbol2) { Buffer.prototype[customInspectSymbol2] = Buffer.prototype.inspect; } - Buffer.prototype.compare = function compare(target, start63, end, thisStart, thisEnd) { + Buffer.prototype.compare = function compare(target, start64, end, thisStart, thisEnd) { if (isInstance1(target, Uint8Array)) { target = Buffer.from(target, target.offset, target.byteLength); } if (!Buffer.isBuffer(target)) { throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + babelHelpers["typeof"](target)); } - if (start63 === void 0) { - start63 = 0; + if (start64 === void 0) { + start64 = 0; } if (end === void 0) { end = target ? target.length : 0; @@ -77079,28 +79684,28 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { if (thisEnd === void 0) { thisEnd = this.length; } - if (start63 < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { + if (start64 < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { throw new RangeError("out of range index"); } - if (thisStart >= thisEnd && start63 >= end) { + if (thisStart >= thisEnd && start64 >= end) { return 0; } if (thisStart >= thisEnd) { return -1; } - if (start63 >= end) { + if (start64 >= end) { return 1; } - start63 >>>= 0; + start64 >>>= 0; end >>>= 0; thisStart >>>= 0; thisEnd >>>= 0; if (this === target) return 0; var x29 = thisEnd - thisStart; - var y12 = end - start63; + var y12 = end - start64; var len10 = Math.min(x29, y12); var thisCopy = this.slice(thisStart, thisEnd); - var targetCopy = target.slice(start63, end); + var targetCopy = target.slice(start64, end); for(var i13 = 0; i13 < len10; ++i13){ if (thisCopy[i13] !== targetCopy[i13]) { x29 = thisCopy[i13]; @@ -77173,11 +79778,11 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { byteOffset /= 2; } } - function read3(buf, i290) { + function read3(buf, i294) { if (indexSize === 1) { - return buf[i290]; + return buf[i294]; } else { - return buf.readUInt16BE(i290 * indexSize); + return buf.readUInt16BE(i294 * indexSize); } } var i14; @@ -77309,17 +79914,17 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { data: Array.prototype.slice.call(this._arr || this, 0) }; }; - function base64Slice(buf, start64, end) { - if (start64 === 0 && end === buf.length) { + function base64Slice(buf, start65, end) { + if (start65 === 0 && end === buf.length) { return base64Js.fromByteArray(buf); } else { - return base64Js.fromByteArray(buf.slice(start64, end)); + return base64Js.fromByteArray(buf.slice(start65, end)); } } - function utf8Slice(buf, start65, end) { + function utf8Slice(buf, start66, end) { end = Math.min(buf.length, end); var res = []; - var i16 = start65; + var i16 = start66; while(i16 < end){ var firstByte = buf[i16]; var codePoint = null; @@ -77389,49 +79994,49 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } return res; } - function asciiSlice(buf, start66, end) { + function asciiSlice(buf, start67, end) { var ret = ""; end = Math.min(buf.length, end); - for(var i18 = start66; i18 < end; ++i18){ + for(var i18 = start67; i18 < end; ++i18){ ret += String.fromCharCode(buf[i18] & 127); } return ret; } - function latin1Slice(buf, start67, end) { + function latin1Slice(buf, start68, end) { var ret = ""; end = Math.min(buf.length, end); - for(var i19 = start67; i19 < end; ++i19){ + for(var i19 = start68; i19 < end; ++i19){ ret += String.fromCharCode(buf[i19]); } return ret; } - function hexSlice1(buf, start68, end) { + function hexSlice1(buf, start69, end) { var len12 = buf.length; - if (!start68 || start68 < 0) start68 = 0; + if (!start69 || start69 < 0) start69 = 0; if (!end || end < 0 || end > len12) end = len12; var out = ""; - for(var i20 = start68; i20 < end; ++i20){ + for(var i20 = start69; i20 < end; ++i20){ out += hexSliceLookupTable1[buf[i20]]; } return out; } - function utf16leSlice(buf, start69, end) { - var bytes44 = buf.slice(start69, end); + function utf16leSlice(buf, start70, end) { + var bytes46 = buf.slice(start70, end); var res = ""; - for(var i21 = 0; i21 < bytes44.length - 1; i21 += 2){ - res += String.fromCharCode(bytes44[i21] + bytes44[i21 + 1] * 256); + for(var i21 = 0; i21 < bytes46.length - 1; i21 += 2){ + res += String.fromCharCode(bytes46[i21] + bytes46[i21 + 1] * 256); } return res; } - Buffer.prototype.slice = function slice(start70, end) { + Buffer.prototype.slice = function slice(start71, end) { var len13 = this.length; - start70 = ~~start70; + start71 = ~~start71; end = end === void 0 ? len13 : ~~end; - if (start70 < 0) { - start70 += len13; - if (start70 < 0) start70 = 0; - } else if (start70 > len13) { - start70 = len13; + if (start71 < 0) { + start71 += len13; + if (start71 < 0) start71 = 0; + } else if (start71 > len13) { + start71 = len13; } if (end < 0) { end += len13; @@ -77439,8 +80044,8 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } else if (end > len13) { end = len13; } - if (end < start70) end = start70; - var newBuf = this.subarray(start70, end); + if (end < start71) end = start71; + var newBuf = this.subarray(start71, end); Object.setPrototypeOf(newBuf, Buffer.prototype); return newBuf; }; @@ -77574,234 +80179,234 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { if (!noAssert) checkOffset(offset164, 8, this.length); return ieee754.read(this, offset164, false, 52, 8); }; - function checkInt1(buf, value560, offset165, ext, max27, min26) { + function checkInt1(buf, value564, offset165, ext, max27, min26) { if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance'); - if (value560 > max27 || value560 < min26) throw new RangeError('"value" argument is out of bounds'); + if (value564 > max27 || value564 < min26) throw new RangeError('"value" argument is out of bounds'); if (offset165 + ext > buf.length) throw new RangeError("Index out of range"); } - Buffer.prototype.writeUintLE = Buffer.prototype.writeUIntLE = function writeUIntLE(value561, offset166, byteLength3, noAssert) { - value561 = +value561; + Buffer.prototype.writeUintLE = Buffer.prototype.writeUIntLE = function writeUIntLE(value565, offset166, byteLength3, noAssert) { + value565 = +value565; offset166 = offset166 >>> 0; byteLength3 = byteLength3 >>> 0; if (!noAssert) { var maxBytes = Math.pow(2, 8 * byteLength3) - 1; - checkInt1(this, value561, offset166, byteLength3, maxBytes, 0); + checkInt1(this, value565, offset166, byteLength3, maxBytes, 0); } var mul = 1; var i25 = 0; - this[offset166] = value561 & 255; + this[offset166] = value565 & 255; while(++i25 < byteLength3 && (mul *= 256)){ - this[offset166 + i25] = value561 / mul & 255; + this[offset166 + i25] = value565 / mul & 255; } return offset166 + byteLength3; }; - Buffer.prototype.writeUintBE = Buffer.prototype.writeUIntBE = function writeUIntBE(value562, offset167, byteLength3, noAssert) { - value562 = +value562; + Buffer.prototype.writeUintBE = Buffer.prototype.writeUIntBE = function writeUIntBE(value566, offset167, byteLength3, noAssert) { + value566 = +value566; offset167 = offset167 >>> 0; byteLength3 = byteLength3 >>> 0; if (!noAssert) { var maxBytes = Math.pow(2, 8 * byteLength3) - 1; - checkInt1(this, value562, offset167, byteLength3, maxBytes, 0); + checkInt1(this, value566, offset167, byteLength3, maxBytes, 0); } var i26 = byteLength3 - 1; var mul = 1; - this[offset167 + i26] = value562 & 255; + this[offset167 + i26] = value566 & 255; while(--i26 >= 0 && (mul *= 256)){ - this[offset167 + i26] = value562 / mul & 255; + this[offset167 + i26] = value566 / mul & 255; } return offset167 + byteLength3; }; - Buffer.prototype.writeUint8 = Buffer.prototype.writeUInt8 = function writeUInt8(value563, offset168, noAssert) { - value563 = +value563; + Buffer.prototype.writeUint8 = Buffer.prototype.writeUInt8 = function writeUInt8(value567, offset168, noAssert) { + value567 = +value567; offset168 = offset168 >>> 0; - if (!noAssert) checkInt1(this, value563, offset168, 1, 255, 0); - this[offset168] = value563 & 255; + if (!noAssert) checkInt1(this, value567, offset168, 1, 255, 0); + this[offset168] = value567 & 255; return offset168 + 1; }; - Buffer.prototype.writeUint16LE = Buffer.prototype.writeUInt16LE = function writeUInt16LE(value564, offset169, noAssert) { - value564 = +value564; + Buffer.prototype.writeUint16LE = Buffer.prototype.writeUInt16LE = function writeUInt16LE(value568, offset169, noAssert) { + value568 = +value568; offset169 = offset169 >>> 0; - if (!noAssert) checkInt1(this, value564, offset169, 2, 65535, 0); - this[offset169] = value564 & 255; - this[offset169 + 1] = value564 >>> 8; + if (!noAssert) checkInt1(this, value568, offset169, 2, 65535, 0); + this[offset169] = value568 & 255; + this[offset169 + 1] = value568 >>> 8; return offset169 + 2; }; - Buffer.prototype.writeUint16BE = Buffer.prototype.writeUInt16BE = function writeUInt16BE(value565, offset170, noAssert) { - value565 = +value565; + Buffer.prototype.writeUint16BE = Buffer.prototype.writeUInt16BE = function writeUInt16BE(value569, offset170, noAssert) { + value569 = +value569; offset170 = offset170 >>> 0; - if (!noAssert) checkInt1(this, value565, offset170, 2, 65535, 0); - this[offset170] = value565 >>> 8; - this[offset170 + 1] = value565 & 255; + if (!noAssert) checkInt1(this, value569, offset170, 2, 65535, 0); + this[offset170] = value569 >>> 8; + this[offset170 + 1] = value569 & 255; return offset170 + 2; }; - Buffer.prototype.writeUint32LE = Buffer.prototype.writeUInt32LE = function writeUInt32LE(value566, offset171, noAssert) { - value566 = +value566; + Buffer.prototype.writeUint32LE = Buffer.prototype.writeUInt32LE = function writeUInt32LE(value570, offset171, noAssert) { + value570 = +value570; offset171 = offset171 >>> 0; - if (!noAssert) checkInt1(this, value566, offset171, 4, 4294967295, 0); - this[offset171 + 3] = value566 >>> 24; - this[offset171 + 2] = value566 >>> 16; - this[offset171 + 1] = value566 >>> 8; - this[offset171] = value566 & 255; + if (!noAssert) checkInt1(this, value570, offset171, 4, 4294967295, 0); + this[offset171 + 3] = value570 >>> 24; + this[offset171 + 2] = value570 >>> 16; + this[offset171 + 1] = value570 >>> 8; + this[offset171] = value570 & 255; return offset171 + 4; }; - Buffer.prototype.writeUint32BE = Buffer.prototype.writeUInt32BE = function writeUInt32BE(value567, offset172, noAssert) { - value567 = +value567; + Buffer.prototype.writeUint32BE = Buffer.prototype.writeUInt32BE = function writeUInt32BE(value571, offset172, noAssert) { + value571 = +value571; offset172 = offset172 >>> 0; - if (!noAssert) checkInt1(this, value567, offset172, 4, 4294967295, 0); - this[offset172] = value567 >>> 24; - this[offset172 + 1] = value567 >>> 16; - this[offset172 + 2] = value567 >>> 8; - this[offset172 + 3] = value567 & 255; + if (!noAssert) checkInt1(this, value571, offset172, 4, 4294967295, 0); + this[offset172] = value571 >>> 24; + this[offset172 + 1] = value571 >>> 16; + this[offset172 + 2] = value571 >>> 8; + this[offset172 + 3] = value571 & 255; return offset172 + 4; }; - Buffer.prototype.writeIntLE = function writeIntLE(value568, offset173, byteLength3, noAssert) { - value568 = +value568; + Buffer.prototype.writeIntLE = function writeIntLE(value572, offset173, byteLength3, noAssert) { + value572 = +value572; offset173 = offset173 >>> 0; if (!noAssert) { var limit8 = Math.pow(2, 8 * byteLength3 - 1); - checkInt1(this, value568, offset173, byteLength3, limit8 - 1, -limit8); + checkInt1(this, value572, offset173, byteLength3, limit8 - 1, -limit8); } var i27 = 0; var mul = 1; var sub = 0; - this[offset173] = value568 & 255; + this[offset173] = value572 & 255; while(++i27 < byteLength3 && (mul *= 256)){ - if (value568 < 0 && sub === 0 && this[offset173 + i27 - 1] !== 0) { + if (value572 < 0 && sub === 0 && this[offset173 + i27 - 1] !== 0) { sub = 1; } - this[offset173 + i27] = (value568 / mul >> 0) - sub & 255; + this[offset173 + i27] = (value572 / mul >> 0) - sub & 255; } return offset173 + byteLength3; }; - Buffer.prototype.writeIntBE = function writeIntBE(value569, offset174, byteLength3, noAssert) { - value569 = +value569; + Buffer.prototype.writeIntBE = function writeIntBE(value573, offset174, byteLength3, noAssert) { + value573 = +value573; offset174 = offset174 >>> 0; if (!noAssert) { var limit9 = Math.pow(2, 8 * byteLength3 - 1); - checkInt1(this, value569, offset174, byteLength3, limit9 - 1, -limit9); + checkInt1(this, value573, offset174, byteLength3, limit9 - 1, -limit9); } var i28 = byteLength3 - 1; var mul = 1; var sub = 0; - this[offset174 + i28] = value569 & 255; + this[offset174 + i28] = value573 & 255; while(--i28 >= 0 && (mul *= 256)){ - if (value569 < 0 && sub === 0 && this[offset174 + i28 + 1] !== 0) { + if (value573 < 0 && sub === 0 && this[offset174 + i28 + 1] !== 0) { sub = 1; } - this[offset174 + i28] = (value569 / mul >> 0) - sub & 255; + this[offset174 + i28] = (value573 / mul >> 0) - sub & 255; } return offset174 + byteLength3; }; - Buffer.prototype.writeInt8 = function writeInt8(value570, offset175, noAssert) { - value570 = +value570; + Buffer.prototype.writeInt8 = function writeInt8(value574, offset175, noAssert) { + value574 = +value574; offset175 = offset175 >>> 0; - if (!noAssert) checkInt1(this, value570, offset175, 1, 127, -128); - if (value570 < 0) value570 = 255 + value570 + 1; - this[offset175] = value570 & 255; + if (!noAssert) checkInt1(this, value574, offset175, 1, 127, -128); + if (value574 < 0) value574 = 255 + value574 + 1; + this[offset175] = value574 & 255; return offset175 + 1; }; - Buffer.prototype.writeInt16LE = function writeInt16LE(value571, offset176, noAssert) { - value571 = +value571; + Buffer.prototype.writeInt16LE = function writeInt16LE(value575, offset176, noAssert) { + value575 = +value575; offset176 = offset176 >>> 0; - if (!noAssert) checkInt1(this, value571, offset176, 2, 32767, -32768); - this[offset176] = value571 & 255; - this[offset176 + 1] = value571 >>> 8; + if (!noAssert) checkInt1(this, value575, offset176, 2, 32767, -32768); + this[offset176] = value575 & 255; + this[offset176 + 1] = value575 >>> 8; return offset176 + 2; }; - Buffer.prototype.writeInt16BE = function writeInt16BE(value572, offset177, noAssert) { - value572 = +value572; + Buffer.prototype.writeInt16BE = function writeInt16BE(value576, offset177, noAssert) { + value576 = +value576; offset177 = offset177 >>> 0; - if (!noAssert) checkInt1(this, value572, offset177, 2, 32767, -32768); - this[offset177] = value572 >>> 8; - this[offset177 + 1] = value572 & 255; + if (!noAssert) checkInt1(this, value576, offset177, 2, 32767, -32768); + this[offset177] = value576 >>> 8; + this[offset177 + 1] = value576 & 255; return offset177 + 2; }; - Buffer.prototype.writeInt32LE = function writeInt32LE(value573, offset178, noAssert) { - value573 = +value573; + Buffer.prototype.writeInt32LE = function writeInt32LE(value577, offset178, noAssert) { + value577 = +value577; offset178 = offset178 >>> 0; - if (!noAssert) checkInt1(this, value573, offset178, 4, 2147483647, -2147483648); - this[offset178] = value573 & 255; - this[offset178 + 1] = value573 >>> 8; - this[offset178 + 2] = value573 >>> 16; - this[offset178 + 3] = value573 >>> 24; + if (!noAssert) checkInt1(this, value577, offset178, 4, 2147483647, -2147483648); + this[offset178] = value577 & 255; + this[offset178 + 1] = value577 >>> 8; + this[offset178 + 2] = value577 >>> 16; + this[offset178 + 3] = value577 >>> 24; return offset178 + 4; }; - Buffer.prototype.writeInt32BE = function writeInt32BE(value574, offset179, noAssert) { - value574 = +value574; + Buffer.prototype.writeInt32BE = function writeInt32BE(value578, offset179, noAssert) { + value578 = +value578; offset179 = offset179 >>> 0; - if (!noAssert) checkInt1(this, value574, offset179, 4, 2147483647, -2147483648); - if (value574 < 0) value574 = 4294967295 + value574 + 1; - this[offset179] = value574 >>> 24; - this[offset179 + 1] = value574 >>> 16; - this[offset179 + 2] = value574 >>> 8; - this[offset179 + 3] = value574 & 255; + if (!noAssert) checkInt1(this, value578, offset179, 4, 2147483647, -2147483648); + if (value578 < 0) value578 = 4294967295 + value578 + 1; + this[offset179] = value578 >>> 24; + this[offset179 + 1] = value578 >>> 16; + this[offset179 + 2] = value578 >>> 8; + this[offset179 + 3] = value578 & 255; return offset179 + 4; }; function checkIEEE754(buf, value, offset180, ext, max, min) { if (offset180 + ext > buf.length) throw new RangeError("Index out of range"); if (offset180 < 0) throw new RangeError("Index out of range"); } - function writeFloat(buf, value575, offset181, littleEndian, noAssert) { - value575 = +value575; + function writeFloat(buf, value579, offset181, littleEndian, noAssert) { + value579 = +value579; offset181 = offset181 >>> 0; if (!noAssert) { - checkIEEE754(buf, value575, offset181, 4); + checkIEEE754(buf, value579, offset181, 4); } - ieee754.write(buf, value575, offset181, littleEndian, 23, 4); + ieee754.write(buf, value579, offset181, littleEndian, 23, 4); return offset181 + 4; } - Buffer.prototype.writeFloatLE = function writeFloatLE(value576, offset182, noAssert) { - return writeFloat(this, value576, offset182, true, noAssert); + Buffer.prototype.writeFloatLE = function writeFloatLE(value580, offset182, noAssert) { + return writeFloat(this, value580, offset182, true, noAssert); }; - Buffer.prototype.writeFloatBE = function writeFloatBE(value577, offset183, noAssert) { - return writeFloat(this, value577, offset183, false, noAssert); + Buffer.prototype.writeFloatBE = function writeFloatBE(value581, offset183, noAssert) { + return writeFloat(this, value581, offset183, false, noAssert); }; - function writeDouble(buf, value578, offset184, littleEndian, noAssert) { - value578 = +value578; + function writeDouble(buf, value582, offset184, littleEndian, noAssert) { + value582 = +value582; offset184 = offset184 >>> 0; if (!noAssert) { - checkIEEE754(buf, value578, offset184, 8); + checkIEEE754(buf, value582, offset184, 8); } - ieee754.write(buf, value578, offset184, littleEndian, 52, 8); + ieee754.write(buf, value582, offset184, littleEndian, 52, 8); return offset184 + 8; } - Buffer.prototype.writeDoubleLE = function writeDoubleLE(value579, offset185, noAssert) { - return writeDouble(this, value579, offset185, true, noAssert); + Buffer.prototype.writeDoubleLE = function writeDoubleLE(value583, offset185, noAssert) { + return writeDouble(this, value583, offset185, true, noAssert); }; - Buffer.prototype.writeDoubleBE = function writeDoubleBE(value580, offset186, noAssert) { - return writeDouble(this, value580, offset186, false, noAssert); + Buffer.prototype.writeDoubleBE = function writeDoubleBE(value584, offset186, noAssert) { + return writeDouble(this, value584, offset186, false, noAssert); }; - Buffer.prototype.copy = function copy(target, targetStart, start71, end) { + Buffer.prototype.copy = function copy(target, targetStart, start72, end) { if (!Buffer.isBuffer(target)) throw new TypeError("argument should be a Buffer"); - if (!start71) start71 = 0; + if (!start72) start72 = 0; if (!end && end !== 0) end = this.length; if (targetStart >= target.length) targetStart = target.length; if (!targetStart) targetStart = 0; - if (end > 0 && end < start71) end = start71; - if (end === start71) return 0; + if (end > 0 && end < start72) end = start72; + if (end === start72) return 0; if (target.length === 0 || this.length === 0) return 0; if (targetStart < 0) { throw new RangeError("targetStart out of bounds"); } - if (start71 < 0 || start71 >= this.length) throw new RangeError("Index out of range"); + if (start72 < 0 || start72 >= this.length) throw new RangeError("Index out of range"); if (end < 0) throw new RangeError("sourceEnd out of bounds"); if (end > this.length) end = this.length; - if (target.length - targetStart < end - start71) { - end = target.length - targetStart + start71; + if (target.length - targetStart < end - start72) { + end = target.length - targetStart + start72; } - var len14 = end - start71; + var len14 = end - start72; if (this === target && typeof Uint8Array.prototype.copyWithin === "function") { - this.copyWithin(targetStart, start71, end); + this.copyWithin(targetStart, start72, end); } else { - Uint8Array.prototype.set.call(target, this.subarray(start71, end), targetStart); + Uint8Array.prototype.set.call(target, this.subarray(start72, end), targetStart); } return len14; }; - Buffer.prototype.fill = function fill(val, start72, end, encoding) { + Buffer.prototype.fill = function fill(val, start73, end, encoding) { if (typeof val === "string") { - if (typeof start72 === "string") { - encoding = start72; - start72 = 0; + if (typeof start73 === "string") { + encoding = start73; + start73 = 0; end = this.length; } else if (typeof end === "string") { encoding = end; @@ -77824,28 +80429,28 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } else if (typeof val === "boolean") { val = Number(val); } - if (start72 < 0 || this.length < start72 || this.length < end) { + if (start73 < 0 || this.length < start73 || this.length < end) { throw new RangeError("Out of range index"); } - if (end <= start72) { + if (end <= start73) { return this; } - start72 = start72 >>> 0; + start73 = start73 >>> 0; end = end === void 0 ? this.length : end >>> 0; if (!val) val = 0; var i29; if (typeof val === "number") { - for(i29 = start72; i29 < end; ++i29){ + for(i29 = start73; i29 < end; ++i29){ this[i29] = val; } } else { - var bytes45 = Buffer.isBuffer(val) ? val : Buffer.from(val, encoding); - var len15 = bytes45.length; + var bytes47 = Buffer.isBuffer(val) ? val : Buffer.from(val, encoding); + var len15 = bytes47.length; if (len15 === 0) { throw new TypeError('The value "' + val + '" is invalid for argument "value"'); } - for(i29 = 0; i29 < end - start72; ++i29){ - this[i29 + start72] = bytes45[i29 % len15]; + for(i29 = 0; i29 < end - start73; ++i29){ + this[i29 + start73] = bytes47[i29 % len15]; } } return this; @@ -77865,48 +80470,48 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { var codePoint; var length = string.length; var leadSurrogate = null; - var bytes46 = []; + var bytes48 = []; for(var i30 = 0; i30 < length; ++i30){ codePoint = string.charCodeAt(i30); if (codePoint > 55295 && codePoint < 57344) { if (!leadSurrogate) { if (codePoint > 56319) { - if ((units -= 3) > -1) bytes46.push(239, 191, 189); + if ((units -= 3) > -1) bytes48.push(239, 191, 189); continue; } else if (i30 + 1 === length) { - if ((units -= 3) > -1) bytes46.push(239, 191, 189); + if ((units -= 3) > -1) bytes48.push(239, 191, 189); continue; } leadSurrogate = codePoint; continue; } if (codePoint < 56320) { - if ((units -= 3) > -1) bytes46.push(239, 191, 189); + if ((units -= 3) > -1) bytes48.push(239, 191, 189); leadSurrogate = codePoint; continue; } codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536; } else if (leadSurrogate) { - if ((units -= 3) > -1) bytes46.push(239, 191, 189); + if ((units -= 3) > -1) bytes48.push(239, 191, 189); } leadSurrogate = null; if (codePoint < 128) { if ((units -= 1) < 0) break; - bytes46.push(codePoint); + bytes48.push(codePoint); } else if (codePoint < 2048) { if ((units -= 2) < 0) break; - bytes46.push(codePoint >> 6 | 192, codePoint & 63 | 128); + bytes48.push(codePoint >> 6 | 192, codePoint & 63 | 128); } else if (codePoint < 65536) { if ((units -= 3) < 0) break; - bytes46.push(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); + bytes48.push(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); } else if (codePoint < 1114112) { if ((units -= 4) < 0) break; - bytes46.push(codePoint >> 18 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); + bytes48.push(codePoint >> 18 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); } else { throw new Error("Invalid code point"); } } - return bytes46; + return bytes48; } function asciiToBytes1(str148) { var byteArray = []; @@ -77938,8 +80543,8 @@ var buffer$1 = createCommonjsModule(function(module, exports13) { } return i33; } - function isInstance1(obj, type81) { - return obj instanceof type81 || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type81.name; + function isInstance1(obj, type74) { + return obj instanceof type74 || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type74.name; } function numberIsNaN(obj) { return obj !== obj; @@ -77960,24 +80565,24 @@ var buffer_1 = buffer$1.Buffer; buffer$1.SlowBuffer; buffer$1.INSPECT_MAX_BYTES; buffer$1.kMaxLength; -var _extendStatics = function extendStatics(d30, b51) { +var _extendStatics = function extendStatics(d30, b54) { _extendStatics = Object.setPrototypeOf || ({ __proto__: [] }) instanceof Array && function(d29, b2) { d29.__proto__ = b2; } || function(d210, b2) { - for(var p61 in b2){ - if (b2.hasOwnProperty(p61)) d210[p61] = b2[p61]; + for(var p62 in b2){ + if (b2.hasOwnProperty(p62)) d210[p62] = b2[p62]; } }; - return _extendStatics(d30, b51); + return _extendStatics(d30, b54); }; -function __extends(d31, b52) { - _extendStatics(d31, b52); +function __extends(d31, b55) { + _extendStatics(d31, b55); function __() { this.constructor = d31; } - d31.prototype = b52 === null ? Object.create(b52) : (__.prototype = b52.prototype, new __()); + d31.prototype = b55 === null ? Object.create(b55) : (__.prototype = b55.prototype, new __()); } var BSONError = function(_super) { __extends(BSONError2, _super); @@ -78048,20 +80653,20 @@ var detectRandomBytes = function() { return requiredRandomBytes || insecureRandomBytes; }; var randomBytes1 = detectRandomBytes(); -function isAnyArrayBuffer2(value581) { +function isAnyArrayBuffer2(value585) { return [ "[object ArrayBuffer]", "[object SharedArrayBuffer]" - ].includes(Object.prototype.toString.call(value581)); + ].includes(Object.prototype.toString.call(value585)); } -function isUint8Array1(value582) { - return Object.prototype.toString.call(value582) === "[object Uint8Array]"; +function isUint8Array1(value586) { + return Object.prototype.toString.call(value586) === "[object Uint8Array]"; } -function isBigInt64Array1(value583) { - return Object.prototype.toString.call(value583) === "[object BigInt64Array]"; +function isBigInt64Array1(value587) { + return Object.prototype.toString.call(value587) === "[object BigInt64Array]"; } -function isBigUInt64Array(value584) { - return Object.prototype.toString.call(value584) === "[object BigUint64Array]"; +function isBigUInt64Array(value588) { + return Object.prototype.toString.call(value588) === "[object BigUint64Array]"; } function isRegExp3(d32) { return Object.prototype.toString.call(d32) === "[object RegExp]"; @@ -78137,10 +80742,10 @@ var UUID = function() { get: function() { return this[kId$1]; }, - set: function(value585) { - this[kId$1] = value585; + set: function(value589) { + this[kId$1] = value589; if (UUID2.cacheHexString) { - this.__id = bufferToUuidHexString(value585); + this.__id = bufferToUuidHexString(value589); } }, enumerable: false, @@ -78182,10 +80787,10 @@ var UUID = function() { return new Binary(this.id, Binary.SUBTYPE_UUID); }; UUID2.generate = function() { - var bytes47 = randomBytes1(BYTE_LENGTH); - bytes47[6] = bytes47[6] & 15 | 64; - bytes47[8] = bytes47[8] & 63 | 128; - return buffer_1.from(bytes47); + var bytes49 = randomBytes1(BYTE_LENGTH); + bytes49[6] = bytes49[6] & 15 | 64; + bytes49[8] = bytes49[8] & 63 | 128; + return buffer_1.from(bytes49); }; UUID2.isValid = function(input) { if (!input) { @@ -78307,11 +80912,11 @@ var Binary = function() { Binary2.prototype.toString = function(format25) { return this.buffer.toString(format25); }; - Binary2.prototype.toExtendedJSON = function(options114) { - options114 = options114 || {}; + Binary2.prototype.toExtendedJSON = function(options116) { + options116 = options116 || {}; var base64String = this.buffer.toString("base64"); var subType = Number(this.sub_type).toString(16); - if (options114.legacy) { + if (options116.legacy) { return { $binary: base64String, $type: subType.length === 1 ? "0" + subType : subType @@ -78330,28 +80935,28 @@ var Binary = function() { } throw new BSONError('Binary sub_type "' + this.sub_type + '" is not supported for converting to UUID. Only "' + Binary2.SUBTYPE_UUID + '" is currently supported.'); }; - Binary2.fromExtendedJSON = function(doc, options115) { - options115 = options115 || {}; - var data94; - var type82; + Binary2.fromExtendedJSON = function(doc, options117) { + options117 = options117 || {}; + var data97; + var type75; if ("$binary" in doc) { - if (options115.legacy && typeof doc.$binary === "string" && "$type" in doc) { - type82 = doc.$type ? parseInt(doc.$type, 16) : 0; - data94 = buffer_1.from(doc.$binary, "base64"); + if (options117.legacy && typeof doc.$binary === "string" && "$type" in doc) { + type75 = doc.$type ? parseInt(doc.$type, 16) : 0; + data97 = buffer_1.from(doc.$binary, "base64"); } else { if (typeof doc.$binary !== "string") { - type82 = doc.$binary.subType ? parseInt(doc.$binary.subType, 16) : 0; - data94 = buffer_1.from(doc.$binary.base64, "base64"); + type75 = doc.$binary.subType ? parseInt(doc.$binary.subType, 16) : 0; + data97 = buffer_1.from(doc.$binary.base64, "base64"); } } } else if ("$uuid" in doc) { - type82 = 4; - data94 = uuidHexStringToBuffer(doc.$uuid); + type75 = 4; + data97 = uuidHexStringToBuffer(doc.$uuid); } - if (!data94) { + if (!data97) { throw new BSONTypeError("Unexpected Binary Extended JSON format " + JSON.stringify(doc)); } - return new Binary2(data94, type82); + return new Binary2(data97, type75); }; Binary2.prototype[Symbol.for("nodejs.util.inspect.custom")] = function() { return this.inspect(); @@ -78414,8 +81019,8 @@ var Code = function() { Object.defineProperty(Code.prototype, "_bsontype", { value: "Code" }); -function isDBRefLike(value586) { - return isObjectLike(value586) && value586.$id != null && typeof value586.$ref === "string" && (value586.$db == null || typeof value586.$db === "string"); +function isDBRefLike(value590) { + return isObjectLike(value590) && value590.$id != null && typeof value590.$ref === "string" && (value590.$db == null || typeof value590.$db === "string"); } var DBRef = function() { function DBRef2(collection, oid, db, fields) { @@ -78434,32 +81039,32 @@ var DBRef = function() { get: function() { return this.collection; }, - set: function(value587) { - this.collection = value587; + set: function(value591) { + this.collection = value591; }, enumerable: false, configurable: true }); DBRef2.prototype.toJSON = function() { - var o33 = Object.assign({ + var o30 = Object.assign({ $ref: this.collection, $id: this.oid }, this.fields); - if (this.db != null) o33.$db = this.db; - return o33; + if (this.db != null) o30.$db = this.db; + return o30; }; - DBRef2.prototype.toExtendedJSON = function(options116) { - options116 = options116 || {}; - var o34 = { + DBRef2.prototype.toExtendedJSON = function(options118) { + options118 = options118 || {}; + var o33 = { $ref: this.collection, $id: this.oid }; - if (options116.legacy) { - return o34; + if (options118.legacy) { + return o33; } - if (this.db) o34.$db = this.db; - o34 = Object.assign(o34, this.fields); - return o34; + if (this.db) o33.$db = this.db; + o33 = Object.assign(o33, this.fields); + return o33; }; DBRef2.fromExtendedJSON = function(doc) { var copy10 = Object.assign({}, doc); @@ -78803,42 +81408,42 @@ var Long = function() { Long2.fromBits = function(lowBits, highBits, unsigned) { return new Long2(lowBits, highBits, unsigned); }; - Long2.fromInt = function(value588, unsigned) { + Long2.fromInt = function(value592, unsigned) { var obj, cachedObj, cache; if (unsigned) { - value588 >>>= 0; - if (cache = 0 <= value588 && value588 < 256) { - cachedObj = UINT_CACHE[value588]; + value592 >>>= 0; + if (cache = 0 <= value592 && value592 < 256) { + cachedObj = UINT_CACHE[value592]; if (cachedObj) return cachedObj; } - obj = Long2.fromBits(value588, (value588 | 0) < 0 ? -1 : 0, true); - if (cache) UINT_CACHE[value588] = obj; + obj = Long2.fromBits(value592, (value592 | 0) < 0 ? -1 : 0, true); + if (cache) UINT_CACHE[value592] = obj; return obj; } else { - value588 |= 0; - if (cache = -128 <= value588 && value588 < 128) { - cachedObj = INT_CACHE[value588]; + value592 |= 0; + if (cache = -128 <= value592 && value592 < 128) { + cachedObj = INT_CACHE[value592]; if (cachedObj) return cachedObj; } - obj = Long2.fromBits(value588, value588 < 0 ? -1 : 0, false); - if (cache) INT_CACHE[value588] = obj; + obj = Long2.fromBits(value592, value592 < 0 ? -1 : 0, false); + if (cache) INT_CACHE[value592] = obj; return obj; } }; - Long2.fromNumber = function(value589, unsigned) { - if (isNaN(value589)) return unsigned ? Long2.UZERO : Long2.ZERO; + Long2.fromNumber = function(value593, unsigned) { + if (isNaN(value593)) return unsigned ? Long2.UZERO : Long2.ZERO; if (unsigned) { - if (value589 < 0) return Long2.UZERO; - if (value589 >= TWO_PWR_64_DBL) return Long2.MAX_UNSIGNED_VALUE; + if (value593 < 0) return Long2.UZERO; + if (value593 >= TWO_PWR_64_DBL) return Long2.MAX_UNSIGNED_VALUE; } else { - if (value589 <= -TWO_PWR_63_DBL) return Long2.MIN_VALUE; - if (value589 + 1 >= TWO_PWR_63_DBL) return Long2.MAX_VALUE; + if (value593 <= -TWO_PWR_63_DBL) return Long2.MIN_VALUE; + if (value593 + 1 >= TWO_PWR_63_DBL) return Long2.MAX_VALUE; } - if (value589 < 0) return Long2.fromNumber(-value589, unsigned).neg(); - return Long2.fromBits(value589 % TWO_PWR_32_DBL | 0, value589 / TWO_PWR_32_DBL | 0, unsigned); + if (value593 < 0) return Long2.fromNumber(-value593, unsigned).neg(); + return Long2.fromBits(value593 % TWO_PWR_32_DBL | 0, value593 / TWO_PWR_32_DBL | 0, unsigned); }; - Long2.fromBigInt = function(value590, unsigned) { - return Long2.fromString(value590.toString(), unsigned); + Long2.fromBigInt = function(value594, unsigned) { + return Long2.fromString(value594.toString(), unsigned); }; Long2.fromString = function(str152, unsigned, radix) { if (str152.length === 0) throw Error("empty string"); @@ -78850,37 +81455,37 @@ var Long = function() { } radix = radix || 10; if (radix < 2 || 36 < radix) throw RangeError("radix"); - var p62; - if ((p62 = str152.indexOf("-")) > 0) throw Error("interior hyphen"); - else if (p62 === 0) { + var p63; + if ((p63 = str152.indexOf("-")) > 0) throw Error("interior hyphen"); + else if (p63 === 0) { return Long2.fromString(str152.substring(1), unsigned, radix).neg(); } var radixToPower = Long2.fromNumber(Math.pow(radix, 8)); var result = Long2.ZERO; for(var i36 = 0; i36 < str152.length; i36 += 8){ - var size14 = Math.min(8, str152.length - i36), value591 = parseInt(str152.substring(i36, i36 + size14), radix); + var size14 = Math.min(8, str152.length - i36), value595 = parseInt(str152.substring(i36, i36 + size14), radix); if (size14 < 8) { var power = Long2.fromNumber(Math.pow(radix, size14)); - result = result.mul(power).add(Long2.fromNumber(value591)); + result = result.mul(power).add(Long2.fromNumber(value595)); } else { result = result.mul(radixToPower); - result = result.add(Long2.fromNumber(value591)); + result = result.add(Long2.fromNumber(value595)); } } result.unsigned = unsigned; return result; }; - Long2.fromBytes = function(bytes48, unsigned, le) { - return le ? Long2.fromBytesLE(bytes48, unsigned) : Long2.fromBytesBE(bytes48, unsigned); + Long2.fromBytes = function(bytes50, unsigned, le) { + return le ? Long2.fromBytesLE(bytes50, unsigned) : Long2.fromBytesBE(bytes50, unsigned); }; - Long2.fromBytesLE = function(bytes49, unsigned) { - return new Long2(bytes49[0] | bytes49[1] << 8 | bytes49[2] << 16 | bytes49[3] << 24, bytes49[4] | bytes49[5] << 8 | bytes49[6] << 16 | bytes49[7] << 24, unsigned); + Long2.fromBytesLE = function(bytes51, unsigned) { + return new Long2(bytes51[0] | bytes51[1] << 8 | bytes51[2] << 16 | bytes51[3] << 24, bytes51[4] | bytes51[5] << 8 | bytes51[6] << 16 | bytes51[7] << 24, unsigned); }; - Long2.fromBytesBE = function(bytes50, unsigned) { - return new Long2(bytes50[4] << 24 | bytes50[5] << 16 | bytes50[6] << 8 | bytes50[7], bytes50[0] << 24 | bytes50[1] << 16 | bytes50[2] << 8 | bytes50[3], unsigned); + Long2.fromBytesBE = function(bytes52, unsigned) { + return new Long2(bytes52[4] << 24 | bytes52[5] << 16 | bytes52[6] << 8 | bytes52[7], bytes52[0] << 24 | bytes52[1] << 16 | bytes52[2] << 8 | bytes52[3], unsigned); }; - Long2.isLong = function(value592) { - return isObjectLike(value592) && value592["__isLong__"] === true; + Long2.isLong = function(value596) { + return isObjectLike(value596) && value596["__isLong__"] === true; }; Long2.fromValue = function(val, unsigned) { if (typeof val === "number") return Long2.fromNumber(val, unsigned); @@ -79271,15 +81876,15 @@ var Long = function() { Long2.prototype.le = function(other) { return this.lessThanOrEqual(other); }; - Long2.prototype.toExtendedJSON = function(options117) { - if (options117 && options117.relaxed) return this.toNumber(); + Long2.prototype.toExtendedJSON = function(options119) { + if (options119 && options119.relaxed) return this.toNumber(); return { $numberLong: this.toString() }; }; - Long2.fromExtendedJSON = function(doc, options118) { + Long2.fromExtendedJSON = function(doc, options120) { var result = Long2.fromString(doc.$numberLong); - return options118 && options118.relaxed ? result.toNumber() : result; + return options120 && options120.relaxed ? result.toNumber() : result; }; Long2.prototype[Symbol.for("nodejs.util.inspect.custom")] = function() { return this.inspect(); @@ -79370,26 +81975,26 @@ var COMBINATION_MASK = 31; var EXPONENT_MASK = 16383; var COMBINATION_INFINITY = 30; var COMBINATION_NAN = 31; -function isDigit(value593) { - return !isNaN(parseInt(value593, 10)); +function isDigit(value597) { + return !isNaN(parseInt(value597, 10)); } -function divideu128(value594) { +function divideu128(value598) { var DIVISOR = Long.fromNumber(1e3 * 1e3 * 1e3); var _rem = Long.fromNumber(0); - if (!value594.parts[0] && !value594.parts[1] && !value594.parts[2] && !value594.parts[3]) { + if (!value598.parts[0] && !value598.parts[1] && !value598.parts[2] && !value598.parts[3]) { return { - quotient: value594, + quotient: value598, rem: _rem }; } for(var i37 = 0; i37 <= 3; i37++){ _rem = _rem.shiftLeft(32); - _rem = _rem.add(new Long(value594.parts[i37], 0)); - value594.parts[i37] = _rem.div(DIVISOR).low; + _rem = _rem.add(new Long(value598.parts[i37], 0)); + value598.parts[i37] = _rem.div(DIVISOR).low; _rem = _rem.modulo(DIVISOR); } return { - quotient: value594, + quotient: value598, rem: _rem }; } @@ -79433,12 +82038,12 @@ function invalidErr(string, message) { throw new BSONTypeError('"' + string + '" is not a valid Decimal128 string - ' + message); } var Decimal128 = function() { - function Decimal1282(bytes51) { - if (!(this instanceof Decimal1282)) return new Decimal1282(bytes51); - if (typeof bytes51 === "string") { - this.bytes = Decimal1282.fromString(bytes51).bytes; + function Decimal1282(bytes53) { + if (!(this instanceof Decimal1282)) return new Decimal1282(bytes53); + if (typeof bytes53 === "string") { + this.bytes = Decimal1282.fromString(bytes53).bytes; } else { - this.bytes = bytes51; + this.bytes = bytes53; } } Decimal1282.fromString = function(representation) { @@ -79474,12 +82079,12 @@ var Decimal128 = function() { } if (stringMatch) { var unsignedNumber = stringMatch[2]; - var e164 = stringMatch[4]; + var e165 = stringMatch[4]; var expSign = stringMatch[5]; var expNumber = stringMatch[6]; - if (e164 && expNumber === void 0) invalidErr(representation, "missing exponent power"); - if (e164 && unsignedNumber === void 0) invalidErr(representation, "missing exponent base"); - if (e164 === void 0 && (expSign || expNumber)) { + if (e165 && expNumber === void 0) invalidErr(representation, "missing exponent power"); + if (e165 && unsignedNumber === void 0) invalidErr(representation, "missing exponent base"); + if (e165 === void 0 && (expSign || expNumber)) { invalidErr(representation, "missing e before exponent"); } } @@ -79517,10 +82122,10 @@ var Decimal128 = function() { } if (sawRadix && !nDigitsRead) throw new BSONTypeError("" + representation + " not a valid Decimal128 string"); if (representation[index] === "e" || representation[index] === "E") { - var match33 = representation.substr(++index).match(EXPONENT_REGEX); - if (!match33 || !match33[2]) return new Decimal1282(buffer_1.from(NAN_BUFFER)); - exponent = parseInt(match33[0], 10); - index = index + match33[0].length; + var match30 = representation.substr(++index).match(EXPONENT_REGEX); + if (!match30 || !match30[2]) return new Decimal1282(buffer_1.from(NAN_BUFFER)); + exponent = parseInt(match30[0], 10); + index = index + match30[0].length; } if (representation[index]) return new Decimal1282(buffer_1.from(NAN_BUFFER)); firstDigit = 0; @@ -79652,40 +82257,40 @@ var Decimal128 = function() { significand.high = significand.high.add(Long.fromNumber(1)); } biasedExponent = exponent + EXPONENT_BIAS; - var dec2 = { + var dec1 = { low: Long.fromNumber(0), high: Long.fromNumber(0) }; if (significand.high.shiftRightUnsigned(49).and(Long.fromNumber(1)).equals(Long.fromNumber(1))) { - dec2.high = dec2.high.or(Long.fromNumber(3).shiftLeft(61)); - dec2.high = dec2.high.or(Long.fromNumber(biasedExponent).and(Long.fromNumber(16383).shiftLeft(47))); - dec2.high = dec2.high.or(significand.high.and(Long.fromNumber(140737488355327))); + dec1.high = dec1.high.or(Long.fromNumber(3).shiftLeft(61)); + dec1.high = dec1.high.or(Long.fromNumber(biasedExponent).and(Long.fromNumber(16383).shiftLeft(47))); + dec1.high = dec1.high.or(significand.high.and(Long.fromNumber(140737488355327))); } else { - dec2.high = dec2.high.or(Long.fromNumber(biasedExponent & 16383).shiftLeft(49)); - dec2.high = dec2.high.or(significand.high.and(Long.fromNumber(562949953421311))); + dec1.high = dec1.high.or(Long.fromNumber(biasedExponent & 16383).shiftLeft(49)); + dec1.high = dec1.high.or(significand.high.and(Long.fromNumber(562949953421311))); } - dec2.low = significand.low; + dec1.low = significand.low; if (isNegative) { - dec2.high = dec2.high.or(Long.fromString("9223372036854775808")); + dec1.high = dec1.high.or(Long.fromString("9223372036854775808")); } var buffer2 = buffer_1.alloc(16); index = 0; - buffer2[index++] = dec2.low.low & 255; - buffer2[index++] = dec2.low.low >> 8 & 255; - buffer2[index++] = dec2.low.low >> 16 & 255; - buffer2[index++] = dec2.low.low >> 24 & 255; - buffer2[index++] = dec2.low.high & 255; - buffer2[index++] = dec2.low.high >> 8 & 255; - buffer2[index++] = dec2.low.high >> 16 & 255; - buffer2[index++] = dec2.low.high >> 24 & 255; - buffer2[index++] = dec2.high.low & 255; - buffer2[index++] = dec2.high.low >> 8 & 255; - buffer2[index++] = dec2.high.low >> 16 & 255; - buffer2[index++] = dec2.high.low >> 24 & 255; - buffer2[index++] = dec2.high.high & 255; - buffer2[index++] = dec2.high.high >> 8 & 255; - buffer2[index++] = dec2.high.high >> 16 & 255; - buffer2[index++] = dec2.high.high >> 24 & 255; + buffer2[index++] = dec1.low.low & 255; + buffer2[index++] = dec1.low.low >> 8 & 255; + buffer2[index++] = dec1.low.low >> 16 & 255; + buffer2[index++] = dec1.low.low >> 24 & 255; + buffer2[index++] = dec1.low.high & 255; + buffer2[index++] = dec1.low.high >> 8 & 255; + buffer2[index++] = dec1.low.high >> 16 & 255; + buffer2[index++] = dec1.low.high >> 24 & 255; + buffer2[index++] = dec1.high.low & 255; + buffer2[index++] = dec1.high.low >> 8 & 255; + buffer2[index++] = dec1.high.low >> 16 & 255; + buffer2[index++] = dec1.high.low >> 24 & 255; + buffer2[index++] = dec1.high.high & 255; + buffer2[index++] = dec1.high.high >> 8 & 255; + buffer2[index++] = dec1.high.high >> 16 & 255; + buffer2[index++] = dec1.high.high >> 24 & 255; return new Decimal1282(buffer2); }; Decimal1282.prototype.toString = function() { @@ -79713,11 +82318,11 @@ var Decimal128 = function() { var midh = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; var high = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; index = 0; - var dec3 = { + var dec2 = { low: new Long(low, midl), high: new Long(midh, high) }; - if (dec3.high.lessThan(Long.ZERO)) { + if (dec2.high.lessThan(Long.ZERO)) { string.push("-"); } var combination = high >> 26 & COMBINATION_MASK; @@ -79836,12 +82441,12 @@ Object.defineProperty(Decimal128.prototype, "_bsontype", { value: "Decimal128" }); var Double = function() { - function Double2(value595) { - if (!(this instanceof Double2)) return new Double2(value595); - if (value595 instanceof Number) { - value595 = value595.valueOf(); + function Double2(value599) { + if (!(this instanceof Double2)) return new Double2(value599); + if (value599 instanceof Number) { + value599 = value599.valueOf(); } - this.value = +value595; + this.value = +value599; } Double2.prototype.valueOf = function() { return this.value; @@ -79852,8 +82457,8 @@ var Double = function() { Double2.prototype.toString = function(radix) { return this.value.toString(radix); }; - Double2.prototype.toExtendedJSON = function(options119) { - if (options119 && (options119.legacy || options119.relaxed && isFinite(this.value))) { + Double2.prototype.toExtendedJSON = function(options121) { + if (options121 && (options121.legacy || options121.relaxed && isFinite(this.value))) { return this.value; } if (Object.is(Math.sign(this.value), -0)) { @@ -79874,9 +82479,9 @@ var Double = function() { $numberDouble }; }; - Double2.fromExtendedJSON = function(doc, options120) { + Double2.fromExtendedJSON = function(doc, options122) { var doubleValue = parseFloat(doc.$numberDouble); - return options120 && options120.relaxed ? doubleValue : new Double2(doubleValue); + return options122 && options122.relaxed ? doubleValue : new Double2(doubleValue); }; Double2.prototype[Symbol.for("nodejs.util.inspect.custom")] = function() { return this.inspect(); @@ -79891,12 +82496,12 @@ Object.defineProperty(Double.prototype, "_bsontype", { value: "Double" }); var Int32 = function() { - function Int322(value596) { - if (!(this instanceof Int322)) return new Int322(value596); - if (value596 instanceof Number) { - value596 = value596.valueOf(); + function Int322(value600) { + if (!(this instanceof Int322)) return new Int322(value600); + if (value600 instanceof Number) { + value600 = value600.valueOf(); } - this.value = +value596 | 0; + this.value = +value600 | 0; } Int322.prototype.valueOf = function() { return this.value; @@ -79907,14 +82512,14 @@ var Int32 = function() { Int322.prototype.toJSON = function() { return this.value; }; - Int322.prototype.toExtendedJSON = function(options121) { - if (options121 && (options121.relaxed || options121.legacy)) return this.value; + Int322.prototype.toExtendedJSON = function(options123) { + if (options123 && (options123.relaxed || options123.legacy)) return this.value; return { $numberInt: this.value.toString() }; }; - Int322.fromExtendedJSON = function(doc, options122) { - return options122 && options122.relaxed ? parseInt(doc.$numberInt, 10) : new Int322(doc.$numberInt); + Int322.fromExtendedJSON = function(doc, options124) { + return options124 && options124.relaxed ? parseInt(doc.$numberInt, 10) : new Int322(doc.$numberInt); }; Int322.prototype[Symbol.for("nodejs.util.inspect.custom")] = function() { return this.inspect(); @@ -79998,9 +82603,9 @@ var ObjectId = function() { this[kId] = ensureBuffer(workingId); } else if (typeof workingId === "string") { if (workingId.length === 12) { - var bytes52 = buffer_1.from(workingId); - if (bytes52.byteLength === 12) { - this[kId] = bytes52; + var bytes54 = buffer_1.from(workingId); + if (bytes54.byteLength === 12) { + this[kId] = bytes54; } else { throw new BSONTypeError("Argument passed in must be a string of 12 bytes"); } @@ -80020,10 +82625,10 @@ var ObjectId = function() { get: function() { return this[kId]; }, - set: function(value597) { - this[kId] = value597; + set: function(value601) { + this[kId] = value601; if (ObjectId2.cacheHexString) { - this.__id = value597.toString("hex"); + this.__id = value601.toString("hex"); } }, enumerable: false, @@ -80033,8 +82638,8 @@ var ObjectId = function() { get: function() { return this.id.readInt32BE(0); }, - set: function(value598) { - this.id.writeUInt32BE(value598, 0); + set: function(value602) { + this.id.writeUInt32BE(value602, 0); }, enumerable: false, configurable: true @@ -80202,10 +82807,10 @@ function alphabetize(str153) { return str153.split("").sort().join(""); } var BSONRegExp = function() { - function BSONRegExp2(pattern, options123) { - if (!(this instanceof BSONRegExp2)) return new BSONRegExp2(pattern, options123); + function BSONRegExp2(pattern, options125) { + if (!(this instanceof BSONRegExp2)) return new BSONRegExp2(pattern, options125); this.pattern = pattern; - this.options = alphabetize(options123 !== null && options123 !== void 0 ? options123 : ""); + this.options = alphabetize(options125 !== null && options125 !== void 0 ? options125 : ""); if (this.pattern.indexOf("\0") !== -1) { throw new BSONError("BSON Regex patterns cannot contain null bytes, found: " + JSON.stringify(this.pattern)); } @@ -80218,12 +82823,12 @@ var BSONRegExp = function() { } } } - BSONRegExp2.parseOptions = function(options124) { - return options124 ? options124.split("").sort().join("") : ""; + BSONRegExp2.parseOptions = function(options126) { + return options126 ? options126.split("").sort().join("") : ""; }; - BSONRegExp2.prototype.toExtendedJSON = function(options125) { - options125 = options125 || {}; - if (options125.legacy) { + BSONRegExp2.prototype.toExtendedJSON = function(options127) { + options127 = options127 || {}; + if (options127.legacy) { return { $regex: this.pattern, $options: this.options @@ -80257,9 +82862,9 @@ Object.defineProperty(BSONRegExp.prototype, "_bsontype", { value: "BSONRegExp" }); var BSONSymbol = function() { - function BSONSymbol2(value599) { - if (!(this instanceof BSONSymbol2)) return new BSONSymbol2(value599); - this.value = value599; + function BSONSymbol2(value603) { + if (!(this instanceof BSONSymbol2)) return new BSONSymbol2(value603); + this.value = value603; } BSONSymbol2.prototype.valueOf = function() { return this.value; @@ -80315,11 +82920,11 @@ var Timestamp = function(_super) { $timestamp: this.toString() }; }; - Timestamp2.fromInt = function(value600) { - return new Timestamp2(Long.fromInt(value600, true)); + Timestamp2.fromInt = function(value604) { + return new Timestamp2(Long.fromInt(value604, true)); }; - Timestamp2.fromNumber = function(value601) { - return new Timestamp2(Long.fromNumber(value601, true)); + Timestamp2.fromNumber = function(value605) { + return new Timestamp2(Long.fromNumber(value605, true)); }; Timestamp2.fromBits = function(lowBits, highBits) { return new Timestamp2(lowBits, highBits); @@ -80347,8 +82952,8 @@ var Timestamp = function(_super) { Timestamp2.MAX_VALUE = Long.MAX_UNSIGNED_VALUE; return Timestamp2; }(LongWithoutOverridesClass); -function isBSONType(value602) { - return isObjectLike(value602) && Reflect.has(value602, "_bsontype") && typeof value602._bsontype === "string"; +function isBSONType(value606) { + return isObjectLike(value606) && Reflect.has(value606, "_bsontype") && typeof value606._bsontype === "string"; } var BSON_INT32_MAX$1 = 2147483647; var BSON_INT32_MIN$1 = -2147483648; @@ -80369,53 +82974,53 @@ var keysToCodecs = { $regularExpression: BSONRegExp, $timestamp: Timestamp }; -function deserializeValue(value603, options126) { - if (options126 === void 0) { - options126 = {}; +function deserializeValue(value607, options128) { + if (options128 === void 0) { + options128 = {}; } - if (typeof value603 === "number") { - if (options126.relaxed || options126.legacy) { - return value603; + if (typeof value607 === "number") { + if (options128.relaxed || options128.legacy) { + return value607; } - if (Math.floor(value603) === value603) { - if (value603 >= BSON_INT32_MIN$1 && value603 <= BSON_INT32_MAX$1) return new Int32(value603); - if (value603 >= BSON_INT64_MIN$1 && value603 <= BSON_INT64_MAX$1) return Long.fromNumber(value603); + if (Math.floor(value607) === value607) { + if (value607 >= BSON_INT32_MIN$1 && value607 <= BSON_INT32_MAX$1) return new Int32(value607); + if (value607 >= BSON_INT64_MIN$1 && value607 <= BSON_INT64_MAX$1) return Long.fromNumber(value607); } - return new Double(value603); + return new Double(value607); } - if (value603 == null || typeof value603 !== "object") return value603; - if (value603.$undefined) return null; - var keys = Object.keys(value603).filter(function(k22) { - return k22.startsWith("$") && value603[k22] != null; + if (value607 == null || typeof value607 !== "object") return value607; + if (value607.$undefined) return null; + var keys = Object.keys(value607).filter(function(k22) { + return k22.startsWith("$") && value607[k22] != null; }); for(var i41 = 0; i41 < keys.length; i41++){ var c78 = keysToCodecs[keys[i41]]; - if (c78) return c78.fromExtendedJSON(value603, options126); + if (c78) return c78.fromExtendedJSON(value607, options128); } - if (value603.$date != null) { - var d35 = value603.$date; + if (value607.$date != null) { + var d35 = value607.$date; var date = new Date(); - if (options126.legacy) { + if (options128.legacy) { if (typeof d35 === "number") date.setTime(d35); else if (typeof d35 === "string") date.setTime(Date.parse(d35)); } else { if (typeof d35 === "string") date.setTime(Date.parse(d35)); else if (Long.isLong(d35)) date.setTime(d35.toNumber()); - else if (typeof d35 === "number" && options126.relaxed) date.setTime(d35); + else if (typeof d35 === "number" && options128.relaxed) date.setTime(d35); } return date; } - if (value603.$code != null) { - var copy11 = Object.assign({}, value603); - if (value603.$scope) { - copy11.$scope = deserializeValue(value603.$scope); + if (value607.$code != null) { + var copy11 = Object.assign({}, value607); + if (value607.$scope) { + copy11.$scope = deserializeValue(value607.$scope); } - return Code.fromExtendedJSON(value603); + return Code.fromExtendedJSON(value607); } - if (isDBRefLike(value603) || value603.$dbPointer) { - var v37 = value603.$ref ? value603 : value603.$dbPointer; - if (v37 instanceof DBRef) return v37; - var dollarKeys = Object.keys(v37).filter(function(k23) { + if (isDBRefLike(value607) || value607.$dbPointer) { + var v44 = value607.$ref ? value607 : value607.$dbPointer; + if (v44 instanceof DBRef) return v44; + var dollarKeys = Object.keys(v44).filter(function(k23) { return k23.startsWith("$"); }); var valid_1 = true; @@ -80426,20 +83031,20 @@ function deserializeValue(value603, options126) { "$db" ].indexOf(k24) === -1) valid_1 = false; }); - if (valid_1) return DBRef.fromExtendedJSON(v37); + if (valid_1) return DBRef.fromExtendedJSON(v44); } - return value603; + return value607; } -function serializeArray(array, options127) { - return array.map(function(v38, index) { - options127.seenObjects.push({ +function serializeArray(array, options129) { + return array.map(function(v45, index) { + options129.seenObjects.push({ propertyName: "index " + index, obj: null }); try { - return serializeValue(v38, options127); + return serializeValue(v45, options129); } finally{ - options127.seenObjects.pop(); + options129.seenObjects.pop(); } }); } @@ -80447,13 +83052,13 @@ function getISOString(date) { var isoStr = date.toISOString(); return date.getUTCMilliseconds() !== 0 ? isoStr : isoStr.slice(0, -5) + "Z"; } -function serializeValue(value604, options128) { - if ((typeof value604 === "object" || typeof value604 === "function") && value604 !== null) { - var index = options128.seenObjects.findIndex(function(entry) { - return entry.obj === value604; +function serializeValue(value608, options130) { + if ((typeof value608 === "object" || typeof value608 === "function") && value608 !== null) { + var index = options130.seenObjects.findIndex(function(entry) { + return entry.obj === value608; }); if (index !== -1) { - var props = options128.seenObjects.map(function(entry) { + var props = options130.seenObjects.map(function(entry) { return entry.propertyName; }); var leadingPart = props.slice(0, index).map(function(prop) { @@ -80468,76 +83073,76 @@ function serializeValue(value604, options128) { var dashes = "-".repeat(circularPart.length + (alreadySeen.length + current.length) / 2 - 1); throw new BSONTypeError("Converting circular structure to EJSON:\n" + (" " + leadingPart + alreadySeen + circularPart + current + "\n") + (" " + leadingSpace + "\\" + dashes + "/")); } - options128.seenObjects[options128.seenObjects.length - 1].obj = value604; + options130.seenObjects[options130.seenObjects.length - 1].obj = value608; } - if (Array.isArray(value604)) return serializeArray(value604, options128); - if (value604 === void 0) return null; - if (value604 instanceof Date || isDate3(value604)) { - var dateNum = value604.getTime(), inRange = dateNum > -1 && dateNum < 2534023188e5; - if (options128.legacy) { - return options128.relaxed && inRange ? { - $date: value604.getTime() + if (Array.isArray(value608)) return serializeArray(value608, options130); + if (value608 === void 0) return null; + if (value608 instanceof Date || isDate3(value608)) { + var dateNum = value608.getTime(), inRange = dateNum > -1 && dateNum < 2534023188e5; + if (options130.legacy) { + return options130.relaxed && inRange ? { + $date: value608.getTime() } : { - $date: getISOString(value604) + $date: getISOString(value608) }; } - return options128.relaxed && inRange ? { - $date: getISOString(value604) + return options130.relaxed && inRange ? { + $date: getISOString(value608) } : { $date: { - $numberLong: value604.getTime().toString() + $numberLong: value608.getTime().toString() } }; } - if (typeof value604 === "number" && (!options128.relaxed || !isFinite(value604))) { - if (Math.floor(value604) === value604) { - var int32Range = value604 >= BSON_INT32_MIN$1 && value604 <= BSON_INT32_MAX$1, int64Range = value604 >= BSON_INT64_MIN$1 && value604 <= BSON_INT64_MAX$1; + if (typeof value608 === "number" && (!options130.relaxed || !isFinite(value608))) { + if (Math.floor(value608) === value608) { + var int32Range = value608 >= BSON_INT32_MIN$1 && value608 <= BSON_INT32_MAX$1, int64Range = value608 >= BSON_INT64_MIN$1 && value608 <= BSON_INT64_MAX$1; if (int32Range) return { - $numberInt: value604.toString() + $numberInt: value608.toString() }; if (int64Range) return { - $numberLong: value604.toString() + $numberLong: value608.toString() }; } return { - $numberDouble: value604.toString() + $numberDouble: value608.toString() }; } - if (value604 instanceof RegExp || isRegExp3(value604)) { - var flags8 = value604.flags; + if (value608 instanceof RegExp || isRegExp3(value608)) { + var flags8 = value608.flags; if (flags8 === void 0) { - var match34 = value604.toString().match(/[gimuy]*$/); - if (match34) { - flags8 = match34[0]; + var match31 = value608.toString().match(/[gimuy]*$/); + if (match31) { + flags8 = match31[0]; } } - var rx = new BSONRegExp(value604.source, flags8); - return rx.toExtendedJSON(options128); + var rx = new BSONRegExp(value608.source, flags8); + return rx.toExtendedJSON(options130); } - if (value604 != null && typeof value604 === "object") return serializeDocument(value604, options128); - return value604; + if (value608 != null && typeof value608 === "object") return serializeDocument(value608, options130); + return value608; } var BSON_TYPE_MAPPINGS = { - Binary: function(o35) { - return new Binary(o35.value(), o35.sub_type); + Binary: function(o34) { + return new Binary(o34.value(), o34.sub_type); }, - Code: function(o36) { - return new Code(o36.code, o36.scope); + Code: function(o35) { + return new Code(o35.code, o35.scope); }, - DBRef: function(o37) { - return new DBRef(o37.collection || o37.namespace, o37.oid, o37.db, o37.fields); + DBRef: function(o36) { + return new DBRef(o36.collection || o36.namespace, o36.oid, o36.db, o36.fields); }, - Decimal128: function(o38) { - return new Decimal128(o38.bytes); + Decimal128: function(o37) { + return new Decimal128(o37.bytes); }, - Double: function(o39) { - return new Double(o39.value); + Double: function(o38) { + return new Double(o38.value); }, - Int32: function(o40) { - return new Int32(o40.value); + Int32: function(o39) { + return new Int32(o39.value); }, - Long: function(o42) { - return Long.fromBits(o42.low != null ? o42.low : o42.low_, o42.low != null ? o42.high : o42.high_, o42.low != null ? o42.unsigned : o42.unsigned_); + Long: function(o40) { + return Long.fromBits(o40.low != null ? o40.low : o40.low_, o40.low != null ? o40.high : o40.high_, o40.low != null ? o40.unsigned : o40.unsigned_); }, MaxKey: function() { return new MaxKey(); @@ -80545,36 +83150,36 @@ var BSON_TYPE_MAPPINGS = { MinKey: function() { return new MinKey(); }, - ObjectID: function(o43) { - return new ObjectId(o43); + ObjectID: function(o42) { + return new ObjectId(o42); }, - ObjectId: function(o44) { - return new ObjectId(o44); + ObjectId: function(o43) { + return new ObjectId(o43); }, - BSONRegExp: function(o45) { - return new BSONRegExp(o45.pattern, o45.options); + BSONRegExp: function(o44) { + return new BSONRegExp(o44.pattern, o44.options); }, - Symbol: function(o46) { - return new BSONSymbol(o46.value); + Symbol: function(o45) { + return new BSONSymbol(o45.value); }, - Timestamp: function(o47) { - return Timestamp.fromBits(o47.low, o47.high); + Timestamp: function(o46) { + return Timestamp.fromBits(o46.low, o46.high); } }; -function serializeDocument(doc, options129) { +function serializeDocument(doc, options131) { if (doc == null || typeof doc !== "object") throw new BSONError("not an object instance"); var bsontype = doc._bsontype; if (typeof bsontype === "undefined") { var _doc = {}; for(var name82 in doc){ - options129.seenObjects.push({ + options131.seenObjects.push({ propertyName: name82, obj: null }); try { - _doc[name82] = serializeValue(doc[name82], options129); + _doc[name82] = serializeValue(doc[name82], options131); } finally{ - options129.seenObjects.pop(); + options131.seenObjects.pop(); } } return _doc; @@ -80588,46 +83193,46 @@ function serializeDocument(doc, options129) { outDoc = mapper(outDoc); } if (bsontype === "Code" && outDoc.scope) { - outDoc = new Code(outDoc.code, serializeValue(outDoc.scope, options129)); + outDoc = new Code(outDoc.code, serializeValue(outDoc.scope, options131)); } else if (bsontype === "DBRef" && outDoc.oid) { - outDoc = new DBRef(serializeValue(outDoc.collection, options129), serializeValue(outDoc.oid, options129), serializeValue(outDoc.db, options129), serializeValue(outDoc.fields, options129)); + outDoc = new DBRef(serializeValue(outDoc.collection, options131), serializeValue(outDoc.oid, options131), serializeValue(outDoc.db, options131), serializeValue(outDoc.fields, options131)); } - return outDoc.toExtendedJSON(options129); + return outDoc.toExtendedJSON(options131); } else { throw new BSONError("_bsontype must be a string, but was: " + typeof bsontype); } } var EJSON; (function(EJSON2) { - function parse19(text, options130) { + function parse19(text, options132) { var finalOptions = Object.assign({}, { relaxed: true, legacy: false - }, options130); + }, options132); if (typeof finalOptions.relaxed === "boolean") finalOptions.strict = !finalOptions.relaxed; if (typeof finalOptions.strict === "boolean") finalOptions.relaxed = !finalOptions.strict; - return JSON.parse(text, function(key165, value605) { - if (key165.indexOf("\0") !== -1) { - throw new BSONError("BSON Document field names cannot contain null bytes, found: " + JSON.stringify(key165)); + return JSON.parse(text, function(key167, value609) { + if (key167.indexOf("\0") !== -1) { + throw new BSONError("BSON Document field names cannot contain null bytes, found: " + JSON.stringify(key167)); } - return deserializeValue(value605, finalOptions); + return deserializeValue(value609, finalOptions); }); } EJSON2.parse = parse19; - function stringify1(value606, replacer, space, options131) { + function stringify1(value610, replacer, space, options133) { if (space != null && typeof space === "object") { - options131 = space; + options133 = space; space = 0; } if (replacer != null && typeof replacer === "object" && !Array.isArray(replacer)) { - options131 = replacer; + options133 = replacer; replacer = void 0; space = 0; } var serializeOptions = Object.assign({ relaxed: true, legacy: false - }, options131, { + }, options133, { seenObjects: [ { propertyName: "(root)", @@ -80635,18 +83240,18 @@ var EJSON; } ] }); - var doc = serializeValue(value606, serializeOptions); + var doc = serializeValue(value610, serializeOptions); return JSON.stringify(doc, replacer, space); } EJSON2.stringify = stringify1; - function serialize2(value607, options132) { - options132 = options132 || {}; - return JSON.parse(stringify1(value607, options132)); + function serialize2(value611, options134) { + options134 = options134 || {}; + return JSON.parse(stringify1(value611, options134)); } EJSON2.serialize = serialize2; - function deserialize2(ejson, options133) { - options133 = options133 || {}; - return parse19(JSON.stringify(ejson), options133); + function deserialize2(ejson, options135) { + options135 = options135 || {}; + return parse19(JSON.stringify(ejson), options135); } EJSON2.deserialize = deserialize2; })(EJSON || (EJSON = {})); @@ -80665,11 +83270,11 @@ if (bsonGlobal.Map) { for(var i42 = 0; i42 < array.length; i42++){ if (array[i42] == null) continue; var entry = array[i42]; - var key166 = entry[0]; - var value608 = entry[1]; - this._keys.push(key166); - this._values[key166] = { - v: value608, + var key168 = entry[0]; + var value612 = entry[1]; + this._keys.push(key168); + this._values[key168] = { + v: value612, i: this._keys.length - 1 }; } @@ -80678,11 +83283,11 @@ if (bsonGlobal.Map) { this._keys = []; this._values = {}; }; - Map.prototype.delete = function(key167) { - var value609 = this._values[key167]; - if (value609 == null) return false; - delete this._values[key167]; - this._keys.splice(value609.i, 1); + Map.prototype.delete = function(key169) { + var value613 = this._values[key169]; + if (value613 == null) return false; + delete this._values[key169]; + this._keys.splice(value613.i, 1); return true; }; Map.prototype.entries = function() { @@ -80690,13 +83295,13 @@ if (bsonGlobal.Map) { var index = 0; return { next: function() { - var key168 = _this._keys[index++]; + var key170 = _this._keys[index++]; return { - value: key168 !== void 0 ? [ - key168, - _this._values[key168].v + value: key170 !== void 0 ? [ + key170, + _this._values[key170].v ] : void 0, - done: key168 !== void 0 ? false : true + done: key170 !== void 0 ? false : true }; } }; @@ -80704,37 +83309,37 @@ if (bsonGlobal.Map) { Map.prototype.forEach = function(callback, self2) { self2 = self2 || this; for(var i43 = 0; i43 < this._keys.length; i43++){ - var key169 = this._keys[i43]; - callback.call(self2, this._values[key169].v, key169, self2); + var key171 = this._keys[i43]; + callback.call(self2, this._values[key171].v, key171, self2); } }; - Map.prototype.get = function(key170) { - return this._values[key170] ? this._values[key170].v : void 0; + Map.prototype.get = function(key172) { + return this._values[key172] ? this._values[key172].v : void 0; }; - Map.prototype.has = function(key171) { - return this._values[key171] != null; + Map.prototype.has = function(key173) { + return this._values[key173] != null; }; Map.prototype.keys = function() { var _this = this; var index = 0; return { next: function() { - var key172 = _this._keys[index++]; + var key174 = _this._keys[index++]; return { - value: key172 !== void 0 ? key172 : void 0, - done: key172 !== void 0 ? false : true + value: key174 !== void 0 ? key174 : void 0, + done: key174 !== void 0 ? false : true }; } }; }; - Map.prototype.set = function(key173, value610) { - if (this._values[key173]) { - this._values[key173].v = value610; + Map.prototype.set = function(key175, value614) { + if (this._values[key175]) { + this._values[key175].v = value614; return this; } - this._keys.push(key173); - this._values[key173] = { - v: value610, + this._keys.push(key175); + this._values[key175] = { + v: value614, i: this._keys.length - 1 }; return this; @@ -80744,10 +83349,10 @@ if (bsonGlobal.Map) { var index = 0; return { next: function() { - var key174 = _this._keys[index++]; + var key176 = _this._keys[index++]; return { - value: key174 !== void 0 ? _this._values[key174].v : void 0, - done: key174 !== void 0 ? false : true + value: key176 !== void 0 ? _this._values[key176].v : void 0, + done: key176 !== void 0 ? false : true }; } }; @@ -80808,13 +83413,13 @@ function calculateObjectSize$1(object, serializeFunctions, ignoreUndefined) { if (object.toBSON) { object = object.toBSON(); } - for(var key175 in object){ - totalLength += calculateElement(key175, object[key175], serializeFunctions, false, ignoreUndefined); + for(var key177 in object){ + totalLength += calculateElement(key177, object[key177], serializeFunctions, false, ignoreUndefined); } } return totalLength; } -function calculateElement(name83, value611, serializeFunctions, isArray2, ignoreUndefined) { +function calculateElement(name83, value615, serializeFunctions, isArray2, ignoreUndefined) { if (serializeFunctions === void 0) { serializeFunctions = false; } @@ -80824,15 +83429,15 @@ function calculateElement(name83, value611, serializeFunctions, isArray2, ignore if (ignoreUndefined === void 0) { ignoreUndefined = false; } - if (value611 && value611.toBSON) { - value611 = value611.toBSON(); + if (value615 && value615.toBSON) { + value615 = value615.toBSON(); } - switch(typeof value611){ + switch(typeof value615){ case "string": - return 1 + buffer_1.byteLength(name83, "utf8") + 1 + 4 + buffer_1.byteLength(value611, "utf8") + 1; + return 1 + buffer_1.byteLength(name83, "utf8") + 1 + 4 + buffer_1.byteLength(value615, "utf8") + 1; case "number": - if (Math.floor(value611) === value611 && value611 >= JS_INT_MIN && value611 <= JS_INT_MAX) { - if (value611 >= BSON_INT32_MIN && value611 <= BSON_INT32_MAX) { + if (Math.floor(value615) === value615 && value615 >= JS_INT_MIN && value615 <= JS_INT_MAX) { + if (value615 >= BSON_INT32_MIN && value615 <= BSON_INT32_MAX) { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (4 + 1); } else { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (8 + 1); @@ -80846,56 +83451,56 @@ function calculateElement(name83, value611, serializeFunctions, isArray2, ignore case "boolean": return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (1 + 1); case "object": - if (value611 == null || value611["_bsontype"] === "MinKey" || value611["_bsontype"] === "MaxKey") { + if (value615 == null || value615["_bsontype"] === "MinKey" || value615["_bsontype"] === "MaxKey") { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1; - } else if (value611["_bsontype"] === "ObjectId" || value611["_bsontype"] === "ObjectID") { + } else if (value615["_bsontype"] === "ObjectId" || value615["_bsontype"] === "ObjectID") { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (12 + 1); - } else if (value611 instanceof Date || isDate3(value611)) { + } else if (value615 instanceof Date || isDate3(value615)) { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (8 + 1); - } else if (ArrayBuffer.isView(value611) || value611 instanceof ArrayBuffer || isAnyArrayBuffer2(value611)) { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (1 + 4 + 1) + value611.byteLength; - } else if (value611["_bsontype"] === "Long" || value611["_bsontype"] === "Double" || value611["_bsontype"] === "Timestamp") { + } else if (ArrayBuffer.isView(value615) || value615 instanceof ArrayBuffer || isAnyArrayBuffer2(value615)) { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (1 + 4 + 1) + value615.byteLength; + } else if (value615["_bsontype"] === "Long" || value615["_bsontype"] === "Double" || value615["_bsontype"] === "Timestamp") { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (8 + 1); - } else if (value611["_bsontype"] === "Decimal128") { + } else if (value615["_bsontype"] === "Decimal128") { return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (16 + 1); - } else if (value611["_bsontype"] === "Code") { - if (value611.scope != null && Object.keys(value611.scope).length > 0) { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + 4 + buffer_1.byteLength(value611.code.toString(), "utf8") + 1 + calculateObjectSize$1(value611.scope, serializeFunctions, ignoreUndefined); + } else if (value615["_bsontype"] === "Code") { + if (value615.scope != null && Object.keys(value615.scope).length > 0) { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + 4 + buffer_1.byteLength(value615.code.toString(), "utf8") + 1 + calculateObjectSize$1(value615.scope, serializeFunctions, ignoreUndefined); } else { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + buffer_1.byteLength(value611.code.toString(), "utf8") + 1; + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + buffer_1.byteLength(value615.code.toString(), "utf8") + 1; } - } else if (value611["_bsontype"] === "Binary") { - if (value611.sub_type === Binary.SUBTYPE_BYTE_ARRAY) { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (value611.position + 1 + 4 + 1 + 4); + } else if (value615["_bsontype"] === "Binary") { + if (value615.sub_type === Binary.SUBTYPE_BYTE_ARRAY) { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (value615.position + 1 + 4 + 1 + 4); } else { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (value611.position + 1 + 4 + 1); + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + (value615.position + 1 + 4 + 1); } - } else if (value611["_bsontype"] === "Symbol") { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + buffer_1.byteLength(value611.value, "utf8") + 4 + 1 + 1; - } else if (value611["_bsontype"] === "DBRef") { + } else if (value615["_bsontype"] === "Symbol") { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + buffer_1.byteLength(value615.value, "utf8") + 4 + 1 + 1; + } else if (value615["_bsontype"] === "DBRef") { var ordered_values = Object.assign({ - $ref: value611.collection, - $id: value611.oid - }, value611.fields); - if (value611.db != null) { - ordered_values["$db"] = value611.db; + $ref: value615.collection, + $id: value615.oid + }, value615.fields); + if (value615.db != null) { + ordered_values["$db"] = value615.db; } return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + calculateObjectSize$1(ordered_values, serializeFunctions, ignoreUndefined); - } else if (value611 instanceof RegExp || isRegExp3(value611)) { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + buffer_1.byteLength(value611.source, "utf8") + 1 + (value611.global ? 1 : 0) + (value611.ignoreCase ? 1 : 0) + (value611.multiline ? 1 : 0) + 1; - } else if (value611["_bsontype"] === "BSONRegExp") { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + buffer_1.byteLength(value611.pattern, "utf8") + 1 + buffer_1.byteLength(value611.options, "utf8") + 1; + } else if (value615 instanceof RegExp || isRegExp3(value615)) { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + buffer_1.byteLength(value615.source, "utf8") + 1 + (value615.global ? 1 : 0) + (value615.ignoreCase ? 1 : 0) + (value615.multiline ? 1 : 0) + 1; + } else if (value615["_bsontype"] === "BSONRegExp") { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + buffer_1.byteLength(value615.pattern, "utf8") + 1 + buffer_1.byteLength(value615.options, "utf8") + 1; } else { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + calculateObjectSize$1(value611, serializeFunctions, ignoreUndefined) + 1; + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + calculateObjectSize$1(value615, serializeFunctions, ignoreUndefined) + 1; } case "function": - if (value611 instanceof RegExp || isRegExp3(value611) || String.call(value611) === "[object RegExp]") { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + buffer_1.byteLength(value611.source, "utf8") + 1 + (value611.global ? 1 : 0) + (value611.ignoreCase ? 1 : 0) + (value611.multiline ? 1 : 0) + 1; + if (value615 instanceof RegExp || isRegExp3(value615) || String.call(value615) === "[object RegExp]") { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + buffer_1.byteLength(value615.source, "utf8") + 1 + (value615.global ? 1 : 0) + (value615.ignoreCase ? 1 : 0) + (value615.multiline ? 1 : 0) + 1; } else { - if (serializeFunctions && value611.scope != null && Object.keys(value611.scope).length > 0) { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + 4 + buffer_1.byteLength(normalizedFunctionString(value611), "utf8") + 1 + calculateObjectSize$1(value611.scope, serializeFunctions, ignoreUndefined); + if (serializeFunctions && value615.scope != null && Object.keys(value615.scope).length > 0) { + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + 4 + buffer_1.byteLength(normalizedFunctionString(value615), "utf8") + 1 + calculateObjectSize$1(value615.scope, serializeFunctions, ignoreUndefined); } else if (serializeFunctions) { - return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + buffer_1.byteLength(normalizedFunctionString(value611), "utf8") + 1; + return (name83 != null ? buffer_1.byteLength(name83, "utf8") + 1 : 0) + 1 + 4 + buffer_1.byteLength(normalizedFunctionString(value615), "utf8") + 1; } } } @@ -80910,10 +83515,10 @@ var TWO_BIT_CHAR = 192; var THREE_BIT_CHAR = 224; var FOUR_BIT_CHAR = 240; var CONTINUING_CHAR = 128; -function validateUtf8(bytes53, start73, end) { +function validateUtf8(bytes55, start74, end) { var continuation = 0; - for(var i45 = start73; i45 < end; i45 += 1){ - var __byte = bytes53[i45]; + for(var i45 = start74; i45 < end; i45 += 1){ + var __byte = bytes55[i45]; if (continuation) { if ((__byte & FIRST_TWO_BITS) !== CONTINUING_CHAR) { return false; @@ -80936,17 +83541,17 @@ function validateUtf8(bytes53, start73, end) { var JS_INT_MAX_LONG = Long.fromNumber(JS_INT_MAX); var JS_INT_MIN_LONG = Long.fromNumber(JS_INT_MIN); var functionCache = {}; -function deserialize$1(buffer2, options134, isArray3) { - options134 = options134 == null ? {} : options134; - var index = options134 && options134.index ? options134.index : 0; +function deserialize$1(buffer2, options136, isArray3) { + options136 = options136 == null ? {} : options136; + var index = options136 && options136.index ? options136.index : 0; var size15 = buffer2[index] | buffer2[index + 1] << 8 | buffer2[index + 2] << 16 | buffer2[index + 3] << 24; if (size15 < 5) { throw new BSONError("bson size must be >= 5, is " + size15); } - if (options134.allowObjectSmallerThanBufferSize && buffer2.length < size15) { + if (options136.allowObjectSmallerThanBufferSize && buffer2.length < size15) { throw new BSONError("buffer length " + buffer2.length + " must be >= bson size " + size15); } - if (!options134.allowObjectSmallerThanBufferSize && buffer2.length !== size15) { + if (!options136.allowObjectSmallerThanBufferSize && buffer2.length !== size15) { throw new BSONError("buffer length " + buffer2.length + " must === bson size " + size15); } if (size15 + index > buffer2.byteLength) { @@ -80955,21 +83560,21 @@ function deserialize$1(buffer2, options134, isArray3) { if (buffer2[index + size15 - 1] !== 0) { throw new BSONError("One object, sized correctly, with a spot for an EOO, but the EOO isn't 0x00"); } - return deserializeObject(buffer2, index, options134, isArray3); + return deserializeObject(buffer2, index, options136, isArray3); } var allowedDBRefKeys = /^\$ref$|^\$id$|^\$db$/; -function deserializeObject(buffer2, index, options135, isArray4) { +function deserializeObject(buffer2, index, options137, isArray4) { if (isArray4 === void 0) { isArray4 = false; } - var evalFunctions = options135["evalFunctions"] == null ? false : options135["evalFunctions"]; - var cacheFunctions = options135["cacheFunctions"] == null ? false : options135["cacheFunctions"]; - var fieldsAsRaw = options135["fieldsAsRaw"] == null ? null : options135["fieldsAsRaw"]; - var raw = options135["raw"] == null ? false : options135["raw"]; - var bsonRegExp = typeof options135["bsonRegExp"] === "boolean" ? options135["bsonRegExp"] : false; - var promoteBuffers = options135["promoteBuffers"] == null ? false : options135["promoteBuffers"]; - var promoteLongs = options135["promoteLongs"] == null ? true : options135["promoteLongs"]; - var promoteValues = options135["promoteValues"] == null ? true : options135["promoteValues"]; + var evalFunctions = options137["evalFunctions"] == null ? false : options137["evalFunctions"]; + var cacheFunctions = options137["cacheFunctions"] == null ? false : options137["cacheFunctions"]; + var fieldsAsRaw = options137["fieldsAsRaw"] == null ? null : options137["fieldsAsRaw"]; + var raw = options137["raw"] == null ? false : options137["raw"]; + var bsonRegExp = typeof options137["bsonRegExp"] === "boolean" ? options137["bsonRegExp"] : false; + var promoteBuffers = options137["promoteBuffers"] == null ? false : options137["promoteBuffers"]; + var promoteLongs = options137["promoteLongs"] == null ? true : options137["promoteLongs"]; + var promoteValues = options137["promoteValues"] == null ? true : options137["promoteValues"]; var startIndex = index; if (buffer2.length < 5) throw new BSONError("corrupt bson message < 5 bytes long"); var size16 = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; @@ -80990,85 +83595,85 @@ function deserializeObject(buffer2, index, options135, isArray4) { if (isPossibleDBRef !== false && name84[0] === "$") { isPossibleDBRef = allowedDBRefKeys.test(name84); } - var value612 = void 0; + var value616 = void 0; index = i46 + 1; if (elementType === BSON_DATA_STRING) { var stringSize = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; if (stringSize <= 0 || stringSize > buffer2.length - index || buffer2[index + stringSize - 1] !== 0) { throw new BSONError("bad string length in bson"); } - value612 = getValidatedString(buffer2, index, index + stringSize - 1); + value616 = getValidatedString(buffer2, index, index + stringSize - 1); index = index + stringSize; } else if (elementType === BSON_DATA_OID) { var oid = buffer_1.alloc(12); buffer2.copy(oid, 0, index, index + 12); - value612 = new ObjectId(oid); + value616 = new ObjectId(oid); index = index + 12; } else if (elementType === BSON_DATA_INT && promoteValues === false) { - value612 = new Int32(buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24); + value616 = new Int32(buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24); } else if (elementType === BSON_DATA_INT) { - value612 = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; + value616 = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; } else if (elementType === BSON_DATA_NUMBER && promoteValues === false) { - value612 = new Double(buffer2.readDoubleLE(index)); + value616 = new Double(buffer2.readDoubleLE(index)); index = index + 8; } else if (elementType === BSON_DATA_NUMBER) { - value612 = buffer2.readDoubleLE(index); + value616 = buffer2.readDoubleLE(index); index = index + 8; } else if (elementType === BSON_DATA_DATE) { var lowBits = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; var highBits = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; - value612 = new Date(new Long(lowBits, highBits).toNumber()); + value616 = new Date(new Long(lowBits, highBits).toNumber()); } else if (elementType === BSON_DATA_BOOLEAN) { if (buffer2[index] !== 0 && buffer2[index] !== 1) throw new BSONError("illegal boolean type value"); - value612 = buffer2[index++] === 1; + value616 = buffer2[index++] === 1; } else if (elementType === BSON_DATA_OBJECT) { var _index = index; var objectSize = buffer2[index] | buffer2[index + 1] << 8 | buffer2[index + 2] << 16 | buffer2[index + 3] << 24; if (objectSize <= 0 || objectSize > buffer2.length - index) throw new BSONError("bad embedded document length in bson"); if (raw) { - value612 = buffer2.slice(index, index + objectSize); + value616 = buffer2.slice(index, index + objectSize); } else { - value612 = deserializeObject(buffer2, _index, options135, false); + value616 = deserializeObject(buffer2, _index, options137, false); } index = index + objectSize; } else if (elementType === BSON_DATA_ARRAY) { var _index = index; var objectSize = buffer2[index] | buffer2[index + 1] << 8 | buffer2[index + 2] << 16 | buffer2[index + 3] << 24; - var arrayOptions = options135; + var arrayOptions = options137; var stopIndex = index + objectSize; if (fieldsAsRaw && fieldsAsRaw[name84]) { arrayOptions = {}; - for(var n164 in options135){ - arrayOptions[n164] = options135[n164]; + for(var n165 in options137){ + arrayOptions[n165] = options137[n165]; } arrayOptions["raw"] = true; } - value612 = deserializeObject(buffer2, _index, arrayOptions, true); + value616 = deserializeObject(buffer2, _index, arrayOptions, true); index = index + objectSize; if (buffer2[index - 1] !== 0) throw new BSONError("invalid array terminator byte"); if (index !== stopIndex) throw new BSONError("corrupted array bson"); } else if (elementType === BSON_DATA_UNDEFINED) { - value612 = void 0; + value616 = void 0; } else if (elementType === BSON_DATA_NULL) { - value612 = null; + value616 = null; } else if (elementType === BSON_DATA_LONG) { var lowBits = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; var highBits = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; var __long = new Long(lowBits, highBits); if (promoteLongs && promoteValues === true) { - value612 = __long.lessThanOrEqual(JS_INT_MAX_LONG) && __long.greaterThanOrEqual(JS_INT_MIN_LONG) ? __long.toNumber() : __long; + value616 = __long.lessThanOrEqual(JS_INT_MAX_LONG) && __long.greaterThanOrEqual(JS_INT_MIN_LONG) ? __long.toNumber() : __long; } else { - value612 = __long; + value616 = __long; } } else if (elementType === BSON_DATA_DECIMAL128) { - var bytes54 = buffer_1.alloc(16); - buffer2.copy(bytes54, 0, index, index + 16); + var bytes56 = buffer_1.alloc(16); + buffer2.copy(bytes56, 0, index, index + 16); index = index + 16; - var decimal128 = new Decimal128(bytes54); + var decimal128 = new Decimal128(bytes56); if ("toObject" in decimal128 && typeof decimal128.toObject === "function") { - value612 = decimal128.toObject(); + value616 = decimal128.toObject(); } else { - value612 = decimal128; + value616 = decimal128; } } else if (elementType === BSON_DATA_BINARY) { var binarySize = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; @@ -81084,9 +83689,9 @@ function deserializeObject(buffer2, index, options135, isArray4) { if (binarySize < totalBinarySize - 4) throw new BSONError("Binary type with subtype 0x02 contains too short binary size"); } if (promoteBuffers && promoteValues) { - value612 = buffer2.slice(index, index + binarySize); + value616 = buffer2.slice(index, index + binarySize); } else { - value612 = new Binary(buffer2.slice(index, index + binarySize), subType); + value616 = new Binary(buffer2.slice(index, index + binarySize), subType); } } else { var _buffer = buffer_1.alloc(binarySize); @@ -81100,9 +83705,9 @@ function deserializeObject(buffer2, index, options135, isArray4) { _buffer[i46] = buffer2[index + i46]; } if (promoteBuffers && promoteValues) { - value612 = _buffer; + value616 = _buffer; } else { - value612 = new Binary(_buffer, subType); + value616 = new Binary(_buffer, subType); } } index = index + binarySize; @@ -81135,7 +83740,7 @@ function deserializeObject(buffer2, index, options135, isArray4) { break; } } - value612 = new RegExp(source, optionsArray.join("")); + value616 = new RegExp(source, optionsArray.join("")); } else if (elementType === BSON_DATA_REGEXP && bsonRegExp === true) { i46 = index; while(buffer2[i46] !== 0 && i46 < buffer2.length){ @@ -81151,23 +83756,23 @@ function deserializeObject(buffer2, index, options135, isArray4) { if (i46 >= buffer2.length) throw new BSONError("Bad BSON Document: illegal CString"); var regExpOptions = buffer2.toString("utf8", index, i46); index = i46 + 1; - value612 = new BSONRegExp(source, regExpOptions); + value616 = new BSONRegExp(source, regExpOptions); } else if (elementType === BSON_DATA_SYMBOL) { var stringSize = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; if (stringSize <= 0 || stringSize > buffer2.length - index || buffer2[index + stringSize - 1] !== 0) { throw new BSONError("bad string length in bson"); } var symbol = getValidatedString(buffer2, index, index + stringSize - 1); - value612 = promoteValues ? symbol : new BSONSymbol(symbol); + value616 = promoteValues ? symbol : new BSONSymbol(symbol); index = index + stringSize; } else if (elementType === BSON_DATA_TIMESTAMP) { var lowBits = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; var highBits = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; - value612 = new Timestamp(lowBits, highBits); + value616 = new Timestamp(lowBits, highBits); } else if (elementType === BSON_DATA_MIN_KEY) { - value612 = new MinKey(); + value616 = new MinKey(); } else if (elementType === BSON_DATA_MAX_KEY) { - value612 = new MaxKey(); + value616 = new MaxKey(); } else if (elementType === BSON_DATA_CODE) { var stringSize = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; if (stringSize <= 0 || stringSize > buffer2.length - index || buffer2[index + stringSize - 1] !== 0) { @@ -81176,12 +83781,12 @@ function deserializeObject(buffer2, index, options135, isArray4) { var functionString = getValidatedString(buffer2, index, index + stringSize - 1); if (evalFunctions) { if (cacheFunctions) { - value612 = isolateEval(functionString, functionCache, object); + value616 = isolateEval(functionString, functionCache, object); } else { - value612 = isolateEval(functionString); + value616 = isolateEval(functionString); } } else { - value612 = new Code(functionString); + value616 = new Code(functionString); } index = index + stringSize; } else if (elementType === BSON_DATA_CODE_W_SCOPE) { @@ -81197,7 +83802,7 @@ function deserializeObject(buffer2, index, options135, isArray4) { index = index + stringSize; var _index = index; var objectSize = buffer2[index] | buffer2[index + 1] << 8 | buffer2[index + 2] << 16 | buffer2[index + 3] << 24; - var scopeObject = deserializeObject(buffer2, _index, options135, false); + var scopeObject = deserializeObject(buffer2, _index, options137, false); index = index + objectSize; if (totalSize < 4 + 4 + objectSize + stringSize) { throw new BSONError("code_w_scope total size is too short, truncating scope"); @@ -81207,13 +83812,13 @@ function deserializeObject(buffer2, index, options135, isArray4) { } if (evalFunctions) { if (cacheFunctions) { - value612 = isolateEval(functionString, functionCache, object); + value616 = isolateEval(functionString, functionCache, object); } else { - value612 = isolateEval(functionString); + value616 = isolateEval(functionString); } - value612.scope = scopeObject; + value616.scope = scopeObject; } else { - value612 = new Code(functionString, scopeObject); + value616 = new Code(functionString, scopeObject); } } else if (elementType === BSON_DATA_DBPOINTER) { var stringSize = buffer2[index++] | buffer2[index++] << 8 | buffer2[index++] << 16 | buffer2[index++] << 24; @@ -81227,19 +83832,19 @@ function deserializeObject(buffer2, index, options135, isArray4) { buffer2.copy(oidBuffer, 0, index, index + 12); var oid = new ObjectId(oidBuffer); index = index + 12; - value612 = new DBRef(namespace, oid); + value616 = new DBRef(namespace, oid); } else { throw new BSONError("Detected unknown BSON type " + elementType.toString(16) + ' for fieldname "' + name84 + '"'); } if (name84 === "__proto__") { Object.defineProperty(object, name84, { - value: value612, + value: value616, writable: true, enumerable: true, configurable: true }); } else { - object[name84] = value612; + object[name84] = value616; } } if (size16 !== index - startIndex) { @@ -81263,20 +83868,20 @@ function isolateEval(functionString, functionCache2, object) { } return functionCache2[functionString].bind(object); } -function getValidatedString(buffer2, start74, end) { - var value613 = buffer2.toString("utf8", start74, end); - for(var i47 = 0; i47 < value613.length; i47++){ - if (value613.charCodeAt(i47) === 65533) { - if (!validateUtf8(buffer2, start74, end)) { +function getValidatedString(buffer2, start75, end) { + var value617 = buffer2.toString("utf8", start75, end); + for(var i47 = 0; i47 < value617.length; i47++){ + if (value617.charCodeAt(i47) === 65533) { + if (!validateUtf8(buffer2, start75, end)) { throw new BSONError("Invalid UTF-8 string in BSON document"); } break; } } - return value613; + return value617; } -function writeIEEE754(buffer2, value614, offset189, endian, mLen, nBytes) { - var e165; +function writeIEEE754(buffer2, value618, offset189, endian, mLen, nBytes) { + var e166; var m44; var c79; var bBE = endian === "big"; @@ -81286,51 +83891,51 @@ function writeIEEE754(buffer2, value614, offset189, endian, mLen, nBytes) { var rt = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0; var i48 = bBE ? nBytes - 1 : 0; var d36 = bBE ? -1 : 1; - var s60 = value614 < 0 || value614 === 0 && 1 / value614 < 0 ? 1 : 0; - value614 = Math.abs(value614); - if (isNaN(value614) || value614 === Infinity) { - m44 = isNaN(value614) ? 1 : 0; - e165 = eMax; + var s60 = value618 < 0 || value618 === 0 && 1 / value618 < 0 ? 1 : 0; + value618 = Math.abs(value618); + if (isNaN(value618) || value618 === Infinity) { + m44 = isNaN(value618) ? 1 : 0; + e166 = eMax; } else { - e165 = Math.floor(Math.log(value614) / Math.LN2); - if (value614 * (c79 = Math.pow(2, -e165)) < 1) { - e165--; + e166 = Math.floor(Math.log(value618) / Math.LN2); + if (value618 * (c79 = Math.pow(2, -e166)) < 1) { + e166--; c79 *= 2; } - if (e165 + eBias >= 1) { - value614 += rt / c79; + if (e166 + eBias >= 1) { + value618 += rt / c79; } else { - value614 += rt * Math.pow(2, 1 - eBias); + value618 += rt * Math.pow(2, 1 - eBias); } - if (value614 * c79 >= 2) { - e165++; + if (value618 * c79 >= 2) { + e166++; c79 /= 2; } - if (e165 + eBias >= eMax) { + if (e166 + eBias >= eMax) { m44 = 0; - e165 = eMax; - } else if (e165 + eBias >= 1) { - m44 = (value614 * c79 - 1) * Math.pow(2, mLen); - e165 = e165 + eBias; + e166 = eMax; + } else if (e166 + eBias >= 1) { + m44 = (value618 * c79 - 1) * Math.pow(2, mLen); + e166 = e166 + eBias; } else { - m44 = value614 * Math.pow(2, eBias - 1) * Math.pow(2, mLen); - e165 = 0; + m44 = value618 * Math.pow(2, eBias - 1) * Math.pow(2, mLen); + e166 = 0; } } - if (isNaN(value614)) m44 = 0; + if (isNaN(value618)) m44 = 0; while(mLen >= 8){ buffer2[offset189 + i48] = m44 & 255; i48 += d36; m44 /= 256; mLen -= 8; } - e165 = e165 << mLen | m44; - if (isNaN(value614)) e165 += 8; + e166 = e166 << mLen | m44; + if (isNaN(value618)) e166 += 8; eLen += mLen; while(eLen > 0){ - buffer2[offset189 + i48] = e165 & 255; + buffer2[offset189 + i48] = e166 & 255; i48 += d36; - e165 /= 256; + e166 /= 256; eLen -= 8; } buffer2[offset189 + i48 - d36] |= s60 * 128; @@ -81342,12 +83947,12 @@ var ignoreKeys = new Set([ "$id", "$clusterTime" ]); -function serializeString(buffer2, key176, value615, index, isArray5) { +function serializeString(buffer2, key178, value619, index, isArray5) { buffer2[index++] = BSON_DATA_STRING; - var numberOfWrittenBytes = !isArray5 ? buffer2.write(key176, index, void 0, "utf8") : buffer2.write(key176, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray5 ? buffer2.write(key178, index, void 0, "utf8") : buffer2.write(key178, index, void 0, "ascii"); index = index + numberOfWrittenBytes + 1; buffer2[index - 1] = 0; - var size17 = buffer2.write(value615, index + 4, void 0, "utf8"); + var size17 = buffer2.write(value619, index + 4, void 0, "utf8"); buffer2[index + 3] = size17 + 1 >> 24 & 255; buffer2[index + 2] = size17 + 1 >> 16 & 255; buffer2[index + 1] = size17 + 1 >> 8 & 255; @@ -81356,47 +83961,47 @@ function serializeString(buffer2, key176, value615, index, isArray5) { buffer2[index++] = 0; return index; } -function serializeNumber(buffer2, key177, value616, index, isArray6) { - if (Number.isInteger(value616) && value616 >= BSON_INT32_MIN && value616 <= BSON_INT32_MAX) { +function serializeNumber(buffer2, key179, value620, index, isArray6) { + if (Number.isInteger(value620) && value620 >= BSON_INT32_MIN && value620 <= BSON_INT32_MAX) { buffer2[index++] = BSON_DATA_INT; - var numberOfWrittenBytes = !isArray6 ? buffer2.write(key177, index, void 0, "utf8") : buffer2.write(key177, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray6 ? buffer2.write(key179, index, void 0, "utf8") : buffer2.write(key179, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - buffer2[index++] = value616 & 255; - buffer2[index++] = value616 >> 8 & 255; - buffer2[index++] = value616 >> 16 & 255; - buffer2[index++] = value616 >> 24 & 255; + buffer2[index++] = value620 & 255; + buffer2[index++] = value620 >> 8 & 255; + buffer2[index++] = value620 >> 16 & 255; + buffer2[index++] = value620 >> 24 & 255; } else { buffer2[index++] = BSON_DATA_NUMBER; - var numberOfWrittenBytes = !isArray6 ? buffer2.write(key177, index, void 0, "utf8") : buffer2.write(key177, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray6 ? buffer2.write(key179, index, void 0, "utf8") : buffer2.write(key179, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - writeIEEE754(buffer2, value616, index, "little", 52, 8); + writeIEEE754(buffer2, value620, index, "little", 52, 8); index = index + 8; } return index; } -function serializeNull(buffer2, key178, _, index, isArray7) { +function serializeNull(buffer2, key180, _, index, isArray7) { buffer2[index++] = BSON_DATA_NULL; - var numberOfWrittenBytes = !isArray7 ? buffer2.write(key178, index, void 0, "utf8") : buffer2.write(key178, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray7 ? buffer2.write(key180, index, void 0, "utf8") : buffer2.write(key180, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; return index; } -function serializeBoolean(buffer2, key179, value617, index, isArray8) { +function serializeBoolean(buffer2, key181, value621, index, isArray8) { buffer2[index++] = BSON_DATA_BOOLEAN; - var numberOfWrittenBytes = !isArray8 ? buffer2.write(key179, index, void 0, "utf8") : buffer2.write(key179, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray8 ? buffer2.write(key181, index, void 0, "utf8") : buffer2.write(key181, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - buffer2[index++] = value617 ? 1 : 0; + buffer2[index++] = value621 ? 1 : 0; return index; } -function serializeDate(buffer2, key180, value618, index, isArray9) { +function serializeDate(buffer2, key182, value622, index, isArray9) { buffer2[index++] = BSON_DATA_DATE; - var numberOfWrittenBytes = !isArray9 ? buffer2.write(key180, index, void 0, "utf8") : buffer2.write(key180, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray9 ? buffer2.write(key182, index, void 0, "utf8") : buffer2.write(key182, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var dateInMilis = Long.fromNumber(value618.getTime()); + var dateInMilis = Long.fromNumber(value622.getTime()); var lowBits = dateInMilis.getLowBits(); var highBits = dateInMilis.getHighBits(); buffer2[index++] = lowBits & 255; @@ -81409,79 +84014,79 @@ function serializeDate(buffer2, key180, value618, index, isArray9) { buffer2[index++] = highBits >> 24 & 255; return index; } -function serializeRegExp(buffer2, key181, value619, index, isArray10) { +function serializeRegExp(buffer2, key183, value623, index, isArray10) { buffer2[index++] = BSON_DATA_REGEXP; - var numberOfWrittenBytes = !isArray10 ? buffer2.write(key181, index, void 0, "utf8") : buffer2.write(key181, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray10 ? buffer2.write(key183, index, void 0, "utf8") : buffer2.write(key183, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - if (value619.source && value619.source.match(regexp) != null) { - throw Error("value " + value619.source + " must not contain null bytes"); + if (value623.source && value623.source.match(regexp) != null) { + throw Error("value " + value623.source + " must not contain null bytes"); } - index = index + buffer2.write(value619.source, index, void 0, "utf8"); + index = index + buffer2.write(value623.source, index, void 0, "utf8"); buffer2[index++] = 0; - if (value619.ignoreCase) buffer2[index++] = 105; - if (value619.global) buffer2[index++] = 115; - if (value619.multiline) buffer2[index++] = 109; + if (value623.ignoreCase) buffer2[index++] = 105; + if (value623.global) buffer2[index++] = 115; + if (value623.multiline) buffer2[index++] = 109; buffer2[index++] = 0; return index; } -function serializeBSONRegExp(buffer2, key182, value620, index, isArray11) { +function serializeBSONRegExp(buffer2, key184, value624, index, isArray11) { buffer2[index++] = BSON_DATA_REGEXP; - var numberOfWrittenBytes = !isArray11 ? buffer2.write(key182, index, void 0, "utf8") : buffer2.write(key182, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray11 ? buffer2.write(key184, index, void 0, "utf8") : buffer2.write(key184, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - if (value620.pattern.match(regexp) != null) { - throw Error("pattern " + value620.pattern + " must not contain null bytes"); + if (value624.pattern.match(regexp) != null) { + throw Error("pattern " + value624.pattern + " must not contain null bytes"); } - index = index + buffer2.write(value620.pattern, index, void 0, "utf8"); + index = index + buffer2.write(value624.pattern, index, void 0, "utf8"); buffer2[index++] = 0; - index = index + buffer2.write(value620.options.split("").sort().join(""), index, void 0, "utf8"); + index = index + buffer2.write(value624.options.split("").sort().join(""), index, void 0, "utf8"); buffer2[index++] = 0; return index; } -function serializeMinMax(buffer2, key183, value621, index, isArray12) { - if (value621 === null) { +function serializeMinMax(buffer2, key185, value625, index, isArray12) { + if (value625 === null) { buffer2[index++] = BSON_DATA_NULL; - } else if (value621._bsontype === "MinKey") { + } else if (value625._bsontype === "MinKey") { buffer2[index++] = BSON_DATA_MIN_KEY; } else { buffer2[index++] = BSON_DATA_MAX_KEY; } - var numberOfWrittenBytes = !isArray12 ? buffer2.write(key183, index, void 0, "utf8") : buffer2.write(key183, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray12 ? buffer2.write(key185, index, void 0, "utf8") : buffer2.write(key185, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; return index; } -function serializeObjectId(buffer2, key184, value622, index, isArray13) { +function serializeObjectId(buffer2, key186, value626, index, isArray13) { buffer2[index++] = BSON_DATA_OID; - var numberOfWrittenBytes = !isArray13 ? buffer2.write(key184, index, void 0, "utf8") : buffer2.write(key184, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray13 ? buffer2.write(key186, index, void 0, "utf8") : buffer2.write(key186, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - if (typeof value622.id === "string") { - buffer2.write(value622.id, index, void 0, "binary"); - } else if (isUint8Array1(value622.id)) { - buffer2.set(value622.id.subarray(0, 12), index); + if (typeof value626.id === "string") { + buffer2.write(value626.id, index, void 0, "binary"); + } else if (isUint8Array1(value626.id)) { + buffer2.set(value626.id.subarray(0, 12), index); } else { - throw new BSONTypeError("object [" + JSON.stringify(value622) + "] is not a valid ObjectId"); + throw new BSONTypeError("object [" + JSON.stringify(value626) + "] is not a valid ObjectId"); } return index + 12; } -function serializeBuffer(buffer2, key185, value623, index, isArray14) { +function serializeBuffer(buffer2, key187, value627, index, isArray14) { buffer2[index++] = BSON_DATA_BINARY; - var numberOfWrittenBytes = !isArray14 ? buffer2.write(key185, index, void 0, "utf8") : buffer2.write(key185, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray14 ? buffer2.write(key187, index, void 0, "utf8") : buffer2.write(key187, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var size18 = value623.length; + var size18 = value627.length; buffer2[index++] = size18 & 255; buffer2[index++] = size18 >> 8 & 255; buffer2[index++] = size18 >> 16 & 255; buffer2[index++] = size18 >> 24 & 255; buffer2[index++] = BSON_BINARY_SUBTYPE_DEFAULT; - buffer2.set(ensureBuffer(value623), index); + buffer2.set(ensureBuffer(value627), index); index = index + size18; return index; } -function serializeObject(buffer2, key186, value624, index, checkKeys, depth, serializeFunctions, ignoreUndefined, isArray15, path136) { +function serializeObject(buffer2, key188, value628, index, checkKeys, depth, serializeFunctions, ignoreUndefined, isArray15, path135) { if (checkKeys === void 0) { checkKeys = false; } @@ -81497,36 +84102,36 @@ function serializeObject(buffer2, key186, value624, index, checkKeys, depth, ser if (isArray15 === void 0) { isArray15 = false; } - if (path136 === void 0) { - path136 = []; + if (path135 === void 0) { + path135 = []; } - for(var i49 = 0; i49 < path136.length; i49++){ - if (path136[i49] === value624) throw new BSONError("cyclic dependency detected"); + for(var i49 = 0; i49 < path135.length; i49++){ + if (path135[i49] === value628) throw new BSONError("cyclic dependency detected"); } - path136.push(value624); - buffer2[index++] = Array.isArray(value624) ? BSON_DATA_ARRAY : BSON_DATA_OBJECT; - var numberOfWrittenBytes = !isArray15 ? buffer2.write(key186, index, void 0, "utf8") : buffer2.write(key186, index, void 0, "ascii"); + path135.push(value628); + buffer2[index++] = Array.isArray(value628) ? BSON_DATA_ARRAY : BSON_DATA_OBJECT; + var numberOfWrittenBytes = !isArray15 ? buffer2.write(key188, index, void 0, "utf8") : buffer2.write(key188, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var endIndex = serializeInto(buffer2, value624, checkKeys, index, depth + 1, serializeFunctions, ignoreUndefined, path136); - path136.pop(); + var endIndex = serializeInto(buffer2, value628, checkKeys, index, depth + 1, serializeFunctions, ignoreUndefined, path135); + path135.pop(); return endIndex; } -function serializeDecimal128(buffer2, key187, value625, index, isArray16) { +function serializeDecimal128(buffer2, key189, value629, index, isArray16) { buffer2[index++] = BSON_DATA_DECIMAL128; - var numberOfWrittenBytes = !isArray16 ? buffer2.write(key187, index, void 0, "utf8") : buffer2.write(key187, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray16 ? buffer2.write(key189, index, void 0, "utf8") : buffer2.write(key189, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - buffer2.set(value625.bytes.subarray(0, 16), index); + buffer2.set(value629.bytes.subarray(0, 16), index); return index + 16; } -function serializeLong(buffer2, key188, value626, index, isArray17) { - buffer2[index++] = value626._bsontype === "Long" ? BSON_DATA_LONG : BSON_DATA_TIMESTAMP; - var numberOfWrittenBytes = !isArray17 ? buffer2.write(key188, index, void 0, "utf8") : buffer2.write(key188, index, void 0, "ascii"); +function serializeLong(buffer2, key190, value630, index, isArray17) { + buffer2[index++] = value630._bsontype === "Long" ? BSON_DATA_LONG : BSON_DATA_TIMESTAMP; + var numberOfWrittenBytes = !isArray17 ? buffer2.write(key190, index, void 0, "utf8") : buffer2.write(key190, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var lowBits = value626.getLowBits(); - var highBits = value626.getHighBits(); + var lowBits = value630.getLowBits(); + var highBits = value630.getHighBits(); buffer2[index++] = lowBits & 255; buffer2[index++] = lowBits >> 8 & 255; buffer2[index++] = lowBits >> 16 & 255; @@ -81537,33 +84142,33 @@ function serializeLong(buffer2, key188, value626, index, isArray17) { buffer2[index++] = highBits >> 24 & 255; return index; } -function serializeInt32(buffer2, key189, value627, index, isArray18) { - value627 = value627.valueOf(); +function serializeInt32(buffer2, key191, value631, index, isArray18) { + value631 = value631.valueOf(); buffer2[index++] = BSON_DATA_INT; - var numberOfWrittenBytes = !isArray18 ? buffer2.write(key189, index, void 0, "utf8") : buffer2.write(key189, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray18 ? buffer2.write(key191, index, void 0, "utf8") : buffer2.write(key191, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - buffer2[index++] = value627 & 255; - buffer2[index++] = value627 >> 8 & 255; - buffer2[index++] = value627 >> 16 & 255; - buffer2[index++] = value627 >> 24 & 255; + buffer2[index++] = value631 & 255; + buffer2[index++] = value631 >> 8 & 255; + buffer2[index++] = value631 >> 16 & 255; + buffer2[index++] = value631 >> 24 & 255; return index; } -function serializeDouble(buffer2, key190, value628, index, isArray19) { +function serializeDouble(buffer2, key192, value632, index, isArray19) { buffer2[index++] = BSON_DATA_NUMBER; - var numberOfWrittenBytes = !isArray19 ? buffer2.write(key190, index, void 0, "utf8") : buffer2.write(key190, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray19 ? buffer2.write(key192, index, void 0, "utf8") : buffer2.write(key192, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - writeIEEE754(buffer2, value628.value, index, "little", 52, 8); + writeIEEE754(buffer2, value632.value, index, "little", 52, 8); index = index + 8; return index; } -function serializeFunction(buffer2, key191, value629, index, _checkKeys, _depth, isArray20) { +function serializeFunction(buffer2, key193, value633, index, _checkKeys, _depth, isArray20) { buffer2[index++] = BSON_DATA_CODE; - var numberOfWrittenBytes = !isArray20 ? buffer2.write(key191, index, void 0, "utf8") : buffer2.write(key191, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray20 ? buffer2.write(key193, index, void 0, "utf8") : buffer2.write(key193, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var functionString = normalizedFunctionString(value629); + var functionString = normalizedFunctionString(value633); var size19 = buffer2.write(functionString, index + 4, void 0, "utf8") + 1; buffer2[index] = size19 & 255; buffer2[index + 1] = size19 >> 8 & 255; @@ -81573,7 +84178,7 @@ function serializeFunction(buffer2, key191, value629, index, _checkKeys, _depth, buffer2[index++] = 0; return index; } -function serializeCode(buffer2, key192, value630, index, checkKeys, depth, serializeFunctions, ignoreUndefined, isArray21) { +function serializeCode(buffer2, key194, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined, isArray21) { if (checkKeys === void 0) { checkKeys = false; } @@ -81589,13 +84194,13 @@ function serializeCode(buffer2, key192, value630, index, checkKeys, depth, seria if (isArray21 === void 0) { isArray21 = false; } - if (value630.scope && typeof value630.scope === "object") { + if (value634.scope && typeof value634.scope === "object") { buffer2[index++] = BSON_DATA_CODE_W_SCOPE; - var numberOfWrittenBytes = !isArray21 ? buffer2.write(key192, index, void 0, "utf8") : buffer2.write(key192, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray21 ? buffer2.write(key194, index, void 0, "utf8") : buffer2.write(key194, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; var startIndex = index; - var functionString = typeof value630.code === "string" ? value630.code : value630.code.toString(); + var functionString = typeof value634.code === "string" ? value634.code : value634.code.toString(); index = index + 4; var codeSize = buffer2.write(functionString, index + 4, void 0, "utf8") + 1; buffer2[index] = codeSize & 255; @@ -81604,7 +84209,7 @@ function serializeCode(buffer2, key192, value630, index, checkKeys, depth, seria buffer2[index + 3] = codeSize >> 24 & 255; buffer2[index + 4 + codeSize - 1] = 0; index = index + codeSize + 4; - var endIndex = serializeInto(buffer2, value630.scope, checkKeys, index, depth + 1, serializeFunctions, ignoreUndefined); + var endIndex = serializeInto(buffer2, value634.scope, checkKeys, index, depth + 1, serializeFunctions, ignoreUndefined); index = endIndex - 1; var totalSize = endIndex - startIndex; buffer2[startIndex++] = totalSize & 255; @@ -81614,10 +84219,10 @@ function serializeCode(buffer2, key192, value630, index, checkKeys, depth, seria buffer2[index++] = 0; } else { buffer2[index++] = BSON_DATA_CODE; - var numberOfWrittenBytes = !isArray21 ? buffer2.write(key192, index, void 0, "utf8") : buffer2.write(key192, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray21 ? buffer2.write(key194, index, void 0, "utf8") : buffer2.write(key194, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var functionString = value630.code.toString(); + var functionString = value634.code.toString(); var size20 = buffer2.write(functionString, index + 4, void 0, "utf8") + 1; buffer2[index] = size20 & 255; buffer2[index + 1] = size20 >> 8 & 255; @@ -81628,36 +84233,36 @@ function serializeCode(buffer2, key192, value630, index, checkKeys, depth, seria } return index; } -function serializeBinary(buffer2, key193, value631, index, isArray22) { +function serializeBinary(buffer2, key195, value635, index, isArray22) { buffer2[index++] = BSON_DATA_BINARY; - var numberOfWrittenBytes = !isArray22 ? buffer2.write(key193, index, void 0, "utf8") : buffer2.write(key193, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray22 ? buffer2.write(key195, index, void 0, "utf8") : buffer2.write(key195, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var data95 = value631.value(true); - var size21 = value631.position; - if (value631.sub_type === Binary.SUBTYPE_BYTE_ARRAY) size21 = size21 + 4; + var data98 = value635.value(true); + var size21 = value635.position; + if (value635.sub_type === Binary.SUBTYPE_BYTE_ARRAY) size21 = size21 + 4; buffer2[index++] = size21 & 255; buffer2[index++] = size21 >> 8 & 255; buffer2[index++] = size21 >> 16 & 255; buffer2[index++] = size21 >> 24 & 255; - buffer2[index++] = value631.sub_type; - if (value631.sub_type === Binary.SUBTYPE_BYTE_ARRAY) { + buffer2[index++] = value635.sub_type; + if (value635.sub_type === Binary.SUBTYPE_BYTE_ARRAY) { size21 = size21 - 4; buffer2[index++] = size21 & 255; buffer2[index++] = size21 >> 8 & 255; buffer2[index++] = size21 >> 16 & 255; buffer2[index++] = size21 >> 24 & 255; } - buffer2.set(data95, index); - index = index + value631.position; + buffer2.set(data98, index); + index = index + value635.position; return index; } -function serializeSymbol(buffer2, key194, value632, index, isArray23) { +function serializeSymbol(buffer2, key196, value636, index, isArray23) { buffer2[index++] = BSON_DATA_SYMBOL; - var numberOfWrittenBytes = !isArray23 ? buffer2.write(key194, index, void 0, "utf8") : buffer2.write(key194, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray23 ? buffer2.write(key196, index, void 0, "utf8") : buffer2.write(key196, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; - var size22 = buffer2.write(value632.value, index + 4, void 0, "utf8") + 1; + var size22 = buffer2.write(value636.value, index + 4, void 0, "utf8") + 1; buffer2[index] = size22 & 255; buffer2[index + 1] = size22 >> 8 & 255; buffer2[index + 2] = size22 >> 16 & 255; @@ -81666,20 +84271,20 @@ function serializeSymbol(buffer2, key194, value632, index, isArray23) { buffer2[index++] = 0; return index; } -function serializeDBRef(buffer2, key195, value633, index, depth, serializeFunctions, isArray24) { +function serializeDBRef(buffer2, key197, value637, index, depth, serializeFunctions, isArray24) { buffer2[index++] = BSON_DATA_OBJECT; - var numberOfWrittenBytes = !isArray24 ? buffer2.write(key195, index, void 0, "utf8") : buffer2.write(key195, index, void 0, "ascii"); + var numberOfWrittenBytes = !isArray24 ? buffer2.write(key197, index, void 0, "utf8") : buffer2.write(key197, index, void 0, "ascii"); index = index + numberOfWrittenBytes; buffer2[index++] = 0; var startIndex = index; var output = { - $ref: value633.collection || value633.namespace, - $id: value633.oid + $ref: value637.collection || value637.namespace, + $id: value637.oid }; - if (value633.db != null) { - output.$db = value633.db; + if (value637.db != null) { + output.$db = value637.db; } - output = Object.assign(output, value633.fields); + output = Object.assign(output, value637.fields); var endIndex = serializeInto(buffer2, output, false, index, depth + 1, serializeFunctions); var size23 = endIndex - startIndex; buffer2[startIndex++] = size23 & 255; @@ -81688,7 +84293,7 @@ function serializeDBRef(buffer2, key195, value633, index, depth, serializeFuncti buffer2[startIndex++] = size23 >> 24 & 255; return endIndex; } -function serializeInto(buffer2, object, checkKeys, startingIndex, depth, serializeFunctions, ignoreUndefined, path137) { +function serializeInto(buffer2, object, checkKeys, startingIndex, depth, serializeFunctions, ignoreUndefined, path136) { if (checkKeys === void 0) { checkKeys = false; } @@ -81704,67 +84309,67 @@ function serializeInto(buffer2, object, checkKeys, startingIndex, depth, seriali if (ignoreUndefined === void 0) { ignoreUndefined = true; } - if (path137 === void 0) { - path137 = []; + if (path136 === void 0) { + path136 = []; } startingIndex = startingIndex || 0; - path137 = path137 || []; - path137.push(object); + path136 = path136 || []; + path136.push(object); var index = startingIndex + 4; if (Array.isArray(object)) { for(var i50 = 0; i50 < object.length; i50++){ - var key196 = "" + i50; - var value634 = object[i50]; - if (value634 && value634.toBSON) { - if (typeof value634.toBSON !== "function") throw new BSONTypeError("toBSON is not a function"); - value634 = value634.toBSON(); - } - if (typeof value634 === "string") { - index = serializeString(buffer2, key196, value634, index, true); - } else if (typeof value634 === "number") { - index = serializeNumber(buffer2, key196, value634, index, true); - } else if (typeof value634 === "bigint") { + var key198 = "" + i50; + var value638 = object[i50]; + if (value638 && value638.toBSON) { + if (typeof value638.toBSON !== "function") throw new BSONTypeError("toBSON is not a function"); + value638 = value638.toBSON(); + } + if (typeof value638 === "string") { + index = serializeString(buffer2, key198, value638, index, true); + } else if (typeof value638 === "number") { + index = serializeNumber(buffer2, key198, value638, index, true); + } else if (typeof value638 === "bigint") { throw new BSONTypeError("Unsupported type BigInt, please use Decimal128"); - } else if (typeof value634 === "boolean") { - index = serializeBoolean(buffer2, key196, value634, index, true); - } else if (value634 instanceof Date || isDate3(value634)) { - index = serializeDate(buffer2, key196, value634, index, true); - } else if (value634 === void 0) { - index = serializeNull(buffer2, key196, value634, index, true); - } else if (value634 === null) { - index = serializeNull(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "ObjectId" || value634["_bsontype"] === "ObjectID") { - index = serializeObjectId(buffer2, key196, value634, index, true); - } else if (isUint8Array1(value634)) { - index = serializeBuffer(buffer2, key196, value634, index, true); - } else if (value634 instanceof RegExp || isRegExp3(value634)) { - index = serializeRegExp(buffer2, key196, value634, index, true); - } else if (typeof value634 === "object" && value634["_bsontype"] == null) { - index = serializeObject(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined, true, path137); - } else if (typeof value634 === "object" && isBSONType(value634) && value634._bsontype === "Decimal128") { - index = serializeDecimal128(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "Long" || value634["_bsontype"] === "Timestamp") { - index = serializeLong(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "Double") { - index = serializeDouble(buffer2, key196, value634, index, true); - } else if (typeof value634 === "function" && serializeFunctions) { - index = serializeFunction(buffer2, key196, value634, index, checkKeys, depth, true); - } else if (value634["_bsontype"] === "Code") { - index = serializeCode(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined, true); - } else if (value634["_bsontype"] === "Binary") { - index = serializeBinary(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "Symbol") { - index = serializeSymbol(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "DBRef") { - index = serializeDBRef(buffer2, key196, value634, index, depth, serializeFunctions, true); - } else if (value634["_bsontype"] === "BSONRegExp") { - index = serializeBSONRegExp(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "Int32") { - index = serializeInt32(buffer2, key196, value634, index, true); - } else if (value634["_bsontype"] === "MinKey" || value634["_bsontype"] === "MaxKey") { - index = serializeMinMax(buffer2, key196, value634, index, true); - } else if (typeof value634["_bsontype"] !== "undefined") { - throw new BSONTypeError("Unrecognized or invalid _bsontype: " + value634["_bsontype"]); + } else if (typeof value638 === "boolean") { + index = serializeBoolean(buffer2, key198, value638, index, true); + } else if (value638 instanceof Date || isDate3(value638)) { + index = serializeDate(buffer2, key198, value638, index, true); + } else if (value638 === void 0) { + index = serializeNull(buffer2, key198, value638, index, true); + } else if (value638 === null) { + index = serializeNull(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "ObjectId" || value638["_bsontype"] === "ObjectID") { + index = serializeObjectId(buffer2, key198, value638, index, true); + } else if (isUint8Array1(value638)) { + index = serializeBuffer(buffer2, key198, value638, index, true); + } else if (value638 instanceof RegExp || isRegExp3(value638)) { + index = serializeRegExp(buffer2, key198, value638, index, true); + } else if (typeof value638 === "object" && value638["_bsontype"] == null) { + index = serializeObject(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions, ignoreUndefined, true, path136); + } else if (typeof value638 === "object" && isBSONType(value638) && value638._bsontype === "Decimal128") { + index = serializeDecimal128(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "Long" || value638["_bsontype"] === "Timestamp") { + index = serializeLong(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "Double") { + index = serializeDouble(buffer2, key198, value638, index, true); + } else if (typeof value638 === "function" && serializeFunctions) { + index = serializeFunction(buffer2, key198, value638, index, checkKeys, depth, true); + } else if (value638["_bsontype"] === "Code") { + index = serializeCode(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions, ignoreUndefined, true); + } else if (value638["_bsontype"] === "Binary") { + index = serializeBinary(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "Symbol") { + index = serializeSymbol(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "DBRef") { + index = serializeDBRef(buffer2, key198, value638, index, depth, serializeFunctions, true); + } else if (value638["_bsontype"] === "BSONRegExp") { + index = serializeBSONRegExp(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "Int32") { + index = serializeInt32(buffer2, key198, value638, index, true); + } else if (value638["_bsontype"] === "MinKey" || value638["_bsontype"] === "MaxKey") { + index = serializeMinMax(buffer2, key198, value638, index, true); + } else if (typeof value638["_bsontype"] !== "undefined") { + throw new BSONTypeError("Unrecognized or invalid _bsontype: " + value638["_bsontype"]); } } } else if (object instanceof bsonMap || isMap2(object)) { @@ -81774,65 +84379,65 @@ function serializeInto(buffer2, object, checkKeys, startingIndex, depth, seriali var entry = iterator.next(); done = !!entry.done; if (done) continue; - var key196 = entry.value[0]; - var value634 = entry.value[1]; - var type83 = typeof value634; - if (typeof key196 === "string" && !ignoreKeys.has(key196)) { - if (key196.match(regexp) != null) { - throw Error("key " + key196 + " must not contain null bytes"); + var key198 = entry.value[0]; + var value638 = entry.value[1]; + var type76 = typeof value638; + if (typeof key198 === "string" && !ignoreKeys.has(key198)) { + if (key198.match(regexp) != null) { + throw Error("key " + key198 + " must not contain null bytes"); } if (checkKeys) { - if (key196[0] === "$") { - throw Error("key " + key196 + " must not start with '$'"); - } else if (~key196.indexOf(".")) { - throw Error("key " + key196 + " must not contain '.'"); + if (key198[0] === "$") { + throw Error("key " + key198 + " must not start with '$'"); + } else if (~key198.indexOf(".")) { + throw Error("key " + key198 + " must not contain '.'"); } } } - if (type83 === "string") { - index = serializeString(buffer2, key196, value634, index); - } else if (type83 === "number") { - index = serializeNumber(buffer2, key196, value634, index); - } else if (type83 === "bigint" || isBigInt64Array1(value634) || isBigUInt64Array(value634)) { + if (type76 === "string") { + index = serializeString(buffer2, key198, value638, index); + } else if (type76 === "number") { + index = serializeNumber(buffer2, key198, value638, index); + } else if (type76 === "bigint" || isBigInt64Array1(value638) || isBigUInt64Array(value638)) { throw new BSONTypeError("Unsupported type BigInt, please use Decimal128"); - } else if (type83 === "boolean") { - index = serializeBoolean(buffer2, key196, value634, index); - } else if (value634 instanceof Date || isDate3(value634)) { - index = serializeDate(buffer2, key196, value634, index); - } else if (value634 === null || value634 === void 0 && ignoreUndefined === false) { - index = serializeNull(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "ObjectId" || value634["_bsontype"] === "ObjectID") { - index = serializeObjectId(buffer2, key196, value634, index); - } else if (isUint8Array1(value634)) { - index = serializeBuffer(buffer2, key196, value634, index); - } else if (value634 instanceof RegExp || isRegExp3(value634)) { - index = serializeRegExp(buffer2, key196, value634, index); - } else if (type83 === "object" && value634["_bsontype"] == null) { - index = serializeObject(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined, false, path137); - } else if (type83 === "object" && value634["_bsontype"] === "Decimal128") { - index = serializeDecimal128(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Long" || value634["_bsontype"] === "Timestamp") { - index = serializeLong(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Double") { - index = serializeDouble(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Code") { - index = serializeCode(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined); - } else if (typeof value634 === "function" && serializeFunctions) { - index = serializeFunction(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions); - } else if (value634["_bsontype"] === "Binary") { - index = serializeBinary(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Symbol") { - index = serializeSymbol(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "DBRef") { - index = serializeDBRef(buffer2, key196, value634, index, depth, serializeFunctions); - } else if (value634["_bsontype"] === "BSONRegExp") { - index = serializeBSONRegExp(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Int32") { - index = serializeInt32(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "MinKey" || value634["_bsontype"] === "MaxKey") { - index = serializeMinMax(buffer2, key196, value634, index); - } else if (typeof value634["_bsontype"] !== "undefined") { - throw new BSONTypeError("Unrecognized or invalid _bsontype: " + value634["_bsontype"]); + } else if (type76 === "boolean") { + index = serializeBoolean(buffer2, key198, value638, index); + } else if (value638 instanceof Date || isDate3(value638)) { + index = serializeDate(buffer2, key198, value638, index); + } else if (value638 === null || value638 === void 0 && ignoreUndefined === false) { + index = serializeNull(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "ObjectId" || value638["_bsontype"] === "ObjectID") { + index = serializeObjectId(buffer2, key198, value638, index); + } else if (isUint8Array1(value638)) { + index = serializeBuffer(buffer2, key198, value638, index); + } else if (value638 instanceof RegExp || isRegExp3(value638)) { + index = serializeRegExp(buffer2, key198, value638, index); + } else if (type76 === "object" && value638["_bsontype"] == null) { + index = serializeObject(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions, ignoreUndefined, false, path136); + } else if (type76 === "object" && value638["_bsontype"] === "Decimal128") { + index = serializeDecimal128(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Long" || value638["_bsontype"] === "Timestamp") { + index = serializeLong(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Double") { + index = serializeDouble(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Code") { + index = serializeCode(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions, ignoreUndefined); + } else if (typeof value638 === "function" && serializeFunctions) { + index = serializeFunction(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions); + } else if (value638["_bsontype"] === "Binary") { + index = serializeBinary(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Symbol") { + index = serializeSymbol(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "DBRef") { + index = serializeDBRef(buffer2, key198, value638, index, depth, serializeFunctions); + } else if (value638["_bsontype"] === "BSONRegExp") { + index = serializeBSONRegExp(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Int32") { + index = serializeInt32(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "MinKey" || value638["_bsontype"] === "MaxKey") { + index = serializeMinMax(buffer2, key198, value638, index); + } else if (typeof value638["_bsontype"] !== "undefined") { + throw new BSONTypeError("Unrecognized or invalid _bsontype: " + value638["_bsontype"]); } } } else { @@ -81841,75 +84446,75 @@ function serializeInto(buffer2, object, checkKeys, startingIndex, depth, seriali object = object.toBSON(); if (object != null && typeof object !== "object") throw new BSONTypeError("toBSON function did not return an object"); } - for(var key196 in object){ - var value634 = object[key196]; - if (value634 && value634.toBSON) { - if (typeof value634.toBSON !== "function") throw new BSONTypeError("toBSON is not a function"); - value634 = value634.toBSON(); + for(var key198 in object){ + var value638 = object[key198]; + if (value638 && value638.toBSON) { + if (typeof value638.toBSON !== "function") throw new BSONTypeError("toBSON is not a function"); + value638 = value638.toBSON(); } - var type83 = typeof value634; - if (typeof key196 === "string" && !ignoreKeys.has(key196)) { - if (key196.match(regexp) != null) { - throw Error("key " + key196 + " must not contain null bytes"); + var type76 = typeof value638; + if (typeof key198 === "string" && !ignoreKeys.has(key198)) { + if (key198.match(regexp) != null) { + throw Error("key " + key198 + " must not contain null bytes"); } if (checkKeys) { - if (key196[0] === "$") { - throw Error("key " + key196 + " must not start with '$'"); - } else if (~key196.indexOf(".")) { - throw Error("key " + key196 + " must not contain '.'"); + if (key198[0] === "$") { + throw Error("key " + key198 + " must not start with '$'"); + } else if (~key198.indexOf(".")) { + throw Error("key " + key198 + " must not contain '.'"); } } } - if (type83 === "string") { - index = serializeString(buffer2, key196, value634, index); - } else if (type83 === "number") { - index = serializeNumber(buffer2, key196, value634, index); - } else if (type83 === "bigint") { + if (type76 === "string") { + index = serializeString(buffer2, key198, value638, index); + } else if (type76 === "number") { + index = serializeNumber(buffer2, key198, value638, index); + } else if (type76 === "bigint") { throw new BSONTypeError("Unsupported type BigInt, please use Decimal128"); - } else if (type83 === "boolean") { - index = serializeBoolean(buffer2, key196, value634, index); - } else if (value634 instanceof Date || isDate3(value634)) { - index = serializeDate(buffer2, key196, value634, index); - } else if (value634 === void 0) { - if (ignoreUndefined === false) index = serializeNull(buffer2, key196, value634, index); - } else if (value634 === null) { - index = serializeNull(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "ObjectId" || value634["_bsontype"] === "ObjectID") { - index = serializeObjectId(buffer2, key196, value634, index); - } else if (isUint8Array1(value634)) { - index = serializeBuffer(buffer2, key196, value634, index); - } else if (value634 instanceof RegExp || isRegExp3(value634)) { - index = serializeRegExp(buffer2, key196, value634, index); - } else if (type83 === "object" && value634["_bsontype"] == null) { - index = serializeObject(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined, false, path137); - } else if (type83 === "object" && value634["_bsontype"] === "Decimal128") { - index = serializeDecimal128(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Long" || value634["_bsontype"] === "Timestamp") { - index = serializeLong(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Double") { - index = serializeDouble(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Code") { - index = serializeCode(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions, ignoreUndefined); - } else if (typeof value634 === "function" && serializeFunctions) { - index = serializeFunction(buffer2, key196, value634, index, checkKeys, depth, serializeFunctions); - } else if (value634["_bsontype"] === "Binary") { - index = serializeBinary(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Symbol") { - index = serializeSymbol(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "DBRef") { - index = serializeDBRef(buffer2, key196, value634, index, depth, serializeFunctions); - } else if (value634["_bsontype"] === "BSONRegExp") { - index = serializeBSONRegExp(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "Int32") { - index = serializeInt32(buffer2, key196, value634, index); - } else if (value634["_bsontype"] === "MinKey" || value634["_bsontype"] === "MaxKey") { - index = serializeMinMax(buffer2, key196, value634, index); - } else if (typeof value634["_bsontype"] !== "undefined") { - throw new BSONTypeError("Unrecognized or invalid _bsontype: " + value634["_bsontype"]); - } - } - } - path137.pop(); + } else if (type76 === "boolean") { + index = serializeBoolean(buffer2, key198, value638, index); + } else if (value638 instanceof Date || isDate3(value638)) { + index = serializeDate(buffer2, key198, value638, index); + } else if (value638 === void 0) { + if (ignoreUndefined === false) index = serializeNull(buffer2, key198, value638, index); + } else if (value638 === null) { + index = serializeNull(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "ObjectId" || value638["_bsontype"] === "ObjectID") { + index = serializeObjectId(buffer2, key198, value638, index); + } else if (isUint8Array1(value638)) { + index = serializeBuffer(buffer2, key198, value638, index); + } else if (value638 instanceof RegExp || isRegExp3(value638)) { + index = serializeRegExp(buffer2, key198, value638, index); + } else if (type76 === "object" && value638["_bsontype"] == null) { + index = serializeObject(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions, ignoreUndefined, false, path136); + } else if (type76 === "object" && value638["_bsontype"] === "Decimal128") { + index = serializeDecimal128(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Long" || value638["_bsontype"] === "Timestamp") { + index = serializeLong(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Double") { + index = serializeDouble(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Code") { + index = serializeCode(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions, ignoreUndefined); + } else if (typeof value638 === "function" && serializeFunctions) { + index = serializeFunction(buffer2, key198, value638, index, checkKeys, depth, serializeFunctions); + } else if (value638["_bsontype"] === "Binary") { + index = serializeBinary(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Symbol") { + index = serializeSymbol(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "DBRef") { + index = serializeDBRef(buffer2, key198, value638, index, depth, serializeFunctions); + } else if (value638["_bsontype"] === "BSONRegExp") { + index = serializeBSONRegExp(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "Int32") { + index = serializeInt32(buffer2, key198, value638, index); + } else if (value638["_bsontype"] === "MinKey" || value638["_bsontype"] === "MaxKey") { + index = serializeMinMax(buffer2, key198, value638, index); + } else if (typeof value638["_bsontype"] !== "undefined") { + throw new BSONTypeError("Unrecognized or invalid _bsontype: " + value638["_bsontype"]); + } + } + } + path136.pop(); buffer2[index++] = 0; var size24 = index - startingIndex; buffer2[startingIndex++] = size24 & 255; @@ -81925,14 +84530,14 @@ function setInternalBufferSize(size25) { buffer = buffer_1.alloc(size25); } } -function serialize(object, options136) { - if (options136 === void 0) { - options136 = {}; +function serialize(object, options138) { + if (options138 === void 0) { + options138 = {}; } - var checkKeys = typeof options136.checkKeys === "boolean" ? options136.checkKeys : false; - var serializeFunctions = typeof options136.serializeFunctions === "boolean" ? options136.serializeFunctions : false; - var ignoreUndefined = typeof options136.ignoreUndefined === "boolean" ? options136.ignoreUndefined : true; - var minInternalBufferSize = typeof options136.minInternalBufferSize === "number" ? options136.minInternalBufferSize : MAXSIZE; + var checkKeys = typeof options138.checkKeys === "boolean" ? options138.checkKeys : false; + var serializeFunctions = typeof options138.serializeFunctions === "boolean" ? options138.serializeFunctions : false; + var ignoreUndefined = typeof options138.ignoreUndefined === "boolean" ? options138.ignoreUndefined : true; + var minInternalBufferSize = typeof options138.minInternalBufferSize === "number" ? options138.minInternalBufferSize : MAXSIZE; if (buffer.length < minInternalBufferSize) { buffer = buffer_1.alloc(minInternalBufferSize); } @@ -81941,39 +84546,39 @@ function serialize(object, options136) { buffer.copy(finishedBuffer, 0, 0, finishedBuffer.length); return finishedBuffer; } -function serializeWithBufferAndIndex(object, finalBuffer, options137) { - if (options137 === void 0) { - options137 = {}; +function serializeWithBufferAndIndex(object, finalBuffer, options139) { + if (options139 === void 0) { + options139 = {}; } - var checkKeys = typeof options137.checkKeys === "boolean" ? options137.checkKeys : false; - var serializeFunctions = typeof options137.serializeFunctions === "boolean" ? options137.serializeFunctions : false; - var ignoreUndefined = typeof options137.ignoreUndefined === "boolean" ? options137.ignoreUndefined : true; - var startIndex = typeof options137.index === "number" ? options137.index : 0; + var checkKeys = typeof options139.checkKeys === "boolean" ? options139.checkKeys : false; + var serializeFunctions = typeof options139.serializeFunctions === "boolean" ? options139.serializeFunctions : false; + var ignoreUndefined = typeof options139.ignoreUndefined === "boolean" ? options139.ignoreUndefined : true; + var startIndex = typeof options139.index === "number" ? options139.index : 0; var serializationIndex = serializeInto(buffer, object, checkKeys, 0, 0, serializeFunctions, ignoreUndefined); buffer.copy(finalBuffer, startIndex, 0, serializationIndex); return startIndex + serializationIndex - 1; } -function deserialize(buffer2, options138) { - if (options138 === void 0) { - options138 = {}; +function deserialize(buffer2, options140) { + if (options140 === void 0) { + options140 = {}; } - return deserialize$1(buffer2 instanceof buffer_1 ? buffer2 : ensureBuffer(buffer2), options138); + return deserialize$1(buffer2 instanceof buffer_1 ? buffer2 : ensureBuffer(buffer2), options140); } -function calculateObjectSize(object, options139) { - if (options139 === void 0) { - options139 = {}; +function calculateObjectSize(object, options141) { + if (options141 === void 0) { + options141 = {}; } - options139 = options139 || {}; - var serializeFunctions = typeof options139.serializeFunctions === "boolean" ? options139.serializeFunctions : false; - var ignoreUndefined = typeof options139.ignoreUndefined === "boolean" ? options139.ignoreUndefined : true; + options141 = options141 || {}; + var serializeFunctions = typeof options141.serializeFunctions === "boolean" ? options141.serializeFunctions : false; + var ignoreUndefined = typeof options141.ignoreUndefined === "boolean" ? options141.ignoreUndefined : true; return calculateObjectSize$1(object, serializeFunctions, ignoreUndefined); } -function deserializeStream(data96, startIndex, numberOfDocuments, documents, docStartIndex, options140) { +function deserializeStream(data99, startIndex, numberOfDocuments, documents, docStartIndex, options142) { var internalOptions = Object.assign({ allowObjectSmallerThanBufferSize: true, index: 0 - }, options140); - var bufferData = ensureBuffer(data96); + }, options142); + var bufferData = ensureBuffer(data99); var index = startIndex; for(var i51 = 0; i51 < numberOfDocuments; i51++){ var size26 = bufferData[index] | bufferData[index + 1] << 8 | bufferData[index + 2] << 16 | bufferData[index + 3] << 24; @@ -81983,7 +84588,7 @@ function deserializeStream(data96, startIndex, numberOfDocuments, documents, doc } return index; } -const mod32 = { +const mod31 = { BSONError, BSONRegExp, BSONSymbol, @@ -82045,7 +84650,7 @@ const mod32 = { serializeWithBufferAndIndex, setInternalBufferSize }; -const base64abc4 = [ +const base64abc6 = [ "A", "B", "C", @@ -82111,25 +84716,25 @@ const base64abc4 = [ "+", "/", ]; -function encode13(data97) { - const uint8 = typeof data97 === "string" ? new TextEncoder().encode(data97) : data97 instanceof Uint8Array ? data97 : new Uint8Array(data97); - let result = "", i291; +function encode15(data100) { + const uint8 = typeof data100 === "string" ? new TextEncoder().encode(data100) : data100 instanceof Uint8Array ? data100 : new Uint8Array(data100); + let result = "", i295; const l = uint8.length; - for(i291 = 2; i291 < l; i291 += 3){ - result += base64abc4[uint8[i291 - 2] >> 2]; - result += base64abc4[(uint8[i291 - 2] & 0x03) << 4 | uint8[i291 - 1] >> 4]; - result += base64abc4[(uint8[i291 - 1] & 0x0f) << 2 | uint8[i291] >> 6]; - result += base64abc4[uint8[i291] & 0x3f]; - } - if (i291 === l + 1) { - result += base64abc4[uint8[i291 - 2] >> 2]; - result += base64abc4[(uint8[i291 - 2] & 0x03) << 4]; + for(i295 = 2; i295 < l; i295 += 3){ + result += base64abc6[uint8[i295 - 2] >> 2]; + result += base64abc6[(uint8[i295 - 2] & 0x03) << 4 | uint8[i295 - 1] >> 4]; + result += base64abc6[(uint8[i295 - 1] & 0x0f) << 2 | uint8[i295] >> 6]; + result += base64abc6[uint8[i295] & 0x3f]; + } + if (i295 === l + 1) { + result += base64abc6[uint8[i295 - 2] >> 2]; + result += base64abc6[(uint8[i295 - 2] & 0x03) << 4]; result += "=="; } - if (i291 === l) { - result += base64abc4[uint8[i291 - 2] >> 2]; - result += base64abc4[(uint8[i291 - 2] & 0x03) << 4 | uint8[i291 - 1] >> 4]; - result += base64abc4[(uint8[i291 - 1] & 0x0f) << 2]; + if (i295 === l) { + result += base64abc6[uint8[i295 - 2] >> 2]; + result += base64abc6[(uint8[i295 - 2] & 0x03) << 4 | uint8[i295 - 1] >> 4]; + result += base64abc6[(uint8[i295 - 1] & 0x0f) << 2]; result += "="; } return result; @@ -82137,17 +84742,17 @@ function encode13(data97) { function decode12(b64) { const binString = atob(b64); const size27 = binString.length; - const bytes55 = new Uint8Array(size27); - for(let i292 = 0; i292 < size27; i292++){ - bytes55[i292] = binString.charCodeAt(i292); + const bytes57 = new Uint8Array(size27); + for(let i296 = 0; i296 < size27; i296++){ + bytes57[i296] = binString.charCodeAt(i296); } - return bytes55; + return bytes57; } -const mod33 = { - encode: encode13, +const mod32 = { + encode: encode15, decode: decode12 }; -const data1 = decode12("\ +const data = decode12("\ AGFzbQEAAAABnYGAgAAXYAAAYAABf2ABfwBgAX8Bf2ABfwF+YAJ/fwBgAn9/AX9gA39/fwBgA39/fw\ F/YAR/f39/AGAEf39/fwF/YAV/f39/fwBgBX9/f39/AX9gBn9/f39/fwBgBn9/f39/fwF/YAV/f39+\ fwBgB39/f35/f38Bf2AFf399f38AYAV/f3x/fwBgAn9+AGAEf31/fwBgBH98f38AYAJ+fwF/AtKFgI\ @@ -84640,12 +87245,12 @@ let cachedTextDecoder4 = new TextDecoder("utf-8", { fatal: true }); cachedTextDecoder4.decode(); -let cachegetUint8Memory04 = null; +let cachegetUint8Memory02 = null; function getUint8Memory04() { - if (cachegetUint8Memory04 === null || cachegetUint8Memory04.buffer !== wasm6.memory.buffer) { - cachegetUint8Memory04 = new Uint8Array(wasm6.memory.buffer); + if (cachegetUint8Memory02 === null || cachegetUint8Memory02.buffer !== wasm6.memory.buffer) { + cachegetUint8Memory02 = new Uint8Array(wasm6.memory.buffer); } - return cachegetUint8Memory04; + return cachegetUint8Memory02; } function getStringFromWasm04(ptr, len82) { return cachedTextDecoder4.decode(getUint8Memory04().subarray(ptr, ptr + len82)); @@ -84668,9 +87273,9 @@ function passStringToWasm04(arg, malloc, realloc) { const mem7 = getUint8Memory04(); let offset190 = 0; for(; offset190 < len83; offset190++){ - const code91 = arg.charCodeAt(offset190); - if (code91 > 0x7F) break; - mem7[ptr + offset190] = code91; + const code92 = arg.charCodeAt(offset190); + if (code92 > 0x7F) break; + mem7[ptr + offset190] = code92; } if (offset190 !== len83) { if (offset190 !== 0) { @@ -84687,27 +87292,27 @@ function passStringToWasm04(arg, malloc, realloc) { function isLikeNone1(x30) { return x30 === undefined || x30 === null; } -let cachegetInt32Memory04 = null; +let cachegetInt32Memory02 = null; function getInt32Memory04() { - if (cachegetInt32Memory04 === null || cachegetInt32Memory04.buffer !== wasm6.memory.buffer) { - cachegetInt32Memory04 = new Int32Array(wasm6.memory.buffer); + if (cachegetInt32Memory02 === null || cachegetInt32Memory02.buffer !== wasm6.memory.buffer) { + cachegetInt32Memory02 = new Int32Array(wasm6.memory.buffer); } - return cachegetInt32Memory04; + return cachegetInt32Memory02; } function getArrayU8FromWasm04(ptr, len84) { return getUint8Memory04().subarray(ptr / 1, ptr / 1 + len84); } -function digest1(algorithm, data98, length) { +function digest1(algorithm, data101, length) { try { const retptr = wasm6.__wbindgen_add_to_stack_pointer(-16); var ptr0 = passStringToWasm04(algorithm, wasm6.__wbindgen_malloc, wasm6.__wbindgen_realloc); var len0 = WASM_VECTOR_LEN4; - wasm6.digest(retptr, ptr0, len0, addHeapObject4(data98), !isLikeNone1(length), isLikeNone1(length) ? 0 : length); + wasm6.digest(retptr, ptr0, len0, addHeapObject4(data101), !isLikeNone1(length), isLikeNone1(length) ? 0 : length); var r0 = getInt32Memory04()[retptr / 4 + 0]; - var r117 = getInt32Memory04()[retptr / 4 + 1]; - var v111 = getArrayU8FromWasm04(r0, r117).slice(); - wasm6.__wbindgen_free(r0, r117 * 1); - return v111; + var r118 = getInt32Memory04()[retptr / 4 + 1]; + var v112 = getArrayU8FromWasm04(r0, r118).slice(); + wasm6.__wbindgen_free(r0, r118 * 1); + return v112; } finally{ wasm6.__wbindgen_add_to_stack_pointer(16); } @@ -84736,17 +87341,17 @@ class DigestContext1 { var ret = wasm6.digestcontext_new(ptr0, len0); return DigestContext1.__wrap(ret); } - update(data99) { - wasm6.digestcontext_update(this.ptr, addHeapObject4(data99)); + update(data102) { + wasm6.digestcontext_update(this.ptr, addHeapObject4(data102)); } digest(length) { try { const retptr = wasm6.__wbindgen_add_to_stack_pointer(-16); wasm6.digestcontext_digest(retptr, this.ptr, !isLikeNone1(length), isLikeNone1(length) ? 0 : length); var r0 = getInt32Memory04()[retptr / 4 + 0]; - var r118 = getInt32Memory04()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm04(r0, r118).slice(); - wasm6.__wbindgen_free(r0, r118 * 1); + var r119 = getInt32Memory04()[retptr / 4 + 1]; + var v0 = getArrayU8FromWasm04(r0, r119).slice(); + wasm6.__wbindgen_free(r0, r119 * 1); return v0; } finally{ wasm6.__wbindgen_add_to_stack_pointer(16); @@ -84757,9 +87362,9 @@ class DigestContext1 { const retptr = wasm6.__wbindgen_add_to_stack_pointer(-16); wasm6.digestcontext_digestAndReset(retptr, this.ptr, !isLikeNone1(length), isLikeNone1(length) ? 0 : length); var r0 = getInt32Memory04()[retptr / 4 + 0]; - var r119 = getInt32Memory04()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm04(r0, r119).slice(); - wasm6.__wbindgen_free(r0, r119 * 1); + var r120 = getInt32Memory04()[retptr / 4 + 1]; + var v0 = getArrayU8FromWasm04(r0, r120).slice(); + wasm6.__wbindgen_free(r0, r120 * 1); return v0; } finally{ wasm6.__wbindgen_add_to_stack_pointer(16); @@ -84771,9 +87376,9 @@ class DigestContext1 { const retptr = wasm6.__wbindgen_add_to_stack_pointer(-16); wasm6.digestcontext_digestAndDrop(retptr, ptr, !isLikeNone1(length), isLikeNone1(length) ? 0 : length); var r0 = getInt32Memory04()[retptr / 4 + 0]; - var r120 = getInt32Memory04()[retptr / 4 + 1]; - var v0 = getArrayU8FromWasm04(r0, r120).slice(); - wasm6.__wbindgen_free(r0, r120 * 1); + var r121 = getInt32Memory04()[retptr / 4 + 1]; + var v0 = getArrayU8FromWasm04(r0, r121).slice(); + wasm6.__wbindgen_free(r0, r121 * 1); return v0; } finally{ wasm6.__wbindgen_add_to_stack_pointer(16); @@ -84839,19 +87444,19 @@ const imports4 = { } } }; -const wasmModule4 = new WebAssembly.Module(data1); -const wasmInstance4 = new WebAssembly.Instance(wasmModule4, imports4); -const wasm6 = wasmInstance4.exports; -const _wasm1 = wasm6; -const _wasmModule1 = wasmModule4; -const _wasmInstance1 = wasmInstance4; -const mod34 = { +const wasmModule2 = new WebAssembly.Module(data); +const wasmInstance2 = new WebAssembly.Instance(wasmModule2, imports4); +const wasm6 = wasmInstance2.exports; +const _wasm = wasm6; +const _wasmModule = wasmModule2; +const _wasmInstance = wasmInstance2; +const mod33 = { digest: digest1, DigestContext: DigestContext1, - _wasm: _wasm1, - _wasmModule: _wasmModule1, - _wasmInstance: _wasmInstance1, - _wasmBytes: data1 + _wasm: _wasm, + _wasmModule: _wasmModule, + _wasmInstance: _wasmInstance, + _wasmBytes: data }; const digestAlgorithms1 = [ "BLAKE2B-256", @@ -84895,35 +87500,35 @@ const webCrypto1 = ((crypto)=>({ wrapKey: crypto.subtle?.wrapKey?.bind(crypto.subtle) } }))(globalThis.crypto); -const bufferSourceBytes1 = (data100)=>{ - let bytes56; - if (data100 instanceof Uint8Array) { - bytes56 = data100; - } else if (ArrayBuffer.isView(data100)) { - bytes56 = new Uint8Array(data100.buffer, data100.byteOffset, data100.byteLength); - } else if (data100 instanceof ArrayBuffer) { - bytes56 = new Uint8Array(data100); - } - return bytes56; +const bufferSourceBytes1 = (data103)=>{ + let bytes58; + if (data103 instanceof Uint8Array) { + bytes58 = data103; + } else if (ArrayBuffer.isView(data103)) { + bytes58 = new Uint8Array(data103.buffer, data103.byteOffset, data103.byteLength); + } else if (data103 instanceof ArrayBuffer) { + bytes58 = new Uint8Array(data103); + } + return bytes58; }; const stdCrypto1 = ((x31)=>x31)({ ...webCrypto1, subtle: { ...webCrypto1.subtle, - async digest (algorithm, data101) { + async digest (algorithm, data104) { const { name: name85 , length } = normalizeAlgorithm1(algorithm); - const bytes57 = bufferSourceBytes1(data101); - if (webCrypto1.subtle?.digest && webCryptoDigestAlgorithms1.includes(name85) && bytes57) { - return webCrypto1.subtle.digest(algorithm, bytes57); + const bytes59 = bufferSourceBytes1(data104); + if (webCrypto1.subtle?.digest && webCryptoDigestAlgorithms1.includes(name85) && bytes59) { + return webCrypto1.subtle.digest(algorithm, bytes59); } else if (digestAlgorithms1.includes(name85)) { - if (bytes57) { - return stdCrypto1.subtle.digestSync(algorithm, bytes57); - } else if (data101[Symbol.iterator]) { - return stdCrypto1.subtle.digestSync(algorithm, data101); - } else if (data101[Symbol.asyncIterator]) { - const context11 = new mod34.DigestContext(name85); - for await (const chunk39 of data101){ - const chunkBytes = bufferSourceBytes1(chunk39); + if (bytes59) { + return stdCrypto1.subtle.digestSync(algorithm, bytes59); + } else if (data104[Symbol.iterator]) { + return stdCrypto1.subtle.digestSync(algorithm, data104); + } else if (data104[Symbol.asyncIterator]) { + const context11 = new mod33.DigestContext(name85); + for await (const chunk41 of data104){ + const chunkBytes = bufferSourceBytes1(chunk41); if (!chunkBytes) { throw new TypeError("data contained chunk of the wrong type"); } @@ -84934,20 +87539,20 @@ const stdCrypto1 = ((x31)=>x31)({ throw new TypeError("data must be a BufferSource or [Async]Iterable"); } } else if (webCrypto1.subtle?.digest) { - return webCrypto1.subtle.digest(algorithm, data101); + return webCrypto1.subtle.digest(algorithm, data104); } else { throw new TypeError(`unsupported digest algorithm: ${algorithm}`); } }, - digestSync (algorithm, data102) { + digestSync (algorithm, data105) { algorithm = normalizeAlgorithm1(algorithm); - const bytes58 = bufferSourceBytes1(data102); - if (bytes58) { - return mod34.digest(algorithm.name, bytes58, algorithm.length).buffer; - } else if (data102[Symbol.iterator]) { - const context12 = new mod34.DigestContext(algorithm.name); - for (const chunk40 of data102){ - const chunkBytes = bufferSourceBytes1(chunk40); + const bytes60 = bufferSourceBytes1(data105); + if (bytes60) { + return mod33.digest(algorithm.name, bytes60, algorithm.length).buffer; + } else if (data105[Symbol.iterator]) { + const context12 = new mod33.DigestContext(algorithm.name); + for (const chunk42 of data105){ + const chunkBytes = bufferSourceBytes1(chunk42); if (!chunkBytes) { throw new TypeError("data contained chunk of the wrong type"); } @@ -84978,7 +87583,7 @@ class DenoStdInternalError6 extends Error { this.name = "DenoStdInternalError"; } } -function assert10(expr, msg68 = "") { +function assert11(expr, msg68 = "") { if (!expr) { throw new DenoStdInternalError6(msg68); } @@ -85042,13 +87647,13 @@ class BufReader7 { if (this.#w >= this.#buf.byteLength) { throw Error("bufio: tried to fill full buffer"); } - for(let i293 = 100; i293 > 0; i293--){ + for(let i297 = 100; i297 > 0; i297--){ const rr = await this.#rd.read(this.#buf.subarray(this.#w)); if (rr === null) { this.#eof = true; return; } - assert10(rr >= 0, "negative read"); + assert11(rr >= 0, "negative read"); this.#w += rr; if (rr > 0) { return; @@ -85064,32 +87669,32 @@ class BufReader7 { this.#rd = rd; this.#eof = false; }; - async read(p63) { - let rr = p63.byteLength; - if (p63.byteLength === 0) return rr; + async read(p64) { + let rr = p64.byteLength; + if (p64.byteLength === 0) return rr; if (this.#r === this.#w) { - if (p63.byteLength >= this.#buf.byteLength) { - const rr = await this.#rd.read(p63); + if (p64.byteLength >= this.#buf.byteLength) { + const rr = await this.#rd.read(p64); const nread = rr ?? 0; - assert10(nread >= 0, "negative read"); + assert11(nread >= 0, "negative read"); return rr; } this.#r = 0; this.#w = 0; rr = await this.#rd.read(this.#buf); if (rr === 0 || rr === null) return rr; - assert10(rr >= 0, "negative read"); + assert11(rr >= 0, "negative read"); this.#w += rr; } - const copied = copy6(this.#buf.subarray(this.#r, this.#w), p63, 0); + const copied = copy6(this.#buf.subarray(this.#r, this.#w), p64, 0); this.#r += copied; return copied; } - async readFull(p64) { + async readFull(p65) { let bytesRead = 0; - while(bytesRead < p64.length){ + while(bytesRead < p65.length){ try { - const rr = await this.read(p64.subarray(bytesRead)); + const rr = await this.read(p65.subarray(bytesRead)); if (rr === null) { if (bytesRead === 0) { return null; @@ -85100,19 +87705,19 @@ class BufReader7 { bytesRead += rr; } catch (err) { if (err instanceof PartialReadError6) { - err.partial = p64.subarray(0, bytesRead); + err.partial = p65.subarray(0, bytesRead); } else if (err instanceof Error) { - const e166 = new PartialReadError6(); - e166.partial = p64.subarray(0, bytesRead); - e166.stack = err.stack; - e166.message = err.message; - e166.cause = err.cause; + const e167 = new PartialReadError6(); + e167.partial = p65.subarray(0, bytesRead); + e167.stack = err.stack; + e167.message = err.message; + e167.cause = err.cause; throw err; } throw err; } } - return p64; + return p65; } async readByte() { while(this.#r === this.#w){ @@ -85142,14 +87747,14 @@ class BufReader7 { let partial; if (err instanceof PartialReadError6) { partial = err.partial; - assert10(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); + assert11(partial instanceof Uint8Array, "bufio: caught error from `readSlice()` without `partial` property"); } if (!(err instanceof BufferFullError7)) { throw err; } partial = err.partial; if (!this.#eof && partial && partial.byteLength > 0 && partial[partial.byteLength - 1] === CR8) { - assert10(this.#r > 0, "bufio: tried to rewind past start of buffer"); + assert11(this.#r > 0, "bufio: tried to rewind past start of buffer"); this.#r--; partial = partial.subarray(0, partial.byteLength - 1); } @@ -85185,11 +87790,11 @@ class BufReader7 { let s61 = 0; let slice; while(true){ - let i294 = this.#buf.subarray(this.#r + s61, this.#w).indexOf(delim); - if (i294 >= 0) { - i294 += s61; - slice = this.#buf.subarray(this.#r, this.#r + i294 + 1); - this.#r += i294 + 1; + let i298 = this.#buf.subarray(this.#r + s61, this.#w).indexOf(delim); + if (i298 >= 0) { + i298 += s61; + slice = this.#buf.subarray(this.#r, this.#r + i298 + 1); + this.#r += i298 + 1; break; } if (this.#eof) { @@ -85214,11 +87819,11 @@ class BufReader7 { if (err instanceof PartialReadError6) { err.partial = slice; } else if (err instanceof Error) { - const e167 = new PartialReadError6(); - e167.partial = slice; - e167.stack = err.stack; - e167.message = err.message; - e167.cause = err.cause; + const e168 = new PartialReadError6(); + e168.partial = slice; + e168.stack = err.stack; + e168.message = err.message; + e168.cause = err.cause; throw err; } throw err; @@ -85238,11 +87843,11 @@ class BufReader7 { if (err instanceof PartialReadError6) { err.partial = this.#buf.subarray(this.#r, this.#w); } else if (err instanceof Error) { - const e168 = new PartialReadError6(); - e168.partial = this.#buf.subarray(this.#r, this.#w); - e168.stack = err.stack; - e168.message = err.message; - e168.cause = err.cause; + const e169 = new PartialReadError6(); + e169.partial = this.#buf.subarray(this.#r, this.#w); + e169.stack = err.stack; + e169.message = err.message; + e169.cause = err.cause; throw err; } throw err; @@ -85298,44 +87903,44 @@ class BufWriter6 extends AbstractBufBase6 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p65 = this.buf.subarray(0, this.usedBufferBytes); + const p66 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p65.length){ - nwritten += await this.#writer.write(p65.subarray(nwritten)); + while(nwritten < p66.length){ + nwritten += await this.#writer.write(p66.subarray(nwritten)); } - } catch (e169) { - if (e169 instanceof Error) { - this.err = e169; + } catch (e170) { + if (e170 instanceof Error) { + this.err = e170; } - throw e169; + throw e170; } this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - async write(data103) { + async write(data106) { if (this.err !== null) throw this.err; - if (data103.length === 0) return 0; + if (data106.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data103.byteLength > this.available()){ + while(data106.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = await this.#writer.write(data103); - } catch (e170) { - if (e170 instanceof Error) { - this.err = e170; + numBytesWritten = await this.#writer.write(data106); + } catch (e171) { + if (e171 instanceof Error) { + this.err = e171; } - throw e170; + throw e171; } } else { - numBytesWritten = copy6(data103, this.buf, this.usedBufferBytes); + numBytesWritten = copy6(data106, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; await this.flush(); } totalBytesWritten += numBytesWritten; - data103 = data103.subarray(numBytesWritten); + data106 = data106.subarray(numBytesWritten); } - numBytesWritten = copy6(data103, this.buf, this.usedBufferBytes); + numBytesWritten = copy6(data106, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -85363,44 +87968,44 @@ class BufWriterSync6 extends AbstractBufBase6 { if (this.err !== null) throw this.err; if (this.usedBufferBytes === 0) return; try { - const p66 = this.buf.subarray(0, this.usedBufferBytes); + const p67 = this.buf.subarray(0, this.usedBufferBytes); let nwritten = 0; - while(nwritten < p66.length){ - nwritten += this.#writer.writeSync(p66.subarray(nwritten)); + while(nwritten < p67.length){ + nwritten += this.#writer.writeSync(p67.subarray(nwritten)); } - } catch (e171) { - if (e171 instanceof Error) { - this.err = e171; + } catch (e172) { + if (e172 instanceof Error) { + this.err = e172; } - throw e171; + throw e172; } this.buf = new Uint8Array(this.buf.length); this.usedBufferBytes = 0; } - writeSync(data104) { + writeSync(data107) { if (this.err !== null) throw this.err; - if (data104.length === 0) return 0; + if (data107.length === 0) return 0; let totalBytesWritten = 0; let numBytesWritten = 0; - while(data104.byteLength > this.available()){ + while(data107.byteLength > this.available()){ if (this.buffered() === 0) { try { - numBytesWritten = this.#writer.writeSync(data104); - } catch (e172) { - if (e172 instanceof Error) { - this.err = e172; + numBytesWritten = this.#writer.writeSync(data107); + } catch (e173) { + if (e173 instanceof Error) { + this.err = e173; } - throw e172; + throw e173; } } else { - numBytesWritten = copy6(data104, this.buf, this.usedBufferBytes); + numBytesWritten = copy6(data107, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; this.flush(); } totalBytesWritten += numBytesWritten; - data104 = data104.subarray(numBytesWritten); + data107 = data107.subarray(numBytesWritten); } - numBytesWritten = copy6(data104, this.buf, this.usedBufferBytes); + numBytesWritten = copy6(data107, this.buf, this.usedBufferBytes); this.usedBufferBytes += numBytesWritten; totalBytesWritten += numBytesWritten; return totalBytesWritten; @@ -85412,49 +88017,49 @@ async function writeAll2(w41, arr) { nwritten += await w41.write(arr.subarray(nwritten)); } } -const { Deno: Deno3 } = globalThis; -typeof Deno3?.noColor === "boolean" ? Deno3.noColor : true; +const { Deno: Deno4 } = globalThis; +typeof Deno4?.noColor === "boolean" ? Deno4.noColor : true; new RegExp([ "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))", ].join("|"), "g"); -var DiffType2; -(function(DiffType5) { - DiffType5["removed"] = "removed"; - DiffType5["common"] = "common"; - DiffType5["added"] = "added"; -})(DiffType2 || (DiffType2 = {})); -class AssertionError2 extends Error { +var DiffType3; +(function(DiffType7) { + DiffType7["removed"] = "removed"; + DiffType7["common"] = "common"; + DiffType7["added"] = "added"; +})(DiffType3 || (DiffType3 = {})); +class AssertionError3 extends Error { name = "AssertionError"; constructor(message){ super(message); } } -function assert11(expr, msg69 = "") { +function assert12(expr, msg69 = "") { if (!expr) { - throw new AssertionError2(msg69); + throw new AssertionError3(msg69); } } BigInt(Number.MAX_SAFE_INTEGER); new TextDecoder(); -function deferred2() { +function deferred3() { let methods6; - let state62 = "pending"; - const promise = new Promise((resolve36, reject24)=>{ + let state63 = "pending"; + const promise = new Promise((resolve38, reject25)=>{ methods6 = { - async resolve (value635) { - await value635; - state62 = "fulfilled"; - resolve36(value635); + async resolve (value639) { + await value639; + state63 = "fulfilled"; + resolve38(value639); }, reject (reason) { - state62 = "rejected"; - reject24(reason); + state63 = "rejected"; + reject25(reason); } }; }); Object.defineProperty(promise, "state", { - get: ()=>state62 + get: ()=>state63 }); return Object.assign(promise, methods6); } @@ -85471,21 +88076,21 @@ function fromHexChar(__byte) { if (65 <= __byte && __byte <= 70) return __byte - 65 + 10; throw errInvalidByte(__byte); } -function encode14(src) { +function encode16(src) { const dst = new Uint8Array(src.length * 2); - for(let i295 = 0; i295 < dst.length; i295++){ - const v39 = src[i295]; - dst[i295 * 2] = hexTable4[v39 >> 4]; - dst[i295 * 2 + 1] = hexTable4[v39 & 0x0f]; + for(let i299 = 0; i299 < dst.length; i299++){ + const v46 = src[i299]; + dst[i299 * 2] = hexTable4[v46 >> 4]; + dst[i299 * 2 + 1] = hexTable4[v46 & 0x0f]; } return dst; } function decode13(src) { const dst = new Uint8Array(src.length / 2); - for(let i296 = 0; i296 < dst.length; i296++){ - const a46 = fromHexChar(src[i296 * 2]); - const b53 = fromHexChar(src[i296 * 2 + 1]); - dst[i296] = a46 << 4 | b53; + for(let i300 = 0; i300 < dst.length; i300++){ + const a46 = fromHexChar(src[i300 * 2]); + const b56 = fromHexChar(src[i300 * 2 + 1]); + dst[i300] = a46 << 4 | b56; } if (src.length % 2 == 1) { fromHexChar(src[dst.length * 2]); @@ -85493,8 +88098,8 @@ function decode13(src) { } return dst; } -const mod35 = { - encode: encode14, +const mod34 = { + encode: encode16, decode: decode13 }; class MongoError extends Error { @@ -85546,10 +88151,10 @@ class CommandCursor { } async execute() { this.#executed = true; - const options141 = await this.#executor(); - this.#batches = options141.firstBatch; - this.#id = BigInt(options141.id); - const { db , collection } = parseNamespace(options141.ns); + const options143 = await this.#executor(); + this.#batches = options143.firstBatch; + this.#id = BigInt(options143.id); + const { db , collection } = parseNamespace(options143.ns); this.#db = db; this.#collection = collection; } @@ -85565,7 +88170,7 @@ class CommandCursor { return undefined; } const { cursor } = await this.#protocol.commandSingle(this.#db, { - getMore: mod32.Long.fromBigInt(this.#id), + getMore: mod31.Long.fromBigInt(this.#id), collection: this.#collection }); this.#batches = cursor.nextBatch || []; @@ -85574,9 +88179,9 @@ class CommandCursor { } async *[Symbol.asyncIterator]() { while(this.#batches.length > 0 || this.#id !== 0n){ - const value636 = await this.next(); - if (value636 !== undefined) { - yield value636; + const value640 = await this.next(); + if (value640 !== undefined) { + yield value640; } } } @@ -85606,14 +88211,14 @@ class CommandCursor { class AggregateCursor extends CommandCursor { #context; async executor() { - const { dbName , pipeline: pipeline2 , collectionName , protocol , options: options142 } = this.#context; + const { dbName , pipeline: pipeline2 , collectionName , protocol , options: options144 } = this.#context; const { cursor } = await protocol.commandSingle(dbName, { aggregate: collectionName, pipeline: pipeline2, cursor: { - batchSize: options142?.batchSize || 1000 + batchSize: options144?.batchSize || 1000 }, - ...options142 + ...options144 }); return { ...cursor, @@ -85671,10 +88276,10 @@ function parseHeader(buffer50) { }; } function serializeBson(target) { - return mod32.serialize(target); + return mod31.serialize(target); } function deserializeBson(buffer51) { - return mod32.deserialize(buffer51); + return mod31.deserialize(buffer51); } const encoder11 = new TextEncoder(); const decoder8 = new TextDecoder(); @@ -85814,7 +88419,7 @@ class WireProtocol { }; this.#commandQueue.push(commandTask); this.send(); - const pendingMessage = deferred2(); + const pendingMessage = deferred3(); this.#pendingResponses.set(requestId, pendingMessage); this.receive(); const message = await pendingMessage; @@ -85854,10 +88459,10 @@ class WireProtocol { this.#isPendingResponse = true; while(this.#pendingResponses.size > 0){ const headerBuffer = await this.#reader.readFull(new Uint8Array(16)); - assert11(headerBuffer); + assert12(headerBuffer); const header = parseHeader(headerBuffer); const bodyBuffer = await this.#reader.readFull(new Uint8Array(header.messageLength - 16)); - assert11(bodyBuffer); + assert12(bodyBuffer); const reply = deserializeMessage(header, bodyBuffer); const pendingMessage = this.#pendingResponses.get(header.responseTo); this.#pendingResponses.delete(header.responseTo); @@ -85869,13 +88474,13 @@ class WireProtocol { class FindCursor extends CommandCursor { #context; async executor() { - const { protocol , filter: filter6 , dbName , collectionName , options: options143 } = this.#context; + const { protocol , filter: filter6 , dbName , collectionName , options: options145 } = this.#context; const { cursor } = await protocol.commandSingle(dbName, { find: collectionName, filter: filter6, batchSize: 1, noCursorTimeout: true, - ...options143 + ...options145 }); return { ...cursor, @@ -85916,30 +88521,30 @@ class ListIndexesCursor extends CommandCursor { this.#context = context15; } } -async function update(protocol, dbName, collectionName, query10, doc, options144) { - const { n: n165 , nModified , upserted } = await protocol.commandSingle(dbName, { +async function update(protocol, dbName, collectionName, query10, doc, options146) { + const { n: n166 , nModified , upserted } = await protocol.commandSingle(dbName, { update: collectionName, updates: [ { q: query10, u: doc, - upsert: options144?.upsert ?? false, - multi: options144?.multi ?? true, - collation: options144?.collation, - arrayFilters: options144?.arrayFilters, - hint: options144?.hint + upsert: options146?.upsert ?? false, + multi: options146?.multi ?? true, + collation: options146?.collation, + arrayFilters: options146?.arrayFilters, + hint: options146?.hint }, ], - writeConcern: options144?.writeConcern, - ordered: options144?.ordered ?? true, - bypassDocumentValidation: options144?.bypassDocumentValidation, - comment: options144?.comment + writeConcern: options146?.writeConcern, + ordered: options146?.ordered ?? true, + bypassDocumentValidation: options146?.bypassDocumentValidation, + comment: options146?.comment }); return { upsertedIds: upserted?.map((id)=>id._id), upsertedCount: upserted?.length ?? 0, modifiedCount: nModified, - matchedCount: n165 + matchedCount: n166 }; } class Collection { @@ -85951,61 +88556,61 @@ class Collection { this.#protocol = protocol; this.#dbName = dbName; } - find(filter7, options145) { + find(filter7, options147) { return new FindCursor({ filter: filter7, protocol: this.#protocol, collectionName: this.name, dbName: this.#dbName, - options: options145 ?? {} + options: options147 ?? {} }); } - findOne(filter8, options146) { - const cursor = this.find(filter8, options146); + findOne(filter8, options148) { + const cursor = this.find(filter8, options148); return cursor.next(); } - async findAndModify(filter9, options147) { + async findAndModify(filter9, options149) { const result = await this.#protocol.commandSingle(this.#dbName, { findAndModify: this.name, query: filter9, - ...options147 + ...options149 }); if (result.ok === 0) { throw new MongoDriverError("Could not execute findAndModify operation"); } return result.value; } - async count(filter10, options148) { + async count(filter10, options150) { const res = await this.#protocol.commandSingle(this.#dbName, { count: this.name, query: filter10, - ...options148 + ...options150 }); - const { n: n166 , ok: ok2 } = res; + const { n: n167 , ok: ok2 } = res; if (ok2 === 1) { - return n166; + return n167; } else { return 0; } } - async countDocuments(filter11, options149) { + async countDocuments(filter11, options151) { const pipeline3 = []; if (filter11) { pipeline3.push({ $match: filter11 }); } - if (typeof options149?.skip === "number") { + if (typeof options151?.skip === "number") { pipeline3.push({ - $skip: options149.limit + $skip: options151.limit }); - delete options149.skip; + delete options151.skip; } - if (typeof options149?.limit === "number") { + if (typeof options151?.limit === "number") { pipeline3.push({ - $limit: options149.limit + $limit: options151.limit }); - delete options149.limit; + delete options151.limit; } pipeline3.push({ $group: { @@ -86015,7 +88620,7 @@ class Collection { } } }); - const result = await this.aggregate(pipeline3, options149).next(); + const result = await this.aggregate(pipeline3, options151).next(); if (result) return result.n; return 0; } @@ -86039,32 +88644,32 @@ class Collection { if (result) return result.n; return 0; } - async insertOne(doc, options150) { + async insertOne(doc, options152) { const { insertedIds } = await this.insertMany([ doc - ], options150); + ], options152); return insertedIds[0]; } - insert(docs, options151) { + insert(docs, options153) { docs = Array.isArray(docs) ? docs : [ docs ]; - return this.insertMany(docs, options151); + return this.insertMany(docs, options153); } - async insertMany(docs, options152) { + async insertMany(docs, options154) { const insertedIds = docs.map((doc)=>{ if (!doc._id) { - doc._id = new mod32.ObjectId(); + doc._id = new mod31.ObjectId(); } return doc._id; }); const res = await this.#protocol.commandSingle(this.#dbName, { insert: this.name, documents: docs, - ordered: options152?.ordered ?? true, - writeConcern: options152?.writeConcern, - bypassDocumentValidation: options152?.bypassDocumentValidation, - comment: options152?.comment + ordered: options154?.ordered ?? true, + writeConcern: options154?.writeConcern, + bypassDocumentValidation: options154?.bypassDocumentValidation, + comment: options154?.comment }); const { writeErrors } = res; if (writeErrors) { @@ -86076,9 +88681,9 @@ class Collection { insertedCount: res.n }; } - async updateOne(filter12, update1, options153) { + async updateOne(filter12, update1, options155) { const { upsertedIds =[] , upsertedCount , matchedCount , modifiedCount , } = await this.updateMany(filter12, update1, { - ...options153, + ...options155, multi: false }); return { @@ -86088,21 +88693,21 @@ class Collection { modifiedCount }; } - updateMany(filter13, doc, options154) { + updateMany(filter13, doc, options156) { if (!hasAtomicOperators(doc)) { throw new MongoInvalidArgumentError("Update document requires atomic operators"); } return update(this.#protocol, this.#dbName, this.name, filter13, doc, { - ...options154, - multi: options154?.multi ?? true + ...options156, + multi: options156?.multi ?? true }); } - async replaceOne(filter14, replacement, options155) { + async replaceOne(filter14, replacement, options157) { if (hasAtomicOperators(replacement)) { throw new MongoInvalidArgumentError("Replacement document must not contain atomic operators"); } const { upsertedIds =[] , upsertedCount , matchedCount , modifiedCount } = await update(this.#protocol, this.#dbName, this.name, filter14, replacement, { - ...options155, + ...options157, multi: false }); return { @@ -86112,65 +88717,65 @@ class Collection { modifiedCount }; } - async deleteMany(filter15, options156) { + async deleteMany(filter15, options158) { const res = await this.#protocol.commandSingle(this.#dbName, { delete: this.name, deletes: [ { q: filter15, - limit: options156?.limit ?? 0, - collation: options156?.collation, - hint: options156?.hint, - comment: options156?.comment + limit: options158?.limit ?? 0, + collation: options158?.collation, + hint: options158?.hint, + comment: options158?.comment }, ], - ordered: options156?.ordered ?? true, - writeConcern: options156?.writeConcern + ordered: options158?.ordered ?? true, + writeConcern: options158?.writeConcern }); return res.n; } delete; - deleteOne(filter16, options157) { + deleteOne(filter16, options159) { return this.delete(filter16, { - ...options157, + ...options159, limit: 1 }); } - async drop(options158) { + async drop(options160) { await this.#protocol.commandSingle(this.#dbName, { drop: this.name, - ...options158 + ...options160 }); } - async distinct(key197, query12, options159) { + async distinct(key199, query12, options161) { const { values: values55 } = await this.#protocol.commandSingle(this.#dbName, { distinct: this.name, - key: key197, + key: key199, query: query12, - ...options159 + ...options161 }); return values55; } - aggregate(pipeline5, options160) { + aggregate(pipeline5, options162) { return new AggregateCursor({ pipeline: pipeline5, protocol: this.#protocol, dbName: this.#dbName, collectionName: this.name, - options: options160 + options: options162 }); } - async createIndexes(options161) { + async createIndexes(options163) { const res = await this.#protocol.commandSingle(this.#dbName, { createIndexes: this.name, - ...options161 + ...options163 }); return res; } - async dropIndexes(options162) { + async dropIndexes(options164) { const res = await this.#protocol.commandSingle(this.#dbName, { dropIndexes: this.name, - ...options162 + ...options164 }); return res; } @@ -86204,11 +88809,11 @@ class Database { collection(name88) { return new Collection(this.#cluster.protocol, this.name, name88); } - listCollections(options163 = {}) { + listCollections(options165 = {}) { return new CommandCursor(this.#cluster.protocol, async ()=>{ const { cursor } = await this.#cluster.protocol.commandSingle(this.name, { listCollections: 1, - ...options163 + ...options165 }); return { id: cursor.id, @@ -86217,9 +88822,9 @@ class Database { }; }); } - async listCollectionNames(options164 = {}) { + async listCollectionNames(options166 = {}) { const cursor = this.listCollections({ - ...options164, + ...options166, nameOnly: true, authorizedCollections: true }); @@ -86229,24 +88834,24 @@ class Database { } return names; } - createUser(username, password9, options165) { + createUser(username, password9, options167) { return this.#cluster.protocol.commandSingle(this.name, { - createUser: options165?.username ?? username, - pwd: options165?.password ?? password9, - customData: options165?.customData, - roles: options165?.roles ?? [], - writeConcern: options165?.writeConcern, - authenticationRestrictions: options165?.authenticationRestrictions, - mechanisms: options165?.mechanisms, - digestPassword: options165?.digestPassword, - comment: options165?.comment + createUser: options167?.username ?? username, + pwd: options167?.password ?? password9, + customData: options167?.customData, + roles: options167?.roles ?? [], + writeConcern: options167?.writeConcern, + authenticationRestrictions: options167?.authenticationRestrictions, + mechanisms: options167?.mechanisms, + digestPassword: options167?.digestPassword, + comment: options167?.comment }); } - dropUser(username, options166 = {}) { + dropUser(username, options168 = {}) { return this.#cluster.protocol.commandSingle(this.name, { dropUser: username, - writeConcern: options166?.writeConcern, - comment: options166?.comment + writeConcern: options168?.writeConcern, + comment: options168?.comment }); } name; @@ -86315,15 +88920,15 @@ function parse_url(url1) { if (params) { let index = param.indexOf("="); if (index === -1) index = param.length; - const key198 = param.substring(0, index); + const key200 = param.substring(0, index); const val = param.substring(index + 1); - if (Object.prototype.hasOwnProperty.call(obj, key198)) { - if (!Array.isArray(obj[key198])) obj[key198] = [ - obj[key198] + if (Object.prototype.hasOwnProperty.call(obj, key200)) { + if (!Array.isArray(obj[key200])) obj[key200] = [ + obj[key200] ]; - obj[key198].push(val); + obj[key200].push(val); } else { - obj[key198] = val || true; + obj[key200] = val || true; } } } @@ -86336,44 +88941,44 @@ function isSrvUrl(url) { return /^mongodb\+srv/.test(url); } function parseSrvUrl(url) { - const data105 = parse_url(url); - const defaultAuthDb = data105.pathname && data105.pathname.length > 1 ? data105.pathname.substring(1) : null; - const authSource = new URLSearchParams(data105.search).get("authSource"); + const data108 = parse_url(url); + const defaultAuthDb = data108.pathname && data108.pathname.length > 1 ? data108.pathname.substring(1) : null; + const authSource = new URLSearchParams(data108.search).get("authSource"); const connectOptions = { db: defaultAuthDb ?? "test" }; - if (data105.auth) { + if (data108.auth) { connectOptions.credential = { - username: data105.auth.user, - password: data105.auth.password, + username: data108.auth.user, + password: data108.auth.password, db: (authSource ?? defaultAuthDb) ?? "admin", - mechanism: data105.search.authMechanism || "SCRAM-SHA-256" + mechanism: data108.search.authMechanism || "SCRAM-SHA-256" }; } - connectOptions.compression = data105.search.compressors ? data105.search.compressors.split(",") : []; - connectOptions.srvServer = data105.servers?.[0].host; - if (data105.search.appname) { - connectOptions.appname = data105.search.appname; + connectOptions.compression = data108.search.compressors ? data108.search.compressors.split(",") : []; + connectOptions.srvServer = data108.servers?.[0].host; + if (data108.search.appname) { + connectOptions.appname = data108.search.appname; } - if (data105.search.tls) { - connectOptions.tls = data105.search.tls === "true"; + if (data108.search.tls) { + connectOptions.tls = data108.search.tls === "true"; } else { connectOptions.tls = true; } - if (data105.search.tlsCAFile) { - connectOptions.certFile = data105.search.tlsCAFile; + if (data108.search.tlsCAFile) { + connectOptions.certFile = data108.search.tlsCAFile; } - if (data105.search.tlsCertificateKeyFile) { - connectOptions.keyFile = data105.search.tlsCertificateKeyFile; + if (data108.search.tlsCertificateKeyFile) { + connectOptions.keyFile = data108.search.tlsCertificateKeyFile; } - if (data105.search.tlsCertificateKeyFilePassword) { - connectOptions.keyFilePassword = data105.search.tlsCertificateKeyFilePassword; + if (data108.search.tlsCertificateKeyFilePassword) { + connectOptions.keyFilePassword = data108.search.tlsCertificateKeyFilePassword; } - if (data105.search.safe) { - connectOptions.safe = data105.search.safe === "true"; + if (data108.search.safe) { + connectOptions.safe = data108.search.safe === "true"; } - if (data105.search.retryWrites) { - connectOptions.retryWrites = data105.search.retryWrites === "true"; + if (data108.search.retryWrites) { + connectOptions.retryWrites = data108.search.retryWrites === "true"; } return connectOptions; } @@ -86382,8 +88987,8 @@ function parseSrvUrl(url) { AllowedOption1["replicaSet"] = "replicaSet"; AllowedOption1["loadBalanced"] = "loadBalanced"; })(AllowedOption || (AllowedOption = {})); -function isAllowedOption(key199) { - return Object.values(AllowedOption).includes(key199); +function isAllowedOption(key201) { + return Object.values(AllowedOption).includes(key201); } class SRVError extends Error { constructor(message){ @@ -86399,8 +89004,8 @@ class Srv { this.resolver = resolver; } async resolveSrvUrl(urlString) { - const options167 = parseSrvUrl(urlString); - const { srvServer , ...connectOptions } = options167; + const options169 = parseSrvUrl(urlString); + const { srvServer , ...connectOptions } = options169; if (!srvServer) { throw new SRVError(`Could not parse srv server address from ${urlString}`); } @@ -86431,21 +89036,21 @@ class Srv { }; }); const optionsUri = txtRecords[0].join(""); - const options168 = { + const options170 = { valid: {}, illegal: [] }; for (const option of optionsUri.split("&")){ - const [key200, value637] = option.split("="); - if (isAllowedOption(key200) && !!value637) options168.valid[key200] = value637; - else options168.illegal.push(option); + const [key202, value641] = option.split("="); + if (isAllowedOption(key202) && !!value641) options170.valid[key202] = value641; + else options170.illegal.push(option); } - if (options168.illegal.length !== 0) { - throw new SRVError(`Illegal uri options: ${options168.illegal}. Allowed options: ${Object.values(AllowedOption)}`); + if (options170.illegal.length !== 0) { + throw new SRVError(`Illegal uri options: ${options170.illegal}. Allowed options: ${Object.values(AllowedOption)}`); } return { servers, - options: options168.valid + options: options170.valid }; } } @@ -86453,11 +89058,11 @@ function parse15(url) { return isSrvUrl(url) ? new Srv().resolveSrvUrl(url) : Promise.resolve(parseNormalUrl(url)); } function parseNormalUrl(url) { - const data106 = parse_url(url); - const defaultAuthDb = data106.pathname && data106.pathname.length > 1 ? data106.pathname.substring(1) : null; - const authSource = new URLSearchParams(data106.search).get("authSource"); + const data109 = parse_url(url); + const defaultAuthDb = data109.pathname && data109.pathname.length > 1 ? data109.pathname.substring(1) : null; + const authSource = new URLSearchParams(data109.search).get("authSource"); const connectOptions = { - servers: data106.servers, + servers: data109.servers, db: defaultAuthDb ?? "test" }; for (const server of connectOptions.servers){ @@ -86466,32 +89071,32 @@ function parseNormalUrl(url) { } server.port = server.port || 27017; } - if (data106.auth) { + if (data109.auth) { connectOptions.credential = { - username: data106.auth.user, - password: data106.auth.password, + username: data109.auth.user, + password: data109.auth.password, db: (authSource ?? defaultAuthDb) ?? "admin", - mechanism: data106.search.authMechanism || "SCRAM-SHA-256" + mechanism: data109.search.authMechanism || "SCRAM-SHA-256" }; } - connectOptions.compression = data106.search.compressors ? data106.search.compressors.split(",") : []; - if (data106.search.appname) { - connectOptions.appname = data106.search.appname; + connectOptions.compression = data109.search.compressors ? data109.search.compressors.split(",") : []; + if (data109.search.appname) { + connectOptions.appname = data109.search.appname; } - if (data106.search.tls) { - connectOptions.tls = data106.search.tls === "true"; + if (data109.search.tls) { + connectOptions.tls = data109.search.tls === "true"; } - if (data106.search.tlsCAFile) { - connectOptions.certFile = data106.search.tlsCAFile; + if (data109.search.tlsCAFile) { + connectOptions.certFile = data109.search.tlsCAFile; } - if (data106.search.tlsCertificateKeyFile) { - connectOptions.keyFile = data106.search.tlsCertificateKeyFile; + if (data109.search.tlsCertificateKeyFile) { + connectOptions.keyFile = data109.search.tlsCertificateKeyFile; } - if (data106.search.tlsCertificateKeyFilePassword) { - connectOptions.keyFilePassword = data106.search.tlsCertificateKeyFilePassword; + if (data109.search.tlsCertificateKeyFilePassword) { + connectOptions.keyFilePassword = data109.search.tlsCertificateKeyFilePassword; } - if (data106.search.safe) { - connectOptions.safe = data106.search.safe === "true"; + if (data109.search.safe) { + connectOptions.safe = data109.search.safe === "true"; } return connectOptions; } @@ -86503,10 +89108,10 @@ class AuthContext { options; response; nonce; - constructor(protocol, credentials, options169){ + constructor(protocol, credentials, options171){ this.protocol = protocol; this.credentials = credentials; - this.options = options169; + this.options = options171; this.nonce = globalThis.crypto.getRandomValues(new Uint8Array(24)); } } @@ -86534,22 +89139,22 @@ function concat4(bufs) { const total = bufs.reduce((acc, cur)=>acc + cur.byteLength, 0); const buf = new Uint8Array(total); let offset191 = 0; - for (const b54 of bufs){ - buf.set(b54, offset191); - offset191 += b54.byteLength; + for (const b57 of bufs){ + buf.set(b57, offset191); + offset191 += b57.byteLength; } return buf; } -function equal2(a47, b55) { - if (a47.length !== b55.length) { +function equal2(a47, b58) { + if (a47.length !== b58.length) { return false; } - return a47.every((x32, i297)=>x32 === b55[i297]); + return a47.every((x32, i301)=>x32 === b58[i301]); } -function factor(n167, out) { - n167 = (n167 - (out[0] = n167 & 32767)) / 32768; - n167 = (n167 - (out[1] = n167 & 32767)) / 32768; - out[3] = (n167 - (out[2] = n167 & 32767)) / 32768 & 32767; +function factor(n168, out) { + n168 = (n168 - (out[0] = n168 & 32767)) / 32768; + n168 = (n168 - (out[1] = n168 & 32767)) / 32768; + out[3] = (n168 - (out[2] = n168 & 32767)) / 32768 & 32767; } function copy7(buf) { const cpy = new Uint8Array(buf.length); @@ -86561,8 +89166,8 @@ class Page { buffer; updated; deduplicate; - constructor(i298, buf){ - this.offset = i298 * buf.length; + constructor(i302, buf){ + this.offset = i302 * buf.length; this.buffer = buf; this.updated = false; this.deduplicate = 0; @@ -86607,14 +89212,14 @@ class Pager { page.updated = false; return page; } - get(i299, noAllocate) { - const arr = this._array(i299, !!noAllocate); + get(i303, noAllocate) { + const arr = this._array(i303, !!noAllocate); const first41 = this.path[0]; let page = arr && arr[first41]; if (!page && !noAllocate) { - page = arr[first41] = new Page(i299, new Uint8Array(this.pageSize)); - if (i299 >= this.length) { - this.length = i299 + 1; + page = arr[first41] = new Page(i303, new Uint8Array(this.pageSize)); + if (i303 >= this.length) { + this.length = i303 + 1; } } if (page && page.buffer === this.deduplicate && this.deduplicate && !noAllocate) { @@ -86623,11 +89228,11 @@ class Pager { } return page; } - set(i300, buf) { - const arr = this._array(i300, false); + set(i304, buf) { + const arr = this._array(i304, false); const first42 = this.path[0]; - if (i300 >= this.length) { - this.length = i300 + 1; + if (i304 >= this.length) { + this.length = i304 + 1; } if (!buf || this.zeros && equal2(buf, this.zeros)) { arr[first42] = undefined; @@ -86637,11 +89242,11 @@ class Pager { buf = this.deduplicate; } const page = arr[first42]; - const b56 = truncate(buf, this.pageSize); + const b59 = truncate(buf, this.pageSize); if (page) { - page.buffer = b56; + page.buffer = b59; } else { - arr[first42] = new Page(i300, b56); + arr[first42] = new Page(i304, b59); } } toBuffer() { @@ -86650,29 +89255,29 @@ class Pager { let ptr = 0; while(ptr < list.length){ const arr = this._array(ptr, true); - for(let i301 = 0; i301 < 32768 && ptr < list.length; i301++){ - list[ptr++] = arr && arr[i301] ? arr[i301].buffer : empty; + for(let i305 = 0; i305 < 32768 && ptr < list.length; i305++){ + list[ptr++] = arr && arr[i305] ? arr[i305].buffer : empty; } } return concat4(list); } - _array(i302, noAllocate) { - if (i302 >= this.maxPages) { + _array(i306, noAllocate) { + if (i306 >= this.maxPages) { if (noAllocate) { return []; } - grow(this, i302); + grow(this, i306); } - factor(i302, this.path); + factor(i306, this.path); let arr = this.pages; for(let j36 = this.level; j36 > 0; j36--){ - const p67 = this.path[j36]; - let next = arr[p67]; + const p68 = this.path[j36]; + let next = arr[p68]; if (!next) { if (noAllocate) { return []; } - next = arr[p67] = new Array(32768); + next = arr[p68] = new Array(32768); } arr = next; } @@ -86707,29 +89312,29 @@ class Bitfield { this._trackUpdates = !!opts.trackUpdates; this._pageMask = this.pageSize - 1; if (opts.buffer) { - for(let i303 = 0; i303 < opts.buffer.length; i303 += this.pageSize){ - this.pages.set(i303 / this.pageSize, opts.buffer.slice(i303, i303 + this.pageSize)); + for(let i307 = 0; i307 < opts.buffer.length; i307 += this.pageSize){ + this.pages.set(i307 / this.pageSize, opts.buffer.slice(i307, i307 + this.pageSize)); } this.byteLength = opts.buffer.length; this.length = 8 * this.byteLength; } } - getByte(i304) { - const o48 = i304 & this._pageMask; - const j37 = (i304 - o48) / this.pageSize; + getByte(i308) { + const o47 = i308 & this._pageMask; + const j37 = (i308 - o47) / this.pageSize; const page = this.pages.get(j37, true); - return page ? page.buffer[o48 + this.pageOffset] : 0; + return page ? page.buffer[o47 + this.pageOffset] : 0; } - setByte(i305, b57) { - const o49 = (i305 & this._pageMask) + this.pageOffset; - const j38 = (i305 - o49) / this.pageSize; + setByte(i309, b60) { + const o48 = (i309 & this._pageMask) + this.pageOffset; + const j38 = (i309 - o48) / this.pageSize; const page = this.pages.get(j38, false); - if (page.buffer[o49] === b57) { + if (page.buffer[o48] === b60) { return false; } - page.buffer[o49] = b57; - if (i305 >= this.byteLength) { - this.byteLength = i305 + 1; + page.buffer[o48] = b60; + if (i309 >= this.byteLength) { + this.byteLength = i309 + 1; this.length = this.byteLength * 8; } if (this._trackUpdates) { @@ -86737,23 +89342,23 @@ class Bitfield { } return true; } - get(i306) { - const o50 = i306 & 7; - const j39 = (i306 - o50) / 8; - return !!(this.getByte(j39) & 128 >> o50); + get(i311) { + const o49 = i311 & 7; + const j39 = (i311 - o49) / 8; + return !!(this.getByte(j39) & 128 >> o49); } - set(i307, v40) { - const o51 = i307 & 7; - const j40 = (i307 - o51) / 8; - const b58 = this.getByte(j40); - return this.setByte(j40, v40 ? b58 | 128 >> o51 : b58 & (255 ^ 128 >> o51)); + set(i312, v47) { + const o50 = i312 & 7; + const j40 = (i312 - o50) / 8; + const b61 = this.getByte(j40); + return this.setByte(j40, v47 ? b61 | 128 >> o50 : b61 & (255 ^ 128 >> o50)); } toBuffer() { const all = new Uint8Array(this.pages.length * this.pageSize); - for(let i308 = 0; i308 < this.pages.length; i308++){ - const next = this.pages.get(i308, true); + for(let i313 = 0; i313 < this.pages.length; i313++){ + const next = this.pages.get(i313, true); if (next) { - all.subarray(i308 * this.pageSize).set(next.buffer.subarray(this.pageOffset, this.pageOffset + this.pageSize)); + all.subarray(i313 * this.pageSize).set(next.buffer.subarray(this.pageOffset, this.pageOffset + this.pageSize)); } } return all; @@ -86762,7 +89367,7 @@ class Bitfield { function readUint32BE(buf, offset1) { return buf[offset1 + 0] << 24 | buf[offset1 + 1] << 16 | buf[offset1 + 2] << 8 | buf[offset1 + 3]; } -const mem = mod33.decode(` +const mem = mod32.decode(` AAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAP////AAAAAAAAAAAAAAADAAAAAAAAAAH//wAAAAAAAAAAAAD//wAA893wFAAAIAAAAAABAAAAAAH/AAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAEAAAAAAz8AAP////+AAAAAAYCAAAAAAJ+AACAAACAH/wAAAB8H///3/+6AAAAfAAAD/wAAAAAAAAAAAAAAAAAAAAAAAwABAAIAAAAHAAAAH////////wAAAAAAAD///////////////////////////////////////////////////////4gAAAAAAAAwAAMHAAAAf/+IBmAAAEBcNAZj/vIMAAAf2B5gAABASTQeY/+F/AAH/4gKIAAAQEgwAiN//3wA//+IBmAAAEBMMA5j/PI8AH//yBxDlOccAjwcQ/7//gAf/4gEQAAAQAg8BEP5/zwA///IBEAAAEAIPARD+f08AP//yARAAABAADwMQ/7/PAD//8gAAcAAACALAd4FAP//x/+AAAAAAAAAHgAAAA//////llvwgIrIACMFAwAz/////wAAAAAAAAAAAIAAAAAfgAAADwCAAAAABAAG////////AAAAACCQHD8AAAA///////////8AAAAAA/8AAAAAAG8AAAAAAAAAAAAAAD4AAAAAAAAAAB8AAAAAAAAAAAAAPwEAAAAAAAAAAUMBQwAAAAABQwAAAAFDAUMBAQAAAQAAAAFDAQAAAAABAAAfgAAAB/////8AAAAAAAAAAAAAB/+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/wAAAAcAAAAAAAAAAAAAf/8ABAf/AAAB/wAAD/8ABE//AAAAAAAAAAAAAAAHAD///wABAD8AAAAAAAAAAAAAAP8AAAAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAA/AAADAwAAAAADAwCqAAAAAwAAAAAAAAQABAAMCAAAxAEAAAAAAAAAAAAAHv4PwDAAAAH//wAAP////wAAAB///wAAAAAAAAAYAA/gAAAAAAAP/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf///////wAAAAAB////AB///wAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyAAAAAAAAAAAAAAAADAD///////////////////4QwAAAAgAAAAAodAYAAAAAAAAcAAACAAf//AAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAACAAAAAAAAAAAAAAD/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///8ADwAAAAAAAAAAgAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAA+AAAAAAHgAAAAAAAAAAAAAABAAAAAAD/////////AAAAAAAHAAAAAA//gAAAAAAOAAAAAAAAAAAADwAAAAAAAQAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAB////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAB////////////////////////8B/+D4AAABBSQAAAAAAAAAAAAAAAAAP////+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAAAAAAAAAAwAAAAAAAAP8AAAAAAAcAAP//D/8AAAGAEAABDwQAAAAAAAAAAAAAAAAAAAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcDAwMcBAf+A////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAAAQ//AAAAH/////////////////////////////8AAAAAAwAAAAAD//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/wAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAEAAAAAAAAAAAE2YQAKEgAAAAAAAAAAhgEBAAAACEFwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAA//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////y/////AAAAAAAAAAAAAAAA/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AAAAABAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIAD/////AAAAAAAAAAAAAAAB/////4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAAD/AAAAAAAB8D8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////P//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKQAP///+D4AAAAABF////g/+AAAAAHf////////////////AQGAAA+//y////4AAAAAAAAAAAAAP/////8AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/7/++tv/////////////////wAAAAB////////////////////////////////////////////////////////////wAAP//////////P////////wAAAAAA//gAAAAAAAAAAAAAAAAAAPv/////////////////////+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIgAAAAAAAAAAAAf///4H///+AAAAAAACAEIP///v////7/////////////////////////////////////////////////v//wAAAA///////////////8/5/AAMAA+AIAAAAAAAAAAAAAAAAAAAAAACAC6///3//////+//////wA/////////////////////+A///////////7//////MD//wAAAAB//////n9//////0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABf////////HgHiA/8//gAA3+Z///7+jw4GYAQ3D/8/gB+Gf//+/tsOAAAB6A/84ABf13///v7fHgFiAAIP/AAA3+Z///7+zxoGYAQ3D/4AAF+O8axjj/cNjuAEAAf/gAHf7v///v/fAeAAAAMP/AAA3+7///7/3wvmwBgLD/wAAN/u///+//8ODuAEAw/8AADf//j///9/0/gHA/wAAOAB///////+wAP4B//AAAAAAaaQPf3U3sAT6AP/MAAAAAP///z////qD/3/////gAAEE8AAAAAAAA/35AAAAAAAA/////99oQID///8AAAAAAAAAAAD//////AD//////5D//////////////8H//////////+D/////////////wP7//////////rz+vP/////+vP////68/rz+/v///v////68/v/////+///gf///+AAAAAD/////////////+AB////////////////////////////////////////////////////////////////////////////////////////////////////////+AH///+D/////////////gAD/+8AA///GAP//wAD/+4AA/////////gP9gA/o/8AAAAAA/8D//////////////wD//////4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/////////////////////////w///////////////A///8/P/////8/P9V/////P////////v6O/jz8P/4O/gAAgAAAAAAAAAAAAAAAEABAAAAAAAAAAAAAAAAAAAAACE/9HwKvd/HB8AAAP/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////gAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAB/wHz4f/////////////4Hf//////////////vB//////4f//////////////+//////8AAAAAAAAA///////4//////AAAAD////x////////gAD/8P///////v///////////////////h////////////////z////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAAAAAAAAAAP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAAAAAAAAAAAAA//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAAAAAAAAAAAAAP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/////////+AAAAAAAAAAAAAAAAAAAAAAAAD+AB8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB////gf///4AP//////////////j8/PzgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////vAA////4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////P/////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////////////////////////////////////8AP/////+P/////////4/4AAYD////8P///////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/////////////7///////////7Jnv/17f//////////ef7+////976P7////////////////////////////////////////////////////////D////////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////w= `.trim()); let offset = 0; @@ -86804,13 +89409,13 @@ function last1(x35) { function toCodePoints(input) { const codepoints = []; const size35 = input.length; - for(let i309 = 0; i309 < size35; i309 += 1){ - const before = input.charCodeAt(i309); - if (before >= 0xd800 && before <= 0xdbff && size35 > i309 + 1) { - const next = input.charCodeAt(i309 + 1); + for(let i314 = 0; i314 < size35; i314 += 1){ + const before = input.charCodeAt(i314); + if (before >= 0xd800 && before <= 0xdbff && size35 > i314 + 1) { + const next = input.charCodeAt(i314 + 1); if (next >= 0xdc00 && next <= 0xdfff) { codepoints.push((before - 0xd800) * 0x400 + next - 0xdc00 + 0x10000); - i309 += 1; + i314 += 1; continue; } } @@ -86864,7 +89469,7 @@ const algoMap = { }; async function pbkdf21(password10, salt1, iterations, length, _algo) { const algo = algoMap[_algo]; - const key201 = await crypto.subtle.importKey("raw", encoder12.encode(password10), { + const key203 = await crypto.subtle.importKey("raw", encoder12.encode(password10), { name: "PBKDF2" }, false, [ "deriveBits" @@ -86876,7 +89481,7 @@ async function pbkdf21(password10, salt1, iterations, length, _algo) { hash: { name: algo } - }, key201, length << 3); + }, key203, length << 3); } const enc = new TextEncoder(); const dec = new TextDecoder(); @@ -86921,7 +89526,7 @@ function clientFirstMessageBare(username, nonce) { ...enc.encode("n="), ...enc.encode(username), ...enc.encode(",r="), - ...enc.encode(mod33.encode(nonce)), + ...enc.encode(mod32.encode(nonce)), ]); } function makeFirstMessage(cryptoMethod, credentials, nonce) { @@ -86930,7 +89535,7 @@ function makeFirstMessage(cryptoMethod, credentials, nonce) { return { saslStart: 1, mechanism, - payload: new mod32.Binary(Uint8Array.from([ + payload: new mod31.Binary(Uint8Array.from([ ...enc.encode("n,,"), ...clientFirstMessageBare(username, nonce) ])), @@ -86985,7 +89590,7 @@ async function continueScramConversation(cryptoMethod, response, authContext) { throw new MongoDriverError(`Server returned an invalid nonce: ${rnonce}`); } const withoutProof = `c=biws,r=${rnonce}`; - const saltedPassword = await HI(processedPassword, mod33.decode(salt2), iterations, cryptoMethod); + const saltedPassword = await HI(processedPassword, mod32.decode(salt2), iterations, cryptoMethod); const clientKey = await HMAC(cryptoMethod, saltedPassword, "Client Key"); const serverKey = await HMAC(cryptoMethod, saltedPassword, "Server Key"); const storedKey = await H1(cryptoMethod, clientKey); @@ -87004,11 +89609,11 @@ async function continueScramConversation(cryptoMethod, response, authContext) { const saslContinueCmd = { saslContinue: 1, conversationId: response.conversationId, - payload: new mod32.Binary(enc.encode(clientFinal)) + payload: new mod31.Binary(enc.encode(clientFinal)) }; const result = await protocol.commandSingle(db, saslContinueCmd); const parsedResponse = parsePayload(fixPayload2(dec.decode(result.payload.buffer))); - if (!compareDigest(mod33.decode(parsedResponse.v), new Uint8Array(serverSignature))) {} + if (!compareDigest(mod32.decode(parsedResponse.v), new Uint8Array(serverSignature))) {} if (result.done) { return result; } @@ -87037,8 +89642,8 @@ function fixPayload2(payload9) { function parsePayload(payload10) { const dict = {}; const parts16 = payload10.split(","); - for(let i311 = 0; i311 < parts16.length; i311++){ - const valueParts = parts16[i311].split("="); + for(let i315 = 0; i315 < parts16.length; i315++){ + const valueParts = parts16[i315].split("="); dict[valueParts[0]] = valueParts[1]; } return dict; @@ -87054,30 +89659,30 @@ async function passwordDigest(username, password12) { throw new MongoDriverError("password cannot be empty"); } const result = await stdCrypto1.subtle.digest("MD5", enc.encode(`${username}:mongo:${password12}`)); - return dec.decode(mod35.encode(new Uint8Array(result))); + return dec.decode(mod34.encode(new Uint8Array(result))); } function xor2(_a1, _b) { const a49 = new Uint8Array(_a1); - const b59 = new Uint8Array(_b); - const length = Math.max(a49.length, b59.length); + const b62 = new Uint8Array(_b); + const length = Math.max(a49.length, b62.length); const res = new Uint8Array(length); - for(let i312 = 0; i312 < length; i312 += 1){ - res[i312] = a49[i312] ^ b59[i312]; + for(let i316 = 0; i316 < length; i316 += 1){ + res[i316] = a49[i316] ^ b62[i316]; } - return mod33.encode(res); + return mod32.encode(res); } function H1(method33, text) { return crypto.subtle.digest(method33 === "sha256" ? "SHA-256" : "SHA-1", text); } async function HMAC(method34, secret7, text) { - const key202 = await crypto.subtle.importKey("raw", secret7, { + const key204 = await crypto.subtle.importKey("raw", secret7, { name: "HMAC", hash: method34 === "sha256" ? "SHA-256" : "SHA-1" }, false, [ "sign", "verify" ]); - const signature = await crypto.subtle.sign("HMAC", key202, enc.encode(text)); + const signature = await crypto.subtle.sign("HMAC", key204, enc.encode(text)); return signature; } let _hiCache = {}; @@ -87090,20 +89695,20 @@ const hiLengthMap = { sha256: 32, sha1: 20 }; -async function HI(data107, salt3, iterations, cryptoMethod) { - const key203 = [ - data107, - mod33.encode(salt3), +async function HI(data110, salt3, iterations, cryptoMethod) { + const key205 = [ + data110, + mod32.encode(salt3), iterations ].join("_"); - if (_hiCache[key203] !== undefined) { - return _hiCache[key203]; + if (_hiCache[key205] !== undefined) { + return _hiCache[key205]; } - const saltedData = await pbkdf21(data107, salt3, iterations, hiLengthMap[cryptoMethod], cryptoMethod); + const saltedData = await pbkdf21(data110, salt3, iterations, hiLengthMap[cryptoMethod], cryptoMethod); if (_hiCacheCount >= 200) { _hiCachePurge(); } - _hiCache[key203] = saltedData; + _hiCache[key205] = saltedData; _hiCacheCount += 1; return saltedData; } @@ -87112,8 +89717,8 @@ function compareDigest(lhs, rhs) { return false; } let result = 0; - for(let i313 = 0; i313 < lhs.length; i313++){ - result |= lhs[i313] ^ rhs[i313]; + for(let i317 = 0; i317 < lhs.length; i317++){ + result |= lhs[i317] ^ rhs[i317]; } return result === 0; } @@ -87152,29 +89757,29 @@ class Cluster { #connections; #protocols; #masterIndex; - constructor(options170){ - this.#options = options170; + constructor(options172){ + this.#options = options172; this.#connections = []; this.#protocols = []; this.#masterIndex = -1; } async connect() { - const options171 = this.#options; - this.#connections = await Promise.all(options171.servers.map((server)=>this.connectToServer(server, options171))); + const options173 = this.#options; + this.#connections = await Promise.all(options173.servers.map((server)=>this.connectToServer(server, options173))); } - connectToServer(server, options172) { + connectToServer(server, options174) { const denoConnectOps = { hostname: server.host, port: server.port }; - if (!options172.tls) return Deno.connect(denoConnectOps); - if (options172.certFile) { + if (!options174.tls) return Deno.connect(denoConnectOps); + if (options174.certFile) { denoConnectOps.caCerts = [ - Deno.readTextFileSync(options172.certFile) + Deno.readTextFileSync(options174.certFile) ]; } - if (options172.keyFile) { - if (options172.keyFilePassword) { + if (options174.keyFile) { + if (options174.keyFilePassword) { throw new MongoDriverError("Tls keyFilePassword not implemented in Deno driver"); } throw new MongoDriverError("Tls keyFile not implemented in Deno driver"); @@ -87182,14 +89787,14 @@ class Cluster { return Deno.connectTls(denoConnectOps); } async authenticate() { - const options173 = this.#options; - this.#protocols = await Promise.all(this.#connections.map((conn)=>this.authenticateToServer(conn, options173))); + const options175 = this.#options; + this.#protocols = await Promise.all(this.#connections.map((conn)=>this.authenticateToServer(conn, options175))); } - async authenticateToServer(conn, options174) { + async authenticateToServer(conn, options176) { const protocol = new WireProtocol(conn); - if (options174.credential) { - const authContext = new AuthContext(protocol, options174.credential, options174); - const mechanism = options174.credential.mechanism; + if (options176.credential) { + const authContext = new AuthContext(protocol, options176.credential, options176); + const mechanism = options176.credential.mechanism; let authPlugin; if (mechanism === "SCRAM-SHA-256") { authPlugin = new ScramAuthPlugin("sha256"); @@ -87226,15 +89831,15 @@ class Cluster { } get protocol() { const protocol = this.getMaster().protocol; - assert11(protocol); + assert12(protocol); return protocol; } close() { for (const conn of this.#connections){ try { conn.close(); - } catch (error62) { - console.error(`Error closing connection: ${error62}`); + } catch (error70) { + console.error(`Error closing connection: ${error70}`); } } } @@ -87246,9 +89851,9 @@ class MongoClient { get buildInfo() { return this.#buildInfo; } - async connect(options175) { + async connect(options177) { try { - const parsedOptions = typeof options175 === "string" ? await parse15(options175) : options175; + const parsedOptions = typeof options177 === "string" ? await parse15(options177) : options177; this.#defaultDbName = parsedOptions.db; const cluster = new Cluster(parsedOptions); await cluster.connect(); @@ -87258,25 +89863,25 @@ class MongoClient { this.#buildInfo = await this.runCommand(this.#defaultDbName, { buildInfo: 1 }); - } catch (e173) { - throw new MongoDriverError(`Connection failed: ${e173.message || e173}`); + } catch (e174) { + throw new MongoDriverError(`Connection failed: ${e174.message || e174}`); } - return this.database(options175.db); + return this.database(options177.db); } - async listDatabases(options176 = {}) { - assert11(this.#cluster); + async listDatabases(options178 = {}) { + assert12(this.#cluster); const { databases } = await this.#cluster.protocol.commandSingle("admin", { listDatabases: 1, - ...options176 + ...options178 }); return databases; } runCommand(db, body) { - assert11(this.#cluster); + assert12(this.#cluster); return this.#cluster.protocol.commandSingle(db, body); } database(name89 = this.#defaultDbName) { - assert11(this.#cluster); + assert12(this.#cluster); return new Database(this.#cluster, name89); } close() { @@ -87308,10 +89913,10 @@ class Model { static _currentQuery; static _options; static _listeners = {}; - static _link(options177) { - this._options = options177; - this._database = options177.database; - this._queryBuilder = options177.queryBuilder; + static _link(options179) { + this._options = options179; + this._database = options179.database; + this._queryBuilder = options179.queryBuilder; this._fieldMatching = this._database._computeModelFieldMatchings(this.name, this.fields, this.timestamps); this._currentQuery = this._queryBuilder.queryForSchema(this); this._primaryKey = this._findPrimaryKey(); @@ -87374,8 +89979,8 @@ class Model { } static _formatField(fieldMatching, field, defaultCase) { if (typeof field !== "string") { - return Object.entries(field).reduce((prev, [fieldName, value638])=>{ - prev[this._formatField(fieldMatching, fieldName)] = value638; + return Object.entries(field).reduce((prev, [fieldName, value642])=>{ + prev[this._formatField(fieldMatching, fieldName)] = value642; return prev; }, {}); } @@ -87535,11 +90140,11 @@ class Model { this._currentQuery.where(this.formatFieldToDatabase(fieldOrFields), whereOperator, whereValue); } } else { - for (const [field, value639] of Object.entries(fieldOrFields)){ - if (value639 === undefined) { + for (const [field, value643] of Object.entries(fieldOrFields)){ + if (value643 === undefined) { continue; } - this._currentQuery.where(this.formatFieldToDatabase(field), "=", value639); + this._currentQuery.where(this.formatFieldToDatabase(field), "=", value643); } } return this; @@ -87578,24 +90183,24 @@ class Model { return this; } static async count(field = "*") { - const value640 = await this._runQuery(this._currentQuery.table(this.table).count(this.formatFieldToDatabase(field)).toDescription()); - return Number(value640[0].count); + const value644 = await this._runQuery(this._currentQuery.table(this.table).count(this.formatFieldToDatabase(field)).toDescription()); + return Number(value644[0].count); } static async min(field) { - const value641 = await this._runQuery(this._currentQuery.table(this.table).min(this.formatFieldToDatabase(field)).toDescription()); - return Number(value641[0].min); + const value645 = await this._runQuery(this._currentQuery.table(this.table).min(this.formatFieldToDatabase(field)).toDescription()); + return Number(value645[0].min); } static async max(field) { - const value642 = await this._runQuery(this._currentQuery.table(this.table).max(this.formatFieldToDatabase(field)).toDescription()); - return Number(value642[0].max); + const value646 = await this._runQuery(this._currentQuery.table(this.table).max(this.formatFieldToDatabase(field)).toDescription()); + return Number(value646[0].max); } static async sum(field) { - const value643 = await this._runQuery(this._currentQuery.table(this.table).sum(this.formatFieldToDatabase(field)).toDescription()); - return Number(value643[0].sum); + const value647 = await this._runQuery(this._currentQuery.table(this.table).sum(this.formatFieldToDatabase(field)).toDescription()); + return Number(value647[0].sum); } static async avg(field) { - const value644 = await this._runQuery(this._currentQuery.table(this.table).avg(this.formatFieldToDatabase(field)).toDescription()); - return Number(value644[0].avg); + const value648 = await this._runQuery(this._currentQuery.table(this.table).avg(this.formatFieldToDatabase(field)).toDescription()); + return Number(value648[0].avg); } static hasMany(model) { const currentWhereValue = this._findCurrentQueryWhereClause(); @@ -87634,8 +90239,8 @@ class Model { return where1.value; } static _findModelForeignKeyField(model, forModel = this) { - const modelFK = Object.entries(model.fields).find(([, type84])=>{ - return typeof type84 === "object" ? type84.relationship?.model === forModel : false; + const modelFK = Object.entries(model.fields).find(([, type77])=>{ + return typeof type77 === "object" ? type77.relationship?.model === forModel : false; }); if (!modelFK) { return ""; @@ -87759,14 +90364,14 @@ class QueryBuilder { this._query.offset = offset194; return this; } - where(field, operator, value645) { + where(field, operator, value649) { if (!this._query.wheres) { this._query.wheres = []; } const whereClause = { field, operator, - value: value645 + value: value649 }; const existingWhereForFieldIndex = this._query.wheres.findIndex((where)=>where.field === field); if (existingWhereForFieldIndex === -1) { @@ -87866,8 +90471,8 @@ class MongoDBConnector { _database; _options; _connected = false; - constructor(options178){ - this._options = options178; + constructor(options180){ + this._options = options180; this._client = new MongoClient(); this._translator = new BasicTranslator(); } @@ -87902,7 +90507,7 @@ class MongoDBConnector { if (queryDescription.wheres) { for (const whereClause of queryDescription.wheres){ if (whereClause.field === "_id") { - whereClause.value = new mod32.ObjectId(whereClause.value); + whereClause.value = new mod31.ObjectId(whereClause.value); } } wheres = queryDescription.wheres.reduce((prev, curr)=>{ @@ -87960,7 +90565,7 @@ class MongoDBConnector { const selectFields = []; if (queryDescription.whereIn) { if (queryDescription.whereIn.field === "_id") { - queryDescription.whereIn.possibleValues = queryDescription.whereIn.possibleValues.map((value646)=>new mod32.ObjectId(value646)); + queryDescription.whereIn.possibleValues = queryDescription.whereIn.possibleValues.map((value650)=>new mod31.ObjectId(value650)); } wheres[queryDescription.whereIn.field] = { $in: queryDescription.whereIn.possibleValues @@ -88100,13 +90705,13 @@ class MongoDBConnector { } results = results.map((result)=>{ const formattedResult = {}; - for (const [field, value647] of Object.entries(result)){ + for (const [field, value651] of Object.entries(result)){ if (field === "_id") { - formattedResult._id = value647?.$oid || value647; - } else if (value647.$date) { - formattedResult[field] = new Date(value647.$date.$numberLong); + formattedResult._id = value651?.$oid || value651; + } else if (value651.$date) { + formattedResult[field] = new Date(value651.$date.$numberLong); } else { - formattedResult[field] = value647; + formattedResult[field] = value651; } } return formattedResult; @@ -88123,7 +90728,7 @@ class MongoDBConnector { } } function addFieldToSchema(table, fieldOptions) { - const type85 = typeof fieldOptions.type === "string" ? fieldOptions.type : fieldOptions.type.type; + const type78 = typeof fieldOptions.type === "string" ? fieldOptions.type : fieldOptions.type.type; let instruction; if (typeof fieldOptions.type === "object") { if (fieldOptions.type.relationship) { @@ -88162,7 +90767,7 @@ function addFieldToSchema(table, fieldOptions) { if (fieldOptions.type.autoIncrement) { instruction = fieldOptions.type.type === "bigInteger" ? table.bigincrements(fieldOptions.name) : table.increments(fieldOptions.name); } else { - instruction = table[type85](...fieldNameArgs); + instruction = table[type78](...fieldNameArgs); } if (fieldOptions.type.primaryKey) { instruction = instruction.primary(fieldOptions.name); @@ -88174,7 +90779,7 @@ function addFieldToSchema(table, fieldOptions) { instruction = instruction.notNullable(); } } else { - instruction = table[type85](fieldOptions.name); + instruction = table[type78](fieldOptions.name); } if (typeof fieldOptions.type === "object" && fieldOptions.type.comment) { instruction.comment(fieldOptions.type.comment); @@ -88323,8 +90928,8 @@ class SQLite3Connector { _options; _translator; _connected = false; - constructor(options179){ - this._options = options179; + constructor(options181){ + this._options = options181; this._client = new DB(this._options.filepath); this._translator = new SQLTranslator(this._dialect); } @@ -88373,19 +90978,19 @@ class SQLite3Connector { } return response.map((row)=>{ const result = {}; - for (const [columnName, value648] of Object.entries(row)){ + for (const [columnName, value652] of Object.entries(row)){ if (columnName === "count(*)") { - result.count = value648; + result.count = value652; } else if (columnName.startsWith("max(")) { - result.max = value648; + result.max = value652; } else if (columnName.startsWith("min(")) { - result.min = value648; + result.min = value652; } else if (columnName.startsWith("sum(")) { - result.sum = value648; + result.sum = value652; } else if (columnName.startsWith("avg(")) { - result.avg = value648; + result.avg = value652; } else { - result[columnName] = value648; + result[columnName] = value652; } } return result; @@ -88398,9 +91003,9 @@ class SQLite3Connector { try { await queries(); this._client.query("commit"); - } catch (error63) { + } catch (error71) { this._client.query("rollback"); - throw error63; + throw error71; } } close() { @@ -88418,8 +91023,8 @@ class MySQLConnector { _options; _translator; _connected = false; - constructor(options180){ - this._options = options180; + constructor(options182){ + this._options = options182; this._client = new Client2(); this._translator = new SQLTranslator(this._dialect); } @@ -88455,9 +91060,9 @@ class MySQLConnector { const query16 = this._translator.translateToQuery(queryDescription); const subqueries = query16.split(/;(?=(?:[^'"]|'[^']*'|"[^"]*")*$)/); const queryMethod = query16.toLowerCase().startsWith("select") ? "query" : "execute"; - for(let i314 = 0; i314 < subqueries.length; i314++){ - const result = await queryClient[queryMethod](subqueries[i314]); - if (i314 === subqueries.length - 1) { + for(let i318 = 0; i318 < subqueries.length; i318++){ + const result = await queryClient[queryMethod](subqueries[i318]); + if (i318 === subqueries.length - 1) { return result; } } @@ -88479,17 +91084,17 @@ class PostgresConnector { _options; _translator; _connected = false; - constructor(options181){ - this._options = options181; - if ("uri" in options181) { - this._client = new Client4(options181.uri); + constructor(options183){ + this._options = options183; + if ("uri" in options183) { + this._client = new Client4(options183.uri); } else { this._client = new Client4({ - hostname: options181.host, - user: options181.username, - password: options181.password, - database: options181.database, - port: options181.port ?? 5432 + hostname: options183.host, + user: options183.username, + password: options183.password, + database: options183.database, + port: options183.port ?? 5432 }); } this._translator = new SQLTranslator(this._dialect); @@ -88549,7 +91154,7 @@ function connectorFactory(dialect, connectionOptions) { } } function warning3(message) { - console.log(mod16.warning(message)); + console.log(mod15.warning(message)); } class Database1 { _connector; @@ -88604,15 +91209,15 @@ class Database1 { getClient() { return this.getConnector()._client; } - async sync(options182 = {}) { - if (options182.drop) { - for(let i315 = this._models.length - 1; i315 >= 0; i315--){ - await this._models[i315].drop(); + async sync(options184 = {}) { + if (options184.drop) { + for(let i319 = this._models.length - 1; i319 >= 0; i319--){ + await this._models[i319].drop(); } } - if (options182.truncate) { - for(let i316 = this._models.length - 1; i316 >= 0; i316--){ - await this._models[i316].truncate(); + if (options184.truncate) { + for(let i320 = this._models.length - 1; i320 >= 0; i320--){ + await this._models[i320].truncate(); } } for (const model of this._models){ @@ -88682,22 +91287,22 @@ const Relationships = { } }; }, - belongsTo (modelA, modelB, options183) { - const foreignKey = options183?.foreignKey; + belongsTo (modelA, modelB, options185) { + const foreignKey = options185?.foreignKey; const modelAFieldName = foreignKey || `${modelB.name.toLowerCase()}Id`; modelA.fields[modelAFieldName] = this._belongsToField(modelB); }, - oneToOne (modelA, modelB, options184) { - const primaryKey = options184?.primaryKey; - const foreignKey = options184?.foreignKey; + oneToOne (modelA, modelB, options186) { + const primaryKey = options186?.primaryKey; + const foreignKey = options186?.foreignKey; const modelAFieldName = primaryKey || `${modelB.name.toLowerCase()}Id`; const modelBFieldName = foreignKey || `${modelA.name.toLowerCase()}Id`; modelA.fields[modelAFieldName] = this._belongsToField(modelB); modelB.fields[modelBFieldName] = this._belongsToField(modelA); }, - manyToMany (modelA, modelB, options185) { - const primaryKey = options185?.primaryKey; - const foreignKey = options185?.foreignKey; + manyToMany (modelA, modelB, options187) { + const primaryKey = options187?.primaryKey; + const foreignKey = options187?.foreignKey; const pivotClassName = `${modelA.table}_${modelB.table}`; const modelAFieldName = primaryKey || `${modelA.name.toLowerCase()}Id`; const modelBFieldName = foreignKey || `${modelB.name.toLowerCase()}Id`; @@ -88725,6 +91330,48 @@ const Relationships = { return PivotClass; } }; +function isSubdir(src, dest, sep17 = sep5) { + if (src === dest) { + return false; + } + src = toPathString(src); + const srcArray = src.split(sep17); + dest = toPathString(dest); + const destArray = dest.split(sep17); + return srcArray.every((current, i321)=>destArray[i321] === current); +} +function getFileInfoType(fileInfo) { + return fileInfo.isFile ? "file" : fileInfo.isDirectory ? "dir" : fileInfo.isSymlink ? "symlink" : undefined; +} +function createWalkEntrySync(path137) { + path137 = toPathString(path137); + path137 = normalize8(path137); + const name90 = basename5(path137); + const info6 = Deno.statSync(path137); + return { + path: path137, + name: name90, + isFile: info6.isFile, + isDirectory: info6.isDirectory, + isSymlink: info6.isSymlink + }; +} +async function createWalkEntry(path2) { + path2 = toPathString(path2); + path2 = normalize8(path2); + const name91 = basename5(path2); + const info7 = await Deno.stat(path2); + return { + path: path2, + name: name91, + isFile: info7.isFile, + isDirectory: info7.isDirectory, + isSymlink: info7.isSymlink + }; +} +function toPathString(path310) { + return path310 instanceof URL ? fromFileUrl5(path310) : path310; +} async function emptyDir(dir) { try { const items = []; @@ -88734,7 +91381,7 @@ async function emptyDir(dir) { while(items.length){ const item = items.shift(); if (item && item.name) { - const filepath = join8(dir, item.name); + const filepath = join8(toPathString(dir), item.name); await Deno.remove(filepath, { recursive: true }); @@ -88757,7 +91404,7 @@ function emptyDirSync(dir) { while(items.length){ const item = items.shift(); if (item && item.name) { - const filepath = join8(dir, item.name); + const filepath = join8(toPathString(dir), item.name); Deno.removeSync(filepath, { recursive: true }); @@ -88773,17 +91420,6 @@ function emptyDirSync(dir) { return; } } -function isSubdir(src, dest, sep17 = sep5) { - if (src === dest) { - return false; - } - const srcArray = src.split(sep17); - const destArray = dest.split(sep17); - return srcArray.every((current, i317)=>destArray[i317] === current); -} -function getFileInfoType(fileInfo) { - return fileInfo.isFile ? "file" : fileInfo.isDirectory ? "dir" : fileInfo.isSymlink ? "symlink" : undefined; -} async function ensureDir(dir) { try { const fileInfo = await Deno.lstat(dir); @@ -88824,7 +91460,7 @@ async function ensureFile(filePath) { } } catch (err) { if (err instanceof Deno.errors.NotFound) { - await ensureDir(dirname5(filePath)); + await ensureDir(dirname5(toPathString(filePath))); await Deno.writeFile(filePath, new Uint8Array()); return; } @@ -88839,7 +91475,7 @@ function ensureFileSync(filePath) { } } catch (err) { if (err instanceof Deno.errors.NotFound) { - ensureDirSync(dirname5(filePath)); + ensureDirSync(dirname5(toPathString(filePath))); Deno.writeFileSync(filePath, new Uint8Array()); return; } @@ -88847,141 +91483,88 @@ function ensureFileSync(filePath) { } } async function ensureLink(src, dest) { - if (await exists1(dest)) { - const destStatInfo = await Deno.lstat(dest); - const destFilePathType = getFileInfoType(destStatInfo); - if (destFilePathType !== "file") { - throw new Error(`Ensure path exists, expected 'file', got '${destFilePathType}'`); - } - return; - } + dest = toPathString(dest); await ensureDir(dirname5(dest)); - await Deno.link(src, dest); + await Deno.link(toPathString(src), dest); } function ensureLinkSync(src, dest) { - if (existsSync(dest)) { - const destStatInfo = Deno.lstatSync(dest); - const destFilePathType = getFileInfoType(destStatInfo); - if (destFilePathType !== "file") { - throw new Error(`Ensure path exists, expected 'file', got '${destFilePathType}'`); - } - return; - } + dest = toPathString(dest); ensureDirSync(dirname5(dest)); - Deno.linkSync(src, dest); + Deno.linkSync(toPathString(src), dest); } async function ensureSymlink(src, dest) { const srcStatInfo = await Deno.lstat(src); const srcFilePathType = getFileInfoType(srcStatInfo); - if (await exists1(dest)) { - const destStatInfo = await Deno.lstat(dest); - const destFilePathType = getFileInfoType(destStatInfo); - if (destFilePathType !== "symlink") { - throw new Error(`Ensure path exists, expected 'symlink', got '${destFilePathType}'`); - } - return; - } - await ensureDir(dirname5(dest)); - const options186 = isWindows1 ? { + await ensureDir(dirname5(toPathString(dest))); + const options188 = isWindows1 ? { type: srcFilePathType === "dir" ? "dir" : "file" } : undefined; - await Deno.symlink(src, dest, options186); + await Deno.symlink(src, dest, options188); } function ensureSymlinkSync(src, dest) { const srcStatInfo = Deno.lstatSync(src); const srcFilePathType = getFileInfoType(srcStatInfo); - if (existsSync(dest)) { - const destStatInfo = Deno.lstatSync(dest); - const destFilePathType = getFileInfoType(destStatInfo); - if (destFilePathType !== "symlink") { - throw new Error(`Ensure path exists, expected 'symlink', got '${destFilePathType}'`); - } - return; - } - ensureDirSync(dirname5(dest)); - const options187 = isWindows1 ? { + ensureDirSync(dirname5(toPathString(dest))); + const options189 = isWindows1 ? { type: srcFilePathType === "dir" ? "dir" : "file" } : undefined; - Deno.symlinkSync(src, dest, options187); -} -function _createWalkEntrySync(path138) { - path138 = normalize8(path138); - const name90 = basename5(path138); - const info6 = Deno.statSync(path138); - return { - path: path138, - name: name90, - isFile: info6.isFile, - isDirectory: info6.isDirectory, - isSymlink: info6.isSymlink - }; + Deno.symlinkSync(src, dest, options189); } -async function _createWalkEntry(path139) { - path139 = normalize8(path139); - const name91 = basename5(path139); - const info7 = await Deno.stat(path139); - return { - path: path139, - name: name91, - isFile: info7.isFile, - isDirectory: info7.isDirectory, - isSymlink: info7.isSymlink - }; -} -function include(path140, exts, match35, skip) { - if (exts && !exts.some((ext)=>path140.endsWith(ext))) { +function include(path138, exts, match32, skip) { + if (exts && !exts.some((ext)=>path138.endsWith(ext))) { return false; } - if (match35 && !match35.some((pattern)=>!!path140.match(pattern))) { + if (match32 && !match32.some((pattern)=>!!path138.match(pattern))) { return false; } - if (skip && skip.some((pattern)=>!!path140.match(pattern))) { + if (skip && skip.some((pattern)=>!!path138.match(pattern))) { return false; } return true; } function wrapErrorWithRootPath(err, root) { if (err instanceof Error && "root" in err) return err; - const e174 = new Error(); - e174.root = root; - e174.message = err instanceof Error ? `${err.message} for path "${root}"` : `[non-error thrown] for path "${root}"`; - e174.stack = err instanceof Error ? err.stack : undefined; - e174.cause = err instanceof Error ? err.cause : undefined; - return e174; -} -async function* walk(root, { maxDepth =Infinity , includeFiles =true , includeDirs =true , followSymlinks =false , exts =undefined , match: match36 = undefined , skip =undefined } = {}) { + const e175 = new Error(); + e175.root = root; + e175.message = err instanceof Error ? `${err.message} for path "${root}"` : `[non-error thrown] for path "${root}"`; + e175.stack = err instanceof Error ? err.stack : undefined; + e175.cause = err instanceof Error ? err.cause : undefined; + return e175; +} +async function* walk(root, { maxDepth =Infinity , includeFiles =true , includeDirs =true , followSymlinks =false , exts =undefined , match: match33 = undefined , skip =undefined } = {}) { if (maxDepth < 0) { return; } - if (includeDirs && include(root, exts, match36, skip)) { - yield await _createWalkEntry(root); + root = toPathString(root); + if (includeDirs && include(root, exts, match33, skip)) { + yield await createWalkEntry(root); } if (maxDepth < 1 || !include(root, undefined, undefined, skip)) { return; } try { for await (const entry of Deno.readDir(root)){ - assert3(entry.name != null); - let path141 = join8(root, entry.name); + assert4(entry.name != null); + let path139 = join8(root, entry.name); let { isSymlink , isDirectory } = entry; if (isSymlink) { if (!followSymlinks) continue; - path141 = await Deno.realPath(path141); - ({ isSymlink , isDirectory } = await Deno.lstat(path141)); + path139 = await Deno.realPath(path139); + ({ isSymlink , isDirectory } = await Deno.lstat(path139)); } if (isSymlink || isDirectory) { - yield* walk(path141, { + yield* walk(path139, { maxDepth: maxDepth - 1, includeFiles, includeDirs, followSymlinks, exts, - match: match36, + match: match33, skip }); - } else if (includeFiles && include(path141, exts, match36, skip)) { + } else if (includeFiles && include(path139, exts, match33, skip)) { yield { - path: path141, + path: path139, ...entry }; } @@ -88990,12 +91573,13 @@ async function* walk(root, { maxDepth =Infinity , includeFiles =true , includeDi throw wrapErrorWithRootPath(err, normalize8(root)); } } -function* walkSync(root, { maxDepth =Infinity , includeFiles =true , includeDirs =true , followSymlinks =false , exts =undefined , match: match37 = undefined , skip =undefined } = {}) { +function* walkSync(root, { maxDepth =Infinity , includeFiles =true , includeDirs =true , followSymlinks =false , exts =undefined , match: match34 = undefined , skip =undefined } = {}) { + root = toPathString(root); if (maxDepth < 0) { return; } - if (includeDirs && include(root, exts, match37, skip)) { - yield _createWalkEntrySync(root); + if (includeDirs && include(root, exts, match34, skip)) { + yield createWalkEntrySync(root); } if (maxDepth < 1 || !include(root, undefined, undefined, skip)) { return; @@ -89007,51 +91591,51 @@ function* walkSync(root, { maxDepth =Infinity , includeFiles =true , includeDirs throw wrapErrorWithRootPath(err, normalize8(root)); } for (const entry of entries){ - assert3(entry.name != null); - let path142 = join8(root, entry.name); + assert4(entry.name != null); + let path140 = join8(root, entry.name); let { isSymlink , isDirectory } = entry; if (isSymlink) { if (!followSymlinks) continue; - path142 = Deno.realPathSync(path142); - ({ isSymlink , isDirectory } = Deno.lstatSync(path142)); + path140 = Deno.realPathSync(path140); + ({ isSymlink , isDirectory } = Deno.lstatSync(path140)); } if (isSymlink || isDirectory) { - yield* walkSync(path142, { + yield* walkSync(path140, { maxDepth: maxDepth - 1, includeFiles, includeDirs, followSymlinks, exts, - match: match37, + match: match34, skip }); - } else if (includeFiles && include(path142, exts, match37, skip)) { + } else if (includeFiles && include(path140, exts, match34, skip)) { yield { - path: path142, + path: path140, ...entry }; } } } -function split(path143) { +function split(path141) { const s62 = SEP_PATTERN.source; - const segments = path143.replace(new RegExp(`^${s62}|${s62}$`, "g"), "").split(SEP_PATTERN); - const isAbsolute_ = isAbsolute5(path143); + const segments = path141.replace(new RegExp(`^${s62}|${s62}$`, "g"), "").split(SEP_PATTERN); + const isAbsolute_ = isAbsolute5(path141); return { segments, isAbsolute: isAbsolute_, - hasTrailingSep: !!path143.match(new RegExp(`${s62}$`)), + hasTrailingSep: !!path141.match(new RegExp(`${s62}$`)), winRoot: isWindows1 && isAbsolute_ ? segments.shift() : undefined }; } -function throwUnlessNotFound(error64) { - if (!(error64 instanceof Deno.errors.NotFound)) { - throw error64; +function throwUnlessNotFound(error72) { + if (!(error72 instanceof Deno.errors.NotFound)) { + throw error72; } } -function comparePath(a50, b60) { - if (a50.path < b60.path) return -1; - if (a50.path > b60.path) return 1; +function comparePath(a50, b63) { + if (a50.path < b63.path) return -1; + if (a50.path > b63.path) return 1; return 0; } async function* expandGlob(glob, { root =Deno.cwd() , exclude =[] , includeDirs =true , extended =true , globstar =false , caseInsensitive } = {}) { @@ -89061,14 +91645,14 @@ async function* expandGlob(glob, { root =Deno.cwd() , exclude =[] , includeDirs caseInsensitive }; const absRoot = resolve5(root); - const resolveFromRoot = (path144)=>resolve5(absRoot, path144); + const resolveFromRoot = (path142)=>resolve5(absRoot, path142); const excludePatterns = exclude.map(resolveFromRoot).map((s63)=>globToRegExp(s63, globOptions)); - const shouldInclude = (path145)=>!excludePatterns.some((p68)=>!!path145.match(p68)); - const { segments , isAbsolute: isGlobAbsolute , hasTrailingSep , winRoot } = split(glob); + const shouldInclude = (path143)=>!excludePatterns.some((p69)=>!!path143.match(p69)); + const { segments , isAbsolute: isGlobAbsolute , hasTrailingSep , winRoot } = split(toPathString(glob)); let fixedRoot = isGlobAbsolute ? winRoot != undefined ? winRoot : "/" : absRoot; while(segments.length > 0 && !isGlob(segments[0])){ const seg = segments.shift(); - assert3(seg != null); + assert4(seg != null); fixedRoot = joinGlobs([ fixedRoot, seg @@ -89076,9 +91660,9 @@ async function* expandGlob(glob, { root =Deno.cwd() , exclude =[] , includeDirs } let fixedRootInfo; try { - fixedRootInfo = await _createWalkEntry(fixedRoot); - } catch (error111) { - return throwUnlessNotFound(error111); + fixedRootInfo = await createWalkEntry(fixedRoot); + } catch (error113) { + return throwUnlessNotFound(error113); } async function* advanceMatch(walkInfo, globSegment) { if (!walkInfo.isDirectory) { @@ -89090,10 +91674,10 @@ async function* expandGlob(glob, { root =Deno.cwd() , exclude =[] , includeDirs ], globOptions); try { if (shouldInclude(parentPath)) { - return yield await _createWalkEntry(parentPath); + return yield await createWalkEntry(parentPath); } - } catch (error65) { - throwUnlessNotFound(error65); + } catch (error73) { + throwUnlessNotFound(error73); } return; } else if (globSegment == "**") { @@ -89140,14 +91724,14 @@ function* expandGlobSync(glob, { root =Deno.cwd() , exclude =[] , includeDirs =t caseInsensitive }; const absRoot = resolve5(root); - const resolveFromRoot = (path146)=>resolve5(absRoot, path146); + const resolveFromRoot = (path144)=>resolve5(absRoot, path144); const excludePatterns = exclude.map(resolveFromRoot).map((s64)=>globToRegExp(s64, globOptions)); - const shouldInclude = (path147)=>!excludePatterns.some((p69)=>!!path147.match(p69)); - const { segments , isAbsolute: isGlobAbsolute , hasTrailingSep , winRoot } = split(glob); + const shouldInclude = (path145)=>!excludePatterns.some((p70)=>!!path145.match(p70)); + const { segments , isAbsolute: isGlobAbsolute , hasTrailingSep , winRoot } = split(toPathString(glob)); let fixedRoot = isGlobAbsolute ? winRoot != undefined ? winRoot : "/" : absRoot; while(segments.length > 0 && !isGlob(segments[0])){ const seg = segments.shift(); - assert3(seg != null); + assert4(seg != null); fixedRoot = joinGlobs([ fixedRoot, seg @@ -89155,9 +91739,9 @@ function* expandGlobSync(glob, { root =Deno.cwd() , exclude =[] , includeDirs =t } let fixedRootInfo; try { - fixedRootInfo = _createWalkEntrySync(fixedRoot); - } catch (error210) { - return throwUnlessNotFound(error210); + fixedRootInfo = createWalkEntrySync(fixedRoot); + } catch (error212) { + return throwUnlessNotFound(error212); } function* advanceMatch(walkInfo, globSegment) { if (!walkInfo.isDirectory) { @@ -89169,10 +91753,10 @@ function* expandGlobSync(glob, { root =Deno.cwd() , exclude =[] , includeDirs =t ], globOptions); try { if (shouldInclude(parentPath)) { - return yield _createWalkEntrySync(parentPath); + return yield createWalkEntrySync(parentPath); } - } catch (error66) { - throwUnlessNotFound(error66); + } catch (error74) { + throwUnlessNotFound(error74); } return; } else if (globSegment == "**") { @@ -89212,21 +91796,27 @@ function* expandGlobSync(glob, { root =Deno.cwd() , exclude =[] , includeDirs =t } yield* currentMatches; } +const EXISTS_ERROR = new Deno.errors.AlreadyExists("dest already exists."); async function move(src, dest, { overwrite =false } = {}) { const srcStat = await Deno.stat(src); if (srcStat.isDirectory && isSubdir(src, dest)) { throw new Error(`Cannot move '${src}' to a subdirectory of itself, '${dest}'.`); } if (overwrite) { - if (await exists1(dest)) { + try { await Deno.remove(dest, { recursive: true }); + } catch (error75) { + if (!(error75 instanceof Deno.errors.NotFound)) { + throw error75; + } } } else { - if (await exists1(dest)) { - throw new Error("dest already exists."); - } + try { + await Deno.lstat(dest); + return Promise.reject(EXISTS_ERROR); + } catch {} } await Deno.rename(src, dest); return; @@ -89237,19 +91827,28 @@ function moveSync(src, dest, { overwrite =false } = {}) { throw new Error(`Cannot move '${src}' to a subdirectory of itself, '${dest}'.`); } if (overwrite) { - if (existsSync(dest)) { + try { Deno.removeSync(dest, { recursive: true }); + } catch (error76) { + if (!(error76 instanceof Deno.errors.NotFound)) { + throw error76; + } } } else { - if (existsSync(dest)) { - throw new Error("dest already exists."); + try { + Deno.lstatSync(dest); + throw EXISTS_ERROR; + } catch (error77) { + if (error77 === EXISTS_ERROR) { + throw error77; + } } } Deno.renameSync(src, dest); } -async function ensureValidCopy(src, dest, options188) { +async function ensureValidCopy(src, dest, options190) { let destStat; try { destStat = await Deno.lstat(dest); @@ -89259,15 +91858,15 @@ async function ensureValidCopy(src, dest, options188) { } throw err; } - if (options188.isFolder && !destStat.isDirectory) { + if (options190.isFolder && !destStat.isDirectory) { throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); } - if (!options188.overwrite) { - throw new Error(`'${dest}' already exists.`); + if (!options190.overwrite) { + throw new Deno.errors.AlreadyExists(`'${dest}' already exists.`); } return destStat; } -function ensureValidCopySync(src, dest, options189) { +function ensureValidCopySync(src, dest, options191) { let destStat; try { destStat = Deno.lstatSync(dest); @@ -89277,126 +91876,130 @@ function ensureValidCopySync(src, dest, options189) { } throw err; } - if (options189.isFolder && !destStat.isDirectory) { + if (options191.isFolder && !destStat.isDirectory) { throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); } - if (!options189.overwrite) { - throw new Error(`'${dest}' already exists.`); + if (!options191.overwrite) { + throw new Deno.errors.AlreadyExists(`'${dest}' already exists.`); } return destStat; } -async function copyFile(src, dest, options190) { - await ensureValidCopy(src, dest, options190); +async function copyFile(src, dest, options192) { + await ensureValidCopy(src, dest, options192); await Deno.copyFile(src, dest); - if (options190.preserveTimestamps) { + if (options192.preserveTimestamps) { const statInfo = await Deno.stat(src); - assert3(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); - assert3(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); + assert4(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); + assert4(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); await utime(dest, statInfo.atime, statInfo.mtime); } } -function copyFileSync(src, dest, options191) { - ensureValidCopySync(src, dest, options191); +function copyFileSync(src, dest, options193) { + ensureValidCopySync(src, dest, options193); Deno.copyFileSync(src, dest); - if (options191.preserveTimestamps) { + if (options193.preserveTimestamps) { const statInfo = Deno.statSync(src); - assert3(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); - assert3(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); + assert4(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); + assert4(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); utimeSync(dest, statInfo.atime, statInfo.mtime); } } -async function copySymLink(src, dest, options192) { - await ensureValidCopy(src, dest, options192); +async function copySymLink(src, dest, options194) { + await ensureValidCopy(src, dest, options194); const originSrcFilePath = await Deno.readLink(src); - const type86 = getFileInfoType(await Deno.lstat(src)); + const type79 = getFileInfoType(await Deno.lstat(src)); if (isWindows1) { await Deno.symlink(originSrcFilePath, dest, { - type: type86 === "dir" ? "dir" : "file" + type: type79 === "dir" ? "dir" : "file" }); } else { await Deno.symlink(originSrcFilePath, dest); } - if (options192.preserveTimestamps) { + if (options194.preserveTimestamps) { const statInfo = await Deno.lstat(src); - assert3(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); - assert3(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); + assert4(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); + assert4(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); await utime(dest, statInfo.atime, statInfo.mtime); } } -function copySymlinkSync(src, dest, options193) { - ensureValidCopySync(src, dest, options193); +function copySymlinkSync(src, dest, options195) { + ensureValidCopySync(src, dest, options195); const originSrcFilePath = Deno.readLinkSync(src); - const type87 = getFileInfoType(Deno.lstatSync(src)); + const type80 = getFileInfoType(Deno.lstatSync(src)); if (isWindows1) { Deno.symlinkSync(originSrcFilePath, dest, { - type: type87 === "dir" ? "dir" : "file" + type: type80 === "dir" ? "dir" : "file" }); } else { Deno.symlinkSync(originSrcFilePath, dest); } - if (options193.preserveTimestamps) { + if (options195.preserveTimestamps) { const statInfo = Deno.lstatSync(src); - assert3(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); - assert3(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); + assert4(statInfo.atime instanceof Date, `statInfo.atime is unavailable`); + assert4(statInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); utimeSync(dest, statInfo.atime, statInfo.mtime); } } -async function copyDir(src, dest, options194) { +async function copyDir(src, dest, options196) { const destStat = await ensureValidCopy(src, dest, { - ...options194, + ...options196, isFolder: true }); if (!destStat) { await ensureDir(dest); } - if (options194.preserveTimestamps) { + if (options196.preserveTimestamps) { const srcStatInfo = await Deno.stat(src); - assert3(srcStatInfo.atime instanceof Date, `statInfo.atime is unavailable`); - assert3(srcStatInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); + assert4(srcStatInfo.atime instanceof Date, `statInfo.atime is unavailable`); + assert4(srcStatInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); await utime(dest, srcStatInfo.atime, srcStatInfo.mtime); } + src = toPathString(src); + dest = toPathString(dest); for await (const entry of Deno.readDir(src)){ const srcPath = join8(src, entry.name); const destPath = join8(dest, basename5(srcPath)); if (entry.isSymlink) { - await copySymLink(srcPath, destPath, options194); + await copySymLink(srcPath, destPath, options196); } else if (entry.isDirectory) { - await copyDir(srcPath, destPath, options194); + await copyDir(srcPath, destPath, options196); } else if (entry.isFile) { - await copyFile(srcPath, destPath, options194); + await copyFile(srcPath, destPath, options196); } } } -function copyDirSync(src, dest, options195) { +function copyDirSync(src, dest, options197) { const destStat = ensureValidCopySync(src, dest, { - ...options195, + ...options197, isFolder: true }); if (!destStat) { ensureDirSync(dest); } - if (options195.preserveTimestamps) { + if (options197.preserveTimestamps) { const srcStatInfo = Deno.statSync(src); - assert3(srcStatInfo.atime instanceof Date, `statInfo.atime is unavailable`); - assert3(srcStatInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); + assert4(srcStatInfo.atime instanceof Date, `statInfo.atime is unavailable`); + assert4(srcStatInfo.mtime instanceof Date, `statInfo.mtime is unavailable`); utimeSync(dest, srcStatInfo.atime, srcStatInfo.mtime); } + src = toPathString(src); + dest = toPathString(dest); for (const entry of Deno.readDirSync(src)){ - assert3(entry.name != null, "file.name must be set"); + assert4(entry.name != null, "file.name must be set"); const srcPath = join8(src, entry.name); const destPath = join8(dest, basename5(srcPath)); if (entry.isSymlink) { - copySymlinkSync(srcPath, destPath, options195); + copySymlinkSync(srcPath, destPath, options197); } else if (entry.isDirectory) { - copyDirSync(srcPath, destPath, options195); + copyDirSync(srcPath, destPath, options197); } else if (entry.isFile) { - copyFileSync(srcPath, destPath, options195); + copyFileSync(srcPath, destPath, options197); } } } -async function copy8(src, dest, options196 = {}) { - src = resolve5(src); - dest = resolve5(dest); +async function copy8(src, dest, options198 = {}) { + src = resolve5(toPathString(src)); + dest = resolve5(toPathString(dest)); if (src === dest) { throw new Error("Source and destination cannot be the same."); } @@ -89405,16 +92008,16 @@ async function copy8(src, dest, options196 = {}) { throw new Error(`Cannot copy '${src}' to a subdirectory of itself, '${dest}'.`); } if (srcStat.isSymlink) { - await copySymLink(src, dest, options196); + await copySymLink(src, dest, options198); } else if (srcStat.isDirectory) { - await copyDir(src, dest, options196); + await copyDir(src, dest, options198); } else if (srcStat.isFile) { - await copyFile(src, dest, options196); + await copyFile(src, dest, options198); } } -function copySync(src, dest, options197 = {}) { - src = resolve5(src); - dest = resolve5(dest); +function copySync(src, dest, options199 = {}) { + src = resolve5(toPathString(src)); + dest = resolve5(toPathString(dest)); if (src === dest) { throw new Error("Source and destination cannot be the same."); } @@ -89423,11 +92026,11 @@ function copySync(src, dest, options197 = {}) { throw new Error(`Cannot copy '${src}' to a subdirectory of itself, '${dest}'.`); } if (srcStat.isSymlink) { - copySymlinkSync(src, dest, options197); + copySymlinkSync(src, dest, options199); } else if (srcStat.isDirectory) { - copyDirSync(src, dest, options197); + copyDirSync(src, dest, options199); } else if (srcStat.isFile) { - copyFileSync(src, dest, options197); + copyFileSync(src, dest, options199); } } var EOL; @@ -89447,7 +92050,7 @@ function detect(content) { function format15(content, eol) { return content.replace(regDetect, eol); } -const mod36 = { +const mod35 = { exists: exists1, existsSync, emptyDir, @@ -89462,8 +92065,6 @@ const mod36 = { ensureSymlinkSync, expandGlob, expandGlobSync, - _createWalkEntrySync, - _createWalkEntry, walk, walkSync, move, @@ -89474,24 +92075,24 @@ const mod36 = { detect, format: format15 }; -const random = (bytes59)=>crypto.getRandomValues(new Uint8Array(bytes59)); +const random = (bytes61)=>crypto.getRandomValues(new Uint8Array(bytes61)); const urlAlphabet = 'ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW'; const nanoid = (size36 = 21)=>{ let id = ""; - const bytes60 = random(size36); - while(size36--)id += urlAlphabet[bytes60[size36] & 63]; + const bytes62 = random(size36); + while(size36--)id += urlAlphabet[bytes62[size36] & 63]; return id; }; const { hasOwn } = Object; -function get1(obj, key204) { - if (hasOwn(obj, key204)) { - return obj[key204]; +function get1(obj, key206) { + if (hasOwn(obj, key206)) { + return obj[key206]; } } -function getForce(obj, key205) { - const v41 = get1(obj, key205); - assert3(v41 != null); - return v41; +function getForce(obj, key207) { + const v48 = get1(obj, key207); + assert4(v48 != null); + return v48; } function isNumber4(x37) { if (typeof x37 === "number") return true; @@ -89499,20 +92100,21 @@ function isNumber4(x37) { return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(String(x37)); } function hasKey(obj, keys) { - let o52 = obj; - keys.slice(0, -1).forEach((key206)=>{ - o52 = get1(o52, key206) ?? {}; + let o51 = obj; + keys.slice(0, -1).forEach((key208)=>{ + o51 = get1(o51, key208) ?? {}; }); const key1 = keys[keys.length - 1]; - return key1 in o52; + return hasOwn(o51, key1); } -function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , boolean: __boolean = false , default: defaults3 = {} , stopEarly =false , string =[] , collect: collect1 = [] , unknown =(i318)=>i318 } = {}) { +function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , boolean: __boolean = false , default: defaults3 = {} , stopEarly =false , string =[] , collect: collect1 = [] , negatable =[] , unknown =(i322)=>i322 } = {}) { const flags10 = { bools: {}, strings: {}, unknownFn: unknown, allBools: false, - collect: {} + collect: {}, + negatable: {} }; if (__boolean !== undefined) { if (typeof __boolean === "boolean") { @@ -89521,26 +92123,26 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool const booleanArgs = typeof __boolean === "string" ? [ __boolean ] : __boolean; - for (const key207 of booleanArgs.filter(Boolean)){ - flags10.bools[key207] = true; + for (const key209 of booleanArgs.filter(Boolean)){ + flags10.bools[key209] = true; } } } const aliases = {}; if (alias3 !== undefined) { - for(const key208 in alias3){ - const val = getForce(alias3, key208); + for(const key210 in alias3){ + const val = getForce(alias3, key210); if (typeof val === "string") { - aliases[key208] = [ + aliases[key210] = [ val ]; } else { - aliases[key208] = val; + aliases[key210] = val; } - for (const alias1 of getForce(aliases, key208)){ + for (const alias1 of getForce(aliases, key210)){ aliases[alias1] = [ - key208 - ].concat(aliases[key208].filter((y13)=>alias1 !== y13)); + key210 + ].concat(aliases[key210].filter((y13)=>alias1 !== y13)); } } } @@ -89548,9 +92150,9 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool const stringArgs = typeof string === "string" ? [ string ] : string; - for (const key209 of stringArgs.filter(Boolean)){ - flags10.strings[key209] = true; - const alias = get1(aliases, key209); + for (const key211 of stringArgs.filter(Boolean)){ + flags10.strings[key211] = true; + const alias = get1(aliases, key211); if (alias) { for (const al of alias){ flags10.strings[al] = true; @@ -89562,9 +92164,9 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool const collectArgs = typeof collect1 === "string" ? [ collect1 ] : collect1; - for (const key210 of collectArgs.filter(Boolean)){ - flags10.collect[key210] = true; - const alias = get1(aliases, key210); + for (const key212 of collectArgs.filter(Boolean)){ + flags10.collect[key212] = true; + const alias = get1(aliases, key212); if (alias) { for (const al of alias){ flags10.collect[al] = true; @@ -89572,88 +92174,102 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool } } } + if (negatable !== undefined) { + const negatableArgs = typeof negatable === "string" ? [ + negatable + ] : negatable; + for (const key213 of negatableArgs.filter(Boolean)){ + flags10.negatable[key213] = true; + const alias = get1(aliases, key213); + if (alias) { + for (const al of alias){ + flags10.negatable[al] = true; + } + } + } + } const argv = { _: [] }; - function argDefined(key211, arg) { - return flags10.allBools && /^--[^=]+$/.test(arg) || get1(flags10.bools, key211) || !!get1(flags10.strings, key211) || !!get1(aliases, key211); + function argDefined(key214, arg) { + return flags10.allBools && /^--[^=]+$/.test(arg) || get1(flags10.bools, key214) || !!get1(flags10.strings, key214) || !!get1(aliases, key214); } - function setKey(obj, name92, value649, collect = true) { - let o53 = obj; + function setKey(obj, name92, value653, collect = true) { + let o52 = obj; const keys = name92.split("."); - keys.slice(0, -1).forEach(function(key212) { - if (get1(o53, key212) === undefined) { - o53[key212] = {}; + keys.slice(0, -1).forEach(function(key215) { + if (get1(o52, key215) === undefined) { + o52[key215] = {}; } - o53 = get1(o53, key212); + o52 = get1(o52, key215); }); const key5 = keys[keys.length - 1]; const collectable = collect && !!get1(flags10.collect, name92); if (!collectable) { - o53[key5] = value649; - } else if (get1(o53, key5) === undefined) { - o53[key5] = [ - value649 + o52[key5] = value653; + } else if (get1(o52, key5) === undefined) { + o52[key5] = [ + value653 ]; - } else if (Array.isArray(get1(o53, key5))) { - o53[key5].push(value649); + } else if (Array.isArray(get1(o52, key5))) { + o52[key5].push(value653); } else { - o53[key5] = [ - get1(o53, key5), - value649 + o52[key5] = [ + get1(o52, key5), + value653 ]; } } - function setArg(key213, val, arg = undefined, collect) { - if (arg && flags10.unknownFn && !argDefined(key213, arg)) { - if (flags10.unknownFn(arg, key213, val) === false) return; + function setArg(key216, val, arg = undefined, collect) { + if (arg && flags10.unknownFn && !argDefined(key216, arg)) { + if (flags10.unknownFn(arg, key216, val) === false) return; } - const value650 = !get1(flags10.strings, key213) && isNumber4(val) ? Number(val) : val; - setKey(argv, key213, value650, collect); - const alias = get1(aliases, key213); + const value654 = !get1(flags10.strings, key216) && isNumber4(val) ? Number(val) : val; + setKey(argv, key216, value654, collect); + const alias = get1(aliases, key216); if (alias) { for (const x38 of alias){ - setKey(argv, x38, value650, collect); + setKey(argv, x38, value654, collect); } } } - function aliasIsBoolean(key214) { - return getForce(aliases, key214).some((x39)=>typeof get1(flags10.bools, x39) === "boolean"); + function aliasIsBoolean(key217) { + return getForce(aliases, key217).some((x39)=>typeof get1(flags10.bools, x39) === "boolean"); } let notFlags = []; if (args102.includes("--")) { notFlags = args102.slice(args102.indexOf("--") + 1); args102 = args102.slice(0, args102.indexOf("--")); } - for(let i319 = 0; i319 < args102.length; i319++){ - const arg = args102[i319]; + for(let i323 = 0; i323 < args102.length; i323++){ + const arg = args102[i323]; if (/^--.+=/.test(arg)) { const m45 = arg.match(/^--([^=]+)=(.*)$/s); - assert3(m45 != null); - const [, key215, value651] = m45; - if (flags10.bools[key215]) { - const booleanValue = value651 !== "false"; - setArg(key215, booleanValue, arg); + assert4(m45 != null); + const [, key218, value655] = m45; + if (flags10.bools[key218]) { + const booleanValue = value655 !== "false"; + setArg(key218, booleanValue, arg); } else { - setArg(key215, value651, arg); + setArg(key218, value655, arg); } - } else if (/^--no-.+/.test(arg)) { + } else if (/^--no-.+/.test(arg) && get1(flags10.negatable, arg.replace(/^--no-/, ""))) { const m46 = arg.match(/^--no-(.+)/); - assert3(m46 != null); + assert4(m46 != null); setArg(m46[1], false, arg, false); } else if (/^--.+/.test(arg)) { const m47 = arg.match(/^--(.+)/); - assert3(m47 != null); - const [, key216] = m47; - const next = args102[i319 + 1]; - if (next !== undefined && !/^-/.test(next) && !get1(flags10.bools, key216) && !flags10.allBools && (get1(aliases, key216) ? !aliasIsBoolean(key216) : true)) { - setArg(key216, next, arg); - i319++; + assert4(m47 != null); + const [, key219] = m47; + const next = args102[i323 + 1]; + if (next !== undefined && !/^-/.test(next) && !get1(flags10.bools, key219) && !flags10.allBools && (get1(aliases, key219) ? !aliasIsBoolean(key219) : true)) { + setArg(key219, next, arg); + i323++; } else if (/^(true|false)$/.test(next)) { - setArg(key216, next === "true", arg); - i319++; + setArg(key219, next === "true", arg); + i323++; } else { - setArg(key216, get1(flags10.strings, key216) ? "" : true, arg); + setArg(key219, get1(flags10.strings, key219) ? "" : true, arg); } } else if (/^-[^-]+/.test(arg)) { const letters = arg.slice(1, -1).split(""); @@ -89682,16 +92298,16 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool setArg(letters[j41], get1(flags10.strings, letters[j41]) ? "" : true, arg); } } - const [key217] = arg.slice(-1); - if (!broken && key217 !== "-") { - if (args102[i319 + 1] && !/^(-|--)[^-]/.test(args102[i319 + 1]) && !get1(flags10.bools, key217) && (get1(aliases, key217) ? !aliasIsBoolean(key217) : true)) { - setArg(key217, args102[i319 + 1], arg); - i319++; - } else if (args102[i319 + 1] && /^(true|false)$/.test(args102[i319 + 1])) { - setArg(key217, args102[i319 + 1] === "true", arg); - i319++; + const [key220] = arg.slice(-1); + if (!broken && key220 !== "-") { + if (args102[i323 + 1] && !/^(-|--)[^-]/.test(args102[i323 + 1]) && !get1(flags10.bools, key220) && (get1(aliases, key220) ? !aliasIsBoolean(key220) : true)) { + setArg(key220, args102[i323 + 1], arg); + i323++; + } else if (args102[i323 + 1] && /^(true|false)$/.test(args102[i323 + 1])) { + setArg(key220, args102[i323 + 1] === "true", arg); + i323++; } else { - setArg(key217, get1(flags10.strings, key217) ? "" : true, arg); + setArg(key220, get1(flags10.strings, key220) ? "" : true, arg); } } } else { @@ -89699,7 +92315,7 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool argv._.push(flags10.strings["_"] ?? !isNumber4(arg) ? arg : Number(arg)); } if (stopEarly) { - argv._.push(...args102.slice(i319 + 1)); + argv._.push(...args102.slice(i323 + 1)); break; } } @@ -89716,8 +92332,8 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool } for (const key2 of Object.keys(flags10.bools)){ if (!hasKey(argv, key2.split("."))) { - const value652 = get1(flags10.collect, key2) ? [] : false; - setKey(argv, key2, value652, false); + const value656 = get1(flags10.collect, key2) ? [] : false; + setKey(argv, key2, value656, false); } } for (const key3 of Object.keys(flags10.strings)){ @@ -89727,20 +92343,20 @@ function parse16(args102, { "--": doubleDash = false , alias: alias3 = {} , bool } if (doubleDash) { argv["--"] = []; - for (const key218 of notFlags){ - argv["--"].push(key218); + for (const key221 of notFlags){ + argv["--"].push(key221); } } else { - for (const key219 of notFlags){ - argv._.push(key219); + for (const key222 of notFlags){ + argv._.push(key222); } } return argv; } -const mod37 = { +const mod36 = { parse: parse16 }; -const args = mod37.parse(Deno.args); +const args = mod36.parse(Deno.args); function getArg(name93) { return args[name93] || args[name93.toLowerCase().replaceAll('_', '-')] || Deno.env.get("EDRYS_" + name93); } @@ -89789,7 +92405,7 @@ if (data_engine == "s3") { if (data_s3_endpoint == "" || data_s3_port == 0 || data_s3_region == "" || data_s3_access_key == "" || data_s3_secret_key == "" || data_s3_bucket == "") { throw new Error("Invalid Data S3 config"); } - s3c = new mod15.S3Client({ + s3c = new mod14.S3Client({ endPoint: data_s3_endpoint, port: data_s3_port, useSSL: data_s3_use_ssl, @@ -89800,49 +92416,49 @@ if (data_engine == "s3") { pathStyle: true }); } else { - await mod36.ensureDir(data_file_path); + await mod35.ensureDir(data_file_path); } ready = true; async function read2(folder, file) { - const path148 = `${data_file_path}/${folder}/${file}.json`; + const path146 = `${data_file_path}/${folder}/${file}.json`; if (data_engine == "s3") { - const res = await s3c.getObject(path148); + const res = await s3c.getObject(path146); if (res.status == 200) { return res.json(); } else { throw new Error(`S3 Error (${res.status})`); } } else { - await mod36.ensureDir(`${data_file_path}/${folder}`); - return JSON.parse(await Deno.readTextFile(path148)); + await mod35.ensureDir(`${data_file_path}/${folder}`); + return JSON.parse(await Deno.readTextFile(path146)); } } -async function write1(folder, file, value653) { - const text = JSON.stringify(value653); - const path149 = `${data_file_path}/${folder}/${file}.json`; +async function write1(folder, file, value657) { + const text = JSON.stringify(value657); + const path147 = `${data_file_path}/${folder}/${file}.json`; if (data_engine == "s3") { if (text == undefined) { - return await s3c.deleteObject(path149); + return await s3c.deleteObject(path147); } - await s3c.putObject(path149, text); + await s3c.putObject(path147, text); } else { - await mod36.ensureDir(`${data_file_path}/${folder}`); + await mod35.ensureDir(`${data_file_path}/${folder}`); if (text == undefined) { - return await Deno.remove(path149); + return await Deno.remove(path147); } - await Deno.writeTextFile(path149, text); + await Deno.writeTextFile(path147, text); } } -function setToValue(obj, pathArr, value654) { - let i320 = 0; - for(i320 = 0; i320 < pathArr.length - 1; i320++){ - obj = obj[pathArr[i320]]; - if (!obj[pathArr[i320 + 1]]) { - obj[pathArr[i320 + 1]] = {}; +function setToValue(obj, pathArr, value658) { + let i324 = 0; + for(i324 = 0; i324 < pathArr.length - 1; i324++){ + obj = obj[pathArr[i324]]; + if (!obj[pathArr[i324 + 1]]) { + obj[pathArr[i324 + 1]] = {}; } } - obj[pathArr[i320]] = value654; - if (value654 === null) delete obj[pathArr[i320]]; + obj[pathArr[i324]] = value658; + if (value658 === null) delete obj[pathArr[i324]]; } var RoleName; (function(RoleName1) { @@ -89855,23 +92471,23 @@ var ReservedRoomNames; ReservedRoomNames1["TeachersLounge"] = "Teacher's Lounge"; ReservedRoomNames1["StationX"] = "Station *"; })(ReservedRoomNames || (ReservedRoomNames = {})); -function can_create_class(e175) { - return config_class_creators.includes("*") || config_class_creators.includes(`*@${e175.split("@")[1]}`) || config_class_creators.filter((p70)=>p70.includes("/")).some((p71)=>new RegExp(p71, "g").test(e175)) || config_class_creators.includes(e175); +function can_create_class(e176) { + return config_class_creators.includes("*") || config_class_creators.includes(`*@${e176.split("@")[1]}`) || config_class_creators.filter((p71)=>p71.includes("/")).some((p72)=>new RegExp(p72, "g").test(e176)) || config_class_creators.includes(e176); } function validate_class(c81) { - return typeof c81.id == "string" && typeof c81.dateCreated == "number" && validate_email(c81.createdBy) && validate_name(c81.name) && typeof c81.members == "object" && Object.entries(c81.members).every((e176)=>Object.values(RoleName).includes(e176[0])) && Object.entries(c81.members).every((e177)=>e177[1].every((v42, _i, _a)=>validate_email(v42))) && Array.isArray(c81.modules) && c81.modules.every((v43, _i, _a)=>validate_module(v43)); + return typeof c81.id == "string" && typeof c81.dateCreated == "number" && validate_email(c81.createdBy) && validate_name(c81.name) && typeof c81.members == "object" && Object.entries(c81.members).every((e177)=>Object.values(RoleName).includes(e177[0])) && Object.entries(c81.members).every((e178)=>e178[1].every((v49, _i, _a)=>validate_email(v49))) && Array.isArray(c81.modules) && c81.modules.every((v50, _i, _a)=>validate_module(v50)); } function validate_user(u20) { return validate_email(u20.email) && typeof u20.dateCreated == "number" && validate_human_name(u20.displayName) && u20.memberships.every((m48)=>validate_url(m48.instance) && typeof m48.class_id == "string" && validate_name(m48.class_name) && Object.values(RoleName).includes(m48.role)); } -function validate_email(e178) { - return /^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(e178); +function validate_email(e179) { + return /^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(e179); } -function validate_name(n168) { - return typeof n168 == "string" && /^([A-Za-z0-9 ]{1,100})$/.test(n168); +function validate_name(n169) { + return typeof n169 == "string" && /^([A-Za-z0-9 ]{1,100})$/.test(n169); } -function validate_human_name(n169) { - return typeof n169 == "string" && /^[^§¡@£%§¶^&*€#±!_+¢•ªº«\\/<>?$:;|=.,]{1,50}$/.test(n169); +function validate_human_name(n170) { + return typeof n170 == "string" && /^[^§¡@£%§¶^&*€#±!_+¢•ªº«\\/<>?$:;|=.,]{1,50}$/.test(n170); } function validate_url(u22) { try { @@ -89930,7 +92546,7 @@ let jwt_private_key; if (smtp_hostname == "" || smtp_port == 0 || smtp_username == "" || smtp_password == "" || smtp_from == "") { smtpClient = { send: async function(params) { - await new Promise((resolve37)=>setTimeout(resolve37, 1000)); + await new Promise((resolve39)=>setTimeout(resolve39, 1000)); console.log("Email sent", params); } }; @@ -89985,7 +92601,7 @@ async function verifyToken(token, email) { ensureTokenValid(token, email); return [ await ensureUserExists(email), - await mod13.create({ + await mod12.create({ alg: jwt_public_key ? "RS512" : "HS512", typ: "JWT" }, { @@ -90040,7 +92656,7 @@ function ensureEmailValid(email) { } async function ensureJwtValid(jwt) { try { - return await mod13.verify(jwt, jwt_public_key ?? jwt_private_key); + return await mod12.verify(jwt, jwt_public_key ?? jwt_private_key); } catch (_error) { throw new Error(`JWT signiture validation error ${jwt}`); } @@ -90069,8 +92685,8 @@ const router = new mod6.Router().get("/jwtPublicKey", async (ctx)=>{ isNewbie, jwt ]; - } catch (error67) { - console.log(error67); + } catch (error78) { + console.log(error78); ctx.response.status = 401; } }); @@ -90258,6 +92874,7 @@ const router1 = new mod6.Router().get("/readUser", async (ctx)=>{ let connection_id = ""; if (live_class1.users[username]) { connection_id = nanoid(); + live_class1.users[username].connections ??= []; live_class1.users[username].connections.push({ id: connection_id, target: target @@ -90307,13 +92924,14 @@ const router1 = new mod6.Router().get("/readUser", async (ctx)=>{ delete classes[class_id]; } else if (!live_class.users[username]) { delete classes[class_id]?.users[username]; - } else if (live_class.users[username].connections.length == 1) { + } else if (live_class.users[username]?.connections?.length == 1) { delete classes[class_id]?.users[username]; Object.entries(live_class.rooms).filter((r89)=>r89[1].userLinked == username).forEach((r90)=>{ delete classes[class_id]?.rooms[r90[0]]; }); } else { - live_class.users[username].connections = live_class.users[username].connections.filter((c83)=>c83.id != connection_id); + live_class.users[username].connections = live_class.users[username].connections?.filter((c83)=>c83.id != connection_id); + live_class.users[username].connections ??= []; } await onClassUpdated(class_id); }); @@ -90373,7 +92991,7 @@ const router1 = new mod6.Router().get("/readUser", async (ctx)=>{ username, "handRaised" ]), - (v44)=>v44 === true || v44 === false, + (v51)=>v51 === true || v51 === false, ], ]; if (!valid_student_updates.some((u25)=>u25[0] == update_path_str && u25[1](update2.value))) { diff --git a/server/deps.ts b/server/deps.ts index 5c92b8c..51f50af 100644 --- a/server/deps.ts +++ b/server/deps.ts @@ -1,15 +1,15 @@ -export * as oak from "https://deno.land/x/oak/mod.ts"; +export * as oak from 'https://deno.land/x/oak/mod.ts' // @deno-types="https://deno.land/x/otpauth/dist/otpauth.d.ts" -export * as otpauth from "https://deno.land/x/otpauth/dist/otpauth.esm.js"; -export { SMTPClient } from "https://deno.land/x/denomailer/mod.ts"; -export * as log from "https://deno.land/std/log/mod.ts"; -export { crypto } from "https://deno.land/std/crypto/mod.ts"; -export * as djwt from "https://deno.land/x/djwt/mod.ts"; -export * as s3 from "https://deno.land/x/s3_lite_client@0.1.1/mod.ts"; -export * as s3_helpers from "https://deno.land/x/s3_lite_client@0.1.1/helpers.ts"; -export * as denodb from "https://deno.land/x/denodb/mod.ts"; -export * as base64 from "https://deno.land/std/encoding/base64.ts"; -export * as fs from "https://deno.land/std/fs/mod.ts"; -export { nanoid } from "https://deno.land/x/nanoid/mod.ts"; -export * as flags from "https://deno.land/std/flags/mod.ts"; -export * as path from "https://deno.land/std/path/mod.ts"; \ No newline at end of file +export * as otpauth from 'https://deno.land/x/otpauth/dist/otpauth.esm.js' +export { SMTPClient } from 'https://raw.githubusercontent.com/andre-dietrich/denomailer/main/mod.ts' +export * as log from 'https://deno.land/std/log/mod.ts' +export { crypto } from 'https://deno.land/std/crypto/mod.ts' +export * as djwt from 'https://deno.land/x/djwt/mod.ts' +export * as s3 from 'https://deno.land/x/s3_lite_client@0.1.1/mod.ts' +export * as s3_helpers from 'https://deno.land/x/s3_lite_client@0.1.1/helpers.ts' +export * as denodb from 'https://deno.land/x/denodb/mod.ts' +export * as base64 from 'https://deno.land/std/encoding/base64.ts' +export * as fs from 'https://deno.land/std/fs/mod.ts' +export { nanoid } from 'https://deno.land/x/nanoid/mod.ts' +export * as flags from 'https://deno.land/std/flags/mod.ts' +export * as path from 'https://deno.land/std/path/mod.ts' From 8cfc6c69d39ad1aa1e863548892ad187979fbc5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Fri, 16 Sep 2022 14:47:35 +0200 Subject: [PATCH 02/57] Add smpt_debug option --- dist/app.js | 4 ++++ docs/Deployment.md | 1 + server/auth.ts | 3 +++ server/env.ts | 1 + 4 files changed, 9 insertions(+) diff --git a/dist/app.js b/dist/app.js index 9082bb1..5b08f9e 100644 --- a/dist/app.js +++ b/dist/app.js @@ -92374,6 +92374,7 @@ const smtp_port = Number(getArg("SMTP_PORT") ?? "0"); const smtp_username = getArg("SMTP_USERNAME") ?? ""; const smtp_password = getArg("SMTP_PASSWORD") ?? ""; const smtp_from = getArg("SMTP_FROM") ?? ""; +const smtp_debug = getArg("SMTP_DEBUG") == "true"; const data_engine = getArg("DATA_ENGINE") ?? "file"; const data_file_path = getArg("DATA_FILE_PATH") ?? ".edrys"; const data_s3_endpoint = getArg("DATA_S3_ENDPOINT") ?? ""; @@ -92552,6 +92553,9 @@ if (smtp_hostname == "" || smtp_port == 0 || smtp_username == "" || smtp_passwor }; } else { smtpClient = new SMTPHandler({ + debug: { + log: smtp_debug + }, connection: { hostname: smtp_hostname, port: smtp_port, diff --git a/docs/Deployment.md b/docs/Deployment.md index 24c275c..cb2ad62 100644 --- a/docs/Deployment.md +++ b/docs/Deployment.md @@ -56,6 +56,7 @@ These for example include Gmail, SendGrid, Mailgun, or AWS SES. - `smtp-from`: email where messages will be sent from - `smtp-username` - `smtp-password` +- `smtp-debug`: true or false ### Data Storage diff --git a/server/auth.ts b/server/auth.ts index 6df6dd5..daf2f34 100644 --- a/server/auth.ts +++ b/server/auth.ts @@ -26,6 +26,9 @@ if ( }; } else { smtpClient = new SMTPClient({ + debug: { + log: env.smtp_debug + }, connection: { hostname: env.smtp_hostname, port: env.smtp_port, diff --git a/server/env.ts b/server/env.ts index 3cd7434..1ce9c9b 100644 --- a/server/env.ts +++ b/server/env.ts @@ -31,6 +31,7 @@ export const smtp_port = Number(getArg("SMTP_PORT") ?? "0"); export const smtp_username = getArg("SMTP_USERNAME") ?? ""; export const smtp_password = getArg("SMTP_PASSWORD") ?? ""; export const smtp_from = getArg("SMTP_FROM") ?? ""; +export const smtp_debug = getArg("SMTP_DEBUG") == "true"; /** * Data From a5193617040ff11ece0fd677638c00ac653d19eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Mon, 19 Sep 2022 13:18:59 +0200 Subject: [PATCH 03/57] updated bundle --- dist/app.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/dist/app.js b/dist/app.js index 5b08f9e..3a13e86 100644 --- a/dist/app.js +++ b/dist/app.js @@ -93041,9 +93041,9 @@ async function onClassUpdated(class_id) { ]); for (const user_id of Object.keys(classes[class_id]?.users || [])){ const user = live_class.users[user_id]; - const connections = user.connections; - if (!user) { - await connections.forEach(async (c84)=>await c84.target.close()); + const connections = user?.connections; + if (!user || !connections) { + continue; } let res = undefined; if (user.role == RoleName.Student) { @@ -93063,21 +93063,20 @@ async function onClassUpdated(class_id) { } else if (user.role == RoleName.Teacher) { res = live_class; } - connections.forEach((c85)=>c85.target.dispatchEvent(new mod6.ServerSentEvent("update", res))); + connections.forEach((c84)=>c84.target.dispatchEvent(new mod6.ServerSentEvent("update", res))); } return true; } function sendMessage(class_id, message) { const live_class = classes[class_id]; - if (!live_class) { - return false; - } + if (!live_class) return false; mod9.debug([ "Message to be sent", class_id, message ]); const user_from = live_class.users[message.from]; + if (!user_from) return true; const user_conns_in_room = Object.entries(classes[class_id]?.users || []).filter((u26)=>u26[1].room == user_from.room).flatMap((u27)=>u27[1].connections); for (const user_conn of user_conns_in_room){ user_conn.target.dispatchEvent(new mod6.ServerSentEvent("message", { From 2929e2a163d8ae60c5fb2435ed88b586c0634fbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Wed, 21 Sep 2022 15:28:53 +0200 Subject: [PATCH 04/57] Upgrade View to Karls changes --- dist/static/200.html | 4 ++-- dist/static/_nuxt/18bd5d7.js | 1 + dist/static/_nuxt/3a0ae68.js | 2 ++ dist/static/_nuxt/4ffa5eb.js | 1 + dist/static/_nuxt/5cc45c7.js | 1 + dist/static/_nuxt/6b65d9a.js | 2 ++ dist/static/_nuxt/8a7e23a.js | 1 + dist/static/_nuxt/8ee55e4.js | 1 + dist/static/_nuxt/LICENSES | 16 ++++++------- dist/static/_nuxt/b360acc.js | 1 + dist/static/_nuxt/c1fad92.js | 1 + dist/static/_nuxt/ea01a8b.js | 2 ++ dist/static/_nuxt/ec573ca.js | 1 + dist/static/_nuxt/efca28e.js | 1 + dist/static/_nuxt/f1f1a5f.js | 1 + dist/static/_nuxt/f8decf1.js | 1 + dist/static/_nuxt/img/logo-dark.1825cea.svg | 25 +++++++++++++++++++++ dist/static/_nuxt/img/logo.570d7ce.svg | 25 +++++++++++++++++++++ dist/static/index.html | 4 ++-- 19 files changed, 79 insertions(+), 12 deletions(-) create mode 100644 dist/static/_nuxt/18bd5d7.js create mode 100644 dist/static/_nuxt/3a0ae68.js create mode 100644 dist/static/_nuxt/4ffa5eb.js create mode 100644 dist/static/_nuxt/5cc45c7.js create mode 100644 dist/static/_nuxt/6b65d9a.js create mode 100644 dist/static/_nuxt/8a7e23a.js create mode 100644 dist/static/_nuxt/8ee55e4.js create mode 100644 dist/static/_nuxt/b360acc.js create mode 100644 dist/static/_nuxt/c1fad92.js create mode 100644 dist/static/_nuxt/ea01a8b.js create mode 100644 dist/static/_nuxt/ec573ca.js create mode 100644 dist/static/_nuxt/efca28e.js create mode 100644 dist/static/_nuxt/f1f1a5f.js create mode 100644 dist/static/_nuxt/f8decf1.js create mode 100644 dist/static/_nuxt/img/logo-dark.1825cea.svg create mode 100644 dist/static/_nuxt/img/logo.570d7ce.svg diff --git a/dist/static/200.html b/dist/static/200.html index ad36bd3..32d78af 100644 --- a/dist/static/200.html +++ b/dist/static/200.html @@ -1,9 +1,9 @@ - Home - Edrys + Home - Edrys
Loading...
- + diff --git a/dist/static/_nuxt/18bd5d7.js b/dist/static/_nuxt/18bd5d7.js new file mode 100644 index 0000000..0c7ddca --- /dev/null +++ b/dist/static/_nuxt/18bd5d7.js @@ -0,0 +1 @@ +!function(e){function r(data){for(var r,n,f=data[0],l=data[1],d=data[2],i=0,h=[];i1&&void 0!==arguments[1]?arguments[1]:"div",r=arguments.length>2?arguments[2]:void 0;return e.a.extend({name:r||t.replace(/__/g,"-"),functional:!0,props:{tag:{type:String,default:n}},render:function(n,r){var data=r.data,o=r.props,e=r.children;return data.staticClass="".concat(t," ").concat(data.staticClass||"").trim(),n(o.tag,data,e)}})}function c(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]&&arguments[3],e=function e(l){r(l),t.removeEventListener(n,e,o)};t.addEventListener(n,e,o)}var m=!1;try{if("undefined"!=typeof window){var d=Object.defineProperty({},"passive",{get:function(){m=!0}});window.addEventListener("testListener",d,d),window.removeEventListener("testListener",d,d)}}catch(t){console.warn(t)}function v(t,n,r,o){t.addEventListener(n,r,!!m&&o)}function f(t,path,n){var r=path.length-1;if(r<0)return void 0===t?n:t;for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:"px";return null==t||""===t?void 0:isNaN(+t)?String(t):"".concat(Number(t)).concat(n)}function k(t){return(t||"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function O(t){return null!==t&&"object"===Object(o.a)(t)}var j=Object.freeze({enter:13,tab:9,delete:46,esc:27,space:32,up:38,down:40,left:37,right:39,end:35,home:36,del:46,backspace:8,insert:45,pageup:33,pagedown:34,shift:16});function S(t,n){var component=t.$vuetify.icons.component;if(n.startsWith("$")){var r=h(t,"$vuetify.icons.values.".concat(n.split("$").pop().split(".").pop()),n);if("string"!=typeof r)return r;n=r}return null==component?n:{component:component,props:{icon:n}}}function C(t){return Object.keys(t)}var $=/-(\w)/g,P=function(t){return t.replace($,(function(t,n){return n?n.toUpperCase():""}))};function E(t){return t.charAt(0).toUpperCase()+t.slice(1)}function z(t){return null!=t?Array.isArray(t)?t:[t]:[]}function L(t,n,r){return t.$slots.hasOwnProperty(n)&&t.$scopedSlots.hasOwnProperty(n)&&t.$scopedSlots[n].name?r?"v-slot":"scoped":t.$slots.hasOwnProperty(n)?"normal":t.$scopedSlots.hasOwnProperty(n)?"scoped":void 0}function M(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"default",data=arguments.length>2?arguments[2]:void 0,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return t.$scopedSlots.hasOwnProperty(n)?t.$scopedSlots[n](data instanceof Function?data():data):!t.$slots.hasOwnProperty(n)||data&&!r?void 0:t.$slots[n]}function A(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.max(n,Math.min(r,t))}function D(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"0";return t+r.repeat(Math.max(0,n-t.length))}function T(t){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,r=[],o=0;o1&&void 0!==arguments[1]&&arguments[1],base=n?1024:1e3;if(t=base&&o0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in t){var r=source[n],o=t[n];O(r)&&O(o)?source[n]=R(r,o):source[n]=o}return source}function I(t){if(t.composedPath)return t.composedPath();for(var path=[],n=t.target;n;){if(path.push(n),"HTML"===n.tagName)return path.push(document),path.push(window),path;n=n.parentElement}return path}},,,,,function(t,n,r){"use strict";r.d(n,"k",(function(){return y})),r.d(n,"m",(function(){return w})),r.d(n,"l",(function(){return _})),r.d(n,"e",(function(){return k})),r.d(n,"b",(function(){return O})),r.d(n,"s",(function(){return j})),r.d(n,"g",(function(){return S})),r.d(n,"h",(function(){return C})),r.d(n,"d",(function(){return $})),r.d(n,"r",(function(){return P})),r.d(n,"j",(function(){return E})),r.d(n,"t",(function(){return L})),r.d(n,"o",(function(){return A})),r.d(n,"q",(function(){return D})),r.d(n,"f",(function(){return T})),r.d(n,"c",(function(){return B})),r.d(n,"i",(function(){return R})),r.d(n,"p",(function(){return I})),r.d(n,"a",(function(){return Z})),r.d(n,"v",(function(){return Y})),r.d(n,"n",(function(){return X})),r.d(n,"u",(function(){return K}));r(65),r(12),r(72),r(84),r(15),r(11),r(16);var o=r(17),e=r(26),l=r(2),c=r(21),m=(r(98),r(4),r(14),r(330),r(42),r(33),r(60),r(13),r(53),r(64),r(59),r(27),r(71),r(97),r(254),r(301),r(74),r(99),r(164),r(38),r(54),r(1)),d=r(80);function v(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function f(t){for(var i=1;i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function h(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i1&&void 0!==arguments[1]?arguments[1]:[],o=t.$children||[],e=x(o);try{for(e.s();!(n=e.n()).done;){var l=n.value;l.$fetch?r.push(l):l.$children&&k(l,r)}}catch(t){e.e(t)}finally{e.f()}return r}function O(t,n){if(n||!t.options.__hasNuxtData){var r=t.options._originDataFn||t.options.data||function(){return{}};t.options._originDataFn=r,t.options.data=function(){var data=r.call(this,this);return this.$ssrContext&&(n=this.$ssrContext.asyncData[t.cid]),f(f({},data),n)},t.options.__hasNuxtData=!0,t._Ctor&&t._Ctor.options&&(t._Ctor.options.data=t.options.data)}}function j(t){return t.options&&t._Ctor===t||(t.options?(t._Ctor=t,t.extendOptions=t.options):(t=m.a.extend(t))._Ctor=t,!t.options.name&&t.options.__file&&(t.options.name=t.options.__file)),t}function S(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"components";return Array.prototype.concat.apply([],t.matched.map((function(t,o){return Object.keys(t[r]).map((function(e){return n&&n.push(o),t[r][e]}))})))}function C(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return S(t,n,"instances")}function $(t,n){return Array.prototype.concat.apply([],t.matched.map((function(t,r){return Object.keys(t.components).reduce((function(o,e){return t.components[e]?o.push(n(t.components[e],t.instances[e],t,e,r)):delete t.components[e],o}),[])})))}function P(t,n){return Promise.all($(t,function(){var t=Object(e.a)(regeneratorRuntime.mark((function t(r,o,e,l){var c,m;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if("function"!=typeof r||r.options){t.next=11;break}return t.prev=1,t.next=4,r();case 4:r=t.sent,t.next=11;break;case 7:throw t.prev=7,t.t0=t.catch(1),t.t0&&"ChunkLoadError"===t.t0.name&&"undefined"!=typeof window&&window.sessionStorage&&(c=Date.now(),(!(m=parseInt(window.sessionStorage.getItem("nuxt-reload")))||m+6e40){var o=n[n.length-1];if(o.constructor===t.constructor){r++,t=t.$parent;continue}r>0&&(n[n.length-1]=[o,r],r=0)}n.push(t),t=t.$parent}return"\n\nfound in\n\n"+n.map((function(t,i){return"".concat(0===i?"---\x3e ":" ".repeat(5+2*i)).concat(Array.isArray(t)?"".concat(x(t[0]),"... (").concat(t[1]," recursive calls)"):x(t))})).join("\n")}return"\n\n(found in ".concat(x(t),")")}(n):"")}}function l(t,n,r){var o=e(t,n,r);null!=o&&console.warn(o)}function c(t,n,r){var o=e(t,n,r);null!=o&&console.error(o)}function m(t,n,r,o){l("[UPGRADE] '".concat(t,"' is deprecated, use '").concat(n,"' instead."),r,o)}function d(t,n,r,o){c("[BREAKING] '".concat(t,"' has been removed, use '").concat(n,"' instead. For more information, see the upgrade guide https://github.com/vuetifyjs/vuetify/releases/tag/v2.0.0#user-content-upgrade-guide"),r,o)}function v(t,n,r){l("[REMOVED] '".concat(t,"' has been removed. You can safely omit it."),n,r)}var f=/(?:^|[-_])(\w)/g;function x(t,n){if(t.$root===t)return"";var r="function"==typeof t&&null!=t.cid?t.options:t._isVue?t.$options||t.constructor.options:t||{},o=r.name||r._componentTag,e=r.__file;if(!o&&e){var l=e.match(/([^/\\]+)\.vue$/);o=l&&l[1]}return(o?"<".concat(o.replace(f,(function(t){return t.toUpperCase()})).replace(/[-_]/g,""),">"):"")+(e&&!1!==n?" at ".concat(e):"")}},,,,,,,,,,,function(t,n,r){"use strict";t.exports=function(t){var n=[];return n.toString=function(){return this.map((function(n){var content=function(t,n){var content=t[1]||"",r=t[3];if(!r)return content;if(n&&"function"==typeof btoa){var o=(l=r,c=btoa(unescape(encodeURIComponent(JSON.stringify(l)))),data="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(c),"/*# ".concat(data," */")),e=r.sources.map((function(source){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(source," */")}));return[content].concat(e).concat([o]).join("\n")}var l,c,data;return[content].join("\n")}(n,t);return n[2]?"@media ".concat(n[2]," {").concat(content,"}"):content})).join("")},n.i=function(t,r,o){"string"==typeof t&&(t=[[null,t,""]]);var e={};if(o)for(var i=0;in.parts.length&&(r.parts.length=n.parts.length)}else{var e=[];for(o=0;o1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof data.style?(Object(c.b)("style must be an object",this),data):"string"==typeof data.class?(Object(c.b)("class must be an object",this),data):(Object(m.d)(t)?data.style=v(v({},data.style),{},{"background-color":"".concat(t),"border-color":"".concat(t)}):t&&(data.class=v(v({},data.class),{},Object(e.a)({},t,!0))),data)},setTextColor:function(t){var data=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("string"==typeof data.style)return Object(c.b)("style must be an object",this),data;if("string"==typeof data.class)return Object(c.b)("class must be an object",this),data;if(Object(m.d)(t))data.style=v(v({},data.style),{},{color:"".concat(t),"caret-color":"".concat(t)});else if(t){var n=t.toString().trim().split(" ",2),r=Object(o.a)(n,2),l=r[0],d=r[1];data.class=v(v({},data.class),{},Object(e.a)({},l+"--text",!0)),d&&(data.class["text--"+d]=!0)}return data}}})},,,,,,,function(t,n,r){"use strict";r(13),r(12),r(15),r(11),r(16);var o=r(2),e=(r(22),r(14),r(4),r(60),r(27),r(67),r(33),r(397),r(120)),l=r(176),c=(r(401),r(39)),m=r(25),d=r(6),v=r(0),f=Object(d.a)(c.a,m.a).extend({name:"v-messages",props:{value:{type:Array,default:function(){return[]}}},methods:{genChildren:function(){return this.$createElement("transition-group",{staticClass:"v-messages__wrapper",attrs:{name:"message-transition",tag:"div"}},this.value.map(this.genMessage))},genMessage:function(t,n){return this.$createElement("div",{staticClass:"v-messages__message",key:n},Object(v.m)(this,"default",{message:t,key:n})||[t])}},render:function(t){return t("div",this.setTextColor(this.color,{staticClass:"v-messages",class:this.themeClasses}),[this.genChildren()])}}),x=r(93),h=r(175),y=r(100);function w(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}var _=Object(d.a)(x.a,h.a).extend().extend({name:"v-input",inheritAttrs:!1,props:{appendIcon:String,backgroundColor:{type:String,default:""},dense:Boolean,height:[Number,String],hideDetails:[Boolean,String],hideSpinButtons:Boolean,hint:String,id:String,label:String,loading:Boolean,persistentHint:Boolean,prependIcon:String,value:null},data:function(){return{lazyValue:this.value,hasMouseDown:!1}},computed:{classes:function(){return function(t){for(var i=1;i0},hasHint:function(){return!this.hasMessages&&!!this.hint&&(this.persistentHint||this.isFocused)},hasLabel:function(){return!(!this.$slots.label&&!this.label)},internalValue:{get:function(){return this.lazyValue},set:function(t){this.lazyValue=t,this.$emit(this.$_modelEvent,t)}},isDirty:function(){return!!this.lazyValue},isLabelActive:function(){return this.isDirty},messagesToDisplay:function(){var t=this;return this.hasHint?[this.hint]:this.hasMessages?this.validations.map((function(n){if("string"==typeof n)return n;var r=n(t.internalValue);return"string"==typeof r?r:""})).filter((function(t){return""!==t})):[]},showDetails:function(){return!1===this.hideDetails||"auto"===this.hideDetails&&this.hasDetails}},watch:{value:function(t){this.lazyValue=t}},beforeCreate:function(){this.$_modelEvent=this.$options.model&&this.$options.model.event||"input"},methods:{genContent:function(){return[this.genPrependSlot(),this.genControl(),this.genAppendSlot()]},genControl:function(){return this.$createElement("div",{staticClass:"v-input__control",attrs:{title:this.attrs$.title}},[this.genInputSlot(),this.genMessages()])},genDefaultSlot:function(){return[this.genLabel(),this.$slots.default]},genIcon:function(t,n){var r=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l=this["".concat(t,"Icon")],c="click:".concat(Object(v.q)(t)),m=!(!this.listeners$[c]&&!n),data=Object(y.a)({attrs:{"aria-label":m?Object(v.q)(t).split("-")[0]+" icon":void 0,color:this.validationState,dark:this.dark,disabled:this.isDisabled,light:this.light},on:m?{click:function(t){t.preventDefault(),t.stopPropagation(),r.$emit(c,t),n&&n(t)},mouseup:function(t){t.preventDefault(),t.stopPropagation()}}:void 0},o);return this.$createElement("div",{staticClass:"v-input__icon",class:t?"v-input__icon--".concat(Object(v.q)(t)):void 0},[this.$createElement(e.a,data,l)])},genInputSlot:function(){return this.$createElement("div",this.setBackgroundColor(this.backgroundColor,{staticClass:"v-input__slot",style:{height:Object(v.g)(this.height)},on:{click:this.onClick,mousedown:this.onMouseDown,mouseup:this.onMouseUp},ref:"input-slot"}),[this.genDefaultSlot()])},genLabel:function(){return this.hasLabel?this.$createElement(l.a,{props:{color:this.validationState,dark:this.dark,disabled:this.isDisabled,focused:this.hasState,for:this.computedId,light:this.light}},this.$slots.label||this.label):null},genMessages:function(){var t=this;return this.showDetails?this.$createElement(f,{props:{color:this.hasHint?"":this.validationState,dark:this.dark,light:this.light,value:this.messagesToDisplay},attrs:{role:this.hasMessages?"alert":null},scopedSlots:{default:function(n){return Object(v.m)(t,"message",n)}}}):null},genSlot:function(t,n,slot){if(!slot.length)return null;var r="".concat(t,"-").concat(n);return this.$createElement("div",{staticClass:"v-input__".concat(r),ref:r},slot)},genPrependSlot:function(){var slot=[];return this.$slots.prepend?slot.push(this.$slots.prepend):this.prependIcon&&slot.push(this.genIcon("prepend")),this.genSlot("prepend","outer",slot)},genAppendSlot:function(){var slot=[];return this.$slots.append?slot.push(this.$slots.append):this.appendIcon&&slot.push(this.genIcon("append")),this.genSlot("append","outer",slot)},onClick:function(t){this.$emit("click",t)},onMouseDown:function(t){this.hasMouseDown=!0,this.$emit("mousedown",t)},onMouseUp:function(t){this.hasMouseDown=!1,this.$emit("mouseup",t)}},render:function(t){return t("div",this.setTextColor(this.validationState,{staticClass:"v-input",class:this.classes}),this.genContent())}});n.a=_},,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(36),e=r(37),l=function(){function t(){Object(o.a)(this,t),this.framework={}}return Object(e.a)(t,[{key:"init",value:function(t,n){}}]),t}()},,function(t,n,r){"use strict";r(13),r(12),r(14),r(4),r(15),r(11),r(16);var o=r(2),e=(r(357),r(93)),l=r(39),c=r(169),m=r(167),d=r(222),v=r(25),f=r(6);function x(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function h(t){for(var i=1;i"],["manual-scroll",''],["clipped-left",""],["clipped-right",""],["inverted-scroll",""],["scroll-off-screen",""],["scroll-target",""],["scroll-threshold",""],["card",""]].forEach((function(n){var r=Object(o.a)(n,2),e=r[0],l=r[1];t.$attrs.hasOwnProperty(e)&&Object(d.a)(e,l,t)}))},methods:{genBackground:function(){var t={height:Object(m.g)(this.computedHeight),src:this.src},image=this.$scopedSlots.img?this.$scopedSlots.img({props:t}):this.$createElement(c.a,{props:t});return this.$createElement("div",{staticClass:"v-toolbar__image"},[image])},genContent:function(){return this.$createElement("div",{staticClass:"v-toolbar__content",style:{height:Object(m.g)(this.computedContentHeight)}},Object(m.m)(this))},genExtension:function(){return this.$createElement("div",{staticClass:"v-toolbar__extension",style:{height:Object(m.g)(this.extensionHeight)}},Object(m.m)(this,"extension"))}},render:function(t){this.isExtended=this.extended||!!this.$scopedSlots.extension;var n=[this.genContent()],data=this.setBackgroundColor(this.color,{class:this.classes,style:this.styles,on:this.$listeners});return this.isExtended&&n.push(this.genExtension()),(this.src||this.$scopedSlots.img)&&n.unshift(this.genBackground()),t(this.tag,data,n)}})},,,function(t,n,r){"use strict";r.d(n,"b",(function(){return l}));var o=r(2),e=r(1);function l(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"value",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"input";return e.a.extend({name:"toggleable",model:{prop:n,event:r},props:Object(o.a)({},n,{required:!1}),data:function(){return{isActive:!!this[n]}},watch:(t={},Object(o.a)(t,n,(function(t){this.isActive=!!t})),Object(o.a)(t,"isActive",(function(t){!!t!==this[n]&&this.$emit(r,t)})),t)})}var c=l();n.a=c},,,,,,,,,function(t,n,r){"use strict";r.d(n,"d",(function(){return e})),r.d(n,"b",(function(){return l})),r.d(n,"c",(function(){return c})),r.d(n,"a",(function(){return m}));r(13),r(12),r(14),r(15),r(11),r(16),r(2),r(21),r(27),r(185),r(99),r(60),r(67),r(42),r(71),r(83),r(4),r(74),r(164),r(33),r(59),r(97),r(147);var o=r(8);r(0),r(95);function e(t){return!!t&&!!t.match(/^(#|var\(--|(rgb|hsl)a?\()/)}function l(t){var n;if("number"==typeof t)n=t;else{if("string"!=typeof t)throw new TypeError("Colors can only be numbers or strings, recieved ".concat(null==t?t:t.constructor.name," instead"));var r="#"===t[0]?t.substring(1):t;3===r.length&&(r=r.split("").map((function(t){return t+t})).join("")),6!==r.length&&Object(o.c)("'".concat(t,"' is not a valid rgb color")),n=parseInt(r,16)}return n<0?(Object(o.c)("Colors cannot be negative: '".concat(t,"'")),n=0):(n>16777215||isNaN(n))&&(Object(o.c)("'".concat(t,"' is not a valid rgb color")),n=16777215),n}function c(t){var n=t.toString(16);return n.length<6&&(n="0".repeat(6-n.length)+n),"#"+n}function m(t){return c(l(t))}},,,,,,,,,function(t,n,r){"use strict";var o=r(17);r(4);function e(t,n,r){var o,e=null==(o=t._observe)?void 0:o[r.context._uid];e&&(e.observer.unobserve(t),delete t._observe[r.context._uid])}var l={inserted:function(t,n,r){if("undefined"!=typeof window&&"IntersectionObserver"in window){var l=n.modifiers||{},c=n.value,m="object"===Object(o.a)(c)?c:{handler:c,options:{}},d=m.handler,v=m.options,f=new IntersectionObserver((function(){var o,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],m=arguments.length>1?arguments[1]:void 0,v=null==(o=t._observe)?void 0:o[r.context._uid];if(v){var f=c.some((function(t){return t.isIntersecting}));!d||l.quiet&&!v.init||l.once&&!f&&!v.init||d(c,m,f),f&&l.once?e(t,n,r):v.init=!0}}),v);t._observe=Object(t._observe),t._observe[r.context._uid]={init:!1,observer:f},f.observe(t)}},unbind:e};n.a=l},,function(t,n,r){"use strict";r.d(n,"b",(function(){return _t})),r.d(n,"a",(function(){return z.a}));var o={};r.r(o),r.d(o,"Module",(function(){return W})),r.d(o,"Modules",(function(){return U})),r.d(o,"Settings",(function(){return Z})),r.d(o,"Student",(function(){return Y})),r.d(o,"Teacher",(function(){return X}));r(13),r(12),r(14),r(15),r(11),r(16);var e=r(26),l=r(2),c=(r(98),r(42),r(4),r(60),r(27),r(71),r(1)),m=r(137),d=r(290),v=r(210),f=r.n(v),x=r(119),h=r.n(x),y=(r(53),r(64),r(211)),w=r(80),_=r(5);"scrollRestoration"in window.history&&(Object(_.u)("manual"),window.addEventListener("beforeunload",(function(){Object(_.u)("auto")})),window.addEventListener("load",(function(){Object(_.u)("manual")})));function k(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function O(t){for(var i=1;i1&&void 0!==arguments[1]?arguments[1]:j,r=arguments.length>2?arguments[2]:void 0;return o.call(this,t,n,r)};var e=r.resolve.bind(r);return r.resolve=function(t,n,r){return"string"==typeof t&&(t=Object(w.c)(t)),e(t,n,r)},r}var $={name:"NuxtChild",functional:!0,props:{nuxtChildKey:{type:String,default:""},keepAlive:Boolean,keepAliveProps:{type:Object,default:void 0}},render:function(t,n){var r=n.parent,data=n.data,o=n.props,e=r.$createElement;data.nuxtChild=!0;for(var l=r,c=r.$nuxt.nuxt.transitions,m=r.$nuxt.nuxt.defaultTransition,d=0;r;)r.$vnode&&r.$vnode.data.nuxtChild&&d++,r=r.$parent;data.nuxtChildDepth=d;var v=c[d]||m,f={};P.forEach((function(t){void 0!==v[t]&&(f[t]=v[t])}));var x={};E.forEach((function(t){"function"==typeof v[t]&&(x[t]=v[t].bind(l))}));var h=x.beforeEnter;if(x.beforeEnter=function(t){if(window.$nuxt.$nextTick((function(){window.$nuxt.$emit("triggerScroll")})),h)return h.call(l,t)},!1===v.css){var y=x.leave;(!y||y.length<2)&&(x.leave=function(t,n){y&&y.call(l,t),l.$nextTick(n)})}var w=e("routerView",data);return o.keepAlive&&(w=e("keep-alive",{props:o.keepAliveProps},[w])),e("transition",{props:f,on:x},[w])}},P=["name","mode","appear","css","type","duration","enterClass","leaveClass","appearClass","enterActiveClass","enterActiveClass","leaveActiveClass","appearActiveClass","enterToClass","leaveToClass","appearToClass"],E=["beforeEnter","enter","afterEnter","enterCancelled","beforeLeave","leave","afterLeave","leaveCancelled","beforeAppear","appear","afterAppear","appearCancelled"],z=r(94),L=r(21),M=(r(74),{name:"Nuxt",components:{NuxtChild:$,NuxtError:z.a},props:{nuxtChildKey:{type:String,default:void 0},keepAlive:Boolean,keepAliveProps:{type:Object,default:void 0},name:{type:String,default:"default"}},errorCaptured:function(t){this.displayingNuxtError&&(this.errorFromNuxtError=t,this.$forceUpdate())},computed:{routerViewKey:function(){if(void 0!==this.nuxtChildKey||this.$route.matched.length>1)return this.nuxtChildKey||Object(_.c)(this.$route.matched[0].path)(this.$route.params);var t=Object(L.a)(this.$route.matched,1)[0];if(!t)return this.$route.path;var n=t.components.default;if(n&&n.options){var r=n.options;if(r.key)return"function"==typeof r.key?r.key(this.$route):r.key}return/\/$/.test(t.path)?this.$route.path:this.$route.path.replace(/\/$/,"")}},beforeCreate:function(){c.a.util.defineReactive(this,"nuxt",this.$root.$options.nuxt)},render:function(t){var n=this;return this.nuxt.err?this.errorFromNuxtError?(this.$nextTick((function(){return n.errorFromNuxtError=!1})),t("div",{},[t("h2","An error occurred while showing the error page"),t("p","Unfortunately an error occurred and while showing the error page another error occurred"),t("p","Error details: ".concat(this.errorFromNuxtError.toString())),t("nuxt-link",{props:{to:"/"}},"Go back to home")])):(this.displayingNuxtError=!0,this.$nextTick((function(){return n.displayingNuxtError=!1})),t(z.a,{props:{error:this.nuxt.err}})):t("NuxtChild",{key:this.routerViewKey,props:this.$props})}}),A=(r(59),r(65),r(72),r(84),r(43),{name:"NuxtLoading",data:function(){return{percent:0,show:!1,canSucceed:!0,reversed:!1,skipTimerCount:0,rtl:!1,throttle:200,duration:5e3,continuous:!1}},computed:{left:function(){return!(!this.continuous&&!this.rtl)&&(this.rtl?this.reversed?"0px":"auto":this.reversed?"auto":"0px")}},beforeDestroy:function(){this.clear()},methods:{clear:function(){clearInterval(this._timer),clearTimeout(this._throttle),this._timer=null},start:function(){var t=this;return this.clear(),this.percent=0,this.reversed=!1,this.skipTimerCount=0,this.canSucceed=!0,this.throttle?this._throttle=setTimeout((function(){return t.startTimer()}),this.throttle):this.startTimer(),this},set:function(t){return this.show=!0,this.canSucceed=!0,this.percent=Math.min(100,Math.max(0,Math.floor(t))),this},get:function(){return this.percent},increase:function(t){return this.percent=Math.min(100,Math.floor(this.percent+t)),this},decrease:function(t){return this.percent=Math.max(0,Math.floor(this.percent-t)),this},pause:function(){return clearInterval(this._timer),this},resume:function(){return this.startTimer(),this},finish:function(){return this.percent=this.reversed?0:100,this.hide(),this},hide:function(){var t=this;return this.clear(),setTimeout((function(){t.show=!1,t.$nextTick((function(){t.percent=0,t.reversed=!1}))}),500),this},fail:function(t){return this.canSucceed=!1,this},startTimer:function(){var t=this;this.show||(this.show=!0),void 0===this._cut&&(this._cut=1e4/Math.floor(this.duration)),this._timer=setInterval((function(){t.skipTimerCount>0?t.skipTimerCount--:(t.reversed?t.decrease(t._cut):t.increase(t._cut),t.continuous&&(t.percent>=100||t.percent<=0)&&(t.skipTimerCount=1,t.reversed=!t.reversed))}),100)}},render:function(t){var n=t(!1);return this.show&&(n=t("div",{staticClass:"nuxt-progress",class:{"nuxt-progress-notransition":this.skipTimerCount>0,"nuxt-progress-failed":!this.canSucceed},style:{width:this.percent+"%",left:this.left}})),n}}),D=(r(338),r(107)),T=Object(D.a)(A,undefined,undefined,!1,null,null,null).exports,B=(r(340),r(294));function R(t,n){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,n){if(!t)return;if("string"==typeof t)return I(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return I(t,n)}(t))||n&&t&&"number"==typeof t.length){r&&(t=r);var i=0,o=function(){};return{s:o,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function I(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i0},isPreview:function(){return Boolean(this.$options.previewData)}},methods:{refreshOnlineStatus:function(){void 0===window.navigator.onLine?this.isOnline=!0:this.isOnline=window.navigator.onLine},refresh:function(){var t=this;return Object(e.a)(regeneratorRuntime.mark((function n(){var r,o;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if((r=Object(_.h)(t.$route)).length){n.next=3;break}return n.abrupt("return");case 3:return t.$loading.start(),o=r.map((function(n){var p=[];if(n.$options.fetch&&n.$options.fetch.length&&p.push(Object(_.q)(n.$options.fetch,t.context)),n.$fetch)p.push(n.$fetch());else{var r,o=R(Object(_.e)(n.$vnode.componentInstance));try{for(o.s();!(r=o.n()).done;){var component=r.value;p.push(component.$fetch())}}catch(t){o.e(t)}finally{o.f()}}return n.$options.asyncData&&p.push(Object(_.q)(n.$options.asyncData,t.context).then((function(t){for(var r in t)c.a.set(n.$data,r,t[r])}))),Promise.all(p)})),n.prev=5,n.next=8,Promise.all(o);case 8:n.next=15;break;case 10:n.prev=10,n.t0=n.catch(5),t.$loading.fail(n.t0),Object(_.k)(n.t0),t.error(n.t0);case 15:t.$loading.finish();case 16:case"end":return n.stop()}}),n,null,[[5,10]])})))()},errorChanged:function(){if(this.nuxt.err){this.$loading&&(this.$loading.fail&&this.$loading.fail(this.nuxt.err),this.$loading.finish&&this.$loading.finish());var t=(z.a.options||z.a).layout;"function"==typeof t&&(t=t(this.context)),this.setLayout(t)}},setLayout:function(t){return t&&N["_"+t]||(t="default"),this.layoutName=t,this.layout=N["_"+t],this.layout},loadLayout:function(t){return t&&N["_"+t]||(t="default"),Promise.resolve(N["_"+t])}},components:{NuxtLoading:T}};c.a.use(m.a);var F={};(F=function(t,n){if((t=t.default||t).commit)throw new Error("[nuxt] ".concat(n," should export a method that returns a Vuex instance."));return"function"!=typeof t&&(t=Object.assign({},t)),function(t,n){if(t.state&&"function"!=typeof t.state){console.warn("'state' should be a method that returns an object in ".concat(n));var r=Object.assign({},t.state);t=Object.assign({},t,{state:function(){return r}})}return t}(t,n)}(r(409),"store/index.js")).modules=F.modules||{};var H=F instanceof Function?F:function(){return new m.a.Store(Object.assign({strict:!1},F))};r(38),r(54);var W=function(){return Promise.all([r.e(0),r.e(6)]).then(r.bind(null,498)).then((function(t){return K(t.default||t)}))},U=function(){return Promise.all([r.e(0),r.e(7)]).then(r.bind(null,499)).then((function(t){return K(t.default||t)}))},Z=function(){return Promise.all([r.e(0),r.e(1),r.e(2),r.e(8)]).then(r.bind(null,513)).then((function(t){return K(t.default||t)}))},Y=function(){return Promise.all([r.e(0),r.e(1),r.e(9)]).then(r.bind(null,512)).then((function(t){return K(t.default||t)}))},X=function(){return Promise.all([r.e(0),r.e(1),r.e(2),r.e(3)]).then(r.bind(null,536)).then((function(t){return K(t.default||t)}))};function K(t){if(!t||!t.functional)return t;var n=Array.isArray(t.props)?t.props:Object.keys(t.props||{});return{render:function(r){var o={},e={};for(var l in this.$attrs)n.includes(l)?e[l]=this.$attrs[l]:o[l]=this.$attrs[l];return r(t,{on:this.$listeners,attrs:o,props:e,scopedSlots:this.$scopedSlots},this.$slots.default)}}}for(var Q in o)c.a.component(Q,o[Q]),c.a.component("Lazy"+Q,o[Q]);var G=r(138),J={theme:{dark:!1,options:{customProperties:!0},themes:{dark:{primary:"#1976d2",accent:"#424242",secondary:"#ff8f00",info:"#26a69a",warning:"#ffc107",error:"#dd2c00",success:"#00e676"},light:{primary:"#1976d2",accent:"#424242",secondary:"#ff8f00",info:"#26a69a",warning:"#ffc107",error:"#dd2c00",success:"#00e676",background:"#fafafa"}}}};c.a.use(G.a,{});var tt=function(t){var n="function"==typeof J?J(t):J;n.icons=n.icons||{},n.icons.iconfont="mdi";var r=new G.a(n);t.app.vuetify=r,t.$vuetify=r.framework},it=r(140),nt=r.n(it),at=r(292),ot=r.n(at);function et(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function pt(t){for(var i=1;i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function ct(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i2&&void 0!==arguments[2]?arguments[2]:"common",e=lt(Array.isArray(o)?o:[o]);try{for(e.s();!(r=e.n()).done;){var l=r.value;n?this.defaults.headers[l][t]=n:delete this.defaults.headers[l][t]}}catch(t){e.e(t)}finally{e.f()}},setToken:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"common",o=t?(n?n+" ":"")+t:null;this.setHeader("Authorization",o,r)},onRequest:function(t){this.interceptors.request.use((function(n){return t(n)||n}))},onResponse:function(t){this.interceptors.response.use((function(n){return t(n)||n}))},onRequestError:function(t){this.interceptors.request.use(void 0,(function(n){return t(n)||Promise.reject(n)}))},onResponseError:function(t){this.interceptors.response.use(void 0,(function(n){return t(n)||Promise.reject(n)}))},onError:function(t){this.onRequestError(t),this.onResponseError(t)},create:function(t){return ft(ot()(t,this.defaults))}},st=function(){var t=vt[gt];mt["$"+t]=function(){return this[t].apply(this,arguments).then((function(t){return t&&t.data}))}},gt=0,vt=["request","delete","get","head","options","post","put","patch"];gt has been deprecated and will be removed in Nuxt 3, please use instead")),h.a.render(t,n)}})),c.a.component($.name,$),c.a.component("NChild",$),c.a.component(M.name,M),Object.defineProperty(c.a.prototype,"$nuxt",{get:function(){var t=this.$root.$options.$nuxt;return t||"undefined"==typeof window?t:window.$nuxt},configurable:!0}),c.a.use(d.a,{keyName:"head",attribute:"data-n-head",ssrAttribute:"data-n-head-ssr",tagIDKeyName:"hid"});var wt={name:"page",mode:"out-in",appear:!0,appearClass:"appear",appearActiveClass:"appear-active",appearToClass:"appear-to"};m.a.Store.prototype.registerModule;function _t(t){return kt.apply(this,arguments)}function kt(){return kt=Object(e.a)(regeneratorRuntime.mark((function t(n){var r,o,l,m,d,v,path,f,x=arguments;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return f=function(t,n){if(!t)throw new Error("inject(key, value) has no key provided");if(void 0===n)throw new Error("inject('".concat(t,"', value) has no value provided"));m[t="$"+t]=n,m.context[t]||(m.context[t]=n),l[t]=m[t];var r="__nuxt_"+t+"_installed__";c.a[r]||(c.a[r]=!0,c.a.use((function(){Object.prototype.hasOwnProperty.call(c.a.prototype,t)||Object.defineProperty(c.a.prototype,t,{get:function(){return this.$root.$options[t]}})})))},r=x.length>1&&void 0!==x[1]?x[1]:{},t.next=4,C(0,r);case 4:return o=t.sent,(l=H(n)).$router=o,m=yt({head:{titleTemplate:"%s - Edrys",title:"Home",meta:[{charset:"utf-8"},{name:"viewport",content:"width=device-width, initial-scale=1"},{hid:"description",name:"description",content:""},{name:"format-detection",content:"telephone=no"}],link:[{rel:"icon",type:"image/x-icon",href:"/favicon.png"},{rel:"stylesheet",type:"text/css",href:"https://fonts.googleapis.com/css?family=MainFont:100,300,400,500,700,900&display=swap"},{rel:"stylesheet",type:"text/css",href:"https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"}],style:[],script:[]},store:l,router:o,nuxt:{defaultTransition:wt,transitions:[wt],setTransitions:function(t){return Array.isArray(t)||(t=[t]),t=t.map((function(t){return t=t?"string"==typeof t?Object.assign({},wt,{name:t}):Object.assign({},wt,t):wt})),this.$options.nuxt.transitions=t,t},err:null,dateErr:null,error:function(t){t=t||null,m.context._errored=Boolean(t),t=t?Object(_.p)(t):null;var r=m.nuxt;return this&&(r=this.nuxt||this.$options.nuxt),r.dateErr=Date.now(),r.err=t,n&&(n.nuxt.error=t),t}}},V),l.app=m,d=n?n.next:function(t){return m.router.push(t)},n?v=o.resolve(n.url).route:(path=Object(_.f)(o.options.base,o.options.mode),v=o.resolve(path).route),t.next=13,Object(_.t)(m,{store:l,route:v,next:d,error:m.nuxt.error.bind(m),payload:n?n.payload:void 0,req:n?n.req:void 0,res:n?n.res:void 0,beforeRenderFns:n?n.beforeRenderFns:void 0,ssrContext:n});case 13:f("config",r),window.__NUXT__&&window.__NUXT__.state&&l.replaceState(window.__NUXT__.state),m.context.enablePreview=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m.previewData=Object.assign({},t),f("preview",t)},t.next=19;break;case 19:return t.next=22,tt(m.context);case 22:return t.next=25,xt(m.context,f);case 25:if("function"!=typeof ht.default){t.next=28;break}return t.next=28,Object(ht.default)(m.context,f);case 28:return m.context.enablePreview=function(){console.warn("You cannot call enablePreview() outside a plugin.")},t.next=31,new Promise((function(t,n){if(!o.resolve(m.context.route.fullPath).route.matched.length)return t();o.replace(m.context.route.fullPath,t,(function(r){if(!r._isRouter)return n(r);if(2!==r.type)return t();var l=o.afterEach(function(){var n=Object(e.a)(regeneratorRuntime.mark((function n(r,o){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=3,Object(_.j)(r);case 3:m.context.route=n.sent,m.context.params=r.params||{},m.context.query=r.query||{},l(),t();case 8:case"end":return n.stop()}}),n)})));return function(t,r){return n.apply(this,arguments)}}())}))}));case 31:return t.abrupt("return",{store:l,app:m,router:o});case 32:case"end":return t.stop()}}),t)}))),kt.apply(this,arguments)}},,,,,,,,,,,function(t,n,r){"use strict";r.d(n,"b",(function(){return c}));var o=r(1),e=r(0),l={absolute:Boolean,bottom:Boolean,fixed:Boolean,left:Boolean,right:Boolean,top:Boolean};function c(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return o.a.extend({name:"positionable",props:t.length?Object(e.j)(l,t):l})}n.a=c()},function(t,n,r){"use strict";var o=r(1);function e(t){return function(n,r){for(var o in r)Object.prototype.hasOwnProperty.call(n,o)||this.$delete(this.$data[t],o);for(var e in n)this.$set(this.$data[t],e,n[e])}}n.a=o.a.extend({data:function(){return{attrs$:{},listeners$:{}}},created:function(){this.$watch("$attrs",e("attrs$"),{immediate:!0}),this.$watch("$listeners",e("listeners$"),{immediate:!0})}})},,function(t,n,r){"use strict";r.d(n,"a",(function(){return d})),r.d(n,"b",(function(){return v}));var o=r(0),e=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]],l=function(t){return t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055},c=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],m=function(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)};function d(t){for(var n=Array(3),r=l,c=e,i=0;i<3;++i)n[i]=Math.round(255*Object(o.e)(r(c[i][0]*t[0]+c[i][1]*t[1]+c[i][2]*t[2])));return(n[0]<<16)+(n[1]<<8)+(n[2]<<0)}function v(t){for(var n=[0,0,0],r=m,o=c,e=r((t>>16&255)/255),g=r((t>>8&255)/255),b=r((t>>0&255)/255),i=0;i<3;++i)n[i]=o[i][0]*e+o[i][1]*g+o[i][2]*b;return n}},function(t,n,r){"use strict";r.d(n,"a",(function(){return l})),r.d(n,"b",(function(){return c})),r.d(n,"c",(function(){return m})),r.d(n,"d",(function(){return d}));var o=r(206),e=r(0),l=Object(e.h)("v-card__actions"),c=Object(e.h)("v-card__subtitle"),m=Object(e.h)("v-card__text"),d=Object(e.h)("v-card__title");o.a},,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return y})),r.d(n,"b",(function(){return w}));r(59),r(4),r(42),r(65),r(53),r(12),r(72),r(84),r(64),r(14),r(15),r(11),r(16);var o=r(2),e=r(21),l=(r(27),r(67),r(83),r(13),r(33),r(0));function c(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function m(t){for(var i=1;i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function v(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i1&&void 0!==arguments[1]&&arguments[1];return e.a.extend({name:"registrable-provide",provide:function(){return Object(o.a)({},t,n?this:{register:this.register,unregister:this.unregister})}})}},,,,function(t,n,r){"use strict";r(42),r(33),r(43),r(22),r(376);var o=r(0);function e(t,n){t.style.transform=n,t.style.webkitTransform=n}function l(t){return"TouchEvent"===t.constructor.name}function c(t){return"KeyboardEvent"===t.constructor.name}var m=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=0,e=0;if(!c(t)){var m=n.getBoundingClientRect(),d=l(t)?t.touches[t.touches.length-1]:t;o=d.clientX-m.left,e=d.clientY-m.top}var v=0,f=.3;n._ripple&&n._ripple.circle?(f=.15,v=n.clientWidth/2,v=r.center?v:v+Math.sqrt(Math.pow(o-v,2)+Math.pow(e-v,2))/4):v=Math.sqrt(Math.pow(n.clientWidth,2)+Math.pow(n.clientHeight,2))/2;var x="".concat((n.clientWidth-2*v)/2,"px"),h="".concat((n.clientHeight-2*v)/2,"px"),y=r.center?x:"".concat(o-v,"px"),w=r.center?h:"".concat(e-v,"px");return{radius:v,scale:f,x:y,y:w,centerX:x,centerY:h}},d=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(n._ripple&&n._ripple.enabled){var o=document.createElement("span"),l=document.createElement("span");o.appendChild(l),o.className="v-ripple__container",r.class&&(o.className+=" ".concat(r.class));var c=m(t,n,r),d=c.radius,v=c.scale,f=c.x,x=c.y,h=c.centerX,y=c.centerY,w="".concat(2*d,"px");l.className="v-ripple__animation",l.style.width=w,l.style.height=w,n.appendChild(o);var _=window.getComputedStyle(n);_&&"static"===_.position&&(n.style.position="relative",n.dataset.previousPosition="static"),l.classList.add("v-ripple__animation--enter"),l.classList.add("v-ripple__animation--visible"),e(l,"translate(".concat(f,", ").concat(x,") scale3d(").concat(v,",").concat(v,",").concat(v,")")),l.dataset.activated=String(performance.now()),setTimeout((function(){l.classList.remove("v-ripple__animation--enter"),l.classList.add("v-ripple__animation--in"),e(l,"translate(".concat(h,", ").concat(y,") scale3d(1,1,1)"))}),0)}},v=function(t){if(t&&t._ripple&&t._ripple.enabled){var n=t.getElementsByClassName("v-ripple__animation");if(0!==n.length){var r=n[n.length-1];if(!r.dataset.isHiding){r.dataset.isHiding="true";var o=performance.now()-Number(r.dataset.activated),e=Math.max(250-o,0);setTimeout((function(){r.classList.remove("v-ripple__animation--in"),r.classList.add("v-ripple__animation--out"),setTimeout((function(){1===t.getElementsByClassName("v-ripple__animation").length&&t.dataset.previousPosition&&(t.style.position=t.dataset.previousPosition,delete t.dataset.previousPosition),r.parentNode&&t.removeChild(r.parentNode)}),300)}),e)}}}};function f(t){return void 0===t||!!t}function x(t){var n={},element=t.currentTarget;if(element&&element._ripple&&!element._ripple.touched&&!t.rippleStop){if(t.rippleStop=!0,l(t))element._ripple.touched=!0,element._ripple.isTouch=!0;else if(element._ripple.isTouch)return;if(n.center=element._ripple.centered||c(t),element._ripple.class&&(n.class=element._ripple.class),l(t)){if(element._ripple.showTimerCommit)return;element._ripple.showTimerCommit=function(){d(t,element,n)},element._ripple.showTimer=window.setTimeout((function(){element&&element._ripple&&element._ripple.showTimerCommit&&(element._ripple.showTimerCommit(),element._ripple.showTimerCommit=null)}),80)}else d(t,element,n)}}function h(t){var element=t.currentTarget;if(element&&element._ripple){if(window.clearTimeout(element._ripple.showTimer),"touchend"===t.type&&element._ripple.showTimerCommit)return element._ripple.showTimerCommit(),element._ripple.showTimerCommit=null,void(element._ripple.showTimer=setTimeout((function(){h(t)})));window.setTimeout((function(){element._ripple&&(element._ripple.touched=!1)})),v(element)}}function y(t){var element=t.currentTarget;element&&element._ripple&&(element._ripple.showTimerCommit&&(element._ripple.showTimerCommit=null),window.clearTimeout(element._ripple.showTimer))}var w=!1;function _(t){w||t.keyCode!==o.r.enter&&t.keyCode!==o.r.space||(w=!0,x(t))}function k(t){w=!1,h(t)}function O(t){!0===w&&(w=!1,h(t))}function j(t,n,r){var o=f(n.value);o||v(t),t._ripple=t._ripple||{},t._ripple.enabled=o;var e=n.value||{};e.center&&(t._ripple.centered=!0),e.class&&(t._ripple.class=n.value.class),e.circle&&(t._ripple.circle=e.circle),o&&!r?(t.addEventListener("touchstart",x,{passive:!0}),t.addEventListener("touchend",h,{passive:!0}),t.addEventListener("touchmove",y,{passive:!0}),t.addEventListener("touchcancel",h),t.addEventListener("mousedown",x),t.addEventListener("mouseup",h),t.addEventListener("mouseleave",h),t.addEventListener("keydown",_),t.addEventListener("keyup",k),t.addEventListener("blur",O),t.addEventListener("dragstart",h,{passive:!0})):!o&&r&&S(t)}function S(t){t.removeEventListener("mousedown",x),t.removeEventListener("touchstart",x),t.removeEventListener("touchend",h),t.removeEventListener("touchmove",y),t.removeEventListener("touchcancel",h),t.removeEventListener("mouseup",h),t.removeEventListener("mouseleave",h),t.removeEventListener("keydown",_),t.removeEventListener("keyup",k),t.removeEventListener("dragstart",h),t.removeEventListener("blur",O)}var C={bind:function(t,n,r){j(t,n,!1)},unbind:function(t){delete t._ripple,S(t)},update:function(t,n){n.value!==n.oldValue&&j(t,n,f(n.oldValue))}};n.a=C},function(t,n,r){"use strict";var o=r(1);n.a=o.a.extend({name:"ssr-bootable",data:function(){return{isBooted:!1}},mounted:function(){var t=this;window.requestAnimationFrame((function(){t.$el.setAttribute("data-booted","true"),t.isBooted=!0}))}})},function(t,n,r){"use strict";r(13),r(12),r(14),r(4),r(15),r(11),r(16);var o=r(2),e=(r(375),r(83),r(33),r(27),r(71),r(1)),l=r(113),c=r(0);function m(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function d(t){for(var i=1;i0?c.map((function(){return t(!1)})):t(!1))}};t.exports=o},function(t,n,r){"use strict";var o=r(202);n.a=o.a},,,,,,,,,,,,,,,,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return gt}));var o=r(36),e=r(37),l=(r(4),r(11),r(38),r(54),r(1)),c=r(8);r(105);var m=r(106),d=r(51),v=r(45),f=r(32),x=(r(365),{breakpoint:{mobileBreakpoint:1264,scrollBarWidth:16,thresholds:{xs:600,sm:960,md:1280,lg:1920}},icons:{iconfont:"mdi",values:{}},lang:{current:"en",locales:{en:{badge:"Badge",close:"Close",dataIterator:{noResultsText:"No matching records found",loadingText:"Loading items..."},dataTable:{itemsPerPageText:"Rows per page:",ariaLabel:{sortDescending:"Sorted descending.",sortAscending:"Sorted ascending.",sortNone:"Not sorted.",activateNone:"Activate to remove sorting.",activateDescending:"Activate to sort descending.",activateAscending:"Activate to sort ascending."},sortBy:"Sort by"},dataFooter:{itemsPerPageText:"Items per page:",itemsPerPageAll:"All",nextPage:"Next page",prevPage:"Previous page",firstPage:"First page",lastPage:"Last page",pageText:"{0}-{1} of {2}"},datePicker:{itemsSelected:"{0} selected",nextMonthAriaLabel:"Next month",nextYearAriaLabel:"Next year",prevMonthAriaLabel:"Previous month",prevYearAriaLabel:"Previous year"},noDataText:"No data available",carousel:{prev:"Previous visual",next:"Next visual",ariaLabel:{delimiter:"Carousel slide {0} of {1}"}},calendar:{moreEvents:"{0} more"},fileInput:{counter:"{0} files",counterSize:"{0} files ({1} in total)"},timePicker:{am:"AM",pm:"PM"},pagination:{ariaLabel:{wrapper:"Pagination Navigation",next:"Next page",previous:"Previous page",page:"Goto Page {0}",currentPage:"Current Page, Page {0}"}},rating:{ariaLabel:{icon:"Rating {0} of {1}"}}}},t:void 0},rtl:!1,theme:{dark:!1,default:"light",disable:!1,options:{cspNonce:void 0,customProperties:void 0,minifyTheme:void 0,themeCache:void 0,variations:!0},themes:{light:{primary:"#1976D2",secondary:"#424242",accent:"#82B1FF",error:"#FF5252",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},dark:{primary:"#2196F3",secondary:"#424242",accent:"#FF4081",error:"#FF5252",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"}}}}),h=r(0),y=r(50),w=["preset"];function _(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var k=function(t){Object(d.a)(r,t);var n=_(r);function r(t,e){var l;Object(o.a)(this,r),l=n.call(this);var d=Object(h.t)({},x),v=e.userPreset,f=v.preset,y=void 0===f?{}:f,_=Object(m.a)(v,w);return null!=y.preset&&Object(c.c)("Global presets do not support the **preset** option, it can be safely omitted"),e.preset=Object(h.t)(Object(h.t)(d,y),_),l}return Object(e.a)(r)}(y.a);k.property="presets";r(147);function O(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var j=function(t){Object(d.a)(r,t);var n=O(r);function r(){var t;return Object(o.a)(this,r),(t=n.apply(this,arguments)).bar=0,t.top=0,t.left=0,t.insetFooter=0,t.right=0,t.bottom=0,t.footer=0,t.application={bar:{},top:{},left:{},insetFooter:{},right:{},bottom:{},footer:{}},t}return Object(e.a)(r,[{key:"register",value:function(t,n,r){this.application[n][t]=r,this.update(n)}},{key:"unregister",value:function(t,n){null!=this.application[n][t]&&(delete this.application[n][t],this.update(n))}},{key:"update",value:function(t){this[t]=Object.values(this.application[t]).reduce((function(t,n){return t+n}),0)}}]),r}(y.a);j.property="application";r(42),r(43);function S(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var C=function(t){Object(d.a)(r,t);var n=S(r);function r(t){var e;Object(o.a)(this,r),(e=n.call(this)).xs=!1,e.sm=!1,e.md=!1,e.lg=!1,e.xl=!1,e.xsOnly=!1,e.smOnly=!1,e.smAndDown=!1,e.smAndUp=!1,e.mdOnly=!1,e.mdAndDown=!1,e.mdAndUp=!1,e.lgOnly=!1,e.lgAndDown=!1,e.lgAndUp=!1,e.xlOnly=!1,e.name="xs",e.height=0,e.width=0,e.mobile=!0,e.resizeTimeout=0;var l=t[r.property],c=l.mobileBreakpoint,m=l.scrollBarWidth,d=l.thresholds;return e.mobileBreakpoint=c,e.scrollBarWidth=m,e.thresholds=d,e}return Object(e.a)(r,[{key:"init",value:function(){this.update(),"undefined"!=typeof window&&window.addEventListener("resize",this.onResize.bind(this),{passive:!0})}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=t?0:this.getClientHeight(),r=t?0:this.getClientWidth(),o=r=this.thresholds.lg-this.scrollBarWidth;switch(this.height=n,this.width=r,this.xs=o,this.sm=e,this.md=l,this.lg=c,this.xl=m,this.xsOnly=o,this.smOnly=e,this.smAndDown=(o||e)&&!(l||c||m),this.smAndUp=!o&&(e||l||c||m),this.mdOnly=l,this.mdAndDown=(o||e||l)&&!(c||m),this.mdAndUp=!(o||e)&&(l||c||m),this.lgOnly=c,this.lgAndDown=(o||e||l||c)&&!m,this.lgAndUp=!(o||e||l)&&(c||m),this.xlOnly=m,!0){case o:this.name="xs";break;case e:this.name="sm";break;case l:this.name="md";break;case c:this.name="lg";break;default:this.name="xl"}if("number"!=typeof this.mobileBreakpoint){var d={xs:0,sm:1,md:2,lg:3,xl:4},v=d[this.name],f=d[this.mobileBreakpoint];this.mobile=v<=f}else this.mobile=r2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3?arguments[3]:void 0,e=n.replace(I,""),l=Object(h.l)(t,e,N);return l===N&&(r?(Object(c.b)('Translation key "'.concat(e,'" not found in fallback')),l=n):(Object(c.c)('Translation key "'.concat(e,'" not found, falling back to default')),l=V(o,n,!0,o))),l}var F=function(t){Object(d.a)(r,t);var n=R(r);function r(t){var e;Object(o.a)(this,r),(e=n.call(this)).defaultLocale="en";var l=t[r.property],c=l.current,m=l.locales,d=l.t;return e.current=c,e.locales=m,e.translator=d||e.defaultTranslator,e}return Object(e.a)(r,[{key:"currentLocale",value:function(t){return V(this.locales[this.current],t,!1,this.locales[this.defaultLocale])}},{key:"t",value:function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o1?n-1:0),o=1;oMath.pow(Y,3)?Math.cbrt(t):t/(3*Math.pow(Y,2))+4/29},K=function(t){return t>Y?Math.pow(t,3):3*Math.pow(Y,2)*(t-4/29)};function Q(t){var n=X,r=n(t[1]);return[116*r-16,500*(n(t[0]/.95047)-r),200*(r-n(t[2]/1.08883))]}function G(t){var n=K,r=(t[0]+16)/116;return[.95047*n(r+t[1]/500),n(r),1.08883*n(r-t[2]/200)]}var J=["anchor"],tt=["anchor"];function it(t){for(var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=t.anchor,e=Object(m.a)(t,J),l=Object.keys(e),c={},i=0;i1&&void 0!==arguments[1]?arguments[1]:"base";return"--v-".concat(t,"-").concat(n)},et=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"base";return"var(".concat(ot(t,n),")")};function pt(t,n){for(var r={base:Object(U.c)(n)},i=5;i>0;--i)r["lighten".concat(i)]=Object(U.c)(lt(n,i));for(var o=1;o<=4;++o)r["darken".concat(o)]=Object(U.c)(ct(n,o));return r}function lt(t,n){var r=Q(Z.b(t));return r[0]=r[0]+10*n,Z.a(G(r))}function ct(t,n){var r=Q(Z.b(t));return r[0]=r[0]-10*n,Z.a(G(r))}function mt(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var st=function(t){Object(d.a)(r,t);var n=mt(r);function r(t){var e;Object(o.a)(this,r),(e=n.call(this)).disabled=!1,e.isDark=null,e.unwatch=null,e.vueMeta=null;var l=t[r.property],c=l.dark,m=l.disable,d=l.options,f=l.themes;return e.dark=Boolean(c),e.defaults=e.themes=f,e.options=d,m?(e.disabled=!0,Object(v.a)(e)):(e.themes={dark:e.fillVariant(f.dark,!0),light:e.fillVariant(f.light,!1)},e)}return Object(e.a)(r,[{key:"css",set:function(t){this.vueMeta?this.isVueMeta23&&this.applyVueMeta23():this.checkOrCreateStyleElement()&&(this.styleEl.innerHTML=t)}},{key:"dark",get:function(){return Boolean(this.isDark)},set:function(t){var n=this.isDark;this.isDark=t,null!=n&&this.applyTheme()}},{key:"applyTheme",value:function(){if(this.disabled)return this.clearCss();this.css=this.generatedStyles}},{key:"clearCss",value:function(){this.css=""}},{key:"init",value:function(t,n){this.disabled||(t.$meta?this.initVueMeta(t):n&&this.initSSR(n),this.initTheme(t))}},{key:"setTheme",value:function(t,n){this.themes[t]=Object.assign(this.themes[t],n),this.applyTheme()}},{key:"resetThemes",value:function(){this.themes.light=Object.assign({},this.defaults.light),this.themes.dark=Object.assign({},this.defaults.dark),this.applyTheme()}},{key:"checkOrCreateStyleElement",value:function(){return this.styleEl=document.getElementById("vuetify-theme-stylesheet"),!!this.styleEl||(this.genStyleElement(),Boolean(this.styleEl))}},{key:"fillVariant",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0,r=this.themes[n?"dark":"light"];return Object.assign({},r,t)}},{key:"genStyleElement",value:function(){"undefined"!=typeof document&&(this.styleEl=document.createElement("style"),this.styleEl.type="text/css",this.styleEl.id="vuetify-theme-stylesheet",this.options.cspNonce&&this.styleEl.setAttribute("nonce",this.options.cspNonce),document.head.appendChild(this.styleEl))}},{key:"initVueMeta",value:function(t){var n=this;if(this.vueMeta=t.$meta(),this.isVueMeta23)t.$nextTick((function(){n.applyVueMeta23()}));else{var r="function"==typeof this.vueMeta.getOptions?this.vueMeta.getOptions().keyName:"metaInfo",o=t.$options[r]||{};t.$options[r]=function(){o.style=o.style||[];var t=o.style.find((function(s){return"vuetify-theme-stylesheet"===s.id}));return t?t.cssText=n.generatedStyles:o.style.push({cssText:n.generatedStyles,type:"text/css",id:"vuetify-theme-stylesheet",nonce:(n.options||{}).cspNonce}),o}}}},{key:"applyVueMeta23",value:function(){(0,this.vueMeta.addApp("vuetify").set)({style:[{cssText:this.generatedStyles,type:"text/css",id:"vuetify-theme-stylesheet",nonce:this.options.cspNonce}]})}},{key:"initSSR",value:function(t){var n=this.options.cspNonce?' nonce="'.concat(this.options.cspNonce,'"'):"";t.head=t.head||"",t.head+='")}},{key:"initTheme",value:function(t){var n=this;"undefined"!=typeof document&&(this.unwatch&&(this.unwatch(),this.unwatch=null),t.$once("hook:created",(function(){var r=l.a.observable({themes:n.themes});n.unwatch=t.$watch((function(){return r.themes}),(function(){return n.applyTheme()}),{deep:!0})})),this.applyTheme())}},{key:"currentTheme",get:function(){var t=this.dark?"dark":"light";return this.themes[t]}},{key:"generatedStyles",get:function(){var t,n=this.parsedTheme,r=this.options||{};return null!=r.themeCache&&null!=(t=r.themeCache.get(n))||(t=function(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=t.anchor,o=Object(m.a)(t,tt),e=Object.keys(o);if(!e.length)return"";var l="",c="",d=n?et("anchor"):r;c+=".v-application a { color: ".concat(d,"; }"),n&&(l+=" ".concat(ot("anchor"),": ").concat(r,";\n"));for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{};Object(o.a)(this,t),this.framework={isHydrating:!1},this.installed=[],this.preset={},this.userPreset={},this.userPreset=n,this.use(k),this.use(j),this.use(C),this.use($.a),this.use(B),this.use(F),this.use(st)}return Object(e.a)(t,[{key:"init",value:function(t,n){var r=this;this.installed.forEach((function(o){var e=r.framework[o];e.framework=r.framework,e.init(t,n)})),this.framework.rtl=Boolean(this.preset.rtl)}},{key:"use",value:function(t){var n=t.property;this.installed.includes(n)||(this.framework[n]=new t(this.preset,this),this.installed.push(n))}}]),t}();gt.install=function t(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!t.installed){t.installed=!0,l.a!==n&&Object(c.b)("Multiple instances of Vue detected\nSee https://github.com/vuetifyjs/vuetify/issues/4068\n\nIf you're seeing \"$attrs is readonly\", it's caused by this");var o=r.components||{},e=r.directives||{};for(var m in e){var d=e[m];n.directive(m,d)}!function t(r){if(r){for(var o in r){var component=r[o];component&&!t(component.$_vuetify_subcomponents)&&n.component(o,component)}return!0}return!1}(o),n.$_vuetify_installed||(n.$_vuetify_installed=!0,n.mixin({beforeCreate:function(){var t=this.$options;t.vuetify?(t.vuetify.init(this,this.$ssrContext),this.$vuetify=n.observable(t.vuetify.framework)):this.$vuetify=t.parent&&t.parent.$vuetify||this},beforeMount:function(){this.$options.vuetify&&this.$el&&this.$el.hasAttribute("data-server-rendered")&&(this.$vuetify.isHydrating=!0,this.$vuetify.breakpoint.update(!0))},mounted:function(){this.$options.vuetify&&this.$vuetify.isHydrating&&(this.$vuetify.isHydrating=!1,this.$vuetify.breakpoint.update())}}))}},gt.installed=!1,gt.version="2.6.2",gt.config={silent:!1}},function(t,n,r){"use strict";r(22);var o=r(1),e=(r(13),r(12),r(14),r(4),r(15),r(11),r(16),r(2)),l=(r(146),r(384),r(178)),c=r(79),m=r(39),d=r(92),v=r(224),f=r(25),x=r(0),h=r(6);function y(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}var w=Object(h.a)(m.a,Object(d.b)(["absolute","fixed","top","bottom"]),v.a,f.a).extend({name:"v-progress-linear",directives:{intersect:c.a},props:{active:{type:Boolean,default:!0},backgroundColor:{type:String,default:null},backgroundOpacity:{type:[Number,String],default:null},bufferValue:{type:[Number,String],default:100},color:{type:String,default:"primary"},height:{type:[Number,String],default:4},indeterminate:Boolean,query:Boolean,reverse:Boolean,rounded:Boolean,stream:Boolean,striped:Boolean,value:{type:[Number,String],default:0}},data:function(){return{internalLazyValue:this.value||0,isVisible:!0}},computed:{__cachedBackground:function(){return this.$createElement("div",this.setBackgroundColor(this.backgroundColor||this.color,{staticClass:"v-progress-linear__background",style:this.backgroundStyle}))},__cachedBar:function(){return this.$createElement(this.computedTransition,[this.__cachedBarType])},__cachedBarType:function(){return this.indeterminate?this.__cachedIndeterminate:this.__cachedDeterminate},__cachedBuffer:function(){return this.$createElement("div",{staticClass:"v-progress-linear__buffer",style:this.styles})},__cachedDeterminate:function(){return this.$createElement("div",this.setBackgroundColor(this.color,{staticClass:"v-progress-linear__determinate",style:{width:Object(x.g)(this.normalizedValue,"%")}}))},__cachedIndeterminate:function(){return this.$createElement("div",{staticClass:"v-progress-linear__indeterminate",class:{"v-progress-linear__indeterminate--active":this.active}},[this.genProgressBar("long"),this.genProgressBar("short")])},__cachedStream:function(){return this.stream?this.$createElement("div",this.setTextColor(this.color,{staticClass:"v-progress-linear__stream",style:{width:Object(x.g)(100-this.normalizedBuffer,"%")}})):null},backgroundStyle:function(){var t;return t={opacity:null==this.backgroundOpacity?this.backgroundColor?1:.3:parseFloat(this.backgroundOpacity)},Object(e.a)(t,this.isReversed?"right":"left",Object(x.g)(this.normalizedValue,"%")),Object(e.a)(t,"width",Object(x.g)(Math.max(0,this.normalizedBuffer-this.normalizedValue),"%")),t},classes:function(){return function(t){for(var i=1;i100?100:parseFloat(t)}},render:function(t){return t("div",{staticClass:"v-progress-linear",attrs:{role:"progressbar","aria-valuemin":0,"aria-valuemax":this.normalizedBuffer,"aria-valuenow":this.indeterminate?void 0:this.normalizedValue},class:this.classes,directives:[{name:"intersect",value:this.onObserve}],style:{bottom:this.bottom?0:void 0,height:this.active?Object(x.g)(this.height):0,top:this.top?0:void 0},on:this.genListeners()},[this.__cachedStream,this.__cachedBackground,this.__cachedBuffer,this.__cachedBar,this.genContent()])}}),_=w;n.a=o.a.extend().extend({name:"loadable",props:{loading:{type:[Boolean,String],default:!1},loaderHeight:{type:[Number,String],default:2}},methods:{genProgress:function(){return!1===this.loading?null:this.$slots.progress||this.$createElement(_,{props:{absolute:!0,color:!0===this.loading||""===this.loading?this.color||"primary":this.loading,height:this.loaderHeight,indeterminate:!0}})}}})},,function(t,n){t.exports=function(component,t){var n="function"==typeof component.exports?component.exports.extendOptions:component.options;for(var i in"function"==typeof component.exports&&(n.components=component.exports.options.components),n.components=n.components||{},t)n.components[i]=n.components[i]||t[i]}},,,,,,,,,,,,,,,,,,,,,,,,,,function(t,n,r){"use strict";r(22);var o=r(0),e=r(1);n.a=e.a.extend({name:"measurable",props:{height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String]},computed:{measurableStyles:function(){var t={},n=Object(o.g)(this.height),r=Object(o.g)(this.minHeight),e=Object(o.g)(this.minWidth),l=Object(o.g)(this.maxHeight),c=Object(o.g)(this.maxWidth),m=Object(o.g)(this.width);return n&&(t.height=n),r&&(t.minHeight=r),e&&(t.minWidth=e),l&&(t.maxHeight=l),c&&(t.maxWidth=c),m&&(t.width=m),t}}})},,function(t,n,r){"use strict";var o=r(2),e=(r(22),r(1));n.a=e.a.extend({name:"elevatable",props:{elevation:[Number,String]},computed:{computedElevation:function(){return this.elevation},elevationClasses:function(){var t=this.computedElevation;return null==t||isNaN(parseInt(t))?{}:Object(o.a)({},"elevation-".concat(this.elevation),!0)}}})},function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(92),e=r(6);function l(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return Object(e.a)(Object(o.b)(["absolute","fixed"])).extend({name:"applicationable",props:{app:Boolean},computed:{applicationProperty:function(){return t}},watch:{app:function(t,n){n?this.removeApplication(!0):this.callUpdate()},applicationProperty:function(t,n){this.$vuetify.application.unregister(this._uid,n)}},activated:function(){this.callUpdate()},created:function(){for(var i=0,t=n.length;i0&&void 0!==arguments[0]&&arguments[0];(t||this.app)&&this.$vuetify.application.unregister(this._uid,this.applicationProperty)},updateApplication:function(){return 0}}})}},function(t,n,r){"use strict";r(270);var o=r(1);n.a=o.a.extend({name:"sizeable",props:{large:Boolean,small:Boolean,xLarge:Boolean,xSmall:Boolean},computed:{medium:function(){return Boolean(!(this.xSmall||this.small||this.large||this.xLarge))},sizeableClasses:function(){return{"v-size--x-small":this.xSmall,"v-size--small":this.small,"v-size--default":this.medium,"v-size--large":this.large,"v-size--x-large":this.xLarge}}}})},,,,function(t,n,r){"use strict";var o=r(17),e=(r(22),r(59),r(43),r(39)),l=r(25),c=r(109),m=r(0),d=r(8),v=r(6),f=Object(v.a)(e.a,Object(c.a)("form"),l.a);n.a=f.extend({name:"validatable",props:{disabled:Boolean,error:Boolean,errorCount:{type:[Number,String],default:1},errorMessages:{type:[String,Array],default:function(){return[]}},messages:{type:[String,Array],default:function(){return[]}},readonly:Boolean,rules:{type:Array,default:function(){return[]}},success:Boolean,successMessages:{type:[String,Array],default:function(){return[]}},validateOnBlur:Boolean,value:{required:!1}},data:function(){return{errorBucket:[],hasColor:!1,hasFocused:!1,hasInput:!1,isFocused:!1,isResetting:!1,lazyValue:this.value,valid:!1}},computed:{computedColor:function(){if(!this.isDisabled)return this.color?this.color:this.isDark&&!this.appIsDark?"white":"primary"},hasError:function(){return this.internalErrorMessages.length>0||this.errorBucket.length>0||this.error},hasSuccess:function(){return this.internalSuccessMessages.length>0||this.success},externalError:function(){return this.internalErrorMessages.length>0||this.error},hasMessages:function(){return this.validationTarget.length>0},hasState:function(){return!this.isDisabled&&(this.hasSuccess||this.shouldValidate&&this.hasError)},internalErrorMessages:function(){return this.genInternalMessages(this.errorMessages)},internalMessages:function(){return this.genInternalMessages(this.messages)},internalSuccessMessages:function(){return this.genInternalMessages(this.successMessages)},internalValue:{get:function(){return this.lazyValue},set:function(t){this.lazyValue=t,this.$emit("input",t)}},isDisabled:function(){return this.disabled||!!this.form&&this.form.disabled},isInteractive:function(){return!this.isDisabled&&!this.isReadonly},isReadonly:function(){return this.readonly||!!this.form&&this.form.readonly},shouldValidate:function(){return!!this.externalError||!this.isResetting&&(this.validateOnBlur?this.hasFocused&&!this.isFocused:this.hasInput||this.hasFocused)},validations:function(){return this.validationTarget.slice(0,Number(this.errorCount))},validationState:function(){if(!this.isDisabled)return this.hasError&&this.shouldValidate?"error":this.hasSuccess?"success":this.hasColor?this.computedColor:void 0},validationTarget:function(){return this.internalErrorMessages.length>0?this.internalErrorMessages:this.successMessages&&this.successMessages.length>0?this.internalSuccessMessages:this.messages&&this.messages.length>0?this.internalMessages:this.shouldValidate?this.errorBucket:[]}},watch:{rules:{handler:function(t,n){Object(m.i)(t,n)||this.validate()},deep:!0},internalValue:function(){this.hasInput=!0,this.validateOnBlur||this.$nextTick(this.validate)},isFocused:function(t){t||this.isDisabled||(this.hasFocused=!0,this.validateOnBlur&&this.$nextTick(this.validate))},isResetting:function(){var t=this;setTimeout((function(){t.hasInput=!1,t.hasFocused=!1,t.isResetting=!1,t.validate()}),0)},hasError:function(t){this.shouldValidate&&this.$emit("update:error",t)},value:function(t){this.lazyValue=t}},beforeMount:function(){this.validate()},created:function(){this.form&&this.form.register(this)},beforeDestroy:function(){this.form&&this.form.unregister(this)},methods:{genInternalMessages:function(t){return t?Array.isArray(t)?t:[t]:[]},reset:function(){this.isResetting=!0,this.internalValue=Array.isArray(this.internalValue)?[]:null},resetValidation:function(){this.isResetting=!0},validate:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=arguments.length>1?arguments[1]:void 0,r=[];n=n||this.internalValue,t&&(this.hasInput=this.hasFocused=!0);for(var e=0;e=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,c=!0,m=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return c=t.done,t},e:function(t){m=!0,e=t},f:function(){try{c||null==r.return||r.return()}finally{if(m)throw e}}}}function l(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i0},canPrefetch:function(){var t=navigator.connection;return!(this.$nuxt.isOffline||t&&((t.effectiveType||"").includes("2g")||t.saveData))},getPrefetchComponents:function(){return this.$router.resolve(this.to,this.$route,this.append).resolved.matched.map((function(t){return t.components.default})).filter((function(t){return"function"==typeof t&&!t.options&&!t.__prefetched}))},prefetchLink:function(){if(this.canPrefetch()){d.unobserve(this.$el);var t,n=e(this.getPrefetchComponents());try{for(n.s();!(t=n.n()).done;){var r=t.value,o=r();o instanceof Promise&&o.catch((function(){})),r.__prefetched=!0}}catch(t){n.e(t)}finally{n.f()}}}}}},function(t,n,r){"use strict";r.d(n,"c",(function(){return f})),r.d(n,"d",(function(){return x})),r.d(n,"e",(function(){return h})),r.d(n,"a",(function(){return y})),r.d(n,"b",(function(){return w}));r(33);var o=r(100);function e(){for(var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments.length,o=new Array(r>1?r-1:0),e=1;e1&&void 0!==arguments[1]?arguments[1]:"top center 0",r=arguments.length>2?arguments[2]:void 0;return{name:t,functional:!0,props:{group:{type:Boolean,default:!1},hideOnLeave:{type:Boolean,default:!1},leaveAbsolute:{type:Boolean,default:!1},mode:{type:String,default:r},origin:{type:String,default:n}},render:function(n,r){var l="transition".concat(r.props.group?"-group":""),data={props:{name:t,mode:r.props.mode},on:{beforeEnter:function(t){t.style.transformOrigin=r.props.origin,t.style.webkitTransformOrigin=r.props.origin}}};return r.props.leaveAbsolute&&(data.on.leave=e(data.on.leave,(function(t){var n=t.offsetTop,r=t.offsetLeft,o=t.offsetWidth,e=t.offsetHeight;t._transitionInitialStyles={position:t.style.position,top:t.style.top,left:t.style.left,width:t.style.width,height:t.style.height},t.style.position="absolute",t.style.top=n+"px",t.style.left=r+"px",t.style.width=o+"px",t.style.height=e+"px"})),data.on.afterLeave=e(data.on.afterLeave,(function(t){if(t&&t._transitionInitialStyles){var n=t._transitionInitialStyles,r=n.position,o=n.top,e=n.left,l=n.width,c=n.height;delete t._transitionInitialStyles,t.style.position=r||"",t.style.top=o||"",t.style.left=e||"",t.style.width=l||"",t.style.height=c||""}}))),r.props.hideOnLeave&&(data.on.leave=e(data.on.leave,(function(t){t.style.setProperty("display","none","important")}))),n(l,Object(o.a)(r.data,data),r.children)}}}function c(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"in-out";return{name:t,functional:!0,props:{mode:{type:String,default:r}},render:function(r,e){return r("transition",Object(o.a)(e.data,{props:{name:t},on:n}),e.children)}}}var m=r(2),d=r(0),v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=n?"width":"height",o="offset".concat(Object(d.w)(r));return{beforeEnter:function(t){t._parent=t.parentNode,t._initialStyle=Object(m.a)({transition:t.style.transition,overflow:t.style.overflow},r,t.style[r])},enter:function(n){var e=n._initialStyle;n.style.setProperty("transition","none","important"),n.style.overflow="hidden";var l="".concat(n[o],"px");n.style[r]="0",n.offsetHeight,n.style.transition=e.transition,t&&n._parent&&n._parent.classList.add(t),requestAnimationFrame((function(){n.style[r]=l}))},afterEnter:l,enterCancelled:l,leave:function(t){t._initialStyle=Object(m.a)({transition:"",overflow:t.style.overflow},r,t.style[r]),t.style.overflow="hidden",t.style[r]="".concat(t[o],"px"),t.offsetHeight,requestAnimationFrame((function(){return t.style[r]="0"}))},afterLeave:e,leaveCancelled:e};function e(n){t&&n._parent&&n._parent.classList.remove(t),l(n)}function l(t){var n=t._initialStyle[r];t.style.overflow=t._initialStyle.overflow,null!=n&&(t.style[r]=n),delete t._initialStyle}},f=(l("carousel-transition"),l("carousel-reverse-transition"),l("tab-transition"),l("tab-reverse-transition"),l("menu-transition"),l("fab-transition","center center","out-in"),l("dialog-transition"),l("dialog-bottom-transition"),l("dialog-top-transition"),l("fade-transition")),x=(l("scale-transition"),l("scroll-x-transition"),l("scroll-x-reverse-transition"),l("scroll-y-transition"),l("scroll-y-reverse-transition"),l("slide-x-transition")),h=(l("slide-x-reverse-transition"),l("slide-y-transition")),y=(l("slide-y-reverse-transition"),c("expand-transition",v())),w=c("expand-x-transition",v("",!0))},,,,,,,,,,,,,,,,,,,,,,,function(t,n,r){"use strict";var o=r(205);n.a=o.a},function(t,n,r){"use strict";r(13),r(12),r(14),r(15),r(11),r(16);var o,e=r(2),l=(r(270),r(4),r(38),r(54),r(27),r(22),r(83),r(121),r(59),r(380),r(93)),c=r(39),m=r(171),d=r(25),v=r(0),f=r(1),x=r(6);function h(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function y(t){for(var i=1;i4}(n)?this.renderSvgIcon(n,t):this.renderFontIcon(n,t):this.renderSvgIconComponent(n,t)}});n.a=f.a.extend({name:"v-icon",$_wrapperFor:w,functional:!0,render:function(t,n){var data=n.data,r=n.children,o="";return data.domProps&&(o=data.domProps.textContent||data.domProps.innerHTML||o,delete data.domProps.textContent,delete data.domProps.innerHTML),t(w,data,o?[o]:r)}})},function(t,n,r){"use strict";var o=r(208);n.a=o.a},,function(t,n,r){"use strict";r(22),r(33),r(378);var o=r(79),e=r(39),l=r(0);n.a=e.a.extend({name:"v-progress-circular",directives:{intersect:o.a},props:{button:Boolean,indeterminate:Boolean,rotate:{type:[Number,String],default:0},size:{type:[Number,String],default:32},width:{type:[Number,String],default:4},value:{type:[Number,String],default:0}},data:function(){return{radius:20,isVisible:!0}},computed:{calculatedSize:function(){return Number(this.size)+(this.button?8:0)},circumference:function(){return 2*Math.PI*this.radius},classes:function(){return{"v-progress-circular--visible":this.isVisible,"v-progress-circular--indeterminate":this.indeterminate,"v-progress-circular--button":this.button}},normalizedValue:function(){return this.value<0?0:this.value>100?100:parseFloat(this.value)},strokeDashArray:function(){return Math.round(1e3*this.circumference)/1e3},strokeDashOffset:function(){return(100-this.normalizedValue)/100*this.circumference+"px"},strokeWidth:function(){return Number(this.width)/+this.size*this.viewBoxSize*2},styles:function(){return{height:Object(l.g)(this.calculatedSize),width:Object(l.g)(this.calculatedSize)}},svgStyles:function(){return{transform:"rotate(".concat(Number(this.rotate),"deg)")}},viewBoxSize:function(){return this.radius/(1-Number(this.width)/+this.size)}},methods:{genCircle:function(t,n){return this.$createElement("circle",{class:"v-progress-circular__".concat(t),attrs:{fill:"transparent",cx:2*this.viewBoxSize,cy:2*this.viewBoxSize,r:this.radius,"stroke-width":this.strokeWidth,"stroke-dasharray":this.strokeDashArray,"stroke-dashoffset":n}})},genSvg:function(){var t=[this.indeterminate||this.genCircle("underlay",0),this.genCircle("overlay",this.strokeDashOffset)];return this.$createElement("svg",{style:this.svgStyles,attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"".concat(this.viewBoxSize," ").concat(this.viewBoxSize," ").concat(2*this.viewBoxSize," ").concat(2*this.viewBoxSize)}},t)},genInfo:function(){return this.$createElement("div",{staticClass:"v-progress-circular__info"},this.$slots.default)},onObserve:function(t,n,r){this.isVisible=r}},render:function(t){return t("div",this.setTextColor(this.color,{staticClass:"v-progress-circular",attrs:{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":this.indeterminate?void 0:this.normalizedValue},class:this.classes,directives:[{name:"intersect",value:this.onObserve}],style:this.styles,on:this.$listeners}),[this.genSvg(),this.genInfo()])}})},function(t,n,r){"use strict";r(13),r(12),r(14),r(4),r(15),r(11),r(16);var o=r(2),e=(r(22),r(179),r(180),r(382),r(117)),l=r(139),c=r(115),m=r(6);function d(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function v(t){for(var i=1;i0&&void 0!==arguments[0])||arguments[0];this.overlay&&(Object(e.a)(this.overlay.$el,"transitionend",(function(){t.overlay&&t.overlay.$el&&t.overlay.$el.parentNode&&!t.overlay.value&&!t.isActive&&(t.overlay.$el.parentNode.removeChild(t.overlay.$el),t.overlay.$destroy(),t.overlay=null)})),cancelAnimationFrame(this.animationFrame),this.overlay.value=!1),n&&this.showScroll()},scrollListener:function(t){if("keydown"===t.type){if(["INPUT","TEXTAREA","SELECT"].includes(t.target.tagName)||t.target.isContentEditable)return;var n=[e.r.up,e.r.pageup],r=[e.r.down,e.r.pagedown];if(n.includes(t.keyCode))t.deltaY=-1;else{if(!r.includes(t.keyCode))return;t.deltaY=1}}(t.target===this.overlay||"keydown"!==t.type&&t.target===document.body||this.checkPath(t))&&t.preventDefault()},hasScrollbar:function(t){if(!t||t.nodeType!==Node.ELEMENT_NODE)return!1;var style=window.getComputedStyle(t);return(["auto","scroll"].includes(style.overflowY)||"SELECT"===t.tagName)&&t.scrollHeight>t.clientHeight||["auto","scroll"].includes(style.overflowX)&&t.scrollWidth>t.clientWidth},shouldScroll:function(t,n){if(t.hasAttribute("data-app"))return!1;var r,o,e=n.shiftKey||n.deltaX?"x":"y",l="y"===e?n.deltaY:n.deltaX||n.deltaY;return"y"===e?(r=0===t.scrollTop,o=t.scrollTop+t.clientHeight===t.scrollHeight):(r=0===t.scrollLeft,o=t.scrollLeft+t.clientWidth===t.scrollWidth),!(r||!(l<0))||(!(o||!(l>0))||!(!r&&!o)&&this.shouldScroll(t.parentNode,n))},isInside:function(t,n){return t===n||null!==t&&t!==document.body&&this.isInside(t.parentNode,n)},checkPath:function(t){var path=Object(e.f)(t);if("keydown"===t.type&&path[0]===document.body){var dialog=this.$refs.dialog,n=window.getSelection().anchorNode;return!(dialog&&this.hasScrollbar(dialog)&&this.isInside(n,dialog))||!this.shouldScroll(dialog,t)}for(var r=0;r0?c.map((function(){return t(!1)})):t(!1))}};t.exports=o},,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(2),e=r(109);function l(t,n,r){return Object(e.a)(t,n,r).extend({name:"groupable",props:{activeClass:{type:String,default:function(){if(this[t])return this[t].activeClass}},disabled:Boolean},data:function(){return{isActive:!1}},computed:{groupClasses:function(){return this.activeClass?Object(o.a)({},this.activeClass,this.isActive):{}}},created:function(){this[t]&&this[t].register(this)},beforeDestroy:function(){this[t]&&this[t].unregister(this)},methods:{toggle:function(){this.$emit("change")}}})}l("itemGroup")},function(t,n,r){"use strict";var o={inserted:function(t,n,r){var o=n.value,e=n.options||{passive:!0};window.addEventListener("resize",o,e),t._onResize=Object(t._onResize),t._onResize[r.context._uid]={callback:o,options:e},n.modifiers&&n.modifiers.quiet||o()},unbind:function(t,n,r){var o;if(null!=(o=t._onResize)&&o[r.context._uid]){var e=t._onResize[r.context._uid],l=e.callback,c=e.options;window.removeEventListener("resize",l,c),delete t._onResize[r.context._uid]}}};n.a=o},function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(58),e=r(0),l=Object(e.h)("v-toolbar__title"),c=Object(e.h)("v-toolbar__items");o.a},function(t,n,r){"use strict";var o=r(8),e=r(1);n.a=e.a.extend().extend({name:"bootable",props:{eager:Boolean},data:function(){return{isBooted:!1}},computed:{hasContent:function(){return this.isBooted||this.eager||this.isActive}},watch:{isActive:function(){this.isBooted=!0}},created:function(){"lazy"in this.$attrs&&Object(o.e)("lazy",this)},methods:{showLazyContent:function(content){return this.hasContent&&content?content():[this.$createElement()]}}})},function(t,n,r){"use strict";r(13),r(12),r(14),r(15),r(11),r(16);var o=r(106),e=r(49),l=r(2),c=(r(22),r(179),r(180),r(4),r(74),r(38),r(403),r(274),r(46)),m=(r(33),r(404),r(25)),d=r(6);function v(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function f(t){for(var i=1;io},Object(m.b)(n))},content)}}),h=r(176),y=r(79),w=r(8),_=r(1);var k=r(139),O=r(175),j=r(215),S=r(113),C=r(118),$=r(0),P=["title"];function E(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function z(t){for(var i=1;i0||this.badInput},isEnclosed:function(){return this.filled||this.isSolo||this.outlined},isLabelActive:function(){return this.isDirty||A.includes(this.type)},isSingle:function(){return this.isSolo||this.singleLine||this.fullWidth||this.filled&&!this.hasLabel},isSolo:function(){return this.solo||this.soloInverted},labelPosition:function(){var t=this.prefix&&!this.labelValue?this.prefixWidth:0;return this.labelValue&&this.prependWidth&&(t-=this.prependWidth),this.$vuetify.rtl===this.reverse?{left:t,right:"auto"}:{left:"auto",right:t}},showLabel:function(){return this.hasLabel&&!(this.isSingle&&this.labelValue)},labelValue:function(){return this.isFocused||this.isLabelActive||this.persistentPlaceholder}},watch:{outlined:"setLabelWidth",label:function(){this.$nextTick(this.setLabelWidth)},prefix:function(){this.$nextTick(this.setPrefixWidth)},isFocused:"updateValue",value:function(t){this.lazyValue=t}},created:function(){this.$attrs.hasOwnProperty("box")&&Object(w.a)("box","filled",this),this.$attrs.hasOwnProperty("browser-autocomplete")&&Object(w.a)("browser-autocomplete","autocomplete",this),this.shaped&&!(this.filled||this.outlined||this.isSolo)&&Object(w.c)("shaped should be used with either filled or outlined",this)},mounted:function(){var t=this;this.$watch((function(){return t.labelValue}),this.setLabelWidth),this.autofocus&&this.tryAutofocus(),requestAnimationFrame((function(){t.isBooted=!0,requestAnimationFrame((function(){t.isIntersecting||t.onResize()}))}))},methods:{focus:function(){this.onFocus()},blur:function(t){var n=this;window.requestAnimationFrame((function(){n.$refs.input&&n.$refs.input.blur()}))},clearableCallback:function(){var t=this;this.$refs.input&&this.$refs.input.focus(),this.$nextTick((function(){return t.internalValue=null}))},genAppendSlot:function(){var slot=[];return this.$slots["append-outer"]?slot.push(this.$slots["append-outer"]):this.appendOuterIcon&&slot.push(this.genIcon("appendOuter")),this.genSlot("append","outer",slot)},genPrependInnerSlot:function(){var slot=[];return this.$slots["prepend-inner"]?slot.push(this.$slots["prepend-inner"]):this.prependInnerIcon&&slot.push(this.genIcon("prependInner")),this.genSlot("prepend","inner",slot)},genIconSlot:function(){var slot=[];return this.$slots.append?slot.push(this.$slots.append):this.appendIcon&&slot.push(this.genIcon("append")),this.genSlot("append","inner",slot)},genInputSlot:function(){var input=c.a.options.methods.genInputSlot.call(this),t=this.genPrependInnerSlot();return t&&(input.children=input.children||[],input.children.unshift(t)),input},genClearIcon:function(){return this.clearable?this.isDirty?this.genSlot("append","inner",[this.genIcon("clear",this.clearableCallback)]):this.genSlot("append","inner",[this.$createElement("div")]):null},genCounter:function(){var t,n,r;if(!this.hasCounter)return null;var o=!0===this.counter?this.attrs$.maxlength:this.counter,e={dark:this.dark,light:this.light,max:o,value:this.computedCounterValue};return null!=(t=null==(n=(r=this.$scopedSlots).counter)?void 0:n.call(r,{props:e}))?t:this.$createElement(x,{props:e})},genControl:function(){return c.a.options.methods.genControl.call(this)},genDefaultSlot:function(){return[this.genFieldset(),this.genTextFieldSlot(),this.genClearIcon(),this.genIconSlot(),this.genProgress()]},genFieldset:function(){return this.outlined?this.$createElement("fieldset",{attrs:{"aria-hidden":!0}},[this.genLegend()]):null},genLabel:function(){if(!this.showLabel)return null;var data={props:{absolute:!0,color:this.validationState,dark:this.dark,disabled:this.isDisabled,focused:!this.isSingle&&(this.isFocused||!!this.validationState),for:this.computedId,left:this.labelPosition.left,light:this.light,right:this.labelPosition.right,value:this.labelValue}};return this.$createElement(h.a,data,this.$slots.label||this.label)},genLegend:function(){var t=this.singleLine||!this.labelValue&&!this.isDirty?0:this.labelWidth,span=this.$createElement("span",{domProps:{innerHTML:"​"},staticClass:"notranslate"});return this.$createElement("legend",{style:{width:this.isSingle?void 0:Object($.g)(t)}},[span])},genInput:function(){var t=Object.assign({},this.listeners$);delete t.change;var n=this.attrs$,r=(n.title,Object(o.a)(n,P));return this.$createElement("input",{style:{},domProps:{value:"number"===this.type&&Object.is(this.lazyValue,-0)?"-0":this.lazyValue},attrs:z(z({},r),{},{autofocus:this.autofocus,disabled:this.isDisabled,id:this.computedId,placeholder:this.persistentPlaceholder||this.isFocused||!this.hasLabel?this.placeholder:void 0,readonly:this.isReadonly,type:this.type}),on:Object.assign(t,{blur:this.onBlur,input:this.onInput,focus:this.onFocus,keydown:this.onKeyDown}),ref:"input",directives:[{name:"resize",modifiers:{quiet:!0},value:this.onResize}]})},genMessages:function(){if(!this.showDetails)return null;var t=c.a.options.methods.genMessages.call(this),n=this.genCounter();return this.$createElement("div",{staticClass:"v-text-field__details"},[t,n])},genTextFieldSlot:function(){return this.$createElement("div",{staticClass:"v-text-field__slot"},[this.genLabel(),this.prefix?this.genAffix("prefix"):null,this.genInput(),this.suffix?this.genAffix("suffix"):null])},genAffix:function(t){return this.$createElement("div",{class:"v-text-field__".concat(t),ref:t},this[t])},onBlur:function(t){var n=this;this.isFocused=!1,t&&this.$nextTick((function(){return n.$emit("blur",t)}))},onClick:function(){this.isFocused||this.isDisabled||!this.$refs.input||this.$refs.input.focus()},onFocus:function(t){if(this.$refs.input){var n=Object(C.a)(this.$el);if(n)return n.activeElement!==this.$refs.input?this.$refs.input.focus():void(this.isFocused||(this.isFocused=!0,t&&this.$emit("focus",t)))}},onInput:function(t){var n=t.target;this.internalValue=n.value,this.badInput=n.validity&&n.validity.badInput},onKeyDown:function(t){t.keyCode===$.r.enter&&this.lazyValue!==this.initialValue&&(this.initialValue=this.lazyValue,this.$emit("change",this.initialValue)),this.$emit("keydown",t)},onMouseDown:function(t){t.target!==this.$refs.input&&(t.preventDefault(),t.stopPropagation()),c.a.options.methods.onMouseDown.call(this,t)},onMouseUp:function(t){this.hasMouseDown&&this.focus(),c.a.options.methods.onMouseUp.call(this,t)},setLabelWidth:function(){this.outlined&&(this.labelWidth=this.$refs.label?Math.min(.75*this.$refs.label.scrollWidth+6,this.$el.offsetWidth-24):0)},setPrefixWidth:function(){this.$refs.prefix&&(this.prefixWidth=this.$refs.prefix.offsetWidth)},setPrependWidth:function(){this.outlined&&this.$refs["prepend-inner"]&&(this.prependWidth=this.$refs["prepend-inner"].offsetWidth)},tryAutofocus:function(){if(!this.autofocus||"undefined"==typeof document||!this.$refs.input)return!1;var t=Object(C.a)(this.$el);return!(!t||t.activeElement===this.$refs.input)&&(this.$refs.input.focus(),!0)},updateValue:function(t){this.hasColor=t,t?this.initialValue=this.lazyValue:this.initialValue!==this.lazyValue&&this.$emit("change",this.lazyValue)},onResize:function(){this.setLabelWidth(),this.setPrefixWidth(),this.setPrependWidth()}}})},,,,function(t,n,r){"use strict";var o=r(2),e=(r(27),r(67),r(99),r(59),r(4),r(42),r(65),r(53),r(12),r(72),r(84),r(64),r(1));function l(t,n){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,n){if(!t)return;if("string"==typeof t)return c(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return c(t,n)}(t))||n&&t&&"number"==typeof t.length){r&&(t=r);var i=0,o=function(){};return{s:o,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,m=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){m=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(m)throw e}}}}function c(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i0?Object(o.a)({},t.join(" "),!0):{}}}})},function(t,n,r){"use strict";r(13),r(12),r(14),r(15),r(11),r(16);var o=r(17),e=r(21),l=r(2),c=(r(146),r(22),r(4),r(38),r(373),r(117)),m=r(201),d=r(214),v=r(61),f=r(169),x=r(92),h=r(115),y=r(171),w=r(6),_=r(8);function k(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function O(t){for(var i=1;i0)))},isRound:function(){return Boolean(this.icon||this.fab)},styles:function(){return O({},this.measurableStyles)}},created:function(){var t=this;[["flat","text"],["outline","outlined"],["round","rounded"]].forEach((function(n){var r=Object(e.a)(n,2),o=r[0],l=r[1];t.$attrs.hasOwnProperty(o)&&Object(_.a)(o,l,t)}))},methods:{click:function(t){!this.retainFocusOnClick&&!this.fab&&t.detail&&this.$el.blur(),this.$emit("click",t),this.btnToggle&&this.toggle()},genContent:function(){return this.$createElement("span",{staticClass:"v-btn__content"},this.$slots.default)},genLoader:function(){return this.$createElement("span",{class:"v-btn__loader"},this.$slots.loader||[this.$createElement(m.a,{props:{indeterminate:!0,size:23,width:2}})])}},render:function(t){var n=[this.genContent(),this.loading&&this.genLoader()],r=this.generateRouteLink(),e=r.tag,data=r.data,l=this.hasBg?this.setBackgroundColor:this.setTextColor;return"button"===e&&(data.attrs.type=this.type,data.attrs.disabled=this.disabled),data.attrs.value=["string","number"].includes(Object(o.a)(this.value))?this.value:JSON.stringify(this.value),t(e,this.disabled?data:l(this.color,data),n)}})},function(t,n,r){"use strict";var o=r(2),e=r(1);var l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"value",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"change";return e.a.extend({name:"proxyable",model:{prop:t,event:n},props:Object(o.a)({},t,{required:!1}),data:function(){return{internalLazyValue:this[t]}},computed:{internalValue:{get:function(){return this.internalLazyValue},set:function(t){t!==this.internalLazyValue&&(this.internalLazyValue=t,this.$emit(n,t))}}},watch:Object(o.a)({},t,(function(t){this.internalLazyValue=t}))})}();n.a=l},function(t,n,r){"use strict";var o=r(17),e=(r(38),r(13),r(4),r(42),r(226)),l=r(61),c=r(6),m=r(0),d=r(8),v=Object(c.a)(e.a,l.a);n.a=v.extend({name:"activatable",props:{activator:{default:null,validator:function(t){return["string","object"].includes(Object(o.a)(t))}},disabled:Boolean,internalActivator:Boolean,openOnClick:{type:Boolean,default:!0},openOnHover:Boolean,openOnFocus:Boolean},data:function(){return{activatorElement:null,activatorNode:[],events:["click","mouseenter","mouseleave","focus"],listeners:{}}},watch:{activator:"resetActivator",openOnFocus:"resetActivator",openOnHover:"resetActivator"},mounted:function(){var t=Object(m.n)(this,"activator",!0);t&&["v-slot","normal"].includes(t)&&Object(d.b)('The activator slot must be bound, try \' - + + + @@ -164,12 +178,18 @@ - + + @@ -180,12 +200,19 @@ - + + + @@ -361,6 +388,17 @@ - diff --git a/client/package-lock.json b/client/package-lock.json index db20bd0..e355d22 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -12,7 +12,9 @@ "@nuxtjs/pwa": "^3.3.5", "core-js": "^3.19.3", "nuxt": "^2.15.8", + "prismjs": "^1.29.0", "vue": "^2.6.14", + "vue-prism-editor": "^1.3.0", "vue-server-renderer": "^2.6.14", "vue-template-compiler": "^2.6.14", "vuedraggable": "2.24.3", @@ -10208,6 +10210,14 @@ "node": ">=4" } }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -12677,6 +12687,17 @@ "resolved": "https://registry.npmjs.org/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz", "integrity": "sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g==" }, + "node_modules/vue-prism-editor": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/vue-prism-editor/-/vue-prism-editor-1.3.0.tgz", + "integrity": "sha512-54RfgtMGRMNr9484zKMOZs1wyLDR6EfFylzE2QrMCD9alCvXyYYcS0vX8oUHh+6pMUu6ts59uSN9cHglpU2NRQ==", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "vue": "^2.6.11" + } + }, "node_modules/vue-router": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.3.tgz", @@ -21936,6 +21957,11 @@ "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==" }, + "prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" + }, "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -23854,6 +23880,12 @@ "resolved": "https://registry.npmjs.org/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz", "integrity": "sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g==" }, + "vue-prism-editor": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/vue-prism-editor/-/vue-prism-editor-1.3.0.tgz", + "integrity": "sha512-54RfgtMGRMNr9484zKMOZs1wyLDR6EfFylzE2QrMCD9alCvXyYYcS0vX8oUHh+6pMUu6ts59uSN9cHglpU2NRQ==", + "requires": {} + }, "vue-router": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.3.tgz", diff --git a/client/package.json b/client/package.json index 7559ff8..15b4b4f 100644 --- a/client/package.json +++ b/client/package.json @@ -13,7 +13,9 @@ "@nuxtjs/pwa": "^3.3.5", "core-js": "^3.19.3", "nuxt": "^2.15.8", + "prismjs": "^1.29.0", "vue": "^2.6.14", + "vue-prism-editor": "^1.3.0", "vue-server-renderer": "^2.6.14", "vue-template-compiler": "^2.6.14", "vuedraggable": "2.24.3", diff --git a/dist/static/200.html b/dist/static/200.html index 4c918de..3dd1edf 100644 --- a/dist/static/200.html +++ b/dist/static/200.html @@ -1,9 +1,9 @@ - Home - Edrys + Home - Edrys
Loading...
- + diff --git a/dist/static/_nuxt/089d5a1.js b/dist/static/_nuxt/089d5a1.js deleted file mode 100644 index b2cd4a1..0000000 --- a/dist/static/_nuxt/089d5a1.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{512:function(e,t,r){"use strict";r.r(t);var n=r(26),o=(r(98),{name:"Student",props:["liveClassProxy"],computed:{roomName:function(){return this.liveClassProxy.users[this.$store.state.user.email].room}},data:function(){return{liveRoomProxy:{},ready:!1}},mounted:function(){var e=this;return Object(n.a)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e.ready=!0;case 1:case"end":return t.stop()}}),t)})))()},methods:{}}),c=r(107),l=r(141),d=r.n(l),m=r(206),f=r(96),v=r(596),h=r(538),y=r(597),component=Object(c.a)(o,(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("v-container",[r("div",[e.ready?r("v-row",{attrs:{justify:"center",align:"center"}},[r("v-col",{attrs:{cols:"12",sm:"10",md:"10"}},[r("v-card",[r("v-card-title",[e._v(e._s(e.$store.state.class_.name)+" – "+e._s(e.roomName))]),e._v(" "),r("Modules",{attrs:{role:"student",username:e.$store.state.user.email,"live-class-proxy":e.liveClassProxy}})],1)],1)],1):e._e()],1)])],1)}),[],!1,null,"5893dd9c",null);t.default=component.exports;d()(component,{Modules:r(499).default}),d()(component,{VCard:m.a,VCardTitle:f.d,VCol:v.a,VContainer:h.a,VRow:y.a})},607:function(e,t,r){"use strict";r.r(t);r(59),r(65),r(27),r(12),r(72),r(84),r(15),r(11),r(16);var n=r(17),o=r(49),c=r(2),l=r(26),d=(r(14),r(4),r(121),r(42),r(38),r(54),r(33),r(53),r(64),r(497),r(295),r(13),r(74),r(98),r(512));function m(object,e){var t=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(object,e).enumerable}))),t.push.apply(t,r)}return t}function f(e){for(var i=1;i=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,c=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return c=e.done,e},e:function(e){l=!0,o=e},f:function(){try{c||null==r.return||r.return()}finally{if(l)throw o}}}}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,r=new Array(t);i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,l=!0,c=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return l=t.done,t},e:function(t){c=!0,o=t},f:function(){try{l||null==n.return||n.return()}finally{if(c)throw o}}}}function f(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i0&&void 0!==arguments[0]?arguments[0]:void 0;l=l||this.$store.state.class_,this.className=l.name,this.memberTeacher=(null===(t=l.members)||void 0===t?void 0:t.teacher.join("\n"))||"",this.memberStudent=(null===(e=l.members)||void 0===e||null===(n=e.student)||void 0===n?void 0:n.join("\n"))||"",this.modules=Object(r.a)(null===(o=l)||void 0===o?void 0:o.modules.map((function(t){return _(_({},t),{},{config:t.config,studentConfig:t.studentConfig,teacherConfig:t.teacherConfig,stationConfig:t.stationConfig})})))||[],this.memberUrl=window.location.href.replace("#station","").replace("http://","").replace("https://",""),this.stationUrl=window.location.href.replace("#settings","").replace("#station","").replace("http://","").replace("https://","")+"#station"},copyStationUrl:function(){navigator.clipboard.writeText(this.stationUrl)},copyMemberUrl:function(){navigator.clipboard.writeText(this.memberUrl)},deleteClass:function(){var t=this;return Object(o.a)(regeneratorRuntime.mark((function e(){var n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.$store.state.class_.id,e.prev=1,e.next=4,t.$axios.$get("/data/deleteClass/".concat(n));case 4:e.next=10;break;case 6:return e.prev=6,e.t0=e.catch(1),console.log("Error deleting class..."),e.abrupt("return");case 10:return e.next=12,t.$axios.$get("/data/readUser");case 12:return r=e.sent,e.t1=t.$store,e.next=16,t.$axios.$get("/data/updateUser?user=".concat(encodeURIComponent(JSON.stringify(_(_({},r),{},{memberships:r.memberships.filter((function(t){return t.class_id!=n}))})))));case 16:e.t2=e.sent,e.t1.commit.call(e.t1,"setUser",e.t2),t.$router.push({path:"/"});case 19:case"end":return e.stop()}}),e,null,[[1,6]])})))()},strToList:function(t){return t.replace(/ /g,"").split(",").flatMap((function(s){return s.trim().split("\n")})).filter((function(t){return/^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(t)}))},importModule:function(){this.modules.push({url:this.moduleImportUrl,config:"",studentConfig:"",teacherConfig:"",stationConfig:"",width:"full",height:"tall"}),this.moduleImportUrl=""},save:function(){var t=this;return Object(o.a)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.saveError=!1,t.saveSuccess=!1,t.saveLoading=!0,e.prev=3,e.t0=t.$store,e.next=7,t.$axios.$get("/data/updateClass/".concat(t.$store.state.class_.id)+"?class=".concat(encodeURIComponent(JSON.stringify(t.newClass))));case 7:e.t1=e.sent,e.t0.commit.call(e.t0,"setClass",e.t1),t.saveLoading=!1,t.saveSuccess=!0,t.$emit("update:pendingEdits",!1),t.$emit("close"),e.next=20;break;case 15:e.prev=15,e.t2=e.catch(3),console.log(e.t2),t.saveError=!0,t.saveLoading=!1;case 20:t.$router.app.refresh();case 21:case"end":return e.stop()}}),e,null,[[3,15]])})))()},highlighter:function(code){return Prism.highlight(code,Prism.languages.js,"json")}},components:{PrismEditor:c.a,draggable:d.a}},y=x,k=(n(560),n(107)),S=n(141),C=n.n(S),w=n(610),V=n(611),U=n(225),$=n(207),O=n(96),j=n(608),T=n(566),L=n(612),I=n(613),M=n(614),E=n(615),R=n(622),F=n(486),P=n(203),N=n(535),A=n(511),D=n(536),J=n(539),B=n(492),z=n(623),G=n(609),H=n(616),Y=n(489),K=n(490),Q=n(617),W=n(624),X=n(621),Z=n(600),tt=n(220),et=n(618),nt=n(58),at=n(228),component=Object(k.a)(y,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("v-card",[n("v-toolbar",{attrs:{dark:"",flat:""},scopedSlots:t._u([{key:"extension",fn:function(){return[n("v-tabs",{attrs:{"fixed-tabs":"","center-active":"","show-arrows":""},model:{value:t.tab,callback:function(e){t.tab=e},expression:"tab"}},[n("v-tab",{attrs:{active:""}},[n("v-icon",{attrs:{left:""}},[t._v(" mdi-book-open-outline ")]),t._v("\n Settings\n ")],1),t._v(" "),n("v-tab",[n("v-icon",{attrs:{left:""}},[t._v(" mdi-account-group ")]),t._v("\n Members\n ")],1),t._v(" "),n("v-tab",[n("v-icon",{attrs:{left:""}},[t._v(" mdi-view-dashboard ")]),t._v("\n Modules\n ")],1),t._v(" "),n("v-tab",[n("v-icon",{attrs:{left:""}},[t._v(" mdi-router-wireless ")]),t._v("\n Stations\n ")],1),t._v(" "),n("v-tab",[n("v-icon",{attrs:{left:""}},[t._v(" mdi-share-variant ")]),t._v("\n Share\n ")],1)],1)]},proxy:!0}])},[n("v-toolbar-title",[t._v("Class Settings")]),t._v(" "),n("v-spacer"),t._v(" "),n("v-btn",{attrs:{icon:""},on:{click:function(e){return t.$emit("close")}}},[n("v-icon",[t._v("mdi-close")])],1)],1),t._v(" "),n("v-card-text",{staticStyle:{height:"565px"}},[n("v-tabs-items",{staticClass:"pt-5",model:{value:t.tab,callback:function(e){t.tab=e},expression:"tab"}},[n("v-tab-item",[n("v-form",{ref:"form",on:{submit:function(e){return e.preventDefault(),t.save.apply(null,arguments)}}},[n("v-text-field",{attrs:{counter:20,label:"Class Name",outlined:"",required:""},model:{value:t.className,callback:function(e){t.className=e},expression:"className"}})],1)],1),t._v(" "),n("v-tab-item",[n("v-alert",{attrs:{outlined:"",dense:"",type:"info"}},[t._v("\n Enter emails below, one per line or separated by commas. Next,\n invite your users in by sharing this link:\n "),n("br"),t._v(" "),n("br"),t._v(" "),n("blockquote",{staticStyle:{"margin-left":"10px"}},[n("a",{attrs:{href:"//"+t.memberUrl}},[t._v(t._s(t.memberUrl))]),t._v(" "),n("v-btn",{attrs:{icon:"",small:""},on:{click:t.copyMemberUrl}},[n("v-icon",{attrs:{small:""}},[t._v("mdi-content-copy")])],1)],1)]),t._v(" "),n("v-textarea",{attrs:{outlined:"",label:"List of teacher emails"},model:{value:t.memberTeacher,callback:function(e){t.memberTeacher=e},expression:"memberTeacher"}}),t._v(" "),n("v-textarea",{attrs:{outlined:"",label:"List of student emails"},model:{value:t.memberStudent,callback:function(e){t.memberStudent=e},expression:"memberStudent"}})],1),t._v(" "),n("v-tab-item",[n("v-form",{on:{submit:function(e){return e.preventDefault(),t.importModule.apply(null,arguments)}}},[t.scrapedModules.length==t.modules.length?n("v-list",{attrs:{"two-line":""}},[n("draggable",{attrs:{handle:".handle"},model:{value:t.modules,callback:function(e){t.modules=e},expression:"modules"}},t._l(t.modules,(function(e,i){return n("v-list-item",{key:i,staticClass:"handle"},[n("v-list-item-avatar",[n("v-icon",{staticClass:"grey darken-3",attrs:{dark:""}},[t._v(t._s(t.scrapedModules[i].icon||"mdi-package")+"\n ")])],1),t._v(" "),n("v-list-item-content",[n("v-list-item-title",[t._v(t._s(t.scrapedModules[i].name))]),t._v(" "),n("v-list-item-subtitle",[t._v("\n "+t._s(t.scrapedModules[i].description)+"\n ")])],1),t._v(" "),n("v-list-item-action",[n("v-menu",{attrs:{"close-on-content-click":!1,"nudge-width":200,"offset-x":"","offset-y":"",transition:"slide-y-transition",bottom:""},scopedSlots:t._u([{key:"activator",fn:function(e){var r=e.on,o=e.attrs;return[n("v-btn",t._g(t._b({attrs:{icon:""}},"v-btn",o,!1),r),[n("v-icon",{attrs:{color:"grey darken-1"}},[t._v("mdi-cog")])],1)]}}],null,!0)},[t._v(" "),n("v-expansion-panels",{staticStyle:{width:"100%"},attrs:{accordion:""}},[n("v-expansion-panel",[n("v-expansion-panel-header",{attrs:{"disable-icon-rotate":""},scopedSlots:t._u([{key:"actions",fn:function(){return[n("v-icon",[t._v(" mdi-link ")])]},proxy:!0}],null,!0)},[t._v("\n URL\n ")]),t._v(" "),n("v-expansion-panel-content",[n("v-text-field",{attrs:{filled:"",label:"Module URL"},model:{value:e.url,callback:function(n){t.$set(e,"url",n)},expression:"m.url"}})],1)],1),t._v(" "),n("v-expansion-panel",[n("v-expansion-panel-header",{scopedSlots:t._u([{key:"actions",fn:function(){return[n("v-icon",[t._v(" mdi-script-text ")])]},proxy:!0}],null,!0)},[t._v("\n General settings\n ")]),t._v(" "),n("v-expansion-panel-content",[n("prism-editor",{staticClass:"prism-editor",attrs:{highlight:t.highlighter,"line-numbers":""},model:{value:e.config,callback:function(n){t.$set(e,"config",n)},expression:"m.config"}})],1)],1),t._v(" "),n("v-expansion-panel",[n("v-expansion-panel-header",{scopedSlots:t._u([{key:"actions",fn:function(){return[n("v-icon",[t._v(" mdi-account-circle-outline ")])]},proxy:!0}],null,!0)},[t._v("\n Student Settings\n ")]),t._v(" "),n("v-expansion-panel-content",[n("prism-editor",{staticClass:"prism-editor",attrs:{highlight:t.highlighter,"line-numbers":""},model:{value:e.studentConfig,callback:function(n){t.$set(e,"studentConfig",n)},expression:"m.studentConfig"}})],1)],1),t._v(" "),n("v-expansion-panel",[n("v-expansion-panel-header",{scopedSlots:t._u([{key:"actions",fn:function(){return[n("v-icon",[t._v(" mdi-clipboard-account-outline ")])]},proxy:!0}],null,!0)},[t._v("\n Teacher Settings\n ")]),t._v(" "),n("v-expansion-panel-content",[n("prism-editor",{staticClass:"prism-editor",attrs:{highlight:t.highlighter,"line-numbers":""},model:{value:e.teacherConfig,callback:function(n){t.$set(e,"teacherConfig",n)},expression:"m.teacherConfig"}})],1)],1),t._v(" "),n("v-expansion-panel",[n("v-expansion-panel-header",{scopedSlots:t._u([{key:"actions",fn:function(){return[n("v-icon",[t._v(" mdi-router-wireless ")])]},proxy:!0}],null,!0)},[t._v("\n Station Settings\n ")]),t._v(" "),n("v-expansion-panel-content",[n("prism-editor",{staticClass:"prism-editor",attrs:{highlight:t.highlighter,"line-numbers":""},model:{value:e.stationConfig,callback:function(n){t.$set(e,"stationConfig",n)},expression:"m.stationConfig"}})],1)],1)],1)],1)],1),t._v(" "),n("v-list-item-action",[n("v-btn",{attrs:{icon:""},on:{click:function(){t.modules.splice(i,1)}}},[n("v-icon",{attrs:{color:"grey darken-1"}},[t._v("mdi-close")])],1)],1)],1)})),1)],1):n("div",[n("v-skeleton-loader",{staticClass:"mx-auto",attrs:{type:"list-item-avatar-two-line"}})],1),t._v(" "),n("v-list-item",[n("v-list-item-avatar",[n("v-icon",{staticClass:"grey darken-3",attrs:{dark:""}},[t._v(" mdi-link ")])],1),t._v(" "),n("v-list-item-content",[n("v-text-field",{attrs:{label:"Module URL",required:""},model:{value:t.moduleImportUrl,callback:function(e){t.moduleImportUrl=e},expression:"moduleImportUrl"}})],1),t._v(" "),n("v-list-item-action",[n("v-btn",{attrs:{depressed:"",type:"submit",disabled:!t.validate_url(t.moduleImportUrl)}},[n("v-icon",{attrs:{left:""}},[t._v(" mdi-view-grid-plus ")]),t._v("\n Add\n ")],1)],1)],1)],1),t._v(" "),n("v-divider",{staticClass:"pb-2"}),t._v(" "),n("v-btn",{attrs:{href:"https://github.com/topics/edrys-module",target:"_blank"}},[n("v-icon",{attrs:{left:""}},[t._v(" mdi-github ")]),t._v("\n Explore on GitHub\n ")],1)],1),t._v(" "),n("v-tab-item",[t._v("\n To add a new station, simply open this link on the client device:\n "),n("br"),t._v(" "),n("br"),t._v(" "),n("blockquote",{staticStyle:{"margin-left":"15px"}},[n("a",{attrs:{href:"//"+t.stationUrl,target:"_blank"}},[t._v(t._s(t.stationUrl))]),t._v(" "),n("v-btn",{attrs:{icon:"",small:""},on:{click:t.copyStationUrl}},[n("v-icon",{attrs:{small:""}},[t._v("mdi-content-copy")])],1)],1),t._v(" "),n("br")]),t._v(" "),n("v-tab-item",[n("v-row",[n("v-col",[n("v-btn",{attrs:{depressed:"",block:""},on:{click:t.downloadClass}},[n("v-icon",{attrs:{left:""}},[t._v(" mdi-download ")]),t._v("\n Download class file\n ")],1)],1),t._v(" "),n("v-col",[n("v-file-input",{attrs:{dense:"",rules:t.restoreFileRules,accept:"application/json",label:"Restore class from file","prepend-icon":"mdi-upload"},on:{change:t.restoreFile},model:{value:t.selectedFile,callback:function(e){t.selectedFile=e},expression:"selectedFile"}})],1)],1)],1)],1)],1),t._v(" "),n("v-snackbar",{attrs:{timeout:2e3,value:t.restoreSuccess,absolute:"",bottom:"",right:"",color:"success"}},[t._v("\n File restored - check everything is okay then save\n ")]),t._v(" "),n("v-snackbar",{attrs:{timeout:600,value:t.saveSuccess,absolute:"",bottom:"",right:""}},[t._v("\n Class saved successfully\n ")]),t._v(" "),n("v-snackbar",{attrs:{timeout:1400,value:t.saveError,color:"error",absolute:"",bottom:"",right:""}},[t._v("\n Sorry there was a problem saving, please try again\n ")]),t._v(" "),n("v-card-actions",[n("div",{staticClass:"pr-4 float-right"},[n("v-badge",{staticStyle:{"margin-top":"30px"},attrs:{overlap:"",dot:"",color:"red",value:t.pendingEdits}},[n("v-btn",{attrs:{color:"primary",loading:t.saveLoading,disabled:t.saveLoading},on:{click:t.save}},[n("v-icon",{attrs:{left:""}},[t._v(" mdi-upload ")]),t._v("\n Save")],1)],1)],1),t._v(" "),n("v-menu",{attrs:{"offset-y":""},scopedSlots:t._u([{key:"activator",fn:function(e){var r=e.on,o=e.attrs;return[n("v-btn",t._g(t._b({staticClass:"float-right",staticStyle:{"margin-top":"30px","margin-right":"10px"},attrs:{color:"",depressed:""}},"v-btn",o,!1),r),[t._v("\n Delete Class")])]}}])},[t._v(" "),n("v-list",[n("v-list-item",[n("v-list-item-content",[t._v("Are you sure?\n\n "),n("v-btn",{staticClass:"float-right",staticStyle:{"margin-top":"10px"},attrs:{color:"red",depressed:""},on:{click:t.deleteClass}},[t._v("\n Yes, delete forever")])],1)],1)],1)],1)],1)],1)}),[],!1,null,null,null);e.default=component.exports;C()(component,{VAlert:w.a,VBadge:V.a,VBtn:U.a,VCard:$.a,VCardActions:O.a,VCardText:O.c,VCol:j.a,VDivider:T.a,VExpansionPanel:L.a,VExpansionPanelContent:I.a,VExpansionPanelHeader:M.a,VExpansionPanels:E.a,VFileInput:R.a,VForm:F.a,VIcon:P.a,VList:N.a,VListItem:A.a,VListItemAction:D.a,VListItemAvatar:J.a,VListItemContent:B.a,VListItemSubtitle:B.b,VListItemTitle:B.c,VMenu:z.a,VRow:G.a,VSkeletonLoader:H.a,VSnackbar:Y.a,VSpacer:K.a,VTab:Q.a,VTabItem:W.a,VTabs:X.a,VTabsItems:Z.a,VTextField:tt.a,VTextarea:et.a,VToolbar:nt.a,VToolbarTitle:at.a})},533:function(t,e,n){var content=n(561);content.__esModule&&(content=content.default),"string"==typeof content&&(content=[[t.i,content,""]]),content.locals&&(t.exports=content.locals);(0,n(20).default)("a3a3f8c0",content,!0,{sourceMap:!1})},560:function(t,e,n){"use strict";n(533)},561:function(t,e,n){var r=n(19)(!1);r.push([t.i,".prism-editor{background:#2d2d2d;color:#ccc;font-family:Fira code,Fira Mono,Consolas,Menlo,Courier,monospace;font-size:14px;line-height:1.5;padding:5px;max-height:60 vh}",""]),t.exports=r}}]); \ No newline at end of file diff --git a/dist/static/_nuxt/5cc45c7.js b/dist/static/_nuxt/3113cab.js similarity index 97% rename from dist/static/_nuxt/5cc45c7.js rename to dist/static/_nuxt/3113cab.js index 1bd61f5..4d20830 100644 --- a/dist/static/_nuxt/5cc45c7.js +++ b/dist/static/_nuxt/3113cab.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{498:function(e,r,t){"use strict";t.r(r);var o=t(2);t(4),t(53),t(64),t(497),t(295),t(13),t(12),t(14),t(15),t(11),t(16);function n(object,e){var r=Object.keys(object);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(object);e&&(t=t.filter((function(e){return Object.getOwnPropertyDescriptor(object,e).enumerable}))),r.push.apply(r,t)}return r}var c={name:"Module",props:["role","username","liveClassProxy","scrapedModule"],data:function(){return{}},computed:{iframeOrigin:function(){return new URL(this.scrapedModule.url).origin}},watch:{liveClassProxy:function(){this.updateIframe()},"$store.state.lastRecievedMessage":function(e){null!=e&&this.$refs.iframe.contentWindow.postMessage(function(e){for(var i=1;i-1&&e.length-1<1||null!=this.max&&n<0&&e.length+1>this.max||(n>-1?e.splice(n,1):e.push(t),this.internalValue=e)},updateSingle:function(t){var e=t===this.internalValue;this.mandatory&&e||(this.internalValue=e?void 0:t)}},render:function(t){return t(this.tag,this.genData(),this.$slots.default)}});x.extend({name:"v-item-group",provide:function(){return{itemGroup:this}}})},504:function(t,e,n){"use strict";n(4),n(11);var r=n(0);function o(t,e){var n=t.changedTouches[0];e.touchendX=n.clientX,e.touchendY=n.clientY,e.end&&e.end(Object.assign(t,e)),function(t){var e=t.touchstartX,n=t.touchendX,r=t.touchstartY,o=t.touchendY;t.offsetX=n-e,t.offsetY=o-r,Math.abs(t.offsetY)<.5*Math.abs(t.offsetX)&&(t.left&&ne+16&&t.right(t)),Math.abs(t.offsetX)<.5*Math.abs(t.offsetY)&&(t.up&&or+16&&t.down(t))}(e)}function l(t){var e={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:t.left,right:t.right,up:t.up,down:t.down,start:t.start,move:t.move,end:t.end};return{touchstart:function(t){return function(t,e){var n=t.changedTouches[0];e.touchstartX=n.clientX,e.touchstartY=n.clientY,e.start&&e.start(Object.assign(t,e))}(t,e)},touchend:function(t){return o(t,e)},touchmove:function(t){return function(t,e){var n=t.changedTouches[0];e.touchmoveX=n.clientX,e.touchmoveY=n.clientY,e.move&&e.move(Object.assign(t,e))}(t,e)}}}var c={inserted:function(t,e,n){var o=e.value,c=o.parent?t.parentElement:t,d=o.options||{passive:!0};if(c){var v=l(e.value);c._touchHandlers=Object(c._touchHandlers),c._touchHandlers[n.context._uid]=v,Object(r.s)(v).forEach((function(t){c.addEventListener(t,v[t],d)}))}},unbind:function(t,e,n){var o=e.value.parent?t.parentElement:t;if(o&&o._touchHandlers){var l=o._touchHandlers[n.context._uid];Object(r.s)(l).forEach((function(t){o.removeEventListener(t,l[t])})),delete o._touchHandlers[n.context._uid]}}};e.a=c},506:function(t,e,n){var r;"undefined"!=typeof self&&self,r=function(t){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(object,t){return Object.prototype.hasOwnProperty.call(object,t)},n.p="",n(n.s="fb15")}({"01f9":function(t,e,n){"use strict";var r=n("2d00"),o=n("5ca1"),l=n("2aba"),c=n("32e9"),d=n("84f2"),v=n("41a0"),h=n("7f20"),f=n("38fd"),m=n("2b4c")("iterator"),x=!([].keys&&"next"in[].keys()),_="keys",y="values",w=function(){return this};t.exports=function(t,e,n,O,k,j,S){v(n,e,O);var C,P,D,E=function(t){if(!x&&t in $)return $[t];switch(t){case _:case y:return function(){return new n(this,t)}}return function(){return new n(this,t)}},I=e+" Iterator",T=k==y,A=!1,$=t.prototype,M=$[m]||$["@@iterator"]||k&&$[k],B=M||E(k),z=k?T?E("entries"):B:void 0,N="Array"==e&&$.entries||M;if(N&&(D=f(N.call(new t)))!==Object.prototype&&D.next&&(h(D,I,!0),r||"function"==typeof D[m]||c(D,m,w)),T&&M&&M.name!==y&&(A=!0,B=function(){return M.call(this)}),r&&!S||!x&&!A&&$[m]||c($,m,B),d[e]=B,d[I]=w,k)if(C={values:T?B:E(y),keys:j?B:E(_),entries:z},S)for(P in C)P in $||l($,P,C[P]);else o(o.P+o.F*(x||A),e,C);return C}},"02f4":function(t,e,n){var r=n("4588"),o=n("be13");t.exports=function(t){return function(e,n){var a,b,s=String(o(e)),i=r(n),l=s.length;return i<0||i>=l?t?"":void 0:(a=s.charCodeAt(i))<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?t?s.charAt(i):a:t?s.slice(i,i+2):b-56320+(a-55296<<10)+65536}}},"0390":function(t,e,n){"use strict";var r=n("02f4")(!0);t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},"0bfb":function(t,e,n){"use strict";var r=n("cb7c");t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},"0d58":function(t,e,n){var r=n("ce10"),o=n("e11e");t.exports=Object.keys||function(t){return r(t,o)}},1495:function(t,e,n){var r=n("86cc"),o=n("cb7c"),l=n("0d58");t.exports=n("9e1e")?Object.defineProperties:function(t,e){o(t);for(var n,c=l(e),d=c.length,i=0;d>i;)r.f(t,n=c[i++],e[n]);return t}},"214f":function(t,e,n){"use strict";n("b0c5");var r=n("2aba"),o=n("32e9"),l=n("79e5"),c=n("be13"),d=n("2b4c"),v=n("520a"),h=d("species"),f=!l((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),m=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();t.exports=function(t,e,n){var x=d(t),_=!l((function(){var e={};return e[x]=function(){return 7},7!=""[t](e)})),y=_?!l((function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[h]=function(){return n}),n[x](""),!e})):void 0;if(!_||!y||"replace"===t&&!f||"split"===t&&!m){var w=/./[x],O=n(c,x,""[t],(function(t,e,n,r,o){return e.exec===v?_&&!o?{done:!0,value:w.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}})),k=O[0],j=O[1];r(String.prototype,t,k),o(RegExp.prototype,x,2==e?function(t,e){return j.call(t,this,e)}:function(t){return j.call(t,this)})}}},"230e":function(t,e,n){var r=n("d3f4"),o=n("7726").document,l=r(o)&&r(o.createElement);t.exports=function(t){return l?o.createElement(t):{}}},"23c6":function(t,e,n){var r=n("2d95"),o=n("2b4c")("toStringTag"),l="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:l?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},2621:function(t,e){e.f=Object.getOwnPropertySymbols},"2aba":function(t,e,n){var r=n("7726"),o=n("32e9"),l=n("69a8"),c=n("ca5a")("src"),d=n("fa5b"),v="toString",h=(""+d).split(v);n("8378").inspectSource=function(t){return d.call(t)},(t.exports=function(t,e,n,d){var v="function"==typeof n;v&&(l(n,"name")||o(n,"name",e)),t[e]!==n&&(v&&(l(n,c)||o(n,c,t[e]?""+t[e]:h.join(String(e)))),t===r?t[e]=n:d?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,v,(function(){return"function"==typeof this&&this[c]||d.call(this)}))},"2aeb":function(t,e,n){var r=n("cb7c"),o=n("1495"),l=n("e11e"),c=n("613b")("IE_PROTO"),d=function(){},v=function(){var t,iframe=n("230e")("iframe"),i=l.length;for(iframe.style.display="none",n("fab2").appendChild(iframe),iframe.src="javascript:",(t=iframe.contentWindow.document).open(),t.write("
Loading...
- + From 551918bf9ed8333ce9c72ae3c9706315226acc37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Mon, 21 Nov 2022 17:29:15 +0100 Subject: [PATCH 17/57] chore: upgraded .ignore and .dockerignore --- .dockerignore | 5 ++++- .gitignore | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.dockerignore b/.dockerignore index 412c257..2895164 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1 +1,4 @@ -docker-compose.yml \ No newline at end of file +.github +.gitignore +Dockerfile +docker-compose.yml diff --git a/.gitignore b/.gitignore index 22ec07a..12eb0d2 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -.edrys \ No newline at end of file +.edrys +client/.nuxt +client/node_modules \ No newline at end of file From c95d389dad2b30a3a5c2e4e7f72d16a8f451299f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Mon, 21 Nov 2022 17:31:13 +0100 Subject: [PATCH 18/57] Add Makefile --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..a92f3d0 --- /dev/null +++ b/Makefile @@ -0,0 +1,10 @@ +all: client deno + +client: + cd client && npm run build && cp -r dist/* ../dist/static + +deno: + deno bundle server/app.ts dist/app.js + +run: + deno run -A dist/app.js --address localhost:8000 --serve-path dist/static --secret 182761552627328716 \ No newline at end of file From 52de40b470b664c85778c98d47202db2a0939d95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Mon, 21 Nov 2022 22:00:21 +0100 Subject: [PATCH 19/57] improve: Name rules for special characters --- client/layouts/default.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/layouts/default.vue b/client/layouts/default.vue index e8b42db..508f295 100644 --- a/client/layouts/default.vue +++ b/client/layouts/default.vue @@ -205,8 +205,8 @@ export default { displayNameRules: [ (v) => !!v || "Name required", (v) => - /^([A-Za-z ]{1,100})$/.test(v) || "Name can only contain letters", - (v) => v.includes(" ") || "Please enter your full name", + /^([^0-9]{1,100})$/.test(v) || "Name can only contain letters", + (v) => v.split(" ").length >= 2 || "Please enter your full name", ], dialogShown: true, From b3a119f7413c84026499c8416ed77eb8af6c431b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Dietrich?= Date: Tue, 22 Nov 2022 12:15:42 +0100 Subject: [PATCH 20/57] Add support for internal yaml configuration --- client/components/Settings.vue | 121 +++++++++++++++++++++----- client/package-lock.json | 152 +++++++++++++++++++++++++++------ client/package.json | 1 + 3 files changed, 231 insertions(+), 43 deletions(-) diff --git a/client/components/Settings.vue b/client/components/Settings.vue index f28725b..6bac7ec 100644 --- a/client/components/Settings.vue +++ b/client/components/Settings.vue @@ -285,22 +285,39 @@ - + mdi-download - Download class file + Download class file (.yml) + + + mdi-download + Download class file (.json) + + + + + + + @@ -388,6 +405,7 @@
Loading...
- + diff --git a/dist/static/_nuxt/cfe2119.js b/dist/static/_nuxt/022b7f2.js similarity index 94% rename from dist/static/_nuxt/cfe2119.js rename to dist/static/_nuxt/022b7f2.js index fdc755a..120525f 100644 --- a/dist/static/_nuxt/cfe2119.js +++ b/dist/static/_nuxt/022b7f2.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{494:function(t,e,l){var r=l(28);t.exports=function(t){return r(Map.prototype.entries,t)}},500:function(t,e,l){var content=l(547);content.__esModule&&(content=content.default),"string"==typeof content&&(content=[[t.i,content,""]]),content.locals&&(t.exports=content.locals);(0,l(20).default)("b9f570ac",content,!0,{sourceMap:!1})},519:function(t,e,l){"use strict";l(543)("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),l(544))},520:function(t,e,l){"use strict";l(10)({target:"Map",proto:!0,real:!0,forced:l(63)},{deleteAll:l(545)})},521:function(t,e,l){"use strict";var r=l(10),o=l(63),n=l(29),f=l(82),c=l(494),m=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{every:function(t){var map=n(this),e=c(map),l=f(t,arguments.length>1?arguments[1]:void 0);return!m(e,(function(t,e,r){if(!l(e,t,map))return r()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},522:function(t,e,l){"use strict";var r=l(63),o=l(10),n=l(66),f=l(82),c=l(28),m=l(77),d=l(29),v=l(122),x=l(494),h=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{filter:function(t){var map=d(this),e=x(map),l=f(t,arguments.length>1?arguments[1]:void 0),r=new(v(map,n("Map"))),o=m(r.set);return h(e,(function(t,e){l(e,t,map)&&c(o,r,t,e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),r}})},523:function(t,e,l){"use strict";var r=l(10),o=l(63),n=l(29),f=l(82),c=l(494),m=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{find:function(t){var map=n(this),e=c(map),l=f(t,arguments.length>1?arguments[1]:void 0);return m(e,(function(t,e,r){if(l(e,t,map))return r(e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},524:function(t,e,l){"use strict";var r=l(10),o=l(63),n=l(29),f=l(82),c=l(494),m=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{findKey:function(t){var map=n(this),e=c(map),l=f(t,arguments.length>1?arguments[1]:void 0);return m(e,(function(t,e,r){if(l(e,t,map))return r(t)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},525:function(t,e,l){"use strict";var r=l(63),o=l(10),n=l(29),f=l(494),c=l(546),m=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{includes:function(t){return m(f(n(this)),(function(e,l,r){if(c(l,t))return r()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},526:function(t,e,l){"use strict";var r=l(10),o=l(63),n=l(29),f=l(494),c=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{keyOf:function(t){return c(f(n(this)),(function(e,l,r){if(l===t)return r(e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},527:function(t,e,l){"use strict";var r=l(63),o=l(10),n=l(66),f=l(82),c=l(28),m=l(77),d=l(29),v=l(122),x=l(494),h=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{mapKeys:function(t){var map=d(this),e=x(map),l=f(t,arguments.length>1?arguments[1]:void 0),r=new(v(map,n("Map"))),o=m(r.set);return h(e,(function(t,e){c(o,r,l(e,t,map),e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),r}})},528:function(t,e,l){"use strict";var r=l(63),o=l(10),n=l(66),f=l(82),c=l(28),m=l(77),d=l(29),v=l(122),x=l(494),h=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{mapValues:function(t){var map=d(this),e=x(map),l=f(t,arguments.length>1?arguments[1]:void 0),r=new(v(map,n("Map"))),o=m(r.set);return h(e,(function(t,e){c(o,r,t,l(e,t,map))}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),r}})},529:function(t,e,l){"use strict";var r=l(10),o=l(63),n=l(77),f=l(29),c=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{merge:function(t){for(var map=f(this),e=n(map.set),l=arguments.length,i=0;i1?arguments[1]:void 0);return m(e,(function(t,e,r){if(l(e,t,map))return r()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},532:function(t,e,l){"use strict";var r=l(63),o=l(10),n=l(3),f=l(28),c=l(29),m=l(77),d=n.TypeError;o({target:"Map",proto:!0,real:!0,forced:r},{update:function(t,e){var map=c(this),l=m(map.get),r=m(map.has),o=m(map.set),n=arguments.length;m(e);var v=f(r,map,t);if(!v&&n<3)throw d("Updating absent value");var x=v?f(l,map,t):m(n>2?arguments[2]:void 0)(t,map);return f(o,map,t,e(x,t,map)),map}})},543:function(t,e,l){"use strict";var r=l(10),o=l(3),n=l(7),f=l(145),c=l(47),m=l(298),d=l(213),v=l(142),x=l(23),h=l(30),w=l(9),y=l(181),O=l(108),S=l(184);t.exports=function(t,e,l){var E=-1!==t.indexOf("Map"),j=-1!==t.indexOf("Weak"),T=E?"set":"add",R=o[t],I=R&&R.prototype,N=R,_={},A=function(t){var e=n(I[t]);c(I,t,"add"==t?function(t){return e(this,0===t?0:t),this}:"delete"==t?function(t){return!(j&&!h(t))&&e(this,0===t?0:t)}:"get"==t?function(t){return j&&!h(t)?void 0:e(this,0===t?0:t)}:"has"==t?function(t){return!(j&&!h(t))&&e(this,0===t?0:t)}:function(t,l){return e(this,0===t?0:t,l),this})};if(f(t,!x(R)||!(j||I.forEach&&!w((function(){(new R).entries().next()})))))N=l.getConstructor(e,t,E,T),m.enable();else if(f(t,!0)){var M=new N,P=M[T](j?{}:-0,1)!=M,k=w((function(){M.has(1)})),D=y((function(t){new R(t)})),C=!j&&w((function(){for(var t=new R,e=5;e--;)t[T](e,e);return!t.has(-0)}));D||((N=e((function(t,e){v(t,I);var l=S(new R,t,N);return null!=e&&d(e,l[T],{that:l,AS_ENTRIES:E}),l}))).prototype=I,I.constructor=N),(k||C)&&(A("delete"),A("has"),E&&A("get")),(C||P)&&A(T),j&&I.clear&&delete I.clear}return _[t]=N,r({global:!0,forced:N!=R},_),O(N,t),j||l.setStrong(N,t,E),N}},544:function(t,e,l){"use strict";var r=l(40).f,o=l(86),n=l(182),f=l(82),c=l(142),m=l(213),d=l(222),v=l(183),x=l(31),h=l(298).fastKey,w=l(73),y=w.set,O=w.getterFor;t.exports={getConstructor:function(t,e,l,d){var v=t((function(t,r){c(t,w),y(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),x||(t.size=0),null!=r&&m(r,t[d],{that:t,AS_ENTRIES:l})})),w=v.prototype,S=O(e),E=function(t,e,l){var r,o,n=S(t),f=j(t,e);return f?f.value=l:(n.last=f={index:o=h(e,!0),key:e,value:l,previous:r=n.last,next:void 0,removed:!1},n.first||(n.first=f),r&&(r.next=f),x?n.size++:t.size++,"F"!==o&&(n.index[o]=f)),t},j=function(t,e){var l,r=S(t),o=h(e);if("F"!==o)return r.index[o];for(l=r.first;l;l=l.next)if(l.key==e)return l};return n(w,{clear:function(){for(var t=S(this),data=t.index,e=t.first;e;)e.removed=!0,e.previous&&(e.previous=e.previous.next=void 0),delete data[e.index],e=e.next;t.first=t.last=void 0,x?t.size=0:this.size=0},delete:function(t){var e=this,l=S(e),r=j(e,t);if(r){var o=r.next,n=r.previous;delete l.index[r.index],r.removed=!0,n&&(n.next=o),o&&(o.previous=n),l.first==r&&(l.first=o),l.last==r&&(l.last=n),x?l.size--:e.size--}return!!r},forEach:function(t){for(var e,l=S(this),r=f(t,arguments.length>1?arguments[1]:void 0);e=e?e.next:l.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!j(this,t)}}),n(w,l?{get:function(t){var e=j(this,t);return e&&e.value},set:function(t,e){return E(this,0===t?0:t,e)}}:{add:function(t){return E(this,t=0===t?0:t,t)}}),x&&r(w,"size",{get:function(){return S(this).size}}),v},setStrong:function(t,e,l){var r=e+" Iterator",o=O(e),n=O(r);d(t,e,(function(t,e){y(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=n(this),e=t.kind,l=t.last;l&&l.removed;)l=l.previous;return t.target&&(t.last=l=l?l.next:t.state.first)?"keys"==e?{value:l.key,done:!1}:"values"==e?{value:l.value,done:!1}:{value:[l.key,l.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),l?"entries":"values",!l,!0),v(e)}}},545:function(t,e,l){"use strict";var r=l(28),o=l(77),n=l(29);t.exports=function(){for(var t,e=n(this),l=o(e.delete),f=!0,c=0,m=arguments.length;c.col,.row--dense>[class*=col-]{padding:4px}.row.no-gutters{margin:0}.row.no-gutters>.col,.row.no-gutters>[class*=col-]{padding:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{width:100%;padding:12px}.col{flex-basis:0;flex-grow:1;max-width:100%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-3{margin-left:25%}.v-application--is-rtl .offset-3{margin-right:25%}.v-application--is-ltr .offset-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-6{margin-left:50%}.v-application--is-rtl .offset-6{margin-right:50%}.v-application--is-ltr .offset-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-9{margin-left:75%}.v-application--is-rtl .offset-9{margin-right:75%}.v-application--is-ltr .offset-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-11{margin-right:91.6666666667%}@media(min-width:600px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-sm-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-sm-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-sm-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-sm-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-sm-0{margin-left:0}.v-application--is-rtl .offset-sm-0{margin-right:0}.v-application--is-ltr .offset-sm-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-sm-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-sm-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-sm-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-sm-3{margin-left:25%}.v-application--is-rtl .offset-sm-3{margin-right:25%}.v-application--is-ltr .offset-sm-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-sm-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-sm-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-sm-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-sm-6{margin-left:50%}.v-application--is-rtl .offset-sm-6{margin-right:50%}.v-application--is-ltr .offset-sm-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-sm-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-sm-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-sm-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-sm-9{margin-left:75%}.v-application--is-rtl .offset-sm-9{margin-right:75%}.v-application--is-ltr .offset-sm-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-sm-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-sm-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-sm-11{margin-right:91.6666666667%}}@media(min-width:960px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-md-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-md-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-md-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-md-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-md-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-md-0{margin-left:0}.v-application--is-rtl .offset-md-0{margin-right:0}.v-application--is-ltr .offset-md-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-md-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-md-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-md-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-md-3{margin-left:25%}.v-application--is-rtl .offset-md-3{margin-right:25%}.v-application--is-ltr .offset-md-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-md-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-md-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-md-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-md-6{margin-left:50%}.v-application--is-rtl .offset-md-6{margin-right:50%}.v-application--is-ltr .offset-md-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-md-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-md-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-md-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-md-9{margin-left:75%}.v-application--is-rtl .offset-md-9{margin-right:75%}.v-application--is-ltr .offset-md-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-md-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-md-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-md-11{margin-right:91.6666666667%}}@media(min-width:1264px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-lg-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-lg-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-lg-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-lg-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-lg-0{margin-left:0}.v-application--is-rtl .offset-lg-0{margin-right:0}.v-application--is-ltr .offset-lg-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-lg-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-lg-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-lg-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-lg-3{margin-left:25%}.v-application--is-rtl .offset-lg-3{margin-right:25%}.v-application--is-ltr .offset-lg-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-lg-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-lg-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-lg-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-lg-6{margin-left:50%}.v-application--is-rtl .offset-lg-6{margin-right:50%}.v-application--is-ltr .offset-lg-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-lg-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-lg-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-lg-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-lg-9{margin-left:75%}.v-application--is-rtl .offset-lg-9{margin-right:75%}.v-application--is-ltr .offset-lg-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-lg-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-lg-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-lg-11{margin-right:91.6666666667%}}@media(min-width:1904px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-xl-0{margin-left:0}.v-application--is-rtl .offset-xl-0{margin-right:0}.v-application--is-ltr .offset-xl-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-xl-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-xl-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-xl-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-xl-3{margin-left:25%}.v-application--is-rtl .offset-xl-3{margin-right:25%}.v-application--is-ltr .offset-xl-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-xl-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-xl-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-xl-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-xl-6{margin-left:50%}.v-application--is-rtl .offset-xl-6{margin-right:50%}.v-application--is-ltr .offset-xl-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-xl-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-xl-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-xl-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-xl-9{margin-left:75%}.v-application--is-rtl .offset-xl-9{margin-right:75%}.v-application--is-ltr .offset-xl-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-xl-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-xl-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-xl-11{margin-right:91.6666666667%}}",""]),t.exports=r},608:function(t,e,l){"use strict";l(12),l(14),l(15),l(16);var r=l(2),o=(l(4),l(22),l(13),l(27),l(71),l(519),l(53),l(520),l(521),l(522),l(523),l(524),l(525),l(526),l(527),l(528),l(529),l(530),l(531),l(532),l(64),l(38),l(11),l(97),l(500),l(1)),n=l(100),f=l(0);function c(object,t){var e=Object.keys(object);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(object);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),e.push.apply(e,l)}return e}function m(t){for(var i=1;i1?arguments[1]:void 0);return!m(e,(function(t,e,r){if(!l(e,t,map))return r()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},522:function(t,e,l){"use strict";var r=l(64),o=l(10),n=l(67),f=l(82),c=l(28),m=l(77),d=l(29),v=l(122),x=l(494),h=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{filter:function(t){var map=d(this),e=x(map),l=f(t,arguments.length>1?arguments[1]:void 0),r=new(v(map,n("Map"))),o=m(r.set);return h(e,(function(t,e){l(e,t,map)&&c(o,r,t,e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),r}})},523:function(t,e,l){"use strict";var r=l(10),o=l(64),n=l(29),f=l(82),c=l(494),m=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{find:function(t){var map=n(this),e=c(map),l=f(t,arguments.length>1?arguments[1]:void 0);return m(e,(function(t,e,r){if(l(e,t,map))return r(e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},524:function(t,e,l){"use strict";var r=l(10),o=l(64),n=l(29),f=l(82),c=l(494),m=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{findKey:function(t){var map=n(this),e=c(map),l=f(t,arguments.length>1?arguments[1]:void 0);return m(e,(function(t,e,r){if(l(e,t,map))return r(t)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},525:function(t,e,l){"use strict";var r=l(64),o=l(10),n=l(29),f=l(494),c=l(546),m=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{includes:function(t){return m(f(n(this)),(function(e,l,r){if(c(l,t))return r()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},526:function(t,e,l){"use strict";var r=l(10),o=l(64),n=l(29),f=l(494),c=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{keyOf:function(t){return c(f(n(this)),(function(e,l,r){if(l===t)return r(e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}})},527:function(t,e,l){"use strict";var r=l(64),o=l(10),n=l(67),f=l(82),c=l(28),m=l(77),d=l(29),v=l(122),x=l(494),h=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{mapKeys:function(t){var map=d(this),e=x(map),l=f(t,arguments.length>1?arguments[1]:void 0),r=new(v(map,n("Map"))),o=m(r.set);return h(e,(function(t,e){c(o,r,l(e,t,map),e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),r}})},528:function(t,e,l){"use strict";var r=l(64),o=l(10),n=l(67),f=l(82),c=l(28),m=l(77),d=l(29),v=l(122),x=l(494),h=l(213);o({target:"Map",proto:!0,real:!0,forced:r},{mapValues:function(t){var map=d(this),e=x(map),l=f(t,arguments.length>1?arguments[1]:void 0),r=new(v(map,n("Map"))),o=m(r.set);return h(e,(function(t,e){c(o,r,t,l(e,t,map))}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),r}})},529:function(t,e,l){"use strict";var r=l(10),o=l(64),n=l(77),f=l(29),c=l(213);r({target:"Map",proto:!0,real:!0,forced:o},{merge:function(t){for(var map=f(this),e=n(map.set),l=arguments.length,i=0;i1?arguments[1]:void 0);return m(e,(function(t,e,r){if(l(e,t,map))return r()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}})},532:function(t,e,l){"use strict";var r=l(64),o=l(10),n=l(3),f=l(28),c=l(29),m=l(77),d=n.TypeError;o({target:"Map",proto:!0,real:!0,forced:r},{update:function(t,e){var map=c(this),l=m(map.get),r=m(map.has),o=m(map.set),n=arguments.length;m(e);var v=f(r,map,t);if(!v&&n<3)throw d("Updating absent value");var x=v?f(l,map,t):m(n>2?arguments[2]:void 0)(t,map);return f(o,map,t,e(x,t,map)),map}})},543:function(t,e,l){"use strict";var r=l(10),o=l(3),n=l(7),f=l(145),c=l(47),m=l(298),d=l(213),v=l(142),x=l(23),h=l(30),w=l(9),y=l(181),O=l(108),S=l(184);t.exports=function(t,e,l){var E=-1!==t.indexOf("Map"),j=-1!==t.indexOf("Weak"),T=E?"set":"add",R=o[t],I=R&&R.prototype,N=R,_={},A=function(t){var e=n(I[t]);c(I,t,"add"==t?function(t){return e(this,0===t?0:t),this}:"delete"==t?function(t){return!(j&&!h(t))&&e(this,0===t?0:t)}:"get"==t?function(t){return j&&!h(t)?void 0:e(this,0===t?0:t)}:"has"==t?function(t){return!(j&&!h(t))&&e(this,0===t?0:t)}:function(t,l){return e(this,0===t?0:t,l),this})};if(f(t,!x(R)||!(j||I.forEach&&!w((function(){(new R).entries().next()})))))N=l.getConstructor(e,t,E,T),m.enable();else if(f(t,!0)){var M=new N,P=M[T](j?{}:-0,1)!=M,k=w((function(){M.has(1)})),D=y((function(t){new R(t)})),C=!j&&w((function(){for(var t=new R,e=5;e--;)t[T](e,e);return!t.has(-0)}));D||((N=e((function(t,e){v(t,I);var l=S(new R,t,N);return null!=e&&d(e,l[T],{that:l,AS_ENTRIES:E}),l}))).prototype=I,I.constructor=N),(k||C)&&(A("delete"),A("has"),E&&A("get")),(C||P)&&A(T),j&&I.clear&&delete I.clear}return _[t]=N,r({global:!0,forced:N!=R},_),O(N,t),j||l.setStrong(N,t,E),N}},544:function(t,e,l){"use strict";var r=l(39).f,o=l(86),n=l(182),f=l(82),c=l(142),m=l(213),d=l(222),v=l(183),x=l(31),h=l(298).fastKey,w=l(73),y=w.set,O=w.getterFor;t.exports={getConstructor:function(t,e,l,d){var v=t((function(t,r){c(t,w),y(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),x||(t.size=0),null!=r&&m(r,t[d],{that:t,AS_ENTRIES:l})})),w=v.prototype,S=O(e),E=function(t,e,l){var r,o,n=S(t),f=j(t,e);return f?f.value=l:(n.last=f={index:o=h(e,!0),key:e,value:l,previous:r=n.last,next:void 0,removed:!1},n.first||(n.first=f),r&&(r.next=f),x?n.size++:t.size++,"F"!==o&&(n.index[o]=f)),t},j=function(t,e){var l,r=S(t),o=h(e);if("F"!==o)return r.index[o];for(l=r.first;l;l=l.next)if(l.key==e)return l};return n(w,{clear:function(){for(var t=S(this),data=t.index,e=t.first;e;)e.removed=!0,e.previous&&(e.previous=e.previous.next=void 0),delete data[e.index],e=e.next;t.first=t.last=void 0,x?t.size=0:this.size=0},delete:function(t){var e=this,l=S(e),r=j(e,t);if(r){var o=r.next,n=r.previous;delete l.index[r.index],r.removed=!0,n&&(n.next=o),o&&(o.previous=n),l.first==r&&(l.first=o),l.last==r&&(l.last=n),x?l.size--:e.size--}return!!r},forEach:function(t){for(var e,l=S(this),r=f(t,arguments.length>1?arguments[1]:void 0);e=e?e.next:l.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!j(this,t)}}),n(w,l?{get:function(t){var e=j(this,t);return e&&e.value},set:function(t,e){return E(this,0===t?0:t,e)}}:{add:function(t){return E(this,t=0===t?0:t,t)}}),x&&r(w,"size",{get:function(){return S(this).size}}),v},setStrong:function(t,e,l){var r=e+" Iterator",o=O(e),n=O(r);d(t,e,(function(t,e){y(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=n(this),e=t.kind,l=t.last;l&&l.removed;)l=l.previous;return t.target&&(t.last=l=l?l.next:t.state.first)?"keys"==e?{value:l.key,done:!1}:"values"==e?{value:l.value,done:!1}:{value:[l.key,l.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),l?"entries":"values",!l,!0),v(e)}}},545:function(t,e,l){"use strict";var r=l(28),o=l(77),n=l(29);t.exports=function(){for(var t,e=n(this),l=o(e.delete),f=!0,c=0,m=arguments.length;c.col,.row--dense>[class*=col-]{padding:4px}.row.no-gutters{margin:0}.row.no-gutters>.col,.row.no-gutters>[class*=col-]{padding:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{width:100%;padding:12px}.col{flex-basis:0;flex-grow:1;max-width:100%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-3{margin-left:25%}.v-application--is-rtl .offset-3{margin-right:25%}.v-application--is-ltr .offset-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-6{margin-left:50%}.v-application--is-rtl .offset-6{margin-right:50%}.v-application--is-ltr .offset-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-9{margin-left:75%}.v-application--is-rtl .offset-9{margin-right:75%}.v-application--is-ltr .offset-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-11{margin-right:91.6666666667%}@media(min-width:600px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-sm-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-sm-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-sm-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-sm-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-sm-0{margin-left:0}.v-application--is-rtl .offset-sm-0{margin-right:0}.v-application--is-ltr .offset-sm-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-sm-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-sm-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-sm-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-sm-3{margin-left:25%}.v-application--is-rtl .offset-sm-3{margin-right:25%}.v-application--is-ltr .offset-sm-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-sm-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-sm-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-sm-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-sm-6{margin-left:50%}.v-application--is-rtl .offset-sm-6{margin-right:50%}.v-application--is-ltr .offset-sm-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-sm-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-sm-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-sm-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-sm-9{margin-left:75%}.v-application--is-rtl .offset-sm-9{margin-right:75%}.v-application--is-ltr .offset-sm-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-sm-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-sm-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-sm-11{margin-right:91.6666666667%}}@media(min-width:960px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-md-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-md-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-md-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-md-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-md-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-md-0{margin-left:0}.v-application--is-rtl .offset-md-0{margin-right:0}.v-application--is-ltr .offset-md-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-md-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-md-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-md-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-md-3{margin-left:25%}.v-application--is-rtl .offset-md-3{margin-right:25%}.v-application--is-ltr .offset-md-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-md-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-md-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-md-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-md-6{margin-left:50%}.v-application--is-rtl .offset-md-6{margin-right:50%}.v-application--is-ltr .offset-md-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-md-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-md-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-md-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-md-9{margin-left:75%}.v-application--is-rtl .offset-md-9{margin-right:75%}.v-application--is-ltr .offset-md-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-md-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-md-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-md-11{margin-right:91.6666666667%}}@media(min-width:1264px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-lg-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-lg-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-lg-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-lg-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-lg-0{margin-left:0}.v-application--is-rtl .offset-lg-0{margin-right:0}.v-application--is-ltr .offset-lg-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-lg-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-lg-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-lg-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-lg-3{margin-left:25%}.v-application--is-rtl .offset-lg-3{margin-right:25%}.v-application--is-ltr .offset-lg-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-lg-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-lg-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-lg-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-lg-6{margin-left:50%}.v-application--is-rtl .offset-lg-6{margin-right:50%}.v-application--is-ltr .offset-lg-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-lg-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-lg-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-lg-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-lg-9{margin-left:75%}.v-application--is-rtl .offset-lg-9{margin-right:75%}.v-application--is-ltr .offset-lg-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-lg-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-lg-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-lg-11{margin-right:91.6666666667%}}@media(min-width:1904px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.v-application--is-ltr .offset-xl-0{margin-left:0}.v-application--is-rtl .offset-xl-0{margin-right:0}.v-application--is-ltr .offset-xl-1{margin-left:8.3333333333%}.v-application--is-rtl .offset-xl-1{margin-right:8.3333333333%}.v-application--is-ltr .offset-xl-2{margin-left:16.6666666667%}.v-application--is-rtl .offset-xl-2{margin-right:16.6666666667%}.v-application--is-ltr .offset-xl-3{margin-left:25%}.v-application--is-rtl .offset-xl-3{margin-right:25%}.v-application--is-ltr .offset-xl-4{margin-left:33.3333333333%}.v-application--is-rtl .offset-xl-4{margin-right:33.3333333333%}.v-application--is-ltr .offset-xl-5{margin-left:41.6666666667%}.v-application--is-rtl .offset-xl-5{margin-right:41.6666666667%}.v-application--is-ltr .offset-xl-6{margin-left:50%}.v-application--is-rtl .offset-xl-6{margin-right:50%}.v-application--is-ltr .offset-xl-7{margin-left:58.3333333333%}.v-application--is-rtl .offset-xl-7{margin-right:58.3333333333%}.v-application--is-ltr .offset-xl-8{margin-left:66.6666666667%}.v-application--is-rtl .offset-xl-8{margin-right:66.6666666667%}.v-application--is-ltr .offset-xl-9{margin-left:75%}.v-application--is-rtl .offset-xl-9{margin-right:75%}.v-application--is-ltr .offset-xl-10{margin-left:83.3333333333%}.v-application--is-rtl .offset-xl-10{margin-right:83.3333333333%}.v-application--is-ltr .offset-xl-11{margin-left:91.6666666667%}.v-application--is-rtl .offset-xl-11{margin-right:91.6666666667%}}",""]),t.exports=r},610:function(t,e,l){"use strict";l(12),l(14),l(15),l(16);var r=l(2),o=(l(4),l(22),l(13),l(27),l(71),l(519),l(53),l(520),l(521),l(522),l(523),l(524),l(525),l(526),l(527),l(528),l(529),l(530),l(531),l(532),l(65),l(41),l(11),l(97),l(500),l(1)),n=l(100),f=l(0);function c(object,t){var e=Object.keys(object);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(object);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),e.push.apply(e,l)}return e}function m(t){for(var i=1;i1&&void 0!==arguments[1]?arguments[1]:"div",r=arguments.length>2?arguments[2]:void 0;return e.a.extend({name:r||t.replace(/__/g,"-"),functional:!0,props:{tag:{type:String,default:n}},render:function(n,r){var data=r.data,o=r.props,e=r.children;return data.staticClass="".concat(t," ").concat(data.staticClass||"").trim(),n(o.tag,data,e)}})}function c(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]&&arguments[3],e=function e(l){r(l),t.removeEventListener(n,e,o)};t.addEventListener(n,e,o)}var m=!1;try{if("undefined"!=typeof window){var d=Object.defineProperty({},"passive",{get:function(){m=!0}});window.addEventListener("testListener",d,d),window.removeEventListener("testListener",d,d)}}catch(t){console.warn(t)}function v(t,n,r,o){t.addEventListener(n,r,!!m&&o)}function f(t,path,n){var r=path.length-1;if(r<0)return void 0===t?n:t;for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:"px";return null==t||""===t?void 0:isNaN(+t)?String(t):"".concat(Number(t)).concat(n)}function k(t){return(t||"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function O(t){return null!==t&&"object"===Object(o.a)(t)}var j=Object.freeze({enter:13,tab:9,delete:46,esc:27,space:32,up:38,down:40,left:37,right:39,end:35,home:36,del:46,backspace:8,insert:45,pageup:33,pagedown:34,shift:16});function S(t,n){var component=t.$vuetify.icons.component;if(n.startsWith("$")){var r=h(t,"$vuetify.icons.values.".concat(n.split("$").pop().split(".").pop()),n);if("string"!=typeof r)return r;n=r}return null==component?n:{component:component,props:{icon:n}}}function C(t){return Object.keys(t)}var $=/-(\w)/g,P=function(t){return t.replace($,(function(t,n){return n?n.toUpperCase():""}))};function E(t){return t.charAt(0).toUpperCase()+t.slice(1)}function z(t){return null!=t?Array.isArray(t)?t:[t]:[]}function L(t,n,r){return t.$slots.hasOwnProperty(n)&&t.$scopedSlots.hasOwnProperty(n)&&t.$scopedSlots[n].name?r?"v-slot":"scoped":t.$slots.hasOwnProperty(n)?"normal":t.$scopedSlots.hasOwnProperty(n)?"scoped":void 0}function M(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"default",data=arguments.length>2?arguments[2]:void 0,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return t.$scopedSlots.hasOwnProperty(n)?t.$scopedSlots[n](data instanceof Function?data():data):!t.$slots.hasOwnProperty(n)||data&&!r?void 0:t.$slots[n]}function A(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.max(n,Math.min(r,t))}function D(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"0";return t+r.repeat(Math.max(0,n-t.length))}function T(t){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,r=[],o=0;o1&&void 0!==arguments[1]&&arguments[1],base=n?1024:1e3;if(t=base&&o0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(var n in t){var r=source[n],o=t[n];O(r)&&O(o)?source[n]=R(r,o):source[n]=o}return source}function I(t){if(t.composedPath)return t.composedPath();for(var path=[],n=t.target;n;){if(path.push(n),"HTML"===n.tagName)return path.push(document),path.push(window),path;n=n.parentElement}return path}},,,,,function(t,n,r){"use strict";r.d(n,"k",(function(){return y})),r.d(n,"m",(function(){return w})),r.d(n,"l",(function(){return _})),r.d(n,"e",(function(){return k})),r.d(n,"b",(function(){return O})),r.d(n,"s",(function(){return j})),r.d(n,"g",(function(){return S})),r.d(n,"h",(function(){return C})),r.d(n,"d",(function(){return $})),r.d(n,"r",(function(){return P})),r.d(n,"j",(function(){return E})),r.d(n,"t",(function(){return L})),r.d(n,"o",(function(){return A})),r.d(n,"q",(function(){return D})),r.d(n,"f",(function(){return T})),r.d(n,"c",(function(){return B})),r.d(n,"i",(function(){return R})),r.d(n,"p",(function(){return I})),r.d(n,"a",(function(){return Z})),r.d(n,"v",(function(){return Y})),r.d(n,"n",(function(){return X})),r.d(n,"u",(function(){return K}));r(66),r(12),r(72),r(84),r(15),r(11),r(16);var o=r(17),e=r(26),l=r(2),c=r(21),m=(r(98),r(4),r(14),r(330),r(42),r(33),r(60),r(13),r(53),r(65),r(59),r(27),r(71),r(97),r(255),r(302),r(74),r(99),r(164),r(41),r(58),r(1)),d=r(80);function v(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function f(t){for(var i=1;i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function h(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i1&&void 0!==arguments[1]?arguments[1]:[],o=t.$children||[],e=x(o);try{for(e.s();!(n=e.n()).done;){var l=n.value;l.$fetch?r.push(l):l.$children&&k(l,r)}}catch(t){e.e(t)}finally{e.f()}return r}function O(t,n){if(n||!t.options.__hasNuxtData){var r=t.options._originDataFn||t.options.data||function(){return{}};t.options._originDataFn=r,t.options.data=function(){var data=r.call(this,this);return this.$ssrContext&&(n=this.$ssrContext.asyncData[t.cid]),f(f({},data),n)},t.options.__hasNuxtData=!0,t._Ctor&&t._Ctor.options&&(t._Ctor.options.data=t.options.data)}}function j(t){return t.options&&t._Ctor===t||(t.options?(t._Ctor=t,t.extendOptions=t.options):(t=m.a.extend(t))._Ctor=t,!t.options.name&&t.options.__file&&(t.options.name=t.options.__file)),t}function S(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"components";return Array.prototype.concat.apply([],t.matched.map((function(t,o){return Object.keys(t[r]).map((function(e){return n&&n.push(o),t[r][e]}))})))}function C(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return S(t,n,"instances")}function $(t,n){return Array.prototype.concat.apply([],t.matched.map((function(t,r){return Object.keys(t.components).reduce((function(o,e){return t.components[e]?o.push(n(t.components[e],t.instances[e],t,e,r)):delete t.components[e],o}),[])})))}function P(t,n){return Promise.all($(t,function(){var t=Object(e.a)(regeneratorRuntime.mark((function t(r,o,e,l){var c,m;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if("function"!=typeof r||r.options){t.next=11;break}return t.prev=1,t.next=4,r();case 4:r=t.sent,t.next=11;break;case 7:throw t.prev=7,t.t0=t.catch(1),t.t0&&"ChunkLoadError"===t.t0.name&&"undefined"!=typeof window&&window.sessionStorage&&(c=Date.now(),(!(m=parseInt(window.sessionStorage.getItem("nuxt-reload")))||m+6e40){var o=n[n.length-1];if(o.constructor===t.constructor){r++,t=t.$parent;continue}r>0&&(n[n.length-1]=[o,r],r=0)}n.push(t),t=t.$parent}return"\n\nfound in\n\n"+n.map((function(t,i){return"".concat(0===i?"---\x3e ":" ".repeat(5+2*i)).concat(Array.isArray(t)?"".concat(x(t[0]),"... (").concat(t[1]," recursive calls)"):x(t))})).join("\n")}return"\n\n(found in ".concat(x(t),")")}(n):"")}}function l(t,n,r){var o=e(t,n,r);null!=o&&console.warn(o)}function c(t,n,r){var o=e(t,n,r);null!=o&&console.error(o)}function m(t,n,r,o){l("[UPGRADE] '".concat(t,"' is deprecated, use '").concat(n,"' instead."),r,o)}function d(t,n,r,o){c("[BREAKING] '".concat(t,"' has been removed, use '").concat(n,"' instead. For more information, see the upgrade guide https://github.com/vuetifyjs/vuetify/releases/tag/v2.0.0#user-content-upgrade-guide"),r,o)}function v(t,n,r){l("[REMOVED] '".concat(t,"' has been removed. You can safely omit it."),n,r)}var f=/(?:^|[-_])(\w)/g;function x(t,n){if(t.$root===t)return"";var r="function"==typeof t&&null!=t.cid?t.options:t._isVue?t.$options||t.constructor.options:t||{},o=r.name||r._componentTag,e=r.__file;if(!o&&e){var l=e.match(/([^/\\]+)\.vue$/);o=l&&l[1]}return(o?"<".concat(o.replace(f,(function(t){return t.toUpperCase()})).replace(/[-_]/g,""),">"):"")+(e&&!1!==n?" at ".concat(e):"")}},,,,,,,,,,,function(t,n,r){"use strict";t.exports=function(t){var n=[];return n.toString=function(){return this.map((function(n){var content=function(t,n){var content=t[1]||"",r=t[3];if(!r)return content;if(n&&"function"==typeof btoa){var o=(l=r,c=btoa(unescape(encodeURIComponent(JSON.stringify(l)))),data="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(c),"/*# ".concat(data," */")),e=r.sources.map((function(source){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(source," */")}));return[content].concat(e).concat([o]).join("\n")}var l,c,data;return[content].join("\n")}(n,t);return n[2]?"@media ".concat(n[2]," {").concat(content,"}"):content})).join("")},n.i=function(t,r,o){"string"==typeof t&&(t=[[null,t,""]]);var e={};if(o)for(var i=0;in.parts.length&&(r.parts.length=n.parts.length)}else{var e=[];for(o=0;o1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof data.style?(Object(c.b)("style must be an object",this),data):"string"==typeof data.class?(Object(c.b)("class must be an object",this),data):(Object(m.d)(t)?data.style=v(v({},data.style),{},{"background-color":"".concat(t),"border-color":"".concat(t)}):t&&(data.class=v(v({},data.class),{},Object(e.a)({},t,!0))),data)},setTextColor:function(t){var data=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("string"==typeof data.style)return Object(c.b)("style must be an object",this),data;if("string"==typeof data.class)return Object(c.b)("class must be an object",this),data;if(Object(m.d)(t))data.style=v(v({},data.style),{},{color:"".concat(t),"caret-color":"".concat(t)});else if(t){var n=t.toString().trim().split(" ",2),r=Object(o.a)(n,2),l=r[0],d=r[1];data.class=v(v({},data.class),{},Object(e.a)({},l+"--text",!0)),d&&(data.class["text--"+d]=!0)}return data}}})},,,,,,,,function(t,n,r){"use strict";r(13),r(12),r(15),r(11),r(16);var o=r(2),e=(r(22),r(14),r(4),r(60),r(27),r(61),r(33),r(397),r(120)),l=r(176),c=(r(401),r(38)),m=r(25),d=r(6),v=r(0),f=Object(d.a)(c.a,m.a).extend({name:"v-messages",props:{value:{type:Array,default:function(){return[]}}},methods:{genChildren:function(){return this.$createElement("transition-group",{staticClass:"v-messages__wrapper",attrs:{name:"message-transition",tag:"div"}},this.value.map(this.genMessage))},genMessage:function(t,n){return this.$createElement("div",{staticClass:"v-messages__message",key:n},Object(v.m)(this,"default",{message:t,key:n})||[t])}},render:function(t){return t("div",this.setTextColor(this.color,{staticClass:"v-messages",class:this.themeClasses}),[this.genChildren()])}}),x=r(93),h=r(175),y=r(100);function w(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}var _=Object(d.a)(x.a,h.a).extend().extend({name:"v-input",inheritAttrs:!1,props:{appendIcon:String,backgroundColor:{type:String,default:""},dense:Boolean,height:[Number,String],hideDetails:[Boolean,String],hideSpinButtons:Boolean,hint:String,id:String,label:String,loading:Boolean,persistentHint:Boolean,prependIcon:String,value:null},data:function(){return{lazyValue:this.value,hasMouseDown:!1}},computed:{classes:function(){return function(t){for(var i=1;i0},hasHint:function(){return!this.hasMessages&&!!this.hint&&(this.persistentHint||this.isFocused)},hasLabel:function(){return!(!this.$slots.label&&!this.label)},internalValue:{get:function(){return this.lazyValue},set:function(t){this.lazyValue=t,this.$emit(this.$_modelEvent,t)}},isDirty:function(){return!!this.lazyValue},isLabelActive:function(){return this.isDirty},messagesToDisplay:function(){var t=this;return this.hasHint?[this.hint]:this.hasMessages?this.validations.map((function(n){if("string"==typeof n)return n;var r=n(t.internalValue);return"string"==typeof r?r:""})).filter((function(t){return""!==t})):[]},showDetails:function(){return!1===this.hideDetails||"auto"===this.hideDetails&&this.hasDetails}},watch:{value:function(t){this.lazyValue=t}},beforeCreate:function(){this.$_modelEvent=this.$options.model&&this.$options.model.event||"input"},methods:{genContent:function(){return[this.genPrependSlot(),this.genControl(),this.genAppendSlot()]},genControl:function(){return this.$createElement("div",{staticClass:"v-input__control",attrs:{title:this.attrs$.title}},[this.genInputSlot(),this.genMessages()])},genDefaultSlot:function(){return[this.genLabel(),this.$slots.default]},genIcon:function(t,n){var r=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l=this["".concat(t,"Icon")],c="click:".concat(Object(v.q)(t)),m=!(!this.listeners$[c]&&!n),data=Object(y.a)({attrs:{"aria-label":m?Object(v.q)(t).split("-")[0]+" icon":void 0,color:this.validationState,dark:this.dark,disabled:this.isDisabled,light:this.light},on:m?{click:function(t){t.preventDefault(),t.stopPropagation(),r.$emit(c,t),n&&n(t)},mouseup:function(t){t.preventDefault(),t.stopPropagation()}}:void 0},o);return this.$createElement("div",{staticClass:"v-input__icon",class:t?"v-input__icon--".concat(Object(v.q)(t)):void 0},[this.$createElement(e.a,data,l)])},genInputSlot:function(){return this.$createElement("div",this.setBackgroundColor(this.backgroundColor,{staticClass:"v-input__slot",style:{height:Object(v.g)(this.height)},on:{click:this.onClick,mousedown:this.onMouseDown,mouseup:this.onMouseUp},ref:"input-slot"}),[this.genDefaultSlot()])},genLabel:function(){return this.hasLabel?this.$createElement(l.a,{props:{color:this.validationState,dark:this.dark,disabled:this.isDisabled,focused:this.hasState,for:this.computedId,light:this.light}},this.$slots.label||this.label):null},genMessages:function(){var t=this;return this.showDetails?this.$createElement(f,{props:{color:this.hasHint?"":this.validationState,dark:this.dark,light:this.light,value:this.messagesToDisplay},attrs:{role:this.hasMessages?"alert":null},scopedSlots:{default:function(n){return Object(v.m)(t,"message",n)}}}):null},genSlot:function(t,n,slot){if(!slot.length)return null;var r="".concat(t,"-").concat(n);return this.$createElement("div",{staticClass:"v-input__".concat(r),ref:r},slot)},genPrependSlot:function(){var slot=[];return this.$slots.prepend?slot.push(this.$slots.prepend):this.prependIcon&&slot.push(this.genIcon("prepend")),this.genSlot("prepend","outer",slot)},genAppendSlot:function(){var slot=[];return this.$slots.append?slot.push(this.$slots.append):this.appendIcon&&slot.push(this.genIcon("append")),this.genSlot("append","outer",slot)},onClick:function(t){this.$emit("click",t)},onMouseDown:function(t){this.hasMouseDown=!0,this.$emit("mousedown",t)},onMouseUp:function(t){this.hasMouseDown=!1,this.$emit("mouseup",t)}},render:function(t){return t("div",this.setTextColor(this.validationState,{staticClass:"v-input",class:this.classes}),this.genContent())}});n.a=_},,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(36),e=r(37),l=function(){function t(){Object(o.a)(this,t),this.framework={}}return Object(e.a)(t,[{key:"init",value:function(t,n){}}]),t}()},,function(t,n,r){"use strict";r(13),r(12),r(14),r(4),r(15),r(11),r(16);var o=r(2),e=(r(357),r(93)),l=r(38),c=r(170),m=r(167),d=r(224),v=r(25),f=r(6);function x(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function h(t){for(var i=1;i"],["manual-scroll",''],["clipped-left",""],["clipped-right",""],["inverted-scroll",""],["scroll-off-screen",""],["scroll-target",""],["scroll-threshold",""],["card",""]].forEach((function(n){var r=Object(o.a)(n,2),e=r[0],l=r[1];t.$attrs.hasOwnProperty(e)&&Object(d.a)(e,l,t)}))},methods:{genBackground:function(){var t={height:Object(m.g)(this.computedHeight),src:this.src},image=this.$scopedSlots.img?this.$scopedSlots.img({props:t}):this.$createElement(c.a,{props:t});return this.$createElement("div",{staticClass:"v-toolbar__image"},[image])},genContent:function(){return this.$createElement("div",{staticClass:"v-toolbar__content",style:{height:Object(m.g)(this.computedContentHeight)}},Object(m.m)(this))},genExtension:function(){return this.$createElement("div",{staticClass:"v-toolbar__extension",style:{height:Object(m.g)(this.extensionHeight)}},Object(m.m)(this,"extension"))}},render:function(t){this.isExtended=this.extended||!!this.$scopedSlots.extension;var n=[this.genContent()],data=this.setBackgroundColor(this.color,{class:this.classes,style:this.styles,on:this.$listeners});return this.isExtended&&n.push(this.genExtension()),(this.src||this.$scopedSlots.img)&&n.unshift(this.genBackground()),t(this.tag,data,n)}})},,,,,function(t,n,r){"use strict";r.d(n,"b",(function(){return l}));var o=r(2),e=r(1);function l(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"value",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"input";return e.a.extend({name:"toggleable",model:{prop:n,event:r},props:Object(o.a)({},n,{required:!1}),data:function(){return{isActive:!!this[n]}},watch:(t={},Object(o.a)(t,n,(function(t){this.isActive=!!t})),Object(o.a)(t,"isActive",(function(t){!!t!==this[n]&&this.$emit(r,t)})),t)})}var c=l();n.a=c},,,,,,,,function(t,n,r){"use strict";r.d(n,"d",(function(){return e})),r.d(n,"b",(function(){return l})),r.d(n,"c",(function(){return c})),r.d(n,"a",(function(){return m}));r(13),r(12),r(14),r(15),r(11),r(16),r(2),r(21),r(27),r(185),r(99),r(60),r(61),r(42),r(71),r(83),r(4),r(74),r(164),r(33),r(59),r(97),r(144);var o=r(8);r(0),r(95);function e(t){return!!t&&!!t.match(/^(#|var\(--|(rgb|hsl)a?\()/)}function l(t){var n;if("number"==typeof t)n=t;else{if("string"!=typeof t)throw new TypeError("Colors can only be numbers or strings, recieved ".concat(null==t?t:t.constructor.name," instead"));var r="#"===t[0]?t.substring(1):t;3===r.length&&(r=r.split("").map((function(t){return t+t})).join("")),6!==r.length&&Object(o.c)("'".concat(t,"' is not a valid rgb color")),n=parseInt(r,16)}return n<0?(Object(o.c)("Colors cannot be negative: '".concat(t,"'")),n=0):(n>16777215||isNaN(n))&&(Object(o.c)("'".concat(t,"' is not a valid rgb color")),n=16777215),n}function c(t){var n=t.toString(16);return n.length<6&&(n="0".repeat(6-n.length)+n),"#"+n}function m(t){return c(l(t))}},,,,,,,,,function(t,n,r){"use strict";var o=r(17);r(4);function e(t,n,r){var o,e=null==(o=t._observe)?void 0:o[r.context._uid];e&&(e.observer.unobserve(t),delete t._observe[r.context._uid])}var l={inserted:function(t,n,r){if("undefined"!=typeof window&&"IntersectionObserver"in window){var l=n.modifiers||{},c=n.value,m="object"===Object(o.a)(c)?c:{handler:c,options:{}},d=m.handler,v=m.options,f=new IntersectionObserver((function(){var o,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],m=arguments.length>1?arguments[1]:void 0,v=null==(o=t._observe)?void 0:o[r.context._uid];if(v){var f=c.some((function(t){return t.isIntersecting}));!d||l.quiet&&!v.init||l.once&&!f&&!v.init||d(c,m,f),f&&l.once?e(t,n,r):v.init=!0}}),v);t._observe=Object(t._observe),t._observe[r.context._uid]={init:!1,observer:f},f.observe(t)}},unbind:e};n.a=l},,function(t,n,r){"use strict";r.d(n,"b",(function(){return _t})),r.d(n,"a",(function(){return z.a}));var o={};r.r(o),r.d(o,"Module",(function(){return W})),r.d(o,"Modules",(function(){return U})),r.d(o,"Settings",(function(){return Z})),r.d(o,"Student",(function(){return Y})),r.d(o,"Teacher",(function(){return X}));r(13),r(12),r(14),r(15),r(11),r(16);var e=r(26),l=r(2),c=(r(98),r(42),r(4),r(60),r(27),r(71),r(1)),m=r(137),d=r(290),v=r(210),f=r.n(v),x=r(119),h=r.n(x),y=(r(53),r(65),r(211)),w=r(80),_=r(5);"scrollRestoration"in window.history&&(Object(_.u)("manual"),window.addEventListener("beforeunload",(function(){Object(_.u)("auto")})),window.addEventListener("load",(function(){Object(_.u)("manual")})));function k(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function O(t){for(var i=1;i1&&void 0!==arguments[1]?arguments[1]:j,r=arguments.length>2?arguments[2]:void 0;return o.call(this,t,n,r)};var e=r.resolve.bind(r);return r.resolve=function(t,n,r){return"string"==typeof t&&(t=Object(w.c)(t)),e(t,n,r)},r}var $={name:"NuxtChild",functional:!0,props:{nuxtChildKey:{type:String,default:""},keepAlive:Boolean,keepAliveProps:{type:Object,default:void 0}},render:function(t,n){var r=n.parent,data=n.data,o=n.props,e=r.$createElement;data.nuxtChild=!0;for(var l=r,c=r.$nuxt.nuxt.transitions,m=r.$nuxt.nuxt.defaultTransition,d=0;r;)r.$vnode&&r.$vnode.data.nuxtChild&&d++,r=r.$parent;data.nuxtChildDepth=d;var v=c[d]||m,f={};P.forEach((function(t){void 0!==v[t]&&(f[t]=v[t])}));var x={};E.forEach((function(t){"function"==typeof v[t]&&(x[t]=v[t].bind(l))}));var h=x.beforeEnter;if(x.beforeEnter=function(t){if(window.$nuxt.$nextTick((function(){window.$nuxt.$emit("triggerScroll")})),h)return h.call(l,t)},!1===v.css){var y=x.leave;(!y||y.length<2)&&(x.leave=function(t,n){y&&y.call(l,t),l.$nextTick(n)})}var w=e("routerView",data);return o.keepAlive&&(w=e("keep-alive",{props:o.keepAliveProps},[w])),e("transition",{props:f,on:x},[w])}},P=["name","mode","appear","css","type","duration","enterClass","leaveClass","appearClass","enterActiveClass","enterActiveClass","leaveActiveClass","appearActiveClass","enterToClass","leaveToClass","appearToClass"],E=["beforeEnter","enter","afterEnter","enterCancelled","beforeLeave","leave","afterLeave","leaveCancelled","beforeAppear","appear","afterAppear","appearCancelled"],z=r(94),L=r(21),M=(r(74),{name:"Nuxt",components:{NuxtChild:$,NuxtError:z.a},props:{nuxtChildKey:{type:String,default:void 0},keepAlive:Boolean,keepAliveProps:{type:Object,default:void 0},name:{type:String,default:"default"}},errorCaptured:function(t){this.displayingNuxtError&&(this.errorFromNuxtError=t,this.$forceUpdate())},computed:{routerViewKey:function(){if(void 0!==this.nuxtChildKey||this.$route.matched.length>1)return this.nuxtChildKey||Object(_.c)(this.$route.matched[0].path)(this.$route.params);var t=Object(L.a)(this.$route.matched,1)[0];if(!t)return this.$route.path;var n=t.components.default;if(n&&n.options){var r=n.options;if(r.key)return"function"==typeof r.key?r.key(this.$route):r.key}return/\/$/.test(t.path)?this.$route.path:this.$route.path.replace(/\/$/,"")}},beforeCreate:function(){c.a.util.defineReactive(this,"nuxt",this.$root.$options.nuxt)},render:function(t){var n=this;return this.nuxt.err?this.errorFromNuxtError?(this.$nextTick((function(){return n.errorFromNuxtError=!1})),t("div",{},[t("h2","An error occurred while showing the error page"),t("p","Unfortunately an error occurred and while showing the error page another error occurred"),t("p","Error details: ".concat(this.errorFromNuxtError.toString())),t("nuxt-link",{props:{to:"/"}},"Go back to home")])):(this.displayingNuxtError=!0,this.$nextTick((function(){return n.displayingNuxtError=!1})),t(z.a,{props:{error:this.nuxt.err}})):t("NuxtChild",{key:this.routerViewKey,props:this.$props})}}),A=(r(59),r(66),r(72),r(84),r(43),{name:"NuxtLoading",data:function(){return{percent:0,show:!1,canSucceed:!0,reversed:!1,skipTimerCount:0,rtl:!1,throttle:200,duration:5e3,continuous:!1}},computed:{left:function(){return!(!this.continuous&&!this.rtl)&&(this.rtl?this.reversed?"0px":"auto":this.reversed?"auto":"0px")}},beforeDestroy:function(){this.clear()},methods:{clear:function(){clearInterval(this._timer),clearTimeout(this._throttle),this._timer=null},start:function(){var t=this;return this.clear(),this.percent=0,this.reversed=!1,this.skipTimerCount=0,this.canSucceed=!0,this.throttle?this._throttle=setTimeout((function(){return t.startTimer()}),this.throttle):this.startTimer(),this},set:function(t){return this.show=!0,this.canSucceed=!0,this.percent=Math.min(100,Math.max(0,Math.floor(t))),this},get:function(){return this.percent},increase:function(t){return this.percent=Math.min(100,Math.floor(this.percent+t)),this},decrease:function(t){return this.percent=Math.max(0,Math.floor(this.percent-t)),this},pause:function(){return clearInterval(this._timer),this},resume:function(){return this.startTimer(),this},finish:function(){return this.percent=this.reversed?0:100,this.hide(),this},hide:function(){var t=this;return this.clear(),setTimeout((function(){t.show=!1,t.$nextTick((function(){t.percent=0,t.reversed=!1}))}),500),this},fail:function(t){return this.canSucceed=!1,this},startTimer:function(){var t=this;this.show||(this.show=!0),void 0===this._cut&&(this._cut=1e4/Math.floor(this.duration)),this._timer=setInterval((function(){t.skipTimerCount>0?t.skipTimerCount--:(t.reversed?t.decrease(t._cut):t.increase(t._cut),t.continuous&&(t.percent>=100||t.percent<=0)&&(t.skipTimerCount=1,t.reversed=!t.reversed))}),100)}},render:function(t){var n=t(!1);return this.show&&(n=t("div",{staticClass:"nuxt-progress",class:{"nuxt-progress-notransition":this.skipTimerCount>0,"nuxt-progress-failed":!this.canSucceed},style:{width:this.percent+"%",left:this.left}})),n}}),D=(r(338),r(107)),T=Object(D.a)(A,undefined,undefined,!1,null,null,null).exports,B=(r(340),r(294));function R(t,n){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,n){if(!t)return;if("string"==typeof t)return I(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return I(t,n)}(t))||n&&t&&"number"==typeof t.length){r&&(t=r);var i=0,o=function(){};return{s:o,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function I(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i0},isPreview:function(){return Boolean(this.$options.previewData)}},methods:{refreshOnlineStatus:function(){void 0===window.navigator.onLine?this.isOnline=!0:this.isOnline=window.navigator.onLine},refresh:function(){var t=this;return Object(e.a)(regeneratorRuntime.mark((function n(){var r,o;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if((r=Object(_.h)(t.$route)).length){n.next=3;break}return n.abrupt("return");case 3:return t.$loading.start(),o=r.map((function(n){var p=[];if(n.$options.fetch&&n.$options.fetch.length&&p.push(Object(_.q)(n.$options.fetch,t.context)),n.$fetch)p.push(n.$fetch());else{var r,o=R(Object(_.e)(n.$vnode.componentInstance));try{for(o.s();!(r=o.n()).done;){var component=r.value;p.push(component.$fetch())}}catch(t){o.e(t)}finally{o.f()}}return n.$options.asyncData&&p.push(Object(_.q)(n.$options.asyncData,t.context).then((function(t){for(var r in t)c.a.set(n.$data,r,t[r])}))),Promise.all(p)})),n.prev=5,n.next=8,Promise.all(o);case 8:n.next=15;break;case 10:n.prev=10,n.t0=n.catch(5),t.$loading.fail(n.t0),Object(_.k)(n.t0),t.error(n.t0);case 15:t.$loading.finish();case 16:case"end":return n.stop()}}),n,null,[[5,10]])})))()},errorChanged:function(){if(this.nuxt.err){this.$loading&&(this.$loading.fail&&this.$loading.fail(this.nuxt.err),this.$loading.finish&&this.$loading.finish());var t=(z.a.options||z.a).layout;"function"==typeof t&&(t=t(this.context)),this.setLayout(t)}},setLayout:function(t){return t&&N["_"+t]||(t="default"),this.layoutName=t,this.layout=N["_"+t],this.layout},loadLayout:function(t){return t&&N["_"+t]||(t="default"),Promise.resolve(N["_"+t])}},components:{NuxtLoading:T}};c.a.use(m.a);var F={};(F=function(t,n){if((t=t.default||t).commit)throw new Error("[nuxt] ".concat(n," should export a method that returns a Vuex instance."));return"function"!=typeof t&&(t=Object.assign({},t)),function(t,n){if(t.state&&"function"!=typeof t.state){console.warn("'state' should be a method that returns an object in ".concat(n));var r=Object.assign({},t.state);t=Object.assign({},t,{state:function(){return r}})}return t}(t,n)}(r(409),"store/index.js")).modules=F.modules||{};var H=F instanceof Function?F:function(){return new m.a.Store(Object.assign({strict:!1},F))};r(41),r(58);var W=function(){return Promise.all([r.e(0),r.e(6)]).then(r.bind(null,495)).then((function(t){return K(t.default||t)}))},U=function(){return Promise.all([r.e(0),r.e(7)]).then(r.bind(null,496)).then((function(t){return K(t.default||t)}))},Z=function(){return Promise.all([r.e(0),r.e(1),r.e(3),r.e(2)]).then(r.bind(null,503)).then((function(t){return K(t.default||t)}))},Y=function(){return Promise.all([r.e(0),r.e(1),r.e(8)]).then(r.bind(null,517)).then((function(t){return K(t.default||t)}))},X=function(){return Promise.all([r.e(0),r.e(1),r.e(3),r.e(2),r.e(9)]).then(r.bind(null,516)).then((function(t){return K(t.default||t)}))};function K(t){if(!t||!t.functional)return t;var n=Array.isArray(t.props)?t.props:Object.keys(t.props||{});return{render:function(r){var o={},e={};for(var l in this.$attrs)n.includes(l)?e[l]=this.$attrs[l]:o[l]=this.$attrs[l];return r(t,{on:this.$listeners,attrs:o,props:e,scopedSlots:this.$scopedSlots},this.$slots.default)}}}for(var Q in o)c.a.component(Q,o[Q]),c.a.component("Lazy"+Q,o[Q]);var G=r(138),J={theme:{dark:!1,options:{customProperties:!0},themes:{dark:{primary:"#1976d2",accent:"#424242",secondary:"#ff8f00",info:"#26a69a",warning:"#ffc107",error:"#dd2c00",success:"#00e676"},light:{primary:"#1976d2",accent:"#424242",secondary:"#ff8f00",info:"#26a69a",warning:"#ffc107",error:"#dd2c00",success:"#00e676",background:"#fafafa"}}}};c.a.use(G.a,{});var tt=function(t){var n="function"==typeof J?J(t):J;n.icons=n.icons||{},n.icons.iconfont="mdi";var r=new G.a(n);t.app.vuetify=r,t.$vuetify=r.framework},it=r(140),nt=r.n(it),at=r(292),ot=r.n(at);function et(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function pt(t){for(var i=1;i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function ct(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i2&&void 0!==arguments[2]?arguments[2]:"common",e=lt(Array.isArray(o)?o:[o]);try{for(e.s();!(r=e.n()).done;){var l=r.value;n?this.defaults.headers[l][t]=n:delete this.defaults.headers[l][t]}}catch(t){e.e(t)}finally{e.f()}},setToken:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"common",o=t?(n?n+" ":"")+t:null;this.setHeader("Authorization",o,r)},onRequest:function(t){this.interceptors.request.use((function(n){return t(n)||n}))},onResponse:function(t){this.interceptors.response.use((function(n){return t(n)||n}))},onRequestError:function(t){this.interceptors.request.use(void 0,(function(n){return t(n)||Promise.reject(n)}))},onResponseError:function(t){this.interceptors.response.use(void 0,(function(n){return t(n)||Promise.reject(n)}))},onError:function(t){this.onRequestError(t),this.onResponseError(t)},create:function(t){return ft(ot()(t,this.defaults))}},st=function(){var t=vt[gt];mt["$"+t]=function(){return this[t].apply(this,arguments).then((function(t){return t&&t.data}))}},gt=0,vt=["request","delete","get","head","options","post","put","patch"];gt has been deprecated and will be removed in Nuxt 3, please use instead")),h.a.render(t,n)}})),c.a.component($.name,$),c.a.component("NChild",$),c.a.component(M.name,M),Object.defineProperty(c.a.prototype,"$nuxt",{get:function(){var t=this.$root.$options.$nuxt;return t||"undefined"==typeof window?t:window.$nuxt},configurable:!0}),c.a.use(d.a,{keyName:"head",attribute:"data-n-head",ssrAttribute:"data-n-head-ssr",tagIDKeyName:"hid"});var wt={name:"page",mode:"out-in",appear:!0,appearClass:"appear",appearActiveClass:"appear-active",appearToClass:"appear-to"};m.a.Store.prototype.registerModule;function _t(t){return kt.apply(this,arguments)}function kt(){return kt=Object(e.a)(regeneratorRuntime.mark((function t(n){var r,o,l,m,d,v,path,f,x=arguments;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return f=function(t,n){if(!t)throw new Error("inject(key, value) has no key provided");if(void 0===n)throw new Error("inject('".concat(t,"', value) has no value provided"));m[t="$"+t]=n,m.context[t]||(m.context[t]=n),l[t]=m[t];var r="__nuxt_"+t+"_installed__";c.a[r]||(c.a[r]=!0,c.a.use((function(){Object.prototype.hasOwnProperty.call(c.a.prototype,t)||Object.defineProperty(c.a.prototype,t,{get:function(){return this.$root.$options[t]}})})))},r=x.length>1&&void 0!==x[1]?x[1]:{},t.next=4,C(0,r);case 4:return o=t.sent,(l=H(n)).$router=o,m=yt({head:{titleTemplate:"%s - Edrys",title:"Home",meta:[{charset:"utf-8"},{name:"viewport",content:"width=device-width, initial-scale=1"},{hid:"description",name:"description",content:""},{name:"format-detection",content:"telephone=no"}],link:[{rel:"icon",type:"image/x-icon",href:"/favicon.png"},{rel:"stylesheet",type:"text/css",href:"https://fonts.googleapis.com/css?family=MainFont:100,300,400,500,700,900&display=swap"},{rel:"stylesheet",type:"text/css",href:"https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"}],style:[],script:[]},store:l,router:o,nuxt:{defaultTransition:wt,transitions:[wt],setTransitions:function(t){return Array.isArray(t)||(t=[t]),t=t.map((function(t){return t=t?"string"==typeof t?Object.assign({},wt,{name:t}):Object.assign({},wt,t):wt})),this.$options.nuxt.transitions=t,t},err:null,dateErr:null,error:function(t){t=t||null,m.context._errored=Boolean(t),t=t?Object(_.p)(t):null;var r=m.nuxt;return this&&(r=this.nuxt||this.$options.nuxt),r.dateErr=Date.now(),r.err=t,n&&(n.nuxt.error=t),t}}},V),l.app=m,d=n?n.next:function(t){return m.router.push(t)},n?v=o.resolve(n.url).route:(path=Object(_.f)(o.options.base,o.options.mode),v=o.resolve(path).route),t.next=13,Object(_.t)(m,{store:l,route:v,next:d,error:m.nuxt.error.bind(m),payload:n?n.payload:void 0,req:n?n.req:void 0,res:n?n.res:void 0,beforeRenderFns:n?n.beforeRenderFns:void 0,ssrContext:n});case 13:f("config",r),window.__NUXT__&&window.__NUXT__.state&&l.replaceState(window.__NUXT__.state),m.context.enablePreview=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m.previewData=Object.assign({},t),f("preview",t)},t.next=19;break;case 19:return t.next=22,tt(m.context);case 22:return t.next=25,xt(m.context,f);case 25:if("function"!=typeof ht.default){t.next=28;break}return t.next=28,Object(ht.default)(m.context,f);case 28:return m.context.enablePreview=function(){console.warn("You cannot call enablePreview() outside a plugin.")},t.next=31,new Promise((function(t,n){if(!o.resolve(m.context.route.fullPath).route.matched.length)return t();o.replace(m.context.route.fullPath,t,(function(r){if(!r._isRouter)return n(r);if(2!==r.type)return t();var l=o.afterEach(function(){var n=Object(e.a)(regeneratorRuntime.mark((function n(r,o){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=3,Object(_.j)(r);case 3:m.context.route=n.sent,m.context.params=r.params||{},m.context.query=r.query||{},l(),t();case 8:case"end":return n.stop()}}),n)})));return function(t,r){return n.apply(this,arguments)}}())}))}));case 31:return t.abrupt("return",{store:l,app:m,router:o});case 32:case"end":return t.stop()}}),t)}))),kt.apply(this,arguments)}},,,,,,,,,,,function(t,n,r){"use strict";r.d(n,"b",(function(){return c}));var o=r(1),e=r(0),l={absolute:Boolean,bottom:Boolean,fixed:Boolean,left:Boolean,right:Boolean,top:Boolean};function c(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return o.a.extend({name:"positionable",props:t.length?Object(e.j)(l,t):l})}n.a=c()},function(t,n,r){"use strict";var o=r(1);function e(t){return function(n,r){for(var o in r)Object.prototype.hasOwnProperty.call(n,o)||this.$delete(this.$data[t],o);for(var e in n)this.$set(this.$data[t],e,n[e])}}n.a=o.a.extend({data:function(){return{attrs$:{},listeners$:{}}},created:function(){this.$watch("$attrs",e("attrs$"),{immediate:!0}),this.$watch("$listeners",e("listeners$"),{immediate:!0})}})},,function(t,n,r){"use strict";r.d(n,"a",(function(){return d})),r.d(n,"b",(function(){return v}));var o=r(0),e=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]],l=function(t){return t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055},c=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],m=function(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)};function d(t){for(var n=Array(3),r=l,c=e,i=0;i<3;++i)n[i]=Math.round(255*Object(o.e)(r(c[i][0]*t[0]+c[i][1]*t[1]+c[i][2]*t[2])));return(n[0]<<16)+(n[1]<<8)+(n[2]<<0)}function v(t){for(var n=[0,0,0],r=m,o=c,e=r((t>>16&255)/255),g=r((t>>8&255)/255),b=r((t>>0&255)/255),i=0;i<3;++i)n[i]=o[i][0]*e+o[i][1]*g+o[i][2]*b;return n}},function(t,n,r){"use strict";r.d(n,"a",(function(){return l})),r.d(n,"b",(function(){return c})),r.d(n,"c",(function(){return m})),r.d(n,"d",(function(){return d}));var o=r(207),e=r(0),l=Object(e.h)("v-card__actions"),c=Object(e.h)("v-card__subtitle"),m=Object(e.h)("v-card__text"),d=Object(e.h)("v-card__title");o.a},,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return y})),r.d(n,"b",(function(){return w}));r(59),r(4),r(42),r(66),r(53),r(12),r(72),r(84),r(65),r(14),r(15),r(11),r(16);var o=r(2),e=r(21),l=(r(27),r(61),r(83),r(13),r(33),r(0));function c(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function m(t){for(var i=1;i=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){c=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw e}}}}function v(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i1&&void 0!==arguments[1]&&arguments[1];return e.a.extend({name:"registrable-provide",provide:function(){return Object(o.a)({},t,n?this:{register:this.register,unregister:this.unregister})}})}},,,,function(t,n,r){"use strict";var o=r(1);n.a=o.a.extend({name:"ssr-bootable",data:function(){return{isBooted:!1}},mounted:function(){var t=this;window.requestAnimationFrame((function(){t.$el.setAttribute("data-booted","true"),t.isBooted=!0}))}})},function(t,n,r){"use strict";r(42),r(33),r(43),r(22),r(376);var o=r(0);function e(t,n){t.style.transform=n,t.style.webkitTransform=n}function l(t){return"TouchEvent"===t.constructor.name}function c(t){return"KeyboardEvent"===t.constructor.name}var m=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=0,e=0;if(!c(t)){var m=n.getBoundingClientRect(),d=l(t)?t.touches[t.touches.length-1]:t;o=d.clientX-m.left,e=d.clientY-m.top}var v=0,f=.3;n._ripple&&n._ripple.circle?(f=.15,v=n.clientWidth/2,v=r.center?v:v+Math.sqrt(Math.pow(o-v,2)+Math.pow(e-v,2))/4):v=Math.sqrt(Math.pow(n.clientWidth,2)+Math.pow(n.clientHeight,2))/2;var x="".concat((n.clientWidth-2*v)/2,"px"),h="".concat((n.clientHeight-2*v)/2,"px"),y=r.center?x:"".concat(o-v,"px"),w=r.center?h:"".concat(e-v,"px");return{radius:v,scale:f,x:y,y:w,centerX:x,centerY:h}},d=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(n._ripple&&n._ripple.enabled){var o=document.createElement("span"),l=document.createElement("span");o.appendChild(l),o.className="v-ripple__container",r.class&&(o.className+=" ".concat(r.class));var c=m(t,n,r),d=c.radius,v=c.scale,f=c.x,x=c.y,h=c.centerX,y=c.centerY,w="".concat(2*d,"px");l.className="v-ripple__animation",l.style.width=w,l.style.height=w,n.appendChild(o);var _=window.getComputedStyle(n);_&&"static"===_.position&&(n.style.position="relative",n.dataset.previousPosition="static"),l.classList.add("v-ripple__animation--enter"),l.classList.add("v-ripple__animation--visible"),e(l,"translate(".concat(f,", ").concat(x,") scale3d(").concat(v,",").concat(v,",").concat(v,")")),l.dataset.activated=String(performance.now()),setTimeout((function(){l.classList.remove("v-ripple__animation--enter"),l.classList.add("v-ripple__animation--in"),e(l,"translate(".concat(h,", ").concat(y,") scale3d(1,1,1)"))}),0)}},v=function(t){if(t&&t._ripple&&t._ripple.enabled){var n=t.getElementsByClassName("v-ripple__animation");if(0!==n.length){var r=n[n.length-1];if(!r.dataset.isHiding){r.dataset.isHiding="true";var o=performance.now()-Number(r.dataset.activated),e=Math.max(250-o,0);setTimeout((function(){r.classList.remove("v-ripple__animation--in"),r.classList.add("v-ripple__animation--out"),setTimeout((function(){1===t.getElementsByClassName("v-ripple__animation").length&&t.dataset.previousPosition&&(t.style.position=t.dataset.previousPosition,delete t.dataset.previousPosition),r.parentNode&&t.removeChild(r.parentNode)}),300)}),e)}}}};function f(t){return void 0===t||!!t}function x(t){var n={},element=t.currentTarget;if(element&&element._ripple&&!element._ripple.touched&&!t.rippleStop){if(t.rippleStop=!0,l(t))element._ripple.touched=!0,element._ripple.isTouch=!0;else if(element._ripple.isTouch)return;if(n.center=element._ripple.centered||c(t),element._ripple.class&&(n.class=element._ripple.class),l(t)){if(element._ripple.showTimerCommit)return;element._ripple.showTimerCommit=function(){d(t,element,n)},element._ripple.showTimer=window.setTimeout((function(){element&&element._ripple&&element._ripple.showTimerCommit&&(element._ripple.showTimerCommit(),element._ripple.showTimerCommit=null)}),80)}else d(t,element,n)}}function h(t){var element=t.currentTarget;if(element&&element._ripple){if(window.clearTimeout(element._ripple.showTimer),"touchend"===t.type&&element._ripple.showTimerCommit)return element._ripple.showTimerCommit(),element._ripple.showTimerCommit=null,void(element._ripple.showTimer=setTimeout((function(){h(t)})));window.setTimeout((function(){element._ripple&&(element._ripple.touched=!1)})),v(element)}}function y(t){var element=t.currentTarget;element&&element._ripple&&(element._ripple.showTimerCommit&&(element._ripple.showTimerCommit=null),window.clearTimeout(element._ripple.showTimer))}var w=!1;function _(t){w||t.keyCode!==o.r.enter&&t.keyCode!==o.r.space||(w=!0,x(t))}function k(t){w=!1,h(t)}function O(t){!0===w&&(w=!1,h(t))}function j(t,n,r){var o=f(n.value);o||v(t),t._ripple=t._ripple||{},t._ripple.enabled=o;var e=n.value||{};e.center&&(t._ripple.centered=!0),e.class&&(t._ripple.class=n.value.class),e.circle&&(t._ripple.circle=e.circle),o&&!r?(t.addEventListener("touchstart",x,{passive:!0}),t.addEventListener("touchend",h,{passive:!0}),t.addEventListener("touchmove",y,{passive:!0}),t.addEventListener("touchcancel",h),t.addEventListener("mousedown",x),t.addEventListener("mouseup",h),t.addEventListener("mouseleave",h),t.addEventListener("keydown",_),t.addEventListener("keyup",k),t.addEventListener("blur",O),t.addEventListener("dragstart",h,{passive:!0})):!o&&r&&S(t)}function S(t){t.removeEventListener("mousedown",x),t.removeEventListener("touchstart",x),t.removeEventListener("touchend",h),t.removeEventListener("touchmove",y),t.removeEventListener("touchcancel",h),t.removeEventListener("mouseup",h),t.removeEventListener("mouseleave",h),t.removeEventListener("keydown",_),t.removeEventListener("keyup",k),t.removeEventListener("dragstart",h),t.removeEventListener("blur",O)}var C={bind:function(t,n,r){j(t,n,!1)},unbind:function(t){delete t._ripple,S(t)},update:function(t,n){n.value!==n.oldValue&&j(t,n,f(n.oldValue))}};n.a=C},function(t,n,r){"use strict";r(13),r(12),r(14),r(4),r(15),r(11),r(16);var o=r(2),e=(r(375),r(83),r(33),r(27),r(71),r(1)),l=r(114),c=r(0);function m(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function d(t){for(var i=1;i0?c.map((function(){return t(!1)})):t(!1))}};t.exports=o},function(t,n,r){"use strict";var o=r(203);n.a=o.a},,,,,,,,,,,,,,,,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return gt}));var o=r(36),e=r(37),l=(r(4),r(11),r(41),r(58),r(1)),c=r(8);r(105);var m=r(106),d=r(51),v=r(45),f=r(32),x=(r(365),{breakpoint:{mobileBreakpoint:1264,scrollBarWidth:16,thresholds:{xs:600,sm:960,md:1280,lg:1920}},icons:{iconfont:"mdi",values:{}},lang:{current:"en",locales:{en:{badge:"Badge",close:"Close",dataIterator:{noResultsText:"No matching records found",loadingText:"Loading items..."},dataTable:{itemsPerPageText:"Rows per page:",ariaLabel:{sortDescending:"Sorted descending.",sortAscending:"Sorted ascending.",sortNone:"Not sorted.",activateNone:"Activate to remove sorting.",activateDescending:"Activate to sort descending.",activateAscending:"Activate to sort ascending."},sortBy:"Sort by"},dataFooter:{itemsPerPageText:"Items per page:",itemsPerPageAll:"All",nextPage:"Next page",prevPage:"Previous page",firstPage:"First page",lastPage:"Last page",pageText:"{0}-{1} of {2}"},datePicker:{itemsSelected:"{0} selected",nextMonthAriaLabel:"Next month",nextYearAriaLabel:"Next year",prevMonthAriaLabel:"Previous month",prevYearAriaLabel:"Previous year"},noDataText:"No data available",carousel:{prev:"Previous visual",next:"Next visual",ariaLabel:{delimiter:"Carousel slide {0} of {1}"}},calendar:{moreEvents:"{0} more"},fileInput:{counter:"{0} files",counterSize:"{0} files ({1} in total)"},timePicker:{am:"AM",pm:"PM"},pagination:{ariaLabel:{wrapper:"Pagination Navigation",next:"Next page",previous:"Previous page",page:"Goto Page {0}",currentPage:"Current Page, Page {0}"}},rating:{ariaLabel:{icon:"Rating {0} of {1}"}}}},t:void 0},rtl:!1,theme:{dark:!1,default:"light",disable:!1,options:{cspNonce:void 0,customProperties:void 0,minifyTheme:void 0,themeCache:void 0,variations:!0},themes:{light:{primary:"#1976D2",secondary:"#424242",accent:"#82B1FF",error:"#FF5252",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},dark:{primary:"#2196F3",secondary:"#424242",accent:"#FF4081",error:"#FF5252",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"}}}}),h=r(0),y=r(50),w=["preset"];function _(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var k=function(t){Object(d.a)(r,t);var n=_(r);function r(t,e){var l;Object(o.a)(this,r),l=n.call(this);var d=Object(h.t)({},x),v=e.userPreset,f=v.preset,y=void 0===f?{}:f,_=Object(m.a)(v,w);return null!=y.preset&&Object(c.c)("Global presets do not support the **preset** option, it can be safely omitted"),e.preset=Object(h.t)(Object(h.t)(d,y),_),l}return Object(e.a)(r)}(y.a);k.property="presets";r(144);function O(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var j=function(t){Object(d.a)(r,t);var n=O(r);function r(){var t;return Object(o.a)(this,r),(t=n.apply(this,arguments)).bar=0,t.top=0,t.left=0,t.insetFooter=0,t.right=0,t.bottom=0,t.footer=0,t.application={bar:{},top:{},left:{},insetFooter:{},right:{},bottom:{},footer:{}},t}return Object(e.a)(r,[{key:"register",value:function(t,n,r){this.application[n][t]=r,this.update(n)}},{key:"unregister",value:function(t,n){null!=this.application[n][t]&&(delete this.application[n][t],this.update(n))}},{key:"update",value:function(t){this[t]=Object.values(this.application[t]).reduce((function(t,n){return t+n}),0)}}]),r}(y.a);j.property="application";r(42),r(43);function S(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var C=function(t){Object(d.a)(r,t);var n=S(r);function r(t){var e;Object(o.a)(this,r),(e=n.call(this)).xs=!1,e.sm=!1,e.md=!1,e.lg=!1,e.xl=!1,e.xsOnly=!1,e.smOnly=!1,e.smAndDown=!1,e.smAndUp=!1,e.mdOnly=!1,e.mdAndDown=!1,e.mdAndUp=!1,e.lgOnly=!1,e.lgAndDown=!1,e.lgAndUp=!1,e.xlOnly=!1,e.name="xs",e.height=0,e.width=0,e.mobile=!0,e.resizeTimeout=0;var l=t[r.property],c=l.mobileBreakpoint,m=l.scrollBarWidth,d=l.thresholds;return e.mobileBreakpoint=c,e.scrollBarWidth=m,e.thresholds=d,e}return Object(e.a)(r,[{key:"init",value:function(){this.update(),"undefined"!=typeof window&&window.addEventListener("resize",this.onResize.bind(this),{passive:!0})}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=t?0:this.getClientHeight(),r=t?0:this.getClientWidth(),o=r=this.thresholds.lg-this.scrollBarWidth;switch(this.height=n,this.width=r,this.xs=o,this.sm=e,this.md=l,this.lg=c,this.xl=m,this.xsOnly=o,this.smOnly=e,this.smAndDown=(o||e)&&!(l||c||m),this.smAndUp=!o&&(e||l||c||m),this.mdOnly=l,this.mdAndDown=(o||e||l)&&!(c||m),this.mdAndUp=!(o||e)&&(l||c||m),this.lgOnly=c,this.lgAndDown=(o||e||l||c)&&!m,this.lgAndUp=!(o||e||l)&&(c||m),this.xlOnly=m,!0){case o:this.name="xs";break;case e:this.name="sm";break;case l:this.name="md";break;case c:this.name="lg";break;default:this.name="xl"}if("number"!=typeof this.mobileBreakpoint){var d={xs:0,sm:1,md:2,lg:3,xl:4},v=d[this.name],f=d[this.mobileBreakpoint];this.mobile=v<=f}else this.mobile=r2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3?arguments[3]:void 0,e=n.replace(I,""),l=Object(h.l)(t,e,N);return l===N&&(r?(Object(c.b)('Translation key "'.concat(e,'" not found in fallback')),l=n):(Object(c.c)('Translation key "'.concat(e,'" not found, falling back to default')),l=V(o,n,!0,o))),l}var F=function(t){Object(d.a)(r,t);var n=R(r);function r(t){var e;Object(o.a)(this,r),(e=n.call(this)).defaultLocale="en";var l=t[r.property],c=l.current,m=l.locales,d=l.t;return e.current=c,e.locales=m,e.translator=d||e.defaultTranslator,e}return Object(e.a)(r,[{key:"currentLocale",value:function(t){return V(this.locales[this.current],t,!1,this.locales[this.defaultLocale])}},{key:"t",value:function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o1?n-1:0),o=1;oMath.pow(Y,3)?Math.cbrt(t):t/(3*Math.pow(Y,2))+4/29},K=function(t){return t>Y?Math.pow(t,3):3*Math.pow(Y,2)*(t-4/29)};function Q(t){var n=X,r=n(t[1]);return[116*r-16,500*(n(t[0]/.95047)-r),200*(r-n(t[2]/1.08883))]}function G(t){var n=K,r=(t[0]+16)/116;return[.95047*n(r+t[1]/500),n(r),1.08883*n(r-t[2]/200)]}var J=["anchor"],tt=["anchor"];function it(t){for(var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=t.anchor,e=Object(m.a)(t,J),l=Object.keys(e),c={},i=0;i1&&void 0!==arguments[1]?arguments[1]:"base";return"--v-".concat(t,"-").concat(n)},et=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"base";return"var(".concat(ot(t,n),")")};function pt(t,n){for(var r={base:Object(U.c)(n)},i=5;i>0;--i)r["lighten".concat(i)]=Object(U.c)(lt(n,i));for(var o=1;o<=4;++o)r["darken".concat(o)]=Object(U.c)(ct(n,o));return r}function lt(t,n){var r=Q(Z.b(t));return r[0]=r[0]+10*n,Z.a(G(r))}function ct(t,n){var r=Q(Z.b(t));return r[0]=r[0]-10*n,Z.a(G(r))}function mt(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,o=Object(f.a)(t);if(n){var e=Object(f.a)(this).constructor;r=Reflect.construct(o,arguments,e)}else r=o.apply(this,arguments);return Object(v.a)(this,r)}}var st=function(t){Object(d.a)(r,t);var n=mt(r);function r(t){var e;Object(o.a)(this,r),(e=n.call(this)).disabled=!1,e.isDark=null,e.unwatch=null,e.vueMeta=null;var l=t[r.property],c=l.dark,m=l.disable,d=l.options,f=l.themes;return e.dark=Boolean(c),e.defaults=e.themes=f,e.options=d,m?(e.disabled=!0,Object(v.a)(e)):(e.themes={dark:e.fillVariant(f.dark,!0),light:e.fillVariant(f.light,!1)},e)}return Object(e.a)(r,[{key:"css",set:function(t){this.vueMeta?this.isVueMeta23&&this.applyVueMeta23():this.checkOrCreateStyleElement()&&(this.styleEl.innerHTML=t)}},{key:"dark",get:function(){return Boolean(this.isDark)},set:function(t){var n=this.isDark;this.isDark=t,null!=n&&this.applyTheme()}},{key:"applyTheme",value:function(){if(this.disabled)return this.clearCss();this.css=this.generatedStyles}},{key:"clearCss",value:function(){this.css=""}},{key:"init",value:function(t,n){this.disabled||(t.$meta?this.initVueMeta(t):n&&this.initSSR(n),this.initTheme(t))}},{key:"setTheme",value:function(t,n){this.themes[t]=Object.assign(this.themes[t],n),this.applyTheme()}},{key:"resetThemes",value:function(){this.themes.light=Object.assign({},this.defaults.light),this.themes.dark=Object.assign({},this.defaults.dark),this.applyTheme()}},{key:"checkOrCreateStyleElement",value:function(){return this.styleEl=document.getElementById("vuetify-theme-stylesheet"),!!this.styleEl||(this.genStyleElement(),Boolean(this.styleEl))}},{key:"fillVariant",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0,r=this.themes[n?"dark":"light"];return Object.assign({},r,t)}},{key:"genStyleElement",value:function(){"undefined"!=typeof document&&(this.styleEl=document.createElement("style"),this.styleEl.type="text/css",this.styleEl.id="vuetify-theme-stylesheet",this.options.cspNonce&&this.styleEl.setAttribute("nonce",this.options.cspNonce),document.head.appendChild(this.styleEl))}},{key:"initVueMeta",value:function(t){var n=this;if(this.vueMeta=t.$meta(),this.isVueMeta23)t.$nextTick((function(){n.applyVueMeta23()}));else{var r="function"==typeof this.vueMeta.getOptions?this.vueMeta.getOptions().keyName:"metaInfo",o=t.$options[r]||{};t.$options[r]=function(){o.style=o.style||[];var t=o.style.find((function(s){return"vuetify-theme-stylesheet"===s.id}));return t?t.cssText=n.generatedStyles:o.style.push({cssText:n.generatedStyles,type:"text/css",id:"vuetify-theme-stylesheet",nonce:(n.options||{}).cspNonce}),o}}}},{key:"applyVueMeta23",value:function(){(0,this.vueMeta.addApp("vuetify").set)({style:[{cssText:this.generatedStyles,type:"text/css",id:"vuetify-theme-stylesheet",nonce:this.options.cspNonce}]})}},{key:"initSSR",value:function(t){var n=this.options.cspNonce?' nonce="'.concat(this.options.cspNonce,'"'):"";t.head=t.head||"",t.head+='")}},{key:"initTheme",value:function(t){var n=this;"undefined"!=typeof document&&(this.unwatch&&(this.unwatch(),this.unwatch=null),t.$once("hook:created",(function(){var r=l.a.observable({themes:n.themes});n.unwatch=t.$watch((function(){return r.themes}),(function(){return n.applyTheme()}),{deep:!0})})),this.applyTheme())}},{key:"currentTheme",get:function(){var t=this.dark?"dark":"light";return this.themes[t]}},{key:"generatedStyles",get:function(){var t,n=this.parsedTheme,r=this.options||{};return null!=r.themeCache&&null!=(t=r.themeCache.get(n))||(t=function(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=t.anchor,o=Object(m.a)(t,tt),e=Object.keys(o);if(!e.length)return"";var l="",c="",d=n?et("anchor"):r;c+=".v-application a { color: ".concat(d,"; }"),n&&(l+=" ".concat(ot("anchor"),": ").concat(r,";\n"));for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{};Object(o.a)(this,t),this.framework={isHydrating:!1},this.installed=[],this.preset={},this.userPreset={},this.userPreset=n,this.use(k),this.use(j),this.use(C),this.use($.a),this.use(B),this.use(F),this.use(st)}return Object(e.a)(t,[{key:"init",value:function(t,n){var r=this;this.installed.forEach((function(o){var e=r.framework[o];e.framework=r.framework,e.init(t,n)})),this.framework.rtl=Boolean(this.preset.rtl)}},{key:"use",value:function(t){var n=t.property;this.installed.includes(n)||(this.framework[n]=new t(this.preset,this),this.installed.push(n))}}]),t}();gt.install=function t(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!t.installed){t.installed=!0,l.a!==n&&Object(c.b)("Multiple instances of Vue detected\nSee https://github.com/vuetifyjs/vuetify/issues/4068\n\nIf you're seeing \"$attrs is readonly\", it's caused by this");var o=r.components||{},e=r.directives||{};for(var m in e){var d=e[m];n.directive(m,d)}!function t(r){if(r){for(var o in r){var component=r[o];component&&!t(component.$_vuetify_subcomponents)&&n.component(o,component)}return!0}return!1}(o),n.$_vuetify_installed||(n.$_vuetify_installed=!0,n.mixin({beforeCreate:function(){var t=this.$options;t.vuetify?(t.vuetify.init(this,this.$ssrContext),this.$vuetify=n.observable(t.vuetify.framework)):this.$vuetify=t.parent&&t.parent.$vuetify||this},beforeMount:function(){this.$options.vuetify&&this.$el&&this.$el.hasAttribute("data-server-rendered")&&(this.$vuetify.isHydrating=!0,this.$vuetify.breakpoint.update(!0))},mounted:function(){this.$options.vuetify&&this.$vuetify.isHydrating&&(this.$vuetify.isHydrating=!1,this.$vuetify.breakpoint.update())}}))}},gt.installed=!1,gt.version="2.6.2",gt.config={silent:!1}},function(t,n,r){"use strict";r(22);var o=r(1),e=(r(13),r(12),r(14),r(4),r(15),r(11),r(16),r(2)),l=(r(143),r(384),r(178)),c=r(79),m=r(38),d=r(92),v=r(226),f=r(25),x=r(0),h=r(6);function y(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}var w=Object(h.a)(m.a,Object(d.b)(["absolute","fixed","top","bottom"]),v.a,f.a).extend({name:"v-progress-linear",directives:{intersect:c.a},props:{active:{type:Boolean,default:!0},backgroundColor:{type:String,default:null},backgroundOpacity:{type:[Number,String],default:null},bufferValue:{type:[Number,String],default:100},color:{type:String,default:"primary"},height:{type:[Number,String],default:4},indeterminate:Boolean,query:Boolean,reverse:Boolean,rounded:Boolean,stream:Boolean,striped:Boolean,value:{type:[Number,String],default:0}},data:function(){return{internalLazyValue:this.value||0,isVisible:!0}},computed:{__cachedBackground:function(){return this.$createElement("div",this.setBackgroundColor(this.backgroundColor||this.color,{staticClass:"v-progress-linear__background",style:this.backgroundStyle}))},__cachedBar:function(){return this.$createElement(this.computedTransition,[this.__cachedBarType])},__cachedBarType:function(){return this.indeterminate?this.__cachedIndeterminate:this.__cachedDeterminate},__cachedBuffer:function(){return this.$createElement("div",{staticClass:"v-progress-linear__buffer",style:this.styles})},__cachedDeterminate:function(){return this.$createElement("div",this.setBackgroundColor(this.color,{staticClass:"v-progress-linear__determinate",style:{width:Object(x.g)(this.normalizedValue,"%")}}))},__cachedIndeterminate:function(){return this.$createElement("div",{staticClass:"v-progress-linear__indeterminate",class:{"v-progress-linear__indeterminate--active":this.active}},[this.genProgressBar("long"),this.genProgressBar("short")])},__cachedStream:function(){return this.stream?this.$createElement("div",this.setTextColor(this.color,{staticClass:"v-progress-linear__stream",style:{width:Object(x.g)(100-this.normalizedBuffer,"%")}})):null},backgroundStyle:function(){var t;return t={opacity:null==this.backgroundOpacity?this.backgroundColor?1:.3:parseFloat(this.backgroundOpacity)},Object(e.a)(t,this.isReversed?"right":"left",Object(x.g)(this.normalizedValue,"%")),Object(e.a)(t,"width",Object(x.g)(Math.max(0,this.normalizedBuffer-this.normalizedValue),"%")),t},classes:function(){return function(t){for(var i=1;i100?100:parseFloat(t)}},render:function(t){return t("div",{staticClass:"v-progress-linear",attrs:{role:"progressbar","aria-valuemin":0,"aria-valuemax":this.normalizedBuffer,"aria-valuenow":this.indeterminate?void 0:this.normalizedValue},class:this.classes,directives:[{name:"intersect",value:this.onObserve}],style:{bottom:this.bottom?0:void 0,height:this.active?Object(x.g)(this.height):0,top:this.top?0:void 0},on:this.genListeners()},[this.__cachedStream,this.__cachedBackground,this.__cachedBuffer,this.__cachedBar,this.genContent()])}}),_=w;n.a=o.a.extend().extend({name:"loadable",props:{loading:{type:[Boolean,String],default:!1},loaderHeight:{type:[Number,String],default:2}},methods:{genProgress:function(){return!1===this.loading?null:this.$slots.progress||this.$createElement(_,{props:{absolute:!0,color:!0===this.loading||""===this.loading?this.color||"primary":this.loading,height:this.loaderHeight,indeterminate:!0}})}}})},,function(t,n){t.exports=function(component,t){var n="function"==typeof component.exports?component.exports.extendOptions:component.options;for(var i in"function"==typeof component.exports&&(n.components=component.exports.options.components),n.components=n.components||{},t)n.components[i]=n.components[i]||t[i]}},,,,,,,,,,,,,,,,,,,,,,,,,,function(t,n,r){"use strict";r(22);var o=r(0),e=r(1);n.a=e.a.extend({name:"measurable",props:{height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String]},computed:{measurableStyles:function(){var t={},n=Object(o.g)(this.height),r=Object(o.g)(this.minHeight),e=Object(o.g)(this.minWidth),l=Object(o.g)(this.maxHeight),c=Object(o.g)(this.maxWidth),m=Object(o.g)(this.width);return n&&(t.height=n),r&&(t.minHeight=r),e&&(t.minWidth=e),l&&(t.maxHeight=l),c&&(t.maxWidth=c),m&&(t.width=m),t}}})},function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(92),e=r(6);function l(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return Object(e.a)(Object(o.b)(["absolute","fixed"])).extend({name:"applicationable",props:{app:Boolean},computed:{applicationProperty:function(){return t}},watch:{app:function(t,n){n?this.removeApplication(!0):this.callUpdate()},applicationProperty:function(t,n){this.$vuetify.application.unregister(this._uid,n)}},activated:function(){this.callUpdate()},created:function(){for(var i=0,t=n.length;i0&&void 0!==arguments[0]&&arguments[0];(t||this.app)&&this.$vuetify.application.unregister(this._uid,this.applicationProperty)},updateApplication:function(){return 0}}})}},,function(t,n,r){"use strict";var o=r(2),e=(r(22),r(1));n.a=e.a.extend({name:"elevatable",props:{elevation:[Number,String]},computed:{computedElevation:function(){return this.elevation},elevationClasses:function(){var t=this.computedElevation;return null==t||isNaN(parseInt(t))?{}:Object(o.a)({},"elevation-".concat(this.elevation),!0)}}})},function(t,n,r){"use strict";r(271);var o=r(1);n.a=o.a.extend({name:"sizeable",props:{large:Boolean,small:Boolean,xLarge:Boolean,xSmall:Boolean},computed:{medium:function(){return Boolean(!(this.xSmall||this.small||this.large||this.xLarge))},sizeableClasses:function(){return{"v-size--x-small":this.xSmall,"v-size--small":this.small,"v-size--default":this.medium,"v-size--large":this.large,"v-size--x-large":this.xLarge}}}})},,,,function(t,n,r){"use strict";var o=r(17),e=(r(22),r(59),r(43),r(38)),l=r(25),c=r(109),m=r(0),d=r(8),v=r(6),f=Object(v.a)(e.a,Object(c.a)("form"),l.a);n.a=f.extend({name:"validatable",props:{disabled:Boolean,error:Boolean,errorCount:{type:[Number,String],default:1},errorMessages:{type:[String,Array],default:function(){return[]}},messages:{type:[String,Array],default:function(){return[]}},readonly:Boolean,rules:{type:Array,default:function(){return[]}},success:Boolean,successMessages:{type:[String,Array],default:function(){return[]}},validateOnBlur:Boolean,value:{required:!1}},data:function(){return{errorBucket:[],hasColor:!1,hasFocused:!1,hasInput:!1,isFocused:!1,isResetting:!1,lazyValue:this.value,valid:!1}},computed:{computedColor:function(){if(!this.isDisabled)return this.color?this.color:this.isDark&&!this.appIsDark?"white":"primary"},hasError:function(){return this.internalErrorMessages.length>0||this.errorBucket.length>0||this.error},hasSuccess:function(){return this.internalSuccessMessages.length>0||this.success},externalError:function(){return this.internalErrorMessages.length>0||this.error},hasMessages:function(){return this.validationTarget.length>0},hasState:function(){return!this.isDisabled&&(this.hasSuccess||this.shouldValidate&&this.hasError)},internalErrorMessages:function(){return this.genInternalMessages(this.errorMessages)},internalMessages:function(){return this.genInternalMessages(this.messages)},internalSuccessMessages:function(){return this.genInternalMessages(this.successMessages)},internalValue:{get:function(){return this.lazyValue},set:function(t){this.lazyValue=t,this.$emit("input",t)}},isDisabled:function(){return this.disabled||!!this.form&&this.form.disabled},isInteractive:function(){return!this.isDisabled&&!this.isReadonly},isReadonly:function(){return this.readonly||!!this.form&&this.form.readonly},shouldValidate:function(){return!!this.externalError||!this.isResetting&&(this.validateOnBlur?this.hasFocused&&!this.isFocused:this.hasInput||this.hasFocused)},validations:function(){return this.validationTarget.slice(0,Number(this.errorCount))},validationState:function(){if(!this.isDisabled)return this.hasError&&this.shouldValidate?"error":this.hasSuccess?"success":this.hasColor?this.computedColor:void 0},validationTarget:function(){return this.internalErrorMessages.length>0?this.internalErrorMessages:this.successMessages&&this.successMessages.length>0?this.internalSuccessMessages:this.messages&&this.messages.length>0?this.internalMessages:this.shouldValidate?this.errorBucket:[]}},watch:{rules:{handler:function(t,n){Object(m.i)(t,n)||this.validate()},deep:!0},internalValue:function(){this.hasInput=!0,this.validateOnBlur||this.$nextTick(this.validate)},isFocused:function(t){t||this.isDisabled||(this.hasFocused=!0,this.validateOnBlur&&this.$nextTick(this.validate))},isResetting:function(){var t=this;setTimeout((function(){t.hasInput=!1,t.hasFocused=!1,t.isResetting=!1,t.validate()}),0)},hasError:function(t){this.shouldValidate&&this.$emit("update:error",t)},value:function(t){this.lazyValue=t}},beforeMount:function(){this.validate()},created:function(){this.form&&this.form.register(this)},beforeDestroy:function(){this.form&&this.form.unregister(this)},methods:{genInternalMessages:function(t){return t?Array.isArray(t)?t:[t]:[]},reset:function(){this.isResetting=!0,this.internalValue=Array.isArray(this.internalValue)?[]:null},resetValidation:function(){this.isResetting=!0},validate:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=arguments.length>1?arguments[1]:void 0,r=[];n=n||this.internalValue,t&&(this.hasInput=this.hasFocused=!0);for(var e=0;e=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,c=!0,m=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return c=t.done,t},e:function(t){m=!0,e=t},f:function(){try{c||null==r.return||r.return()}finally{if(m)throw e}}}}function l(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i0},canPrefetch:function(){var t=navigator.connection;return!(this.$nuxt.isOffline||t&&((t.effectiveType||"").includes("2g")||t.saveData))},getPrefetchComponents:function(){return this.$router.resolve(this.to,this.$route,this.append).resolved.matched.map((function(t){return t.components.default})).filter((function(t){return"function"==typeof t&&!t.options&&!t.__prefetched}))},prefetchLink:function(){if(this.canPrefetch()){d.unobserve(this.$el);var t,n=e(this.getPrefetchComponents());try{for(n.s();!(t=n.n()).done;){var r=t.value,o=r();o instanceof Promise&&o.catch((function(){})),r.__prefetched=!0}}catch(t){n.e(t)}finally{n.f()}}}}}},function(t,n,r){"use strict";r.d(n,"c",(function(){return f})),r.d(n,"d",(function(){return x})),r.d(n,"e",(function(){return h})),r.d(n,"a",(function(){return y})),r.d(n,"b",(function(){return w}));r(33);var o=r(100);function e(){for(var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments.length,o=new Array(r>1?r-1:0),e=1;e1&&void 0!==arguments[1]?arguments[1]:"top center 0",r=arguments.length>2?arguments[2]:void 0;return{name:t,functional:!0,props:{group:{type:Boolean,default:!1},hideOnLeave:{type:Boolean,default:!1},leaveAbsolute:{type:Boolean,default:!1},mode:{type:String,default:r},origin:{type:String,default:n}},render:function(n,r){var l="transition".concat(r.props.group?"-group":""),data={props:{name:t,mode:r.props.mode},on:{beforeEnter:function(t){t.style.transformOrigin=r.props.origin,t.style.webkitTransformOrigin=r.props.origin}}};return r.props.leaveAbsolute&&(data.on.leave=e(data.on.leave,(function(t){var n=t.offsetTop,r=t.offsetLeft,o=t.offsetWidth,e=t.offsetHeight;t._transitionInitialStyles={position:t.style.position,top:t.style.top,left:t.style.left,width:t.style.width,height:t.style.height},t.style.position="absolute",t.style.top=n+"px",t.style.left=r+"px",t.style.width=o+"px",t.style.height=e+"px"})),data.on.afterLeave=e(data.on.afterLeave,(function(t){if(t&&t._transitionInitialStyles){var n=t._transitionInitialStyles,r=n.position,o=n.top,e=n.left,l=n.width,c=n.height;delete t._transitionInitialStyles,t.style.position=r||"",t.style.top=o||"",t.style.left=e||"",t.style.width=l||"",t.style.height=c||""}}))),r.props.hideOnLeave&&(data.on.leave=e(data.on.leave,(function(t){t.style.setProperty("display","none","important")}))),n(l,Object(o.a)(r.data,data),r.children)}}}function c(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"in-out";return{name:t,functional:!0,props:{mode:{type:String,default:r}},render:function(r,e){return r("transition",Object(o.a)(e.data,{props:{name:t},on:n}),e.children)}}}var m=r(2),d=r(0),v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=n?"width":"height",o="offset".concat(Object(d.w)(r));return{beforeEnter:function(t){t._parent=t.parentNode,t._initialStyle=Object(m.a)({transition:t.style.transition,overflow:t.style.overflow},r,t.style[r])},enter:function(n){var e=n._initialStyle;n.style.setProperty("transition","none","important"),n.style.overflow="hidden";var l="".concat(n[o],"px");n.style[r]="0",n.offsetHeight,n.style.transition=e.transition,t&&n._parent&&n._parent.classList.add(t),requestAnimationFrame((function(){n.style[r]=l}))},afterEnter:l,enterCancelled:l,leave:function(t){t._initialStyle=Object(m.a)({transition:"",overflow:t.style.overflow},r,t.style[r]),t.style.overflow="hidden",t.style[r]="".concat(t[o],"px"),t.offsetHeight,requestAnimationFrame((function(){return t.style[r]="0"}))},afterLeave:e,leaveCancelled:e};function e(n){t&&n._parent&&n._parent.classList.remove(t),l(n)}function l(t){var n=t._initialStyle[r];t.style.overflow=t._initialStyle.overflow,null!=n&&(t.style[r]=n),delete t._initialStyle}},f=(l("carousel-transition"),l("carousel-reverse-transition"),l("tab-transition"),l("tab-reverse-transition"),l("menu-transition"),l("fab-transition","center center","out-in"),l("dialog-transition"),l("dialog-bottom-transition"),l("dialog-top-transition"),l("fade-transition")),x=(l("scale-transition"),l("scroll-x-transition"),l("scroll-x-reverse-transition"),l("scroll-y-transition"),l("scroll-y-reverse-transition"),l("slide-x-transition")),h=(l("slide-x-reverse-transition"),l("slide-y-transition")),y=(l("slide-y-reverse-transition"),c("expand-transition",v())),w=c("expand-x-transition",v("",!0))},,,,,,,,function(t,n,r){"use strict";var o=r(208);n.a=o.a},,,,,,,,,,,,,,,,function(t,n,r){"use strict";var o=r(206);n.a=o.a},function(t,n,r){"use strict";r(13),r(12),r(14),r(15),r(11),r(16);var o,e=r(2),l=(r(271),r(4),r(41),r(58),r(27),r(22),r(83),r(121),r(59),r(380),r(93)),c=r(38),m=r(171),d=r(25),v=r(0),f=r(1),x=r(6);function h(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function y(t){for(var i=1;i4}(n)?this.renderSvgIcon(n,t):this.renderFontIcon(n,t):this.renderSvgIconComponent(n,t)}});n.a=f.a.extend({name:"v-icon",$_wrapperFor:w,functional:!0,render:function(t,n){var data=n.data,r=n.children,o="";return data.domProps&&(o=data.domProps.textContent||data.domProps.innerHTML||o,delete data.domProps.textContent,delete data.domProps.innerHTML),t(w,data,o?[o]:r)}})},function(t,n,r){"use strict";r(22),r(41),r(58);var o=r(186),e=r(0),l=r(1);n.a=l.a.extend().extend({name:"overlayable",props:{hideOverlay:Boolean,overlayColor:String,overlayOpacity:[Number,String]},data:function(){return{animationFrame:0,overlay:null}},watch:{hideOverlay:function(t){this.isActive&&(t?this.removeOverlay():this.genOverlay())}},beforeDestroy:function(){this.removeOverlay()},methods:{createOverlay:function(){var t=new o.a({propsData:{absolute:this.absolute,value:!1,color:this.overlayColor,opacity:this.overlayOpacity}});t.$mount();var n=this.absolute?this.$el.parentNode:document.querySelector("[data-app]");n&&n.insertBefore(t.$el,n.firstChild),this.overlay=t},genOverlay:function(){var t=this;if(this.hideScroll(),!this.hideOverlay)return this.overlay||this.createOverlay(),this.animationFrame=requestAnimationFrame((function(){t.overlay&&(void 0!==t.activeZIndex?t.overlay.zIndex=String(t.activeZIndex-1):t.$el&&(t.overlay.zIndex=Object(e.o)(t.$el)),t.overlay.value=!0)})),!0},removeOverlay:function(){var t=this,n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.overlay&&(Object(e.a)(this.overlay.$el,"transitionend",(function(){t.overlay&&t.overlay.$el&&t.overlay.$el.parentNode&&!t.overlay.value&&!t.isActive&&(t.overlay.$el.parentNode.removeChild(t.overlay.$el),t.overlay.$destroy(),t.overlay=null)})),cancelAnimationFrame(this.animationFrame),this.overlay.value=!1),n&&this.showScroll()},scrollListener:function(t){if("keydown"===t.type){if(["INPUT","TEXTAREA","SELECT"].includes(t.target.tagName)||t.target.isContentEditable)return;var n=[e.r.up,e.r.pageup],r=[e.r.down,e.r.pagedown];if(n.includes(t.keyCode))t.deltaY=-1;else{if(!r.includes(t.keyCode))return;t.deltaY=1}}(t.target===this.overlay||"keydown"!==t.type&&t.target===document.body||this.checkPath(t))&&t.preventDefault()},hasScrollbar:function(t){if(!t||t.nodeType!==Node.ELEMENT_NODE)return!1;var style=window.getComputedStyle(t);return(["auto","scroll"].includes(style.overflowY)||"SELECT"===t.tagName)&&t.scrollHeight>t.clientHeight||["auto","scroll"].includes(style.overflowX)&&t.scrollWidth>t.clientWidth},shouldScroll:function(t,n){if(t.hasAttribute("data-app"))return!1;var r,o,e=n.shiftKey||n.deltaX?"x":"y",l="y"===e?n.deltaY:n.deltaX||n.deltaY;return"y"===e?(r=0===t.scrollTop,o=t.scrollTop+t.clientHeight===t.scrollHeight):(r=0===t.scrollLeft,o=t.scrollLeft+t.clientWidth===t.scrollWidth),!(r||!(l<0))||(!(o||!(l>0))||!(!r&&!o)&&this.shouldScroll(t.parentNode,n))},isInside:function(t,n){return t===n||null!==t&&t!==document.body&&this.isInside(t.parentNode,n)},checkPath:function(t){var path=Object(e.f)(t);if("keydown"===t.type&&path[0]===document.body){var dialog=this.$refs.dialog,n=window.getSelection().anchorNode;return!(dialog&&this.hasScrollbar(dialog)&&this.isInside(n,dialog))||!this.shouldScroll(dialog,t)}for(var r=0;r100?100:parseFloat(this.value)},strokeDashArray:function(){return Math.round(1e3*this.circumference)/1e3},strokeDashOffset:function(){return(100-this.normalizedValue)/100*this.circumference+"px"},strokeWidth:function(){return Number(this.width)/+this.size*this.viewBoxSize*2},styles:function(){return{height:Object(l.g)(this.calculatedSize),width:Object(l.g)(this.calculatedSize)}},svgStyles:function(){return{transform:"rotate(".concat(Number(this.rotate),"deg)")}},viewBoxSize:function(){return this.radius/(1-Number(this.width)/+this.size)}},methods:{genCircle:function(t,n){return this.$createElement("circle",{class:"v-progress-circular__".concat(t),attrs:{fill:"transparent",cx:2*this.viewBoxSize,cy:2*this.viewBoxSize,r:this.radius,"stroke-width":this.strokeWidth,"stroke-dasharray":this.strokeDashArray,"stroke-dashoffset":n}})},genSvg:function(){var t=[this.indeterminate||this.genCircle("underlay",0),this.genCircle("overlay",this.strokeDashOffset)];return this.$createElement("svg",{style:this.svgStyles,attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"".concat(this.viewBoxSize," ").concat(this.viewBoxSize," ").concat(2*this.viewBoxSize," ").concat(2*this.viewBoxSize)}},t)},genInfo:function(){return this.$createElement("div",{staticClass:"v-progress-circular__info"},this.$slots.default)},onObserve:function(t,n,r){this.isVisible=r}},render:function(t){return t("div",this.setTextColor(this.color,{staticClass:"v-progress-circular",attrs:{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":this.indeterminate?void 0:this.normalizedValue},class:this.classes,directives:[{name:"intersect",value:this.onObserve}],style:this.styles,on:this.$listeners}),[this.genSvg(),this.genInfo()])}})},function(t,n,r){"use strict";r(13),r(12),r(14),r(4),r(15),r(11),r(16);var o=r(2),e=(r(22),r(179),r(180),r(382),r(117)),l=r(139),c=r(115),m=r(6);function d(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function v(t){for(var i=1;i0?c.map((function(){return t(!1)})):t(!1))}};t.exports=o},,,,function(t,n,r){"use strict";r.d(n,"a",(function(){return l}));var o=r(2),e=r(109);function l(t,n,r){return Object(e.a)(t,n,r).extend({name:"groupable",props:{activeClass:{type:String,default:function(){if(this[t])return this[t].activeClass}},disabled:Boolean},data:function(){return{isActive:!1}},computed:{groupClasses:function(){return this.activeClass?Object(o.a)({},this.activeClass,this.isActive):{}}},created:function(){this[t]&&this[t].register(this)},beforeDestroy:function(){this[t]&&this[t].unregister(this)},methods:{toggle:function(){this.$emit("change")}}})}l("itemGroup")},function(t,n,r){"use strict";var o={inserted:function(t,n,r){var o=n.value,e=n.options||{passive:!0};window.addEventListener("resize",o,e),t._onResize=Object(t._onResize),t._onResize[r.context._uid]={callback:o,options:e},n.modifiers&&n.modifiers.quiet||o()},unbind:function(t,n,r){var o;if(null!=(o=t._onResize)&&o[r.context._uid]){var e=t._onResize[r.context._uid],l=e.callback,c=e.options;window.removeEventListener("resize",l,c),delete t._onResize[r.context._uid]}}};n.a=o},function(t,n,r){"use strict";r(22),r(43);var o=r(1);n.a=o.a.extend().extend({name:"delayable",props:{openDelay:{type:[Number,String],default:0},closeDelay:{type:[Number,String],default:0}},data:function(){return{openTimeout:void 0,closeTimeout:void 0}},methods:{clearDelay:function(){clearTimeout(this.openTimeout),clearTimeout(this.closeTimeout)},runDelay:function(t,n){var r=this;this.clearDelay();var o=parseInt(this["".concat(t,"Delay")],10);this["".concat(t,"Timeout")]=setTimeout(n||function(){r.isActive={open:!0,close:!1}[t]},o)}}})},function(t,n,r){"use strict";var o=r(49),e=r(6);function l(t){for(var n=[],r=0;ro},Object(m.b)(n))},content)}}),h=r(176),y=r(79),w=r(8),_=r(1);var k=r(139),O=r(175),j=r(215),S=r(114),C=r(118),$=r(0),P=["title"];function E(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function z(t){for(var i=1;i0||this.badInput},isEnclosed:function(){return this.filled||this.isSolo||this.outlined},isLabelActive:function(){return this.isDirty||A.includes(this.type)},isSingle:function(){return this.isSolo||this.singleLine||this.fullWidth||this.filled&&!this.hasLabel},isSolo:function(){return this.solo||this.soloInverted},labelPosition:function(){var t=this.prefix&&!this.labelValue?this.prefixWidth:0;return this.labelValue&&this.prependWidth&&(t-=this.prependWidth),this.$vuetify.rtl===this.reverse?{left:t,right:"auto"}:{left:"auto",right:t}},showLabel:function(){return this.hasLabel&&!(this.isSingle&&this.labelValue)},labelValue:function(){return this.isFocused||this.isLabelActive||this.persistentPlaceholder}},watch:{outlined:"setLabelWidth",label:function(){this.$nextTick(this.setLabelWidth)},prefix:function(){this.$nextTick(this.setPrefixWidth)},isFocused:"updateValue",value:function(t){this.lazyValue=t}},created:function(){this.$attrs.hasOwnProperty("box")&&Object(w.a)("box","filled",this),this.$attrs.hasOwnProperty("browser-autocomplete")&&Object(w.a)("browser-autocomplete","autocomplete",this),this.shaped&&!(this.filled||this.outlined||this.isSolo)&&Object(w.c)("shaped should be used with either filled or outlined",this)},mounted:function(){var t=this;this.$watch((function(){return t.labelValue}),this.setLabelWidth),this.autofocus&&this.tryAutofocus(),requestAnimationFrame((function(){t.isBooted=!0,requestAnimationFrame((function(){t.isIntersecting||t.onResize()}))}))},methods:{focus:function(){this.onFocus()},blur:function(t){var n=this;window.requestAnimationFrame((function(){n.$refs.input&&n.$refs.input.blur()}))},clearableCallback:function(){var t=this;this.$refs.input&&this.$refs.input.focus(),this.$nextTick((function(){return t.internalValue=null}))},genAppendSlot:function(){var slot=[];return this.$slots["append-outer"]?slot.push(this.$slots["append-outer"]):this.appendOuterIcon&&slot.push(this.genIcon("appendOuter")),this.genSlot("append","outer",slot)},genPrependInnerSlot:function(){var slot=[];return this.$slots["prepend-inner"]?slot.push(this.$slots["prepend-inner"]):this.prependInnerIcon&&slot.push(this.genIcon("prependInner")),this.genSlot("prepend","inner",slot)},genIconSlot:function(){var slot=[];return this.$slots.append?slot.push(this.$slots.append):this.appendIcon&&slot.push(this.genIcon("append")),this.genSlot("append","inner",slot)},genInputSlot:function(){var input=c.a.options.methods.genInputSlot.call(this),t=this.genPrependInnerSlot();return t&&(input.children=input.children||[],input.children.unshift(t)),input},genClearIcon:function(){return this.clearable?this.isDirty?this.genSlot("append","inner",[this.genIcon("clear",this.clearableCallback)]):this.genSlot("append","inner",[this.$createElement("div")]):null},genCounter:function(){var t,n,r;if(!this.hasCounter)return null;var o=!0===this.counter?this.attrs$.maxlength:this.counter,e={dark:this.dark,light:this.light,max:o,value:this.computedCounterValue};return null!=(t=null==(n=(r=this.$scopedSlots).counter)?void 0:n.call(r,{props:e}))?t:this.$createElement(x,{props:e})},genControl:function(){return c.a.options.methods.genControl.call(this)},genDefaultSlot:function(){return[this.genFieldset(),this.genTextFieldSlot(),this.genClearIcon(),this.genIconSlot(),this.genProgress()]},genFieldset:function(){return this.outlined?this.$createElement("fieldset",{attrs:{"aria-hidden":!0}},[this.genLegend()]):null},genLabel:function(){if(!this.showLabel)return null;var data={props:{absolute:!0,color:this.validationState,dark:this.dark,disabled:this.isDisabled,focused:!this.isSingle&&(this.isFocused||!!this.validationState),for:this.computedId,left:this.labelPosition.left,light:this.light,right:this.labelPosition.right,value:this.labelValue}};return this.$createElement(h.a,data,this.$slots.label||this.label)},genLegend:function(){var t=this.singleLine||!this.labelValue&&!this.isDirty?0:this.labelWidth,span=this.$createElement("span",{domProps:{innerHTML:"​"},staticClass:"notranslate"});return this.$createElement("legend",{style:{width:this.isSingle?void 0:Object($.g)(t)}},[span])},genInput:function(){var t=Object.assign({},this.listeners$);delete t.change;var n=this.attrs$,r=(n.title,Object(o.a)(n,P));return this.$createElement("input",{style:{},domProps:{value:"number"===this.type&&Object.is(this.lazyValue,-0)?"-0":this.lazyValue},attrs:z(z({},r),{},{autofocus:this.autofocus,disabled:this.isDisabled,id:this.computedId,placeholder:this.persistentPlaceholder||this.isFocused||!this.hasLabel?this.placeholder:void 0,readonly:this.isReadonly,type:this.type}),on:Object.assign(t,{blur:this.onBlur,input:this.onInput,focus:this.onFocus,keydown:this.onKeyDown}),ref:"input",directives:[{name:"resize",modifiers:{quiet:!0},value:this.onResize}]})},genMessages:function(){if(!this.showDetails)return null;var t=c.a.options.methods.genMessages.call(this),n=this.genCounter();return this.$createElement("div",{staticClass:"v-text-field__details"},[t,n])},genTextFieldSlot:function(){return this.$createElement("div",{staticClass:"v-text-field__slot"},[this.genLabel(),this.prefix?this.genAffix("prefix"):null,this.genInput(),this.suffix?this.genAffix("suffix"):null])},genAffix:function(t){return this.$createElement("div",{class:"v-text-field__".concat(t),ref:t},this[t])},onBlur:function(t){var n=this;this.isFocused=!1,t&&this.$nextTick((function(){return n.$emit("blur",t)}))},onClick:function(){this.isFocused||this.isDisabled||!this.$refs.input||this.$refs.input.focus()},onFocus:function(t){if(this.$refs.input){var n=Object(C.a)(this.$el);if(n)return n.activeElement!==this.$refs.input?this.$refs.input.focus():void(this.isFocused||(this.isFocused=!0,t&&this.$emit("focus",t)))}},onInput:function(t){var n=t.target;this.internalValue=n.value,this.badInput=n.validity&&n.validity.badInput},onKeyDown:function(t){t.keyCode===$.r.enter&&this.lazyValue!==this.initialValue&&(this.initialValue=this.lazyValue,this.$emit("change",this.initialValue)),this.$emit("keydown",t)},onMouseDown:function(t){t.target!==this.$refs.input&&(t.preventDefault(),t.stopPropagation()),c.a.options.methods.onMouseDown.call(this,t)},onMouseUp:function(t){this.hasMouseDown&&this.focus(),c.a.options.methods.onMouseUp.call(this,t)},setLabelWidth:function(){this.outlined&&(this.labelWidth=this.$refs.label?Math.min(.75*this.$refs.label.scrollWidth+6,this.$el.offsetWidth-24):0)},setPrefixWidth:function(){this.$refs.prefix&&(this.prefixWidth=this.$refs.prefix.offsetWidth)},setPrependWidth:function(){this.outlined&&this.$refs["prepend-inner"]&&(this.prependWidth=this.$refs["prepend-inner"].offsetWidth)},tryAutofocus:function(){if(!this.autofocus||"undefined"==typeof document||!this.$refs.input)return!1;var t=Object(C.a)(this.$el);return!(!t||t.activeElement===this.$refs.input)&&(this.$refs.input.focus(),!0)},updateValue:function(t){this.hasColor=t,t?this.initialValue=this.lazyValue:this.initialValue!==this.lazyValue&&this.$emit("change",this.lazyValue)},onResize:function(){this.setLabelWidth(),this.setPrefixWidth(),this.setPrependWidth()}}})},,,,function(t,n,r){"use strict";var o=r(2),e=(r(27),r(61),r(99),r(59),r(4),r(42),r(66),r(53),r(12),r(72),r(84),r(65),r(1));function l(t,n){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,n){if(!t)return;if("string"==typeof t)return c(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return c(t,n)}(t))||n&&t&&"number"==typeof t.length){r&&(t=r);var i=0,o=function(){};return{s:o,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var e,l=!0,m=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return l=t.done,t},e:function(t){m=!0,e=t},f:function(){try{l||null==r.return||r.return()}finally{if(m)throw e}}}}function c(t,n){(null==n||n>t.length)&&(n=t.length);for(var i=0,r=new Array(n);i0?Object(o.a)({},t.join(" "),!0):{}}}})},function(t,n,r){"use strict";r(13),r(12),r(14),r(15),r(11),r(16);var o=r(17),e=r(21),l=r(2),c=(r(143),r(22),r(4),r(41),r(373),r(117)),m=r(202),d=r(214),v=r(62),f=r(170),x=r(92),h=r(115),y=r(171),w=r(6),_=r(8);function k(object,t){var n=Object.keys(object);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(object);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(object,t).enumerable}))),n.push.apply(n,r)}return n}function O(t){for(var i=1;i0)))},isRound:function(){return Boolean(this.icon||this.fab)},styles:function(){return O({},this.measurableStyles)}},created:function(){var t=this;[["flat","text"],["outline","outlined"],["round","rounded"]].forEach((function(n){var r=Object(e.a)(n,2),o=r[0],l=r[1];t.$attrs.hasOwnProperty(o)&&Object(_.a)(o,l,t)}))},methods:{click:function(t){!this.retainFocusOnClick&&!this.fab&&t.detail&&this.$el.blur(),this.$emit("click",t),this.btnToggle&&this.toggle()},genContent:function(){return this.$createElement("span",{staticClass:"v-btn__content"},this.$slots.default)},genLoader:function(){return this.$createElement("span",{class:"v-btn__loader"},this.$slots.loader||[this.$createElement(m.a,{props:{indeterminate:!0,size:23,width:2}})])}},render:function(t){var n=[this.genContent(),this.loading&&this.genLoader()],r=this.generateRouteLink(),e=r.tag,data=r.data,l=this.hasBg?this.setBackgroundColor:this.setTextColor;return"button"===e&&(data.attrs.type=this.type,data.attrs.disabled=this.disabled),data.attrs.value=["string","number"].includes(Object(o.a)(this.value))?this.value:JSON.stringify(this.value),t(e,this.disabled?data:l(this.color,data),n)}})},function(t,n,r){"use strict";var o=r(2),e=r(1);var l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"value",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"change";return e.a.extend({name:"proxyable",model:{prop:t,event:n},props:Object(o.a)({},t,{required:!1}),data:function(){return{internalLazyValue:this[t]}},computed:{internalValue:{get:function(){return this.internalLazyValue},set:function(t){t!==this.internalLazyValue&&(this.internalLazyValue=t,this.$emit(n,t))}}},watch:Object(o.a)({},t,(function(t){this.internalLazyValue=t}))})}();n.a=l},function(t,n,r){"use strict";var o=r(17),e=(r(41),r(13),r(4),r(42),r(216)),l=r(62),c=r(6),m=r(0),d=r(8),v=Object(c.a)(e.a,l.a);n.a=v.extend({name:"activatable",props:{activator:{default:null,validator:function(t){return["string","object"].includes(Object(o.a)(t))}},disabled:Boolean,internalActivator:Boolean,openOnClick:{type:Boolean,default:!0},openOnHover:Boolean,openOnFocus:Boolean},data:function(){return{activatorElement:null,activatorNode:[],events:["click","mouseenter","mouseleave","focus"],listeners:{}}},watch:{activator:"resetActivator",openOnFocus:"resetActivator",openOnHover:"resetActivator"},mounted:function(){var t=Object(m.n)(this,"activator",!0);t&&["v-slot","normal"].includes(t)&&Object(d.b)('The activator slot must be bound, try \'