diff --git a/Core/source/core/const.ts b/Core/source/core/const.ts index 3f03285a8..71b11ee15 100644 --- a/Core/source/core/const.ts +++ b/Core/source/core/const.ts @@ -25,12 +25,3 @@ export const GMAIL_RECOVERY_EMAIL_SUBJECTS = [ 'All you need to know about CryptUP (contains a backup)', 'CryptUP Account Backup', ]; - -export const gmailBackupSearchQuery = (acctEmail: string) => { - return [ - 'from:' + acctEmail, - 'to:' + acctEmail, - '(subject:"' + GMAIL_RECOVERY_EMAIL_SUBJECTS.join('" OR subject: "') + '")', - '-is:spam', - ].join(' '); -}; diff --git a/Core/source/mobile-interface/endpoints.ts b/Core/source/mobile-interface/endpoints.ts index d4ce21913..51261a564 100644 --- a/Core/source/mobile-interface/endpoints.ts +++ b/Core/source/mobile-interface/endpoints.ts @@ -17,7 +17,6 @@ import { Str } from '../core/common'; import { VERSION } from '../core/const'; import { ValidateInput, readArmoredKeyOrThrow, NodeRequest } from './validate-input'; import { Xss } from '../platform/xss'; -import { gmailBackupSearchQuery } from '../core/const'; import { config, encryptKey, Key, PrivateKey, readKey, readKeys } from 'openpgp'; export class Endpoints { @@ -354,11 +353,6 @@ export class Endpoints { } }; - public gmailBackupSearch = async (uncheckedReq: unknown): Promise => { - const { acctEmail } = ValidateInput.gmailBackupSearch(uncheckedReq); - return fmtRes({ query: gmailBackupSearchQuery(acctEmail) }); - }; - public parseKeys = async (_uncheckedReq: unknown, data: Buffers): Promise => { const keyDetails: KeyDetails[] = []; const allData = Buf.concat(data); diff --git a/Core/source/mobile-interface/validate-input.ts b/Core/source/mobile-interface/validate-input.ts index 53cbaab5b..656ec922c 100644 --- a/Core/source/mobile-interface/validate-input.ts +++ b/Core/source/mobile-interface/validate-input.ts @@ -69,7 +69,6 @@ export namespace NodeRequest { guesses: undefined; // eslint-disable-next-line @typescript-eslint/indent }; - export type gmailBackupSearch = { acctEmail: string }; export type isEmailValid = { email: string }; export type decryptKey = { armored: string; passphrases: string[] }; export type encryptKey = { armored: string; passphrase: string }; @@ -186,13 +185,6 @@ export class ValidateInput { throw new Error('Wrong request structure for NodeRequest.zxcvbnStrengthBar'); }; - public static gmailBackupSearch = (v: unknown): NodeRequest.gmailBackupSearch => { - if (isObj(v) && hasProp(v, 'acctEmail', 'string')) { - return v as NodeRequest.gmailBackupSearch; - } - throw new Error('Wrong request structure for NodeRequest.gmailBackupSearchQuery'); - }; - public static isEmailValid = (v: unknown): NodeRequest.isEmailValid => { if (isObj(v) && hasProp(v, 'email', 'string')) { return v as NodeRequest.isEmailValid; diff --git a/Core/source/test.ts b/Core/source/test.ts index c460c90d0..cb886658e 100644 --- a/Core/source/test.ts +++ b/Core/source/test.ts @@ -466,18 +466,6 @@ for (const keypairName of allKeypairNames.filter(name => name !== 'expired' && n }); } -test('gmailBackupSearch', async t => { - const { data, json } = await endpoints.gmailBackupSearch({ acctEmail: 'test@acct.com' }); - expect(json).to.deep.equal({ - query: - 'from:test@acct.com to:test@acct.com (subject:"Your FlowCrypt Backup" OR subject: ' + - '"Your CryptUp Backup" OR subject: "All you need to know about CryptUP (contains a backup)"' + - ' OR subject: "CryptUP Account Backup") -is:spam', - }); - expectNoData(data); - t.pass(); -}); - test('isEmailValid - true', async t => { const { data, json } = await endpoints.isEmailValid({ email: 'test@acct.com' }); expect(json).to.deep.equal({ valid: true }); diff --git a/FlowCrypt.xcodeproj/project.pbxproj b/FlowCrypt.xcodeproj/project.pbxproj index ddb1f1823..0eec9f1d3 100644 --- a/FlowCrypt.xcodeproj/project.pbxproj +++ b/FlowCrypt.xcodeproj/project.pbxproj @@ -187,7 +187,6 @@ 9F17976D2368EEBD002BF770 /* SetupViewDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F17976C2368EEBD002BF770 /* SetupViewDecorator.swift */; }; 9F23EA50237217140017DFED /* ComposeViewDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F23EA4F237217140017DFED /* ComposeViewDecorator.swift */; }; 9F268891237DC55600428A94 /* SetupManuallyImportKeyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F268890237DC55600428A94 /* SetupManuallyImportKeyViewController.swift */; }; - 9F2AC5B1267BDED100F6149B /* GmailBackupSearchQueryProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F2AC5B0267BDED100F6149B /* GmailBackupSearchQueryProvider.swift */; }; 9F31AB8C23298B3F00CF87EA /* Imap+retry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F31AB8B23298B3F00CF87EA /* Imap+retry.swift */; }; 9F31AB8E23298BCF00CF87EA /* Imap+folders.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F31AB8D23298BCF00CF87EA /* Imap+folders.swift */; }; 9F31AB91232993F500CF87EA /* Imap+session.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F31AB90232993F500CF87EA /* Imap+session.swift */; }; @@ -656,7 +655,6 @@ 9F23EA4D237216FA0017DFED /* TextViewCellNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextViewCellNode.swift; sourceTree = ""; }; 9F23EA4F237217140017DFED /* ComposeViewDecorator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeViewDecorator.swift; sourceTree = ""; }; 9F268890237DC55600428A94 /* SetupManuallyImportKeyViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SetupManuallyImportKeyViewController.swift; sourceTree = ""; }; - 9F2AC5B0267BDED100F6149B /* GmailBackupSearchQueryProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GmailBackupSearchQueryProvider.swift; sourceTree = ""; }; 9F2AC5C6267BE99E00F6149B /* FlowCryptAppTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = FlowCryptAppTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 9F2AC5CA267BE99E00F6149B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9F31AB8B23298B3F00CF87EA /* Imap+retry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Imap+retry.swift"; sourceTree = ""; }; @@ -1716,7 +1714,6 @@ 9FC411202595EA12001180A8 /* MessageSearchApiClient.swift */, 9FC4112D2595EA8B001180A8 /* Gmail+Search.swift */, 9FC411342595EA94001180A8 /* Imap+Search.swift */, - 9F2AC5B0267BDED100F6149B /* GmailBackupSearchQueryProvider.swift */, ); path = "SearchMessage Provider"; sourceTree = ""; @@ -2827,7 +2824,6 @@ 2CAF25322756C37E005C7C7C /* AppContext.swift in Sources */, 514C34DD276CE1C000FCAB79 /* ComposeMessageRecipient.swift in Sources */, 2CAF25342756C3A6005C7C7C /* ImapSessionProvider.swift in Sources */, - 9F2AC5B1267BDED100F6149B /* GmailBackupSearchQueryProvider.swift in Sources */, 040FDF1227EDFC5C00CB936A /* IdTokenUtils.swift in Sources */, 9F953E09238310D500AEB98B /* KeyMethods.swift in Sources */, 5137CB1427F8E0A900AEF895 /* EnterpriseServerApiHelper.swift in Sources */, diff --git a/FlowCrypt/App/GeneralConstants.swift b/FlowCrypt/App/GeneralConstants.swift index 8535ceb40..8652b8c6f 100644 --- a/FlowCrypt/App/GeneralConstants.swift +++ b/FlowCrypt/App/GeneralConstants.swift @@ -12,6 +12,12 @@ enum GeneralConstants { static let contactsScope: [GoogleScope] = mailScope + [.contacts, .otherContacts] // Empty pass is For All MAIL static let standardGmailPaths = ["INBOX", "CHAT", "SENT", "IMPORTANT", "TRASH", "DRAFT", "SPAM", "STARRED", "UNREAD", ""] + static let gmailRecoveryEmailSubjects = [ + "Your FlowCrypt Backup", + "Your CryptUp Backup", + "All you need to know about CryptUP (contains a backup)", + "CryptUP Account Backup" + ] } enum Global { diff --git a/FlowCrypt/Core/Core.swift b/FlowCrypt/Core/Core.swift index 8d597bb4b..ce5a926ba 100644 --- a/FlowCrypt/Core/Core.swift +++ b/FlowCrypt/Core/Core.swift @@ -42,10 +42,6 @@ class Core: KeyDecrypter, KeyParser, CoreComposeMessageType { let data: Data } - private struct GmailBackupSearchResponse: Decodable { - let query: String - } - private struct AttachmentTreatAsResponse: Decodable { let atts: [CoreRes.AttachmentTreatAs] } @@ -250,12 +246,6 @@ class Core: KeyDecrypter, KeyParser, CoreComposeMessageType { return try r.json.decodeJson(as: CoreRes.ZxcvbnStrengthBar.self) } - func gmailBackupSearch(for email: String) async throws -> String { - let response = try await call("gmailBackupSearch", params: ["acctEmail": email]) - let result = try response.json.decodeJson(as: GmailBackupSearchResponse.self) - return result.query - } - // MARK: Private calls @discardableResult private func call(_ endpoint: String, params: [String: Any?] = [:], data: Data = Data(), retryAttempt: Int = 0) async throws -> RawRes { diff --git a/FlowCrypt/Functionality/Mail Provider/Backup Provider/Gmail+Backup.swift b/FlowCrypt/Functionality/Mail Provider/Backup Provider/Gmail+Backup.swift index 5afb687ae..fdcca501e 100644 --- a/FlowCrypt/Functionality/Mail Provider/Backup Provider/Gmail+Backup.swift +++ b/FlowCrypt/Functionality/Mail Provider/Backup Provider/Gmail+Backup.swift @@ -12,7 +12,7 @@ extension GmailService: BackupApiClient { func searchBackups(for email: String) async throws -> Data { do { logger.logVerbose("will begin searching for backups") - let query = try await backupSearchQueryProvider.makeBackupQuery(for: email) + let query = makeBackupQuery(acctEmail: email) let backupMessages = try await searchExpression(using: MessageSearchContext(expression: query)) logger.logVerbose("searching done, found \(backupMessages.count) backup messages") let uniqueMessages = Set(backupMessages) @@ -36,10 +36,20 @@ extension GmailService: BackupApiClient { logger.logVerbose("downloaded \(attachments.count) attachments that contain \(data.count / 1024)kB of data") return data } catch { - throw GmailApiError.missingBackupQuery(error) + throw GmailApiError.searchBackup(error) } } + func makeBackupQuery(acctEmail: String) -> String { + var subjectQueryComponents: [String] = [] + for subject in GeneralConstants.Gmail.gmailRecoveryEmailSubjects { + subjectQueryComponents.append("subject:\"\(subject)\"") + } + let subjectQuery = subjectQueryComponents.joined(separator: " OR ") + let searchQuery = "from:\(acctEmail) to:\(acctEmail) \(subjectQuery) -is:spam" + return searchQuery + } + func findAttachment(_ context: (messageId: String, attachmentId: String)) async throws -> Data { let query = GTLRGmailQuery_UsersMessagesAttachmentsGet.query( withUserId: .me, diff --git a/FlowCrypt/Functionality/Mail Provider/Gmail/GmailApiError.swift b/FlowCrypt/Functionality/Mail Provider/Gmail/GmailApiError.swift index 6060c0c26..55a149d18 100644 --- a/FlowCrypt/Functionality/Mail Provider/Gmail/GmailApiError.swift +++ b/FlowCrypt/Functionality/Mail Provider/Gmail/GmailApiError.swift @@ -19,8 +19,8 @@ enum GmailApiError: Error { case missingMessageInfo(String) /// Provider Error case providerError(Error) - /// Empty or invalid backup search query - case missingBackupQuery(Error) + /// Search backup error + case searchBackup(Error) /// Pagination Error case paginationError(MessagesListPagination?) /// Invalid auth grant @@ -42,8 +42,8 @@ extension GmailApiError: LocalizedError { return "gmail_service_provider_error_error_message".localizeWithArguments(error.localizedDescription) case let .paginationError(pagination): return "gmail_service_pagination_error".localizeWithArguments(String(describing: pagination)) - case let .missingBackupQuery(error): - return "gmail_service_missing_back_query_error_message".localizeWithArguments(error.localizedDescription) + case let .searchBackup(error): + return "gmail_service_search_backup_error_message".localizeWithArguments(error.localizedDescription) case .invalidGrant: return "gmail_service_invalid_grant_error_message".localized } diff --git a/FlowCrypt/Functionality/Mail Provider/Gmail/GmailService.swift b/FlowCrypt/Functionality/Mail Provider/Gmail/GmailService.swift index 7f01206f2..23ec145e5 100644 --- a/FlowCrypt/Functionality/Mail Provider/Gmail/GmailService.swift +++ b/FlowCrypt/Functionality/Mail Provider/Gmail/GmailService.swift @@ -14,7 +14,6 @@ class GmailService: MailServiceProvider { let currentUserEmail: String let mailServiceProviderType = MailServiceProviderType.gmail let googleAuthManager: GoogleAuthManagerType - let backupSearchQueryProvider: GmailBackupSearchQueryProviderType let logger = Logger.nested("GmailService") var gmailService: GTLRService { @@ -43,12 +42,10 @@ class GmailService: MailServiceProvider { init( currentUserEmail: String, - googleAuthManager: GoogleAuthManagerType, - backupSearchQueryProvider: GmailBackupSearchQueryProviderType = GmailBackupSearchQueryProvider() + googleAuthManager: GoogleAuthManagerType ) { self.currentUserEmail = currentUserEmail self.googleAuthManager = googleAuthManager - self.backupSearchQueryProvider = backupSearchQueryProvider } } diff --git a/FlowCrypt/Functionality/Mail Provider/SearchMessage Provider/GmailBackupSearchQueryProvider.swift b/FlowCrypt/Functionality/Mail Provider/SearchMessage Provider/GmailBackupSearchQueryProvider.swift deleted file mode 100644 index 079de7406..000000000 --- a/FlowCrypt/Functionality/Mail Provider/SearchMessage Provider/GmailBackupSearchQueryProvider.swift +++ /dev/null @@ -1,25 +0,0 @@ -// -// GmailSearchExpressionGenerator.swift -// FlowCrypt -// -// Created by Anton Kharchevskyi on 17.06.2021. -// Copyright © 2017-present FlowCrypt a. s. All rights reserved. -// - -import Foundation - -protocol GmailBackupSearchQueryProviderType { - func makeBackupQuery(for email: String) async throws -> String -} - -final class GmailBackupSearchQueryProvider: GmailBackupSearchQueryProviderType { - let core: Core - - init(core: Core = .shared) { - self.core = core - } - - func makeBackupQuery(for email: String) async throws -> String { - return try await core.gmailBackupSearch(for: email) - } -} diff --git a/FlowCrypt/Resources/en.lproj/Localizable.strings b/FlowCrypt/Resources/en.lproj/Localizable.strings index a046b848c..487998b3d 100644 --- a/FlowCrypt/Resources/en.lproj/Localizable.strings +++ b/FlowCrypt/Resources/en.lproj/Localizable.strings @@ -373,7 +373,7 @@ "gmail_service_provider_error_error_message" = "Gmail provider error:\n%@"; "gmail_service_invalid_grant_error_message" = "Access to %@ account was revoked.\n\nPlease reconnect the app to Gmail"; "gmail_service_pagination_error" = "Pagination %@ is not supported for this provider"; -"gmail_service_missing_back_query_error_message" = "Missing backup query: %@"; +"gmail_service_search_backup_error_message" = "Error while fetching backups. Error: %@"; "gmail_service_no_access_to_account_message" = "Google login successful.\nNow connect your inbox on the next screen. The grant is stored locally on your device, never shared with anyone."; // Google User Service errors diff --git a/FlowCrypt/Resources/generated/flowcrypt-ios-prod.js.txt b/FlowCrypt/Resources/generated/flowcrypt-ios-prod.js.txt index ac7051a38..b25678b2a 100644 --- a/FlowCrypt/Resources/generated/flowcrypt-ios-prod.js.txt +++ b/FlowCrypt/Resources/generated/flowcrypt-ios-prod.js.txt @@ -8,12 +8,14 @@ try { (function(){ // begin emailjs /*! https://mths.be/iso-8859-2 v3.0.4 by @mathias | MIT license */ -(function (root) { +; (function (root) { + // Detect free variables `exports`. var freeExports = typeof exports == 'object' && exports; // Detect free variable `module`. - var freeModule = typeof module == 'object' && module && module.exports == freeExports && module; + var freeModule = typeof module == 'object' && module && + module.exports == freeExports && module; // Detect free variable `global`, from Node.js/io.js or Browserified code, // and use it as `root`. @@ -154,7 +156,7 @@ try { [728, 34], [729, 127], [731, 50], - [733, 61], + [733, 61] ]); const INDEX_BY_POINTER = new Map([ [0, '\x80'], @@ -284,11 +286,11 @@ try { [124, '\xFC'], [125, '\xFD'], [126, '\u0163'], - [127, '\u02D9'], + [127, '\u02D9'] ]); // https://encoding.spec.whatwg.org/#error-mode - const decodingError = mode => { + const decodingError = (mode) => { if (mode === 'replacement') { return '\uFFFD'; } @@ -296,9 +298,9 @@ try { throw new Error(); }; - const encodingError = mode => { + const encodingError = (mode) => { if (mode === 'replacement') { - return 0xfffd; + return 0xFFFD; } // Else, `mode == 'fatal'`. throw new Error(); @@ -332,7 +334,7 @@ try { const byteValue = input[index]; // “If `byte` is an ASCII byte, return a code point whose value is // `byte`.” - if (0x00 <= byteValue && byteValue <= 0x7f) { + if (0x00 <= byteValue && byteValue <= 0x7F) { buffer.push(stringFromCharCode(byteValue)); continue; } @@ -367,7 +369,7 @@ try { const codePoint = input.charCodeAt(index); // “If `code point` is an ASCII code point, return a byte whose // value is `code point`.” - if (0x00 <= codePoint && codePoint <= 0x7f) { + if (0x00 <= codePoint && codePoint <= 0x7F) { result[index] = codePoint; continue; } @@ -386,9 +388,9 @@ try { }; var iso88592 = { - encode: encode, - decode: decode, - labels: [ + 'encode': encode, + 'decode': decode, + 'labels': [ 'csisolatin2', 'iso-8859-2', 'iso-ir-101', @@ -397,537 +399,567 @@ try { 'iso_8859-2', 'iso_8859-2:1987', 'l2', - 'latin2', + 'latin2' ], - version: '3.0.4', + 'version': '3.0.4' }; // Some AMD build optimizers, like r.js, check for specific condition patterns // like the following: - if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) { + if ( + typeof define == 'function' && + typeof define.amd == 'object' && + define.amd + ) { define(function () { return iso88592; }); } else if (freeExports && !freeExports.nodeType) { - if (freeModule) { - // in Node.js, io.js or RingoJS v0.8.0+ + if (freeModule) { // in Node.js, io.js or RingoJS v0.8.0+ freeModule.exports = iso88592; - } else { - // in Narwhal or RingoJS v0.7.0- + } else { // in Narwhal or RingoJS v0.7.0- for (var key in iso88592) { iso88592.hasOwnProperty(key) && (freeExports[key] = iso88592[key]); } } - } else { - // in Rhino or a web browser + } else { // in Rhino or a web browser root.iso88592 = iso88592; } -})(this); +}(this)); /*! https://mths.be/punycode v1.4.1 by @mathias */ -(function (root) { - /** Detect free variables */ - var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - var freeModule = typeof module == 'object' && module && !module.nodeType && module; - var freeGlobal = typeof global == 'object' && global; - if (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal) { - root = freeGlobal; - } - - /** - * The `punycode` object. - * @name punycode - * @type Object - */ - var punycode, - /** Highest positive signed 32-bit float value */ - maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1 - /** Bootstring parameters */ - base = 36, - tMin = 1, - tMax = 26, - skew = 38, - damp = 700, - initialBias = 72, - initialN = 128, // 0x80 - delimiter = '-', // '\x2D' - /** Regular expressions */ - regexPunycode = /^xn--/, - regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars - regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators - /** Error messages */ - errors = { - overflow: 'Overflow: input needs wider integers to process', - 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', - 'invalid-input': 'Invalid input', - }, - /** Convenience shortcuts */ - baseMinusTMin = base - tMin, - floor = Math.floor, - stringFromCharCode = String.fromCharCode, - /** Temporary variable */ - key; - - /*--------------------------------------------------------------------------*/ - - /** - * A generic error utility function. - * @private - * @param {String} type The error type. - * @returns {Error} Throws a `RangeError` with the applicable error message. - */ - function error(type) { - throw new RangeError(errors[type]); - } - - /** - * A generic `Array#map` utility function. - * @private - * @param {Array} array The array to iterate over. - * @param {Function} callback The function that gets called for every array - * item. - * @returns {Array} A new array of values returned by the callback function. - */ - function map(array, fn) { - var length = array.length; - var result = []; - while (length--) { - result[length] = fn(array[length]); - } - return result; - } - - /** - * A simple `Array#map`-like wrapper to work with domain name strings or email - * addresses. - * @private - * @param {String} domain The domain name or email address. - * @param {Function} callback The function that gets called for every - * character. - * @returns {Array} A new string of characters returned by the callback - * function. - */ - function mapDomain(string, fn) { - var parts = string.split('@'); - var result = ''; - if (parts.length > 1) { - // In email addresses, only the domain name should be punycoded. Leave - // the local part (i.e. everything up to `@`) intact. - result = parts[0] + '@'; - string = parts[1]; - } - // Avoid `split(regex)` for IE8 compatibility. See #17. - string = string.replace(regexSeparators, '\x2E'); - var labels = string.split('.'); - var encoded = map(labels, fn).join('.'); - return result + encoded; - } - - /** - * Creates an array containing the numeric code points of each Unicode - * character in the string. While JavaScript uses UCS-2 internally, - * this function will convert a pair of surrogate halves (each of which - * UCS-2 exposes as separate characters) into a single code point, - * matching UTF-16. - * @see `punycode.ucs2.encode` - * @see - * @memberOf punycode.ucs2 - * @name decode - * @param {String} string The Unicode input string (UCS-2). - * @returns {Array} The new array of code points. - */ - function ucs2decode(string) { - var output = [], - counter = 0, - length = string.length, - value, - extra; - while (counter < length) { - value = string.charCodeAt(counter++); - if (value >= 0xd800 && value <= 0xdbff && counter < length) { - // high surrogate, and there is a next character - extra = string.charCodeAt(counter++); - if ((extra & 0xfc00) == 0xdc00) { - // low surrogate - output.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000); - } else { - // unmatched surrogate; only append this code unit, in case the next - // code unit is the high surrogate of a surrogate pair - output.push(value); - counter--; - } - } else { - output.push(value); - } - } - return output; - } - - /** - * Creates a string based on an array of numeric code points. - * @see `punycode.ucs2.decode` - * @memberOf punycode.ucs2 - * @name encode - * @param {Array} codePoints The array of numeric code points. - * @returns {String} The new Unicode string (UCS-2). - */ - function ucs2encode(array) { - return map(array, function (value) { - var output = ''; - if (value > 0xffff) { - value -= 0x10000; - output += stringFromCharCode(((value >>> 10) & 0x3ff) | 0xd800); - value = 0xdc00 | (value & 0x3ff); - } - output += stringFromCharCode(value); - return output; - }).join(''); - } - - /** - * Converts a basic code point into a digit/integer. - * @see `digitToBasic()` - * @private - * @param {Number} codePoint The basic numeric code point value. - * @returns {Number} The numeric value of a basic code point (for use in - * representing integers) in the range `0` to `base - 1`, or `base` if - * the code point does not represent a value. - */ - function basicToDigit(codePoint) { - if (codePoint - 48 < 10) { - return codePoint - 22; - } - if (codePoint - 65 < 26) { - return codePoint - 65; - } - if (codePoint - 97 < 26) { - return codePoint - 97; - } - return base; - } - - /** - * Converts a digit/integer into a basic code point. - * @see `basicToDigit()` - * @private - * @param {Number} digit The numeric value of a basic code point. - * @returns {Number} The basic code point whose value (when used for - * representing integers) is `digit`, which needs to be in the range - * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is - * used; else, the lowercase form is used. The behavior is undefined - * if `flag` is non-zero and `digit` has no uppercase form. - */ - function digitToBasic(digit, flag) { - // 0..25 map to ASCII a..z or A..Z - // 26..35 map to ASCII 0..9 - return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); - } - - /** - * Bias adaptation function as per section 3.4 of RFC 3492. - * https://tools.ietf.org/html/rfc3492#section-3.4 - * @private - */ - function adapt(delta, numPoints, firstTime) { - var k = 0; - delta = firstTime ? floor(delta / damp) : delta >> 1; - delta += floor(delta / numPoints); - for (; /* no initialization */ delta > (baseMinusTMin * tMax) >> 1; k += base) { - delta = floor(delta / baseMinusTMin); - } - return floor(k + ((baseMinusTMin + 1) * delta) / (delta + skew)); - } - - /** - * Converts a Punycode string of ASCII-only symbols to a string of Unicode - * symbols. - * @memberOf punycode - * @param {String} input The Punycode string of ASCII-only symbols. - * @returns {String} The resulting string of Unicode symbols. - */ - function decode(input) { - // Don't use UCS-2 - var output = [], - inputLength = input.length, - out, - i = 0, - n = initialN, - bias = initialBias, - basic, - j, - index, - oldi, - w, - k, - digit, - t, - /** Cached calculation results */ - baseMinusT; - - // Handle the basic code points: let `basic` be the number of input code - // points before the last delimiter, or `0` if there is none, then copy - // the first basic code points to the output. - - basic = input.lastIndexOf(delimiter); - if (basic < 0) { - basic = 0; - } - - for (j = 0; j < basic; ++j) { - // if it's not a basic code point - if (input.charCodeAt(j) >= 0x80) { - error('not-basic'); - } - output.push(input.charCodeAt(j)); - } - - // Main decoding loop: start just after the last delimiter if any basic code - // points were copied; start at the beginning otherwise. - - for (index = basic > 0 ? basic + 1 : 0; index < inputLength /* no final expression */; ) { - // `index` is the index of the next character to be consumed. - // Decode a generalized variable-length integer into `delta`, - // which gets added to `i`. The overflow checking is easier - // if we increase `i` as we go, then subtract off its starting - // value at the end to obtain `delta`. - for (oldi = i, w = 1, k = base /* no condition */; ; k += base) { - if (index >= inputLength) { - error('invalid-input'); - } - - digit = basicToDigit(input.charCodeAt(index++)); - - if (digit >= base || digit > floor((maxInt - i) / w)) { - error('overflow'); - } - - i += digit * w; - t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; - - if (digit < t) { - break; - } - - baseMinusT = base - t; - if (w > floor(maxInt / baseMinusT)) { - error('overflow'); - } - - w *= baseMinusT; - } - - out = output.length + 1; - bias = adapt(i - oldi, out, oldi == 0); - - // `i` was supposed to wrap around from `out` to `0`, - // incrementing `n` each time, so we'll fix that now: - if (floor(i / out) > maxInt - n) { - error('overflow'); - } - - n += floor(i / out); - i %= out; - - // Insert `n` at position `i` of the output - output.splice(i++, 0, n); - } - - return ucs2encode(output); - } - - /** - * Converts a string of Unicode symbols (e.g. a domain name label) to a - * Punycode string of ASCII-only symbols. - * @memberOf punycode - * @param {String} input The string of Unicode symbols. - * @returns {String} The resulting Punycode string of ASCII-only symbols. - */ - function encode(input) { - var n, - delta, - handledCPCount, - basicLength, - bias, - j, - m, - q, - k, - t, - currentValue, - output = [], - /** `inputLength` will hold the number of code points in `input`. */ - inputLength, - /** Cached calculation results */ - handledCPCountPlusOne, - baseMinusT, - qMinusT; - - // Convert the input in UCS-2 to Unicode - input = ucs2decode(input); - - // Cache the length - inputLength = input.length; - - // Initialize the state - n = initialN; - delta = 0; - bias = initialBias; - - // Handle the basic code points - for (j = 0; j < inputLength; ++j) { - currentValue = input[j]; - if (currentValue < 0x80) { - output.push(stringFromCharCode(currentValue)); - } - } - - handledCPCount = basicLength = output.length; - - // `handledCPCount` is the number of code points that have been handled; - // `basicLength` is the number of basic code points. - - // Finish the basic string - if it is not empty - with a delimiter - if (basicLength) { - output.push(delimiter); - } - - // Main encoding loop: - while (handledCPCount < inputLength) { - // All non-basic code points < n have been handled already. Find the next - // larger one: - for (m = maxInt, j = 0; j < inputLength; ++j) { - currentValue = input[j]; - if (currentValue >= n && currentValue < m) { - m = currentValue; - } - } - - // Increase `delta` enough to advance the decoder's state to , - // but guard against overflow - handledCPCountPlusOne = handledCPCount + 1; - if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { - error('overflow'); - } - - delta += (m - n) * handledCPCountPlusOne; - n = m; - - for (j = 0; j < inputLength; ++j) { - currentValue = input[j]; - - if (currentValue < n && ++delta > maxInt) { - error('overflow'); - } - - if (currentValue == n) { - // Represent delta as a generalized variable-length integer - for (q = delta, k = base /* no condition */; ; k += base) { - t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; - if (q < t) { - break; - } - qMinusT = q - t; - baseMinusT = base - t; - output.push(stringFromCharCode(digitToBasic(t + (qMinusT % baseMinusT), 0))); - q = floor(qMinusT / baseMinusT); - } - - output.push(stringFromCharCode(digitToBasic(q, 0))); - bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); - delta = 0; - ++handledCPCount; - } - } - - ++delta; - ++n; - } - return output.join(''); - } - - /** - * Converts a Punycode string representing a domain name or an email address - * to Unicode. Only the Punycoded parts of the input will be converted, i.e. - * it doesn't matter if you call it on a string that has already been - * converted to Unicode. - * @memberOf punycode - * @param {String} input The Punycoded domain name or email address to - * convert to Unicode. - * @returns {String} The Unicode representation of the given Punycode - * string. - */ - function toUnicode(input) { - return mapDomain(input, function (string) { - return regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string; - }); - } - - /** - * Converts a Unicode string representing a domain name or an email address to - * Punycode. Only the non-ASCII parts of the domain name will be converted, - * i.e. it doesn't matter if you call it with a domain that's already in - * ASCII. - * @memberOf punycode - * @param {String} input The domain name or email address to convert, as a - * Unicode string. - * @returns {String} The Punycode representation of the given domain name or - * email address. - */ - function toASCII(input) { - return mapDomain(input, function (string) { - return regexNonASCII.test(string) ? 'xn--' + encode(string) : string; - }); - } - - /*--------------------------------------------------------------------------*/ - - /** Define the public API */ - punycode = { - /** - * A string representing the current Punycode.js version number. - * @memberOf punycode - * @type String - */ - version: '1.4.1', - /** - * An object of methods to convert from JavaScript's internal character - * representation (UCS-2) to Unicode code points, and back. - * @see - * @memberOf punycode - * @type Object - */ - ucs2: { - decode: ucs2decode, - encode: ucs2encode, - }, - decode: decode, - encode: encode, - toASCII: toASCII, - toUnicode: toUnicode, - }; - - /** Expose `punycode` */ - // Some AMD build optimizers, like r.js, check for specific condition patterns - // like the following: - if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) { - define('punycode', function () { - return punycode; - }); - } else if (freeExports && freeModule) { - if (module.exports == freeExports) { - // in Node.js, io.js, or RingoJS v0.8.0+ - freeModule.exports = punycode; - } else { - // in Narwhal or RingoJS v0.7.0- - for (key in punycode) { - punycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]); - } - } - } else { - // in Rhino or a web browser - root.punycode = punycode; - } -})(this); +;(function(root) { + + /** Detect free variables */ + var freeExports = typeof exports == 'object' && exports && + !exports.nodeType && exports; + var freeModule = typeof module == 'object' && module && + !module.nodeType && module; + var freeGlobal = typeof global == 'object' && global; + if ( + freeGlobal.global === freeGlobal || + freeGlobal.window === freeGlobal || + freeGlobal.self === freeGlobal + ) { + root = freeGlobal; + } + + /** + * The `punycode` object. + * @name punycode + * @type Object + */ + var punycode, + + /** Highest positive signed 32-bit float value */ + maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1 + + /** Bootstring parameters */ + base = 36, + tMin = 1, + tMax = 26, + skew = 38, + damp = 700, + initialBias = 72, + initialN = 128, // 0x80 + delimiter = '-', // '\x2D' + + /** Regular expressions */ + regexPunycode = /^xn--/, + regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars + regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators + + /** Error messages */ + errors = { + 'overflow': 'Overflow: input needs wider integers to process', + 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', + 'invalid-input': 'Invalid input' + }, + + /** Convenience shortcuts */ + baseMinusTMin = base - tMin, + floor = Math.floor, + stringFromCharCode = String.fromCharCode, + + /** Temporary variable */ + key; + + /*--------------------------------------------------------------------------*/ + + /** + * A generic error utility function. + * @private + * @param {String} type The error type. + * @returns {Error} Throws a `RangeError` with the applicable error message. + */ + function error(type) { + throw new RangeError(errors[type]); + } + + /** + * A generic `Array#map` utility function. + * @private + * @param {Array} array The array to iterate over. + * @param {Function} callback The function that gets called for every array + * item. + * @returns {Array} A new array of values returned by the callback function. + */ + function map(array, fn) { + var length = array.length; + var result = []; + while (length--) { + result[length] = fn(array[length]); + } + return result; + } + + /** + * A simple `Array#map`-like wrapper to work with domain name strings or email + * addresses. + * @private + * @param {String} domain The domain name or email address. + * @param {Function} callback The function that gets called for every + * character. + * @returns {Array} A new string of characters returned by the callback + * function. + */ + function mapDomain(string, fn) { + var parts = string.split('@'); + var result = ''; + if (parts.length > 1) { + // In email addresses, only the domain name should be punycoded. Leave + // the local part (i.e. everything up to `@`) intact. + result = parts[0] + '@'; + string = parts[1]; + } + // Avoid `split(regex)` for IE8 compatibility. See #17. + string = string.replace(regexSeparators, '\x2E'); + var labels = string.split('.'); + var encoded = map(labels, fn).join('.'); + return result + encoded; + } + + /** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + * @see `punycode.ucs2.encode` + * @see + * @memberOf punycode.ucs2 + * @name decode + * @param {String} string The Unicode input string (UCS-2). + * @returns {Array} The new array of code points. + */ + function ucs2decode(string) { + var output = [], + counter = 0, + length = string.length, + value, + extra; + while (counter < length) { + value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // high surrogate, and there is a next character + extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // low surrogate + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // unmatched surrogate; only append this code unit, in case the next + // code unit is the high surrogate of a surrogate pair + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; + } + + /** + * Creates a string based on an array of numeric code points. + * @see `punycode.ucs2.decode` + * @memberOf punycode.ucs2 + * @name encode + * @param {Array} codePoints The array of numeric code points. + * @returns {String} The new Unicode string (UCS-2). + */ + function ucs2encode(array) { + return map(array, function(value) { + var output = ''; + if (value > 0xFFFF) { + value -= 0x10000; + output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800); + value = 0xDC00 | value & 0x3FF; + } + output += stringFromCharCode(value); + return output; + }).join(''); + } + + /** + * Converts a basic code point into a digit/integer. + * @see `digitToBasic()` + * @private + * @param {Number} codePoint The basic numeric code point value. + * @returns {Number} The numeric value of a basic code point (for use in + * representing integers) in the range `0` to `base - 1`, or `base` if + * the code point does not represent a value. + */ + function basicToDigit(codePoint) { + if (codePoint - 48 < 10) { + return codePoint - 22; + } + if (codePoint - 65 < 26) { + return codePoint - 65; + } + if (codePoint - 97 < 26) { + return codePoint - 97; + } + return base; + } + + /** + * Converts a digit/integer into a basic code point. + * @see `basicToDigit()` + * @private + * @param {Number} digit The numeric value of a basic code point. + * @returns {Number} The basic code point whose value (when used for + * representing integers) is `digit`, which needs to be in the range + * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is + * used; else, the lowercase form is used. The behavior is undefined + * if `flag` is non-zero and `digit` has no uppercase form. + */ + function digitToBasic(digit, flag) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); + } + + /** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + * @private + */ + function adapt(delta, numPoints, firstTime) { + var k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); + } + + /** + * Converts a Punycode string of ASCII-only symbols to a string of Unicode + * symbols. + * @memberOf punycode + * @param {String} input The Punycode string of ASCII-only symbols. + * @returns {String} The resulting string of Unicode symbols. + */ + function decode(input) { + // Don't use UCS-2 + var output = [], + inputLength = input.length, + out, + i = 0, + n = initialN, + bias = initialBias, + basic, + j, + index, + oldi, + w, + k, + digit, + t, + /** Cached calculation results */ + baseMinusT; + + // Handle the basic code points: let `basic` be the number of input code + // points before the last delimiter, or `0` if there is none, then copy + // the first basic code points to the output. + + basic = input.lastIndexOf(delimiter); + if (basic < 0) { + basic = 0; + } + + for (j = 0; j < basic; ++j) { + // if it's not a basic code point + if (input.charCodeAt(j) >= 0x80) { + error('not-basic'); + } + output.push(input.charCodeAt(j)); + } + + // Main decoding loop: start just after the last delimiter if any basic code + // points were copied; start at the beginning otherwise. + + for (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { + + // `index` is the index of the next character to be consumed. + // Decode a generalized variable-length integer into `delta`, + // which gets added to `i`. The overflow checking is easier + // if we increase `i` as we go, then subtract off its starting + // value at the end to obtain `delta`. + for (oldi = i, w = 1, k = base; /* no condition */; k += base) { + + if (index >= inputLength) { + error('invalid-input'); + } + + digit = basicToDigit(input.charCodeAt(index++)); + + if (digit >= base || digit > floor((maxInt - i) / w)) { + error('overflow'); + } + + i += digit * w; + t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + + if (digit < t) { + break; + } + + baseMinusT = base - t; + if (w > floor(maxInt / baseMinusT)) { + error('overflow'); + } + + w *= baseMinusT; + + } + + out = output.length + 1; + bias = adapt(i - oldi, out, oldi == 0); + + // `i` was supposed to wrap around from `out` to `0`, + // incrementing `n` each time, so we'll fix that now: + if (floor(i / out) > maxInt - n) { + error('overflow'); + } + + n += floor(i / out); + i %= out; + + // Insert `n` at position `i` of the output + output.splice(i++, 0, n); + + } + + return ucs2encode(output); + } + + /** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + * @memberOf punycode + * @param {String} input The string of Unicode symbols. + * @returns {String} The resulting Punycode string of ASCII-only symbols. + */ + function encode(input) { + var n, + delta, + handledCPCount, + basicLength, + bias, + j, + m, + q, + k, + t, + currentValue, + output = [], + /** `inputLength` will hold the number of code points in `input`. */ + inputLength, + /** Cached calculation results */ + handledCPCountPlusOne, + baseMinusT, + qMinusT; + + // Convert the input in UCS-2 to Unicode + input = ucs2decode(input); + + // Cache the length + inputLength = input.length; + + // Initialize the state + n = initialN; + delta = 0; + bias = initialBias; + + // Handle the basic code points + for (j = 0; j < inputLength; ++j) { + currentValue = input[j]; + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + handledCPCount = basicLength = output.length; + + // `handledCPCount` is the number of code points that have been handled; + // `basicLength` is the number of basic code points. + + // Finish the basic string - if it is not empty - with a delimiter + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + + // All non-basic code points < n have been handled already. Find the next + // larger one: + for (m = maxInt, j = 0; j < inputLength; ++j) { + currentValue = input[j]; + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , + // but guard against overflow + handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + error('overflow'); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (j = 0; j < inputLength; ++j) { + currentValue = input[j]; + + if (currentValue < n && ++delta > maxInt) { + error('overflow'); + } + + if (currentValue == n) { + // Represent delta as a generalized variable-length integer + for (q = delta, k = base; /* no condition */; k += base) { + t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + if (q < t) { + break; + } + qMinusT = q - t; + baseMinusT = base - t; + output.push( + stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) + ); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q, 0))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + + } + return output.join(''); + } + + /** + * Converts a Punycode string representing a domain name or an email address + * to Unicode. Only the Punycoded parts of the input will be converted, i.e. + * it doesn't matter if you call it on a string that has already been + * converted to Unicode. + * @memberOf punycode + * @param {String} input The Punycoded domain name or email address to + * convert to Unicode. + * @returns {String} The Unicode representation of the given Punycode + * string. + */ + function toUnicode(input) { + return mapDomain(input, function(string) { + return regexPunycode.test(string) + ? decode(string.slice(4).toLowerCase()) + : string; + }); + } + + /** + * Converts a Unicode string representing a domain name or an email address to + * Punycode. Only the non-ASCII parts of the domain name will be converted, + * i.e. it doesn't matter if you call it with a domain that's already in + * ASCII. + * @memberOf punycode + * @param {String} input The domain name or email address to convert, as a + * Unicode string. + * @returns {String} The Punycode representation of the given domain name or + * email address. + */ + function toASCII(input) { + return mapDomain(input, function(string) { + return regexNonASCII.test(string) + ? 'xn--' + encode(string) + : string; + }); + } + + /*--------------------------------------------------------------------------*/ + + /** Define the public API */ + punycode = { + /** + * A string representing the current Punycode.js version number. + * @memberOf punycode + * @type String + */ + 'version': '1.4.1', + /** + * An object of methods to convert from JavaScript's internal character + * representation (UCS-2) to Unicode code points, and back. + * @see + * @memberOf punycode + * @type Object + */ + 'ucs2': { + 'decode': ucs2decode, + 'encode': ucs2encode + }, + 'decode': decode, + 'encode': encode, + 'toASCII': toASCII, + 'toUnicode': toUnicode + }; + + /** Expose `punycode` */ + // Some AMD build optimizers, like r.js, check for specific condition patterns + // like the following: + if ( + typeof define == 'function' && + typeof define.amd == 'object' && + define.amd + ) { + define('punycode', function() { + return punycode; + }); + } else if (freeExports && freeModule) { + if (module.exports == freeExports) { + // in Node.js, io.js, or RingoJS v0.8.0+ + freeModule.exports = punycode; + } else { + // in Narwhal or RingoJS v0.7.0- + for (key in punycode) { + punycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]); + } + } + } else { + // in Rhino or a web browser + root.punycode = punycode; + } + +}(this)); // un-licensed as public domain https://github.com/inexorabletash/text-encoding/blob/master/LICENSE.md (function (root, factory) { @@ -942,38921 +974,8733 @@ try { root.TextEncoder = stringencoding.TextEncoder; root.TextDecoder = stringencoding.TextDecoder; } -})(this, function () { + +}(this, function () { 'use strict'; var ENCODING_INDEXES = { - big5: [ - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 17392, - 19506, - 17923, - 17830, - 17784, - 160359, - 19831, - 17843, - 162993, - 19682, - 163013, - 15253, - 18230, - 18244, - 19527, - 19520, - 148159, - 144919, - 160594, - 159371, - 159954, - 19543, - 172881, - 18255, - 17882, - 19589, - 162924, - 19719, - 19108, - 18081, - 158499, - 29221, - 154196, - 137827, - 146950, - 147297, - 26189, - 22267, - null, - 32149, - 22813, - 166841, - 15860, - 38708, - 162799, - 23515, - 138590, - 23204, - 13861, - 171696, - 23249, - 23479, - 23804, - 26478, - 34195, - 170309, - 29793, - 29853, - 14453, - 138579, - 145054, - 155681, - 16108, - 153822, - 15093, - 31484, - 40855, - 147809, - 166157, - 143850, - 133770, - 143966, - 17162, - 33924, - 40854, - 37935, - 18736, - 34323, - 22678, - 38730, - 37400, - 31184, - 31282, - 26208, - 27177, - 34973, - 29772, - 31685, - 26498, - 31276, - 21071, - 36934, - 13542, - 29636, - 155065, - 29894, - 40903, - 22451, - 18735, - 21580, - 16689, - 145038, - 22552, - 31346, - 162661, - 35727, - 18094, - 159368, - 16769, - 155033, - 31662, - 140476, - 40904, - 140481, - 140489, - 140492, - 40905, - 34052, - 144827, - 16564, - 40906, - 17633, - 175615, - 25281, - 28782, - 40907, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 12736, - 12737, - 12738, - 12739, - 12740, - 131340, - 12741, - 131281, - 131277, - 12742, - 12743, - 131275, - 139240, - 12744, - 131274, - 12745, - 12746, - 12747, - 12748, - 131342, - 12749, - 12750, - 256, - 193, - 461, - 192, - 274, - 201, - 282, - 200, - 332, - 211, - 465, - 210, - null, - 7870, - null, - 7872, - 202, - 257, - 225, - 462, - 224, - 593, - 275, - 233, - 283, - 232, - 299, - 237, - 464, - 236, - 333, - 243, - 466, - 242, - 363, - 250, - 468, - 249, - 470, - 472, - 474, - 476, - 252, - null, - 7871, - null, - 7873, - 234, - 609, - 9178, - 9179, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 172969, - 135493, - null, - 25866, - null, - null, - 20029, - 28381, - 40270, - 37343, - null, - null, - 161589, - 25745, - 20250, - 20264, - 20392, - 20822, - 20852, - 20892, - 20964, - 21153, - 21160, - 21307, - 21326, - 21457, - 21464, - 22242, - 22768, - 22788, - 22791, - 22834, - 22836, - 23398, - 23454, - 23455, - 23706, - 24198, - 24635, - 25993, - 26622, - 26628, - 26725, - 27982, - 28860, - 30005, - 32420, - 32428, - 32442, - 32455, - 32463, - 32479, - 32518, - 32567, - 33402, - 33487, - 33647, - 35270, - 35774, - 35810, - 36710, - 36711, - 36718, - 29713, - 31996, - 32205, - 26950, - 31433, - 21031, - null, - null, - null, - null, - 37260, - 30904, - 37214, - 32956, - null, - 36107, - 33014, - 133607, - null, - null, - 32927, - 40647, - 19661, - 40393, - 40460, - 19518, - 171510, - 159758, - 40458, - 172339, - 13761, - null, - 28314, - 33342, - 29977, - null, - 18705, - 39532, - 39567, - 40857, - 31111, - 164972, - 138698, - 132560, - 142054, - 20004, - 20097, - 20096, - 20103, - 20159, - 20203, - 20279, - 13388, - 20413, - 15944, - 20483, - 20616, - 13437, - 13459, - 13477, - 20870, - 22789, - 20955, - 20988, - 20997, - 20105, - 21113, - 21136, - 21287, - 13767, - 21417, - 13649, - 21424, - 13651, - 21442, - 21539, - 13677, - 13682, - 13953, - 21651, - 21667, - 21684, - 21689, - 21712, - 21743, - 21784, - 21795, - 21800, - 13720, - 21823, - 13733, - 13759, - 21975, - 13765, - 163204, - 21797, - null, - 134210, - 134421, - 151851, - 21904, - 142534, - 14828, - 131905, - 36422, - 150968, - 169189, - 16467, - 164030, - 30586, - 142392, - 14900, - 18389, - 164189, - 158194, - 151018, - 25821, - 134524, - 135092, - 134357, - 135412, - 25741, - 36478, - 134806, - 134155, - 135012, - 142505, - 164438, - 148691, - null, - 134470, - 170573, - 164073, - 18420, - 151207, - 142530, - 39602, - 14951, - 169460, - 16365, - 13574, - 152263, - 169940, - 161992, - 142660, - 40302, - 38933, - null, - 17369, - 155813, - 25780, - 21731, - 142668, - 142282, - 135287, - 14843, - 135279, - 157402, - 157462, - 162208, - 25834, - 151634, - 134211, - 36456, - 139681, - 166732, - 132913, - null, - 18443, - 131497, - 16378, - 22643, - 142733, - null, - 148936, - 132348, - 155799, - 134988, - 134550, - 21881, - 16571, - 17338, - null, - 19124, - 141926, - 135325, - 33194, - 39157, - 134556, - 25465, - 14846, - 141173, - 36288, - 22177, - 25724, - 15939, - null, - 173569, - 134665, - 142031, - 142537, - null, - 135368, - 145858, - 14738, - 14854, - 164507, - 13688, - 155209, - 139463, - 22098, - 134961, - 142514, - 169760, - 13500, - 27709, - 151099, - null, - null, - 161140, - 142987, - 139784, - 173659, - 167117, - 134778, - 134196, - 157724, - 32659, - 135375, - 141315, - 141625, - 13819, - 152035, - 134796, - 135053, - 134826, - 16275, - 134960, - 134471, - 135503, - 134732, - null, - 134827, - 134057, - 134472, - 135360, - 135485, - 16377, - 140950, - 25650, - 135085, - 144372, - 161337, - 142286, - 134526, - 134527, - 142417, - 142421, - 14872, - 134808, - 135367, - 134958, - 173618, - 158544, - 167122, - 167321, - 167114, - 38314, - 21708, - 33476, - 21945, - null, - 171715, - 39974, - 39606, - 161630, - 142830, - 28992, - 33133, - 33004, - 23580, - 157042, - 33076, - 14231, - 21343, - 164029, - 37302, - 134906, - 134671, - 134775, - 134907, - 13789, - 151019, - 13833, - 134358, - 22191, - 141237, - 135369, - 134672, - 134776, - 135288, - 135496, - 164359, - 136277, - 134777, - 151120, - 142756, - 23124, - 135197, - 135198, - 135413, - 135414, - 22428, - 134673, - 161428, - 164557, - 135093, - 134779, - 151934, - 14083, - 135094, - 135552, - 152280, - 172733, - 149978, - 137274, - 147831, - 164476, - 22681, - 21096, - 13850, - 153405, - 31666, - 23400, - 18432, - 19244, - 40743, - 18919, - 39967, - 39821, - 154484, - 143677, - 22011, - 13810, - 22153, - 20008, - 22786, - 138177, - 194680, - 38737, - 131206, - 20059, - 20155, - 13630, - 23587, - 24401, - 24516, - 14586, - 25164, - 25909, - 27514, - 27701, - 27706, - 28780, - 29227, - 20012, - 29357, - 149737, - 32594, - 31035, - 31993, - 32595, - 156266, - 13505, - null, - 156491, - 32770, - 32896, - 157202, - 158033, - 21341, - 34916, - 35265, - 161970, - 35744, - 36125, - 38021, - 38264, - 38271, - 38376, - 167439, - 38886, - 39029, - 39118, - 39134, - 39267, - 170000, - 40060, - 40479, - 40644, - 27503, - 63751, - 20023, - 131207, - 38429, - 25143, - 38050, - null, - 20539, - 28158, - 171123, - 40870, - 15817, - 34959, - 147790, - 28791, - 23797, - 19232, - 152013, - 13657, - 154928, - 24866, - 166450, - 36775, - 37366, - 29073, - 26393, - 29626, - 144001, - 172295, - 15499, - 137600, - 19216, - 30948, - 29698, - 20910, - 165647, - 16393, - 27235, - 172730, - 16931, - 34319, - 133743, - 31274, - 170311, - 166634, - 38741, - 28749, - 21284, - 139390, - 37876, - 30425, - 166371, - 40871, - 30685, - 20131, - 20464, - 20668, - 20015, - 20247, - 40872, - 21556, - 32139, - 22674, - 22736, - 138678, - 24210, - 24217, - 24514, - 141074, - 25995, - 144377, - 26905, - 27203, - 146531, - 27903, - null, - 29184, - 148741, - 29580, - 16091, - 150035, - 23317, - 29881, - 35715, - 154788, - 153237, - 31379, - 31724, - 31939, - 32364, - 33528, - 34199, - 40873, - 34960, - 40874, - 36537, - 40875, - 36815, - 34143, - 39392, - 37409, - 40876, - 167353, - 136255, - 16497, - 17058, - 23066, - null, - null, - null, - 39016, - 26475, - 17014, - 22333, - null, - 34262, - 149883, - 33471, - 160013, - 19585, - 159092, - 23931, - 158485, - 159678, - 40877, - 40878, - 23446, - 40879, - 26343, - 32347, - 28247, - 31178, - 15752, - 17603, - 143958, - 141206, - 17306, - 17718, - null, - 23765, - 146202, - 35577, - 23672, - 15634, - 144721, - 23928, - 40882, - 29015, - 17752, - 147692, - 138787, - 19575, - 14712, - 13386, - 131492, - 158785, - 35532, - 20404, - 131641, - 22975, - 33132, - 38998, - 170234, - 24379, - 134047, - null, - 139713, - 166253, - 16642, - 18107, - 168057, - 16135, - 40883, - 172469, - 16632, - 14294, - 18167, - 158790, - 16764, - 165554, - 160767, - 17773, - 14548, - 152730, - 17761, - 17691, - 19849, - 19579, - 19830, - 17898, - 16328, - 150287, - 13921, - 17630, - 17597, - 16877, - 23870, - 23880, - 23894, - 15868, - 14351, - 23972, - 23993, - 14368, - 14392, - 24130, - 24253, - 24357, - 24451, - 14600, - 14612, - 14655, - 14669, - 24791, - 24893, - 23781, - 14729, - 25015, - 25017, - 25039, - 14776, - 25132, - 25232, - 25317, - 25368, - 14840, - 22193, - 14851, - 25570, - 25595, - 25607, - 25690, - 14923, - 25792, - 23829, - 22049, - 40863, - 14999, - 25990, - 15037, - 26111, - 26195, - 15090, - 26258, - 15138, - 26390, - 15170, - 26532, - 26624, - 15192, - 26698, - 26756, - 15218, - 15217, - 15227, - 26889, - 26947, - 29276, - 26980, - 27039, - 27013, - 15292, - 27094, - 15325, - 27237, - 27252, - 27249, - 27266, - 15340, - 27289, - 15346, - 27307, - 27317, - 27348, - 27382, - 27521, - 27585, - 27626, - 27765, - 27818, - 15563, - 27906, - 27910, - 27942, - 28033, - 15599, - 28068, - 28081, - 28181, - 28184, - 28201, - 28294, - 166336, - 28347, - 28386, - 28378, - 40831, - 28392, - 28393, - 28452, - 28468, - 15686, - 147265, - 28545, - 28606, - 15722, - 15733, - 29111, - 23705, - 15754, - 28716, - 15761, - 28752, - 28756, - 28783, - 28799, - 28809, - 131877, - 17345, - 13809, - 134872, - 147159, - 22462, - 159443, - 28990, - 153568, - 13902, - 27042, - 166889, - 23412, - 31305, - 153825, - 169177, - 31333, - 31357, - 154028, - 31419, - 31408, - 31426, - 31427, - 29137, - 156813, - 16842, - 31450, - 31453, - 31466, - 16879, - 21682, - 154625, - 31499, - 31573, - 31529, - 152334, - 154878, - 31650, - 31599, - 33692, - 154548, - 158847, - 31696, - 33825, - 31634, - 31672, - 154912, - 15789, - 154725, - 33938, - 31738, - 31750, - 31797, - 154817, - 31812, - 31875, - 149634, - 31910, - 26237, - 148856, - 31945, - 31943, - 31974, - 31860, - 31987, - 31989, - 31950, - 32359, - 17693, - 159300, - 32093, - 159446, - 29837, - 32137, - 32171, - 28981, - 32179, - 32210, - 147543, - 155689, - 32228, - 15635, - 32245, - 137209, - 32229, - 164717, - 32285, - 155937, - 155994, - 32366, - 32402, - 17195, - 37996, - 32295, - 32576, - 32577, - 32583, - 31030, - 156368, - 39393, - 32663, - 156497, - 32675, - 136801, - 131176, - 17756, - 145254, - 17667, - 164666, - 32762, - 156809, - 32773, - 32776, - 32797, - 32808, - 32815, - 172167, - 158915, - 32827, - 32828, - 32865, - 141076, - 18825, - 157222, - 146915, - 157416, - 26405, - 32935, - 166472, - 33031, - 33050, - 22704, - 141046, - 27775, - 156824, - 151480, - 25831, - 136330, - 33304, - 137310, - 27219, - 150117, - 150165, - 17530, - 33321, - 133901, - 158290, - 146814, - 20473, - 136445, - 34018, - 33634, - 158474, - 149927, - 144688, - 137075, - 146936, - 33450, - 26907, - 194964, - 16859, - 34123, - 33488, - 33562, - 134678, - 137140, - 14017, - 143741, - 144730, - 33403, - 33506, - 33560, - 147083, - 159139, - 158469, - 158615, - 144846, - 15807, - 33565, - 21996, - 33669, - 17675, - 159141, - 33708, - 33729, - 33747, - 13438, - 159444, - 27223, - 34138, - 13462, - 159298, - 143087, - 33880, - 154596, - 33905, - 15827, - 17636, - 27303, - 33866, - 146613, - 31064, - 33960, - 158614, - 159351, - 159299, - 34014, - 33807, - 33681, - 17568, - 33939, - 34020, - 154769, - 16960, - 154816, - 17731, - 34100, - 23282, - 159385, - 17703, - 34163, - 17686, - 26559, - 34326, - 165413, - 165435, - 34241, - 159880, - 34306, - 136578, - 159949, - 194994, - 17770, - 34344, - 13896, - 137378, - 21495, - 160666, - 34430, - 34673, - 172280, - 34798, - 142375, - 34737, - 34778, - 34831, - 22113, - 34412, - 26710, - 17935, - 34885, - 34886, - 161248, - 146873, - 161252, - 34910, - 34972, - 18011, - 34996, - 34997, - 25537, - 35013, - 30583, - 161551, - 35207, - 35210, - 35238, - 35241, - 35239, - 35260, - 166437, - 35303, - 162084, - 162493, - 35484, - 30611, - 37374, - 35472, - 162393, - 31465, - 162618, - 147343, - 18195, - 162616, - 29052, - 35596, - 35615, - 152624, - 152933, - 35647, - 35660, - 35661, - 35497, - 150138, - 35728, - 35739, - 35503, - 136927, - 17941, - 34895, - 35995, - 163156, - 163215, - 195028, - 14117, - 163155, - 36054, - 163224, - 163261, - 36114, - 36099, - 137488, - 36059, - 28764, - 36113, - 150729, - 16080, - 36215, - 36265, - 163842, - 135188, - 149898, - 15228, - 164284, - 160012, - 31463, - 36525, - 36534, - 36547, - 37588, - 36633, - 36653, - 164709, - 164882, - 36773, - 37635, - 172703, - 133712, - 36787, - 18730, - 166366, - 165181, - 146875, - 24312, - 143970, - 36857, - 172052, - 165564, - 165121, - 140069, - 14720, - 159447, - 36919, - 165180, - 162494, - 36961, - 165228, - 165387, - 37032, - 165651, - 37060, - 165606, - 37038, - 37117, - 37223, - 15088, - 37289, - 37316, - 31916, - 166195, - 138889, - 37390, - 27807, - 37441, - 37474, - 153017, - 37561, - 166598, - 146587, - 166668, - 153051, - 134449, - 37676, - 37739, - 166625, - 166891, - 28815, - 23235, - 166626, - 166629, - 18789, - 37444, - 166892, - 166969, - 166911, - 37747, - 37979, - 36540, - 38277, - 38310, - 37926, - 38304, - 28662, - 17081, - 140922, - 165592, - 135804, - 146990, - 18911, - 27676, - 38523, - 38550, - 16748, - 38563, - 159445, - 25050, - 38582, - 30965, - 166624, - 38589, - 21452, - 18849, - 158904, - 131700, - 156688, - 168111, - 168165, - 150225, - 137493, - 144138, - 38705, - 34370, - 38710, - 18959, - 17725, - 17797, - 150249, - 28789, - 23361, - 38683, - 38748, - 168405, - 38743, - 23370, - 168427, - 38751, - 37925, - 20688, - 143543, - 143548, - 38793, - 38815, - 38833, - 38846, - 38848, - 38866, - 38880, - 152684, - 38894, - 29724, - 169011, - 38911, - 38901, - 168989, - 162170, - 19153, - 38964, - 38963, - 38987, - 39014, - 15118, - 160117, - 15697, - 132656, - 147804, - 153350, - 39114, - 39095, - 39112, - 39111, - 19199, - 159015, - 136915, - 21936, - 39137, - 39142, - 39148, - 37752, - 39225, - 150057, - 19314, - 170071, - 170245, - 39413, - 39436, - 39483, - 39440, - 39512, - 153381, - 14020, - 168113, - 170965, - 39648, - 39650, - 170757, - 39668, - 19470, - 39700, - 39725, - 165376, - 20532, - 39732, - 158120, - 14531, - 143485, - 39760, - 39744, - 171326, - 23109, - 137315, - 39822, - 148043, - 39938, - 39935, - 39948, - 171624, - 40404, - 171959, - 172434, - 172459, - 172257, - 172323, - 172511, - 40318, - 40323, - 172340, - 40462, - 26760, - 40388, - 139611, - 172435, - 172576, - 137531, - 172595, - 40249, - 172217, - 172724, - 40592, - 40597, - 40606, - 40610, - 19764, - 40618, - 40623, - 148324, - 40641, - 15200, - 14821, - 15645, - 20274, - 14270, - 166955, - 40706, - 40712, - 19350, - 37924, - 159138, - 40727, - 40726, - 40761, - 22175, - 22154, - 40773, - 39352, - 168075, - 38898, - 33919, - 40802, - 40809, - 31452, - 40846, - 29206, - 19390, - 149877, - 149947, - 29047, - 150008, - 148296, - 150097, - 29598, - 166874, - 137466, - 31135, - 166270, - 167478, - 37737, - 37875, - 166468, - 37612, - 37761, - 37835, - 166252, - 148665, - 29207, - 16107, - 30578, - 31299, - 28880, - 148595, - 148472, - 29054, - 137199, - 28835, - 137406, - 144793, - 16071, - 137349, - 152623, - 137208, - 14114, - 136955, - 137273, - 14049, - 137076, - 137425, - 155467, - 14115, - 136896, - 22363, - 150053, - 136190, - 135848, - 136134, - 136374, - 34051, - 145062, - 34051, - 33877, - 149908, - 160101, - 146993, - 152924, - 147195, - 159826, - 17652, - 145134, - 170397, - 159526, - 26617, - 14131, - 15381, - 15847, - 22636, - 137506, - 26640, - 16471, - 145215, - 147681, - 147595, - 147727, - 158753, - 21707, - 22174, - 157361, - 22162, - 135135, - 134056, - 134669, - 37830, - 166675, - 37788, - 20216, - 20779, - 14361, - 148534, - 20156, - 132197, - 131967, - 20299, - 20362, - 153169, - 23144, - 131499, - 132043, - 14745, - 131850, - 132116, - 13365, - 20265, - 131776, - 167603, - 131701, - 35546, - 131596, - 20120, - 20685, - 20749, - 20386, - 20227, - 150030, - 147082, - 20290, - 20526, - 20588, - 20609, - 20428, - 20453, - 20568, - 20732, - 20825, - 20827, - 20829, - 20830, - 28278, - 144789, - 147001, - 147135, - 28018, - 137348, - 147081, - 20904, - 20931, - 132576, - 17629, - 132259, - 132242, - 132241, - 36218, - 166556, - 132878, - 21081, - 21156, - 133235, - 21217, - 37742, - 18042, - 29068, - 148364, - 134176, - 149932, - 135396, - 27089, - 134685, - 29817, - 16094, - 29849, - 29716, - 29782, - 29592, - 19342, - 150204, - 147597, - 21456, - 13700, - 29199, - 147657, - 21940, - 131909, - 21709, - 134086, - 22301, - 37469, - 38644, - 37734, - 22493, - 22413, - 22399, - 13886, - 22731, - 23193, - 166470, - 136954, - 137071, - 136976, - 23084, - 22968, - 37519, - 23166, - 23247, - 23058, - 153926, - 137715, - 137313, - 148117, - 14069, - 27909, - 29763, - 23073, - 155267, - 23169, - 166871, - 132115, - 37856, - 29836, - 135939, - 28933, - 18802, - 37896, - 166395, - 37821, - 14240, - 23582, - 23710, - 24158, - 24136, - 137622, - 137596, - 146158, - 24269, - 23375, - 137475, - 137476, - 14081, - 137376, - 14045, - 136958, - 14035, - 33066, - 166471, - 138682, - 144498, - 166312, - 24332, - 24334, - 137511, - 137131, - 23147, - 137019, - 23364, - 34324, - 161277, - 34912, - 24702, - 141408, - 140843, - 24539, - 16056, - 140719, - 140734, - 168072, - 159603, - 25024, - 131134, - 131142, - 140827, - 24985, - 24984, - 24693, - 142491, - 142599, - 149204, - 168269, - 25713, - 149093, - 142186, - 14889, - 142114, - 144464, - 170218, - 142968, - 25399, - 173147, - 25782, - 25393, - 25553, - 149987, - 142695, - 25252, - 142497, - 25659, - 25963, - 26994, - 15348, - 143502, - 144045, - 149897, - 144043, - 21773, - 144096, - 137433, - 169023, - 26318, - 144009, - 143795, - 15072, - 16784, - 152964, - 166690, - 152975, - 136956, - 152923, - 152613, - 30958, - 143619, - 137258, - 143924, - 13412, - 143887, - 143746, - 148169, - 26254, - 159012, - 26219, - 19347, - 26160, - 161904, - 138731, - 26211, - 144082, - 144097, - 26142, - 153714, - 14545, - 145466, - 145340, - 15257, - 145314, - 144382, - 29904, - 15254, - 26511, - 149034, - 26806, - 26654, - 15300, - 27326, - 14435, - 145365, - 148615, - 27187, - 27218, - 27337, - 27397, - 137490, - 25873, - 26776, - 27212, - 15319, - 27258, - 27479, - 147392, - 146586, - 37792, - 37618, - 166890, - 166603, - 37513, - 163870, - 166364, - 37991, - 28069, - 28427, - 149996, - 28007, - 147327, - 15759, - 28164, - 147516, - 23101, - 28170, - 22599, - 27940, - 30786, - 28987, - 148250, - 148086, - 28913, - 29264, - 29319, - 29332, - 149391, - 149285, - 20857, - 150180, - 132587, - 29818, - 147192, - 144991, - 150090, - 149783, - 155617, - 16134, - 16049, - 150239, - 166947, - 147253, - 24743, - 16115, - 29900, - 29756, - 37767, - 29751, - 17567, - 159210, - 17745, - 30083, - 16227, - 150745, - 150790, - 16216, - 30037, - 30323, - 173510, - 15129, - 29800, - 166604, - 149931, - 149902, - 15099, - 15821, - 150094, - 16127, - 149957, - 149747, - 37370, - 22322, - 37698, - 166627, - 137316, - 20703, - 152097, - 152039, - 30584, - 143922, - 30478, - 30479, - 30587, - 149143, - 145281, - 14942, - 149744, - 29752, - 29851, - 16063, - 150202, - 150215, - 16584, - 150166, - 156078, - 37639, - 152961, - 30750, - 30861, - 30856, - 30930, - 29648, - 31065, - 161601, - 153315, - 16654, - 31131, - 33942, - 31141, - 27181, - 147194, - 31290, - 31220, - 16750, - 136934, - 16690, - 37429, - 31217, - 134476, - 149900, - 131737, - 146874, - 137070, - 13719, - 21867, - 13680, - 13994, - 131540, - 134157, - 31458, - 23129, - 141045, - 154287, - 154268, - 23053, - 131675, - 30960, - 23082, - 154566, - 31486, - 16889, - 31837, - 31853, - 16913, - 154547, - 155324, - 155302, - 31949, - 150009, - 137136, - 31886, - 31868, - 31918, - 27314, - 32220, - 32263, - 32211, - 32590, - 156257, - 155996, - 162632, - 32151, - 155266, - 17002, - 158581, - 133398, - 26582, - 131150, - 144847, - 22468, - 156690, - 156664, - 149858, - 32733, - 31527, - 133164, - 154345, - 154947, - 31500, - 155150, - 39398, - 34373, - 39523, - 27164, - 144447, - 14818, - 150007, - 157101, - 39455, - 157088, - 33920, - 160039, - 158929, - 17642, - 33079, - 17410, - 32966, - 33033, - 33090, - 157620, - 39107, - 158274, - 33378, - 33381, - 158289, - 33875, - 159143, - 34320, - 160283, - 23174, - 16767, - 137280, - 23339, - 137377, - 23268, - 137432, - 34464, - 195004, - 146831, - 34861, - 160802, - 23042, - 34926, - 20293, - 34951, - 35007, - 35046, - 35173, - 35149, - 153219, - 35156, - 161669, - 161668, - 166901, - 166873, - 166812, - 166393, - 16045, - 33955, - 18165, - 18127, - 14322, - 35389, - 35356, - 169032, - 24397, - 37419, - 148100, - 26068, - 28969, - 28868, - 137285, - 40301, - 35999, - 36073, - 163292, - 22938, - 30659, - 23024, - 17262, - 14036, - 36394, - 36519, - 150537, - 36656, - 36682, - 17140, - 27736, - 28603, - 140065, - 18587, - 28537, - 28299, - 137178, - 39913, - 14005, - 149807, - 37051, - 37015, - 21873, - 18694, - 37307, - 37892, - 166475, - 16482, - 166652, - 37927, - 166941, - 166971, - 34021, - 35371, - 38297, - 38311, - 38295, - 38294, - 167220, - 29765, - 16066, - 149759, - 150082, - 148458, - 16103, - 143909, - 38543, - 167655, - 167526, - 167525, - 16076, - 149997, - 150136, - 147438, - 29714, - 29803, - 16124, - 38721, - 168112, - 26695, - 18973, - 168083, - 153567, - 38749, - 37736, - 166281, - 166950, - 166703, - 156606, - 37562, - 23313, - 35689, - 18748, - 29689, - 147995, - 38811, - 38769, - 39224, - 134950, - 24001, - 166853, - 150194, - 38943, - 169178, - 37622, - 169431, - 37349, - 17600, - 166736, - 150119, - 166756, - 39132, - 166469, - 16128, - 37418, - 18725, - 33812, - 39227, - 39245, - 162566, - 15869, - 39323, - 19311, - 39338, - 39516, - 166757, - 153800, - 27279, - 39457, - 23294, - 39471, - 170225, - 19344, - 170312, - 39356, - 19389, - 19351, - 37757, - 22642, - 135938, - 22562, - 149944, - 136424, - 30788, - 141087, - 146872, - 26821, - 15741, - 37976, - 14631, - 24912, - 141185, - 141675, - 24839, - 40015, - 40019, - 40059, - 39989, - 39952, - 39807, - 39887, - 171565, - 39839, - 172533, - 172286, - 40225, - 19630, - 147716, - 40472, - 19632, - 40204, - 172468, - 172269, - 172275, - 170287, - 40357, - 33981, - 159250, - 159711, - 158594, - 34300, - 17715, - 159140, - 159364, - 159216, - 33824, - 34286, - 159232, - 145367, - 155748, - 31202, - 144796, - 144960, - 18733, - 149982, - 15714, - 37851, - 37566, - 37704, - 131775, - 30905, - 37495, - 37965, - 20452, - 13376, - 36964, - 152925, - 30781, - 30804, - 30902, - 30795, - 137047, - 143817, - 149825, - 13978, - 20338, - 28634, - 28633, - 28702, - 28702, - 21524, - 147893, - 22459, - 22771, - 22410, - 40214, - 22487, - 28980, - 13487, - 147884, - 29163, - 158784, - 151447, - 23336, - 137141, - 166473, - 24844, - 23246, - 23051, - 17084, - 148616, - 14124, - 19323, - 166396, - 37819, - 37816, - 137430, - 134941, - 33906, - 158912, - 136211, - 148218, - 142374, - 148417, - 22932, - 146871, - 157505, - 32168, - 155995, - 155812, - 149945, - 149899, - 166394, - 37605, - 29666, - 16105, - 29876, - 166755, - 137375, - 16097, - 150195, - 27352, - 29683, - 29691, - 16086, - 150078, - 150164, - 137177, - 150118, - 132007, - 136228, - 149989, - 29768, - 149782, - 28837, - 149878, - 37508, - 29670, - 37727, - 132350, - 37681, - 166606, - 166422, - 37766, - 166887, - 153045, - 18741, - 166530, - 29035, - 149827, - 134399, - 22180, - 132634, - 134123, - 134328, - 21762, - 31172, - 137210, - 32254, - 136898, - 150096, - 137298, - 17710, - 37889, - 14090, - 166592, - 149933, - 22960, - 137407, - 137347, - 160900, - 23201, - 14050, - 146779, - 14000, - 37471, - 23161, - 166529, - 137314, - 37748, - 15565, - 133812, - 19094, - 14730, - 20724, - 15721, - 15692, - 136092, - 29045, - 17147, - 164376, - 28175, - 168164, - 17643, - 27991, - 163407, - 28775, - 27823, - 15574, - 147437, - 146989, - 28162, - 28428, - 15727, - 132085, - 30033, - 14012, - 13512, - 18048, - 16090, - 18545, - 22980, - 37486, - 18750, - 36673, - 166940, - 158656, - 22546, - 22472, - 14038, - 136274, - 28926, - 148322, - 150129, - 143331, - 135856, - 140221, - 26809, - 26983, - 136088, - 144613, - 162804, - 145119, - 166531, - 145366, - 144378, - 150687, - 27162, - 145069, - 158903, - 33854, - 17631, - 17614, - 159014, - 159057, - 158850, - 159710, - 28439, - 160009, - 33597, - 137018, - 33773, - 158848, - 159827, - 137179, - 22921, - 23170, - 137139, - 23137, - 23153, - 137477, - 147964, - 14125, - 23023, - 137020, - 14023, - 29070, - 37776, - 26266, - 148133, - 23150, - 23083, - 148115, - 27179, - 147193, - 161590, - 148571, - 148170, - 28957, - 148057, - 166369, - 20400, - 159016, - 23746, - 148686, - 163405, - 148413, - 27148, - 148054, - 135940, - 28838, - 28979, - 148457, - 15781, - 27871, - 194597, - 150095, - 32357, - 23019, - 23855, - 15859, - 24412, - 150109, - 137183, - 32164, - 33830, - 21637, - 146170, - 144128, - 131604, - 22398, - 133333, - 132633, - 16357, - 139166, - 172726, - 28675, - 168283, - 23920, - 29583, - 31955, - 166489, - 168992, - 20424, - 32743, - 29389, - 29456, - 162548, - 29496, - 29497, - 153334, - 29505, - 29512, - 16041, - 162584, - 36972, - 29173, - 149746, - 29665, - 33270, - 16074, - 30476, - 16081, - 27810, - 22269, - 29721, - 29726, - 29727, - 16098, - 16112, - 16116, - 16122, - 29907, - 16142, - 16211, - 30018, - 30061, - 30066, - 30093, - 16252, - 30152, - 30172, - 16320, - 30285, - 16343, - 30324, - 16348, - 30330, - 151388, - 29064, - 22051, - 35200, - 22633, - 16413, - 30531, - 16441, - 26465, - 16453, - 13787, - 30616, - 16490, - 16495, - 23646, - 30654, - 30667, - 22770, - 30744, - 28857, - 30748, - 16552, - 30777, - 30791, - 30801, - 30822, - 33864, - 152885, - 31027, - 26627, - 31026, - 16643, - 16649, - 31121, - 31129, - 36795, - 31238, - 36796, - 16743, - 31377, - 16818, - 31420, - 33401, - 16836, - 31439, - 31451, - 16847, - 20001, - 31586, - 31596, - 31611, - 31762, - 31771, - 16992, - 17018, - 31867, - 31900, - 17036, - 31928, - 17044, - 31981, - 36755, - 28864, - 134351, - 32207, - 32212, - 32208, - 32253, - 32686, - 32692, - 29343, - 17303, - 32800, - 32805, - 31545, - 32814, - 32817, - 32852, - 15820, - 22452, - 28832, - 32951, - 33001, - 17389, - 33036, - 29482, - 33038, - 33042, - 30048, - 33044, - 17409, - 15161, - 33110, - 33113, - 33114, - 17427, - 22586, - 33148, - 33156, - 17445, - 33171, - 17453, - 33189, - 22511, - 33217, - 33252, - 33364, - 17551, - 33446, - 33398, - 33482, - 33496, - 33535, - 17584, - 33623, - 38505, - 27018, - 33797, - 28917, - 33892, - 24803, - 33928, - 17668, - 33982, - 34017, - 34040, - 34064, - 34104, - 34130, - 17723, - 34159, - 34160, - 34272, - 17783, - 34418, - 34450, - 34482, - 34543, - 38469, - 34699, - 17926, - 17943, - 34990, - 35071, - 35108, - 35143, - 35217, - 162151, - 35369, - 35384, - 35476, - 35508, - 35921, - 36052, - 36082, - 36124, - 18328, - 22623, - 36291, - 18413, - 20206, - 36410, - 21976, - 22356, - 36465, - 22005, - 36528, - 18487, - 36558, - 36578, - 36580, - 36589, - 36594, - 36791, - 36801, - 36810, - 36812, - 36915, - 39364, - 18605, - 39136, - 37395, - 18718, - 37416, - 37464, - 37483, - 37553, - 37550, - 37567, - 37603, - 37611, - 37619, - 37620, - 37629, - 37699, - 37764, - 37805, - 18757, - 18769, - 40639, - 37911, - 21249, - 37917, - 37933, - 37950, - 18794, - 37972, - 38009, - 38189, - 38306, - 18855, - 38388, - 38451, - 18917, - 26528, - 18980, - 38720, - 18997, - 38834, - 38850, - 22100, - 19172, - 24808, - 39097, - 19225, - 39153, - 22596, - 39182, - 39193, - 20916, - 39196, - 39223, - 39234, - 39261, - 39266, - 19312, - 39365, - 19357, - 39484, - 39695, - 31363, - 39785, - 39809, - 39901, - 39921, - 39924, - 19565, - 39968, - 14191, - 138178, - 40265, - 39994, - 40702, - 22096, - 40339, - 40381, - 40384, - 40444, - 38134, - 36790, - 40571, - 40620, - 40625, - 40637, - 40646, - 38108, - 40674, - 40689, - 40696, - 31432, - 40772, - 131220, - 131767, - 132000, - 26906, - 38083, - 22956, - 132311, - 22592, - 38081, - 14265, - 132565, - 132629, - 132726, - 136890, - 22359, - 29043, - 133826, - 133837, - 134079, - 21610, - 194619, - 134091, - 21662, - 134139, - 134203, - 134227, - 134245, - 134268, - 24807, - 134285, - 22138, - 134325, - 134365, - 134381, - 134511, - 134578, - 134600, - 26965, - 39983, - 34725, - 134660, - 134670, - 134871, - 135056, - 134957, - 134771, - 23584, - 135100, - 24075, - 135260, - 135247, - 135286, - 26398, - 135291, - 135304, - 135318, - 13895, - 135359, - 135379, - 135471, - 135483, - 21348, - 33965, - 135907, - 136053, - 135990, - 35713, - 136567, - 136729, - 137155, - 137159, - 20088, - 28859, - 137261, - 137578, - 137773, - 137797, - 138282, - 138352, - 138412, - 138952, - 25283, - 138965, - 139029, - 29080, - 26709, - 139333, - 27113, - 14024, - 139900, - 140247, - 140282, - 141098, - 141425, - 141647, - 33533, - 141671, - 141715, - 142037, - 35237, - 142056, - 36768, - 142094, - 38840, - 142143, - 38983, - 39613, - 142412, - null, - 142472, - 142519, - 154600, - 142600, - 142610, - 142775, - 142741, - 142914, - 143220, - 143308, - 143411, - 143462, - 144159, - 144350, - 24497, - 26184, - 26303, - 162425, - 144743, - 144883, - 29185, - 149946, - 30679, - 144922, - 145174, - 32391, - 131910, - 22709, - 26382, - 26904, - 146087, - 161367, - 155618, - 146961, - 147129, - 161278, - 139418, - 18640, - 19128, - 147737, - 166554, - 148206, - 148237, - 147515, - 148276, - 148374, - 150085, - 132554, - 20946, - 132625, - 22943, - 138920, - 15294, - 146687, - 148484, - 148694, - 22408, - 149108, - 14747, - 149295, - 165352, - 170441, - 14178, - 139715, - 35678, - 166734, - 39382, - 149522, - 149755, - 150037, - 29193, - 150208, - 134264, - 22885, - 151205, - 151430, - 132985, - 36570, - 151596, - 21135, - 22335, - 29041, - 152217, - 152601, - 147274, - 150183, - 21948, - 152646, - 152686, - 158546, - 37332, - 13427, - 152895, - 161330, - 152926, - 18200, - 152930, - 152934, - 153543, - 149823, - 153693, - 20582, - 13563, - 144332, - 24798, - 153859, - 18300, - 166216, - 154286, - 154505, - 154630, - 138640, - 22433, - 29009, - 28598, - 155906, - 162834, - 36950, - 156082, - 151450, - 35682, - 156674, - 156746, - 23899, - 158711, - 36662, - 156804, - 137500, - 35562, - 150006, - 156808, - 147439, - 156946, - 19392, - 157119, - 157365, - 141083, - 37989, - 153569, - 24981, - 23079, - 194765, - 20411, - 22201, - 148769, - 157436, - 20074, - 149812, - 38486, - 28047, - 158909, - 13848, - 35191, - 157593, - 157806, - 156689, - 157790, - 29151, - 157895, - 31554, - 168128, - 133649, - 157990, - 37124, - 158009, - 31301, - 40432, - 158202, - 39462, - 158253, - 13919, - 156777, - 131105, - 31107, - 158260, - 158555, - 23852, - 144665, - 33743, - 158621, - 18128, - 158884, - 30011, - 34917, - 159150, - 22710, - 14108, - 140685, - 159819, - 160205, - 15444, - 160384, - 160389, - 37505, - 139642, - 160395, - 37680, - 160486, - 149968, - 27705, - 38047, - 160848, - 134904, - 34855, - 35061, - 141606, - 164979, - 137137, - 28344, - 150058, - 137248, - 14756, - 14009, - 23568, - 31203, - 17727, - 26294, - 171181, - 170148, - 35139, - 161740, - 161880, - 22230, - 16607, - 136714, - 14753, - 145199, - 164072, - 136133, - 29101, - 33638, - 162269, - 168360, - 23143, - 19639, - 159919, - 166315, - 162301, - 162314, - 162571, - 163174, - 147834, - 31555, - 31102, - 163849, - 28597, - 172767, - 27139, - 164632, - 21410, - 159239, - 37823, - 26678, - 38749, - 164207, - 163875, - 158133, - 136173, - 143919, - 163912, - 23941, - 166960, - 163971, - 22293, - 38947, - 166217, - 23979, - 149896, - 26046, - 27093, - 21458, - 150181, - 147329, - 15377, - 26422, - 163984, - 164084, - 164142, - 139169, - 164175, - 164233, - 164271, - 164378, - 164614, - 164655, - 164746, - 13770, - 164968, - 165546, - 18682, - 25574, - 166230, - 30728, - 37461, - 166328, - 17394, - 166375, - 17375, - 166376, - 166726, - 166868, - 23032, - 166921, - 36619, - 167877, - 168172, - 31569, - 168208, - 168252, - 15863, - 168286, - 150218, - 36816, - 29327, - 22155, - 169191, - 169449, - 169392, - 169400, - 169778, - 170193, - 170313, - 170346, - 170435, - 170536, - 170766, - 171354, - 171419, - 32415, - 171768, - 171811, - 19620, - 38215, - 172691, - 29090, - 172799, - 19857, - 36882, - 173515, - 19868, - 134300, - 36798, - 21953, - 36794, - 140464, - 36793, - 150163, - 17673, - 32383, - 28502, - 27313, - 20202, - 13540, - 166700, - 161949, - 14138, - 36480, - 137205, - 163876, - 166764, - 166809, - 162366, - 157359, - 15851, - 161365, - 146615, - 153141, - 153942, - 20122, - 155265, - 156248, - 22207, - 134765, - 36366, - 23405, - 147080, - 150686, - 25566, - 25296, - 137206, - 137339, - 25904, - 22061, - 154698, - 21530, - 152337, - 15814, - 171416, - 19581, - 22050, - 22046, - 32585, - 155352, - 22901, - 146752, - 34672, - 19996, - 135146, - 134473, - 145082, - 33047, - 40286, - 36120, - 30267, - 40005, - 30286, - 30649, - 37701, - 21554, - 33096, - 33527, - 22053, - 33074, - 33816, - 32957, - 21994, - 31074, - 22083, - 21526, - 134813, - 13774, - 22021, - 22001, - 26353, - 164578, - 13869, - 30004, - 22000, - 21946, - 21655, - 21874, - 134209, - 134294, - 24272, - 151880, - 134774, - 142434, - 134818, - 40619, - 32090, - 21982, - 135285, - 25245, - 38765, - 21652, - 36045, - 29174, - 37238, - 25596, - 25529, - 25598, - 21865, - 142147, - 40050, - 143027, - 20890, - 13535, - 134567, - 20903, - 21581, - 21790, - 21779, - 30310, - 36397, - 157834, - 30129, - 32950, - 34820, - 34694, - 35015, - 33206, - 33820, - 135361, - 17644, - 29444, - 149254, - 23440, - 33547, - 157843, - 22139, - 141044, - 163119, - 147875, - 163187, - 159440, - 160438, - 37232, - 135641, - 37384, - 146684, - 173737, - 134828, - 134905, - 29286, - 138402, - 18254, - 151490, - 163833, - 135147, - 16634, - 40029, - 25887, - 142752, - 18675, - 149472, - 171388, - 135148, - 134666, - 24674, - 161187, - 135149, - null, - 155720, - 135559, - 29091, - 32398, - 40272, - 19994, - 19972, - 13687, - 23309, - 27826, - 21351, - 13996, - 14812, - 21373, - 13989, - 149016, - 22682, - 150382, - 33325, - 21579, - 22442, - 154261, - 133497, - null, - 14930, - 140389, - 29556, - 171692, - 19721, - 39917, - 146686, - 171824, - 19547, - 151465, - 169374, - 171998, - 33884, - 146870, - 160434, - 157619, - 145184, - 25390, - 32037, - 147191, - 146988, - 14890, - 36872, - 21196, - 15988, - 13946, - 17897, - 132238, - 30272, - 23280, - 134838, - 30842, - 163630, - 22695, - 16575, - 22140, - 39819, - 23924, - 30292, - 173108, - 40581, - 19681, - 30201, - 14331, - 24857, - 143578, - 148466, - null, - 22109, - 135849, - 22439, - 149859, - 171526, - 21044, - 159918, - 13741, - 27722, - 40316, - 31830, - 39737, - 22494, - 137068, - 23635, - 25811, - 169168, - 156469, - 160100, - 34477, - 134440, - 159010, - 150242, - 134513, - null, - 20990, - 139023, - 23950, - 38659, - 138705, - 40577, - 36940, - 31519, - 39682, - 23761, - 31651, - 25192, - 25397, - 39679, - 31695, - 39722, - 31870, - 39726, - 31810, - 31878, - 39957, - 31740, - 39689, - 40727, - 39963, - 149822, - 40794, - 21875, - 23491, - 20477, - 40600, - 20466, - 21088, - 15878, - 21201, - 22375, - 20566, - 22967, - 24082, - 38856, - 40363, - 36700, - 21609, - 38836, - 39232, - 38842, - 21292, - 24880, - 26924, - 21466, - 39946, - 40194, - 19515, - 38465, - 27008, - 20646, - 30022, - 137069, - 39386, - 21107, - null, - 37209, - 38529, - 37212, - null, - 37201, - 167575, - 25471, - 159011, - 27338, - 22033, - 37262, - 30074, - 25221, - 132092, - 29519, - 31856, - 154657, - 146685, - null, - 149785, - 30422, - 39837, - 20010, - 134356, - 33726, - 34882, - null, - 23626, - 27072, - 20717, - 22394, - 21023, - 24053, - 20174, - 27697, - 131570, - 20281, - 21660, - 21722, - 21146, - 36226, - 13822, - 24332, - 13811, - null, - 27474, - 37244, - 40869, - 39831, - 38958, - 39092, - 39610, - 40616, - 40580, - 29050, - 31508, - null, - 27642, - 34840, - 32632, - null, - 22048, - 173642, - 36471, - 40787, - null, - 36308, - 36431, - 40476, - 36353, - 25218, - 164733, - 36392, - 36469, - 31443, - 150135, - 31294, - 30936, - 27882, - 35431, - 30215, - 166490, - 40742, - 27854, - 34774, - 30147, - 172722, - 30803, - 194624, - 36108, - 29410, - 29553, - 35629, - 29442, - 29937, - 36075, - 150203, - 34351, - 24506, - 34976, - 17591, - null, - 137275, - 159237, - null, - 35454, - 140571, - null, - 24829, - 30311, - 39639, - 40260, - 37742, - 39823, - 34805, - null, - 34831, - 36087, - 29484, - 38689, - 39856, - 13782, - 29362, - 19463, - 31825, - 39242, - 155993, - 24921, - 19460, - 40598, - 24957, - null, - 22367, - 24943, - 25254, - 25145, - 25294, - 14940, - 25058, - 21418, - 144373, - 25444, - 26626, - 13778, - 23895, - 166850, - 36826, - 167481, - null, - 20697, - 138566, - 30982, - 21298, - 38456, - 134971, - 16485, - null, - 30718, - null, - 31938, - 155418, - 31962, - 31277, - 32870, - 32867, - 32077, - 29957, - 29938, - 35220, - 33306, - 26380, - 32866, - 160902, - 32859, - 29936, - 33027, - 30500, - 35209, - 157644, - 30035, - 159441, - 34729, - 34766, - 33224, - 34700, - 35401, - 36013, - 35651, - 30507, - 29944, - 34010, - 13877, - 27058, - 36262, - null, - 35241, - 29800, - 28089, - 34753, - 147473, - 29927, - 15835, - 29046, - 24740, - 24988, - 15569, - 29026, - 24695, - null, - 32625, - 166701, - 29264, - 24809, - 19326, - 21024, - 15384, - 146631, - 155351, - 161366, - 152881, - 137540, - 135934, - 170243, - 159196, - 159917, - 23745, - 156077, - 166415, - 145015, - 131310, - 157766, - 151310, - 17762, - 23327, - 156492, - 40784, - 40614, - 156267, - 12288, - 65292, - 12289, - 12290, - 65294, - 8231, - 65307, - 65306, - 65311, - 65281, - 65072, - 8230, - 8229, - 65104, - 65105, - 65106, - 183, - 65108, - 65109, - 65110, - 65111, - 65372, - 8211, - 65073, - 8212, - 65075, - 9588, - 65076, - 65103, - 65288, - 65289, - 65077, - 65078, - 65371, - 65373, - 65079, - 65080, - 12308, - 12309, - 65081, - 65082, - 12304, - 12305, - 65083, - 65084, - 12298, - 12299, - 65085, - 65086, - 12296, - 12297, - 65087, - 65088, - 12300, - 12301, - 65089, - 65090, - 12302, - 12303, - 65091, - 65092, - 65113, - 65114, - 65115, - 65116, - 65117, - 65118, - 8216, - 8217, - 8220, - 8221, - 12317, - 12318, - 8245, - 8242, - 65283, - 65286, - 65290, - 8251, - 167, - 12291, - 9675, - 9679, - 9651, - 9650, - 9678, - 9734, - 9733, - 9671, - 9670, - 9633, - 9632, - 9661, - 9660, - 12963, - 8453, - 175, - 65507, - 65343, - 717, - 65097, - 65098, - 65101, - 65102, - 65099, - 65100, - 65119, - 65120, - 65121, - 65291, - 65293, - 215, - 247, - 177, - 8730, - 65308, - 65310, - 65309, - 8806, - 8807, - 8800, - 8734, - 8786, - 8801, - 65122, - 65123, - 65124, - 65125, - 65126, - 65374, - 8745, - 8746, - 8869, - 8736, - 8735, - 8895, - 13266, - 13265, - 8747, - 8750, - 8757, - 8756, - 9792, - 9794, - 8853, - 8857, - 8593, - 8595, - 8592, - 8594, - 8598, - 8599, - 8601, - 8600, - 8741, - 8739, - 65295, - 65340, - 8725, - 65128, - 65284, - 65509, - 12306, - 65504, - 65505, - 65285, - 65312, - 8451, - 8457, - 65129, - 65130, - 65131, - 13269, - 13212, - 13213, - 13214, - 13262, - 13217, - 13198, - 13199, - 13252, - 176, - 20825, - 20827, - 20830, - 20829, - 20833, - 20835, - 21991, - 29929, - 31950, - 9601, - 9602, - 9603, - 9604, - 9605, - 9606, - 9607, - 9608, - 9615, - 9614, - 9613, - 9612, - 9611, - 9610, - 9609, - 9532, - 9524, - 9516, - 9508, - 9500, - 9620, - 9472, - 9474, - 9621, - 9484, - 9488, - 9492, - 9496, - 9581, - 9582, - 9584, - 9583, - 9552, - 9566, - 9578, - 9569, - 9698, - 9699, - 9701, - 9700, - 9585, - 9586, - 9587, - 65296, - 65297, - 65298, - 65299, - 65300, - 65301, - 65302, - 65303, - 65304, - 65305, - 8544, - 8545, - 8546, - 8547, - 8548, - 8549, - 8550, - 8551, - 8552, - 8553, - 12321, - 12322, - 12323, - 12324, - 12325, - 12326, - 12327, - 12328, - 12329, - 21313, - 21316, - 21317, - 65313, - 65314, - 65315, - 65316, - 65317, - 65318, - 65319, - 65320, - 65321, - 65322, - 65323, - 65324, - 65325, - 65326, - 65327, - 65328, - 65329, - 65330, - 65331, - 65332, - 65333, - 65334, - 65335, - 65336, - 65337, - 65338, - 65345, - 65346, - 65347, - 65348, - 65349, - 65350, - 65351, - 65352, - 65353, - 65354, - 65355, - 65356, - 65357, - 65358, - 65359, - 65360, - 65361, - 65362, - 65363, - 65364, - 65365, - 65366, - 65367, - 65368, - 65369, - 65370, - 913, - 914, - 915, - 916, - 917, - 918, - 919, - 920, - 921, - 922, - 923, - 924, - 925, - 926, - 927, - 928, - 929, - 931, - 932, - 933, - 934, - 935, - 936, - 937, - 945, - 946, - 947, - 948, - 949, - 950, - 951, - 952, - 953, - 954, - 955, - 956, - 957, - 958, - 959, - 960, - 961, - 963, - 964, - 965, - 966, - 967, - 968, - 969, - 12549, - 12550, - 12551, - 12552, - 12553, - 12554, - 12555, - 12556, - 12557, - 12558, - 12559, - 12560, - 12561, - 12562, - 12563, - 12564, - 12565, - 12566, - 12567, - 12568, - 12569, - 12570, - 12571, - 12572, - 12573, - 12574, - 12575, - 12576, - 12577, - 12578, - 12579, - 12580, - 12581, - 12582, - 12583, - 12584, - 12585, - 729, - 713, - 714, - 711, - 715, - 9216, - 9217, - 9218, - 9219, - 9220, - 9221, - 9222, - 9223, - 9224, - 9225, - 9226, - 9227, - 9228, - 9229, - 9230, - 9231, - 9232, - 9233, - 9234, - 9235, - 9236, - 9237, - 9238, - 9239, - 9240, - 9241, - 9242, - 9243, - 9244, - 9245, - 9246, - 9247, - 9249, - 8364, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 19968, - 20057, - 19969, - 19971, - 20035, - 20061, - 20102, - 20108, - 20154, - 20799, - 20837, - 20843, - 20960, - 20992, - 20993, - 21147, - 21269, - 21313, - 21340, - 21448, - 19977, - 19979, - 19976, - 19978, - 20011, - 20024, - 20961, - 20037, - 20040, - 20063, - 20062, - 20110, - 20129, - 20800, - 20995, - 21242, - 21315, - 21449, - 21475, - 22303, - 22763, - 22805, - 22823, - 22899, - 23376, - 23377, - 23379, - 23544, - 23567, - 23586, - 23608, - 23665, - 24029, - 24037, - 24049, - 24050, - 24051, - 24062, - 24178, - 24318, - 24331, - 24339, - 25165, - 19985, - 19984, - 19981, - 20013, - 20016, - 20025, - 20043, - 23609, - 20104, - 20113, - 20117, - 20114, - 20116, - 20130, - 20161, - 20160, - 20163, - 20166, - 20167, - 20173, - 20170, - 20171, - 20164, - 20803, - 20801, - 20839, - 20845, - 20846, - 20844, - 20887, - 20982, - 20998, - 20999, - 21000, - 21243, - 21246, - 21247, - 21270, - 21305, - 21320, - 21319, - 21317, - 21342, - 21380, - 21451, - 21450, - 21453, - 22764, - 22825, - 22827, - 22826, - 22829, - 23380, - 23569, - 23588, - 23610, - 23663, - 24052, - 24187, - 24319, - 24340, - 24341, - 24515, - 25096, - 25142, - 25163, - 25166, - 25903, - 25991, - 26007, - 26020, - 26041, - 26085, - 26352, - 26376, - 26408, - 27424, - 27490, - 27513, - 27595, - 27604, - 27611, - 27663, - 27700, - 28779, - 29226, - 29238, - 29243, - 29255, - 29273, - 29275, - 29356, - 29579, - 19993, - 19990, - 19989, - 19988, - 19992, - 20027, - 20045, - 20047, - 20046, - 20197, - 20184, - 20180, - 20181, - 20182, - 20183, - 20195, - 20196, - 20185, - 20190, - 20805, - 20804, - 20873, - 20874, - 20908, - 20985, - 20986, - 20984, - 21002, - 21152, - 21151, - 21253, - 21254, - 21271, - 21277, - 20191, - 21322, - 21321, - 21345, - 21344, - 21359, - 21358, - 21435, - 21487, - 21476, - 21491, - 21484, - 21486, - 21481, - 21480, - 21500, - 21496, - 21493, - 21483, - 21478, - 21482, - 21490, - 21489, - 21488, - 21477, - 21485, - 21499, - 22235, - 22234, - 22806, - 22830, - 22833, - 22900, - 22902, - 23381, - 23427, - 23612, - 24040, - 24039, - 24038, - 24066, - 24067, - 24179, - 24188, - 24321, - 24344, - 24343, - 24517, - 25098, - 25171, - 25172, - 25170, - 25169, - 26021, - 26086, - 26414, - 26412, - 26410, - 26411, - 26413, - 27491, - 27597, - 27665, - 27664, - 27704, - 27713, - 27712, - 27710, - 29359, - 29572, - 29577, - 29916, - 29926, - 29976, - 29983, - 29992, - 29993, - 30000, - 30001, - 30002, - 30003, - 30091, - 30333, - 30382, - 30399, - 30446, - 30683, - 30690, - 30707, - 31034, - 31166, - 31348, - 31435, - 19998, - 19999, - 20050, - 20051, - 20073, - 20121, - 20132, - 20134, - 20133, - 20223, - 20233, - 20249, - 20234, - 20245, - 20237, - 20240, - 20241, - 20239, - 20210, - 20214, - 20219, - 20208, - 20211, - 20221, - 20225, - 20235, - 20809, - 20807, - 20806, - 20808, - 20840, - 20849, - 20877, - 20912, - 21015, - 21009, - 21010, - 21006, - 21014, - 21155, - 21256, - 21281, - 21280, - 21360, - 21361, - 21513, - 21519, - 21516, - 21514, - 21520, - 21505, - 21515, - 21508, - 21521, - 21517, - 21512, - 21507, - 21518, - 21510, - 21522, - 22240, - 22238, - 22237, - 22323, - 22320, - 22312, - 22317, - 22316, - 22319, - 22313, - 22809, - 22810, - 22839, - 22840, - 22916, - 22904, - 22915, - 22909, - 22905, - 22914, - 22913, - 23383, - 23384, - 23431, - 23432, - 23429, - 23433, - 23546, - 23574, - 23673, - 24030, - 24070, - 24182, - 24180, - 24335, - 24347, - 24537, - 24534, - 25102, - 25100, - 25101, - 25104, - 25187, - 25179, - 25176, - 25910, - 26089, - 26088, - 26092, - 26093, - 26354, - 26355, - 26377, - 26429, - 26420, - 26417, - 26421, - 27425, - 27492, - 27515, - 27670, - 27741, - 27735, - 27737, - 27743, - 27744, - 27728, - 27733, - 27745, - 27739, - 27725, - 27726, - 28784, - 29279, - 29277, - 30334, - 31481, - 31859, - 31992, - 32566, - 32650, - 32701, - 32769, - 32771, - 32780, - 32786, - 32819, - 32895, - 32905, - 32907, - 32908, - 33251, - 33258, - 33267, - 33276, - 33292, - 33307, - 33311, - 33390, - 33394, - 33406, - 34411, - 34880, - 34892, - 34915, - 35199, - 38433, - 20018, - 20136, - 20301, - 20303, - 20295, - 20311, - 20318, - 20276, - 20315, - 20309, - 20272, - 20304, - 20305, - 20285, - 20282, - 20280, - 20291, - 20308, - 20284, - 20294, - 20323, - 20316, - 20320, - 20271, - 20302, - 20278, - 20313, - 20317, - 20296, - 20314, - 20812, - 20811, - 20813, - 20853, - 20918, - 20919, - 21029, - 21028, - 21033, - 21034, - 21032, - 21163, - 21161, - 21162, - 21164, - 21283, - 21363, - 21365, - 21533, - 21549, - 21534, - 21566, - 21542, - 21582, - 21543, - 21574, - 21571, - 21555, - 21576, - 21570, - 21531, - 21545, - 21578, - 21561, - 21563, - 21560, - 21550, - 21557, - 21558, - 21536, - 21564, - 21568, - 21553, - 21547, - 21535, - 21548, - 22250, - 22256, - 22244, - 22251, - 22346, - 22353, - 22336, - 22349, - 22343, - 22350, - 22334, - 22352, - 22351, - 22331, - 22767, - 22846, - 22941, - 22930, - 22952, - 22942, - 22947, - 22937, - 22934, - 22925, - 22948, - 22931, - 22922, - 22949, - 23389, - 23388, - 23386, - 23387, - 23436, - 23435, - 23439, - 23596, - 23616, - 23617, - 23615, - 23614, - 23696, - 23697, - 23700, - 23692, - 24043, - 24076, - 24207, - 24199, - 24202, - 24311, - 24324, - 24351, - 24420, - 24418, - 24439, - 24441, - 24536, - 24524, - 24535, - 24525, - 24561, - 24555, - 24568, - 24554, - 25106, - 25105, - 25220, - 25239, - 25238, - 25216, - 25206, - 25225, - 25197, - 25226, - 25212, - 25214, - 25209, - 25203, - 25234, - 25199, - 25240, - 25198, - 25237, - 25235, - 25233, - 25222, - 25913, - 25915, - 25912, - 26097, - 26356, - 26463, - 26446, - 26447, - 26448, - 26449, - 26460, - 26454, - 26462, - 26441, - 26438, - 26464, - 26451, - 26455, - 27493, - 27599, - 27714, - 27742, - 27801, - 27777, - 27784, - 27785, - 27781, - 27803, - 27754, - 27770, - 27792, - 27760, - 27788, - 27752, - 27798, - 27794, - 27773, - 27779, - 27762, - 27774, - 27764, - 27782, - 27766, - 27789, - 27796, - 27800, - 27778, - 28790, - 28796, - 28797, - 28792, - 29282, - 29281, - 29280, - 29380, - 29378, - 29590, - 29996, - 29995, - 30007, - 30008, - 30338, - 30447, - 30691, - 31169, - 31168, - 31167, - 31350, - 31995, - 32597, - 32918, - 32915, - 32925, - 32920, - 32923, - 32922, - 32946, - 33391, - 33426, - 33419, - 33421, - 35211, - 35282, - 35328, - 35895, - 35910, - 35925, - 35997, - 36196, - 36208, - 36275, - 36523, - 36554, - 36763, - 36784, - 36802, - 36806, - 36805, - 36804, - 24033, - 37009, - 37026, - 37034, - 37030, - 37027, - 37193, - 37318, - 37324, - 38450, - 38446, - 38449, - 38442, - 38444, - 20006, - 20054, - 20083, - 20107, - 20123, - 20126, - 20139, - 20140, - 20335, - 20381, - 20365, - 20339, - 20351, - 20332, - 20379, - 20363, - 20358, - 20355, - 20336, - 20341, - 20360, - 20329, - 20347, - 20374, - 20350, - 20367, - 20369, - 20346, - 20820, - 20818, - 20821, - 20841, - 20855, - 20854, - 20856, - 20925, - 20989, - 21051, - 21048, - 21047, - 21050, - 21040, - 21038, - 21046, - 21057, - 21182, - 21179, - 21330, - 21332, - 21331, - 21329, - 21350, - 21367, - 21368, - 21369, - 21462, - 21460, - 21463, - 21619, - 21621, - 21654, - 21624, - 21653, - 21632, - 21627, - 21623, - 21636, - 21650, - 21638, - 21628, - 21648, - 21617, - 21622, - 21644, - 21658, - 21602, - 21608, - 21643, - 21629, - 21646, - 22266, - 22403, - 22391, - 22378, - 22377, - 22369, - 22374, - 22372, - 22396, - 22812, - 22857, - 22855, - 22856, - 22852, - 22868, - 22974, - 22971, - 22996, - 22969, - 22958, - 22993, - 22982, - 22992, - 22989, - 22987, - 22995, - 22986, - 22959, - 22963, - 22994, - 22981, - 23391, - 23396, - 23395, - 23447, - 23450, - 23448, - 23452, - 23449, - 23451, - 23578, - 23624, - 23621, - 23622, - 23735, - 23713, - 23736, - 23721, - 23723, - 23729, - 23731, - 24088, - 24090, - 24086, - 24085, - 24091, - 24081, - 24184, - 24218, - 24215, - 24220, - 24213, - 24214, - 24310, - 24358, - 24359, - 24361, - 24448, - 24449, - 24447, - 24444, - 24541, - 24544, - 24573, - 24565, - 24575, - 24591, - 24596, - 24623, - 24629, - 24598, - 24618, - 24597, - 24609, - 24615, - 24617, - 24619, - 24603, - 25110, - 25109, - 25151, - 25150, - 25152, - 25215, - 25289, - 25292, - 25284, - 25279, - 25282, - 25273, - 25298, - 25307, - 25259, - 25299, - 25300, - 25291, - 25288, - 25256, - 25277, - 25276, - 25296, - 25305, - 25287, - 25293, - 25269, - 25306, - 25265, - 25304, - 25302, - 25303, - 25286, - 25260, - 25294, - 25918, - 26023, - 26044, - 26106, - 26132, - 26131, - 26124, - 26118, - 26114, - 26126, - 26112, - 26127, - 26133, - 26122, - 26119, - 26381, - 26379, - 26477, - 26507, - 26517, - 26481, - 26524, - 26483, - 26487, - 26503, - 26525, - 26519, - 26479, - 26480, - 26495, - 26505, - 26494, - 26512, - 26485, - 26522, - 26515, - 26492, - 26474, - 26482, - 27427, - 27494, - 27495, - 27519, - 27667, - 27675, - 27875, - 27880, - 27891, - 27825, - 27852, - 27877, - 27827, - 27837, - 27838, - 27836, - 27874, - 27819, - 27861, - 27859, - 27832, - 27844, - 27833, - 27841, - 27822, - 27863, - 27845, - 27889, - 27839, - 27835, - 27873, - 27867, - 27850, - 27820, - 27887, - 27868, - 27862, - 27872, - 28821, - 28814, - 28818, - 28810, - 28825, - 29228, - 29229, - 29240, - 29256, - 29287, - 29289, - 29376, - 29390, - 29401, - 29399, - 29392, - 29609, - 29608, - 29599, - 29611, - 29605, - 30013, - 30109, - 30105, - 30106, - 30340, - 30402, - 30450, - 30452, - 30693, - 30717, - 31038, - 31040, - 31041, - 31177, - 31176, - 31354, - 31353, - 31482, - 31998, - 32596, - 32652, - 32651, - 32773, - 32954, - 32933, - 32930, - 32945, - 32929, - 32939, - 32937, - 32948, - 32938, - 32943, - 33253, - 33278, - 33293, - 33459, - 33437, - 33433, - 33453, - 33469, - 33439, - 33465, - 33457, - 33452, - 33445, - 33455, - 33464, - 33443, - 33456, - 33470, - 33463, - 34382, - 34417, - 21021, - 34920, - 36555, - 36814, - 36820, - 36817, - 37045, - 37048, - 37041, - 37046, - 37319, - 37329, - 38263, - 38272, - 38428, - 38464, - 38463, - 38459, - 38468, - 38466, - 38585, - 38632, - 38738, - 38750, - 20127, - 20141, - 20142, - 20449, - 20405, - 20399, - 20415, - 20448, - 20433, - 20431, - 20445, - 20419, - 20406, - 20440, - 20447, - 20426, - 20439, - 20398, - 20432, - 20420, - 20418, - 20442, - 20430, - 20446, - 20407, - 20823, - 20882, - 20881, - 20896, - 21070, - 21059, - 21066, - 21069, - 21068, - 21067, - 21063, - 21191, - 21193, - 21187, - 21185, - 21261, - 21335, - 21371, - 21402, - 21467, - 21676, - 21696, - 21672, - 21710, - 21705, - 21688, - 21670, - 21683, - 21703, - 21698, - 21693, - 21674, - 21697, - 21700, - 21704, - 21679, - 21675, - 21681, - 21691, - 21673, - 21671, - 21695, - 22271, - 22402, - 22411, - 22432, - 22435, - 22434, - 22478, - 22446, - 22419, - 22869, - 22865, - 22863, - 22862, - 22864, - 23004, - 23000, - 23039, - 23011, - 23016, - 23043, - 23013, - 23018, - 23002, - 23014, - 23041, - 23035, - 23401, - 23459, - 23462, - 23460, - 23458, - 23461, - 23553, - 23630, - 23631, - 23629, - 23627, - 23769, - 23762, - 24055, - 24093, - 24101, - 24095, - 24189, - 24224, - 24230, - 24314, - 24328, - 24365, - 24421, - 24456, - 24453, - 24458, - 24459, - 24455, - 24460, - 24457, - 24594, - 24605, - 24608, - 24613, - 24590, - 24616, - 24653, - 24688, - 24680, - 24674, - 24646, - 24643, - 24684, - 24683, - 24682, - 24676, - 25153, - 25308, - 25366, - 25353, - 25340, - 25325, - 25345, - 25326, - 25341, - 25351, - 25329, - 25335, - 25327, - 25324, - 25342, - 25332, - 25361, - 25346, - 25919, - 25925, - 26027, - 26045, - 26082, - 26149, - 26157, - 26144, - 26151, - 26159, - 26143, - 26152, - 26161, - 26148, - 26359, - 26623, - 26579, - 26609, - 26580, - 26576, - 26604, - 26550, - 26543, - 26613, - 26601, - 26607, - 26564, - 26577, - 26548, - 26586, - 26597, - 26552, - 26575, - 26590, - 26611, - 26544, - 26585, - 26594, - 26589, - 26578, - 27498, - 27523, - 27526, - 27573, - 27602, - 27607, - 27679, - 27849, - 27915, - 27954, - 27946, - 27969, - 27941, - 27916, - 27953, - 27934, - 27927, - 27963, - 27965, - 27966, - 27958, - 27931, - 27893, - 27961, - 27943, - 27960, - 27945, - 27950, - 27957, - 27918, - 27947, - 28843, - 28858, - 28851, - 28844, - 28847, - 28845, - 28856, - 28846, - 28836, - 29232, - 29298, - 29295, - 29300, - 29417, - 29408, - 29409, - 29623, - 29642, - 29627, - 29618, - 29645, - 29632, - 29619, - 29978, - 29997, - 30031, - 30028, - 30030, - 30027, - 30123, - 30116, - 30117, - 30114, - 30115, - 30328, - 30342, - 30343, - 30344, - 30408, - 30406, - 30403, - 30405, - 30465, - 30457, - 30456, - 30473, - 30475, - 30462, - 30460, - 30471, - 30684, - 30722, - 30740, - 30732, - 30733, - 31046, - 31049, - 31048, - 31047, - 31161, - 31162, - 31185, - 31186, - 31179, - 31359, - 31361, - 31487, - 31485, - 31869, - 32002, - 32005, - 32000, - 32009, - 32007, - 32004, - 32006, - 32568, - 32654, - 32703, - 32772, - 32784, - 32781, - 32785, - 32822, - 32982, - 32997, - 32986, - 32963, - 32964, - 32972, - 32993, - 32987, - 32974, - 32990, - 32996, - 32989, - 33268, - 33314, - 33511, - 33539, - 33541, - 33507, - 33499, - 33510, - 33540, - 33509, - 33538, - 33545, - 33490, - 33495, - 33521, - 33537, - 33500, - 33492, - 33489, - 33502, - 33491, - 33503, - 33519, - 33542, - 34384, - 34425, - 34427, - 34426, - 34893, - 34923, - 35201, - 35284, - 35336, - 35330, - 35331, - 35998, - 36000, - 36212, - 36211, - 36276, - 36557, - 36556, - 36848, - 36838, - 36834, - 36842, - 36837, - 36845, - 36843, - 36836, - 36840, - 37066, - 37070, - 37057, - 37059, - 37195, - 37194, - 37325, - 38274, - 38480, - 38475, - 38476, - 38477, - 38754, - 38761, - 38859, - 38893, - 38899, - 38913, - 39080, - 39131, - 39135, - 39318, - 39321, - 20056, - 20147, - 20492, - 20493, - 20515, - 20463, - 20518, - 20517, - 20472, - 20521, - 20502, - 20486, - 20540, - 20511, - 20506, - 20498, - 20497, - 20474, - 20480, - 20500, - 20520, - 20465, - 20513, - 20491, - 20505, - 20504, - 20467, - 20462, - 20525, - 20522, - 20478, - 20523, - 20489, - 20860, - 20900, - 20901, - 20898, - 20941, - 20940, - 20934, - 20939, - 21078, - 21084, - 21076, - 21083, - 21085, - 21290, - 21375, - 21407, - 21405, - 21471, - 21736, - 21776, - 21761, - 21815, - 21756, - 21733, - 21746, - 21766, - 21754, - 21780, - 21737, - 21741, - 21729, - 21769, - 21742, - 21738, - 21734, - 21799, - 21767, - 21757, - 21775, - 22275, - 22276, - 22466, - 22484, - 22475, - 22467, - 22537, - 22799, - 22871, - 22872, - 22874, - 23057, - 23064, - 23068, - 23071, - 23067, - 23059, - 23020, - 23072, - 23075, - 23081, - 23077, - 23052, - 23049, - 23403, - 23640, - 23472, - 23475, - 23478, - 23476, - 23470, - 23477, - 23481, - 23480, - 23556, - 23633, - 23637, - 23632, - 23789, - 23805, - 23803, - 23786, - 23784, - 23792, - 23798, - 23809, - 23796, - 24046, - 24109, - 24107, - 24235, - 24237, - 24231, - 24369, - 24466, - 24465, - 24464, - 24665, - 24675, - 24677, - 24656, - 24661, - 24685, - 24681, - 24687, - 24708, - 24735, - 24730, - 24717, - 24724, - 24716, - 24709, - 24726, - 25159, - 25331, - 25352, - 25343, - 25422, - 25406, - 25391, - 25429, - 25410, - 25414, - 25423, - 25417, - 25402, - 25424, - 25405, - 25386, - 25387, - 25384, - 25421, - 25420, - 25928, - 25929, - 26009, - 26049, - 26053, - 26178, - 26185, - 26191, - 26179, - 26194, - 26188, - 26181, - 26177, - 26360, - 26388, - 26389, - 26391, - 26657, - 26680, - 26696, - 26694, - 26707, - 26681, - 26690, - 26708, - 26665, - 26803, - 26647, - 26700, - 26705, - 26685, - 26612, - 26704, - 26688, - 26684, - 26691, - 26666, - 26693, - 26643, - 26648, - 26689, - 27530, - 27529, - 27575, - 27683, - 27687, - 27688, - 27686, - 27684, - 27888, - 28010, - 28053, - 28040, - 28039, - 28006, - 28024, - 28023, - 27993, - 28051, - 28012, - 28041, - 28014, - 27994, - 28020, - 28009, - 28044, - 28042, - 28025, - 28037, - 28005, - 28052, - 28874, - 28888, - 28900, - 28889, - 28872, - 28879, - 29241, - 29305, - 29436, - 29433, - 29437, - 29432, - 29431, - 29574, - 29677, - 29705, - 29678, - 29664, - 29674, - 29662, - 30036, - 30045, - 30044, - 30042, - 30041, - 30142, - 30149, - 30151, - 30130, - 30131, - 30141, - 30140, - 30137, - 30146, - 30136, - 30347, - 30384, - 30410, - 30413, - 30414, - 30505, - 30495, - 30496, - 30504, - 30697, - 30768, - 30759, - 30776, - 30749, - 30772, - 30775, - 30757, - 30765, - 30752, - 30751, - 30770, - 31061, - 31056, - 31072, - 31071, - 31062, - 31070, - 31069, - 31063, - 31066, - 31204, - 31203, - 31207, - 31199, - 31206, - 31209, - 31192, - 31364, - 31368, - 31449, - 31494, - 31505, - 31881, - 32033, - 32023, - 32011, - 32010, - 32032, - 32034, - 32020, - 32016, - 32021, - 32026, - 32028, - 32013, - 32025, - 32027, - 32570, - 32607, - 32660, - 32709, - 32705, - 32774, - 32792, - 32789, - 32793, - 32791, - 32829, - 32831, - 33009, - 33026, - 33008, - 33029, - 33005, - 33012, - 33030, - 33016, - 33011, - 33032, - 33021, - 33034, - 33020, - 33007, - 33261, - 33260, - 33280, - 33296, - 33322, - 33323, - 33320, - 33324, - 33467, - 33579, - 33618, - 33620, - 33610, - 33592, - 33616, - 33609, - 33589, - 33588, - 33615, - 33586, - 33593, - 33590, - 33559, - 33600, - 33585, - 33576, - 33603, - 34388, - 34442, - 34474, - 34451, - 34468, - 34473, - 34444, - 34467, - 34460, - 34928, - 34935, - 34945, - 34946, - 34941, - 34937, - 35352, - 35344, - 35342, - 35340, - 35349, - 35338, - 35351, - 35347, - 35350, - 35343, - 35345, - 35912, - 35962, - 35961, - 36001, - 36002, - 36215, - 36524, - 36562, - 36564, - 36559, - 36785, - 36865, - 36870, - 36855, - 36864, - 36858, - 36852, - 36867, - 36861, - 36869, - 36856, - 37013, - 37089, - 37085, - 37090, - 37202, - 37197, - 37196, - 37336, - 37341, - 37335, - 37340, - 37337, - 38275, - 38498, - 38499, - 38497, - 38491, - 38493, - 38500, - 38488, - 38494, - 38587, - 39138, - 39340, - 39592, - 39640, - 39717, - 39730, - 39740, - 20094, - 20602, - 20605, - 20572, - 20551, - 20547, - 20556, - 20570, - 20553, - 20581, - 20598, - 20558, - 20565, - 20597, - 20596, - 20599, - 20559, - 20495, - 20591, - 20589, - 20828, - 20885, - 20976, - 21098, - 21103, - 21202, - 21209, - 21208, - 21205, - 21264, - 21263, - 21273, - 21311, - 21312, - 21310, - 21443, - 26364, - 21830, - 21866, - 21862, - 21828, - 21854, - 21857, - 21827, - 21834, - 21809, - 21846, - 21839, - 21845, - 21807, - 21860, - 21816, - 21806, - 21852, - 21804, - 21859, - 21811, - 21825, - 21847, - 22280, - 22283, - 22281, - 22495, - 22533, - 22538, - 22534, - 22496, - 22500, - 22522, - 22530, - 22581, - 22519, - 22521, - 22816, - 22882, - 23094, - 23105, - 23113, - 23142, - 23146, - 23104, - 23100, - 23138, - 23130, - 23110, - 23114, - 23408, - 23495, - 23493, - 23492, - 23490, - 23487, - 23494, - 23561, - 23560, - 23559, - 23648, - 23644, - 23645, - 23815, - 23814, - 23822, - 23835, - 23830, - 23842, - 23825, - 23849, - 23828, - 23833, - 23844, - 23847, - 23831, - 24034, - 24120, - 24118, - 24115, - 24119, - 24247, - 24248, - 24246, - 24245, - 24254, - 24373, - 24375, - 24407, - 24428, - 24425, - 24427, - 24471, - 24473, - 24478, - 24472, - 24481, - 24480, - 24476, - 24703, - 24739, - 24713, - 24736, - 24744, - 24779, - 24756, - 24806, - 24765, - 24773, - 24763, - 24757, - 24796, - 24764, - 24792, - 24789, - 24774, - 24799, - 24760, - 24794, - 24775, - 25114, - 25115, - 25160, - 25504, - 25511, - 25458, - 25494, - 25506, - 25509, - 25463, - 25447, - 25496, - 25514, - 25457, - 25513, - 25481, - 25475, - 25499, - 25451, - 25512, - 25476, - 25480, - 25497, - 25505, - 25516, - 25490, - 25487, - 25472, - 25467, - 25449, - 25448, - 25466, - 25949, - 25942, - 25937, - 25945, - 25943, - 21855, - 25935, - 25944, - 25941, - 25940, - 26012, - 26011, - 26028, - 26063, - 26059, - 26060, - 26062, - 26205, - 26202, - 26212, - 26216, - 26214, - 26206, - 26361, - 21207, - 26395, - 26753, - 26799, - 26786, - 26771, - 26805, - 26751, - 26742, - 26801, - 26791, - 26775, - 26800, - 26755, - 26820, - 26797, - 26758, - 26757, - 26772, - 26781, - 26792, - 26783, - 26785, - 26754, - 27442, - 27578, - 27627, - 27628, - 27691, - 28046, - 28092, - 28147, - 28121, - 28082, - 28129, - 28108, - 28132, - 28155, - 28154, - 28165, - 28103, - 28107, - 28079, - 28113, - 28078, - 28126, - 28153, - 28088, - 28151, - 28149, - 28101, - 28114, - 28186, - 28085, - 28122, - 28139, - 28120, - 28138, - 28145, - 28142, - 28136, - 28102, - 28100, - 28074, - 28140, - 28095, - 28134, - 28921, - 28937, - 28938, - 28925, - 28911, - 29245, - 29309, - 29313, - 29468, - 29467, - 29462, - 29459, - 29465, - 29575, - 29701, - 29706, - 29699, - 29702, - 29694, - 29709, - 29920, - 29942, - 29943, - 29980, - 29986, - 30053, - 30054, - 30050, - 30064, - 30095, - 30164, - 30165, - 30133, - 30154, - 30157, - 30350, - 30420, - 30418, - 30427, - 30519, - 30526, - 30524, - 30518, - 30520, - 30522, - 30827, - 30787, - 30798, - 31077, - 31080, - 31085, - 31227, - 31378, - 31381, - 31520, - 31528, - 31515, - 31532, - 31526, - 31513, - 31518, - 31534, - 31890, - 31895, - 31893, - 32070, - 32067, - 32113, - 32046, - 32057, - 32060, - 32064, - 32048, - 32051, - 32068, - 32047, - 32066, - 32050, - 32049, - 32573, - 32670, - 32666, - 32716, - 32718, - 32722, - 32796, - 32842, - 32838, - 33071, - 33046, - 33059, - 33067, - 33065, - 33072, - 33060, - 33282, - 33333, - 33335, - 33334, - 33337, - 33678, - 33694, - 33688, - 33656, - 33698, - 33686, - 33725, - 33707, - 33682, - 33674, - 33683, - 33673, - 33696, - 33655, - 33659, - 33660, - 33670, - 33703, - 34389, - 24426, - 34503, - 34496, - 34486, - 34500, - 34485, - 34502, - 34507, - 34481, - 34479, - 34505, - 34899, - 34974, - 34952, - 34987, - 34962, - 34966, - 34957, - 34955, - 35219, - 35215, - 35370, - 35357, - 35363, - 35365, - 35377, - 35373, - 35359, - 35355, - 35362, - 35913, - 35930, - 36009, - 36012, - 36011, - 36008, - 36010, - 36007, - 36199, - 36198, - 36286, - 36282, - 36571, - 36575, - 36889, - 36877, - 36890, - 36887, - 36899, - 36895, - 36893, - 36880, - 36885, - 36894, - 36896, - 36879, - 36898, - 36886, - 36891, - 36884, - 37096, - 37101, - 37117, - 37207, - 37326, - 37365, - 37350, - 37347, - 37351, - 37357, - 37353, - 38281, - 38506, - 38517, - 38515, - 38520, - 38512, - 38516, - 38518, - 38519, - 38508, - 38592, - 38634, - 38633, - 31456, - 31455, - 38914, - 38915, - 39770, - 40165, - 40565, - 40575, - 40613, - 40635, - 20642, - 20621, - 20613, - 20633, - 20625, - 20608, - 20630, - 20632, - 20634, - 26368, - 20977, - 21106, - 21108, - 21109, - 21097, - 21214, - 21213, - 21211, - 21338, - 21413, - 21883, - 21888, - 21927, - 21884, - 21898, - 21917, - 21912, - 21890, - 21916, - 21930, - 21908, - 21895, - 21899, - 21891, - 21939, - 21934, - 21919, - 21822, - 21938, - 21914, - 21947, - 21932, - 21937, - 21886, - 21897, - 21931, - 21913, - 22285, - 22575, - 22570, - 22580, - 22564, - 22576, - 22577, - 22561, - 22557, - 22560, - 22777, - 22778, - 22880, - 23159, - 23194, - 23167, - 23186, - 23195, - 23207, - 23411, - 23409, - 23506, - 23500, - 23507, - 23504, - 23562, - 23563, - 23601, - 23884, - 23888, - 23860, - 23879, - 24061, - 24133, - 24125, - 24128, - 24131, - 24190, - 24266, - 24257, - 24258, - 24260, - 24380, - 24429, - 24489, - 24490, - 24488, - 24785, - 24801, - 24754, - 24758, - 24800, - 24860, - 24867, - 24826, - 24853, - 24816, - 24827, - 24820, - 24936, - 24817, - 24846, - 24822, - 24841, - 24832, - 24850, - 25119, - 25161, - 25507, - 25484, - 25551, - 25536, - 25577, - 25545, - 25542, - 25549, - 25554, - 25571, - 25552, - 25569, - 25558, - 25581, - 25582, - 25462, - 25588, - 25578, - 25563, - 25682, - 25562, - 25593, - 25950, - 25958, - 25954, - 25955, - 26001, - 26000, - 26031, - 26222, - 26224, - 26228, - 26230, - 26223, - 26257, - 26234, - 26238, - 26231, - 26366, - 26367, - 26399, - 26397, - 26874, - 26837, - 26848, - 26840, - 26839, - 26885, - 26847, - 26869, - 26862, - 26855, - 26873, - 26834, - 26866, - 26851, - 26827, - 26829, - 26893, - 26898, - 26894, - 26825, - 26842, - 26990, - 26875, - 27454, - 27450, - 27453, - 27544, - 27542, - 27580, - 27631, - 27694, - 27695, - 27692, - 28207, - 28216, - 28244, - 28193, - 28210, - 28263, - 28234, - 28192, - 28197, - 28195, - 28187, - 28251, - 28248, - 28196, - 28246, - 28270, - 28205, - 28198, - 28271, - 28212, - 28237, - 28218, - 28204, - 28227, - 28189, - 28222, - 28363, - 28297, - 28185, - 28238, - 28259, - 28228, - 28274, - 28265, - 28255, - 28953, - 28954, - 28966, - 28976, - 28961, - 28982, - 29038, - 28956, - 29260, - 29316, - 29312, - 29494, - 29477, - 29492, - 29481, - 29754, - 29738, - 29747, - 29730, - 29733, - 29749, - 29750, - 29748, - 29743, - 29723, - 29734, - 29736, - 29989, - 29990, - 30059, - 30058, - 30178, - 30171, - 30179, - 30169, - 30168, - 30174, - 30176, - 30331, - 30332, - 30358, - 30355, - 30388, - 30428, - 30543, - 30701, - 30813, - 30828, - 30831, - 31245, - 31240, - 31243, - 31237, - 31232, - 31384, - 31383, - 31382, - 31461, - 31459, - 31561, - 31574, - 31558, - 31568, - 31570, - 31572, - 31565, - 31563, - 31567, - 31569, - 31903, - 31909, - 32094, - 32080, - 32104, - 32085, - 32043, - 32110, - 32114, - 32097, - 32102, - 32098, - 32112, - 32115, - 21892, - 32724, - 32725, - 32779, - 32850, - 32901, - 33109, - 33108, - 33099, - 33105, - 33102, - 33081, - 33094, - 33086, - 33100, - 33107, - 33140, - 33298, - 33308, - 33769, - 33795, - 33784, - 33805, - 33760, - 33733, - 33803, - 33729, - 33775, - 33777, - 33780, - 33879, - 33802, - 33776, - 33804, - 33740, - 33789, - 33778, - 33738, - 33848, - 33806, - 33796, - 33756, - 33799, - 33748, - 33759, - 34395, - 34527, - 34521, - 34541, - 34516, - 34523, - 34532, - 34512, - 34526, - 34903, - 35009, - 35010, - 34993, - 35203, - 35222, - 35387, - 35424, - 35413, - 35422, - 35388, - 35393, - 35412, - 35419, - 35408, - 35398, - 35380, - 35386, - 35382, - 35414, - 35937, - 35970, - 36015, - 36028, - 36019, - 36029, - 36033, - 36027, - 36032, - 36020, - 36023, - 36022, - 36031, - 36024, - 36234, - 36229, - 36225, - 36302, - 36317, - 36299, - 36314, - 36305, - 36300, - 36315, - 36294, - 36603, - 36600, - 36604, - 36764, - 36910, - 36917, - 36913, - 36920, - 36914, - 36918, - 37122, - 37109, - 37129, - 37118, - 37219, - 37221, - 37327, - 37396, - 37397, - 37411, - 37385, - 37406, - 37389, - 37392, - 37383, - 37393, - 38292, - 38287, - 38283, - 38289, - 38291, - 38290, - 38286, - 38538, - 38542, - 38539, - 38525, - 38533, - 38534, - 38541, - 38514, - 38532, - 38593, - 38597, - 38596, - 38598, - 38599, - 38639, - 38642, - 38860, - 38917, - 38918, - 38920, - 39143, - 39146, - 39151, - 39145, - 39154, - 39149, - 39342, - 39341, - 40643, - 40653, - 40657, - 20098, - 20653, - 20661, - 20658, - 20659, - 20677, - 20670, - 20652, - 20663, - 20667, - 20655, - 20679, - 21119, - 21111, - 21117, - 21215, - 21222, - 21220, - 21218, - 21219, - 21295, - 21983, - 21992, - 21971, - 21990, - 21966, - 21980, - 21959, - 21969, - 21987, - 21988, - 21999, - 21978, - 21985, - 21957, - 21958, - 21989, - 21961, - 22290, - 22291, - 22622, - 22609, - 22616, - 22615, - 22618, - 22612, - 22635, - 22604, - 22637, - 22602, - 22626, - 22610, - 22603, - 22887, - 23233, - 23241, - 23244, - 23230, - 23229, - 23228, - 23219, - 23234, - 23218, - 23913, - 23919, - 24140, - 24185, - 24265, - 24264, - 24338, - 24409, - 24492, - 24494, - 24858, - 24847, - 24904, - 24863, - 24819, - 24859, - 24825, - 24833, - 24840, - 24910, - 24908, - 24900, - 24909, - 24894, - 24884, - 24871, - 24845, - 24838, - 24887, - 25121, - 25122, - 25619, - 25662, - 25630, - 25642, - 25645, - 25661, - 25644, - 25615, - 25628, - 25620, - 25613, - 25654, - 25622, - 25623, - 25606, - 25964, - 26015, - 26032, - 26263, - 26249, - 26247, - 26248, - 26262, - 26244, - 26264, - 26253, - 26371, - 27028, - 26989, - 26970, - 26999, - 26976, - 26964, - 26997, - 26928, - 27010, - 26954, - 26984, - 26987, - 26974, - 26963, - 27001, - 27014, - 26973, - 26979, - 26971, - 27463, - 27506, - 27584, - 27583, - 27603, - 27645, - 28322, - 28335, - 28371, - 28342, - 28354, - 28304, - 28317, - 28359, - 28357, - 28325, - 28312, - 28348, - 28346, - 28331, - 28369, - 28310, - 28316, - 28356, - 28372, - 28330, - 28327, - 28340, - 29006, - 29017, - 29033, - 29028, - 29001, - 29031, - 29020, - 29036, - 29030, - 29004, - 29029, - 29022, - 28998, - 29032, - 29014, - 29242, - 29266, - 29495, - 29509, - 29503, - 29502, - 29807, - 29786, - 29781, - 29791, - 29790, - 29761, - 29759, - 29785, - 29787, - 29788, - 30070, - 30072, - 30208, - 30192, - 30209, - 30194, - 30193, - 30202, - 30207, - 30196, - 30195, - 30430, - 30431, - 30555, - 30571, - 30566, - 30558, - 30563, - 30585, - 30570, - 30572, - 30556, - 30565, - 30568, - 30562, - 30702, - 30862, - 30896, - 30871, - 30872, - 30860, - 30857, - 30844, - 30865, - 30867, - 30847, - 31098, - 31103, - 31105, - 33836, - 31165, - 31260, - 31258, - 31264, - 31252, - 31263, - 31262, - 31391, - 31392, - 31607, - 31680, - 31584, - 31598, - 31591, - 31921, - 31923, - 31925, - 32147, - 32121, - 32145, - 32129, - 32143, - 32091, - 32622, - 32617, - 32618, - 32626, - 32681, - 32680, - 32676, - 32854, - 32856, - 32902, - 32900, - 33137, - 33136, - 33144, - 33125, - 33134, - 33139, - 33131, - 33145, - 33146, - 33126, - 33285, - 33351, - 33922, - 33911, - 33853, - 33841, - 33909, - 33894, - 33899, - 33865, - 33900, - 33883, - 33852, - 33845, - 33889, - 33891, - 33897, - 33901, - 33862, - 34398, - 34396, - 34399, - 34553, - 34579, - 34568, - 34567, - 34560, - 34558, - 34555, - 34562, - 34563, - 34566, - 34570, - 34905, - 35039, - 35028, - 35033, - 35036, - 35032, - 35037, - 35041, - 35018, - 35029, - 35026, - 35228, - 35299, - 35435, - 35442, - 35443, - 35430, - 35433, - 35440, - 35463, - 35452, - 35427, - 35488, - 35441, - 35461, - 35437, - 35426, - 35438, - 35436, - 35449, - 35451, - 35390, - 35432, - 35938, - 35978, - 35977, - 36042, - 36039, - 36040, - 36036, - 36018, - 36035, - 36034, - 36037, - 36321, - 36319, - 36328, - 36335, - 36339, - 36346, - 36330, - 36324, - 36326, - 36530, - 36611, - 36617, - 36606, - 36618, - 36767, - 36786, - 36939, - 36938, - 36947, - 36930, - 36948, - 36924, - 36949, - 36944, - 36935, - 36943, - 36942, - 36941, - 36945, - 36926, - 36929, - 37138, - 37143, - 37228, - 37226, - 37225, - 37321, - 37431, - 37463, - 37432, - 37437, - 37440, - 37438, - 37467, - 37451, - 37476, - 37457, - 37428, - 37449, - 37453, - 37445, - 37433, - 37439, - 37466, - 38296, - 38552, - 38548, - 38549, - 38605, - 38603, - 38601, - 38602, - 38647, - 38651, - 38649, - 38646, - 38742, - 38772, - 38774, - 38928, - 38929, - 38931, - 38922, - 38930, - 38924, - 39164, - 39156, - 39165, - 39166, - 39347, - 39345, - 39348, - 39649, - 40169, - 40578, - 40718, - 40723, - 40736, - 20711, - 20718, - 20709, - 20694, - 20717, - 20698, - 20693, - 20687, - 20689, - 20721, - 20686, - 20713, - 20834, - 20979, - 21123, - 21122, - 21297, - 21421, - 22014, - 22016, - 22043, - 22039, - 22013, - 22036, - 22022, - 22025, - 22029, - 22030, - 22007, - 22038, - 22047, - 22024, - 22032, - 22006, - 22296, - 22294, - 22645, - 22654, - 22659, - 22675, - 22666, - 22649, - 22661, - 22653, - 22781, - 22821, - 22818, - 22820, - 22890, - 22889, - 23265, - 23270, - 23273, - 23255, - 23254, - 23256, - 23267, - 23413, - 23518, - 23527, - 23521, - 23525, - 23526, - 23528, - 23522, - 23524, - 23519, - 23565, - 23650, - 23940, - 23943, - 24155, - 24163, - 24149, - 24151, - 24148, - 24275, - 24278, - 24330, - 24390, - 24432, - 24505, - 24903, - 24895, - 24907, - 24951, - 24930, - 24931, - 24927, - 24922, - 24920, - 24949, - 25130, - 25735, - 25688, - 25684, - 25764, - 25720, - 25695, - 25722, - 25681, - 25703, - 25652, - 25709, - 25723, - 25970, - 26017, - 26071, - 26070, - 26274, - 26280, - 26269, - 27036, - 27048, - 27029, - 27073, - 27054, - 27091, - 27083, - 27035, - 27063, - 27067, - 27051, - 27060, - 27088, - 27085, - 27053, - 27084, - 27046, - 27075, - 27043, - 27465, - 27468, - 27699, - 28467, - 28436, - 28414, - 28435, - 28404, - 28457, - 28478, - 28448, - 28460, - 28431, - 28418, - 28450, - 28415, - 28399, - 28422, - 28465, - 28472, - 28466, - 28451, - 28437, - 28459, - 28463, - 28552, - 28458, - 28396, - 28417, - 28402, - 28364, - 28407, - 29076, - 29081, - 29053, - 29066, - 29060, - 29074, - 29246, - 29330, - 29334, - 29508, - 29520, - 29796, - 29795, - 29802, - 29808, - 29805, - 29956, - 30097, - 30247, - 30221, - 30219, - 30217, - 30227, - 30433, - 30435, - 30596, - 30589, - 30591, - 30561, - 30913, - 30879, - 30887, - 30899, - 30889, - 30883, - 31118, - 31119, - 31117, - 31278, - 31281, - 31402, - 31401, - 31469, - 31471, - 31649, - 31637, - 31627, - 31605, - 31639, - 31645, - 31636, - 31631, - 31672, - 31623, - 31620, - 31929, - 31933, - 31934, - 32187, - 32176, - 32156, - 32189, - 32190, - 32160, - 32202, - 32180, - 32178, - 32177, - 32186, - 32162, - 32191, - 32181, - 32184, - 32173, - 32210, - 32199, - 32172, - 32624, - 32736, - 32737, - 32735, - 32862, - 32858, - 32903, - 33104, - 33152, - 33167, - 33160, - 33162, - 33151, - 33154, - 33255, - 33274, - 33287, - 33300, - 33310, - 33355, - 33993, - 33983, - 33990, - 33988, - 33945, - 33950, - 33970, - 33948, - 33995, - 33976, - 33984, - 34003, - 33936, - 33980, - 34001, - 33994, - 34623, - 34588, - 34619, - 34594, - 34597, - 34612, - 34584, - 34645, - 34615, - 34601, - 35059, - 35074, - 35060, - 35065, - 35064, - 35069, - 35048, - 35098, - 35055, - 35494, - 35468, - 35486, - 35491, - 35469, - 35489, - 35475, - 35492, - 35498, - 35493, - 35496, - 35480, - 35473, - 35482, - 35495, - 35946, - 35981, - 35980, - 36051, - 36049, - 36050, - 36203, - 36249, - 36245, - 36348, - 36628, - 36626, - 36629, - 36627, - 36771, - 36960, - 36952, - 36956, - 36963, - 36953, - 36958, - 36962, - 36957, - 36955, - 37145, - 37144, - 37150, - 37237, - 37240, - 37239, - 37236, - 37496, - 37504, - 37509, - 37528, - 37526, - 37499, - 37523, - 37532, - 37544, - 37500, - 37521, - 38305, - 38312, - 38313, - 38307, - 38309, - 38308, - 38553, - 38556, - 38555, - 38604, - 38610, - 38656, - 38780, - 38789, - 38902, - 38935, - 38936, - 39087, - 39089, - 39171, - 39173, - 39180, - 39177, - 39361, - 39599, - 39600, - 39654, - 39745, - 39746, - 40180, - 40182, - 40179, - 40636, - 40763, - 40778, - 20740, - 20736, - 20731, - 20725, - 20729, - 20738, - 20744, - 20745, - 20741, - 20956, - 21127, - 21128, - 21129, - 21133, - 21130, - 21232, - 21426, - 22062, - 22075, - 22073, - 22066, - 22079, - 22068, - 22057, - 22099, - 22094, - 22103, - 22132, - 22070, - 22063, - 22064, - 22656, - 22687, - 22686, - 22707, - 22684, - 22702, - 22697, - 22694, - 22893, - 23305, - 23291, - 23307, - 23285, - 23308, - 23304, - 23534, - 23532, - 23529, - 23531, - 23652, - 23653, - 23965, - 23956, - 24162, - 24159, - 24161, - 24290, - 24282, - 24287, - 24285, - 24291, - 24288, - 24392, - 24433, - 24503, - 24501, - 24950, - 24935, - 24942, - 24925, - 24917, - 24962, - 24956, - 24944, - 24939, - 24958, - 24999, - 24976, - 25003, - 24974, - 25004, - 24986, - 24996, - 24980, - 25006, - 25134, - 25705, - 25711, - 25721, - 25758, - 25778, - 25736, - 25744, - 25776, - 25765, - 25747, - 25749, - 25769, - 25746, - 25774, - 25773, - 25771, - 25754, - 25772, - 25753, - 25762, - 25779, - 25973, - 25975, - 25976, - 26286, - 26283, - 26292, - 26289, - 27171, - 27167, - 27112, - 27137, - 27166, - 27161, - 27133, - 27169, - 27155, - 27146, - 27123, - 27138, - 27141, - 27117, - 27153, - 27472, - 27470, - 27556, - 27589, - 27590, - 28479, - 28540, - 28548, - 28497, - 28518, - 28500, - 28550, - 28525, - 28507, - 28536, - 28526, - 28558, - 28538, - 28528, - 28516, - 28567, - 28504, - 28373, - 28527, - 28512, - 28511, - 29087, - 29100, - 29105, - 29096, - 29270, - 29339, - 29518, - 29527, - 29801, - 29835, - 29827, - 29822, - 29824, - 30079, - 30240, - 30249, - 30239, - 30244, - 30246, - 30241, - 30242, - 30362, - 30394, - 30436, - 30606, - 30599, - 30604, - 30609, - 30603, - 30923, - 30917, - 30906, - 30922, - 30910, - 30933, - 30908, - 30928, - 31295, - 31292, - 31296, - 31293, - 31287, - 31291, - 31407, - 31406, - 31661, - 31665, - 31684, - 31668, - 31686, - 31687, - 31681, - 31648, - 31692, - 31946, - 32224, - 32244, - 32239, - 32251, - 32216, - 32236, - 32221, - 32232, - 32227, - 32218, - 32222, - 32233, - 32158, - 32217, - 32242, - 32249, - 32629, - 32631, - 32687, - 32745, - 32806, - 33179, - 33180, - 33181, - 33184, - 33178, - 33176, - 34071, - 34109, - 34074, - 34030, - 34092, - 34093, - 34067, - 34065, - 34083, - 34081, - 34068, - 34028, - 34085, - 34047, - 34054, - 34690, - 34676, - 34678, - 34656, - 34662, - 34680, - 34664, - 34649, - 34647, - 34636, - 34643, - 34907, - 34909, - 35088, - 35079, - 35090, - 35091, - 35093, - 35082, - 35516, - 35538, - 35527, - 35524, - 35477, - 35531, - 35576, - 35506, - 35529, - 35522, - 35519, - 35504, - 35542, - 35533, - 35510, - 35513, - 35547, - 35916, - 35918, - 35948, - 36064, - 36062, - 36070, - 36068, - 36076, - 36077, - 36066, - 36067, - 36060, - 36074, - 36065, - 36205, - 36255, - 36259, - 36395, - 36368, - 36381, - 36386, - 36367, - 36393, - 36383, - 36385, - 36382, - 36538, - 36637, - 36635, - 36639, - 36649, - 36646, - 36650, - 36636, - 36638, - 36645, - 36969, - 36974, - 36968, - 36973, - 36983, - 37168, - 37165, - 37159, - 37169, - 37255, - 37257, - 37259, - 37251, - 37573, - 37563, - 37559, - 37610, - 37548, - 37604, - 37569, - 37555, - 37564, - 37586, - 37575, - 37616, - 37554, - 38317, - 38321, - 38660, - 38662, - 38663, - 38665, - 38752, - 38797, - 38795, - 38799, - 38945, - 38955, - 38940, - 39091, - 39178, - 39187, - 39186, - 39192, - 39389, - 39376, - 39391, - 39387, - 39377, - 39381, - 39378, - 39385, - 39607, - 39662, - 39663, - 39719, - 39749, - 39748, - 39799, - 39791, - 40198, - 40201, - 40195, - 40617, - 40638, - 40654, - 22696, - 40786, - 20754, - 20760, - 20756, - 20752, - 20757, - 20864, - 20906, - 20957, - 21137, - 21139, - 21235, - 22105, - 22123, - 22137, - 22121, - 22116, - 22136, - 22122, - 22120, - 22117, - 22129, - 22127, - 22124, - 22114, - 22134, - 22721, - 22718, - 22727, - 22725, - 22894, - 23325, - 23348, - 23416, - 23536, - 23566, - 24394, - 25010, - 24977, - 25001, - 24970, - 25037, - 25014, - 25022, - 25034, - 25032, - 25136, - 25797, - 25793, - 25803, - 25787, - 25788, - 25818, - 25796, - 25799, - 25794, - 25805, - 25791, - 25810, - 25812, - 25790, - 25972, - 26310, - 26313, - 26297, - 26308, - 26311, - 26296, - 27197, - 27192, - 27194, - 27225, - 27243, - 27224, - 27193, - 27204, - 27234, - 27233, - 27211, - 27207, - 27189, - 27231, - 27208, - 27481, - 27511, - 27653, - 28610, - 28593, - 28577, - 28611, - 28580, - 28609, - 28583, - 28595, - 28608, - 28601, - 28598, - 28582, - 28576, - 28596, - 29118, - 29129, - 29136, - 29138, - 29128, - 29141, - 29113, - 29134, - 29145, - 29148, - 29123, - 29124, - 29544, - 29852, - 29859, - 29848, - 29855, - 29854, - 29922, - 29964, - 29965, - 30260, - 30264, - 30266, - 30439, - 30437, - 30624, - 30622, - 30623, - 30629, - 30952, - 30938, - 30956, - 30951, - 31142, - 31309, - 31310, - 31302, - 31308, - 31307, - 31418, - 31705, - 31761, - 31689, - 31716, - 31707, - 31713, - 31721, - 31718, - 31957, - 31958, - 32266, - 32273, - 32264, - 32283, - 32291, - 32286, - 32285, - 32265, - 32272, - 32633, - 32690, - 32752, - 32753, - 32750, - 32808, - 33203, - 33193, - 33192, - 33275, - 33288, - 33368, - 33369, - 34122, - 34137, - 34120, - 34152, - 34153, - 34115, - 34121, - 34157, - 34154, - 34142, - 34691, - 34719, - 34718, - 34722, - 34701, - 34913, - 35114, - 35122, - 35109, - 35115, - 35105, - 35242, - 35238, - 35558, - 35578, - 35563, - 35569, - 35584, - 35548, - 35559, - 35566, - 35582, - 35585, - 35586, - 35575, - 35565, - 35571, - 35574, - 35580, - 35947, - 35949, - 35987, - 36084, - 36420, - 36401, - 36404, - 36418, - 36409, - 36405, - 36667, - 36655, - 36664, - 36659, - 36776, - 36774, - 36981, - 36980, - 36984, - 36978, - 36988, - 36986, - 37172, - 37266, - 37664, - 37686, - 37624, - 37683, - 37679, - 37666, - 37628, - 37675, - 37636, - 37658, - 37648, - 37670, - 37665, - 37653, - 37678, - 37657, - 38331, - 38567, - 38568, - 38570, - 38613, - 38670, - 38673, - 38678, - 38669, - 38675, - 38671, - 38747, - 38748, - 38758, - 38808, - 38960, - 38968, - 38971, - 38967, - 38957, - 38969, - 38948, - 39184, - 39208, - 39198, - 39195, - 39201, - 39194, - 39405, - 39394, - 39409, - 39608, - 39612, - 39675, - 39661, - 39720, - 39825, - 40213, - 40227, - 40230, - 40232, - 40210, - 40219, - 40664, - 40660, - 40845, - 40860, - 20778, - 20767, - 20769, - 20786, - 21237, - 22158, - 22144, - 22160, - 22149, - 22151, - 22159, - 22741, - 22739, - 22737, - 22734, - 23344, - 23338, - 23332, - 23418, - 23607, - 23656, - 23996, - 23994, - 23997, - 23992, - 24171, - 24396, - 24509, - 25033, - 25026, - 25031, - 25062, - 25035, - 25138, - 25140, - 25806, - 25802, - 25816, - 25824, - 25840, - 25830, - 25836, - 25841, - 25826, - 25837, - 25986, - 25987, - 26329, - 26326, - 27264, - 27284, - 27268, - 27298, - 27292, - 27355, - 27299, - 27262, - 27287, - 27280, - 27296, - 27484, - 27566, - 27610, - 27656, - 28632, - 28657, - 28639, - 28640, - 28635, - 28644, - 28651, - 28655, - 28544, - 28652, - 28641, - 28649, - 28629, - 28654, - 28656, - 29159, - 29151, - 29166, - 29158, - 29157, - 29165, - 29164, - 29172, - 29152, - 29237, - 29254, - 29552, - 29554, - 29865, - 29872, - 29862, - 29864, - 30278, - 30274, - 30284, - 30442, - 30643, - 30634, - 30640, - 30636, - 30631, - 30637, - 30703, - 30967, - 30970, - 30964, - 30959, - 30977, - 31143, - 31146, - 31319, - 31423, - 31751, - 31757, - 31742, - 31735, - 31756, - 31712, - 31968, - 31964, - 31966, - 31970, - 31967, - 31961, - 31965, - 32302, - 32318, - 32326, - 32311, - 32306, - 32323, - 32299, - 32317, - 32305, - 32325, - 32321, - 32308, - 32313, - 32328, - 32309, - 32319, - 32303, - 32580, - 32755, - 32764, - 32881, - 32882, - 32880, - 32879, - 32883, - 33222, - 33219, - 33210, - 33218, - 33216, - 33215, - 33213, - 33225, - 33214, - 33256, - 33289, - 33393, - 34218, - 34180, - 34174, - 34204, - 34193, - 34196, - 34223, - 34203, - 34183, - 34216, - 34186, - 34407, - 34752, - 34769, - 34739, - 34770, - 34758, - 34731, - 34747, - 34746, - 34760, - 34763, - 35131, - 35126, - 35140, - 35128, - 35133, - 35244, - 35598, - 35607, - 35609, - 35611, - 35594, - 35616, - 35613, - 35588, - 35600, - 35905, - 35903, - 35955, - 36090, - 36093, - 36092, - 36088, - 36091, - 36264, - 36425, - 36427, - 36424, - 36426, - 36676, - 36670, - 36674, - 36677, - 36671, - 36991, - 36989, - 36996, - 36993, - 36994, - 36992, - 37177, - 37283, - 37278, - 37276, - 37709, - 37762, - 37672, - 37749, - 37706, - 37733, - 37707, - 37656, - 37758, - 37740, - 37723, - 37744, - 37722, - 37716, - 38346, - 38347, - 38348, - 38344, - 38342, - 38577, - 38584, - 38614, - 38684, - 38686, - 38816, - 38867, - 38982, - 39094, - 39221, - 39425, - 39423, - 39854, - 39851, - 39850, - 39853, - 40251, - 40255, - 40587, - 40655, - 40670, - 40668, - 40669, - 40667, - 40766, - 40779, - 21474, - 22165, - 22190, - 22745, - 22744, - 23352, - 24413, - 25059, - 25139, - 25844, - 25842, - 25854, - 25862, - 25850, - 25851, - 25847, - 26039, - 26332, - 26406, - 27315, - 27308, - 27331, - 27323, - 27320, - 27330, - 27310, - 27311, - 27487, - 27512, - 27567, - 28681, - 28683, - 28670, - 28678, - 28666, - 28689, - 28687, - 29179, - 29180, - 29182, - 29176, - 29559, - 29557, - 29863, - 29887, - 29973, - 30294, - 30296, - 30290, - 30653, - 30655, - 30651, - 30652, - 30990, - 31150, - 31329, - 31330, - 31328, - 31428, - 31429, - 31787, - 31783, - 31786, - 31774, - 31779, - 31777, - 31975, - 32340, - 32341, - 32350, - 32346, - 32353, - 32338, - 32345, - 32584, - 32761, - 32763, - 32887, - 32886, - 33229, - 33231, - 33290, - 34255, - 34217, - 34253, - 34256, - 34249, - 34224, - 34234, - 34233, - 34214, - 34799, - 34796, - 34802, - 34784, - 35206, - 35250, - 35316, - 35624, - 35641, - 35628, - 35627, - 35920, - 36101, - 36441, - 36451, - 36454, - 36452, - 36447, - 36437, - 36544, - 36681, - 36685, - 36999, - 36995, - 37000, - 37291, - 37292, - 37328, - 37780, - 37770, - 37782, - 37794, - 37811, - 37806, - 37804, - 37808, - 37784, - 37786, - 37783, - 38356, - 38358, - 38352, - 38357, - 38626, - 38620, - 38617, - 38619, - 38622, - 38692, - 38819, - 38822, - 38829, - 38905, - 38989, - 38991, - 38988, - 38990, - 38995, - 39098, - 39230, - 39231, - 39229, - 39214, - 39333, - 39438, - 39617, - 39683, - 39686, - 39759, - 39758, - 39757, - 39882, - 39881, - 39933, - 39880, - 39872, - 40273, - 40285, - 40288, - 40672, - 40725, - 40748, - 20787, - 22181, - 22750, - 22751, - 22754, - 23541, - 40848, - 24300, - 25074, - 25079, - 25078, - 25077, - 25856, - 25871, - 26336, - 26333, - 27365, - 27357, - 27354, - 27347, - 28699, - 28703, - 28712, - 28698, - 28701, - 28693, - 28696, - 29190, - 29197, - 29272, - 29346, - 29560, - 29562, - 29885, - 29898, - 29923, - 30087, - 30086, - 30303, - 30305, - 30663, - 31001, - 31153, - 31339, - 31337, - 31806, - 31807, - 31800, - 31805, - 31799, - 31808, - 32363, - 32365, - 32377, - 32361, - 32362, - 32645, - 32371, - 32694, - 32697, - 32696, - 33240, - 34281, - 34269, - 34282, - 34261, - 34276, - 34277, - 34295, - 34811, - 34821, - 34829, - 34809, - 34814, - 35168, - 35167, - 35158, - 35166, - 35649, - 35676, - 35672, - 35657, - 35674, - 35662, - 35663, - 35654, - 35673, - 36104, - 36106, - 36476, - 36466, - 36487, - 36470, - 36460, - 36474, - 36468, - 36692, - 36686, - 36781, - 37002, - 37003, - 37297, - 37294, - 37857, - 37841, - 37855, - 37827, - 37832, - 37852, - 37853, - 37846, - 37858, - 37837, - 37848, - 37860, - 37847, - 37864, - 38364, - 38580, - 38627, - 38698, - 38695, - 38753, - 38876, - 38907, - 39006, - 39000, - 39003, - 39100, - 39237, - 39241, - 39446, - 39449, - 39693, - 39912, - 39911, - 39894, - 39899, - 40329, - 40289, - 40306, - 40298, - 40300, - 40594, - 40599, - 40595, - 40628, - 21240, - 22184, - 22199, - 22198, - 22196, - 22204, - 22756, - 23360, - 23363, - 23421, - 23542, - 24009, - 25080, - 25082, - 25880, - 25876, - 25881, - 26342, - 26407, - 27372, - 28734, - 28720, - 28722, - 29200, - 29563, - 29903, - 30306, - 30309, - 31014, - 31018, - 31020, - 31019, - 31431, - 31478, - 31820, - 31811, - 31821, - 31983, - 31984, - 36782, - 32381, - 32380, - 32386, - 32588, - 32768, - 33242, - 33382, - 34299, - 34297, - 34321, - 34298, - 34310, - 34315, - 34311, - 34314, - 34836, - 34837, - 35172, - 35258, - 35320, - 35696, - 35692, - 35686, - 35695, - 35679, - 35691, - 36111, - 36109, - 36489, - 36481, - 36485, - 36482, - 37300, - 37323, - 37912, - 37891, - 37885, - 38369, - 38704, - 39108, - 39250, - 39249, - 39336, - 39467, - 39472, - 39479, - 39477, - 39955, - 39949, - 40569, - 40629, - 40680, - 40751, - 40799, - 40803, - 40801, - 20791, - 20792, - 22209, - 22208, - 22210, - 22804, - 23660, - 24013, - 25084, - 25086, - 25885, - 25884, - 26005, - 26345, - 27387, - 27396, - 27386, - 27570, - 28748, - 29211, - 29351, - 29910, - 29908, - 30313, - 30675, - 31824, - 32399, - 32396, - 32700, - 34327, - 34349, - 34330, - 34851, - 34850, - 34849, - 34847, - 35178, - 35180, - 35261, - 35700, - 35703, - 35709, - 36115, - 36490, - 36493, - 36491, - 36703, - 36783, - 37306, - 37934, - 37939, - 37941, - 37946, - 37944, - 37938, - 37931, - 38370, - 38712, - 38713, - 38706, - 38911, - 39015, - 39013, - 39255, - 39493, - 39491, - 39488, - 39486, - 39631, - 39764, - 39761, - 39981, - 39973, - 40367, - 40372, - 40386, - 40376, - 40605, - 40687, - 40729, - 40796, - 40806, - 40807, - 20796, - 20795, - 22216, - 22218, - 22217, - 23423, - 24020, - 24018, - 24398, - 25087, - 25892, - 27402, - 27489, - 28753, - 28760, - 29568, - 29924, - 30090, - 30318, - 30316, - 31155, - 31840, - 31839, - 32894, - 32893, - 33247, - 35186, - 35183, - 35324, - 35712, - 36118, - 36119, - 36497, - 36499, - 36705, - 37192, - 37956, - 37969, - 37970, - 38717, - 38718, - 38851, - 38849, - 39019, - 39253, - 39509, - 39501, - 39634, - 39706, - 40009, - 39985, - 39998, - 39995, - 40403, - 40407, - 40756, - 40812, - 40810, - 40852, - 22220, - 24022, - 25088, - 25891, - 25899, - 25898, - 26348, - 27408, - 29914, - 31434, - 31844, - 31843, - 31845, - 32403, - 32406, - 32404, - 33250, - 34360, - 34367, - 34865, - 35722, - 37008, - 37007, - 37987, - 37984, - 37988, - 38760, - 39023, - 39260, - 39514, - 39515, - 39511, - 39635, - 39636, - 39633, - 40020, - 40023, - 40022, - 40421, - 40607, - 40692, - 22225, - 22761, - 25900, - 28766, - 30321, - 30322, - 30679, - 32592, - 32648, - 34870, - 34873, - 34914, - 35731, - 35730, - 35734, - 33399, - 36123, - 37312, - 37994, - 38722, - 38728, - 38724, - 38854, - 39024, - 39519, - 39714, - 39768, - 40031, - 40441, - 40442, - 40572, - 40573, - 40711, - 40823, - 40818, - 24307, - 27414, - 28771, - 31852, - 31854, - 34875, - 35264, - 36513, - 37313, - 38002, - 38000, - 39025, - 39262, - 39638, - 39715, - 40652, - 28772, - 30682, - 35738, - 38007, - 38857, - 39522, - 39525, - 32412, - 35740, - 36522, - 37317, - 38013, - 38014, - 38012, - 40055, - 40056, - 40695, - 35924, - 38015, - 40474, - 29224, - 39530, - 39729, - 40475, - 40478, - 31858, - 9312, - 9313, - 9314, - 9315, - 9316, - 9317, - 9318, - 9319, - 9320, - 9321, - 9332, - 9333, - 9334, - 9335, - 9336, - 9337, - 9338, - 9339, - 9340, - 9341, - 8560, - 8561, - 8562, - 8563, - 8564, - 8565, - 8566, - 8567, - 8568, - 8569, - 20022, - 20031, - 20101, - 20128, - 20866, - 20886, - 20907, - 21241, - 21304, - 21353, - 21430, - 22794, - 23424, - 24027, - 12083, - 24191, - 24308, - 24400, - 24417, - 25908, - 26080, - 30098, - 30326, - 36789, - 38582, - 168, - 710, - 12541, - 12542, - 12445, - 12446, - 12291, - 20189, - 12293, - 12294, - 12295, - 12540, - 65339, - 65341, - 10045, - 12353, - 12354, - 12355, - 12356, - 12357, - 12358, - 12359, - 12360, - 12361, - 12362, - 12363, - 12364, - 12365, - 12366, - 12367, - 12368, - 12369, - 12370, - 12371, - 12372, - 12373, - 12374, - 12375, - 12376, - 12377, - 12378, - 12379, - 12380, - 12381, - 12382, - 12383, - 12384, - 12385, - 12386, - 12387, - 12388, - 12389, - 12390, - 12391, - 12392, - 12393, - 12394, - 12395, - 12396, - 12397, - 12398, - 12399, - 12400, - 12401, - 12402, - 12403, - 12404, - 12405, - 12406, - 12407, - 12408, - 12409, - 12410, - 12411, - 12412, - 12413, - 12414, - 12415, - 12416, - 12417, - 12418, - 12419, - 12420, - 12421, - 12422, - 12423, - 12424, - 12425, - 12426, - 12427, - 12428, - 12429, - 12430, - 12431, - 12432, - 12433, - 12434, - 12435, - 12449, - 12450, - 12451, - 12452, - 12453, - 12454, - 12455, - 12456, - 12457, - 12458, - 12459, - 12460, - 12461, - 12462, - 12463, - 12464, - 12465, - 12466, - 12467, - 12468, - 12469, - 12470, - 12471, - 12472, - 12473, - 12474, - 12475, - 12476, - 12477, - 12478, - 12479, - 12480, - 12481, - 12482, - 12483, - 12484, - 12485, - 12486, - 12487, - 12488, - 12489, - 12490, - 12491, - 12492, - 12493, - 12494, - 12495, - 12496, - 12497, - 12498, - 12499, - 12500, - 12501, - 12502, - 12503, - 12504, - 12505, - 12506, - 12507, - 12508, - 12509, - 12510, - 12511, - 12512, - 12513, - 12514, - 12515, - 12516, - 12517, - 12518, - 12519, - 12520, - 12521, - 12522, - 12523, - 12524, - 12525, - 12526, - 12527, - 12528, - 12529, - 12530, - 12531, - 12532, - 12533, - 12534, - 1040, - 1041, - 1042, - 1043, - 1044, - 1045, - 1025, - 1046, - 1047, - 1048, - 1049, - 1050, - 1051, - 1052, - 1053, - 1054, - 1055, - 1056, - 1057, - 1058, - 1059, - 1060, - 1061, - 1062, - 1063, - 1064, - 1065, - 1066, - 1067, - 1068, - 1069, - 1070, - 1071, - 1072, - 1073, - 1074, - 1075, - 1076, - 1077, - 1105, - 1078, - 1079, - 1080, - 1081, - 1082, - 1083, - 1084, - 1085, - 1086, - 1087, - 1088, - 1089, - 1090, - 1091, - 1092, - 1093, - 1094, - 1095, - 1096, - 1097, - 1098, - 1099, - 1100, - 1101, - 1102, - 1103, - 8679, - 8632, - 8633, - 12751, - 131276, - 20058, - 131210, - 20994, - 17553, - 40880, - 20872, - 40881, - 161287, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 65506, - 65508, - 65287, - 65282, - 12849, - 8470, - 8481, - 12443, - 12444, - 11904, - 11908, - 11910, - 11911, - 11912, - 11914, - 11916, - 11917, - 11925, - 11932, - 11933, - 11941, - 11943, - 11946, - 11948, - 11950, - 11958, - 11964, - 11966, - 11974, - 11978, - 11980, - 11981, - 11983, - 11990, - 11991, - 11998, - 12003, - null, - null, - null, - 643, - 592, - 603, - 596, - 629, - 339, - 248, - 331, - 650, - 618, - 20034, - 20060, - 20981, - 21274, - 21378, - 19975, - 19980, - 20039, - 20109, - 22231, - 64012, - 23662, - 24435, - 19983, - 20871, - 19982, - 20014, - 20115, - 20162, - 20169, - 20168, - 20888, - 21244, - 21356, - 21433, - 22304, - 22787, - 22828, - 23568, - 24063, - 26081, - 27571, - 27596, - 27668, - 29247, - 20017, - 20028, - 20200, - 20188, - 20201, - 20193, - 20189, - 20186, - 21004, - 21276, - 21324, - 22306, - 22307, - 22807, - 22831, - 23425, - 23428, - 23570, - 23611, - 23668, - 23667, - 24068, - 24192, - 24194, - 24521, - 25097, - 25168, - 27669, - 27702, - 27715, - 27711, - 27707, - 29358, - 29360, - 29578, - 31160, - 32906, - 38430, - 20238, - 20248, - 20268, - 20213, - 20244, - 20209, - 20224, - 20215, - 20232, - 20253, - 20226, - 20229, - 20258, - 20243, - 20228, - 20212, - 20242, - 20913, - 21011, - 21001, - 21008, - 21158, - 21282, - 21279, - 21325, - 21386, - 21511, - 22241, - 22239, - 22318, - 22314, - 22324, - 22844, - 22912, - 22908, - 22917, - 22907, - 22910, - 22903, - 22911, - 23382, - 23573, - 23589, - 23676, - 23674, - 23675, - 23678, - 24031, - 24181, - 24196, - 24322, - 24346, - 24436, - 24533, - 24532, - 24527, - 25180, - 25182, - 25188, - 25185, - 25190, - 25186, - 25177, - 25184, - 25178, - 25189, - 26095, - 26094, - 26430, - 26425, - 26424, - 26427, - 26426, - 26431, - 26428, - 26419, - 27672, - 27718, - 27730, - 27740, - 27727, - 27722, - 27732, - 27723, - 27724, - 28785, - 29278, - 29364, - 29365, - 29582, - 29994, - 30335, - 31349, - 32593, - 33400, - 33404, - 33408, - 33405, - 33407, - 34381, - 35198, - 37017, - 37015, - 37016, - 37019, - 37012, - 38434, - 38436, - 38432, - 38435, - 20310, - 20283, - 20322, - 20297, - 20307, - 20324, - 20286, - 20327, - 20306, - 20319, - 20289, - 20312, - 20269, - 20275, - 20287, - 20321, - 20879, - 20921, - 21020, - 21022, - 21025, - 21165, - 21166, - 21257, - 21347, - 21362, - 21390, - 21391, - 21552, - 21559, - 21546, - 21588, - 21573, - 21529, - 21532, - 21541, - 21528, - 21565, - 21583, - 21569, - 21544, - 21540, - 21575, - 22254, - 22247, - 22245, - 22337, - 22341, - 22348, - 22345, - 22347, - 22354, - 22790, - 22848, - 22950, - 22936, - 22944, - 22935, - 22926, - 22946, - 22928, - 22927, - 22951, - 22945, - 23438, - 23442, - 23592, - 23594, - 23693, - 23695, - 23688, - 23691, - 23689, - 23698, - 23690, - 23686, - 23699, - 23701, - 24032, - 24074, - 24078, - 24203, - 24201, - 24204, - 24200, - 24205, - 24325, - 24349, - 24440, - 24438, - 24530, - 24529, - 24528, - 24557, - 24552, - 24558, - 24563, - 24545, - 24548, - 24547, - 24570, - 24559, - 24567, - 24571, - 24576, - 24564, - 25146, - 25219, - 25228, - 25230, - 25231, - 25236, - 25223, - 25201, - 25211, - 25210, - 25200, - 25217, - 25224, - 25207, - 25213, - 25202, - 25204, - 25911, - 26096, - 26100, - 26099, - 26098, - 26101, - 26437, - 26439, - 26457, - 26453, - 26444, - 26440, - 26461, - 26445, - 26458, - 26443, - 27600, - 27673, - 27674, - 27768, - 27751, - 27755, - 27780, - 27787, - 27791, - 27761, - 27759, - 27753, - 27802, - 27757, - 27783, - 27797, - 27804, - 27750, - 27763, - 27749, - 27771, - 27790, - 28788, - 28794, - 29283, - 29375, - 29373, - 29379, - 29382, - 29377, - 29370, - 29381, - 29589, - 29591, - 29587, - 29588, - 29586, - 30010, - 30009, - 30100, - 30101, - 30337, - 31037, - 32820, - 32917, - 32921, - 32912, - 32914, - 32924, - 33424, - 33423, - 33413, - 33422, - 33425, - 33427, - 33418, - 33411, - 33412, - 35960, - 36809, - 36799, - 37023, - 37025, - 37029, - 37022, - 37031, - 37024, - 38448, - 38440, - 38447, - 38445, - 20019, - 20376, - 20348, - 20357, - 20349, - 20352, - 20359, - 20342, - 20340, - 20361, - 20356, - 20343, - 20300, - 20375, - 20330, - 20378, - 20345, - 20353, - 20344, - 20368, - 20380, - 20372, - 20382, - 20370, - 20354, - 20373, - 20331, - 20334, - 20894, - 20924, - 20926, - 21045, - 21042, - 21043, - 21062, - 21041, - 21180, - 21258, - 21259, - 21308, - 21394, - 21396, - 21639, - 21631, - 21633, - 21649, - 21634, - 21640, - 21611, - 21626, - 21630, - 21605, - 21612, - 21620, - 21606, - 21645, - 21615, - 21601, - 21600, - 21656, - 21603, - 21607, - 21604, - 22263, - 22265, - 22383, - 22386, - 22381, - 22379, - 22385, - 22384, - 22390, - 22400, - 22389, - 22395, - 22387, - 22388, - 22370, - 22376, - 22397, - 22796, - 22853, - 22965, - 22970, - 22991, - 22990, - 22962, - 22988, - 22977, - 22966, - 22972, - 22979, - 22998, - 22961, - 22973, - 22976, - 22984, - 22964, - 22983, - 23394, - 23397, - 23443, - 23445, - 23620, - 23623, - 23726, - 23716, - 23712, - 23733, - 23727, - 23720, - 23724, - 23711, - 23715, - 23725, - 23714, - 23722, - 23719, - 23709, - 23717, - 23734, - 23728, - 23718, - 24087, - 24084, - 24089, - 24360, - 24354, - 24355, - 24356, - 24404, - 24450, - 24446, - 24445, - 24542, - 24549, - 24621, - 24614, - 24601, - 24626, - 24587, - 24628, - 24586, - 24599, - 24627, - 24602, - 24606, - 24620, - 24610, - 24589, - 24592, - 24622, - 24595, - 24593, - 24588, - 24585, - 24604, - 25108, - 25149, - 25261, - 25268, - 25297, - 25278, - 25258, - 25270, - 25290, - 25262, - 25267, - 25263, - 25275, - 25257, - 25264, - 25272, - 25917, - 26024, - 26043, - 26121, - 26108, - 26116, - 26130, - 26120, - 26107, - 26115, - 26123, - 26125, - 26117, - 26109, - 26129, - 26128, - 26358, - 26378, - 26501, - 26476, - 26510, - 26514, - 26486, - 26491, - 26520, - 26502, - 26500, - 26484, - 26509, - 26508, - 26490, - 26527, - 26513, - 26521, - 26499, - 26493, - 26497, - 26488, - 26489, - 26516, - 27429, - 27520, - 27518, - 27614, - 27677, - 27795, - 27884, - 27883, - 27886, - 27865, - 27830, - 27860, - 27821, - 27879, - 27831, - 27856, - 27842, - 27834, - 27843, - 27846, - 27885, - 27890, - 27858, - 27869, - 27828, - 27786, - 27805, - 27776, - 27870, - 27840, - 27952, - 27853, - 27847, - 27824, - 27897, - 27855, - 27881, - 27857, - 28820, - 28824, - 28805, - 28819, - 28806, - 28804, - 28817, - 28822, - 28802, - 28826, - 28803, - 29290, - 29398, - 29387, - 29400, - 29385, - 29404, - 29394, - 29396, - 29402, - 29388, - 29393, - 29604, - 29601, - 29613, - 29606, - 29602, - 29600, - 29612, - 29597, - 29917, - 29928, - 30015, - 30016, - 30014, - 30092, - 30104, - 30383, - 30451, - 30449, - 30448, - 30453, - 30712, - 30716, - 30713, - 30715, - 30714, - 30711, - 31042, - 31039, - 31173, - 31352, - 31355, - 31483, - 31861, - 31997, - 32821, - 32911, - 32942, - 32931, - 32952, - 32949, - 32941, - 33312, - 33440, - 33472, - 33451, - 33434, - 33432, - 33435, - 33461, - 33447, - 33454, - 33468, - 33438, - 33466, - 33460, - 33448, - 33441, - 33449, - 33474, - 33444, - 33475, - 33462, - 33442, - 34416, - 34415, - 34413, - 34414, - 35926, - 36818, - 36811, - 36819, - 36813, - 36822, - 36821, - 36823, - 37042, - 37044, - 37039, - 37043, - 37040, - 38457, - 38461, - 38460, - 38458, - 38467, - 20429, - 20421, - 20435, - 20402, - 20425, - 20427, - 20417, - 20436, - 20444, - 20441, - 20411, - 20403, - 20443, - 20423, - 20438, - 20410, - 20416, - 20409, - 20460, - 21060, - 21065, - 21184, - 21186, - 21309, - 21372, - 21399, - 21398, - 21401, - 21400, - 21690, - 21665, - 21677, - 21669, - 21711, - 21699, - 33549, - 21687, - 21678, - 21718, - 21686, - 21701, - 21702, - 21664, - 21616, - 21692, - 21666, - 21694, - 21618, - 21726, - 21680, - 22453, - 22430, - 22431, - 22436, - 22412, - 22423, - 22429, - 22427, - 22420, - 22424, - 22415, - 22425, - 22437, - 22426, - 22421, - 22772, - 22797, - 22867, - 23009, - 23006, - 23022, - 23040, - 23025, - 23005, - 23034, - 23037, - 23036, - 23030, - 23012, - 23026, - 23031, - 23003, - 23017, - 23027, - 23029, - 23008, - 23038, - 23028, - 23021, - 23464, - 23628, - 23760, - 23768, - 23756, - 23767, - 23755, - 23771, - 23774, - 23770, - 23753, - 23751, - 23754, - 23766, - 23763, - 23764, - 23759, - 23752, - 23750, - 23758, - 23775, - 23800, - 24057, - 24097, - 24098, - 24099, - 24096, - 24100, - 24240, - 24228, - 24226, - 24219, - 24227, - 24229, - 24327, - 24366, - 24406, - 24454, - 24631, - 24633, - 24660, - 24690, - 24670, - 24645, - 24659, - 24647, - 24649, - 24667, - 24652, - 24640, - 24642, - 24671, - 24612, - 24644, - 24664, - 24678, - 24686, - 25154, - 25155, - 25295, - 25357, - 25355, - 25333, - 25358, - 25347, - 25323, - 25337, - 25359, - 25356, - 25336, - 25334, - 25344, - 25363, - 25364, - 25338, - 25365, - 25339, - 25328, - 25921, - 25923, - 26026, - 26047, - 26166, - 26145, - 26162, - 26165, - 26140, - 26150, - 26146, - 26163, - 26155, - 26170, - 26141, - 26164, - 26169, - 26158, - 26383, - 26384, - 26561, - 26610, - 26568, - 26554, - 26588, - 26555, - 26616, - 26584, - 26560, - 26551, - 26565, - 26603, - 26596, - 26591, - 26549, - 26573, - 26547, - 26615, - 26614, - 26606, - 26595, - 26562, - 26553, - 26574, - 26599, - 26608, - 26546, - 26620, - 26566, - 26605, - 26572, - 26542, - 26598, - 26587, - 26618, - 26569, - 26570, - 26563, - 26602, - 26571, - 27432, - 27522, - 27524, - 27574, - 27606, - 27608, - 27616, - 27680, - 27681, - 27944, - 27956, - 27949, - 27935, - 27964, - 27967, - 27922, - 27914, - 27866, - 27955, - 27908, - 27929, - 27962, - 27930, - 27921, - 27904, - 27933, - 27970, - 27905, - 27928, - 27959, - 27907, - 27919, - 27968, - 27911, - 27936, - 27948, - 27912, - 27938, - 27913, - 27920, - 28855, - 28831, - 28862, - 28849, - 28848, - 28833, - 28852, - 28853, - 28841, - 29249, - 29257, - 29258, - 29292, - 29296, - 29299, - 29294, - 29386, - 29412, - 29416, - 29419, - 29407, - 29418, - 29414, - 29411, - 29573, - 29644, - 29634, - 29640, - 29637, - 29625, - 29622, - 29621, - 29620, - 29675, - 29631, - 29639, - 29630, - 29635, - 29638, - 29624, - 29643, - 29932, - 29934, - 29998, - 30023, - 30024, - 30119, - 30122, - 30329, - 30404, - 30472, - 30467, - 30468, - 30469, - 30474, - 30455, - 30459, - 30458, - 30695, - 30696, - 30726, - 30737, - 30738, - 30725, - 30736, - 30735, - 30734, - 30729, - 30723, - 30739, - 31050, - 31052, - 31051, - 31045, - 31044, - 31189, - 31181, - 31183, - 31190, - 31182, - 31360, - 31358, - 31441, - 31488, - 31489, - 31866, - 31864, - 31865, - 31871, - 31872, - 31873, - 32003, - 32008, - 32001, - 32600, - 32657, - 32653, - 32702, - 32775, - 32782, - 32783, - 32788, - 32823, - 32984, - 32967, - 32992, - 32977, - 32968, - 32962, - 32976, - 32965, - 32995, - 32985, - 32988, - 32970, - 32981, - 32969, - 32975, - 32983, - 32998, - 32973, - 33279, - 33313, - 33428, - 33497, - 33534, - 33529, - 33543, - 33512, - 33536, - 33493, - 33594, - 33515, - 33494, - 33524, - 33516, - 33505, - 33522, - 33525, - 33548, - 33531, - 33526, - 33520, - 33514, - 33508, - 33504, - 33530, - 33523, - 33517, - 34423, - 34420, - 34428, - 34419, - 34881, - 34894, - 34919, - 34922, - 34921, - 35283, - 35332, - 35335, - 36210, - 36835, - 36833, - 36846, - 36832, - 37105, - 37053, - 37055, - 37077, - 37061, - 37054, - 37063, - 37067, - 37064, - 37332, - 37331, - 38484, - 38479, - 38481, - 38483, - 38474, - 38478, - 20510, - 20485, - 20487, - 20499, - 20514, - 20528, - 20507, - 20469, - 20468, - 20531, - 20535, - 20524, - 20470, - 20471, - 20503, - 20508, - 20512, - 20519, - 20533, - 20527, - 20529, - 20494, - 20826, - 20884, - 20883, - 20938, - 20932, - 20933, - 20936, - 20942, - 21089, - 21082, - 21074, - 21086, - 21087, - 21077, - 21090, - 21197, - 21262, - 21406, - 21798, - 21730, - 21783, - 21778, - 21735, - 21747, - 21732, - 21786, - 21759, - 21764, - 21768, - 21739, - 21777, - 21765, - 21745, - 21770, - 21755, - 21751, - 21752, - 21728, - 21774, - 21763, - 21771, - 22273, - 22274, - 22476, - 22578, - 22485, - 22482, - 22458, - 22470, - 22461, - 22460, - 22456, - 22454, - 22463, - 22471, - 22480, - 22457, - 22465, - 22798, - 22858, - 23065, - 23062, - 23085, - 23086, - 23061, - 23055, - 23063, - 23050, - 23070, - 23091, - 23404, - 23463, - 23469, - 23468, - 23555, - 23638, - 23636, - 23788, - 23807, - 23790, - 23793, - 23799, - 23808, - 23801, - 24105, - 24104, - 24232, - 24238, - 24234, - 24236, - 24371, - 24368, - 24423, - 24669, - 24666, - 24679, - 24641, - 24738, - 24712, - 24704, - 24722, - 24705, - 24733, - 24707, - 24725, - 24731, - 24727, - 24711, - 24732, - 24718, - 25113, - 25158, - 25330, - 25360, - 25430, - 25388, - 25412, - 25413, - 25398, - 25411, - 25572, - 25401, - 25419, - 25418, - 25404, - 25385, - 25409, - 25396, - 25432, - 25428, - 25433, - 25389, - 25415, - 25395, - 25434, - 25425, - 25400, - 25431, - 25408, - 25416, - 25930, - 25926, - 26054, - 26051, - 26052, - 26050, - 26186, - 26207, - 26183, - 26193, - 26386, - 26387, - 26655, - 26650, - 26697, - 26674, - 26675, - 26683, - 26699, - 26703, - 26646, - 26673, - 26652, - 26677, - 26667, - 26669, - 26671, - 26702, - 26692, - 26676, - 26653, - 26642, - 26644, - 26662, - 26664, - 26670, - 26701, - 26682, - 26661, - 26656, - 27436, - 27439, - 27437, - 27441, - 27444, - 27501, - 32898, - 27528, - 27622, - 27620, - 27624, - 27619, - 27618, - 27623, - 27685, - 28026, - 28003, - 28004, - 28022, - 27917, - 28001, - 28050, - 27992, - 28002, - 28013, - 28015, - 28049, - 28045, - 28143, - 28031, - 28038, - 27998, - 28007, - 28000, - 28055, - 28016, - 28028, - 27999, - 28034, - 28056, - 27951, - 28008, - 28043, - 28030, - 28032, - 28036, - 27926, - 28035, - 28027, - 28029, - 28021, - 28048, - 28892, - 28883, - 28881, - 28893, - 28875, - 32569, - 28898, - 28887, - 28882, - 28894, - 28896, - 28884, - 28877, - 28869, - 28870, - 28871, - 28890, - 28878, - 28897, - 29250, - 29304, - 29303, - 29302, - 29440, - 29434, - 29428, - 29438, - 29430, - 29427, - 29435, - 29441, - 29651, - 29657, - 29669, - 29654, - 29628, - 29671, - 29667, - 29673, - 29660, - 29650, - 29659, - 29652, - 29661, - 29658, - 29655, - 29656, - 29672, - 29918, - 29919, - 29940, - 29941, - 29985, - 30043, - 30047, - 30128, - 30145, - 30139, - 30148, - 30144, - 30143, - 30134, - 30138, - 30346, - 30409, - 30493, - 30491, - 30480, - 30483, - 30482, - 30499, - 30481, - 30485, - 30489, - 30490, - 30498, - 30503, - 30755, - 30764, - 30754, - 30773, - 30767, - 30760, - 30766, - 30763, - 30753, - 30761, - 30771, - 30762, - 30769, - 31060, - 31067, - 31055, - 31068, - 31059, - 31058, - 31057, - 31211, - 31212, - 31200, - 31214, - 31213, - 31210, - 31196, - 31198, - 31197, - 31366, - 31369, - 31365, - 31371, - 31372, - 31370, - 31367, - 31448, - 31504, - 31492, - 31507, - 31493, - 31503, - 31496, - 31498, - 31502, - 31497, - 31506, - 31876, - 31889, - 31882, - 31884, - 31880, - 31885, - 31877, - 32030, - 32029, - 32017, - 32014, - 32024, - 32022, - 32019, - 32031, - 32018, - 32015, - 32012, - 32604, - 32609, - 32606, - 32608, - 32605, - 32603, - 32662, - 32658, - 32707, - 32706, - 32704, - 32790, - 32830, - 32825, - 33018, - 33010, - 33017, - 33013, - 33025, - 33019, - 33024, - 33281, - 33327, - 33317, - 33587, - 33581, - 33604, - 33561, - 33617, - 33573, - 33622, - 33599, - 33601, - 33574, - 33564, - 33570, - 33602, - 33614, - 33563, - 33578, - 33544, - 33596, - 33613, - 33558, - 33572, - 33568, - 33591, - 33583, - 33577, - 33607, - 33605, - 33612, - 33619, - 33566, - 33580, - 33611, - 33575, - 33608, - 34387, - 34386, - 34466, - 34472, - 34454, - 34445, - 34449, - 34462, - 34439, - 34455, - 34438, - 34443, - 34458, - 34437, - 34469, - 34457, - 34465, - 34471, - 34453, - 34456, - 34446, - 34461, - 34448, - 34452, - 34883, - 34884, - 34925, - 34933, - 34934, - 34930, - 34944, - 34929, - 34943, - 34927, - 34947, - 34942, - 34932, - 34940, - 35346, - 35911, - 35927, - 35963, - 36004, - 36003, - 36214, - 36216, - 36277, - 36279, - 36278, - 36561, - 36563, - 36862, - 36853, - 36866, - 36863, - 36859, - 36868, - 36860, - 36854, - 37078, - 37088, - 37081, - 37082, - 37091, - 37087, - 37093, - 37080, - 37083, - 37079, - 37084, - 37092, - 37200, - 37198, - 37199, - 37333, - 37346, - 37338, - 38492, - 38495, - 38588, - 39139, - 39647, - 39727, - 20095, - 20592, - 20586, - 20577, - 20574, - 20576, - 20563, - 20555, - 20573, - 20594, - 20552, - 20557, - 20545, - 20571, - 20554, - 20578, - 20501, - 20549, - 20575, - 20585, - 20587, - 20579, - 20580, - 20550, - 20544, - 20590, - 20595, - 20567, - 20561, - 20944, - 21099, - 21101, - 21100, - 21102, - 21206, - 21203, - 21293, - 21404, - 21877, - 21878, - 21820, - 21837, - 21840, - 21812, - 21802, - 21841, - 21858, - 21814, - 21813, - 21808, - 21842, - 21829, - 21772, - 21810, - 21861, - 21838, - 21817, - 21832, - 21805, - 21819, - 21824, - 21835, - 22282, - 22279, - 22523, - 22548, - 22498, - 22518, - 22492, - 22516, - 22528, - 22509, - 22525, - 22536, - 22520, - 22539, - 22515, - 22479, - 22535, - 22510, - 22499, - 22514, - 22501, - 22508, - 22497, - 22542, - 22524, - 22544, - 22503, - 22529, - 22540, - 22513, - 22505, - 22512, - 22541, - 22532, - 22876, - 23136, - 23128, - 23125, - 23143, - 23134, - 23096, - 23093, - 23149, - 23120, - 23135, - 23141, - 23148, - 23123, - 23140, - 23127, - 23107, - 23133, - 23122, - 23108, - 23131, - 23112, - 23182, - 23102, - 23117, - 23097, - 23116, - 23152, - 23145, - 23111, - 23121, - 23126, - 23106, - 23132, - 23410, - 23406, - 23489, - 23488, - 23641, - 23838, - 23819, - 23837, - 23834, - 23840, - 23820, - 23848, - 23821, - 23846, - 23845, - 23823, - 23856, - 23826, - 23843, - 23839, - 23854, - 24126, - 24116, - 24241, - 24244, - 24249, - 24242, - 24243, - 24374, - 24376, - 24475, - 24470, - 24479, - 24714, - 24720, - 24710, - 24766, - 24752, - 24762, - 24787, - 24788, - 24783, - 24804, - 24793, - 24797, - 24776, - 24753, - 24795, - 24759, - 24778, - 24767, - 24771, - 24781, - 24768, - 25394, - 25445, - 25482, - 25474, - 25469, - 25533, - 25502, - 25517, - 25501, - 25495, - 25515, - 25486, - 25455, - 25479, - 25488, - 25454, - 25519, - 25461, - 25500, - 25453, - 25518, - 25468, - 25508, - 25403, - 25503, - 25464, - 25477, - 25473, - 25489, - 25485, - 25456, - 25939, - 26061, - 26213, - 26209, - 26203, - 26201, - 26204, - 26210, - 26392, - 26745, - 26759, - 26768, - 26780, - 26733, - 26734, - 26798, - 26795, - 26966, - 26735, - 26787, - 26796, - 26793, - 26741, - 26740, - 26802, - 26767, - 26743, - 26770, - 26748, - 26731, - 26738, - 26794, - 26752, - 26737, - 26750, - 26779, - 26774, - 26763, - 26784, - 26761, - 26788, - 26744, - 26747, - 26769, - 26764, - 26762, - 26749, - 27446, - 27443, - 27447, - 27448, - 27537, - 27535, - 27533, - 27534, - 27532, - 27690, - 28096, - 28075, - 28084, - 28083, - 28276, - 28076, - 28137, - 28130, - 28087, - 28150, - 28116, - 28160, - 28104, - 28128, - 28127, - 28118, - 28094, - 28133, - 28124, - 28125, - 28123, - 28148, - 28106, - 28093, - 28141, - 28144, - 28090, - 28117, - 28098, - 28111, - 28105, - 28112, - 28146, - 28115, - 28157, - 28119, - 28109, - 28131, - 28091, - 28922, - 28941, - 28919, - 28951, - 28916, - 28940, - 28912, - 28932, - 28915, - 28944, - 28924, - 28927, - 28934, - 28947, - 28928, - 28920, - 28918, - 28939, - 28930, - 28942, - 29310, - 29307, - 29308, - 29311, - 29469, - 29463, - 29447, - 29457, - 29464, - 29450, - 29448, - 29439, - 29455, - 29470, - 29576, - 29686, - 29688, - 29685, - 29700, - 29697, - 29693, - 29703, - 29696, - 29690, - 29692, - 29695, - 29708, - 29707, - 29684, - 29704, - 30052, - 30051, - 30158, - 30162, - 30159, - 30155, - 30156, - 30161, - 30160, - 30351, - 30345, - 30419, - 30521, - 30511, - 30509, - 30513, - 30514, - 30516, - 30515, - 30525, - 30501, - 30523, - 30517, - 30792, - 30802, - 30793, - 30797, - 30794, - 30796, - 30758, - 30789, - 30800, - 31076, - 31079, - 31081, - 31082, - 31075, - 31083, - 31073, - 31163, - 31226, - 31224, - 31222, - 31223, - 31375, - 31380, - 31376, - 31541, - 31559, - 31540, - 31525, - 31536, - 31522, - 31524, - 31539, - 31512, - 31530, - 31517, - 31537, - 31531, - 31533, - 31535, - 31538, - 31544, - 31514, - 31523, - 31892, - 31896, - 31894, - 31907, - 32053, - 32061, - 32056, - 32054, - 32058, - 32069, - 32044, - 32041, - 32065, - 32071, - 32062, - 32063, - 32074, - 32059, - 32040, - 32611, - 32661, - 32668, - 32669, - 32667, - 32714, - 32715, - 32717, - 32720, - 32721, - 32711, - 32719, - 32713, - 32799, - 32798, - 32795, - 32839, - 32835, - 32840, - 33048, - 33061, - 33049, - 33051, - 33069, - 33055, - 33068, - 33054, - 33057, - 33045, - 33063, - 33053, - 33058, - 33297, - 33336, - 33331, - 33338, - 33332, - 33330, - 33396, - 33680, - 33699, - 33704, - 33677, - 33658, - 33651, - 33700, - 33652, - 33679, - 33665, - 33685, - 33689, - 33653, - 33684, - 33705, - 33661, - 33667, - 33676, - 33693, - 33691, - 33706, - 33675, - 33662, - 33701, - 33711, - 33672, - 33687, - 33712, - 33663, - 33702, - 33671, - 33710, - 33654, - 33690, - 34393, - 34390, - 34495, - 34487, - 34498, - 34497, - 34501, - 34490, - 34480, - 34504, - 34489, - 34483, - 34488, - 34508, - 34484, - 34491, - 34492, - 34499, - 34493, - 34494, - 34898, - 34953, - 34965, - 34984, - 34978, - 34986, - 34970, - 34961, - 34977, - 34975, - 34968, - 34983, - 34969, - 34971, - 34967, - 34980, - 34988, - 34956, - 34963, - 34958, - 35202, - 35286, - 35289, - 35285, - 35376, - 35367, - 35372, - 35358, - 35897, - 35899, - 35932, - 35933, - 35965, - 36005, - 36221, - 36219, - 36217, - 36284, - 36290, - 36281, - 36287, - 36289, - 36568, - 36574, - 36573, - 36572, - 36567, - 36576, - 36577, - 36900, - 36875, - 36881, - 36892, - 36876, - 36897, - 37103, - 37098, - 37104, - 37108, - 37106, - 37107, - 37076, - 37099, - 37100, - 37097, - 37206, - 37208, - 37210, - 37203, - 37205, - 37356, - 37364, - 37361, - 37363, - 37368, - 37348, - 37369, - 37354, - 37355, - 37367, - 37352, - 37358, - 38266, - 38278, - 38280, - 38524, - 38509, - 38507, - 38513, - 38511, - 38591, - 38762, - 38916, - 39141, - 39319, - 20635, - 20629, - 20628, - 20638, - 20619, - 20643, - 20611, - 20620, - 20622, - 20637, - 20584, - 20636, - 20626, - 20610, - 20615, - 20831, - 20948, - 21266, - 21265, - 21412, - 21415, - 21905, - 21928, - 21925, - 21933, - 21879, - 22085, - 21922, - 21907, - 21896, - 21903, - 21941, - 21889, - 21923, - 21906, - 21924, - 21885, - 21900, - 21926, - 21887, - 21909, - 21921, - 21902, - 22284, - 22569, - 22583, - 22553, - 22558, - 22567, - 22563, - 22568, - 22517, - 22600, - 22565, - 22556, - 22555, - 22579, - 22591, - 22582, - 22574, - 22585, - 22584, - 22573, - 22572, - 22587, - 22881, - 23215, - 23188, - 23199, - 23162, - 23202, - 23198, - 23160, - 23206, - 23164, - 23205, - 23212, - 23189, - 23214, - 23095, - 23172, - 23178, - 23191, - 23171, - 23179, - 23209, - 23163, - 23165, - 23180, - 23196, - 23183, - 23187, - 23197, - 23530, - 23501, - 23499, - 23508, - 23505, - 23498, - 23502, - 23564, - 23600, - 23863, - 23875, - 23915, - 23873, - 23883, - 23871, - 23861, - 23889, - 23886, - 23893, - 23859, - 23866, - 23890, - 23869, - 23857, - 23897, - 23874, - 23865, - 23881, - 23864, - 23868, - 23858, - 23862, - 23872, - 23877, - 24132, - 24129, - 24408, - 24486, - 24485, - 24491, - 24777, - 24761, - 24780, - 24802, - 24782, - 24772, - 24852, - 24818, - 24842, - 24854, - 24837, - 24821, - 24851, - 24824, - 24828, - 24830, - 24769, - 24835, - 24856, - 24861, - 24848, - 24831, - 24836, - 24843, - 25162, - 25492, - 25521, - 25520, - 25550, - 25573, - 25576, - 25583, - 25539, - 25757, - 25587, - 25546, - 25568, - 25590, - 25557, - 25586, - 25589, - 25697, - 25567, - 25534, - 25565, - 25564, - 25540, - 25560, - 25555, - 25538, - 25543, - 25548, - 25547, - 25544, - 25584, - 25559, - 25561, - 25906, - 25959, - 25962, - 25956, - 25948, - 25960, - 25957, - 25996, - 26013, - 26014, - 26030, - 26064, - 26066, - 26236, - 26220, - 26235, - 26240, - 26225, - 26233, - 26218, - 26226, - 26369, - 26892, - 26835, - 26884, - 26844, - 26922, - 26860, - 26858, - 26865, - 26895, - 26838, - 26871, - 26859, - 26852, - 26870, - 26899, - 26896, - 26867, - 26849, - 26887, - 26828, - 26888, - 26992, - 26804, - 26897, - 26863, - 26822, - 26900, - 26872, - 26832, - 26877, - 26876, - 26856, - 26891, - 26890, - 26903, - 26830, - 26824, - 26845, - 26846, - 26854, - 26868, - 26833, - 26886, - 26836, - 26857, - 26901, - 26917, - 26823, - 27449, - 27451, - 27455, - 27452, - 27540, - 27543, - 27545, - 27541, - 27581, - 27632, - 27634, - 27635, - 27696, - 28156, - 28230, - 28231, - 28191, - 28233, - 28296, - 28220, - 28221, - 28229, - 28258, - 28203, - 28223, - 28225, - 28253, - 28275, - 28188, - 28211, - 28235, - 28224, - 28241, - 28219, - 28163, - 28206, - 28254, - 28264, - 28252, - 28257, - 28209, - 28200, - 28256, - 28273, - 28267, - 28217, - 28194, - 28208, - 28243, - 28261, - 28199, - 28280, - 28260, - 28279, - 28245, - 28281, - 28242, - 28262, - 28213, - 28214, - 28250, - 28960, - 28958, - 28975, - 28923, - 28974, - 28977, - 28963, - 28965, - 28962, - 28978, - 28959, - 28968, - 28986, - 28955, - 29259, - 29274, - 29320, - 29321, - 29318, - 29317, - 29323, - 29458, - 29451, - 29488, - 29474, - 29489, - 29491, - 29479, - 29490, - 29485, - 29478, - 29475, - 29493, - 29452, - 29742, - 29740, - 29744, - 29739, - 29718, - 29722, - 29729, - 29741, - 29745, - 29732, - 29731, - 29725, - 29737, - 29728, - 29746, - 29947, - 29999, - 30063, - 30060, - 30183, - 30170, - 30177, - 30182, - 30173, - 30175, - 30180, - 30167, - 30357, - 30354, - 30426, - 30534, - 30535, - 30532, - 30541, - 30533, - 30538, - 30542, - 30539, - 30540, - 30686, - 30700, - 30816, - 30820, - 30821, - 30812, - 30829, - 30833, - 30826, - 30830, - 30832, - 30825, - 30824, - 30814, - 30818, - 31092, - 31091, - 31090, - 31088, - 31234, - 31242, - 31235, - 31244, - 31236, - 31385, - 31462, - 31460, - 31562, - 31547, - 31556, - 31560, - 31564, - 31566, - 31552, - 31576, - 31557, - 31906, - 31902, - 31912, - 31905, - 32088, - 32111, - 32099, - 32083, - 32086, - 32103, - 32106, - 32079, - 32109, - 32092, - 32107, - 32082, - 32084, - 32105, - 32081, - 32095, - 32078, - 32574, - 32575, - 32613, - 32614, - 32674, - 32672, - 32673, - 32727, - 32849, - 32847, - 32848, - 33022, - 32980, - 33091, - 33098, - 33106, - 33103, - 33095, - 33085, - 33101, - 33082, - 33254, - 33262, - 33271, - 33272, - 33273, - 33284, - 33340, - 33341, - 33343, - 33397, - 33595, - 33743, - 33785, - 33827, - 33728, - 33768, - 33810, - 33767, - 33764, - 33788, - 33782, - 33808, - 33734, - 33736, - 33771, - 33763, - 33727, - 33793, - 33757, - 33765, - 33752, - 33791, - 33761, - 33739, - 33742, - 33750, - 33781, - 33737, - 33801, - 33807, - 33758, - 33809, - 33798, - 33730, - 33779, - 33749, - 33786, - 33735, - 33745, - 33770, - 33811, - 33731, - 33772, - 33774, - 33732, - 33787, - 33751, - 33762, - 33819, - 33755, - 33790, - 34520, - 34530, - 34534, - 34515, - 34531, - 34522, - 34538, - 34525, - 34539, - 34524, - 34540, - 34537, - 34519, - 34536, - 34513, - 34888, - 34902, - 34901, - 35002, - 35031, - 35001, - 35000, - 35008, - 35006, - 34998, - 35004, - 34999, - 35005, - 34994, - 35073, - 35017, - 35221, - 35224, - 35223, - 35293, - 35290, - 35291, - 35406, - 35405, - 35385, - 35417, - 35392, - 35415, - 35416, - 35396, - 35397, - 35410, - 35400, - 35409, - 35402, - 35404, - 35407, - 35935, - 35969, - 35968, - 36026, - 36030, - 36016, - 36025, - 36021, - 36228, - 36224, - 36233, - 36312, - 36307, - 36301, - 36295, - 36310, - 36316, - 36303, - 36309, - 36313, - 36296, - 36311, - 36293, - 36591, - 36599, - 36602, - 36601, - 36582, - 36590, - 36581, - 36597, - 36583, - 36584, - 36598, - 36587, - 36593, - 36588, - 36596, - 36585, - 36909, - 36916, - 36911, - 37126, - 37164, - 37124, - 37119, - 37116, - 37128, - 37113, - 37115, - 37121, - 37120, - 37127, - 37125, - 37123, - 37217, - 37220, - 37215, - 37218, - 37216, - 37377, - 37386, - 37413, - 37379, - 37402, - 37414, - 37391, - 37388, - 37376, - 37394, - 37375, - 37373, - 37382, - 37380, - 37415, - 37378, - 37404, - 37412, - 37401, - 37399, - 37381, - 37398, - 38267, - 38285, - 38284, - 38288, - 38535, - 38526, - 38536, - 38537, - 38531, - 38528, - 38594, - 38600, - 38595, - 38641, - 38640, - 38764, - 38768, - 38766, - 38919, - 39081, - 39147, - 40166, - 40697, - 20099, - 20100, - 20150, - 20669, - 20671, - 20678, - 20654, - 20676, - 20682, - 20660, - 20680, - 20674, - 20656, - 20673, - 20666, - 20657, - 20683, - 20681, - 20662, - 20664, - 20951, - 21114, - 21112, - 21115, - 21116, - 21955, - 21979, - 21964, - 21968, - 21963, - 21962, - 21981, - 21952, - 21972, - 21956, - 21993, - 21951, - 21970, - 21901, - 21967, - 21973, - 21986, - 21974, - 21960, - 22002, - 21965, - 21977, - 21954, - 22292, - 22611, - 22632, - 22628, - 22607, - 22605, - 22601, - 22639, - 22613, - 22606, - 22621, - 22617, - 22629, - 22619, - 22589, - 22627, - 22641, - 22780, - 23239, - 23236, - 23243, - 23226, - 23224, - 23217, - 23221, - 23216, - 23231, - 23240, - 23227, - 23238, - 23223, - 23232, - 23242, - 23220, - 23222, - 23245, - 23225, - 23184, - 23510, - 23512, - 23513, - 23583, - 23603, - 23921, - 23907, - 23882, - 23909, - 23922, - 23916, - 23902, - 23912, - 23911, - 23906, - 24048, - 24143, - 24142, - 24138, - 24141, - 24139, - 24261, - 24268, - 24262, - 24267, - 24263, - 24384, - 24495, - 24493, - 24823, - 24905, - 24906, - 24875, - 24901, - 24886, - 24882, - 24878, - 24902, - 24879, - 24911, - 24873, - 24896, - 25120, - 37224, - 25123, - 25125, - 25124, - 25541, - 25585, - 25579, - 25616, - 25618, - 25609, - 25632, - 25636, - 25651, - 25667, - 25631, - 25621, - 25624, - 25657, - 25655, - 25634, - 25635, - 25612, - 25638, - 25648, - 25640, - 25665, - 25653, - 25647, - 25610, - 25626, - 25664, - 25637, - 25639, - 25611, - 25575, - 25627, - 25646, - 25633, - 25614, - 25967, - 26002, - 26067, - 26246, - 26252, - 26261, - 26256, - 26251, - 26250, - 26265, - 26260, - 26232, - 26400, - 26982, - 26975, - 26936, - 26958, - 26978, - 26993, - 26943, - 26949, - 26986, - 26937, - 26946, - 26967, - 26969, - 27002, - 26952, - 26953, - 26933, - 26988, - 26931, - 26941, - 26981, - 26864, - 27000, - 26932, - 26985, - 26944, - 26991, - 26948, - 26998, - 26968, - 26945, - 26996, - 26956, - 26939, - 26955, - 26935, - 26972, - 26959, - 26961, - 26930, - 26962, - 26927, - 27003, - 26940, - 27462, - 27461, - 27459, - 27458, - 27464, - 27457, - 27547, - 64013, - 27643, - 27644, - 27641, - 27639, - 27640, - 28315, - 28374, - 28360, - 28303, - 28352, - 28319, - 28307, - 28308, - 28320, - 28337, - 28345, - 28358, - 28370, - 28349, - 28353, - 28318, - 28361, - 28343, - 28336, - 28365, - 28326, - 28367, - 28338, - 28350, - 28355, - 28380, - 28376, - 28313, - 28306, - 28302, - 28301, - 28324, - 28321, - 28351, - 28339, - 28368, - 28362, - 28311, - 28334, - 28323, - 28999, - 29012, - 29010, - 29027, - 29024, - 28993, - 29021, - 29026, - 29042, - 29048, - 29034, - 29025, - 28994, - 29016, - 28995, - 29003, - 29040, - 29023, - 29008, - 29011, - 28996, - 29005, - 29018, - 29263, - 29325, - 29324, - 29329, - 29328, - 29326, - 29500, - 29506, - 29499, - 29498, - 29504, - 29514, - 29513, - 29764, - 29770, - 29771, - 29778, - 29777, - 29783, - 29760, - 29775, - 29776, - 29774, - 29762, - 29766, - 29773, - 29780, - 29921, - 29951, - 29950, - 29949, - 29981, - 30073, - 30071, - 27011, - 30191, - 30223, - 30211, - 30199, - 30206, - 30204, - 30201, - 30200, - 30224, - 30203, - 30198, - 30189, - 30197, - 30205, - 30361, - 30389, - 30429, - 30549, - 30559, - 30560, - 30546, - 30550, - 30554, - 30569, - 30567, - 30548, - 30553, - 30573, - 30688, - 30855, - 30874, - 30868, - 30863, - 30852, - 30869, - 30853, - 30854, - 30881, - 30851, - 30841, - 30873, - 30848, - 30870, - 30843, - 31100, - 31106, - 31101, - 31097, - 31249, - 31256, - 31257, - 31250, - 31255, - 31253, - 31266, - 31251, - 31259, - 31248, - 31395, - 31394, - 31390, - 31467, - 31590, - 31588, - 31597, - 31604, - 31593, - 31602, - 31589, - 31603, - 31601, - 31600, - 31585, - 31608, - 31606, - 31587, - 31922, - 31924, - 31919, - 32136, - 32134, - 32128, - 32141, - 32127, - 32133, - 32122, - 32142, - 32123, - 32131, - 32124, - 32140, - 32148, - 32132, - 32125, - 32146, - 32621, - 32619, - 32615, - 32616, - 32620, - 32678, - 32677, - 32679, - 32731, - 32732, - 32801, - 33124, - 33120, - 33143, - 33116, - 33129, - 33115, - 33122, - 33138, - 26401, - 33118, - 33142, - 33127, - 33135, - 33092, - 33121, - 33309, - 33353, - 33348, - 33344, - 33346, - 33349, - 34033, - 33855, - 33878, - 33910, - 33913, - 33935, - 33933, - 33893, - 33873, - 33856, - 33926, - 33895, - 33840, - 33869, - 33917, - 33882, - 33881, - 33908, - 33907, - 33885, - 34055, - 33886, - 33847, - 33850, - 33844, - 33914, - 33859, - 33912, - 33842, - 33861, - 33833, - 33753, - 33867, - 33839, - 33858, - 33837, - 33887, - 33904, - 33849, - 33870, - 33868, - 33874, - 33903, - 33989, - 33934, - 33851, - 33863, - 33846, - 33843, - 33896, - 33918, - 33860, - 33835, - 33888, - 33876, - 33902, - 33872, - 34571, - 34564, - 34551, - 34572, - 34554, - 34518, - 34549, - 34637, - 34552, - 34574, - 34569, - 34561, - 34550, - 34573, - 34565, - 35030, - 35019, - 35021, - 35022, - 35038, - 35035, - 35034, - 35020, - 35024, - 35205, - 35227, - 35295, - 35301, - 35300, - 35297, - 35296, - 35298, - 35292, - 35302, - 35446, - 35462, - 35455, - 35425, - 35391, - 35447, - 35458, - 35460, - 35445, - 35459, - 35457, - 35444, - 35450, - 35900, - 35915, - 35914, - 35941, - 35940, - 35942, - 35974, - 35972, - 35973, - 36044, - 36200, - 36201, - 36241, - 36236, - 36238, - 36239, - 36237, - 36243, - 36244, - 36240, - 36242, - 36336, - 36320, - 36332, - 36337, - 36334, - 36304, - 36329, - 36323, - 36322, - 36327, - 36338, - 36331, - 36340, - 36614, - 36607, - 36609, - 36608, - 36613, - 36615, - 36616, - 36610, - 36619, - 36946, - 36927, - 36932, - 36937, - 36925, - 37136, - 37133, - 37135, - 37137, - 37142, - 37140, - 37131, - 37134, - 37230, - 37231, - 37448, - 37458, - 37424, - 37434, - 37478, - 37427, - 37477, - 37470, - 37507, - 37422, - 37450, - 37446, - 37485, - 37484, - 37455, - 37472, - 37479, - 37487, - 37430, - 37473, - 37488, - 37425, - 37460, - 37475, - 37456, - 37490, - 37454, - 37459, - 37452, - 37462, - 37426, - 38303, - 38300, - 38302, - 38299, - 38546, - 38547, - 38545, - 38551, - 38606, - 38650, - 38653, - 38648, - 38645, - 38771, - 38775, - 38776, - 38770, - 38927, - 38925, - 38926, - 39084, - 39158, - 39161, - 39343, - 39346, - 39344, - 39349, - 39597, - 39595, - 39771, - 40170, - 40173, - 40167, - 40576, - 40701, - 20710, - 20692, - 20695, - 20712, - 20723, - 20699, - 20714, - 20701, - 20708, - 20691, - 20716, - 20720, - 20719, - 20707, - 20704, - 20952, - 21120, - 21121, - 21225, - 21227, - 21296, - 21420, - 22055, - 22037, - 22028, - 22034, - 22012, - 22031, - 22044, - 22017, - 22035, - 22018, - 22010, - 22045, - 22020, - 22015, - 22009, - 22665, - 22652, - 22672, - 22680, - 22662, - 22657, - 22655, - 22644, - 22667, - 22650, - 22663, - 22673, - 22670, - 22646, - 22658, - 22664, - 22651, - 22676, - 22671, - 22782, - 22891, - 23260, - 23278, - 23269, - 23253, - 23274, - 23258, - 23277, - 23275, - 23283, - 23266, - 23264, - 23259, - 23276, - 23262, - 23261, - 23257, - 23272, - 23263, - 23415, - 23520, - 23523, - 23651, - 23938, - 23936, - 23933, - 23942, - 23930, - 23937, - 23927, - 23946, - 23945, - 23944, - 23934, - 23932, - 23949, - 23929, - 23935, - 24152, - 24153, - 24147, - 24280, - 24273, - 24279, - 24270, - 24284, - 24277, - 24281, - 24274, - 24276, - 24388, - 24387, - 24431, - 24502, - 24876, - 24872, - 24897, - 24926, - 24945, - 24947, - 24914, - 24915, - 24946, - 24940, - 24960, - 24948, - 24916, - 24954, - 24923, - 24933, - 24891, - 24938, - 24929, - 24918, - 25129, - 25127, - 25131, - 25643, - 25677, - 25691, - 25693, - 25716, - 25718, - 25714, - 25715, - 25725, - 25717, - 25702, - 25766, - 25678, - 25730, - 25694, - 25692, - 25675, - 25683, - 25696, - 25680, - 25727, - 25663, - 25708, - 25707, - 25689, - 25701, - 25719, - 25971, - 26016, - 26273, - 26272, - 26271, - 26373, - 26372, - 26402, - 27057, - 27062, - 27081, - 27040, - 27086, - 27030, - 27056, - 27052, - 27068, - 27025, - 27033, - 27022, - 27047, - 27021, - 27049, - 27070, - 27055, - 27071, - 27076, - 27069, - 27044, - 27092, - 27065, - 27082, - 27034, - 27087, - 27059, - 27027, - 27050, - 27041, - 27038, - 27097, - 27031, - 27024, - 27074, - 27061, - 27045, - 27078, - 27466, - 27469, - 27467, - 27550, - 27551, - 27552, - 27587, - 27588, - 27646, - 28366, - 28405, - 28401, - 28419, - 28453, - 28408, - 28471, - 28411, - 28462, - 28425, - 28494, - 28441, - 28442, - 28455, - 28440, - 28475, - 28434, - 28397, - 28426, - 28470, - 28531, - 28409, - 28398, - 28461, - 28480, - 28464, - 28476, - 28469, - 28395, - 28423, - 28430, - 28483, - 28421, - 28413, - 28406, - 28473, - 28444, - 28412, - 28474, - 28447, - 28429, - 28446, - 28424, - 28449, - 29063, - 29072, - 29065, - 29056, - 29061, - 29058, - 29071, - 29051, - 29062, - 29057, - 29079, - 29252, - 29267, - 29335, - 29333, - 29331, - 29507, - 29517, - 29521, - 29516, - 29794, - 29811, - 29809, - 29813, - 29810, - 29799, - 29806, - 29952, - 29954, - 29955, - 30077, - 30096, - 30230, - 30216, - 30220, - 30229, - 30225, - 30218, - 30228, - 30392, - 30593, - 30588, - 30597, - 30594, - 30574, - 30592, - 30575, - 30590, - 30595, - 30898, - 30890, - 30900, - 30893, - 30888, - 30846, - 30891, - 30878, - 30885, - 30880, - 30892, - 30882, - 30884, - 31128, - 31114, - 31115, - 31126, - 31125, - 31124, - 31123, - 31127, - 31112, - 31122, - 31120, - 31275, - 31306, - 31280, - 31279, - 31272, - 31270, - 31400, - 31403, - 31404, - 31470, - 31624, - 31644, - 31626, - 31633, - 31632, - 31638, - 31629, - 31628, - 31643, - 31630, - 31621, - 31640, - 21124, - 31641, - 31652, - 31618, - 31931, - 31935, - 31932, - 31930, - 32167, - 32183, - 32194, - 32163, - 32170, - 32193, - 32192, - 32197, - 32157, - 32206, - 32196, - 32198, - 32203, - 32204, - 32175, - 32185, - 32150, - 32188, - 32159, - 32166, - 32174, - 32169, - 32161, - 32201, - 32627, - 32738, - 32739, - 32741, - 32734, - 32804, - 32861, - 32860, - 33161, - 33158, - 33155, - 33159, - 33165, - 33164, - 33163, - 33301, - 33943, - 33956, - 33953, - 33951, - 33978, - 33998, - 33986, - 33964, - 33966, - 33963, - 33977, - 33972, - 33985, - 33997, - 33962, - 33946, - 33969, - 34000, - 33949, - 33959, - 33979, - 33954, - 33940, - 33991, - 33996, - 33947, - 33961, - 33967, - 33960, - 34006, - 33944, - 33974, - 33999, - 33952, - 34007, - 34004, - 34002, - 34011, - 33968, - 33937, - 34401, - 34611, - 34595, - 34600, - 34667, - 34624, - 34606, - 34590, - 34593, - 34585, - 34587, - 34627, - 34604, - 34625, - 34622, - 34630, - 34592, - 34610, - 34602, - 34605, - 34620, - 34578, - 34618, - 34609, - 34613, - 34626, - 34598, - 34599, - 34616, - 34596, - 34586, - 34608, - 34577, - 35063, - 35047, - 35057, - 35058, - 35066, - 35070, - 35054, - 35068, - 35062, - 35067, - 35056, - 35052, - 35051, - 35229, - 35233, - 35231, - 35230, - 35305, - 35307, - 35304, - 35499, - 35481, - 35467, - 35474, - 35471, - 35478, - 35901, - 35944, - 35945, - 36053, - 36047, - 36055, - 36246, - 36361, - 36354, - 36351, - 36365, - 36349, - 36362, - 36355, - 36359, - 36358, - 36357, - 36350, - 36352, - 36356, - 36624, - 36625, - 36622, - 36621, - 37155, - 37148, - 37152, - 37154, - 37151, - 37149, - 37146, - 37156, - 37153, - 37147, - 37242, - 37234, - 37241, - 37235, - 37541, - 37540, - 37494, - 37531, - 37498, - 37536, - 37524, - 37546, - 37517, - 37542, - 37530, - 37547, - 37497, - 37527, - 37503, - 37539, - 37614, - 37518, - 37506, - 37525, - 37538, - 37501, - 37512, - 37537, - 37514, - 37510, - 37516, - 37529, - 37543, - 37502, - 37511, - 37545, - 37533, - 37515, - 37421, - 38558, - 38561, - 38655, - 38744, - 38781, - 38778, - 38782, - 38787, - 38784, - 38786, - 38779, - 38788, - 38785, - 38783, - 38862, - 38861, - 38934, - 39085, - 39086, - 39170, - 39168, - 39175, - 39325, - 39324, - 39363, - 39353, - 39355, - 39354, - 39362, - 39357, - 39367, - 39601, - 39651, - 39655, - 39742, - 39743, - 39776, - 39777, - 39775, - 40177, - 40178, - 40181, - 40615, - 20735, - 20739, - 20784, - 20728, - 20742, - 20743, - 20726, - 20734, - 20747, - 20748, - 20733, - 20746, - 21131, - 21132, - 21233, - 21231, - 22088, - 22082, - 22092, - 22069, - 22081, - 22090, - 22089, - 22086, - 22104, - 22106, - 22080, - 22067, - 22077, - 22060, - 22078, - 22072, - 22058, - 22074, - 22298, - 22699, - 22685, - 22705, - 22688, - 22691, - 22703, - 22700, - 22693, - 22689, - 22783, - 23295, - 23284, - 23293, - 23287, - 23286, - 23299, - 23288, - 23298, - 23289, - 23297, - 23303, - 23301, - 23311, - 23655, - 23961, - 23959, - 23967, - 23954, - 23970, - 23955, - 23957, - 23968, - 23964, - 23969, - 23962, - 23966, - 24169, - 24157, - 24160, - 24156, - 32243, - 24283, - 24286, - 24289, - 24393, - 24498, - 24971, - 24963, - 24953, - 25009, - 25008, - 24994, - 24969, - 24987, - 24979, - 25007, - 25005, - 24991, - 24978, - 25002, - 24993, - 24973, - 24934, - 25011, - 25133, - 25710, - 25712, - 25750, - 25760, - 25733, - 25751, - 25756, - 25743, - 25739, - 25738, - 25740, - 25763, - 25759, - 25704, - 25777, - 25752, - 25974, - 25978, - 25977, - 25979, - 26034, - 26035, - 26293, - 26288, - 26281, - 26290, - 26295, - 26282, - 26287, - 27136, - 27142, - 27159, - 27109, - 27128, - 27157, - 27121, - 27108, - 27168, - 27135, - 27116, - 27106, - 27163, - 27165, - 27134, - 27175, - 27122, - 27118, - 27156, - 27127, - 27111, - 27200, - 27144, - 27110, - 27131, - 27149, - 27132, - 27115, - 27145, - 27140, - 27160, - 27173, - 27151, - 27126, - 27174, - 27143, - 27124, - 27158, - 27473, - 27557, - 27555, - 27554, - 27558, - 27649, - 27648, - 27647, - 27650, - 28481, - 28454, - 28542, - 28551, - 28614, - 28562, - 28557, - 28553, - 28556, - 28514, - 28495, - 28549, - 28506, - 28566, - 28534, - 28524, - 28546, - 28501, - 28530, - 28498, - 28496, - 28503, - 28564, - 28563, - 28509, - 28416, - 28513, - 28523, - 28541, - 28519, - 28560, - 28499, - 28555, - 28521, - 28543, - 28565, - 28515, - 28535, - 28522, - 28539, - 29106, - 29103, - 29083, - 29104, - 29088, - 29082, - 29097, - 29109, - 29085, - 29093, - 29086, - 29092, - 29089, - 29098, - 29084, - 29095, - 29107, - 29336, - 29338, - 29528, - 29522, - 29534, - 29535, - 29536, - 29533, - 29531, - 29537, - 29530, - 29529, - 29538, - 29831, - 29833, - 29834, - 29830, - 29825, - 29821, - 29829, - 29832, - 29820, - 29817, - 29960, - 29959, - 30078, - 30245, - 30238, - 30233, - 30237, - 30236, - 30243, - 30234, - 30248, - 30235, - 30364, - 30365, - 30366, - 30363, - 30605, - 30607, - 30601, - 30600, - 30925, - 30907, - 30927, - 30924, - 30929, - 30926, - 30932, - 30920, - 30915, - 30916, - 30921, - 31130, - 31137, - 31136, - 31132, - 31138, - 31131, - 27510, - 31289, - 31410, - 31412, - 31411, - 31671, - 31691, - 31678, - 31660, - 31694, - 31663, - 31673, - 31690, - 31669, - 31941, - 31944, - 31948, - 31947, - 32247, - 32219, - 32234, - 32231, - 32215, - 32225, - 32259, - 32250, - 32230, - 32246, - 32241, - 32240, - 32238, - 32223, - 32630, - 32684, - 32688, - 32685, - 32749, - 32747, - 32746, - 32748, - 32742, - 32744, - 32868, - 32871, - 33187, - 33183, - 33182, - 33173, - 33186, - 33177, - 33175, - 33302, - 33359, - 33363, - 33362, - 33360, - 33358, - 33361, - 34084, - 34107, - 34063, - 34048, - 34089, - 34062, - 34057, - 34061, - 34079, - 34058, - 34087, - 34076, - 34043, - 34091, - 34042, - 34056, - 34060, - 34036, - 34090, - 34034, - 34069, - 34039, - 34027, - 34035, - 34044, - 34066, - 34026, - 34025, - 34070, - 34046, - 34088, - 34077, - 34094, - 34050, - 34045, - 34078, - 34038, - 34097, - 34086, - 34023, - 34024, - 34032, - 34031, - 34041, - 34072, - 34080, - 34096, - 34059, - 34073, - 34095, - 34402, - 34646, - 34659, - 34660, - 34679, - 34785, - 34675, - 34648, - 34644, - 34651, - 34642, - 34657, - 34650, - 34641, - 34654, - 34669, - 34666, - 34640, - 34638, - 34655, - 34653, - 34671, - 34668, - 34682, - 34670, - 34652, - 34661, - 34639, - 34683, - 34677, - 34658, - 34663, - 34665, - 34906, - 35077, - 35084, - 35092, - 35083, - 35095, - 35096, - 35097, - 35078, - 35094, - 35089, - 35086, - 35081, - 35234, - 35236, - 35235, - 35309, - 35312, - 35308, - 35535, - 35526, - 35512, - 35539, - 35537, - 35540, - 35541, - 35515, - 35543, - 35518, - 35520, - 35525, - 35544, - 35523, - 35514, - 35517, - 35545, - 35902, - 35917, - 35983, - 36069, - 36063, - 36057, - 36072, - 36058, - 36061, - 36071, - 36256, - 36252, - 36257, - 36251, - 36384, - 36387, - 36389, - 36388, - 36398, - 36373, - 36379, - 36374, - 36369, - 36377, - 36390, - 36391, - 36372, - 36370, - 36376, - 36371, - 36380, - 36375, - 36378, - 36652, - 36644, - 36632, - 36634, - 36640, - 36643, - 36630, - 36631, - 36979, - 36976, - 36975, - 36967, - 36971, - 37167, - 37163, - 37161, - 37162, - 37170, - 37158, - 37166, - 37253, - 37254, - 37258, - 37249, - 37250, - 37252, - 37248, - 37584, - 37571, - 37572, - 37568, - 37593, - 37558, - 37583, - 37617, - 37599, - 37592, - 37609, - 37591, - 37597, - 37580, - 37615, - 37570, - 37608, - 37578, - 37576, - 37582, - 37606, - 37581, - 37589, - 37577, - 37600, - 37598, - 37607, - 37585, - 37587, - 37557, - 37601, - 37574, - 37556, - 38268, - 38316, - 38315, - 38318, - 38320, - 38564, - 38562, - 38611, - 38661, - 38664, - 38658, - 38746, - 38794, - 38798, - 38792, - 38864, - 38863, - 38942, - 38941, - 38950, - 38953, - 38952, - 38944, - 38939, - 38951, - 39090, - 39176, - 39162, - 39185, - 39188, - 39190, - 39191, - 39189, - 39388, - 39373, - 39375, - 39379, - 39380, - 39374, - 39369, - 39382, - 39384, - 39371, - 39383, - 39372, - 39603, - 39660, - 39659, - 39667, - 39666, - 39665, - 39750, - 39747, - 39783, - 39796, - 39793, - 39782, - 39798, - 39797, - 39792, - 39784, - 39780, - 39788, - 40188, - 40186, - 40189, - 40191, - 40183, - 40199, - 40192, - 40185, - 40187, - 40200, - 40197, - 40196, - 40579, - 40659, - 40719, - 40720, - 20764, - 20755, - 20759, - 20762, - 20753, - 20958, - 21300, - 21473, - 22128, - 22112, - 22126, - 22131, - 22118, - 22115, - 22125, - 22130, - 22110, - 22135, - 22300, - 22299, - 22728, - 22717, - 22729, - 22719, - 22714, - 22722, - 22716, - 22726, - 23319, - 23321, - 23323, - 23329, - 23316, - 23315, - 23312, - 23318, - 23336, - 23322, - 23328, - 23326, - 23535, - 23980, - 23985, - 23977, - 23975, - 23989, - 23984, - 23982, - 23978, - 23976, - 23986, - 23981, - 23983, - 23988, - 24167, - 24168, - 24166, - 24175, - 24297, - 24295, - 24294, - 24296, - 24293, - 24395, - 24508, - 24989, - 25000, - 24982, - 25029, - 25012, - 25030, - 25025, - 25036, - 25018, - 25023, - 25016, - 24972, - 25815, - 25814, - 25808, - 25807, - 25801, - 25789, - 25737, - 25795, - 25819, - 25843, - 25817, - 25907, - 25983, - 25980, - 26018, - 26312, - 26302, - 26304, - 26314, - 26315, - 26319, - 26301, - 26299, - 26298, - 26316, - 26403, - 27188, - 27238, - 27209, - 27239, - 27186, - 27240, - 27198, - 27229, - 27245, - 27254, - 27227, - 27217, - 27176, - 27226, - 27195, - 27199, - 27201, - 27242, - 27236, - 27216, - 27215, - 27220, - 27247, - 27241, - 27232, - 27196, - 27230, - 27222, - 27221, - 27213, - 27214, - 27206, - 27477, - 27476, - 27478, - 27559, - 27562, - 27563, - 27592, - 27591, - 27652, - 27651, - 27654, - 28589, - 28619, - 28579, - 28615, - 28604, - 28622, - 28616, - 28510, - 28612, - 28605, - 28574, - 28618, - 28584, - 28676, - 28581, - 28590, - 28602, - 28588, - 28586, - 28623, - 28607, - 28600, - 28578, - 28617, - 28587, - 28621, - 28591, - 28594, - 28592, - 29125, - 29122, - 29119, - 29112, - 29142, - 29120, - 29121, - 29131, - 29140, - 29130, - 29127, - 29135, - 29117, - 29144, - 29116, - 29126, - 29146, - 29147, - 29341, - 29342, - 29545, - 29542, - 29543, - 29548, - 29541, - 29547, - 29546, - 29823, - 29850, - 29856, - 29844, - 29842, - 29845, - 29857, - 29963, - 30080, - 30255, - 30253, - 30257, - 30269, - 30259, - 30268, - 30261, - 30258, - 30256, - 30395, - 30438, - 30618, - 30621, - 30625, - 30620, - 30619, - 30626, - 30627, - 30613, - 30617, - 30615, - 30941, - 30953, - 30949, - 30954, - 30942, - 30947, - 30939, - 30945, - 30946, - 30957, - 30943, - 30944, - 31140, - 31300, - 31304, - 31303, - 31414, - 31416, - 31413, - 31409, - 31415, - 31710, - 31715, - 31719, - 31709, - 31701, - 31717, - 31706, - 31720, - 31737, - 31700, - 31722, - 31714, - 31708, - 31723, - 31704, - 31711, - 31954, - 31956, - 31959, - 31952, - 31953, - 32274, - 32289, - 32279, - 32268, - 32287, - 32288, - 32275, - 32270, - 32284, - 32277, - 32282, - 32290, - 32267, - 32271, - 32278, - 32269, - 32276, - 32293, - 32292, - 32579, - 32635, - 32636, - 32634, - 32689, - 32751, - 32810, - 32809, - 32876, - 33201, - 33190, - 33198, - 33209, - 33205, - 33195, - 33200, - 33196, - 33204, - 33202, - 33207, - 33191, - 33266, - 33365, - 33366, - 33367, - 34134, - 34117, - 34155, - 34125, - 34131, - 34145, - 34136, - 34112, - 34118, - 34148, - 34113, - 34146, - 34116, - 34129, - 34119, - 34147, - 34110, - 34139, - 34161, - 34126, - 34158, - 34165, - 34133, - 34151, - 34144, - 34188, - 34150, - 34141, - 34132, - 34149, - 34156, - 34403, - 34405, - 34404, - 34715, - 34703, - 34711, - 34707, - 34706, - 34696, - 34689, - 34710, - 34712, - 34681, - 34695, - 34723, - 34693, - 34704, - 34705, - 34717, - 34692, - 34708, - 34716, - 34714, - 34697, - 35102, - 35110, - 35120, - 35117, - 35118, - 35111, - 35121, - 35106, - 35113, - 35107, - 35119, - 35116, - 35103, - 35313, - 35552, - 35554, - 35570, - 35572, - 35573, - 35549, - 35604, - 35556, - 35551, - 35568, - 35528, - 35550, - 35553, - 35560, - 35583, - 35567, - 35579, - 35985, - 35986, - 35984, - 36085, - 36078, - 36081, - 36080, - 36083, - 36204, - 36206, - 36261, - 36263, - 36403, - 36414, - 36408, - 36416, - 36421, - 36406, - 36412, - 36413, - 36417, - 36400, - 36415, - 36541, - 36662, - 36654, - 36661, - 36658, - 36665, - 36663, - 36660, - 36982, - 36985, - 36987, - 36998, - 37114, - 37171, - 37173, - 37174, - 37267, - 37264, - 37265, - 37261, - 37263, - 37671, - 37662, - 37640, - 37663, - 37638, - 37647, - 37754, - 37688, - 37692, - 37659, - 37667, - 37650, - 37633, - 37702, - 37677, - 37646, - 37645, - 37579, - 37661, - 37626, - 37669, - 37651, - 37625, - 37623, - 37684, - 37634, - 37668, - 37631, - 37673, - 37689, - 37685, - 37674, - 37652, - 37644, - 37643, - 37630, - 37641, - 37632, - 37627, - 37654, - 38332, - 38349, - 38334, - 38329, - 38330, - 38326, - 38335, - 38325, - 38333, - 38569, - 38612, - 38667, - 38674, - 38672, - 38809, - 38807, - 38804, - 38896, - 38904, - 38965, - 38959, - 38962, - 39204, - 39199, - 39207, - 39209, - 39326, - 39406, - 39404, - 39397, - 39396, - 39408, - 39395, - 39402, - 39401, - 39399, - 39609, - 39615, - 39604, - 39611, - 39670, - 39674, - 39673, - 39671, - 39731, - 39808, - 39813, - 39815, - 39804, - 39806, - 39803, - 39810, - 39827, - 39826, - 39824, - 39802, - 39829, - 39805, - 39816, - 40229, - 40215, - 40224, - 40222, - 40212, - 40233, - 40221, - 40216, - 40226, - 40208, - 40217, - 40223, - 40584, - 40582, - 40583, - 40622, - 40621, - 40661, - 40662, - 40698, - 40722, - 40765, - 20774, - 20773, - 20770, - 20772, - 20768, - 20777, - 21236, - 22163, - 22156, - 22157, - 22150, - 22148, - 22147, - 22142, - 22146, - 22143, - 22145, - 22742, - 22740, - 22735, - 22738, - 23341, - 23333, - 23346, - 23331, - 23340, - 23335, - 23334, - 23343, - 23342, - 23419, - 23537, - 23538, - 23991, - 24172, - 24170, - 24510, - 24507, - 25027, - 25013, - 25020, - 25063, - 25056, - 25061, - 25060, - 25064, - 25054, - 25839, - 25833, - 25827, - 25835, - 25828, - 25832, - 25985, - 25984, - 26038, - 26074, - 26322, - 27277, - 27286, - 27265, - 27301, - 27273, - 27295, - 27291, - 27297, - 27294, - 27271, - 27283, - 27278, - 27285, - 27267, - 27304, - 27300, - 27281, - 27263, - 27302, - 27290, - 27269, - 27276, - 27282, - 27483, - 27565, - 27657, - 28620, - 28585, - 28660, - 28628, - 28643, - 28636, - 28653, - 28647, - 28646, - 28638, - 28658, - 28637, - 28642, - 28648, - 29153, - 29169, - 29160, - 29170, - 29156, - 29168, - 29154, - 29555, - 29550, - 29551, - 29847, - 29874, - 29867, - 29840, - 29866, - 29869, - 29873, - 29861, - 29871, - 29968, - 29969, - 29970, - 29967, - 30084, - 30275, - 30280, - 30281, - 30279, - 30372, - 30441, - 30645, - 30635, - 30642, - 30647, - 30646, - 30644, - 30641, - 30632, - 30704, - 30963, - 30973, - 30978, - 30971, - 30972, - 30962, - 30981, - 30969, - 30974, - 30980, - 31147, - 31144, - 31324, - 31323, - 31318, - 31320, - 31316, - 31322, - 31422, - 31424, - 31425, - 31749, - 31759, - 31730, - 31744, - 31743, - 31739, - 31758, - 31732, - 31755, - 31731, - 31746, - 31753, - 31747, - 31745, - 31736, - 31741, - 31750, - 31728, - 31729, - 31760, - 31754, - 31976, - 32301, - 32316, - 32322, - 32307, - 38984, - 32312, - 32298, - 32329, - 32320, - 32327, - 32297, - 32332, - 32304, - 32315, - 32310, - 32324, - 32314, - 32581, - 32639, - 32638, - 32637, - 32756, - 32754, - 32812, - 33211, - 33220, - 33228, - 33226, - 33221, - 33223, - 33212, - 33257, - 33371, - 33370, - 33372, - 34179, - 34176, - 34191, - 34215, - 34197, - 34208, - 34187, - 34211, - 34171, - 34212, - 34202, - 34206, - 34167, - 34172, - 34185, - 34209, - 34170, - 34168, - 34135, - 34190, - 34198, - 34182, - 34189, - 34201, - 34205, - 34177, - 34210, - 34178, - 34184, - 34181, - 34169, - 34166, - 34200, - 34192, - 34207, - 34408, - 34750, - 34730, - 34733, - 34757, - 34736, - 34732, - 34745, - 34741, - 34748, - 34734, - 34761, - 34755, - 34754, - 34764, - 34743, - 34735, - 34756, - 34762, - 34740, - 34742, - 34751, - 34744, - 34749, - 34782, - 34738, - 35125, - 35123, - 35132, - 35134, - 35137, - 35154, - 35127, - 35138, - 35245, - 35247, - 35246, - 35314, - 35315, - 35614, - 35608, - 35606, - 35601, - 35589, - 35595, - 35618, - 35599, - 35602, - 35605, - 35591, - 35597, - 35592, - 35590, - 35612, - 35603, - 35610, - 35919, - 35952, - 35954, - 35953, - 35951, - 35989, - 35988, - 36089, - 36207, - 36430, - 36429, - 36435, - 36432, - 36428, - 36423, - 36675, - 36672, - 36997, - 36990, - 37176, - 37274, - 37282, - 37275, - 37273, - 37279, - 37281, - 37277, - 37280, - 37793, - 37763, - 37807, - 37732, - 37718, - 37703, - 37756, - 37720, - 37724, - 37750, - 37705, - 37712, - 37713, - 37728, - 37741, - 37775, - 37708, - 37738, - 37753, - 37719, - 37717, - 37714, - 37711, - 37745, - 37751, - 37755, - 37729, - 37726, - 37731, - 37735, - 37760, - 37710, - 37721, - 38343, - 38336, - 38345, - 38339, - 38341, - 38327, - 38574, - 38576, - 38572, - 38688, - 38687, - 38680, - 38685, - 38681, - 38810, - 38817, - 38812, - 38814, - 38813, - 38869, - 38868, - 38897, - 38977, - 38980, - 38986, - 38985, - 38981, - 38979, - 39205, - 39211, - 39212, - 39210, - 39219, - 39218, - 39215, - 39213, - 39217, - 39216, - 39320, - 39331, - 39329, - 39426, - 39418, - 39412, - 39415, - 39417, - 39416, - 39414, - 39419, - 39421, - 39422, - 39420, - 39427, - 39614, - 39678, - 39677, - 39681, - 39676, - 39752, - 39834, - 39848, - 39838, - 39835, - 39846, - 39841, - 39845, - 39844, - 39814, - 39842, - 39840, - 39855, - 40243, - 40257, - 40295, - 40246, - 40238, - 40239, - 40241, - 40248, - 40240, - 40261, - 40258, - 40259, - 40254, - 40247, - 40256, - 40253, - 32757, - 40237, - 40586, - 40585, - 40589, - 40624, - 40648, - 40666, - 40699, - 40703, - 40740, - 40739, - 40738, - 40788, - 40864, - 20785, - 20781, - 20782, - 22168, - 22172, - 22167, - 22170, - 22173, - 22169, - 22896, - 23356, - 23657, - 23658, - 24000, - 24173, - 24174, - 25048, - 25055, - 25069, - 25070, - 25073, - 25066, - 25072, - 25067, - 25046, - 25065, - 25855, - 25860, - 25853, - 25848, - 25857, - 25859, - 25852, - 26004, - 26075, - 26330, - 26331, - 26328, - 27333, - 27321, - 27325, - 27361, - 27334, - 27322, - 27318, - 27319, - 27335, - 27316, - 27309, - 27486, - 27593, - 27659, - 28679, - 28684, - 28685, - 28673, - 28677, - 28692, - 28686, - 28671, - 28672, - 28667, - 28710, - 28668, - 28663, - 28682, - 29185, - 29183, - 29177, - 29187, - 29181, - 29558, - 29880, - 29888, - 29877, - 29889, - 29886, - 29878, - 29883, - 29890, - 29972, - 29971, - 30300, - 30308, - 30297, - 30288, - 30291, - 30295, - 30298, - 30374, - 30397, - 30444, - 30658, - 30650, - 30975, - 30988, - 30995, - 30996, - 30985, - 30992, - 30994, - 30993, - 31149, - 31148, - 31327, - 31772, - 31785, - 31769, - 31776, - 31775, - 31789, - 31773, - 31782, - 31784, - 31778, - 31781, - 31792, - 32348, - 32336, - 32342, - 32355, - 32344, - 32354, - 32351, - 32337, - 32352, - 32343, - 32339, - 32693, - 32691, - 32759, - 32760, - 32885, - 33233, - 33234, - 33232, - 33375, - 33374, - 34228, - 34246, - 34240, - 34243, - 34242, - 34227, - 34229, - 34237, - 34247, - 34244, - 34239, - 34251, - 34254, - 34248, - 34245, - 34225, - 34230, - 34258, - 34340, - 34232, - 34231, - 34238, - 34409, - 34791, - 34790, - 34786, - 34779, - 34795, - 34794, - 34789, - 34783, - 34803, - 34788, - 34772, - 34780, - 34771, - 34797, - 34776, - 34787, - 34724, - 34775, - 34777, - 34817, - 34804, - 34792, - 34781, - 35155, - 35147, - 35151, - 35148, - 35142, - 35152, - 35153, - 35145, - 35626, - 35623, - 35619, - 35635, - 35632, - 35637, - 35655, - 35631, - 35644, - 35646, - 35633, - 35621, - 35639, - 35622, - 35638, - 35630, - 35620, - 35643, - 35645, - 35642, - 35906, - 35957, - 35993, - 35992, - 35991, - 36094, - 36100, - 36098, - 36096, - 36444, - 36450, - 36448, - 36439, - 36438, - 36446, - 36453, - 36455, - 36443, - 36442, - 36449, - 36445, - 36457, - 36436, - 36678, - 36679, - 36680, - 36683, - 37160, - 37178, - 37179, - 37182, - 37288, - 37285, - 37287, - 37295, - 37290, - 37813, - 37772, - 37778, - 37815, - 37787, - 37789, - 37769, - 37799, - 37774, - 37802, - 37790, - 37798, - 37781, - 37768, - 37785, - 37791, - 37773, - 37809, - 37777, - 37810, - 37796, - 37800, - 37812, - 37795, - 37797, - 38354, - 38355, - 38353, - 38579, - 38615, - 38618, - 24002, - 38623, - 38616, - 38621, - 38691, - 38690, - 38693, - 38828, - 38830, - 38824, - 38827, - 38820, - 38826, - 38818, - 38821, - 38871, - 38873, - 38870, - 38872, - 38906, - 38992, - 38993, - 38994, - 39096, - 39233, - 39228, - 39226, - 39439, - 39435, - 39433, - 39437, - 39428, - 39441, - 39434, - 39429, - 39431, - 39430, - 39616, - 39644, - 39688, - 39684, - 39685, - 39721, - 39733, - 39754, - 39756, - 39755, - 39879, - 39878, - 39875, - 39871, - 39873, - 39861, - 39864, - 39891, - 39862, - 39876, - 39865, - 39869, - 40284, - 40275, - 40271, - 40266, - 40283, - 40267, - 40281, - 40278, - 40268, - 40279, - 40274, - 40276, - 40287, - 40280, - 40282, - 40590, - 40588, - 40671, - 40705, - 40704, - 40726, - 40741, - 40747, - 40746, - 40745, - 40744, - 40780, - 40789, - 20788, - 20789, - 21142, - 21239, - 21428, - 22187, - 22189, - 22182, - 22183, - 22186, - 22188, - 22746, - 22749, - 22747, - 22802, - 23357, - 23358, - 23359, - 24003, - 24176, - 24511, - 25083, - 25863, - 25872, - 25869, - 25865, - 25868, - 25870, - 25988, - 26078, - 26077, - 26334, - 27367, - 27360, - 27340, - 27345, - 27353, - 27339, - 27359, - 27356, - 27344, - 27371, - 27343, - 27341, - 27358, - 27488, - 27568, - 27660, - 28697, - 28711, - 28704, - 28694, - 28715, - 28705, - 28706, - 28707, - 28713, - 28695, - 28708, - 28700, - 28714, - 29196, - 29194, - 29191, - 29186, - 29189, - 29349, - 29350, - 29348, - 29347, - 29345, - 29899, - 29893, - 29879, - 29891, - 29974, - 30304, - 30665, - 30666, - 30660, - 30705, - 31005, - 31003, - 31009, - 31004, - 30999, - 31006, - 31152, - 31335, - 31336, - 31795, - 31804, - 31801, - 31788, - 31803, - 31980, - 31978, - 32374, - 32373, - 32376, - 32368, - 32375, - 32367, - 32378, - 32370, - 32372, - 32360, - 32587, - 32586, - 32643, - 32646, - 32695, - 32765, - 32766, - 32888, - 33239, - 33237, - 33380, - 33377, - 33379, - 34283, - 34289, - 34285, - 34265, - 34273, - 34280, - 34266, - 34263, - 34284, - 34290, - 34296, - 34264, - 34271, - 34275, - 34268, - 34257, - 34288, - 34278, - 34287, - 34270, - 34274, - 34816, - 34810, - 34819, - 34806, - 34807, - 34825, - 34828, - 34827, - 34822, - 34812, - 34824, - 34815, - 34826, - 34818, - 35170, - 35162, - 35163, - 35159, - 35169, - 35164, - 35160, - 35165, - 35161, - 35208, - 35255, - 35254, - 35318, - 35664, - 35656, - 35658, - 35648, - 35667, - 35670, - 35668, - 35659, - 35669, - 35665, - 35650, - 35666, - 35671, - 35907, - 35959, - 35958, - 35994, - 36102, - 36103, - 36105, - 36268, - 36266, - 36269, - 36267, - 36461, - 36472, - 36467, - 36458, - 36463, - 36475, - 36546, - 36690, - 36689, - 36687, - 36688, - 36691, - 36788, - 37184, - 37183, - 37296, - 37293, - 37854, - 37831, - 37839, - 37826, - 37850, - 37840, - 37881, - 37868, - 37836, - 37849, - 37801, - 37862, - 37834, - 37844, - 37870, - 37859, - 37845, - 37828, - 37838, - 37824, - 37842, - 37863, - 38269, - 38362, - 38363, - 38625, - 38697, - 38699, - 38700, - 38696, - 38694, - 38835, - 38839, - 38838, - 38877, - 38878, - 38879, - 39004, - 39001, - 39005, - 38999, - 39103, - 39101, - 39099, - 39102, - 39240, - 39239, - 39235, - 39334, - 39335, - 39450, - 39445, - 39461, - 39453, - 39460, - 39451, - 39458, - 39456, - 39463, - 39459, - 39454, - 39452, - 39444, - 39618, - 39691, - 39690, - 39694, - 39692, - 39735, - 39914, - 39915, - 39904, - 39902, - 39908, - 39910, - 39906, - 39920, - 39892, - 39895, - 39916, - 39900, - 39897, - 39909, - 39893, - 39905, - 39898, - 40311, - 40321, - 40330, - 40324, - 40328, - 40305, - 40320, - 40312, - 40326, - 40331, - 40332, - 40317, - 40299, - 40308, - 40309, - 40304, - 40297, - 40325, - 40307, - 40315, - 40322, - 40303, - 40313, - 40319, - 40327, - 40296, - 40596, - 40593, - 40640, - 40700, - 40749, - 40768, - 40769, - 40781, - 40790, - 40791, - 40792, - 21303, - 22194, - 22197, - 22195, - 22755, - 23365, - 24006, - 24007, - 24302, - 24303, - 24512, - 24513, - 25081, - 25879, - 25878, - 25877, - 25875, - 26079, - 26344, - 26339, - 26340, - 27379, - 27376, - 27370, - 27368, - 27385, - 27377, - 27374, - 27375, - 28732, - 28725, - 28719, - 28727, - 28724, - 28721, - 28738, - 28728, - 28735, - 28730, - 28729, - 28736, - 28731, - 28723, - 28737, - 29203, - 29204, - 29352, - 29565, - 29564, - 29882, - 30379, - 30378, - 30398, - 30445, - 30668, - 30670, - 30671, - 30669, - 30706, - 31013, - 31011, - 31015, - 31016, - 31012, - 31017, - 31154, - 31342, - 31340, - 31341, - 31479, - 31817, - 31816, - 31818, - 31815, - 31813, - 31982, - 32379, - 32382, - 32385, - 32384, - 32698, - 32767, - 32889, - 33243, - 33241, - 33291, - 33384, - 33385, - 34338, - 34303, - 34305, - 34302, - 34331, - 34304, - 34294, - 34308, - 34313, - 34309, - 34316, - 34301, - 34841, - 34832, - 34833, - 34839, - 34835, - 34838, - 35171, - 35174, - 35257, - 35319, - 35680, - 35690, - 35677, - 35688, - 35683, - 35685, - 35687, - 35693, - 36270, - 36486, - 36488, - 36484, - 36697, - 36694, - 36695, - 36693, - 36696, - 36698, - 37005, - 37187, - 37185, - 37303, - 37301, - 37298, - 37299, - 37899, - 37907, - 37883, - 37920, - 37903, - 37908, - 37886, - 37909, - 37904, - 37928, - 37913, - 37901, - 37877, - 37888, - 37879, - 37895, - 37902, - 37910, - 37906, - 37882, - 37897, - 37880, - 37898, - 37887, - 37884, - 37900, - 37878, - 37905, - 37894, - 38366, - 38368, - 38367, - 38702, - 38703, - 38841, - 38843, - 38909, - 38910, - 39008, - 39010, - 39011, - 39007, - 39105, - 39106, - 39248, - 39246, - 39257, - 39244, - 39243, - 39251, - 39474, - 39476, - 39473, - 39468, - 39466, - 39478, - 39465, - 39470, - 39480, - 39469, - 39623, - 39626, - 39622, - 39696, - 39698, - 39697, - 39947, - 39944, - 39927, - 39941, - 39954, - 39928, - 40000, - 39943, - 39950, - 39942, - 39959, - 39956, - 39945, - 40351, - 40345, - 40356, - 40349, - 40338, - 40344, - 40336, - 40347, - 40352, - 40340, - 40348, - 40362, - 40343, - 40353, - 40346, - 40354, - 40360, - 40350, - 40355, - 40383, - 40361, - 40342, - 40358, - 40359, - 40601, - 40603, - 40602, - 40677, - 40676, - 40679, - 40678, - 40752, - 40750, - 40795, - 40800, - 40798, - 40797, - 40793, - 40849, - 20794, - 20793, - 21144, - 21143, - 22211, - 22205, - 22206, - 23368, - 23367, - 24011, - 24015, - 24305, - 25085, - 25883, - 27394, - 27388, - 27395, - 27384, - 27392, - 28739, - 28740, - 28746, - 28744, - 28745, - 28741, - 28742, - 29213, - 29210, - 29209, - 29566, - 29975, - 30314, - 30672, - 31021, - 31025, - 31023, - 31828, - 31827, - 31986, - 32394, - 32391, - 32392, - 32395, - 32390, - 32397, - 32589, - 32699, - 32816, - 33245, - 34328, - 34346, - 34342, - 34335, - 34339, - 34332, - 34329, - 34343, - 34350, - 34337, - 34336, - 34345, - 34334, - 34341, - 34857, - 34845, - 34843, - 34848, - 34852, - 34844, - 34859, - 34890, - 35181, - 35177, - 35182, - 35179, - 35322, - 35705, - 35704, - 35653, - 35706, - 35707, - 36112, - 36116, - 36271, - 36494, - 36492, - 36702, - 36699, - 36701, - 37190, - 37188, - 37189, - 37305, - 37951, - 37947, - 37942, - 37929, - 37949, - 37948, - 37936, - 37945, - 37930, - 37943, - 37932, - 37952, - 37937, - 38373, - 38372, - 38371, - 38709, - 38714, - 38847, - 38881, - 39012, - 39113, - 39110, - 39104, - 39256, - 39254, - 39481, - 39485, - 39494, - 39492, - 39490, - 39489, - 39482, - 39487, - 39629, - 39701, - 39703, - 39704, - 39702, - 39738, - 39762, - 39979, - 39965, - 39964, - 39980, - 39971, - 39976, - 39977, - 39972, - 39969, - 40375, - 40374, - 40380, - 40385, - 40391, - 40394, - 40399, - 40382, - 40389, - 40387, - 40379, - 40373, - 40398, - 40377, - 40378, - 40364, - 40392, - 40369, - 40365, - 40396, - 40371, - 40397, - 40370, - 40570, - 40604, - 40683, - 40686, - 40685, - 40731, - 40728, - 40730, - 40753, - 40782, - 40805, - 40804, - 40850, - 20153, - 22214, - 22213, - 22219, - 22897, - 23371, - 23372, - 24021, - 24017, - 24306, - 25889, - 25888, - 25894, - 25890, - 27403, - 27400, - 27401, - 27661, - 28757, - 28758, - 28759, - 28754, - 29214, - 29215, - 29353, - 29567, - 29912, - 29909, - 29913, - 29911, - 30317, - 30381, - 31029, - 31156, - 31344, - 31345, - 31831, - 31836, - 31833, - 31835, - 31834, - 31988, - 31985, - 32401, - 32591, - 32647, - 33246, - 33387, - 34356, - 34357, - 34355, - 34348, - 34354, - 34358, - 34860, - 34856, - 34854, - 34858, - 34853, - 35185, - 35263, - 35262, - 35323, - 35710, - 35716, - 35714, - 35718, - 35717, - 35711, - 36117, - 36501, - 36500, - 36506, - 36498, - 36496, - 36502, - 36503, - 36704, - 36706, - 37191, - 37964, - 37968, - 37962, - 37963, - 37967, - 37959, - 37957, - 37960, - 37961, - 37958, - 38719, - 38883, - 39018, - 39017, - 39115, - 39252, - 39259, - 39502, - 39507, - 39508, - 39500, - 39503, - 39496, - 39498, - 39497, - 39506, - 39504, - 39632, - 39705, - 39723, - 39739, - 39766, - 39765, - 40006, - 40008, - 39999, - 40004, - 39993, - 39987, - 40001, - 39996, - 39991, - 39988, - 39986, - 39997, - 39990, - 40411, - 40402, - 40414, - 40410, - 40395, - 40400, - 40412, - 40401, - 40415, - 40425, - 40409, - 40408, - 40406, - 40437, - 40405, - 40413, - 40630, - 40688, - 40757, - 40755, - 40754, - 40770, - 40811, - 40853, - 40866, - 20797, - 21145, - 22760, - 22759, - 22898, - 23373, - 24024, - 34863, - 24399, - 25089, - 25091, - 25092, - 25897, - 25893, - 26006, - 26347, - 27409, - 27410, - 27407, - 27594, - 28763, - 28762, - 29218, - 29570, - 29569, - 29571, - 30320, - 30676, - 31847, - 31846, - 32405, - 33388, - 34362, - 34368, - 34361, - 34364, - 34353, - 34363, - 34366, - 34864, - 34866, - 34862, - 34867, - 35190, - 35188, - 35187, - 35326, - 35724, - 35726, - 35723, - 35720, - 35909, - 36121, - 36504, - 36708, - 36707, - 37308, - 37986, - 37973, - 37981, - 37975, - 37982, - 38852, - 38853, - 38912, - 39510, - 39513, - 39710, - 39711, - 39712, - 40018, - 40024, - 40016, - 40010, - 40013, - 40011, - 40021, - 40025, - 40012, - 40014, - 40443, - 40439, - 40431, - 40419, - 40427, - 40440, - 40420, - 40438, - 40417, - 40430, - 40422, - 40434, - 40432, - 40418, - 40428, - 40436, - 40435, - 40424, - 40429, - 40642, - 40656, - 40690, - 40691, - 40710, - 40732, - 40760, - 40759, - 40758, - 40771, - 40783, - 40817, - 40816, - 40814, - 40815, - 22227, - 22221, - 23374, - 23661, - 25901, - 26349, - 26350, - 27411, - 28767, - 28769, - 28765, - 28768, - 29219, - 29915, - 29925, - 30677, - 31032, - 31159, - 31158, - 31850, - 32407, - 32649, - 33389, - 34371, - 34872, - 34871, - 34869, - 34891, - 35732, - 35733, - 36510, - 36511, - 36512, - 36509, - 37310, - 37309, - 37314, - 37995, - 37992, - 37993, - 38629, - 38726, - 38723, - 38727, - 38855, - 38885, - 39518, - 39637, - 39769, - 40035, - 40039, - 40038, - 40034, - 40030, - 40032, - 40450, - 40446, - 40455, - 40451, - 40454, - 40453, - 40448, - 40449, - 40457, - 40447, - 40445, - 40452, - 40608, - 40734, - 40774, - 40820, - 40821, - 40822, - 22228, - 25902, - 26040, - 27416, - 27417, - 27415, - 27418, - 28770, - 29222, - 29354, - 30680, - 30681, - 31033, - 31849, - 31851, - 31990, - 32410, - 32408, - 32411, - 32409, - 33248, - 33249, - 34374, - 34375, - 34376, - 35193, - 35194, - 35196, - 35195, - 35327, - 35736, - 35737, - 36517, - 36516, - 36515, - 37998, - 37997, - 37999, - 38001, - 38003, - 38729, - 39026, - 39263, - 40040, - 40046, - 40045, - 40459, - 40461, - 40464, - 40463, - 40466, - 40465, - 40609, - 40693, - 40713, - 40775, - 40824, - 40827, - 40826, - 40825, - 22302, - 28774, - 31855, - 34876, - 36274, - 36518, - 37315, - 38004, - 38008, - 38006, - 38005, - 39520, - 40052, - 40051, - 40049, - 40053, - 40468, - 40467, - 40694, - 40714, - 40868, - 28776, - 28773, - 31991, - 34410, - 34878, - 34877, - 34879, - 35742, - 35996, - 36521, - 36553, - 38731, - 39027, - 39028, - 39116, - 39265, - 39339, - 39524, - 39526, - 39527, - 39716, - 40469, - 40471, - 40776, - 25095, - 27422, - 29223, - 34380, - 36520, - 38018, - 38016, - 38017, - 39529, - 39528, - 39726, - 40473, - 29225, - 34379, - 35743, - 38019, - 40057, - 40631, - 30325, - 39531, - 40058, - 40477, - 28777, - 28778, - 40612, - 40830, - 40777, - 40856, - 30849, - 37561, - 35023, - 22715, - 24658, - 31911, - 23290, - 9556, - 9574, - 9559, - 9568, - 9580, - 9571, - 9562, - 9577, - 9565, - 9554, - 9572, - 9557, - 9566, - 9578, - 9569, - 9560, - 9575, - 9563, - 9555, - 9573, - 9558, - 9567, - 9579, - 9570, - 9561, - 9576, - 9564, - 9553, - 9552, - 9581, - 9582, - 9584, - 9583, - 65517, - 132423, - 37595, - 132575, - 147397, - 34124, - 17077, - 29679, - 20917, - 13897, - 149826, - 166372, - 37700, - 137691, - 33518, - 146632, - 30780, - 26436, - 25311, - 149811, - 166314, - 131744, - 158643, - 135941, - 20395, - 140525, - 20488, - 159017, - 162436, - 144896, - 150193, - 140563, - 20521, - 131966, - 24484, - 131968, - 131911, - 28379, - 132127, - 20605, - 20737, - 13434, - 20750, - 39020, - 14147, - 33814, - 149924, - 132231, - 20832, - 144308, - 20842, - 134143, - 139516, - 131813, - 140592, - 132494, - 143923, - 137603, - 23426, - 34685, - 132531, - 146585, - 20914, - 20920, - 40244, - 20937, - 20943, - 20945, - 15580, - 20947, - 150182, - 20915, - 20962, - 21314, - 20973, - 33741, - 26942, - 145197, - 24443, - 21003, - 21030, - 21052, - 21173, - 21079, - 21140, - 21177, - 21189, - 31765, - 34114, - 21216, - 34317, - 158483, - 21253, - 166622, - 21833, - 28377, - 147328, - 133460, - 147436, - 21299, - 21316, - 134114, - 27851, - 136998, - 26651, - 29653, - 24650, - 16042, - 14540, - 136936, - 29149, - 17570, - 21357, - 21364, - 165547, - 21374, - 21375, - 136598, - 136723, - 30694, - 21395, - 166555, - 21408, - 21419, - 21422, - 29607, - 153458, - 16217, - 29596, - 21441, - 21445, - 27721, - 20041, - 22526, - 21465, - 15019, - 134031, - 21472, - 147435, - 142755, - 21494, - 134263, - 21523, - 28793, - 21803, - 26199, - 27995, - 21613, - 158547, - 134516, - 21853, - 21647, - 21668, - 18342, - 136973, - 134877, - 15796, - 134477, - 166332, - 140952, - 21831, - 19693, - 21551, - 29719, - 21894, - 21929, - 22021, - 137431, - 147514, - 17746, - 148533, - 26291, - 135348, - 22071, - 26317, - 144010, - 26276, - 26285, - 22093, - 22095, - 30961, - 22257, - 38791, - 21502, - 22272, - 22255, - 22253, - 166758, - 13859, - 135759, - 22342, - 147877, - 27758, - 28811, - 22338, - 14001, - 158846, - 22502, - 136214, - 22531, - 136276, - 148323, - 22566, - 150517, - 22620, - 22698, - 13665, - 22752, - 22748, - 135740, - 22779, - 23551, - 22339, - 172368, - 148088, - 37843, - 13729, - 22815, - 26790, - 14019, - 28249, - 136766, - 23076, - 21843, - 136850, - 34053, - 22985, - 134478, - 158849, - 159018, - 137180, - 23001, - 137211, - 137138, - 159142, - 28017, - 137256, - 136917, - 23033, - 159301, - 23211, - 23139, - 14054, - 149929, - 23159, - 14088, - 23190, - 29797, - 23251, - 159649, - 140628, - 15749, - 137489, - 14130, - 136888, - 24195, - 21200, - 23414, - 25992, - 23420, - 162318, - 16388, - 18525, - 131588, - 23509, - 24928, - 137780, - 154060, - 132517, - 23539, - 23453, - 19728, - 23557, - 138052, - 23571, - 29646, - 23572, - 138405, - 158504, - 23625, - 18653, - 23685, - 23785, - 23791, - 23947, - 138745, - 138807, - 23824, - 23832, - 23878, - 138916, - 23738, - 24023, - 33532, - 14381, - 149761, - 139337, - 139635, - 33415, - 14390, - 15298, - 24110, - 27274, - 24181, - 24186, - 148668, - 134355, - 21414, - 20151, - 24272, - 21416, - 137073, - 24073, - 24308, - 164994, - 24313, - 24315, - 14496, - 24316, - 26686, - 37915, - 24333, - 131521, - 194708, - 15070, - 18606, - 135994, - 24378, - 157832, - 140240, - 24408, - 140401, - 24419, - 38845, - 159342, - 24434, - 37696, - 166454, - 24487, - 23990, - 15711, - 152144, - 139114, - 159992, - 140904, - 37334, - 131742, - 166441, - 24625, - 26245, - 137335, - 14691, - 15815, - 13881, - 22416, - 141236, - 31089, - 15936, - 24734, - 24740, - 24755, - 149890, - 149903, - 162387, - 29860, - 20705, - 23200, - 24932, - 33828, - 24898, - 194726, - 159442, - 24961, - 20980, - 132694, - 24967, - 23466, - 147383, - 141407, - 25043, - 166813, - 170333, - 25040, - 14642, - 141696, - 141505, - 24611, - 24924, - 25886, - 25483, - 131352, - 25285, - 137072, - 25301, - 142861, - 25452, - 149983, - 14871, - 25656, - 25592, - 136078, - 137212, - 25744, - 28554, - 142902, - 38932, - 147596, - 153373, - 25825, - 25829, - 38011, - 14950, - 25658, - 14935, - 25933, - 28438, - 150056, - 150051, - 25989, - 25965, - 25951, - 143486, - 26037, - 149824, - 19255, - 26065, - 16600, - 137257, - 26080, - 26083, - 24543, - 144384, - 26136, - 143863, - 143864, - 26180, - 143780, - 143781, - 26187, - 134773, - 26215, - 152038, - 26227, - 26228, - 138813, - 143921, - 165364, - 143816, - 152339, - 30661, - 141559, - 39332, - 26370, - 148380, - 150049, - 15147, - 27130, - 145346, - 26462, - 26471, - 26466, - 147917, - 168173, - 26583, - 17641, - 26658, - 28240, - 37436, - 26625, - 144358, - 159136, - 26717, - 144495, - 27105, - 27147, - 166623, - 26995, - 26819, - 144845, - 26881, - 26880, - 15666, - 14849, - 144956, - 15232, - 26540, - 26977, - 166474, - 17148, - 26934, - 27032, - 15265, - 132041, - 33635, - 20624, - 27129, - 144985, - 139562, - 27205, - 145155, - 27293, - 15347, - 26545, - 27336, - 168348, - 15373, - 27421, - 133411, - 24798, - 27445, - 27508, - 141261, - 28341, - 146139, - 132021, - 137560, - 14144, - 21537, - 146266, - 27617, - 147196, - 27612, - 27703, - 140427, - 149745, - 158545, - 27738, - 33318, - 27769, - 146876, - 17605, - 146877, - 147876, - 149772, - 149760, - 146633, - 14053, - 15595, - 134450, - 39811, - 143865, - 140433, - 32655, - 26679, - 159013, - 159137, - 159211, - 28054, - 27996, - 28284, - 28420, - 149887, - 147589, - 159346, - 34099, - 159604, - 20935, - 27804, - 28189, - 33838, - 166689, - 28207, - 146991, - 29779, - 147330, - 31180, - 28239, - 23185, - 143435, - 28664, - 14093, - 28573, - 146992, - 28410, - 136343, - 147517, - 17749, - 37872, - 28484, - 28508, - 15694, - 28532, - 168304, - 15675, - 28575, - 147780, - 28627, - 147601, - 147797, - 147513, - 147440, - 147380, - 147775, - 20959, - 147798, - 147799, - 147776, - 156125, - 28747, - 28798, - 28839, - 28801, - 28876, - 28885, - 28886, - 28895, - 16644, - 15848, - 29108, - 29078, - 148087, - 28971, - 28997, - 23176, - 29002, - 29038, - 23708, - 148325, - 29007, - 37730, - 148161, - 28972, - 148570, - 150055, - 150050, - 29114, - 166888, - 28861, - 29198, - 37954, - 29205, - 22801, - 37955, - 29220, - 37697, - 153093, - 29230, - 29248, - 149876, - 26813, - 29269, - 29271, - 15957, - 143428, - 26637, - 28477, - 29314, - 29482, - 29483, - 149539, - 165931, - 18669, - 165892, - 29480, - 29486, - 29647, - 29610, - 134202, - 158254, - 29641, - 29769, - 147938, - 136935, - 150052, - 26147, - 14021, - 149943, - 149901, - 150011, - 29687, - 29717, - 26883, - 150054, - 29753, - 132547, - 16087, - 29788, - 141485, - 29792, - 167602, - 29767, - 29668, - 29814, - 33721, - 29804, - 14128, - 29812, - 37873, - 27180, - 29826, - 18771, - 150156, - 147807, - 150137, - 166799, - 23366, - 166915, - 137374, - 29896, - 137608, - 29966, - 29929, - 29982, - 167641, - 137803, - 23511, - 167596, - 37765, - 30029, - 30026, - 30055, - 30062, - 151426, - 16132, - 150803, - 30094, - 29789, - 30110, - 30132, - 30210, - 30252, - 30289, - 30287, - 30319, - 30326, - 156661, - 30352, - 33263, - 14328, - 157969, - 157966, - 30369, - 30373, - 30391, - 30412, - 159647, - 33890, - 151709, - 151933, - 138780, - 30494, - 30502, - 30528, - 25775, - 152096, - 30552, - 144044, - 30639, - 166244, - 166248, - 136897, - 30708, - 30729, - 136054, - 150034, - 26826, - 30895, - 30919, - 30931, - 38565, - 31022, - 153056, - 30935, - 31028, - 30897, - 161292, - 36792, - 34948, - 166699, - 155779, - 140828, - 31110, - 35072, - 26882, - 31104, - 153687, - 31133, - 162617, - 31036, - 31145, - 28202, - 160038, - 16040, - 31174, - 168205, - 31188, + "big5": [null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 17392, 19506, + 17923, 17830, 17784, 160359, 19831, 17843, 162993, + 19682, 163013, 15253, 18230, 18244, 19527, 19520, + 148159, 144919, 160594, 159371, 159954, 19543, + 172881, 18255, 17882, 19589, 162924, 19719, 19108, + 18081, 158499, 29221, 154196, 137827, 146950, + 147297, 26189, 22267, null, 32149, 22813, 166841, + 15860, 38708, 162799, 23515, 138590, 23204, 13861, + 171696, 23249, 23479, 23804, 26478, 34195, 170309, + 29793, 29853, 14453, 138579, 145054, 155681, 16108, + 153822, 15093, 31484, 40855, 147809, 166157, 143850, + 133770, 143966, 17162, 33924, 40854, 37935, 18736, + 34323, 22678, 38730, 37400, 31184, 31282, 26208, + 27177, 34973, 29772, 31685, 26498, 31276, 21071, + 36934, 13542, 29636, 155065, 29894, 40903, 22451, + 18735, 21580, 16689, 145038, 22552, 31346, 162661, + 35727, 18094, 159368, 16769, 155033, 31662, 140476, + 40904, 140481, 140489, 140492, 40905, 34052, 144827, + 16564, 40906, 17633, 175615, 25281, 28782, 40907, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 12736, + 12737, 12738, 12739, 12740, 131340, 12741, 131281, + 131277, 12742, 12743, 131275, 139240, 12744, 131274, + 12745, 12746, 12747, 12748, 131342, 12749, 12750, + 256, 193, 461, 192, 274, 201, 282, 200, 332, 211, + 465, 210, null, 7870, null, 7872, 202, 257, 225, + 462, 224, 593, 275, 233, 283, 232, 299, 237, 464, + 236, 333, 243, 466, 242, 363, 250, 468, 249, 470, + 472, 474, 476, 252, null, 7871, null, 7873, 234, + 609, 9178, 9179, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 172969, 135493, + null, 25866, null, null, 20029, 28381, 40270, 37343, + null, null, 161589, 25745, 20250, 20264, 20392, + 20822, 20852, 20892, 20964, 21153, 21160, 21307, + 21326, 21457, 21464, 22242, 22768, 22788, 22791, + 22834, 22836, 23398, 23454, 23455, 23706, 24198, + 24635, 25993, 26622, 26628, 26725, 27982, 28860, + 30005, 32420, 32428, 32442, 32455, 32463, 32479, + 32518, 32567, 33402, 33487, 33647, 35270, 35774, + 35810, 36710, 36711, 36718, 29713, 31996, 32205, + 26950, 31433, 21031, null, null, null, null, 37260, + 30904, 37214, 32956, null, 36107, 33014, 133607, + null, null, 32927, 40647, 19661, 40393, 40460, + 19518, 171510, 159758, 40458, 172339, 13761, null, + 28314, 33342, 29977, null, 18705, 39532, 39567, + 40857, 31111, 164972, 138698, 132560, 142054, 20004, + 20097, 20096, 20103, 20159, 20203, 20279, 13388, + 20413, 15944, 20483, 20616, 13437, 13459, 13477, + 20870, 22789, 20955, 20988, 20997, 20105, 21113, + 21136, 21287, 13767, 21417, 13649, 21424, 13651, + 21442, 21539, 13677, 13682, 13953, 21651, 21667, + 21684, 21689, 21712, 21743, 21784, 21795, 21800, + 13720, 21823, 13733, 13759, 21975, 13765, 163204, + 21797, null, 134210, 134421, 151851, 21904, 142534, + 14828, 131905, 36422, 150968, 169189, 16467, 164030, + 30586, 142392, 14900, 18389, 164189, 158194, 151018, + 25821, 134524, 135092, 134357, 135412, 25741, 36478, + 134806, 134155, 135012, 142505, 164438, 148691, + null, 134470, 170573, 164073, 18420, 151207, 142530, + 39602, 14951, 169460, 16365, 13574, 152263, 169940, + 161992, 142660, 40302, 38933, null, 17369, 155813, + 25780, 21731, 142668, 142282, 135287, 14843, 135279, + 157402, 157462, 162208, 25834, 151634, 134211, + 36456, 139681, 166732, 132913, null, 18443, 131497, + 16378, 22643, 142733, null, 148936, 132348, 155799, + 134988, 134550, 21881, 16571, 17338, null, 19124, + 141926, 135325, 33194, 39157, 134556, 25465, 14846, + 141173, 36288, 22177, 25724, 15939, null, 173569, + 134665, 142031, 142537, null, 135368, 145858, 14738, + 14854, 164507, 13688, 155209, 139463, 22098, 134961, + 142514, 169760, 13500, 27709, 151099, null, null, + 161140, 142987, 139784, 173659, 167117, 134778, + 134196, 157724, 32659, 135375, 141315, 141625, + 13819, 152035, 134796, 135053, 134826, 16275, + 134960, 134471, 135503, 134732, null, 134827, + 134057, 134472, 135360, 135485, 16377, 140950, + 25650, 135085, 144372, 161337, 142286, 134526, + 134527, 142417, 142421, 14872, 134808, 135367, + 134958, 173618, 158544, 167122, 167321, 167114, + 38314, 21708, 33476, 21945, null, 171715, 39974, + 39606, 161630, 142830, 28992, 33133, 33004, 23580, + 157042, 33076, 14231, 21343, 164029, 37302, 134906, + 134671, 134775, 134907, 13789, 151019, 13833, + 134358, 22191, 141237, 135369, 134672, 134776, + 135288, 135496, 164359, 136277, 134777, 151120, + 142756, 23124, 135197, 135198, 135413, 135414, + 22428, 134673, 161428, 164557, 135093, 134779, + 151934, 14083, 135094, 135552, 152280, 172733, + 149978, 137274, 147831, 164476, 22681, 21096, 13850, + 153405, 31666, 23400, 18432, 19244, 40743, 18919, + 39967, 39821, 154484, 143677, 22011, 13810, 22153, + 20008, 22786, 138177, 194680, 38737, 131206, 20059, + 20155, 13630, 23587, 24401, 24516, 14586, 25164, + 25909, 27514, 27701, 27706, 28780, 29227, 20012, + 29357, 149737, 32594, 31035, 31993, 32595, 156266, + 13505, null, 156491, 32770, 32896, 157202, 158033, + 21341, 34916, 35265, 161970, 35744, 36125, 38021, + 38264, 38271, 38376, 167439, 38886, 39029, 39118, + 39134, 39267, 170000, 40060, 40479, 40644, 27503, + 63751, 20023, 131207, 38429, 25143, 38050, null, + 20539, 28158, 171123, 40870, 15817, 34959, 147790, + 28791, 23797, 19232, 152013, 13657, 154928, 24866, + 166450, 36775, 37366, 29073, 26393, 29626, 144001, + 172295, 15499, 137600, 19216, 30948, 29698, 20910, + 165647, 16393, 27235, 172730, 16931, 34319, 133743, + 31274, 170311, 166634, 38741, 28749, 21284, 139390, + 37876, 30425, 166371, 40871, 30685, 20131, 20464, + 20668, 20015, 20247, 40872, 21556, 32139, 22674, + 22736, 138678, 24210, 24217, 24514, 141074, 25995, + 144377, 26905, 27203, 146531, 27903, null, 29184, + 148741, 29580, 16091, 150035, 23317, 29881, 35715, + 154788, 153237, 31379, 31724, 31939, 32364, 33528, + 34199, 40873, 34960, 40874, 36537, 40875, 36815, + 34143, 39392, 37409, 40876, 167353, 136255, 16497, + 17058, 23066, null, null, null, 39016, 26475, 17014, + 22333, null, 34262, 149883, 33471, 160013, 19585, + 159092, 23931, 158485, 159678, 40877, 40878, 23446, + 40879, 26343, 32347, 28247, 31178, 15752, 17603, + 143958, 141206, 17306, 17718, null, 23765, 146202, + 35577, 23672, 15634, 144721, 23928, 40882, 29015, + 17752, 147692, 138787, 19575, 14712, 13386, 131492, + 158785, 35532, 20404, 131641, 22975, 33132, 38998, + 170234, 24379, 134047, null, 139713, 166253, 16642, + 18107, 168057, 16135, 40883, 172469, 16632, 14294, + 18167, 158790, 16764, 165554, 160767, 17773, 14548, + 152730, 17761, 17691, 19849, 19579, 19830, 17898, + 16328, 150287, 13921, 17630, 17597, 16877, 23870, + 23880, 23894, 15868, 14351, 23972, 23993, 14368, + 14392, 24130, 24253, 24357, 24451, 14600, 14612, + 14655, 14669, 24791, 24893, 23781, 14729, 25015, + 25017, 25039, 14776, 25132, 25232, 25317, 25368, + 14840, 22193, 14851, 25570, 25595, 25607, 25690, + 14923, 25792, 23829, 22049, 40863, 14999, 25990, + 15037, 26111, 26195, 15090, 26258, 15138, 26390, + 15170, 26532, 26624, 15192, 26698, 26756, 15218, + 15217, 15227, 26889, 26947, 29276, 26980, 27039, + 27013, 15292, 27094, 15325, 27237, 27252, 27249, + 27266, 15340, 27289, 15346, 27307, 27317, 27348, + 27382, 27521, 27585, 27626, 27765, 27818, 15563, + 27906, 27910, 27942, 28033, 15599, 28068, 28081, + 28181, 28184, 28201, 28294, 166336, 28347, 28386, + 28378, 40831, 28392, 28393, 28452, 28468, 15686, + 147265, 28545, 28606, 15722, 15733, 29111, 23705, + 15754, 28716, 15761, 28752, 28756, 28783, 28799, + 28809, 131877, 17345, 13809, 134872, 147159, 22462, + 159443, 28990, 153568, 13902, 27042, 166889, 23412, + 31305, 153825, 169177, 31333, 31357, 154028, 31419, + 31408, 31426, 31427, 29137, 156813, 16842, 31450, + 31453, 31466, 16879, 21682, 154625, 31499, 31573, + 31529, 152334, 154878, 31650, 31599, 33692, 154548, + 158847, 31696, 33825, 31634, 31672, 154912, 15789, + 154725, 33938, 31738, 31750, 31797, 154817, 31812, + 31875, 149634, 31910, 26237, 148856, 31945, 31943, + 31974, 31860, 31987, 31989, 31950, 32359, 17693, + 159300, 32093, 159446, 29837, 32137, 32171, 28981, + 32179, 32210, 147543, 155689, 32228, 15635, 32245, + 137209, 32229, 164717, 32285, 155937, 155994, 32366, + 32402, 17195, 37996, 32295, 32576, 32577, 32583, + 31030, 156368, 39393, 32663, 156497, 32675, 136801, + 131176, 17756, 145254, 17667, 164666, 32762, 156809, + 32773, 32776, 32797, 32808, 32815, 172167, 158915, + 32827, 32828, 32865, 141076, 18825, 157222, 146915, + 157416, 26405, 32935, 166472, 33031, 33050, 22704, + 141046, 27775, 156824, 151480, 25831, 136330, 33304, + 137310, 27219, 150117, 150165, 17530, 33321, 133901, + 158290, 146814, 20473, 136445, 34018, 33634, 158474, + 149927, 144688, 137075, 146936, 33450, 26907, + 194964, 16859, 34123, 33488, 33562, 134678, 137140, + 14017, 143741, 144730, 33403, 33506, 33560, 147083, + 159139, 158469, 158615, 144846, 15807, 33565, 21996, + 33669, 17675, 159141, 33708, 33729, 33747, 13438, + 159444, 27223, 34138, 13462, 159298, 143087, 33880, + 154596, 33905, 15827, 17636, 27303, 33866, 146613, + 31064, 33960, 158614, 159351, 159299, 34014, 33807, + 33681, 17568, 33939, 34020, 154769, 16960, 154816, + 17731, 34100, 23282, 159385, 17703, 34163, 17686, + 26559, 34326, 165413, 165435, 34241, 159880, 34306, + 136578, 159949, 194994, 17770, 34344, 13896, 137378, + 21495, 160666, 34430, 34673, 172280, 34798, 142375, + 34737, 34778, 34831, 22113, 34412, 26710, 17935, + 34885, 34886, 161248, 146873, 161252, 34910, 34972, + 18011, 34996, 34997, 25537, 35013, 30583, 161551, + 35207, 35210, 35238, 35241, 35239, 35260, 166437, + 35303, 162084, 162493, 35484, 30611, 37374, 35472, + 162393, 31465, 162618, 147343, 18195, 162616, 29052, + 35596, 35615, 152624, 152933, 35647, 35660, 35661, + 35497, 150138, 35728, 35739, 35503, 136927, 17941, + 34895, 35995, 163156, 163215, 195028, 14117, 163155, + 36054, 163224, 163261, 36114, 36099, 137488, 36059, + 28764, 36113, 150729, 16080, 36215, 36265, 163842, + 135188, 149898, 15228, 164284, 160012, 31463, 36525, + 36534, 36547, 37588, 36633, 36653, 164709, 164882, + 36773, 37635, 172703, 133712, 36787, 18730, 166366, + 165181, 146875, 24312, 143970, 36857, 172052, + 165564, 165121, 140069, 14720, 159447, 36919, + 165180, 162494, 36961, 165228, 165387, 37032, + 165651, 37060, 165606, 37038, 37117, 37223, 15088, + 37289, 37316, 31916, 166195, 138889, 37390, 27807, + 37441, 37474, 153017, 37561, 166598, 146587, 166668, + 153051, 134449, 37676, 37739, 166625, 166891, 28815, + 23235, 166626, 166629, 18789, 37444, 166892, 166969, + 166911, 37747, 37979, 36540, 38277, 38310, 37926, + 38304, 28662, 17081, 140922, 165592, 135804, 146990, + 18911, 27676, 38523, 38550, 16748, 38563, 159445, + 25050, 38582, 30965, 166624, 38589, 21452, 18849, + 158904, 131700, 156688, 168111, 168165, 150225, + 137493, 144138, 38705, 34370, 38710, 18959, 17725, + 17797, 150249, 28789, 23361, 38683, 38748, 168405, + 38743, 23370, 168427, 38751, 37925, 20688, 143543, + 143548, 38793, 38815, 38833, 38846, 38848, 38866, + 38880, 152684, 38894, 29724, 169011, 38911, 38901, + 168989, 162170, 19153, 38964, 38963, 38987, 39014, + 15118, 160117, 15697, 132656, 147804, 153350, 39114, + 39095, 39112, 39111, 19199, 159015, 136915, 21936, + 39137, 39142, 39148, 37752, 39225, 150057, 19314, + 170071, 170245, 39413, 39436, 39483, 39440, 39512, + 153381, 14020, 168113, 170965, 39648, 39650, 170757, + 39668, 19470, 39700, 39725, 165376, 20532, 39732, + 158120, 14531, 143485, 39760, 39744, 171326, 23109, + 137315, 39822, 148043, 39938, 39935, 39948, 171624, + 40404, 171959, 172434, 172459, 172257, 172323, + 172511, 40318, 40323, 172340, 40462, 26760, 40388, + 139611, 172435, 172576, 137531, 172595, 40249, + 172217, 172724, 40592, 40597, 40606, 40610, 19764, + 40618, 40623, 148324, 40641, 15200, 14821, 15645, + 20274, 14270, 166955, 40706, 40712, 19350, 37924, + 159138, 40727, 40726, 40761, 22175, 22154, 40773, + 39352, 168075, 38898, 33919, 40802, 40809, 31452, + 40846, 29206, 19390, 149877, 149947, 29047, 150008, + 148296, 150097, 29598, 166874, 137466, 31135, + 166270, 167478, 37737, 37875, 166468, 37612, 37761, + 37835, 166252, 148665, 29207, 16107, 30578, 31299, + 28880, 148595, 148472, 29054, 137199, 28835, 137406, + 144793, 16071, 137349, 152623, 137208, 14114, + 136955, 137273, 14049, 137076, 137425, 155467, + 14115, 136896, 22363, 150053, 136190, 135848, + 136134, 136374, 34051, 145062, 34051, 33877, 149908, + 160101, 146993, 152924, 147195, 159826, 17652, + 145134, 170397, 159526, 26617, 14131, 15381, 15847, + 22636, 137506, 26640, 16471, 145215, 147681, 147595, + 147727, 158753, 21707, 22174, 157361, 22162, 135135, + 134056, 134669, 37830, 166675, 37788, 20216, 20779, + 14361, 148534, 20156, 132197, 131967, 20299, 20362, + 153169, 23144, 131499, 132043, 14745, 131850, + 132116, 13365, 20265, 131776, 167603, 131701, 35546, + 131596, 20120, 20685, 20749, 20386, 20227, 150030, + 147082, 20290, 20526, 20588, 20609, 20428, 20453, + 20568, 20732, 20825, 20827, 20829, 20830, 28278, + 144789, 147001, 147135, 28018, 137348, 147081, + 20904, 20931, 132576, 17629, 132259, 132242, 132241, + 36218, 166556, 132878, 21081, 21156, 133235, 21217, + 37742, 18042, 29068, 148364, 134176, 149932, 135396, + 27089, 134685, 29817, 16094, 29849, 29716, 29782, + 29592, 19342, 150204, 147597, 21456, 13700, 29199, + 147657, 21940, 131909, 21709, 134086, 22301, 37469, + 38644, 37734, 22493, 22413, 22399, 13886, 22731, + 23193, 166470, 136954, 137071, 136976, 23084, 22968, + 37519, 23166, 23247, 23058, 153926, 137715, 137313, + 148117, 14069, 27909, 29763, 23073, 155267, 23169, + 166871, 132115, 37856, 29836, 135939, 28933, 18802, + 37896, 166395, 37821, 14240, 23582, 23710, 24158, + 24136, 137622, 137596, 146158, 24269, 23375, 137475, + 137476, 14081, 137376, 14045, 136958, 14035, 33066, + 166471, 138682, 144498, 166312, 24332, 24334, + 137511, 137131, 23147, 137019, 23364, 34324, 161277, + 34912, 24702, 141408, 140843, 24539, 16056, 140719, + 140734, 168072, 159603, 25024, 131134, 131142, + 140827, 24985, 24984, 24693, 142491, 142599, 149204, + 168269, 25713, 149093, 142186, 14889, 142114, + 144464, 170218, 142968, 25399, 173147, 25782, 25393, + 25553, 149987, 142695, 25252, 142497, 25659, 25963, + 26994, 15348, 143502, 144045, 149897, 144043, 21773, + 144096, 137433, 169023, 26318, 144009, 143795, + 15072, 16784, 152964, 166690, 152975, 136956, + 152923, 152613, 30958, 143619, 137258, 143924, + 13412, 143887, 143746, 148169, 26254, 159012, 26219, + 19347, 26160, 161904, 138731, 26211, 144082, 144097, + 26142, 153714, 14545, 145466, 145340, 15257, 145314, + 144382, 29904, 15254, 26511, 149034, 26806, 26654, + 15300, 27326, 14435, 145365, 148615, 27187, 27218, + 27337, 27397, 137490, 25873, 26776, 27212, 15319, + 27258, 27479, 147392, 146586, 37792, 37618, 166890, + 166603, 37513, 163870, 166364, 37991, 28069, 28427, + 149996, 28007, 147327, 15759, 28164, 147516, 23101, + 28170, 22599, 27940, 30786, 28987, 148250, 148086, + 28913, 29264, 29319, 29332, 149391, 149285, 20857, + 150180, 132587, 29818, 147192, 144991, 150090, + 149783, 155617, 16134, 16049, 150239, 166947, + 147253, 24743, 16115, 29900, 29756, 37767, 29751, + 17567, 159210, 17745, 30083, 16227, 150745, 150790, + 16216, 30037, 30323, 173510, 15129, 29800, 166604, + 149931, 149902, 15099, 15821, 150094, 16127, 149957, + 149747, 37370, 22322, 37698, 166627, 137316, 20703, + 152097, 152039, 30584, 143922, 30478, 30479, 30587, + 149143, 145281, 14942, 149744, 29752, 29851, 16063, + 150202, 150215, 16584, 150166, 156078, 37639, + 152961, 30750, 30861, 30856, 30930, 29648, 31065, + 161601, 153315, 16654, 31131, 33942, 31141, 27181, + 147194, 31290, 31220, 16750, 136934, 16690, 37429, + 31217, 134476, 149900, 131737, 146874, 137070, + 13719, 21867, 13680, 13994, 131540, 134157, 31458, + 23129, 141045, 154287, 154268, 23053, 131675, 30960, + 23082, 154566, 31486, 16889, 31837, 31853, 16913, + 154547, 155324, 155302, 31949, 150009, 137136, + 31886, 31868, 31918, 27314, 32220, 32263, 32211, + 32590, 156257, 155996, 162632, 32151, 155266, 17002, + 158581, 133398, 26582, 131150, 144847, 22468, + 156690, 156664, 149858, 32733, 31527, 133164, + 154345, 154947, 31500, 155150, 39398, 34373, 39523, + 27164, 144447, 14818, 150007, 157101, 39455, 157088, + 33920, 160039, 158929, 17642, 33079, 17410, 32966, + 33033, 33090, 157620, 39107, 158274, 33378, 33381, + 158289, 33875, 159143, 34320, 160283, 23174, 16767, + 137280, 23339, 137377, 23268, 137432, 34464, 195004, + 146831, 34861, 160802, 23042, 34926, 20293, 34951, + 35007, 35046, 35173, 35149, 153219, 35156, 161669, + 161668, 166901, 166873, 166812, 166393, 16045, + 33955, 18165, 18127, 14322, 35389, 35356, 169032, + 24397, 37419, 148100, 26068, 28969, 28868, 137285, + 40301, 35999, 36073, 163292, 22938, 30659, 23024, + 17262, 14036, 36394, 36519, 150537, 36656, 36682, + 17140, 27736, 28603, 140065, 18587, 28537, 28299, + 137178, 39913, 14005, 149807, 37051, 37015, 21873, + 18694, 37307, 37892, 166475, 16482, 166652, 37927, + 166941, 166971, 34021, 35371, 38297, 38311, 38295, + 38294, 167220, 29765, 16066, 149759, 150082, 148458, + 16103, 143909, 38543, 167655, 167526, 167525, 16076, + 149997, 150136, 147438, 29714, 29803, 16124, 38721, + 168112, 26695, 18973, 168083, 153567, 38749, 37736, + 166281, 166950, 166703, 156606, 37562, 23313, 35689, + 18748, 29689, 147995, 38811, 38769, 39224, 134950, + 24001, 166853, 150194, 38943, 169178, 37622, 169431, + 37349, 17600, 166736, 150119, 166756, 39132, 166469, + 16128, 37418, 18725, 33812, 39227, 39245, 162566, + 15869, 39323, 19311, 39338, 39516, 166757, 153800, + 27279, 39457, 23294, 39471, 170225, 19344, 170312, + 39356, 19389, 19351, 37757, 22642, 135938, 22562, + 149944, 136424, 30788, 141087, 146872, 26821, 15741, + 37976, 14631, 24912, 141185, 141675, 24839, 40015, + 40019, 40059, 39989, 39952, 39807, 39887, 171565, + 39839, 172533, 172286, 40225, 19630, 147716, 40472, + 19632, 40204, 172468, 172269, 172275, 170287, 40357, + 33981, 159250, 159711, 158594, 34300, 17715, 159140, + 159364, 159216, 33824, 34286, 159232, 145367, + 155748, 31202, 144796, 144960, 18733, 149982, 15714, + 37851, 37566, 37704, 131775, 30905, 37495, 37965, + 20452, 13376, 36964, 152925, 30781, 30804, 30902, + 30795, 137047, 143817, 149825, 13978, 20338, 28634, + 28633, 28702, 28702, 21524, 147893, 22459, 22771, + 22410, 40214, 22487, 28980, 13487, 147884, 29163, + 158784, 151447, 23336, 137141, 166473, 24844, 23246, + 23051, 17084, 148616, 14124, 19323, 166396, 37819, + 37816, 137430, 134941, 33906, 158912, 136211, + 148218, 142374, 148417, 22932, 146871, 157505, + 32168, 155995, 155812, 149945, 149899, 166394, + 37605, 29666, 16105, 29876, 166755, 137375, 16097, + 150195, 27352, 29683, 29691, 16086, 150078, 150164, + 137177, 150118, 132007, 136228, 149989, 29768, + 149782, 28837, 149878, 37508, 29670, 37727, 132350, + 37681, 166606, 166422, 37766, 166887, 153045, 18741, + 166530, 29035, 149827, 134399, 22180, 132634, + 134123, 134328, 21762, 31172, 137210, 32254, 136898, + 150096, 137298, 17710, 37889, 14090, 166592, 149933, + 22960, 137407, 137347, 160900, 23201, 14050, 146779, + 14000, 37471, 23161, 166529, 137314, 37748, 15565, + 133812, 19094, 14730, 20724, 15721, 15692, 136092, + 29045, 17147, 164376, 28175, 168164, 17643, 27991, + 163407, 28775, 27823, 15574, 147437, 146989, 28162, + 28428, 15727, 132085, 30033, 14012, 13512, 18048, + 16090, 18545, 22980, 37486, 18750, 36673, 166940, + 158656, 22546, 22472, 14038, 136274, 28926, 148322, + 150129, 143331, 135856, 140221, 26809, 26983, + 136088, 144613, 162804, 145119, 166531, 145366, + 144378, 150687, 27162, 145069, 158903, 33854, 17631, + 17614, 159014, 159057, 158850, 159710, 28439, + 160009, 33597, 137018, 33773, 158848, 159827, + 137179, 22921, 23170, 137139, 23137, 23153, 137477, + 147964, 14125, 23023, 137020, 14023, 29070, 37776, + 26266, 148133, 23150, 23083, 148115, 27179, 147193, + 161590, 148571, 148170, 28957, 148057, 166369, + 20400, 159016, 23746, 148686, 163405, 148413, 27148, + 148054, 135940, 28838, 28979, 148457, 15781, 27871, + 194597, 150095, 32357, 23019, 23855, 15859, 24412, + 150109, 137183, 32164, 33830, 21637, 146170, 144128, + 131604, 22398, 133333, 132633, 16357, 139166, + 172726, 28675, 168283, 23920, 29583, 31955, 166489, + 168992, 20424, 32743, 29389, 29456, 162548, 29496, + 29497, 153334, 29505, 29512, 16041, 162584, 36972, + 29173, 149746, 29665, 33270, 16074, 30476, 16081, + 27810, 22269, 29721, 29726, 29727, 16098, 16112, + 16116, 16122, 29907, 16142, 16211, 30018, 30061, + 30066, 30093, 16252, 30152, 30172, 16320, 30285, + 16343, 30324, 16348, 30330, 151388, 29064, 22051, + 35200, 22633, 16413, 30531, 16441, 26465, 16453, + 13787, 30616, 16490, 16495, 23646, 30654, 30667, + 22770, 30744, 28857, 30748, 16552, 30777, 30791, + 30801, 30822, 33864, 152885, 31027, 26627, 31026, + 16643, 16649, 31121, 31129, 36795, 31238, 36796, + 16743, 31377, 16818, 31420, 33401, 16836, 31439, + 31451, 16847, 20001, 31586, 31596, 31611, 31762, + 31771, 16992, 17018, 31867, 31900, 17036, 31928, + 17044, 31981, 36755, 28864, 134351, 32207, 32212, + 32208, 32253, 32686, 32692, 29343, 17303, 32800, + 32805, 31545, 32814, 32817, 32852, 15820, 22452, + 28832, 32951, 33001, 17389, 33036, 29482, 33038, + 33042, 30048, 33044, 17409, 15161, 33110, 33113, + 33114, 17427, 22586, 33148, 33156, 17445, 33171, + 17453, 33189, 22511, 33217, 33252, 33364, 17551, + 33446, 33398, 33482, 33496, 33535, 17584, 33623, + 38505, 27018, 33797, 28917, 33892, 24803, 33928, + 17668, 33982, 34017, 34040, 34064, 34104, 34130, + 17723, 34159, 34160, 34272, 17783, 34418, 34450, + 34482, 34543, 38469, 34699, 17926, 17943, 34990, + 35071, 35108, 35143, 35217, 162151, 35369, 35384, + 35476, 35508, 35921, 36052, 36082, 36124, 18328, + 22623, 36291, 18413, 20206, 36410, 21976, 22356, + 36465, 22005, 36528, 18487, 36558, 36578, 36580, + 36589, 36594, 36791, 36801, 36810, 36812, 36915, + 39364, 18605, 39136, 37395, 18718, 37416, 37464, + 37483, 37553, 37550, 37567, 37603, 37611, 37619, + 37620, 37629, 37699, 37764, 37805, 18757, 18769, + 40639, 37911, 21249, 37917, 37933, 37950, 18794, + 37972, 38009, 38189, 38306, 18855, 38388, 38451, + 18917, 26528, 18980, 38720, 18997, 38834, 38850, + 22100, 19172, 24808, 39097, 19225, 39153, 22596, + 39182, 39193, 20916, 39196, 39223, 39234, 39261, + 39266, 19312, 39365, 19357, 39484, 39695, 31363, + 39785, 39809, 39901, 39921, 39924, 19565, 39968, + 14191, 138178, 40265, 39994, 40702, 22096, 40339, + 40381, 40384, 40444, 38134, 36790, 40571, 40620, + 40625, 40637, 40646, 38108, 40674, 40689, 40696, + 31432, 40772, 131220, 131767, 132000, 26906, 38083, + 22956, 132311, 22592, 38081, 14265, 132565, 132629, + 132726, 136890, 22359, 29043, 133826, 133837, + 134079, 21610, 194619, 134091, 21662, 134139, + 134203, 134227, 134245, 134268, 24807, 134285, + 22138, 134325, 134365, 134381, 134511, 134578, + 134600, 26965, 39983, 34725, 134660, 134670, 134871, + 135056, 134957, 134771, 23584, 135100, 24075, + 135260, 135247, 135286, 26398, 135291, 135304, + 135318, 13895, 135359, 135379, 135471, 135483, + 21348, 33965, 135907, 136053, 135990, 35713, 136567, + 136729, 137155, 137159, 20088, 28859, 137261, + 137578, 137773, 137797, 138282, 138352, 138412, + 138952, 25283, 138965, 139029, 29080, 26709, 139333, + 27113, 14024, 139900, 140247, 140282, 141098, + 141425, 141647, 33533, 141671, 141715, 142037, + 35237, 142056, 36768, 142094, 38840, 142143, 38983, + 39613, 142412, null, 142472, 142519, 154600, 142600, + 142610, 142775, 142741, 142914, 143220, 143308, + 143411, 143462, 144159, 144350, 24497, 26184, 26303, + 162425, 144743, 144883, 29185, 149946, 30679, + 144922, 145174, 32391, 131910, 22709, 26382, 26904, + 146087, 161367, 155618, 146961, 147129, 161278, + 139418, 18640, 19128, 147737, 166554, 148206, + 148237, 147515, 148276, 148374, 150085, 132554, + 20946, 132625, 22943, 138920, 15294, 146687, 148484, + 148694, 22408, 149108, 14747, 149295, 165352, + 170441, 14178, 139715, 35678, 166734, 39382, 149522, + 149755, 150037, 29193, 150208, 134264, 22885, + 151205, 151430, 132985, 36570, 151596, 21135, 22335, + 29041, 152217, 152601, 147274, 150183, 21948, + 152646, 152686, 158546, 37332, 13427, 152895, + 161330, 152926, 18200, 152930, 152934, 153543, + 149823, 153693, 20582, 13563, 144332, 24798, 153859, + 18300, 166216, 154286, 154505, 154630, 138640, + 22433, 29009, 28598, 155906, 162834, 36950, 156082, + 151450, 35682, 156674, 156746, 23899, 158711, 36662, + 156804, 137500, 35562, 150006, 156808, 147439, + 156946, 19392, 157119, 157365, 141083, 37989, + 153569, 24981, 23079, 194765, 20411, 22201, 148769, + 157436, 20074, 149812, 38486, 28047, 158909, 13848, + 35191, 157593, 157806, 156689, 157790, 29151, + 157895, 31554, 168128, 133649, 157990, 37124, + 158009, 31301, 40432, 158202, 39462, 158253, 13919, + 156777, 131105, 31107, 158260, 158555, 23852, + 144665, 33743, 158621, 18128, 158884, 30011, 34917, + 159150, 22710, 14108, 140685, 159819, 160205, 15444, + 160384, 160389, 37505, 139642, 160395, 37680, + 160486, 149968, 27705, 38047, 160848, 134904, 34855, + 35061, 141606, 164979, 137137, 28344, 150058, + 137248, 14756, 14009, 23568, 31203, 17727, 26294, + 171181, 170148, 35139, 161740, 161880, 22230, 16607, + 136714, 14753, 145199, 164072, 136133, 29101, 33638, + 162269, 168360, 23143, 19639, 159919, 166315, + 162301, 162314, 162571, 163174, 147834, 31555, + 31102, 163849, 28597, 172767, 27139, 164632, 21410, + 159239, 37823, 26678, 38749, 164207, 163875, 158133, + 136173, 143919, 163912, 23941, 166960, 163971, + 22293, 38947, 166217, 23979, 149896, 26046, 27093, + 21458, 150181, 147329, 15377, 26422, 163984, 164084, + 164142, 139169, 164175, 164233, 164271, 164378, + 164614, 164655, 164746, 13770, 164968, 165546, + 18682, 25574, 166230, 30728, 37461, 166328, 17394, + 166375, 17375, 166376, 166726, 166868, 23032, + 166921, 36619, 167877, 168172, 31569, 168208, + 168252, 15863, 168286, 150218, 36816, 29327, 22155, + 169191, 169449, 169392, 169400, 169778, 170193, + 170313, 170346, 170435, 170536, 170766, 171354, + 171419, 32415, 171768, 171811, 19620, 38215, 172691, + 29090, 172799, 19857, 36882, 173515, 19868, 134300, + 36798, 21953, 36794, 140464, 36793, 150163, 17673, + 32383, 28502, 27313, 20202, 13540, 166700, 161949, + 14138, 36480, 137205, 163876, 166764, 166809, + 162366, 157359, 15851, 161365, 146615, 153141, + 153942, 20122, 155265, 156248, 22207, 134765, 36366, + 23405, 147080, 150686, 25566, 25296, 137206, 137339, + 25904, 22061, 154698, 21530, 152337, 15814, 171416, + 19581, 22050, 22046, 32585, 155352, 22901, 146752, + 34672, 19996, 135146, 134473, 145082, 33047, 40286, + 36120, 30267, 40005, 30286, 30649, 37701, 21554, + 33096, 33527, 22053, 33074, 33816, 32957, 21994, + 31074, 22083, 21526, 134813, 13774, 22021, 22001, + 26353, 164578, 13869, 30004, 22000, 21946, 21655, + 21874, 134209, 134294, 24272, 151880, 134774, + 142434, 134818, 40619, 32090, 21982, 135285, 25245, + 38765, 21652, 36045, 29174, 37238, 25596, 25529, + 25598, 21865, 142147, 40050, 143027, 20890, 13535, + 134567, 20903, 21581, 21790, 21779, 30310, 36397, + 157834, 30129, 32950, 34820, 34694, 35015, 33206, + 33820, 135361, 17644, 29444, 149254, 23440, 33547, + 157843, 22139, 141044, 163119, 147875, 163187, + 159440, 160438, 37232, 135641, 37384, 146684, + 173737, 134828, 134905, 29286, 138402, 18254, + 151490, 163833, 135147, 16634, 40029, 25887, 142752, + 18675, 149472, 171388, 135148, 134666, 24674, + 161187, 135149, null, 155720, 135559, 29091, 32398, + 40272, 19994, 19972, 13687, 23309, 27826, 21351, + 13996, 14812, 21373, 13989, 149016, 22682, 150382, + 33325, 21579, 22442, 154261, 133497, null, 14930, + 140389, 29556, 171692, 19721, 39917, 146686, 171824, + 19547, 151465, 169374, 171998, 33884, 146870, + 160434, 157619, 145184, 25390, 32037, 147191, + 146988, 14890, 36872, 21196, 15988, 13946, 17897, + 132238, 30272, 23280, 134838, 30842, 163630, 22695, + 16575, 22140, 39819, 23924, 30292, 173108, 40581, + 19681, 30201, 14331, 24857, 143578, 148466, null, + 22109, 135849, 22439, 149859, 171526, 21044, 159918, + 13741, 27722, 40316, 31830, 39737, 22494, 137068, + 23635, 25811, 169168, 156469, 160100, 34477, 134440, + 159010, 150242, 134513, null, 20990, 139023, 23950, + 38659, 138705, 40577, 36940, 31519, 39682, 23761, + 31651, 25192, 25397, 39679, 31695, 39722, 31870, + 39726, 31810, 31878, 39957, 31740, 39689, 40727, + 39963, 149822, 40794, 21875, 23491, 20477, 40600, + 20466, 21088, 15878, 21201, 22375, 20566, 22967, + 24082, 38856, 40363, 36700, 21609, 38836, 39232, + 38842, 21292, 24880, 26924, 21466, 39946, 40194, + 19515, 38465, 27008, 20646, 30022, 137069, 39386, + 21107, null, 37209, 38529, 37212, null, 37201, + 167575, 25471, 159011, 27338, 22033, 37262, 30074, + 25221, 132092, 29519, 31856, 154657, 146685, null, + 149785, 30422, 39837, 20010, 134356, 33726, 34882, + null, 23626, 27072, 20717, 22394, 21023, 24053, + 20174, 27697, 131570, 20281, 21660, 21722, 21146, + 36226, 13822, 24332, 13811, null, 27474, 37244, + 40869, 39831, 38958, 39092, 39610, 40616, 40580, + 29050, 31508, null, 27642, 34840, 32632, null, + 22048, 173642, 36471, 40787, null, 36308, 36431, + 40476, 36353, 25218, 164733, 36392, 36469, 31443, + 150135, 31294, 30936, 27882, 35431, 30215, 166490, + 40742, 27854, 34774, 30147, 172722, 30803, 194624, + 36108, 29410, 29553, 35629, 29442, 29937, 36075, + 150203, 34351, 24506, 34976, 17591, null, 137275, + 159237, null, 35454, 140571, null, 24829, 30311, + 39639, 40260, 37742, 39823, 34805, null, 34831, + 36087, 29484, 38689, 39856, 13782, 29362, 19463, + 31825, 39242, 155993, 24921, 19460, 40598, 24957, + null, 22367, 24943, 25254, 25145, 25294, 14940, + 25058, 21418, 144373, 25444, 26626, 13778, 23895, + 166850, 36826, 167481, null, 20697, 138566, 30982, + 21298, 38456, 134971, 16485, null, 30718, null, + 31938, 155418, 31962, 31277, 32870, 32867, 32077, + 29957, 29938, 35220, 33306, 26380, 32866, 160902, + 32859, 29936, 33027, 30500, 35209, 157644, 30035, + 159441, 34729, 34766, 33224, 34700, 35401, 36013, + 35651, 30507, 29944, 34010, 13877, 27058, 36262, + null, 35241, 29800, 28089, 34753, 147473, 29927, + 15835, 29046, 24740, 24988, 15569, 29026, 24695, + null, 32625, 166701, 29264, 24809, 19326, 21024, + 15384, 146631, 155351, 161366, 152881, 137540, + 135934, 170243, 159196, 159917, 23745, 156077, + 166415, 145015, 131310, 157766, 151310, 17762, + 23327, 156492, 40784, 40614, 156267, 12288, 65292, + 12289, 12290, 65294, 8231, 65307, 65306, 65311, + 65281, 65072, 8230, 8229, 65104, 65105, 65106, 183, + 65108, 65109, 65110, 65111, 65372, 8211, 65073, + 8212, 65075, 9588, 65076, 65103, 65288, 65289, + 65077, 65078, 65371, 65373, 65079, 65080, 12308, + 12309, 65081, 65082, 12304, 12305, 65083, 65084, + 12298, 12299, 65085, 65086, 12296, 12297, 65087, + 65088, 12300, 12301, 65089, 65090, 12302, 12303, + 65091, 65092, 65113, 65114, 65115, 65116, 65117, + 65118, 8216, 8217, 8220, 8221, 12317, 12318, 8245, + 8242, 65283, 65286, 65290, 8251, 167, 12291, 9675, + 9679, 9651, 9650, 9678, 9734, 9733, 9671, 9670, + 9633, 9632, 9661, 9660, 12963, 8453, 175, 65507, + 65343, 717, 65097, 65098, 65101, 65102, 65099, + 65100, 65119, 65120, 65121, 65291, 65293, 215, 247, + 177, 8730, 65308, 65310, 65309, 8806, 8807, 8800, + 8734, 8786, 8801, 65122, 65123, 65124, 65125, 65126, + 65374, 8745, 8746, 8869, 8736, 8735, 8895, 13266, + 13265, 8747, 8750, 8757, 8756, 9792, 9794, 8853, + 8857, 8593, 8595, 8592, 8594, 8598, 8599, 8601, + 8600, 8741, 8739, 65295, 65340, 8725, 65128, 65284, + 65509, 12306, 65504, 65505, 65285, 65312, 8451, + 8457, 65129, 65130, 65131, 13269, 13212, 13213, + 13214, 13262, 13217, 13198, 13199, 13252, 176, + 20825, 20827, 20830, 20829, 20833, 20835, 21991, + 29929, 31950, 9601, 9602, 9603, 9604, 9605, 9606, + 9607, 9608, 9615, 9614, 9613, 9612, 9611, 9610, + 9609, 9532, 9524, 9516, 9508, 9500, 9620, 9472, + 9474, 9621, 9484, 9488, 9492, 9496, 9581, 9582, + 9584, 9583, 9552, 9566, 9578, 9569, 9698, 9699, + 9701, 9700, 9585, 9586, 9587, 65296, 65297, 65298, + 65299, 65300, 65301, 65302, 65303, 65304, 65305, + 8544, 8545, 8546, 8547, 8548, 8549, 8550, 8551, + 8552, 8553, 12321, 12322, 12323, 12324, 12325, + 12326, 12327, 12328, 12329, 21313, 21316, 21317, + 65313, 65314, 65315, 65316, 65317, 65318, 65319, + 65320, 65321, 65322, 65323, 65324, 65325, 65326, + 65327, 65328, 65329, 65330, 65331, 65332, 65333, + 65334, 65335, 65336, 65337, 65338, 65345, 65346, + 65347, 65348, 65349, 65350, 65351, 65352, 65353, + 65354, 65355, 65356, 65357, 65358, 65359, 65360, + 65361, 65362, 65363, 65364, 65365, 65366, 65367, + 65368, 65369, 65370, 913, 914, 915, 916, 917, 918, + 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, + 929, 931, 932, 933, 934, 935, 936, 937, 945, 946, + 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, + 957, 958, 959, 960, 961, 963, 964, 965, 966, 967, + 968, 969, 12549, 12550, 12551, 12552, 12553, 12554, + 12555, 12556, 12557, 12558, 12559, 12560, 12561, + 12562, 12563, 12564, 12565, 12566, 12567, 12568, + 12569, 12570, 12571, 12572, 12573, 12574, 12575, + 12576, 12577, 12578, 12579, 12580, 12581, 12582, + 12583, 12584, 12585, 729, 713, 714, 711, 715, 9216, + 9217, 9218, 9219, 9220, 9221, 9222, 9223, 9224, + 9225, 9226, 9227, 9228, 9229, 9230, 9231, 9232, + 9233, 9234, 9235, 9236, 9237, 9238, 9239, 9240, + 9241, 9242, 9243, 9244, 9245, 9246, 9247, 9249, + 8364, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 19968, 20057, + 19969, 19971, 20035, 20061, 20102, 20108, 20154, + 20799, 20837, 20843, 20960, 20992, 20993, 21147, + 21269, 21313, 21340, 21448, 19977, 19979, 19976, + 19978, 20011, 20024, 20961, 20037, 20040, 20063, + 20062, 20110, 20129, 20800, 20995, 21242, 21315, + 21449, 21475, 22303, 22763, 22805, 22823, 22899, + 23376, 23377, 23379, 23544, 23567, 23586, 23608, + 23665, 24029, 24037, 24049, 24050, 24051, 24062, + 24178, 24318, 24331, 24339, 25165, 19985, 19984, + 19981, 20013, 20016, 20025, 20043, 23609, 20104, + 20113, 20117, 20114, 20116, 20130, 20161, 20160, + 20163, 20166, 20167, 20173, 20170, 20171, 20164, + 20803, 20801, 20839, 20845, 20846, 20844, 20887, + 20982, 20998, 20999, 21000, 21243, 21246, 21247, + 21270, 21305, 21320, 21319, 21317, 21342, 21380, + 21451, 21450, 21453, 22764, 22825, 22827, 22826, + 22829, 23380, 23569, 23588, 23610, 23663, 24052, + 24187, 24319, 24340, 24341, 24515, 25096, 25142, + 25163, 25166, 25903, 25991, 26007, 26020, 26041, + 26085, 26352, 26376, 26408, 27424, 27490, 27513, + 27595, 27604, 27611, 27663, 27700, 28779, 29226, + 29238, 29243, 29255, 29273, 29275, 29356, 29579, + 19993, 19990, 19989, 19988, 19992, 20027, 20045, + 20047, 20046, 20197, 20184, 20180, 20181, 20182, + 20183, 20195, 20196, 20185, 20190, 20805, 20804, + 20873, 20874, 20908, 20985, 20986, 20984, 21002, + 21152, 21151, 21253, 21254, 21271, 21277, 20191, + 21322, 21321, 21345, 21344, 21359, 21358, 21435, + 21487, 21476, 21491, 21484, 21486, 21481, 21480, + 21500, 21496, 21493, 21483, 21478, 21482, 21490, + 21489, 21488, 21477, 21485, 21499, 22235, 22234, + 22806, 22830, 22833, 22900, 22902, 23381, 23427, + 23612, 24040, 24039, 24038, 24066, 24067, 24179, + 24188, 24321, 24344, 24343, 24517, 25098, 25171, + 25172, 25170, 25169, 26021, 26086, 26414, 26412, + 26410, 26411, 26413, 27491, 27597, 27665, 27664, + 27704, 27713, 27712, 27710, 29359, 29572, 29577, + 29916, 29926, 29976, 29983, 29992, 29993, 30000, + 30001, 30002, 30003, 30091, 30333, 30382, 30399, + 30446, 30683, 30690, 30707, 31034, 31166, 31348, + 31435, 19998, 19999, 20050, 20051, 20073, 20121, + 20132, 20134, 20133, 20223, 20233, 20249, 20234, + 20245, 20237, 20240, 20241, 20239, 20210, 20214, + 20219, 20208, 20211, 20221, 20225, 20235, 20809, + 20807, 20806, 20808, 20840, 20849, 20877, 20912, + 21015, 21009, 21010, 21006, 21014, 21155, 21256, + 21281, 21280, 21360, 21361, 21513, 21519, 21516, + 21514, 21520, 21505, 21515, 21508, 21521, 21517, + 21512, 21507, 21518, 21510, 21522, 22240, 22238, + 22237, 22323, 22320, 22312, 22317, 22316, 22319, + 22313, 22809, 22810, 22839, 22840, 22916, 22904, + 22915, 22909, 22905, 22914, 22913, 23383, 23384, + 23431, 23432, 23429, 23433, 23546, 23574, 23673, + 24030, 24070, 24182, 24180, 24335, 24347, 24537, + 24534, 25102, 25100, 25101, 25104, 25187, 25179, + 25176, 25910, 26089, 26088, 26092, 26093, 26354, + 26355, 26377, 26429, 26420, 26417, 26421, 27425, + 27492, 27515, 27670, 27741, 27735, 27737, 27743, + 27744, 27728, 27733, 27745, 27739, 27725, 27726, + 28784, 29279, 29277, 30334, 31481, 31859, 31992, + 32566, 32650, 32701, 32769, 32771, 32780, 32786, + 32819, 32895, 32905, 32907, 32908, 33251, 33258, + 33267, 33276, 33292, 33307, 33311, 33390, 33394, + 33406, 34411, 34880, 34892, 34915, 35199, 38433, + 20018, 20136, 20301, 20303, 20295, 20311, 20318, + 20276, 20315, 20309, 20272, 20304, 20305, 20285, + 20282, 20280, 20291, 20308, 20284, 20294, 20323, + 20316, 20320, 20271, 20302, 20278, 20313, 20317, + 20296, 20314, 20812, 20811, 20813, 20853, 20918, + 20919, 21029, 21028, 21033, 21034, 21032, 21163, + 21161, 21162, 21164, 21283, 21363, 21365, 21533, + 21549, 21534, 21566, 21542, 21582, 21543, 21574, + 21571, 21555, 21576, 21570, 21531, 21545, 21578, + 21561, 21563, 21560, 21550, 21557, 21558, 21536, + 21564, 21568, 21553, 21547, 21535, 21548, 22250, + 22256, 22244, 22251, 22346, 22353, 22336, 22349, + 22343, 22350, 22334, 22352, 22351, 22331, 22767, + 22846, 22941, 22930, 22952, 22942, 22947, 22937, + 22934, 22925, 22948, 22931, 22922, 22949, 23389, + 23388, 23386, 23387, 23436, 23435, 23439, 23596, + 23616, 23617, 23615, 23614, 23696, 23697, 23700, + 23692, 24043, 24076, 24207, 24199, 24202, 24311, + 24324, 24351, 24420, 24418, 24439, 24441, 24536, + 24524, 24535, 24525, 24561, 24555, 24568, 24554, + 25106, 25105, 25220, 25239, 25238, 25216, 25206, + 25225, 25197, 25226, 25212, 25214, 25209, 25203, + 25234, 25199, 25240, 25198, 25237, 25235, 25233, + 25222, 25913, 25915, 25912, 26097, 26356, 26463, + 26446, 26447, 26448, 26449, 26460, 26454, 26462, + 26441, 26438, 26464, 26451, 26455, 27493, 27599, + 27714, 27742, 27801, 27777, 27784, 27785, 27781, + 27803, 27754, 27770, 27792, 27760, 27788, 27752, + 27798, 27794, 27773, 27779, 27762, 27774, 27764, + 27782, 27766, 27789, 27796, 27800, 27778, 28790, + 28796, 28797, 28792, 29282, 29281, 29280, 29380, + 29378, 29590, 29996, 29995, 30007, 30008, 30338, + 30447, 30691, 31169, 31168, 31167, 31350, 31995, + 32597, 32918, 32915, 32925, 32920, 32923, 32922, + 32946, 33391, 33426, 33419, 33421, 35211, 35282, + 35328, 35895, 35910, 35925, 35997, 36196, 36208, + 36275, 36523, 36554, 36763, 36784, 36802, 36806, + 36805, 36804, 24033, 37009, 37026, 37034, 37030, + 37027, 37193, 37318, 37324, 38450, 38446, 38449, + 38442, 38444, 20006, 20054, 20083, 20107, 20123, + 20126, 20139, 20140, 20335, 20381, 20365, 20339, + 20351, 20332, 20379, 20363, 20358, 20355, 20336, + 20341, 20360, 20329, 20347, 20374, 20350, 20367, + 20369, 20346, 20820, 20818, 20821, 20841, 20855, + 20854, 20856, 20925, 20989, 21051, 21048, 21047, + 21050, 21040, 21038, 21046, 21057, 21182, 21179, + 21330, 21332, 21331, 21329, 21350, 21367, 21368, + 21369, 21462, 21460, 21463, 21619, 21621, 21654, + 21624, 21653, 21632, 21627, 21623, 21636, 21650, + 21638, 21628, 21648, 21617, 21622, 21644, 21658, + 21602, 21608, 21643, 21629, 21646, 22266, 22403, + 22391, 22378, 22377, 22369, 22374, 22372, 22396, + 22812, 22857, 22855, 22856, 22852, 22868, 22974, + 22971, 22996, 22969, 22958, 22993, 22982, 22992, + 22989, 22987, 22995, 22986, 22959, 22963, 22994, + 22981, 23391, 23396, 23395, 23447, 23450, 23448, + 23452, 23449, 23451, 23578, 23624, 23621, 23622, + 23735, 23713, 23736, 23721, 23723, 23729, 23731, + 24088, 24090, 24086, 24085, 24091, 24081, 24184, + 24218, 24215, 24220, 24213, 24214, 24310, 24358, + 24359, 24361, 24448, 24449, 24447, 24444, 24541, + 24544, 24573, 24565, 24575, 24591, 24596, 24623, + 24629, 24598, 24618, 24597, 24609, 24615, 24617, + 24619, 24603, 25110, 25109, 25151, 25150, 25152, + 25215, 25289, 25292, 25284, 25279, 25282, 25273, + 25298, 25307, 25259, 25299, 25300, 25291, 25288, + 25256, 25277, 25276, 25296, 25305, 25287, 25293, + 25269, 25306, 25265, 25304, 25302, 25303, 25286, + 25260, 25294, 25918, 26023, 26044, 26106, 26132, + 26131, 26124, 26118, 26114, 26126, 26112, 26127, + 26133, 26122, 26119, 26381, 26379, 26477, 26507, + 26517, 26481, 26524, 26483, 26487, 26503, 26525, + 26519, 26479, 26480, 26495, 26505, 26494, 26512, + 26485, 26522, 26515, 26492, 26474, 26482, 27427, + 27494, 27495, 27519, 27667, 27675, 27875, 27880, + 27891, 27825, 27852, 27877, 27827, 27837, 27838, + 27836, 27874, 27819, 27861, 27859, 27832, 27844, + 27833, 27841, 27822, 27863, 27845, 27889, 27839, + 27835, 27873, 27867, 27850, 27820, 27887, 27868, + 27862, 27872, 28821, 28814, 28818, 28810, 28825, + 29228, 29229, 29240, 29256, 29287, 29289, 29376, + 29390, 29401, 29399, 29392, 29609, 29608, 29599, + 29611, 29605, 30013, 30109, 30105, 30106, 30340, + 30402, 30450, 30452, 30693, 30717, 31038, 31040, + 31041, 31177, 31176, 31354, 31353, 31482, 31998, + 32596, 32652, 32651, 32773, 32954, 32933, 32930, + 32945, 32929, 32939, 32937, 32948, 32938, 32943, + 33253, 33278, 33293, 33459, 33437, 33433, 33453, + 33469, 33439, 33465, 33457, 33452, 33445, 33455, + 33464, 33443, 33456, 33470, 33463, 34382, 34417, + 21021, 34920, 36555, 36814, 36820, 36817, 37045, + 37048, 37041, 37046, 37319, 37329, 38263, 38272, + 38428, 38464, 38463, 38459, 38468, 38466, 38585, + 38632, 38738, 38750, 20127, 20141, 20142, 20449, + 20405, 20399, 20415, 20448, 20433, 20431, 20445, + 20419, 20406, 20440, 20447, 20426, 20439, 20398, + 20432, 20420, 20418, 20442, 20430, 20446, 20407, + 20823, 20882, 20881, 20896, 21070, 21059, 21066, + 21069, 21068, 21067, 21063, 21191, 21193, 21187, + 21185, 21261, 21335, 21371, 21402, 21467, 21676, + 21696, 21672, 21710, 21705, 21688, 21670, 21683, + 21703, 21698, 21693, 21674, 21697, 21700, 21704, + 21679, 21675, 21681, 21691, 21673, 21671, 21695, + 22271, 22402, 22411, 22432, 22435, 22434, 22478, + 22446, 22419, 22869, 22865, 22863, 22862, 22864, + 23004, 23000, 23039, 23011, 23016, 23043, 23013, + 23018, 23002, 23014, 23041, 23035, 23401, 23459, + 23462, 23460, 23458, 23461, 23553, 23630, 23631, + 23629, 23627, 23769, 23762, 24055, 24093, 24101, + 24095, 24189, 24224, 24230, 24314, 24328, 24365, + 24421, 24456, 24453, 24458, 24459, 24455, 24460, + 24457, 24594, 24605, 24608, 24613, 24590, 24616, + 24653, 24688, 24680, 24674, 24646, 24643, 24684, + 24683, 24682, 24676, 25153, 25308, 25366, 25353, + 25340, 25325, 25345, 25326, 25341, 25351, 25329, + 25335, 25327, 25324, 25342, 25332, 25361, 25346, + 25919, 25925, 26027, 26045, 26082, 26149, 26157, + 26144, 26151, 26159, 26143, 26152, 26161, 26148, + 26359, 26623, 26579, 26609, 26580, 26576, 26604, + 26550, 26543, 26613, 26601, 26607, 26564, 26577, + 26548, 26586, 26597, 26552, 26575, 26590, 26611, + 26544, 26585, 26594, 26589, 26578, 27498, 27523, + 27526, 27573, 27602, 27607, 27679, 27849, 27915, + 27954, 27946, 27969, 27941, 27916, 27953, 27934, + 27927, 27963, 27965, 27966, 27958, 27931, 27893, + 27961, 27943, 27960, 27945, 27950, 27957, 27918, + 27947, 28843, 28858, 28851, 28844, 28847, 28845, + 28856, 28846, 28836, 29232, 29298, 29295, 29300, + 29417, 29408, 29409, 29623, 29642, 29627, 29618, + 29645, 29632, 29619, 29978, 29997, 30031, 30028, + 30030, 30027, 30123, 30116, 30117, 30114, 30115, + 30328, 30342, 30343, 30344, 30408, 30406, 30403, + 30405, 30465, 30457, 30456, 30473, 30475, 30462, + 30460, 30471, 30684, 30722, 30740, 30732, 30733, + 31046, 31049, 31048, 31047, 31161, 31162, 31185, + 31186, 31179, 31359, 31361, 31487, 31485, 31869, + 32002, 32005, 32000, 32009, 32007, 32004, 32006, + 32568, 32654, 32703, 32772, 32784, 32781, 32785, + 32822, 32982, 32997, 32986, 32963, 32964, 32972, + 32993, 32987, 32974, 32990, 32996, 32989, 33268, + 33314, 33511, 33539, 33541, 33507, 33499, 33510, + 33540, 33509, 33538, 33545, 33490, 33495, 33521, + 33537, 33500, 33492, 33489, 33502, 33491, 33503, + 33519, 33542, 34384, 34425, 34427, 34426, 34893, + 34923, 35201, 35284, 35336, 35330, 35331, 35998, + 36000, 36212, 36211, 36276, 36557, 36556, 36848, + 36838, 36834, 36842, 36837, 36845, 36843, 36836, + 36840, 37066, 37070, 37057, 37059, 37195, 37194, + 37325, 38274, 38480, 38475, 38476, 38477, 38754, + 38761, 38859, 38893, 38899, 38913, 39080, 39131, + 39135, 39318, 39321, 20056, 20147, 20492, 20493, + 20515, 20463, 20518, 20517, 20472, 20521, 20502, + 20486, 20540, 20511, 20506, 20498, 20497, 20474, + 20480, 20500, 20520, 20465, 20513, 20491, 20505, + 20504, 20467, 20462, 20525, 20522, 20478, 20523, + 20489, 20860, 20900, 20901, 20898, 20941, 20940, + 20934, 20939, 21078, 21084, 21076, 21083, 21085, + 21290, 21375, 21407, 21405, 21471, 21736, 21776, + 21761, 21815, 21756, 21733, 21746, 21766, 21754, + 21780, 21737, 21741, 21729, 21769, 21742, 21738, + 21734, 21799, 21767, 21757, 21775, 22275, 22276, + 22466, 22484, 22475, 22467, 22537, 22799, 22871, + 22872, 22874, 23057, 23064, 23068, 23071, 23067, + 23059, 23020, 23072, 23075, 23081, 23077, 23052, + 23049, 23403, 23640, 23472, 23475, 23478, 23476, + 23470, 23477, 23481, 23480, 23556, 23633, 23637, + 23632, 23789, 23805, 23803, 23786, 23784, 23792, + 23798, 23809, 23796, 24046, 24109, 24107, 24235, + 24237, 24231, 24369, 24466, 24465, 24464, 24665, + 24675, 24677, 24656, 24661, 24685, 24681, 24687, + 24708, 24735, 24730, 24717, 24724, 24716, 24709, + 24726, 25159, 25331, 25352, 25343, 25422, 25406, + 25391, 25429, 25410, 25414, 25423, 25417, 25402, + 25424, 25405, 25386, 25387, 25384, 25421, 25420, + 25928, 25929, 26009, 26049, 26053, 26178, 26185, + 26191, 26179, 26194, 26188, 26181, 26177, 26360, + 26388, 26389, 26391, 26657, 26680, 26696, 26694, + 26707, 26681, 26690, 26708, 26665, 26803, 26647, + 26700, 26705, 26685, 26612, 26704, 26688, 26684, + 26691, 26666, 26693, 26643, 26648, 26689, 27530, + 27529, 27575, 27683, 27687, 27688, 27686, 27684, + 27888, 28010, 28053, 28040, 28039, 28006, 28024, + 28023, 27993, 28051, 28012, 28041, 28014, 27994, + 28020, 28009, 28044, 28042, 28025, 28037, 28005, + 28052, 28874, 28888, 28900, 28889, 28872, 28879, + 29241, 29305, 29436, 29433, 29437, 29432, 29431, + 29574, 29677, 29705, 29678, 29664, 29674, 29662, + 30036, 30045, 30044, 30042, 30041, 30142, 30149, + 30151, 30130, 30131, 30141, 30140, 30137, 30146, + 30136, 30347, 30384, 30410, 30413, 30414, 30505, + 30495, 30496, 30504, 30697, 30768, 30759, 30776, + 30749, 30772, 30775, 30757, 30765, 30752, 30751, + 30770, 31061, 31056, 31072, 31071, 31062, 31070, + 31069, 31063, 31066, 31204, 31203, 31207, 31199, + 31206, 31209, 31192, 31364, 31368, 31449, 31494, + 31505, 31881, 32033, 32023, 32011, 32010, 32032, + 32034, 32020, 32016, 32021, 32026, 32028, 32013, + 32025, 32027, 32570, 32607, 32660, 32709, 32705, + 32774, 32792, 32789, 32793, 32791, 32829, 32831, + 33009, 33026, 33008, 33029, 33005, 33012, 33030, + 33016, 33011, 33032, 33021, 33034, 33020, 33007, + 33261, 33260, 33280, 33296, 33322, 33323, 33320, + 33324, 33467, 33579, 33618, 33620, 33610, 33592, + 33616, 33609, 33589, 33588, 33615, 33586, 33593, + 33590, 33559, 33600, 33585, 33576, 33603, 34388, + 34442, 34474, 34451, 34468, 34473, 34444, 34467, + 34460, 34928, 34935, 34945, 34946, 34941, 34937, + 35352, 35344, 35342, 35340, 35349, 35338, 35351, + 35347, 35350, 35343, 35345, 35912, 35962, 35961, + 36001, 36002, 36215, 36524, 36562, 36564, 36559, + 36785, 36865, 36870, 36855, 36864, 36858, 36852, + 36867, 36861, 36869, 36856, 37013, 37089, 37085, + 37090, 37202, 37197, 37196, 37336, 37341, 37335, + 37340, 37337, 38275, 38498, 38499, 38497, 38491, + 38493, 38500, 38488, 38494, 38587, 39138, 39340, + 39592, 39640, 39717, 39730, 39740, 20094, 20602, + 20605, 20572, 20551, 20547, 20556, 20570, 20553, + 20581, 20598, 20558, 20565, 20597, 20596, 20599, + 20559, 20495, 20591, 20589, 20828, 20885, 20976, + 21098, 21103, 21202, 21209, 21208, 21205, 21264, + 21263, 21273, 21311, 21312, 21310, 21443, 26364, + 21830, 21866, 21862, 21828, 21854, 21857, 21827, + 21834, 21809, 21846, 21839, 21845, 21807, 21860, + 21816, 21806, 21852, 21804, 21859, 21811, 21825, + 21847, 22280, 22283, 22281, 22495, 22533, 22538, + 22534, 22496, 22500, 22522, 22530, 22581, 22519, + 22521, 22816, 22882, 23094, 23105, 23113, 23142, + 23146, 23104, 23100, 23138, 23130, 23110, 23114, + 23408, 23495, 23493, 23492, 23490, 23487, 23494, + 23561, 23560, 23559, 23648, 23644, 23645, 23815, + 23814, 23822, 23835, 23830, 23842, 23825, 23849, + 23828, 23833, 23844, 23847, 23831, 24034, 24120, + 24118, 24115, 24119, 24247, 24248, 24246, 24245, + 24254, 24373, 24375, 24407, 24428, 24425, 24427, + 24471, 24473, 24478, 24472, 24481, 24480, 24476, + 24703, 24739, 24713, 24736, 24744, 24779, 24756, + 24806, 24765, 24773, 24763, 24757, 24796, 24764, + 24792, 24789, 24774, 24799, 24760, 24794, 24775, + 25114, 25115, 25160, 25504, 25511, 25458, 25494, + 25506, 25509, 25463, 25447, 25496, 25514, 25457, + 25513, 25481, 25475, 25499, 25451, 25512, 25476, + 25480, 25497, 25505, 25516, 25490, 25487, 25472, + 25467, 25449, 25448, 25466, 25949, 25942, 25937, + 25945, 25943, 21855, 25935, 25944, 25941, 25940, + 26012, 26011, 26028, 26063, 26059, 26060, 26062, + 26205, 26202, 26212, 26216, 26214, 26206, 26361, + 21207, 26395, 26753, 26799, 26786, 26771, 26805, + 26751, 26742, 26801, 26791, 26775, 26800, 26755, + 26820, 26797, 26758, 26757, 26772, 26781, 26792, + 26783, 26785, 26754, 27442, 27578, 27627, 27628, + 27691, 28046, 28092, 28147, 28121, 28082, 28129, + 28108, 28132, 28155, 28154, 28165, 28103, 28107, + 28079, 28113, 28078, 28126, 28153, 28088, 28151, + 28149, 28101, 28114, 28186, 28085, 28122, 28139, + 28120, 28138, 28145, 28142, 28136, 28102, 28100, + 28074, 28140, 28095, 28134, 28921, 28937, 28938, + 28925, 28911, 29245, 29309, 29313, 29468, 29467, + 29462, 29459, 29465, 29575, 29701, 29706, 29699, + 29702, 29694, 29709, 29920, 29942, 29943, 29980, + 29986, 30053, 30054, 30050, 30064, 30095, 30164, + 30165, 30133, 30154, 30157, 30350, 30420, 30418, + 30427, 30519, 30526, 30524, 30518, 30520, 30522, + 30827, 30787, 30798, 31077, 31080, 31085, 31227, + 31378, 31381, 31520, 31528, 31515, 31532, 31526, + 31513, 31518, 31534, 31890, 31895, 31893, 32070, + 32067, 32113, 32046, 32057, 32060, 32064, 32048, + 32051, 32068, 32047, 32066, 32050, 32049, 32573, + 32670, 32666, 32716, 32718, 32722, 32796, 32842, + 32838, 33071, 33046, 33059, 33067, 33065, 33072, + 33060, 33282, 33333, 33335, 33334, 33337, 33678, + 33694, 33688, 33656, 33698, 33686, 33725, 33707, + 33682, 33674, 33683, 33673, 33696, 33655, 33659, + 33660, 33670, 33703, 34389, 24426, 34503, 34496, + 34486, 34500, 34485, 34502, 34507, 34481, 34479, + 34505, 34899, 34974, 34952, 34987, 34962, 34966, + 34957, 34955, 35219, 35215, 35370, 35357, 35363, + 35365, 35377, 35373, 35359, 35355, 35362, 35913, + 35930, 36009, 36012, 36011, 36008, 36010, 36007, + 36199, 36198, 36286, 36282, 36571, 36575, 36889, + 36877, 36890, 36887, 36899, 36895, 36893, 36880, + 36885, 36894, 36896, 36879, 36898, 36886, 36891, + 36884, 37096, 37101, 37117, 37207, 37326, 37365, + 37350, 37347, 37351, 37357, 37353, 38281, 38506, + 38517, 38515, 38520, 38512, 38516, 38518, 38519, + 38508, 38592, 38634, 38633, 31456, 31455, 38914, + 38915, 39770, 40165, 40565, 40575, 40613, 40635, + 20642, 20621, 20613, 20633, 20625, 20608, 20630, + 20632, 20634, 26368, 20977, 21106, 21108, 21109, + 21097, 21214, 21213, 21211, 21338, 21413, 21883, + 21888, 21927, 21884, 21898, 21917, 21912, 21890, + 21916, 21930, 21908, 21895, 21899, 21891, 21939, + 21934, 21919, 21822, 21938, 21914, 21947, 21932, + 21937, 21886, 21897, 21931, 21913, 22285, 22575, + 22570, 22580, 22564, 22576, 22577, 22561, 22557, + 22560, 22777, 22778, 22880, 23159, 23194, 23167, + 23186, 23195, 23207, 23411, 23409, 23506, 23500, + 23507, 23504, 23562, 23563, 23601, 23884, 23888, + 23860, 23879, 24061, 24133, 24125, 24128, 24131, + 24190, 24266, 24257, 24258, 24260, 24380, 24429, + 24489, 24490, 24488, 24785, 24801, 24754, 24758, + 24800, 24860, 24867, 24826, 24853, 24816, 24827, + 24820, 24936, 24817, 24846, 24822, 24841, 24832, + 24850, 25119, 25161, 25507, 25484, 25551, 25536, + 25577, 25545, 25542, 25549, 25554, 25571, 25552, + 25569, 25558, 25581, 25582, 25462, 25588, 25578, + 25563, 25682, 25562, 25593, 25950, 25958, 25954, + 25955, 26001, 26000, 26031, 26222, 26224, 26228, + 26230, 26223, 26257, 26234, 26238, 26231, 26366, + 26367, 26399, 26397, 26874, 26837, 26848, 26840, + 26839, 26885, 26847, 26869, 26862, 26855, 26873, + 26834, 26866, 26851, 26827, 26829, 26893, 26898, + 26894, 26825, 26842, 26990, 26875, 27454, 27450, + 27453, 27544, 27542, 27580, 27631, 27694, 27695, + 27692, 28207, 28216, 28244, 28193, 28210, 28263, + 28234, 28192, 28197, 28195, 28187, 28251, 28248, + 28196, 28246, 28270, 28205, 28198, 28271, 28212, + 28237, 28218, 28204, 28227, 28189, 28222, 28363, + 28297, 28185, 28238, 28259, 28228, 28274, 28265, + 28255, 28953, 28954, 28966, 28976, 28961, 28982, + 29038, 28956, 29260, 29316, 29312, 29494, 29477, + 29492, 29481, 29754, 29738, 29747, 29730, 29733, + 29749, 29750, 29748, 29743, 29723, 29734, 29736, + 29989, 29990, 30059, 30058, 30178, 30171, 30179, + 30169, 30168, 30174, 30176, 30331, 30332, 30358, + 30355, 30388, 30428, 30543, 30701, 30813, 30828, + 30831, 31245, 31240, 31243, 31237, 31232, 31384, + 31383, 31382, 31461, 31459, 31561, 31574, 31558, + 31568, 31570, 31572, 31565, 31563, 31567, 31569, + 31903, 31909, 32094, 32080, 32104, 32085, 32043, + 32110, 32114, 32097, 32102, 32098, 32112, 32115, + 21892, 32724, 32725, 32779, 32850, 32901, 33109, + 33108, 33099, 33105, 33102, 33081, 33094, 33086, + 33100, 33107, 33140, 33298, 33308, 33769, 33795, + 33784, 33805, 33760, 33733, 33803, 33729, 33775, + 33777, 33780, 33879, 33802, 33776, 33804, 33740, + 33789, 33778, 33738, 33848, 33806, 33796, 33756, + 33799, 33748, 33759, 34395, 34527, 34521, 34541, + 34516, 34523, 34532, 34512, 34526, 34903, 35009, + 35010, 34993, 35203, 35222, 35387, 35424, 35413, + 35422, 35388, 35393, 35412, 35419, 35408, 35398, + 35380, 35386, 35382, 35414, 35937, 35970, 36015, + 36028, 36019, 36029, 36033, 36027, 36032, 36020, + 36023, 36022, 36031, 36024, 36234, 36229, 36225, + 36302, 36317, 36299, 36314, 36305, 36300, 36315, + 36294, 36603, 36600, 36604, 36764, 36910, 36917, + 36913, 36920, 36914, 36918, 37122, 37109, 37129, + 37118, 37219, 37221, 37327, 37396, 37397, 37411, + 37385, 37406, 37389, 37392, 37383, 37393, 38292, + 38287, 38283, 38289, 38291, 38290, 38286, 38538, + 38542, 38539, 38525, 38533, 38534, 38541, 38514, + 38532, 38593, 38597, 38596, 38598, 38599, 38639, + 38642, 38860, 38917, 38918, 38920, 39143, 39146, + 39151, 39145, 39154, 39149, 39342, 39341, 40643, + 40653, 40657, 20098, 20653, 20661, 20658, 20659, + 20677, 20670, 20652, 20663, 20667, 20655, 20679, + 21119, 21111, 21117, 21215, 21222, 21220, 21218, + 21219, 21295, 21983, 21992, 21971, 21990, 21966, + 21980, 21959, 21969, 21987, 21988, 21999, 21978, + 21985, 21957, 21958, 21989, 21961, 22290, 22291, + 22622, 22609, 22616, 22615, 22618, 22612, 22635, + 22604, 22637, 22602, 22626, 22610, 22603, 22887, + 23233, 23241, 23244, 23230, 23229, 23228, 23219, + 23234, 23218, 23913, 23919, 24140, 24185, 24265, + 24264, 24338, 24409, 24492, 24494, 24858, 24847, + 24904, 24863, 24819, 24859, 24825, 24833, 24840, + 24910, 24908, 24900, 24909, 24894, 24884, 24871, + 24845, 24838, 24887, 25121, 25122, 25619, 25662, + 25630, 25642, 25645, 25661, 25644, 25615, 25628, + 25620, 25613, 25654, 25622, 25623, 25606, 25964, + 26015, 26032, 26263, 26249, 26247, 26248, 26262, + 26244, 26264, 26253, 26371, 27028, 26989, 26970, + 26999, 26976, 26964, 26997, 26928, 27010, 26954, + 26984, 26987, 26974, 26963, 27001, 27014, 26973, + 26979, 26971, 27463, 27506, 27584, 27583, 27603, + 27645, 28322, 28335, 28371, 28342, 28354, 28304, + 28317, 28359, 28357, 28325, 28312, 28348, 28346, + 28331, 28369, 28310, 28316, 28356, 28372, 28330, + 28327, 28340, 29006, 29017, 29033, 29028, 29001, + 29031, 29020, 29036, 29030, 29004, 29029, 29022, + 28998, 29032, 29014, 29242, 29266, 29495, 29509, + 29503, 29502, 29807, 29786, 29781, 29791, 29790, + 29761, 29759, 29785, 29787, 29788, 30070, 30072, + 30208, 30192, 30209, 30194, 30193, 30202, 30207, + 30196, 30195, 30430, 30431, 30555, 30571, 30566, + 30558, 30563, 30585, 30570, 30572, 30556, 30565, + 30568, 30562, 30702, 30862, 30896, 30871, 30872, + 30860, 30857, 30844, 30865, 30867, 30847, 31098, + 31103, 31105, 33836, 31165, 31260, 31258, 31264, + 31252, 31263, 31262, 31391, 31392, 31607, 31680, + 31584, 31598, 31591, 31921, 31923, 31925, 32147, + 32121, 32145, 32129, 32143, 32091, 32622, 32617, + 32618, 32626, 32681, 32680, 32676, 32854, 32856, + 32902, 32900, 33137, 33136, 33144, 33125, 33134, + 33139, 33131, 33145, 33146, 33126, 33285, 33351, + 33922, 33911, 33853, 33841, 33909, 33894, 33899, + 33865, 33900, 33883, 33852, 33845, 33889, 33891, + 33897, 33901, 33862, 34398, 34396, 34399, 34553, + 34579, 34568, 34567, 34560, 34558, 34555, 34562, + 34563, 34566, 34570, 34905, 35039, 35028, 35033, + 35036, 35032, 35037, 35041, 35018, 35029, 35026, + 35228, 35299, 35435, 35442, 35443, 35430, 35433, + 35440, 35463, 35452, 35427, 35488, 35441, 35461, + 35437, 35426, 35438, 35436, 35449, 35451, 35390, + 35432, 35938, 35978, 35977, 36042, 36039, 36040, + 36036, 36018, 36035, 36034, 36037, 36321, 36319, + 36328, 36335, 36339, 36346, 36330, 36324, 36326, + 36530, 36611, 36617, 36606, 36618, 36767, 36786, + 36939, 36938, 36947, 36930, 36948, 36924, 36949, + 36944, 36935, 36943, 36942, 36941, 36945, 36926, + 36929, 37138, 37143, 37228, 37226, 37225, 37321, + 37431, 37463, 37432, 37437, 37440, 37438, 37467, + 37451, 37476, 37457, 37428, 37449, 37453, 37445, + 37433, 37439, 37466, 38296, 38552, 38548, 38549, + 38605, 38603, 38601, 38602, 38647, 38651, 38649, + 38646, 38742, 38772, 38774, 38928, 38929, 38931, + 38922, 38930, 38924, 39164, 39156, 39165, 39166, + 39347, 39345, 39348, 39649, 40169, 40578, 40718, + 40723, 40736, 20711, 20718, 20709, 20694, 20717, + 20698, 20693, 20687, 20689, 20721, 20686, 20713, + 20834, 20979, 21123, 21122, 21297, 21421, 22014, + 22016, 22043, 22039, 22013, 22036, 22022, 22025, + 22029, 22030, 22007, 22038, 22047, 22024, 22032, + 22006, 22296, 22294, 22645, 22654, 22659, 22675, + 22666, 22649, 22661, 22653, 22781, 22821, 22818, + 22820, 22890, 22889, 23265, 23270, 23273, 23255, + 23254, 23256, 23267, 23413, 23518, 23527, 23521, + 23525, 23526, 23528, 23522, 23524, 23519, 23565, + 23650, 23940, 23943, 24155, 24163, 24149, 24151, + 24148, 24275, 24278, 24330, 24390, 24432, 24505, + 24903, 24895, 24907, 24951, 24930, 24931, 24927, + 24922, 24920, 24949, 25130, 25735, 25688, 25684, + 25764, 25720, 25695, 25722, 25681, 25703, 25652, + 25709, 25723, 25970, 26017, 26071, 26070, 26274, + 26280, 26269, 27036, 27048, 27029, 27073, 27054, + 27091, 27083, 27035, 27063, 27067, 27051, 27060, + 27088, 27085, 27053, 27084, 27046, 27075, 27043, + 27465, 27468, 27699, 28467, 28436, 28414, 28435, + 28404, 28457, 28478, 28448, 28460, 28431, 28418, + 28450, 28415, 28399, 28422, 28465, 28472, 28466, + 28451, 28437, 28459, 28463, 28552, 28458, 28396, + 28417, 28402, 28364, 28407, 29076, 29081, 29053, + 29066, 29060, 29074, 29246, 29330, 29334, 29508, + 29520, 29796, 29795, 29802, 29808, 29805, 29956, + 30097, 30247, 30221, 30219, 30217, 30227, 30433, + 30435, 30596, 30589, 30591, 30561, 30913, 30879, + 30887, 30899, 30889, 30883, 31118, 31119, 31117, + 31278, 31281, 31402, 31401, 31469, 31471, 31649, + 31637, 31627, 31605, 31639, 31645, 31636, 31631, + 31672, 31623, 31620, 31929, 31933, 31934, 32187, + 32176, 32156, 32189, 32190, 32160, 32202, 32180, + 32178, 32177, 32186, 32162, 32191, 32181, 32184, + 32173, 32210, 32199, 32172, 32624, 32736, 32737, + 32735, 32862, 32858, 32903, 33104, 33152, 33167, + 33160, 33162, 33151, 33154, 33255, 33274, 33287, + 33300, 33310, 33355, 33993, 33983, 33990, 33988, + 33945, 33950, 33970, 33948, 33995, 33976, 33984, + 34003, 33936, 33980, 34001, 33994, 34623, 34588, + 34619, 34594, 34597, 34612, 34584, 34645, 34615, + 34601, 35059, 35074, 35060, 35065, 35064, 35069, + 35048, 35098, 35055, 35494, 35468, 35486, 35491, + 35469, 35489, 35475, 35492, 35498, 35493, 35496, + 35480, 35473, 35482, 35495, 35946, 35981, 35980, + 36051, 36049, 36050, 36203, 36249, 36245, 36348, + 36628, 36626, 36629, 36627, 36771, 36960, 36952, + 36956, 36963, 36953, 36958, 36962, 36957, 36955, + 37145, 37144, 37150, 37237, 37240, 37239, 37236, + 37496, 37504, 37509, 37528, 37526, 37499, 37523, + 37532, 37544, 37500, 37521, 38305, 38312, 38313, + 38307, 38309, 38308, 38553, 38556, 38555, 38604, + 38610, 38656, 38780, 38789, 38902, 38935, 38936, + 39087, 39089, 39171, 39173, 39180, 39177, 39361, + 39599, 39600, 39654, 39745, 39746, 40180, 40182, + 40179, 40636, 40763, 40778, 20740, 20736, 20731, + 20725, 20729, 20738, 20744, 20745, 20741, 20956, + 21127, 21128, 21129, 21133, 21130, 21232, 21426, + 22062, 22075, 22073, 22066, 22079, 22068, 22057, + 22099, 22094, 22103, 22132, 22070, 22063, 22064, + 22656, 22687, 22686, 22707, 22684, 22702, 22697, + 22694, 22893, 23305, 23291, 23307, 23285, 23308, + 23304, 23534, 23532, 23529, 23531, 23652, 23653, + 23965, 23956, 24162, 24159, 24161, 24290, 24282, + 24287, 24285, 24291, 24288, 24392, 24433, 24503, + 24501, 24950, 24935, 24942, 24925, 24917, 24962, + 24956, 24944, 24939, 24958, 24999, 24976, 25003, + 24974, 25004, 24986, 24996, 24980, 25006, 25134, + 25705, 25711, 25721, 25758, 25778, 25736, 25744, + 25776, 25765, 25747, 25749, 25769, 25746, 25774, + 25773, 25771, 25754, 25772, 25753, 25762, 25779, + 25973, 25975, 25976, 26286, 26283, 26292, 26289, + 27171, 27167, 27112, 27137, 27166, 27161, 27133, + 27169, 27155, 27146, 27123, 27138, 27141, 27117, + 27153, 27472, 27470, 27556, 27589, 27590, 28479, + 28540, 28548, 28497, 28518, 28500, 28550, 28525, + 28507, 28536, 28526, 28558, 28538, 28528, 28516, + 28567, 28504, 28373, 28527, 28512, 28511, 29087, + 29100, 29105, 29096, 29270, 29339, 29518, 29527, + 29801, 29835, 29827, 29822, 29824, 30079, 30240, + 30249, 30239, 30244, 30246, 30241, 30242, 30362, + 30394, 30436, 30606, 30599, 30604, 30609, 30603, + 30923, 30917, 30906, 30922, 30910, 30933, 30908, + 30928, 31295, 31292, 31296, 31293, 31287, 31291, + 31407, 31406, 31661, 31665, 31684, 31668, 31686, + 31687, 31681, 31648, 31692, 31946, 32224, 32244, + 32239, 32251, 32216, 32236, 32221, 32232, 32227, + 32218, 32222, 32233, 32158, 32217, 32242, 32249, + 32629, 32631, 32687, 32745, 32806, 33179, 33180, + 33181, 33184, 33178, 33176, 34071, 34109, 34074, + 34030, 34092, 34093, 34067, 34065, 34083, 34081, + 34068, 34028, 34085, 34047, 34054, 34690, 34676, + 34678, 34656, 34662, 34680, 34664, 34649, 34647, + 34636, 34643, 34907, 34909, 35088, 35079, 35090, + 35091, 35093, 35082, 35516, 35538, 35527, 35524, + 35477, 35531, 35576, 35506, 35529, 35522, 35519, + 35504, 35542, 35533, 35510, 35513, 35547, 35916, + 35918, 35948, 36064, 36062, 36070, 36068, 36076, + 36077, 36066, 36067, 36060, 36074, 36065, 36205, + 36255, 36259, 36395, 36368, 36381, 36386, 36367, + 36393, 36383, 36385, 36382, 36538, 36637, 36635, + 36639, 36649, 36646, 36650, 36636, 36638, 36645, + 36969, 36974, 36968, 36973, 36983, 37168, 37165, + 37159, 37169, 37255, 37257, 37259, 37251, 37573, + 37563, 37559, 37610, 37548, 37604, 37569, 37555, + 37564, 37586, 37575, 37616, 37554, 38317, 38321, + 38660, 38662, 38663, 38665, 38752, 38797, 38795, + 38799, 38945, 38955, 38940, 39091, 39178, 39187, + 39186, 39192, 39389, 39376, 39391, 39387, 39377, + 39381, 39378, 39385, 39607, 39662, 39663, 39719, + 39749, 39748, 39799, 39791, 40198, 40201, 40195, + 40617, 40638, 40654, 22696, 40786, 20754, 20760, + 20756, 20752, 20757, 20864, 20906, 20957, 21137, + 21139, 21235, 22105, 22123, 22137, 22121, 22116, + 22136, 22122, 22120, 22117, 22129, 22127, 22124, + 22114, 22134, 22721, 22718, 22727, 22725, 22894, + 23325, 23348, 23416, 23536, 23566, 24394, 25010, + 24977, 25001, 24970, 25037, 25014, 25022, 25034, + 25032, 25136, 25797, 25793, 25803, 25787, 25788, + 25818, 25796, 25799, 25794, 25805, 25791, 25810, + 25812, 25790, 25972, 26310, 26313, 26297, 26308, + 26311, 26296, 27197, 27192, 27194, 27225, 27243, + 27224, 27193, 27204, 27234, 27233, 27211, 27207, + 27189, 27231, 27208, 27481, 27511, 27653, 28610, + 28593, 28577, 28611, 28580, 28609, 28583, 28595, + 28608, 28601, 28598, 28582, 28576, 28596, 29118, + 29129, 29136, 29138, 29128, 29141, 29113, 29134, + 29145, 29148, 29123, 29124, 29544, 29852, 29859, + 29848, 29855, 29854, 29922, 29964, 29965, 30260, + 30264, 30266, 30439, 30437, 30624, 30622, 30623, + 30629, 30952, 30938, 30956, 30951, 31142, 31309, + 31310, 31302, 31308, 31307, 31418, 31705, 31761, + 31689, 31716, 31707, 31713, 31721, 31718, 31957, + 31958, 32266, 32273, 32264, 32283, 32291, 32286, + 32285, 32265, 32272, 32633, 32690, 32752, 32753, + 32750, 32808, 33203, 33193, 33192, 33275, 33288, + 33368, 33369, 34122, 34137, 34120, 34152, 34153, + 34115, 34121, 34157, 34154, 34142, 34691, 34719, + 34718, 34722, 34701, 34913, 35114, 35122, 35109, + 35115, 35105, 35242, 35238, 35558, 35578, 35563, + 35569, 35584, 35548, 35559, 35566, 35582, 35585, + 35586, 35575, 35565, 35571, 35574, 35580, 35947, + 35949, 35987, 36084, 36420, 36401, 36404, 36418, + 36409, 36405, 36667, 36655, 36664, 36659, 36776, + 36774, 36981, 36980, 36984, 36978, 36988, 36986, + 37172, 37266, 37664, 37686, 37624, 37683, 37679, + 37666, 37628, 37675, 37636, 37658, 37648, 37670, + 37665, 37653, 37678, 37657, 38331, 38567, 38568, + 38570, 38613, 38670, 38673, 38678, 38669, 38675, + 38671, 38747, 38748, 38758, 38808, 38960, 38968, + 38971, 38967, 38957, 38969, 38948, 39184, 39208, + 39198, 39195, 39201, 39194, 39405, 39394, 39409, + 39608, 39612, 39675, 39661, 39720, 39825, 40213, + 40227, 40230, 40232, 40210, 40219, 40664, 40660, + 40845, 40860, 20778, 20767, 20769, 20786, 21237, + 22158, 22144, 22160, 22149, 22151, 22159, 22741, + 22739, 22737, 22734, 23344, 23338, 23332, 23418, + 23607, 23656, 23996, 23994, 23997, 23992, 24171, + 24396, 24509, 25033, 25026, 25031, 25062, 25035, + 25138, 25140, 25806, 25802, 25816, 25824, 25840, + 25830, 25836, 25841, 25826, 25837, 25986, 25987, + 26329, 26326, 27264, 27284, 27268, 27298, 27292, + 27355, 27299, 27262, 27287, 27280, 27296, 27484, + 27566, 27610, 27656, 28632, 28657, 28639, 28640, + 28635, 28644, 28651, 28655, 28544, 28652, 28641, + 28649, 28629, 28654, 28656, 29159, 29151, 29166, + 29158, 29157, 29165, 29164, 29172, 29152, 29237, + 29254, 29552, 29554, 29865, 29872, 29862, 29864, + 30278, 30274, 30284, 30442, 30643, 30634, 30640, + 30636, 30631, 30637, 30703, 30967, 30970, 30964, + 30959, 30977, 31143, 31146, 31319, 31423, 31751, + 31757, 31742, 31735, 31756, 31712, 31968, 31964, + 31966, 31970, 31967, 31961, 31965, 32302, 32318, + 32326, 32311, 32306, 32323, 32299, 32317, 32305, + 32325, 32321, 32308, 32313, 32328, 32309, 32319, + 32303, 32580, 32755, 32764, 32881, 32882, 32880, + 32879, 32883, 33222, 33219, 33210, 33218, 33216, + 33215, 33213, 33225, 33214, 33256, 33289, 33393, + 34218, 34180, 34174, 34204, 34193, 34196, 34223, + 34203, 34183, 34216, 34186, 34407, 34752, 34769, + 34739, 34770, 34758, 34731, 34747, 34746, 34760, + 34763, 35131, 35126, 35140, 35128, 35133, 35244, + 35598, 35607, 35609, 35611, 35594, 35616, 35613, + 35588, 35600, 35905, 35903, 35955, 36090, 36093, + 36092, 36088, 36091, 36264, 36425, 36427, 36424, + 36426, 36676, 36670, 36674, 36677, 36671, 36991, + 36989, 36996, 36993, 36994, 36992, 37177, 37283, + 37278, 37276, 37709, 37762, 37672, 37749, 37706, + 37733, 37707, 37656, 37758, 37740, 37723, 37744, + 37722, 37716, 38346, 38347, 38348, 38344, 38342, + 38577, 38584, 38614, 38684, 38686, 38816, 38867, + 38982, 39094, 39221, 39425, 39423, 39854, 39851, + 39850, 39853, 40251, 40255, 40587, 40655, 40670, + 40668, 40669, 40667, 40766, 40779, 21474, 22165, + 22190, 22745, 22744, 23352, 24413, 25059, 25139, + 25844, 25842, 25854, 25862, 25850, 25851, 25847, + 26039, 26332, 26406, 27315, 27308, 27331, 27323, + 27320, 27330, 27310, 27311, 27487, 27512, 27567, + 28681, 28683, 28670, 28678, 28666, 28689, 28687, + 29179, 29180, 29182, 29176, 29559, 29557, 29863, + 29887, 29973, 30294, 30296, 30290, 30653, 30655, + 30651, 30652, 30990, 31150, 31329, 31330, 31328, + 31428, 31429, 31787, 31783, 31786, 31774, 31779, + 31777, 31975, 32340, 32341, 32350, 32346, 32353, + 32338, 32345, 32584, 32761, 32763, 32887, 32886, + 33229, 33231, 33290, 34255, 34217, 34253, 34256, + 34249, 34224, 34234, 34233, 34214, 34799, 34796, + 34802, 34784, 35206, 35250, 35316, 35624, 35641, + 35628, 35627, 35920, 36101, 36441, 36451, 36454, + 36452, 36447, 36437, 36544, 36681, 36685, 36999, + 36995, 37000, 37291, 37292, 37328, 37780, 37770, + 37782, 37794, 37811, 37806, 37804, 37808, 37784, + 37786, 37783, 38356, 38358, 38352, 38357, 38626, + 38620, 38617, 38619, 38622, 38692, 38819, 38822, + 38829, 38905, 38989, 38991, 38988, 38990, 38995, + 39098, 39230, 39231, 39229, 39214, 39333, 39438, + 39617, 39683, 39686, 39759, 39758, 39757, 39882, + 39881, 39933, 39880, 39872, 40273, 40285, 40288, + 40672, 40725, 40748, 20787, 22181, 22750, 22751, + 22754, 23541, 40848, 24300, 25074, 25079, 25078, + 25077, 25856, 25871, 26336, 26333, 27365, 27357, + 27354, 27347, 28699, 28703, 28712, 28698, 28701, + 28693, 28696, 29190, 29197, 29272, 29346, 29560, + 29562, 29885, 29898, 29923, 30087, 30086, 30303, + 30305, 30663, 31001, 31153, 31339, 31337, 31806, + 31807, 31800, 31805, 31799, 31808, 32363, 32365, + 32377, 32361, 32362, 32645, 32371, 32694, 32697, + 32696, 33240, 34281, 34269, 34282, 34261, 34276, + 34277, 34295, 34811, 34821, 34829, 34809, 34814, + 35168, 35167, 35158, 35166, 35649, 35676, 35672, + 35657, 35674, 35662, 35663, 35654, 35673, 36104, + 36106, 36476, 36466, 36487, 36470, 36460, 36474, + 36468, 36692, 36686, 36781, 37002, 37003, 37297, + 37294, 37857, 37841, 37855, 37827, 37832, 37852, + 37853, 37846, 37858, 37837, 37848, 37860, 37847, + 37864, 38364, 38580, 38627, 38698, 38695, 38753, + 38876, 38907, 39006, 39000, 39003, 39100, 39237, + 39241, 39446, 39449, 39693, 39912, 39911, 39894, + 39899, 40329, 40289, 40306, 40298, 40300, 40594, + 40599, 40595, 40628, 21240, 22184, 22199, 22198, + 22196, 22204, 22756, 23360, 23363, 23421, 23542, + 24009, 25080, 25082, 25880, 25876, 25881, 26342, + 26407, 27372, 28734, 28720, 28722, 29200, 29563, + 29903, 30306, 30309, 31014, 31018, 31020, 31019, + 31431, 31478, 31820, 31811, 31821, 31983, 31984, + 36782, 32381, 32380, 32386, 32588, 32768, 33242, + 33382, 34299, 34297, 34321, 34298, 34310, 34315, + 34311, 34314, 34836, 34837, 35172, 35258, 35320, + 35696, 35692, 35686, 35695, 35679, 35691, 36111, + 36109, 36489, 36481, 36485, 36482, 37300, 37323, + 37912, 37891, 37885, 38369, 38704, 39108, 39250, + 39249, 39336, 39467, 39472, 39479, 39477, 39955, + 39949, 40569, 40629, 40680, 40751, 40799, 40803, + 40801, 20791, 20792, 22209, 22208, 22210, 22804, + 23660, 24013, 25084, 25086, 25885, 25884, 26005, + 26345, 27387, 27396, 27386, 27570, 28748, 29211, + 29351, 29910, 29908, 30313, 30675, 31824, 32399, + 32396, 32700, 34327, 34349, 34330, 34851, 34850, + 34849, 34847, 35178, 35180, 35261, 35700, 35703, + 35709, 36115, 36490, 36493, 36491, 36703, 36783, + 37306, 37934, 37939, 37941, 37946, 37944, 37938, + 37931, 38370, 38712, 38713, 38706, 38911, 39015, + 39013, 39255, 39493, 39491, 39488, 39486, 39631, + 39764, 39761, 39981, 39973, 40367, 40372, 40386, + 40376, 40605, 40687, 40729, 40796, 40806, 40807, + 20796, 20795, 22216, 22218, 22217, 23423, 24020, + 24018, 24398, 25087, 25892, 27402, 27489, 28753, + 28760, 29568, 29924, 30090, 30318, 30316, 31155, + 31840, 31839, 32894, 32893, 33247, 35186, 35183, + 35324, 35712, 36118, 36119, 36497, 36499, 36705, + 37192, 37956, 37969, 37970, 38717, 38718, 38851, + 38849, 39019, 39253, 39509, 39501, 39634, 39706, + 40009, 39985, 39998, 39995, 40403, 40407, 40756, + 40812, 40810, 40852, 22220, 24022, 25088, 25891, + 25899, 25898, 26348, 27408, 29914, 31434, 31844, + 31843, 31845, 32403, 32406, 32404, 33250, 34360, + 34367, 34865, 35722, 37008, 37007, 37987, 37984, + 37988, 38760, 39023, 39260, 39514, 39515, 39511, + 39635, 39636, 39633, 40020, 40023, 40022, 40421, + 40607, 40692, 22225, 22761, 25900, 28766, 30321, + 30322, 30679, 32592, 32648, 34870, 34873, 34914, + 35731, 35730, 35734, 33399, 36123, 37312, 37994, + 38722, 38728, 38724, 38854, 39024, 39519, 39714, + 39768, 40031, 40441, 40442, 40572, 40573, 40711, + 40823, 40818, 24307, 27414, 28771, 31852, 31854, + 34875, 35264, 36513, 37313, 38002, 38000, 39025, + 39262, 39638, 39715, 40652, 28772, 30682, 35738, + 38007, 38857, 39522, 39525, 32412, 35740, 36522, + 37317, 38013, 38014, 38012, 40055, 40056, 40695, + 35924, 38015, 40474, 29224, 39530, 39729, 40475, + 40478, 31858, 9312, 9313, 9314, 9315, 9316, 9317, + 9318, 9319, 9320, 9321, 9332, 9333, 9334, 9335, + 9336, 9337, 9338, 9339, 9340, 9341, 8560, 8561, + 8562, 8563, 8564, 8565, 8566, 8567, 8568, 8569, + 20022, 20031, 20101, 20128, 20866, 20886, 20907, + 21241, 21304, 21353, 21430, 22794, 23424, 24027, + 12083, 24191, 24308, 24400, 24417, 25908, 26080, + 30098, 30326, 36789, 38582, 168, 710, 12541, 12542, + 12445, 12446, 12291, 20189, 12293, 12294, 12295, + 12540, 65339, 65341, 10045, 12353, 12354, 12355, + 12356, 12357, 12358, 12359, 12360, 12361, 12362, + 12363, 12364, 12365, 12366, 12367, 12368, 12369, + 12370, 12371, 12372, 12373, 12374, 12375, 12376, + 12377, 12378, 12379, 12380, 12381, 12382, 12383, + 12384, 12385, 12386, 12387, 12388, 12389, 12390, + 12391, 12392, 12393, 12394, 12395, 12396, 12397, + 12398, 12399, 12400, 12401, 12402, 12403, 12404, + 12405, 12406, 12407, 12408, 12409, 12410, 12411, + 12412, 12413, 12414, 12415, 12416, 12417, 12418, + 12419, 12420, 12421, 12422, 12423, 12424, 12425, + 12426, 12427, 12428, 12429, 12430, 12431, 12432, + 12433, 12434, 12435, 12449, 12450, 12451, 12452, + 12453, 12454, 12455, 12456, 12457, 12458, 12459, + 12460, 12461, 12462, 12463, 12464, 12465, 12466, + 12467, 12468, 12469, 12470, 12471, 12472, 12473, + 12474, 12475, 12476, 12477, 12478, 12479, 12480, + 12481, 12482, 12483, 12484, 12485, 12486, 12487, + 12488, 12489, 12490, 12491, 12492, 12493, 12494, + 12495, 12496, 12497, 12498, 12499, 12500, 12501, + 12502, 12503, 12504, 12505, 12506, 12507, 12508, + 12509, 12510, 12511, 12512, 12513, 12514, 12515, + 12516, 12517, 12518, 12519, 12520, 12521, 12522, + 12523, 12524, 12525, 12526, 12527, 12528, 12529, + 12530, 12531, 12532, 12533, 12534, 1040, 1041, 1042, + 1043, 1044, 1045, 1025, 1046, 1047, 1048, 1049, + 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, + 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, + 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, + 1074, 1075, 1076, 1077, 1105, 1078, 1079, 1080, + 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, + 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, + 1097, 1098, 1099, 1100, 1101, 1102, 1103, 8679, + 8632, 8633, 12751, 131276, 20058, 131210, 20994, + 17553, 40880, 20872, 40881, 161287, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 65506, 65508, + 65287, 65282, 12849, 8470, 8481, 12443, 12444, + 11904, 11908, 11910, 11911, 11912, 11914, 11916, + 11917, 11925, 11932, 11933, 11941, 11943, 11946, + 11948, 11950, 11958, 11964, 11966, 11974, 11978, + 11980, 11981, 11983, 11990, 11991, 11998, 12003, + null, null, null, 643, 592, 603, 596, 629, 339, 248, + 331, 650, 618, 20034, 20060, 20981, 21274, 21378, + 19975, 19980, 20039, 20109, 22231, 64012, 23662, + 24435, 19983, 20871, 19982, 20014, 20115, 20162, + 20169, 20168, 20888, 21244, 21356, 21433, 22304, + 22787, 22828, 23568, 24063, 26081, 27571, 27596, + 27668, 29247, 20017, 20028, 20200, 20188, 20201, + 20193, 20189, 20186, 21004, 21276, 21324, 22306, + 22307, 22807, 22831, 23425, 23428, 23570, 23611, + 23668, 23667, 24068, 24192, 24194, 24521, 25097, + 25168, 27669, 27702, 27715, 27711, 27707, 29358, + 29360, 29578, 31160, 32906, 38430, 20238, 20248, + 20268, 20213, 20244, 20209, 20224, 20215, 20232, + 20253, 20226, 20229, 20258, 20243, 20228, 20212, + 20242, 20913, 21011, 21001, 21008, 21158, 21282, + 21279, 21325, 21386, 21511, 22241, 22239, 22318, + 22314, 22324, 22844, 22912, 22908, 22917, 22907, + 22910, 22903, 22911, 23382, 23573, 23589, 23676, + 23674, 23675, 23678, 24031, 24181, 24196, 24322, + 24346, 24436, 24533, 24532, 24527, 25180, 25182, + 25188, 25185, 25190, 25186, 25177, 25184, 25178, + 25189, 26095, 26094, 26430, 26425, 26424, 26427, + 26426, 26431, 26428, 26419, 27672, 27718, 27730, + 27740, 27727, 27722, 27732, 27723, 27724, 28785, + 29278, 29364, 29365, 29582, 29994, 30335, 31349, + 32593, 33400, 33404, 33408, 33405, 33407, 34381, + 35198, 37017, 37015, 37016, 37019, 37012, 38434, + 38436, 38432, 38435, 20310, 20283, 20322, 20297, + 20307, 20324, 20286, 20327, 20306, 20319, 20289, + 20312, 20269, 20275, 20287, 20321, 20879, 20921, + 21020, 21022, 21025, 21165, 21166, 21257, 21347, + 21362, 21390, 21391, 21552, 21559, 21546, 21588, + 21573, 21529, 21532, 21541, 21528, 21565, 21583, + 21569, 21544, 21540, 21575, 22254, 22247, 22245, + 22337, 22341, 22348, 22345, 22347, 22354, 22790, + 22848, 22950, 22936, 22944, 22935, 22926, 22946, + 22928, 22927, 22951, 22945, 23438, 23442, 23592, + 23594, 23693, 23695, 23688, 23691, 23689, 23698, + 23690, 23686, 23699, 23701, 24032, 24074, 24078, + 24203, 24201, 24204, 24200, 24205, 24325, 24349, + 24440, 24438, 24530, 24529, 24528, 24557, 24552, + 24558, 24563, 24545, 24548, 24547, 24570, 24559, + 24567, 24571, 24576, 24564, 25146, 25219, 25228, + 25230, 25231, 25236, 25223, 25201, 25211, 25210, + 25200, 25217, 25224, 25207, 25213, 25202, 25204, + 25911, 26096, 26100, 26099, 26098, 26101, 26437, + 26439, 26457, 26453, 26444, 26440, 26461, 26445, + 26458, 26443, 27600, 27673, 27674, 27768, 27751, + 27755, 27780, 27787, 27791, 27761, 27759, 27753, + 27802, 27757, 27783, 27797, 27804, 27750, 27763, + 27749, 27771, 27790, 28788, 28794, 29283, 29375, + 29373, 29379, 29382, 29377, 29370, 29381, 29589, + 29591, 29587, 29588, 29586, 30010, 30009, 30100, + 30101, 30337, 31037, 32820, 32917, 32921, 32912, + 32914, 32924, 33424, 33423, 33413, 33422, 33425, + 33427, 33418, 33411, 33412, 35960, 36809, 36799, + 37023, 37025, 37029, 37022, 37031, 37024, 38448, + 38440, 38447, 38445, 20019, 20376, 20348, 20357, + 20349, 20352, 20359, 20342, 20340, 20361, 20356, + 20343, 20300, 20375, 20330, 20378, 20345, 20353, + 20344, 20368, 20380, 20372, 20382, 20370, 20354, + 20373, 20331, 20334, 20894, 20924, 20926, 21045, + 21042, 21043, 21062, 21041, 21180, 21258, 21259, + 21308, 21394, 21396, 21639, 21631, 21633, 21649, + 21634, 21640, 21611, 21626, 21630, 21605, 21612, + 21620, 21606, 21645, 21615, 21601, 21600, 21656, + 21603, 21607, 21604, 22263, 22265, 22383, 22386, + 22381, 22379, 22385, 22384, 22390, 22400, 22389, + 22395, 22387, 22388, 22370, 22376, 22397, 22796, + 22853, 22965, 22970, 22991, 22990, 22962, 22988, + 22977, 22966, 22972, 22979, 22998, 22961, 22973, + 22976, 22984, 22964, 22983, 23394, 23397, 23443, + 23445, 23620, 23623, 23726, 23716, 23712, 23733, + 23727, 23720, 23724, 23711, 23715, 23725, 23714, + 23722, 23719, 23709, 23717, 23734, 23728, 23718, + 24087, 24084, 24089, 24360, 24354, 24355, 24356, + 24404, 24450, 24446, 24445, 24542, 24549, 24621, + 24614, 24601, 24626, 24587, 24628, 24586, 24599, + 24627, 24602, 24606, 24620, 24610, 24589, 24592, + 24622, 24595, 24593, 24588, 24585, 24604, 25108, + 25149, 25261, 25268, 25297, 25278, 25258, 25270, + 25290, 25262, 25267, 25263, 25275, 25257, 25264, + 25272, 25917, 26024, 26043, 26121, 26108, 26116, + 26130, 26120, 26107, 26115, 26123, 26125, 26117, + 26109, 26129, 26128, 26358, 26378, 26501, 26476, + 26510, 26514, 26486, 26491, 26520, 26502, 26500, + 26484, 26509, 26508, 26490, 26527, 26513, 26521, + 26499, 26493, 26497, 26488, 26489, 26516, 27429, + 27520, 27518, 27614, 27677, 27795, 27884, 27883, + 27886, 27865, 27830, 27860, 27821, 27879, 27831, + 27856, 27842, 27834, 27843, 27846, 27885, 27890, + 27858, 27869, 27828, 27786, 27805, 27776, 27870, + 27840, 27952, 27853, 27847, 27824, 27897, 27855, + 27881, 27857, 28820, 28824, 28805, 28819, 28806, + 28804, 28817, 28822, 28802, 28826, 28803, 29290, + 29398, 29387, 29400, 29385, 29404, 29394, 29396, + 29402, 29388, 29393, 29604, 29601, 29613, 29606, + 29602, 29600, 29612, 29597, 29917, 29928, 30015, + 30016, 30014, 30092, 30104, 30383, 30451, 30449, + 30448, 30453, 30712, 30716, 30713, 30715, 30714, + 30711, 31042, 31039, 31173, 31352, 31355, 31483, + 31861, 31997, 32821, 32911, 32942, 32931, 32952, + 32949, 32941, 33312, 33440, 33472, 33451, 33434, + 33432, 33435, 33461, 33447, 33454, 33468, 33438, + 33466, 33460, 33448, 33441, 33449, 33474, 33444, + 33475, 33462, 33442, 34416, 34415, 34413, 34414, + 35926, 36818, 36811, 36819, 36813, 36822, 36821, + 36823, 37042, 37044, 37039, 37043, 37040, 38457, + 38461, 38460, 38458, 38467, 20429, 20421, 20435, + 20402, 20425, 20427, 20417, 20436, 20444, 20441, + 20411, 20403, 20443, 20423, 20438, 20410, 20416, + 20409, 20460, 21060, 21065, 21184, 21186, 21309, + 21372, 21399, 21398, 21401, 21400, 21690, 21665, + 21677, 21669, 21711, 21699, 33549, 21687, 21678, + 21718, 21686, 21701, 21702, 21664, 21616, 21692, + 21666, 21694, 21618, 21726, 21680, 22453, 22430, + 22431, 22436, 22412, 22423, 22429, 22427, 22420, + 22424, 22415, 22425, 22437, 22426, 22421, 22772, + 22797, 22867, 23009, 23006, 23022, 23040, 23025, + 23005, 23034, 23037, 23036, 23030, 23012, 23026, + 23031, 23003, 23017, 23027, 23029, 23008, 23038, + 23028, 23021, 23464, 23628, 23760, 23768, 23756, + 23767, 23755, 23771, 23774, 23770, 23753, 23751, + 23754, 23766, 23763, 23764, 23759, 23752, 23750, + 23758, 23775, 23800, 24057, 24097, 24098, 24099, + 24096, 24100, 24240, 24228, 24226, 24219, 24227, + 24229, 24327, 24366, 24406, 24454, 24631, 24633, + 24660, 24690, 24670, 24645, 24659, 24647, 24649, + 24667, 24652, 24640, 24642, 24671, 24612, 24644, + 24664, 24678, 24686, 25154, 25155, 25295, 25357, + 25355, 25333, 25358, 25347, 25323, 25337, 25359, + 25356, 25336, 25334, 25344, 25363, 25364, 25338, + 25365, 25339, 25328, 25921, 25923, 26026, 26047, + 26166, 26145, 26162, 26165, 26140, 26150, 26146, + 26163, 26155, 26170, 26141, 26164, 26169, 26158, + 26383, 26384, 26561, 26610, 26568, 26554, 26588, + 26555, 26616, 26584, 26560, 26551, 26565, 26603, + 26596, 26591, 26549, 26573, 26547, 26615, 26614, + 26606, 26595, 26562, 26553, 26574, 26599, 26608, + 26546, 26620, 26566, 26605, 26572, 26542, 26598, + 26587, 26618, 26569, 26570, 26563, 26602, 26571, + 27432, 27522, 27524, 27574, 27606, 27608, 27616, + 27680, 27681, 27944, 27956, 27949, 27935, 27964, + 27967, 27922, 27914, 27866, 27955, 27908, 27929, + 27962, 27930, 27921, 27904, 27933, 27970, 27905, + 27928, 27959, 27907, 27919, 27968, 27911, 27936, + 27948, 27912, 27938, 27913, 27920, 28855, 28831, + 28862, 28849, 28848, 28833, 28852, 28853, 28841, + 29249, 29257, 29258, 29292, 29296, 29299, 29294, + 29386, 29412, 29416, 29419, 29407, 29418, 29414, + 29411, 29573, 29644, 29634, 29640, 29637, 29625, + 29622, 29621, 29620, 29675, 29631, 29639, 29630, + 29635, 29638, 29624, 29643, 29932, 29934, 29998, + 30023, 30024, 30119, 30122, 30329, 30404, 30472, + 30467, 30468, 30469, 30474, 30455, 30459, 30458, + 30695, 30696, 30726, 30737, 30738, 30725, 30736, + 30735, 30734, 30729, 30723, 30739, 31050, 31052, + 31051, 31045, 31044, 31189, 31181, 31183, 31190, + 31182, 31360, 31358, 31441, 31488, 31489, 31866, + 31864, 31865, 31871, 31872, 31873, 32003, 32008, + 32001, 32600, 32657, 32653, 32702, 32775, 32782, + 32783, 32788, 32823, 32984, 32967, 32992, 32977, + 32968, 32962, 32976, 32965, 32995, 32985, 32988, + 32970, 32981, 32969, 32975, 32983, 32998, 32973, + 33279, 33313, 33428, 33497, 33534, 33529, 33543, + 33512, 33536, 33493, 33594, 33515, 33494, 33524, + 33516, 33505, 33522, 33525, 33548, 33531, 33526, + 33520, 33514, 33508, 33504, 33530, 33523, 33517, + 34423, 34420, 34428, 34419, 34881, 34894, 34919, + 34922, 34921, 35283, 35332, 35335, 36210, 36835, + 36833, 36846, 36832, 37105, 37053, 37055, 37077, + 37061, 37054, 37063, 37067, 37064, 37332, 37331, + 38484, 38479, 38481, 38483, 38474, 38478, 20510, + 20485, 20487, 20499, 20514, 20528, 20507, 20469, + 20468, 20531, 20535, 20524, 20470, 20471, 20503, + 20508, 20512, 20519, 20533, 20527, 20529, 20494, + 20826, 20884, 20883, 20938, 20932, 20933, 20936, + 20942, 21089, 21082, 21074, 21086, 21087, 21077, + 21090, 21197, 21262, 21406, 21798, 21730, 21783, + 21778, 21735, 21747, 21732, 21786, 21759, 21764, + 21768, 21739, 21777, 21765, 21745, 21770, 21755, + 21751, 21752, 21728, 21774, 21763, 21771, 22273, + 22274, 22476, 22578, 22485, 22482, 22458, 22470, + 22461, 22460, 22456, 22454, 22463, 22471, 22480, + 22457, 22465, 22798, 22858, 23065, 23062, 23085, + 23086, 23061, 23055, 23063, 23050, 23070, 23091, + 23404, 23463, 23469, 23468, 23555, 23638, 23636, + 23788, 23807, 23790, 23793, 23799, 23808, 23801, + 24105, 24104, 24232, 24238, 24234, 24236, 24371, + 24368, 24423, 24669, 24666, 24679, 24641, 24738, + 24712, 24704, 24722, 24705, 24733, 24707, 24725, + 24731, 24727, 24711, 24732, 24718, 25113, 25158, + 25330, 25360, 25430, 25388, 25412, 25413, 25398, + 25411, 25572, 25401, 25419, 25418, 25404, 25385, + 25409, 25396, 25432, 25428, 25433, 25389, 25415, + 25395, 25434, 25425, 25400, 25431, 25408, 25416, + 25930, 25926, 26054, 26051, 26052, 26050, 26186, + 26207, 26183, 26193, 26386, 26387, 26655, 26650, + 26697, 26674, 26675, 26683, 26699, 26703, 26646, + 26673, 26652, 26677, 26667, 26669, 26671, 26702, + 26692, 26676, 26653, 26642, 26644, 26662, 26664, + 26670, 26701, 26682, 26661, 26656, 27436, 27439, + 27437, 27441, 27444, 27501, 32898, 27528, 27622, + 27620, 27624, 27619, 27618, 27623, 27685, 28026, + 28003, 28004, 28022, 27917, 28001, 28050, 27992, + 28002, 28013, 28015, 28049, 28045, 28143, 28031, + 28038, 27998, 28007, 28000, 28055, 28016, 28028, + 27999, 28034, 28056, 27951, 28008, 28043, 28030, + 28032, 28036, 27926, 28035, 28027, 28029, 28021, + 28048, 28892, 28883, 28881, 28893, 28875, 32569, + 28898, 28887, 28882, 28894, 28896, 28884, 28877, + 28869, 28870, 28871, 28890, 28878, 28897, 29250, + 29304, 29303, 29302, 29440, 29434, 29428, 29438, + 29430, 29427, 29435, 29441, 29651, 29657, 29669, + 29654, 29628, 29671, 29667, 29673, 29660, 29650, + 29659, 29652, 29661, 29658, 29655, 29656, 29672, + 29918, 29919, 29940, 29941, 29985, 30043, 30047, + 30128, 30145, 30139, 30148, 30144, 30143, 30134, + 30138, 30346, 30409, 30493, 30491, 30480, 30483, + 30482, 30499, 30481, 30485, 30489, 30490, 30498, + 30503, 30755, 30764, 30754, 30773, 30767, 30760, + 30766, 30763, 30753, 30761, 30771, 30762, 30769, + 31060, 31067, 31055, 31068, 31059, 31058, 31057, + 31211, 31212, 31200, 31214, 31213, 31210, 31196, + 31198, 31197, 31366, 31369, 31365, 31371, 31372, + 31370, 31367, 31448, 31504, 31492, 31507, 31493, + 31503, 31496, 31498, 31502, 31497, 31506, 31876, + 31889, 31882, 31884, 31880, 31885, 31877, 32030, + 32029, 32017, 32014, 32024, 32022, 32019, 32031, + 32018, 32015, 32012, 32604, 32609, 32606, 32608, + 32605, 32603, 32662, 32658, 32707, 32706, 32704, + 32790, 32830, 32825, 33018, 33010, 33017, 33013, + 33025, 33019, 33024, 33281, 33327, 33317, 33587, + 33581, 33604, 33561, 33617, 33573, 33622, 33599, + 33601, 33574, 33564, 33570, 33602, 33614, 33563, + 33578, 33544, 33596, 33613, 33558, 33572, 33568, + 33591, 33583, 33577, 33607, 33605, 33612, 33619, + 33566, 33580, 33611, 33575, 33608, 34387, 34386, + 34466, 34472, 34454, 34445, 34449, 34462, 34439, + 34455, 34438, 34443, 34458, 34437, 34469, 34457, + 34465, 34471, 34453, 34456, 34446, 34461, 34448, + 34452, 34883, 34884, 34925, 34933, 34934, 34930, + 34944, 34929, 34943, 34927, 34947, 34942, 34932, + 34940, 35346, 35911, 35927, 35963, 36004, 36003, + 36214, 36216, 36277, 36279, 36278, 36561, 36563, + 36862, 36853, 36866, 36863, 36859, 36868, 36860, + 36854, 37078, 37088, 37081, 37082, 37091, 37087, + 37093, 37080, 37083, 37079, 37084, 37092, 37200, + 37198, 37199, 37333, 37346, 37338, 38492, 38495, + 38588, 39139, 39647, 39727, 20095, 20592, 20586, + 20577, 20574, 20576, 20563, 20555, 20573, 20594, + 20552, 20557, 20545, 20571, 20554, 20578, 20501, + 20549, 20575, 20585, 20587, 20579, 20580, 20550, + 20544, 20590, 20595, 20567, 20561, 20944, 21099, + 21101, 21100, 21102, 21206, 21203, 21293, 21404, + 21877, 21878, 21820, 21837, 21840, 21812, 21802, + 21841, 21858, 21814, 21813, 21808, 21842, 21829, + 21772, 21810, 21861, 21838, 21817, 21832, 21805, + 21819, 21824, 21835, 22282, 22279, 22523, 22548, + 22498, 22518, 22492, 22516, 22528, 22509, 22525, + 22536, 22520, 22539, 22515, 22479, 22535, 22510, + 22499, 22514, 22501, 22508, 22497, 22542, 22524, + 22544, 22503, 22529, 22540, 22513, 22505, 22512, + 22541, 22532, 22876, 23136, 23128, 23125, 23143, + 23134, 23096, 23093, 23149, 23120, 23135, 23141, + 23148, 23123, 23140, 23127, 23107, 23133, 23122, + 23108, 23131, 23112, 23182, 23102, 23117, 23097, + 23116, 23152, 23145, 23111, 23121, 23126, 23106, + 23132, 23410, 23406, 23489, 23488, 23641, 23838, + 23819, 23837, 23834, 23840, 23820, 23848, 23821, + 23846, 23845, 23823, 23856, 23826, 23843, 23839, + 23854, 24126, 24116, 24241, 24244, 24249, 24242, + 24243, 24374, 24376, 24475, 24470, 24479, 24714, + 24720, 24710, 24766, 24752, 24762, 24787, 24788, + 24783, 24804, 24793, 24797, 24776, 24753, 24795, + 24759, 24778, 24767, 24771, 24781, 24768, 25394, + 25445, 25482, 25474, 25469, 25533, 25502, 25517, + 25501, 25495, 25515, 25486, 25455, 25479, 25488, + 25454, 25519, 25461, 25500, 25453, 25518, 25468, + 25508, 25403, 25503, 25464, 25477, 25473, 25489, + 25485, 25456, 25939, 26061, 26213, 26209, 26203, + 26201, 26204, 26210, 26392, 26745, 26759, 26768, + 26780, 26733, 26734, 26798, 26795, 26966, 26735, + 26787, 26796, 26793, 26741, 26740, 26802, 26767, + 26743, 26770, 26748, 26731, 26738, 26794, 26752, + 26737, 26750, 26779, 26774, 26763, 26784, 26761, + 26788, 26744, 26747, 26769, 26764, 26762, 26749, + 27446, 27443, 27447, 27448, 27537, 27535, 27533, + 27534, 27532, 27690, 28096, 28075, 28084, 28083, + 28276, 28076, 28137, 28130, 28087, 28150, 28116, + 28160, 28104, 28128, 28127, 28118, 28094, 28133, + 28124, 28125, 28123, 28148, 28106, 28093, 28141, + 28144, 28090, 28117, 28098, 28111, 28105, 28112, + 28146, 28115, 28157, 28119, 28109, 28131, 28091, + 28922, 28941, 28919, 28951, 28916, 28940, 28912, + 28932, 28915, 28944, 28924, 28927, 28934, 28947, + 28928, 28920, 28918, 28939, 28930, 28942, 29310, + 29307, 29308, 29311, 29469, 29463, 29447, 29457, + 29464, 29450, 29448, 29439, 29455, 29470, 29576, + 29686, 29688, 29685, 29700, 29697, 29693, 29703, + 29696, 29690, 29692, 29695, 29708, 29707, 29684, + 29704, 30052, 30051, 30158, 30162, 30159, 30155, + 30156, 30161, 30160, 30351, 30345, 30419, 30521, + 30511, 30509, 30513, 30514, 30516, 30515, 30525, + 30501, 30523, 30517, 30792, 30802, 30793, 30797, + 30794, 30796, 30758, 30789, 30800, 31076, 31079, + 31081, 31082, 31075, 31083, 31073, 31163, 31226, + 31224, 31222, 31223, 31375, 31380, 31376, 31541, + 31559, 31540, 31525, 31536, 31522, 31524, 31539, + 31512, 31530, 31517, 31537, 31531, 31533, 31535, + 31538, 31544, 31514, 31523, 31892, 31896, 31894, + 31907, 32053, 32061, 32056, 32054, 32058, 32069, + 32044, 32041, 32065, 32071, 32062, 32063, 32074, + 32059, 32040, 32611, 32661, 32668, 32669, 32667, + 32714, 32715, 32717, 32720, 32721, 32711, 32719, + 32713, 32799, 32798, 32795, 32839, 32835, 32840, + 33048, 33061, 33049, 33051, 33069, 33055, 33068, + 33054, 33057, 33045, 33063, 33053, 33058, 33297, + 33336, 33331, 33338, 33332, 33330, 33396, 33680, + 33699, 33704, 33677, 33658, 33651, 33700, 33652, + 33679, 33665, 33685, 33689, 33653, 33684, 33705, + 33661, 33667, 33676, 33693, 33691, 33706, 33675, + 33662, 33701, 33711, 33672, 33687, 33712, 33663, + 33702, 33671, 33710, 33654, 33690, 34393, 34390, + 34495, 34487, 34498, 34497, 34501, 34490, 34480, + 34504, 34489, 34483, 34488, 34508, 34484, 34491, + 34492, 34499, 34493, 34494, 34898, 34953, 34965, + 34984, 34978, 34986, 34970, 34961, 34977, 34975, + 34968, 34983, 34969, 34971, 34967, 34980, 34988, + 34956, 34963, 34958, 35202, 35286, 35289, 35285, + 35376, 35367, 35372, 35358, 35897, 35899, 35932, + 35933, 35965, 36005, 36221, 36219, 36217, 36284, + 36290, 36281, 36287, 36289, 36568, 36574, 36573, + 36572, 36567, 36576, 36577, 36900, 36875, 36881, + 36892, 36876, 36897, 37103, 37098, 37104, 37108, + 37106, 37107, 37076, 37099, 37100, 37097, 37206, + 37208, 37210, 37203, 37205, 37356, 37364, 37361, + 37363, 37368, 37348, 37369, 37354, 37355, 37367, + 37352, 37358, 38266, 38278, 38280, 38524, 38509, + 38507, 38513, 38511, 38591, 38762, 38916, 39141, + 39319, 20635, 20629, 20628, 20638, 20619, 20643, + 20611, 20620, 20622, 20637, 20584, 20636, 20626, + 20610, 20615, 20831, 20948, 21266, 21265, 21412, + 21415, 21905, 21928, 21925, 21933, 21879, 22085, + 21922, 21907, 21896, 21903, 21941, 21889, 21923, + 21906, 21924, 21885, 21900, 21926, 21887, 21909, + 21921, 21902, 22284, 22569, 22583, 22553, 22558, + 22567, 22563, 22568, 22517, 22600, 22565, 22556, + 22555, 22579, 22591, 22582, 22574, 22585, 22584, + 22573, 22572, 22587, 22881, 23215, 23188, 23199, + 23162, 23202, 23198, 23160, 23206, 23164, 23205, + 23212, 23189, 23214, 23095, 23172, 23178, 23191, + 23171, 23179, 23209, 23163, 23165, 23180, 23196, + 23183, 23187, 23197, 23530, 23501, 23499, 23508, + 23505, 23498, 23502, 23564, 23600, 23863, 23875, + 23915, 23873, 23883, 23871, 23861, 23889, 23886, + 23893, 23859, 23866, 23890, 23869, 23857, 23897, + 23874, 23865, 23881, 23864, 23868, 23858, 23862, + 23872, 23877, 24132, 24129, 24408, 24486, 24485, + 24491, 24777, 24761, 24780, 24802, 24782, 24772, + 24852, 24818, 24842, 24854, 24837, 24821, 24851, + 24824, 24828, 24830, 24769, 24835, 24856, 24861, + 24848, 24831, 24836, 24843, 25162, 25492, 25521, + 25520, 25550, 25573, 25576, 25583, 25539, 25757, + 25587, 25546, 25568, 25590, 25557, 25586, 25589, + 25697, 25567, 25534, 25565, 25564, 25540, 25560, + 25555, 25538, 25543, 25548, 25547, 25544, 25584, + 25559, 25561, 25906, 25959, 25962, 25956, 25948, + 25960, 25957, 25996, 26013, 26014, 26030, 26064, + 26066, 26236, 26220, 26235, 26240, 26225, 26233, + 26218, 26226, 26369, 26892, 26835, 26884, 26844, + 26922, 26860, 26858, 26865, 26895, 26838, 26871, + 26859, 26852, 26870, 26899, 26896, 26867, 26849, + 26887, 26828, 26888, 26992, 26804, 26897, 26863, + 26822, 26900, 26872, 26832, 26877, 26876, 26856, + 26891, 26890, 26903, 26830, 26824, 26845, 26846, + 26854, 26868, 26833, 26886, 26836, 26857, 26901, + 26917, 26823, 27449, 27451, 27455, 27452, 27540, + 27543, 27545, 27541, 27581, 27632, 27634, 27635, + 27696, 28156, 28230, 28231, 28191, 28233, 28296, + 28220, 28221, 28229, 28258, 28203, 28223, 28225, + 28253, 28275, 28188, 28211, 28235, 28224, 28241, + 28219, 28163, 28206, 28254, 28264, 28252, 28257, + 28209, 28200, 28256, 28273, 28267, 28217, 28194, + 28208, 28243, 28261, 28199, 28280, 28260, 28279, + 28245, 28281, 28242, 28262, 28213, 28214, 28250, + 28960, 28958, 28975, 28923, 28974, 28977, 28963, + 28965, 28962, 28978, 28959, 28968, 28986, 28955, + 29259, 29274, 29320, 29321, 29318, 29317, 29323, + 29458, 29451, 29488, 29474, 29489, 29491, 29479, + 29490, 29485, 29478, 29475, 29493, 29452, 29742, + 29740, 29744, 29739, 29718, 29722, 29729, 29741, + 29745, 29732, 29731, 29725, 29737, 29728, 29746, + 29947, 29999, 30063, 30060, 30183, 30170, 30177, + 30182, 30173, 30175, 30180, 30167, 30357, 30354, + 30426, 30534, 30535, 30532, 30541, 30533, 30538, + 30542, 30539, 30540, 30686, 30700, 30816, 30820, + 30821, 30812, 30829, 30833, 30826, 30830, 30832, + 30825, 30824, 30814, 30818, 31092, 31091, 31090, + 31088, 31234, 31242, 31235, 31244, 31236, 31385, + 31462, 31460, 31562, 31547, 31556, 31560, 31564, + 31566, 31552, 31576, 31557, 31906, 31902, 31912, + 31905, 32088, 32111, 32099, 32083, 32086, 32103, + 32106, 32079, 32109, 32092, 32107, 32082, 32084, + 32105, 32081, 32095, 32078, 32574, 32575, 32613, + 32614, 32674, 32672, 32673, 32727, 32849, 32847, + 32848, 33022, 32980, 33091, 33098, 33106, 33103, + 33095, 33085, 33101, 33082, 33254, 33262, 33271, + 33272, 33273, 33284, 33340, 33341, 33343, 33397, + 33595, 33743, 33785, 33827, 33728, 33768, 33810, + 33767, 33764, 33788, 33782, 33808, 33734, 33736, + 33771, 33763, 33727, 33793, 33757, 33765, 33752, + 33791, 33761, 33739, 33742, 33750, 33781, 33737, + 33801, 33807, 33758, 33809, 33798, 33730, 33779, + 33749, 33786, 33735, 33745, 33770, 33811, 33731, + 33772, 33774, 33732, 33787, 33751, 33762, 33819, + 33755, 33790, 34520, 34530, 34534, 34515, 34531, + 34522, 34538, 34525, 34539, 34524, 34540, 34537, + 34519, 34536, 34513, 34888, 34902, 34901, 35002, + 35031, 35001, 35000, 35008, 35006, 34998, 35004, + 34999, 35005, 34994, 35073, 35017, 35221, 35224, + 35223, 35293, 35290, 35291, 35406, 35405, 35385, + 35417, 35392, 35415, 35416, 35396, 35397, 35410, + 35400, 35409, 35402, 35404, 35407, 35935, 35969, + 35968, 36026, 36030, 36016, 36025, 36021, 36228, + 36224, 36233, 36312, 36307, 36301, 36295, 36310, + 36316, 36303, 36309, 36313, 36296, 36311, 36293, + 36591, 36599, 36602, 36601, 36582, 36590, 36581, + 36597, 36583, 36584, 36598, 36587, 36593, 36588, + 36596, 36585, 36909, 36916, 36911, 37126, 37164, + 37124, 37119, 37116, 37128, 37113, 37115, 37121, + 37120, 37127, 37125, 37123, 37217, 37220, 37215, + 37218, 37216, 37377, 37386, 37413, 37379, 37402, + 37414, 37391, 37388, 37376, 37394, 37375, 37373, + 37382, 37380, 37415, 37378, 37404, 37412, 37401, + 37399, 37381, 37398, 38267, 38285, 38284, 38288, + 38535, 38526, 38536, 38537, 38531, 38528, 38594, + 38600, 38595, 38641, 38640, 38764, 38768, 38766, + 38919, 39081, 39147, 40166, 40697, 20099, 20100, + 20150, 20669, 20671, 20678, 20654, 20676, 20682, + 20660, 20680, 20674, 20656, 20673, 20666, 20657, + 20683, 20681, 20662, 20664, 20951, 21114, 21112, + 21115, 21116, 21955, 21979, 21964, 21968, 21963, + 21962, 21981, 21952, 21972, 21956, 21993, 21951, + 21970, 21901, 21967, 21973, 21986, 21974, 21960, + 22002, 21965, 21977, 21954, 22292, 22611, 22632, + 22628, 22607, 22605, 22601, 22639, 22613, 22606, + 22621, 22617, 22629, 22619, 22589, 22627, 22641, + 22780, 23239, 23236, 23243, 23226, 23224, 23217, + 23221, 23216, 23231, 23240, 23227, 23238, 23223, + 23232, 23242, 23220, 23222, 23245, 23225, 23184, + 23510, 23512, 23513, 23583, 23603, 23921, 23907, + 23882, 23909, 23922, 23916, 23902, 23912, 23911, + 23906, 24048, 24143, 24142, 24138, 24141, 24139, + 24261, 24268, 24262, 24267, 24263, 24384, 24495, + 24493, 24823, 24905, 24906, 24875, 24901, 24886, + 24882, 24878, 24902, 24879, 24911, 24873, 24896, + 25120, 37224, 25123, 25125, 25124, 25541, 25585, + 25579, 25616, 25618, 25609, 25632, 25636, 25651, + 25667, 25631, 25621, 25624, 25657, 25655, 25634, + 25635, 25612, 25638, 25648, 25640, 25665, 25653, + 25647, 25610, 25626, 25664, 25637, 25639, 25611, + 25575, 25627, 25646, 25633, 25614, 25967, 26002, + 26067, 26246, 26252, 26261, 26256, 26251, 26250, + 26265, 26260, 26232, 26400, 26982, 26975, 26936, + 26958, 26978, 26993, 26943, 26949, 26986, 26937, + 26946, 26967, 26969, 27002, 26952, 26953, 26933, + 26988, 26931, 26941, 26981, 26864, 27000, 26932, + 26985, 26944, 26991, 26948, 26998, 26968, 26945, + 26996, 26956, 26939, 26955, 26935, 26972, 26959, + 26961, 26930, 26962, 26927, 27003, 26940, 27462, + 27461, 27459, 27458, 27464, 27457, 27547, 64013, + 27643, 27644, 27641, 27639, 27640, 28315, 28374, + 28360, 28303, 28352, 28319, 28307, 28308, 28320, + 28337, 28345, 28358, 28370, 28349, 28353, 28318, + 28361, 28343, 28336, 28365, 28326, 28367, 28338, + 28350, 28355, 28380, 28376, 28313, 28306, 28302, + 28301, 28324, 28321, 28351, 28339, 28368, 28362, + 28311, 28334, 28323, 28999, 29012, 29010, 29027, + 29024, 28993, 29021, 29026, 29042, 29048, 29034, + 29025, 28994, 29016, 28995, 29003, 29040, 29023, + 29008, 29011, 28996, 29005, 29018, 29263, 29325, + 29324, 29329, 29328, 29326, 29500, 29506, 29499, + 29498, 29504, 29514, 29513, 29764, 29770, 29771, + 29778, 29777, 29783, 29760, 29775, 29776, 29774, + 29762, 29766, 29773, 29780, 29921, 29951, 29950, + 29949, 29981, 30073, 30071, 27011, 30191, 30223, + 30211, 30199, 30206, 30204, 30201, 30200, 30224, + 30203, 30198, 30189, 30197, 30205, 30361, 30389, + 30429, 30549, 30559, 30560, 30546, 30550, 30554, + 30569, 30567, 30548, 30553, 30573, 30688, 30855, + 30874, 30868, 30863, 30852, 30869, 30853, 30854, + 30881, 30851, 30841, 30873, 30848, 30870, 30843, + 31100, 31106, 31101, 31097, 31249, 31256, 31257, + 31250, 31255, 31253, 31266, 31251, 31259, 31248, + 31395, 31394, 31390, 31467, 31590, 31588, 31597, + 31604, 31593, 31602, 31589, 31603, 31601, 31600, + 31585, 31608, 31606, 31587, 31922, 31924, 31919, + 32136, 32134, 32128, 32141, 32127, 32133, 32122, + 32142, 32123, 32131, 32124, 32140, 32148, 32132, + 32125, 32146, 32621, 32619, 32615, 32616, 32620, + 32678, 32677, 32679, 32731, 32732, 32801, 33124, + 33120, 33143, 33116, 33129, 33115, 33122, 33138, + 26401, 33118, 33142, 33127, 33135, 33092, 33121, + 33309, 33353, 33348, 33344, 33346, 33349, 34033, + 33855, 33878, 33910, 33913, 33935, 33933, 33893, + 33873, 33856, 33926, 33895, 33840, 33869, 33917, + 33882, 33881, 33908, 33907, 33885, 34055, 33886, + 33847, 33850, 33844, 33914, 33859, 33912, 33842, + 33861, 33833, 33753, 33867, 33839, 33858, 33837, + 33887, 33904, 33849, 33870, 33868, 33874, 33903, + 33989, 33934, 33851, 33863, 33846, 33843, 33896, + 33918, 33860, 33835, 33888, 33876, 33902, 33872, + 34571, 34564, 34551, 34572, 34554, 34518, 34549, + 34637, 34552, 34574, 34569, 34561, 34550, 34573, + 34565, 35030, 35019, 35021, 35022, 35038, 35035, + 35034, 35020, 35024, 35205, 35227, 35295, 35301, + 35300, 35297, 35296, 35298, 35292, 35302, 35446, + 35462, 35455, 35425, 35391, 35447, 35458, 35460, + 35445, 35459, 35457, 35444, 35450, 35900, 35915, + 35914, 35941, 35940, 35942, 35974, 35972, 35973, + 36044, 36200, 36201, 36241, 36236, 36238, 36239, + 36237, 36243, 36244, 36240, 36242, 36336, 36320, + 36332, 36337, 36334, 36304, 36329, 36323, 36322, + 36327, 36338, 36331, 36340, 36614, 36607, 36609, + 36608, 36613, 36615, 36616, 36610, 36619, 36946, + 36927, 36932, 36937, 36925, 37136, 37133, 37135, + 37137, 37142, 37140, 37131, 37134, 37230, 37231, + 37448, 37458, 37424, 37434, 37478, 37427, 37477, + 37470, 37507, 37422, 37450, 37446, 37485, 37484, + 37455, 37472, 37479, 37487, 37430, 37473, 37488, + 37425, 37460, 37475, 37456, 37490, 37454, 37459, + 37452, 37462, 37426, 38303, 38300, 38302, 38299, + 38546, 38547, 38545, 38551, 38606, 38650, 38653, + 38648, 38645, 38771, 38775, 38776, 38770, 38927, + 38925, 38926, 39084, 39158, 39161, 39343, 39346, + 39344, 39349, 39597, 39595, 39771, 40170, 40173, + 40167, 40576, 40701, 20710, 20692, 20695, 20712, + 20723, 20699, 20714, 20701, 20708, 20691, 20716, + 20720, 20719, 20707, 20704, 20952, 21120, 21121, + 21225, 21227, 21296, 21420, 22055, 22037, 22028, + 22034, 22012, 22031, 22044, 22017, 22035, 22018, + 22010, 22045, 22020, 22015, 22009, 22665, 22652, + 22672, 22680, 22662, 22657, 22655, 22644, 22667, + 22650, 22663, 22673, 22670, 22646, 22658, 22664, + 22651, 22676, 22671, 22782, 22891, 23260, 23278, + 23269, 23253, 23274, 23258, 23277, 23275, 23283, + 23266, 23264, 23259, 23276, 23262, 23261, 23257, + 23272, 23263, 23415, 23520, 23523, 23651, 23938, + 23936, 23933, 23942, 23930, 23937, 23927, 23946, + 23945, 23944, 23934, 23932, 23949, 23929, 23935, + 24152, 24153, 24147, 24280, 24273, 24279, 24270, + 24284, 24277, 24281, 24274, 24276, 24388, 24387, + 24431, 24502, 24876, 24872, 24897, 24926, 24945, + 24947, 24914, 24915, 24946, 24940, 24960, 24948, + 24916, 24954, 24923, 24933, 24891, 24938, 24929, + 24918, 25129, 25127, 25131, 25643, 25677, 25691, + 25693, 25716, 25718, 25714, 25715, 25725, 25717, + 25702, 25766, 25678, 25730, 25694, 25692, 25675, + 25683, 25696, 25680, 25727, 25663, 25708, 25707, + 25689, 25701, 25719, 25971, 26016, 26273, 26272, + 26271, 26373, 26372, 26402, 27057, 27062, 27081, + 27040, 27086, 27030, 27056, 27052, 27068, 27025, + 27033, 27022, 27047, 27021, 27049, 27070, 27055, + 27071, 27076, 27069, 27044, 27092, 27065, 27082, + 27034, 27087, 27059, 27027, 27050, 27041, 27038, + 27097, 27031, 27024, 27074, 27061, 27045, 27078, + 27466, 27469, 27467, 27550, 27551, 27552, 27587, + 27588, 27646, 28366, 28405, 28401, 28419, 28453, + 28408, 28471, 28411, 28462, 28425, 28494, 28441, + 28442, 28455, 28440, 28475, 28434, 28397, 28426, + 28470, 28531, 28409, 28398, 28461, 28480, 28464, + 28476, 28469, 28395, 28423, 28430, 28483, 28421, + 28413, 28406, 28473, 28444, 28412, 28474, 28447, + 28429, 28446, 28424, 28449, 29063, 29072, 29065, + 29056, 29061, 29058, 29071, 29051, 29062, 29057, + 29079, 29252, 29267, 29335, 29333, 29331, 29507, + 29517, 29521, 29516, 29794, 29811, 29809, 29813, + 29810, 29799, 29806, 29952, 29954, 29955, 30077, + 30096, 30230, 30216, 30220, 30229, 30225, 30218, + 30228, 30392, 30593, 30588, 30597, 30594, 30574, + 30592, 30575, 30590, 30595, 30898, 30890, 30900, + 30893, 30888, 30846, 30891, 30878, 30885, 30880, + 30892, 30882, 30884, 31128, 31114, 31115, 31126, + 31125, 31124, 31123, 31127, 31112, 31122, 31120, + 31275, 31306, 31280, 31279, 31272, 31270, 31400, + 31403, 31404, 31470, 31624, 31644, 31626, 31633, + 31632, 31638, 31629, 31628, 31643, 31630, 31621, + 31640, 21124, 31641, 31652, 31618, 31931, 31935, + 31932, 31930, 32167, 32183, 32194, 32163, 32170, + 32193, 32192, 32197, 32157, 32206, 32196, 32198, + 32203, 32204, 32175, 32185, 32150, 32188, 32159, + 32166, 32174, 32169, 32161, 32201, 32627, 32738, + 32739, 32741, 32734, 32804, 32861, 32860, 33161, + 33158, 33155, 33159, 33165, 33164, 33163, 33301, + 33943, 33956, 33953, 33951, 33978, 33998, 33986, + 33964, 33966, 33963, 33977, 33972, 33985, 33997, + 33962, 33946, 33969, 34000, 33949, 33959, 33979, + 33954, 33940, 33991, 33996, 33947, 33961, 33967, + 33960, 34006, 33944, 33974, 33999, 33952, 34007, + 34004, 34002, 34011, 33968, 33937, 34401, 34611, + 34595, 34600, 34667, 34624, 34606, 34590, 34593, + 34585, 34587, 34627, 34604, 34625, 34622, 34630, + 34592, 34610, 34602, 34605, 34620, 34578, 34618, + 34609, 34613, 34626, 34598, 34599, 34616, 34596, + 34586, 34608, 34577, 35063, 35047, 35057, 35058, + 35066, 35070, 35054, 35068, 35062, 35067, 35056, + 35052, 35051, 35229, 35233, 35231, 35230, 35305, + 35307, 35304, 35499, 35481, 35467, 35474, 35471, + 35478, 35901, 35944, 35945, 36053, 36047, 36055, + 36246, 36361, 36354, 36351, 36365, 36349, 36362, + 36355, 36359, 36358, 36357, 36350, 36352, 36356, + 36624, 36625, 36622, 36621, 37155, 37148, 37152, + 37154, 37151, 37149, 37146, 37156, 37153, 37147, + 37242, 37234, 37241, 37235, 37541, 37540, 37494, + 37531, 37498, 37536, 37524, 37546, 37517, 37542, + 37530, 37547, 37497, 37527, 37503, 37539, 37614, + 37518, 37506, 37525, 37538, 37501, 37512, 37537, + 37514, 37510, 37516, 37529, 37543, 37502, 37511, + 37545, 37533, 37515, 37421, 38558, 38561, 38655, + 38744, 38781, 38778, 38782, 38787, 38784, 38786, + 38779, 38788, 38785, 38783, 38862, 38861, 38934, + 39085, 39086, 39170, 39168, 39175, 39325, 39324, + 39363, 39353, 39355, 39354, 39362, 39357, 39367, + 39601, 39651, 39655, 39742, 39743, 39776, 39777, + 39775, 40177, 40178, 40181, 40615, 20735, 20739, + 20784, 20728, 20742, 20743, 20726, 20734, 20747, + 20748, 20733, 20746, 21131, 21132, 21233, 21231, + 22088, 22082, 22092, 22069, 22081, 22090, 22089, + 22086, 22104, 22106, 22080, 22067, 22077, 22060, + 22078, 22072, 22058, 22074, 22298, 22699, 22685, + 22705, 22688, 22691, 22703, 22700, 22693, 22689, + 22783, 23295, 23284, 23293, 23287, 23286, 23299, + 23288, 23298, 23289, 23297, 23303, 23301, 23311, + 23655, 23961, 23959, 23967, 23954, 23970, 23955, + 23957, 23968, 23964, 23969, 23962, 23966, 24169, + 24157, 24160, 24156, 32243, 24283, 24286, 24289, + 24393, 24498, 24971, 24963, 24953, 25009, 25008, + 24994, 24969, 24987, 24979, 25007, 25005, 24991, + 24978, 25002, 24993, 24973, 24934, 25011, 25133, + 25710, 25712, 25750, 25760, 25733, 25751, 25756, + 25743, 25739, 25738, 25740, 25763, 25759, 25704, + 25777, 25752, 25974, 25978, 25977, 25979, 26034, + 26035, 26293, 26288, 26281, 26290, 26295, 26282, + 26287, 27136, 27142, 27159, 27109, 27128, 27157, + 27121, 27108, 27168, 27135, 27116, 27106, 27163, + 27165, 27134, 27175, 27122, 27118, 27156, 27127, + 27111, 27200, 27144, 27110, 27131, 27149, 27132, + 27115, 27145, 27140, 27160, 27173, 27151, 27126, + 27174, 27143, 27124, 27158, 27473, 27557, 27555, + 27554, 27558, 27649, 27648, 27647, 27650, 28481, + 28454, 28542, 28551, 28614, 28562, 28557, 28553, + 28556, 28514, 28495, 28549, 28506, 28566, 28534, + 28524, 28546, 28501, 28530, 28498, 28496, 28503, + 28564, 28563, 28509, 28416, 28513, 28523, 28541, + 28519, 28560, 28499, 28555, 28521, 28543, 28565, + 28515, 28535, 28522, 28539, 29106, 29103, 29083, + 29104, 29088, 29082, 29097, 29109, 29085, 29093, + 29086, 29092, 29089, 29098, 29084, 29095, 29107, + 29336, 29338, 29528, 29522, 29534, 29535, 29536, + 29533, 29531, 29537, 29530, 29529, 29538, 29831, + 29833, 29834, 29830, 29825, 29821, 29829, 29832, + 29820, 29817, 29960, 29959, 30078, 30245, 30238, + 30233, 30237, 30236, 30243, 30234, 30248, 30235, + 30364, 30365, 30366, 30363, 30605, 30607, 30601, + 30600, 30925, 30907, 30927, 30924, 30929, 30926, + 30932, 30920, 30915, 30916, 30921, 31130, 31137, + 31136, 31132, 31138, 31131, 27510, 31289, 31410, + 31412, 31411, 31671, 31691, 31678, 31660, 31694, + 31663, 31673, 31690, 31669, 31941, 31944, 31948, + 31947, 32247, 32219, 32234, 32231, 32215, 32225, + 32259, 32250, 32230, 32246, 32241, 32240, 32238, + 32223, 32630, 32684, 32688, 32685, 32749, 32747, + 32746, 32748, 32742, 32744, 32868, 32871, 33187, + 33183, 33182, 33173, 33186, 33177, 33175, 33302, + 33359, 33363, 33362, 33360, 33358, 33361, 34084, + 34107, 34063, 34048, 34089, 34062, 34057, 34061, + 34079, 34058, 34087, 34076, 34043, 34091, 34042, + 34056, 34060, 34036, 34090, 34034, 34069, 34039, + 34027, 34035, 34044, 34066, 34026, 34025, 34070, + 34046, 34088, 34077, 34094, 34050, 34045, 34078, + 34038, 34097, 34086, 34023, 34024, 34032, 34031, + 34041, 34072, 34080, 34096, 34059, 34073, 34095, + 34402, 34646, 34659, 34660, 34679, 34785, 34675, + 34648, 34644, 34651, 34642, 34657, 34650, 34641, + 34654, 34669, 34666, 34640, 34638, 34655, 34653, + 34671, 34668, 34682, 34670, 34652, 34661, 34639, + 34683, 34677, 34658, 34663, 34665, 34906, 35077, + 35084, 35092, 35083, 35095, 35096, 35097, 35078, + 35094, 35089, 35086, 35081, 35234, 35236, 35235, + 35309, 35312, 35308, 35535, 35526, 35512, 35539, + 35537, 35540, 35541, 35515, 35543, 35518, 35520, + 35525, 35544, 35523, 35514, 35517, 35545, 35902, + 35917, 35983, 36069, 36063, 36057, 36072, 36058, + 36061, 36071, 36256, 36252, 36257, 36251, 36384, + 36387, 36389, 36388, 36398, 36373, 36379, 36374, + 36369, 36377, 36390, 36391, 36372, 36370, 36376, + 36371, 36380, 36375, 36378, 36652, 36644, 36632, + 36634, 36640, 36643, 36630, 36631, 36979, 36976, + 36975, 36967, 36971, 37167, 37163, 37161, 37162, + 37170, 37158, 37166, 37253, 37254, 37258, 37249, + 37250, 37252, 37248, 37584, 37571, 37572, 37568, + 37593, 37558, 37583, 37617, 37599, 37592, 37609, + 37591, 37597, 37580, 37615, 37570, 37608, 37578, + 37576, 37582, 37606, 37581, 37589, 37577, 37600, + 37598, 37607, 37585, 37587, 37557, 37601, 37574, + 37556, 38268, 38316, 38315, 38318, 38320, 38564, + 38562, 38611, 38661, 38664, 38658, 38746, 38794, + 38798, 38792, 38864, 38863, 38942, 38941, 38950, + 38953, 38952, 38944, 38939, 38951, 39090, 39176, + 39162, 39185, 39188, 39190, 39191, 39189, 39388, + 39373, 39375, 39379, 39380, 39374, 39369, 39382, + 39384, 39371, 39383, 39372, 39603, 39660, 39659, + 39667, 39666, 39665, 39750, 39747, 39783, 39796, + 39793, 39782, 39798, 39797, 39792, 39784, 39780, + 39788, 40188, 40186, 40189, 40191, 40183, 40199, + 40192, 40185, 40187, 40200, 40197, 40196, 40579, + 40659, 40719, 40720, 20764, 20755, 20759, 20762, + 20753, 20958, 21300, 21473, 22128, 22112, 22126, + 22131, 22118, 22115, 22125, 22130, 22110, 22135, + 22300, 22299, 22728, 22717, 22729, 22719, 22714, + 22722, 22716, 22726, 23319, 23321, 23323, 23329, + 23316, 23315, 23312, 23318, 23336, 23322, 23328, + 23326, 23535, 23980, 23985, 23977, 23975, 23989, + 23984, 23982, 23978, 23976, 23986, 23981, 23983, + 23988, 24167, 24168, 24166, 24175, 24297, 24295, + 24294, 24296, 24293, 24395, 24508, 24989, 25000, + 24982, 25029, 25012, 25030, 25025, 25036, 25018, + 25023, 25016, 24972, 25815, 25814, 25808, 25807, + 25801, 25789, 25737, 25795, 25819, 25843, 25817, + 25907, 25983, 25980, 26018, 26312, 26302, 26304, + 26314, 26315, 26319, 26301, 26299, 26298, 26316, + 26403, 27188, 27238, 27209, 27239, 27186, 27240, + 27198, 27229, 27245, 27254, 27227, 27217, 27176, + 27226, 27195, 27199, 27201, 27242, 27236, 27216, + 27215, 27220, 27247, 27241, 27232, 27196, 27230, + 27222, 27221, 27213, 27214, 27206, 27477, 27476, + 27478, 27559, 27562, 27563, 27592, 27591, 27652, + 27651, 27654, 28589, 28619, 28579, 28615, 28604, + 28622, 28616, 28510, 28612, 28605, 28574, 28618, + 28584, 28676, 28581, 28590, 28602, 28588, 28586, + 28623, 28607, 28600, 28578, 28617, 28587, 28621, + 28591, 28594, 28592, 29125, 29122, 29119, 29112, + 29142, 29120, 29121, 29131, 29140, 29130, 29127, + 29135, 29117, 29144, 29116, 29126, 29146, 29147, + 29341, 29342, 29545, 29542, 29543, 29548, 29541, + 29547, 29546, 29823, 29850, 29856, 29844, 29842, + 29845, 29857, 29963, 30080, 30255, 30253, 30257, + 30269, 30259, 30268, 30261, 30258, 30256, 30395, + 30438, 30618, 30621, 30625, 30620, 30619, 30626, + 30627, 30613, 30617, 30615, 30941, 30953, 30949, + 30954, 30942, 30947, 30939, 30945, 30946, 30957, + 30943, 30944, 31140, 31300, 31304, 31303, 31414, + 31416, 31413, 31409, 31415, 31710, 31715, 31719, + 31709, 31701, 31717, 31706, 31720, 31737, 31700, + 31722, 31714, 31708, 31723, 31704, 31711, 31954, + 31956, 31959, 31952, 31953, 32274, 32289, 32279, + 32268, 32287, 32288, 32275, 32270, 32284, 32277, + 32282, 32290, 32267, 32271, 32278, 32269, 32276, + 32293, 32292, 32579, 32635, 32636, 32634, 32689, + 32751, 32810, 32809, 32876, 33201, 33190, 33198, + 33209, 33205, 33195, 33200, 33196, 33204, 33202, + 33207, 33191, 33266, 33365, 33366, 33367, 34134, + 34117, 34155, 34125, 34131, 34145, 34136, 34112, + 34118, 34148, 34113, 34146, 34116, 34129, 34119, + 34147, 34110, 34139, 34161, 34126, 34158, 34165, + 34133, 34151, 34144, 34188, 34150, 34141, 34132, + 34149, 34156, 34403, 34405, 34404, 34715, 34703, + 34711, 34707, 34706, 34696, 34689, 34710, 34712, + 34681, 34695, 34723, 34693, 34704, 34705, 34717, + 34692, 34708, 34716, 34714, 34697, 35102, 35110, + 35120, 35117, 35118, 35111, 35121, 35106, 35113, + 35107, 35119, 35116, 35103, 35313, 35552, 35554, + 35570, 35572, 35573, 35549, 35604, 35556, 35551, + 35568, 35528, 35550, 35553, 35560, 35583, 35567, + 35579, 35985, 35986, 35984, 36085, 36078, 36081, + 36080, 36083, 36204, 36206, 36261, 36263, 36403, + 36414, 36408, 36416, 36421, 36406, 36412, 36413, + 36417, 36400, 36415, 36541, 36662, 36654, 36661, + 36658, 36665, 36663, 36660, 36982, 36985, 36987, + 36998, 37114, 37171, 37173, 37174, 37267, 37264, + 37265, 37261, 37263, 37671, 37662, 37640, 37663, + 37638, 37647, 37754, 37688, 37692, 37659, 37667, + 37650, 37633, 37702, 37677, 37646, 37645, 37579, + 37661, 37626, 37669, 37651, 37625, 37623, 37684, + 37634, 37668, 37631, 37673, 37689, 37685, 37674, + 37652, 37644, 37643, 37630, 37641, 37632, 37627, + 37654, 38332, 38349, 38334, 38329, 38330, 38326, + 38335, 38325, 38333, 38569, 38612, 38667, 38674, + 38672, 38809, 38807, 38804, 38896, 38904, 38965, + 38959, 38962, 39204, 39199, 39207, 39209, 39326, + 39406, 39404, 39397, 39396, 39408, 39395, 39402, + 39401, 39399, 39609, 39615, 39604, 39611, 39670, + 39674, 39673, 39671, 39731, 39808, 39813, 39815, + 39804, 39806, 39803, 39810, 39827, 39826, 39824, + 39802, 39829, 39805, 39816, 40229, 40215, 40224, + 40222, 40212, 40233, 40221, 40216, 40226, 40208, + 40217, 40223, 40584, 40582, 40583, 40622, 40621, + 40661, 40662, 40698, 40722, 40765, 20774, 20773, + 20770, 20772, 20768, 20777, 21236, 22163, 22156, + 22157, 22150, 22148, 22147, 22142, 22146, 22143, + 22145, 22742, 22740, 22735, 22738, 23341, 23333, + 23346, 23331, 23340, 23335, 23334, 23343, 23342, + 23419, 23537, 23538, 23991, 24172, 24170, 24510, + 24507, 25027, 25013, 25020, 25063, 25056, 25061, + 25060, 25064, 25054, 25839, 25833, 25827, 25835, + 25828, 25832, 25985, 25984, 26038, 26074, 26322, + 27277, 27286, 27265, 27301, 27273, 27295, 27291, + 27297, 27294, 27271, 27283, 27278, 27285, 27267, + 27304, 27300, 27281, 27263, 27302, 27290, 27269, + 27276, 27282, 27483, 27565, 27657, 28620, 28585, + 28660, 28628, 28643, 28636, 28653, 28647, 28646, + 28638, 28658, 28637, 28642, 28648, 29153, 29169, + 29160, 29170, 29156, 29168, 29154, 29555, 29550, + 29551, 29847, 29874, 29867, 29840, 29866, 29869, + 29873, 29861, 29871, 29968, 29969, 29970, 29967, + 30084, 30275, 30280, 30281, 30279, 30372, 30441, + 30645, 30635, 30642, 30647, 30646, 30644, 30641, + 30632, 30704, 30963, 30973, 30978, 30971, 30972, + 30962, 30981, 30969, 30974, 30980, 31147, 31144, + 31324, 31323, 31318, 31320, 31316, 31322, 31422, + 31424, 31425, 31749, 31759, 31730, 31744, 31743, + 31739, 31758, 31732, 31755, 31731, 31746, 31753, + 31747, 31745, 31736, 31741, 31750, 31728, 31729, + 31760, 31754, 31976, 32301, 32316, 32322, 32307, + 38984, 32312, 32298, 32329, 32320, 32327, 32297, + 32332, 32304, 32315, 32310, 32324, 32314, 32581, + 32639, 32638, 32637, 32756, 32754, 32812, 33211, + 33220, 33228, 33226, 33221, 33223, 33212, 33257, + 33371, 33370, 33372, 34179, 34176, 34191, 34215, + 34197, 34208, 34187, 34211, 34171, 34212, 34202, + 34206, 34167, 34172, 34185, 34209, 34170, 34168, + 34135, 34190, 34198, 34182, 34189, 34201, 34205, + 34177, 34210, 34178, 34184, 34181, 34169, 34166, + 34200, 34192, 34207, 34408, 34750, 34730, 34733, + 34757, 34736, 34732, 34745, 34741, 34748, 34734, + 34761, 34755, 34754, 34764, 34743, 34735, 34756, + 34762, 34740, 34742, 34751, 34744, 34749, 34782, + 34738, 35125, 35123, 35132, 35134, 35137, 35154, + 35127, 35138, 35245, 35247, 35246, 35314, 35315, + 35614, 35608, 35606, 35601, 35589, 35595, 35618, + 35599, 35602, 35605, 35591, 35597, 35592, 35590, + 35612, 35603, 35610, 35919, 35952, 35954, 35953, + 35951, 35989, 35988, 36089, 36207, 36430, 36429, + 36435, 36432, 36428, 36423, 36675, 36672, 36997, + 36990, 37176, 37274, 37282, 37275, 37273, 37279, + 37281, 37277, 37280, 37793, 37763, 37807, 37732, + 37718, 37703, 37756, 37720, 37724, 37750, 37705, + 37712, 37713, 37728, 37741, 37775, 37708, 37738, + 37753, 37719, 37717, 37714, 37711, 37745, 37751, + 37755, 37729, 37726, 37731, 37735, 37760, 37710, + 37721, 38343, 38336, 38345, 38339, 38341, 38327, + 38574, 38576, 38572, 38688, 38687, 38680, 38685, + 38681, 38810, 38817, 38812, 38814, 38813, 38869, + 38868, 38897, 38977, 38980, 38986, 38985, 38981, + 38979, 39205, 39211, 39212, 39210, 39219, 39218, + 39215, 39213, 39217, 39216, 39320, 39331, 39329, + 39426, 39418, 39412, 39415, 39417, 39416, 39414, + 39419, 39421, 39422, 39420, 39427, 39614, 39678, + 39677, 39681, 39676, 39752, 39834, 39848, 39838, + 39835, 39846, 39841, 39845, 39844, 39814, 39842, + 39840, 39855, 40243, 40257, 40295, 40246, 40238, + 40239, 40241, 40248, 40240, 40261, 40258, 40259, + 40254, 40247, 40256, 40253, 32757, 40237, 40586, + 40585, 40589, 40624, 40648, 40666, 40699, 40703, + 40740, 40739, 40738, 40788, 40864, 20785, 20781, + 20782, 22168, 22172, 22167, 22170, 22173, 22169, + 22896, 23356, 23657, 23658, 24000, 24173, 24174, + 25048, 25055, 25069, 25070, 25073, 25066, 25072, + 25067, 25046, 25065, 25855, 25860, 25853, 25848, + 25857, 25859, 25852, 26004, 26075, 26330, 26331, + 26328, 27333, 27321, 27325, 27361, 27334, 27322, + 27318, 27319, 27335, 27316, 27309, 27486, 27593, + 27659, 28679, 28684, 28685, 28673, 28677, 28692, + 28686, 28671, 28672, 28667, 28710, 28668, 28663, + 28682, 29185, 29183, 29177, 29187, 29181, 29558, + 29880, 29888, 29877, 29889, 29886, 29878, 29883, + 29890, 29972, 29971, 30300, 30308, 30297, 30288, + 30291, 30295, 30298, 30374, 30397, 30444, 30658, + 30650, 30975, 30988, 30995, 30996, 30985, 30992, + 30994, 30993, 31149, 31148, 31327, 31772, 31785, + 31769, 31776, 31775, 31789, 31773, 31782, 31784, + 31778, 31781, 31792, 32348, 32336, 32342, 32355, + 32344, 32354, 32351, 32337, 32352, 32343, 32339, + 32693, 32691, 32759, 32760, 32885, 33233, 33234, + 33232, 33375, 33374, 34228, 34246, 34240, 34243, + 34242, 34227, 34229, 34237, 34247, 34244, 34239, + 34251, 34254, 34248, 34245, 34225, 34230, 34258, + 34340, 34232, 34231, 34238, 34409, 34791, 34790, + 34786, 34779, 34795, 34794, 34789, 34783, 34803, + 34788, 34772, 34780, 34771, 34797, 34776, 34787, + 34724, 34775, 34777, 34817, 34804, 34792, 34781, + 35155, 35147, 35151, 35148, 35142, 35152, 35153, + 35145, 35626, 35623, 35619, 35635, 35632, 35637, + 35655, 35631, 35644, 35646, 35633, 35621, 35639, + 35622, 35638, 35630, 35620, 35643, 35645, 35642, + 35906, 35957, 35993, 35992, 35991, 36094, 36100, + 36098, 36096, 36444, 36450, 36448, 36439, 36438, + 36446, 36453, 36455, 36443, 36442, 36449, 36445, + 36457, 36436, 36678, 36679, 36680, 36683, 37160, + 37178, 37179, 37182, 37288, 37285, 37287, 37295, + 37290, 37813, 37772, 37778, 37815, 37787, 37789, + 37769, 37799, 37774, 37802, 37790, 37798, 37781, + 37768, 37785, 37791, 37773, 37809, 37777, 37810, + 37796, 37800, 37812, 37795, 37797, 38354, 38355, + 38353, 38579, 38615, 38618, 24002, 38623, 38616, + 38621, 38691, 38690, 38693, 38828, 38830, 38824, + 38827, 38820, 38826, 38818, 38821, 38871, 38873, + 38870, 38872, 38906, 38992, 38993, 38994, 39096, + 39233, 39228, 39226, 39439, 39435, 39433, 39437, + 39428, 39441, 39434, 39429, 39431, 39430, 39616, + 39644, 39688, 39684, 39685, 39721, 39733, 39754, + 39756, 39755, 39879, 39878, 39875, 39871, 39873, + 39861, 39864, 39891, 39862, 39876, 39865, 39869, + 40284, 40275, 40271, 40266, 40283, 40267, 40281, + 40278, 40268, 40279, 40274, 40276, 40287, 40280, + 40282, 40590, 40588, 40671, 40705, 40704, 40726, + 40741, 40747, 40746, 40745, 40744, 40780, 40789, + 20788, 20789, 21142, 21239, 21428, 22187, 22189, + 22182, 22183, 22186, 22188, 22746, 22749, 22747, + 22802, 23357, 23358, 23359, 24003, 24176, 24511, + 25083, 25863, 25872, 25869, 25865, 25868, 25870, + 25988, 26078, 26077, 26334, 27367, 27360, 27340, + 27345, 27353, 27339, 27359, 27356, 27344, 27371, + 27343, 27341, 27358, 27488, 27568, 27660, 28697, + 28711, 28704, 28694, 28715, 28705, 28706, 28707, + 28713, 28695, 28708, 28700, 28714, 29196, 29194, + 29191, 29186, 29189, 29349, 29350, 29348, 29347, + 29345, 29899, 29893, 29879, 29891, 29974, 30304, + 30665, 30666, 30660, 30705, 31005, 31003, 31009, + 31004, 30999, 31006, 31152, 31335, 31336, 31795, + 31804, 31801, 31788, 31803, 31980, 31978, 32374, + 32373, 32376, 32368, 32375, 32367, 32378, 32370, + 32372, 32360, 32587, 32586, 32643, 32646, 32695, + 32765, 32766, 32888, 33239, 33237, 33380, 33377, + 33379, 34283, 34289, 34285, 34265, 34273, 34280, + 34266, 34263, 34284, 34290, 34296, 34264, 34271, + 34275, 34268, 34257, 34288, 34278, 34287, 34270, + 34274, 34816, 34810, 34819, 34806, 34807, 34825, + 34828, 34827, 34822, 34812, 34824, 34815, 34826, + 34818, 35170, 35162, 35163, 35159, 35169, 35164, + 35160, 35165, 35161, 35208, 35255, 35254, 35318, + 35664, 35656, 35658, 35648, 35667, 35670, 35668, + 35659, 35669, 35665, 35650, 35666, 35671, 35907, + 35959, 35958, 35994, 36102, 36103, 36105, 36268, + 36266, 36269, 36267, 36461, 36472, 36467, 36458, + 36463, 36475, 36546, 36690, 36689, 36687, 36688, + 36691, 36788, 37184, 37183, 37296, 37293, 37854, + 37831, 37839, 37826, 37850, 37840, 37881, 37868, + 37836, 37849, 37801, 37862, 37834, 37844, 37870, + 37859, 37845, 37828, 37838, 37824, 37842, 37863, + 38269, 38362, 38363, 38625, 38697, 38699, 38700, + 38696, 38694, 38835, 38839, 38838, 38877, 38878, + 38879, 39004, 39001, 39005, 38999, 39103, 39101, + 39099, 39102, 39240, 39239, 39235, 39334, 39335, + 39450, 39445, 39461, 39453, 39460, 39451, 39458, + 39456, 39463, 39459, 39454, 39452, 39444, 39618, + 39691, 39690, 39694, 39692, 39735, 39914, 39915, + 39904, 39902, 39908, 39910, 39906, 39920, 39892, + 39895, 39916, 39900, 39897, 39909, 39893, 39905, + 39898, 40311, 40321, 40330, 40324, 40328, 40305, + 40320, 40312, 40326, 40331, 40332, 40317, 40299, + 40308, 40309, 40304, 40297, 40325, 40307, 40315, + 40322, 40303, 40313, 40319, 40327, 40296, 40596, + 40593, 40640, 40700, 40749, 40768, 40769, 40781, + 40790, 40791, 40792, 21303, 22194, 22197, 22195, + 22755, 23365, 24006, 24007, 24302, 24303, 24512, + 24513, 25081, 25879, 25878, 25877, 25875, 26079, + 26344, 26339, 26340, 27379, 27376, 27370, 27368, + 27385, 27377, 27374, 27375, 28732, 28725, 28719, + 28727, 28724, 28721, 28738, 28728, 28735, 28730, + 28729, 28736, 28731, 28723, 28737, 29203, 29204, + 29352, 29565, 29564, 29882, 30379, 30378, 30398, + 30445, 30668, 30670, 30671, 30669, 30706, 31013, + 31011, 31015, 31016, 31012, 31017, 31154, 31342, + 31340, 31341, 31479, 31817, 31816, 31818, 31815, + 31813, 31982, 32379, 32382, 32385, 32384, 32698, + 32767, 32889, 33243, 33241, 33291, 33384, 33385, + 34338, 34303, 34305, 34302, 34331, 34304, 34294, + 34308, 34313, 34309, 34316, 34301, 34841, 34832, + 34833, 34839, 34835, 34838, 35171, 35174, 35257, + 35319, 35680, 35690, 35677, 35688, 35683, 35685, + 35687, 35693, 36270, 36486, 36488, 36484, 36697, + 36694, 36695, 36693, 36696, 36698, 37005, 37187, + 37185, 37303, 37301, 37298, 37299, 37899, 37907, + 37883, 37920, 37903, 37908, 37886, 37909, 37904, + 37928, 37913, 37901, 37877, 37888, 37879, 37895, + 37902, 37910, 37906, 37882, 37897, 37880, 37898, + 37887, 37884, 37900, 37878, 37905, 37894, 38366, + 38368, 38367, 38702, 38703, 38841, 38843, 38909, + 38910, 39008, 39010, 39011, 39007, 39105, 39106, + 39248, 39246, 39257, 39244, 39243, 39251, 39474, + 39476, 39473, 39468, 39466, 39478, 39465, 39470, + 39480, 39469, 39623, 39626, 39622, 39696, 39698, + 39697, 39947, 39944, 39927, 39941, 39954, 39928, + 40000, 39943, 39950, 39942, 39959, 39956, 39945, + 40351, 40345, 40356, 40349, 40338, 40344, 40336, + 40347, 40352, 40340, 40348, 40362, 40343, 40353, + 40346, 40354, 40360, 40350, 40355, 40383, 40361, + 40342, 40358, 40359, 40601, 40603, 40602, 40677, + 40676, 40679, 40678, 40752, 40750, 40795, 40800, + 40798, 40797, 40793, 40849, 20794, 20793, 21144, + 21143, 22211, 22205, 22206, 23368, 23367, 24011, + 24015, 24305, 25085, 25883, 27394, 27388, 27395, + 27384, 27392, 28739, 28740, 28746, 28744, 28745, + 28741, 28742, 29213, 29210, 29209, 29566, 29975, + 30314, 30672, 31021, 31025, 31023, 31828, 31827, + 31986, 32394, 32391, 32392, 32395, 32390, 32397, + 32589, 32699, 32816, 33245, 34328, 34346, 34342, + 34335, 34339, 34332, 34329, 34343, 34350, 34337, + 34336, 34345, 34334, 34341, 34857, 34845, 34843, + 34848, 34852, 34844, 34859, 34890, 35181, 35177, + 35182, 35179, 35322, 35705, 35704, 35653, 35706, + 35707, 36112, 36116, 36271, 36494, 36492, 36702, + 36699, 36701, 37190, 37188, 37189, 37305, 37951, + 37947, 37942, 37929, 37949, 37948, 37936, 37945, + 37930, 37943, 37932, 37952, 37937, 38373, 38372, + 38371, 38709, 38714, 38847, 38881, 39012, 39113, + 39110, 39104, 39256, 39254, 39481, 39485, 39494, + 39492, 39490, 39489, 39482, 39487, 39629, 39701, + 39703, 39704, 39702, 39738, 39762, 39979, 39965, + 39964, 39980, 39971, 39976, 39977, 39972, 39969, + 40375, 40374, 40380, 40385, 40391, 40394, 40399, + 40382, 40389, 40387, 40379, 40373, 40398, 40377, + 40378, 40364, 40392, 40369, 40365, 40396, 40371, + 40397, 40370, 40570, 40604, 40683, 40686, 40685, + 40731, 40728, 40730, 40753, 40782, 40805, 40804, + 40850, 20153, 22214, 22213, 22219, 22897, 23371, + 23372, 24021, 24017, 24306, 25889, 25888, 25894, + 25890, 27403, 27400, 27401, 27661, 28757, 28758, + 28759, 28754, 29214, 29215, 29353, 29567, 29912, + 29909, 29913, 29911, 30317, 30381, 31029, 31156, + 31344, 31345, 31831, 31836, 31833, 31835, 31834, + 31988, 31985, 32401, 32591, 32647, 33246, 33387, + 34356, 34357, 34355, 34348, 34354, 34358, 34860, + 34856, 34854, 34858, 34853, 35185, 35263, 35262, + 35323, 35710, 35716, 35714, 35718, 35717, 35711, + 36117, 36501, 36500, 36506, 36498, 36496, 36502, + 36503, 36704, 36706, 37191, 37964, 37968, 37962, + 37963, 37967, 37959, 37957, 37960, 37961, 37958, + 38719, 38883, 39018, 39017, 39115, 39252, 39259, + 39502, 39507, 39508, 39500, 39503, 39496, 39498, + 39497, 39506, 39504, 39632, 39705, 39723, 39739, + 39766, 39765, 40006, 40008, 39999, 40004, 39993, + 39987, 40001, 39996, 39991, 39988, 39986, 39997, + 39990, 40411, 40402, 40414, 40410, 40395, 40400, + 40412, 40401, 40415, 40425, 40409, 40408, 40406, + 40437, 40405, 40413, 40630, 40688, 40757, 40755, + 40754, 40770, 40811, 40853, 40866, 20797, 21145, + 22760, 22759, 22898, 23373, 24024, 34863, 24399, + 25089, 25091, 25092, 25897, 25893, 26006, 26347, + 27409, 27410, 27407, 27594, 28763, 28762, 29218, + 29570, 29569, 29571, 30320, 30676, 31847, 31846, + 32405, 33388, 34362, 34368, 34361, 34364, 34353, + 34363, 34366, 34864, 34866, 34862, 34867, 35190, + 35188, 35187, 35326, 35724, 35726, 35723, 35720, + 35909, 36121, 36504, 36708, 36707, 37308, 37986, + 37973, 37981, 37975, 37982, 38852, 38853, 38912, + 39510, 39513, 39710, 39711, 39712, 40018, 40024, + 40016, 40010, 40013, 40011, 40021, 40025, 40012, + 40014, 40443, 40439, 40431, 40419, 40427, 40440, + 40420, 40438, 40417, 40430, 40422, 40434, 40432, + 40418, 40428, 40436, 40435, 40424, 40429, 40642, + 40656, 40690, 40691, 40710, 40732, 40760, 40759, + 40758, 40771, 40783, 40817, 40816, 40814, 40815, + 22227, 22221, 23374, 23661, 25901, 26349, 26350, + 27411, 28767, 28769, 28765, 28768, 29219, 29915, + 29925, 30677, 31032, 31159, 31158, 31850, 32407, + 32649, 33389, 34371, 34872, 34871, 34869, 34891, + 35732, 35733, 36510, 36511, 36512, 36509, 37310, + 37309, 37314, 37995, 37992, 37993, 38629, 38726, + 38723, 38727, 38855, 38885, 39518, 39637, 39769, + 40035, 40039, 40038, 40034, 40030, 40032, 40450, + 40446, 40455, 40451, 40454, 40453, 40448, 40449, + 40457, 40447, 40445, 40452, 40608, 40734, 40774, + 40820, 40821, 40822, 22228, 25902, 26040, 27416, + 27417, 27415, 27418, 28770, 29222, 29354, 30680, + 30681, 31033, 31849, 31851, 31990, 32410, 32408, + 32411, 32409, 33248, 33249, 34374, 34375, 34376, + 35193, 35194, 35196, 35195, 35327, 35736, 35737, + 36517, 36516, 36515, 37998, 37997, 37999, 38001, + 38003, 38729, 39026, 39263, 40040, 40046, 40045, + 40459, 40461, 40464, 40463, 40466, 40465, 40609, + 40693, 40713, 40775, 40824, 40827, 40826, 40825, + 22302, 28774, 31855, 34876, 36274, 36518, 37315, + 38004, 38008, 38006, 38005, 39520, 40052, 40051, + 40049, 40053, 40468, 40467, 40694, 40714, 40868, + 28776, 28773, 31991, 34410, 34878, 34877, 34879, + 35742, 35996, 36521, 36553, 38731, 39027, 39028, + 39116, 39265, 39339, 39524, 39526, 39527, 39716, + 40469, 40471, 40776, 25095, 27422, 29223, 34380, + 36520, 38018, 38016, 38017, 39529, 39528, 39726, + 40473, 29225, 34379, 35743, 38019, 40057, 40631, + 30325, 39531, 40058, 40477, 28777, 28778, 40612, + 40830, 40777, 40856, 30849, 37561, 35023, 22715, + 24658, 31911, 23290, 9556, 9574, 9559, 9568, 9580, + 9571, 9562, 9577, 9565, 9554, 9572, 9557, 9566, + 9578, 9569, 9560, 9575, 9563, 9555, 9573, 9558, + 9567, 9579, 9570, 9561, 9576, 9564, 9553, 9552, + 9581, 9582, 9584, 9583, 65517, 132423, 37595, + 132575, 147397, 34124, 17077, 29679, 20917, 13897, + 149826, 166372, 37700, 137691, 33518, 146632, 30780, + 26436, 25311, 149811, 166314, 131744, 158643, + 135941, 20395, 140525, 20488, 159017, 162436, + 144896, 150193, 140563, 20521, 131966, 24484, + 131968, 131911, 28379, 132127, 20605, 20737, 13434, + 20750, 39020, 14147, 33814, 149924, 132231, 20832, + 144308, 20842, 134143, 139516, 131813, 140592, + 132494, 143923, 137603, 23426, 34685, 132531, + 146585, 20914, 20920, 40244, 20937, 20943, 20945, + 15580, 20947, 150182, 20915, 20962, 21314, 20973, + 33741, 26942, 145197, 24443, 21003, 21030, 21052, + 21173, 21079, 21140, 21177, 21189, 31765, 34114, + 21216, 34317, 158483, 21253, 166622, 21833, 28377, + 147328, 133460, 147436, 21299, 21316, 134114, 27851, + 136998, 26651, 29653, 24650, 16042, 14540, 136936, + 29149, 17570, 21357, 21364, 165547, 21374, 21375, + 136598, 136723, 30694, 21395, 166555, 21408, 21419, + 21422, 29607, 153458, 16217, 29596, 21441, 21445, + 27721, 20041, 22526, 21465, 15019, 134031, 21472, + 147435, 142755, 21494, 134263, 21523, 28793, 21803, + 26199, 27995, 21613, 158547, 134516, 21853, 21647, + 21668, 18342, 136973, 134877, 15796, 134477, 166332, + 140952, 21831, 19693, 21551, 29719, 21894, 21929, + 22021, 137431, 147514, 17746, 148533, 26291, 135348, + 22071, 26317, 144010, 26276, 26285, 22093, 22095, + 30961, 22257, 38791, 21502, 22272, 22255, 22253, + 166758, 13859, 135759, 22342, 147877, 27758, 28811, + 22338, 14001, 158846, 22502, 136214, 22531, 136276, + 148323, 22566, 150517, 22620, 22698, 13665, 22752, + 22748, 135740, 22779, 23551, 22339, 172368, 148088, + 37843, 13729, 22815, 26790, 14019, 28249, 136766, + 23076, 21843, 136850, 34053, 22985, 134478, 158849, + 159018, 137180, 23001, 137211, 137138, 159142, + 28017, 137256, 136917, 23033, 159301, 23211, 23139, + 14054, 149929, 23159, 14088, 23190, 29797, 23251, + 159649, 140628, 15749, 137489, 14130, 136888, 24195, + 21200, 23414, 25992, 23420, 162318, 16388, 18525, + 131588, 23509, 24928, 137780, 154060, 132517, 23539, + 23453, 19728, 23557, 138052, 23571, 29646, 23572, + 138405, 158504, 23625, 18653, 23685, 23785, 23791, + 23947, 138745, 138807, 23824, 23832, 23878, 138916, + 23738, 24023, 33532, 14381, 149761, 139337, 139635, + 33415, 14390, 15298, 24110, 27274, 24181, 24186, + 148668, 134355, 21414, 20151, 24272, 21416, 137073, + 24073, 24308, 164994, 24313, 24315, 14496, 24316, + 26686, 37915, 24333, 131521, 194708, 15070, 18606, + 135994, 24378, 157832, 140240, 24408, 140401, 24419, + 38845, 159342, 24434, 37696, 166454, 24487, 23990, + 15711, 152144, 139114, 159992, 140904, 37334, + 131742, 166441, 24625, 26245, 137335, 14691, 15815, + 13881, 22416, 141236, 31089, 15936, 24734, 24740, + 24755, 149890, 149903, 162387, 29860, 20705, 23200, + 24932, 33828, 24898, 194726, 159442, 24961, 20980, + 132694, 24967, 23466, 147383, 141407, 25043, 166813, + 170333, 25040, 14642, 141696, 141505, 24611, 24924, + 25886, 25483, 131352, 25285, 137072, 25301, 142861, + 25452, 149983, 14871, 25656, 25592, 136078, 137212, + 25744, 28554, 142902, 38932, 147596, 153373, 25825, + 25829, 38011, 14950, 25658, 14935, 25933, 28438, + 150056, 150051, 25989, 25965, 25951, 143486, 26037, + 149824, 19255, 26065, 16600, 137257, 26080, 26083, + 24543, 144384, 26136, 143863, 143864, 26180, 143780, + 143781, 26187, 134773, 26215, 152038, 26227, 26228, + 138813, 143921, 165364, 143816, 152339, 30661, + 141559, 39332, 26370, 148380, 150049, 15147, 27130, + 145346, 26462, 26471, 26466, 147917, 168173, 26583, + 17641, 26658, 28240, 37436, 26625, 144358, 159136, + 26717, 144495, 27105, 27147, 166623, 26995, 26819, + 144845, 26881, 26880, 15666, 14849, 144956, 15232, + 26540, 26977, 166474, 17148, 26934, 27032, 15265, + 132041, 33635, 20624, 27129, 144985, 139562, 27205, + 145155, 27293, 15347, 26545, 27336, 168348, 15373, + 27421, 133411, 24798, 27445, 27508, 141261, 28341, + 146139, 132021, 137560, 14144, 21537, 146266, 27617, + 147196, 27612, 27703, 140427, 149745, 158545, 27738, + 33318, 27769, 146876, 17605, 146877, 147876, 149772, + 149760, 146633, 14053, 15595, 134450, 39811, 143865, + 140433, 32655, 26679, 159013, 159137, 159211, 28054, + 27996, 28284, 28420, 149887, 147589, 159346, 34099, + 159604, 20935, 27804, 28189, 33838, 166689, 28207, + 146991, 29779, 147330, 31180, 28239, 23185, 143435, + 28664, 14093, 28573, 146992, 28410, 136343, 147517, + 17749, 37872, 28484, 28508, 15694, 28532, 168304, + 15675, 28575, 147780, 28627, 147601, 147797, 147513, + 147440, 147380, 147775, 20959, 147798, 147799, + 147776, 156125, 28747, 28798, 28839, 28801, 28876, + 28885, 28886, 28895, 16644, 15848, 29108, 29078, + 148087, 28971, 28997, 23176, 29002, 29038, 23708, + 148325, 29007, 37730, 148161, 28972, 148570, 150055, + 150050, 29114, 166888, 28861, 29198, 37954, 29205, + 22801, 37955, 29220, 37697, 153093, 29230, 29248, + 149876, 26813, 29269, 29271, 15957, 143428, 26637, + 28477, 29314, 29482, 29483, 149539, 165931, 18669, + 165892, 29480, 29486, 29647, 29610, 134202, 158254, + 29641, 29769, 147938, 136935, 150052, 26147, 14021, + 149943, 149901, 150011, 29687, 29717, 26883, 150054, + 29753, 132547, 16087, 29788, 141485, 29792, 167602, + 29767, 29668, 29814, 33721, 29804, 14128, 29812, + 37873, 27180, 29826, 18771, 150156, 147807, 150137, + 166799, 23366, 166915, 137374, 29896, 137608, 29966, + 29929, 29982, 167641, 137803, 23511, 167596, 37765, + 30029, 30026, 30055, 30062, 151426, 16132, 150803, + 30094, 29789, 30110, 30132, 30210, 30252, 30289, + 30287, 30319, 30326, 156661, 30352, 33263, 14328, + 157969, 157966, 30369, 30373, 30391, 30412, 159647, + 33890, 151709, 151933, 138780, 30494, 30502, 30528, + 25775, 152096, 30552, 144044, 30639, 166244, 166248, + 136897, 30708, 30729, 136054, 150034, 26826, 30895, + 30919, 30931, 38565, 31022, 153056, 30935, 31028, + 30897, 161292, 36792, 34948, 166699, 155779, 140828, + 31110, 35072, 26882, 31104, 153687, 31133, 162617, + 31036, 31145, 28202, 160038, 16040, 31174, 168205, + 31188 ], - 'euc-kr': [ - 44034, - 44035, - 44037, - 44038, - 44043, - 44044, - 44045, - 44046, - 44047, - 44056, - 44062, - 44063, - 44065, - 44066, - 44067, - 44069, - 44070, - 44071, - 44072, - 44073, - 44074, - 44075, - 44078, - 44082, - 44083, - 44084, - 44085, - 44086, - 44087, - 44090, - 44091, - 44093, - 44094, - 44095, - 44097, - 44098, - 44099, - 44100, - 44101, - 44102, - 44103, - 44104, - 44105, - 44106, - 44108, - 44110, - 44111, - 44112, - 44113, - 44114, - 44115, - 44117, - 44118, - 44119, - 44121, - 44122, - 44123, - 44125, - 44126, - 44127, - 44128, - 44129, - 44130, - 44131, - 44132, - 44133, - 44134, - 44135, - 44136, - 44137, - 44138, - 44139, - 44140, - 44141, - 44142, - 44143, - 44146, - 44147, - 44149, - 44150, - 44153, - 44155, - 44156, - 44157, - 44158, - 44159, - 44162, - 44167, - 44168, - 44173, - 44174, - 44175, - 44177, - 44178, - 44179, - 44181, - 44182, - 44183, - 44184, - 44185, - 44186, - 44187, - 44190, - 44194, - 44195, - 44196, - 44197, - 44198, - 44199, - 44203, - 44205, - 44206, - 44209, - 44210, - 44211, - 44212, - 44213, - 44214, - 44215, - 44218, - 44222, - 44223, - 44224, - 44226, - 44227, - 44229, - 44230, - 44231, - 44233, - 44234, - 44235, - 44237, - 44238, - 44239, - 44240, - 44241, - 44242, - 44243, - 44244, - 44246, - 44248, - 44249, - 44250, - 44251, - 44252, - 44253, - 44254, - 44255, - 44258, - 44259, - 44261, - 44262, - 44265, - 44267, - 44269, - 44270, - 44274, - 44276, - 44279, - 44280, - 44281, - 44282, - 44283, - 44286, - 44287, - 44289, - 44290, - 44291, - 44293, - 44295, - 44296, - 44297, - 44298, - 44299, - 44302, - 44304, - 44306, - 44307, - 44308, - 44309, - 44310, - 44311, - 44313, - 44314, - 44315, - 44317, - 44318, - 44319, - 44321, - 44322, - 44323, - 44324, - 44325, - 44326, - 44327, - 44328, - 44330, - 44331, - 44334, - 44335, - 44336, - 44337, - 44338, - 44339, - 44342, - 44343, - 44345, - 44346, - 44347, - 44349, - 44350, - 44351, - 44352, - 44353, - 44354, - 44355, - 44358, - 44360, - 44362, - 44363, - 44364, - 44365, - 44366, - 44367, - 44369, - 44370, - 44371, - 44373, - 44374, - 44375, - 44377, - 44378, - 44379, - 44380, - 44381, - 44382, - 44383, - 44384, - 44386, - 44388, - 44389, - 44390, - 44391, - 44392, - 44393, - 44394, - 44395, - 44398, - 44399, - 44401, - 44402, - 44407, - 44408, - 44409, - 44410, - 44414, - 44416, - 44419, - 44420, - 44421, - 44422, - 44423, - 44426, - 44427, - 44429, - 44430, - 44431, - 44433, - 44434, - 44435, - 44436, - 44437, - 44438, - 44439, - 44440, - 44441, - 44442, - 44443, - 44446, - 44447, - 44448, - 44449, - 44450, - 44451, - 44453, - 44454, - 44455, - 44456, - 44457, - 44458, - 44459, - 44460, - 44461, - 44462, - 44463, - 44464, - 44465, - 44466, - 44467, - 44468, - 44469, - 44470, - 44472, - 44473, - 44474, - 44475, - 44476, - 44477, - 44478, - 44479, - 44482, - 44483, - 44485, - 44486, - 44487, - 44489, - 44490, - 44491, - 44492, - 44493, - 44494, - 44495, - 44498, - 44500, - 44501, - 44502, - 44503, - 44504, - 44505, - 44506, - 44507, - 44509, - 44510, - 44511, - 44513, - 44514, - 44515, - 44517, - 44518, - 44519, - 44520, - 44521, - 44522, - 44523, - 44524, - 44525, - 44526, - 44527, - 44528, - 44529, - 44530, - 44531, - 44532, - 44533, - 44534, - 44535, - 44538, - 44539, - 44541, - 44542, - 44546, - 44547, - 44548, - 44549, - 44550, - 44551, - 44554, - 44556, - 44558, - 44559, - 44560, - 44561, - 44562, - 44563, - 44565, - 44566, - 44567, - 44568, - 44569, - 44570, - 44571, - 44572, - 44573, - 44574, - 44575, - 44576, - 44577, - 44578, - 44579, - 44580, - 44581, - 44582, - 44583, - 44584, - 44585, - 44586, - 44587, - 44588, - 44589, - 44590, - 44591, - 44594, - 44595, - 44597, - 44598, - 44601, - 44603, - 44604, - 44605, - 44606, - 44607, - 44610, - 44612, - 44615, - 44616, - 44617, - 44619, - 44623, - 44625, - 44626, - 44627, - 44629, - 44631, - 44632, - 44633, - 44634, - 44635, - 44638, - 44642, - 44643, - 44644, - 44646, - 44647, - 44650, - 44651, - 44653, - 44654, - 44655, - 44657, - 44658, - 44659, - 44660, - 44661, - 44662, - 44663, - 44666, - 44670, - 44671, - 44672, - 44673, - 44674, - 44675, - 44678, - 44679, - 44680, - 44681, - 44682, - 44683, - 44685, - 44686, - 44687, - 44688, - 44689, - 44690, - 44691, - 44692, - 44693, - 44694, - 44695, - 44696, - 44697, - 44698, - 44699, - 44700, - 44701, - 44702, - 44703, - 44704, - 44705, - 44706, - 44707, - 44708, - 44709, - 44710, - 44711, - 44712, - 44713, - 44714, - 44715, - 44716, - 44717, - 44718, - 44719, - 44720, - 44721, - 44722, - 44723, - 44724, - 44725, - 44726, - 44727, - 44728, - 44729, - 44730, - 44731, - 44735, - 44737, - 44738, - 44739, - 44741, - 44742, - 44743, - 44744, - 44745, - 44746, - 44747, - 44750, - 44754, - 44755, - 44756, - 44757, - 44758, - 44759, - 44762, - 44763, - 44765, - 44766, - 44767, - 44768, - 44769, - 44770, - 44771, - 44772, - 44773, - 44774, - 44775, - 44777, - 44778, - 44780, - 44782, - 44783, - 44784, - 44785, - 44786, - 44787, - 44789, - 44790, - 44791, - 44793, - 44794, - 44795, - 44797, - 44798, - 44799, - 44800, - 44801, - 44802, - 44803, - 44804, - 44805, - 44806, - 44809, - 44810, - 44811, - 44812, - 44814, - 44815, - 44817, - 44818, - 44819, - 44820, - 44821, - 44822, - 44823, - 44824, - 44825, - 44826, - 44827, - 44828, - 44829, - 44830, - 44831, - 44832, - 44833, - 44834, - 44835, - 44836, - 44837, - 44838, - 44839, - 44840, - 44841, - 44842, - 44843, - 44846, - 44847, - 44849, - 44851, - 44853, - 44854, - 44855, - 44856, - 44857, - 44858, - 44859, - 44862, - 44864, - 44868, - 44869, - 44870, - 44871, - 44874, - 44875, - 44876, - 44877, - 44878, - 44879, - 44881, - 44882, - 44883, - 44884, - 44885, - 44886, - 44887, - 44888, - 44889, - 44890, - 44891, - 44894, - 44895, - 44896, - 44897, - 44898, - 44899, - 44902, - 44903, - 44904, - 44905, - 44906, - 44907, - 44908, - 44909, - 44910, - 44911, - 44912, - 44913, - 44914, - 44915, - 44916, - 44917, - 44918, - 44919, - 44920, - 44922, - 44923, - 44924, - 44925, - 44926, - 44927, - 44929, - 44930, - 44931, - 44933, - 44934, - 44935, - 44937, - 44938, - 44939, - 44940, - 44941, - 44942, - 44943, - 44946, - 44947, - 44948, - 44950, - 44951, - 44952, - 44953, - 44954, - 44955, - 44957, - 44958, - 44959, - 44960, - 44961, - 44962, - 44963, - 44964, - 44965, - 44966, - 44967, - 44968, - 44969, - 44970, - 44971, - 44972, - 44973, - 44974, - 44975, - 44976, - 44977, - 44978, - 44979, - 44980, - 44981, - 44982, - 44983, - 44986, - 44987, - 44989, - 44990, - 44991, - 44993, - 44994, - 44995, - 44996, - 44997, - 44998, - 45002, - 45004, - 45007, - 45008, - 45009, - 45010, - 45011, - 45013, - 45014, - 45015, - 45016, - 45017, - 45018, - 45019, - 45021, - 45022, - 45023, - 45024, - 45025, - 45026, - 45027, - 45028, - 45029, - 45030, - 45031, - 45034, - 45035, - 45036, - 45037, - 45038, - 45039, - 45042, - 45043, - 45045, - 45046, - 45047, - 45049, - 45050, - 45051, - 45052, - 45053, - 45054, - 45055, - 45058, - 45059, - 45061, - 45062, - 45063, - 45064, - 45065, - 45066, - 45067, - 45069, - 45070, - 45071, - 45073, - 45074, - 45075, - 45077, - 45078, - 45079, - 45080, - 45081, - 45082, - 45083, - 45086, - 45087, - 45088, - 45089, - 45090, - 45091, - 45092, - 45093, - 45094, - 45095, - 45097, - 45098, - 45099, - 45100, - 45101, - 45102, - 45103, - 45104, - 45105, - 45106, - 45107, - 45108, - 45109, - 45110, - 45111, - 45112, - 45113, - 45114, - 45115, - 45116, - 45117, - 45118, - 45119, - 45120, - 45121, - 45122, - 45123, - 45126, - 45127, - 45129, - 45131, - 45133, - 45135, - 45136, - 45137, - 45138, - 45142, - 45144, - 45146, - 45147, - 45148, - 45150, - 45151, - 45152, - 45153, - 45154, - 45155, - 45156, - 45157, - 45158, - 45159, - 45160, - 45161, - 45162, - 45163, - 45164, - 45165, - 45166, - 45167, - 45168, - 45169, - 45170, - 45171, - 45172, - 45173, - 45174, - 45175, - 45176, - 45177, - 45178, - 45179, - 45182, - 45183, - 45185, - 45186, - 45187, - 45189, - 45190, - 45191, - 45192, - 45193, - 45194, - 45195, - 45198, - 45200, - 45202, - 45203, - 45204, - 45205, - 45206, - 45207, - 45211, - 45213, - 45214, - 45219, - 45220, - 45221, - 45222, - 45223, - 45226, - 45232, - 45234, - 45238, - 45239, - 45241, - 45242, - 45243, - 45245, - 45246, - 45247, - 45248, - 45249, - 45250, - 45251, - 45254, - 45258, - 45259, - 45260, - 45261, - 45262, - 45263, - 45266, - 45267, - 45269, - 45270, - 45271, - 45273, - 45274, - 45275, - 45276, - 45277, - 45278, - 45279, - 45281, - 45282, - 45283, - 45284, - 45286, - 45287, - 45288, - 45289, - 45290, - 45291, - 45292, - 45293, - 45294, - 45295, - 45296, - 45297, - 45298, - 45299, - 45300, - 45301, - 45302, - 45303, - 45304, - 45305, - 45306, - 45307, - 45308, - 45309, - 45310, - 45311, - 45312, - 45313, - 45314, - 45315, - 45316, - 45317, - 45318, - 45319, - 45322, - 45325, - 45326, - 45327, - 45329, - 45332, - 45333, - 45334, - 45335, - 45338, - 45342, - 45343, - 45344, - 45345, - 45346, - 45350, - 45351, - 45353, - 45354, - 45355, - 45357, - 45358, - 45359, - 45360, - 45361, - 45362, - 45363, - 45366, - 45370, - 45371, - 45372, - 45373, - 45374, - 45375, - 45378, - 45379, - 45381, - 45382, - 45383, - 45385, - 45386, - 45387, - 45388, - 45389, - 45390, - 45391, - 45394, - 45395, - 45398, - 45399, - 45401, - 45402, - 45403, - 45405, - 45406, - 45407, - 45409, - 45410, - 45411, - 45412, - 45413, - 45414, - 45415, - 45416, - 45417, - 45418, - 45419, - 45420, - 45421, - 45422, - 45423, - 45424, - 45425, - 45426, - 45427, - 45428, - 45429, - 45430, - 45431, - 45434, - 45435, - 45437, - 45438, - 45439, - 45441, - 45443, - 45444, - 45445, - 45446, - 45447, - 45450, - 45452, - 45454, - 45455, - 45456, - 45457, - 45461, - 45462, - 45463, - 45465, - 45466, - 45467, - 45469, - 45470, - 45471, - 45472, - 45473, - 45474, - 45475, - 45476, - 45477, - 45478, - 45479, - 45481, - 45482, - 45483, - 45484, - 45485, - 45486, - 45487, - 45488, - 45489, - 45490, - 45491, - 45492, - 45493, - 45494, - 45495, - 45496, - 45497, - 45498, - 45499, - 45500, - 45501, - 45502, - 45503, - 45504, - 45505, - 45506, - 45507, - 45508, - 45509, - 45510, - 45511, - 45512, - 45513, - 45514, - 45515, - 45517, - 45518, - 45519, - 45521, - 45522, - 45523, - 45525, - 45526, - 45527, - 45528, - 45529, - 45530, - 45531, - 45534, - 45536, - 45537, - 45538, - 45539, - 45540, - 45541, - 45542, - 45543, - 45546, - 45547, - 45549, - 45550, - 45551, - 45553, - 45554, - 45555, - 45556, - 45557, - 45558, - 45559, - 45560, - 45562, - 45564, - 45566, - 45567, - 45568, - 45569, - 45570, - 45571, - 45574, - 45575, - 45577, - 45578, - 45581, - 45582, - 45583, - 45584, - 45585, - 45586, - 45587, - 45590, - 45592, - 45594, - 45595, - 45596, - 45597, - 45598, - 45599, - 45601, - 45602, - 45603, - 45604, - 45605, - 45606, - 45607, - 45608, - 45609, - 45610, - 45611, - 45612, - 45613, - 45614, - 45615, - 45616, - 45617, - 45618, - 45619, - 45621, - 45622, - 45623, - 45624, - 45625, - 45626, - 45627, - 45629, - 45630, - 45631, - 45632, - 45633, - 45634, - 45635, - 45636, - 45637, - 45638, - 45639, - 45640, - 45641, - 45642, - 45643, - 45644, - 45645, - 45646, - 45647, - 45648, - 45649, - 45650, - 45651, - 45652, - 45653, - 45654, - 45655, - 45657, - 45658, - 45659, - 45661, - 45662, - 45663, - 45665, - 45666, - 45667, - 45668, - 45669, - 45670, - 45671, - 45674, - 45675, - 45676, - 45677, - 45678, - 45679, - 45680, - 45681, - 45682, - 45683, - 45686, - 45687, - 45688, - 45689, - 45690, - 45691, - 45693, - 45694, - 45695, - 45696, - 45697, - 45698, - 45699, - 45702, - 45703, - 45704, - 45706, - 45707, - 45708, - 45709, - 45710, - 45711, - 45714, - 45715, - 45717, - 45718, - 45719, - 45723, - 45724, - 45725, - 45726, - 45727, - 45730, - 45732, - 45735, - 45736, - 45737, - 45739, - 45741, - 45742, - 45743, - 45745, - 45746, - 45747, - 45749, - 45750, - 45751, - 45752, - 45753, - 45754, - 45755, - 45756, - 45757, - 45758, - 45759, - 45760, - 45761, - 45762, - 45763, - 45764, - 45765, - 45766, - 45767, - 45770, - 45771, - 45773, - 45774, - 45775, - 45777, - 45779, - 45780, - 45781, - 45782, - 45783, - 45786, - 45788, - 45790, - 45791, - 45792, - 45793, - 45795, - 45799, - 45801, - 45802, - 45808, - 45809, - 45810, - 45814, - 45820, - 45821, - 45822, - 45826, - 45827, - 45829, - 45830, - 45831, - 45833, - 45834, - 45835, - 45836, - 45837, - 45838, - 45839, - 45842, - 45846, - 45847, - 45848, - 45849, - 45850, - 45851, - 45853, - 45854, - 45855, - 45856, - 45857, - 45858, - 45859, - 45860, - 45861, - 45862, - 45863, - 45864, - 45865, - 45866, - 45867, - 45868, - 45869, - 45870, - 45871, - 45872, - 45873, - 45874, - 45875, - 45876, - 45877, - 45878, - 45879, - 45880, - 45881, - 45882, - 45883, - 45884, - 45885, - 45886, - 45887, - 45888, - 45889, - 45890, - 45891, - 45892, - 45893, - 45894, - 45895, - 45896, - 45897, - 45898, - 45899, - 45900, - 45901, - 45902, - 45903, - 45904, - 45905, - 45906, - 45907, - 45911, - 45913, - 45914, - 45917, - 45920, - 45921, - 45922, - 45923, - 45926, - 45928, - 45930, - 45932, - 45933, - 45935, - 45938, - 45939, - 45941, - 45942, - 45943, - 45945, - 45946, - 45947, - 45948, - 45949, - 45950, - 45951, - 45954, - 45958, - 45959, - 45960, - 45961, - 45962, - 45963, - 45965, - 45966, - 45967, - 45969, - 45970, - 45971, - 45973, - 45974, - 45975, - 45976, - 45977, - 45978, - 45979, - 45980, - 45981, - 45982, - 45983, - 45986, - 45987, - 45988, - 45989, - 45990, - 45991, - 45993, - 45994, - 45995, - 45997, - 45998, - 45999, - 46000, - 46001, - 46002, - 46003, - 46004, - 46005, - 46006, - 46007, - 46008, - 46009, - 46010, - 46011, - 46012, - 46013, - 46014, - 46015, - 46016, - 46017, - 46018, - 46019, - 46022, - 46023, - 46025, - 46026, - 46029, - 46031, - 46033, - 46034, - 46035, - 46038, - 46040, - 46042, - 46044, - 46046, - 46047, - 46049, - 46050, - 46051, - 46053, - 46054, - 46055, - 46057, - 46058, - 46059, - 46060, - 46061, - 46062, - 46063, - 46064, - 46065, - 46066, - 46067, - 46068, - 46069, - 46070, - 46071, - 46072, - 46073, - 46074, - 46075, - 46077, - 46078, - 46079, - 46080, - 46081, - 46082, - 46083, - 46084, - 46085, - 46086, - 46087, - 46088, - 46089, - 46090, - 46091, - 46092, - 46093, - 46094, - 46095, - 46097, - 46098, - 46099, - 46100, - 46101, - 46102, - 46103, - 46105, - 46106, - 46107, - 46109, - 46110, - 46111, - 46113, - 46114, - 46115, - 46116, - 46117, - 46118, - 46119, - 46122, - 46124, - 46125, - 46126, - 46127, - 46128, - 46129, - 46130, - 46131, - 46133, - 46134, - 46135, - 46136, - 46137, - 46138, - 46139, - 46140, - 46141, - 46142, - 46143, - 46144, - 46145, - 46146, - 46147, - 46148, - 46149, - 46150, - 46151, - 46152, - 46153, - 46154, - 46155, - 46156, - 46157, - 46158, - 46159, - 46162, - 46163, - 46165, - 46166, - 46167, - 46169, - 46170, - 46171, - 46172, - 46173, - 46174, - 46175, - 46178, - 46180, - 46182, - 46183, - 46184, - 46185, - 46186, - 46187, - 46189, - 46190, - 46191, - 46192, - 46193, - 46194, - 46195, - 46196, - 46197, - 46198, - 46199, - 46200, - 46201, - 46202, - 46203, - 46204, - 46205, - 46206, - 46207, - 46209, - 46210, - 46211, - 46212, - 46213, - 46214, - 46215, - 46217, - 46218, - 46219, - 46220, - 46221, - 46222, - 46223, - 46224, - 46225, - 46226, - 46227, - 46228, - 46229, - 46230, - 46231, - 46232, - 46233, - 46234, - 46235, - 46236, - 46238, - 46239, - 46240, - 46241, - 46242, - 46243, - 46245, - 46246, - 46247, - 46249, - 46250, - 46251, - 46253, - 46254, - 46255, - 46256, - 46257, - 46258, - 46259, - 46260, - 46262, - 46264, - 46266, - 46267, - 46268, - 46269, - 46270, - 46271, - 46273, - 46274, - 46275, - 46277, - 46278, - 46279, - 46281, - 46282, - 46283, - 46284, - 46285, - 46286, - 46287, - 46289, - 46290, - 46291, - 46292, - 46294, - 46295, - 46296, - 46297, - 46298, - 46299, - 46302, - 46303, - 46305, - 46306, - 46309, - 46311, - 46312, - 46313, - 46314, - 46315, - 46318, - 46320, - 46322, - 46323, - 46324, - 46325, - 46326, - 46327, - 46329, - 46330, - 46331, - 46332, - 46333, - 46334, - 46335, - 46336, - 46337, - 46338, - 46339, - 46340, - 46341, - 46342, - 46343, - 46344, - 46345, - 46346, - 46347, - 46348, - 46349, - 46350, - 46351, - 46352, - 46353, - 46354, - 46355, - 46358, - 46359, - 46361, - 46362, - 46365, - 46366, - 46367, - 46368, - 46369, - 46370, - 46371, - 46374, - 46379, - 46380, - 46381, - 46382, - 46383, - 46386, - 46387, - 46389, - 46390, - 46391, - 46393, - 46394, - 46395, - 46396, - 46397, - 46398, - 46399, - 46402, - 46406, - 46407, - 46408, - 46409, - 46410, - 46414, - 46415, - 46417, - 46418, - 46419, - 46421, - 46422, - 46423, - 46424, - 46425, - 46426, - 46427, - 46430, - 46434, - 46435, - 46436, - 46437, - 46438, - 46439, - 46440, - 46441, - 46442, - 46443, - 46444, - 46445, - 46446, - 46447, - 46448, - 46449, - 46450, - 46451, - 46452, - 46453, - 46454, - 46455, - 46456, - 46457, - 46458, - 46459, - 46460, - 46461, - 46462, - 46463, - 46464, - 46465, - 46466, - 46467, - 46468, - 46469, - 46470, - 46471, - 46472, - 46473, - 46474, - 46475, - 46476, - 46477, - 46478, - 46479, - 46480, - 46481, - 46482, - 46483, - 46484, - 46485, - 46486, - 46487, - 46488, - 46489, - 46490, - 46491, - 46492, - 46493, - 46494, - 46495, - 46498, - 46499, - 46501, - 46502, - 46503, - 46505, - 46508, - 46509, - 46510, - 46511, - 46514, - 46518, - 46519, - 46520, - 46521, - 46522, - 46526, - 46527, - 46529, - 46530, - 46531, - 46533, - 46534, - 46535, - 46536, - 46537, - 46538, - 46539, - 46542, - 46546, - 46547, - 46548, - 46549, - 46550, - 46551, - 46553, - 46554, - 46555, - 46556, - 46557, - 46558, - 46559, - 46560, - 46561, - 46562, - 46563, - 46564, - 46565, - 46566, - 46567, - 46568, - 46569, - 46570, - 46571, - 46573, - 46574, - 46575, - 46576, - 46577, - 46578, - 46579, - 46580, - 46581, - 46582, - 46583, - 46584, - 46585, - 46586, - 46587, - 46588, - 46589, - 46590, - 46591, - 46592, - 46593, - 46594, - 46595, - 46596, - 46597, - 46598, - 46599, - 46600, - 46601, - 46602, - 46603, - 46604, - 46605, - 46606, - 46607, - 46610, - 46611, - 46613, - 46614, - 46615, - 46617, - 46618, - 46619, - 46620, - 46621, - 46622, - 46623, - 46624, - 46625, - 46626, - 46627, - 46628, - 46630, - 46631, - 46632, - 46633, - 46634, - 46635, - 46637, - 46638, - 46639, - 46640, - 46641, - 46642, - 46643, - 46645, - 46646, - 46647, - 46648, - 46649, - 46650, - 46651, - 46652, - 46653, - 46654, - 46655, - 46656, - 46657, - 46658, - 46659, - 46660, - 46661, - 46662, - 46663, - 46665, - 46666, - 46667, - 46668, - 46669, - 46670, - 46671, - 46672, - 46673, - 46674, - 46675, - 46676, - 46677, - 46678, - 46679, - 46680, - 46681, - 46682, - 46683, - 46684, - 46685, - 46686, - 46687, - 46688, - 46689, - 46690, - 46691, - 46693, - 46694, - 46695, - 46697, - 46698, - 46699, - 46700, - 46701, - 46702, - 46703, - 46704, - 46705, - 46706, - 46707, - 46708, - 46709, - 46710, - 46711, - 46712, - 46713, - 46714, - 46715, - 46716, - 46717, - 46718, - 46719, - 46720, - 46721, - 46722, - 46723, - 46724, - 46725, - 46726, - 46727, - 46728, - 46729, - 46730, - 46731, - 46732, - 46733, - 46734, - 46735, - 46736, - 46737, - 46738, - 46739, - 46740, - 46741, - 46742, - 46743, - 46744, - 46745, - 46746, - 46747, - 46750, - 46751, - 46753, - 46754, - 46755, - 46757, - 46758, - 46759, - 46760, - 46761, - 46762, - 46765, - 46766, - 46767, - 46768, - 46770, - 46771, - 46772, - 46773, - 46774, - 46775, - 46776, - 46777, - 46778, - 46779, - 46780, - 46781, - 46782, - 46783, - 46784, - 46785, - 46786, - 46787, - 46788, - 46789, - 46790, - 46791, - 46792, - 46793, - 46794, - 46795, - 46796, - 46797, - 46798, - 46799, - 46800, - 46801, - 46802, - 46803, - 46805, - 46806, - 46807, - 46808, - 46809, - 46810, - 46811, - 46812, - 46813, - 46814, - 46815, - 46816, - 46817, - 46818, - 46819, - 46820, - 46821, - 46822, - 46823, - 46824, - 46825, - 46826, - 46827, - 46828, - 46829, - 46830, - 46831, - 46833, - 46834, - 46835, - 46837, - 46838, - 46839, - 46841, - 46842, - 46843, - 46844, - 46845, - 46846, - 46847, - 46850, - 46851, - 46852, - 46854, - 46855, - 46856, - 46857, - 46858, - 46859, - 46860, - 46861, - 46862, - 46863, - 46864, - 46865, - 46866, - 46867, - 46868, - 46869, - 46870, - 46871, - 46872, - 46873, - 46874, - 46875, - 46876, - 46877, - 46878, - 46879, - 46880, - 46881, - 46882, - 46883, - 46884, - 46885, - 46886, - 46887, - 46890, - 46891, - 46893, - 46894, - 46897, - 46898, - 46899, - 46900, - 46901, - 46902, - 46903, - 46906, - 46908, - 46909, - 46910, - 46911, - 46912, - 46913, - 46914, - 46915, - 46917, - 46918, - 46919, - 46921, - 46922, - 46923, - 46925, - 46926, - 46927, - 46928, - 46929, - 46930, - 46931, - 46934, - 46935, - 46936, - 46937, - 46938, - 46939, - 46940, - 46941, - 46942, - 46943, - 46945, - 46946, - 46947, - 46949, - 46950, - 46951, - 46953, - 46954, - 46955, - 46956, - 46957, - 46958, - 46959, - 46962, - 46964, - 46966, - 46967, - 46968, - 46969, - 46970, - 46971, - 46974, - 46975, - 46977, - 46978, - 46979, - 46981, - 46982, - 46983, - 46984, - 46985, - 46986, - 46987, - 46990, - 46995, - 46996, - 46997, - 47002, - 47003, - 47005, - 47006, - 47007, - 47009, - 47010, - 47011, - 47012, - 47013, - 47014, - 47015, - 47018, - 47022, - 47023, - 47024, - 47025, - 47026, - 47027, - 47030, - 47031, - 47033, - 47034, - 47035, - 47036, - 47037, - 47038, - 47039, - 47040, - 47041, - 47042, - 47043, - 47044, - 47045, - 47046, - 47048, - 47050, - 47051, - 47052, - 47053, - 47054, - 47055, - 47056, - 47057, - 47058, - 47059, - 47060, - 47061, - 47062, - 47063, - 47064, - 47065, - 47066, - 47067, - 47068, - 47069, - 47070, - 47071, - 47072, - 47073, - 47074, - 47075, - 47076, - 47077, - 47078, - 47079, - 47080, - 47081, - 47082, - 47083, - 47086, - 47087, - 47089, - 47090, - 47091, - 47093, - 47094, - 47095, - 47096, - 47097, - 47098, - 47099, - 47102, - 47106, - 47107, - 47108, - 47109, - 47110, - 47114, - 47115, - 47117, - 47118, - 47119, - 47121, - 47122, - 47123, - 47124, - 47125, - 47126, - 47127, - 47130, - 47132, - 47134, - 47135, - 47136, - 47137, - 47138, - 47139, - 47142, - 47143, - 47145, - 47146, - 47147, - 47149, - 47150, - 47151, - 47152, - 47153, - 47154, - 47155, - 47158, - 47162, - 47163, - 47164, - 47165, - 47166, - 47167, - 47169, - 47170, - 47171, - 47173, - 47174, - 47175, - 47176, - 47177, - 47178, - 47179, - 47180, - 47181, - 47182, - 47183, - 47184, - 47186, - 47188, - 47189, - 47190, - 47191, - 47192, - 47193, - 47194, - 47195, - 47198, - 47199, - 47201, - 47202, - 47203, - 47205, - 47206, - 47207, - 47208, - 47209, - 47210, - 47211, - 47214, - 47216, - 47218, - 47219, - 47220, - 47221, - 47222, - 47223, - 47225, - 47226, - 47227, - 47229, - 47230, - 47231, - 47232, - 47233, - 47234, - 47235, - 47236, - 47237, - 47238, - 47239, - 47240, - 47241, - 47242, - 47243, - 47244, - 47246, - 47247, - 47248, - 47249, - 47250, - 47251, - 47252, - 47253, - 47254, - 47255, - 47256, - 47257, - 47258, - 47259, - 47260, - 47261, - 47262, - 47263, - 47264, - 47265, - 47266, - 47267, - 47268, - 47269, - 47270, - 47271, - 47273, - 47274, - 47275, - 47276, - 47277, - 47278, - 47279, - 47281, - 47282, - 47283, - 47285, - 47286, - 47287, - 47289, - 47290, - 47291, - 47292, - 47293, - 47294, - 47295, - 47298, - 47300, - 47302, - 47303, - 47304, - 47305, - 47306, - 47307, - 47309, - 47310, - 47311, - 47313, - 47314, - 47315, - 47317, - 47318, - 47319, - 47320, - 47321, - 47322, - 47323, - 47324, - 47326, - 47328, - 47330, - 47331, - 47332, - 47333, - 47334, - 47335, - 47338, - 47339, - 47341, - 47342, - 47343, - 47345, - 47346, - 47347, - 47348, - 47349, - 47350, - 47351, - 47354, - 47356, - 47358, - 47359, - 47360, - 47361, - 47362, - 47363, - 47365, - 47366, - 47367, - 47368, - 47369, - 47370, - 47371, - 47372, - 47373, - 47374, - 47375, - 47376, - 47377, - 47378, - 47379, - 47380, - 47381, - 47382, - 47383, - 47385, - 47386, - 47387, - 47388, - 47389, - 47390, - 47391, - 47393, - 47394, - 47395, - 47396, - 47397, - 47398, - 47399, - 47400, - 47401, - 47402, - 47403, - 47404, - 47405, - 47406, - 47407, - 47408, - 47409, - 47410, - 47411, - 47412, - 47413, - 47414, - 47415, - 47416, - 47417, - 47418, - 47419, - 47422, - 47423, - 47425, - 47426, - 47427, - 47429, - 47430, - 47431, - 47432, - 47433, - 47434, - 47435, - 47437, - 47438, - 47440, - 47442, - 47443, - 47444, - 47445, - 47446, - 47447, - 47450, - 47451, - 47453, - 47454, - 47455, - 47457, - 47458, - 47459, - 47460, - 47461, - 47462, - 47463, - 47466, - 47468, - 47470, - 47471, - 47472, - 47473, - 47474, - 47475, - 47478, - 47479, - 47481, - 47482, - 47483, - 47485, - 47486, - 47487, - 47488, - 47489, - 47490, - 47491, - 47494, - 47496, - 47499, - 47500, - 47503, - 47504, - 47505, - 47506, - 47507, - 47508, - 47509, - 47510, - 47511, - 47512, - 47513, - 47514, - 47515, - 47516, - 47517, - 47518, - 47519, - 47520, - 47521, - 47522, - 47523, - 47524, - 47525, - 47526, - 47527, - 47528, - 47529, - 47530, - 47531, - 47534, - 47535, - 47537, - 47538, - 47539, - 47541, - 47542, - 47543, - 47544, - 47545, - 47546, - 47547, - 47550, - 47552, - 47554, - 47555, - 47556, - 47557, - 47558, - 47559, - 47562, - 47563, - 47565, - 47571, - 47572, - 47573, - 47574, - 47575, - 47578, - 47580, - 47583, - 47584, - 47586, - 47590, - 47591, - 47593, - 47594, - 47595, - 47597, - 47598, - 47599, - 47600, - 47601, - 47602, - 47603, - 47606, - 47611, - 47612, - 47613, - 47614, - 47615, - 47618, - 47619, - 47620, - 47621, - 47622, - 47623, - 47625, - 47626, - 47627, - 47628, - 47629, - 47630, - 47631, - 47632, - 47633, - 47634, - 47635, - 47636, - 47638, - 47639, - 47640, - 47641, - 47642, - 47643, - 47644, - 47645, - 47646, - 47647, - 47648, - 47649, - 47650, - 47651, - 47652, - 47653, - 47654, - 47655, - 47656, - 47657, - 47658, - 47659, - 47660, - 47661, - 47662, - 47663, - 47664, - 47665, - 47666, - 47667, - 47668, - 47669, - 47670, - 47671, - 47674, - 47675, - 47677, - 47678, - 47679, - 47681, - 47683, - 47684, - 47685, - 47686, - 47687, - 47690, - 47692, - 47695, - 47696, - 47697, - 47698, - 47702, - 47703, - 47705, - 47706, - 47707, - 47709, - 47710, - 47711, - 47712, - 47713, - 47714, - 47715, - 47718, - 47722, - 47723, - 47724, - 47725, - 47726, - 47727, - 47730, - 47731, - 47733, - 47734, - 47735, - 47737, - 47738, - 47739, - 47740, - 47741, - 47742, - 47743, - 47744, - 47745, - 47746, - 47750, - 47752, - 47753, - 47754, - 47755, - 47757, - 47758, - 47759, - 47760, - 47761, - 47762, - 47763, - 47764, - 47765, - 47766, - 47767, - 47768, - 47769, - 47770, - 47771, - 47772, - 47773, - 47774, - 47775, - 47776, - 47777, - 47778, - 47779, - 47780, - 47781, - 47782, - 47783, - 47786, - 47789, - 47790, - 47791, - 47793, - 47795, - 47796, - 47797, - 47798, - 47799, - 47802, - 47804, - 47806, - 47807, - 47808, - 47809, - 47810, - 47811, - 47813, - 47814, - 47815, - 47817, - 47818, - 47819, - 47820, - 47821, - 47822, - 47823, - 47824, - 47825, - 47826, - 47827, - 47828, - 47829, - 47830, - 47831, - 47834, - 47835, - 47836, - 47837, - 47838, - 47839, - 47840, - 47841, - 47842, - 47843, - 47844, - 47845, - 47846, - 47847, - 47848, - 47849, - 47850, - 47851, - 47852, - 47853, - 47854, - 47855, - 47856, - 47857, - 47858, - 47859, - 47860, - 47861, - 47862, - 47863, - 47864, - 47865, - 47866, - 47867, - 47869, - 47870, - 47871, - 47873, - 47874, - 47875, - 47877, - 47878, - 47879, - 47880, - 47881, - 47882, - 47883, - 47884, - 47886, - 47888, - 47890, - 47891, - 47892, - 47893, - 47894, - 47895, - 47897, - 47898, - 47899, - 47901, - 47902, - 47903, - 47905, - 47906, - 47907, - 47908, - 47909, - 47910, - 47911, - 47912, - 47914, - 47916, - 47917, - 47918, - 47919, - 47920, - 47921, - 47922, - 47923, - 47927, - 47929, - 47930, - 47935, - 47936, - 47937, - 47938, - 47939, - 47942, - 47944, - 47946, - 47947, - 47948, - 47950, - 47953, - 47954, - 47955, - 47957, - 47958, - 47959, - 47961, - 47962, - 47963, - 47964, - 47965, - 47966, - 47967, - 47968, - 47970, - 47972, - 47973, - 47974, - 47975, - 47976, - 47977, - 47978, - 47979, - 47981, - 47982, - 47983, - 47984, - 47985, - 47986, - 47987, - 47988, - 47989, - 47990, - 47991, - 47992, - 47993, - 47994, - 47995, - 47996, - 47997, - 47998, - 47999, - 48000, - 48001, - 48002, - 48003, - 48004, - 48005, - 48006, - 48007, - 48009, - 48010, - 48011, - 48013, - 48014, - 48015, - 48017, - 48018, - 48019, - 48020, - 48021, - 48022, - 48023, - 48024, - 48025, - 48026, - 48027, - 48028, - 48029, - 48030, - 48031, - 48032, - 48033, - 48034, - 48035, - 48037, - 48038, - 48039, - 48041, - 48042, - 48043, - 48045, - 48046, - 48047, - 48048, - 48049, - 48050, - 48051, - 48053, - 48054, - 48056, - 48057, - 48058, - 48059, - 48060, - 48061, - 48062, - 48063, - 48065, - 48066, - 48067, - 48069, - 48070, - 48071, - 48073, - 48074, - 48075, - 48076, - 48077, - 48078, - 48079, - 48081, - 48082, - 48084, - 48085, - 48086, - 48087, - 48088, - 48089, - 48090, - 48091, - 48092, - 48093, - 48094, - 48095, - 48096, - 48097, - 48098, - 48099, - 48100, - 48101, - 48102, - 48103, - 48104, - 48105, - 48106, - 48107, - 48108, - 48109, - 48110, - 48111, - 48112, - 48113, - 48114, - 48115, - 48116, - 48117, - 48118, - 48119, - 48122, - 48123, - 48125, - 48126, - 48129, - 48131, - 48132, - 48133, - 48134, - 48135, - 48138, - 48142, - 48144, - 48146, - 48147, - 48153, - 48154, - 48160, - 48161, - 48162, - 48163, - 48166, - 48168, - 48170, - 48171, - 48172, - 48174, - 48175, - 48178, - 48179, - 48181, - 48182, - 48183, - 48185, - 48186, - 48187, - 48188, - 48189, - 48190, - 48191, - 48194, - 48198, - 48199, - 48200, - 48202, - 48203, - 48206, - 48207, - 48209, - 48210, - 48211, - 48212, - 48213, - 48214, - 48215, - 48216, - 48217, - 48218, - 48219, - 48220, - 48222, - 48223, - 48224, - 48225, - 48226, - 48227, - 48228, - 48229, - 48230, - 48231, - 48232, - 48233, - 48234, - 48235, - 48236, - 48237, - 48238, - 48239, - 48240, - 48241, - 48242, - 48243, - 48244, - 48245, - 48246, - 48247, - 48248, - 48249, - 48250, - 48251, - 48252, - 48253, - 48254, - 48255, - 48256, - 48257, - 48258, - 48259, - 48262, - 48263, - 48265, - 48266, - 48269, - 48271, - 48272, - 48273, - 48274, - 48275, - 48278, - 48280, - 48283, - 48284, - 48285, - 48286, - 48287, - 48290, - 48291, - 48293, - 48294, - 48297, - 48298, - 48299, - 48300, - 48301, - 48302, - 48303, - 48306, - 48310, - 48311, - 48312, - 48313, - 48314, - 48315, - 48318, - 48319, - 48321, - 48322, - 48323, - 48325, - 48326, - 48327, - 48328, - 48329, - 48330, - 48331, - 48332, - 48334, - 48338, - 48339, - 48340, - 48342, - 48343, - 48345, - 48346, - 48347, - 48349, - 48350, - 48351, - 48352, - 48353, - 48354, - 48355, - 48356, - 48357, - 48358, - 48359, - 48360, - 48361, - 48362, - 48363, - 48364, - 48365, - 48366, - 48367, - 48368, - 48369, - 48370, - 48371, - 48375, - 48377, - 48378, - 48379, - 48381, - 48382, - 48383, - 48384, - 48385, - 48386, - 48387, - 48390, - 48392, - 48394, - 48395, - 48396, - 48397, - 48398, - 48399, - 48401, - 48402, - 48403, - 48405, - 48406, - 48407, - 48408, - 48409, - 48410, - 48411, - 48412, - 48413, - 48414, - 48415, - 48416, - 48417, - 48418, - 48419, - 48421, - 48422, - 48423, - 48424, - 48425, - 48426, - 48427, - 48429, - 48430, - 48431, - 48432, - 48433, - 48434, - 48435, - 48436, - 48437, - 48438, - 48439, - 48440, - 48441, - 48442, - 48443, - 48444, - 48445, - 48446, - 48447, - 48449, - 48450, - 48451, - 48452, - 48453, - 48454, - 48455, - 48458, - 48459, - 48461, - 48462, - 48463, - 48465, - 48466, - 48467, - 48468, - 48469, - 48470, - 48471, - 48474, - 48475, - 48476, - 48477, - 48478, - 48479, - 48480, - 48481, - 48482, - 48483, - 48485, - 48486, - 48487, - 48489, - 48490, - 48491, - 48492, - 48493, - 48494, - 48495, - 48496, - 48497, - 48498, - 48499, - 48500, - 48501, - 48502, - 48503, - 48504, - 48505, - 48506, - 48507, - 48508, - 48509, - 48510, - 48511, - 48514, - 48515, - 48517, - 48518, - 48523, - 48524, - 48525, - 48526, - 48527, - 48530, - 48532, - 48534, - 48535, - 48536, - 48539, - 48541, - 48542, - 48543, - 48544, - 48545, - 48546, - 48547, - 48549, - 48550, - 48551, - 48552, - 48553, - 48554, - 48555, - 48556, - 48557, - 48558, - 48559, - 48561, - 48562, - 48563, - 48564, - 48565, - 48566, - 48567, - 48569, - 48570, - 48571, - 48572, - 48573, - 48574, - 48575, - 48576, - 48577, - 48578, - 48579, - 48580, - 48581, - 48582, - 48583, - 48584, - 48585, - 48586, - 48587, - 48588, - 48589, - 48590, - 48591, - 48592, - 48593, - 48594, - 48595, - 48598, - 48599, - 48601, - 48602, - 48603, - 48605, - 48606, - 48607, - 48608, - 48609, - 48610, - 48611, - 48612, - 48613, - 48614, - 48615, - 48616, - 48618, - 48619, - 48620, - 48621, - 48622, - 48623, - 48625, - 48626, - 48627, - 48629, - 48630, - 48631, - 48633, - 48634, - 48635, - 48636, - 48637, - 48638, - 48639, - 48641, - 48642, - 48644, - 48646, - 48647, - 48648, - 48649, - 48650, - 48651, - 48654, - 48655, - 48657, - 48658, - 48659, - 48661, - 48662, - 48663, - 48664, - 48665, - 48666, - 48667, - 48670, - 48672, - 48673, - 48674, - 48675, - 48676, - 48677, - 48678, - 48679, - 48680, - 48681, - 48682, - 48683, - 48684, - 48685, - 48686, - 48687, - 48688, - 48689, - 48690, - 48691, - 48692, - 48693, - 48694, - 48695, - 48696, - 48697, - 48698, - 48699, - 48700, - 48701, - 48702, - 48703, - 48704, - 48705, - 48706, - 48707, - 48710, - 48711, - 48713, - 48714, - 48715, - 48717, - 48719, - 48720, - 48721, - 48722, - 48723, - 48726, - 48728, - 48732, - 48733, - 48734, - 48735, - 48738, - 48739, - 48741, - 48742, - 48743, - 48745, - 48747, - 48748, - 48749, - 48750, - 48751, - 48754, - 48758, - 48759, - 48760, - 48761, - 48762, - 48766, - 48767, - 48769, - 48770, - 48771, - 48773, - 48774, - 48775, - 48776, - 48777, - 48778, - 48779, - 48782, - 48786, - 48787, - 48788, - 48789, - 48790, - 48791, - 48794, - 48795, - 48796, - 48797, - 48798, - 48799, - 48800, - 48801, - 48802, - 48803, - 48804, - 48805, - 48806, - 48807, - 48809, - 48810, - 48811, - 48812, - 48813, - 48814, - 48815, - 48816, - 48817, - 48818, - 48819, - 48820, - 48821, - 48822, - 48823, - 48824, - 48825, - 48826, - 48827, - 48828, - 48829, - 48830, - 48831, - 48832, - 48833, - 48834, - 48835, - 48836, - 48837, - 48838, - 48839, - 48840, - 48841, - 48842, - 48843, - 48844, - 48845, - 48846, - 48847, - 48850, - 48851, - 48853, - 48854, - 48857, - 48858, - 48859, - 48860, - 48861, - 48862, - 48863, - 48865, - 48866, - 48870, - 48871, - 48872, - 48873, - 48874, - 48875, - 48877, - 48878, - 48879, - 48880, - 48881, - 48882, - 48883, - 48884, - 48885, - 48886, - 48887, - 48888, - 48889, - 48890, - 48891, - 48892, - 48893, - 48894, - 48895, - 48896, - 48898, - 48899, - 48900, - 48901, - 48902, - 48903, - 48906, - 48907, - 48908, - 48909, - 48910, - 48911, - 48912, - 48913, - 48914, - 48915, - 48916, - 48917, - 48918, - 48919, - 48922, - 48926, - 48927, - 48928, - 48929, - 48930, - 48931, - 48932, - 48933, - 48934, - 48935, - 48936, - 48937, - 48938, - 48939, - 48940, - 48941, - 48942, - 48943, - 48944, - 48945, - 48946, - 48947, - 48948, - 48949, - 48950, - 48951, - 48952, - 48953, - 48954, - 48955, - 48956, - 48957, - 48958, - 48959, - 48962, - 48963, - 48965, - 48966, - 48967, - 48969, - 48970, - 48971, - 48972, - 48973, - 48974, - 48975, - 48978, - 48979, - 48980, - 48982, - 48983, - 48984, - 48985, - 48986, - 48987, - 48988, - 48989, - 48990, - 48991, - 48992, - 48993, - 48994, - 48995, - 48996, - 48997, - 48998, - 48999, - 49000, - 49001, - 49002, - 49003, - 49004, - 49005, - 49006, - 49007, - 49008, - 49009, - 49010, - 49011, - 49012, - 49013, - 49014, - 49015, - 49016, - 49017, - 49018, - 49019, - 49020, - 49021, - 49022, - 49023, - 49024, - 49025, - 49026, - 49027, - 49028, - 49029, - 49030, - 49031, - 49032, - 49033, - 49034, - 49035, - 49036, - 49037, - 49038, - 49039, - 49040, - 49041, - 49042, - 49043, - 49045, - 49046, - 49047, - 49048, - 49049, - 49050, - 49051, - 49052, - 49053, - 49054, - 49055, - 49056, - 49057, - 49058, - 49059, - 49060, - 49061, - 49062, - 49063, - 49064, - 49065, - 49066, - 49067, - 49068, - 49069, - 49070, - 49071, - 49073, - 49074, - 49075, - 49076, - 49077, - 49078, - 49079, - 49080, - 49081, - 49082, - 49083, - 49084, - 49085, - 49086, - 49087, - 49088, - 49089, - 49090, - 49091, - 49092, - 49094, - 49095, - 49096, - 49097, - 49098, - 49099, - 49102, - 49103, - 49105, - 49106, - 49107, - 49109, - 49110, - 49111, - 49112, - 49113, - 49114, - 49115, - 49117, - 49118, - 49120, - 49122, - 49123, - 49124, - 49125, - 49126, - 49127, - 49128, - 49129, - 49130, - 49131, - 49132, - 49133, - 49134, - 49135, - 49136, - 49137, - 49138, - 49139, - 49140, - 49141, - 49142, - 49143, - 49144, - 49145, - 49146, - 49147, - 49148, - 49149, - 49150, - 49151, - 49152, - 49153, - 49154, - 49155, - 49156, - 49157, - 49158, - 49159, - 49160, - 49161, - 49162, - 49163, - 49164, - 49165, - 49166, - 49167, - 49168, - 49169, - 49170, - 49171, - 49172, - 49173, - 49174, - 49175, - 49176, - 49177, - 49178, - 49179, - 49180, - 49181, - 49182, - 49183, - 49184, - 49185, - 49186, - 49187, - 49188, - 49189, - 49190, - 49191, - 49192, - 49193, - 49194, - 49195, - 49196, - 49197, - 49198, - 49199, - 49200, - 49201, - 49202, - 49203, - 49204, - 49205, - 49206, - 49207, - 49208, - 49209, - 49210, - 49211, - 49213, - 49214, - 49215, - 49216, - 49217, - 49218, - 49219, - 49220, - 49221, - 49222, - 49223, - 49224, - 49225, - 49226, - 49227, - 49228, - 49229, - 49230, - 49231, - 49232, - 49234, - 49235, - 49236, - 49237, - 49238, - 49239, - 49241, - 49242, - 49243, - 49245, - 49246, - 49247, - 49249, - 49250, - 49251, - 49252, - 49253, - 49254, - 49255, - 49258, - 49259, - 49260, - 49261, - 49262, - 49263, - 49264, - 49265, - 49266, - 49267, - 49268, - 49269, - 49270, - 49271, - 49272, - 49273, - 49274, - 49275, - 49276, - 49277, - 49278, - 49279, - 49280, - 49281, - 49282, - 49283, - 49284, - 49285, - 49286, - 49287, - 49288, - 49289, - 49290, - 49291, - 49292, - 49293, - 49294, - 49295, - 49298, - 49299, - 49301, - 49302, - 49303, - 49305, - 49306, - 49307, - 49308, - 49309, - 49310, - 49311, - 49314, - 49316, - 49318, - 49319, - 49320, - 49321, - 49322, - 49323, - 49326, - 49329, - 49330, - 49335, - 49336, - 49337, - 49338, - 49339, - 49342, - 49346, - 49347, - 49348, - 49350, - 49351, - 49354, - 49355, - 49357, - 49358, - 49359, - 49361, - 49362, - 49363, - 49364, - 49365, - 49366, - 49367, - 49370, - 49374, - 49375, - 49376, - 49377, - 49378, - 49379, - 49382, - 49383, - 49385, - 49386, - 49387, - 49389, - 49390, - 49391, - 49392, - 49393, - 49394, - 49395, - 49398, - 49400, - 49402, - 49403, - 49404, - 49405, - 49406, - 49407, - 49409, - 49410, - 49411, - 49413, - 49414, - 49415, - 49417, - 49418, - 49419, - 49420, - 49421, - 49422, - 49423, - 49425, - 49426, - 49427, - 49428, - 49430, - 49431, - 49432, - 49433, - 49434, - 49435, - 49441, - 49442, - 49445, - 49448, - 49449, - 49450, - 49451, - 49454, - 49458, - 49459, - 49460, - 49461, - 49463, - 49466, - 49467, - 49469, - 49470, - 49471, - 49473, - 49474, - 49475, - 49476, - 49477, - 49478, - 49479, - 49482, - 49486, - 49487, - 49488, - 49489, - 49490, - 49491, - 49494, - 49495, - 49497, - 49498, - 49499, - 49501, - 49502, - 49503, - 49504, - 49505, - 49506, - 49507, - 49510, - 49514, - 49515, - 49516, - 49517, - 49518, - 49519, - 49521, - 49522, - 49523, - 49525, - 49526, - 49527, - 49529, - 49530, - 49531, - 49532, - 49533, - 49534, - 49535, - 49536, - 49537, - 49538, - 49539, - 49540, - 49542, - 49543, - 49544, - 49545, - 49546, - 49547, - 49551, - 49553, - 49554, - 49555, - 49557, - 49559, - 49560, - 49561, - 49562, - 49563, - 49566, - 49568, - 49570, - 49571, - 49572, - 49574, - 49575, - 49578, - 49579, - 49581, - 49582, - 49583, - 49585, - 49586, - 49587, - 49588, - 49589, - 49590, - 49591, - 49592, - 49593, - 49594, - 49595, - 49596, - 49598, - 49599, - 49600, - 49601, - 49602, - 49603, - 49605, - 49606, - 49607, - 49609, - 49610, - 49611, - 49613, - 49614, - 49615, - 49616, - 49617, - 49618, - 49619, - 49621, - 49622, - 49625, - 49626, - 49627, - 49628, - 49629, - 49630, - 49631, - 49633, - 49634, - 49635, - 49637, - 49638, - 49639, - 49641, - 49642, - 49643, - 49644, - 49645, - 49646, - 49647, - 49650, - 49652, - 49653, - 49654, - 49655, - 49656, - 49657, - 49658, - 49659, - 49662, - 49663, - 49665, - 49666, - 49667, - 49669, - 49670, - 49671, - 49672, - 49673, - 49674, - 49675, - 49678, - 49680, - 49682, - 49683, - 49684, - 49685, - 49686, - 49687, - 49690, - 49691, - 49693, - 49694, - 49697, - 49698, - 49699, - 49700, - 49701, - 49702, - 49703, - 49706, - 49708, - 49710, - 49712, - 49715, - 49717, - 49718, - 49719, - 49720, - 49721, - 49722, - 49723, - 49724, - 49725, - 49726, - 49727, - 49728, - 49729, - 49730, - 49731, - 49732, - 49733, - 49734, - 49735, - 49737, - 49738, - 49739, - 49740, - 49741, - 49742, - 49743, - 49746, - 49747, - 49749, - 49750, - 49751, - 49753, - 49754, - 49755, - 49756, - 49757, - 49758, - 49759, - 49761, - 49762, - 49763, - 49764, - 49766, - 49767, - 49768, - 49769, - 49770, - 49771, - 49774, - 49775, - 49777, - 49778, - 49779, - 49781, - 49782, - 49783, - 49784, - 49785, - 49786, - 49787, - 49790, - 49792, - 49794, - 49795, - 49796, - 49797, - 49798, - 49799, - 49802, - 49803, - 49804, - 49805, - 49806, - 49807, - 49809, - 49810, - 49811, - 49812, - 49813, - 49814, - 49815, - 49817, - 49818, - 49820, - 49822, - 49823, - 49824, - 49825, - 49826, - 49827, - 49830, - 49831, - 49833, - 49834, - 49835, - 49838, - 49839, - 49840, - 49841, - 49842, - 49843, - 49846, - 49848, - 49850, - 49851, - 49852, - 49853, - 49854, - 49855, - 49856, - 49857, - 49858, - 49859, - 49860, - 49861, - 49862, - 49863, - 49864, - 49865, - 49866, - 49867, - 49868, - 49869, - 49870, - 49871, - 49872, - 49873, - 49874, - 49875, - 49876, - 49877, - 49878, - 49879, - 49880, - 49881, - 49882, - 49883, - 49886, - 49887, - 49889, - 49890, - 49893, - 49894, - 49895, - 49896, - 49897, - 49898, - 49902, - 49904, - 49906, - 49907, - 49908, - 49909, - 49911, - 49914, - 49917, - 49918, - 49919, - 49921, - 49922, - 49923, - 49924, - 49925, - 49926, - 49927, - 49930, - 49931, - 49934, - 49935, - 49936, - 49937, - 49938, - 49942, - 49943, - 49945, - 49946, - 49947, - 49949, - 49950, - 49951, - 49952, - 49953, - 49954, - 49955, - 49958, - 49959, - 49962, - 49963, - 49964, - 49965, - 49966, - 49967, - 49968, - 49969, - 49970, - 49971, - 49972, - 49973, - 49974, - 49975, - 49976, - 49977, - 49978, - 49979, - 49980, - 49981, - 49982, - 49983, - 49984, - 49985, - 49986, - 49987, - 49988, - 49990, - 49991, - 49992, - 49993, - 49994, - 49995, - 49996, - 49997, - 49998, - 49999, - 50000, - 50001, - 50002, - 50003, - 50004, - 50005, - 50006, - 50007, - 50008, - 50009, - 50010, - 50011, - 50012, - 50013, - 50014, - 50015, - 50016, - 50017, - 50018, - 50019, - 50020, - 50021, - 50022, - 50023, - 50026, - 50027, - 50029, - 50030, - 50031, - 50033, - 50035, - 50036, - 50037, - 50038, - 50039, - 50042, - 50043, - 50046, - 50047, - 50048, - 50049, - 50050, - 50051, - 50053, - 50054, - 50055, - 50057, - 50058, - 50059, - 50061, - 50062, - 50063, - 50064, - 50065, - 50066, - 50067, - 50068, - 50069, - 50070, - 50071, - 50072, - 50073, - 50074, - 50075, - 50076, - 50077, - 50078, - 50079, - 50080, - 50081, - 50082, - 50083, - 50084, - 50085, - 50086, - 50087, - 50088, - 50089, - 50090, - 50091, - 50092, - 50093, - 50094, - 50095, - 50096, - 50097, - 50098, - 50099, - 50100, - 50101, - 50102, - 50103, - 50104, - 50105, - 50106, - 50107, - 50108, - 50109, - 50110, - 50111, - 50113, - 50114, - 50115, - 50116, - 50117, - 50118, - 50119, - 50120, - 50121, - 50122, - 50123, - 50124, - 50125, - 50126, - 50127, - 50128, - 50129, - 50130, - 50131, - 50132, - 50133, - 50134, - 50135, - 50138, - 50139, - 50141, - 50142, - 50145, - 50147, - 50148, - 50149, - 50150, - 50151, - 50154, - 50155, - 50156, - 50158, - 50159, - 50160, - 50161, - 50162, - 50163, - 50166, - 50167, - 50169, - 50170, - 50171, - 50172, - 50173, - 50174, - 50175, - 50176, - 50177, - 50178, - 50179, - 50180, - 50181, - 50182, - 50183, - 50185, - 50186, - 50187, - 50188, - 50189, - 50190, - 50191, - 50193, - 50194, - 50195, - 50196, - 50197, - 50198, - 50199, - 50200, - 50201, - 50202, - 50203, - 50204, - 50205, - 50206, - 50207, - 50208, - 50209, - 50210, - 50211, - 50213, - 50214, - 50215, - 50216, - 50217, - 50218, - 50219, - 50221, - 50222, - 50223, - 50225, - 50226, - 50227, - 50229, - 50230, - 50231, - 50232, - 50233, - 50234, - 50235, - 50238, - 50239, - 50240, - 50241, - 50242, - 50243, - 50244, - 50245, - 50246, - 50247, - 50249, - 50250, - 50251, - 50252, - 50253, - 50254, - 50255, - 50256, - 50257, - 50258, - 50259, - 50260, - 50261, - 50262, - 50263, - 50264, - 50265, - 50266, - 50267, - 50268, - 50269, - 50270, - 50271, - 50272, - 50273, - 50274, - 50275, - 50278, - 50279, - 50281, - 50282, - 50283, - 50285, - 50286, - 50287, - 50288, - 50289, - 50290, - 50291, - 50294, - 50295, - 50296, - 50298, - 50299, - 50300, - 50301, - 50302, - 50303, - 50305, - 50306, - 50307, - 50308, - 50309, - 50310, - 50311, - 50312, - 50313, - 50314, - 50315, - 50316, - 50317, - 50318, - 50319, - 50320, - 50321, - 50322, - 50323, - 50325, - 50326, - 50327, - 50328, - 50329, - 50330, - 50331, - 50333, - 50334, - 50335, - 50336, - 50337, - 50338, - 50339, - 50340, - 50341, - 50342, - 50343, - 50344, - 50345, - 50346, - 50347, - 50348, - 50349, - 50350, - 50351, - 50352, - 50353, - 50354, - 50355, - 50356, - 50357, - 50358, - 50359, - 50361, - 50362, - 50363, - 50365, - 50366, - 50367, - 50368, - 50369, - 50370, - 50371, - 50372, - 50373, - 50374, - 50375, - 50376, - 50377, - 50378, - 50379, - 50380, - 50381, - 50382, - 50383, - 50384, - 50385, - 50386, - 50387, - 50388, - 50389, - 50390, - 50391, - 50392, - 50393, - 50394, - 50395, - 50396, - 50397, - 50398, - 50399, - 50400, - 50401, - 50402, - 50403, - 50404, - 50405, - 50406, - 50407, - 50408, - 50410, - 50411, - 50412, - 50413, - 50414, - 50415, - 50418, - 50419, - 50421, - 50422, - 50423, - 50425, - 50427, - 50428, - 50429, - 50430, - 50434, - 50435, - 50436, - 50437, - 50438, - 50439, - 50440, - 50441, - 50442, - 50443, - 50445, - 50446, - 50447, - 50449, - 50450, - 50451, - 50453, - 50454, - 50455, - 50456, - 50457, - 50458, - 50459, - 50461, - 50462, - 50463, - 50464, - 50465, - 50466, - 50467, - 50468, - 50469, - 50470, - 50471, - 50474, - 50475, - 50477, - 50478, - 50479, - 50481, - 50482, - 50483, - 50484, - 50485, - 50486, - 50487, - 50490, - 50492, - 50494, - 50495, - 50496, - 50497, - 50498, - 50499, - 50502, - 50503, - 50507, - 50511, - 50512, - 50513, - 50514, - 50518, - 50522, - 50523, - 50524, - 50527, - 50530, - 50531, - 50533, - 50534, - 50535, - 50537, - 50538, - 50539, - 50540, - 50541, - 50542, - 50543, - 50546, - 50550, - 50551, - 50552, - 50553, - 50554, - 50555, - 50558, - 50559, - 50561, - 50562, - 50563, - 50565, - 50566, - 50568, - 50569, - 50570, - 50571, - 50574, - 50576, - 50578, - 50579, - 50580, - 50582, - 50585, - 50586, - 50587, - 50589, - 50590, - 50591, - 50593, - 50594, - 50595, - 50596, - 50597, - 50598, - 50599, - 50600, - 50602, - 50603, - 50604, - 50605, - 50606, - 50607, - 50608, - 50609, - 50610, - 50611, - 50614, - 50615, - 50618, - 50623, - 50624, - 50625, - 50626, - 50627, - 50635, - 50637, - 50639, - 50642, - 50643, - 50645, - 50646, - 50647, - 50649, - 50650, - 50651, - 50652, - 50653, - 50654, - 50655, - 50658, - 50660, - 50662, - 50663, - 50664, - 50665, - 50666, - 50667, - 50671, - 50673, - 50674, - 50675, - 50677, - 50680, - 50681, - 50682, - 50683, - 50690, - 50691, - 50692, - 50697, - 50698, - 50699, - 50701, - 50702, - 50703, - 50705, - 50706, - 50707, - 50708, - 50709, - 50710, - 50711, - 50714, - 50717, - 50718, - 50719, - 50720, - 50721, - 50722, - 50723, - 50726, - 50727, - 50729, - 50730, - 50731, - 50735, - 50737, - 50738, - 50742, - 50744, - 50746, - 50748, - 50749, - 50750, - 50751, - 50754, - 50755, - 50757, - 50758, - 50759, - 50761, - 50762, - 50763, - 50764, - 50765, - 50766, - 50767, - 50770, - 50774, - 50775, - 50776, - 50777, - 50778, - 50779, - 50782, - 50783, - 50785, - 50786, - 50787, - 50788, - 50789, - 50790, - 50791, - 50792, - 50793, - 50794, - 50795, - 50797, - 50798, - 50800, - 50802, - 50803, - 50804, - 50805, - 50806, - 50807, - 50810, - 50811, - 50813, - 50814, - 50815, - 50817, - 50818, - 50819, - 50820, - 50821, - 50822, - 50823, - 50826, - 50828, - 50830, - 50831, - 50832, - 50833, - 50834, - 50835, - 50838, - 50839, - 50841, - 50842, - 50843, - 50845, - 50846, - 50847, - 50848, - 50849, - 50850, - 50851, - 50854, - 50856, - 50858, - 50859, - 50860, - 50861, - 50862, - 50863, - 50866, - 50867, - 50869, - 50870, - 50871, - 50875, - 50876, - 50877, - 50878, - 50879, - 50882, - 50884, - 50886, - 50887, - 50888, - 50889, - 50890, - 50891, - 50894, - 50895, - 50897, - 50898, - 50899, - 50901, - 50902, - 50903, - 50904, - 50905, - 50906, - 50907, - 50910, - 50911, - 50914, - 50915, - 50916, - 50917, - 50918, - 50919, - 50922, - 50923, - 50925, - 50926, - 50927, - 50929, - 50930, - 50931, - 50932, - 50933, - 50934, - 50935, - 50938, - 50939, - 50940, - 50942, - 50943, - 50944, - 50945, - 50946, - 50947, - 50950, - 50951, - 50953, - 50954, - 50955, - 50957, - 50958, - 50959, - 50960, - 50961, - 50962, - 50963, - 50966, - 50968, - 50970, - 50971, - 50972, - 50973, - 50974, - 50975, - 50978, - 50979, - 50981, - 50982, - 50983, - 50985, - 50986, - 50987, - 50988, - 50989, - 50990, - 50991, - 50994, - 50996, - 50998, - 51000, - 51001, - 51002, - 51003, - 51006, - 51007, - 51009, - 51010, - 51011, - 51013, - 51014, - 51015, - 51016, - 51017, - 51019, - 51022, - 51024, - 51033, - 51034, - 51035, - 51037, - 51038, - 51039, - 51041, - 51042, - 51043, - 51044, - 51045, - 51046, - 51047, - 51049, - 51050, - 51052, - 51053, - 51054, - 51055, - 51056, - 51057, - 51058, - 51059, - 51062, - 51063, - 51065, - 51066, - 51067, - 51071, - 51072, - 51073, - 51074, - 51078, - 51083, - 51084, - 51085, - 51087, - 51090, - 51091, - 51093, - 51097, - 51099, - 51100, - 51101, - 51102, - 51103, - 51106, - 51111, - 51112, - 51113, - 51114, - 51115, - 51118, - 51119, - 51121, - 51122, - 51123, - 51125, - 51126, - 51127, - 51128, - 51129, - 51130, - 51131, - 51134, - 51138, - 51139, - 51140, - 51141, - 51142, - 51143, - 51146, - 51147, - 51149, - 51151, - 51153, - 51154, - 51155, - 51156, - 51157, - 51158, - 51159, - 51161, - 51162, - 51163, - 51164, - 51166, - 51167, - 51168, - 51169, - 51170, - 51171, - 51173, - 51174, - 51175, - 51177, - 51178, - 51179, - 51181, - 51182, - 51183, - 51184, - 51185, - 51186, - 51187, - 51188, - 51189, - 51190, - 51191, - 51192, - 51193, - 51194, - 51195, - 51196, - 51197, - 51198, - 51199, - 51202, - 51203, - 51205, - 51206, - 51207, - 51209, - 51211, - 51212, - 51213, - 51214, - 51215, - 51218, - 51220, - 51223, - 51224, - 51225, - 51226, - 51227, - 51230, - 51231, - 51233, - 51234, - 51235, - 51237, - 51238, - 51239, - 51240, - 51241, - 51242, - 51243, - 51246, - 51248, - 51250, - 51251, - 51252, - 51253, - 51254, - 51255, - 51257, - 51258, - 51259, - 51261, - 51262, - 51263, - 51265, - 51266, - 51267, - 51268, - 51269, - 51270, - 51271, - 51274, - 51275, - 51278, - 51279, - 51280, - 51281, - 51282, - 51283, - 51285, - 51286, - 51287, - 51288, - 51289, - 51290, - 51291, - 51292, - 51293, - 51294, - 51295, - 51296, - 51297, - 51298, - 51299, - 51300, - 51301, - 51302, - 51303, - 51304, - 51305, - 51306, - 51307, - 51308, - 51309, - 51310, - 51311, - 51314, - 51315, - 51317, - 51318, - 51319, - 51321, - 51323, - 51324, - 51325, - 51326, - 51327, - 51330, - 51332, - 51336, - 51337, - 51338, - 51342, - 51343, - 51344, - 51345, - 51346, - 51347, - 51349, - 51350, - 51351, - 51352, - 51353, - 51354, - 51355, - 51356, - 51358, - 51360, - 51362, - 51363, - 51364, - 51365, - 51366, - 51367, - 51369, - 51370, - 51371, - 51372, - 51373, - 51374, - 51375, - 51376, - 51377, - 51378, - 51379, - 51380, - 51381, - 51382, - 51383, - 51384, - 51385, - 51386, - 51387, - 51390, - 51391, - 51392, - 51393, - 51394, - 51395, - 51397, - 51398, - 51399, - 51401, - 51402, - 51403, - 51405, - 51406, - 51407, - 51408, - 51409, - 51410, - 51411, - 51414, - 51416, - 51418, - 51419, - 51420, - 51421, - 51422, - 51423, - 51426, - 51427, - 51429, - 51430, - 51431, - 51432, - 51433, - 51434, - 51435, - 51436, - 51437, - 51438, - 51439, - 51440, - 51441, - 51442, - 51443, - 51444, - 51446, - 51447, - 51448, - 51449, - 51450, - 51451, - 51454, - 51455, - 51457, - 51458, - 51459, - 51463, - 51464, - 51465, - 51466, - 51467, - 51470, - 12288, - 12289, - 12290, - 183, - 8229, - 8230, - 168, - 12291, - 173, - 8213, - 8741, - 65340, - 8764, - 8216, - 8217, - 8220, - 8221, - 12308, - 12309, - 12296, - 12297, - 12298, - 12299, - 12300, - 12301, - 12302, - 12303, - 12304, - 12305, - 177, - 215, - 247, - 8800, - 8804, - 8805, - 8734, - 8756, - 176, - 8242, - 8243, - 8451, - 8491, - 65504, - 65505, - 65509, - 9794, - 9792, - 8736, - 8869, - 8978, - 8706, - 8711, - 8801, - 8786, - 167, - 8251, - 9734, - 9733, - 9675, - 9679, - 9678, - 9671, - 9670, - 9633, - 9632, - 9651, - 9650, - 9661, - 9660, - 8594, - 8592, - 8593, - 8595, - 8596, - 12307, - 8810, - 8811, - 8730, - 8765, - 8733, - 8757, - 8747, - 8748, - 8712, - 8715, - 8838, - 8839, - 8834, - 8835, - 8746, - 8745, - 8743, - 8744, - 65506, - 51472, - 51474, - 51475, - 51476, - 51477, - 51478, - 51479, - 51481, - 51482, - 51483, - 51484, - 51485, - 51486, - 51487, - 51488, - 51489, - 51490, - 51491, - 51492, - 51493, - 51494, - 51495, - 51496, - 51497, - 51498, - 51499, - 51501, - 51502, - 51503, - 51504, - 51505, - 51506, - 51507, - 51509, - 51510, - 51511, - 51512, - 51513, - 51514, - 51515, - 51516, - 51517, - 51518, - 51519, - 51520, - 51521, - 51522, - 51523, - 51524, - 51525, - 51526, - 51527, - 51528, - 51529, - 51530, - 51531, - 51532, - 51533, - 51534, - 51535, - 51538, - 51539, - 51541, - 51542, - 51543, - 51545, - 51546, - 51547, - 51548, - 51549, - 51550, - 51551, - 51554, - 51556, - 51557, - 51558, - 51559, - 51560, - 51561, - 51562, - 51563, - 51565, - 51566, - 51567, - 8658, - 8660, - 8704, - 8707, - 180, - 65374, - 711, - 728, - 733, - 730, - 729, - 184, - 731, - 161, - 191, - 720, - 8750, - 8721, - 8719, - 164, - 8457, - 8240, - 9665, - 9664, - 9655, - 9654, - 9828, - 9824, - 9825, - 9829, - 9831, - 9827, - 8857, - 9672, - 9635, - 9680, - 9681, - 9618, - 9636, - 9637, - 9640, - 9639, - 9638, - 9641, - 9832, - 9743, - 9742, - 9756, - 9758, - 182, - 8224, - 8225, - 8597, - 8599, - 8601, - 8598, - 8600, - 9837, - 9833, - 9834, - 9836, - 12927, - 12828, - 8470, - 13255, - 8482, - 13250, - 13272, - 8481, - 8364, - 174, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 51569, - 51570, - 51571, - 51573, - 51574, - 51575, - 51576, - 51577, - 51578, - 51579, - 51581, - 51582, - 51583, - 51584, - 51585, - 51586, - 51587, - 51588, - 51589, - 51590, - 51591, - 51594, - 51595, - 51597, - 51598, - 51599, - 51601, - 51602, - 51603, - 51604, - 51605, - 51606, - 51607, - 51610, - 51612, - 51614, - 51615, - 51616, - 51617, - 51618, - 51619, - 51620, - 51621, - 51622, - 51623, - 51624, - 51625, - 51626, - 51627, - 51628, - 51629, - 51630, - 51631, - 51632, - 51633, - 51634, - 51635, - 51636, - 51637, - 51638, - 51639, - 51640, - 51641, - 51642, - 51643, - 51644, - 51645, - 51646, - 51647, - 51650, - 51651, - 51653, - 51654, - 51657, - 51659, - 51660, - 51661, - 51662, - 51663, - 51666, - 51668, - 51671, - 51672, - 51675, - 65281, - 65282, - 65283, - 65284, - 65285, - 65286, - 65287, - 65288, - 65289, - 65290, - 65291, - 65292, - 65293, - 65294, - 65295, - 65296, - 65297, - 65298, - 65299, - 65300, - 65301, - 65302, - 65303, - 65304, - 65305, - 65306, - 65307, - 65308, - 65309, - 65310, - 65311, - 65312, - 65313, - 65314, - 65315, - 65316, - 65317, - 65318, - 65319, - 65320, - 65321, - 65322, - 65323, - 65324, - 65325, - 65326, - 65327, - 65328, - 65329, - 65330, - 65331, - 65332, - 65333, - 65334, - 65335, - 65336, - 65337, - 65338, - 65339, - 65510, - 65341, - 65342, - 65343, - 65344, - 65345, - 65346, - 65347, - 65348, - 65349, - 65350, - 65351, - 65352, - 65353, - 65354, - 65355, - 65356, - 65357, - 65358, - 65359, - 65360, - 65361, - 65362, - 65363, - 65364, - 65365, - 65366, - 65367, - 65368, - 65369, - 65370, - 65371, - 65372, - 65373, - 65507, - 51678, - 51679, - 51681, - 51683, - 51685, - 51686, - 51688, - 51689, - 51690, - 51691, - 51694, - 51698, - 51699, - 51700, - 51701, - 51702, - 51703, - 51706, - 51707, - 51709, - 51710, - 51711, - 51713, - 51714, - 51715, - 51716, - 51717, - 51718, - 51719, - 51722, - 51726, - 51727, - 51728, - 51729, - 51730, - 51731, - 51733, - 51734, - 51735, - 51737, - 51738, - 51739, - 51740, - 51741, - 51742, - 51743, - 51744, - 51745, - 51746, - 51747, - 51748, - 51749, - 51750, - 51751, - 51752, - 51754, - 51755, - 51756, - 51757, - 51758, - 51759, - 51760, - 51761, - 51762, - 51763, - 51764, - 51765, - 51766, - 51767, - 51768, - 51769, - 51770, - 51771, - 51772, - 51773, - 51774, - 51775, - 51776, - 51777, - 51778, - 51779, - 51780, - 51781, - 51782, - 12593, - 12594, - 12595, - 12596, - 12597, - 12598, - 12599, - 12600, - 12601, - 12602, - 12603, - 12604, - 12605, - 12606, - 12607, - 12608, - 12609, - 12610, - 12611, - 12612, - 12613, - 12614, - 12615, - 12616, - 12617, - 12618, - 12619, - 12620, - 12621, - 12622, - 12623, - 12624, - 12625, - 12626, - 12627, - 12628, - 12629, - 12630, - 12631, - 12632, - 12633, - 12634, - 12635, - 12636, - 12637, - 12638, - 12639, - 12640, - 12641, - 12642, - 12643, - 12644, - 12645, - 12646, - 12647, - 12648, - 12649, - 12650, - 12651, - 12652, - 12653, - 12654, - 12655, - 12656, - 12657, - 12658, - 12659, - 12660, - 12661, - 12662, - 12663, - 12664, - 12665, - 12666, - 12667, - 12668, - 12669, - 12670, - 12671, - 12672, - 12673, - 12674, - 12675, - 12676, - 12677, - 12678, - 12679, - 12680, - 12681, - 12682, - 12683, - 12684, - 12685, - 12686, - 51783, - 51784, - 51785, - 51786, - 51787, - 51790, - 51791, - 51793, - 51794, - 51795, - 51797, - 51798, - 51799, - 51800, - 51801, - 51802, - 51803, - 51806, - 51810, - 51811, - 51812, - 51813, - 51814, - 51815, - 51817, - 51818, - 51819, - 51820, - 51821, - 51822, - 51823, - 51824, - 51825, - 51826, - 51827, - 51828, - 51829, - 51830, - 51831, - 51832, - 51833, - 51834, - 51835, - 51836, - 51838, - 51839, - 51840, - 51841, - 51842, - 51843, - 51845, - 51846, - 51847, - 51848, - 51849, - 51850, - 51851, - 51852, - 51853, - 51854, - 51855, - 51856, - 51857, - 51858, - 51859, - 51860, - 51861, - 51862, - 51863, - 51865, - 51866, - 51867, - 51868, - 51869, - 51870, - 51871, - 51872, - 51873, - 51874, - 51875, - 51876, - 51877, - 51878, - 51879, - 8560, - 8561, - 8562, - 8563, - 8564, - 8565, - 8566, - 8567, - 8568, - 8569, - null, - null, - null, - null, - null, - 8544, - 8545, - 8546, - 8547, - 8548, - 8549, - 8550, - 8551, - 8552, - 8553, - null, - null, - null, - null, - null, - null, - null, - 913, - 914, - 915, - 916, - 917, - 918, - 919, - 920, - 921, - 922, - 923, - 924, - 925, - 926, - 927, - 928, - 929, - 931, - 932, - 933, - 934, - 935, - 936, - 937, - null, - null, - null, - null, - null, - null, - null, - null, - 945, - 946, - 947, - 948, - 949, - 950, - 951, - 952, - 953, - 954, - 955, - 956, - 957, - 958, - 959, - 960, - 961, - 963, - 964, - 965, - 966, - 967, - 968, - 969, - null, - null, - null, - null, - null, - null, - 51880, - 51881, - 51882, - 51883, - 51884, - 51885, - 51886, - 51887, - 51888, - 51889, - 51890, - 51891, - 51892, - 51893, - 51894, - 51895, - 51896, - 51897, - 51898, - 51899, - 51902, - 51903, - 51905, - 51906, - 51907, - 51909, - 51910, - 51911, - 51912, - 51913, - 51914, - 51915, - 51918, - 51920, - 51922, - 51924, - 51925, - 51926, - 51927, - 51930, - 51931, - 51932, - 51933, - 51934, - 51935, - 51937, - 51938, - 51939, - 51940, - 51941, - 51942, - 51943, - 51944, - 51945, - 51946, - 51947, - 51949, - 51950, - 51951, - 51952, - 51953, - 51954, - 51955, - 51957, - 51958, - 51959, - 51960, - 51961, - 51962, - 51963, - 51964, - 51965, - 51966, - 51967, - 51968, - 51969, - 51970, - 51971, - 51972, - 51973, - 51974, - 51975, - 51977, - 51978, - 9472, - 9474, - 9484, - 9488, - 9496, - 9492, - 9500, - 9516, - 9508, - 9524, - 9532, - 9473, - 9475, - 9487, - 9491, - 9499, - 9495, - 9507, - 9523, - 9515, - 9531, - 9547, - 9504, - 9519, - 9512, - 9527, - 9535, - 9501, - 9520, - 9509, - 9528, - 9538, - 9490, - 9489, - 9498, - 9497, - 9494, - 9493, - 9486, - 9485, - 9502, - 9503, - 9505, - 9506, - 9510, - 9511, - 9513, - 9514, - 9517, - 9518, - 9521, - 9522, - 9525, - 9526, - 9529, - 9530, - 9533, - 9534, - 9536, - 9537, - 9539, - 9540, - 9541, - 9542, - 9543, - 9544, - 9545, - 9546, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 51979, - 51980, - 51981, - 51982, - 51983, - 51985, - 51986, - 51987, - 51989, - 51990, - 51991, - 51993, - 51994, - 51995, - 51996, - 51997, - 51998, - 51999, - 52002, - 52003, - 52004, - 52005, - 52006, - 52007, - 52008, - 52009, - 52010, - 52011, - 52012, - 52013, - 52014, - 52015, - 52016, - 52017, - 52018, - 52019, - 52020, - 52021, - 52022, - 52023, - 52024, - 52025, - 52026, - 52027, - 52028, - 52029, - 52030, - 52031, - 52032, - 52034, - 52035, - 52036, - 52037, - 52038, - 52039, - 52042, - 52043, - 52045, - 52046, - 52047, - 52049, - 52050, - 52051, - 52052, - 52053, - 52054, - 52055, - 52058, - 52059, - 52060, - 52062, - 52063, - 52064, - 52065, - 52066, - 52067, - 52069, - 52070, - 52071, - 52072, - 52073, - 52074, - 52075, - 52076, - 13205, - 13206, - 13207, - 8467, - 13208, - 13252, - 13219, - 13220, - 13221, - 13222, - 13209, - 13210, - 13211, - 13212, - 13213, - 13214, - 13215, - 13216, - 13217, - 13218, - 13258, - 13197, - 13198, - 13199, - 13263, - 13192, - 13193, - 13256, - 13223, - 13224, - 13232, - 13233, - 13234, - 13235, - 13236, - 13237, - 13238, - 13239, - 13240, - 13241, - 13184, - 13185, - 13186, - 13187, - 13188, - 13242, - 13243, - 13244, - 13245, - 13246, - 13247, - 13200, - 13201, - 13202, - 13203, - 13204, - 8486, - 13248, - 13249, - 13194, - 13195, - 13196, - 13270, - 13253, - 13229, - 13230, - 13231, - 13275, - 13225, - 13226, - 13227, - 13228, - 13277, - 13264, - 13267, - 13251, - 13257, - 13276, - 13254, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 52077, - 52078, - 52079, - 52080, - 52081, - 52082, - 52083, - 52084, - 52085, - 52086, - 52087, - 52090, - 52091, - 52092, - 52093, - 52094, - 52095, - 52096, - 52097, - 52098, - 52099, - 52100, - 52101, - 52102, - 52103, - 52104, - 52105, - 52106, - 52107, - 52108, - 52109, - 52110, - 52111, - 52112, - 52113, - 52114, - 52115, - 52116, - 52117, - 52118, - 52119, - 52120, - 52121, - 52122, - 52123, - 52125, - 52126, - 52127, - 52128, - 52129, - 52130, - 52131, - 52132, - 52133, - 52134, - 52135, - 52136, - 52137, - 52138, - 52139, - 52140, - 52141, - 52142, - 52143, - 52144, - 52145, - 52146, - 52147, - 52148, - 52149, - 52150, - 52151, - 52153, - 52154, - 52155, - 52156, - 52157, - 52158, - 52159, - 52160, - 52161, - 52162, - 52163, - 52164, - 198, - 208, - 170, - 294, - null, - 306, - null, - 319, - 321, - 216, - 338, - 186, - 222, - 358, - 330, - null, - 12896, - 12897, - 12898, - 12899, - 12900, - 12901, - 12902, - 12903, - 12904, - 12905, - 12906, - 12907, - 12908, - 12909, - 12910, - 12911, - 12912, - 12913, - 12914, - 12915, - 12916, - 12917, - 12918, - 12919, - 12920, - 12921, - 12922, - 12923, - 9424, - 9425, - 9426, - 9427, - 9428, - 9429, - 9430, - 9431, - 9432, - 9433, - 9434, - 9435, - 9436, - 9437, - 9438, - 9439, - 9440, - 9441, - 9442, - 9443, - 9444, - 9445, - 9446, - 9447, - 9448, - 9449, - 9312, - 9313, - 9314, - 9315, - 9316, - 9317, - 9318, - 9319, - 9320, - 9321, - 9322, - 9323, - 9324, - 9325, - 9326, - 189, - 8531, - 8532, - 188, - 190, - 8539, - 8540, - 8541, - 8542, - 52165, - 52166, - 52167, - 52168, - 52169, - 52170, - 52171, - 52172, - 52173, - 52174, - 52175, - 52176, - 52177, - 52178, - 52179, - 52181, - 52182, - 52183, - 52184, - 52185, - 52186, - 52187, - 52188, - 52189, - 52190, - 52191, - 52192, - 52193, - 52194, - 52195, - 52197, - 52198, - 52200, - 52202, - 52203, - 52204, - 52205, - 52206, - 52207, - 52208, - 52209, - 52210, - 52211, - 52212, - 52213, - 52214, - 52215, - 52216, - 52217, - 52218, - 52219, - 52220, - 52221, - 52222, - 52223, - 52224, - 52225, - 52226, - 52227, - 52228, - 52229, - 52230, - 52231, - 52232, - 52233, - 52234, - 52235, - 52238, - 52239, - 52241, - 52242, - 52243, - 52245, - 52246, - 52247, - 52248, - 52249, - 52250, - 52251, - 52254, - 52255, - 52256, - 52259, - 52260, - 230, - 273, - 240, - 295, - 305, - 307, - 312, - 320, - 322, - 248, - 339, - 223, - 254, - 359, - 331, - 329, - 12800, - 12801, - 12802, - 12803, - 12804, - 12805, - 12806, - 12807, - 12808, - 12809, - 12810, - 12811, - 12812, - 12813, - 12814, - 12815, - 12816, - 12817, - 12818, - 12819, - 12820, - 12821, - 12822, - 12823, - 12824, - 12825, - 12826, - 12827, - 9372, - 9373, - 9374, - 9375, - 9376, - 9377, - 9378, - 9379, - 9380, - 9381, - 9382, - 9383, - 9384, - 9385, - 9386, - 9387, - 9388, - 9389, - 9390, - 9391, - 9392, - 9393, - 9394, - 9395, - 9396, - 9397, - 9332, - 9333, - 9334, - 9335, - 9336, - 9337, - 9338, - 9339, - 9340, - 9341, - 9342, - 9343, - 9344, - 9345, - 9346, - 185, - 178, - 179, - 8308, - 8319, - 8321, - 8322, - 8323, - 8324, - 52261, - 52262, - 52266, - 52267, - 52269, - 52271, - 52273, - 52274, - 52275, - 52276, - 52277, - 52278, - 52279, - 52282, - 52287, - 52288, - 52289, - 52290, - 52291, - 52294, - 52295, - 52297, - 52298, - 52299, - 52301, - 52302, - 52303, - 52304, - 52305, - 52306, - 52307, - 52310, - 52314, - 52315, - 52316, - 52317, - 52318, - 52319, - 52321, - 52322, - 52323, - 52325, - 52327, - 52329, - 52330, - 52331, - 52332, - 52333, - 52334, - 52335, - 52337, - 52338, - 52339, - 52340, - 52342, - 52343, - 52344, - 52345, - 52346, - 52347, - 52348, - 52349, - 52350, - 52351, - 52352, - 52353, - 52354, - 52355, - 52356, - 52357, - 52358, - 52359, - 52360, - 52361, - 52362, - 52363, - 52364, - 52365, - 52366, - 52367, - 52368, - 52369, - 52370, - 52371, - 12353, - 12354, - 12355, - 12356, - 12357, - 12358, - 12359, - 12360, - 12361, - 12362, - 12363, - 12364, - 12365, - 12366, - 12367, - 12368, - 12369, - 12370, - 12371, - 12372, - 12373, - 12374, - 12375, - 12376, - 12377, - 12378, - 12379, - 12380, - 12381, - 12382, - 12383, - 12384, - 12385, - 12386, - 12387, - 12388, - 12389, - 12390, - 12391, - 12392, - 12393, - 12394, - 12395, - 12396, - 12397, - 12398, - 12399, - 12400, - 12401, - 12402, - 12403, - 12404, - 12405, - 12406, - 12407, - 12408, - 12409, - 12410, - 12411, - 12412, - 12413, - 12414, - 12415, - 12416, - 12417, - 12418, - 12419, - 12420, - 12421, - 12422, - 12423, - 12424, - 12425, - 12426, - 12427, - 12428, - 12429, - 12430, - 12431, - 12432, - 12433, - 12434, - 12435, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 52372, - 52373, - 52374, - 52375, - 52378, - 52379, - 52381, - 52382, - 52383, - 52385, - 52386, - 52387, - 52388, - 52389, - 52390, - 52391, - 52394, - 52398, - 52399, - 52400, - 52401, - 52402, - 52403, - 52406, - 52407, - 52409, - 52410, - 52411, - 52413, - 52414, - 52415, - 52416, - 52417, - 52418, - 52419, - 52422, - 52424, - 52426, - 52427, - 52428, - 52429, - 52430, - 52431, - 52433, - 52434, - 52435, - 52437, - 52438, - 52439, - 52440, - 52441, - 52442, - 52443, - 52444, - 52445, - 52446, - 52447, - 52448, - 52449, - 52450, - 52451, - 52453, - 52454, - 52455, - 52456, - 52457, - 52458, - 52459, - 52461, - 52462, - 52463, - 52465, - 52466, - 52467, - 52468, - 52469, - 52470, - 52471, - 52472, - 52473, - 52474, - 52475, - 52476, - 52477, - 12449, - 12450, - 12451, - 12452, - 12453, - 12454, - 12455, - 12456, - 12457, - 12458, - 12459, - 12460, - 12461, - 12462, - 12463, - 12464, - 12465, - 12466, - 12467, - 12468, - 12469, - 12470, - 12471, - 12472, - 12473, - 12474, - 12475, - 12476, - 12477, - 12478, - 12479, - 12480, - 12481, - 12482, - 12483, - 12484, - 12485, - 12486, - 12487, - 12488, - 12489, - 12490, - 12491, - 12492, - 12493, - 12494, - 12495, - 12496, - 12497, - 12498, - 12499, - 12500, - 12501, - 12502, - 12503, - 12504, - 12505, - 12506, - 12507, - 12508, - 12509, - 12510, - 12511, - 12512, - 12513, - 12514, - 12515, - 12516, - 12517, - 12518, - 12519, - 12520, - 12521, - 12522, - 12523, - 12524, - 12525, - 12526, - 12527, - 12528, - 12529, - 12530, - 12531, - 12532, - 12533, - 12534, - null, - null, - null, - null, - null, - null, - null, - null, - 52478, - 52479, - 52480, - 52482, - 52483, - 52484, - 52485, - 52486, - 52487, - 52490, - 52491, - 52493, - 52494, - 52495, - 52497, - 52498, - 52499, - 52500, - 52501, - 52502, - 52503, - 52506, - 52508, - 52510, - 52511, - 52512, - 52513, - 52514, - 52515, - 52517, - 52518, - 52519, - 52521, - 52522, - 52523, - 52525, - 52526, - 52527, - 52528, - 52529, - 52530, - 52531, - 52532, - 52533, - 52534, - 52535, - 52536, - 52538, - 52539, - 52540, - 52541, - 52542, - 52543, - 52544, - 52545, - 52546, - 52547, - 52548, - 52549, - 52550, - 52551, - 52552, - 52553, - 52554, - 52555, - 52556, - 52557, - 52558, - 52559, - 52560, - 52561, - 52562, - 52563, - 52564, - 52565, - 52566, - 52567, - 52568, - 52569, - 52570, - 52571, - 52573, - 52574, - 52575, - 1040, - 1041, - 1042, - 1043, - 1044, - 1045, - 1025, - 1046, - 1047, - 1048, - 1049, - 1050, - 1051, - 1052, - 1053, - 1054, - 1055, - 1056, - 1057, - 1058, - 1059, - 1060, - 1061, - 1062, - 1063, - 1064, - 1065, - 1066, - 1067, - 1068, - 1069, - 1070, - 1071, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 1072, - 1073, - 1074, - 1075, - 1076, - 1077, - 1105, - 1078, - 1079, - 1080, - 1081, - 1082, - 1083, - 1084, - 1085, - 1086, - 1087, - 1088, - 1089, - 1090, - 1091, - 1092, - 1093, - 1094, - 1095, - 1096, - 1097, - 1098, - 1099, - 1100, - 1101, - 1102, - 1103, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 52577, - 52578, - 52579, - 52581, - 52582, - 52583, - 52584, - 52585, - 52586, - 52587, - 52590, - 52592, - 52594, - 52595, - 52596, - 52597, - 52598, - 52599, - 52601, - 52602, - 52603, - 52604, - 52605, - 52606, - 52607, - 52608, - 52609, - 52610, - 52611, - 52612, - 52613, - 52614, - 52615, - 52617, - 52618, - 52619, - 52620, - 52621, - 52622, - 52623, - 52624, - 52625, - 52626, - 52627, - 52630, - 52631, - 52633, - 52634, - 52635, - 52637, - 52638, - 52639, - 52640, - 52641, - 52642, - 52643, - 52646, - 52648, - 52650, - 52651, - 52652, - 52653, - 52654, - 52655, - 52657, - 52658, - 52659, - 52660, - 52661, - 52662, - 52663, - 52664, - 52665, - 52666, - 52667, - 52668, - 52669, - 52670, - 52671, - 52672, - 52673, - 52674, - 52675, - 52677, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 52678, - 52679, - 52680, - 52681, - 52682, - 52683, - 52685, - 52686, - 52687, - 52689, - 52690, - 52691, - 52692, - 52693, - 52694, - 52695, - 52696, - 52697, - 52698, - 52699, - 52700, - 52701, - 52702, - 52703, - 52704, - 52705, - 52706, - 52707, - 52708, - 52709, - 52710, - 52711, - 52713, - 52714, - 52715, - 52717, - 52718, - 52719, - 52721, - 52722, - 52723, - 52724, - 52725, - 52726, - 52727, - 52730, - 52732, - 52734, - 52735, - 52736, - 52737, - 52738, - 52739, - 52741, - 52742, - 52743, - 52745, - 52746, - 52747, - 52749, - 52750, - 52751, - 52752, - 52753, - 52754, - 52755, - 52757, - 52758, - 52759, - 52760, - 52762, - 52763, - 52764, - 52765, - 52766, - 52767, - 52770, - 52771, - 52773, - 52774, - 52775, - 52777, - 52778, - 52779, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 52780, - 52781, - 52782, - 52783, - 52786, - 52788, - 52790, - 52791, - 52792, - 52793, - 52794, - 52795, - 52796, - 52797, - 52798, - 52799, - 52800, - 52801, - 52802, - 52803, - 52804, - 52805, - 52806, - 52807, - 52808, - 52809, - 52810, - 52811, - 52812, - 52813, - 52814, - 52815, - 52816, - 52817, - 52818, - 52819, - 52820, - 52821, - 52822, - 52823, - 52826, - 52827, - 52829, - 52830, - 52834, - 52835, - 52836, - 52837, - 52838, - 52839, - 52842, - 52844, - 52846, - 52847, - 52848, - 52849, - 52850, - 52851, - 52854, - 52855, - 52857, - 52858, - 52859, - 52861, - 52862, - 52863, - 52864, - 52865, - 52866, - 52867, - 52870, - 52872, - 52874, - 52875, - 52876, - 52877, - 52878, - 52879, - 52882, - 52883, - 52885, - 52886, - 52887, - 52889, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 52890, - 52891, - 52892, - 52893, - 52894, - 52895, - 52898, - 52902, - 52903, - 52904, - 52905, - 52906, - 52907, - 52910, - 52911, - 52912, - 52913, - 52914, - 52915, - 52916, - 52917, - 52918, - 52919, - 52920, - 52921, - 52922, - 52923, - 52924, - 52925, - 52926, - 52927, - 52928, - 52930, - 52931, - 52932, - 52933, - 52934, - 52935, - 52936, - 52937, - 52938, - 52939, - 52940, - 52941, - 52942, - 52943, - 52944, - 52945, - 52946, - 52947, - 52948, - 52949, - 52950, - 52951, - 52952, - 52953, - 52954, - 52955, - 52956, - 52957, - 52958, - 52959, - 52960, - 52961, - 52962, - 52963, - 52966, - 52967, - 52969, - 52970, - 52973, - 52974, - 52975, - 52976, - 52977, - 52978, - 52979, - 52982, - 52986, - 52987, - 52988, - 52989, - 52990, - 52991, - 44032, - 44033, - 44036, - 44039, - 44040, - 44041, - 44042, - 44048, - 44049, - 44050, - 44051, - 44052, - 44053, - 44054, - 44055, - 44057, - 44058, - 44059, - 44060, - 44061, - 44064, - 44068, - 44076, - 44077, - 44079, - 44080, - 44081, - 44088, - 44089, - 44092, - 44096, - 44107, - 44109, - 44116, - 44120, - 44124, - 44144, - 44145, - 44148, - 44151, - 44152, - 44154, - 44160, - 44161, - 44163, - 44164, - 44165, - 44166, - 44169, - 44170, - 44171, - 44172, - 44176, - 44180, - 44188, - 44189, - 44191, - 44192, - 44193, - 44200, - 44201, - 44202, - 44204, - 44207, - 44208, - 44216, - 44217, - 44219, - 44220, - 44221, - 44225, - 44228, - 44232, - 44236, - 44245, - 44247, - 44256, - 44257, - 44260, - 44263, - 44264, - 44266, - 44268, - 44271, - 44272, - 44273, - 44275, - 44277, - 44278, - 44284, - 44285, - 44288, - 44292, - 44294, - 52994, - 52995, - 52997, - 52998, - 52999, - 53001, - 53002, - 53003, - 53004, - 53005, - 53006, - 53007, - 53010, - 53012, - 53014, - 53015, - 53016, - 53017, - 53018, - 53019, - 53021, - 53022, - 53023, - 53025, - 53026, - 53027, - 53029, - 53030, - 53031, - 53032, - 53033, - 53034, - 53035, - 53038, - 53042, - 53043, - 53044, - 53045, - 53046, - 53047, - 53049, - 53050, - 53051, - 53052, - 53053, - 53054, - 53055, - 53056, - 53057, - 53058, - 53059, - 53060, - 53061, - 53062, - 53063, - 53064, - 53065, - 53066, - 53067, - 53068, - 53069, - 53070, - 53071, - 53072, - 53073, - 53074, - 53075, - 53078, - 53079, - 53081, - 53082, - 53083, - 53085, - 53086, - 53087, - 53088, - 53089, - 53090, - 53091, - 53094, - 53096, - 53098, - 53099, - 53100, - 44300, - 44301, - 44303, - 44305, - 44312, - 44316, - 44320, - 44329, - 44332, - 44333, - 44340, - 44341, - 44344, - 44348, - 44356, - 44357, - 44359, - 44361, - 44368, - 44372, - 44376, - 44385, - 44387, - 44396, - 44397, - 44400, - 44403, - 44404, - 44405, - 44406, - 44411, - 44412, - 44413, - 44415, - 44417, - 44418, - 44424, - 44425, - 44428, - 44432, - 44444, - 44445, - 44452, - 44471, - 44480, - 44481, - 44484, - 44488, - 44496, - 44497, - 44499, - 44508, - 44512, - 44516, - 44536, - 44537, - 44540, - 44543, - 44544, - 44545, - 44552, - 44553, - 44555, - 44557, - 44564, - 44592, - 44593, - 44596, - 44599, - 44600, - 44602, - 44608, - 44609, - 44611, - 44613, - 44614, - 44618, - 44620, - 44621, - 44622, - 44624, - 44628, - 44630, - 44636, - 44637, - 44639, - 44640, - 44641, - 44645, - 44648, - 44649, - 44652, - 44656, - 44664, - 53101, - 53102, - 53103, - 53106, - 53107, - 53109, - 53110, - 53111, - 53113, - 53114, - 53115, - 53116, - 53117, - 53118, - 53119, - 53121, - 53122, - 53123, - 53124, - 53126, - 53127, - 53128, - 53129, - 53130, - 53131, - 53133, - 53134, - 53135, - 53136, - 53137, - 53138, - 53139, - 53140, - 53141, - 53142, - 53143, - 53144, - 53145, - 53146, - 53147, - 53148, - 53149, - 53150, - 53151, - 53152, - 53154, - 53155, - 53156, - 53157, - 53158, - 53159, - 53161, - 53162, - 53163, - 53164, - 53165, - 53166, - 53167, - 53169, - 53170, - 53171, - 53172, - 53173, - 53174, - 53175, - 53176, - 53177, - 53178, - 53179, - 53180, - 53181, - 53182, - 53183, - 53184, - 53185, - 53186, - 53187, - 53189, - 53190, - 53191, - 53192, - 53193, - 53194, - 53195, - 44665, - 44667, - 44668, - 44669, - 44676, - 44677, - 44684, - 44732, - 44733, - 44734, - 44736, - 44740, - 44748, - 44749, - 44751, - 44752, - 44753, - 44760, - 44761, - 44764, - 44776, - 44779, - 44781, - 44788, - 44792, - 44796, - 44807, - 44808, - 44813, - 44816, - 44844, - 44845, - 44848, - 44850, - 44852, - 44860, - 44861, - 44863, - 44865, - 44866, - 44867, - 44872, - 44873, - 44880, - 44892, - 44893, - 44900, - 44901, - 44921, - 44928, - 44932, - 44936, - 44944, - 44945, - 44949, - 44956, - 44984, - 44985, - 44988, - 44992, - 44999, - 45000, - 45001, - 45003, - 45005, - 45006, - 45012, - 45020, - 45032, - 45033, - 45040, - 45041, - 45044, - 45048, - 45056, - 45057, - 45060, - 45068, - 45072, - 45076, - 45084, - 45085, - 45096, - 45124, - 45125, - 45128, - 45130, - 45132, - 45134, - 45139, - 45140, - 45141, - 45143, - 45145, - 53196, - 53197, - 53198, - 53199, - 53200, - 53201, - 53202, - 53203, - 53204, - 53205, - 53206, - 53207, - 53208, - 53209, - 53210, - 53211, - 53212, - 53213, - 53214, - 53215, - 53218, - 53219, - 53221, - 53222, - 53223, - 53225, - 53226, - 53227, - 53228, - 53229, - 53230, - 53231, - 53234, - 53236, - 53238, - 53239, - 53240, - 53241, - 53242, - 53243, - 53245, - 53246, - 53247, - 53249, - 53250, - 53251, - 53253, - 53254, - 53255, - 53256, - 53257, - 53258, - 53259, - 53260, - 53261, - 53262, - 53263, - 53264, - 53266, - 53267, - 53268, - 53269, - 53270, - 53271, - 53273, - 53274, - 53275, - 53276, - 53277, - 53278, - 53279, - 53280, - 53281, - 53282, - 53283, - 53284, - 53285, - 53286, - 53287, - 53288, - 53289, - 53290, - 53291, - 53292, - 45149, - 45180, - 45181, - 45184, - 45188, - 45196, - 45197, - 45199, - 45201, - 45208, - 45209, - 45210, - 45212, - 45215, - 45216, - 45217, - 45218, - 45224, - 45225, - 45227, - 45228, - 45229, - 45230, - 45231, - 45233, - 45235, - 45236, - 45237, - 45240, - 45244, - 45252, - 45253, - 45255, - 45256, - 45257, - 45264, - 45265, - 45268, - 45272, - 45280, - 45285, - 45320, - 45321, - 45323, - 45324, - 45328, - 45330, - 45331, - 45336, - 45337, - 45339, - 45340, - 45341, - 45347, - 45348, - 45349, - 45352, - 45356, - 45364, - 45365, - 45367, - 45368, - 45369, - 45376, - 45377, - 45380, - 45384, - 45392, - 45393, - 45396, - 45397, - 45400, - 45404, - 45408, - 45432, - 45433, - 45436, - 45440, - 45442, - 45448, - 45449, - 45451, - 45453, - 45458, - 45459, - 45460, - 45464, - 45468, - 45480, - 45516, - 45520, - 45524, - 45532, - 45533, - 53294, - 53295, - 53296, - 53297, - 53298, - 53299, - 53302, - 53303, - 53305, - 53306, - 53307, - 53309, - 53310, - 53311, - 53312, - 53313, - 53314, - 53315, - 53318, - 53320, - 53322, - 53323, - 53324, - 53325, - 53326, - 53327, - 53329, - 53330, - 53331, - 53333, - 53334, - 53335, - 53337, - 53338, - 53339, - 53340, - 53341, - 53342, - 53343, - 53345, - 53346, - 53347, - 53348, - 53349, - 53350, - 53351, - 53352, - 53353, - 53354, - 53355, - 53358, - 53359, - 53361, - 53362, - 53363, - 53365, - 53366, - 53367, - 53368, - 53369, - 53370, - 53371, - 53374, - 53375, - 53376, - 53378, - 53379, - 53380, - 53381, - 53382, - 53383, - 53384, - 53385, - 53386, - 53387, - 53388, - 53389, - 53390, - 53391, - 53392, - 53393, - 53394, - 53395, - 53396, - 45535, - 45544, - 45545, - 45548, - 45552, - 45561, - 45563, - 45565, - 45572, - 45573, - 45576, - 45579, - 45580, - 45588, - 45589, - 45591, - 45593, - 45600, - 45620, - 45628, - 45656, - 45660, - 45664, - 45672, - 45673, - 45684, - 45685, - 45692, - 45700, - 45701, - 45705, - 45712, - 45713, - 45716, - 45720, - 45721, - 45722, - 45728, - 45729, - 45731, - 45733, - 45734, - 45738, - 45740, - 45744, - 45748, - 45768, - 45769, - 45772, - 45776, - 45778, - 45784, - 45785, - 45787, - 45789, - 45794, - 45796, - 45797, - 45798, - 45800, - 45803, - 45804, - 45805, - 45806, - 45807, - 45811, - 45812, - 45813, - 45815, - 45816, - 45817, - 45818, - 45819, - 45823, - 45824, - 45825, - 45828, - 45832, - 45840, - 45841, - 45843, - 45844, - 45845, - 45852, - 45908, - 45909, - 45910, - 45912, - 45915, - 45916, - 45918, - 45919, - 45924, - 45925, - 53397, - 53398, - 53399, - 53400, - 53401, - 53402, - 53403, - 53404, - 53405, - 53406, - 53407, - 53408, - 53409, - 53410, - 53411, - 53414, - 53415, - 53417, - 53418, - 53419, - 53421, - 53422, - 53423, - 53424, - 53425, - 53426, - 53427, - 53430, - 53432, - 53434, - 53435, - 53436, - 53437, - 53438, - 53439, - 53442, - 53443, - 53445, - 53446, - 53447, - 53450, - 53451, - 53452, - 53453, - 53454, - 53455, - 53458, - 53462, - 53463, - 53464, - 53465, - 53466, - 53467, - 53470, - 53471, - 53473, - 53474, - 53475, - 53477, - 53478, - 53479, - 53480, - 53481, - 53482, - 53483, - 53486, - 53490, - 53491, - 53492, - 53493, - 53494, - 53495, - 53497, - 53498, - 53499, - 53500, - 53501, - 53502, - 53503, - 53504, - 53505, - 53506, - 53507, - 53508, - 45927, - 45929, - 45931, - 45934, - 45936, - 45937, - 45940, - 45944, - 45952, - 45953, - 45955, - 45956, - 45957, - 45964, - 45968, - 45972, - 45984, - 45985, - 45992, - 45996, - 46020, - 46021, - 46024, - 46027, - 46028, - 46030, - 46032, - 46036, - 46037, - 46039, - 46041, - 46043, - 46045, - 46048, - 46052, - 46056, - 46076, - 46096, - 46104, - 46108, - 46112, - 46120, - 46121, - 46123, - 46132, - 46160, - 46161, - 46164, - 46168, - 46176, - 46177, - 46179, - 46181, - 46188, - 46208, - 46216, - 46237, - 46244, - 46248, - 46252, - 46261, - 46263, - 46265, - 46272, - 46276, - 46280, - 46288, - 46293, - 46300, - 46301, - 46304, - 46307, - 46308, - 46310, - 46316, - 46317, - 46319, - 46321, - 46328, - 46356, - 46357, - 46360, - 46363, - 46364, - 46372, - 46373, - 46375, - 46376, - 46377, - 46378, - 46384, - 46385, - 46388, - 46392, - 53509, - 53510, - 53511, - 53512, - 53513, - 53514, - 53515, - 53516, - 53518, - 53519, - 53520, - 53521, - 53522, - 53523, - 53524, - 53525, - 53526, - 53527, - 53528, - 53529, - 53530, - 53531, - 53532, - 53533, - 53534, - 53535, - 53536, - 53537, - 53538, - 53539, - 53540, - 53541, - 53542, - 53543, - 53544, - 53545, - 53546, - 53547, - 53548, - 53549, - 53550, - 53551, - 53554, - 53555, - 53557, - 53558, - 53559, - 53561, - 53563, - 53564, - 53565, - 53566, - 53567, - 53570, - 53574, - 53575, - 53576, - 53577, - 53578, - 53579, - 53582, - 53583, - 53585, - 53586, - 53587, - 53589, - 53590, - 53591, - 53592, - 53593, - 53594, - 53595, - 53598, - 53600, - 53602, - 53603, - 53604, - 53605, - 53606, - 53607, - 53609, - 53610, - 53611, - 53613, - 46400, - 46401, - 46403, - 46404, - 46405, - 46411, - 46412, - 46413, - 46416, - 46420, - 46428, - 46429, - 46431, - 46432, - 46433, - 46496, - 46497, - 46500, - 46504, - 46506, - 46507, - 46512, - 46513, - 46515, - 46516, - 46517, - 46523, - 46524, - 46525, - 46528, - 46532, - 46540, - 46541, - 46543, - 46544, - 46545, - 46552, - 46572, - 46608, - 46609, - 46612, - 46616, - 46629, - 46636, - 46644, - 46664, - 46692, - 46696, - 46748, - 46749, - 46752, - 46756, - 46763, - 46764, - 46769, - 46804, - 46832, - 46836, - 46840, - 46848, - 46849, - 46853, - 46888, - 46889, - 46892, - 46895, - 46896, - 46904, - 46905, - 46907, - 46916, - 46920, - 46924, - 46932, - 46933, - 46944, - 46948, - 46952, - 46960, - 46961, - 46963, - 46965, - 46972, - 46973, - 46976, - 46980, - 46988, - 46989, - 46991, - 46992, - 46993, - 46994, - 46998, - 46999, - 53614, - 53615, - 53616, - 53617, - 53618, - 53619, - 53620, - 53621, - 53622, - 53623, - 53624, - 53625, - 53626, - 53627, - 53629, - 53630, - 53631, - 53632, - 53633, - 53634, - 53635, - 53637, - 53638, - 53639, - 53641, - 53642, - 53643, - 53644, - 53645, - 53646, - 53647, - 53648, - 53649, - 53650, - 53651, - 53652, - 53653, - 53654, - 53655, - 53656, - 53657, - 53658, - 53659, - 53660, - 53661, - 53662, - 53663, - 53666, - 53667, - 53669, - 53670, - 53671, - 53673, - 53674, - 53675, - 53676, - 53677, - 53678, - 53679, - 53682, - 53684, - 53686, - 53687, - 53688, - 53689, - 53691, - 53693, - 53694, - 53695, - 53697, - 53698, - 53699, - 53700, - 53701, - 53702, - 53703, - 53704, - 53705, - 53706, - 53707, - 53708, - 53709, - 53710, - 53711, - 47000, - 47001, - 47004, - 47008, - 47016, - 47017, - 47019, - 47020, - 47021, - 47028, - 47029, - 47032, - 47047, - 47049, - 47084, - 47085, - 47088, - 47092, - 47100, - 47101, - 47103, - 47104, - 47105, - 47111, - 47112, - 47113, - 47116, - 47120, - 47128, - 47129, - 47131, - 47133, - 47140, - 47141, - 47144, - 47148, - 47156, - 47157, - 47159, - 47160, - 47161, - 47168, - 47172, - 47185, - 47187, - 47196, - 47197, - 47200, - 47204, - 47212, - 47213, - 47215, - 47217, - 47224, - 47228, - 47245, - 47272, - 47280, - 47284, - 47288, - 47296, - 47297, - 47299, - 47301, - 47308, - 47312, - 47316, - 47325, - 47327, - 47329, - 47336, - 47337, - 47340, - 47344, - 47352, - 47353, - 47355, - 47357, - 47364, - 47384, - 47392, - 47420, - 47421, - 47424, - 47428, - 47436, - 47439, - 47441, - 47448, - 47449, - 47452, - 47456, - 47464, - 47465, - 53712, - 53713, - 53714, - 53715, - 53716, - 53717, - 53718, - 53719, - 53721, - 53722, - 53723, - 53724, - 53725, - 53726, - 53727, - 53728, - 53729, - 53730, - 53731, - 53732, - 53733, - 53734, - 53735, - 53736, - 53737, - 53738, - 53739, - 53740, - 53741, - 53742, - 53743, - 53744, - 53745, - 53746, - 53747, - 53749, - 53750, - 53751, - 53753, - 53754, - 53755, - 53756, - 53757, - 53758, - 53759, - 53760, - 53761, - 53762, - 53763, - 53764, - 53765, - 53766, - 53768, - 53770, - 53771, - 53772, - 53773, - 53774, - 53775, - 53777, - 53778, - 53779, - 53780, - 53781, - 53782, - 53783, - 53784, - 53785, - 53786, - 53787, - 53788, - 53789, - 53790, - 53791, - 53792, - 53793, - 53794, - 53795, - 53796, - 53797, - 53798, - 53799, - 53800, - 53801, - 47467, - 47469, - 47476, - 47477, - 47480, - 47484, - 47492, - 47493, - 47495, - 47497, - 47498, - 47501, - 47502, - 47532, - 47533, - 47536, - 47540, - 47548, - 47549, - 47551, - 47553, - 47560, - 47561, - 47564, - 47566, - 47567, - 47568, - 47569, - 47570, - 47576, - 47577, - 47579, - 47581, - 47582, - 47585, - 47587, - 47588, - 47589, - 47592, - 47596, - 47604, - 47605, - 47607, - 47608, - 47609, - 47610, - 47616, - 47617, - 47624, - 47637, - 47672, - 47673, - 47676, - 47680, - 47682, - 47688, - 47689, - 47691, - 47693, - 47694, - 47699, - 47700, - 47701, - 47704, - 47708, - 47716, - 47717, - 47719, - 47720, - 47721, - 47728, - 47729, - 47732, - 47736, - 47747, - 47748, - 47749, - 47751, - 47756, - 47784, - 47785, - 47787, - 47788, - 47792, - 47794, - 47800, - 47801, - 47803, - 47805, - 47812, - 47816, - 47832, - 47833, - 47868, - 53802, - 53803, - 53806, - 53807, - 53809, - 53810, - 53811, - 53813, - 53814, - 53815, - 53816, - 53817, - 53818, - 53819, - 53822, - 53824, - 53826, - 53827, - 53828, - 53829, - 53830, - 53831, - 53833, - 53834, - 53835, - 53836, - 53837, - 53838, - 53839, - 53840, - 53841, - 53842, - 53843, - 53844, - 53845, - 53846, - 53847, - 53848, - 53849, - 53850, - 53851, - 53853, - 53854, - 53855, - 53856, - 53857, - 53858, - 53859, - 53861, - 53862, - 53863, - 53864, - 53865, - 53866, - 53867, - 53868, - 53869, - 53870, - 53871, - 53872, - 53873, - 53874, - 53875, - 53876, - 53877, - 53878, - 53879, - 53880, - 53881, - 53882, - 53883, - 53884, - 53885, - 53886, - 53887, - 53890, - 53891, - 53893, - 53894, - 53895, - 53897, - 53898, - 53899, - 53900, - 47872, - 47876, - 47885, - 47887, - 47889, - 47896, - 47900, - 47904, - 47913, - 47915, - 47924, - 47925, - 47926, - 47928, - 47931, - 47932, - 47933, - 47934, - 47940, - 47941, - 47943, - 47945, - 47949, - 47951, - 47952, - 47956, - 47960, - 47969, - 47971, - 47980, - 48008, - 48012, - 48016, - 48036, - 48040, - 48044, - 48052, - 48055, - 48064, - 48068, - 48072, - 48080, - 48083, - 48120, - 48121, - 48124, - 48127, - 48128, - 48130, - 48136, - 48137, - 48139, - 48140, - 48141, - 48143, - 48145, - 48148, - 48149, - 48150, - 48151, - 48152, - 48155, - 48156, - 48157, - 48158, - 48159, - 48164, - 48165, - 48167, - 48169, - 48173, - 48176, - 48177, - 48180, - 48184, - 48192, - 48193, - 48195, - 48196, - 48197, - 48201, - 48204, - 48205, - 48208, - 48221, - 48260, - 48261, - 48264, - 48267, - 48268, - 48270, - 48276, - 48277, - 48279, - 53901, - 53902, - 53903, - 53906, - 53907, - 53908, - 53910, - 53911, - 53912, - 53913, - 53914, - 53915, - 53917, - 53918, - 53919, - 53921, - 53922, - 53923, - 53925, - 53926, - 53927, - 53928, - 53929, - 53930, - 53931, - 53933, - 53934, - 53935, - 53936, - 53938, - 53939, - 53940, - 53941, - 53942, - 53943, - 53946, - 53947, - 53949, - 53950, - 53953, - 53955, - 53956, - 53957, - 53958, - 53959, - 53962, - 53964, - 53965, - 53966, - 53967, - 53968, - 53969, - 53970, - 53971, - 53973, - 53974, - 53975, - 53977, - 53978, - 53979, - 53981, - 53982, - 53983, - 53984, - 53985, - 53986, - 53987, - 53990, - 53991, - 53992, - 53993, - 53994, - 53995, - 53996, - 53997, - 53998, - 53999, - 54002, - 54003, - 54005, - 54006, - 54007, - 54009, - 54010, - 48281, - 48282, - 48288, - 48289, - 48292, - 48295, - 48296, - 48304, - 48305, - 48307, - 48308, - 48309, - 48316, - 48317, - 48320, - 48324, - 48333, - 48335, - 48336, - 48337, - 48341, - 48344, - 48348, - 48372, - 48373, - 48374, - 48376, - 48380, - 48388, - 48389, - 48391, - 48393, - 48400, - 48404, - 48420, - 48428, - 48448, - 48456, - 48457, - 48460, - 48464, - 48472, - 48473, - 48484, - 48488, - 48512, - 48513, - 48516, - 48519, - 48520, - 48521, - 48522, - 48528, - 48529, - 48531, - 48533, - 48537, - 48538, - 48540, - 48548, - 48560, - 48568, - 48596, - 48597, - 48600, - 48604, - 48617, - 48624, - 48628, - 48632, - 48640, - 48643, - 48645, - 48652, - 48653, - 48656, - 48660, - 48668, - 48669, - 48671, - 48708, - 48709, - 48712, - 48716, - 48718, - 48724, - 48725, - 48727, - 48729, - 48730, - 48731, - 48736, - 48737, - 48740, - 54011, - 54012, - 54013, - 54014, - 54015, - 54018, - 54020, - 54022, - 54023, - 54024, - 54025, - 54026, - 54027, - 54031, - 54033, - 54034, - 54035, - 54037, - 54039, - 54040, - 54041, - 54042, - 54043, - 54046, - 54050, - 54051, - 54052, - 54054, - 54055, - 54058, - 54059, - 54061, - 54062, - 54063, - 54065, - 54066, - 54067, - 54068, - 54069, - 54070, - 54071, - 54074, - 54078, - 54079, - 54080, - 54081, - 54082, - 54083, - 54086, - 54087, - 54088, - 54089, - 54090, - 54091, - 54092, - 54093, - 54094, - 54095, - 54096, - 54097, - 54098, - 54099, - 54100, - 54101, - 54102, - 54103, - 54104, - 54105, - 54106, - 54107, - 54108, - 54109, - 54110, - 54111, - 54112, - 54113, - 54114, - 54115, - 54116, - 54117, - 54118, - 54119, - 54120, - 54121, - 48744, - 48746, - 48752, - 48753, - 48755, - 48756, - 48757, - 48763, - 48764, - 48765, - 48768, - 48772, - 48780, - 48781, - 48783, - 48784, - 48785, - 48792, - 48793, - 48808, - 48848, - 48849, - 48852, - 48855, - 48856, - 48864, - 48867, - 48868, - 48869, - 48876, - 48897, - 48904, - 48905, - 48920, - 48921, - 48923, - 48924, - 48925, - 48960, - 48961, - 48964, - 48968, - 48976, - 48977, - 48981, - 49044, - 49072, - 49093, - 49100, - 49101, - 49104, - 49108, - 49116, - 49119, - 49121, - 49212, - 49233, - 49240, - 49244, - 49248, - 49256, - 49257, - 49296, - 49297, - 49300, - 49304, - 49312, - 49313, - 49315, - 49317, - 49324, - 49325, - 49327, - 49328, - 49331, - 49332, - 49333, - 49334, - 49340, - 49341, - 49343, - 49344, - 49345, - 49349, - 49352, - 49353, - 49356, - 49360, - 49368, - 49369, - 49371, - 49372, - 49373, - 49380, - 54122, - 54123, - 54124, - 54125, - 54126, - 54127, - 54128, - 54129, - 54130, - 54131, - 54132, - 54133, - 54134, - 54135, - 54136, - 54137, - 54138, - 54139, - 54142, - 54143, - 54145, - 54146, - 54147, - 54149, - 54150, - 54151, - 54152, - 54153, - 54154, - 54155, - 54158, - 54162, - 54163, - 54164, - 54165, - 54166, - 54167, - 54170, - 54171, - 54173, - 54174, - 54175, - 54177, - 54178, - 54179, - 54180, - 54181, - 54182, - 54183, - 54186, - 54188, - 54190, - 54191, - 54192, - 54193, - 54194, - 54195, - 54197, - 54198, - 54199, - 54201, - 54202, - 54203, - 54205, - 54206, - 54207, - 54208, - 54209, - 54210, - 54211, - 54214, - 54215, - 54218, - 54219, - 54220, - 54221, - 54222, - 54223, - 54225, - 54226, - 54227, - 54228, - 54229, - 54230, - 49381, - 49384, - 49388, - 49396, - 49397, - 49399, - 49401, - 49408, - 49412, - 49416, - 49424, - 49429, - 49436, - 49437, - 49438, - 49439, - 49440, - 49443, - 49444, - 49446, - 49447, - 49452, - 49453, - 49455, - 49456, - 49457, - 49462, - 49464, - 49465, - 49468, - 49472, - 49480, - 49481, - 49483, - 49484, - 49485, - 49492, - 49493, - 49496, - 49500, - 49508, - 49509, - 49511, - 49512, - 49513, - 49520, - 49524, - 49528, - 49541, - 49548, - 49549, - 49550, - 49552, - 49556, - 49558, - 49564, - 49565, - 49567, - 49569, - 49573, - 49576, - 49577, - 49580, - 49584, - 49597, - 49604, - 49608, - 49612, - 49620, - 49623, - 49624, - 49632, - 49636, - 49640, - 49648, - 49649, - 49651, - 49660, - 49661, - 49664, - 49668, - 49676, - 49677, - 49679, - 49681, - 49688, - 49689, - 49692, - 49695, - 49696, - 49704, - 49705, - 49707, - 49709, - 54231, - 54233, - 54234, - 54235, - 54236, - 54237, - 54238, - 54239, - 54240, - 54242, - 54244, - 54245, - 54246, - 54247, - 54248, - 54249, - 54250, - 54251, - 54254, - 54255, - 54257, - 54258, - 54259, - 54261, - 54262, - 54263, - 54264, - 54265, - 54266, - 54267, - 54270, - 54272, - 54274, - 54275, - 54276, - 54277, - 54278, - 54279, - 54281, - 54282, - 54283, - 54284, - 54285, - 54286, - 54287, - 54288, - 54289, - 54290, - 54291, - 54292, - 54293, - 54294, - 54295, - 54296, - 54297, - 54298, - 54299, - 54300, - 54302, - 54303, - 54304, - 54305, - 54306, - 54307, - 54308, - 54309, - 54310, - 54311, - 54312, - 54313, - 54314, - 54315, - 54316, - 54317, - 54318, - 54319, - 54320, - 54321, - 54322, - 54323, - 54324, - 54325, - 54326, - 54327, - 49711, - 49713, - 49714, - 49716, - 49736, - 49744, - 49745, - 49748, - 49752, - 49760, - 49765, - 49772, - 49773, - 49776, - 49780, - 49788, - 49789, - 49791, - 49793, - 49800, - 49801, - 49808, - 49816, - 49819, - 49821, - 49828, - 49829, - 49832, - 49836, - 49837, - 49844, - 49845, - 49847, - 49849, - 49884, - 49885, - 49888, - 49891, - 49892, - 49899, - 49900, - 49901, - 49903, - 49905, - 49910, - 49912, - 49913, - 49915, - 49916, - 49920, - 49928, - 49929, - 49932, - 49933, - 49939, - 49940, - 49941, - 49944, - 49948, - 49956, - 49957, - 49960, - 49961, - 49989, - 50024, - 50025, - 50028, - 50032, - 50034, - 50040, - 50041, - 50044, - 50045, - 50052, - 50056, - 50060, - 50112, - 50136, - 50137, - 50140, - 50143, - 50144, - 50146, - 50152, - 50153, - 50157, - 50164, - 50165, - 50168, - 50184, - 50192, - 50212, - 50220, - 50224, - 54328, - 54329, - 54330, - 54331, - 54332, - 54333, - 54334, - 54335, - 54337, - 54338, - 54339, - 54341, - 54342, - 54343, - 54344, - 54345, - 54346, - 54347, - 54348, - 54349, - 54350, - 54351, - 54352, - 54353, - 54354, - 54355, - 54356, - 54357, - 54358, - 54359, - 54360, - 54361, - 54362, - 54363, - 54365, - 54366, - 54367, - 54369, - 54370, - 54371, - 54373, - 54374, - 54375, - 54376, - 54377, - 54378, - 54379, - 54380, - 54382, - 54384, - 54385, - 54386, - 54387, - 54388, - 54389, - 54390, - 54391, - 54394, - 54395, - 54397, - 54398, - 54401, - 54403, - 54404, - 54405, - 54406, - 54407, - 54410, - 54412, - 54414, - 54415, - 54416, - 54417, - 54418, - 54419, - 54421, - 54422, - 54423, - 54424, - 54425, - 54426, - 54427, - 54428, - 54429, - 50228, - 50236, - 50237, - 50248, - 50276, - 50277, - 50280, - 50284, - 50292, - 50293, - 50297, - 50304, - 50324, - 50332, - 50360, - 50364, - 50409, - 50416, - 50417, - 50420, - 50424, - 50426, - 50431, - 50432, - 50433, - 50444, - 50448, - 50452, - 50460, - 50472, - 50473, - 50476, - 50480, - 50488, - 50489, - 50491, - 50493, - 50500, - 50501, - 50504, - 50505, - 50506, - 50508, - 50509, - 50510, - 50515, - 50516, - 50517, - 50519, - 50520, - 50521, - 50525, - 50526, - 50528, - 50529, - 50532, - 50536, - 50544, - 50545, - 50547, - 50548, - 50549, - 50556, - 50557, - 50560, - 50564, - 50567, - 50572, - 50573, - 50575, - 50577, - 50581, - 50583, - 50584, - 50588, - 50592, - 50601, - 50612, - 50613, - 50616, - 50617, - 50619, - 50620, - 50621, - 50622, - 50628, - 50629, - 50630, - 50631, - 50632, - 50633, - 50634, - 50636, - 50638, - 54430, - 54431, - 54432, - 54433, - 54434, - 54435, - 54436, - 54437, - 54438, - 54439, - 54440, - 54442, - 54443, - 54444, - 54445, - 54446, - 54447, - 54448, - 54449, - 54450, - 54451, - 54452, - 54453, - 54454, - 54455, - 54456, - 54457, - 54458, - 54459, - 54460, - 54461, - 54462, - 54463, - 54464, - 54465, - 54466, - 54467, - 54468, - 54469, - 54470, - 54471, - 54472, - 54473, - 54474, - 54475, - 54477, - 54478, - 54479, - 54481, - 54482, - 54483, - 54485, - 54486, - 54487, - 54488, - 54489, - 54490, - 54491, - 54493, - 54494, - 54496, - 54497, - 54498, - 54499, - 54500, - 54501, - 54502, - 54503, - 54505, - 54506, - 54507, - 54509, - 54510, - 54511, - 54513, - 54514, - 54515, - 54516, - 54517, - 54518, - 54519, - 54521, - 54522, - 54524, - 50640, - 50641, - 50644, - 50648, - 50656, - 50657, - 50659, - 50661, - 50668, - 50669, - 50670, - 50672, - 50676, - 50678, - 50679, - 50684, - 50685, - 50686, - 50687, - 50688, - 50689, - 50693, - 50694, - 50695, - 50696, - 50700, - 50704, - 50712, - 50713, - 50715, - 50716, - 50724, - 50725, - 50728, - 50732, - 50733, - 50734, - 50736, - 50739, - 50740, - 50741, - 50743, - 50745, - 50747, - 50752, - 50753, - 50756, - 50760, - 50768, - 50769, - 50771, - 50772, - 50773, - 50780, - 50781, - 50784, - 50796, - 50799, - 50801, - 50808, - 50809, - 50812, - 50816, - 50824, - 50825, - 50827, - 50829, - 50836, - 50837, - 50840, - 50844, - 50852, - 50853, - 50855, - 50857, - 50864, - 50865, - 50868, - 50872, - 50873, - 50874, - 50880, - 50881, - 50883, - 50885, - 50892, - 50893, - 50896, - 50900, - 50908, - 50909, - 50912, - 50913, - 50920, - 54526, - 54527, - 54528, - 54529, - 54530, - 54531, - 54533, - 54534, - 54535, - 54537, - 54538, - 54539, - 54541, - 54542, - 54543, - 54544, - 54545, - 54546, - 54547, - 54550, - 54552, - 54553, - 54554, - 54555, - 54556, - 54557, - 54558, - 54559, - 54560, - 54561, - 54562, - 54563, - 54564, - 54565, - 54566, - 54567, - 54568, - 54569, - 54570, - 54571, - 54572, - 54573, - 54574, - 54575, - 54576, - 54577, - 54578, - 54579, - 54580, - 54581, - 54582, - 54583, - 54584, - 54585, - 54586, - 54587, - 54590, - 54591, - 54593, - 54594, - 54595, - 54597, - 54598, - 54599, - 54600, - 54601, - 54602, - 54603, - 54606, - 54608, - 54610, - 54611, - 54612, - 54613, - 54614, - 54615, - 54618, - 54619, - 54621, - 54622, - 54623, - 54625, - 54626, - 54627, - 50921, - 50924, - 50928, - 50936, - 50937, - 50941, - 50948, - 50949, - 50952, - 50956, - 50964, - 50965, - 50967, - 50969, - 50976, - 50977, - 50980, - 50984, - 50992, - 50993, - 50995, - 50997, - 50999, - 51004, - 51005, - 51008, - 51012, - 51018, - 51020, - 51021, - 51023, - 51025, - 51026, - 51027, - 51028, - 51029, - 51030, - 51031, - 51032, - 51036, - 51040, - 51048, - 51051, - 51060, - 51061, - 51064, - 51068, - 51069, - 51070, - 51075, - 51076, - 51077, - 51079, - 51080, - 51081, - 51082, - 51086, - 51088, - 51089, - 51092, - 51094, - 51095, - 51096, - 51098, - 51104, - 51105, - 51107, - 51108, - 51109, - 51110, - 51116, - 51117, - 51120, - 51124, - 51132, - 51133, - 51135, - 51136, - 51137, - 51144, - 51145, - 51148, - 51150, - 51152, - 51160, - 51165, - 51172, - 51176, - 51180, - 51200, - 51201, - 51204, - 51208, - 51210, - 54628, - 54630, - 54631, - 54634, - 54636, - 54638, - 54639, - 54640, - 54641, - 54642, - 54643, - 54646, - 54647, - 54649, - 54650, - 54651, - 54653, - 54654, - 54655, - 54656, - 54657, - 54658, - 54659, - 54662, - 54666, - 54667, - 54668, - 54669, - 54670, - 54671, - 54673, - 54674, - 54675, - 54676, - 54677, - 54678, - 54679, - 54680, - 54681, - 54682, - 54683, - 54684, - 54685, - 54686, - 54687, - 54688, - 54689, - 54690, - 54691, - 54692, - 54694, - 54695, - 54696, - 54697, - 54698, - 54699, - 54700, - 54701, - 54702, - 54703, - 54704, - 54705, - 54706, - 54707, - 54708, - 54709, - 54710, - 54711, - 54712, - 54713, - 54714, - 54715, - 54716, - 54717, - 54718, - 54719, - 54720, - 54721, - 54722, - 54723, - 54724, - 54725, - 54726, - 54727, - 51216, - 51217, - 51219, - 51221, - 51222, - 51228, - 51229, - 51232, - 51236, - 51244, - 51245, - 51247, - 51249, - 51256, - 51260, - 51264, - 51272, - 51273, - 51276, - 51277, - 51284, - 51312, - 51313, - 51316, - 51320, - 51322, - 51328, - 51329, - 51331, - 51333, - 51334, - 51335, - 51339, - 51340, - 51341, - 51348, - 51357, - 51359, - 51361, - 51368, - 51388, - 51389, - 51396, - 51400, - 51404, - 51412, - 51413, - 51415, - 51417, - 51424, - 51425, - 51428, - 51445, - 51452, - 51453, - 51456, - 51460, - 51461, - 51462, - 51468, - 51469, - 51471, - 51473, - 51480, - 51500, - 51508, - 51536, - 51537, - 51540, - 51544, - 51552, - 51553, - 51555, - 51564, - 51568, - 51572, - 51580, - 51592, - 51593, - 51596, - 51600, - 51608, - 51609, - 51611, - 51613, - 51648, - 51649, - 51652, - 51655, - 51656, - 51658, - 51664, - 51665, - 51667, - 54730, - 54731, - 54733, - 54734, - 54735, - 54737, - 54739, - 54740, - 54741, - 54742, - 54743, - 54746, - 54748, - 54750, - 54751, - 54752, - 54753, - 54754, - 54755, - 54758, - 54759, - 54761, - 54762, - 54763, - 54765, - 54766, - 54767, - 54768, - 54769, - 54770, - 54771, - 54774, - 54776, - 54778, - 54779, - 54780, - 54781, - 54782, - 54783, - 54786, - 54787, - 54789, - 54790, - 54791, - 54793, - 54794, - 54795, - 54796, - 54797, - 54798, - 54799, - 54802, - 54806, - 54807, - 54808, - 54809, - 54810, - 54811, - 54813, - 54814, - 54815, - 54817, - 54818, - 54819, - 54821, - 54822, - 54823, - 54824, - 54825, - 54826, - 54827, - 54828, - 54830, - 54831, - 54832, - 54833, - 54834, - 54835, - 54836, - 54837, - 54838, - 54839, - 54842, - 54843, - 51669, - 51670, - 51673, - 51674, - 51676, - 51677, - 51680, - 51682, - 51684, - 51687, - 51692, - 51693, - 51695, - 51696, - 51697, - 51704, - 51705, - 51708, - 51712, - 51720, - 51721, - 51723, - 51724, - 51725, - 51732, - 51736, - 51753, - 51788, - 51789, - 51792, - 51796, - 51804, - 51805, - 51807, - 51808, - 51809, - 51816, - 51837, - 51844, - 51864, - 51900, - 51901, - 51904, - 51908, - 51916, - 51917, - 51919, - 51921, - 51923, - 51928, - 51929, - 51936, - 51948, - 51956, - 51976, - 51984, - 51988, - 51992, - 52000, - 52001, - 52033, - 52040, - 52041, - 52044, - 52048, - 52056, - 52057, - 52061, - 52068, - 52088, - 52089, - 52124, - 52152, - 52180, - 52196, - 52199, - 52201, - 52236, - 52237, - 52240, - 52244, - 52252, - 52253, - 52257, - 52258, - 52263, - 52264, - 52265, - 52268, - 52270, - 52272, - 52280, - 52281, - 52283, - 54845, - 54846, - 54847, - 54849, - 54850, - 54851, - 54852, - 54854, - 54855, - 54858, - 54860, - 54862, - 54863, - 54864, - 54866, - 54867, - 54870, - 54871, - 54873, - 54874, - 54875, - 54877, - 54878, - 54879, - 54880, - 54881, - 54882, - 54883, - 54884, - 54885, - 54886, - 54888, - 54890, - 54891, - 54892, - 54893, - 54894, - 54895, - 54898, - 54899, - 54901, - 54902, - 54903, - 54904, - 54905, - 54906, - 54907, - 54908, - 54909, - 54910, - 54911, - 54912, - 54913, - 54914, - 54916, - 54918, - 54919, - 54920, - 54921, - 54922, - 54923, - 54926, - 54927, - 54929, - 54930, - 54931, - 54933, - 54934, - 54935, - 54936, - 54937, - 54938, - 54939, - 54940, - 54942, - 54944, - 54946, - 54947, - 54948, - 54949, - 54950, - 54951, - 54953, - 54954, - 52284, - 52285, - 52286, - 52292, - 52293, - 52296, - 52300, - 52308, - 52309, - 52311, - 52312, - 52313, - 52320, - 52324, - 52326, - 52328, - 52336, - 52341, - 52376, - 52377, - 52380, - 52384, - 52392, - 52393, - 52395, - 52396, - 52397, - 52404, - 52405, - 52408, - 52412, - 52420, - 52421, - 52423, - 52425, - 52432, - 52436, - 52452, - 52460, - 52464, - 52481, - 52488, - 52489, - 52492, - 52496, - 52504, - 52505, - 52507, - 52509, - 52516, - 52520, - 52524, - 52537, - 52572, - 52576, - 52580, - 52588, - 52589, - 52591, - 52593, - 52600, - 52616, - 52628, - 52629, - 52632, - 52636, - 52644, - 52645, - 52647, - 52649, - 52656, - 52676, - 52684, - 52688, - 52712, - 52716, - 52720, - 52728, - 52729, - 52731, - 52733, - 52740, - 52744, - 52748, - 52756, - 52761, - 52768, - 52769, - 52772, - 52776, - 52784, - 52785, - 52787, - 52789, - 54955, - 54957, - 54958, - 54959, - 54961, - 54962, - 54963, - 54964, - 54965, - 54966, - 54967, - 54968, - 54970, - 54972, - 54973, - 54974, - 54975, - 54976, - 54977, - 54978, - 54979, - 54982, - 54983, - 54985, - 54986, - 54987, - 54989, - 54990, - 54991, - 54992, - 54994, - 54995, - 54997, - 54998, - 55000, - 55002, - 55003, - 55004, - 55005, - 55006, - 55007, - 55009, - 55010, - 55011, - 55013, - 55014, - 55015, - 55017, - 55018, - 55019, - 55020, - 55021, - 55022, - 55023, - 55025, - 55026, - 55027, - 55028, - 55030, - 55031, - 55032, - 55033, - 55034, - 55035, - 55038, - 55039, - 55041, - 55042, - 55043, - 55045, - 55046, - 55047, - 55048, - 55049, - 55050, - 55051, - 55052, - 55053, - 55054, - 55055, - 55056, - 55058, - 55059, - 55060, - 52824, - 52825, - 52828, - 52831, - 52832, - 52833, - 52840, - 52841, - 52843, - 52845, - 52852, - 52853, - 52856, - 52860, - 52868, - 52869, - 52871, - 52873, - 52880, - 52881, - 52884, - 52888, - 52896, - 52897, - 52899, - 52900, - 52901, - 52908, - 52909, - 52929, - 52964, - 52965, - 52968, - 52971, - 52972, - 52980, - 52981, - 52983, - 52984, - 52985, - 52992, - 52993, - 52996, - 53000, - 53008, - 53009, - 53011, - 53013, - 53020, - 53024, - 53028, - 53036, - 53037, - 53039, - 53040, - 53041, - 53048, - 53076, - 53077, - 53080, - 53084, - 53092, - 53093, - 53095, - 53097, - 53104, - 53105, - 53108, - 53112, - 53120, - 53125, - 53132, - 53153, - 53160, - 53168, - 53188, - 53216, - 53217, - 53220, - 53224, - 53232, - 53233, - 53235, - 53237, - 53244, - 53248, - 53252, - 53265, - 53272, - 53293, - 53300, - 53301, - 53304, - 53308, - 55061, - 55062, - 55063, - 55066, - 55067, - 55069, - 55070, - 55071, - 55073, - 55074, - 55075, - 55076, - 55077, - 55078, - 55079, - 55082, - 55084, - 55086, - 55087, - 55088, - 55089, - 55090, - 55091, - 55094, - 55095, - 55097, - 55098, - 55099, - 55101, - 55102, - 55103, - 55104, - 55105, - 55106, - 55107, - 55109, - 55110, - 55112, - 55114, - 55115, - 55116, - 55117, - 55118, - 55119, - 55122, - 55123, - 55125, - 55130, - 55131, - 55132, - 55133, - 55134, - 55135, - 55138, - 55140, - 55142, - 55143, - 55144, - 55146, - 55147, - 55149, - 55150, - 55151, - 55153, - 55154, - 55155, - 55157, - 55158, - 55159, - 55160, - 55161, - 55162, - 55163, - 55166, - 55167, - 55168, - 55170, - 55171, - 55172, - 55173, - 55174, - 55175, - 55178, - 55179, - 53316, - 53317, - 53319, - 53321, - 53328, - 53332, - 53336, - 53344, - 53356, - 53357, - 53360, - 53364, - 53372, - 53373, - 53377, - 53412, - 53413, - 53416, - 53420, - 53428, - 53429, - 53431, - 53433, - 53440, - 53441, - 53444, - 53448, - 53449, - 53456, - 53457, - 53459, - 53460, - 53461, - 53468, - 53469, - 53472, - 53476, - 53484, - 53485, - 53487, - 53488, - 53489, - 53496, - 53517, - 53552, - 53553, - 53556, - 53560, - 53562, - 53568, - 53569, - 53571, - 53572, - 53573, - 53580, - 53581, - 53584, - 53588, - 53596, - 53597, - 53599, - 53601, - 53608, - 53612, - 53628, - 53636, - 53640, - 53664, - 53665, - 53668, - 53672, - 53680, - 53681, - 53683, - 53685, - 53690, - 53692, - 53696, - 53720, - 53748, - 53752, - 53767, - 53769, - 53776, - 53804, - 53805, - 53808, - 53812, - 53820, - 53821, - 53823, - 53825, - 53832, - 53852, - 55181, - 55182, - 55183, - 55185, - 55186, - 55187, - 55188, - 55189, - 55190, - 55191, - 55194, - 55196, - 55198, - 55199, - 55200, - 55201, - 55202, - 55203, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 53860, - 53888, - 53889, - 53892, - 53896, - 53904, - 53905, - 53909, - 53916, - 53920, - 53924, - 53932, - 53937, - 53944, - 53945, - 53948, - 53951, - 53952, - 53954, - 53960, - 53961, - 53963, - 53972, - 53976, - 53980, - 53988, - 53989, - 54000, - 54001, - 54004, - 54008, - 54016, - 54017, - 54019, - 54021, - 54028, - 54029, - 54030, - 54032, - 54036, - 54038, - 54044, - 54045, - 54047, - 54048, - 54049, - 54053, - 54056, - 54057, - 54060, - 54064, - 54072, - 54073, - 54075, - 54076, - 54077, - 54084, - 54085, - 54140, - 54141, - 54144, - 54148, - 54156, - 54157, - 54159, - 54160, - 54161, - 54168, - 54169, - 54172, - 54176, - 54184, - 54185, - 54187, - 54189, - 54196, - 54200, - 54204, - 54212, - 54213, - 54216, - 54217, - 54224, - 54232, - 54241, - 54243, - 54252, - 54253, - 54256, - 54260, - 54268, - 54269, - 54271, - 54273, - 54280, - 54301, - 54336, - 54340, - 54364, - 54368, - 54372, - 54381, - 54383, - 54392, - 54393, - 54396, - 54399, - 54400, - 54402, - 54408, - 54409, - 54411, - 54413, - 54420, - 54441, - 54476, - 54480, - 54484, - 54492, - 54495, - 54504, - 54508, - 54512, - 54520, - 54523, - 54525, - 54532, - 54536, - 54540, - 54548, - 54549, - 54551, - 54588, - 54589, - 54592, - 54596, - 54604, - 54605, - 54607, - 54609, - 54616, - 54617, - 54620, - 54624, - 54629, - 54632, - 54633, - 54635, - 54637, - 54644, - 54645, - 54648, - 54652, - 54660, - 54661, - 54663, - 54664, - 54665, - 54672, - 54693, - 54728, - 54729, - 54732, - 54736, - 54738, - 54744, - 54745, - 54747, - 54749, - 54756, - 54757, - 54760, - 54764, - 54772, - 54773, - 54775, - 54777, - 54784, - 54785, - 54788, - 54792, - 54800, - 54801, - 54803, - 54804, - 54805, - 54812, - 54816, - 54820, - 54829, - 54840, - 54841, - 54844, - 54848, - 54853, - 54856, - 54857, - 54859, - 54861, - 54865, - 54868, - 54869, - 54872, - 54876, - 54887, - 54889, - 54896, - 54897, - 54900, - 54915, - 54917, - 54924, - 54925, - 54928, - 54932, - 54941, - 54943, - 54945, - 54952, - 54956, - 54960, - 54969, - 54971, - 54980, - 54981, - 54984, - 54988, - 54993, - 54996, - 54999, - 55001, - 55008, - 55012, - 55016, - 55024, - 55029, - 55036, - 55037, - 55040, - 55044, - 55057, - 55064, - 55065, - 55068, - 55072, - 55080, - 55081, - 55083, - 55085, - 55092, - 55093, - 55096, - 55100, - 55108, - 55111, - 55113, - 55120, - 55121, - 55124, - 55126, - 55127, - 55128, - 55129, - 55136, - 55137, - 55139, - 55141, - 55145, - 55148, - 55152, - 55156, - 55164, - 55165, - 55169, - 55176, - 55177, - 55180, - 55184, - 55192, - 55193, - 55195, - 55197, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 20285, - 20339, - 20551, - 20729, - 21152, - 21487, - 21621, - 21733, - 22025, - 23233, - 23478, - 26247, - 26550, - 26551, - 26607, - 27468, - 29634, - 30146, - 31292, - 33499, - 33540, - 34903, - 34952, - 35382, - 36040, - 36303, - 36603, - 36838, - 39381, - 21051, - 21364, - 21508, - 24682, - 24932, - 27580, - 29647, - 33050, - 35258, - 35282, - 38307, - 20355, - 21002, - 22718, - 22904, - 23014, - 24178, - 24185, - 25031, - 25536, - 26438, - 26604, - 26751, - 28567, - 30286, - 30475, - 30965, - 31240, - 31487, - 31777, - 32925, - 33390, - 33393, - 35563, - 38291, - 20075, - 21917, - 26359, - 28212, - 30883, - 31469, - 33883, - 35088, - 34638, - 38824, - 21208, - 22350, - 22570, - 23884, - 24863, - 25022, - 25121, - 25954, - 26577, - 27204, - 28187, - 29976, - 30131, - 30435, - 30640, - 32058, - 37039, - 37969, - 37970, - 40853, - 21283, - 23724, - 30002, - 32987, - 37440, - 38296, - 21083, - 22536, - 23004, - 23713, - 23831, - 24247, - 24378, - 24394, - 24951, - 27743, - 30074, - 30086, - 31968, - 32115, - 32177, - 32652, - 33108, - 33313, - 34193, - 35137, - 35611, - 37628, - 38477, - 40007, - 20171, - 20215, - 20491, - 20977, - 22607, - 24887, - 24894, - 24936, - 25913, - 27114, - 28433, - 30117, - 30342, - 30422, - 31623, - 33445, - 33995, - 63744, - 37799, - 38283, - 21888, - 23458, - 22353, - 63745, - 31923, - 32697, - 37301, - 20520, - 21435, - 23621, - 24040, - 25298, - 25454, - 25818, - 25831, - 28192, - 28844, - 31067, - 36317, - 36382, - 63746, - 36989, - 37445, - 37624, - 20094, - 20214, - 20581, - 24062, - 24314, - 24838, - 26967, - 33137, - 34388, - 36423, - 37749, - 39467, - 20062, - 20625, - 26480, - 26688, - 20745, - 21133, - 21138, - 27298, - 30652, - 37392, - 40660, - 21163, - 24623, - 36850, - 20552, - 25001, - 25581, - 25802, - 26684, - 27268, - 28608, - 33160, - 35233, - 38548, - 22533, - 29309, - 29356, - 29956, - 32121, - 32365, - 32937, - 35211, - 35700, - 36963, - 40273, - 25225, - 27770, - 28500, - 32080, - 32570, - 35363, - 20860, - 24906, - 31645, - 35609, - 37463, - 37772, - 20140, - 20435, - 20510, - 20670, - 20742, - 21185, - 21197, - 21375, - 22384, - 22659, - 24218, - 24465, - 24950, - 25004, - 25806, - 25964, - 26223, - 26299, - 26356, - 26775, - 28039, - 28805, - 28913, - 29855, - 29861, - 29898, - 30169, - 30828, - 30956, - 31455, - 31478, - 32069, - 32147, - 32789, - 32831, - 33051, - 33686, - 35686, - 36629, - 36885, - 37857, - 38915, - 38968, - 39514, - 39912, - 20418, - 21843, - 22586, - 22865, - 23395, - 23622, - 24760, - 25106, - 26690, - 26800, - 26856, - 28330, - 30028, - 30328, - 30926, - 31293, - 31995, - 32363, - 32380, - 35336, - 35489, - 35903, - 38542, - 40388, - 21476, - 21481, - 21578, - 21617, - 22266, - 22993, - 23396, - 23611, - 24235, - 25335, - 25911, - 25925, - 25970, - 26272, - 26543, - 27073, - 27837, - 30204, - 30352, - 30590, - 31295, - 32660, - 32771, - 32929, - 33167, - 33510, - 33533, - 33776, - 34241, - 34865, - 34996, - 35493, - 63747, - 36764, - 37678, - 38599, - 39015, - 39640, - 40723, - 21741, - 26011, - 26354, - 26767, - 31296, - 35895, - 40288, - 22256, - 22372, - 23825, - 26118, - 26801, - 26829, - 28414, - 29736, - 34974, - 39908, - 27752, - 63748, - 39592, - 20379, - 20844, - 20849, - 21151, - 23380, - 24037, - 24656, - 24685, - 25329, - 25511, - 25915, - 29657, - 31354, - 34467, - 36002, - 38799, - 20018, - 23521, - 25096, - 26524, - 29916, - 31185, - 33747, - 35463, - 35506, - 36328, - 36942, - 37707, - 38982, - 24275, - 27112, - 34303, - 37101, - 63749, - 20896, - 23448, - 23532, - 24931, - 26874, - 27454, - 28748, - 29743, - 29912, - 31649, - 32592, - 33733, - 35264, - 36011, - 38364, - 39208, - 21038, - 24669, - 25324, - 36866, - 20362, - 20809, - 21281, - 22745, - 24291, - 26336, - 27960, - 28826, - 29378, - 29654, - 31568, - 33009, - 37979, - 21350, - 25499, - 32619, - 20054, - 20608, - 22602, - 22750, - 24618, - 24871, - 25296, - 27088, - 39745, - 23439, - 32024, - 32945, - 36703, - 20132, - 20689, - 21676, - 21932, - 23308, - 23968, - 24039, - 25898, - 25934, - 26657, - 27211, - 29409, - 30350, - 30703, - 32094, - 32761, - 33184, - 34126, - 34527, - 36611, - 36686, - 37066, - 39171, - 39509, - 39851, - 19992, - 20037, - 20061, - 20167, - 20465, - 20855, - 21246, - 21312, - 21475, - 21477, - 21646, - 22036, - 22389, - 22434, - 23495, - 23943, - 24272, - 25084, - 25304, - 25937, - 26552, - 26601, - 27083, - 27472, - 27590, - 27628, - 27714, - 28317, - 28792, - 29399, - 29590, - 29699, - 30655, - 30697, - 31350, - 32127, - 32777, - 33276, - 33285, - 33290, - 33503, - 34914, - 35635, - 36092, - 36544, - 36881, - 37041, - 37476, - 37558, - 39378, - 39493, - 40169, - 40407, - 40860, - 22283, - 23616, - 33738, - 38816, - 38827, - 40628, - 21531, - 31384, - 32676, - 35033, - 36557, - 37089, - 22528, - 23624, - 25496, - 31391, - 23470, - 24339, - 31353, - 31406, - 33422, - 36524, - 20518, - 21048, - 21240, - 21367, - 22280, - 25331, - 25458, - 27402, - 28099, - 30519, - 21413, - 29527, - 34152, - 36470, - 38357, - 26426, - 27331, - 28528, - 35437, - 36556, - 39243, - 63750, - 26231, - 27512, - 36020, - 39740, - 63751, - 21483, - 22317, - 22862, - 25542, - 27131, - 29674, - 30789, - 31418, - 31429, - 31998, - 33909, - 35215, - 36211, - 36917, - 38312, - 21243, - 22343, - 30023, - 31584, - 33740, - 37406, - 63752, - 27224, - 20811, - 21067, - 21127, - 25119, - 26840, - 26997, - 38553, - 20677, - 21156, - 21220, - 25027, - 26020, - 26681, - 27135, - 29822, - 31563, - 33465, - 33771, - 35250, - 35641, - 36817, - 39241, - 63753, - 20170, - 22935, - 25810, - 26129, - 27278, - 29748, - 31105, - 31165, - 33449, - 34942, - 34943, - 35167, - 63754, - 37670, - 20235, - 21450, - 24613, - 25201, - 27762, - 32026, - 32102, - 20120, - 20834, - 30684, - 32943, - 20225, - 20238, - 20854, - 20864, - 21980, - 22120, - 22331, - 22522, - 22524, - 22804, - 22855, - 22931, - 23492, - 23696, - 23822, - 24049, - 24190, - 24524, - 25216, - 26071, - 26083, - 26398, - 26399, - 26462, - 26827, - 26820, - 27231, - 27450, - 27683, - 27773, - 27778, - 28103, - 29592, - 29734, - 29738, - 29826, - 29859, - 30072, - 30079, - 30849, - 30959, - 31041, - 31047, - 31048, - 31098, - 31637, - 32000, - 32186, - 32648, - 32774, - 32813, - 32908, - 35352, - 35663, - 35912, - 36215, - 37665, - 37668, - 39138, - 39249, - 39438, - 39439, - 39525, - 40594, - 32202, - 20342, - 21513, - 25326, - 26708, - 37329, - 21931, - 20794, - 63755, - 63756, - 23068, - 25062, - 63757, - 25295, - 25343, - 63758, - 63759, - 63760, - 63761, - 63762, - 63763, - 37027, - 63764, - 63765, - 63766, - 63767, - 63768, - 35582, - 63769, - 63770, - 63771, - 63772, - 26262, - 63773, - 29014, - 63774, - 63775, - 38627, - 63776, - 25423, - 25466, - 21335, - 63777, - 26511, - 26976, - 28275, - 63778, - 30007, - 63779, - 63780, - 63781, - 32013, - 63782, - 63783, - 34930, - 22218, - 23064, - 63784, - 63785, - 63786, - 63787, - 63788, - 20035, - 63789, - 20839, - 22856, - 26608, - 32784, - 63790, - 22899, - 24180, - 25754, - 31178, - 24565, - 24684, - 25288, - 25467, - 23527, - 23511, - 21162, - 63791, - 22900, - 24361, - 24594, - 63792, - 63793, - 63794, - 29785, - 63795, - 63796, - 63797, - 63798, - 63799, - 63800, - 39377, - 63801, - 63802, - 63803, - 63804, - 63805, - 63806, - 63807, - 63808, - 63809, - 63810, - 63811, - 28611, - 63812, - 63813, - 33215, - 36786, - 24817, - 63814, - 63815, - 33126, - 63816, - 63817, - 23615, - 63818, - 63819, - 63820, - 63821, - 63822, - 63823, - 63824, - 63825, - 23273, - 35365, - 26491, - 32016, - 63826, - 63827, - 63828, - 63829, - 63830, - 63831, - 33021, - 63832, - 63833, - 23612, - 27877, - 21311, - 28346, - 22810, - 33590, - 20025, - 20150, - 20294, - 21934, - 22296, - 22727, - 24406, - 26039, - 26086, - 27264, - 27573, - 28237, - 30701, - 31471, - 31774, - 32222, - 34507, - 34962, - 37170, - 37723, - 25787, - 28606, - 29562, - 30136, - 36948, - 21846, - 22349, - 25018, - 25812, - 26311, - 28129, - 28251, - 28525, - 28601, - 30192, - 32835, - 33213, - 34113, - 35203, - 35527, - 35674, - 37663, - 27795, - 30035, - 31572, - 36367, - 36957, - 21776, - 22530, - 22616, - 24162, - 25095, - 25758, - 26848, - 30070, - 31958, - 34739, - 40680, - 20195, - 22408, - 22382, - 22823, - 23565, - 23729, - 24118, - 24453, - 25140, - 25825, - 29619, - 33274, - 34955, - 36024, - 38538, - 40667, - 23429, - 24503, - 24755, - 20498, - 20992, - 21040, - 22294, - 22581, - 22615, - 23566, - 23648, - 23798, - 23947, - 24230, - 24466, - 24764, - 25361, - 25481, - 25623, - 26691, - 26873, - 27330, - 28120, - 28193, - 28372, - 28644, - 29182, - 30428, - 30585, - 31153, - 31291, - 33796, - 35241, - 36077, - 36339, - 36424, - 36867, - 36884, - 36947, - 37117, - 37709, - 38518, - 38876, - 27602, - 28678, - 29272, - 29346, - 29544, - 30563, - 31167, - 31716, - 32411, - 35712, - 22697, - 24775, - 25958, - 26109, - 26302, - 27788, - 28958, - 29129, - 35930, - 38931, - 20077, - 31361, - 20189, - 20908, - 20941, - 21205, - 21516, - 24999, - 26481, - 26704, - 26847, - 27934, - 28540, - 30140, - 30643, - 31461, - 33012, - 33891, - 37509, - 20828, - 26007, - 26460, - 26515, - 30168, - 31431, - 33651, - 63834, - 35910, - 36887, - 38957, - 23663, - 33216, - 33434, - 36929, - 36975, - 37389, - 24471, - 23965, - 27225, - 29128, - 30331, - 31561, - 34276, - 35588, - 37159, - 39472, - 21895, - 25078, - 63835, - 30313, - 32645, - 34367, - 34746, - 35064, - 37007, - 63836, - 27931, - 28889, - 29662, - 32097, - 33853, - 63837, - 37226, - 39409, - 63838, - 20098, - 21365, - 27396, - 27410, - 28734, - 29211, - 34349, - 40478, - 21068, - 36771, - 23888, - 25829, - 25900, - 27414, - 28651, - 31811, - 32412, - 34253, - 35172, - 35261, - 25289, - 33240, - 34847, - 24266, - 26391, - 28010, - 29436, - 29701, - 29807, - 34690, - 37086, - 20358, - 23821, - 24480, - 33802, - 20919, - 25504, - 30053, - 20142, - 20486, - 20841, - 20937, - 26753, - 27153, - 31918, - 31921, - 31975, - 33391, - 35538, - 36635, - 37327, - 20406, - 20791, - 21237, - 21570, - 24300, - 24942, - 25150, - 26053, - 27354, - 28670, - 31018, - 34268, - 34851, - 38317, - 39522, - 39530, - 40599, - 40654, - 21147, - 26310, - 27511, - 28701, - 31019, - 36706, - 38722, - 24976, - 25088, - 25891, - 28451, - 29001, - 29833, - 32244, - 32879, - 34030, - 36646, - 36899, - 37706, - 20925, - 21015, - 21155, - 27916, - 28872, - 35010, - 24265, - 25986, - 27566, - 28610, - 31806, - 29557, - 20196, - 20278, - 22265, - 63839, - 23738, - 23994, - 24604, - 29618, - 31533, - 32666, - 32718, - 32838, - 36894, - 37428, - 38646, - 38728, - 38936, - 40801, - 20363, - 28583, - 31150, - 37300, - 38583, - 21214, - 63840, - 25736, - 25796, - 27347, - 28510, - 28696, - 29200, - 30439, - 32769, - 34310, - 34396, - 36335, - 36613, - 38706, - 39791, - 40442, - 40565, - 30860, - 31103, - 32160, - 33737, - 37636, - 40575, - 40595, - 35542, - 22751, - 24324, - 26407, - 28711, - 29903, - 31840, - 32894, - 20769, - 28712, - 29282, - 30922, - 36034, - 36058, - 36084, - 38647, - 20102, - 20698, - 23534, - 24278, - 26009, - 29134, - 30274, - 30637, - 32842, - 34044, - 36988, - 39719, - 40845, - 22744, - 23105, - 23650, - 27155, - 28122, - 28431, - 30267, - 32047, - 32311, - 34078, - 35128, - 37860, - 38475, - 21129, - 26066, - 26611, - 27060, - 27969, - 28316, - 28687, - 29705, - 29792, - 30041, - 30244, - 30827, - 35628, - 39006, - 20845, - 25134, - 38520, - 20374, - 20523, - 23833, - 28138, - 32184, - 36650, - 24459, - 24900, - 26647, - 63841, - 38534, - 21202, - 32907, - 20956, - 20940, - 26974, - 31260, - 32190, - 33777, - 38517, - 20442, - 21033, - 21400, - 21519, - 21774, - 23653, - 24743, - 26446, - 26792, - 28012, - 29313, - 29432, - 29702, - 29827, - 63842, - 30178, - 31852, - 32633, - 32696, - 33673, - 35023, - 35041, - 37324, - 37328, - 38626, - 39881, - 21533, - 28542, - 29136, - 29848, - 34298, - 36522, - 38563, - 40023, - 40607, - 26519, - 28107, - 29747, - 33256, - 38678, - 30764, - 31435, - 31520, - 31890, - 25705, - 29802, - 30194, - 30908, - 30952, - 39340, - 39764, - 40635, - 23518, - 24149, - 28448, - 33180, - 33707, - 37000, - 19975, - 21325, - 23081, - 24018, - 24398, - 24930, - 25405, - 26217, - 26364, - 28415, - 28459, - 28771, - 30622, - 33836, - 34067, - 34875, - 36627, - 39237, - 39995, - 21788, - 25273, - 26411, - 27819, - 33545, - 35178, - 38778, - 20129, - 22916, - 24536, - 24537, - 26395, - 32178, - 32596, - 33426, - 33579, - 33725, - 36638, - 37017, - 22475, - 22969, - 23186, - 23504, - 26151, - 26522, - 26757, - 27599, - 29028, - 32629, - 36023, - 36067, - 36993, - 39749, - 33032, - 35978, - 38476, - 39488, - 40613, - 23391, - 27667, - 29467, - 30450, - 30431, - 33804, - 20906, - 35219, - 20813, - 20885, - 21193, - 26825, - 27796, - 30468, - 30496, - 32191, - 32236, - 38754, - 40629, - 28357, - 34065, - 20901, - 21517, - 21629, - 26126, - 26269, - 26919, - 28319, - 30399, - 30609, - 33559, - 33986, - 34719, - 37225, - 37528, - 40180, - 34946, - 20398, - 20882, - 21215, - 22982, - 24125, - 24917, - 25720, - 25721, - 26286, - 26576, - 27169, - 27597, - 27611, - 29279, - 29281, - 29761, - 30520, - 30683, - 32791, - 33468, - 33541, - 35584, - 35624, - 35980, - 26408, - 27792, - 29287, - 30446, - 30566, - 31302, - 40361, - 27519, - 27794, - 22818, - 26406, - 33945, - 21359, - 22675, - 22937, - 24287, - 25551, - 26164, - 26483, - 28218, - 29483, - 31447, - 33495, - 37672, - 21209, - 24043, - 25006, - 25035, - 25098, - 25287, - 25771, - 26080, - 26969, - 27494, - 27595, - 28961, - 29687, - 30045, - 32326, - 33310, - 33538, - 34154, - 35491, - 36031, - 38695, - 40289, - 22696, - 40664, - 20497, - 21006, - 21563, - 21839, - 25991, - 27766, - 32010, - 32011, - 32862, - 34442, - 38272, - 38639, - 21247, - 27797, - 29289, - 21619, - 23194, - 23614, - 23883, - 24396, - 24494, - 26410, - 26806, - 26979, - 28220, - 28228, - 30473, - 31859, - 32654, - 34183, - 35598, - 36855, - 38753, - 40692, - 23735, - 24758, - 24845, - 25003, - 25935, - 26107, - 26108, - 27665, - 27887, - 29599, - 29641, - 32225, - 38292, - 23494, - 34588, - 35600, - 21085, - 21338, - 25293, - 25615, - 25778, - 26420, - 27192, - 27850, - 29632, - 29854, - 31636, - 31893, - 32283, - 33162, - 33334, - 34180, - 36843, - 38649, - 39361, - 20276, - 21322, - 21453, - 21467, - 25292, - 25644, - 25856, - 26001, - 27075, - 27886, - 28504, - 29677, - 30036, - 30242, - 30436, - 30460, - 30928, - 30971, - 31020, - 32070, - 33324, - 34784, - 36820, - 38930, - 39151, - 21187, - 25300, - 25765, - 28196, - 28497, - 30332, - 36299, - 37297, - 37474, - 39662, - 39747, - 20515, - 20621, - 22346, - 22952, - 23592, - 24135, - 24439, - 25151, - 25918, - 26041, - 26049, - 26121, - 26507, - 27036, - 28354, - 30917, - 32033, - 32938, - 33152, - 33323, - 33459, - 33953, - 34444, - 35370, - 35607, - 37030, - 38450, - 40848, - 20493, - 20467, - 63843, - 22521, - 24472, - 25308, - 25490, - 26479, - 28227, - 28953, - 30403, - 32972, - 32986, - 35060, - 35061, - 35097, - 36064, - 36649, - 37197, - 38506, - 20271, - 20336, - 24091, - 26575, - 26658, - 30333, - 30334, - 39748, - 24161, - 27146, - 29033, - 29140, - 30058, - 63844, - 32321, - 34115, - 34281, - 39132, - 20240, - 31567, - 32624, - 38309, - 20961, - 24070, - 26805, - 27710, - 27726, - 27867, - 29359, - 31684, - 33539, - 27861, - 29754, - 20731, - 21128, - 22721, - 25816, - 27287, - 29863, - 30294, - 30887, - 34327, - 38370, - 38713, - 63845, - 21342, - 24321, - 35722, - 36776, - 36783, - 37002, - 21029, - 30629, - 40009, - 40712, - 19993, - 20482, - 20853, - 23643, - 24183, - 26142, - 26170, - 26564, - 26821, - 28851, - 29953, - 30149, - 31177, - 31453, - 36647, - 39200, - 39432, - 20445, - 22561, - 22577, - 23542, - 26222, - 27493, - 27921, - 28282, - 28541, - 29668, - 29995, - 33769, - 35036, - 35091, - 35676, - 36628, - 20239, - 20693, - 21264, - 21340, - 23443, - 24489, - 26381, - 31119, - 33145, - 33583, - 34068, - 35079, - 35206, - 36665, - 36667, - 39333, - 39954, - 26412, - 20086, - 20472, - 22857, - 23553, - 23791, - 23792, - 25447, - 26834, - 28925, - 29090, - 29739, - 32299, - 34028, - 34562, - 36898, - 37586, - 40179, - 19981, - 20184, - 20463, - 20613, - 21078, - 21103, - 21542, - 21648, - 22496, - 22827, - 23142, - 23386, - 23413, - 23500, - 24220, - 63846, - 25206, - 25975, - 26023, - 28014, - 28325, - 29238, - 31526, - 31807, - 32566, - 33104, - 33105, - 33178, - 33344, - 33433, - 33705, - 35331, - 36000, - 36070, - 36091, - 36212, - 36282, - 37096, - 37340, - 38428, - 38468, - 39385, - 40167, - 21271, - 20998, - 21545, - 22132, - 22707, - 22868, - 22894, - 24575, - 24996, - 25198, - 26128, - 27774, - 28954, - 30406, - 31881, - 31966, - 32027, - 33452, - 36033, - 38640, - 63847, - 20315, - 24343, - 24447, - 25282, - 23849, - 26379, - 26842, - 30844, - 32323, - 40300, - 19989, - 20633, - 21269, - 21290, - 21329, - 22915, - 23138, - 24199, - 24754, - 24970, - 25161, - 25209, - 26000, - 26503, - 27047, - 27604, - 27606, - 27607, - 27608, - 27832, - 63848, - 29749, - 30202, - 30738, - 30865, - 31189, - 31192, - 31875, - 32203, - 32737, - 32933, - 33086, - 33218, - 33778, - 34586, - 35048, - 35513, - 35692, - 36027, - 37145, - 38750, - 39131, - 40763, - 22188, - 23338, - 24428, - 25996, - 27315, - 27567, - 27996, - 28657, - 28693, - 29277, - 29613, - 36007, - 36051, - 38971, - 24977, - 27703, - 32856, - 39425, - 20045, - 20107, - 20123, - 20181, - 20282, - 20284, - 20351, - 20447, - 20735, - 21490, - 21496, - 21766, - 21987, - 22235, - 22763, - 22882, - 23057, - 23531, - 23546, - 23556, - 24051, - 24107, - 24473, - 24605, - 25448, - 26012, - 26031, - 26614, - 26619, - 26797, - 27515, - 27801, - 27863, - 28195, - 28681, - 29509, - 30722, - 31038, - 31040, - 31072, - 31169, - 31721, - 32023, - 32114, - 32902, - 33293, - 33678, - 34001, - 34503, - 35039, - 35408, - 35422, - 35613, - 36060, - 36198, - 36781, - 37034, - 39164, - 39391, - 40605, - 21066, - 63849, - 26388, - 63850, - 20632, - 21034, - 23665, - 25955, - 27733, - 29642, - 29987, - 30109, - 31639, - 33948, - 37240, - 38704, - 20087, - 25746, - 27578, - 29022, - 34217, - 19977, - 63851, - 26441, - 26862, - 28183, - 33439, - 34072, - 34923, - 25591, - 28545, - 37394, - 39087, - 19978, - 20663, - 20687, - 20767, - 21830, - 21930, - 22039, - 23360, - 23577, - 23776, - 24120, - 24202, - 24224, - 24258, - 24819, - 26705, - 27233, - 28248, - 29245, - 29248, - 29376, - 30456, - 31077, - 31665, - 32724, - 35059, - 35316, - 35443, - 35937, - 36062, - 38684, - 22622, - 29885, - 36093, - 21959, - 63852, - 31329, - 32034, - 33394, - 29298, - 29983, - 29989, - 63853, - 31513, - 22661, - 22779, - 23996, - 24207, - 24246, - 24464, - 24661, - 25234, - 25471, - 25933, - 26257, - 26329, - 26360, - 26646, - 26866, - 29312, - 29790, - 31598, - 32110, - 32214, - 32626, - 32997, - 33298, - 34223, - 35199, - 35475, - 36893, - 37604, - 40653, - 40736, - 22805, - 22893, - 24109, - 24796, - 26132, - 26227, - 26512, - 27728, - 28101, - 28511, - 30707, - 30889, - 33990, - 37323, - 37675, - 20185, - 20682, - 20808, - 21892, - 23307, - 23459, - 25159, - 25982, - 26059, - 28210, - 29053, - 29697, - 29764, - 29831, - 29887, - 30316, - 31146, - 32218, - 32341, - 32680, - 33146, - 33203, - 33337, - 34330, - 34796, - 35445, - 36323, - 36984, - 37521, - 37925, - 39245, - 39854, - 21352, - 23633, - 26964, - 27844, - 27945, - 28203, - 33292, - 34203, - 35131, - 35373, - 35498, - 38634, - 40807, - 21089, - 26297, - 27570, - 32406, - 34814, - 36109, - 38275, - 38493, - 25885, - 28041, - 29166, - 63854, - 22478, - 22995, - 23468, - 24615, - 24826, - 25104, - 26143, - 26207, - 29481, - 29689, - 30427, - 30465, - 31596, - 32854, - 32882, - 33125, - 35488, - 37266, - 19990, - 21218, - 27506, - 27927, - 31237, - 31545, - 32048, - 63855, - 36016, - 21484, - 22063, - 22609, - 23477, - 23567, - 23569, - 24034, - 25152, - 25475, - 25620, - 26157, - 26803, - 27836, - 28040, - 28335, - 28703, - 28836, - 29138, - 29990, - 30095, - 30094, - 30233, - 31505, - 31712, - 31787, - 32032, - 32057, - 34092, - 34157, - 34311, - 35380, - 36877, - 36961, - 37045, - 37559, - 38902, - 39479, - 20439, - 23660, - 26463, - 28049, - 31903, - 32396, - 35606, - 36118, - 36895, - 23403, - 24061, - 25613, - 33984, - 36956, - 39137, - 29575, - 23435, - 24730, - 26494, - 28126, - 35359, - 35494, - 36865, - 38924, - 21047, - 63856, - 28753, - 30862, - 37782, - 34928, - 37335, - 20462, - 21463, - 22013, - 22234, - 22402, - 22781, - 23234, - 23432, - 23723, - 23744, - 24101, - 24833, - 25101, - 25163, - 25480, - 25628, - 25910, - 25976, - 27193, - 27530, - 27700, - 27929, - 28465, - 29159, - 29417, - 29560, - 29703, - 29874, - 30246, - 30561, - 31168, - 31319, - 31466, - 31929, - 32143, - 32172, - 32353, - 32670, - 33065, - 33585, - 33936, - 34010, - 34282, - 34966, - 35504, - 35728, - 36664, - 36930, - 36995, - 37228, - 37526, - 37561, - 38539, - 38567, - 38568, - 38614, - 38656, - 38920, - 39318, - 39635, - 39706, - 21460, - 22654, - 22809, - 23408, - 23487, - 28113, - 28506, - 29087, - 29729, - 29881, - 32901, - 33789, - 24033, - 24455, - 24490, - 24642, - 26092, - 26642, - 26991, - 27219, - 27529, - 27957, - 28147, - 29667, - 30462, - 30636, - 31565, - 32020, - 33059, - 33308, - 33600, - 34036, - 34147, - 35426, - 35524, - 37255, - 37662, - 38918, - 39348, - 25100, - 34899, - 36848, - 37477, - 23815, - 23847, - 23913, - 29791, - 33181, - 34664, - 28629, - 25342, - 32722, - 35126, - 35186, - 19998, - 20056, - 20711, - 21213, - 21319, - 25215, - 26119, - 32361, - 34821, - 38494, - 20365, - 21273, - 22070, - 22987, - 23204, - 23608, - 23630, - 23629, - 24066, - 24337, - 24643, - 26045, - 26159, - 26178, - 26558, - 26612, - 29468, - 30690, - 31034, - 32709, - 33940, - 33997, - 35222, - 35430, - 35433, - 35553, - 35925, - 35962, - 22516, - 23508, - 24335, - 24687, - 25325, - 26893, - 27542, - 28252, - 29060, - 31698, - 34645, - 35672, - 36606, - 39135, - 39166, - 20280, - 20353, - 20449, - 21627, - 23072, - 23480, - 24892, - 26032, - 26216, - 29180, - 30003, - 31070, - 32051, - 33102, - 33251, - 33688, - 34218, - 34254, - 34563, - 35338, - 36523, - 36763, - 63857, - 36805, - 22833, - 23460, - 23526, - 24713, - 23529, - 23563, - 24515, - 27777, - 63858, - 28145, - 28683, - 29978, - 33455, - 35574, - 20160, - 21313, - 63859, - 38617, - 27663, - 20126, - 20420, - 20818, - 21854, - 23077, - 23784, - 25105, - 29273, - 33469, - 33706, - 34558, - 34905, - 35357, - 38463, - 38597, - 39187, - 40201, - 40285, - 22538, - 23731, - 23997, - 24132, - 24801, - 24853, - 25569, - 27138, - 28197, - 37122, - 37716, - 38990, - 39952, - 40823, - 23433, - 23736, - 25353, - 26191, - 26696, - 30524, - 38593, - 38797, - 38996, - 39839, - 26017, - 35585, - 36555, - 38332, - 21813, - 23721, - 24022, - 24245, - 26263, - 30284, - 33780, - 38343, - 22739, - 25276, - 29390, - 40232, - 20208, - 22830, - 24591, - 26171, - 27523, - 31207, - 40230, - 21395, - 21696, - 22467, - 23830, - 24859, - 26326, - 28079, - 30861, - 33406, - 38552, - 38724, - 21380, - 25212, - 25494, - 28082, - 32266, - 33099, - 38989, - 27387, - 32588, - 40367, - 40474, - 20063, - 20539, - 20918, - 22812, - 24825, - 25590, - 26928, - 29242, - 32822, - 63860, - 37326, - 24369, - 63861, - 63862, - 32004, - 33509, - 33903, - 33979, - 34277, - 36493, - 63863, - 20335, - 63864, - 63865, - 22756, - 23363, - 24665, - 25562, - 25880, - 25965, - 26264, - 63866, - 26954, - 27171, - 27915, - 28673, - 29036, - 30162, - 30221, - 31155, - 31344, - 63867, - 32650, - 63868, - 35140, - 63869, - 35731, - 37312, - 38525, - 63870, - 39178, - 22276, - 24481, - 26044, - 28417, - 30208, - 31142, - 35486, - 39341, - 39770, - 40812, - 20740, - 25014, - 25233, - 27277, - 33222, - 20547, - 22576, - 24422, - 28937, - 35328, - 35578, - 23420, - 34326, - 20474, - 20796, - 22196, - 22852, - 25513, - 28153, - 23978, - 26989, - 20870, - 20104, - 20313, - 63871, - 63872, - 63873, - 22914, - 63874, - 63875, - 27487, - 27741, - 63876, - 29877, - 30998, - 63877, - 33287, - 33349, - 33593, - 36671, - 36701, - 63878, - 39192, - 63879, - 63880, - 63881, - 20134, - 63882, - 22495, - 24441, - 26131, - 63883, - 63884, - 30123, - 32377, - 35695, - 63885, - 36870, - 39515, - 22181, - 22567, - 23032, - 23071, - 23476, - 63886, - 24310, - 63887, - 63888, - 25424, - 25403, - 63889, - 26941, - 27783, - 27839, - 28046, - 28051, - 28149, - 28436, - 63890, - 28895, - 28982, - 29017, - 63891, - 29123, - 29141, - 63892, - 30799, - 30831, - 63893, - 31605, - 32227, - 63894, - 32303, - 63895, - 34893, - 36575, - 63896, - 63897, - 63898, - 37467, - 63899, - 40182, - 63900, - 63901, - 63902, - 24709, - 28037, - 63903, - 29105, - 63904, - 63905, - 38321, - 21421, - 63906, - 63907, - 63908, - 26579, - 63909, - 28814, - 28976, - 29744, - 33398, - 33490, - 63910, - 38331, - 39653, - 40573, - 26308, - 63911, - 29121, - 33865, - 63912, - 63913, - 22603, - 63914, - 63915, - 23992, - 24433, - 63916, - 26144, - 26254, - 27001, - 27054, - 27704, - 27891, - 28214, - 28481, - 28634, - 28699, - 28719, - 29008, - 29151, - 29552, - 63917, - 29787, - 63918, - 29908, - 30408, - 31310, - 32403, - 63919, - 63920, - 33521, - 35424, - 36814, - 63921, - 37704, - 63922, - 38681, - 63923, - 63924, - 20034, - 20522, - 63925, - 21000, - 21473, - 26355, - 27757, - 28618, - 29450, - 30591, - 31330, - 33454, - 34269, - 34306, - 63926, - 35028, - 35427, - 35709, - 35947, - 63927, - 37555, - 63928, - 38675, - 38928, - 20116, - 20237, - 20425, - 20658, - 21320, - 21566, - 21555, - 21978, - 22626, - 22714, - 22887, - 23067, - 23524, - 24735, - 63929, - 25034, - 25942, - 26111, - 26212, - 26791, - 27738, - 28595, - 28879, - 29100, - 29522, - 31613, - 34568, - 35492, - 39986, - 40711, - 23627, - 27779, - 29508, - 29577, - 37434, - 28331, - 29797, - 30239, - 31337, - 32277, - 34314, - 20800, - 22725, - 25793, - 29934, - 29973, - 30320, - 32705, - 37013, - 38605, - 39252, - 28198, - 29926, - 31401, - 31402, - 33253, - 34521, - 34680, - 35355, - 23113, - 23436, - 23451, - 26785, - 26880, - 28003, - 29609, - 29715, - 29740, - 30871, - 32233, - 32747, - 33048, - 33109, - 33694, - 35916, - 38446, - 38929, - 26352, - 24448, - 26106, - 26505, - 27754, - 29579, - 20525, - 23043, - 27498, - 30702, - 22806, - 23916, - 24013, - 29477, - 30031, - 63930, - 63931, - 20709, - 20985, - 22575, - 22829, - 22934, - 23002, - 23525, - 63932, - 63933, - 23970, - 25303, - 25622, - 25747, - 25854, - 63934, - 26332, - 63935, - 27208, - 63936, - 29183, - 29796, - 63937, - 31368, - 31407, - 32327, - 32350, - 32768, - 33136, - 63938, - 34799, - 35201, - 35616, - 36953, - 63939, - 36992, - 39250, - 24958, - 27442, - 28020, - 32287, - 35109, - 36785, - 20433, - 20653, - 20887, - 21191, - 22471, - 22665, - 23481, - 24248, - 24898, - 27029, - 28044, - 28263, - 28342, - 29076, - 29794, - 29992, - 29996, - 32883, - 33592, - 33993, - 36362, - 37780, - 37854, - 63940, - 20110, - 20305, - 20598, - 20778, - 21448, - 21451, - 21491, - 23431, - 23507, - 23588, - 24858, - 24962, - 26100, - 29275, - 29591, - 29760, - 30402, - 31056, - 31121, - 31161, - 32006, - 32701, - 33419, - 34261, - 34398, - 36802, - 36935, - 37109, - 37354, - 38533, - 38632, - 38633, - 21206, - 24423, - 26093, - 26161, - 26671, - 29020, - 31286, - 37057, - 38922, - 20113, - 63941, - 27218, - 27550, - 28560, - 29065, - 32792, - 33464, - 34131, - 36939, - 38549, - 38642, - 38907, - 34074, - 39729, - 20112, - 29066, - 38596, - 20803, - 21407, - 21729, - 22291, - 22290, - 22435, - 23195, - 23236, - 23491, - 24616, - 24895, - 25588, - 27781, - 27961, - 28274, - 28304, - 29232, - 29503, - 29783, - 33489, - 34945, - 36677, - 36960, - 63942, - 38498, - 39000, - 40219, - 26376, - 36234, - 37470, - 20301, - 20553, - 20702, - 21361, - 22285, - 22996, - 23041, - 23561, - 24944, - 26256, - 28205, - 29234, - 29771, - 32239, - 32963, - 33806, - 33894, - 34111, - 34655, - 34907, - 35096, - 35586, - 36949, - 38859, - 39759, - 20083, - 20369, - 20754, - 20842, - 63943, - 21807, - 21929, - 23418, - 23461, - 24188, - 24189, - 24254, - 24736, - 24799, - 24840, - 24841, - 25540, - 25912, - 26377, - 63944, - 26580, - 26586, - 63945, - 26977, - 26978, - 27833, - 27943, - 63946, - 28216, - 63947, - 28641, - 29494, - 29495, - 63948, - 29788, - 30001, - 63949, - 30290, - 63950, - 63951, - 32173, - 33278, - 33848, - 35029, - 35480, - 35547, - 35565, - 36400, - 36418, - 36938, - 36926, - 36986, - 37193, - 37321, - 37742, - 63952, - 63953, - 22537, - 63954, - 27603, - 32905, - 32946, - 63955, - 63956, - 20801, - 22891, - 23609, - 63957, - 63958, - 28516, - 29607, - 32996, - 36103, - 63959, - 37399, - 38287, - 63960, - 63961, - 63962, - 63963, - 32895, - 25102, - 28700, - 32104, - 34701, - 63964, - 22432, - 24681, - 24903, - 27575, - 35518, - 37504, - 38577, - 20057, - 21535, - 28139, - 34093, - 38512, - 38899, - 39150, - 25558, - 27875, - 37009, - 20957, - 25033, - 33210, - 40441, - 20381, - 20506, - 20736, - 23452, - 24847, - 25087, - 25836, - 26885, - 27589, - 30097, - 30691, - 32681, - 33380, - 34191, - 34811, - 34915, - 35516, - 35696, - 37291, - 20108, - 20197, - 20234, - 63965, - 63966, - 22839, - 23016, - 63967, - 24050, - 24347, - 24411, - 24609, - 63968, - 63969, - 63970, - 63971, - 29246, - 29669, - 63972, - 30064, - 30157, - 63973, - 31227, - 63974, - 32780, - 32819, - 32900, - 33505, - 33617, - 63975, - 63976, - 36029, - 36019, - 36999, - 63977, - 63978, - 39156, - 39180, - 63979, - 63980, - 28727, - 30410, - 32714, - 32716, - 32764, - 35610, - 20154, - 20161, - 20995, - 21360, - 63981, - 21693, - 22240, - 23035, - 23493, - 24341, - 24525, - 28270, - 63982, - 63983, - 32106, - 33589, - 63984, - 34451, - 35469, - 63985, - 38765, - 38775, - 63986, - 63987, - 19968, - 20314, - 20350, - 22777, - 26085, - 28322, - 36920, - 37808, - 39353, - 20219, - 22764, - 22922, - 23001, - 24641, - 63988, - 63989, - 31252, - 63990, - 33615, - 36035, - 20837, - 21316, - 63991, - 63992, - 63993, - 20173, - 21097, - 23381, - 33471, - 20180, - 21050, - 21672, - 22985, - 23039, - 23376, - 23383, - 23388, - 24675, - 24904, - 28363, - 28825, - 29038, - 29574, - 29943, - 30133, - 30913, - 32043, - 32773, - 33258, - 33576, - 34071, - 34249, - 35566, - 36039, - 38604, - 20316, - 21242, - 22204, - 26027, - 26152, - 28796, - 28856, - 29237, - 32189, - 33421, - 37196, - 38592, - 40306, - 23409, - 26855, - 27544, - 28538, - 30430, - 23697, - 26283, - 28507, - 31668, - 31786, - 34870, - 38620, - 19976, - 20183, - 21280, - 22580, - 22715, - 22767, - 22892, - 23559, - 24115, - 24196, - 24373, - 25484, - 26290, - 26454, - 27167, - 27299, - 27404, - 28479, - 29254, - 63994, - 29520, - 29835, - 31456, - 31911, - 33144, - 33247, - 33255, - 33674, - 33900, - 34083, - 34196, - 34255, - 35037, - 36115, - 37292, - 38263, - 38556, - 20877, - 21705, - 22312, - 23472, - 25165, - 26448, - 26685, - 26771, - 28221, - 28371, - 28797, - 32289, - 35009, - 36001, - 36617, - 40779, - 40782, - 29229, - 31631, - 35533, - 37658, - 20295, - 20302, - 20786, - 21632, - 22992, - 24213, - 25269, - 26485, - 26990, - 27159, - 27822, - 28186, - 29401, - 29482, - 30141, - 31672, - 32053, - 33511, - 33785, - 33879, - 34295, - 35419, - 36015, - 36487, - 36889, - 37048, - 38606, - 40799, - 21219, - 21514, - 23265, - 23490, - 25688, - 25973, - 28404, - 29380, - 63995, - 30340, - 31309, - 31515, - 31821, - 32318, - 32735, - 33659, - 35627, - 36042, - 36196, - 36321, - 36447, - 36842, - 36857, - 36969, - 37841, - 20291, - 20346, - 20659, - 20840, - 20856, - 21069, - 21098, - 22625, - 22652, - 22880, - 23560, - 23637, - 24283, - 24731, - 25136, - 26643, - 27583, - 27656, - 28593, - 29006, - 29728, - 30000, - 30008, - 30033, - 30322, - 31564, - 31627, - 31661, - 31686, - 32399, - 35438, - 36670, - 36681, - 37439, - 37523, - 37666, - 37931, - 38651, - 39002, - 39019, - 39198, - 20999, - 25130, - 25240, - 27993, - 30308, - 31434, - 31680, - 32118, - 21344, - 23742, - 24215, - 28472, - 28857, - 31896, - 38673, - 39822, - 40670, - 25509, - 25722, - 34678, - 19969, - 20117, - 20141, - 20572, - 20597, - 21576, - 22979, - 23450, - 24128, - 24237, - 24311, - 24449, - 24773, - 25402, - 25919, - 25972, - 26060, - 26230, - 26232, - 26622, - 26984, - 27273, - 27491, - 27712, - 28096, - 28136, - 28191, - 28254, - 28702, - 28833, - 29582, - 29693, - 30010, - 30555, - 30855, - 31118, - 31243, - 31357, - 31934, - 32142, - 33351, - 35330, - 35562, - 35998, - 37165, - 37194, - 37336, - 37478, - 37580, - 37664, - 38662, - 38742, - 38748, - 38914, - 40718, - 21046, - 21137, - 21884, - 22564, - 24093, - 24351, - 24716, - 25552, - 26799, - 28639, - 31085, - 31532, - 33229, - 34234, - 35069, - 35576, - 36420, - 37261, - 38500, - 38555, - 38717, - 38988, - 40778, - 20430, - 20806, - 20939, - 21161, - 22066, - 24340, - 24427, - 25514, - 25805, - 26089, - 26177, - 26362, - 26361, - 26397, - 26781, - 26839, - 27133, - 28437, - 28526, - 29031, - 29157, - 29226, - 29866, - 30522, - 31062, - 31066, - 31199, - 31264, - 31381, - 31895, - 31967, - 32068, - 32368, - 32903, - 34299, - 34468, - 35412, - 35519, - 36249, - 36481, - 36896, - 36973, - 37347, - 38459, - 38613, - 40165, - 26063, - 31751, - 36275, - 37827, - 23384, - 23562, - 21330, - 25305, - 29469, - 20519, - 23447, - 24478, - 24752, - 24939, - 26837, - 28121, - 29742, - 31278, - 32066, - 32156, - 32305, - 33131, - 36394, - 36405, - 37758, - 37912, - 20304, - 22352, - 24038, - 24231, - 25387, - 32618, - 20027, - 20303, - 20367, - 20570, - 23005, - 32964, - 21610, - 21608, - 22014, - 22863, - 23449, - 24030, - 24282, - 26205, - 26417, - 26609, - 26666, - 27880, - 27954, - 28234, - 28557, - 28855, - 29664, - 30087, - 31820, - 32002, - 32044, - 32162, - 33311, - 34523, - 35387, - 35461, - 36208, - 36490, - 36659, - 36913, - 37198, - 37202, - 37956, - 39376, - 31481, - 31909, - 20426, - 20737, - 20934, - 22472, - 23535, - 23803, - 26201, - 27197, - 27994, - 28310, - 28652, - 28940, - 30063, - 31459, - 34850, - 36897, - 36981, - 38603, - 39423, - 33537, - 20013, - 20210, - 34886, - 37325, - 21373, - 27355, - 26987, - 27713, - 33914, - 22686, - 24974, - 26366, - 25327, - 28893, - 29969, - 30151, - 32338, - 33976, - 35657, - 36104, - 20043, - 21482, - 21675, - 22320, - 22336, - 24535, - 25345, - 25351, - 25711, - 25903, - 26088, - 26234, - 26525, - 26547, - 27490, - 27744, - 27802, - 28460, - 30693, - 30757, - 31049, - 31063, - 32025, - 32930, - 33026, - 33267, - 33437, - 33463, - 34584, - 35468, - 63996, - 36100, - 36286, - 36978, - 30452, - 31257, - 31287, - 32340, - 32887, - 21767, - 21972, - 22645, - 25391, - 25634, - 26185, - 26187, - 26733, - 27035, - 27524, - 27941, - 28337, - 29645, - 29800, - 29857, - 30043, - 30137, - 30433, - 30494, - 30603, - 31206, - 32265, - 32285, - 33275, - 34095, - 34967, - 35386, - 36049, - 36587, - 36784, - 36914, - 37805, - 38499, - 38515, - 38663, - 20356, - 21489, - 23018, - 23241, - 24089, - 26702, - 29894, - 30142, - 31209, - 31378, - 33187, - 34541, - 36074, - 36300, - 36845, - 26015, - 26389, - 63997, - 22519, - 28503, - 32221, - 36655, - 37878, - 38598, - 24501, - 25074, - 28548, - 19988, - 20376, - 20511, - 21449, - 21983, - 23919, - 24046, - 27425, - 27492, - 30923, - 31642, - 63998, - 36425, - 36554, - 36974, - 25417, - 25662, - 30528, - 31364, - 37679, - 38015, - 40810, - 25776, - 28591, - 29158, - 29864, - 29914, - 31428, - 31762, - 32386, - 31922, - 32408, - 35738, - 36106, - 38013, - 39184, - 39244, - 21049, - 23519, - 25830, - 26413, - 32046, - 20717, - 21443, - 22649, - 24920, - 24921, - 25082, - 26028, - 31449, - 35730, - 35734, - 20489, - 20513, - 21109, - 21809, - 23100, - 24288, - 24432, - 24884, - 25950, - 26124, - 26166, - 26274, - 27085, - 28356, - 28466, - 29462, - 30241, - 31379, - 33081, - 33369, - 33750, - 33980, - 20661, - 22512, - 23488, - 23528, - 24425, - 25505, - 30758, - 32181, - 33756, - 34081, - 37319, - 37365, - 20874, - 26613, - 31574, - 36012, - 20932, - 22971, - 24765, - 34389, - 20508, - 63999, - 21076, - 23610, - 24957, - 25114, - 25299, - 25842, - 26021, - 28364, - 30240, - 33034, - 36448, - 38495, - 38587, - 20191, - 21315, - 21912, - 22825, - 24029, - 25797, - 27849, - 28154, - 29588, - 31359, - 33307, - 34214, - 36068, - 36368, - 36983, - 37351, - 38369, - 38433, - 38854, - 20984, - 21746, - 21894, - 24505, - 25764, - 28552, - 32180, - 36639, - 36685, - 37941, - 20681, - 23574, - 27838, - 28155, - 29979, - 30651, - 31805, - 31844, - 35449, - 35522, - 22558, - 22974, - 24086, - 25463, - 29266, - 30090, - 30571, - 35548, - 36028, - 36626, - 24307, - 26228, - 28152, - 32893, - 33729, - 35531, - 38737, - 39894, - 64000, - 21059, - 26367, - 28053, - 28399, - 32224, - 35558, - 36910, - 36958, - 39636, - 21021, - 21119, - 21736, - 24980, - 25220, - 25307, - 26786, - 26898, - 26970, - 27189, - 28818, - 28966, - 30813, - 30977, - 30990, - 31186, - 31245, - 32918, - 33400, - 33493, - 33609, - 34121, - 35970, - 36229, - 37218, - 37259, - 37294, - 20419, - 22225, - 29165, - 30679, - 34560, - 35320, - 23544, - 24534, - 26449, - 37032, - 21474, - 22618, - 23541, - 24740, - 24961, - 25696, - 32317, - 32880, - 34085, - 37507, - 25774, - 20652, - 23828, - 26368, - 22684, - 25277, - 25512, - 26894, - 27000, - 27166, - 28267, - 30394, - 31179, - 33467, - 33833, - 35535, - 36264, - 36861, - 37138, - 37195, - 37276, - 37648, - 37656, - 37786, - 38619, - 39478, - 39949, - 19985, - 30044, - 31069, - 31482, - 31569, - 31689, - 32302, - 33988, - 36441, - 36468, - 36600, - 36880, - 26149, - 26943, - 29763, - 20986, - 26414, - 40668, - 20805, - 24544, - 27798, - 34802, - 34909, - 34935, - 24756, - 33205, - 33795, - 36101, - 21462, - 21561, - 22068, - 23094, - 23601, - 28810, - 32736, - 32858, - 33030, - 33261, - 36259, - 37257, - 39519, - 40434, - 20596, - 20164, - 21408, - 24827, - 28204, - 23652, - 20360, - 20516, - 21988, - 23769, - 24159, - 24677, - 26772, - 27835, - 28100, - 29118, - 30164, - 30196, - 30305, - 31258, - 31305, - 32199, - 32251, - 32622, - 33268, - 34473, - 36636, - 38601, - 39347, - 40786, - 21063, - 21189, - 39149, - 35242, - 19971, - 26578, - 28422, - 20405, - 23522, - 26517, - 27784, - 28024, - 29723, - 30759, - 37341, - 37756, - 34756, - 31204, - 31281, - 24555, - 20182, - 21668, - 21822, - 22702, - 22949, - 24816, - 25171, - 25302, - 26422, - 26965, - 33333, - 38464, - 39345, - 39389, - 20524, - 21331, - 21828, - 22396, - 64001, - 25176, - 64002, - 25826, - 26219, - 26589, - 28609, - 28655, - 29730, - 29752, - 35351, - 37944, - 21585, - 22022, - 22374, - 24392, - 24986, - 27470, - 28760, - 28845, - 32187, - 35477, - 22890, - 33067, - 25506, - 30472, - 32829, - 36010, - 22612, - 25645, - 27067, - 23445, - 24081, - 28271, - 64003, - 34153, - 20812, - 21488, - 22826, - 24608, - 24907, - 27526, - 27760, - 27888, - 31518, - 32974, - 33492, - 36294, - 37040, - 39089, - 64004, - 25799, - 28580, - 25745, - 25860, - 20814, - 21520, - 22303, - 35342, - 24927, - 26742, - 64005, - 30171, - 31570, - 32113, - 36890, - 22534, - 27084, - 33151, - 35114, - 36864, - 38969, - 20600, - 22871, - 22956, - 25237, - 36879, - 39722, - 24925, - 29305, - 38358, - 22369, - 23110, - 24052, - 25226, - 25773, - 25850, - 26487, - 27874, - 27966, - 29228, - 29750, - 30772, - 32631, - 33453, - 36315, - 38935, - 21028, - 22338, - 26495, - 29256, - 29923, - 36009, - 36774, - 37393, - 38442, - 20843, - 21485, - 25420, - 20329, - 21764, - 24726, - 25943, - 27803, - 28031, - 29260, - 29437, - 31255, - 35207, - 35997, - 24429, - 28558, - 28921, - 33192, - 24846, - 20415, - 20559, - 25153, - 29255, - 31687, - 32232, - 32745, - 36941, - 38829, - 39449, - 36022, - 22378, - 24179, - 26544, - 33805, - 35413, - 21536, - 23318, - 24163, - 24290, - 24330, - 25987, - 32954, - 34109, - 38281, - 38491, - 20296, - 21253, - 21261, - 21263, - 21638, - 21754, - 22275, - 24067, - 24598, - 25243, - 25265, - 25429, - 64006, - 27873, - 28006, - 30129, - 30770, - 32990, - 33071, - 33502, - 33889, - 33970, - 34957, - 35090, - 36875, - 37610, - 39165, - 39825, - 24133, - 26292, - 26333, - 28689, - 29190, - 64007, - 20469, - 21117, - 24426, - 24915, - 26451, - 27161, - 28418, - 29922, - 31080, - 34920, - 35961, - 39111, - 39108, - 39491, - 21697, - 31263, - 26963, - 35575, - 35914, - 39080, - 39342, - 24444, - 25259, - 30130, - 30382, - 34987, - 36991, - 38466, - 21305, - 24380, - 24517, - 27852, - 29644, - 30050, - 30091, - 31558, - 33534, - 39325, - 20047, - 36924, - 19979, - 20309, - 21414, - 22799, - 24264, - 26160, - 27827, - 29781, - 33655, - 34662, - 36032, - 36944, - 38686, - 39957, - 22737, - 23416, - 34384, - 35604, - 40372, - 23506, - 24680, - 24717, - 26097, - 27735, - 28450, - 28579, - 28698, - 32597, - 32752, - 38289, - 38290, - 38480, - 38867, - 21106, - 36676, - 20989, - 21547, - 21688, - 21859, - 21898, - 27323, - 28085, - 32216, - 33382, - 37532, - 38519, - 40569, - 21512, - 21704, - 30418, - 34532, - 38308, - 38356, - 38492, - 20130, - 20233, - 23022, - 23270, - 24055, - 24658, - 25239, - 26477, - 26689, - 27782, - 28207, - 32568, - 32923, - 33322, - 64008, - 64009, - 38917, - 20133, - 20565, - 21683, - 22419, - 22874, - 23401, - 23475, - 25032, - 26999, - 28023, - 28707, - 34809, - 35299, - 35442, - 35559, - 36994, - 39405, - 39608, - 21182, - 26680, - 20502, - 24184, - 26447, - 33607, - 34892, - 20139, - 21521, - 22190, - 29670, - 37141, - 38911, - 39177, - 39255, - 39321, - 22099, - 22687, - 34395, - 35377, - 25010, - 27382, - 29563, - 36562, - 27463, - 38570, - 39511, - 22869, - 29184, - 36203, - 38761, - 20436, - 23796, - 24358, - 25080, - 26203, - 27883, - 28843, - 29572, - 29625, - 29694, - 30505, - 30541, - 32067, - 32098, - 32291, - 33335, - 34898, - 64010, - 36066, - 37449, - 39023, - 23377, - 31348, - 34880, - 38913, - 23244, - 20448, - 21332, - 22846, - 23805, - 25406, - 28025, - 29433, - 33029, - 33031, - 33698, - 37583, - 38960, - 20136, - 20804, - 21009, - 22411, - 24418, - 27842, - 28366, - 28677, - 28752, - 28847, - 29074, - 29673, - 29801, - 33610, - 34722, - 34913, - 36872, - 37026, - 37795, - 39336, - 20846, - 24407, - 24800, - 24935, - 26291, - 34137, - 36426, - 37295, - 38795, - 20046, - 20114, - 21628, - 22741, - 22778, - 22909, - 23733, - 24359, - 25142, - 25160, - 26122, - 26215, - 27627, - 28009, - 28111, - 28246, - 28408, - 28564, - 28640, - 28649, - 28765, - 29392, - 29733, - 29786, - 29920, - 30355, - 31068, - 31946, - 32286, - 32993, - 33446, - 33899, - 33983, - 34382, - 34399, - 34676, - 35703, - 35946, - 37804, - 38912, - 39013, - 24785, - 25110, - 37239, - 23130, - 26127, - 28151, - 28222, - 29759, - 39746, - 24573, - 24794, - 31503, - 21700, - 24344, - 27742, - 27859, - 27946, - 28888, - 32005, - 34425, - 35340, - 40251, - 21270, - 21644, - 23301, - 27194, - 28779, - 30069, - 31117, - 31166, - 33457, - 33775, - 35441, - 35649, - 36008, - 38772, - 64011, - 25844, - 25899, - 30906, - 30907, - 31339, - 20024, - 21914, - 22864, - 23462, - 24187, - 24739, - 25563, - 27489, - 26213, - 26707, - 28185, - 29029, - 29872, - 32008, - 36996, - 39529, - 39973, - 27963, - 28369, - 29502, - 35905, - 38346, - 20976, - 24140, - 24488, - 24653, - 24822, - 24880, - 24908, - 26179, - 26180, - 27045, - 27841, - 28255, - 28361, - 28514, - 29004, - 29852, - 30343, - 31681, - 31783, - 33618, - 34647, - 36945, - 38541, - 40643, - 21295, - 22238, - 24315, - 24458, - 24674, - 24724, - 25079, - 26214, - 26371, - 27292, - 28142, - 28590, - 28784, - 29546, - 32362, - 33214, - 33588, - 34516, - 35496, - 36036, - 21123, - 29554, - 23446, - 27243, - 37892, - 21742, - 22150, - 23389, - 25928, - 25989, - 26313, - 26783, - 28045, - 28102, - 29243, - 32948, - 37237, - 39501, - 20399, - 20505, - 21402, - 21518, - 21564, - 21897, - 21957, - 24127, - 24460, - 26429, - 29030, - 29661, - 36869, - 21211, - 21235, - 22628, - 22734, - 28932, - 29071, - 29179, - 34224, - 35347, - 26248, - 34216, - 21927, - 26244, - 29002, - 33841, - 21321, - 21913, - 27585, - 24409, - 24509, - 25582, - 26249, - 28999, - 35569, - 36637, - 40638, - 20241, - 25658, - 28875, - 30054, - 34407, - 24676, - 35662, - 40440, - 20807, - 20982, - 21256, - 27958, - 33016, - 40657, - 26133, - 27427, - 28824, - 30165, - 21507, - 23673, - 32007, - 35350, - 27424, - 27453, - 27462, - 21560, - 24688, - 27965, - 32725, - 33288, - 20694, - 20958, - 21916, - 22123, - 22221, - 23020, - 23305, - 24076, - 24985, - 24984, - 25137, - 26206, - 26342, - 29081, - 29113, - 29114, - 29351, - 31143, - 31232, - 32690, - 35440, + "euc-kr": [44034, 44035, 44037, 44038, 44043, 44044, 44045, + 44046, 44047, 44056, 44062, 44063, 44065, 44066, + 44067, 44069, 44070, 44071, 44072, 44073, 44074, + 44075, 44078, 44082, 44083, 44084, 44085, 44086, + 44087, 44090, 44091, 44093, 44094, 44095, 44097, + 44098, 44099, 44100, 44101, 44102, 44103, 44104, + 44105, 44106, 44108, 44110, 44111, 44112, 44113, + 44114, 44115, 44117, 44118, 44119, 44121, 44122, + 44123, 44125, 44126, 44127, 44128, 44129, 44130, + 44131, 44132, 44133, 44134, 44135, 44136, 44137, + 44138, 44139, 44140, 44141, 44142, 44143, 44146, + 44147, 44149, 44150, 44153, 44155, 44156, 44157, + 44158, 44159, 44162, 44167, 44168, 44173, 44174, + 44175, 44177, 44178, 44179, 44181, 44182, 44183, + 44184, 44185, 44186, 44187, 44190, 44194, 44195, + 44196, 44197, 44198, 44199, 44203, 44205, 44206, + 44209, 44210, 44211, 44212, 44213, 44214, 44215, + 44218, 44222, 44223, 44224, 44226, 44227, 44229, + 44230, 44231, 44233, 44234, 44235, 44237, 44238, + 44239, 44240, 44241, 44242, 44243, 44244, 44246, + 44248, 44249, 44250, 44251, 44252, 44253, 44254, + 44255, 44258, 44259, 44261, 44262, 44265, 44267, + 44269, 44270, 44274, 44276, 44279, 44280, 44281, + 44282, 44283, 44286, 44287, 44289, 44290, 44291, + 44293, 44295, 44296, 44297, 44298, 44299, 44302, + 44304, 44306, 44307, 44308, 44309, 44310, 44311, + 44313, 44314, 44315, 44317, 44318, 44319, 44321, + 44322, 44323, 44324, 44325, 44326, 44327, 44328, + 44330, 44331, 44334, 44335, 44336, 44337, 44338, + 44339, 44342, 44343, 44345, 44346, 44347, 44349, + 44350, 44351, 44352, 44353, 44354, 44355, 44358, + 44360, 44362, 44363, 44364, 44365, 44366, 44367, + 44369, 44370, 44371, 44373, 44374, 44375, 44377, + 44378, 44379, 44380, 44381, 44382, 44383, 44384, + 44386, 44388, 44389, 44390, 44391, 44392, 44393, + 44394, 44395, 44398, 44399, 44401, 44402, 44407, + 44408, 44409, 44410, 44414, 44416, 44419, 44420, + 44421, 44422, 44423, 44426, 44427, 44429, 44430, + 44431, 44433, 44434, 44435, 44436, 44437, 44438, + 44439, 44440, 44441, 44442, 44443, 44446, 44447, + 44448, 44449, 44450, 44451, 44453, 44454, 44455, + 44456, 44457, 44458, 44459, 44460, 44461, 44462, + 44463, 44464, 44465, 44466, 44467, 44468, 44469, + 44470, 44472, 44473, 44474, 44475, 44476, 44477, + 44478, 44479, 44482, 44483, 44485, 44486, 44487, + 44489, 44490, 44491, 44492, 44493, 44494, 44495, + 44498, 44500, 44501, 44502, 44503, 44504, 44505, + 44506, 44507, 44509, 44510, 44511, 44513, 44514, + 44515, 44517, 44518, 44519, 44520, 44521, 44522, + 44523, 44524, 44525, 44526, 44527, 44528, 44529, + 44530, 44531, 44532, 44533, 44534, 44535, 44538, + 44539, 44541, 44542, 44546, 44547, 44548, 44549, + 44550, 44551, 44554, 44556, 44558, 44559, 44560, + 44561, 44562, 44563, 44565, 44566, 44567, 44568, + 44569, 44570, 44571, 44572, 44573, 44574, 44575, + 44576, 44577, 44578, 44579, 44580, 44581, 44582, + 44583, 44584, 44585, 44586, 44587, 44588, 44589, + 44590, 44591, 44594, 44595, 44597, 44598, 44601, + 44603, 44604, 44605, 44606, 44607, 44610, 44612, + 44615, 44616, 44617, 44619, 44623, 44625, 44626, + 44627, 44629, 44631, 44632, 44633, 44634, 44635, + 44638, 44642, 44643, 44644, 44646, 44647, 44650, + 44651, 44653, 44654, 44655, 44657, 44658, 44659, + 44660, 44661, 44662, 44663, 44666, 44670, 44671, + 44672, 44673, 44674, 44675, 44678, 44679, 44680, + 44681, 44682, 44683, 44685, 44686, 44687, 44688, + 44689, 44690, 44691, 44692, 44693, 44694, 44695, + 44696, 44697, 44698, 44699, 44700, 44701, 44702, + 44703, 44704, 44705, 44706, 44707, 44708, 44709, + 44710, 44711, 44712, 44713, 44714, 44715, 44716, + 44717, 44718, 44719, 44720, 44721, 44722, 44723, + 44724, 44725, 44726, 44727, 44728, 44729, 44730, + 44731, 44735, 44737, 44738, 44739, 44741, 44742, + 44743, 44744, 44745, 44746, 44747, 44750, 44754, + 44755, 44756, 44757, 44758, 44759, 44762, 44763, + 44765, 44766, 44767, 44768, 44769, 44770, 44771, + 44772, 44773, 44774, 44775, 44777, 44778, 44780, + 44782, 44783, 44784, 44785, 44786, 44787, 44789, + 44790, 44791, 44793, 44794, 44795, 44797, 44798, + 44799, 44800, 44801, 44802, 44803, 44804, 44805, + 44806, 44809, 44810, 44811, 44812, 44814, 44815, + 44817, 44818, 44819, 44820, 44821, 44822, 44823, + 44824, 44825, 44826, 44827, 44828, 44829, 44830, + 44831, 44832, 44833, 44834, 44835, 44836, 44837, + 44838, 44839, 44840, 44841, 44842, 44843, 44846, + 44847, 44849, 44851, 44853, 44854, 44855, 44856, + 44857, 44858, 44859, 44862, 44864, 44868, 44869, + 44870, 44871, 44874, 44875, 44876, 44877, 44878, + 44879, 44881, 44882, 44883, 44884, 44885, 44886, + 44887, 44888, 44889, 44890, 44891, 44894, 44895, + 44896, 44897, 44898, 44899, 44902, 44903, 44904, + 44905, 44906, 44907, 44908, 44909, 44910, 44911, + 44912, 44913, 44914, 44915, 44916, 44917, 44918, + 44919, 44920, 44922, 44923, 44924, 44925, 44926, + 44927, 44929, 44930, 44931, 44933, 44934, 44935, + 44937, 44938, 44939, 44940, 44941, 44942, 44943, + 44946, 44947, 44948, 44950, 44951, 44952, 44953, + 44954, 44955, 44957, 44958, 44959, 44960, 44961, + 44962, 44963, 44964, 44965, 44966, 44967, 44968, + 44969, 44970, 44971, 44972, 44973, 44974, 44975, + 44976, 44977, 44978, 44979, 44980, 44981, 44982, + 44983, 44986, 44987, 44989, 44990, 44991, 44993, + 44994, 44995, 44996, 44997, 44998, 45002, 45004, + 45007, 45008, 45009, 45010, 45011, 45013, 45014, + 45015, 45016, 45017, 45018, 45019, 45021, 45022, + 45023, 45024, 45025, 45026, 45027, 45028, 45029, + 45030, 45031, 45034, 45035, 45036, 45037, 45038, + 45039, 45042, 45043, 45045, 45046, 45047, 45049, + 45050, 45051, 45052, 45053, 45054, 45055, 45058, + 45059, 45061, 45062, 45063, 45064, 45065, 45066, + 45067, 45069, 45070, 45071, 45073, 45074, 45075, + 45077, 45078, 45079, 45080, 45081, 45082, 45083, + 45086, 45087, 45088, 45089, 45090, 45091, 45092, + 45093, 45094, 45095, 45097, 45098, 45099, 45100, + 45101, 45102, 45103, 45104, 45105, 45106, 45107, + 45108, 45109, 45110, 45111, 45112, 45113, 45114, + 45115, 45116, 45117, 45118, 45119, 45120, 45121, + 45122, 45123, 45126, 45127, 45129, 45131, 45133, + 45135, 45136, 45137, 45138, 45142, 45144, 45146, + 45147, 45148, 45150, 45151, 45152, 45153, 45154, + 45155, 45156, 45157, 45158, 45159, 45160, 45161, + 45162, 45163, 45164, 45165, 45166, 45167, 45168, + 45169, 45170, 45171, 45172, 45173, 45174, 45175, + 45176, 45177, 45178, 45179, 45182, 45183, 45185, + 45186, 45187, 45189, 45190, 45191, 45192, 45193, + 45194, 45195, 45198, 45200, 45202, 45203, 45204, + 45205, 45206, 45207, 45211, 45213, 45214, 45219, + 45220, 45221, 45222, 45223, 45226, 45232, 45234, + 45238, 45239, 45241, 45242, 45243, 45245, 45246, + 45247, 45248, 45249, 45250, 45251, 45254, 45258, + 45259, 45260, 45261, 45262, 45263, 45266, 45267, + 45269, 45270, 45271, 45273, 45274, 45275, 45276, + 45277, 45278, 45279, 45281, 45282, 45283, 45284, + 45286, 45287, 45288, 45289, 45290, 45291, 45292, + 45293, 45294, 45295, 45296, 45297, 45298, 45299, + 45300, 45301, 45302, 45303, 45304, 45305, 45306, + 45307, 45308, 45309, 45310, 45311, 45312, 45313, + 45314, 45315, 45316, 45317, 45318, 45319, 45322, + 45325, 45326, 45327, 45329, 45332, 45333, 45334, + 45335, 45338, 45342, 45343, 45344, 45345, 45346, + 45350, 45351, 45353, 45354, 45355, 45357, 45358, + 45359, 45360, 45361, 45362, 45363, 45366, 45370, + 45371, 45372, 45373, 45374, 45375, 45378, 45379, + 45381, 45382, 45383, 45385, 45386, 45387, 45388, + 45389, 45390, 45391, 45394, 45395, 45398, 45399, + 45401, 45402, 45403, 45405, 45406, 45407, 45409, + 45410, 45411, 45412, 45413, 45414, 45415, 45416, + 45417, 45418, 45419, 45420, 45421, 45422, 45423, + 45424, 45425, 45426, 45427, 45428, 45429, 45430, + 45431, 45434, 45435, 45437, 45438, 45439, 45441, + 45443, 45444, 45445, 45446, 45447, 45450, 45452, + 45454, 45455, 45456, 45457, 45461, 45462, 45463, + 45465, 45466, 45467, 45469, 45470, 45471, 45472, + 45473, 45474, 45475, 45476, 45477, 45478, 45479, + 45481, 45482, 45483, 45484, 45485, 45486, 45487, + 45488, 45489, 45490, 45491, 45492, 45493, 45494, + 45495, 45496, 45497, 45498, 45499, 45500, 45501, + 45502, 45503, 45504, 45505, 45506, 45507, 45508, + 45509, 45510, 45511, 45512, 45513, 45514, 45515, + 45517, 45518, 45519, 45521, 45522, 45523, 45525, + 45526, 45527, 45528, 45529, 45530, 45531, 45534, + 45536, 45537, 45538, 45539, 45540, 45541, 45542, + 45543, 45546, 45547, 45549, 45550, 45551, 45553, + 45554, 45555, 45556, 45557, 45558, 45559, 45560, + 45562, 45564, 45566, 45567, 45568, 45569, 45570, + 45571, 45574, 45575, 45577, 45578, 45581, 45582, + 45583, 45584, 45585, 45586, 45587, 45590, 45592, + 45594, 45595, 45596, 45597, 45598, 45599, 45601, + 45602, 45603, 45604, 45605, 45606, 45607, 45608, + 45609, 45610, 45611, 45612, 45613, 45614, 45615, + 45616, 45617, 45618, 45619, 45621, 45622, 45623, + 45624, 45625, 45626, 45627, 45629, 45630, 45631, + 45632, 45633, 45634, 45635, 45636, 45637, 45638, + 45639, 45640, 45641, 45642, 45643, 45644, 45645, + 45646, 45647, 45648, 45649, 45650, 45651, 45652, + 45653, 45654, 45655, 45657, 45658, 45659, 45661, + 45662, 45663, 45665, 45666, 45667, 45668, 45669, + 45670, 45671, 45674, 45675, 45676, 45677, 45678, + 45679, 45680, 45681, 45682, 45683, 45686, 45687, + 45688, 45689, 45690, 45691, 45693, 45694, 45695, + 45696, 45697, 45698, 45699, 45702, 45703, 45704, + 45706, 45707, 45708, 45709, 45710, 45711, 45714, + 45715, 45717, 45718, 45719, 45723, 45724, 45725, + 45726, 45727, 45730, 45732, 45735, 45736, 45737, + 45739, 45741, 45742, 45743, 45745, 45746, 45747, + 45749, 45750, 45751, 45752, 45753, 45754, 45755, + 45756, 45757, 45758, 45759, 45760, 45761, 45762, + 45763, 45764, 45765, 45766, 45767, 45770, 45771, + 45773, 45774, 45775, 45777, 45779, 45780, 45781, + 45782, 45783, 45786, 45788, 45790, 45791, 45792, + 45793, 45795, 45799, 45801, 45802, 45808, 45809, + 45810, 45814, 45820, 45821, 45822, 45826, 45827, + 45829, 45830, 45831, 45833, 45834, 45835, 45836, + 45837, 45838, 45839, 45842, 45846, 45847, 45848, + 45849, 45850, 45851, 45853, 45854, 45855, 45856, + 45857, 45858, 45859, 45860, 45861, 45862, 45863, + 45864, 45865, 45866, 45867, 45868, 45869, 45870, + 45871, 45872, 45873, 45874, 45875, 45876, 45877, + 45878, 45879, 45880, 45881, 45882, 45883, 45884, + 45885, 45886, 45887, 45888, 45889, 45890, 45891, + 45892, 45893, 45894, 45895, 45896, 45897, 45898, + 45899, 45900, 45901, 45902, 45903, 45904, 45905, + 45906, 45907, 45911, 45913, 45914, 45917, 45920, + 45921, 45922, 45923, 45926, 45928, 45930, 45932, + 45933, 45935, 45938, 45939, 45941, 45942, 45943, + 45945, 45946, 45947, 45948, 45949, 45950, 45951, + 45954, 45958, 45959, 45960, 45961, 45962, 45963, + 45965, 45966, 45967, 45969, 45970, 45971, 45973, + 45974, 45975, 45976, 45977, 45978, 45979, 45980, + 45981, 45982, 45983, 45986, 45987, 45988, 45989, + 45990, 45991, 45993, 45994, 45995, 45997, 45998, + 45999, 46000, 46001, 46002, 46003, 46004, 46005, + 46006, 46007, 46008, 46009, 46010, 46011, 46012, + 46013, 46014, 46015, 46016, 46017, 46018, 46019, + 46022, 46023, 46025, 46026, 46029, 46031, 46033, + 46034, 46035, 46038, 46040, 46042, 46044, 46046, + 46047, 46049, 46050, 46051, 46053, 46054, 46055, + 46057, 46058, 46059, 46060, 46061, 46062, 46063, + 46064, 46065, 46066, 46067, 46068, 46069, 46070, + 46071, 46072, 46073, 46074, 46075, 46077, 46078, + 46079, 46080, 46081, 46082, 46083, 46084, 46085, + 46086, 46087, 46088, 46089, 46090, 46091, 46092, + 46093, 46094, 46095, 46097, 46098, 46099, 46100, + 46101, 46102, 46103, 46105, 46106, 46107, 46109, + 46110, 46111, 46113, 46114, 46115, 46116, 46117, + 46118, 46119, 46122, 46124, 46125, 46126, 46127, + 46128, 46129, 46130, 46131, 46133, 46134, 46135, + 46136, 46137, 46138, 46139, 46140, 46141, 46142, + 46143, 46144, 46145, 46146, 46147, 46148, 46149, + 46150, 46151, 46152, 46153, 46154, 46155, 46156, + 46157, 46158, 46159, 46162, 46163, 46165, 46166, + 46167, 46169, 46170, 46171, 46172, 46173, 46174, + 46175, 46178, 46180, 46182, 46183, 46184, 46185, + 46186, 46187, 46189, 46190, 46191, 46192, 46193, + 46194, 46195, 46196, 46197, 46198, 46199, 46200, + 46201, 46202, 46203, 46204, 46205, 46206, 46207, + 46209, 46210, 46211, 46212, 46213, 46214, 46215, + 46217, 46218, 46219, 46220, 46221, 46222, 46223, + 46224, 46225, 46226, 46227, 46228, 46229, 46230, + 46231, 46232, 46233, 46234, 46235, 46236, 46238, + 46239, 46240, 46241, 46242, 46243, 46245, 46246, + 46247, 46249, 46250, 46251, 46253, 46254, 46255, + 46256, 46257, 46258, 46259, 46260, 46262, 46264, + 46266, 46267, 46268, 46269, 46270, 46271, 46273, + 46274, 46275, 46277, 46278, 46279, 46281, 46282, + 46283, 46284, 46285, 46286, 46287, 46289, 46290, + 46291, 46292, 46294, 46295, 46296, 46297, 46298, + 46299, 46302, 46303, 46305, 46306, 46309, 46311, + 46312, 46313, 46314, 46315, 46318, 46320, 46322, + 46323, 46324, 46325, 46326, 46327, 46329, 46330, + 46331, 46332, 46333, 46334, 46335, 46336, 46337, + 46338, 46339, 46340, 46341, 46342, 46343, 46344, + 46345, 46346, 46347, 46348, 46349, 46350, 46351, + 46352, 46353, 46354, 46355, 46358, 46359, 46361, + 46362, 46365, 46366, 46367, 46368, 46369, 46370, + 46371, 46374, 46379, 46380, 46381, 46382, 46383, + 46386, 46387, 46389, 46390, 46391, 46393, 46394, + 46395, 46396, 46397, 46398, 46399, 46402, 46406, + 46407, 46408, 46409, 46410, 46414, 46415, 46417, + 46418, 46419, 46421, 46422, 46423, 46424, 46425, + 46426, 46427, 46430, 46434, 46435, 46436, 46437, + 46438, 46439, 46440, 46441, 46442, 46443, 46444, + 46445, 46446, 46447, 46448, 46449, 46450, 46451, + 46452, 46453, 46454, 46455, 46456, 46457, 46458, + 46459, 46460, 46461, 46462, 46463, 46464, 46465, + 46466, 46467, 46468, 46469, 46470, 46471, 46472, + 46473, 46474, 46475, 46476, 46477, 46478, 46479, + 46480, 46481, 46482, 46483, 46484, 46485, 46486, + 46487, 46488, 46489, 46490, 46491, 46492, 46493, + 46494, 46495, 46498, 46499, 46501, 46502, 46503, + 46505, 46508, 46509, 46510, 46511, 46514, 46518, + 46519, 46520, 46521, 46522, 46526, 46527, 46529, + 46530, 46531, 46533, 46534, 46535, 46536, 46537, + 46538, 46539, 46542, 46546, 46547, 46548, 46549, + 46550, 46551, 46553, 46554, 46555, 46556, 46557, + 46558, 46559, 46560, 46561, 46562, 46563, 46564, + 46565, 46566, 46567, 46568, 46569, 46570, 46571, + 46573, 46574, 46575, 46576, 46577, 46578, 46579, + 46580, 46581, 46582, 46583, 46584, 46585, 46586, + 46587, 46588, 46589, 46590, 46591, 46592, 46593, + 46594, 46595, 46596, 46597, 46598, 46599, 46600, + 46601, 46602, 46603, 46604, 46605, 46606, 46607, + 46610, 46611, 46613, 46614, 46615, 46617, 46618, + 46619, 46620, 46621, 46622, 46623, 46624, 46625, + 46626, 46627, 46628, 46630, 46631, 46632, 46633, + 46634, 46635, 46637, 46638, 46639, 46640, 46641, + 46642, 46643, 46645, 46646, 46647, 46648, 46649, + 46650, 46651, 46652, 46653, 46654, 46655, 46656, + 46657, 46658, 46659, 46660, 46661, 46662, 46663, + 46665, 46666, 46667, 46668, 46669, 46670, 46671, + 46672, 46673, 46674, 46675, 46676, 46677, 46678, + 46679, 46680, 46681, 46682, 46683, 46684, 46685, + 46686, 46687, 46688, 46689, 46690, 46691, 46693, + 46694, 46695, 46697, 46698, 46699, 46700, 46701, + 46702, 46703, 46704, 46705, 46706, 46707, 46708, + 46709, 46710, 46711, 46712, 46713, 46714, 46715, + 46716, 46717, 46718, 46719, 46720, 46721, 46722, + 46723, 46724, 46725, 46726, 46727, 46728, 46729, + 46730, 46731, 46732, 46733, 46734, 46735, 46736, + 46737, 46738, 46739, 46740, 46741, 46742, 46743, + 46744, 46745, 46746, 46747, 46750, 46751, 46753, + 46754, 46755, 46757, 46758, 46759, 46760, 46761, + 46762, 46765, 46766, 46767, 46768, 46770, 46771, + 46772, 46773, 46774, 46775, 46776, 46777, 46778, + 46779, 46780, 46781, 46782, 46783, 46784, 46785, + 46786, 46787, 46788, 46789, 46790, 46791, 46792, + 46793, 46794, 46795, 46796, 46797, 46798, 46799, + 46800, 46801, 46802, 46803, 46805, 46806, 46807, + 46808, 46809, 46810, 46811, 46812, 46813, 46814, + 46815, 46816, 46817, 46818, 46819, 46820, 46821, + 46822, 46823, 46824, 46825, 46826, 46827, 46828, + 46829, 46830, 46831, 46833, 46834, 46835, 46837, + 46838, 46839, 46841, 46842, 46843, 46844, 46845, + 46846, 46847, 46850, 46851, 46852, 46854, 46855, + 46856, 46857, 46858, 46859, 46860, 46861, 46862, + 46863, 46864, 46865, 46866, 46867, 46868, 46869, + 46870, 46871, 46872, 46873, 46874, 46875, 46876, + 46877, 46878, 46879, 46880, 46881, 46882, 46883, + 46884, 46885, 46886, 46887, 46890, 46891, 46893, + 46894, 46897, 46898, 46899, 46900, 46901, 46902, + 46903, 46906, 46908, 46909, 46910, 46911, 46912, + 46913, 46914, 46915, 46917, 46918, 46919, 46921, + 46922, 46923, 46925, 46926, 46927, 46928, 46929, + 46930, 46931, 46934, 46935, 46936, 46937, 46938, + 46939, 46940, 46941, 46942, 46943, 46945, 46946, + 46947, 46949, 46950, 46951, 46953, 46954, 46955, + 46956, 46957, 46958, 46959, 46962, 46964, 46966, + 46967, 46968, 46969, 46970, 46971, 46974, 46975, + 46977, 46978, 46979, 46981, 46982, 46983, 46984, + 46985, 46986, 46987, 46990, 46995, 46996, 46997, + 47002, 47003, 47005, 47006, 47007, 47009, 47010, + 47011, 47012, 47013, 47014, 47015, 47018, 47022, + 47023, 47024, 47025, 47026, 47027, 47030, 47031, + 47033, 47034, 47035, 47036, 47037, 47038, 47039, + 47040, 47041, 47042, 47043, 47044, 47045, 47046, + 47048, 47050, 47051, 47052, 47053, 47054, 47055, + 47056, 47057, 47058, 47059, 47060, 47061, 47062, + 47063, 47064, 47065, 47066, 47067, 47068, 47069, + 47070, 47071, 47072, 47073, 47074, 47075, 47076, + 47077, 47078, 47079, 47080, 47081, 47082, 47083, + 47086, 47087, 47089, 47090, 47091, 47093, 47094, + 47095, 47096, 47097, 47098, 47099, 47102, 47106, + 47107, 47108, 47109, 47110, 47114, 47115, 47117, + 47118, 47119, 47121, 47122, 47123, 47124, 47125, + 47126, 47127, 47130, 47132, 47134, 47135, 47136, + 47137, 47138, 47139, 47142, 47143, 47145, 47146, + 47147, 47149, 47150, 47151, 47152, 47153, 47154, + 47155, 47158, 47162, 47163, 47164, 47165, 47166, + 47167, 47169, 47170, 47171, 47173, 47174, 47175, + 47176, 47177, 47178, 47179, 47180, 47181, 47182, + 47183, 47184, 47186, 47188, 47189, 47190, 47191, + 47192, 47193, 47194, 47195, 47198, 47199, 47201, + 47202, 47203, 47205, 47206, 47207, 47208, 47209, + 47210, 47211, 47214, 47216, 47218, 47219, 47220, + 47221, 47222, 47223, 47225, 47226, 47227, 47229, + 47230, 47231, 47232, 47233, 47234, 47235, 47236, + 47237, 47238, 47239, 47240, 47241, 47242, 47243, + 47244, 47246, 47247, 47248, 47249, 47250, 47251, + 47252, 47253, 47254, 47255, 47256, 47257, 47258, + 47259, 47260, 47261, 47262, 47263, 47264, 47265, + 47266, 47267, 47268, 47269, 47270, 47271, 47273, + 47274, 47275, 47276, 47277, 47278, 47279, 47281, + 47282, 47283, 47285, 47286, 47287, 47289, 47290, + 47291, 47292, 47293, 47294, 47295, 47298, 47300, + 47302, 47303, 47304, 47305, 47306, 47307, 47309, + 47310, 47311, 47313, 47314, 47315, 47317, 47318, + 47319, 47320, 47321, 47322, 47323, 47324, 47326, + 47328, 47330, 47331, 47332, 47333, 47334, 47335, + 47338, 47339, 47341, 47342, 47343, 47345, 47346, + 47347, 47348, 47349, 47350, 47351, 47354, 47356, + 47358, 47359, 47360, 47361, 47362, 47363, 47365, + 47366, 47367, 47368, 47369, 47370, 47371, 47372, + 47373, 47374, 47375, 47376, 47377, 47378, 47379, + 47380, 47381, 47382, 47383, 47385, 47386, 47387, + 47388, 47389, 47390, 47391, 47393, 47394, 47395, + 47396, 47397, 47398, 47399, 47400, 47401, 47402, + 47403, 47404, 47405, 47406, 47407, 47408, 47409, + 47410, 47411, 47412, 47413, 47414, 47415, 47416, + 47417, 47418, 47419, 47422, 47423, 47425, 47426, + 47427, 47429, 47430, 47431, 47432, 47433, 47434, + 47435, 47437, 47438, 47440, 47442, 47443, 47444, + 47445, 47446, 47447, 47450, 47451, 47453, 47454, + 47455, 47457, 47458, 47459, 47460, 47461, 47462, + 47463, 47466, 47468, 47470, 47471, 47472, 47473, + 47474, 47475, 47478, 47479, 47481, 47482, 47483, + 47485, 47486, 47487, 47488, 47489, 47490, 47491, + 47494, 47496, 47499, 47500, 47503, 47504, 47505, + 47506, 47507, 47508, 47509, 47510, 47511, 47512, + 47513, 47514, 47515, 47516, 47517, 47518, 47519, + 47520, 47521, 47522, 47523, 47524, 47525, 47526, + 47527, 47528, 47529, 47530, 47531, 47534, 47535, + 47537, 47538, 47539, 47541, 47542, 47543, 47544, + 47545, 47546, 47547, 47550, 47552, 47554, 47555, + 47556, 47557, 47558, 47559, 47562, 47563, 47565, + 47571, 47572, 47573, 47574, 47575, 47578, 47580, + 47583, 47584, 47586, 47590, 47591, 47593, 47594, + 47595, 47597, 47598, 47599, 47600, 47601, 47602, + 47603, 47606, 47611, 47612, 47613, 47614, 47615, + 47618, 47619, 47620, 47621, 47622, 47623, 47625, + 47626, 47627, 47628, 47629, 47630, 47631, 47632, + 47633, 47634, 47635, 47636, 47638, 47639, 47640, + 47641, 47642, 47643, 47644, 47645, 47646, 47647, + 47648, 47649, 47650, 47651, 47652, 47653, 47654, + 47655, 47656, 47657, 47658, 47659, 47660, 47661, + 47662, 47663, 47664, 47665, 47666, 47667, 47668, + 47669, 47670, 47671, 47674, 47675, 47677, 47678, + 47679, 47681, 47683, 47684, 47685, 47686, 47687, + 47690, 47692, 47695, 47696, 47697, 47698, 47702, + 47703, 47705, 47706, 47707, 47709, 47710, 47711, + 47712, 47713, 47714, 47715, 47718, 47722, 47723, + 47724, 47725, 47726, 47727, 47730, 47731, 47733, + 47734, 47735, 47737, 47738, 47739, 47740, 47741, + 47742, 47743, 47744, 47745, 47746, 47750, 47752, + 47753, 47754, 47755, 47757, 47758, 47759, 47760, + 47761, 47762, 47763, 47764, 47765, 47766, 47767, + 47768, 47769, 47770, 47771, 47772, 47773, 47774, + 47775, 47776, 47777, 47778, 47779, 47780, 47781, + 47782, 47783, 47786, 47789, 47790, 47791, 47793, + 47795, 47796, 47797, 47798, 47799, 47802, 47804, + 47806, 47807, 47808, 47809, 47810, 47811, 47813, + 47814, 47815, 47817, 47818, 47819, 47820, 47821, + 47822, 47823, 47824, 47825, 47826, 47827, 47828, + 47829, 47830, 47831, 47834, 47835, 47836, 47837, + 47838, 47839, 47840, 47841, 47842, 47843, 47844, + 47845, 47846, 47847, 47848, 47849, 47850, 47851, + 47852, 47853, 47854, 47855, 47856, 47857, 47858, + 47859, 47860, 47861, 47862, 47863, 47864, 47865, + 47866, 47867, 47869, 47870, 47871, 47873, 47874, + 47875, 47877, 47878, 47879, 47880, 47881, 47882, + 47883, 47884, 47886, 47888, 47890, 47891, 47892, + 47893, 47894, 47895, 47897, 47898, 47899, 47901, + 47902, 47903, 47905, 47906, 47907, 47908, 47909, + 47910, 47911, 47912, 47914, 47916, 47917, 47918, + 47919, 47920, 47921, 47922, 47923, 47927, 47929, + 47930, 47935, 47936, 47937, 47938, 47939, 47942, + 47944, 47946, 47947, 47948, 47950, 47953, 47954, + 47955, 47957, 47958, 47959, 47961, 47962, 47963, + 47964, 47965, 47966, 47967, 47968, 47970, 47972, + 47973, 47974, 47975, 47976, 47977, 47978, 47979, + 47981, 47982, 47983, 47984, 47985, 47986, 47987, + 47988, 47989, 47990, 47991, 47992, 47993, 47994, + 47995, 47996, 47997, 47998, 47999, 48000, 48001, + 48002, 48003, 48004, 48005, 48006, 48007, 48009, + 48010, 48011, 48013, 48014, 48015, 48017, 48018, + 48019, 48020, 48021, 48022, 48023, 48024, 48025, + 48026, 48027, 48028, 48029, 48030, 48031, 48032, + 48033, 48034, 48035, 48037, 48038, 48039, 48041, + 48042, 48043, 48045, 48046, 48047, 48048, 48049, + 48050, 48051, 48053, 48054, 48056, 48057, 48058, + 48059, 48060, 48061, 48062, 48063, 48065, 48066, + 48067, 48069, 48070, 48071, 48073, 48074, 48075, + 48076, 48077, 48078, 48079, 48081, 48082, 48084, + 48085, 48086, 48087, 48088, 48089, 48090, 48091, + 48092, 48093, 48094, 48095, 48096, 48097, 48098, + 48099, 48100, 48101, 48102, 48103, 48104, 48105, + 48106, 48107, 48108, 48109, 48110, 48111, 48112, + 48113, 48114, 48115, 48116, 48117, 48118, 48119, + 48122, 48123, 48125, 48126, 48129, 48131, 48132, + 48133, 48134, 48135, 48138, 48142, 48144, 48146, + 48147, 48153, 48154, 48160, 48161, 48162, 48163, + 48166, 48168, 48170, 48171, 48172, 48174, 48175, + 48178, 48179, 48181, 48182, 48183, 48185, 48186, + 48187, 48188, 48189, 48190, 48191, 48194, 48198, + 48199, 48200, 48202, 48203, 48206, 48207, 48209, + 48210, 48211, 48212, 48213, 48214, 48215, 48216, + 48217, 48218, 48219, 48220, 48222, 48223, 48224, + 48225, 48226, 48227, 48228, 48229, 48230, 48231, + 48232, 48233, 48234, 48235, 48236, 48237, 48238, + 48239, 48240, 48241, 48242, 48243, 48244, 48245, + 48246, 48247, 48248, 48249, 48250, 48251, 48252, + 48253, 48254, 48255, 48256, 48257, 48258, 48259, + 48262, 48263, 48265, 48266, 48269, 48271, 48272, + 48273, 48274, 48275, 48278, 48280, 48283, 48284, + 48285, 48286, 48287, 48290, 48291, 48293, 48294, + 48297, 48298, 48299, 48300, 48301, 48302, 48303, + 48306, 48310, 48311, 48312, 48313, 48314, 48315, + 48318, 48319, 48321, 48322, 48323, 48325, 48326, + 48327, 48328, 48329, 48330, 48331, 48332, 48334, + 48338, 48339, 48340, 48342, 48343, 48345, 48346, + 48347, 48349, 48350, 48351, 48352, 48353, 48354, + 48355, 48356, 48357, 48358, 48359, 48360, 48361, + 48362, 48363, 48364, 48365, 48366, 48367, 48368, + 48369, 48370, 48371, 48375, 48377, 48378, 48379, + 48381, 48382, 48383, 48384, 48385, 48386, 48387, + 48390, 48392, 48394, 48395, 48396, 48397, 48398, + 48399, 48401, 48402, 48403, 48405, 48406, 48407, + 48408, 48409, 48410, 48411, 48412, 48413, 48414, + 48415, 48416, 48417, 48418, 48419, 48421, 48422, + 48423, 48424, 48425, 48426, 48427, 48429, 48430, + 48431, 48432, 48433, 48434, 48435, 48436, 48437, + 48438, 48439, 48440, 48441, 48442, 48443, 48444, + 48445, 48446, 48447, 48449, 48450, 48451, 48452, + 48453, 48454, 48455, 48458, 48459, 48461, 48462, + 48463, 48465, 48466, 48467, 48468, 48469, 48470, + 48471, 48474, 48475, 48476, 48477, 48478, 48479, + 48480, 48481, 48482, 48483, 48485, 48486, 48487, + 48489, 48490, 48491, 48492, 48493, 48494, 48495, + 48496, 48497, 48498, 48499, 48500, 48501, 48502, + 48503, 48504, 48505, 48506, 48507, 48508, 48509, + 48510, 48511, 48514, 48515, 48517, 48518, 48523, + 48524, 48525, 48526, 48527, 48530, 48532, 48534, + 48535, 48536, 48539, 48541, 48542, 48543, 48544, + 48545, 48546, 48547, 48549, 48550, 48551, 48552, + 48553, 48554, 48555, 48556, 48557, 48558, 48559, + 48561, 48562, 48563, 48564, 48565, 48566, 48567, + 48569, 48570, 48571, 48572, 48573, 48574, 48575, + 48576, 48577, 48578, 48579, 48580, 48581, 48582, + 48583, 48584, 48585, 48586, 48587, 48588, 48589, + 48590, 48591, 48592, 48593, 48594, 48595, 48598, + 48599, 48601, 48602, 48603, 48605, 48606, 48607, + 48608, 48609, 48610, 48611, 48612, 48613, 48614, + 48615, 48616, 48618, 48619, 48620, 48621, 48622, + 48623, 48625, 48626, 48627, 48629, 48630, 48631, + 48633, 48634, 48635, 48636, 48637, 48638, 48639, + 48641, 48642, 48644, 48646, 48647, 48648, 48649, + 48650, 48651, 48654, 48655, 48657, 48658, 48659, + 48661, 48662, 48663, 48664, 48665, 48666, 48667, + 48670, 48672, 48673, 48674, 48675, 48676, 48677, + 48678, 48679, 48680, 48681, 48682, 48683, 48684, + 48685, 48686, 48687, 48688, 48689, 48690, 48691, + 48692, 48693, 48694, 48695, 48696, 48697, 48698, + 48699, 48700, 48701, 48702, 48703, 48704, 48705, + 48706, 48707, 48710, 48711, 48713, 48714, 48715, + 48717, 48719, 48720, 48721, 48722, 48723, 48726, + 48728, 48732, 48733, 48734, 48735, 48738, 48739, + 48741, 48742, 48743, 48745, 48747, 48748, 48749, + 48750, 48751, 48754, 48758, 48759, 48760, 48761, + 48762, 48766, 48767, 48769, 48770, 48771, 48773, + 48774, 48775, 48776, 48777, 48778, 48779, 48782, + 48786, 48787, 48788, 48789, 48790, 48791, 48794, + 48795, 48796, 48797, 48798, 48799, 48800, 48801, + 48802, 48803, 48804, 48805, 48806, 48807, 48809, + 48810, 48811, 48812, 48813, 48814, 48815, 48816, + 48817, 48818, 48819, 48820, 48821, 48822, 48823, + 48824, 48825, 48826, 48827, 48828, 48829, 48830, + 48831, 48832, 48833, 48834, 48835, 48836, 48837, + 48838, 48839, 48840, 48841, 48842, 48843, 48844, + 48845, 48846, 48847, 48850, 48851, 48853, 48854, + 48857, 48858, 48859, 48860, 48861, 48862, 48863, + 48865, 48866, 48870, 48871, 48872, 48873, 48874, + 48875, 48877, 48878, 48879, 48880, 48881, 48882, + 48883, 48884, 48885, 48886, 48887, 48888, 48889, + 48890, 48891, 48892, 48893, 48894, 48895, 48896, + 48898, 48899, 48900, 48901, 48902, 48903, 48906, + 48907, 48908, 48909, 48910, 48911, 48912, 48913, + 48914, 48915, 48916, 48917, 48918, 48919, 48922, + 48926, 48927, 48928, 48929, 48930, 48931, 48932, + 48933, 48934, 48935, 48936, 48937, 48938, 48939, + 48940, 48941, 48942, 48943, 48944, 48945, 48946, + 48947, 48948, 48949, 48950, 48951, 48952, 48953, + 48954, 48955, 48956, 48957, 48958, 48959, 48962, + 48963, 48965, 48966, 48967, 48969, 48970, 48971, + 48972, 48973, 48974, 48975, 48978, 48979, 48980, + 48982, 48983, 48984, 48985, 48986, 48987, 48988, + 48989, 48990, 48991, 48992, 48993, 48994, 48995, + 48996, 48997, 48998, 48999, 49000, 49001, 49002, + 49003, 49004, 49005, 49006, 49007, 49008, 49009, + 49010, 49011, 49012, 49013, 49014, 49015, 49016, + 49017, 49018, 49019, 49020, 49021, 49022, 49023, + 49024, 49025, 49026, 49027, 49028, 49029, 49030, + 49031, 49032, 49033, 49034, 49035, 49036, 49037, + 49038, 49039, 49040, 49041, 49042, 49043, 49045, + 49046, 49047, 49048, 49049, 49050, 49051, 49052, + 49053, 49054, 49055, 49056, 49057, 49058, 49059, + 49060, 49061, 49062, 49063, 49064, 49065, 49066, + 49067, 49068, 49069, 49070, 49071, 49073, 49074, + 49075, 49076, 49077, 49078, 49079, 49080, 49081, + 49082, 49083, 49084, 49085, 49086, 49087, 49088, + 49089, 49090, 49091, 49092, 49094, 49095, 49096, + 49097, 49098, 49099, 49102, 49103, 49105, 49106, + 49107, 49109, 49110, 49111, 49112, 49113, 49114, + 49115, 49117, 49118, 49120, 49122, 49123, 49124, + 49125, 49126, 49127, 49128, 49129, 49130, 49131, + 49132, 49133, 49134, 49135, 49136, 49137, 49138, + 49139, 49140, 49141, 49142, 49143, 49144, 49145, + 49146, 49147, 49148, 49149, 49150, 49151, 49152, + 49153, 49154, 49155, 49156, 49157, 49158, 49159, + 49160, 49161, 49162, 49163, 49164, 49165, 49166, + 49167, 49168, 49169, 49170, 49171, 49172, 49173, + 49174, 49175, 49176, 49177, 49178, 49179, 49180, + 49181, 49182, 49183, 49184, 49185, 49186, 49187, + 49188, 49189, 49190, 49191, 49192, 49193, 49194, + 49195, 49196, 49197, 49198, 49199, 49200, 49201, + 49202, 49203, 49204, 49205, 49206, 49207, 49208, + 49209, 49210, 49211, 49213, 49214, 49215, 49216, + 49217, 49218, 49219, 49220, 49221, 49222, 49223, + 49224, 49225, 49226, 49227, 49228, 49229, 49230, + 49231, 49232, 49234, 49235, 49236, 49237, 49238, + 49239, 49241, 49242, 49243, 49245, 49246, 49247, + 49249, 49250, 49251, 49252, 49253, 49254, 49255, + 49258, 49259, 49260, 49261, 49262, 49263, 49264, + 49265, 49266, 49267, 49268, 49269, 49270, 49271, + 49272, 49273, 49274, 49275, 49276, 49277, 49278, + 49279, 49280, 49281, 49282, 49283, 49284, 49285, + 49286, 49287, 49288, 49289, 49290, 49291, 49292, + 49293, 49294, 49295, 49298, 49299, 49301, 49302, + 49303, 49305, 49306, 49307, 49308, 49309, 49310, + 49311, 49314, 49316, 49318, 49319, 49320, 49321, + 49322, 49323, 49326, 49329, 49330, 49335, 49336, + 49337, 49338, 49339, 49342, 49346, 49347, 49348, + 49350, 49351, 49354, 49355, 49357, 49358, 49359, + 49361, 49362, 49363, 49364, 49365, 49366, 49367, + 49370, 49374, 49375, 49376, 49377, 49378, 49379, + 49382, 49383, 49385, 49386, 49387, 49389, 49390, + 49391, 49392, 49393, 49394, 49395, 49398, 49400, + 49402, 49403, 49404, 49405, 49406, 49407, 49409, + 49410, 49411, 49413, 49414, 49415, 49417, 49418, + 49419, 49420, 49421, 49422, 49423, 49425, 49426, + 49427, 49428, 49430, 49431, 49432, 49433, 49434, + 49435, 49441, 49442, 49445, 49448, 49449, 49450, + 49451, 49454, 49458, 49459, 49460, 49461, 49463, + 49466, 49467, 49469, 49470, 49471, 49473, 49474, + 49475, 49476, 49477, 49478, 49479, 49482, 49486, + 49487, 49488, 49489, 49490, 49491, 49494, 49495, + 49497, 49498, 49499, 49501, 49502, 49503, 49504, + 49505, 49506, 49507, 49510, 49514, 49515, 49516, + 49517, 49518, 49519, 49521, 49522, 49523, 49525, + 49526, 49527, 49529, 49530, 49531, 49532, 49533, + 49534, 49535, 49536, 49537, 49538, 49539, 49540, + 49542, 49543, 49544, 49545, 49546, 49547, 49551, + 49553, 49554, 49555, 49557, 49559, 49560, 49561, + 49562, 49563, 49566, 49568, 49570, 49571, 49572, + 49574, 49575, 49578, 49579, 49581, 49582, 49583, + 49585, 49586, 49587, 49588, 49589, 49590, 49591, + 49592, 49593, 49594, 49595, 49596, 49598, 49599, + 49600, 49601, 49602, 49603, 49605, 49606, 49607, + 49609, 49610, 49611, 49613, 49614, 49615, 49616, + 49617, 49618, 49619, 49621, 49622, 49625, 49626, + 49627, 49628, 49629, 49630, 49631, 49633, 49634, + 49635, 49637, 49638, 49639, 49641, 49642, 49643, + 49644, 49645, 49646, 49647, 49650, 49652, 49653, + 49654, 49655, 49656, 49657, 49658, 49659, 49662, + 49663, 49665, 49666, 49667, 49669, 49670, 49671, + 49672, 49673, 49674, 49675, 49678, 49680, 49682, + 49683, 49684, 49685, 49686, 49687, 49690, 49691, + 49693, 49694, 49697, 49698, 49699, 49700, 49701, + 49702, 49703, 49706, 49708, 49710, 49712, 49715, + 49717, 49718, 49719, 49720, 49721, 49722, 49723, + 49724, 49725, 49726, 49727, 49728, 49729, 49730, + 49731, 49732, 49733, 49734, 49735, 49737, 49738, + 49739, 49740, 49741, 49742, 49743, 49746, 49747, + 49749, 49750, 49751, 49753, 49754, 49755, 49756, + 49757, 49758, 49759, 49761, 49762, 49763, 49764, + 49766, 49767, 49768, 49769, 49770, 49771, 49774, + 49775, 49777, 49778, 49779, 49781, 49782, 49783, + 49784, 49785, 49786, 49787, 49790, 49792, 49794, + 49795, 49796, 49797, 49798, 49799, 49802, 49803, + 49804, 49805, 49806, 49807, 49809, 49810, 49811, + 49812, 49813, 49814, 49815, 49817, 49818, 49820, + 49822, 49823, 49824, 49825, 49826, 49827, 49830, + 49831, 49833, 49834, 49835, 49838, 49839, 49840, + 49841, 49842, 49843, 49846, 49848, 49850, 49851, + 49852, 49853, 49854, 49855, 49856, 49857, 49858, + 49859, 49860, 49861, 49862, 49863, 49864, 49865, + 49866, 49867, 49868, 49869, 49870, 49871, 49872, + 49873, 49874, 49875, 49876, 49877, 49878, 49879, + 49880, 49881, 49882, 49883, 49886, 49887, 49889, + 49890, 49893, 49894, 49895, 49896, 49897, 49898, + 49902, 49904, 49906, 49907, 49908, 49909, 49911, + 49914, 49917, 49918, 49919, 49921, 49922, 49923, + 49924, 49925, 49926, 49927, 49930, 49931, 49934, + 49935, 49936, 49937, 49938, 49942, 49943, 49945, + 49946, 49947, 49949, 49950, 49951, 49952, 49953, + 49954, 49955, 49958, 49959, 49962, 49963, 49964, + 49965, 49966, 49967, 49968, 49969, 49970, 49971, + 49972, 49973, 49974, 49975, 49976, 49977, 49978, + 49979, 49980, 49981, 49982, 49983, 49984, 49985, + 49986, 49987, 49988, 49990, 49991, 49992, 49993, + 49994, 49995, 49996, 49997, 49998, 49999, 50000, + 50001, 50002, 50003, 50004, 50005, 50006, 50007, + 50008, 50009, 50010, 50011, 50012, 50013, 50014, + 50015, 50016, 50017, 50018, 50019, 50020, 50021, + 50022, 50023, 50026, 50027, 50029, 50030, 50031, + 50033, 50035, 50036, 50037, 50038, 50039, 50042, + 50043, 50046, 50047, 50048, 50049, 50050, 50051, + 50053, 50054, 50055, 50057, 50058, 50059, 50061, + 50062, 50063, 50064, 50065, 50066, 50067, 50068, + 50069, 50070, 50071, 50072, 50073, 50074, 50075, + 50076, 50077, 50078, 50079, 50080, 50081, 50082, + 50083, 50084, 50085, 50086, 50087, 50088, 50089, + 50090, 50091, 50092, 50093, 50094, 50095, 50096, + 50097, 50098, 50099, 50100, 50101, 50102, 50103, + 50104, 50105, 50106, 50107, 50108, 50109, 50110, + 50111, 50113, 50114, 50115, 50116, 50117, 50118, + 50119, 50120, 50121, 50122, 50123, 50124, 50125, + 50126, 50127, 50128, 50129, 50130, 50131, 50132, + 50133, 50134, 50135, 50138, 50139, 50141, 50142, + 50145, 50147, 50148, 50149, 50150, 50151, 50154, + 50155, 50156, 50158, 50159, 50160, 50161, 50162, + 50163, 50166, 50167, 50169, 50170, 50171, 50172, + 50173, 50174, 50175, 50176, 50177, 50178, 50179, + 50180, 50181, 50182, 50183, 50185, 50186, 50187, + 50188, 50189, 50190, 50191, 50193, 50194, 50195, + 50196, 50197, 50198, 50199, 50200, 50201, 50202, + 50203, 50204, 50205, 50206, 50207, 50208, 50209, + 50210, 50211, 50213, 50214, 50215, 50216, 50217, + 50218, 50219, 50221, 50222, 50223, 50225, 50226, + 50227, 50229, 50230, 50231, 50232, 50233, 50234, + 50235, 50238, 50239, 50240, 50241, 50242, 50243, + 50244, 50245, 50246, 50247, 50249, 50250, 50251, + 50252, 50253, 50254, 50255, 50256, 50257, 50258, + 50259, 50260, 50261, 50262, 50263, 50264, 50265, + 50266, 50267, 50268, 50269, 50270, 50271, 50272, + 50273, 50274, 50275, 50278, 50279, 50281, 50282, + 50283, 50285, 50286, 50287, 50288, 50289, 50290, + 50291, 50294, 50295, 50296, 50298, 50299, 50300, + 50301, 50302, 50303, 50305, 50306, 50307, 50308, + 50309, 50310, 50311, 50312, 50313, 50314, 50315, + 50316, 50317, 50318, 50319, 50320, 50321, 50322, + 50323, 50325, 50326, 50327, 50328, 50329, 50330, + 50331, 50333, 50334, 50335, 50336, 50337, 50338, + 50339, 50340, 50341, 50342, 50343, 50344, 50345, + 50346, 50347, 50348, 50349, 50350, 50351, 50352, + 50353, 50354, 50355, 50356, 50357, 50358, 50359, + 50361, 50362, 50363, 50365, 50366, 50367, 50368, + 50369, 50370, 50371, 50372, 50373, 50374, 50375, + 50376, 50377, 50378, 50379, 50380, 50381, 50382, + 50383, 50384, 50385, 50386, 50387, 50388, 50389, + 50390, 50391, 50392, 50393, 50394, 50395, 50396, + 50397, 50398, 50399, 50400, 50401, 50402, 50403, + 50404, 50405, 50406, 50407, 50408, 50410, 50411, + 50412, 50413, 50414, 50415, 50418, 50419, 50421, + 50422, 50423, 50425, 50427, 50428, 50429, 50430, + 50434, 50435, 50436, 50437, 50438, 50439, 50440, + 50441, 50442, 50443, 50445, 50446, 50447, 50449, + 50450, 50451, 50453, 50454, 50455, 50456, 50457, + 50458, 50459, 50461, 50462, 50463, 50464, 50465, + 50466, 50467, 50468, 50469, 50470, 50471, 50474, + 50475, 50477, 50478, 50479, 50481, 50482, 50483, + 50484, 50485, 50486, 50487, 50490, 50492, 50494, + 50495, 50496, 50497, 50498, 50499, 50502, 50503, + 50507, 50511, 50512, 50513, 50514, 50518, 50522, + 50523, 50524, 50527, 50530, 50531, 50533, 50534, + 50535, 50537, 50538, 50539, 50540, 50541, 50542, + 50543, 50546, 50550, 50551, 50552, 50553, 50554, + 50555, 50558, 50559, 50561, 50562, 50563, 50565, + 50566, 50568, 50569, 50570, 50571, 50574, 50576, + 50578, 50579, 50580, 50582, 50585, 50586, 50587, + 50589, 50590, 50591, 50593, 50594, 50595, 50596, + 50597, 50598, 50599, 50600, 50602, 50603, 50604, + 50605, 50606, 50607, 50608, 50609, 50610, 50611, + 50614, 50615, 50618, 50623, 50624, 50625, 50626, + 50627, 50635, 50637, 50639, 50642, 50643, 50645, + 50646, 50647, 50649, 50650, 50651, 50652, 50653, + 50654, 50655, 50658, 50660, 50662, 50663, 50664, + 50665, 50666, 50667, 50671, 50673, 50674, 50675, + 50677, 50680, 50681, 50682, 50683, 50690, 50691, + 50692, 50697, 50698, 50699, 50701, 50702, 50703, + 50705, 50706, 50707, 50708, 50709, 50710, 50711, + 50714, 50717, 50718, 50719, 50720, 50721, 50722, + 50723, 50726, 50727, 50729, 50730, 50731, 50735, + 50737, 50738, 50742, 50744, 50746, 50748, 50749, + 50750, 50751, 50754, 50755, 50757, 50758, 50759, + 50761, 50762, 50763, 50764, 50765, 50766, 50767, + 50770, 50774, 50775, 50776, 50777, 50778, 50779, + 50782, 50783, 50785, 50786, 50787, 50788, 50789, + 50790, 50791, 50792, 50793, 50794, 50795, 50797, + 50798, 50800, 50802, 50803, 50804, 50805, 50806, + 50807, 50810, 50811, 50813, 50814, 50815, 50817, + 50818, 50819, 50820, 50821, 50822, 50823, 50826, + 50828, 50830, 50831, 50832, 50833, 50834, 50835, + 50838, 50839, 50841, 50842, 50843, 50845, 50846, + 50847, 50848, 50849, 50850, 50851, 50854, 50856, + 50858, 50859, 50860, 50861, 50862, 50863, 50866, + 50867, 50869, 50870, 50871, 50875, 50876, 50877, + 50878, 50879, 50882, 50884, 50886, 50887, 50888, + 50889, 50890, 50891, 50894, 50895, 50897, 50898, + 50899, 50901, 50902, 50903, 50904, 50905, 50906, + 50907, 50910, 50911, 50914, 50915, 50916, 50917, + 50918, 50919, 50922, 50923, 50925, 50926, 50927, + 50929, 50930, 50931, 50932, 50933, 50934, 50935, + 50938, 50939, 50940, 50942, 50943, 50944, 50945, + 50946, 50947, 50950, 50951, 50953, 50954, 50955, + 50957, 50958, 50959, 50960, 50961, 50962, 50963, + 50966, 50968, 50970, 50971, 50972, 50973, 50974, + 50975, 50978, 50979, 50981, 50982, 50983, 50985, + 50986, 50987, 50988, 50989, 50990, 50991, 50994, + 50996, 50998, 51000, 51001, 51002, 51003, 51006, + 51007, 51009, 51010, 51011, 51013, 51014, 51015, + 51016, 51017, 51019, 51022, 51024, 51033, 51034, + 51035, 51037, 51038, 51039, 51041, 51042, 51043, + 51044, 51045, 51046, 51047, 51049, 51050, 51052, + 51053, 51054, 51055, 51056, 51057, 51058, 51059, + 51062, 51063, 51065, 51066, 51067, 51071, 51072, + 51073, 51074, 51078, 51083, 51084, 51085, 51087, + 51090, 51091, 51093, 51097, 51099, 51100, 51101, + 51102, 51103, 51106, 51111, 51112, 51113, 51114, + 51115, 51118, 51119, 51121, 51122, 51123, 51125, + 51126, 51127, 51128, 51129, 51130, 51131, 51134, + 51138, 51139, 51140, 51141, 51142, 51143, 51146, + 51147, 51149, 51151, 51153, 51154, 51155, 51156, + 51157, 51158, 51159, 51161, 51162, 51163, 51164, + 51166, 51167, 51168, 51169, 51170, 51171, 51173, + 51174, 51175, 51177, 51178, 51179, 51181, 51182, + 51183, 51184, 51185, 51186, 51187, 51188, 51189, + 51190, 51191, 51192, 51193, 51194, 51195, 51196, + 51197, 51198, 51199, 51202, 51203, 51205, 51206, + 51207, 51209, 51211, 51212, 51213, 51214, 51215, + 51218, 51220, 51223, 51224, 51225, 51226, 51227, + 51230, 51231, 51233, 51234, 51235, 51237, 51238, + 51239, 51240, 51241, 51242, 51243, 51246, 51248, + 51250, 51251, 51252, 51253, 51254, 51255, 51257, + 51258, 51259, 51261, 51262, 51263, 51265, 51266, + 51267, 51268, 51269, 51270, 51271, 51274, 51275, + 51278, 51279, 51280, 51281, 51282, 51283, 51285, + 51286, 51287, 51288, 51289, 51290, 51291, 51292, + 51293, 51294, 51295, 51296, 51297, 51298, 51299, + 51300, 51301, 51302, 51303, 51304, 51305, 51306, + 51307, 51308, 51309, 51310, 51311, 51314, 51315, + 51317, 51318, 51319, 51321, 51323, 51324, 51325, + 51326, 51327, 51330, 51332, 51336, 51337, 51338, + 51342, 51343, 51344, 51345, 51346, 51347, 51349, + 51350, 51351, 51352, 51353, 51354, 51355, 51356, + 51358, 51360, 51362, 51363, 51364, 51365, 51366, + 51367, 51369, 51370, 51371, 51372, 51373, 51374, + 51375, 51376, 51377, 51378, 51379, 51380, 51381, + 51382, 51383, 51384, 51385, 51386, 51387, 51390, + 51391, 51392, 51393, 51394, 51395, 51397, 51398, + 51399, 51401, 51402, 51403, 51405, 51406, 51407, + 51408, 51409, 51410, 51411, 51414, 51416, 51418, + 51419, 51420, 51421, 51422, 51423, 51426, 51427, + 51429, 51430, 51431, 51432, 51433, 51434, 51435, + 51436, 51437, 51438, 51439, 51440, 51441, 51442, + 51443, 51444, 51446, 51447, 51448, 51449, 51450, + 51451, 51454, 51455, 51457, 51458, 51459, 51463, + 51464, 51465, 51466, 51467, 51470, 12288, 12289, + 12290, 183, 8229, 8230, 168, 12291, 173, 8213, 8741, + 65340, 8764, 8216, 8217, 8220, 8221, 12308, 12309, + 12296, 12297, 12298, 12299, 12300, 12301, 12302, + 12303, 12304, 12305, 177, 215, 247, 8800, 8804, + 8805, 8734, 8756, 176, 8242, 8243, 8451, 8491, + 65504, 65505, 65509, 9794, 9792, 8736, 8869, 8978, + 8706, 8711, 8801, 8786, 167, 8251, 9734, 9733, 9675, + 9679, 9678, 9671, 9670, 9633, 9632, 9651, 9650, + 9661, 9660, 8594, 8592, 8593, 8595, 8596, 12307, + 8810, 8811, 8730, 8765, 8733, 8757, 8747, 8748, + 8712, 8715, 8838, 8839, 8834, 8835, 8746, 8745, + 8743, 8744, 65506, 51472, 51474, 51475, 51476, + 51477, 51478, 51479, 51481, 51482, 51483, 51484, + 51485, 51486, 51487, 51488, 51489, 51490, 51491, + 51492, 51493, 51494, 51495, 51496, 51497, 51498, + 51499, 51501, 51502, 51503, 51504, 51505, 51506, + 51507, 51509, 51510, 51511, 51512, 51513, 51514, + 51515, 51516, 51517, 51518, 51519, 51520, 51521, + 51522, 51523, 51524, 51525, 51526, 51527, 51528, + 51529, 51530, 51531, 51532, 51533, 51534, 51535, + 51538, 51539, 51541, 51542, 51543, 51545, 51546, + 51547, 51548, 51549, 51550, 51551, 51554, 51556, + 51557, 51558, 51559, 51560, 51561, 51562, 51563, + 51565, 51566, 51567, 8658, 8660, 8704, 8707, 180, + 65374, 711, 728, 733, 730, 729, 184, 731, 161, 191, + 720, 8750, 8721, 8719, 164, 8457, 8240, 9665, 9664, + 9655, 9654, 9828, 9824, 9825, 9829, 9831, 9827, + 8857, 9672, 9635, 9680, 9681, 9618, 9636, 9637, + 9640, 9639, 9638, 9641, 9832, 9743, 9742, 9756, + 9758, 182, 8224, 8225, 8597, 8599, 8601, 8598, 8600, + 9837, 9833, 9834, 9836, 12927, 12828, 8470, 13255, + 8482, 13250, 13272, 8481, 8364, 174, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, 51569, 51570, 51571, + 51573, 51574, 51575, 51576, 51577, 51578, 51579, + 51581, 51582, 51583, 51584, 51585, 51586, 51587, + 51588, 51589, 51590, 51591, 51594, 51595, 51597, + 51598, 51599, 51601, 51602, 51603, 51604, 51605, + 51606, 51607, 51610, 51612, 51614, 51615, 51616, + 51617, 51618, 51619, 51620, 51621, 51622, 51623, + 51624, 51625, 51626, 51627, 51628, 51629, 51630, + 51631, 51632, 51633, 51634, 51635, 51636, 51637, + 51638, 51639, 51640, 51641, 51642, 51643, 51644, + 51645, 51646, 51647, 51650, 51651, 51653, 51654, + 51657, 51659, 51660, 51661, 51662, 51663, 51666, + 51668, 51671, 51672, 51675, 65281, 65282, 65283, + 65284, 65285, 65286, 65287, 65288, 65289, 65290, + 65291, 65292, 65293, 65294, 65295, 65296, 65297, + 65298, 65299, 65300, 65301, 65302, 65303, 65304, + 65305, 65306, 65307, 65308, 65309, 65310, 65311, + 65312, 65313, 65314, 65315, 65316, 65317, 65318, + 65319, 65320, 65321, 65322, 65323, 65324, 65325, + 65326, 65327, 65328, 65329, 65330, 65331, 65332, + 65333, 65334, 65335, 65336, 65337, 65338, 65339, + 65510, 65341, 65342, 65343, 65344, 65345, 65346, + 65347, 65348, 65349, 65350, 65351, 65352, 65353, + 65354, 65355, 65356, 65357, 65358, 65359, 65360, + 65361, 65362, 65363, 65364, 65365, 65366, 65367, + 65368, 65369, 65370, 65371, 65372, 65373, 65507, + 51678, 51679, 51681, 51683, 51685, 51686, 51688, + 51689, 51690, 51691, 51694, 51698, 51699, 51700, + 51701, 51702, 51703, 51706, 51707, 51709, 51710, + 51711, 51713, 51714, 51715, 51716, 51717, 51718, + 51719, 51722, 51726, 51727, 51728, 51729, 51730, + 51731, 51733, 51734, 51735, 51737, 51738, 51739, + 51740, 51741, 51742, 51743, 51744, 51745, 51746, + 51747, 51748, 51749, 51750, 51751, 51752, 51754, + 51755, 51756, 51757, 51758, 51759, 51760, 51761, + 51762, 51763, 51764, 51765, 51766, 51767, 51768, + 51769, 51770, 51771, 51772, 51773, 51774, 51775, + 51776, 51777, 51778, 51779, 51780, 51781, 51782, + 12593, 12594, 12595, 12596, 12597, 12598, 12599, + 12600, 12601, 12602, 12603, 12604, 12605, 12606, + 12607, 12608, 12609, 12610, 12611, 12612, 12613, + 12614, 12615, 12616, 12617, 12618, 12619, 12620, + 12621, 12622, 12623, 12624, 12625, 12626, 12627, + 12628, 12629, 12630, 12631, 12632, 12633, 12634, + 12635, 12636, 12637, 12638, 12639, 12640, 12641, + 12642, 12643, 12644, 12645, 12646, 12647, 12648, + 12649, 12650, 12651, 12652, 12653, 12654, 12655, + 12656, 12657, 12658, 12659, 12660, 12661, 12662, + 12663, 12664, 12665, 12666, 12667, 12668, 12669, + 12670, 12671, 12672, 12673, 12674, 12675, 12676, + 12677, 12678, 12679, 12680, 12681, 12682, 12683, + 12684, 12685, 12686, 51783, 51784, 51785, 51786, + 51787, 51790, 51791, 51793, 51794, 51795, 51797, + 51798, 51799, 51800, 51801, 51802, 51803, 51806, + 51810, 51811, 51812, 51813, 51814, 51815, 51817, + 51818, 51819, 51820, 51821, 51822, 51823, 51824, + 51825, 51826, 51827, 51828, 51829, 51830, 51831, + 51832, 51833, 51834, 51835, 51836, 51838, 51839, + 51840, 51841, 51842, 51843, 51845, 51846, 51847, + 51848, 51849, 51850, 51851, 51852, 51853, 51854, + 51855, 51856, 51857, 51858, 51859, 51860, 51861, + 51862, 51863, 51865, 51866, 51867, 51868, 51869, + 51870, 51871, 51872, 51873, 51874, 51875, 51876, + 51877, 51878, 51879, 8560, 8561, 8562, 8563, 8564, + 8565, 8566, 8567, 8568, 8569, null, null, null, + null, null, 8544, 8545, 8546, 8547, 8548, 8549, + 8550, 8551, 8552, 8553, null, null, null, null, + null, null, null, 913, 914, 915, 916, 917, 918, 919, + 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, + 931, 932, 933, 934, 935, 936, 937, null, null, null, + null, null, null, null, null, 945, 946, 947, 948, + 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, + 959, 960, 961, 963, 964, 965, 966, 967, 968, 969, + null, null, null, null, null, null, 51880, 51881, + 51882, 51883, 51884, 51885, 51886, 51887, 51888, + 51889, 51890, 51891, 51892, 51893, 51894, 51895, + 51896, 51897, 51898, 51899, 51902, 51903, 51905, + 51906, 51907, 51909, 51910, 51911, 51912, 51913, + 51914, 51915, 51918, 51920, 51922, 51924, 51925, + 51926, 51927, 51930, 51931, 51932, 51933, 51934, + 51935, 51937, 51938, 51939, 51940, 51941, 51942, + 51943, 51944, 51945, 51946, 51947, 51949, 51950, + 51951, 51952, 51953, 51954, 51955, 51957, 51958, + 51959, 51960, 51961, 51962, 51963, 51964, 51965, + 51966, 51967, 51968, 51969, 51970, 51971, 51972, + 51973, 51974, 51975, 51977, 51978, 9472, 9474, 9484, + 9488, 9496, 9492, 9500, 9516, 9508, 9524, 9532, + 9473, 9475, 9487, 9491, 9499, 9495, 9507, 9523, + 9515, 9531, 9547, 9504, 9519, 9512, 9527, 9535, + 9501, 9520, 9509, 9528, 9538, 9490, 9489, 9498, + 9497, 9494, 9493, 9486, 9485, 9502, 9503, 9505, + 9506, 9510, 9511, 9513, 9514, 9517, 9518, 9521, + 9522, 9525, 9526, 9529, 9530, 9533, 9534, 9536, + 9537, 9539, 9540, 9541, 9542, 9543, 9544, 9545, + 9546, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, 51979, 51980, 51981, 51982, 51983, + 51985, 51986, 51987, 51989, 51990, 51991, 51993, + 51994, 51995, 51996, 51997, 51998, 51999, 52002, + 52003, 52004, 52005, 52006, 52007, 52008, 52009, + 52010, 52011, 52012, 52013, 52014, 52015, 52016, + 52017, 52018, 52019, 52020, 52021, 52022, 52023, + 52024, 52025, 52026, 52027, 52028, 52029, 52030, + 52031, 52032, 52034, 52035, 52036, 52037, 52038, + 52039, 52042, 52043, 52045, 52046, 52047, 52049, + 52050, 52051, 52052, 52053, 52054, 52055, 52058, + 52059, 52060, 52062, 52063, 52064, 52065, 52066, + 52067, 52069, 52070, 52071, 52072, 52073, 52074, + 52075, 52076, 13205, 13206, 13207, 8467, 13208, + 13252, 13219, 13220, 13221, 13222, 13209, 13210, + 13211, 13212, 13213, 13214, 13215, 13216, 13217, + 13218, 13258, 13197, 13198, 13199, 13263, 13192, + 13193, 13256, 13223, 13224, 13232, 13233, 13234, + 13235, 13236, 13237, 13238, 13239, 13240, 13241, + 13184, 13185, 13186, 13187, 13188, 13242, 13243, + 13244, 13245, 13246, 13247, 13200, 13201, 13202, + 13203, 13204, 8486, 13248, 13249, 13194, 13195, + 13196, 13270, 13253, 13229, 13230, 13231, 13275, + 13225, 13226, 13227, 13228, 13277, 13264, 13267, + 13251, 13257, 13276, 13254, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, 52077, 52078, 52079, 52080, 52081, + 52082, 52083, 52084, 52085, 52086, 52087, 52090, + 52091, 52092, 52093, 52094, 52095, 52096, 52097, + 52098, 52099, 52100, 52101, 52102, 52103, 52104, + 52105, 52106, 52107, 52108, 52109, 52110, 52111, + 52112, 52113, 52114, 52115, 52116, 52117, 52118, + 52119, 52120, 52121, 52122, 52123, 52125, 52126, + 52127, 52128, 52129, 52130, 52131, 52132, 52133, + 52134, 52135, 52136, 52137, 52138, 52139, 52140, + 52141, 52142, 52143, 52144, 52145, 52146, 52147, + 52148, 52149, 52150, 52151, 52153, 52154, 52155, + 52156, 52157, 52158, 52159, 52160, 52161, 52162, + 52163, 52164, 198, 208, 170, 294, null, 306, null, + 319, 321, 216, 338, 186, 222, 358, 330, null, 12896, + 12897, 12898, 12899, 12900, 12901, 12902, 12903, + 12904, 12905, 12906, 12907, 12908, 12909, 12910, + 12911, 12912, 12913, 12914, 12915, 12916, 12917, + 12918, 12919, 12920, 12921, 12922, 12923, 9424, + 9425, 9426, 9427, 9428, 9429, 9430, 9431, 9432, + 9433, 9434, 9435, 9436, 9437, 9438, 9439, 9440, + 9441, 9442, 9443, 9444, 9445, 9446, 9447, 9448, + 9449, 9312, 9313, 9314, 9315, 9316, 9317, 9318, + 9319, 9320, 9321, 9322, 9323, 9324, 9325, 9326, 189, + 8531, 8532, 188, 190, 8539, 8540, 8541, 8542, 52165, + 52166, 52167, 52168, 52169, 52170, 52171, 52172, + 52173, 52174, 52175, 52176, 52177, 52178, 52179, + 52181, 52182, 52183, 52184, 52185, 52186, 52187, + 52188, 52189, 52190, 52191, 52192, 52193, 52194, + 52195, 52197, 52198, 52200, 52202, 52203, 52204, + 52205, 52206, 52207, 52208, 52209, 52210, 52211, + 52212, 52213, 52214, 52215, 52216, 52217, 52218, + 52219, 52220, 52221, 52222, 52223, 52224, 52225, + 52226, 52227, 52228, 52229, 52230, 52231, 52232, + 52233, 52234, 52235, 52238, 52239, 52241, 52242, + 52243, 52245, 52246, 52247, 52248, 52249, 52250, + 52251, 52254, 52255, 52256, 52259, 52260, 230, 273, + 240, 295, 305, 307, 312, 320, 322, 248, 339, 223, + 254, 359, 331, 329, 12800, 12801, 12802, 12803, + 12804, 12805, 12806, 12807, 12808, 12809, 12810, + 12811, 12812, 12813, 12814, 12815, 12816, 12817, + 12818, 12819, 12820, 12821, 12822, 12823, 12824, + 12825, 12826, 12827, 9372, 9373, 9374, 9375, 9376, + 9377, 9378, 9379, 9380, 9381, 9382, 9383, 9384, + 9385, 9386, 9387, 9388, 9389, 9390, 9391, 9392, + 9393, 9394, 9395, 9396, 9397, 9332, 9333, 9334, + 9335, 9336, 9337, 9338, 9339, 9340, 9341, 9342, + 9343, 9344, 9345, 9346, 185, 178, 179, 8308, 8319, + 8321, 8322, 8323, 8324, 52261, 52262, 52266, 52267, + 52269, 52271, 52273, 52274, 52275, 52276, 52277, + 52278, 52279, 52282, 52287, 52288, 52289, 52290, + 52291, 52294, 52295, 52297, 52298, 52299, 52301, + 52302, 52303, 52304, 52305, 52306, 52307, 52310, + 52314, 52315, 52316, 52317, 52318, 52319, 52321, + 52322, 52323, 52325, 52327, 52329, 52330, 52331, + 52332, 52333, 52334, 52335, 52337, 52338, 52339, + 52340, 52342, 52343, 52344, 52345, 52346, 52347, + 52348, 52349, 52350, 52351, 52352, 52353, 52354, + 52355, 52356, 52357, 52358, 52359, 52360, 52361, + 52362, 52363, 52364, 52365, 52366, 52367, 52368, + 52369, 52370, 52371, 12353, 12354, 12355, 12356, + 12357, 12358, 12359, 12360, 12361, 12362, 12363, + 12364, 12365, 12366, 12367, 12368, 12369, 12370, + 12371, 12372, 12373, 12374, 12375, 12376, 12377, + 12378, 12379, 12380, 12381, 12382, 12383, 12384, + 12385, 12386, 12387, 12388, 12389, 12390, 12391, + 12392, 12393, 12394, 12395, 12396, 12397, 12398, + 12399, 12400, 12401, 12402, 12403, 12404, 12405, + 12406, 12407, 12408, 12409, 12410, 12411, 12412, + 12413, 12414, 12415, 12416, 12417, 12418, 12419, + 12420, 12421, 12422, 12423, 12424, 12425, 12426, + 12427, 12428, 12429, 12430, 12431, 12432, 12433, + 12434, 12435, null, null, null, null, null, null, + null, null, null, null, null, 52372, 52373, 52374, + 52375, 52378, 52379, 52381, 52382, 52383, 52385, + 52386, 52387, 52388, 52389, 52390, 52391, 52394, + 52398, 52399, 52400, 52401, 52402, 52403, 52406, + 52407, 52409, 52410, 52411, 52413, 52414, 52415, + 52416, 52417, 52418, 52419, 52422, 52424, 52426, + 52427, 52428, 52429, 52430, 52431, 52433, 52434, + 52435, 52437, 52438, 52439, 52440, 52441, 52442, + 52443, 52444, 52445, 52446, 52447, 52448, 52449, + 52450, 52451, 52453, 52454, 52455, 52456, 52457, + 52458, 52459, 52461, 52462, 52463, 52465, 52466, + 52467, 52468, 52469, 52470, 52471, 52472, 52473, + 52474, 52475, 52476, 52477, 12449, 12450, 12451, + 12452, 12453, 12454, 12455, 12456, 12457, 12458, + 12459, 12460, 12461, 12462, 12463, 12464, 12465, + 12466, 12467, 12468, 12469, 12470, 12471, 12472, + 12473, 12474, 12475, 12476, 12477, 12478, 12479, + 12480, 12481, 12482, 12483, 12484, 12485, 12486, + 12487, 12488, 12489, 12490, 12491, 12492, 12493, + 12494, 12495, 12496, 12497, 12498, 12499, 12500, + 12501, 12502, 12503, 12504, 12505, 12506, 12507, + 12508, 12509, 12510, 12511, 12512, 12513, 12514, + 12515, 12516, 12517, 12518, 12519, 12520, 12521, + 12522, 12523, 12524, 12525, 12526, 12527, 12528, + 12529, 12530, 12531, 12532, 12533, 12534, null, + null, null, null, null, null, null, null, 52478, + 52479, 52480, 52482, 52483, 52484, 52485, 52486, + 52487, 52490, 52491, 52493, 52494, 52495, 52497, + 52498, 52499, 52500, 52501, 52502, 52503, 52506, + 52508, 52510, 52511, 52512, 52513, 52514, 52515, + 52517, 52518, 52519, 52521, 52522, 52523, 52525, + 52526, 52527, 52528, 52529, 52530, 52531, 52532, + 52533, 52534, 52535, 52536, 52538, 52539, 52540, + 52541, 52542, 52543, 52544, 52545, 52546, 52547, + 52548, 52549, 52550, 52551, 52552, 52553, 52554, + 52555, 52556, 52557, 52558, 52559, 52560, 52561, + 52562, 52563, 52564, 52565, 52566, 52567, 52568, + 52569, 52570, 52571, 52573, 52574, 52575, 1040, + 1041, 1042, 1043, 1044, 1045, 1025, 1046, 1047, + 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, + 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, + 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 1072, + 1073, 1074, 1075, 1076, 1077, 1105, 1078, 1079, + 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, + 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, + 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, + null, null, null, null, null, null, null, null, + null, null, null, null, null, 52577, 52578, 52579, + 52581, 52582, 52583, 52584, 52585, 52586, 52587, + 52590, 52592, 52594, 52595, 52596, 52597, 52598, + 52599, 52601, 52602, 52603, 52604, 52605, 52606, + 52607, 52608, 52609, 52610, 52611, 52612, 52613, + 52614, 52615, 52617, 52618, 52619, 52620, 52621, + 52622, 52623, 52624, 52625, 52626, 52627, 52630, + 52631, 52633, 52634, 52635, 52637, 52638, 52639, + 52640, 52641, 52642, 52643, 52646, 52648, 52650, + 52651, 52652, 52653, 52654, 52655, 52657, 52658, + 52659, 52660, 52661, 52662, 52663, 52664, 52665, + 52666, 52667, 52668, 52669, 52670, 52671, 52672, + 52673, 52674, 52675, 52677, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, 52678, 52679, 52680, 52681, 52682, + 52683, 52685, 52686, 52687, 52689, 52690, 52691, + 52692, 52693, 52694, 52695, 52696, 52697, 52698, + 52699, 52700, 52701, 52702, 52703, 52704, 52705, + 52706, 52707, 52708, 52709, 52710, 52711, 52713, + 52714, 52715, 52717, 52718, 52719, 52721, 52722, + 52723, 52724, 52725, 52726, 52727, 52730, 52732, + 52734, 52735, 52736, 52737, 52738, 52739, 52741, + 52742, 52743, 52745, 52746, 52747, 52749, 52750, + 52751, 52752, 52753, 52754, 52755, 52757, 52758, + 52759, 52760, 52762, 52763, 52764, 52765, 52766, + 52767, 52770, 52771, 52773, 52774, 52775, 52777, + 52778, 52779, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + 52780, 52781, 52782, 52783, 52786, 52788, 52790, + 52791, 52792, 52793, 52794, 52795, 52796, 52797, + 52798, 52799, 52800, 52801, 52802, 52803, 52804, + 52805, 52806, 52807, 52808, 52809, 52810, 52811, + 52812, 52813, 52814, 52815, 52816, 52817, 52818, + 52819, 52820, 52821, 52822, 52823, 52826, 52827, + 52829, 52830, 52834, 52835, 52836, 52837, 52838, + 52839, 52842, 52844, 52846, 52847, 52848, 52849, + 52850, 52851, 52854, 52855, 52857, 52858, 52859, + 52861, 52862, 52863, 52864, 52865, 52866, 52867, + 52870, 52872, 52874, 52875, 52876, 52877, 52878, + 52879, 52882, 52883, 52885, 52886, 52887, 52889, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 52890, 52891, + 52892, 52893, 52894, 52895, 52898, 52902, 52903, + 52904, 52905, 52906, 52907, 52910, 52911, 52912, + 52913, 52914, 52915, 52916, 52917, 52918, 52919, + 52920, 52921, 52922, 52923, 52924, 52925, 52926, + 52927, 52928, 52930, 52931, 52932, 52933, 52934, + 52935, 52936, 52937, 52938, 52939, 52940, 52941, + 52942, 52943, 52944, 52945, 52946, 52947, 52948, + 52949, 52950, 52951, 52952, 52953, 52954, 52955, + 52956, 52957, 52958, 52959, 52960, 52961, 52962, + 52963, 52966, 52967, 52969, 52970, 52973, 52974, + 52975, 52976, 52977, 52978, 52979, 52982, 52986, + 52987, 52988, 52989, 52990, 52991, 44032, 44033, + 44036, 44039, 44040, 44041, 44042, 44048, 44049, + 44050, 44051, 44052, 44053, 44054, 44055, 44057, + 44058, 44059, 44060, 44061, 44064, 44068, 44076, + 44077, 44079, 44080, 44081, 44088, 44089, 44092, + 44096, 44107, 44109, 44116, 44120, 44124, 44144, + 44145, 44148, 44151, 44152, 44154, 44160, 44161, + 44163, 44164, 44165, 44166, 44169, 44170, 44171, + 44172, 44176, 44180, 44188, 44189, 44191, 44192, + 44193, 44200, 44201, 44202, 44204, 44207, 44208, + 44216, 44217, 44219, 44220, 44221, 44225, 44228, + 44232, 44236, 44245, 44247, 44256, 44257, 44260, + 44263, 44264, 44266, 44268, 44271, 44272, 44273, + 44275, 44277, 44278, 44284, 44285, 44288, 44292, + 44294, 52994, 52995, 52997, 52998, 52999, 53001, + 53002, 53003, 53004, 53005, 53006, 53007, 53010, + 53012, 53014, 53015, 53016, 53017, 53018, 53019, + 53021, 53022, 53023, 53025, 53026, 53027, 53029, + 53030, 53031, 53032, 53033, 53034, 53035, 53038, + 53042, 53043, 53044, 53045, 53046, 53047, 53049, + 53050, 53051, 53052, 53053, 53054, 53055, 53056, + 53057, 53058, 53059, 53060, 53061, 53062, 53063, + 53064, 53065, 53066, 53067, 53068, 53069, 53070, + 53071, 53072, 53073, 53074, 53075, 53078, 53079, + 53081, 53082, 53083, 53085, 53086, 53087, 53088, + 53089, 53090, 53091, 53094, 53096, 53098, 53099, + 53100, 44300, 44301, 44303, 44305, 44312, 44316, + 44320, 44329, 44332, 44333, 44340, 44341, 44344, + 44348, 44356, 44357, 44359, 44361, 44368, 44372, + 44376, 44385, 44387, 44396, 44397, 44400, 44403, + 44404, 44405, 44406, 44411, 44412, 44413, 44415, + 44417, 44418, 44424, 44425, 44428, 44432, 44444, + 44445, 44452, 44471, 44480, 44481, 44484, 44488, + 44496, 44497, 44499, 44508, 44512, 44516, 44536, + 44537, 44540, 44543, 44544, 44545, 44552, 44553, + 44555, 44557, 44564, 44592, 44593, 44596, 44599, + 44600, 44602, 44608, 44609, 44611, 44613, 44614, + 44618, 44620, 44621, 44622, 44624, 44628, 44630, + 44636, 44637, 44639, 44640, 44641, 44645, 44648, + 44649, 44652, 44656, 44664, 53101, 53102, 53103, + 53106, 53107, 53109, 53110, 53111, 53113, 53114, + 53115, 53116, 53117, 53118, 53119, 53121, 53122, + 53123, 53124, 53126, 53127, 53128, 53129, 53130, + 53131, 53133, 53134, 53135, 53136, 53137, 53138, + 53139, 53140, 53141, 53142, 53143, 53144, 53145, + 53146, 53147, 53148, 53149, 53150, 53151, 53152, + 53154, 53155, 53156, 53157, 53158, 53159, 53161, + 53162, 53163, 53164, 53165, 53166, 53167, 53169, + 53170, 53171, 53172, 53173, 53174, 53175, 53176, + 53177, 53178, 53179, 53180, 53181, 53182, 53183, + 53184, 53185, 53186, 53187, 53189, 53190, 53191, + 53192, 53193, 53194, 53195, 44665, 44667, 44668, + 44669, 44676, 44677, 44684, 44732, 44733, 44734, + 44736, 44740, 44748, 44749, 44751, 44752, 44753, + 44760, 44761, 44764, 44776, 44779, 44781, 44788, + 44792, 44796, 44807, 44808, 44813, 44816, 44844, + 44845, 44848, 44850, 44852, 44860, 44861, 44863, + 44865, 44866, 44867, 44872, 44873, 44880, 44892, + 44893, 44900, 44901, 44921, 44928, 44932, 44936, + 44944, 44945, 44949, 44956, 44984, 44985, 44988, + 44992, 44999, 45000, 45001, 45003, 45005, 45006, + 45012, 45020, 45032, 45033, 45040, 45041, 45044, + 45048, 45056, 45057, 45060, 45068, 45072, 45076, + 45084, 45085, 45096, 45124, 45125, 45128, 45130, + 45132, 45134, 45139, 45140, 45141, 45143, 45145, + 53196, 53197, 53198, 53199, 53200, 53201, 53202, + 53203, 53204, 53205, 53206, 53207, 53208, 53209, + 53210, 53211, 53212, 53213, 53214, 53215, 53218, + 53219, 53221, 53222, 53223, 53225, 53226, 53227, + 53228, 53229, 53230, 53231, 53234, 53236, 53238, + 53239, 53240, 53241, 53242, 53243, 53245, 53246, + 53247, 53249, 53250, 53251, 53253, 53254, 53255, + 53256, 53257, 53258, 53259, 53260, 53261, 53262, + 53263, 53264, 53266, 53267, 53268, 53269, 53270, + 53271, 53273, 53274, 53275, 53276, 53277, 53278, + 53279, 53280, 53281, 53282, 53283, 53284, 53285, + 53286, 53287, 53288, 53289, 53290, 53291, 53292, + 45149, 45180, 45181, 45184, 45188, 45196, 45197, + 45199, 45201, 45208, 45209, 45210, 45212, 45215, + 45216, 45217, 45218, 45224, 45225, 45227, 45228, + 45229, 45230, 45231, 45233, 45235, 45236, 45237, + 45240, 45244, 45252, 45253, 45255, 45256, 45257, + 45264, 45265, 45268, 45272, 45280, 45285, 45320, + 45321, 45323, 45324, 45328, 45330, 45331, 45336, + 45337, 45339, 45340, 45341, 45347, 45348, 45349, + 45352, 45356, 45364, 45365, 45367, 45368, 45369, + 45376, 45377, 45380, 45384, 45392, 45393, 45396, + 45397, 45400, 45404, 45408, 45432, 45433, 45436, + 45440, 45442, 45448, 45449, 45451, 45453, 45458, + 45459, 45460, 45464, 45468, 45480, 45516, 45520, + 45524, 45532, 45533, 53294, 53295, 53296, 53297, + 53298, 53299, 53302, 53303, 53305, 53306, 53307, + 53309, 53310, 53311, 53312, 53313, 53314, 53315, + 53318, 53320, 53322, 53323, 53324, 53325, 53326, + 53327, 53329, 53330, 53331, 53333, 53334, 53335, + 53337, 53338, 53339, 53340, 53341, 53342, 53343, + 53345, 53346, 53347, 53348, 53349, 53350, 53351, + 53352, 53353, 53354, 53355, 53358, 53359, 53361, + 53362, 53363, 53365, 53366, 53367, 53368, 53369, + 53370, 53371, 53374, 53375, 53376, 53378, 53379, + 53380, 53381, 53382, 53383, 53384, 53385, 53386, + 53387, 53388, 53389, 53390, 53391, 53392, 53393, + 53394, 53395, 53396, 45535, 45544, 45545, 45548, + 45552, 45561, 45563, 45565, 45572, 45573, 45576, + 45579, 45580, 45588, 45589, 45591, 45593, 45600, + 45620, 45628, 45656, 45660, 45664, 45672, 45673, + 45684, 45685, 45692, 45700, 45701, 45705, 45712, + 45713, 45716, 45720, 45721, 45722, 45728, 45729, + 45731, 45733, 45734, 45738, 45740, 45744, 45748, + 45768, 45769, 45772, 45776, 45778, 45784, 45785, + 45787, 45789, 45794, 45796, 45797, 45798, 45800, + 45803, 45804, 45805, 45806, 45807, 45811, 45812, + 45813, 45815, 45816, 45817, 45818, 45819, 45823, + 45824, 45825, 45828, 45832, 45840, 45841, 45843, + 45844, 45845, 45852, 45908, 45909, 45910, 45912, + 45915, 45916, 45918, 45919, 45924, 45925, 53397, + 53398, 53399, 53400, 53401, 53402, 53403, 53404, + 53405, 53406, 53407, 53408, 53409, 53410, 53411, + 53414, 53415, 53417, 53418, 53419, 53421, 53422, + 53423, 53424, 53425, 53426, 53427, 53430, 53432, + 53434, 53435, 53436, 53437, 53438, 53439, 53442, + 53443, 53445, 53446, 53447, 53450, 53451, 53452, + 53453, 53454, 53455, 53458, 53462, 53463, 53464, + 53465, 53466, 53467, 53470, 53471, 53473, 53474, + 53475, 53477, 53478, 53479, 53480, 53481, 53482, + 53483, 53486, 53490, 53491, 53492, 53493, 53494, + 53495, 53497, 53498, 53499, 53500, 53501, 53502, + 53503, 53504, 53505, 53506, 53507, 53508, 45927, + 45929, 45931, 45934, 45936, 45937, 45940, 45944, + 45952, 45953, 45955, 45956, 45957, 45964, 45968, + 45972, 45984, 45985, 45992, 45996, 46020, 46021, + 46024, 46027, 46028, 46030, 46032, 46036, 46037, + 46039, 46041, 46043, 46045, 46048, 46052, 46056, + 46076, 46096, 46104, 46108, 46112, 46120, 46121, + 46123, 46132, 46160, 46161, 46164, 46168, 46176, + 46177, 46179, 46181, 46188, 46208, 46216, 46237, + 46244, 46248, 46252, 46261, 46263, 46265, 46272, + 46276, 46280, 46288, 46293, 46300, 46301, 46304, + 46307, 46308, 46310, 46316, 46317, 46319, 46321, + 46328, 46356, 46357, 46360, 46363, 46364, 46372, + 46373, 46375, 46376, 46377, 46378, 46384, 46385, + 46388, 46392, 53509, 53510, 53511, 53512, 53513, + 53514, 53515, 53516, 53518, 53519, 53520, 53521, + 53522, 53523, 53524, 53525, 53526, 53527, 53528, + 53529, 53530, 53531, 53532, 53533, 53534, 53535, + 53536, 53537, 53538, 53539, 53540, 53541, 53542, + 53543, 53544, 53545, 53546, 53547, 53548, 53549, + 53550, 53551, 53554, 53555, 53557, 53558, 53559, + 53561, 53563, 53564, 53565, 53566, 53567, 53570, + 53574, 53575, 53576, 53577, 53578, 53579, 53582, + 53583, 53585, 53586, 53587, 53589, 53590, 53591, + 53592, 53593, 53594, 53595, 53598, 53600, 53602, + 53603, 53604, 53605, 53606, 53607, 53609, 53610, + 53611, 53613, 46400, 46401, 46403, 46404, 46405, + 46411, 46412, 46413, 46416, 46420, 46428, 46429, + 46431, 46432, 46433, 46496, 46497, 46500, 46504, + 46506, 46507, 46512, 46513, 46515, 46516, 46517, + 46523, 46524, 46525, 46528, 46532, 46540, 46541, + 46543, 46544, 46545, 46552, 46572, 46608, 46609, + 46612, 46616, 46629, 46636, 46644, 46664, 46692, + 46696, 46748, 46749, 46752, 46756, 46763, 46764, + 46769, 46804, 46832, 46836, 46840, 46848, 46849, + 46853, 46888, 46889, 46892, 46895, 46896, 46904, + 46905, 46907, 46916, 46920, 46924, 46932, 46933, + 46944, 46948, 46952, 46960, 46961, 46963, 46965, + 46972, 46973, 46976, 46980, 46988, 46989, 46991, + 46992, 46993, 46994, 46998, 46999, 53614, 53615, + 53616, 53617, 53618, 53619, 53620, 53621, 53622, + 53623, 53624, 53625, 53626, 53627, 53629, 53630, + 53631, 53632, 53633, 53634, 53635, 53637, 53638, + 53639, 53641, 53642, 53643, 53644, 53645, 53646, + 53647, 53648, 53649, 53650, 53651, 53652, 53653, + 53654, 53655, 53656, 53657, 53658, 53659, 53660, + 53661, 53662, 53663, 53666, 53667, 53669, 53670, + 53671, 53673, 53674, 53675, 53676, 53677, 53678, + 53679, 53682, 53684, 53686, 53687, 53688, 53689, + 53691, 53693, 53694, 53695, 53697, 53698, 53699, + 53700, 53701, 53702, 53703, 53704, 53705, 53706, + 53707, 53708, 53709, 53710, 53711, 47000, 47001, + 47004, 47008, 47016, 47017, 47019, 47020, 47021, + 47028, 47029, 47032, 47047, 47049, 47084, 47085, + 47088, 47092, 47100, 47101, 47103, 47104, 47105, + 47111, 47112, 47113, 47116, 47120, 47128, 47129, + 47131, 47133, 47140, 47141, 47144, 47148, 47156, + 47157, 47159, 47160, 47161, 47168, 47172, 47185, + 47187, 47196, 47197, 47200, 47204, 47212, 47213, + 47215, 47217, 47224, 47228, 47245, 47272, 47280, + 47284, 47288, 47296, 47297, 47299, 47301, 47308, + 47312, 47316, 47325, 47327, 47329, 47336, 47337, + 47340, 47344, 47352, 47353, 47355, 47357, 47364, + 47384, 47392, 47420, 47421, 47424, 47428, 47436, + 47439, 47441, 47448, 47449, 47452, 47456, 47464, + 47465, 53712, 53713, 53714, 53715, 53716, 53717, + 53718, 53719, 53721, 53722, 53723, 53724, 53725, + 53726, 53727, 53728, 53729, 53730, 53731, 53732, + 53733, 53734, 53735, 53736, 53737, 53738, 53739, + 53740, 53741, 53742, 53743, 53744, 53745, 53746, + 53747, 53749, 53750, 53751, 53753, 53754, 53755, + 53756, 53757, 53758, 53759, 53760, 53761, 53762, + 53763, 53764, 53765, 53766, 53768, 53770, 53771, + 53772, 53773, 53774, 53775, 53777, 53778, 53779, + 53780, 53781, 53782, 53783, 53784, 53785, 53786, + 53787, 53788, 53789, 53790, 53791, 53792, 53793, + 53794, 53795, 53796, 53797, 53798, 53799, 53800, + 53801, 47467, 47469, 47476, 47477, 47480, 47484, + 47492, 47493, 47495, 47497, 47498, 47501, 47502, + 47532, 47533, 47536, 47540, 47548, 47549, 47551, + 47553, 47560, 47561, 47564, 47566, 47567, 47568, + 47569, 47570, 47576, 47577, 47579, 47581, 47582, + 47585, 47587, 47588, 47589, 47592, 47596, 47604, + 47605, 47607, 47608, 47609, 47610, 47616, 47617, + 47624, 47637, 47672, 47673, 47676, 47680, 47682, + 47688, 47689, 47691, 47693, 47694, 47699, 47700, + 47701, 47704, 47708, 47716, 47717, 47719, 47720, + 47721, 47728, 47729, 47732, 47736, 47747, 47748, + 47749, 47751, 47756, 47784, 47785, 47787, 47788, + 47792, 47794, 47800, 47801, 47803, 47805, 47812, + 47816, 47832, 47833, 47868, 53802, 53803, 53806, + 53807, 53809, 53810, 53811, 53813, 53814, 53815, + 53816, 53817, 53818, 53819, 53822, 53824, 53826, + 53827, 53828, 53829, 53830, 53831, 53833, 53834, + 53835, 53836, 53837, 53838, 53839, 53840, 53841, + 53842, 53843, 53844, 53845, 53846, 53847, 53848, + 53849, 53850, 53851, 53853, 53854, 53855, 53856, + 53857, 53858, 53859, 53861, 53862, 53863, 53864, + 53865, 53866, 53867, 53868, 53869, 53870, 53871, + 53872, 53873, 53874, 53875, 53876, 53877, 53878, + 53879, 53880, 53881, 53882, 53883, 53884, 53885, + 53886, 53887, 53890, 53891, 53893, 53894, 53895, + 53897, 53898, 53899, 53900, 47872, 47876, 47885, + 47887, 47889, 47896, 47900, 47904, 47913, 47915, + 47924, 47925, 47926, 47928, 47931, 47932, 47933, + 47934, 47940, 47941, 47943, 47945, 47949, 47951, + 47952, 47956, 47960, 47969, 47971, 47980, 48008, + 48012, 48016, 48036, 48040, 48044, 48052, 48055, + 48064, 48068, 48072, 48080, 48083, 48120, 48121, + 48124, 48127, 48128, 48130, 48136, 48137, 48139, + 48140, 48141, 48143, 48145, 48148, 48149, 48150, + 48151, 48152, 48155, 48156, 48157, 48158, 48159, + 48164, 48165, 48167, 48169, 48173, 48176, 48177, + 48180, 48184, 48192, 48193, 48195, 48196, 48197, + 48201, 48204, 48205, 48208, 48221, 48260, 48261, + 48264, 48267, 48268, 48270, 48276, 48277, 48279, + 53901, 53902, 53903, 53906, 53907, 53908, 53910, + 53911, 53912, 53913, 53914, 53915, 53917, 53918, + 53919, 53921, 53922, 53923, 53925, 53926, 53927, + 53928, 53929, 53930, 53931, 53933, 53934, 53935, + 53936, 53938, 53939, 53940, 53941, 53942, 53943, + 53946, 53947, 53949, 53950, 53953, 53955, 53956, + 53957, 53958, 53959, 53962, 53964, 53965, 53966, + 53967, 53968, 53969, 53970, 53971, 53973, 53974, + 53975, 53977, 53978, 53979, 53981, 53982, 53983, + 53984, 53985, 53986, 53987, 53990, 53991, 53992, + 53993, 53994, 53995, 53996, 53997, 53998, 53999, + 54002, 54003, 54005, 54006, 54007, 54009, 54010, + 48281, 48282, 48288, 48289, 48292, 48295, 48296, + 48304, 48305, 48307, 48308, 48309, 48316, 48317, + 48320, 48324, 48333, 48335, 48336, 48337, 48341, + 48344, 48348, 48372, 48373, 48374, 48376, 48380, + 48388, 48389, 48391, 48393, 48400, 48404, 48420, + 48428, 48448, 48456, 48457, 48460, 48464, 48472, + 48473, 48484, 48488, 48512, 48513, 48516, 48519, + 48520, 48521, 48522, 48528, 48529, 48531, 48533, + 48537, 48538, 48540, 48548, 48560, 48568, 48596, + 48597, 48600, 48604, 48617, 48624, 48628, 48632, + 48640, 48643, 48645, 48652, 48653, 48656, 48660, + 48668, 48669, 48671, 48708, 48709, 48712, 48716, + 48718, 48724, 48725, 48727, 48729, 48730, 48731, + 48736, 48737, 48740, 54011, 54012, 54013, 54014, + 54015, 54018, 54020, 54022, 54023, 54024, 54025, + 54026, 54027, 54031, 54033, 54034, 54035, 54037, + 54039, 54040, 54041, 54042, 54043, 54046, 54050, + 54051, 54052, 54054, 54055, 54058, 54059, 54061, + 54062, 54063, 54065, 54066, 54067, 54068, 54069, + 54070, 54071, 54074, 54078, 54079, 54080, 54081, + 54082, 54083, 54086, 54087, 54088, 54089, 54090, + 54091, 54092, 54093, 54094, 54095, 54096, 54097, + 54098, 54099, 54100, 54101, 54102, 54103, 54104, + 54105, 54106, 54107, 54108, 54109, 54110, 54111, + 54112, 54113, 54114, 54115, 54116, 54117, 54118, + 54119, 54120, 54121, 48744, 48746, 48752, 48753, + 48755, 48756, 48757, 48763, 48764, 48765, 48768, + 48772, 48780, 48781, 48783, 48784, 48785, 48792, + 48793, 48808, 48848, 48849, 48852, 48855, 48856, + 48864, 48867, 48868, 48869, 48876, 48897, 48904, + 48905, 48920, 48921, 48923, 48924, 48925, 48960, + 48961, 48964, 48968, 48976, 48977, 48981, 49044, + 49072, 49093, 49100, 49101, 49104, 49108, 49116, + 49119, 49121, 49212, 49233, 49240, 49244, 49248, + 49256, 49257, 49296, 49297, 49300, 49304, 49312, + 49313, 49315, 49317, 49324, 49325, 49327, 49328, + 49331, 49332, 49333, 49334, 49340, 49341, 49343, + 49344, 49345, 49349, 49352, 49353, 49356, 49360, + 49368, 49369, 49371, 49372, 49373, 49380, 54122, + 54123, 54124, 54125, 54126, 54127, 54128, 54129, + 54130, 54131, 54132, 54133, 54134, 54135, 54136, + 54137, 54138, 54139, 54142, 54143, 54145, 54146, + 54147, 54149, 54150, 54151, 54152, 54153, 54154, + 54155, 54158, 54162, 54163, 54164, 54165, 54166, + 54167, 54170, 54171, 54173, 54174, 54175, 54177, + 54178, 54179, 54180, 54181, 54182, 54183, 54186, + 54188, 54190, 54191, 54192, 54193, 54194, 54195, + 54197, 54198, 54199, 54201, 54202, 54203, 54205, + 54206, 54207, 54208, 54209, 54210, 54211, 54214, + 54215, 54218, 54219, 54220, 54221, 54222, 54223, + 54225, 54226, 54227, 54228, 54229, 54230, 49381, + 49384, 49388, 49396, 49397, 49399, 49401, 49408, + 49412, 49416, 49424, 49429, 49436, 49437, 49438, + 49439, 49440, 49443, 49444, 49446, 49447, 49452, + 49453, 49455, 49456, 49457, 49462, 49464, 49465, + 49468, 49472, 49480, 49481, 49483, 49484, 49485, + 49492, 49493, 49496, 49500, 49508, 49509, 49511, + 49512, 49513, 49520, 49524, 49528, 49541, 49548, + 49549, 49550, 49552, 49556, 49558, 49564, 49565, + 49567, 49569, 49573, 49576, 49577, 49580, 49584, + 49597, 49604, 49608, 49612, 49620, 49623, 49624, + 49632, 49636, 49640, 49648, 49649, 49651, 49660, + 49661, 49664, 49668, 49676, 49677, 49679, 49681, + 49688, 49689, 49692, 49695, 49696, 49704, 49705, + 49707, 49709, 54231, 54233, 54234, 54235, 54236, + 54237, 54238, 54239, 54240, 54242, 54244, 54245, + 54246, 54247, 54248, 54249, 54250, 54251, 54254, + 54255, 54257, 54258, 54259, 54261, 54262, 54263, + 54264, 54265, 54266, 54267, 54270, 54272, 54274, + 54275, 54276, 54277, 54278, 54279, 54281, 54282, + 54283, 54284, 54285, 54286, 54287, 54288, 54289, + 54290, 54291, 54292, 54293, 54294, 54295, 54296, + 54297, 54298, 54299, 54300, 54302, 54303, 54304, + 54305, 54306, 54307, 54308, 54309, 54310, 54311, + 54312, 54313, 54314, 54315, 54316, 54317, 54318, + 54319, 54320, 54321, 54322, 54323, 54324, 54325, + 54326, 54327, 49711, 49713, 49714, 49716, 49736, + 49744, 49745, 49748, 49752, 49760, 49765, 49772, + 49773, 49776, 49780, 49788, 49789, 49791, 49793, + 49800, 49801, 49808, 49816, 49819, 49821, 49828, + 49829, 49832, 49836, 49837, 49844, 49845, 49847, + 49849, 49884, 49885, 49888, 49891, 49892, 49899, + 49900, 49901, 49903, 49905, 49910, 49912, 49913, + 49915, 49916, 49920, 49928, 49929, 49932, 49933, + 49939, 49940, 49941, 49944, 49948, 49956, 49957, + 49960, 49961, 49989, 50024, 50025, 50028, 50032, + 50034, 50040, 50041, 50044, 50045, 50052, 50056, + 50060, 50112, 50136, 50137, 50140, 50143, 50144, + 50146, 50152, 50153, 50157, 50164, 50165, 50168, + 50184, 50192, 50212, 50220, 50224, 54328, 54329, + 54330, 54331, 54332, 54333, 54334, 54335, 54337, + 54338, 54339, 54341, 54342, 54343, 54344, 54345, + 54346, 54347, 54348, 54349, 54350, 54351, 54352, + 54353, 54354, 54355, 54356, 54357, 54358, 54359, + 54360, 54361, 54362, 54363, 54365, 54366, 54367, + 54369, 54370, 54371, 54373, 54374, 54375, 54376, + 54377, 54378, 54379, 54380, 54382, 54384, 54385, + 54386, 54387, 54388, 54389, 54390, 54391, 54394, + 54395, 54397, 54398, 54401, 54403, 54404, 54405, + 54406, 54407, 54410, 54412, 54414, 54415, 54416, + 54417, 54418, 54419, 54421, 54422, 54423, 54424, + 54425, 54426, 54427, 54428, 54429, 50228, 50236, + 50237, 50248, 50276, 50277, 50280, 50284, 50292, + 50293, 50297, 50304, 50324, 50332, 50360, 50364, + 50409, 50416, 50417, 50420, 50424, 50426, 50431, + 50432, 50433, 50444, 50448, 50452, 50460, 50472, + 50473, 50476, 50480, 50488, 50489, 50491, 50493, + 50500, 50501, 50504, 50505, 50506, 50508, 50509, + 50510, 50515, 50516, 50517, 50519, 50520, 50521, + 50525, 50526, 50528, 50529, 50532, 50536, 50544, + 50545, 50547, 50548, 50549, 50556, 50557, 50560, + 50564, 50567, 50572, 50573, 50575, 50577, 50581, + 50583, 50584, 50588, 50592, 50601, 50612, 50613, + 50616, 50617, 50619, 50620, 50621, 50622, 50628, + 50629, 50630, 50631, 50632, 50633, 50634, 50636, + 50638, 54430, 54431, 54432, 54433, 54434, 54435, + 54436, 54437, 54438, 54439, 54440, 54442, 54443, + 54444, 54445, 54446, 54447, 54448, 54449, 54450, + 54451, 54452, 54453, 54454, 54455, 54456, 54457, + 54458, 54459, 54460, 54461, 54462, 54463, 54464, + 54465, 54466, 54467, 54468, 54469, 54470, 54471, + 54472, 54473, 54474, 54475, 54477, 54478, 54479, + 54481, 54482, 54483, 54485, 54486, 54487, 54488, + 54489, 54490, 54491, 54493, 54494, 54496, 54497, + 54498, 54499, 54500, 54501, 54502, 54503, 54505, + 54506, 54507, 54509, 54510, 54511, 54513, 54514, + 54515, 54516, 54517, 54518, 54519, 54521, 54522, + 54524, 50640, 50641, 50644, 50648, 50656, 50657, + 50659, 50661, 50668, 50669, 50670, 50672, 50676, + 50678, 50679, 50684, 50685, 50686, 50687, 50688, + 50689, 50693, 50694, 50695, 50696, 50700, 50704, + 50712, 50713, 50715, 50716, 50724, 50725, 50728, + 50732, 50733, 50734, 50736, 50739, 50740, 50741, + 50743, 50745, 50747, 50752, 50753, 50756, 50760, + 50768, 50769, 50771, 50772, 50773, 50780, 50781, + 50784, 50796, 50799, 50801, 50808, 50809, 50812, + 50816, 50824, 50825, 50827, 50829, 50836, 50837, + 50840, 50844, 50852, 50853, 50855, 50857, 50864, + 50865, 50868, 50872, 50873, 50874, 50880, 50881, + 50883, 50885, 50892, 50893, 50896, 50900, 50908, + 50909, 50912, 50913, 50920, 54526, 54527, 54528, + 54529, 54530, 54531, 54533, 54534, 54535, 54537, + 54538, 54539, 54541, 54542, 54543, 54544, 54545, + 54546, 54547, 54550, 54552, 54553, 54554, 54555, + 54556, 54557, 54558, 54559, 54560, 54561, 54562, + 54563, 54564, 54565, 54566, 54567, 54568, 54569, + 54570, 54571, 54572, 54573, 54574, 54575, 54576, + 54577, 54578, 54579, 54580, 54581, 54582, 54583, + 54584, 54585, 54586, 54587, 54590, 54591, 54593, + 54594, 54595, 54597, 54598, 54599, 54600, 54601, + 54602, 54603, 54606, 54608, 54610, 54611, 54612, + 54613, 54614, 54615, 54618, 54619, 54621, 54622, + 54623, 54625, 54626, 54627, 50921, 50924, 50928, + 50936, 50937, 50941, 50948, 50949, 50952, 50956, + 50964, 50965, 50967, 50969, 50976, 50977, 50980, + 50984, 50992, 50993, 50995, 50997, 50999, 51004, + 51005, 51008, 51012, 51018, 51020, 51021, 51023, + 51025, 51026, 51027, 51028, 51029, 51030, 51031, + 51032, 51036, 51040, 51048, 51051, 51060, 51061, + 51064, 51068, 51069, 51070, 51075, 51076, 51077, + 51079, 51080, 51081, 51082, 51086, 51088, 51089, + 51092, 51094, 51095, 51096, 51098, 51104, 51105, + 51107, 51108, 51109, 51110, 51116, 51117, 51120, + 51124, 51132, 51133, 51135, 51136, 51137, 51144, + 51145, 51148, 51150, 51152, 51160, 51165, 51172, + 51176, 51180, 51200, 51201, 51204, 51208, 51210, + 54628, 54630, 54631, 54634, 54636, 54638, 54639, + 54640, 54641, 54642, 54643, 54646, 54647, 54649, + 54650, 54651, 54653, 54654, 54655, 54656, 54657, + 54658, 54659, 54662, 54666, 54667, 54668, 54669, + 54670, 54671, 54673, 54674, 54675, 54676, 54677, + 54678, 54679, 54680, 54681, 54682, 54683, 54684, + 54685, 54686, 54687, 54688, 54689, 54690, 54691, + 54692, 54694, 54695, 54696, 54697, 54698, 54699, + 54700, 54701, 54702, 54703, 54704, 54705, 54706, + 54707, 54708, 54709, 54710, 54711, 54712, 54713, + 54714, 54715, 54716, 54717, 54718, 54719, 54720, + 54721, 54722, 54723, 54724, 54725, 54726, 54727, + 51216, 51217, 51219, 51221, 51222, 51228, 51229, + 51232, 51236, 51244, 51245, 51247, 51249, 51256, + 51260, 51264, 51272, 51273, 51276, 51277, 51284, + 51312, 51313, 51316, 51320, 51322, 51328, 51329, + 51331, 51333, 51334, 51335, 51339, 51340, 51341, + 51348, 51357, 51359, 51361, 51368, 51388, 51389, + 51396, 51400, 51404, 51412, 51413, 51415, 51417, + 51424, 51425, 51428, 51445, 51452, 51453, 51456, + 51460, 51461, 51462, 51468, 51469, 51471, 51473, + 51480, 51500, 51508, 51536, 51537, 51540, 51544, + 51552, 51553, 51555, 51564, 51568, 51572, 51580, + 51592, 51593, 51596, 51600, 51608, 51609, 51611, + 51613, 51648, 51649, 51652, 51655, 51656, 51658, + 51664, 51665, 51667, 54730, 54731, 54733, 54734, + 54735, 54737, 54739, 54740, 54741, 54742, 54743, + 54746, 54748, 54750, 54751, 54752, 54753, 54754, + 54755, 54758, 54759, 54761, 54762, 54763, 54765, + 54766, 54767, 54768, 54769, 54770, 54771, 54774, + 54776, 54778, 54779, 54780, 54781, 54782, 54783, + 54786, 54787, 54789, 54790, 54791, 54793, 54794, + 54795, 54796, 54797, 54798, 54799, 54802, 54806, + 54807, 54808, 54809, 54810, 54811, 54813, 54814, + 54815, 54817, 54818, 54819, 54821, 54822, 54823, + 54824, 54825, 54826, 54827, 54828, 54830, 54831, + 54832, 54833, 54834, 54835, 54836, 54837, 54838, + 54839, 54842, 54843, 51669, 51670, 51673, 51674, + 51676, 51677, 51680, 51682, 51684, 51687, 51692, + 51693, 51695, 51696, 51697, 51704, 51705, 51708, + 51712, 51720, 51721, 51723, 51724, 51725, 51732, + 51736, 51753, 51788, 51789, 51792, 51796, 51804, + 51805, 51807, 51808, 51809, 51816, 51837, 51844, + 51864, 51900, 51901, 51904, 51908, 51916, 51917, + 51919, 51921, 51923, 51928, 51929, 51936, 51948, + 51956, 51976, 51984, 51988, 51992, 52000, 52001, + 52033, 52040, 52041, 52044, 52048, 52056, 52057, + 52061, 52068, 52088, 52089, 52124, 52152, 52180, + 52196, 52199, 52201, 52236, 52237, 52240, 52244, + 52252, 52253, 52257, 52258, 52263, 52264, 52265, + 52268, 52270, 52272, 52280, 52281, 52283, 54845, + 54846, 54847, 54849, 54850, 54851, 54852, 54854, + 54855, 54858, 54860, 54862, 54863, 54864, 54866, + 54867, 54870, 54871, 54873, 54874, 54875, 54877, + 54878, 54879, 54880, 54881, 54882, 54883, 54884, + 54885, 54886, 54888, 54890, 54891, 54892, 54893, + 54894, 54895, 54898, 54899, 54901, 54902, 54903, + 54904, 54905, 54906, 54907, 54908, 54909, 54910, + 54911, 54912, 54913, 54914, 54916, 54918, 54919, + 54920, 54921, 54922, 54923, 54926, 54927, 54929, + 54930, 54931, 54933, 54934, 54935, 54936, 54937, + 54938, 54939, 54940, 54942, 54944, 54946, 54947, + 54948, 54949, 54950, 54951, 54953, 54954, 52284, + 52285, 52286, 52292, 52293, 52296, 52300, 52308, + 52309, 52311, 52312, 52313, 52320, 52324, 52326, + 52328, 52336, 52341, 52376, 52377, 52380, 52384, + 52392, 52393, 52395, 52396, 52397, 52404, 52405, + 52408, 52412, 52420, 52421, 52423, 52425, 52432, + 52436, 52452, 52460, 52464, 52481, 52488, 52489, + 52492, 52496, 52504, 52505, 52507, 52509, 52516, + 52520, 52524, 52537, 52572, 52576, 52580, 52588, + 52589, 52591, 52593, 52600, 52616, 52628, 52629, + 52632, 52636, 52644, 52645, 52647, 52649, 52656, + 52676, 52684, 52688, 52712, 52716, 52720, 52728, + 52729, 52731, 52733, 52740, 52744, 52748, 52756, + 52761, 52768, 52769, 52772, 52776, 52784, 52785, + 52787, 52789, 54955, 54957, 54958, 54959, 54961, + 54962, 54963, 54964, 54965, 54966, 54967, 54968, + 54970, 54972, 54973, 54974, 54975, 54976, 54977, + 54978, 54979, 54982, 54983, 54985, 54986, 54987, + 54989, 54990, 54991, 54992, 54994, 54995, 54997, + 54998, 55000, 55002, 55003, 55004, 55005, 55006, + 55007, 55009, 55010, 55011, 55013, 55014, 55015, + 55017, 55018, 55019, 55020, 55021, 55022, 55023, + 55025, 55026, 55027, 55028, 55030, 55031, 55032, + 55033, 55034, 55035, 55038, 55039, 55041, 55042, + 55043, 55045, 55046, 55047, 55048, 55049, 55050, + 55051, 55052, 55053, 55054, 55055, 55056, 55058, + 55059, 55060, 52824, 52825, 52828, 52831, 52832, + 52833, 52840, 52841, 52843, 52845, 52852, 52853, + 52856, 52860, 52868, 52869, 52871, 52873, 52880, + 52881, 52884, 52888, 52896, 52897, 52899, 52900, + 52901, 52908, 52909, 52929, 52964, 52965, 52968, + 52971, 52972, 52980, 52981, 52983, 52984, 52985, + 52992, 52993, 52996, 53000, 53008, 53009, 53011, + 53013, 53020, 53024, 53028, 53036, 53037, 53039, + 53040, 53041, 53048, 53076, 53077, 53080, 53084, + 53092, 53093, 53095, 53097, 53104, 53105, 53108, + 53112, 53120, 53125, 53132, 53153, 53160, 53168, + 53188, 53216, 53217, 53220, 53224, 53232, 53233, + 53235, 53237, 53244, 53248, 53252, 53265, 53272, + 53293, 53300, 53301, 53304, 53308, 55061, 55062, + 55063, 55066, 55067, 55069, 55070, 55071, 55073, + 55074, 55075, 55076, 55077, 55078, 55079, 55082, + 55084, 55086, 55087, 55088, 55089, 55090, 55091, + 55094, 55095, 55097, 55098, 55099, 55101, 55102, + 55103, 55104, 55105, 55106, 55107, 55109, 55110, + 55112, 55114, 55115, 55116, 55117, 55118, 55119, + 55122, 55123, 55125, 55130, 55131, 55132, 55133, + 55134, 55135, 55138, 55140, 55142, 55143, 55144, + 55146, 55147, 55149, 55150, 55151, 55153, 55154, + 55155, 55157, 55158, 55159, 55160, 55161, 55162, + 55163, 55166, 55167, 55168, 55170, 55171, 55172, + 55173, 55174, 55175, 55178, 55179, 53316, 53317, + 53319, 53321, 53328, 53332, 53336, 53344, 53356, + 53357, 53360, 53364, 53372, 53373, 53377, 53412, + 53413, 53416, 53420, 53428, 53429, 53431, 53433, + 53440, 53441, 53444, 53448, 53449, 53456, 53457, + 53459, 53460, 53461, 53468, 53469, 53472, 53476, + 53484, 53485, 53487, 53488, 53489, 53496, 53517, + 53552, 53553, 53556, 53560, 53562, 53568, 53569, + 53571, 53572, 53573, 53580, 53581, 53584, 53588, + 53596, 53597, 53599, 53601, 53608, 53612, 53628, + 53636, 53640, 53664, 53665, 53668, 53672, 53680, + 53681, 53683, 53685, 53690, 53692, 53696, 53720, + 53748, 53752, 53767, 53769, 53776, 53804, 53805, + 53808, 53812, 53820, 53821, 53823, 53825, 53832, + 53852, 55181, 55182, 55183, 55185, 55186, 55187, + 55188, 55189, 55190, 55191, 55194, 55196, 55198, + 55199, 55200, 55201, 55202, 55203, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 53860, + 53888, 53889, 53892, 53896, 53904, 53905, 53909, + 53916, 53920, 53924, 53932, 53937, 53944, 53945, + 53948, 53951, 53952, 53954, 53960, 53961, 53963, + 53972, 53976, 53980, 53988, 53989, 54000, 54001, + 54004, 54008, 54016, 54017, 54019, 54021, 54028, + 54029, 54030, 54032, 54036, 54038, 54044, 54045, + 54047, 54048, 54049, 54053, 54056, 54057, 54060, + 54064, 54072, 54073, 54075, 54076, 54077, 54084, + 54085, 54140, 54141, 54144, 54148, 54156, 54157, + 54159, 54160, 54161, 54168, 54169, 54172, 54176, + 54184, 54185, 54187, 54189, 54196, 54200, 54204, + 54212, 54213, 54216, 54217, 54224, 54232, 54241, + 54243, 54252, 54253, 54256, 54260, 54268, 54269, + 54271, 54273, 54280, 54301, 54336, 54340, 54364, + 54368, 54372, 54381, 54383, 54392, 54393, 54396, + 54399, 54400, 54402, 54408, 54409, 54411, 54413, + 54420, 54441, 54476, 54480, 54484, 54492, 54495, + 54504, 54508, 54512, 54520, 54523, 54525, 54532, + 54536, 54540, 54548, 54549, 54551, 54588, 54589, + 54592, 54596, 54604, 54605, 54607, 54609, 54616, + 54617, 54620, 54624, 54629, 54632, 54633, 54635, + 54637, 54644, 54645, 54648, 54652, 54660, 54661, + 54663, 54664, 54665, 54672, 54693, 54728, 54729, + 54732, 54736, 54738, 54744, 54745, 54747, 54749, + 54756, 54757, 54760, 54764, 54772, 54773, 54775, + 54777, 54784, 54785, 54788, 54792, 54800, 54801, + 54803, 54804, 54805, 54812, 54816, 54820, 54829, + 54840, 54841, 54844, 54848, 54853, 54856, 54857, + 54859, 54861, 54865, 54868, 54869, 54872, 54876, + 54887, 54889, 54896, 54897, 54900, 54915, 54917, + 54924, 54925, 54928, 54932, 54941, 54943, 54945, + 54952, 54956, 54960, 54969, 54971, 54980, 54981, + 54984, 54988, 54993, 54996, 54999, 55001, 55008, + 55012, 55016, 55024, 55029, 55036, 55037, 55040, + 55044, 55057, 55064, 55065, 55068, 55072, 55080, + 55081, 55083, 55085, 55092, 55093, 55096, 55100, + 55108, 55111, 55113, 55120, 55121, 55124, 55126, + 55127, 55128, 55129, 55136, 55137, 55139, 55141, + 55145, 55148, 55152, 55156, 55164, 55165, 55169, + 55176, 55177, 55180, 55184, 55192, 55193, 55195, + 55197, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 20285, + 20339, 20551, 20729, 21152, 21487, 21621, 21733, + 22025, 23233, 23478, 26247, 26550, 26551, 26607, + 27468, 29634, 30146, 31292, 33499, 33540, 34903, + 34952, 35382, 36040, 36303, 36603, 36838, 39381, + 21051, 21364, 21508, 24682, 24932, 27580, 29647, + 33050, 35258, 35282, 38307, 20355, 21002, 22718, + 22904, 23014, 24178, 24185, 25031, 25536, 26438, + 26604, 26751, 28567, 30286, 30475, 30965, 31240, + 31487, 31777, 32925, 33390, 33393, 35563, 38291, + 20075, 21917, 26359, 28212, 30883, 31469, 33883, + 35088, 34638, 38824, 21208, 22350, 22570, 23884, + 24863, 25022, 25121, 25954, 26577, 27204, 28187, + 29976, 30131, 30435, 30640, 32058, 37039, 37969, + 37970, 40853, 21283, 23724, 30002, 32987, 37440, + 38296, 21083, 22536, 23004, 23713, 23831, 24247, + 24378, 24394, 24951, 27743, 30074, 30086, 31968, + 32115, 32177, 32652, 33108, 33313, 34193, 35137, + 35611, 37628, 38477, 40007, 20171, 20215, 20491, + 20977, 22607, 24887, 24894, 24936, 25913, 27114, + 28433, 30117, 30342, 30422, 31623, 33445, 33995, + 63744, 37799, 38283, 21888, 23458, 22353, 63745, + 31923, 32697, 37301, 20520, 21435, 23621, 24040, + 25298, 25454, 25818, 25831, 28192, 28844, 31067, + 36317, 36382, 63746, 36989, 37445, 37624, 20094, + 20214, 20581, 24062, 24314, 24838, 26967, 33137, + 34388, 36423, 37749, 39467, 20062, 20625, 26480, + 26688, 20745, 21133, 21138, 27298, 30652, 37392, + 40660, 21163, 24623, 36850, 20552, 25001, 25581, + 25802, 26684, 27268, 28608, 33160, 35233, 38548, + 22533, 29309, 29356, 29956, 32121, 32365, 32937, + 35211, 35700, 36963, 40273, 25225, 27770, 28500, + 32080, 32570, 35363, 20860, 24906, 31645, 35609, + 37463, 37772, 20140, 20435, 20510, 20670, 20742, + 21185, 21197, 21375, 22384, 22659, 24218, 24465, + 24950, 25004, 25806, 25964, 26223, 26299, 26356, + 26775, 28039, 28805, 28913, 29855, 29861, 29898, + 30169, 30828, 30956, 31455, 31478, 32069, 32147, + 32789, 32831, 33051, 33686, 35686, 36629, 36885, + 37857, 38915, 38968, 39514, 39912, 20418, 21843, + 22586, 22865, 23395, 23622, 24760, 25106, 26690, + 26800, 26856, 28330, 30028, 30328, 30926, 31293, + 31995, 32363, 32380, 35336, 35489, 35903, 38542, + 40388, 21476, 21481, 21578, 21617, 22266, 22993, + 23396, 23611, 24235, 25335, 25911, 25925, 25970, + 26272, 26543, 27073, 27837, 30204, 30352, 30590, + 31295, 32660, 32771, 32929, 33167, 33510, 33533, + 33776, 34241, 34865, 34996, 35493, 63747, 36764, + 37678, 38599, 39015, 39640, 40723, 21741, 26011, + 26354, 26767, 31296, 35895, 40288, 22256, 22372, + 23825, 26118, 26801, 26829, 28414, 29736, 34974, + 39908, 27752, 63748, 39592, 20379, 20844, 20849, + 21151, 23380, 24037, 24656, 24685, 25329, 25511, + 25915, 29657, 31354, 34467, 36002, 38799, 20018, + 23521, 25096, 26524, 29916, 31185, 33747, 35463, + 35506, 36328, 36942, 37707, 38982, 24275, 27112, + 34303, 37101, 63749, 20896, 23448, 23532, 24931, + 26874, 27454, 28748, 29743, 29912, 31649, 32592, + 33733, 35264, 36011, 38364, 39208, 21038, 24669, + 25324, 36866, 20362, 20809, 21281, 22745, 24291, + 26336, 27960, 28826, 29378, 29654, 31568, 33009, + 37979, 21350, 25499, 32619, 20054, 20608, 22602, + 22750, 24618, 24871, 25296, 27088, 39745, 23439, + 32024, 32945, 36703, 20132, 20689, 21676, 21932, + 23308, 23968, 24039, 25898, 25934, 26657, 27211, + 29409, 30350, 30703, 32094, 32761, 33184, 34126, + 34527, 36611, 36686, 37066, 39171, 39509, 39851, + 19992, 20037, 20061, 20167, 20465, 20855, 21246, + 21312, 21475, 21477, 21646, 22036, 22389, 22434, + 23495, 23943, 24272, 25084, 25304, 25937, 26552, + 26601, 27083, 27472, 27590, 27628, 27714, 28317, + 28792, 29399, 29590, 29699, 30655, 30697, 31350, + 32127, 32777, 33276, 33285, 33290, 33503, 34914, + 35635, 36092, 36544, 36881, 37041, 37476, 37558, + 39378, 39493, 40169, 40407, 40860, 22283, 23616, + 33738, 38816, 38827, 40628, 21531, 31384, 32676, + 35033, 36557, 37089, 22528, 23624, 25496, 31391, + 23470, 24339, 31353, 31406, 33422, 36524, 20518, + 21048, 21240, 21367, 22280, 25331, 25458, 27402, + 28099, 30519, 21413, 29527, 34152, 36470, 38357, + 26426, 27331, 28528, 35437, 36556, 39243, 63750, + 26231, 27512, 36020, 39740, 63751, 21483, 22317, + 22862, 25542, 27131, 29674, 30789, 31418, 31429, + 31998, 33909, 35215, 36211, 36917, 38312, 21243, + 22343, 30023, 31584, 33740, 37406, 63752, 27224, + 20811, 21067, 21127, 25119, 26840, 26997, 38553, + 20677, 21156, 21220, 25027, 26020, 26681, 27135, + 29822, 31563, 33465, 33771, 35250, 35641, 36817, + 39241, 63753, 20170, 22935, 25810, 26129, 27278, + 29748, 31105, 31165, 33449, 34942, 34943, 35167, + 63754, 37670, 20235, 21450, 24613, 25201, 27762, + 32026, 32102, 20120, 20834, 30684, 32943, 20225, + 20238, 20854, 20864, 21980, 22120, 22331, 22522, + 22524, 22804, 22855, 22931, 23492, 23696, 23822, + 24049, 24190, 24524, 25216, 26071, 26083, 26398, + 26399, 26462, 26827, 26820, 27231, 27450, 27683, + 27773, 27778, 28103, 29592, 29734, 29738, 29826, + 29859, 30072, 30079, 30849, 30959, 31041, 31047, + 31048, 31098, 31637, 32000, 32186, 32648, 32774, + 32813, 32908, 35352, 35663, 35912, 36215, 37665, + 37668, 39138, 39249, 39438, 39439, 39525, 40594, + 32202, 20342, 21513, 25326, 26708, 37329, 21931, + 20794, 63755, 63756, 23068, 25062, 63757, 25295, + 25343, 63758, 63759, 63760, 63761, 63762, 63763, + 37027, 63764, 63765, 63766, 63767, 63768, 35582, + 63769, 63770, 63771, 63772, 26262, 63773, 29014, + 63774, 63775, 38627, 63776, 25423, 25466, 21335, + 63777, 26511, 26976, 28275, 63778, 30007, 63779, + 63780, 63781, 32013, 63782, 63783, 34930, 22218, + 23064, 63784, 63785, 63786, 63787, 63788, 20035, + 63789, 20839, 22856, 26608, 32784, 63790, 22899, + 24180, 25754, 31178, 24565, 24684, 25288, 25467, + 23527, 23511, 21162, 63791, 22900, 24361, 24594, + 63792, 63793, 63794, 29785, 63795, 63796, 63797, + 63798, 63799, 63800, 39377, 63801, 63802, 63803, + 63804, 63805, 63806, 63807, 63808, 63809, 63810, + 63811, 28611, 63812, 63813, 33215, 36786, 24817, + 63814, 63815, 33126, 63816, 63817, 23615, 63818, + 63819, 63820, 63821, 63822, 63823, 63824, 63825, + 23273, 35365, 26491, 32016, 63826, 63827, 63828, + 63829, 63830, 63831, 33021, 63832, 63833, 23612, + 27877, 21311, 28346, 22810, 33590, 20025, 20150, + 20294, 21934, 22296, 22727, 24406, 26039, 26086, + 27264, 27573, 28237, 30701, 31471, 31774, 32222, + 34507, 34962, 37170, 37723, 25787, 28606, 29562, + 30136, 36948, 21846, 22349, 25018, 25812, 26311, + 28129, 28251, 28525, 28601, 30192, 32835, 33213, + 34113, 35203, 35527, 35674, 37663, 27795, 30035, + 31572, 36367, 36957, 21776, 22530, 22616, 24162, + 25095, 25758, 26848, 30070, 31958, 34739, 40680, + 20195, 22408, 22382, 22823, 23565, 23729, 24118, + 24453, 25140, 25825, 29619, 33274, 34955, 36024, + 38538, 40667, 23429, 24503, 24755, 20498, 20992, + 21040, 22294, 22581, 22615, 23566, 23648, 23798, + 23947, 24230, 24466, 24764, 25361, 25481, 25623, + 26691, 26873, 27330, 28120, 28193, 28372, 28644, + 29182, 30428, 30585, 31153, 31291, 33796, 35241, + 36077, 36339, 36424, 36867, 36884, 36947, 37117, + 37709, 38518, 38876, 27602, 28678, 29272, 29346, + 29544, 30563, 31167, 31716, 32411, 35712, 22697, + 24775, 25958, 26109, 26302, 27788, 28958, 29129, + 35930, 38931, 20077, 31361, 20189, 20908, 20941, + 21205, 21516, 24999, 26481, 26704, 26847, 27934, + 28540, 30140, 30643, 31461, 33012, 33891, 37509, + 20828, 26007, 26460, 26515, 30168, 31431, 33651, + 63834, 35910, 36887, 38957, 23663, 33216, 33434, + 36929, 36975, 37389, 24471, 23965, 27225, 29128, + 30331, 31561, 34276, 35588, 37159, 39472, 21895, + 25078, 63835, 30313, 32645, 34367, 34746, 35064, + 37007, 63836, 27931, 28889, 29662, 32097, 33853, + 63837, 37226, 39409, 63838, 20098, 21365, 27396, + 27410, 28734, 29211, 34349, 40478, 21068, 36771, + 23888, 25829, 25900, 27414, 28651, 31811, 32412, + 34253, 35172, 35261, 25289, 33240, 34847, 24266, + 26391, 28010, 29436, 29701, 29807, 34690, 37086, + 20358, 23821, 24480, 33802, 20919, 25504, 30053, + 20142, 20486, 20841, 20937, 26753, 27153, 31918, + 31921, 31975, 33391, 35538, 36635, 37327, 20406, + 20791, 21237, 21570, 24300, 24942, 25150, 26053, + 27354, 28670, 31018, 34268, 34851, 38317, 39522, + 39530, 40599, 40654, 21147, 26310, 27511, 28701, + 31019, 36706, 38722, 24976, 25088, 25891, 28451, + 29001, 29833, 32244, 32879, 34030, 36646, 36899, + 37706, 20925, 21015, 21155, 27916, 28872, 35010, + 24265, 25986, 27566, 28610, 31806, 29557, 20196, + 20278, 22265, 63839, 23738, 23994, 24604, 29618, + 31533, 32666, 32718, 32838, 36894, 37428, 38646, + 38728, 38936, 40801, 20363, 28583, 31150, 37300, + 38583, 21214, 63840, 25736, 25796, 27347, 28510, + 28696, 29200, 30439, 32769, 34310, 34396, 36335, + 36613, 38706, 39791, 40442, 40565, 30860, 31103, + 32160, 33737, 37636, 40575, 40595, 35542, 22751, + 24324, 26407, 28711, 29903, 31840, 32894, 20769, + 28712, 29282, 30922, 36034, 36058, 36084, 38647, + 20102, 20698, 23534, 24278, 26009, 29134, 30274, + 30637, 32842, 34044, 36988, 39719, 40845, 22744, + 23105, 23650, 27155, 28122, 28431, 30267, 32047, + 32311, 34078, 35128, 37860, 38475, 21129, 26066, + 26611, 27060, 27969, 28316, 28687, 29705, 29792, + 30041, 30244, 30827, 35628, 39006, 20845, 25134, + 38520, 20374, 20523, 23833, 28138, 32184, 36650, + 24459, 24900, 26647, 63841, 38534, 21202, 32907, + 20956, 20940, 26974, 31260, 32190, 33777, 38517, + 20442, 21033, 21400, 21519, 21774, 23653, 24743, + 26446, 26792, 28012, 29313, 29432, 29702, 29827, + 63842, 30178, 31852, 32633, 32696, 33673, 35023, + 35041, 37324, 37328, 38626, 39881, 21533, 28542, + 29136, 29848, 34298, 36522, 38563, 40023, 40607, + 26519, 28107, 29747, 33256, 38678, 30764, 31435, + 31520, 31890, 25705, 29802, 30194, 30908, 30952, + 39340, 39764, 40635, 23518, 24149, 28448, 33180, + 33707, 37000, 19975, 21325, 23081, 24018, 24398, + 24930, 25405, 26217, 26364, 28415, 28459, 28771, + 30622, 33836, 34067, 34875, 36627, 39237, 39995, + 21788, 25273, 26411, 27819, 33545, 35178, 38778, + 20129, 22916, 24536, 24537, 26395, 32178, 32596, + 33426, 33579, 33725, 36638, 37017, 22475, 22969, + 23186, 23504, 26151, 26522, 26757, 27599, 29028, + 32629, 36023, 36067, 36993, 39749, 33032, 35978, + 38476, 39488, 40613, 23391, 27667, 29467, 30450, + 30431, 33804, 20906, 35219, 20813, 20885, 21193, + 26825, 27796, 30468, 30496, 32191, 32236, 38754, + 40629, 28357, 34065, 20901, 21517, 21629, 26126, + 26269, 26919, 28319, 30399, 30609, 33559, 33986, + 34719, 37225, 37528, 40180, 34946, 20398, 20882, + 21215, 22982, 24125, 24917, 25720, 25721, 26286, + 26576, 27169, 27597, 27611, 29279, 29281, 29761, + 30520, 30683, 32791, 33468, 33541, 35584, 35624, + 35980, 26408, 27792, 29287, 30446, 30566, 31302, + 40361, 27519, 27794, 22818, 26406, 33945, 21359, + 22675, 22937, 24287, 25551, 26164, 26483, 28218, + 29483, 31447, 33495, 37672, 21209, 24043, 25006, + 25035, 25098, 25287, 25771, 26080, 26969, 27494, + 27595, 28961, 29687, 30045, 32326, 33310, 33538, + 34154, 35491, 36031, 38695, 40289, 22696, 40664, + 20497, 21006, 21563, 21839, 25991, 27766, 32010, + 32011, 32862, 34442, 38272, 38639, 21247, 27797, + 29289, 21619, 23194, 23614, 23883, 24396, 24494, + 26410, 26806, 26979, 28220, 28228, 30473, 31859, + 32654, 34183, 35598, 36855, 38753, 40692, 23735, + 24758, 24845, 25003, 25935, 26107, 26108, 27665, + 27887, 29599, 29641, 32225, 38292, 23494, 34588, + 35600, 21085, 21338, 25293, 25615, 25778, 26420, + 27192, 27850, 29632, 29854, 31636, 31893, 32283, + 33162, 33334, 34180, 36843, 38649, 39361, 20276, + 21322, 21453, 21467, 25292, 25644, 25856, 26001, + 27075, 27886, 28504, 29677, 30036, 30242, 30436, + 30460, 30928, 30971, 31020, 32070, 33324, 34784, + 36820, 38930, 39151, 21187, 25300, 25765, 28196, + 28497, 30332, 36299, 37297, 37474, 39662, 39747, + 20515, 20621, 22346, 22952, 23592, 24135, 24439, + 25151, 25918, 26041, 26049, 26121, 26507, 27036, + 28354, 30917, 32033, 32938, 33152, 33323, 33459, + 33953, 34444, 35370, 35607, 37030, 38450, 40848, + 20493, 20467, 63843, 22521, 24472, 25308, 25490, + 26479, 28227, 28953, 30403, 32972, 32986, 35060, + 35061, 35097, 36064, 36649, 37197, 38506, 20271, + 20336, 24091, 26575, 26658, 30333, 30334, 39748, + 24161, 27146, 29033, 29140, 30058, 63844, 32321, + 34115, 34281, 39132, 20240, 31567, 32624, 38309, + 20961, 24070, 26805, 27710, 27726, 27867, 29359, + 31684, 33539, 27861, 29754, 20731, 21128, 22721, + 25816, 27287, 29863, 30294, 30887, 34327, 38370, + 38713, 63845, 21342, 24321, 35722, 36776, 36783, + 37002, 21029, 30629, 40009, 40712, 19993, 20482, + 20853, 23643, 24183, 26142, 26170, 26564, 26821, + 28851, 29953, 30149, 31177, 31453, 36647, 39200, + 39432, 20445, 22561, 22577, 23542, 26222, 27493, + 27921, 28282, 28541, 29668, 29995, 33769, 35036, + 35091, 35676, 36628, 20239, 20693, 21264, 21340, + 23443, 24489, 26381, 31119, 33145, 33583, 34068, + 35079, 35206, 36665, 36667, 39333, 39954, 26412, + 20086, 20472, 22857, 23553, 23791, 23792, 25447, + 26834, 28925, 29090, 29739, 32299, 34028, 34562, + 36898, 37586, 40179, 19981, 20184, 20463, 20613, + 21078, 21103, 21542, 21648, 22496, 22827, 23142, + 23386, 23413, 23500, 24220, 63846, 25206, 25975, + 26023, 28014, 28325, 29238, 31526, 31807, 32566, + 33104, 33105, 33178, 33344, 33433, 33705, 35331, + 36000, 36070, 36091, 36212, 36282, 37096, 37340, + 38428, 38468, 39385, 40167, 21271, 20998, 21545, + 22132, 22707, 22868, 22894, 24575, 24996, 25198, + 26128, 27774, 28954, 30406, 31881, 31966, 32027, + 33452, 36033, 38640, 63847, 20315, 24343, 24447, + 25282, 23849, 26379, 26842, 30844, 32323, 40300, + 19989, 20633, 21269, 21290, 21329, 22915, 23138, + 24199, 24754, 24970, 25161, 25209, 26000, 26503, + 27047, 27604, 27606, 27607, 27608, 27832, 63848, + 29749, 30202, 30738, 30865, 31189, 31192, 31875, + 32203, 32737, 32933, 33086, 33218, 33778, 34586, + 35048, 35513, 35692, 36027, 37145, 38750, 39131, + 40763, 22188, 23338, 24428, 25996, 27315, 27567, + 27996, 28657, 28693, 29277, 29613, 36007, 36051, + 38971, 24977, 27703, 32856, 39425, 20045, 20107, + 20123, 20181, 20282, 20284, 20351, 20447, 20735, + 21490, 21496, 21766, 21987, 22235, 22763, 22882, + 23057, 23531, 23546, 23556, 24051, 24107, 24473, + 24605, 25448, 26012, 26031, 26614, 26619, 26797, + 27515, 27801, 27863, 28195, 28681, 29509, 30722, + 31038, 31040, 31072, 31169, 31721, 32023, 32114, + 32902, 33293, 33678, 34001, 34503, 35039, 35408, + 35422, 35613, 36060, 36198, 36781, 37034, 39164, + 39391, 40605, 21066, 63849, 26388, 63850, 20632, + 21034, 23665, 25955, 27733, 29642, 29987, 30109, + 31639, 33948, 37240, 38704, 20087, 25746, 27578, + 29022, 34217, 19977, 63851, 26441, 26862, 28183, + 33439, 34072, 34923, 25591, 28545, 37394, 39087, + 19978, 20663, 20687, 20767, 21830, 21930, 22039, + 23360, 23577, 23776, 24120, 24202, 24224, 24258, + 24819, 26705, 27233, 28248, 29245, 29248, 29376, + 30456, 31077, 31665, 32724, 35059, 35316, 35443, + 35937, 36062, 38684, 22622, 29885, 36093, 21959, + 63852, 31329, 32034, 33394, 29298, 29983, 29989, + 63853, 31513, 22661, 22779, 23996, 24207, 24246, + 24464, 24661, 25234, 25471, 25933, 26257, 26329, + 26360, 26646, 26866, 29312, 29790, 31598, 32110, + 32214, 32626, 32997, 33298, 34223, 35199, 35475, + 36893, 37604, 40653, 40736, 22805, 22893, 24109, + 24796, 26132, 26227, 26512, 27728, 28101, 28511, + 30707, 30889, 33990, 37323, 37675, 20185, 20682, + 20808, 21892, 23307, 23459, 25159, 25982, 26059, + 28210, 29053, 29697, 29764, 29831, 29887, 30316, + 31146, 32218, 32341, 32680, 33146, 33203, 33337, + 34330, 34796, 35445, 36323, 36984, 37521, 37925, + 39245, 39854, 21352, 23633, 26964, 27844, 27945, + 28203, 33292, 34203, 35131, 35373, 35498, 38634, + 40807, 21089, 26297, 27570, 32406, 34814, 36109, + 38275, 38493, 25885, 28041, 29166, 63854, 22478, + 22995, 23468, 24615, 24826, 25104, 26143, 26207, + 29481, 29689, 30427, 30465, 31596, 32854, 32882, + 33125, 35488, 37266, 19990, 21218, 27506, 27927, + 31237, 31545, 32048, 63855, 36016, 21484, 22063, + 22609, 23477, 23567, 23569, 24034, 25152, 25475, + 25620, 26157, 26803, 27836, 28040, 28335, 28703, + 28836, 29138, 29990, 30095, 30094, 30233, 31505, + 31712, 31787, 32032, 32057, 34092, 34157, 34311, + 35380, 36877, 36961, 37045, 37559, 38902, 39479, + 20439, 23660, 26463, 28049, 31903, 32396, 35606, + 36118, 36895, 23403, 24061, 25613, 33984, 36956, + 39137, 29575, 23435, 24730, 26494, 28126, 35359, + 35494, 36865, 38924, 21047, 63856, 28753, 30862, + 37782, 34928, 37335, 20462, 21463, 22013, 22234, + 22402, 22781, 23234, 23432, 23723, 23744, 24101, + 24833, 25101, 25163, 25480, 25628, 25910, 25976, + 27193, 27530, 27700, 27929, 28465, 29159, 29417, + 29560, 29703, 29874, 30246, 30561, 31168, 31319, + 31466, 31929, 32143, 32172, 32353, 32670, 33065, + 33585, 33936, 34010, 34282, 34966, 35504, 35728, + 36664, 36930, 36995, 37228, 37526, 37561, 38539, + 38567, 38568, 38614, 38656, 38920, 39318, 39635, + 39706, 21460, 22654, 22809, 23408, 23487, 28113, + 28506, 29087, 29729, 29881, 32901, 33789, 24033, + 24455, 24490, 24642, 26092, 26642, 26991, 27219, + 27529, 27957, 28147, 29667, 30462, 30636, 31565, + 32020, 33059, 33308, 33600, 34036, 34147, 35426, + 35524, 37255, 37662, 38918, 39348, 25100, 34899, + 36848, 37477, 23815, 23847, 23913, 29791, 33181, + 34664, 28629, 25342, 32722, 35126, 35186, 19998, + 20056, 20711, 21213, 21319, 25215, 26119, 32361, + 34821, 38494, 20365, 21273, 22070, 22987, 23204, + 23608, 23630, 23629, 24066, 24337, 24643, 26045, + 26159, 26178, 26558, 26612, 29468, 30690, 31034, + 32709, 33940, 33997, 35222, 35430, 35433, 35553, + 35925, 35962, 22516, 23508, 24335, 24687, 25325, + 26893, 27542, 28252, 29060, 31698, 34645, 35672, + 36606, 39135, 39166, 20280, 20353, 20449, 21627, + 23072, 23480, 24892, 26032, 26216, 29180, 30003, + 31070, 32051, 33102, 33251, 33688, 34218, 34254, + 34563, 35338, 36523, 36763, 63857, 36805, 22833, + 23460, 23526, 24713, 23529, 23563, 24515, 27777, + 63858, 28145, 28683, 29978, 33455, 35574, 20160, + 21313, 63859, 38617, 27663, 20126, 20420, 20818, + 21854, 23077, 23784, 25105, 29273, 33469, 33706, + 34558, 34905, 35357, 38463, 38597, 39187, 40201, + 40285, 22538, 23731, 23997, 24132, 24801, 24853, + 25569, 27138, 28197, 37122, 37716, 38990, 39952, + 40823, 23433, 23736, 25353, 26191, 26696, 30524, + 38593, 38797, 38996, 39839, 26017, 35585, 36555, + 38332, 21813, 23721, 24022, 24245, 26263, 30284, + 33780, 38343, 22739, 25276, 29390, 40232, 20208, + 22830, 24591, 26171, 27523, 31207, 40230, 21395, + 21696, 22467, 23830, 24859, 26326, 28079, 30861, + 33406, 38552, 38724, 21380, 25212, 25494, 28082, + 32266, 33099, 38989, 27387, 32588, 40367, 40474, + 20063, 20539, 20918, 22812, 24825, 25590, 26928, + 29242, 32822, 63860, 37326, 24369, 63861, 63862, + 32004, 33509, 33903, 33979, 34277, 36493, 63863, + 20335, 63864, 63865, 22756, 23363, 24665, 25562, + 25880, 25965, 26264, 63866, 26954, 27171, 27915, + 28673, 29036, 30162, 30221, 31155, 31344, 63867, + 32650, 63868, 35140, 63869, 35731, 37312, 38525, + 63870, 39178, 22276, 24481, 26044, 28417, 30208, + 31142, 35486, 39341, 39770, 40812, 20740, 25014, + 25233, 27277, 33222, 20547, 22576, 24422, 28937, + 35328, 35578, 23420, 34326, 20474, 20796, 22196, + 22852, 25513, 28153, 23978, 26989, 20870, 20104, + 20313, 63871, 63872, 63873, 22914, 63874, 63875, + 27487, 27741, 63876, 29877, 30998, 63877, 33287, + 33349, 33593, 36671, 36701, 63878, 39192, 63879, + 63880, 63881, 20134, 63882, 22495, 24441, 26131, + 63883, 63884, 30123, 32377, 35695, 63885, 36870, + 39515, 22181, 22567, 23032, 23071, 23476, 63886, + 24310, 63887, 63888, 25424, 25403, 63889, 26941, + 27783, 27839, 28046, 28051, 28149, 28436, 63890, + 28895, 28982, 29017, 63891, 29123, 29141, 63892, + 30799, 30831, 63893, 31605, 32227, 63894, 32303, + 63895, 34893, 36575, 63896, 63897, 63898, 37467, + 63899, 40182, 63900, 63901, 63902, 24709, 28037, + 63903, 29105, 63904, 63905, 38321, 21421, 63906, + 63907, 63908, 26579, 63909, 28814, 28976, 29744, + 33398, 33490, 63910, 38331, 39653, 40573, 26308, + 63911, 29121, 33865, 63912, 63913, 22603, 63914, + 63915, 23992, 24433, 63916, 26144, 26254, 27001, + 27054, 27704, 27891, 28214, 28481, 28634, 28699, + 28719, 29008, 29151, 29552, 63917, 29787, 63918, + 29908, 30408, 31310, 32403, 63919, 63920, 33521, + 35424, 36814, 63921, 37704, 63922, 38681, 63923, + 63924, 20034, 20522, 63925, 21000, 21473, 26355, + 27757, 28618, 29450, 30591, 31330, 33454, 34269, + 34306, 63926, 35028, 35427, 35709, 35947, 63927, + 37555, 63928, 38675, 38928, 20116, 20237, 20425, + 20658, 21320, 21566, 21555, 21978, 22626, 22714, + 22887, 23067, 23524, 24735, 63929, 25034, 25942, + 26111, 26212, 26791, 27738, 28595, 28879, 29100, + 29522, 31613, 34568, 35492, 39986, 40711, 23627, + 27779, 29508, 29577, 37434, 28331, 29797, 30239, + 31337, 32277, 34314, 20800, 22725, 25793, 29934, + 29973, 30320, 32705, 37013, 38605, 39252, 28198, + 29926, 31401, 31402, 33253, 34521, 34680, 35355, + 23113, 23436, 23451, 26785, 26880, 28003, 29609, + 29715, 29740, 30871, 32233, 32747, 33048, 33109, + 33694, 35916, 38446, 38929, 26352, 24448, 26106, + 26505, 27754, 29579, 20525, 23043, 27498, 30702, + 22806, 23916, 24013, 29477, 30031, 63930, 63931, + 20709, 20985, 22575, 22829, 22934, 23002, 23525, + 63932, 63933, 23970, 25303, 25622, 25747, 25854, + 63934, 26332, 63935, 27208, 63936, 29183, 29796, + 63937, 31368, 31407, 32327, 32350, 32768, 33136, + 63938, 34799, 35201, 35616, 36953, 63939, 36992, + 39250, 24958, 27442, 28020, 32287, 35109, 36785, + 20433, 20653, 20887, 21191, 22471, 22665, 23481, + 24248, 24898, 27029, 28044, 28263, 28342, 29076, + 29794, 29992, 29996, 32883, 33592, 33993, 36362, + 37780, 37854, 63940, 20110, 20305, 20598, 20778, + 21448, 21451, 21491, 23431, 23507, 23588, 24858, + 24962, 26100, 29275, 29591, 29760, 30402, 31056, + 31121, 31161, 32006, 32701, 33419, 34261, 34398, + 36802, 36935, 37109, 37354, 38533, 38632, 38633, + 21206, 24423, 26093, 26161, 26671, 29020, 31286, + 37057, 38922, 20113, 63941, 27218, 27550, 28560, + 29065, 32792, 33464, 34131, 36939, 38549, 38642, + 38907, 34074, 39729, 20112, 29066, 38596, 20803, + 21407, 21729, 22291, 22290, 22435, 23195, 23236, + 23491, 24616, 24895, 25588, 27781, 27961, 28274, + 28304, 29232, 29503, 29783, 33489, 34945, 36677, + 36960, 63942, 38498, 39000, 40219, 26376, 36234, + 37470, 20301, 20553, 20702, 21361, 22285, 22996, + 23041, 23561, 24944, 26256, 28205, 29234, 29771, + 32239, 32963, 33806, 33894, 34111, 34655, 34907, + 35096, 35586, 36949, 38859, 39759, 20083, 20369, + 20754, 20842, 63943, 21807, 21929, 23418, 23461, + 24188, 24189, 24254, 24736, 24799, 24840, 24841, + 25540, 25912, 26377, 63944, 26580, 26586, 63945, + 26977, 26978, 27833, 27943, 63946, 28216, 63947, + 28641, 29494, 29495, 63948, 29788, 30001, 63949, + 30290, 63950, 63951, 32173, 33278, 33848, 35029, + 35480, 35547, 35565, 36400, 36418, 36938, 36926, + 36986, 37193, 37321, 37742, 63952, 63953, 22537, + 63954, 27603, 32905, 32946, 63955, 63956, 20801, + 22891, 23609, 63957, 63958, 28516, 29607, 32996, + 36103, 63959, 37399, 38287, 63960, 63961, 63962, + 63963, 32895, 25102, 28700, 32104, 34701, 63964, + 22432, 24681, 24903, 27575, 35518, 37504, 38577, + 20057, 21535, 28139, 34093, 38512, 38899, 39150, + 25558, 27875, 37009, 20957, 25033, 33210, 40441, + 20381, 20506, 20736, 23452, 24847, 25087, 25836, + 26885, 27589, 30097, 30691, 32681, 33380, 34191, + 34811, 34915, 35516, 35696, 37291, 20108, 20197, + 20234, 63965, 63966, 22839, 23016, 63967, 24050, + 24347, 24411, 24609, 63968, 63969, 63970, 63971, + 29246, 29669, 63972, 30064, 30157, 63973, 31227, + 63974, 32780, 32819, 32900, 33505, 33617, 63975, + 63976, 36029, 36019, 36999, 63977, 63978, 39156, + 39180, 63979, 63980, 28727, 30410, 32714, 32716, + 32764, 35610, 20154, 20161, 20995, 21360, 63981, + 21693, 22240, 23035, 23493, 24341, 24525, 28270, + 63982, 63983, 32106, 33589, 63984, 34451, 35469, + 63985, 38765, 38775, 63986, 63987, 19968, 20314, + 20350, 22777, 26085, 28322, 36920, 37808, 39353, + 20219, 22764, 22922, 23001, 24641, 63988, 63989, + 31252, 63990, 33615, 36035, 20837, 21316, 63991, + 63992, 63993, 20173, 21097, 23381, 33471, 20180, + 21050, 21672, 22985, 23039, 23376, 23383, 23388, + 24675, 24904, 28363, 28825, 29038, 29574, 29943, + 30133, 30913, 32043, 32773, 33258, 33576, 34071, + 34249, 35566, 36039, 38604, 20316, 21242, 22204, + 26027, 26152, 28796, 28856, 29237, 32189, 33421, + 37196, 38592, 40306, 23409, 26855, 27544, 28538, + 30430, 23697, 26283, 28507, 31668, 31786, 34870, + 38620, 19976, 20183, 21280, 22580, 22715, 22767, + 22892, 23559, 24115, 24196, 24373, 25484, 26290, + 26454, 27167, 27299, 27404, 28479, 29254, 63994, + 29520, 29835, 31456, 31911, 33144, 33247, 33255, + 33674, 33900, 34083, 34196, 34255, 35037, 36115, + 37292, 38263, 38556, 20877, 21705, 22312, 23472, + 25165, 26448, 26685, 26771, 28221, 28371, 28797, + 32289, 35009, 36001, 36617, 40779, 40782, 29229, + 31631, 35533, 37658, 20295, 20302, 20786, 21632, + 22992, 24213, 25269, 26485, 26990, 27159, 27822, + 28186, 29401, 29482, 30141, 31672, 32053, 33511, + 33785, 33879, 34295, 35419, 36015, 36487, 36889, + 37048, 38606, 40799, 21219, 21514, 23265, 23490, + 25688, 25973, 28404, 29380, 63995, 30340, 31309, + 31515, 31821, 32318, 32735, 33659, 35627, 36042, + 36196, 36321, 36447, 36842, 36857, 36969, 37841, + 20291, 20346, 20659, 20840, 20856, 21069, 21098, + 22625, 22652, 22880, 23560, 23637, 24283, 24731, + 25136, 26643, 27583, 27656, 28593, 29006, 29728, + 30000, 30008, 30033, 30322, 31564, 31627, 31661, + 31686, 32399, 35438, 36670, 36681, 37439, 37523, + 37666, 37931, 38651, 39002, 39019, 39198, 20999, + 25130, 25240, 27993, 30308, 31434, 31680, 32118, + 21344, 23742, 24215, 28472, 28857, 31896, 38673, + 39822, 40670, 25509, 25722, 34678, 19969, 20117, + 20141, 20572, 20597, 21576, 22979, 23450, 24128, + 24237, 24311, 24449, 24773, 25402, 25919, 25972, + 26060, 26230, 26232, 26622, 26984, 27273, 27491, + 27712, 28096, 28136, 28191, 28254, 28702, 28833, + 29582, 29693, 30010, 30555, 30855, 31118, 31243, + 31357, 31934, 32142, 33351, 35330, 35562, 35998, + 37165, 37194, 37336, 37478, 37580, 37664, 38662, + 38742, 38748, 38914, 40718, 21046, 21137, 21884, + 22564, 24093, 24351, 24716, 25552, 26799, 28639, + 31085, 31532, 33229, 34234, 35069, 35576, 36420, + 37261, 38500, 38555, 38717, 38988, 40778, 20430, + 20806, 20939, 21161, 22066, 24340, 24427, 25514, + 25805, 26089, 26177, 26362, 26361, 26397, 26781, + 26839, 27133, 28437, 28526, 29031, 29157, 29226, + 29866, 30522, 31062, 31066, 31199, 31264, 31381, + 31895, 31967, 32068, 32368, 32903, 34299, 34468, + 35412, 35519, 36249, 36481, 36896, 36973, 37347, + 38459, 38613, 40165, 26063, 31751, 36275, 37827, + 23384, 23562, 21330, 25305, 29469, 20519, 23447, + 24478, 24752, 24939, 26837, 28121, 29742, 31278, + 32066, 32156, 32305, 33131, 36394, 36405, 37758, + 37912, 20304, 22352, 24038, 24231, 25387, 32618, + 20027, 20303, 20367, 20570, 23005, 32964, 21610, + 21608, 22014, 22863, 23449, 24030, 24282, 26205, + 26417, 26609, 26666, 27880, 27954, 28234, 28557, + 28855, 29664, 30087, 31820, 32002, 32044, 32162, + 33311, 34523, 35387, 35461, 36208, 36490, 36659, + 36913, 37198, 37202, 37956, 39376, 31481, 31909, + 20426, 20737, 20934, 22472, 23535, 23803, 26201, + 27197, 27994, 28310, 28652, 28940, 30063, 31459, + 34850, 36897, 36981, 38603, 39423, 33537, 20013, + 20210, 34886, 37325, 21373, 27355, 26987, 27713, + 33914, 22686, 24974, 26366, 25327, 28893, 29969, + 30151, 32338, 33976, 35657, 36104, 20043, 21482, + 21675, 22320, 22336, 24535, 25345, 25351, 25711, + 25903, 26088, 26234, 26525, 26547, 27490, 27744, + 27802, 28460, 30693, 30757, 31049, 31063, 32025, + 32930, 33026, 33267, 33437, 33463, 34584, 35468, + 63996, 36100, 36286, 36978, 30452, 31257, 31287, + 32340, 32887, 21767, 21972, 22645, 25391, 25634, + 26185, 26187, 26733, 27035, 27524, 27941, 28337, + 29645, 29800, 29857, 30043, 30137, 30433, 30494, + 30603, 31206, 32265, 32285, 33275, 34095, 34967, + 35386, 36049, 36587, 36784, 36914, 37805, 38499, + 38515, 38663, 20356, 21489, 23018, 23241, 24089, + 26702, 29894, 30142, 31209, 31378, 33187, 34541, + 36074, 36300, 36845, 26015, 26389, 63997, 22519, + 28503, 32221, 36655, 37878, 38598, 24501, 25074, + 28548, 19988, 20376, 20511, 21449, 21983, 23919, + 24046, 27425, 27492, 30923, 31642, 63998, 36425, + 36554, 36974, 25417, 25662, 30528, 31364, 37679, + 38015, 40810, 25776, 28591, 29158, 29864, 29914, + 31428, 31762, 32386, 31922, 32408, 35738, 36106, + 38013, 39184, 39244, 21049, 23519, 25830, 26413, + 32046, 20717, 21443, 22649, 24920, 24921, 25082, + 26028, 31449, 35730, 35734, 20489, 20513, 21109, + 21809, 23100, 24288, 24432, 24884, 25950, 26124, + 26166, 26274, 27085, 28356, 28466, 29462, 30241, + 31379, 33081, 33369, 33750, 33980, 20661, 22512, + 23488, 23528, 24425, 25505, 30758, 32181, 33756, + 34081, 37319, 37365, 20874, 26613, 31574, 36012, + 20932, 22971, 24765, 34389, 20508, 63999, 21076, + 23610, 24957, 25114, 25299, 25842, 26021, 28364, + 30240, 33034, 36448, 38495, 38587, 20191, 21315, + 21912, 22825, 24029, 25797, 27849, 28154, 29588, + 31359, 33307, 34214, 36068, 36368, 36983, 37351, + 38369, 38433, 38854, 20984, 21746, 21894, 24505, + 25764, 28552, 32180, 36639, 36685, 37941, 20681, + 23574, 27838, 28155, 29979, 30651, 31805, 31844, + 35449, 35522, 22558, 22974, 24086, 25463, 29266, + 30090, 30571, 35548, 36028, 36626, 24307, 26228, + 28152, 32893, 33729, 35531, 38737, 39894, 64000, + 21059, 26367, 28053, 28399, 32224, 35558, 36910, + 36958, 39636, 21021, 21119, 21736, 24980, 25220, + 25307, 26786, 26898, 26970, 27189, 28818, 28966, + 30813, 30977, 30990, 31186, 31245, 32918, 33400, + 33493, 33609, 34121, 35970, 36229, 37218, 37259, + 37294, 20419, 22225, 29165, 30679, 34560, 35320, + 23544, 24534, 26449, 37032, 21474, 22618, 23541, + 24740, 24961, 25696, 32317, 32880, 34085, 37507, + 25774, 20652, 23828, 26368, 22684, 25277, 25512, + 26894, 27000, 27166, 28267, 30394, 31179, 33467, + 33833, 35535, 36264, 36861, 37138, 37195, 37276, + 37648, 37656, 37786, 38619, 39478, 39949, 19985, + 30044, 31069, 31482, 31569, 31689, 32302, 33988, + 36441, 36468, 36600, 36880, 26149, 26943, 29763, + 20986, 26414, 40668, 20805, 24544, 27798, 34802, + 34909, 34935, 24756, 33205, 33795, 36101, 21462, + 21561, 22068, 23094, 23601, 28810, 32736, 32858, + 33030, 33261, 36259, 37257, 39519, 40434, 20596, + 20164, 21408, 24827, 28204, 23652, 20360, 20516, + 21988, 23769, 24159, 24677, 26772, 27835, 28100, + 29118, 30164, 30196, 30305, 31258, 31305, 32199, + 32251, 32622, 33268, 34473, 36636, 38601, 39347, + 40786, 21063, 21189, 39149, 35242, 19971, 26578, + 28422, 20405, 23522, 26517, 27784, 28024, 29723, + 30759, 37341, 37756, 34756, 31204, 31281, 24555, + 20182, 21668, 21822, 22702, 22949, 24816, 25171, + 25302, 26422, 26965, 33333, 38464, 39345, 39389, + 20524, 21331, 21828, 22396, 64001, 25176, 64002, + 25826, 26219, 26589, 28609, 28655, 29730, 29752, + 35351, 37944, 21585, 22022, 22374, 24392, 24986, + 27470, 28760, 28845, 32187, 35477, 22890, 33067, + 25506, 30472, 32829, 36010, 22612, 25645, 27067, + 23445, 24081, 28271, 64003, 34153, 20812, 21488, + 22826, 24608, 24907, 27526, 27760, 27888, 31518, + 32974, 33492, 36294, 37040, 39089, 64004, 25799, + 28580, 25745, 25860, 20814, 21520, 22303, 35342, + 24927, 26742, 64005, 30171, 31570, 32113, 36890, + 22534, 27084, 33151, 35114, 36864, 38969, 20600, + 22871, 22956, 25237, 36879, 39722, 24925, 29305, + 38358, 22369, 23110, 24052, 25226, 25773, 25850, + 26487, 27874, 27966, 29228, 29750, 30772, 32631, + 33453, 36315, 38935, 21028, 22338, 26495, 29256, + 29923, 36009, 36774, 37393, 38442, 20843, 21485, + 25420, 20329, 21764, 24726, 25943, 27803, 28031, + 29260, 29437, 31255, 35207, 35997, 24429, 28558, + 28921, 33192, 24846, 20415, 20559, 25153, 29255, + 31687, 32232, 32745, 36941, 38829, 39449, 36022, + 22378, 24179, 26544, 33805, 35413, 21536, 23318, + 24163, 24290, 24330, 25987, 32954, 34109, 38281, + 38491, 20296, 21253, 21261, 21263, 21638, 21754, + 22275, 24067, 24598, 25243, 25265, 25429, 64006, + 27873, 28006, 30129, 30770, 32990, 33071, 33502, + 33889, 33970, 34957, 35090, 36875, 37610, 39165, + 39825, 24133, 26292, 26333, 28689, 29190, 64007, + 20469, 21117, 24426, 24915, 26451, 27161, 28418, + 29922, 31080, 34920, 35961, 39111, 39108, 39491, + 21697, 31263, 26963, 35575, 35914, 39080, 39342, + 24444, 25259, 30130, 30382, 34987, 36991, 38466, + 21305, 24380, 24517, 27852, 29644, 30050, 30091, + 31558, 33534, 39325, 20047, 36924, 19979, 20309, + 21414, 22799, 24264, 26160, 27827, 29781, 33655, + 34662, 36032, 36944, 38686, 39957, 22737, 23416, + 34384, 35604, 40372, 23506, 24680, 24717, 26097, + 27735, 28450, 28579, 28698, 32597, 32752, 38289, + 38290, 38480, 38867, 21106, 36676, 20989, 21547, + 21688, 21859, 21898, 27323, 28085, 32216, 33382, + 37532, 38519, 40569, 21512, 21704, 30418, 34532, + 38308, 38356, 38492, 20130, 20233, 23022, 23270, + 24055, 24658, 25239, 26477, 26689, 27782, 28207, + 32568, 32923, 33322, 64008, 64009, 38917, 20133, + 20565, 21683, 22419, 22874, 23401, 23475, 25032, + 26999, 28023, 28707, 34809, 35299, 35442, 35559, + 36994, 39405, 39608, 21182, 26680, 20502, 24184, + 26447, 33607, 34892, 20139, 21521, 22190, 29670, + 37141, 38911, 39177, 39255, 39321, 22099, 22687, + 34395, 35377, 25010, 27382, 29563, 36562, 27463, + 38570, 39511, 22869, 29184, 36203, 38761, 20436, + 23796, 24358, 25080, 26203, 27883, 28843, 29572, + 29625, 29694, 30505, 30541, 32067, 32098, 32291, + 33335, 34898, 64010, 36066, 37449, 39023, 23377, + 31348, 34880, 38913, 23244, 20448, 21332, 22846, + 23805, 25406, 28025, 29433, 33029, 33031, 33698, + 37583, 38960, 20136, 20804, 21009, 22411, 24418, + 27842, 28366, 28677, 28752, 28847, 29074, 29673, + 29801, 33610, 34722, 34913, 36872, 37026, 37795, + 39336, 20846, 24407, 24800, 24935, 26291, 34137, + 36426, 37295, 38795, 20046, 20114, 21628, 22741, + 22778, 22909, 23733, 24359, 25142, 25160, 26122, + 26215, 27627, 28009, 28111, 28246, 28408, 28564, + 28640, 28649, 28765, 29392, 29733, 29786, 29920, + 30355, 31068, 31946, 32286, 32993, 33446, 33899, + 33983, 34382, 34399, 34676, 35703, 35946, 37804, + 38912, 39013, 24785, 25110, 37239, 23130, 26127, + 28151, 28222, 29759, 39746, 24573, 24794, 31503, + 21700, 24344, 27742, 27859, 27946, 28888, 32005, + 34425, 35340, 40251, 21270, 21644, 23301, 27194, + 28779, 30069, 31117, 31166, 33457, 33775, 35441, + 35649, 36008, 38772, 64011, 25844, 25899, 30906, + 30907, 31339, 20024, 21914, 22864, 23462, 24187, + 24739, 25563, 27489, 26213, 26707, 28185, 29029, + 29872, 32008, 36996, 39529, 39973, 27963, 28369, + 29502, 35905, 38346, 20976, 24140, 24488, 24653, + 24822, 24880, 24908, 26179, 26180, 27045, 27841, + 28255, 28361, 28514, 29004, 29852, 30343, 31681, + 31783, 33618, 34647, 36945, 38541, 40643, 21295, + 22238, 24315, 24458, 24674, 24724, 25079, 26214, + 26371, 27292, 28142, 28590, 28784, 29546, 32362, + 33214, 33588, 34516, 35496, 36036, 21123, 29554, + 23446, 27243, 37892, 21742, 22150, 23389, 25928, + 25989, 26313, 26783, 28045, 28102, 29243, 32948, + 37237, 39501, 20399, 20505, 21402, 21518, 21564, + 21897, 21957, 24127, 24460, 26429, 29030, 29661, + 36869, 21211, 21235, 22628, 22734, 28932, 29071, + 29179, 34224, 35347, 26248, 34216, 21927, 26244, + 29002, 33841, 21321, 21913, 27585, 24409, 24509, + 25582, 26249, 28999, 35569, 36637, 40638, 20241, + 25658, 28875, 30054, 34407, 24676, 35662, 40440, + 20807, 20982, 21256, 27958, 33016, 40657, 26133, + 27427, 28824, 30165, 21507, 23673, 32007, 35350, + 27424, 27453, 27462, 21560, 24688, 27965, 32725, + 33288, 20694, 20958, 21916, 22123, 22221, 23020, + 23305, 24076, 24985, 24984, 25137, 26206, 26342, + 29081, 29113, 29114, 29351, 31143, 31232, 32690, + 35440 ], - gb18030: [ - 19970, 19972, 19973, 19974, 19983, 19986, 19991, 19999, 20000, 20001, 20003, 20006, 20009, 20014, 20015, 20017, - 20019, 20021, 20023, 20028, 20032, 20033, 20034, 20036, 20038, 20042, 20049, 20053, 20055, 20058, 20059, 20066, - 20067, 20068, 20069, 20071, 20072, 20074, 20075, 20076, 20077, 20078, 20079, 20082, 20084, 20085, 20086, 20087, - 20088, 20089, 20090, 20091, 20092, 20093, 20095, 20096, 20097, 20098, 20099, 20100, 20101, 20103, 20106, 20112, - 20118, 20119, 20121, 20124, 20125, 20126, 20131, 20138, 20143, 20144, 20145, 20148, 20150, 20151, 20152, 20153, - 20156, 20157, 20158, 20168, 20172, 20175, 20176, 20178, 20186, 20187, 20188, 20192, 20194, 20198, 20199, 20201, - 20205, 20206, 20207, 20209, 20212, 20216, 20217, 20218, 20220, 20222, 20224, 20226, 20227, 20228, 20229, 20230, - 20231, 20232, 20235, 20236, 20242, 20243, 20244, 20245, 20246, 20252, 20253, 20257, 20259, 20264, 20265, 20268, - 20269, 20270, 20273, 20275, 20277, 20279, 20281, 20283, 20286, 20287, 20288, 20289, 20290, 20292, 20293, 20295, - 20296, 20297, 20298, 20299, 20300, 20306, 20308, 20310, 20321, 20322, 20326, 20328, 20330, 20331, 20333, 20334, - 20337, 20338, 20341, 20343, 20344, 20345, 20346, 20349, 20352, 20353, 20354, 20357, 20358, 20359, 20362, 20364, - 20366, 20368, 20370, 20371, 20373, 20374, 20376, 20377, 20378, 20380, 20382, 20383, 20385, 20386, 20388, 20395, - 20397, 20400, 20401, 20402, 20403, 20404, 20406, 20407, 20408, 20409, 20410, 20411, 20412, 20413, 20414, 20416, - 20417, 20418, 20422, 20423, 20424, 20425, 20427, 20428, 20429, 20434, 20435, 20436, 20437, 20438, 20441, 20443, - 20448, 20450, 20452, 20453, 20455, 20459, 20460, 20464, 20466, 20468, 20469, 20470, 20471, 20473, 20475, 20476, - 20477, 20479, 20480, 20481, 20482, 20483, 20484, 20485, 20486, 20487, 20488, 20489, 20490, 20491, 20494, 20496, - 20497, 20499, 20501, 20502, 20503, 20507, 20509, 20510, 20512, 20514, 20515, 20516, 20519, 20523, 20527, 20528, - 20529, 20530, 20531, 20532, 20533, 20534, 20535, 20536, 20537, 20539, 20541, 20543, 20544, 20545, 20546, 20548, - 20549, 20550, 20553, 20554, 20555, 20557, 20560, 20561, 20562, 20563, 20564, 20566, 20567, 20568, 20569, 20571, - 20573, 20574, 20575, 20576, 20577, 20578, 20579, 20580, 20582, 20583, 20584, 20585, 20586, 20587, 20589, 20590, - 20591, 20592, 20593, 20594, 20595, 20596, 20597, 20600, 20601, 20602, 20604, 20605, 20609, 20610, 20611, 20612, - 20614, 20615, 20617, 20618, 20619, 20620, 20622, 20623, 20624, 20625, 20626, 20627, 20628, 20629, 20630, 20631, - 20632, 20633, 20634, 20635, 20636, 20637, 20638, 20639, 20640, 20641, 20642, 20644, 20646, 20650, 20651, 20653, - 20654, 20655, 20656, 20657, 20659, 20660, 20661, 20662, 20663, 20664, 20665, 20668, 20669, 20670, 20671, 20672, - 20673, 20674, 20675, 20676, 20677, 20678, 20679, 20680, 20681, 20682, 20683, 20684, 20685, 20686, 20688, 20689, - 20690, 20691, 20692, 20693, 20695, 20696, 20697, 20699, 20700, 20701, 20702, 20703, 20704, 20705, 20706, 20707, - 20708, 20709, 20712, 20713, 20714, 20715, 20719, 20720, 20721, 20722, 20724, 20726, 20727, 20728, 20729, 20730, - 20732, 20733, 20734, 20735, 20736, 20737, 20738, 20739, 20740, 20741, 20744, 20745, 20746, 20748, 20749, 20750, - 20751, 20752, 20753, 20755, 20756, 20757, 20758, 20759, 20760, 20761, 20762, 20763, 20764, 20765, 20766, 20767, - 20768, 20770, 20771, 20772, 20773, 20774, 20775, 20776, 20777, 20778, 20779, 20780, 20781, 20782, 20783, 20784, - 20785, 20786, 20787, 20788, 20789, 20790, 20791, 20792, 20793, 20794, 20795, 20796, 20797, 20798, 20802, 20807, - 20810, 20812, 20814, 20815, 20816, 20818, 20819, 20823, 20824, 20825, 20827, 20829, 20830, 20831, 20832, 20833, - 20835, 20836, 20838, 20839, 20841, 20842, 20847, 20850, 20858, 20862, 20863, 20867, 20868, 20870, 20871, 20874, - 20875, 20878, 20879, 20880, 20881, 20883, 20884, 20888, 20890, 20893, 20894, 20895, 20897, 20899, 20902, 20903, - 20904, 20905, 20906, 20909, 20910, 20916, 20920, 20921, 20922, 20926, 20927, 20929, 20930, 20931, 20933, 20936, - 20938, 20941, 20942, 20944, 20946, 20947, 20948, 20949, 20950, 20951, 20952, 20953, 20954, 20956, 20958, 20959, - 20962, 20963, 20965, 20966, 20967, 20968, 20969, 20970, 20972, 20974, 20977, 20978, 20980, 20983, 20990, 20996, - 20997, 21001, 21003, 21004, 21007, 21008, 21011, 21012, 21013, 21020, 21022, 21023, 21025, 21026, 21027, 21029, - 21030, 21031, 21034, 21036, 21039, 21041, 21042, 21044, 21045, 21052, 21054, 21060, 21061, 21062, 21063, 21064, - 21065, 21067, 21070, 21071, 21074, 21075, 21077, 21079, 21080, 21081, 21082, 21083, 21085, 21087, 21088, 21090, - 21091, 21092, 21094, 21096, 21099, 21100, 21101, 21102, 21104, 21105, 21107, 21108, 21109, 21110, 21111, 21112, - 21113, 21114, 21115, 21116, 21118, 21120, 21123, 21124, 21125, 21126, 21127, 21129, 21130, 21131, 21132, 21133, - 21134, 21135, 21137, 21138, 21140, 21141, 21142, 21143, 21144, 21145, 21146, 21148, 21156, 21157, 21158, 21159, - 21166, 21167, 21168, 21172, 21173, 21174, 21175, 21176, 21177, 21178, 21179, 21180, 21181, 21184, 21185, 21186, - 21188, 21189, 21190, 21192, 21194, 21196, 21197, 21198, 21199, 21201, 21203, 21204, 21205, 21207, 21209, 21210, - 21211, 21212, 21213, 21214, 21216, 21217, 21218, 21219, 21221, 21222, 21223, 21224, 21225, 21226, 21227, 21228, - 21229, 21230, 21231, 21233, 21234, 21235, 21236, 21237, 21238, 21239, 21240, 21243, 21244, 21245, 21249, 21250, - 21251, 21252, 21255, 21257, 21258, 21259, 21260, 21262, 21265, 21266, 21267, 21268, 21272, 21275, 21276, 21278, - 21279, 21282, 21284, 21285, 21287, 21288, 21289, 21291, 21292, 21293, 21295, 21296, 21297, 21298, 21299, 21300, - 21301, 21302, 21303, 21304, 21308, 21309, 21312, 21314, 21316, 21318, 21323, 21324, 21325, 21328, 21332, 21336, - 21337, 21339, 21341, 21349, 21352, 21354, 21356, 21357, 21362, 21366, 21369, 21371, 21372, 21373, 21374, 21376, - 21377, 21379, 21383, 21384, 21386, 21390, 21391, 21392, 21393, 21394, 21395, 21396, 21398, 21399, 21401, 21403, - 21404, 21406, 21408, 21409, 21412, 21415, 21418, 21419, 21420, 21421, 21423, 21424, 21425, 21426, 21427, 21428, - 21429, 21431, 21432, 21433, 21434, 21436, 21437, 21438, 21440, 21443, 21444, 21445, 21446, 21447, 21454, 21455, - 21456, 21458, 21459, 21461, 21466, 21468, 21469, 21470, 21473, 21474, 21479, 21492, 21498, 21502, 21503, 21504, - 21506, 21509, 21511, 21515, 21524, 21528, 21529, 21530, 21532, 21538, 21540, 21541, 21546, 21552, 21555, 21558, - 21559, 21562, 21565, 21567, 21569, 21570, 21572, 21573, 21575, 21577, 21580, 21581, 21582, 21583, 21585, 21594, - 21597, 21598, 21599, 21600, 21601, 21603, 21605, 21607, 21609, 21610, 21611, 21612, 21613, 21614, 21615, 21616, - 21620, 21625, 21626, 21630, 21631, 21633, 21635, 21637, 21639, 21640, 21641, 21642, 21645, 21649, 21651, 21655, - 21656, 21660, 21662, 21663, 21664, 21665, 21666, 21669, 21678, 21680, 21682, 21685, 21686, 21687, 21689, 21690, - 21692, 21694, 21699, 21701, 21706, 21707, 21718, 21720, 21723, 21728, 21729, 21730, 21731, 21732, 21739, 21740, - 21743, 21744, 21745, 21748, 21749, 21750, 21751, 21752, 21753, 21755, 21758, 21760, 21762, 21763, 21764, 21765, - 21768, 21770, 21771, 21772, 21773, 21774, 21778, 21779, 21781, 21782, 21783, 21784, 21785, 21786, 21788, 21789, - 21790, 21791, 21793, 21797, 21798, 21800, 21801, 21803, 21805, 21810, 21812, 21813, 21814, 21816, 21817, 21818, - 21819, 21821, 21824, 21826, 21829, 21831, 21832, 21835, 21836, 21837, 21838, 21839, 21841, 21842, 21843, 21844, - 21847, 21848, 21849, 21850, 21851, 21853, 21854, 21855, 21856, 21858, 21859, 21864, 21865, 21867, 21871, 21872, - 21873, 21874, 21875, 21876, 21881, 21882, 21885, 21887, 21893, 21894, 21900, 21901, 21902, 21904, 21906, 21907, - 21909, 21910, 21911, 21914, 21915, 21918, 21920, 21921, 21922, 21923, 21924, 21925, 21926, 21928, 21929, 21930, - 21931, 21932, 21933, 21934, 21935, 21936, 21938, 21940, 21942, 21944, 21946, 21948, 21951, 21952, 21953, 21954, - 21955, 21958, 21959, 21960, 21962, 21963, 21966, 21967, 21968, 21973, 21975, 21976, 21977, 21978, 21979, 21982, - 21984, 21986, 21991, 21993, 21997, 21998, 22000, 22001, 22004, 22006, 22008, 22009, 22010, 22011, 22012, 22015, - 22018, 22019, 22020, 22021, 22022, 22023, 22026, 22027, 22029, 22032, 22033, 22034, 22035, 22036, 22037, 22038, - 22039, 22041, 22042, 22044, 22045, 22048, 22049, 22050, 22053, 22054, 22056, 22057, 22058, 22059, 22062, 22063, - 22064, 22067, 22069, 22071, 22072, 22074, 22076, 22077, 22078, 22080, 22081, 22082, 22083, 22084, 22085, 22086, - 22087, 22088, 22089, 22090, 22091, 22095, 22096, 22097, 22098, 22099, 22101, 22102, 22106, 22107, 22109, 22110, - 22111, 22112, 22113, 22115, 22117, 22118, 22119, 22125, 22126, 22127, 22128, 22130, 22131, 22132, 22133, 22135, - 22136, 22137, 22138, 22141, 22142, 22143, 22144, 22145, 22146, 22147, 22148, 22151, 22152, 22153, 22154, 22155, - 22156, 22157, 22160, 22161, 22162, 22164, 22165, 22166, 22167, 22168, 22169, 22170, 22171, 22172, 22173, 22174, - 22175, 22176, 22177, 22178, 22180, 22181, 22182, 22183, 22184, 22185, 22186, 22187, 22188, 22189, 22190, 22192, - 22193, 22194, 22195, 22196, 22197, 22198, 22200, 22201, 22202, 22203, 22205, 22206, 22207, 22208, 22209, 22210, - 22211, 22212, 22213, 22214, 22215, 22216, 22217, 22219, 22220, 22221, 22222, 22223, 22224, 22225, 22226, 22227, - 22229, 22230, 22232, 22233, 22236, 22243, 22245, 22246, 22247, 22248, 22249, 22250, 22252, 22254, 22255, 22258, - 22259, 22262, 22263, 22264, 22267, 22268, 22272, 22273, 22274, 22277, 22279, 22283, 22284, 22285, 22286, 22287, - 22288, 22289, 22290, 22291, 22292, 22293, 22294, 22295, 22296, 22297, 22298, 22299, 22301, 22302, 22304, 22305, - 22306, 22308, 22309, 22310, 22311, 22315, 22321, 22322, 22324, 22325, 22326, 22327, 22328, 22332, 22333, 22335, - 22337, 22339, 22340, 22341, 22342, 22344, 22345, 22347, 22354, 22355, 22356, 22357, 22358, 22360, 22361, 22370, - 22371, 22373, 22375, 22380, 22382, 22384, 22385, 22386, 22388, 22389, 22392, 22393, 22394, 22397, 22398, 22399, - 22400, 22401, 22407, 22408, 22409, 22410, 22413, 22414, 22415, 22416, 22417, 22420, 22421, 22422, 22423, 22424, - 22425, 22426, 22428, 22429, 22430, 22431, 22437, 22440, 22442, 22444, 22447, 22448, 22449, 22451, 22453, 22454, - 22455, 22457, 22458, 22459, 22460, 22461, 22462, 22463, 22464, 22465, 22468, 22469, 22470, 22471, 22472, 22473, - 22474, 22476, 22477, 22480, 22481, 22483, 22486, 22487, 22491, 22492, 22494, 22497, 22498, 22499, 22501, 22502, - 22503, 22504, 22505, 22506, 22507, 22508, 22510, 22512, 22513, 22514, 22515, 22517, 22518, 22519, 22523, 22524, - 22526, 22527, 22529, 22531, 22532, 22533, 22536, 22537, 22538, 22540, 22542, 22543, 22544, 22546, 22547, 22548, - 22550, 22551, 22552, 22554, 22555, 22556, 22557, 22559, 22562, 22563, 22565, 22566, 22567, 22568, 22569, 22571, - 22572, 22573, 22574, 22575, 22577, 22578, 22579, 22580, 22582, 22583, 22584, 22585, 22586, 22587, 22588, 22589, - 22590, 22591, 22592, 22593, 22594, 22595, 22597, 22598, 22599, 22600, 22601, 22602, 22603, 22606, 22607, 22608, - 22610, 22611, 22613, 22614, 22615, 22617, 22618, 22619, 22620, 22621, 22623, 22624, 22625, 22626, 22627, 22628, - 22630, 22631, 22632, 22633, 22634, 22637, 22638, 22639, 22640, 22641, 22642, 22643, 22644, 22645, 22646, 22647, - 22648, 22649, 22650, 22651, 22652, 22653, 22655, 22658, 22660, 22662, 22663, 22664, 22666, 22667, 22668, 22669, - 22670, 22671, 22672, 22673, 22676, 22677, 22678, 22679, 22680, 22683, 22684, 22685, 22688, 22689, 22690, 22691, - 22692, 22693, 22694, 22695, 22698, 22699, 22700, 22701, 22702, 22703, 22704, 22705, 22706, 22707, 22708, 22709, - 22710, 22711, 22712, 22713, 22714, 22715, 22717, 22718, 22719, 22720, 22722, 22723, 22724, 22726, 22727, 22728, - 22729, 22730, 22731, 22732, 22733, 22734, 22735, 22736, 22738, 22739, 22740, 22742, 22743, 22744, 22745, 22746, - 22747, 22748, 22749, 22750, 22751, 22752, 22753, 22754, 22755, 22757, 22758, 22759, 22760, 22761, 22762, 22765, - 22767, 22769, 22770, 22772, 22773, 22775, 22776, 22778, 22779, 22780, 22781, 22782, 22783, 22784, 22785, 22787, - 22789, 22790, 22792, 22793, 22794, 22795, 22796, 22798, 22800, 22801, 22802, 22803, 22807, 22808, 22811, 22813, - 22814, 22816, 22817, 22818, 22819, 22822, 22824, 22828, 22832, 22834, 22835, 22837, 22838, 22843, 22845, 22846, - 22847, 22848, 22851, 22853, 22854, 22858, 22860, 22861, 22864, 22866, 22867, 22873, 22875, 22876, 22877, 22878, - 22879, 22881, 22883, 22884, 22886, 22887, 22888, 22889, 22890, 22891, 22892, 22893, 22894, 22895, 22896, 22897, - 22898, 22901, 22903, 22906, 22907, 22908, 22910, 22911, 22912, 22917, 22921, 22923, 22924, 22926, 22927, 22928, - 22929, 22932, 22933, 22936, 22938, 22939, 22940, 22941, 22943, 22944, 22945, 22946, 22950, 22951, 22956, 22957, - 22960, 22961, 22963, 22964, 22965, 22966, 22967, 22968, 22970, 22972, 22973, 22975, 22976, 22977, 22978, 22979, - 22980, 22981, 22983, 22984, 22985, 22988, 22989, 22990, 22991, 22997, 22998, 23001, 23003, 23006, 23007, 23008, - 23009, 23010, 23012, 23014, 23015, 23017, 23018, 23019, 23021, 23022, 23023, 23024, 23025, 23026, 23027, 23028, - 23029, 23030, 23031, 23032, 23034, 23036, 23037, 23038, 23040, 23042, 23050, 23051, 23053, 23054, 23055, 23056, - 23058, 23060, 23061, 23062, 23063, 23065, 23066, 23067, 23069, 23070, 23073, 23074, 23076, 23078, 23079, 23080, - 23082, 23083, 23084, 23085, 23086, 23087, 23088, 23091, 23093, 23095, 23096, 23097, 23098, 23099, 23101, 23102, - 23103, 23105, 23106, 23107, 23108, 23109, 23111, 23112, 23115, 23116, 23117, 23118, 23119, 23120, 23121, 23122, - 23123, 23124, 23126, 23127, 23128, 23129, 23131, 23132, 23133, 23134, 23135, 23136, 23137, 23139, 23140, 23141, - 23142, 23144, 23145, 23147, 23148, 23149, 23150, 23151, 23152, 23153, 23154, 23155, 23160, 23161, 23163, 23164, - 23165, 23166, 23168, 23169, 23170, 23171, 23172, 23173, 23174, 23175, 23176, 23177, 23178, 23179, 23180, 23181, - 23182, 23183, 23184, 23185, 23187, 23188, 23189, 23190, 23191, 23192, 23193, 23196, 23197, 23198, 23199, 23200, - 23201, 23202, 23203, 23204, 23205, 23206, 23207, 23208, 23209, 23211, 23212, 23213, 23214, 23215, 23216, 23217, - 23220, 23222, 23223, 23225, 23226, 23227, 23228, 23229, 23231, 23232, 23235, 23236, 23237, 23238, 23239, 23240, - 23242, 23243, 23245, 23246, 23247, 23248, 23249, 23251, 23253, 23255, 23257, 23258, 23259, 23261, 23262, 23263, - 23266, 23268, 23269, 23271, 23272, 23274, 23276, 23277, 23278, 23279, 23280, 23282, 23283, 23284, 23285, 23286, - 23287, 23288, 23289, 23290, 23291, 23292, 23293, 23294, 23295, 23296, 23297, 23298, 23299, 23300, 23301, 23302, - 23303, 23304, 23306, 23307, 23308, 23309, 23310, 23311, 23312, 23313, 23314, 23315, 23316, 23317, 23320, 23321, - 23322, 23323, 23324, 23325, 23326, 23327, 23328, 23329, 23330, 23331, 23332, 23333, 23334, 23335, 23336, 23337, - 23338, 23339, 23340, 23341, 23342, 23343, 23344, 23345, 23347, 23349, 23350, 23352, 23353, 23354, 23355, 23356, - 23357, 23358, 23359, 23361, 23362, 23363, 23364, 23365, 23366, 23367, 23368, 23369, 23370, 23371, 23372, 23373, - 23374, 23375, 23378, 23382, 23390, 23392, 23393, 23399, 23400, 23403, 23405, 23406, 23407, 23410, 23412, 23414, - 23415, 23416, 23417, 23419, 23420, 23422, 23423, 23426, 23430, 23434, 23437, 23438, 23440, 23441, 23442, 23444, - 23446, 23455, 23463, 23464, 23465, 23468, 23469, 23470, 23471, 23473, 23474, 23479, 23482, 23483, 23484, 23488, - 23489, 23491, 23496, 23497, 23498, 23499, 23501, 23502, 23503, 23505, 23508, 23509, 23510, 23511, 23512, 23513, - 23514, 23515, 23516, 23520, 23522, 23523, 23526, 23527, 23529, 23530, 23531, 23532, 23533, 23535, 23537, 23538, - 23539, 23540, 23541, 23542, 23543, 23549, 23550, 23552, 23554, 23555, 23557, 23559, 23560, 23563, 23564, 23565, - 23566, 23568, 23570, 23571, 23575, 23577, 23579, 23582, 23583, 23584, 23585, 23587, 23590, 23592, 23593, 23594, - 23595, 23597, 23598, 23599, 23600, 23602, 23603, 23605, 23606, 23607, 23619, 23620, 23622, 23623, 23628, 23629, - 23634, 23635, 23636, 23638, 23639, 23640, 23642, 23643, 23644, 23645, 23647, 23650, 23652, 23655, 23656, 23657, - 23658, 23659, 23660, 23661, 23664, 23666, 23667, 23668, 23669, 23670, 23671, 23672, 23675, 23676, 23677, 23678, - 23680, 23683, 23684, 23685, 23686, 23687, 23689, 23690, 23691, 23694, 23695, 23698, 23699, 23701, 23709, 23710, - 23711, 23712, 23713, 23716, 23717, 23718, 23719, 23720, 23722, 23726, 23727, 23728, 23730, 23732, 23734, 23737, - 23738, 23739, 23740, 23742, 23744, 23746, 23747, 23749, 23750, 23751, 23752, 23753, 23754, 23756, 23757, 23758, - 23759, 23760, 23761, 23763, 23764, 23765, 23766, 23767, 23768, 23770, 23771, 23772, 23773, 23774, 23775, 23776, - 23778, 23779, 23783, 23785, 23787, 23788, 23790, 23791, 23793, 23794, 23795, 23796, 23797, 23798, 23799, 23800, - 23801, 23802, 23804, 23805, 23806, 23807, 23808, 23809, 23812, 23813, 23816, 23817, 23818, 23819, 23820, 23821, - 23823, 23824, 23825, 23826, 23827, 23829, 23831, 23832, 23833, 23834, 23836, 23837, 23839, 23840, 23841, 23842, - 23843, 23845, 23848, 23850, 23851, 23852, 23855, 23856, 23857, 23858, 23859, 23861, 23862, 23863, 23864, 23865, - 23866, 23867, 23868, 23871, 23872, 23873, 23874, 23875, 23876, 23877, 23878, 23880, 23881, 23885, 23886, 23887, - 23888, 23889, 23890, 23891, 23892, 23893, 23894, 23895, 23897, 23898, 23900, 23902, 23903, 23904, 23905, 23906, - 23907, 23908, 23909, 23910, 23911, 23912, 23914, 23917, 23918, 23920, 23921, 23922, 23923, 23925, 23926, 23927, - 23928, 23929, 23930, 23931, 23932, 23933, 23934, 23935, 23936, 23937, 23939, 23940, 23941, 23942, 23943, 23944, - 23945, 23946, 23947, 23948, 23949, 23950, 23951, 23952, 23953, 23954, 23955, 23956, 23957, 23958, 23959, 23960, - 23962, 23963, 23964, 23966, 23967, 23968, 23969, 23970, 23971, 23972, 23973, 23974, 23975, 23976, 23977, 23978, - 23979, 23980, 23981, 23982, 23983, 23984, 23985, 23986, 23987, 23988, 23989, 23990, 23992, 23993, 23994, 23995, - 23996, 23997, 23998, 23999, 24000, 24001, 24002, 24003, 24004, 24006, 24007, 24008, 24009, 24010, 24011, 24012, - 24014, 24015, 24016, 24017, 24018, 24019, 24020, 24021, 24022, 24023, 24024, 24025, 24026, 24028, 24031, 24032, - 24035, 24036, 24042, 24044, 24045, 24048, 24053, 24054, 24056, 24057, 24058, 24059, 24060, 24063, 24064, 24068, - 24071, 24073, 24074, 24075, 24077, 24078, 24082, 24083, 24087, 24094, 24095, 24096, 24097, 24098, 24099, 24100, - 24101, 24104, 24105, 24106, 24107, 24108, 24111, 24112, 24114, 24115, 24116, 24117, 24118, 24121, 24122, 24126, - 24127, 24128, 24129, 24131, 24134, 24135, 24136, 24137, 24138, 24139, 24141, 24142, 24143, 24144, 24145, 24146, - 24147, 24150, 24151, 24152, 24153, 24154, 24156, 24157, 24159, 24160, 24163, 24164, 24165, 24166, 24167, 24168, - 24169, 24170, 24171, 24172, 24173, 24174, 24175, 24176, 24177, 24181, 24183, 24185, 24190, 24193, 24194, 24195, - 24197, 24200, 24201, 24204, 24205, 24206, 24210, 24216, 24219, 24221, 24225, 24226, 24227, 24228, 24232, 24233, - 24234, 24235, 24236, 24238, 24239, 24240, 24241, 24242, 24244, 24250, 24251, 24252, 24253, 24255, 24256, 24257, - 24258, 24259, 24260, 24261, 24262, 24263, 24264, 24267, 24268, 24269, 24270, 24271, 24272, 24276, 24277, 24279, - 24280, 24281, 24282, 24284, 24285, 24286, 24287, 24288, 24289, 24290, 24291, 24292, 24293, 24294, 24295, 24297, - 24299, 24300, 24301, 24302, 24303, 24304, 24305, 24306, 24307, 24309, 24312, 24313, 24315, 24316, 24317, 24325, - 24326, 24327, 24329, 24332, 24333, 24334, 24336, 24338, 24340, 24342, 24345, 24346, 24348, 24349, 24350, 24353, - 24354, 24355, 24356, 24360, 24363, 24364, 24366, 24368, 24370, 24371, 24372, 24373, 24374, 24375, 24376, 24379, - 24381, 24382, 24383, 24385, 24386, 24387, 24388, 24389, 24390, 24391, 24392, 24393, 24394, 24395, 24396, 24397, - 24398, 24399, 24401, 24404, 24409, 24410, 24411, 24412, 24414, 24415, 24416, 24419, 24421, 24423, 24424, 24427, - 24430, 24431, 24434, 24436, 24437, 24438, 24440, 24442, 24445, 24446, 24447, 24451, 24454, 24461, 24462, 24463, - 24465, 24467, 24468, 24470, 24474, 24475, 24477, 24478, 24479, 24480, 24482, 24483, 24484, 24485, 24486, 24487, - 24489, 24491, 24492, 24495, 24496, 24497, 24498, 24499, 24500, 24502, 24504, 24505, 24506, 24507, 24510, 24511, - 24512, 24513, 24514, 24519, 24520, 24522, 24523, 24526, 24531, 24532, 24533, 24538, 24539, 24540, 24542, 24543, - 24546, 24547, 24549, 24550, 24552, 24553, 24556, 24559, 24560, 24562, 24563, 24564, 24566, 24567, 24569, 24570, - 24572, 24583, 24584, 24585, 24587, 24588, 24592, 24593, 24595, 24599, 24600, 24602, 24606, 24607, 24610, 24611, - 24612, 24620, 24621, 24622, 24624, 24625, 24626, 24627, 24628, 24630, 24631, 24632, 24633, 24634, 24637, 24638, - 24640, 24644, 24645, 24646, 24647, 24648, 24649, 24650, 24652, 24654, 24655, 24657, 24659, 24660, 24662, 24663, - 24664, 24667, 24668, 24670, 24671, 24672, 24673, 24677, 24678, 24686, 24689, 24690, 24692, 24693, 24695, 24702, - 24704, 24705, 24706, 24709, 24710, 24711, 24712, 24714, 24715, 24718, 24719, 24720, 24721, 24723, 24725, 24727, - 24728, 24729, 24732, 24734, 24737, 24738, 24740, 24741, 24743, 24745, 24746, 24750, 24752, 24755, 24757, 24758, - 24759, 24761, 24762, 24765, 24766, 24767, 24768, 24769, 24770, 24771, 24772, 24775, 24776, 24777, 24780, 24781, - 24782, 24783, 24784, 24786, 24787, 24788, 24790, 24791, 24793, 24795, 24798, 24801, 24802, 24803, 24804, 24805, - 24810, 24817, 24818, 24821, 24823, 24824, 24827, 24828, 24829, 24830, 24831, 24834, 24835, 24836, 24837, 24839, - 24842, 24843, 24844, 24848, 24849, 24850, 24851, 24852, 24854, 24855, 24856, 24857, 24859, 24860, 24861, 24862, - 24865, 24866, 24869, 24872, 24873, 24874, 24876, 24877, 24878, 24879, 24880, 24881, 24882, 24883, 24884, 24885, - 24886, 24887, 24888, 24889, 24890, 24891, 24892, 24893, 24894, 24896, 24897, 24898, 24899, 24900, 24901, 24902, - 24903, 24905, 24907, 24909, 24911, 24912, 24914, 24915, 24916, 24918, 24919, 24920, 24921, 24922, 24923, 24924, - 24926, 24927, 24928, 24929, 24931, 24932, 24933, 24934, 24937, 24938, 24939, 24940, 24941, 24942, 24943, 24945, - 24946, 24947, 24948, 24950, 24952, 24953, 24954, 24955, 24956, 24957, 24958, 24959, 24960, 24961, 24962, 24963, - 24964, 24965, 24966, 24967, 24968, 24969, 24970, 24972, 24973, 24975, 24976, 24977, 24978, 24979, 24981, 24982, - 24983, 24984, 24985, 24986, 24987, 24988, 24990, 24991, 24992, 24993, 24994, 24995, 24996, 24997, 24998, 25002, - 25003, 25005, 25006, 25007, 25008, 25009, 25010, 25011, 25012, 25013, 25014, 25016, 25017, 25018, 25019, 25020, - 25021, 25023, 25024, 25025, 25027, 25028, 25029, 25030, 25031, 25033, 25036, 25037, 25038, 25039, 25040, 25043, - 25045, 25046, 25047, 25048, 25049, 25050, 25051, 25052, 25053, 25054, 25055, 25056, 25057, 25058, 25059, 25060, - 25061, 25063, 25064, 25065, 25066, 25067, 25068, 25069, 25070, 25071, 25072, 25073, 25074, 25075, 25076, 25078, - 25079, 25080, 25081, 25082, 25083, 25084, 25085, 25086, 25088, 25089, 25090, 25091, 25092, 25093, 25095, 25097, - 25107, 25108, 25113, 25116, 25117, 25118, 25120, 25123, 25126, 25127, 25128, 25129, 25131, 25133, 25135, 25136, - 25137, 25138, 25141, 25142, 25144, 25145, 25146, 25147, 25148, 25154, 25156, 25157, 25158, 25162, 25167, 25168, - 25173, 25174, 25175, 25177, 25178, 25180, 25181, 25182, 25183, 25184, 25185, 25186, 25188, 25189, 25192, 25201, - 25202, 25204, 25205, 25207, 25208, 25210, 25211, 25213, 25217, 25218, 25219, 25221, 25222, 25223, 25224, 25227, - 25228, 25229, 25230, 25231, 25232, 25236, 25241, 25244, 25245, 25246, 25251, 25254, 25255, 25257, 25258, 25261, - 25262, 25263, 25264, 25266, 25267, 25268, 25270, 25271, 25272, 25274, 25278, 25280, 25281, 25283, 25291, 25295, - 25297, 25301, 25309, 25310, 25312, 25313, 25316, 25322, 25323, 25328, 25330, 25333, 25336, 25337, 25338, 25339, - 25344, 25347, 25348, 25349, 25350, 25354, 25355, 25356, 25357, 25359, 25360, 25362, 25363, 25364, 25365, 25367, - 25368, 25369, 25372, 25382, 25383, 25385, 25388, 25389, 25390, 25392, 25393, 25395, 25396, 25397, 25398, 25399, - 25400, 25403, 25404, 25406, 25407, 25408, 25409, 25412, 25415, 25416, 25418, 25425, 25426, 25427, 25428, 25430, - 25431, 25432, 25433, 25434, 25435, 25436, 25437, 25440, 25444, 25445, 25446, 25448, 25450, 25451, 25452, 25455, - 25456, 25458, 25459, 25460, 25461, 25464, 25465, 25468, 25469, 25470, 25471, 25473, 25475, 25476, 25477, 25478, - 25483, 25485, 25489, 25491, 25492, 25493, 25495, 25497, 25498, 25499, 25500, 25501, 25502, 25503, 25505, 25508, - 25510, 25515, 25519, 25521, 25522, 25525, 25526, 25529, 25531, 25533, 25535, 25536, 25537, 25538, 25539, 25541, - 25543, 25544, 25546, 25547, 25548, 25553, 25555, 25556, 25557, 25559, 25560, 25561, 25562, 25563, 25564, 25565, - 25567, 25570, 25572, 25573, 25574, 25575, 25576, 25579, 25580, 25582, 25583, 25584, 25585, 25587, 25589, 25591, - 25593, 25594, 25595, 25596, 25598, 25603, 25604, 25606, 25607, 25608, 25609, 25610, 25613, 25614, 25617, 25618, - 25621, 25622, 25623, 25624, 25625, 25626, 25629, 25631, 25634, 25635, 25636, 25637, 25639, 25640, 25641, 25643, - 25646, 25647, 25648, 25649, 25650, 25651, 25653, 25654, 25655, 25656, 25657, 25659, 25660, 25662, 25664, 25666, - 25667, 25673, 25675, 25676, 25677, 25678, 25679, 25680, 25681, 25683, 25685, 25686, 25687, 25689, 25690, 25691, - 25692, 25693, 25695, 25696, 25697, 25698, 25699, 25700, 25701, 25702, 25704, 25706, 25707, 25708, 25710, 25711, - 25712, 25713, 25714, 25715, 25716, 25717, 25718, 25719, 25723, 25724, 25725, 25726, 25727, 25728, 25729, 25731, - 25734, 25736, 25737, 25738, 25739, 25740, 25741, 25742, 25743, 25744, 25747, 25748, 25751, 25752, 25754, 25755, - 25756, 25757, 25759, 25760, 25761, 25762, 25763, 25765, 25766, 25767, 25768, 25770, 25771, 25775, 25777, 25778, - 25779, 25780, 25782, 25785, 25787, 25789, 25790, 25791, 25793, 25795, 25796, 25798, 25799, 25800, 25801, 25802, - 25803, 25804, 25807, 25809, 25811, 25812, 25813, 25814, 25817, 25818, 25819, 25820, 25821, 25823, 25824, 25825, - 25827, 25829, 25831, 25832, 25833, 25834, 25835, 25836, 25837, 25838, 25839, 25840, 25841, 25842, 25843, 25844, - 25845, 25846, 25847, 25848, 25849, 25850, 25851, 25852, 25853, 25854, 25855, 25857, 25858, 25859, 25860, 25861, - 25862, 25863, 25864, 25866, 25867, 25868, 25869, 25870, 25871, 25872, 25873, 25875, 25876, 25877, 25878, 25879, - 25881, 25882, 25883, 25884, 25885, 25886, 25887, 25888, 25889, 25890, 25891, 25892, 25894, 25895, 25896, 25897, - 25898, 25900, 25901, 25904, 25905, 25906, 25907, 25911, 25914, 25916, 25917, 25920, 25921, 25922, 25923, 25924, - 25926, 25927, 25930, 25931, 25933, 25934, 25936, 25938, 25939, 25940, 25943, 25944, 25946, 25948, 25951, 25952, - 25953, 25956, 25957, 25959, 25960, 25961, 25962, 25965, 25966, 25967, 25969, 25971, 25973, 25974, 25976, 25977, - 25978, 25979, 25980, 25981, 25982, 25983, 25984, 25985, 25986, 25987, 25988, 25989, 25990, 25992, 25993, 25994, - 25997, 25998, 25999, 26002, 26004, 26005, 26006, 26008, 26010, 26013, 26014, 26016, 26018, 26019, 26022, 26024, - 26026, 26028, 26030, 26033, 26034, 26035, 26036, 26037, 26038, 26039, 26040, 26042, 26043, 26046, 26047, 26048, - 26050, 26055, 26056, 26057, 26058, 26061, 26064, 26065, 26067, 26068, 26069, 26072, 26073, 26074, 26075, 26076, - 26077, 26078, 26079, 26081, 26083, 26084, 26090, 26091, 26098, 26099, 26100, 26101, 26104, 26105, 26107, 26108, - 26109, 26110, 26111, 26113, 26116, 26117, 26119, 26120, 26121, 26123, 26125, 26128, 26129, 26130, 26134, 26135, - 26136, 26138, 26139, 26140, 26142, 26145, 26146, 26147, 26148, 26150, 26153, 26154, 26155, 26156, 26158, 26160, - 26162, 26163, 26167, 26168, 26169, 26170, 26171, 26173, 26175, 26176, 26178, 26180, 26181, 26182, 26183, 26184, - 26185, 26186, 26189, 26190, 26192, 26193, 26200, 26201, 26203, 26204, 26205, 26206, 26208, 26210, 26211, 26213, - 26215, 26217, 26218, 26219, 26220, 26221, 26225, 26226, 26227, 26229, 26232, 26233, 26235, 26236, 26237, 26239, - 26240, 26241, 26243, 26245, 26246, 26248, 26249, 26250, 26251, 26253, 26254, 26255, 26256, 26258, 26259, 26260, - 26261, 26264, 26265, 26266, 26267, 26268, 26270, 26271, 26272, 26273, 26274, 26275, 26276, 26277, 26278, 26281, - 26282, 26283, 26284, 26285, 26287, 26288, 26289, 26290, 26291, 26293, 26294, 26295, 26296, 26298, 26299, 26300, - 26301, 26303, 26304, 26305, 26306, 26307, 26308, 26309, 26310, 26311, 26312, 26313, 26314, 26315, 26316, 26317, - 26318, 26319, 26320, 26321, 26322, 26323, 26324, 26325, 26326, 26327, 26328, 26330, 26334, 26335, 26336, 26337, - 26338, 26339, 26340, 26341, 26343, 26344, 26346, 26347, 26348, 26349, 26350, 26351, 26353, 26357, 26358, 26360, - 26362, 26363, 26365, 26369, 26370, 26371, 26372, 26373, 26374, 26375, 26380, 26382, 26383, 26385, 26386, 26387, - 26390, 26392, 26393, 26394, 26396, 26398, 26400, 26401, 26402, 26403, 26404, 26405, 26407, 26409, 26414, 26416, - 26418, 26419, 26422, 26423, 26424, 26425, 26427, 26428, 26430, 26431, 26433, 26436, 26437, 26439, 26442, 26443, - 26445, 26450, 26452, 26453, 26455, 26456, 26457, 26458, 26459, 26461, 26466, 26467, 26468, 26470, 26471, 26475, - 26476, 26478, 26481, 26484, 26486, 26488, 26489, 26490, 26491, 26493, 26496, 26498, 26499, 26501, 26502, 26504, - 26506, 26508, 26509, 26510, 26511, 26513, 26514, 26515, 26516, 26518, 26521, 26523, 26527, 26528, 26529, 26532, - 26534, 26537, 26540, 26542, 26545, 26546, 26548, 26553, 26554, 26555, 26556, 26557, 26558, 26559, 26560, 26562, - 26565, 26566, 26567, 26568, 26569, 26570, 26571, 26572, 26573, 26574, 26581, 26582, 26583, 26587, 26591, 26593, - 26595, 26596, 26598, 26599, 26600, 26602, 26603, 26605, 26606, 26610, 26613, 26614, 26615, 26616, 26617, 26618, - 26619, 26620, 26622, 26625, 26626, 26627, 26628, 26630, 26637, 26640, 26642, 26644, 26645, 26648, 26649, 26650, - 26651, 26652, 26654, 26655, 26656, 26658, 26659, 26660, 26661, 26662, 26663, 26664, 26667, 26668, 26669, 26670, - 26671, 26672, 26673, 26676, 26677, 26678, 26682, 26683, 26687, 26695, 26699, 26701, 26703, 26706, 26710, 26711, - 26712, 26713, 26714, 26715, 26716, 26717, 26718, 26719, 26730, 26732, 26733, 26734, 26735, 26736, 26737, 26738, - 26739, 26741, 26744, 26745, 26746, 26747, 26748, 26749, 26750, 26751, 26752, 26754, 26756, 26759, 26760, 26761, - 26762, 26763, 26764, 26765, 26766, 26768, 26769, 26770, 26772, 26773, 26774, 26776, 26777, 26778, 26779, 26780, - 26781, 26782, 26783, 26784, 26785, 26787, 26788, 26789, 26793, 26794, 26795, 26796, 26798, 26801, 26802, 26804, - 26806, 26807, 26808, 26809, 26810, 26811, 26812, 26813, 26814, 26815, 26817, 26819, 26820, 26821, 26822, 26823, - 26824, 26826, 26828, 26830, 26831, 26832, 26833, 26835, 26836, 26838, 26839, 26841, 26843, 26844, 26845, 26846, - 26847, 26849, 26850, 26852, 26853, 26854, 26855, 26856, 26857, 26858, 26859, 26860, 26861, 26863, 26866, 26867, - 26868, 26870, 26871, 26872, 26875, 26877, 26878, 26879, 26880, 26882, 26883, 26884, 26886, 26887, 26888, 26889, - 26890, 26892, 26895, 26897, 26899, 26900, 26901, 26902, 26903, 26904, 26905, 26906, 26907, 26908, 26909, 26910, - 26913, 26914, 26915, 26917, 26918, 26919, 26920, 26921, 26922, 26923, 26924, 26926, 26927, 26929, 26930, 26931, - 26933, 26934, 26935, 26936, 26938, 26939, 26940, 26942, 26944, 26945, 26947, 26948, 26949, 26950, 26951, 26952, - 26953, 26954, 26955, 26956, 26957, 26958, 26959, 26960, 26961, 26962, 26963, 26965, 26966, 26968, 26969, 26971, - 26972, 26975, 26977, 26978, 26980, 26981, 26983, 26984, 26985, 26986, 26988, 26989, 26991, 26992, 26994, 26995, - 26996, 26997, 26998, 27002, 27003, 27005, 27006, 27007, 27009, 27011, 27013, 27018, 27019, 27020, 27022, 27023, - 27024, 27025, 27026, 27027, 27030, 27031, 27033, 27034, 27037, 27038, 27039, 27040, 27041, 27042, 27043, 27044, - 27045, 27046, 27049, 27050, 27052, 27054, 27055, 27056, 27058, 27059, 27061, 27062, 27064, 27065, 27066, 27068, - 27069, 27070, 27071, 27072, 27074, 27075, 27076, 27077, 27078, 27079, 27080, 27081, 27083, 27085, 27087, 27089, - 27090, 27091, 27093, 27094, 27095, 27096, 27097, 27098, 27100, 27101, 27102, 27105, 27106, 27107, 27108, 27109, - 27110, 27111, 27112, 27113, 27114, 27115, 27116, 27118, 27119, 27120, 27121, 27123, 27124, 27125, 27126, 27127, - 27128, 27129, 27130, 27131, 27132, 27134, 27136, 27137, 27138, 27139, 27140, 27141, 27142, 27143, 27144, 27145, - 27147, 27148, 27149, 27150, 27151, 27152, 27153, 27154, 27155, 27156, 27157, 27158, 27161, 27162, 27163, 27164, - 27165, 27166, 27168, 27170, 27171, 27172, 27173, 27174, 27175, 27177, 27179, 27180, 27181, 27182, 27184, 27186, - 27187, 27188, 27190, 27191, 27192, 27193, 27194, 27195, 27196, 27199, 27200, 27201, 27202, 27203, 27205, 27206, - 27208, 27209, 27210, 27211, 27212, 27213, 27214, 27215, 27217, 27218, 27219, 27220, 27221, 27222, 27223, 27226, - 27228, 27229, 27230, 27231, 27232, 27234, 27235, 27236, 27238, 27239, 27240, 27241, 27242, 27243, 27244, 27245, - 27246, 27247, 27248, 27250, 27251, 27252, 27253, 27254, 27255, 27256, 27258, 27259, 27261, 27262, 27263, 27265, - 27266, 27267, 27269, 27270, 27271, 27272, 27273, 27274, 27275, 27276, 27277, 27279, 27282, 27283, 27284, 27285, - 27286, 27288, 27289, 27290, 27291, 27292, 27293, 27294, 27295, 27297, 27298, 27299, 27300, 27301, 27302, 27303, - 27304, 27306, 27309, 27310, 27311, 27312, 27313, 27314, 27315, 27316, 27317, 27318, 27319, 27320, 27321, 27322, - 27323, 27324, 27325, 27326, 27327, 27328, 27329, 27330, 27331, 27332, 27333, 27334, 27335, 27336, 27337, 27338, - 27339, 27340, 27341, 27342, 27343, 27344, 27345, 27346, 27347, 27348, 27349, 27350, 27351, 27352, 27353, 27354, - 27355, 27356, 27357, 27358, 27359, 27360, 27361, 27362, 27363, 27364, 27365, 27366, 27367, 27368, 27369, 27370, - 27371, 27372, 27373, 27374, 27375, 27376, 27377, 27378, 27379, 27380, 27381, 27382, 27383, 27384, 27385, 27386, - 27387, 27388, 27389, 27390, 27391, 27392, 27393, 27394, 27395, 27396, 27397, 27398, 27399, 27400, 27401, 27402, - 27403, 27404, 27405, 27406, 27407, 27408, 27409, 27410, 27411, 27412, 27413, 27414, 27415, 27416, 27417, 27418, - 27419, 27420, 27421, 27422, 27423, 27429, 27430, 27432, 27433, 27434, 27435, 27436, 27437, 27438, 27439, 27440, - 27441, 27443, 27444, 27445, 27446, 27448, 27451, 27452, 27453, 27455, 27456, 27457, 27458, 27460, 27461, 27464, - 27466, 27467, 27469, 27470, 27471, 27472, 27473, 27474, 27475, 27476, 27477, 27478, 27479, 27480, 27482, 27483, - 27484, 27485, 27486, 27487, 27488, 27489, 27496, 27497, 27499, 27500, 27501, 27502, 27503, 27504, 27505, 27506, - 27507, 27508, 27509, 27510, 27511, 27512, 27514, 27517, 27518, 27519, 27520, 27525, 27528, 27532, 27534, 27535, - 27536, 27537, 27540, 27541, 27543, 27544, 27545, 27548, 27549, 27550, 27551, 27552, 27554, 27555, 27556, 27557, - 27558, 27559, 27560, 27561, 27563, 27564, 27565, 27566, 27567, 27568, 27569, 27570, 27574, 27576, 27577, 27578, - 27579, 27580, 27581, 27582, 27584, 27587, 27588, 27590, 27591, 27592, 27593, 27594, 27596, 27598, 27600, 27601, - 27608, 27610, 27612, 27613, 27614, 27615, 27616, 27618, 27619, 27620, 27621, 27622, 27623, 27624, 27625, 27628, - 27629, 27630, 27632, 27633, 27634, 27636, 27638, 27639, 27640, 27642, 27643, 27644, 27646, 27647, 27648, 27649, - 27650, 27651, 27652, 27656, 27657, 27658, 27659, 27660, 27662, 27666, 27671, 27676, 27677, 27678, 27680, 27683, - 27685, 27691, 27692, 27693, 27697, 27699, 27702, 27703, 27705, 27706, 27707, 27708, 27710, 27711, 27715, 27716, - 27717, 27720, 27723, 27724, 27725, 27726, 27727, 27729, 27730, 27731, 27734, 27736, 27737, 27738, 27746, 27747, - 27749, 27750, 27751, 27755, 27756, 27757, 27758, 27759, 27761, 27763, 27765, 27767, 27768, 27770, 27771, 27772, - 27775, 27776, 27780, 27783, 27786, 27787, 27789, 27790, 27793, 27794, 27797, 27798, 27799, 27800, 27802, 27804, - 27805, 27806, 27808, 27810, 27816, 27820, 27823, 27824, 27828, 27829, 27830, 27831, 27834, 27840, 27841, 27842, - 27843, 27846, 27847, 27848, 27851, 27853, 27854, 27855, 27857, 27858, 27864, 27865, 27866, 27868, 27869, 27871, - 27876, 27878, 27879, 27881, 27884, 27885, 27890, 27892, 27897, 27903, 27904, 27906, 27907, 27909, 27910, 27912, - 27913, 27914, 27917, 27919, 27920, 27921, 27923, 27924, 27925, 27926, 27928, 27932, 27933, 27935, 27936, 27937, - 27938, 27939, 27940, 27942, 27944, 27945, 27948, 27949, 27951, 27952, 27956, 27958, 27959, 27960, 27962, 27967, - 27968, 27970, 27972, 27977, 27980, 27984, 27989, 27990, 27991, 27992, 27995, 27997, 27999, 28001, 28002, 28004, - 28005, 28007, 28008, 28011, 28012, 28013, 28016, 28017, 28018, 28019, 28021, 28022, 28025, 28026, 28027, 28029, - 28030, 28031, 28032, 28033, 28035, 28036, 28038, 28039, 28042, 28043, 28045, 28047, 28048, 28050, 28054, 28055, - 28056, 28057, 28058, 28060, 28066, 28069, 28076, 28077, 28080, 28081, 28083, 28084, 28086, 28087, 28089, 28090, - 28091, 28092, 28093, 28094, 28097, 28098, 28099, 28104, 28105, 28106, 28109, 28110, 28111, 28112, 28114, 28115, - 28116, 28117, 28119, 28122, 28123, 28124, 28127, 28130, 28131, 28133, 28135, 28136, 28137, 28138, 28141, 28143, - 28144, 28146, 28148, 28149, 28150, 28152, 28154, 28157, 28158, 28159, 28160, 28161, 28162, 28163, 28164, 28166, - 28167, 28168, 28169, 28171, 28175, 28178, 28179, 28181, 28184, 28185, 28187, 28188, 28190, 28191, 28194, 28198, - 28199, 28200, 28202, 28204, 28206, 28208, 28209, 28211, 28213, 28214, 28215, 28217, 28219, 28220, 28221, 28222, - 28223, 28224, 28225, 28226, 28229, 28230, 28231, 28232, 28233, 28234, 28235, 28236, 28239, 28240, 28241, 28242, - 28245, 28247, 28249, 28250, 28252, 28253, 28254, 28256, 28257, 28258, 28259, 28260, 28261, 28262, 28263, 28264, - 28265, 28266, 28268, 28269, 28271, 28272, 28273, 28274, 28275, 28276, 28277, 28278, 28279, 28280, 28281, 28282, - 28283, 28284, 28285, 28288, 28289, 28290, 28292, 28295, 28296, 28298, 28299, 28300, 28301, 28302, 28305, 28306, - 28307, 28308, 28309, 28310, 28311, 28313, 28314, 28315, 28317, 28318, 28320, 28321, 28323, 28324, 28326, 28328, - 28329, 28331, 28332, 28333, 28334, 28336, 28339, 28341, 28344, 28345, 28348, 28350, 28351, 28352, 28355, 28356, - 28357, 28358, 28360, 28361, 28362, 28364, 28365, 28366, 28368, 28370, 28374, 28376, 28377, 28379, 28380, 28381, - 28387, 28391, 28394, 28395, 28396, 28397, 28398, 28399, 28400, 28401, 28402, 28403, 28405, 28406, 28407, 28408, - 28410, 28411, 28412, 28413, 28414, 28415, 28416, 28417, 28419, 28420, 28421, 28423, 28424, 28426, 28427, 28428, - 28429, 28430, 28432, 28433, 28434, 28438, 28439, 28440, 28441, 28442, 28443, 28444, 28445, 28446, 28447, 28449, - 28450, 28451, 28453, 28454, 28455, 28456, 28460, 28462, 28464, 28466, 28468, 28469, 28471, 28472, 28473, 28474, - 28475, 28476, 28477, 28479, 28480, 28481, 28482, 28483, 28484, 28485, 28488, 28489, 28490, 28492, 28494, 28495, - 28496, 28497, 28498, 28499, 28500, 28501, 28502, 28503, 28505, 28506, 28507, 28509, 28511, 28512, 28513, 28515, - 28516, 28517, 28519, 28520, 28521, 28522, 28523, 28524, 28527, 28528, 28529, 28531, 28533, 28534, 28535, 28537, - 28539, 28541, 28542, 28543, 28544, 28545, 28546, 28547, 28549, 28550, 28551, 28554, 28555, 28559, 28560, 28561, - 28562, 28563, 28564, 28565, 28566, 28567, 28568, 28569, 28570, 28571, 28573, 28574, 28575, 28576, 28578, 28579, - 28580, 28581, 28582, 28584, 28585, 28586, 28587, 28588, 28589, 28590, 28591, 28592, 28593, 28594, 28596, 28597, - 28599, 28600, 28602, 28603, 28604, 28605, 28606, 28607, 28609, 28611, 28612, 28613, 28614, 28615, 28616, 28618, - 28619, 28620, 28621, 28622, 28623, 28624, 28627, 28628, 28629, 28630, 28631, 28632, 28633, 28634, 28635, 28636, - 28637, 28639, 28642, 28643, 28644, 28645, 28646, 28647, 28648, 28649, 28650, 28651, 28652, 28653, 28656, 28657, - 28658, 28659, 28660, 28661, 28662, 28663, 28664, 28665, 28666, 28667, 28668, 28669, 28670, 28671, 28672, 28673, - 28674, 28675, 28676, 28677, 28678, 28679, 28680, 28681, 28682, 28683, 28684, 28685, 28686, 28687, 28688, 28690, - 28691, 28692, 28693, 28694, 28695, 28696, 28697, 28700, 28701, 28702, 28703, 28704, 28705, 28706, 28708, 28709, - 28710, 28711, 28712, 28713, 28714, 28715, 28716, 28717, 28718, 28719, 28720, 28721, 28722, 28723, 28724, 28726, - 28727, 28728, 28730, 28731, 28732, 28733, 28734, 28735, 28736, 28737, 28738, 28739, 28740, 28741, 28742, 28743, - 28744, 28745, 28746, 28747, 28749, 28750, 28752, 28753, 28754, 28755, 28756, 28757, 28758, 28759, 28760, 28761, - 28762, 28763, 28764, 28765, 28767, 28768, 28769, 28770, 28771, 28772, 28773, 28774, 28775, 28776, 28777, 28778, - 28782, 28785, 28786, 28787, 28788, 28791, 28793, 28794, 28795, 28797, 28801, 28802, 28803, 28804, 28806, 28807, - 28808, 28811, 28812, 28813, 28815, 28816, 28817, 28819, 28823, 28824, 28826, 28827, 28830, 28831, 28832, 28833, - 28834, 28835, 28836, 28837, 28838, 28839, 28840, 28841, 28842, 28848, 28850, 28852, 28853, 28854, 28858, 28862, - 28863, 28868, 28869, 28870, 28871, 28873, 28875, 28876, 28877, 28878, 28879, 28880, 28881, 28882, 28883, 28884, - 28885, 28886, 28887, 28890, 28892, 28893, 28894, 28896, 28897, 28898, 28899, 28901, 28906, 28910, 28912, 28913, - 28914, 28915, 28916, 28917, 28918, 28920, 28922, 28923, 28924, 28926, 28927, 28928, 28929, 28930, 28931, 28932, - 28933, 28934, 28935, 28936, 28939, 28940, 28941, 28942, 28943, 28945, 28946, 28948, 28951, 28955, 28956, 28957, - 28958, 28959, 28960, 28961, 28962, 28963, 28964, 28965, 28967, 28968, 28969, 28970, 28971, 28972, 28973, 28974, - 28978, 28979, 28980, 28981, 28983, 28984, 28985, 28986, 28987, 28988, 28989, 28990, 28991, 28992, 28993, 28994, - 28995, 28996, 28998, 28999, 29000, 29001, 29003, 29005, 29007, 29008, 29009, 29010, 29011, 29012, 29013, 29014, - 29015, 29016, 29017, 29018, 29019, 29021, 29023, 29024, 29025, 29026, 29027, 29029, 29033, 29034, 29035, 29036, - 29037, 29039, 29040, 29041, 29044, 29045, 29046, 29047, 29049, 29051, 29052, 29054, 29055, 29056, 29057, 29058, - 29059, 29061, 29062, 29063, 29064, 29065, 29067, 29068, 29069, 29070, 29072, 29073, 29074, 29075, 29077, 29078, - 29079, 29082, 29083, 29084, 29085, 29086, 29089, 29090, 29091, 29092, 29093, 29094, 29095, 29097, 29098, 29099, - 29101, 29102, 29103, 29104, 29105, 29106, 29108, 29110, 29111, 29112, 29114, 29115, 29116, 29117, 29118, 29119, - 29120, 29121, 29122, 29124, 29125, 29126, 29127, 29128, 29129, 29130, 29131, 29132, 29133, 29135, 29136, 29137, - 29138, 29139, 29142, 29143, 29144, 29145, 29146, 29147, 29148, 29149, 29150, 29151, 29153, 29154, 29155, 29156, - 29158, 29160, 29161, 29162, 29163, 29164, 29165, 29167, 29168, 29169, 29170, 29171, 29172, 29173, 29174, 29175, - 29176, 29178, 29179, 29180, 29181, 29182, 29183, 29184, 29185, 29186, 29187, 29188, 29189, 29191, 29192, 29193, - 29194, 29195, 29196, 29197, 29198, 29199, 29200, 29201, 29202, 29203, 29204, 29205, 29206, 29207, 29208, 29209, - 29210, 29211, 29212, 29214, 29215, 29216, 29217, 29218, 29219, 29220, 29221, 29222, 29223, 29225, 29227, 29229, - 29230, 29231, 29234, 29235, 29236, 29242, 29244, 29246, 29248, 29249, 29250, 29251, 29252, 29253, 29254, 29257, - 29258, 29259, 29262, 29263, 29264, 29265, 29267, 29268, 29269, 29271, 29272, 29274, 29276, 29278, 29280, 29283, - 29284, 29285, 29288, 29290, 29291, 29292, 29293, 29296, 29297, 29299, 29300, 29302, 29303, 29304, 29307, 29308, - 29309, 29314, 29315, 29317, 29318, 29319, 29320, 29321, 29324, 29326, 29328, 29329, 29331, 29332, 29333, 29334, - 29335, 29336, 29337, 29338, 29339, 29340, 29341, 29342, 29344, 29345, 29346, 29347, 29348, 29349, 29350, 29351, - 29352, 29353, 29354, 29355, 29358, 29361, 29362, 29363, 29365, 29370, 29371, 29372, 29373, 29374, 29375, 29376, - 29381, 29382, 29383, 29385, 29386, 29387, 29388, 29391, 29393, 29395, 29396, 29397, 29398, 29400, 29402, 29403, - 58566, 58567, 58568, 58569, 58570, 58571, 58572, 58573, 58574, 58575, 58576, 58577, 58578, 58579, 58580, 58581, - 58582, 58583, 58584, 58585, 58586, 58587, 58588, 58589, 58590, 58591, 58592, 58593, 58594, 58595, 58596, 58597, - 58598, 58599, 58600, 58601, 58602, 58603, 58604, 58605, 58606, 58607, 58608, 58609, 58610, 58611, 58612, 58613, - 58614, 58615, 58616, 58617, 58618, 58619, 58620, 58621, 58622, 58623, 58624, 58625, 58626, 58627, 58628, 58629, - 58630, 58631, 58632, 58633, 58634, 58635, 58636, 58637, 58638, 58639, 58640, 58641, 58642, 58643, 58644, 58645, - 58646, 58647, 58648, 58649, 58650, 58651, 58652, 58653, 58654, 58655, 58656, 58657, 58658, 58659, 58660, 58661, - 12288, 12289, 12290, 183, 713, 711, 168, 12291, 12293, 8212, 65374, 8214, 8230, 8216, 8217, 8220, 8221, 12308, - 12309, 12296, 12297, 12298, 12299, 12300, 12301, 12302, 12303, 12310, 12311, 12304, 12305, 177, 215, 247, 8758, - 8743, 8744, 8721, 8719, 8746, 8745, 8712, 8759, 8730, 8869, 8741, 8736, 8978, 8857, 8747, 8750, 8801, 8780, 8776, - 8765, 8733, 8800, 8814, 8815, 8804, 8805, 8734, 8757, 8756, 9794, 9792, 176, 8242, 8243, 8451, 65284, 164, 65504, - 65505, 8240, 167, 8470, 9734, 9733, 9675, 9679, 9678, 9671, 9670, 9633, 9632, 9651, 9650, 8251, 8594, 8592, 8593, - 8595, 12307, 58662, 58663, 58664, 58665, 58666, 58667, 58668, 58669, 58670, 58671, 58672, 58673, 58674, 58675, - 58676, 58677, 58678, 58679, 58680, 58681, 58682, 58683, 58684, 58685, 58686, 58687, 58688, 58689, 58690, 58691, - 58692, 58693, 58694, 58695, 58696, 58697, 58698, 58699, 58700, 58701, 58702, 58703, 58704, 58705, 58706, 58707, - 58708, 58709, 58710, 58711, 58712, 58713, 58714, 58715, 58716, 58717, 58718, 58719, 58720, 58721, 58722, 58723, - 58724, 58725, 58726, 58727, 58728, 58729, 58730, 58731, 58732, 58733, 58734, 58735, 58736, 58737, 58738, 58739, - 58740, 58741, 58742, 58743, 58744, 58745, 58746, 58747, 58748, 58749, 58750, 58751, 58752, 58753, 58754, 58755, - 58756, 58757, 8560, 8561, 8562, 8563, 8564, 8565, 8566, 8567, 8568, 8569, 59238, 59239, 59240, 59241, 59242, - 59243, 9352, 9353, 9354, 9355, 9356, 9357, 9358, 9359, 9360, 9361, 9362, 9363, 9364, 9365, 9366, 9367, 9368, 9369, - 9370, 9371, 9332, 9333, 9334, 9335, 9336, 9337, 9338, 9339, 9340, 9341, 9342, 9343, 9344, 9345, 9346, 9347, 9348, - 9349, 9350, 9351, 9312, 9313, 9314, 9315, 9316, 9317, 9318, 9319, 9320, 9321, 8364, 59245, 12832, 12833, 12834, - 12835, 12836, 12837, 12838, 12839, 12840, 12841, 59246, 59247, 8544, 8545, 8546, 8547, 8548, 8549, 8550, 8551, - 8552, 8553, 8554, 8555, 59248, 59249, 58758, 58759, 58760, 58761, 58762, 58763, 58764, 58765, 58766, 58767, 58768, - 58769, 58770, 58771, 58772, 58773, 58774, 58775, 58776, 58777, 58778, 58779, 58780, 58781, 58782, 58783, 58784, - 58785, 58786, 58787, 58788, 58789, 58790, 58791, 58792, 58793, 58794, 58795, 58796, 58797, 58798, 58799, 58800, - 58801, 58802, 58803, 58804, 58805, 58806, 58807, 58808, 58809, 58810, 58811, 58812, 58813, 58814, 58815, 58816, - 58817, 58818, 58819, 58820, 58821, 58822, 58823, 58824, 58825, 58826, 58827, 58828, 58829, 58830, 58831, 58832, - 58833, 58834, 58835, 58836, 58837, 58838, 58839, 58840, 58841, 58842, 58843, 58844, 58845, 58846, 58847, 58848, - 58849, 58850, 58851, 58852, 12288, 65281, 65282, 65283, 65509, 65285, 65286, 65287, 65288, 65289, 65290, 65291, - 65292, 65293, 65294, 65295, 65296, 65297, 65298, 65299, 65300, 65301, 65302, 65303, 65304, 65305, 65306, 65307, - 65308, 65309, 65310, 65311, 65312, 65313, 65314, 65315, 65316, 65317, 65318, 65319, 65320, 65321, 65322, 65323, - 65324, 65325, 65326, 65327, 65328, 65329, 65330, 65331, 65332, 65333, 65334, 65335, 65336, 65337, 65338, 65339, - 65340, 65341, 65342, 65343, 65344, 65345, 65346, 65347, 65348, 65349, 65350, 65351, 65352, 65353, 65354, 65355, - 65356, 65357, 65358, 65359, 65360, 65361, 65362, 65363, 65364, 65365, 65366, 65367, 65368, 65369, 65370, 65371, - 65372, 65373, 65507, 58854, 58855, 58856, 58857, 58858, 58859, 58860, 58861, 58862, 58863, 58864, 58865, 58866, - 58867, 58868, 58869, 58870, 58871, 58872, 58873, 58874, 58875, 58876, 58877, 58878, 58879, 58880, 58881, 58882, - 58883, 58884, 58885, 58886, 58887, 58888, 58889, 58890, 58891, 58892, 58893, 58894, 58895, 58896, 58897, 58898, - 58899, 58900, 58901, 58902, 58903, 58904, 58905, 58906, 58907, 58908, 58909, 58910, 58911, 58912, 58913, 58914, - 58915, 58916, 58917, 58918, 58919, 58920, 58921, 58922, 58923, 58924, 58925, 58926, 58927, 58928, 58929, 58930, - 58931, 58932, 58933, 58934, 58935, 58936, 58937, 58938, 58939, 58940, 58941, 58942, 58943, 58944, 58945, 58946, - 58947, 58948, 58949, 12353, 12354, 12355, 12356, 12357, 12358, 12359, 12360, 12361, 12362, 12363, 12364, 12365, - 12366, 12367, 12368, 12369, 12370, 12371, 12372, 12373, 12374, 12375, 12376, 12377, 12378, 12379, 12380, 12381, - 12382, 12383, 12384, 12385, 12386, 12387, 12388, 12389, 12390, 12391, 12392, 12393, 12394, 12395, 12396, 12397, - 12398, 12399, 12400, 12401, 12402, 12403, 12404, 12405, 12406, 12407, 12408, 12409, 12410, 12411, 12412, 12413, - 12414, 12415, 12416, 12417, 12418, 12419, 12420, 12421, 12422, 12423, 12424, 12425, 12426, 12427, 12428, 12429, - 12430, 12431, 12432, 12433, 12434, 12435, 59250, 59251, 59252, 59253, 59254, 59255, 59256, 59257, 59258, 59259, - 59260, 58950, 58951, 58952, 58953, 58954, 58955, 58956, 58957, 58958, 58959, 58960, 58961, 58962, 58963, 58964, - 58965, 58966, 58967, 58968, 58969, 58970, 58971, 58972, 58973, 58974, 58975, 58976, 58977, 58978, 58979, 58980, - 58981, 58982, 58983, 58984, 58985, 58986, 58987, 58988, 58989, 58990, 58991, 58992, 58993, 58994, 58995, 58996, - 58997, 58998, 58999, 59000, 59001, 59002, 59003, 59004, 59005, 59006, 59007, 59008, 59009, 59010, 59011, 59012, - 59013, 59014, 59015, 59016, 59017, 59018, 59019, 59020, 59021, 59022, 59023, 59024, 59025, 59026, 59027, 59028, - 59029, 59030, 59031, 59032, 59033, 59034, 59035, 59036, 59037, 59038, 59039, 59040, 59041, 59042, 59043, 59044, - 59045, 12449, 12450, 12451, 12452, 12453, 12454, 12455, 12456, 12457, 12458, 12459, 12460, 12461, 12462, 12463, - 12464, 12465, 12466, 12467, 12468, 12469, 12470, 12471, 12472, 12473, 12474, 12475, 12476, 12477, 12478, 12479, - 12480, 12481, 12482, 12483, 12484, 12485, 12486, 12487, 12488, 12489, 12490, 12491, 12492, 12493, 12494, 12495, - 12496, 12497, 12498, 12499, 12500, 12501, 12502, 12503, 12504, 12505, 12506, 12507, 12508, 12509, 12510, 12511, - 12512, 12513, 12514, 12515, 12516, 12517, 12518, 12519, 12520, 12521, 12522, 12523, 12524, 12525, 12526, 12527, - 12528, 12529, 12530, 12531, 12532, 12533, 12534, 59261, 59262, 59263, 59264, 59265, 59266, 59267, 59268, 59046, - 59047, 59048, 59049, 59050, 59051, 59052, 59053, 59054, 59055, 59056, 59057, 59058, 59059, 59060, 59061, 59062, - 59063, 59064, 59065, 59066, 59067, 59068, 59069, 59070, 59071, 59072, 59073, 59074, 59075, 59076, 59077, 59078, - 59079, 59080, 59081, 59082, 59083, 59084, 59085, 59086, 59087, 59088, 59089, 59090, 59091, 59092, 59093, 59094, - 59095, 59096, 59097, 59098, 59099, 59100, 59101, 59102, 59103, 59104, 59105, 59106, 59107, 59108, 59109, 59110, - 59111, 59112, 59113, 59114, 59115, 59116, 59117, 59118, 59119, 59120, 59121, 59122, 59123, 59124, 59125, 59126, - 59127, 59128, 59129, 59130, 59131, 59132, 59133, 59134, 59135, 59136, 59137, 59138, 59139, 59140, 59141, 913, 914, - 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 931, 932, 933, 934, 935, 936, 937, - 59269, 59270, 59271, 59272, 59273, 59274, 59275, 59276, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, - 956, 957, 958, 959, 960, 961, 963, 964, 965, 966, 967, 968, 969, 59277, 59278, 59279, 59280, 59281, 59282, 59283, - 65077, 65078, 65081, 65082, 65087, 65088, 65085, 65086, 65089, 65090, 65091, 65092, 59284, 59285, 65083, 65084, - 65079, 65080, 65073, 59286, 65075, 65076, 59287, 59288, 59289, 59290, 59291, 59292, 59293, 59294, 59295, 59142, - 59143, 59144, 59145, 59146, 59147, 59148, 59149, 59150, 59151, 59152, 59153, 59154, 59155, 59156, 59157, 59158, - 59159, 59160, 59161, 59162, 59163, 59164, 59165, 59166, 59167, 59168, 59169, 59170, 59171, 59172, 59173, 59174, - 59175, 59176, 59177, 59178, 59179, 59180, 59181, 59182, 59183, 59184, 59185, 59186, 59187, 59188, 59189, 59190, - 59191, 59192, 59193, 59194, 59195, 59196, 59197, 59198, 59199, 59200, 59201, 59202, 59203, 59204, 59205, 59206, - 59207, 59208, 59209, 59210, 59211, 59212, 59213, 59214, 59215, 59216, 59217, 59218, 59219, 59220, 59221, 59222, - 59223, 59224, 59225, 59226, 59227, 59228, 59229, 59230, 59231, 59232, 59233, 59234, 59235, 59236, 59237, 1040, - 1041, 1042, 1043, 1044, 1045, 1025, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, - 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 59296, 59297, 59298, 59299, 59300, - 59301, 59302, 59303, 59304, 59305, 59306, 59307, 59308, 59309, 59310, 1072, 1073, 1074, 1075, 1076, 1077, 1105, - 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, - 1097, 1098, 1099, 1100, 1101, 1102, 1103, 59311, 59312, 59313, 59314, 59315, 59316, 59317, 59318, 59319, 59320, - 59321, 59322, 59323, 714, 715, 729, 8211, 8213, 8229, 8245, 8453, 8457, 8598, 8599, 8600, 8601, 8725, 8735, 8739, - 8786, 8806, 8807, 8895, 9552, 9553, 9554, 9555, 9556, 9557, 9558, 9559, 9560, 9561, 9562, 9563, 9564, 9565, 9566, - 9567, 9568, 9569, 9570, 9571, 9572, 9573, 9574, 9575, 9576, 9577, 9578, 9579, 9580, 9581, 9582, 9583, 9584, 9585, - 9586, 9587, 9601, 9602, 9603, 9604, 9605, 9606, 9607, 9608, 9609, 9610, 9611, 9612, 9613, 9614, 9615, 9619, 9620, - 9621, 9660, 9661, 9698, 9699, 9700, 9701, 9737, 8853, 12306, 12317, 12318, 59324, 59325, 59326, 59327, 59328, - 59329, 59330, 59331, 59332, 59333, 59334, 257, 225, 462, 224, 275, 233, 283, 232, 299, 237, 464, 236, 333, 243, - 466, 242, 363, 250, 468, 249, 470, 472, 474, 476, 252, 234, 593, 59335, 324, 328, 505, 609, 59337, 59338, 59339, - 59340, 12549, 12550, 12551, 12552, 12553, 12554, 12555, 12556, 12557, 12558, 12559, 12560, 12561, 12562, 12563, - 12564, 12565, 12566, 12567, 12568, 12569, 12570, 12571, 12572, 12573, 12574, 12575, 12576, 12577, 12578, 12579, - 12580, 12581, 12582, 12583, 12584, 12585, 59341, 59342, 59343, 59344, 59345, 59346, 59347, 59348, 59349, 59350, - 59351, 59352, 59353, 59354, 59355, 59356, 59357, 59358, 59359, 59360, 59361, 12321, 12322, 12323, 12324, 12325, - 12326, 12327, 12328, 12329, 12963, 13198, 13199, 13212, 13213, 13214, 13217, 13252, 13262, 13265, 13266, 13269, - 65072, 65506, 65508, 59362, 8481, 12849, 59363, 8208, 59364, 59365, 59366, 12540, 12443, 12444, 12541, 12542, - 12294, 12445, 12446, 65097, 65098, 65099, 65100, 65101, 65102, 65103, 65104, 65105, 65106, 65108, 65109, 65110, - 65111, 65113, 65114, 65115, 65116, 65117, 65118, 65119, 65120, 65121, 65122, 65123, 65124, 65125, 65126, 65128, - 65129, 65130, 65131, 12350, 12272, 12273, 12274, 12275, 12276, 12277, 12278, 12279, 12280, 12281, 12282, 12283, - 12295, 59380, 59381, 59382, 59383, 59384, 59385, 59386, 59387, 59388, 59389, 59390, 59391, 59392, 9472, 9473, - 9474, 9475, 9476, 9477, 9478, 9479, 9480, 9481, 9482, 9483, 9484, 9485, 9486, 9487, 9488, 9489, 9490, 9491, 9492, - 9493, 9494, 9495, 9496, 9497, 9498, 9499, 9500, 9501, 9502, 9503, 9504, 9505, 9506, 9507, 9508, 9509, 9510, 9511, - 9512, 9513, 9514, 9515, 9516, 9517, 9518, 9519, 9520, 9521, 9522, 9523, 9524, 9525, 9526, 9527, 9528, 9529, 9530, - 9531, 9532, 9533, 9534, 9535, 9536, 9537, 9538, 9539, 9540, 9541, 9542, 9543, 9544, 9545, 9546, 9547, 59393, - 59394, 59395, 59396, 59397, 59398, 59399, 59400, 59401, 59402, 59403, 59404, 59405, 59406, 59407, 29404, 29405, - 29407, 29410, 29411, 29412, 29413, 29414, 29415, 29418, 29419, 29429, 29430, 29433, 29437, 29438, 29439, 29440, - 29442, 29444, 29445, 29446, 29447, 29448, 29449, 29451, 29452, 29453, 29455, 29456, 29457, 29458, 29460, 29464, - 29465, 29466, 29471, 29472, 29475, 29476, 29478, 29479, 29480, 29485, 29487, 29488, 29490, 29491, 29493, 29494, - 29498, 29499, 29500, 29501, 29504, 29505, 29506, 29507, 29508, 29509, 29510, 29511, 29512, 29513, 29514, 29515, - 29516, 29518, 29519, 29521, 29523, 29524, 29525, 29526, 29528, 29529, 29530, 29531, 29532, 29533, 29534, 29535, - 29537, 29538, 29539, 29540, 29541, 29542, 29543, 29544, 29545, 29546, 29547, 29550, 29552, 29553, 57344, 57345, - 57346, 57347, 57348, 57349, 57350, 57351, 57352, 57353, 57354, 57355, 57356, 57357, 57358, 57359, 57360, 57361, - 57362, 57363, 57364, 57365, 57366, 57367, 57368, 57369, 57370, 57371, 57372, 57373, 57374, 57375, 57376, 57377, - 57378, 57379, 57380, 57381, 57382, 57383, 57384, 57385, 57386, 57387, 57388, 57389, 57390, 57391, 57392, 57393, - 57394, 57395, 57396, 57397, 57398, 57399, 57400, 57401, 57402, 57403, 57404, 57405, 57406, 57407, 57408, 57409, - 57410, 57411, 57412, 57413, 57414, 57415, 57416, 57417, 57418, 57419, 57420, 57421, 57422, 57423, 57424, 57425, - 57426, 57427, 57428, 57429, 57430, 57431, 57432, 57433, 57434, 57435, 57436, 57437, 29554, 29555, 29556, 29557, - 29558, 29559, 29560, 29561, 29562, 29563, 29564, 29565, 29567, 29568, 29569, 29570, 29571, 29573, 29574, 29576, - 29578, 29580, 29581, 29583, 29584, 29586, 29587, 29588, 29589, 29591, 29592, 29593, 29594, 29596, 29597, 29598, - 29600, 29601, 29603, 29604, 29605, 29606, 29607, 29608, 29610, 29612, 29613, 29617, 29620, 29621, 29622, 29624, - 29625, 29628, 29629, 29630, 29631, 29633, 29635, 29636, 29637, 29638, 29639, 29643, 29644, 29646, 29650, 29651, - 29652, 29653, 29654, 29655, 29656, 29658, 29659, 29660, 29661, 29663, 29665, 29666, 29667, 29668, 29670, 29672, - 29674, 29675, 29676, 29678, 29679, 29680, 29681, 29683, 29684, 29685, 29686, 29687, 57438, 57439, 57440, 57441, - 57442, 57443, 57444, 57445, 57446, 57447, 57448, 57449, 57450, 57451, 57452, 57453, 57454, 57455, 57456, 57457, - 57458, 57459, 57460, 57461, 57462, 57463, 57464, 57465, 57466, 57467, 57468, 57469, 57470, 57471, 57472, 57473, - 57474, 57475, 57476, 57477, 57478, 57479, 57480, 57481, 57482, 57483, 57484, 57485, 57486, 57487, 57488, 57489, - 57490, 57491, 57492, 57493, 57494, 57495, 57496, 57497, 57498, 57499, 57500, 57501, 57502, 57503, 57504, 57505, - 57506, 57507, 57508, 57509, 57510, 57511, 57512, 57513, 57514, 57515, 57516, 57517, 57518, 57519, 57520, 57521, - 57522, 57523, 57524, 57525, 57526, 57527, 57528, 57529, 57530, 57531, 29688, 29689, 29690, 29691, 29692, 29693, - 29694, 29695, 29696, 29697, 29698, 29700, 29703, 29704, 29707, 29708, 29709, 29710, 29713, 29714, 29715, 29716, - 29717, 29718, 29719, 29720, 29721, 29724, 29725, 29726, 29727, 29728, 29729, 29731, 29732, 29735, 29737, 29739, - 29741, 29743, 29745, 29746, 29751, 29752, 29753, 29754, 29755, 29757, 29758, 29759, 29760, 29762, 29763, 29764, - 29765, 29766, 29767, 29768, 29769, 29770, 29771, 29772, 29773, 29774, 29775, 29776, 29777, 29778, 29779, 29780, - 29782, 29784, 29789, 29792, 29793, 29794, 29795, 29796, 29797, 29798, 29799, 29800, 29801, 29802, 29803, 29804, - 29806, 29807, 29809, 29810, 29811, 29812, 29813, 29816, 29817, 29818, 57532, 57533, 57534, 57535, 57536, 57537, - 57538, 57539, 57540, 57541, 57542, 57543, 57544, 57545, 57546, 57547, 57548, 57549, 57550, 57551, 57552, 57553, - 57554, 57555, 57556, 57557, 57558, 57559, 57560, 57561, 57562, 57563, 57564, 57565, 57566, 57567, 57568, 57569, - 57570, 57571, 57572, 57573, 57574, 57575, 57576, 57577, 57578, 57579, 57580, 57581, 57582, 57583, 57584, 57585, - 57586, 57587, 57588, 57589, 57590, 57591, 57592, 57593, 57594, 57595, 57596, 57597, 57598, 57599, 57600, 57601, - 57602, 57603, 57604, 57605, 57606, 57607, 57608, 57609, 57610, 57611, 57612, 57613, 57614, 57615, 57616, 57617, - 57618, 57619, 57620, 57621, 57622, 57623, 57624, 57625, 29819, 29820, 29821, 29823, 29826, 29828, 29829, 29830, - 29832, 29833, 29834, 29836, 29837, 29839, 29841, 29842, 29843, 29844, 29845, 29846, 29847, 29848, 29849, 29850, - 29851, 29853, 29855, 29856, 29857, 29858, 29859, 29860, 29861, 29862, 29866, 29867, 29868, 29869, 29870, 29871, - 29872, 29873, 29874, 29875, 29876, 29877, 29878, 29879, 29880, 29881, 29883, 29884, 29885, 29886, 29887, 29888, - 29889, 29890, 29891, 29892, 29893, 29894, 29895, 29896, 29897, 29898, 29899, 29900, 29901, 29902, 29903, 29904, - 29905, 29907, 29908, 29909, 29910, 29911, 29912, 29913, 29914, 29915, 29917, 29919, 29921, 29925, 29927, 29928, - 29929, 29930, 29931, 29932, 29933, 29936, 29937, 29938, 57626, 57627, 57628, 57629, 57630, 57631, 57632, 57633, - 57634, 57635, 57636, 57637, 57638, 57639, 57640, 57641, 57642, 57643, 57644, 57645, 57646, 57647, 57648, 57649, - 57650, 57651, 57652, 57653, 57654, 57655, 57656, 57657, 57658, 57659, 57660, 57661, 57662, 57663, 57664, 57665, - 57666, 57667, 57668, 57669, 57670, 57671, 57672, 57673, 57674, 57675, 57676, 57677, 57678, 57679, 57680, 57681, - 57682, 57683, 57684, 57685, 57686, 57687, 57688, 57689, 57690, 57691, 57692, 57693, 57694, 57695, 57696, 57697, - 57698, 57699, 57700, 57701, 57702, 57703, 57704, 57705, 57706, 57707, 57708, 57709, 57710, 57711, 57712, 57713, - 57714, 57715, 57716, 57717, 57718, 57719, 29939, 29941, 29944, 29945, 29946, 29947, 29948, 29949, 29950, 29952, - 29953, 29954, 29955, 29957, 29958, 29959, 29960, 29961, 29962, 29963, 29964, 29966, 29968, 29970, 29972, 29973, - 29974, 29975, 29979, 29981, 29982, 29984, 29985, 29986, 29987, 29988, 29990, 29991, 29994, 29998, 30004, 30006, - 30009, 30012, 30013, 30015, 30017, 30018, 30019, 30020, 30022, 30023, 30025, 30026, 30029, 30032, 30033, 30034, - 30035, 30037, 30038, 30039, 30040, 30045, 30046, 30047, 30048, 30049, 30050, 30051, 30052, 30055, 30056, 30057, - 30059, 30060, 30061, 30062, 30063, 30064, 30065, 30067, 30069, 30070, 30071, 30074, 30075, 30076, 30077, 30078, - 30080, 30081, 30082, 30084, 30085, 30087, 57720, 57721, 57722, 57723, 57724, 57725, 57726, 57727, 57728, 57729, - 57730, 57731, 57732, 57733, 57734, 57735, 57736, 57737, 57738, 57739, 57740, 57741, 57742, 57743, 57744, 57745, - 57746, 57747, 57748, 57749, 57750, 57751, 57752, 57753, 57754, 57755, 57756, 57757, 57758, 57759, 57760, 57761, - 57762, 57763, 57764, 57765, 57766, 57767, 57768, 57769, 57770, 57771, 57772, 57773, 57774, 57775, 57776, 57777, - 57778, 57779, 57780, 57781, 57782, 57783, 57784, 57785, 57786, 57787, 57788, 57789, 57790, 57791, 57792, 57793, - 57794, 57795, 57796, 57797, 57798, 57799, 57800, 57801, 57802, 57803, 57804, 57805, 57806, 57807, 57808, 57809, - 57810, 57811, 57812, 57813, 30088, 30089, 30090, 30092, 30093, 30094, 30096, 30099, 30101, 30104, 30107, 30108, - 30110, 30114, 30118, 30119, 30120, 30121, 30122, 30125, 30134, 30135, 30138, 30139, 30143, 30144, 30145, 30150, - 30155, 30156, 30158, 30159, 30160, 30161, 30163, 30167, 30169, 30170, 30172, 30173, 30175, 30176, 30177, 30181, - 30185, 30188, 30189, 30190, 30191, 30194, 30195, 30197, 30198, 30199, 30200, 30202, 30203, 30205, 30206, 30210, - 30212, 30214, 30215, 30216, 30217, 30219, 30221, 30222, 30223, 30225, 30226, 30227, 30228, 30230, 30234, 30236, - 30237, 30238, 30241, 30243, 30247, 30248, 30252, 30254, 30255, 30257, 30258, 30262, 30263, 30265, 30266, 30267, - 30269, 30273, 30274, 30276, 57814, 57815, 57816, 57817, 57818, 57819, 57820, 57821, 57822, 57823, 57824, 57825, - 57826, 57827, 57828, 57829, 57830, 57831, 57832, 57833, 57834, 57835, 57836, 57837, 57838, 57839, 57840, 57841, - 57842, 57843, 57844, 57845, 57846, 57847, 57848, 57849, 57850, 57851, 57852, 57853, 57854, 57855, 57856, 57857, - 57858, 57859, 57860, 57861, 57862, 57863, 57864, 57865, 57866, 57867, 57868, 57869, 57870, 57871, 57872, 57873, - 57874, 57875, 57876, 57877, 57878, 57879, 57880, 57881, 57882, 57883, 57884, 57885, 57886, 57887, 57888, 57889, - 57890, 57891, 57892, 57893, 57894, 57895, 57896, 57897, 57898, 57899, 57900, 57901, 57902, 57903, 57904, 57905, - 57906, 57907, 30277, 30278, 30279, 30280, 30281, 30282, 30283, 30286, 30287, 30288, 30289, 30290, 30291, 30293, - 30295, 30296, 30297, 30298, 30299, 30301, 30303, 30304, 30305, 30306, 30308, 30309, 30310, 30311, 30312, 30313, - 30314, 30316, 30317, 30318, 30320, 30321, 30322, 30323, 30324, 30325, 30326, 30327, 30329, 30330, 30332, 30335, - 30336, 30337, 30339, 30341, 30345, 30346, 30348, 30349, 30351, 30352, 30354, 30356, 30357, 30359, 30360, 30362, - 30363, 30364, 30365, 30366, 30367, 30368, 30369, 30370, 30371, 30373, 30374, 30375, 30376, 30377, 30378, 30379, - 30380, 30381, 30383, 30384, 30387, 30389, 30390, 30391, 30392, 30393, 30394, 30395, 30396, 30397, 30398, 30400, - 30401, 30403, 21834, 38463, 22467, 25384, 21710, 21769, 21696, 30353, 30284, 34108, 30702, 33406, 30861, 29233, - 38552, 38797, 27688, 23433, 20474, 25353, 26263, 23736, 33018, 26696, 32942, 26114, 30414, 20985, 25942, 29100, - 32753, 34948, 20658, 22885, 25034, 28595, 33453, 25420, 25170, 21485, 21543, 31494, 20843, 30116, 24052, 25300, - 36299, 38774, 25226, 32793, 22365, 38712, 32610, 29240, 30333, 26575, 30334, 25670, 20336, 36133, 25308, 31255, - 26001, 29677, 25644, 25203, 33324, 39041, 26495, 29256, 25198, 25292, 20276, 29923, 21322, 21150, 32458, 37030, - 24110, 26758, 27036, 33152, 32465, 26834, 30917, 34444, 38225, 20621, 35876, 33502, 32990, 21253, 35090, 21093, - 30404, 30407, 30409, 30411, 30412, 30419, 30421, 30425, 30426, 30428, 30429, 30430, 30432, 30433, 30434, 30435, - 30436, 30438, 30439, 30440, 30441, 30442, 30443, 30444, 30445, 30448, 30451, 30453, 30454, 30455, 30458, 30459, - 30461, 30463, 30464, 30466, 30467, 30469, 30470, 30474, 30476, 30478, 30479, 30480, 30481, 30482, 30483, 30484, - 30485, 30486, 30487, 30488, 30491, 30492, 30493, 30494, 30497, 30499, 30500, 30501, 30503, 30506, 30507, 30508, - 30510, 30512, 30513, 30514, 30515, 30516, 30521, 30523, 30525, 30526, 30527, 30530, 30532, 30533, 30534, 30536, - 30537, 30538, 30539, 30540, 30541, 30542, 30543, 30546, 30547, 30548, 30549, 30550, 30551, 30552, 30553, 30556, - 34180, 38649, 20445, 22561, 39281, 23453, 25265, 25253, 26292, 35961, 40077, 29190, 26479, 30865, 24754, 21329, - 21271, 36744, 32972, 36125, 38049, 20493, 29384, 22791, 24811, 28953, 34987, 22868, 33519, 26412, 31528, 23849, - 32503, 29997, 27893, 36454, 36856, 36924, 40763, 27604, 37145, 31508, 24444, 30887, 34006, 34109, 27605, 27609, - 27606, 24065, 24199, 30201, 38381, 25949, 24330, 24517, 36767, 22721, 33218, 36991, 38491, 38829, 36793, 32534, - 36140, 25153, 20415, 21464, 21342, 36776, 36777, 36779, 36941, 26631, 24426, 33176, 34920, 40150, 24971, 21035, - 30250, 24428, 25996, 28626, 28392, 23486, 25672, 20853, 20912, 26564, 19993, 31177, 39292, 28851, 30557, 30558, - 30559, 30560, 30564, 30567, 30569, 30570, 30573, 30574, 30575, 30576, 30577, 30578, 30579, 30580, 30581, 30582, - 30583, 30584, 30586, 30587, 30588, 30593, 30594, 30595, 30598, 30599, 30600, 30601, 30602, 30603, 30607, 30608, - 30611, 30612, 30613, 30614, 30615, 30616, 30617, 30618, 30619, 30620, 30621, 30622, 30625, 30627, 30628, 30630, - 30632, 30635, 30637, 30638, 30639, 30641, 30642, 30644, 30646, 30647, 30648, 30649, 30650, 30652, 30654, 30656, - 30657, 30658, 30659, 30660, 30661, 30662, 30663, 30664, 30665, 30666, 30667, 30668, 30670, 30671, 30672, 30673, - 30674, 30675, 30676, 30677, 30678, 30680, 30681, 30682, 30685, 30686, 30687, 30688, 30689, 30692, 30149, 24182, - 29627, 33760, 25773, 25320, 38069, 27874, 21338, 21187, 25615, 38082, 31636, 20271, 24091, 33334, 33046, 33162, - 28196, 27850, 39539, 25429, 21340, 21754, 34917, 22496, 19981, 24067, 27493, 31807, 37096, 24598, 25830, 29468, - 35009, 26448, 25165, 36130, 30572, 36393, 37319, 24425, 33756, 34081, 39184, 21442, 34453, 27531, 24813, 24808, - 28799, 33485, 33329, 20179, 27815, 34255, 25805, 31961, 27133, 26361, 33609, 21397, 31574, 20391, 20876, 27979, - 23618, 36461, 25554, 21449, 33580, 33590, 26597, 30900, 25661, 23519, 23700, 24046, 35815, 25286, 26612, 35962, - 25600, 25530, 34633, 39307, 35863, 32544, 38130, 20135, 38416, 39076, 26124, 29462, 30694, 30696, 30698, 30703, - 30704, 30705, 30706, 30708, 30709, 30711, 30713, 30714, 30715, 30716, 30723, 30724, 30725, 30726, 30727, 30728, - 30730, 30731, 30734, 30735, 30736, 30739, 30741, 30745, 30747, 30750, 30752, 30753, 30754, 30756, 30760, 30762, - 30763, 30766, 30767, 30769, 30770, 30771, 30773, 30774, 30781, 30783, 30785, 30786, 30787, 30788, 30790, 30792, - 30793, 30794, 30795, 30797, 30799, 30801, 30803, 30804, 30808, 30809, 30810, 30811, 30812, 30814, 30815, 30816, - 30817, 30818, 30819, 30820, 30821, 30822, 30823, 30824, 30825, 30831, 30832, 30833, 30834, 30835, 30836, 30837, - 30838, 30840, 30841, 30842, 30843, 30845, 30846, 30847, 30848, 30849, 30850, 30851, 22330, 23581, 24120, 38271, - 20607, 32928, 21378, 25950, 30021, 21809, 20513, 36229, 25220, 38046, 26397, 22066, 28526, 24034, 21557, 28818, - 36710, 25199, 25764, 25507, 24443, 28552, 37108, 33251, 36784, 23576, 26216, 24561, 27785, 38472, 36225, 34924, - 25745, 31216, 22478, 27225, 25104, 21576, 20056, 31243, 24809, 28548, 35802, 25215, 36894, 39563, 31204, 21507, - 30196, 25345, 21273, 27744, 36831, 24347, 39536, 32827, 40831, 20360, 23610, 36196, 32709, 26021, 28861, 20805, - 20914, 34411, 23815, 23456, 25277, 37228, 30068, 36364, 31264, 24833, 31609, 20167, 32504, 30597, 19985, 33261, - 21021, 20986, 27249, 21416, 36487, 38148, 38607, 28353, 38500, 26970, 30852, 30853, 30854, 30856, 30858, 30859, - 30863, 30864, 30866, 30868, 30869, 30870, 30873, 30877, 30878, 30880, 30882, 30884, 30886, 30888, 30889, 30890, - 30891, 30892, 30893, 30894, 30895, 30901, 30902, 30903, 30904, 30906, 30907, 30908, 30909, 30911, 30912, 30914, - 30915, 30916, 30918, 30919, 30920, 30924, 30925, 30926, 30927, 30929, 30930, 30931, 30934, 30935, 30936, 30938, - 30939, 30940, 30941, 30942, 30943, 30944, 30945, 30946, 30947, 30948, 30949, 30950, 30951, 30953, 30954, 30955, - 30957, 30958, 30959, 30960, 30961, 30963, 30965, 30966, 30968, 30969, 30971, 30972, 30973, 30974, 30975, 30976, - 30978, 30979, 30980, 30982, 30983, 30984, 30985, 30986, 30987, 30988, 30784, 20648, 30679, 25616, 35302, 22788, - 25571, 24029, 31359, 26941, 20256, 33337, 21912, 20018, 30126, 31383, 24162, 24202, 38383, 21019, 21561, 28810, - 25462, 38180, 22402, 26149, 26943, 37255, 21767, 28147, 32431, 34850, 25139, 32496, 30133, 33576, 30913, 38604, - 36766, 24904, 29943, 35789, 27492, 21050, 36176, 27425, 32874, 33905, 22257, 21254, 20174, 19995, 20945, 31895, - 37259, 31751, 20419, 36479, 31713, 31388, 25703, 23828, 20652, 33030, 30209, 31929, 28140, 32736, 26449, 23384, - 23544, 30923, 25774, 25619, 25514, 25387, 38169, 25645, 36798, 31572, 30249, 25171, 22823, 21574, 27513, 20643, - 25140, 24102, 27526, 20195, 36151, 34955, 24453, 36910, 30989, 30990, 30991, 30992, 30993, 30994, 30996, 30997, - 30998, 30999, 31000, 31001, 31002, 31003, 31004, 31005, 31007, 31008, 31009, 31010, 31011, 31013, 31014, 31015, - 31016, 31017, 31018, 31019, 31020, 31021, 31022, 31023, 31024, 31025, 31026, 31027, 31029, 31030, 31031, 31032, - 31033, 31037, 31039, 31042, 31043, 31044, 31045, 31047, 31050, 31051, 31052, 31053, 31054, 31055, 31056, 31057, - 31058, 31060, 31061, 31064, 31065, 31073, 31075, 31076, 31078, 31081, 31082, 31083, 31084, 31086, 31088, 31089, - 31090, 31091, 31092, 31093, 31094, 31097, 31099, 31100, 31101, 31102, 31103, 31106, 31107, 31110, 31111, 31112, - 31113, 31115, 31116, 31117, 31118, 31120, 31121, 31122, 24608, 32829, 25285, 20025, 21333, 37112, 25528, 32966, - 26086, 27694, 20294, 24814, 28129, 35806, 24377, 34507, 24403, 25377, 20826, 33633, 26723, 20992, 25443, 36424, - 20498, 23707, 31095, 23548, 21040, 31291, 24764, 36947, 30423, 24503, 24471, 30340, 36460, 28783, 30331, 31561, - 30634, 20979, 37011, 22564, 20302, 28404, 36842, 25932, 31515, 29380, 28068, 32735, 23265, 25269, 24213, 22320, - 33922, 31532, 24093, 24351, 36882, 32532, 39072, 25474, 28359, 30872, 28857, 20856, 38747, 22443, 30005, 20291, - 30008, 24215, 24806, 22880, 28096, 27583, 30857, 21500, 38613, 20939, 20993, 25481, 21514, 38035, 35843, 36300, - 29241, 30879, 34678, 36845, 35853, 21472, 31123, 31124, 31125, 31126, 31127, 31128, 31129, 31131, 31132, 31133, - 31134, 31135, 31136, 31137, 31138, 31139, 31140, 31141, 31142, 31144, 31145, 31146, 31147, 31148, 31149, 31150, - 31151, 31152, 31153, 31154, 31156, 31157, 31158, 31159, 31160, 31164, 31167, 31170, 31172, 31173, 31175, 31176, - 31178, 31180, 31182, 31183, 31184, 31187, 31188, 31190, 31191, 31193, 31194, 31195, 31196, 31197, 31198, 31200, - 31201, 31202, 31205, 31208, 31210, 31212, 31214, 31217, 31218, 31219, 31220, 31221, 31222, 31223, 31225, 31226, - 31228, 31230, 31231, 31233, 31236, 31237, 31239, 31240, 31241, 31242, 31244, 31247, 31248, 31249, 31250, 31251, - 31253, 31254, 31256, 31257, 31259, 31260, 19969, 30447, 21486, 38025, 39030, 40718, 38189, 23450, 35746, 20002, - 19996, 20908, 33891, 25026, 21160, 26635, 20375, 24683, 20923, 27934, 20828, 25238, 26007, 38497, 35910, 36887, - 30168, 37117, 30563, 27602, 29322, 29420, 35835, 22581, 30585, 36172, 26460, 38208, 32922, 24230, 28193, 22930, - 31471, 30701, 38203, 27573, 26029, 32526, 22534, 20817, 38431, 23545, 22697, 21544, 36466, 25958, 39039, 22244, - 38045, 30462, 36929, 25479, 21702, 22810, 22842, 22427, 36530, 26421, 36346, 33333, 21057, 24816, 22549, 34558, - 23784, 40517, 20420, 39069, 35769, 23077, 24694, 21380, 25212, 36943, 37122, 39295, 24681, 32780, 20799, 32819, - 23572, 39285, 27953, 20108, 31261, 31263, 31265, 31266, 31268, 31269, 31270, 31271, 31272, 31273, 31274, 31275, - 31276, 31277, 31278, 31279, 31280, 31281, 31282, 31284, 31285, 31286, 31288, 31290, 31294, 31296, 31297, 31298, - 31299, 31300, 31301, 31303, 31304, 31305, 31306, 31307, 31308, 31309, 31310, 31311, 31312, 31314, 31315, 31316, - 31317, 31318, 31320, 31321, 31322, 31323, 31324, 31325, 31326, 31327, 31328, 31329, 31330, 31331, 31332, 31333, - 31334, 31335, 31336, 31337, 31338, 31339, 31340, 31341, 31342, 31343, 31345, 31346, 31347, 31349, 31355, 31356, - 31357, 31358, 31362, 31365, 31367, 31369, 31370, 31371, 31372, 31374, 31375, 31376, 31379, 31380, 31385, 31386, - 31387, 31390, 31393, 31394, 36144, 21457, 32602, 31567, 20240, 20047, 38400, 27861, 29648, 34281, 24070, 30058, - 32763, 27146, 30718, 38034, 32321, 20961, 28902, 21453, 36820, 33539, 36137, 29359, 39277, 27867, 22346, 33459, - 26041, 32938, 25151, 38450, 22952, 20223, 35775, 32442, 25918, 33778, 38750, 21857, 39134, 32933, 21290, 35837, - 21536, 32954, 24223, 27832, 36153, 33452, 37210, 21545, 27675, 20998, 32439, 22367, 28954, 27774, 31881, 22859, - 20221, 24575, 24868, 31914, 20016, 23553, 26539, 34562, 23792, 38155, 39118, 30127, 28925, 36898, 20911, 32541, - 35773, 22857, 20964, 20315, 21542, 22827, 25975, 32932, 23413, 25206, 25282, 36752, 24133, 27679, 31526, 20239, - 20440, 26381, 31395, 31396, 31399, 31401, 31402, 31403, 31406, 31407, 31408, 31409, 31410, 31412, 31413, 31414, - 31415, 31416, 31417, 31418, 31419, 31420, 31421, 31422, 31424, 31425, 31426, 31427, 31428, 31429, 31430, 31431, - 31432, 31433, 31434, 31436, 31437, 31438, 31439, 31440, 31441, 31442, 31443, 31444, 31445, 31447, 31448, 31450, - 31451, 31452, 31453, 31457, 31458, 31460, 31463, 31464, 31465, 31466, 31467, 31468, 31470, 31472, 31473, 31474, - 31475, 31476, 31477, 31478, 31479, 31480, 31483, 31484, 31486, 31488, 31489, 31490, 31493, 31495, 31497, 31500, - 31501, 31502, 31504, 31506, 31507, 31510, 31511, 31512, 31514, 31516, 31517, 31519, 31521, 31522, 31523, 31527, - 31529, 31533, 28014, 28074, 31119, 34993, 24343, 29995, 25242, 36741, 20463, 37340, 26023, 33071, 33105, 24220, - 33104, 36212, 21103, 35206, 36171, 22797, 20613, 20184, 38428, 29238, 33145, 36127, 23500, 35747, 38468, 22919, - 32538, 21648, 22134, 22030, 35813, 25913, 27010, 38041, 30422, 28297, 24178, 29976, 26438, 26577, 31487, 32925, - 36214, 24863, 31174, 25954, 36195, 20872, 21018, 38050, 32568, 32923, 32434, 23703, 28207, 26464, 31705, 30347, - 39640, 33167, 32660, 31957, 25630, 38224, 31295, 21578, 21733, 27468, 25601, 25096, 40509, 33011, 30105, 21106, - 38761, 33883, 26684, 34532, 38401, 38548, 38124, 20010, 21508, 32473, 26681, 36319, 32789, 26356, 24218, 32697, - 31535, 31536, 31538, 31540, 31541, 31542, 31543, 31545, 31547, 31549, 31551, 31552, 31553, 31554, 31555, 31556, - 31558, 31560, 31562, 31565, 31566, 31571, 31573, 31575, 31577, 31580, 31582, 31583, 31585, 31587, 31588, 31589, - 31590, 31591, 31592, 31593, 31594, 31595, 31596, 31597, 31599, 31600, 31603, 31604, 31606, 31608, 31610, 31612, - 31613, 31615, 31617, 31618, 31619, 31620, 31622, 31623, 31624, 31625, 31626, 31627, 31628, 31630, 31631, 31633, - 31634, 31635, 31638, 31640, 31641, 31642, 31643, 31646, 31647, 31648, 31651, 31652, 31653, 31662, 31663, 31664, - 31666, 31667, 31669, 31670, 31671, 31673, 31674, 31675, 31676, 31677, 31678, 31679, 31680, 31682, 31683, 31684, - 22466, 32831, 26775, 24037, 25915, 21151, 24685, 40858, 20379, 36524, 20844, 23467, 24339, 24041, 27742, 25329, - 36129, 20849, 38057, 21246, 27807, 33503, 29399, 22434, 26500, 36141, 22815, 36764, 33735, 21653, 31629, 20272, - 27837, 23396, 22993, 40723, 21476, 34506, 39592, 35895, 32929, 25925, 39038, 22266, 38599, 21038, 29916, 21072, - 23521, 25346, 35074, 20054, 25296, 24618, 26874, 20851, 23448, 20896, 35266, 31649, 39302, 32592, 24815, 28748, - 36143, 20809, 24191, 36891, 29808, 35268, 22317, 30789, 24402, 40863, 38394, 36712, 39740, 35809, 30328, 26690, - 26588, 36330, 36149, 21053, 36746, 28378, 26829, 38149, 37101, 22269, 26524, 35065, 36807, 21704, 31685, 31688, - 31689, 31690, 31691, 31693, 31694, 31695, 31696, 31698, 31700, 31701, 31702, 31703, 31704, 31707, 31708, 31710, - 31711, 31712, 31714, 31715, 31716, 31719, 31720, 31721, 31723, 31724, 31725, 31727, 31728, 31730, 31731, 31732, - 31733, 31734, 31736, 31737, 31738, 31739, 31741, 31743, 31744, 31745, 31746, 31747, 31748, 31749, 31750, 31752, - 31753, 31754, 31757, 31758, 31760, 31761, 31762, 31763, 31764, 31765, 31767, 31768, 31769, 31770, 31771, 31772, - 31773, 31774, 31776, 31777, 31778, 31779, 31780, 31781, 31784, 31785, 31787, 31788, 31789, 31790, 31791, 31792, - 31793, 31794, 31795, 31796, 31797, 31798, 31799, 31801, 31802, 31803, 31804, 31805, 31806, 31810, 39608, 23401, - 28023, 27686, 20133, 23475, 39559, 37219, 25000, 37039, 38889, 21547, 28085, 23506, 20989, 21898, 32597, 32752, - 25788, 25421, 26097, 25022, 24717, 28938, 27735, 27721, 22831, 26477, 33322, 22741, 22158, 35946, 27627, 37085, - 22909, 32791, 21495, 28009, 21621, 21917, 33655, 33743, 26680, 31166, 21644, 20309, 21512, 30418, 35977, 38402, - 27827, 28088, 36203, 35088, 40548, 36154, 22079, 40657, 30165, 24456, 29408, 24680, 21756, 20136, 27178, 34913, - 24658, 36720, 21700, 28888, 34425, 40511, 27946, 23439, 24344, 32418, 21897, 20399, 29492, 21564, 21402, 20505, - 21518, 21628, 20046, 24573, 29786, 22774, 33899, 32993, 34676, 29392, 31946, 28246, 31811, 31812, 31813, 31814, - 31815, 31816, 31817, 31818, 31819, 31820, 31822, 31823, 31824, 31825, 31826, 31827, 31828, 31829, 31830, 31831, - 31832, 31833, 31834, 31835, 31836, 31837, 31838, 31839, 31840, 31841, 31842, 31843, 31844, 31845, 31846, 31847, - 31848, 31849, 31850, 31851, 31852, 31853, 31854, 31855, 31856, 31857, 31858, 31861, 31862, 31863, 31864, 31865, - 31866, 31870, 31871, 31872, 31873, 31874, 31875, 31876, 31877, 31878, 31879, 31880, 31882, 31883, 31884, 31885, - 31886, 31887, 31888, 31891, 31892, 31894, 31897, 31898, 31899, 31904, 31905, 31907, 31910, 31911, 31912, 31913, - 31915, 31916, 31917, 31919, 31920, 31924, 31925, 31926, 31927, 31928, 31930, 31931, 24359, 34382, 21804, 25252, - 20114, 27818, 25143, 33457, 21719, 21326, 29502, 28369, 30011, 21010, 21270, 35805, 27088, 24458, 24576, 28142, - 22351, 27426, 29615, 26707, 36824, 32531, 25442, 24739, 21796, 30186, 35938, 28949, 28067, 23462, 24187, 33618, - 24908, 40644, 30970, 34647, 31783, 30343, 20976, 24822, 29004, 26179, 24140, 24653, 35854, 28784, 25381, 36745, - 24509, 24674, 34516, 22238, 27585, 24724, 24935, 21321, 24800, 26214, 36159, 31229, 20250, 28905, 27719, 35763, - 35826, 32472, 33636, 26127, 23130, 39746, 27985, 28151, 35905, 27963, 20249, 28779, 33719, 25110, 24785, 38669, - 36135, 31096, 20987, 22334, 22522, 26426, 30072, 31293, 31215, 31637, 31935, 31936, 31938, 31939, 31940, 31942, - 31945, 31947, 31950, 31951, 31952, 31953, 31954, 31955, 31956, 31960, 31962, 31963, 31965, 31966, 31969, 31970, - 31971, 31972, 31973, 31974, 31975, 31977, 31978, 31979, 31980, 31981, 31982, 31984, 31985, 31986, 31987, 31988, - 31989, 31990, 31991, 31993, 31994, 31996, 31997, 31998, 31999, 32000, 32001, 32002, 32003, 32004, 32005, 32006, - 32007, 32008, 32009, 32011, 32012, 32013, 32014, 32015, 32016, 32017, 32018, 32019, 32020, 32021, 32022, 32023, - 32024, 32025, 32026, 32027, 32028, 32029, 32030, 32031, 32033, 32035, 32036, 32037, 32038, 32040, 32041, 32042, - 32044, 32045, 32046, 32048, 32049, 32050, 32051, 32052, 32053, 32054, 32908, 39269, 36857, 28608, 35749, 40481, - 23020, 32489, 32521, 21513, 26497, 26840, 36753, 31821, 38598, 21450, 24613, 30142, 27762, 21363, 23241, 32423, - 25380, 20960, 33034, 24049, 34015, 25216, 20864, 23395, 20238, 31085, 21058, 24760, 27982, 23492, 23490, 35745, - 35760, 26082, 24524, 38469, 22931, 32487, 32426, 22025, 26551, 22841, 20339, 23478, 21152, 33626, 39050, 36158, - 30002, 38078, 20551, 31292, 20215, 26550, 39550, 23233, 27516, 30417, 22362, 23574, 31546, 38388, 29006, 20860, - 32937, 33392, 22904, 32516, 33575, 26816, 26604, 30897, 30839, 25315, 25441, 31616, 20461, 21098, 20943, 33616, - 27099, 37492, 36341, 36145, 35265, 38190, 31661, 20214, 32055, 32056, 32057, 32058, 32059, 32060, 32061, 32062, - 32063, 32064, 32065, 32066, 32067, 32068, 32069, 32070, 32071, 32072, 32073, 32074, 32075, 32076, 32077, 32078, - 32079, 32080, 32081, 32082, 32083, 32084, 32085, 32086, 32087, 32088, 32089, 32090, 32091, 32092, 32093, 32094, - 32095, 32096, 32097, 32098, 32099, 32100, 32101, 32102, 32103, 32104, 32105, 32106, 32107, 32108, 32109, 32111, - 32112, 32113, 32114, 32115, 32116, 32117, 32118, 32120, 32121, 32122, 32123, 32124, 32125, 32126, 32127, 32128, - 32129, 32130, 32131, 32132, 32133, 32134, 32135, 32136, 32137, 32138, 32139, 32140, 32141, 32142, 32143, 32144, - 32145, 32146, 32147, 32148, 32149, 32150, 32151, 32152, 20581, 33328, 21073, 39279, 28176, 28293, 28071, 24314, - 20725, 23004, 23558, 27974, 27743, 30086, 33931, 26728, 22870, 35762, 21280, 37233, 38477, 34121, 26898, 30977, - 28966, 33014, 20132, 37066, 27975, 39556, 23047, 22204, 25605, 38128, 30699, 20389, 33050, 29409, 35282, 39290, - 32564, 32478, 21119, 25945, 37237, 36735, 36739, 21483, 31382, 25581, 25509, 30342, 31224, 34903, 38454, 25130, - 21163, 33410, 26708, 26480, 25463, 30571, 31469, 27905, 32467, 35299, 22992, 25106, 34249, 33445, 30028, 20511, - 20171, 30117, 35819, 23626, 24062, 31563, 26020, 37329, 20170, 27941, 35167, 32039, 38182, 20165, 35880, 36827, - 38771, 26187, 31105, 36817, 28908, 28024, 32153, 32154, 32155, 32156, 32157, 32158, 32159, 32160, 32161, 32162, - 32163, 32164, 32165, 32167, 32168, 32169, 32170, 32171, 32172, 32173, 32175, 32176, 32177, 32178, 32179, 32180, - 32181, 32182, 32183, 32184, 32185, 32186, 32187, 32188, 32189, 32190, 32191, 32192, 32193, 32194, 32195, 32196, - 32197, 32198, 32199, 32200, 32201, 32202, 32203, 32204, 32205, 32206, 32207, 32208, 32209, 32210, 32211, 32212, - 32213, 32214, 32215, 32216, 32217, 32218, 32219, 32220, 32221, 32222, 32223, 32224, 32225, 32226, 32227, 32228, - 32229, 32230, 32231, 32232, 32233, 32234, 32235, 32236, 32237, 32238, 32239, 32240, 32241, 32242, 32243, 32244, - 32245, 32246, 32247, 32248, 32249, 32250, 23613, 21170, 33606, 20834, 33550, 30555, 26230, 40120, 20140, 24778, - 31934, 31923, 32463, 20117, 35686, 26223, 39048, 38745, 22659, 25964, 38236, 24452, 30153, 38742, 31455, 31454, - 20928, 28847, 31384, 25578, 31350, 32416, 29590, 38893, 20037, 28792, 20061, 37202, 21417, 25937, 26087, 33276, - 33285, 21646, 23601, 30106, 38816, 25304, 29401, 30141, 23621, 39545, 33738, 23616, 21632, 30697, 20030, 27822, - 32858, 25298, 25454, 24040, 20855, 36317, 36382, 38191, 20465, 21477, 24807, 28844, 21095, 25424, 40515, 23071, - 20518, 30519, 21367, 32482, 25733, 25899, 25225, 25496, 20500, 29237, 35273, 20915, 35776, 32477, 22343, 33740, - 38055, 20891, 21531, 23803, 32251, 32252, 32253, 32254, 32255, 32256, 32257, 32258, 32259, 32260, 32261, 32262, - 32263, 32264, 32265, 32266, 32267, 32268, 32269, 32270, 32271, 32272, 32273, 32274, 32275, 32276, 32277, 32278, - 32279, 32280, 32281, 32282, 32283, 32284, 32285, 32286, 32287, 32288, 32289, 32290, 32291, 32292, 32293, 32294, - 32295, 32296, 32297, 32298, 32299, 32300, 32301, 32302, 32303, 32304, 32305, 32306, 32307, 32308, 32309, 32310, - 32311, 32312, 32313, 32314, 32316, 32317, 32318, 32319, 32320, 32322, 32323, 32324, 32325, 32326, 32328, 32329, - 32330, 32331, 32332, 32333, 32334, 32335, 32336, 32337, 32338, 32339, 32340, 32341, 32342, 32343, 32344, 32345, - 32346, 32347, 32348, 32349, 20426, 31459, 27994, 37089, 39567, 21888, 21654, 21345, 21679, 24320, 25577, 26999, - 20975, 24936, 21002, 22570, 21208, 22350, 30733, 30475, 24247, 24951, 31968, 25179, 25239, 20130, 28821, 32771, - 25335, 28900, 38752, 22391, 33499, 26607, 26869, 30933, 39063, 31185, 22771, 21683, 21487, 28212, 20811, 21051, - 23458, 35838, 32943, 21827, 22438, 24691, 22353, 21549, 31354, 24656, 23380, 25511, 25248, 21475, 25187, 23495, - 26543, 21741, 31391, 33510, 37239, 24211, 35044, 22840, 22446, 25358, 36328, 33007, 22359, 31607, 20393, 24555, - 23485, 27454, 21281, 31568, 29378, 26694, 30719, 30518, 26103, 20917, 20111, 30420, 23743, 31397, 33909, 22862, - 39745, 20608, 32350, 32351, 32352, 32353, 32354, 32355, 32356, 32357, 32358, 32359, 32360, 32361, 32362, 32363, - 32364, 32365, 32366, 32367, 32368, 32369, 32370, 32371, 32372, 32373, 32374, 32375, 32376, 32377, 32378, 32379, - 32380, 32381, 32382, 32383, 32384, 32385, 32387, 32388, 32389, 32390, 32391, 32392, 32393, 32394, 32395, 32396, - 32397, 32398, 32399, 32400, 32401, 32402, 32403, 32404, 32405, 32406, 32407, 32408, 32409, 32410, 32412, 32413, - 32414, 32430, 32436, 32443, 32444, 32470, 32484, 32492, 32505, 32522, 32528, 32542, 32567, 32569, 32571, 32572, - 32573, 32574, 32575, 32576, 32577, 32579, 32582, 32583, 32584, 32585, 32586, 32587, 32588, 32589, 32590, 32591, - 32594, 32595, 39304, 24871, 28291, 22372, 26118, 25414, 22256, 25324, 25193, 24275, 38420, 22403, 25289, 21895, - 34593, 33098, 36771, 21862, 33713, 26469, 36182, 34013, 23146, 26639, 25318, 31726, 38417, 20848, 28572, 35888, - 25597, 35272, 25042, 32518, 28866, 28389, 29701, 27028, 29436, 24266, 37070, 26391, 28010, 25438, 21171, 29282, - 32769, 20332, 23013, 37226, 28889, 28061, 21202, 20048, 38647, 38253, 34174, 30922, 32047, 20769, 22418, 25794, - 32907, 31867, 27882, 26865, 26974, 20919, 21400, 26792, 29313, 40654, 31729, 29432, 31163, 28435, 29702, 26446, - 37324, 40100, 31036, 33673, 33620, 21519, 26647, 20029, 21385, 21169, 30782, 21382, 21033, 20616, 20363, 20432, - 32598, 32601, 32603, 32604, 32605, 32606, 32608, 32611, 32612, 32613, 32614, 32615, 32619, 32620, 32621, 32623, - 32624, 32627, 32629, 32630, 32631, 32632, 32634, 32635, 32636, 32637, 32639, 32640, 32642, 32643, 32644, 32645, - 32646, 32647, 32648, 32649, 32651, 32653, 32655, 32656, 32657, 32658, 32659, 32661, 32662, 32663, 32664, 32665, - 32667, 32668, 32672, 32674, 32675, 32677, 32678, 32680, 32681, 32682, 32683, 32684, 32685, 32686, 32689, 32691, - 32692, 32693, 32694, 32695, 32698, 32699, 32702, 32704, 32706, 32707, 32708, 32710, 32711, 32712, 32713, 32715, - 32717, 32719, 32720, 32721, 32722, 32723, 32726, 32727, 32729, 32730, 32731, 32732, 32733, 32734, 32738, 32739, - 30178, 31435, 31890, 27813, 38582, 21147, 29827, 21737, 20457, 32852, 33714, 36830, 38256, 24265, 24604, 28063, - 24088, 25947, 33080, 38142, 24651, 28860, 32451, 31918, 20937, 26753, 31921, 33391, 20004, 36742, 37327, 26238, - 20142, 35845, 25769, 32842, 20698, 30103, 29134, 23525, 36797, 28518, 20102, 25730, 38243, 24278, 26009, 21015, - 35010, 28872, 21155, 29454, 29747, 26519, 30967, 38678, 20020, 37051, 40158, 28107, 20955, 36161, 21533, 25294, - 29618, 33777, 38646, 40836, 38083, 20278, 32666, 20940, 28789, 38517, 23725, 39046, 21478, 20196, 28316, 29705, - 27060, 30827, 39311, 30041, 21016, 30244, 27969, 26611, 20845, 40857, 32843, 21657, 31548, 31423, 32740, 32743, - 32744, 32746, 32747, 32748, 32749, 32751, 32754, 32756, 32757, 32758, 32759, 32760, 32761, 32762, 32765, 32766, - 32767, 32770, 32775, 32776, 32777, 32778, 32782, 32783, 32785, 32787, 32794, 32795, 32797, 32798, 32799, 32801, - 32803, 32804, 32811, 32812, 32813, 32814, 32815, 32816, 32818, 32820, 32825, 32826, 32828, 32830, 32832, 32833, - 32836, 32837, 32839, 32840, 32841, 32846, 32847, 32848, 32849, 32851, 32853, 32854, 32855, 32857, 32859, 32860, - 32861, 32862, 32863, 32864, 32865, 32866, 32867, 32868, 32869, 32870, 32871, 32872, 32875, 32876, 32877, 32878, - 32879, 32880, 32882, 32883, 32884, 32885, 32886, 32887, 32888, 32889, 32890, 32891, 32892, 32893, 38534, 22404, - 25314, 38471, 27004, 23044, 25602, 31699, 28431, 38475, 33446, 21346, 39045, 24208, 28809, 25523, 21348, 34383, - 40065, 40595, 30860, 38706, 36335, 36162, 40575, 28510, 31108, 24405, 38470, 25134, 39540, 21525, 38109, 20387, - 26053, 23653, 23649, 32533, 34385, 27695, 24459, 29575, 28388, 32511, 23782, 25371, 23402, 28390, 21365, 20081, - 25504, 30053, 25249, 36718, 20262, 20177, 27814, 32438, 35770, 33821, 34746, 32599, 36923, 38179, 31657, 39585, - 35064, 33853, 27931, 39558, 32476, 22920, 40635, 29595, 30721, 34434, 39532, 39554, 22043, 21527, 22475, 20080, - 40614, 21334, 36808, 33033, 30610, 39314, 34542, 28385, 34067, 26364, 24930, 28459, 32894, 32897, 32898, 32901, - 32904, 32906, 32909, 32910, 32911, 32912, 32913, 32914, 32916, 32917, 32919, 32921, 32926, 32931, 32934, 32935, - 32936, 32940, 32944, 32947, 32949, 32950, 32952, 32953, 32955, 32965, 32967, 32968, 32969, 32970, 32971, 32975, - 32976, 32977, 32978, 32979, 32980, 32981, 32984, 32991, 32992, 32994, 32995, 32998, 33006, 33013, 33015, 33017, - 33019, 33022, 33023, 33024, 33025, 33027, 33028, 33029, 33031, 33032, 33035, 33036, 33045, 33047, 33049, 33051, - 33052, 33053, 33055, 33056, 33057, 33058, 33059, 33060, 33061, 33062, 33063, 33064, 33065, 33066, 33067, 33069, - 33070, 33072, 33075, 33076, 33077, 33079, 33081, 33082, 33083, 33084, 33085, 33087, 35881, 33426, 33579, 30450, - 27667, 24537, 33725, 29483, 33541, 38170, 27611, 30683, 38086, 21359, 33538, 20882, 24125, 35980, 36152, 20040, - 29611, 26522, 26757, 37238, 38665, 29028, 27809, 30473, 23186, 38209, 27599, 32654, 26151, 23504, 22969, 23194, - 38376, 38391, 20204, 33804, 33945, 27308, 30431, 38192, 29467, 26790, 23391, 30511, 37274, 38753, 31964, 36855, - 35868, 24357, 31859, 31192, 35269, 27852, 34588, 23494, 24130, 26825, 30496, 32501, 20885, 20813, 21193, 23081, - 32517, 38754, 33495, 25551, 30596, 34256, 31186, 28218, 24217, 22937, 34065, 28781, 27665, 25279, 30399, 25935, - 24751, 38397, 26126, 34719, 40483, 38125, 21517, 21629, 35884, 25720, 33088, 33089, 33090, 33091, 33092, 33093, - 33095, 33097, 33101, 33102, 33103, 33106, 33110, 33111, 33112, 33115, 33116, 33117, 33118, 33119, 33121, 33122, - 33123, 33124, 33126, 33128, 33130, 33131, 33132, 33135, 33138, 33139, 33141, 33142, 33143, 33144, 33153, 33155, - 33156, 33157, 33158, 33159, 33161, 33163, 33164, 33165, 33166, 33168, 33170, 33171, 33172, 33173, 33174, 33175, - 33177, 33178, 33182, 33183, 33184, 33185, 33186, 33188, 33189, 33191, 33193, 33195, 33196, 33197, 33198, 33199, - 33200, 33201, 33202, 33204, 33205, 33206, 33207, 33208, 33209, 33212, 33213, 33214, 33215, 33220, 33221, 33223, - 33224, 33225, 33227, 33229, 33230, 33231, 33232, 33233, 33234, 33235, 25721, 34321, 27169, 33180, 30952, 25705, - 39764, 25273, 26411, 33707, 22696, 40664, 27819, 28448, 23518, 38476, 35851, 29279, 26576, 25287, 29281, 20137, - 22982, 27597, 22675, 26286, 24149, 21215, 24917, 26408, 30446, 30566, 29287, 31302, 25343, 21738, 21584, 38048, - 37027, 23068, 32435, 27670, 20035, 22902, 32784, 22856, 21335, 30007, 38590, 22218, 25376, 33041, 24700, 38393, - 28118, 21602, 39297, 20869, 23273, 33021, 22958, 38675, 20522, 27877, 23612, 25311, 20320, 21311, 33147, 36870, - 28346, 34091, 25288, 24180, 30910, 25781, 25467, 24565, 23064, 37247, 40479, 23615, 25423, 32834, 23421, 21870, - 38218, 38221, 28037, 24744, 26592, 29406, 20957, 23425, 33236, 33237, 33238, 33239, 33240, 33241, 33242, 33243, - 33244, 33245, 33246, 33247, 33248, 33249, 33250, 33252, 33253, 33254, 33256, 33257, 33259, 33262, 33263, 33264, - 33265, 33266, 33269, 33270, 33271, 33272, 33273, 33274, 33277, 33279, 33283, 33287, 33288, 33289, 33290, 33291, - 33294, 33295, 33297, 33299, 33301, 33302, 33303, 33304, 33305, 33306, 33309, 33312, 33316, 33317, 33318, 33319, - 33321, 33326, 33330, 33338, 33340, 33341, 33343, 33344, 33345, 33346, 33347, 33349, 33350, 33352, 33354, 33356, - 33357, 33358, 33360, 33361, 33362, 33363, 33364, 33365, 33366, 33367, 33369, 33371, 33372, 33373, 33374, 33376, - 33377, 33378, 33379, 33380, 33381, 33382, 33383, 33385, 25319, 27870, 29275, 25197, 38062, 32445, 33043, 27987, - 20892, 24324, 22900, 21162, 24594, 22899, 26262, 34384, 30111, 25386, 25062, 31983, 35834, 21734, 27431, 40485, - 27572, 34261, 21589, 20598, 27812, 21866, 36276, 29228, 24085, 24597, 29750, 25293, 25490, 29260, 24472, 28227, - 27966, 25856, 28504, 30424, 30928, 30460, 30036, 21028, 21467, 20051, 24222, 26049, 32810, 32982, 25243, 21638, - 21032, 28846, 34957, 36305, 27873, 21624, 32986, 22521, 35060, 36180, 38506, 37197, 20329, 27803, 21943, 30406, - 30768, 25256, 28921, 28558, 24429, 34028, 26842, 30844, 31735, 33192, 26379, 40527, 25447, 30896, 22383, 30738, - 38713, 25209, 25259, 21128, 29749, 27607, 33386, 33387, 33388, 33389, 33393, 33397, 33398, 33399, 33400, 33403, - 33404, 33408, 33409, 33411, 33413, 33414, 33415, 33417, 33420, 33424, 33427, 33428, 33429, 33430, 33434, 33435, - 33438, 33440, 33442, 33443, 33447, 33458, 33461, 33462, 33466, 33467, 33468, 33471, 33472, 33474, 33475, 33477, - 33478, 33481, 33488, 33494, 33497, 33498, 33501, 33506, 33511, 33512, 33513, 33514, 33516, 33517, 33518, 33520, - 33522, 33523, 33525, 33526, 33528, 33530, 33532, 33533, 33534, 33535, 33536, 33546, 33547, 33549, 33552, 33554, - 33555, 33558, 33560, 33561, 33565, 33566, 33567, 33568, 33569, 33570, 33571, 33572, 33573, 33574, 33577, 33578, - 33582, 33584, 33586, 33591, 33595, 33597, 21860, 33086, 30130, 30382, 21305, 30174, 20731, 23617, 35692, 31687, - 20559, 29255, 39575, 39128, 28418, 29922, 31080, 25735, 30629, 25340, 39057, 36139, 21697, 32856, 20050, 22378, - 33529, 33805, 24179, 20973, 29942, 35780, 23631, 22369, 27900, 39047, 23110, 30772, 39748, 36843, 31893, 21078, - 25169, 38138, 20166, 33670, 33889, 33769, 33970, 22484, 26420, 22275, 26222, 28006, 35889, 26333, 28689, 26399, - 27450, 26646, 25114, 22971, 19971, 20932, 28422, 26578, 27791, 20854, 26827, 22855, 27495, 30054, 23822, 33040, - 40784, 26071, 31048, 31041, 39569, 36215, 23682, 20062, 20225, 21551, 22865, 30732, 22120, 27668, 36804, 24323, - 27773, 27875, 35755, 25488, 33598, 33599, 33601, 33602, 33604, 33605, 33608, 33610, 33611, 33612, 33613, 33614, - 33619, 33621, 33622, 33623, 33624, 33625, 33629, 33634, 33648, 33649, 33650, 33651, 33652, 33653, 33654, 33657, - 33658, 33662, 33663, 33664, 33665, 33666, 33667, 33668, 33671, 33672, 33674, 33675, 33676, 33677, 33679, 33680, - 33681, 33684, 33685, 33686, 33687, 33689, 33690, 33693, 33695, 33697, 33698, 33699, 33700, 33701, 33702, 33703, - 33708, 33709, 33710, 33711, 33717, 33723, 33726, 33727, 33730, 33731, 33732, 33734, 33736, 33737, 33739, 33741, - 33742, 33744, 33745, 33746, 33747, 33749, 33751, 33753, 33754, 33755, 33758, 33762, 33763, 33764, 33766, 33767, - 33768, 33771, 33772, 33773, 24688, 27965, 29301, 25190, 38030, 38085, 21315, 36801, 31614, 20191, 35878, 20094, - 40660, 38065, 38067, 21069, 28508, 36963, 27973, 35892, 22545, 23884, 27424, 27465, 26538, 21595, 33108, 32652, - 22681, 34103, 24378, 25250, 27207, 38201, 25970, 24708, 26725, 30631, 20052, 20392, 24039, 38808, 25772, 32728, - 23789, 20431, 31373, 20999, 33540, 19988, 24623, 31363, 38054, 20405, 20146, 31206, 29748, 21220, 33465, 25810, - 31165, 23517, 27777, 38738, 36731, 27682, 20542, 21375, 28165, 25806, 26228, 27696, 24773, 39031, 35831, 24198, - 29756, 31351, 31179, 19992, 37041, 29699, 27714, 22234, 37195, 27845, 36235, 21306, 34502, 26354, 36527, 23624, - 39537, 28192, 33774, 33775, 33779, 33780, 33781, 33782, 33783, 33786, 33787, 33788, 33790, 33791, 33792, 33794, - 33797, 33799, 33800, 33801, 33802, 33808, 33810, 33811, 33812, 33813, 33814, 33815, 33817, 33818, 33819, 33822, - 33823, 33824, 33825, 33826, 33827, 33833, 33834, 33835, 33836, 33837, 33838, 33839, 33840, 33842, 33843, 33844, - 33845, 33846, 33847, 33849, 33850, 33851, 33854, 33855, 33856, 33857, 33858, 33859, 33860, 33861, 33863, 33864, - 33865, 33866, 33867, 33868, 33869, 33870, 33871, 33872, 33874, 33875, 33876, 33877, 33878, 33880, 33885, 33886, - 33887, 33888, 33890, 33892, 33893, 33894, 33895, 33896, 33898, 33902, 33903, 33904, 33906, 33908, 33911, 33913, - 33915, 33916, 21462, 23094, 40843, 36259, 21435, 22280, 39079, 26435, 37275, 27849, 20840, 30154, 25331, 29356, - 21048, 21149, 32570, 28820, 30264, 21364, 40522, 27063, 30830, 38592, 35033, 32676, 28982, 29123, 20873, 26579, - 29924, 22756, 25880, 22199, 35753, 39286, 25200, 32469, 24825, 28909, 22764, 20161, 20154, 24525, 38887, 20219, - 35748, 20995, 22922, 32427, 25172, 20173, 26085, 25102, 33592, 33993, 33635, 34701, 29076, 28342, 23481, 32466, - 20887, 25545, 26580, 32905, 33593, 34837, 20754, 23418, 22914, 36785, 20083, 27741, 20837, 35109, 36719, 38446, - 34122, 29790, 38160, 38384, 28070, 33509, 24369, 25746, 27922, 33832, 33134, 40131, 22622, 36187, 19977, 21441, - 33917, 33918, 33919, 33920, 33921, 33923, 33924, 33925, 33926, 33930, 33933, 33935, 33936, 33937, 33938, 33939, - 33940, 33941, 33942, 33944, 33946, 33947, 33949, 33950, 33951, 33952, 33954, 33955, 33956, 33957, 33958, 33959, - 33960, 33961, 33962, 33963, 33964, 33965, 33966, 33968, 33969, 33971, 33973, 33974, 33975, 33979, 33980, 33982, - 33984, 33986, 33987, 33989, 33990, 33991, 33992, 33995, 33996, 33998, 33999, 34002, 34004, 34005, 34007, 34008, - 34009, 34010, 34011, 34012, 34014, 34017, 34018, 34020, 34023, 34024, 34025, 34026, 34027, 34029, 34030, 34031, - 34033, 34034, 34035, 34036, 34037, 34038, 34039, 34040, 34041, 34042, 34043, 34045, 34046, 34048, 34049, 34050, - 20254, 25955, 26705, 21971, 20007, 25620, 39578, 25195, 23234, 29791, 33394, 28073, 26862, 20711, 33678, 30722, - 26432, 21049, 27801, 32433, 20667, 21861, 29022, 31579, 26194, 29642, 33515, 26441, 23665, 21024, 29053, 34923, - 38378, 38485, 25797, 36193, 33203, 21892, 27733, 25159, 32558, 22674, 20260, 21830, 36175, 26188, 19978, 23578, - 35059, 26786, 25422, 31245, 28903, 33421, 21242, 38902, 23569, 21736, 37045, 32461, 22882, 36170, 34503, 33292, - 33293, 36198, 25668, 23556, 24913, 28041, 31038, 35774, 30775, 30003, 21627, 20280, 36523, 28145, 23072, 32453, - 31070, 27784, 23457, 23158, 29978, 32958, 24910, 28183, 22768, 29983, 29989, 29298, 21319, 32499, 34051, 34052, - 34053, 34054, 34055, 34056, 34057, 34058, 34059, 34061, 34062, 34063, 34064, 34066, 34068, 34069, 34070, 34072, - 34073, 34075, 34076, 34077, 34078, 34080, 34082, 34083, 34084, 34085, 34086, 34087, 34088, 34089, 34090, 34093, - 34094, 34095, 34096, 34097, 34098, 34099, 34100, 34101, 34102, 34110, 34111, 34112, 34113, 34114, 34116, 34117, - 34118, 34119, 34123, 34124, 34125, 34126, 34127, 34128, 34129, 34130, 34131, 34132, 34133, 34135, 34136, 34138, - 34139, 34140, 34141, 34143, 34144, 34145, 34146, 34147, 34149, 34150, 34151, 34153, 34154, 34155, 34156, 34157, - 34158, 34159, 34160, 34161, 34163, 34165, 34166, 34167, 34168, 34172, 34173, 34175, 34176, 34177, 30465, 30427, - 21097, 32988, 22307, 24072, 22833, 29422, 26045, 28287, 35799, 23608, 34417, 21313, 30707, 25342, 26102, 20160, - 39135, 34432, 23454, 35782, 21490, 30690, 20351, 23630, 39542, 22987, 24335, 31034, 22763, 19990, 26623, 20107, - 25325, 35475, 36893, 21183, 26159, 21980, 22124, 36866, 20181, 20365, 37322, 39280, 27663, 24066, 24643, 23460, - 35270, 35797, 25910, 25163, 39318, 23432, 23551, 25480, 21806, 21463, 30246, 20861, 34092, 26530, 26803, 27530, - 25234, 36755, 21460, 33298, 28113, 30095, 20070, 36174, 23408, 29087, 34223, 26257, 26329, 32626, 34560, 40653, - 40736, 23646, 26415, 36848, 26641, 26463, 25101, 31446, 22661, 24246, 25968, 28465, 34178, 34179, 34182, 34184, - 34185, 34186, 34187, 34188, 34189, 34190, 34192, 34193, 34194, 34195, 34196, 34197, 34198, 34199, 34200, 34201, - 34202, 34205, 34206, 34207, 34208, 34209, 34210, 34211, 34213, 34214, 34215, 34217, 34219, 34220, 34221, 34225, - 34226, 34227, 34228, 34229, 34230, 34232, 34234, 34235, 34236, 34237, 34238, 34239, 34240, 34242, 34243, 34244, - 34245, 34246, 34247, 34248, 34250, 34251, 34252, 34253, 34254, 34257, 34258, 34260, 34262, 34263, 34264, 34265, - 34266, 34267, 34269, 34270, 34271, 34272, 34273, 34274, 34275, 34277, 34278, 34279, 34280, 34282, 34283, 34284, - 34285, 34286, 34287, 34288, 34289, 34290, 34291, 34292, 34293, 34294, 34295, 34296, 24661, 21047, 32781, 25684, - 34928, 29993, 24069, 26643, 25332, 38684, 21452, 29245, 35841, 27700, 30561, 31246, 21550, 30636, 39034, 33308, - 35828, 30805, 26388, 28865, 26031, 25749, 22070, 24605, 31169, 21496, 19997, 27515, 32902, 23546, 21987, 22235, - 20282, 20284, 39282, 24051, 26494, 32824, 24578, 39042, 36865, 23435, 35772, 35829, 25628, 33368, 25822, 22013, - 33487, 37221, 20439, 32032, 36895, 31903, 20723, 22609, 28335, 23487, 35785, 32899, 37240, 33948, 31639, 34429, - 38539, 38543, 32485, 39635, 30862, 23681, 31319, 36930, 38567, 31071, 23385, 25439, 31499, 34001, 26797, 21766, - 32553, 29712, 32034, 38145, 25152, 22604, 20182, 23427, 22905, 22612, 34297, 34298, 34300, 34301, 34302, 34304, - 34305, 34306, 34307, 34308, 34310, 34311, 34312, 34313, 34314, 34315, 34316, 34317, 34318, 34319, 34320, 34322, - 34323, 34324, 34325, 34327, 34328, 34329, 34330, 34331, 34332, 34333, 34334, 34335, 34336, 34337, 34338, 34339, - 34340, 34341, 34342, 34344, 34346, 34347, 34348, 34349, 34350, 34351, 34352, 34353, 34354, 34355, 34356, 34357, - 34358, 34359, 34361, 34362, 34363, 34365, 34366, 34367, 34368, 34369, 34370, 34371, 34372, 34373, 34374, 34375, - 34376, 34377, 34378, 34379, 34380, 34386, 34387, 34389, 34390, 34391, 34392, 34393, 34395, 34396, 34397, 34399, - 34400, 34401, 34403, 34404, 34405, 34406, 34407, 34408, 34409, 34410, 29549, 25374, 36427, 36367, 32974, 33492, - 25260, 21488, 27888, 37214, 22826, 24577, 27760, 22349, 25674, 36138, 30251, 28393, 22363, 27264, 30192, 28525, - 35885, 35848, 22374, 27631, 34962, 30899, 25506, 21497, 28845, 27748, 22616, 25642, 22530, 26848, 33179, 21776, - 31958, 20504, 36538, 28108, 36255, 28907, 25487, 28059, 28372, 32486, 33796, 26691, 36867, 28120, 38518, 35752, - 22871, 29305, 34276, 33150, 30140, 35466, 26799, 21076, 36386, 38161, 25552, 39064, 36420, 21884, 20307, 26367, - 22159, 24789, 28053, 21059, 23625, 22825, 28155, 22635, 30000, 29980, 24684, 33300, 33094, 25361, 26465, 36834, - 30522, 36339, 36148, 38081, 24086, 21381, 21548, 28867, 34413, 34415, 34416, 34418, 34419, 34420, 34421, 34422, - 34423, 34424, 34435, 34436, 34437, 34438, 34439, 34440, 34441, 34446, 34447, 34448, 34449, 34450, 34452, 34454, - 34455, 34456, 34457, 34458, 34459, 34462, 34463, 34464, 34465, 34466, 34469, 34470, 34475, 34477, 34478, 34482, - 34483, 34487, 34488, 34489, 34491, 34492, 34493, 34494, 34495, 34497, 34498, 34499, 34501, 34504, 34508, 34509, - 34514, 34515, 34517, 34518, 34519, 34522, 34524, 34525, 34528, 34529, 34530, 34531, 34533, 34534, 34535, 34536, - 34538, 34539, 34540, 34543, 34549, 34550, 34551, 34554, 34555, 34556, 34557, 34559, 34561, 34564, 34565, 34566, - 34571, 34572, 34574, 34575, 34576, 34577, 34580, 34582, 27712, 24311, 20572, 20141, 24237, 25402, 33351, 36890, - 26704, 37230, 30643, 21516, 38108, 24420, 31461, 26742, 25413, 31570, 32479, 30171, 20599, 25237, 22836, 36879, - 20984, 31171, 31361, 22270, 24466, 36884, 28034, 23648, 22303, 21520, 20820, 28237, 22242, 25512, 39059, 33151, - 34581, 35114, 36864, 21534, 23663, 33216, 25302, 25176, 33073, 40501, 38464, 39534, 39548, 26925, 22949, 25299, - 21822, 25366, 21703, 34521, 27964, 23043, 29926, 34972, 27498, 22806, 35916, 24367, 28286, 29609, 39037, 20024, - 28919, 23436, 30871, 25405, 26202, 30358, 24779, 23451, 23113, 19975, 33109, 27754, 29579, 20129, 26505, 32593, - 24448, 26106, 26395, 24536, 22916, 23041, 34585, 34587, 34589, 34591, 34592, 34596, 34598, 34599, 34600, 34602, - 34603, 34604, 34605, 34607, 34608, 34610, 34611, 34613, 34614, 34616, 34617, 34618, 34620, 34621, 34624, 34625, - 34626, 34627, 34628, 34629, 34630, 34634, 34635, 34637, 34639, 34640, 34641, 34642, 34644, 34645, 34646, 34648, - 34650, 34651, 34652, 34653, 34654, 34655, 34657, 34658, 34662, 34663, 34664, 34665, 34666, 34667, 34668, 34669, - 34671, 34673, 34674, 34675, 34677, 34679, 34680, 34681, 34682, 34687, 34688, 34689, 34692, 34694, 34695, 34697, - 34698, 34700, 34702, 34703, 34704, 34705, 34706, 34708, 34709, 34710, 34712, 34713, 34714, 34715, 34716, 34717, - 34718, 34720, 34721, 34722, 34723, 34724, 24013, 24494, 21361, 38886, 36829, 26693, 22260, 21807, 24799, 20026, - 28493, 32500, 33479, 33806, 22996, 20255, 20266, 23614, 32428, 26410, 34074, 21619, 30031, 32963, 21890, 39759, - 20301, 28205, 35859, 23561, 24944, 21355, 30239, 28201, 34442, 25991, 38395, 32441, 21563, 31283, 32010, 38382, - 21985, 32705, 29934, 25373, 34583, 28065, 31389, 25105, 26017, 21351, 25569, 27779, 24043, 21596, 38056, 20044, - 27745, 35820, 23627, 26080, 33436, 26791, 21566, 21556, 27595, 27494, 20116, 25410, 21320, 33310, 20237, 20398, - 22366, 25098, 38654, 26212, 29289, 21247, 21153, 24735, 35823, 26132, 29081, 26512, 35199, 30802, 30717, 26224, - 22075, 21560, 38177, 29306, 34725, 34726, 34727, 34729, 34730, 34734, 34736, 34737, 34738, 34740, 34742, 34743, - 34744, 34745, 34747, 34748, 34750, 34751, 34753, 34754, 34755, 34756, 34757, 34759, 34760, 34761, 34764, 34765, - 34766, 34767, 34768, 34772, 34773, 34774, 34775, 34776, 34777, 34778, 34780, 34781, 34782, 34783, 34785, 34786, - 34787, 34788, 34790, 34791, 34792, 34793, 34795, 34796, 34797, 34799, 34800, 34801, 34802, 34803, 34804, 34805, - 34806, 34807, 34808, 34810, 34811, 34812, 34813, 34815, 34816, 34817, 34818, 34820, 34821, 34822, 34823, 34824, - 34825, 34827, 34828, 34829, 34830, 34831, 34832, 34833, 34834, 34836, 34839, 34840, 34841, 34842, 34844, 34845, - 34846, 34847, 34848, 34851, 31232, 24687, 24076, 24713, 33181, 22805, 24796, 29060, 28911, 28330, 27728, 29312, - 27268, 34989, 24109, 20064, 23219, 21916, 38115, 27927, 31995, 38553, 25103, 32454, 30606, 34430, 21283, 38686, - 36758, 26247, 23777, 20384, 29421, 19979, 21414, 22799, 21523, 25472, 38184, 20808, 20185, 40092, 32420, 21688, - 36132, 34900, 33335, 38386, 28046, 24358, 23244, 26174, 38505, 29616, 29486, 21439, 33146, 39301, 32673, 23466, - 38519, 38480, 32447, 30456, 21410, 38262, 39321, 31665, 35140, 28248, 20065, 32724, 31077, 35814, 24819, 21709, - 20139, 39033, 24055, 27233, 20687, 21521, 35937, 33831, 30813, 38660, 21066, 21742, 22179, 38144, 28040, 23477, - 28102, 26195, 34852, 34853, 34854, 34855, 34856, 34857, 34858, 34859, 34860, 34861, 34862, 34863, 34864, 34865, - 34867, 34868, 34869, 34870, 34871, 34872, 34874, 34875, 34877, 34878, 34879, 34881, 34882, 34883, 34886, 34887, - 34888, 34889, 34890, 34891, 34894, 34895, 34896, 34897, 34898, 34899, 34901, 34902, 34904, 34906, 34907, 34908, - 34909, 34910, 34911, 34912, 34918, 34919, 34922, 34925, 34927, 34929, 34931, 34932, 34933, 34934, 34936, 34937, - 34938, 34939, 34940, 34944, 34947, 34950, 34951, 34953, 34954, 34956, 34958, 34959, 34960, 34961, 34963, 34964, - 34965, 34967, 34968, 34969, 34970, 34971, 34973, 34974, 34975, 34976, 34977, 34979, 34981, 34982, 34983, 34984, - 34985, 34986, 23567, 23389, 26657, 32918, 21880, 31505, 25928, 26964, 20123, 27463, 34638, 38795, 21327, 25375, - 25658, 37034, 26012, 32961, 35856, 20889, 26800, 21368, 34809, 25032, 27844, 27899, 35874, 23633, 34218, 33455, - 38156, 27427, 36763, 26032, 24571, 24515, 20449, 34885, 26143, 33125, 29481, 24826, 20852, 21009, 22411, 24418, - 37026, 34892, 37266, 24184, 26447, 24615, 22995, 20804, 20982, 33016, 21256, 27769, 38596, 29066, 20241, 20462, - 32670, 26429, 21957, 38152, 31168, 34966, 32483, 22687, 25100, 38656, 34394, 22040, 39035, 24464, 35768, 33988, - 37207, 21465, 26093, 24207, 30044, 24676, 32110, 23167, 32490, 32493, 36713, 21927, 23459, 24748, 26059, 29572, - 34988, 34990, 34991, 34992, 34994, 34995, 34996, 34997, 34998, 35000, 35001, 35002, 35003, 35005, 35006, 35007, - 35008, 35011, 35012, 35015, 35016, 35018, 35019, 35020, 35021, 35023, 35024, 35025, 35027, 35030, 35031, 35034, - 35035, 35036, 35037, 35038, 35040, 35041, 35046, 35047, 35049, 35050, 35051, 35052, 35053, 35054, 35055, 35058, - 35061, 35062, 35063, 35066, 35067, 35069, 35071, 35072, 35073, 35075, 35076, 35077, 35078, 35079, 35080, 35081, - 35083, 35084, 35085, 35086, 35087, 35089, 35092, 35093, 35094, 35095, 35096, 35100, 35101, 35102, 35103, 35104, - 35106, 35107, 35108, 35110, 35111, 35112, 35113, 35116, 35117, 35118, 35119, 35121, 35122, 35123, 35125, 35127, - 36873, 30307, 30505, 32474, 38772, 34203, 23398, 31348, 38634, 34880, 21195, 29071, 24490, 26092, 35810, 23547, - 39535, 24033, 27529, 27739, 35757, 35759, 36874, 36805, 21387, 25276, 40486, 40493, 21568, 20011, 33469, 29273, - 34460, 23830, 34905, 28079, 38597, 21713, 20122, 35766, 28937, 21693, 38409, 28895, 28153, 30416, 20005, 30740, - 34578, 23721, 24310, 35328, 39068, 38414, 28814, 27839, 22852, 25513, 30524, 34893, 28436, 33395, 22576, 29141, - 21388, 30746, 38593, 21761, 24422, 28976, 23476, 35866, 39564, 27523, 22830, 40495, 31207, 26472, 25196, 20335, - 30113, 32650, 27915, 38451, 27687, 20208, 30162, 20859, 26679, 28478, 36992, 33136, 22934, 29814, 35128, 35129, - 35130, 35131, 35132, 35133, 35134, 35135, 35136, 35138, 35139, 35141, 35142, 35143, 35144, 35145, 35146, 35147, - 35148, 35149, 35150, 35151, 35152, 35153, 35154, 35155, 35156, 35157, 35158, 35159, 35160, 35161, 35162, 35163, - 35164, 35165, 35168, 35169, 35170, 35171, 35172, 35173, 35175, 35176, 35177, 35178, 35179, 35180, 35181, 35182, - 35183, 35184, 35185, 35186, 35187, 35188, 35189, 35190, 35191, 35192, 35193, 35194, 35196, 35197, 35198, 35200, - 35202, 35204, 35205, 35207, 35208, 35209, 35210, 35211, 35212, 35213, 35214, 35215, 35216, 35217, 35218, 35219, - 35220, 35221, 35222, 35223, 35224, 35225, 35226, 35227, 35228, 35229, 35230, 35231, 35232, 35233, 25671, 23591, - 36965, 31377, 35875, 23002, 21676, 33280, 33647, 35201, 32768, 26928, 22094, 32822, 29239, 37326, 20918, 20063, - 39029, 25494, 19994, 21494, 26355, 33099, 22812, 28082, 19968, 22777, 21307, 25558, 38129, 20381, 20234, 34915, - 39056, 22839, 36951, 31227, 20202, 33008, 30097, 27778, 23452, 23016, 24413, 26885, 34433, 20506, 24050, 20057, - 30691, 20197, 33402, 25233, 26131, 37009, 23673, 20159, 24441, 33222, 36920, 32900, 30123, 20134, 35028, 24847, - 27589, 24518, 20041, 30410, 28322, 35811, 35758, 35850, 35793, 24322, 32764, 32716, 32462, 33589, 33643, 22240, - 27575, 38899, 38452, 23035, 21535, 38134, 28139, 23493, 39278, 23609, 24341, 38544, 35234, 35235, 35236, 35237, - 35238, 35239, 35240, 35241, 35242, 35243, 35244, 35245, 35246, 35247, 35248, 35249, 35250, 35251, 35252, 35253, - 35254, 35255, 35256, 35257, 35258, 35259, 35260, 35261, 35262, 35263, 35264, 35267, 35277, 35283, 35284, 35285, - 35287, 35288, 35289, 35291, 35293, 35295, 35296, 35297, 35298, 35300, 35303, 35304, 35305, 35306, 35308, 35309, - 35310, 35312, 35313, 35314, 35316, 35317, 35318, 35319, 35320, 35321, 35322, 35323, 35324, 35325, 35326, 35327, - 35329, 35330, 35331, 35332, 35333, 35334, 35336, 35337, 35338, 35339, 35340, 35341, 35342, 35343, 35344, 35345, - 35346, 35347, 35348, 35349, 35350, 35351, 35352, 35353, 35354, 35355, 35356, 35357, 21360, 33521, 27185, 23156, - 40560, 24212, 32552, 33721, 33828, 33829, 33639, 34631, 36814, 36194, 30408, 24433, 39062, 30828, 26144, 21727, - 25317, 20323, 33219, 30152, 24248, 38605, 36362, 34553, 21647, 27891, 28044, 27704, 24703, 21191, 29992, 24189, - 20248, 24736, 24551, 23588, 30001, 37038, 38080, 29369, 27833, 28216, 37193, 26377, 21451, 21491, 20305, 37321, - 35825, 21448, 24188, 36802, 28132, 20110, 30402, 27014, 34398, 24858, 33286, 20313, 20446, 36926, 40060, 24841, - 28189, 28180, 38533, 20104, 23089, 38632, 19982, 23679, 31161, 23431, 35821, 32701, 29577, 22495, 33419, 37057, - 21505, 36935, 21947, 23786, 24481, 24840, 27442, 29425, 32946, 35465, 35358, 35359, 35360, 35361, 35362, 35363, - 35364, 35365, 35366, 35367, 35368, 35369, 35370, 35371, 35372, 35373, 35374, 35375, 35376, 35377, 35378, 35379, - 35380, 35381, 35382, 35383, 35384, 35385, 35386, 35387, 35388, 35389, 35391, 35392, 35393, 35394, 35395, 35396, - 35397, 35398, 35399, 35401, 35402, 35403, 35404, 35405, 35406, 35407, 35408, 35409, 35410, 35411, 35412, 35413, - 35414, 35415, 35416, 35417, 35418, 35419, 35420, 35421, 35422, 35423, 35424, 35425, 35426, 35427, 35428, 35429, - 35430, 35431, 35432, 35433, 35434, 35435, 35436, 35437, 35438, 35439, 35440, 35441, 35442, 35443, 35444, 35445, - 35446, 35447, 35448, 35450, 35451, 35452, 35453, 35454, 35455, 35456, 28020, 23507, 35029, 39044, 35947, 39533, - 40499, 28170, 20900, 20803, 22435, 34945, 21407, 25588, 36757, 22253, 21592, 22278, 29503, 28304, 32536, 36828, - 33489, 24895, 24616, 38498, 26352, 32422, 36234, 36291, 38053, 23731, 31908, 26376, 24742, 38405, 32792, 20113, - 37095, 21248, 38504, 20801, 36816, 34164, 37213, 26197, 38901, 23381, 21277, 30776, 26434, 26685, 21705, 28798, - 23472, 36733, 20877, 22312, 21681, 25874, 26242, 36190, 36163, 33039, 33900, 36973, 31967, 20991, 34299, 26531, - 26089, 28577, 34468, 36481, 22122, 36896, 30338, 28790, 29157, 36131, 25321, 21017, 27901, 36156, 24590, 22686, - 24974, 26366, 36192, 25166, 21939, 28195, 26413, 36711, 35457, 35458, 35459, 35460, 35461, 35462, 35463, 35464, - 35467, 35468, 35469, 35470, 35471, 35472, 35473, 35474, 35476, 35477, 35478, 35479, 35480, 35481, 35482, 35483, - 35484, 35485, 35486, 35487, 35488, 35489, 35490, 35491, 35492, 35493, 35494, 35495, 35496, 35497, 35498, 35499, - 35500, 35501, 35502, 35503, 35504, 35505, 35506, 35507, 35508, 35509, 35510, 35511, 35512, 35513, 35514, 35515, - 35516, 35517, 35518, 35519, 35520, 35521, 35522, 35523, 35524, 35525, 35526, 35527, 35528, 35529, 35530, 35531, - 35532, 35533, 35534, 35535, 35536, 35537, 35538, 35539, 35540, 35541, 35542, 35543, 35544, 35545, 35546, 35547, - 35548, 35549, 35550, 35551, 35552, 35553, 35554, 35555, 38113, 38392, 30504, 26629, 27048, 21643, 20045, 28856, - 35784, 25688, 25995, 23429, 31364, 20538, 23528, 30651, 27617, 35449, 31896, 27838, 30415, 26025, 36759, 23853, - 23637, 34360, 26632, 21344, 25112, 31449, 28251, 32509, 27167, 31456, 24432, 28467, 24352, 25484, 28072, 26454, - 19976, 24080, 36134, 20183, 32960, 30260, 38556, 25307, 26157, 25214, 27836, 36213, 29031, 32617, 20806, 32903, - 21484, 36974, 25240, 21746, 34544, 36761, 32773, 38167, 34071, 36825, 27993, 29645, 26015, 30495, 29956, 30759, - 33275, 36126, 38024, 20390, 26517, 30137, 35786, 38663, 25391, 38215, 38453, 33976, 25379, 30529, 24449, 29424, - 20105, 24596, 25972, 25327, 27491, 25919, 35556, 35557, 35558, 35559, 35560, 35561, 35562, 35563, 35564, 35565, - 35566, 35567, 35568, 35569, 35570, 35571, 35572, 35573, 35574, 35575, 35576, 35577, 35578, 35579, 35580, 35581, - 35582, 35583, 35584, 35585, 35586, 35587, 35588, 35589, 35590, 35592, 35593, 35594, 35595, 35596, 35597, 35598, - 35599, 35600, 35601, 35602, 35603, 35604, 35605, 35606, 35607, 35608, 35609, 35610, 35611, 35612, 35613, 35614, - 35615, 35616, 35617, 35618, 35619, 35620, 35621, 35623, 35624, 35625, 35626, 35627, 35628, 35629, 35630, 35631, - 35632, 35633, 35634, 35635, 35636, 35637, 35638, 35639, 35640, 35641, 35642, 35643, 35644, 35645, 35646, 35647, - 35648, 35649, 35650, 35651, 35652, 35653, 24103, 30151, 37073, 35777, 33437, 26525, 25903, 21553, 34584, 30693, - 32930, 33026, 27713, 20043, 32455, 32844, 30452, 26893, 27542, 25191, 20540, 20356, 22336, 25351, 27490, 36286, - 21482, 26088, 32440, 24535, 25370, 25527, 33267, 33268, 32622, 24092, 23769, 21046, 26234, 31209, 31258, 36136, - 28825, 30164, 28382, 27835, 31378, 20013, 30405, 24544, 38047, 34935, 32456, 31181, 32959, 37325, 20210, 20247, - 33311, 21608, 24030, 27954, 35788, 31909, 36724, 32920, 24090, 21650, 30385, 23449, 26172, 39588, 29664, 26666, - 34523, 26417, 29482, 35832, 35803, 36880, 31481, 28891, 29038, 25284, 30633, 22065, 20027, 33879, 26609, 21161, - 34496, 36142, 38136, 31569, 35654, 35655, 35656, 35657, 35658, 35659, 35660, 35661, 35662, 35663, 35664, 35665, - 35666, 35667, 35668, 35669, 35670, 35671, 35672, 35673, 35674, 35675, 35676, 35677, 35678, 35679, 35680, 35681, - 35682, 35683, 35684, 35685, 35687, 35688, 35689, 35690, 35691, 35693, 35694, 35695, 35696, 35697, 35698, 35699, - 35700, 35701, 35702, 35703, 35704, 35705, 35706, 35707, 35708, 35709, 35710, 35711, 35712, 35713, 35714, 35715, - 35716, 35717, 35718, 35719, 35720, 35721, 35722, 35723, 35724, 35725, 35726, 35727, 35728, 35729, 35730, 35731, - 35732, 35733, 35734, 35735, 35736, 35737, 35738, 35739, 35740, 35741, 35742, 35743, 35756, 35761, 35771, 35783, - 35792, 35818, 35849, 35870, 20303, 27880, 31069, 39547, 25235, 29226, 25341, 19987, 30742, 36716, 25776, 36186, - 31686, 26729, 24196, 35013, 22918, 25758, 22766, 29366, 26894, 38181, 36861, 36184, 22368, 32512, 35846, 20934, - 25417, 25305, 21331, 26700, 29730, 33537, 37196, 21828, 30528, 28796, 27978, 20857, 21672, 36164, 23039, 28363, - 28100, 23388, 32043, 20180, 31869, 28371, 23376, 33258, 28173, 23383, 39683, 26837, 36394, 23447, 32508, 24635, - 32437, 37049, 36208, 22863, 25549, 31199, 36275, 21330, 26063, 31062, 35781, 38459, 32452, 38075, 32386, 22068, - 37257, 26368, 32618, 23562, 36981, 26152, 24038, 20304, 26590, 20570, 20316, 22352, 24231, 59408, 59409, 59410, - 59411, 59412, 35896, 35897, 35898, 35899, 35900, 35901, 35902, 35903, 35904, 35906, 35907, 35908, 35909, 35912, - 35914, 35915, 35917, 35918, 35919, 35920, 35921, 35922, 35923, 35924, 35926, 35927, 35928, 35929, 35931, 35932, - 35933, 35934, 35935, 35936, 35939, 35940, 35941, 35942, 35943, 35944, 35945, 35948, 35949, 35950, 35951, 35952, - 35953, 35954, 35956, 35957, 35958, 35959, 35963, 35964, 35965, 35966, 35967, 35968, 35969, 35971, 35972, 35974, - 35975, 35976, 35979, 35981, 35982, 35983, 35984, 35985, 35986, 35987, 35989, 35990, 35991, 35993, 35994, 35995, - 35996, 35997, 35998, 35999, 36000, 36001, 36002, 36003, 36004, 36005, 36006, 36007, 36008, 36009, 36010, 36011, - 36012, 36013, 20109, 19980, 20800, 19984, 24319, 21317, 19989, 20120, 19998, 39730, 23404, 22121, 20008, 31162, - 20031, 21269, 20039, 22829, 29243, 21358, 27664, 22239, 32996, 39319, 27603, 30590, 40727, 20022, 20127, 40720, - 20060, 20073, 20115, 33416, 23387, 21868, 22031, 20164, 21389, 21405, 21411, 21413, 21422, 38757, 36189, 21274, - 21493, 21286, 21294, 21310, 36188, 21350, 21347, 20994, 21000, 21006, 21037, 21043, 21055, 21056, 21068, 21086, - 21089, 21084, 33967, 21117, 21122, 21121, 21136, 21139, 20866, 32596, 20155, 20163, 20169, 20162, 20200, 20193, - 20203, 20190, 20251, 20211, 20258, 20324, 20213, 20261, 20263, 20233, 20267, 20318, 20327, 25912, 20314, 20317, - 36014, 36015, 36016, 36017, 36018, 36019, 36020, 36021, 36022, 36023, 36024, 36025, 36026, 36027, 36028, 36029, - 36030, 36031, 36032, 36033, 36034, 36035, 36036, 36037, 36038, 36039, 36040, 36041, 36042, 36043, 36044, 36045, - 36046, 36047, 36048, 36049, 36050, 36051, 36052, 36053, 36054, 36055, 36056, 36057, 36058, 36059, 36060, 36061, - 36062, 36063, 36064, 36065, 36066, 36067, 36068, 36069, 36070, 36071, 36072, 36073, 36074, 36075, 36076, 36077, - 36078, 36079, 36080, 36081, 36082, 36083, 36084, 36085, 36086, 36087, 36088, 36089, 36090, 36091, 36092, 36093, - 36094, 36095, 36096, 36097, 36098, 36099, 36100, 36101, 36102, 36103, 36104, 36105, 36106, 36107, 36108, 36109, - 20319, 20311, 20274, 20285, 20342, 20340, 20369, 20361, 20355, 20367, 20350, 20347, 20394, 20348, 20396, 20372, - 20454, 20456, 20458, 20421, 20442, 20451, 20444, 20433, 20447, 20472, 20521, 20556, 20467, 20524, 20495, 20526, - 20525, 20478, 20508, 20492, 20517, 20520, 20606, 20547, 20565, 20552, 20558, 20588, 20603, 20645, 20647, 20649, - 20666, 20694, 20742, 20717, 20716, 20710, 20718, 20743, 20747, 20189, 27709, 20312, 20325, 20430, 40864, 27718, - 31860, 20846, 24061, 40649, 39320, 20865, 22804, 21241, 21261, 35335, 21264, 20971, 22809, 20821, 20128, 20822, - 20147, 34926, 34980, 20149, 33044, 35026, 31104, 23348, 34819, 32696, 20907, 20913, 20925, 20924, 36110, 36111, - 36112, 36113, 36114, 36115, 36116, 36117, 36118, 36119, 36120, 36121, 36122, 36123, 36124, 36128, 36177, 36178, - 36183, 36191, 36197, 36200, 36201, 36202, 36204, 36206, 36207, 36209, 36210, 36216, 36217, 36218, 36219, 36220, - 36221, 36222, 36223, 36224, 36226, 36227, 36230, 36231, 36232, 36233, 36236, 36237, 36238, 36239, 36240, 36242, - 36243, 36245, 36246, 36247, 36248, 36249, 36250, 36251, 36252, 36253, 36254, 36256, 36257, 36258, 36260, 36261, - 36262, 36263, 36264, 36265, 36266, 36267, 36268, 36269, 36270, 36271, 36272, 36274, 36278, 36279, 36281, 36283, - 36285, 36288, 36289, 36290, 36293, 36295, 36296, 36297, 36298, 36301, 36304, 36306, 36307, 36308, 20935, 20886, - 20898, 20901, 35744, 35750, 35751, 35754, 35764, 35765, 35767, 35778, 35779, 35787, 35791, 35790, 35794, 35795, - 35796, 35798, 35800, 35801, 35804, 35807, 35808, 35812, 35816, 35817, 35822, 35824, 35827, 35830, 35833, 35836, - 35839, 35840, 35842, 35844, 35847, 35852, 35855, 35857, 35858, 35860, 35861, 35862, 35865, 35867, 35864, 35869, - 35871, 35872, 35873, 35877, 35879, 35882, 35883, 35886, 35887, 35890, 35891, 35893, 35894, 21353, 21370, 38429, - 38434, 38433, 38449, 38442, 38461, 38460, 38466, 38473, 38484, 38495, 38503, 38508, 38514, 38516, 38536, 38541, - 38551, 38576, 37015, 37019, 37021, 37017, 37036, 37025, 37044, 37043, 37046, 37050, 36309, 36312, 36313, 36316, - 36320, 36321, 36322, 36325, 36326, 36327, 36329, 36333, 36334, 36336, 36337, 36338, 36340, 36342, 36348, 36350, - 36351, 36352, 36353, 36354, 36355, 36356, 36358, 36359, 36360, 36363, 36365, 36366, 36368, 36369, 36370, 36371, - 36373, 36374, 36375, 36376, 36377, 36378, 36379, 36380, 36384, 36385, 36388, 36389, 36390, 36391, 36392, 36395, - 36397, 36400, 36402, 36403, 36404, 36406, 36407, 36408, 36411, 36412, 36414, 36415, 36419, 36421, 36422, 36428, - 36429, 36430, 36431, 36432, 36435, 36436, 36437, 36438, 36439, 36440, 36442, 36443, 36444, 36445, 36446, 36447, - 36448, 36449, 36450, 36451, 36452, 36453, 36455, 36456, 36458, 36459, 36462, 36465, 37048, 37040, 37071, 37061, - 37054, 37072, 37060, 37063, 37075, 37094, 37090, 37084, 37079, 37083, 37099, 37103, 37118, 37124, 37154, 37150, - 37155, 37169, 37167, 37177, 37187, 37190, 21005, 22850, 21154, 21164, 21165, 21182, 21759, 21200, 21206, 21232, - 21471, 29166, 30669, 24308, 20981, 20988, 39727, 21430, 24321, 30042, 24047, 22348, 22441, 22433, 22654, 22716, - 22725, 22737, 22313, 22316, 22314, 22323, 22329, 22318, 22319, 22364, 22331, 22338, 22377, 22405, 22379, 22406, - 22396, 22395, 22376, 22381, 22390, 22387, 22445, 22436, 22412, 22450, 22479, 22439, 22452, 22419, 22432, 22485, - 22488, 22490, 22489, 22482, 22456, 22516, 22511, 22520, 22500, 22493, 36467, 36469, 36471, 36472, 36473, 36474, - 36475, 36477, 36478, 36480, 36482, 36483, 36484, 36486, 36488, 36489, 36490, 36491, 36492, 36493, 36494, 36497, - 36498, 36499, 36501, 36502, 36503, 36504, 36505, 36506, 36507, 36509, 36511, 36512, 36513, 36514, 36515, 36516, - 36517, 36518, 36519, 36520, 36521, 36522, 36525, 36526, 36528, 36529, 36531, 36532, 36533, 36534, 36535, 36536, - 36537, 36539, 36540, 36541, 36542, 36543, 36544, 36545, 36546, 36547, 36548, 36549, 36550, 36551, 36552, 36553, - 36554, 36555, 36556, 36557, 36559, 36560, 36561, 36562, 36563, 36564, 36565, 36566, 36567, 36568, 36569, 36570, - 36571, 36572, 36573, 36574, 36575, 36576, 36577, 36578, 36579, 36580, 22539, 22541, 22525, 22509, 22528, 22558, - 22553, 22596, 22560, 22629, 22636, 22657, 22665, 22682, 22656, 39336, 40729, 25087, 33401, 33405, 33407, 33423, - 33418, 33448, 33412, 33422, 33425, 33431, 33433, 33451, 33464, 33470, 33456, 33480, 33482, 33507, 33432, 33463, - 33454, 33483, 33484, 33473, 33449, 33460, 33441, 33450, 33439, 33476, 33486, 33444, 33505, 33545, 33527, 33508, - 33551, 33543, 33500, 33524, 33490, 33496, 33548, 33531, 33491, 33553, 33562, 33542, 33556, 33557, 33504, 33493, - 33564, 33617, 33627, 33628, 33544, 33682, 33596, 33588, 33585, 33691, 33630, 33583, 33615, 33607, 33603, 33631, - 33600, 33559, 33632, 33581, 33594, 33587, 33638, 33637, 36581, 36582, 36583, 36584, 36585, 36586, 36587, 36588, - 36589, 36590, 36591, 36592, 36593, 36594, 36595, 36596, 36597, 36598, 36599, 36600, 36601, 36602, 36603, 36604, - 36605, 36606, 36607, 36608, 36609, 36610, 36611, 36612, 36613, 36614, 36615, 36616, 36617, 36618, 36619, 36620, - 36621, 36622, 36623, 36624, 36625, 36626, 36627, 36628, 36629, 36630, 36631, 36632, 36633, 36634, 36635, 36636, - 36637, 36638, 36639, 36640, 36641, 36642, 36643, 36644, 36645, 36646, 36647, 36648, 36649, 36650, 36651, 36652, - 36653, 36654, 36655, 36656, 36657, 36658, 36659, 36660, 36661, 36662, 36663, 36664, 36665, 36666, 36667, 36668, - 36669, 36670, 36671, 36672, 36673, 36674, 36675, 36676, 33640, 33563, 33641, 33644, 33642, 33645, 33646, 33712, - 33656, 33715, 33716, 33696, 33706, 33683, 33692, 33669, 33660, 33718, 33705, 33661, 33720, 33659, 33688, 33694, - 33704, 33722, 33724, 33729, 33793, 33765, 33752, 22535, 33816, 33803, 33757, 33789, 33750, 33820, 33848, 33809, - 33798, 33748, 33759, 33807, 33795, 33784, 33785, 33770, 33733, 33728, 33830, 33776, 33761, 33884, 33873, 33882, - 33881, 33907, 33927, 33928, 33914, 33929, 33912, 33852, 33862, 33897, 33910, 33932, 33934, 33841, 33901, 33985, - 33997, 34000, 34022, 33981, 34003, 33994, 33983, 33978, 34016, 33953, 33977, 33972, 33943, 34021, 34019, 34060, - 29965, 34104, 34032, 34105, 34079, 34106, 36677, 36678, 36679, 36680, 36681, 36682, 36683, 36684, 36685, 36686, - 36687, 36688, 36689, 36690, 36691, 36692, 36693, 36694, 36695, 36696, 36697, 36698, 36699, 36700, 36701, 36702, - 36703, 36704, 36705, 36706, 36707, 36708, 36709, 36714, 36736, 36748, 36754, 36765, 36768, 36769, 36770, 36772, - 36773, 36774, 36775, 36778, 36780, 36781, 36782, 36783, 36786, 36787, 36788, 36789, 36791, 36792, 36794, 36795, - 36796, 36799, 36800, 36803, 36806, 36809, 36810, 36811, 36812, 36813, 36815, 36818, 36822, 36823, 36826, 36832, - 36833, 36835, 36839, 36844, 36847, 36849, 36850, 36852, 36853, 36854, 36858, 36859, 36860, 36862, 36863, 36871, - 36872, 36876, 36878, 36883, 36885, 36888, 34134, 34107, 34047, 34044, 34137, 34120, 34152, 34148, 34142, 34170, - 30626, 34115, 34162, 34171, 34212, 34216, 34183, 34191, 34169, 34222, 34204, 34181, 34233, 34231, 34224, 34259, - 34241, 34268, 34303, 34343, 34309, 34345, 34326, 34364, 24318, 24328, 22844, 22849, 32823, 22869, 22874, 22872, - 21263, 23586, 23589, 23596, 23604, 25164, 25194, 25247, 25275, 25290, 25306, 25303, 25326, 25378, 25334, 25401, - 25419, 25411, 25517, 25590, 25457, 25466, 25486, 25524, 25453, 25516, 25482, 25449, 25518, 25532, 25586, 25592, - 25568, 25599, 25540, 25566, 25550, 25682, 25542, 25534, 25669, 25665, 25611, 25627, 25632, 25612, 25638, 25633, - 25694, 25732, 25709, 25750, 36889, 36892, 36899, 36900, 36901, 36903, 36904, 36905, 36906, 36907, 36908, 36912, - 36913, 36914, 36915, 36916, 36919, 36921, 36922, 36925, 36927, 36928, 36931, 36933, 36934, 36936, 36937, 36938, - 36939, 36940, 36942, 36948, 36949, 36950, 36953, 36954, 36956, 36957, 36958, 36959, 36960, 36961, 36964, 36966, - 36967, 36969, 36970, 36971, 36972, 36975, 36976, 36977, 36978, 36979, 36982, 36983, 36984, 36985, 36986, 36987, - 36988, 36990, 36993, 36996, 36997, 36998, 36999, 37001, 37002, 37004, 37005, 37006, 37007, 37008, 37010, 37012, - 37014, 37016, 37018, 37020, 37022, 37023, 37024, 37028, 37029, 37031, 37032, 37033, 37035, 37037, 37042, 37047, - 37052, 37053, 37055, 37056, 25722, 25783, 25784, 25753, 25786, 25792, 25808, 25815, 25828, 25826, 25865, 25893, - 25902, 24331, 24530, 29977, 24337, 21343, 21489, 21501, 21481, 21480, 21499, 21522, 21526, 21510, 21579, 21586, - 21587, 21588, 21590, 21571, 21537, 21591, 21593, 21539, 21554, 21634, 21652, 21623, 21617, 21604, 21658, 21659, - 21636, 21622, 21606, 21661, 21712, 21677, 21698, 21684, 21714, 21671, 21670, 21715, 21716, 21618, 21667, 21717, - 21691, 21695, 21708, 21721, 21722, 21724, 21673, 21674, 21668, 21725, 21711, 21726, 21787, 21735, 21792, 21757, - 21780, 21747, 21794, 21795, 21775, 21777, 21799, 21802, 21863, 21903, 21941, 21833, 21869, 21825, 21845, 21823, - 21840, 21820, 37058, 37059, 37062, 37064, 37065, 37067, 37068, 37069, 37074, 37076, 37077, 37078, 37080, 37081, - 37082, 37086, 37087, 37088, 37091, 37092, 37093, 37097, 37098, 37100, 37102, 37104, 37105, 37106, 37107, 37109, - 37110, 37111, 37113, 37114, 37115, 37116, 37119, 37120, 37121, 37123, 37125, 37126, 37127, 37128, 37129, 37130, - 37131, 37132, 37133, 37134, 37135, 37136, 37137, 37138, 37139, 37140, 37141, 37142, 37143, 37144, 37146, 37147, - 37148, 37149, 37151, 37152, 37153, 37156, 37157, 37158, 37159, 37160, 37161, 37162, 37163, 37164, 37165, 37166, - 37168, 37170, 37171, 37172, 37173, 37174, 37175, 37176, 37178, 37179, 37180, 37181, 37182, 37183, 37184, 37185, - 37186, 37188, 21815, 21846, 21877, 21878, 21879, 21811, 21808, 21852, 21899, 21970, 21891, 21937, 21945, 21896, - 21889, 21919, 21886, 21974, 21905, 21883, 21983, 21949, 21950, 21908, 21913, 21994, 22007, 21961, 22047, 21969, - 21995, 21996, 21972, 21990, 21981, 21956, 21999, 21989, 22002, 22003, 21964, 21965, 21992, 22005, 21988, 36756, - 22046, 22024, 22028, 22017, 22052, 22051, 22014, 22016, 22055, 22061, 22104, 22073, 22103, 22060, 22093, 22114, - 22105, 22108, 22092, 22100, 22150, 22116, 22129, 22123, 22139, 22140, 22149, 22163, 22191, 22228, 22231, 22237, - 22241, 22261, 22251, 22265, 22271, 22276, 22282, 22281, 22300, 24079, 24089, 24084, 24081, 24113, 24123, 24124, - 37189, 37191, 37192, 37201, 37203, 37204, 37205, 37206, 37208, 37209, 37211, 37212, 37215, 37216, 37222, 37223, - 37224, 37227, 37229, 37235, 37242, 37243, 37244, 37248, 37249, 37250, 37251, 37252, 37254, 37256, 37258, 37262, - 37263, 37267, 37268, 37269, 37270, 37271, 37272, 37273, 37276, 37277, 37278, 37279, 37280, 37281, 37284, 37285, - 37286, 37287, 37288, 37289, 37291, 37292, 37296, 37297, 37298, 37299, 37302, 37303, 37304, 37305, 37307, 37308, - 37309, 37310, 37311, 37312, 37313, 37314, 37315, 37316, 37317, 37318, 37320, 37323, 37328, 37330, 37331, 37332, - 37333, 37334, 37335, 37336, 37337, 37338, 37339, 37341, 37342, 37343, 37344, 37345, 37346, 37347, 37348, 37349, - 24119, 24132, 24148, 24155, 24158, 24161, 23692, 23674, 23693, 23696, 23702, 23688, 23704, 23705, 23697, 23706, - 23708, 23733, 23714, 23741, 23724, 23723, 23729, 23715, 23745, 23735, 23748, 23762, 23780, 23755, 23781, 23810, - 23811, 23847, 23846, 23854, 23844, 23838, 23814, 23835, 23896, 23870, 23860, 23869, 23916, 23899, 23919, 23901, - 23915, 23883, 23882, 23913, 23924, 23938, 23961, 23965, 35955, 23991, 24005, 24435, 24439, 24450, 24455, 24457, - 24460, 24469, 24473, 24476, 24488, 24493, 24501, 24508, 34914, 24417, 29357, 29360, 29364, 29367, 29368, 29379, - 29377, 29390, 29389, 29394, 29416, 29423, 29417, 29426, 29428, 29431, 29441, 29427, 29443, 29434, 37350, 37351, - 37352, 37353, 37354, 37355, 37356, 37357, 37358, 37359, 37360, 37361, 37362, 37363, 37364, 37365, 37366, 37367, - 37368, 37369, 37370, 37371, 37372, 37373, 37374, 37375, 37376, 37377, 37378, 37379, 37380, 37381, 37382, 37383, - 37384, 37385, 37386, 37387, 37388, 37389, 37390, 37391, 37392, 37393, 37394, 37395, 37396, 37397, 37398, 37399, - 37400, 37401, 37402, 37403, 37404, 37405, 37406, 37407, 37408, 37409, 37410, 37411, 37412, 37413, 37414, 37415, - 37416, 37417, 37418, 37419, 37420, 37421, 37422, 37423, 37424, 37425, 37426, 37427, 37428, 37429, 37430, 37431, - 37432, 37433, 37434, 37435, 37436, 37437, 37438, 37439, 37440, 37441, 37442, 37443, 37444, 37445, 29435, 29463, - 29459, 29473, 29450, 29470, 29469, 29461, 29474, 29497, 29477, 29484, 29496, 29489, 29520, 29517, 29527, 29536, - 29548, 29551, 29566, 33307, 22821, 39143, 22820, 22786, 39267, 39271, 39272, 39273, 39274, 39275, 39276, 39284, - 39287, 39293, 39296, 39300, 39303, 39306, 39309, 39312, 39313, 39315, 39316, 39317, 24192, 24209, 24203, 24214, - 24229, 24224, 24249, 24245, 24254, 24243, 36179, 24274, 24273, 24283, 24296, 24298, 33210, 24516, 24521, 24534, - 24527, 24579, 24558, 24580, 24545, 24548, 24574, 24581, 24582, 24554, 24557, 24568, 24601, 24629, 24614, 24603, - 24591, 24589, 24617, 24619, 24586, 24639, 24609, 24696, 24697, 24699, 24698, 24642, 37446, 37447, 37448, 37449, - 37450, 37451, 37452, 37453, 37454, 37455, 37456, 37457, 37458, 37459, 37460, 37461, 37462, 37463, 37464, 37465, - 37466, 37467, 37468, 37469, 37470, 37471, 37472, 37473, 37474, 37475, 37476, 37477, 37478, 37479, 37480, 37481, - 37482, 37483, 37484, 37485, 37486, 37487, 37488, 37489, 37490, 37491, 37493, 37494, 37495, 37496, 37497, 37498, - 37499, 37500, 37501, 37502, 37503, 37504, 37505, 37506, 37507, 37508, 37509, 37510, 37511, 37512, 37513, 37514, - 37515, 37516, 37517, 37519, 37520, 37521, 37522, 37523, 37524, 37525, 37526, 37527, 37528, 37529, 37530, 37531, - 37532, 37533, 37534, 37535, 37536, 37537, 37538, 37539, 37540, 37541, 37542, 37543, 24682, 24701, 24726, 24730, - 24749, 24733, 24707, 24722, 24716, 24731, 24812, 24763, 24753, 24797, 24792, 24774, 24794, 24756, 24864, 24870, - 24853, 24867, 24820, 24832, 24846, 24875, 24906, 24949, 25004, 24980, 24999, 25015, 25044, 25077, 24541, 38579, - 38377, 38379, 38385, 38387, 38389, 38390, 38396, 38398, 38403, 38404, 38406, 38408, 38410, 38411, 38412, 38413, - 38415, 38418, 38421, 38422, 38423, 38425, 38426, 20012, 29247, 25109, 27701, 27732, 27740, 27722, 27811, 27781, - 27792, 27796, 27788, 27752, 27753, 27764, 27766, 27782, 27817, 27856, 27860, 27821, 27895, 27896, 27889, 27863, - 27826, 27872, 27862, 27898, 27883, 27886, 27825, 27859, 27887, 27902, 37544, 37545, 37546, 37547, 37548, 37549, - 37551, 37552, 37553, 37554, 37555, 37556, 37557, 37558, 37559, 37560, 37561, 37562, 37563, 37564, 37565, 37566, - 37567, 37568, 37569, 37570, 37571, 37572, 37573, 37574, 37575, 37577, 37578, 37579, 37580, 37581, 37582, 37583, - 37584, 37585, 37586, 37587, 37588, 37589, 37590, 37591, 37592, 37593, 37594, 37595, 37596, 37597, 37598, 37599, - 37600, 37601, 37602, 37603, 37604, 37605, 37606, 37607, 37608, 37609, 37610, 37611, 37612, 37613, 37614, 37615, - 37616, 37617, 37618, 37619, 37620, 37621, 37622, 37623, 37624, 37625, 37626, 37627, 37628, 37629, 37630, 37631, - 37632, 37633, 37634, 37635, 37636, 37637, 37638, 37639, 37640, 37641, 27961, 27943, 27916, 27971, 27976, 27911, - 27908, 27929, 27918, 27947, 27981, 27950, 27957, 27930, 27983, 27986, 27988, 27955, 28049, 28015, 28062, 28064, - 27998, 28051, 28052, 27996, 28000, 28028, 28003, 28186, 28103, 28101, 28126, 28174, 28095, 28128, 28177, 28134, - 28125, 28121, 28182, 28075, 28172, 28078, 28203, 28270, 28238, 28267, 28338, 28255, 28294, 28243, 28244, 28210, - 28197, 28228, 28383, 28337, 28312, 28384, 28461, 28386, 28325, 28327, 28349, 28347, 28343, 28375, 28340, 28367, - 28303, 28354, 28319, 28514, 28486, 28487, 28452, 28437, 28409, 28463, 28470, 28491, 28532, 28458, 28425, 28457, - 28553, 28557, 28556, 28536, 28530, 28540, 28538, 28625, 37642, 37643, 37644, 37645, 37646, 37647, 37648, 37649, - 37650, 37651, 37652, 37653, 37654, 37655, 37656, 37657, 37658, 37659, 37660, 37661, 37662, 37663, 37664, 37665, - 37666, 37667, 37668, 37669, 37670, 37671, 37672, 37673, 37674, 37675, 37676, 37677, 37678, 37679, 37680, 37681, - 37682, 37683, 37684, 37685, 37686, 37687, 37688, 37689, 37690, 37691, 37692, 37693, 37695, 37696, 37697, 37698, - 37699, 37700, 37701, 37702, 37703, 37704, 37705, 37706, 37707, 37708, 37709, 37710, 37711, 37712, 37713, 37714, - 37715, 37716, 37717, 37718, 37719, 37720, 37721, 37722, 37723, 37724, 37725, 37726, 37727, 37728, 37729, 37730, - 37731, 37732, 37733, 37734, 37735, 37736, 37737, 37739, 28617, 28583, 28601, 28598, 28610, 28641, 28654, 28638, - 28640, 28655, 28698, 28707, 28699, 28729, 28725, 28751, 28766, 23424, 23428, 23445, 23443, 23461, 23480, 29999, - 39582, 25652, 23524, 23534, 35120, 23536, 36423, 35591, 36790, 36819, 36821, 36837, 36846, 36836, 36841, 36838, - 36851, 36840, 36869, 36868, 36875, 36902, 36881, 36877, 36886, 36897, 36917, 36918, 36909, 36911, 36932, 36945, - 36946, 36944, 36968, 36952, 36962, 36955, 26297, 36980, 36989, 36994, 37000, 36995, 37003, 24400, 24407, 24406, - 24408, 23611, 21675, 23632, 23641, 23409, 23651, 23654, 32700, 24362, 24361, 24365, 33396, 24380, 39739, 23662, - 22913, 22915, 22925, 22953, 22954, 22947, 37740, 37741, 37742, 37743, 37744, 37745, 37746, 37747, 37748, 37749, - 37750, 37751, 37752, 37753, 37754, 37755, 37756, 37757, 37758, 37759, 37760, 37761, 37762, 37763, 37764, 37765, - 37766, 37767, 37768, 37769, 37770, 37771, 37772, 37773, 37774, 37776, 37777, 37778, 37779, 37780, 37781, 37782, - 37783, 37784, 37785, 37786, 37787, 37788, 37789, 37790, 37791, 37792, 37793, 37794, 37795, 37796, 37797, 37798, - 37799, 37800, 37801, 37802, 37803, 37804, 37805, 37806, 37807, 37808, 37809, 37810, 37811, 37812, 37813, 37814, - 37815, 37816, 37817, 37818, 37819, 37820, 37821, 37822, 37823, 37824, 37825, 37826, 37827, 37828, 37829, 37830, - 37831, 37832, 37833, 37835, 37836, 37837, 22935, 22986, 22955, 22942, 22948, 22994, 22962, 22959, 22999, 22974, - 23045, 23046, 23005, 23048, 23011, 23000, 23033, 23052, 23049, 23090, 23092, 23057, 23075, 23059, 23104, 23143, - 23114, 23125, 23100, 23138, 23157, 33004, 23210, 23195, 23159, 23162, 23230, 23275, 23218, 23250, 23252, 23224, - 23264, 23267, 23281, 23254, 23270, 23256, 23260, 23305, 23319, 23318, 23346, 23351, 23360, 23573, 23580, 23386, - 23397, 23411, 23377, 23379, 23394, 39541, 39543, 39544, 39546, 39551, 39549, 39552, 39553, 39557, 39560, 39562, - 39568, 39570, 39571, 39574, 39576, 39579, 39580, 39581, 39583, 39584, 39586, 39587, 39589, 39591, 32415, 32417, - 32419, 32421, 32424, 32425, 37838, 37839, 37840, 37841, 37842, 37843, 37844, 37845, 37847, 37848, 37849, 37850, - 37851, 37852, 37853, 37854, 37855, 37856, 37857, 37858, 37859, 37860, 37861, 37862, 37863, 37864, 37865, 37866, - 37867, 37868, 37869, 37870, 37871, 37872, 37873, 37874, 37875, 37876, 37877, 37878, 37879, 37880, 37881, 37882, - 37883, 37884, 37885, 37886, 37887, 37888, 37889, 37890, 37891, 37892, 37893, 37894, 37895, 37896, 37897, 37898, - 37899, 37900, 37901, 37902, 37903, 37904, 37905, 37906, 37907, 37908, 37909, 37910, 37911, 37912, 37913, 37914, - 37915, 37916, 37917, 37918, 37919, 37920, 37921, 37922, 37923, 37924, 37925, 37926, 37927, 37928, 37929, 37930, - 37931, 37932, 37933, 37934, 32429, 32432, 32446, 32448, 32449, 32450, 32457, 32459, 32460, 32464, 32468, 32471, - 32475, 32480, 32481, 32488, 32491, 32494, 32495, 32497, 32498, 32525, 32502, 32506, 32507, 32510, 32513, 32514, - 32515, 32519, 32520, 32523, 32524, 32527, 32529, 32530, 32535, 32537, 32540, 32539, 32543, 32545, 32546, 32547, - 32548, 32549, 32550, 32551, 32554, 32555, 32556, 32557, 32559, 32560, 32561, 32562, 32563, 32565, 24186, 30079, - 24027, 30014, 37013, 29582, 29585, 29614, 29602, 29599, 29647, 29634, 29649, 29623, 29619, 29632, 29641, 29640, - 29669, 29657, 39036, 29706, 29673, 29671, 29662, 29626, 29682, 29711, 29738, 29787, 29734, 29733, 29736, 29744, - 29742, 29740, 37935, 37936, 37937, 37938, 37939, 37940, 37941, 37942, 37943, 37944, 37945, 37946, 37947, 37948, - 37949, 37951, 37952, 37953, 37954, 37955, 37956, 37957, 37958, 37959, 37960, 37961, 37962, 37963, 37964, 37965, - 37966, 37967, 37968, 37969, 37970, 37971, 37972, 37973, 37974, 37975, 37976, 37977, 37978, 37979, 37980, 37981, - 37982, 37983, 37984, 37985, 37986, 37987, 37988, 37989, 37990, 37991, 37992, 37993, 37994, 37996, 37997, 37998, - 37999, 38000, 38001, 38002, 38003, 38004, 38005, 38006, 38007, 38008, 38009, 38010, 38011, 38012, 38013, 38014, - 38015, 38016, 38017, 38018, 38019, 38020, 38033, 38038, 38040, 38087, 38095, 38099, 38100, 38106, 38118, 38139, - 38172, 38176, 29723, 29722, 29761, 29788, 29783, 29781, 29785, 29815, 29805, 29822, 29852, 29838, 29824, 29825, - 29831, 29835, 29854, 29864, 29865, 29840, 29863, 29906, 29882, 38890, 38891, 38892, 26444, 26451, 26462, 26440, - 26473, 26533, 26503, 26474, 26483, 26520, 26535, 26485, 26536, 26526, 26541, 26507, 26487, 26492, 26608, 26633, - 26584, 26634, 26601, 26544, 26636, 26585, 26549, 26586, 26547, 26589, 26624, 26563, 26552, 26594, 26638, 26561, - 26621, 26674, 26675, 26720, 26721, 26702, 26722, 26692, 26724, 26755, 26653, 26709, 26726, 26689, 26727, 26688, - 26686, 26698, 26697, 26665, 26805, 26767, 26740, 26743, 26771, 26731, 26818, 26990, 26876, 26911, 26912, 26873, - 38183, 38195, 38205, 38211, 38216, 38219, 38229, 38234, 38240, 38254, 38260, 38261, 38263, 38264, 38265, 38266, - 38267, 38268, 38269, 38270, 38272, 38273, 38274, 38275, 38276, 38277, 38278, 38279, 38280, 38281, 38282, 38283, - 38284, 38285, 38286, 38287, 38288, 38289, 38290, 38291, 38292, 38293, 38294, 38295, 38296, 38297, 38298, 38299, - 38300, 38301, 38302, 38303, 38304, 38305, 38306, 38307, 38308, 38309, 38310, 38311, 38312, 38313, 38314, 38315, - 38316, 38317, 38318, 38319, 38320, 38321, 38322, 38323, 38324, 38325, 38326, 38327, 38328, 38329, 38330, 38331, - 38332, 38333, 38334, 38335, 38336, 38337, 38338, 38339, 38340, 38341, 38342, 38343, 38344, 38345, 38346, 38347, - 26916, 26864, 26891, 26881, 26967, 26851, 26896, 26993, 26937, 26976, 26946, 26973, 27012, 26987, 27008, 27032, - 27000, 26932, 27084, 27015, 27016, 27086, 27017, 26982, 26979, 27001, 27035, 27047, 27067, 27051, 27053, 27092, - 27057, 27073, 27082, 27103, 27029, 27104, 27021, 27135, 27183, 27117, 27159, 27160, 27237, 27122, 27204, 27198, - 27296, 27216, 27227, 27189, 27278, 27257, 27197, 27176, 27224, 27260, 27281, 27280, 27305, 27287, 27307, 29495, - 29522, 27521, 27522, 27527, 27524, 27538, 27539, 27533, 27546, 27547, 27553, 27562, 36715, 36717, 36721, 36722, - 36723, 36725, 36726, 36728, 36727, 36729, 36730, 36732, 36734, 36737, 36738, 36740, 36743, 36747, 38348, 38349, - 38350, 38351, 38352, 38353, 38354, 38355, 38356, 38357, 38358, 38359, 38360, 38361, 38362, 38363, 38364, 38365, - 38366, 38367, 38368, 38369, 38370, 38371, 38372, 38373, 38374, 38375, 38380, 38399, 38407, 38419, 38424, 38427, - 38430, 38432, 38435, 38436, 38437, 38438, 38439, 38440, 38441, 38443, 38444, 38445, 38447, 38448, 38455, 38456, - 38457, 38458, 38462, 38465, 38467, 38474, 38478, 38479, 38481, 38482, 38483, 38486, 38487, 38488, 38489, 38490, - 38492, 38493, 38494, 38496, 38499, 38501, 38502, 38507, 38509, 38510, 38511, 38512, 38513, 38515, 38520, 38521, - 38522, 38523, 38524, 38525, 38526, 38527, 38528, 38529, 38530, 38531, 38532, 38535, 38537, 38538, 36749, 36750, - 36751, 36760, 36762, 36558, 25099, 25111, 25115, 25119, 25122, 25121, 25125, 25124, 25132, 33255, 29935, 29940, - 29951, 29967, 29969, 29971, 25908, 26094, 26095, 26096, 26122, 26137, 26482, 26115, 26133, 26112, 28805, 26359, - 26141, 26164, 26161, 26166, 26165, 32774, 26207, 26196, 26177, 26191, 26198, 26209, 26199, 26231, 26244, 26252, - 26279, 26269, 26302, 26331, 26332, 26342, 26345, 36146, 36147, 36150, 36155, 36157, 36160, 36165, 36166, 36168, - 36169, 36167, 36173, 36181, 36185, 35271, 35274, 35275, 35276, 35278, 35279, 35280, 35281, 29294, 29343, 29277, - 29286, 29295, 29310, 29311, 29316, 29323, 29325, 29327, 29330, 25352, 25394, 25520, 38540, 38542, 38545, 38546, - 38547, 38549, 38550, 38554, 38555, 38557, 38558, 38559, 38560, 38561, 38562, 38563, 38564, 38565, 38566, 38568, - 38569, 38570, 38571, 38572, 38573, 38574, 38575, 38577, 38578, 38580, 38581, 38583, 38584, 38586, 38587, 38591, - 38594, 38595, 38600, 38602, 38603, 38608, 38609, 38611, 38612, 38614, 38615, 38616, 38617, 38618, 38619, 38620, - 38621, 38622, 38623, 38625, 38626, 38627, 38628, 38629, 38630, 38631, 38635, 38636, 38637, 38638, 38640, 38641, - 38642, 38644, 38645, 38648, 38650, 38651, 38652, 38653, 38655, 38658, 38659, 38661, 38666, 38667, 38668, 38672, - 38673, 38674, 38676, 38677, 38679, 38680, 38681, 38682, 38683, 38685, 38687, 38688, 25663, 25816, 32772, 27626, - 27635, 27645, 27637, 27641, 27653, 27655, 27654, 27661, 27669, 27672, 27673, 27674, 27681, 27689, 27684, 27690, - 27698, 25909, 25941, 25963, 29261, 29266, 29270, 29232, 34402, 21014, 32927, 32924, 32915, 32956, 26378, 32957, - 32945, 32939, 32941, 32948, 32951, 32999, 33000, 33001, 33002, 32987, 32962, 32964, 32985, 32973, 32983, 26384, - 32989, 33003, 33009, 33012, 33005, 33037, 33038, 33010, 33020, 26389, 33042, 35930, 33078, 33054, 33068, 33048, - 33074, 33096, 33100, 33107, 33140, 33113, 33114, 33137, 33120, 33129, 33148, 33149, 33133, 33127, 22605, 23221, - 33160, 33154, 33169, 28373, 33187, 33194, 33228, 26406, 33226, 33211, 38689, 38690, 38691, 38692, 38693, 38694, - 38695, 38696, 38697, 38699, 38700, 38702, 38703, 38705, 38707, 38708, 38709, 38710, 38711, 38714, 38715, 38716, - 38717, 38719, 38720, 38721, 38722, 38723, 38724, 38725, 38726, 38727, 38728, 38729, 38730, 38731, 38732, 38733, - 38734, 38735, 38736, 38737, 38740, 38741, 38743, 38744, 38746, 38748, 38749, 38751, 38755, 38756, 38758, 38759, - 38760, 38762, 38763, 38764, 38765, 38766, 38767, 38768, 38769, 38770, 38773, 38775, 38776, 38777, 38778, 38779, - 38781, 38782, 38783, 38784, 38785, 38786, 38787, 38788, 38790, 38791, 38792, 38793, 38794, 38796, 38798, 38799, - 38800, 38803, 38805, 38806, 38807, 38809, 38810, 38811, 38812, 38813, 33217, 33190, 27428, 27447, 27449, 27459, - 27462, 27481, 39121, 39122, 39123, 39125, 39129, 39130, 27571, 24384, 27586, 35315, 26000, 40785, 26003, 26044, - 26054, 26052, 26051, 26060, 26062, 26066, 26070, 28800, 28828, 28822, 28829, 28859, 28864, 28855, 28843, 28849, - 28904, 28874, 28944, 28947, 28950, 28975, 28977, 29043, 29020, 29032, 28997, 29042, 29002, 29048, 29050, 29080, - 29107, 29109, 29096, 29088, 29152, 29140, 29159, 29177, 29213, 29224, 28780, 28952, 29030, 29113, 25150, 25149, - 25155, 25160, 25161, 31035, 31040, 31046, 31049, 31067, 31068, 31059, 31066, 31074, 31063, 31072, 31087, 31079, - 31098, 31109, 31114, 31130, 31143, 31155, 24529, 24528, 38814, 38815, 38817, 38818, 38820, 38821, 38822, 38823, - 38824, 38825, 38826, 38828, 38830, 38832, 38833, 38835, 38837, 38838, 38839, 38840, 38841, 38842, 38843, 38844, - 38845, 38846, 38847, 38848, 38849, 38850, 38851, 38852, 38853, 38854, 38855, 38856, 38857, 38858, 38859, 38860, - 38861, 38862, 38863, 38864, 38865, 38866, 38867, 38868, 38869, 38870, 38871, 38872, 38873, 38874, 38875, 38876, - 38877, 38878, 38879, 38880, 38881, 38882, 38883, 38884, 38885, 38888, 38894, 38895, 38896, 38897, 38898, 38900, - 38903, 38904, 38905, 38906, 38907, 38908, 38909, 38910, 38911, 38912, 38913, 38914, 38915, 38916, 38917, 38918, - 38919, 38920, 38921, 38922, 38923, 38924, 38925, 38926, 24636, 24669, 24666, 24679, 24641, 24665, 24675, 24747, - 24838, 24845, 24925, 25001, 24989, 25035, 25041, 25094, 32896, 32895, 27795, 27894, 28156, 30710, 30712, 30720, - 30729, 30743, 30744, 30737, 26027, 30765, 30748, 30749, 30777, 30778, 30779, 30751, 30780, 30757, 30764, 30755, - 30761, 30798, 30829, 30806, 30807, 30758, 30800, 30791, 30796, 30826, 30875, 30867, 30874, 30855, 30876, 30881, - 30883, 30898, 30905, 30885, 30932, 30937, 30921, 30956, 30962, 30981, 30964, 30995, 31012, 31006, 31028, 40859, - 40697, 40699, 40700, 30449, 30468, 30477, 30457, 30471, 30472, 30490, 30498, 30489, 30509, 30502, 30517, 30520, - 30544, 30545, 30535, 30531, 30554, 30568, 38927, 38928, 38929, 38930, 38931, 38932, 38933, 38934, 38935, 38936, - 38937, 38938, 38939, 38940, 38941, 38942, 38943, 38944, 38945, 38946, 38947, 38948, 38949, 38950, 38951, 38952, - 38953, 38954, 38955, 38956, 38957, 38958, 38959, 38960, 38961, 38962, 38963, 38964, 38965, 38966, 38967, 38968, - 38969, 38970, 38971, 38972, 38973, 38974, 38975, 38976, 38977, 38978, 38979, 38980, 38981, 38982, 38983, 38984, - 38985, 38986, 38987, 38988, 38989, 38990, 38991, 38992, 38993, 38994, 38995, 38996, 38997, 38998, 38999, 39000, - 39001, 39002, 39003, 39004, 39005, 39006, 39007, 39008, 39009, 39010, 39011, 39012, 39013, 39014, 39015, 39016, - 39017, 39018, 39019, 39020, 39021, 39022, 30562, 30565, 30591, 30605, 30589, 30592, 30604, 30609, 30623, 30624, - 30640, 30645, 30653, 30010, 30016, 30030, 30027, 30024, 30043, 30066, 30073, 30083, 32600, 32609, 32607, 35400, - 32616, 32628, 32625, 32633, 32641, 32638, 30413, 30437, 34866, 38021, 38022, 38023, 38027, 38026, 38028, 38029, - 38031, 38032, 38036, 38039, 38037, 38042, 38043, 38044, 38051, 38052, 38059, 38058, 38061, 38060, 38063, 38064, - 38066, 38068, 38070, 38071, 38072, 38073, 38074, 38076, 38077, 38079, 38084, 38088, 38089, 38090, 38091, 38092, - 38093, 38094, 38096, 38097, 38098, 38101, 38102, 38103, 38105, 38104, 38107, 38110, 38111, 38112, 38114, 38116, - 38117, 38119, 38120, 38122, 39023, 39024, 39025, 39026, 39027, 39028, 39051, 39054, 39058, 39061, 39065, 39075, - 39080, 39081, 39082, 39083, 39084, 39085, 39086, 39087, 39088, 39089, 39090, 39091, 39092, 39093, 39094, 39095, - 39096, 39097, 39098, 39099, 39100, 39101, 39102, 39103, 39104, 39105, 39106, 39107, 39108, 39109, 39110, 39111, - 39112, 39113, 39114, 39115, 39116, 39117, 39119, 39120, 39124, 39126, 39127, 39131, 39132, 39133, 39136, 39137, - 39138, 39139, 39140, 39141, 39142, 39145, 39146, 39147, 39148, 39149, 39150, 39151, 39152, 39153, 39154, 39155, - 39156, 39157, 39158, 39159, 39160, 39161, 39162, 39163, 39164, 39165, 39166, 39167, 39168, 39169, 39170, 39171, - 39172, 39173, 39174, 39175, 38121, 38123, 38126, 38127, 38131, 38132, 38133, 38135, 38137, 38140, 38141, 38143, - 38147, 38146, 38150, 38151, 38153, 38154, 38157, 38158, 38159, 38162, 38163, 38164, 38165, 38166, 38168, 38171, - 38173, 38174, 38175, 38178, 38186, 38187, 38185, 38188, 38193, 38194, 38196, 38198, 38199, 38200, 38204, 38206, - 38207, 38210, 38197, 38212, 38213, 38214, 38217, 38220, 38222, 38223, 38226, 38227, 38228, 38230, 38231, 38232, - 38233, 38235, 38238, 38239, 38237, 38241, 38242, 38244, 38245, 38246, 38247, 38248, 38249, 38250, 38251, 38252, - 38255, 38257, 38258, 38259, 38202, 30695, 30700, 38601, 31189, 31213, 31203, 31211, 31238, 23879, 31235, 31234, - 31262, 31252, 39176, 39177, 39178, 39179, 39180, 39182, 39183, 39185, 39186, 39187, 39188, 39189, 39190, 39191, - 39192, 39193, 39194, 39195, 39196, 39197, 39198, 39199, 39200, 39201, 39202, 39203, 39204, 39205, 39206, 39207, - 39208, 39209, 39210, 39211, 39212, 39213, 39215, 39216, 39217, 39218, 39219, 39220, 39221, 39222, 39223, 39224, - 39225, 39226, 39227, 39228, 39229, 39230, 39231, 39232, 39233, 39234, 39235, 39236, 39237, 39238, 39239, 39240, - 39241, 39242, 39243, 39244, 39245, 39246, 39247, 39248, 39249, 39250, 39251, 39254, 39255, 39256, 39257, 39258, - 39259, 39260, 39261, 39262, 39263, 39264, 39265, 39266, 39268, 39270, 39283, 39288, 39289, 39291, 39294, 39298, - 39299, 39305, 31289, 31287, 31313, 40655, 39333, 31344, 30344, 30350, 30355, 30361, 30372, 29918, 29920, 29996, - 40480, 40482, 40488, 40489, 40490, 40491, 40492, 40498, 40497, 40502, 40504, 40503, 40505, 40506, 40510, 40513, - 40514, 40516, 40518, 40519, 40520, 40521, 40523, 40524, 40526, 40529, 40533, 40535, 40538, 40539, 40540, 40542, - 40547, 40550, 40551, 40552, 40553, 40554, 40555, 40556, 40561, 40557, 40563, 30098, 30100, 30102, 30112, 30109, - 30124, 30115, 30131, 30132, 30136, 30148, 30129, 30128, 30147, 30146, 30166, 30157, 30179, 30184, 30182, 30180, - 30187, 30183, 30211, 30193, 30204, 30207, 30224, 30208, 30213, 30220, 30231, 30218, 30245, 30232, 30229, 30233, - 39308, 39310, 39322, 39323, 39324, 39325, 39326, 39327, 39328, 39329, 39330, 39331, 39332, 39334, 39335, 39337, - 39338, 39339, 39340, 39341, 39342, 39343, 39344, 39345, 39346, 39347, 39348, 39349, 39350, 39351, 39352, 39353, - 39354, 39355, 39356, 39357, 39358, 39359, 39360, 39361, 39362, 39363, 39364, 39365, 39366, 39367, 39368, 39369, - 39370, 39371, 39372, 39373, 39374, 39375, 39376, 39377, 39378, 39379, 39380, 39381, 39382, 39383, 39384, 39385, - 39386, 39387, 39388, 39389, 39390, 39391, 39392, 39393, 39394, 39395, 39396, 39397, 39398, 39399, 39400, 39401, - 39402, 39403, 39404, 39405, 39406, 39407, 39408, 39409, 39410, 39411, 39412, 39413, 39414, 39415, 39416, 39417, - 30235, 30268, 30242, 30240, 30272, 30253, 30256, 30271, 30261, 30275, 30270, 30259, 30285, 30302, 30292, 30300, - 30294, 30315, 30319, 32714, 31462, 31352, 31353, 31360, 31366, 31368, 31381, 31398, 31392, 31404, 31400, 31405, - 31411, 34916, 34921, 34930, 34941, 34943, 34946, 34978, 35014, 34999, 35004, 35017, 35042, 35022, 35043, 35045, - 35057, 35098, 35068, 35048, 35070, 35056, 35105, 35097, 35091, 35099, 35082, 35124, 35115, 35126, 35137, 35174, - 35195, 30091, 32997, 30386, 30388, 30684, 32786, 32788, 32790, 32796, 32800, 32802, 32805, 32806, 32807, 32809, - 32808, 32817, 32779, 32821, 32835, 32838, 32845, 32850, 32873, 32881, 35203, 39032, 39040, 39043, 39418, 39419, - 39420, 39421, 39422, 39423, 39424, 39425, 39426, 39427, 39428, 39429, 39430, 39431, 39432, 39433, 39434, 39435, - 39436, 39437, 39438, 39439, 39440, 39441, 39442, 39443, 39444, 39445, 39446, 39447, 39448, 39449, 39450, 39451, - 39452, 39453, 39454, 39455, 39456, 39457, 39458, 39459, 39460, 39461, 39462, 39463, 39464, 39465, 39466, 39467, - 39468, 39469, 39470, 39471, 39472, 39473, 39474, 39475, 39476, 39477, 39478, 39479, 39480, 39481, 39482, 39483, - 39484, 39485, 39486, 39487, 39488, 39489, 39490, 39491, 39492, 39493, 39494, 39495, 39496, 39497, 39498, 39499, - 39500, 39501, 39502, 39503, 39504, 39505, 39506, 39507, 39508, 39509, 39510, 39511, 39512, 39513, 39049, 39052, - 39053, 39055, 39060, 39066, 39067, 39070, 39071, 39073, 39074, 39077, 39078, 34381, 34388, 34412, 34414, 34431, - 34426, 34428, 34427, 34472, 34445, 34443, 34476, 34461, 34471, 34467, 34474, 34451, 34473, 34486, 34500, 34485, - 34510, 34480, 34490, 34481, 34479, 34505, 34511, 34484, 34537, 34545, 34546, 34541, 34547, 34512, 34579, 34526, - 34548, 34527, 34520, 34513, 34563, 34567, 34552, 34568, 34570, 34573, 34569, 34595, 34619, 34590, 34597, 34606, - 34586, 34622, 34632, 34612, 34609, 34601, 34615, 34623, 34690, 34594, 34685, 34686, 34683, 34656, 34672, 34636, - 34670, 34699, 34643, 34659, 34684, 34660, 34649, 34661, 34707, 34735, 34728, 34770, 39514, 39515, 39516, 39517, - 39518, 39519, 39520, 39521, 39522, 39523, 39524, 39525, 39526, 39527, 39528, 39529, 39530, 39531, 39538, 39555, - 39561, 39565, 39566, 39572, 39573, 39577, 39590, 39593, 39594, 39595, 39596, 39597, 39598, 39599, 39602, 39603, - 39604, 39605, 39609, 39611, 39613, 39614, 39615, 39619, 39620, 39622, 39623, 39624, 39625, 39626, 39629, 39630, - 39631, 39632, 39634, 39636, 39637, 39638, 39639, 39641, 39642, 39643, 39644, 39645, 39646, 39648, 39650, 39651, - 39652, 39653, 39655, 39656, 39657, 39658, 39660, 39662, 39664, 39665, 39666, 39667, 39668, 39669, 39670, 39671, - 39672, 39674, 39676, 39677, 39678, 39679, 39680, 39681, 39682, 39684, 39685, 39686, 34758, 34696, 34693, 34733, - 34711, 34691, 34731, 34789, 34732, 34741, 34739, 34763, 34771, 34749, 34769, 34752, 34762, 34779, 34794, 34784, - 34798, 34838, 34835, 34814, 34826, 34843, 34849, 34873, 34876, 32566, 32578, 32580, 32581, 33296, 31482, 31485, - 31496, 31491, 31492, 31509, 31498, 31531, 31503, 31559, 31544, 31530, 31513, 31534, 31537, 31520, 31525, 31524, - 31539, 31550, 31518, 31576, 31578, 31557, 31605, 31564, 31581, 31584, 31598, 31611, 31586, 31602, 31601, 31632, - 31654, 31655, 31672, 31660, 31645, 31656, 31621, 31658, 31644, 31650, 31659, 31668, 31697, 31681, 31692, 31709, - 31706, 31717, 31718, 31722, 31756, 31742, 31740, 31759, 31766, 31755, 39687, 39689, 39690, 39691, 39692, 39693, - 39694, 39696, 39697, 39698, 39700, 39701, 39702, 39703, 39704, 39705, 39706, 39707, 39708, 39709, 39710, 39712, - 39713, 39714, 39716, 39717, 39718, 39719, 39720, 39721, 39722, 39723, 39724, 39725, 39726, 39728, 39729, 39731, - 39732, 39733, 39734, 39735, 39736, 39737, 39738, 39741, 39742, 39743, 39744, 39750, 39754, 39755, 39756, 39758, - 39760, 39762, 39763, 39765, 39766, 39767, 39768, 39769, 39770, 39771, 39772, 39773, 39774, 39775, 39776, 39777, - 39778, 39779, 39780, 39781, 39782, 39783, 39784, 39785, 39786, 39787, 39788, 39789, 39790, 39791, 39792, 39793, - 39794, 39795, 39796, 39797, 39798, 39799, 39800, 39801, 39802, 39803, 31775, 31786, 31782, 31800, 31809, 31808, - 33278, 33281, 33282, 33284, 33260, 34884, 33313, 33314, 33315, 33325, 33327, 33320, 33323, 33336, 33339, 33331, - 33332, 33342, 33348, 33353, 33355, 33359, 33370, 33375, 33384, 34942, 34949, 34952, 35032, 35039, 35166, 32669, - 32671, 32679, 32687, 32688, 32690, 31868, 25929, 31889, 31901, 31900, 31902, 31906, 31922, 31932, 31933, 31937, - 31943, 31948, 31949, 31944, 31941, 31959, 31976, 33390, 26280, 32703, 32718, 32725, 32741, 32737, 32742, 32745, - 32750, 32755, 31992, 32119, 32166, 32174, 32327, 32411, 40632, 40628, 36211, 36228, 36244, 36241, 36273, 36199, - 36205, 35911, 35913, 37194, 37200, 37198, 37199, 37220, 39804, 39805, 39806, 39807, 39808, 39809, 39810, 39811, - 39812, 39813, 39814, 39815, 39816, 39817, 39818, 39819, 39820, 39821, 39822, 39823, 39824, 39825, 39826, 39827, - 39828, 39829, 39830, 39831, 39832, 39833, 39834, 39835, 39836, 39837, 39838, 39839, 39840, 39841, 39842, 39843, - 39844, 39845, 39846, 39847, 39848, 39849, 39850, 39851, 39852, 39853, 39854, 39855, 39856, 39857, 39858, 39859, - 39860, 39861, 39862, 39863, 39864, 39865, 39866, 39867, 39868, 39869, 39870, 39871, 39872, 39873, 39874, 39875, - 39876, 39877, 39878, 39879, 39880, 39881, 39882, 39883, 39884, 39885, 39886, 39887, 39888, 39889, 39890, 39891, - 39892, 39893, 39894, 39895, 39896, 39897, 39898, 39899, 37218, 37217, 37232, 37225, 37231, 37245, 37246, 37234, - 37236, 37241, 37260, 37253, 37264, 37261, 37265, 37282, 37283, 37290, 37293, 37294, 37295, 37301, 37300, 37306, - 35925, 40574, 36280, 36331, 36357, 36441, 36457, 36277, 36287, 36284, 36282, 36292, 36310, 36311, 36314, 36318, - 36302, 36303, 36315, 36294, 36332, 36343, 36344, 36323, 36345, 36347, 36324, 36361, 36349, 36372, 36381, 36383, - 36396, 36398, 36387, 36399, 36410, 36416, 36409, 36405, 36413, 36401, 36425, 36417, 36418, 36433, 36434, 36426, - 36464, 36470, 36476, 36463, 36468, 36485, 36495, 36500, 36496, 36508, 36510, 35960, 35970, 35978, 35973, 35992, - 35988, 26011, 35286, 35294, 35290, 35292, 39900, 39901, 39902, 39903, 39904, 39905, 39906, 39907, 39908, 39909, - 39910, 39911, 39912, 39913, 39914, 39915, 39916, 39917, 39918, 39919, 39920, 39921, 39922, 39923, 39924, 39925, - 39926, 39927, 39928, 39929, 39930, 39931, 39932, 39933, 39934, 39935, 39936, 39937, 39938, 39939, 39940, 39941, - 39942, 39943, 39944, 39945, 39946, 39947, 39948, 39949, 39950, 39951, 39952, 39953, 39954, 39955, 39956, 39957, - 39958, 39959, 39960, 39961, 39962, 39963, 39964, 39965, 39966, 39967, 39968, 39969, 39970, 39971, 39972, 39973, - 39974, 39975, 39976, 39977, 39978, 39979, 39980, 39981, 39982, 39983, 39984, 39985, 39986, 39987, 39988, 39989, - 39990, 39991, 39992, 39993, 39994, 39995, 35301, 35307, 35311, 35390, 35622, 38739, 38633, 38643, 38639, 38662, - 38657, 38664, 38671, 38670, 38698, 38701, 38704, 38718, 40832, 40835, 40837, 40838, 40839, 40840, 40841, 40842, - 40844, 40702, 40715, 40717, 38585, 38588, 38589, 38606, 38610, 30655, 38624, 37518, 37550, 37576, 37694, 37738, - 37834, 37775, 37950, 37995, 40063, 40066, 40069, 40070, 40071, 40072, 31267, 40075, 40078, 40080, 40081, 40082, - 40084, 40085, 40090, 40091, 40094, 40095, 40096, 40097, 40098, 40099, 40101, 40102, 40103, 40104, 40105, 40107, - 40109, 40110, 40112, 40113, 40114, 40115, 40116, 40117, 40118, 40119, 40122, 40123, 40124, 40125, 40132, 40133, - 40134, 40135, 40138, 40139, 39996, 39997, 39998, 39999, 40000, 40001, 40002, 40003, 40004, 40005, 40006, 40007, - 40008, 40009, 40010, 40011, 40012, 40013, 40014, 40015, 40016, 40017, 40018, 40019, 40020, 40021, 40022, 40023, - 40024, 40025, 40026, 40027, 40028, 40029, 40030, 40031, 40032, 40033, 40034, 40035, 40036, 40037, 40038, 40039, - 40040, 40041, 40042, 40043, 40044, 40045, 40046, 40047, 40048, 40049, 40050, 40051, 40052, 40053, 40054, 40055, - 40056, 40057, 40058, 40059, 40061, 40062, 40064, 40067, 40068, 40073, 40074, 40076, 40079, 40083, 40086, 40087, - 40088, 40089, 40093, 40106, 40108, 40111, 40121, 40126, 40127, 40128, 40129, 40130, 40136, 40137, 40145, 40146, - 40154, 40155, 40160, 40161, 40140, 40141, 40142, 40143, 40144, 40147, 40148, 40149, 40151, 40152, 40153, 40156, - 40157, 40159, 40162, 38780, 38789, 38801, 38802, 38804, 38831, 38827, 38819, 38834, 38836, 39601, 39600, 39607, - 40536, 39606, 39610, 39612, 39617, 39616, 39621, 39618, 39627, 39628, 39633, 39749, 39747, 39751, 39753, 39752, - 39757, 39761, 39144, 39181, 39214, 39253, 39252, 39647, 39649, 39654, 39663, 39659, 39675, 39661, 39673, 39688, - 39695, 39699, 39711, 39715, 40637, 40638, 32315, 40578, 40583, 40584, 40587, 40594, 37846, 40605, 40607, 40667, - 40668, 40669, 40672, 40671, 40674, 40681, 40679, 40677, 40682, 40687, 40738, 40748, 40751, 40761, 40759, 40765, - 40766, 40772, 40163, 40164, 40165, 40166, 40167, 40168, 40169, 40170, 40171, 40172, 40173, 40174, 40175, 40176, - 40177, 40178, 40179, 40180, 40181, 40182, 40183, 40184, 40185, 40186, 40187, 40188, 40189, 40190, 40191, 40192, - 40193, 40194, 40195, 40196, 40197, 40198, 40199, 40200, 40201, 40202, 40203, 40204, 40205, 40206, 40207, 40208, - 40209, 40210, 40211, 40212, 40213, 40214, 40215, 40216, 40217, 40218, 40219, 40220, 40221, 40222, 40223, 40224, - 40225, 40226, 40227, 40228, 40229, 40230, 40231, 40232, 40233, 40234, 40235, 40236, 40237, 40238, 40239, 40240, - 40241, 40242, 40243, 40244, 40245, 40246, 40247, 40248, 40249, 40250, 40251, 40252, 40253, 40254, 40255, 40256, - 40257, 40258, 57908, 57909, 57910, 57911, 57912, 57913, 57914, 57915, 57916, 57917, 57918, 57919, 57920, 57921, - 57922, 57923, 57924, 57925, 57926, 57927, 57928, 57929, 57930, 57931, 57932, 57933, 57934, 57935, 57936, 57937, - 57938, 57939, 57940, 57941, 57942, 57943, 57944, 57945, 57946, 57947, 57948, 57949, 57950, 57951, 57952, 57953, - 57954, 57955, 57956, 57957, 57958, 57959, 57960, 57961, 57962, 57963, 57964, 57965, 57966, 57967, 57968, 57969, - 57970, 57971, 57972, 57973, 57974, 57975, 57976, 57977, 57978, 57979, 57980, 57981, 57982, 57983, 57984, 57985, - 57986, 57987, 57988, 57989, 57990, 57991, 57992, 57993, 57994, 57995, 57996, 57997, 57998, 57999, 58000, 58001, - 40259, 40260, 40261, 40262, 40263, 40264, 40265, 40266, 40267, 40268, 40269, 40270, 40271, 40272, 40273, 40274, - 40275, 40276, 40277, 40278, 40279, 40280, 40281, 40282, 40283, 40284, 40285, 40286, 40287, 40288, 40289, 40290, - 40291, 40292, 40293, 40294, 40295, 40296, 40297, 40298, 40299, 40300, 40301, 40302, 40303, 40304, 40305, 40306, - 40307, 40308, 40309, 40310, 40311, 40312, 40313, 40314, 40315, 40316, 40317, 40318, 40319, 40320, 40321, 40322, - 40323, 40324, 40325, 40326, 40327, 40328, 40329, 40330, 40331, 40332, 40333, 40334, 40335, 40336, 40337, 40338, - 40339, 40340, 40341, 40342, 40343, 40344, 40345, 40346, 40347, 40348, 40349, 40350, 40351, 40352, 40353, 40354, - 58002, 58003, 58004, 58005, 58006, 58007, 58008, 58009, 58010, 58011, 58012, 58013, 58014, 58015, 58016, 58017, - 58018, 58019, 58020, 58021, 58022, 58023, 58024, 58025, 58026, 58027, 58028, 58029, 58030, 58031, 58032, 58033, - 58034, 58035, 58036, 58037, 58038, 58039, 58040, 58041, 58042, 58043, 58044, 58045, 58046, 58047, 58048, 58049, - 58050, 58051, 58052, 58053, 58054, 58055, 58056, 58057, 58058, 58059, 58060, 58061, 58062, 58063, 58064, 58065, - 58066, 58067, 58068, 58069, 58070, 58071, 58072, 58073, 58074, 58075, 58076, 58077, 58078, 58079, 58080, 58081, - 58082, 58083, 58084, 58085, 58086, 58087, 58088, 58089, 58090, 58091, 58092, 58093, 58094, 58095, 40355, 40356, - 40357, 40358, 40359, 40360, 40361, 40362, 40363, 40364, 40365, 40366, 40367, 40368, 40369, 40370, 40371, 40372, - 40373, 40374, 40375, 40376, 40377, 40378, 40379, 40380, 40381, 40382, 40383, 40384, 40385, 40386, 40387, 40388, - 40389, 40390, 40391, 40392, 40393, 40394, 40395, 40396, 40397, 40398, 40399, 40400, 40401, 40402, 40403, 40404, - 40405, 40406, 40407, 40408, 40409, 40410, 40411, 40412, 40413, 40414, 40415, 40416, 40417, 40418, 40419, 40420, - 40421, 40422, 40423, 40424, 40425, 40426, 40427, 40428, 40429, 40430, 40431, 40432, 40433, 40434, 40435, 40436, - 40437, 40438, 40439, 40440, 40441, 40442, 40443, 40444, 40445, 40446, 40447, 40448, 40449, 40450, 58096, 58097, - 58098, 58099, 58100, 58101, 58102, 58103, 58104, 58105, 58106, 58107, 58108, 58109, 58110, 58111, 58112, 58113, - 58114, 58115, 58116, 58117, 58118, 58119, 58120, 58121, 58122, 58123, 58124, 58125, 58126, 58127, 58128, 58129, - 58130, 58131, 58132, 58133, 58134, 58135, 58136, 58137, 58138, 58139, 58140, 58141, 58142, 58143, 58144, 58145, - 58146, 58147, 58148, 58149, 58150, 58151, 58152, 58153, 58154, 58155, 58156, 58157, 58158, 58159, 58160, 58161, - 58162, 58163, 58164, 58165, 58166, 58167, 58168, 58169, 58170, 58171, 58172, 58173, 58174, 58175, 58176, 58177, - 58178, 58179, 58180, 58181, 58182, 58183, 58184, 58185, 58186, 58187, 58188, 58189, 40451, 40452, 40453, 40454, - 40455, 40456, 40457, 40458, 40459, 40460, 40461, 40462, 40463, 40464, 40465, 40466, 40467, 40468, 40469, 40470, - 40471, 40472, 40473, 40474, 40475, 40476, 40477, 40478, 40484, 40487, 40494, 40496, 40500, 40507, 40508, 40512, - 40525, 40528, 40530, 40531, 40532, 40534, 40537, 40541, 40543, 40544, 40545, 40546, 40549, 40558, 40559, 40562, - 40564, 40565, 40566, 40567, 40568, 40569, 40570, 40571, 40572, 40573, 40576, 40577, 40579, 40580, 40581, 40582, - 40585, 40586, 40588, 40589, 40590, 40591, 40592, 40593, 40596, 40597, 40598, 40599, 40600, 40601, 40602, 40603, - 40604, 40606, 40608, 40609, 40610, 40611, 40612, 40613, 40615, 40616, 40617, 40618, 58190, 58191, 58192, 58193, - 58194, 58195, 58196, 58197, 58198, 58199, 58200, 58201, 58202, 58203, 58204, 58205, 58206, 58207, 58208, 58209, - 58210, 58211, 58212, 58213, 58214, 58215, 58216, 58217, 58218, 58219, 58220, 58221, 58222, 58223, 58224, 58225, - 58226, 58227, 58228, 58229, 58230, 58231, 58232, 58233, 58234, 58235, 58236, 58237, 58238, 58239, 58240, 58241, - 58242, 58243, 58244, 58245, 58246, 58247, 58248, 58249, 58250, 58251, 58252, 58253, 58254, 58255, 58256, 58257, - 58258, 58259, 58260, 58261, 58262, 58263, 58264, 58265, 58266, 58267, 58268, 58269, 58270, 58271, 58272, 58273, - 58274, 58275, 58276, 58277, 58278, 58279, 58280, 58281, 58282, 58283, 40619, 40620, 40621, 40622, 40623, 40624, - 40625, 40626, 40627, 40629, 40630, 40631, 40633, 40634, 40636, 40639, 40640, 40641, 40642, 40643, 40645, 40646, - 40647, 40648, 40650, 40651, 40652, 40656, 40658, 40659, 40661, 40662, 40663, 40665, 40666, 40670, 40673, 40675, - 40676, 40678, 40680, 40683, 40684, 40685, 40686, 40688, 40689, 40690, 40691, 40692, 40693, 40694, 40695, 40696, - 40698, 40701, 40703, 40704, 40705, 40706, 40707, 40708, 40709, 40710, 40711, 40712, 40713, 40714, 40716, 40719, - 40721, 40722, 40724, 40725, 40726, 40728, 40730, 40731, 40732, 40733, 40734, 40735, 40737, 40739, 40740, 40741, - 40742, 40743, 40744, 40745, 40746, 40747, 40749, 40750, 40752, 40753, 58284, 58285, 58286, 58287, 58288, 58289, - 58290, 58291, 58292, 58293, 58294, 58295, 58296, 58297, 58298, 58299, 58300, 58301, 58302, 58303, 58304, 58305, - 58306, 58307, 58308, 58309, 58310, 58311, 58312, 58313, 58314, 58315, 58316, 58317, 58318, 58319, 58320, 58321, - 58322, 58323, 58324, 58325, 58326, 58327, 58328, 58329, 58330, 58331, 58332, 58333, 58334, 58335, 58336, 58337, - 58338, 58339, 58340, 58341, 58342, 58343, 58344, 58345, 58346, 58347, 58348, 58349, 58350, 58351, 58352, 58353, - 58354, 58355, 58356, 58357, 58358, 58359, 58360, 58361, 58362, 58363, 58364, 58365, 58366, 58367, 58368, 58369, - 58370, 58371, 58372, 58373, 58374, 58375, 58376, 58377, 40754, 40755, 40756, 40757, 40758, 40760, 40762, 40764, - 40767, 40768, 40769, 40770, 40771, 40773, 40774, 40775, 40776, 40777, 40778, 40779, 40780, 40781, 40782, 40783, - 40786, 40787, 40788, 40789, 40790, 40791, 40792, 40793, 40794, 40795, 40796, 40797, 40798, 40799, 40800, 40801, - 40802, 40803, 40804, 40805, 40806, 40807, 40808, 40809, 40810, 40811, 40812, 40813, 40814, 40815, 40816, 40817, - 40818, 40819, 40820, 40821, 40822, 40823, 40824, 40825, 40826, 40827, 40828, 40829, 40830, 40833, 40834, 40845, - 40846, 40847, 40848, 40849, 40850, 40851, 40852, 40853, 40854, 40855, 40856, 40860, 40861, 40862, 40865, 40866, - 40867, 40868, 40869, 63788, 63865, 63893, 63975, 63985, 58378, 58379, 58380, 58381, 58382, 58383, 58384, 58385, - 58386, 58387, 58388, 58389, 58390, 58391, 58392, 58393, 58394, 58395, 58396, 58397, 58398, 58399, 58400, 58401, - 58402, 58403, 58404, 58405, 58406, 58407, 58408, 58409, 58410, 58411, 58412, 58413, 58414, 58415, 58416, 58417, - 58418, 58419, 58420, 58421, 58422, 58423, 58424, 58425, 58426, 58427, 58428, 58429, 58430, 58431, 58432, 58433, - 58434, 58435, 58436, 58437, 58438, 58439, 58440, 58441, 58442, 58443, 58444, 58445, 58446, 58447, 58448, 58449, - 58450, 58451, 58452, 58453, 58454, 58455, 58456, 58457, 58458, 58459, 58460, 58461, 58462, 58463, 58464, 58465, - 58466, 58467, 58468, 58469, 58470, 58471, 64012, 64013, 64014, 64015, 64017, 64019, 64020, 64024, 64031, 64032, - 64033, 64035, 64036, 64039, 64040, 64041, 11905, 59414, 59415, 59416, 11908, 13427, 13383, 11912, 11915, 59422, - 13726, 13850, 13838, 11916, 11927, 14702, 14616, 59430, 14799, 14815, 14963, 14800, 59435, 59436, 15182, 15470, - 15584, 11943, 59441, 59442, 11946, 16470, 16735, 11950, 17207, 11955, 11958, 11959, 59451, 17329, 17324, 11963, - 17373, 17622, 18017, 17996, 59459, 18211, 18217, 18300, 18317, 11978, 18759, 18810, 18813, 18818, 18819, 18821, - 18822, 18847, 18843, 18871, 18870, 59476, 59477, 19619, 19615, 19616, 19617, 19575, 19618, 19731, 19732, 19733, - 19734, 19735, 19736, 19737, 19886, 59492, 58472, 58473, 58474, 58475, 58476, 58477, 58478, 58479, 58480, 58481, - 58482, 58483, 58484, 58485, 58486, 58487, 58488, 58489, 58490, 58491, 58492, 58493, 58494, 58495, 58496, 58497, - 58498, 58499, 58500, 58501, 58502, 58503, 58504, 58505, 58506, 58507, 58508, 58509, 58510, 58511, 58512, 58513, - 58514, 58515, 58516, 58517, 58518, 58519, 58520, 58521, 58522, 58523, 58524, 58525, 58526, 58527, 58528, 58529, - 58530, 58531, 58532, 58533, 58534, 58535, 58536, 58537, 58538, 58539, 58540, 58541, 58542, 58543, 58544, 58545, - 58546, 58547, 58548, 58549, 58550, 58551, 58552, 58553, 58554, 58555, 58556, 58557, 58558, 58559, 58560, 58561, - 58562, 58563, 58564, 58565, + "gb18030": [19970, 19972, 19973, 19974, 19983, 19986, 19991, + 19999, 20000, 20001, 20003, 20006, 20009, 20014, + 20015, 20017, 20019, 20021, 20023, 20028, 20032, + 20033, 20034, 20036, 20038, 20042, 20049, 20053, + 20055, 20058, 20059, 20066, 20067, 20068, 20069, + 20071, 20072, 20074, 20075, 20076, 20077, 20078, + 20079, 20082, 20084, 20085, 20086, 20087, 20088, + 20089, 20090, 20091, 20092, 20093, 20095, 20096, + 20097, 20098, 20099, 20100, 20101, 20103, 20106, + 20112, 20118, 20119, 20121, 20124, 20125, 20126, + 20131, 20138, 20143, 20144, 20145, 20148, 20150, + 20151, 20152, 20153, 20156, 20157, 20158, 20168, + 20172, 20175, 20176, 20178, 20186, 20187, 20188, + 20192, 20194, 20198, 20199, 20201, 20205, 20206, + 20207, 20209, 20212, 20216, 20217, 20218, 20220, + 20222, 20224, 20226, 20227, 20228, 20229, 20230, + 20231, 20232, 20235, 20236, 20242, 20243, 20244, + 20245, 20246, 20252, 20253, 20257, 20259, 20264, + 20265, 20268, 20269, 20270, 20273, 20275, 20277, + 20279, 20281, 20283, 20286, 20287, 20288, 20289, + 20290, 20292, 20293, 20295, 20296, 20297, 20298, + 20299, 20300, 20306, 20308, 20310, 20321, 20322, + 20326, 20328, 20330, 20331, 20333, 20334, 20337, + 20338, 20341, 20343, 20344, 20345, 20346, 20349, + 20352, 20353, 20354, 20357, 20358, 20359, 20362, + 20364, 20366, 20368, 20370, 20371, 20373, 20374, + 20376, 20377, 20378, 20380, 20382, 20383, 20385, + 20386, 20388, 20395, 20397, 20400, 20401, 20402, + 20403, 20404, 20406, 20407, 20408, 20409, 20410, + 20411, 20412, 20413, 20414, 20416, 20417, 20418, + 20422, 20423, 20424, 20425, 20427, 20428, 20429, + 20434, 20435, 20436, 20437, 20438, 20441, 20443, + 20448, 20450, 20452, 20453, 20455, 20459, 20460, + 20464, 20466, 20468, 20469, 20470, 20471, 20473, + 20475, 20476, 20477, 20479, 20480, 20481, 20482, + 20483, 20484, 20485, 20486, 20487, 20488, 20489, + 20490, 20491, 20494, 20496, 20497, 20499, 20501, + 20502, 20503, 20507, 20509, 20510, 20512, 20514, + 20515, 20516, 20519, 20523, 20527, 20528, 20529, + 20530, 20531, 20532, 20533, 20534, 20535, 20536, + 20537, 20539, 20541, 20543, 20544, 20545, 20546, + 20548, 20549, 20550, 20553, 20554, 20555, 20557, + 20560, 20561, 20562, 20563, 20564, 20566, 20567, + 20568, 20569, 20571, 20573, 20574, 20575, 20576, + 20577, 20578, 20579, 20580, 20582, 20583, 20584, + 20585, 20586, 20587, 20589, 20590, 20591, 20592, + 20593, 20594, 20595, 20596, 20597, 20600, 20601, + 20602, 20604, 20605, 20609, 20610, 20611, 20612, + 20614, 20615, 20617, 20618, 20619, 20620, 20622, + 20623, 20624, 20625, 20626, 20627, 20628, 20629, + 20630, 20631, 20632, 20633, 20634, 20635, 20636, + 20637, 20638, 20639, 20640, 20641, 20642, 20644, + 20646, 20650, 20651, 20653, 20654, 20655, 20656, + 20657, 20659, 20660, 20661, 20662, 20663, 20664, + 20665, 20668, 20669, 20670, 20671, 20672, 20673, + 20674, 20675, 20676, 20677, 20678, 20679, 20680, + 20681, 20682, 20683, 20684, 20685, 20686, 20688, + 20689, 20690, 20691, 20692, 20693, 20695, 20696, + 20697, 20699, 20700, 20701, 20702, 20703, 20704, + 20705, 20706, 20707, 20708, 20709, 20712, 20713, + 20714, 20715, 20719, 20720, 20721, 20722, 20724, + 20726, 20727, 20728, 20729, 20730, 20732, 20733, + 20734, 20735, 20736, 20737, 20738, 20739, 20740, + 20741, 20744, 20745, 20746, 20748, 20749, 20750, + 20751, 20752, 20753, 20755, 20756, 20757, 20758, + 20759, 20760, 20761, 20762, 20763, 20764, 20765, + 20766, 20767, 20768, 20770, 20771, 20772, 20773, + 20774, 20775, 20776, 20777, 20778, 20779, 20780, + 20781, 20782, 20783, 20784, 20785, 20786, 20787, + 20788, 20789, 20790, 20791, 20792, 20793, 20794, + 20795, 20796, 20797, 20798, 20802, 20807, 20810, + 20812, 20814, 20815, 20816, 20818, 20819, 20823, + 20824, 20825, 20827, 20829, 20830, 20831, 20832, + 20833, 20835, 20836, 20838, 20839, 20841, 20842, + 20847, 20850, 20858, 20862, 20863, 20867, 20868, + 20870, 20871, 20874, 20875, 20878, 20879, 20880, + 20881, 20883, 20884, 20888, 20890, 20893, 20894, + 20895, 20897, 20899, 20902, 20903, 20904, 20905, + 20906, 20909, 20910, 20916, 20920, 20921, 20922, + 20926, 20927, 20929, 20930, 20931, 20933, 20936, + 20938, 20941, 20942, 20944, 20946, 20947, 20948, + 20949, 20950, 20951, 20952, 20953, 20954, 20956, + 20958, 20959, 20962, 20963, 20965, 20966, 20967, + 20968, 20969, 20970, 20972, 20974, 20977, 20978, + 20980, 20983, 20990, 20996, 20997, 21001, 21003, + 21004, 21007, 21008, 21011, 21012, 21013, 21020, + 21022, 21023, 21025, 21026, 21027, 21029, 21030, + 21031, 21034, 21036, 21039, 21041, 21042, 21044, + 21045, 21052, 21054, 21060, 21061, 21062, 21063, + 21064, 21065, 21067, 21070, 21071, 21074, 21075, + 21077, 21079, 21080, 21081, 21082, 21083, 21085, + 21087, 21088, 21090, 21091, 21092, 21094, 21096, + 21099, 21100, 21101, 21102, 21104, 21105, 21107, + 21108, 21109, 21110, 21111, 21112, 21113, 21114, + 21115, 21116, 21118, 21120, 21123, 21124, 21125, + 21126, 21127, 21129, 21130, 21131, 21132, 21133, + 21134, 21135, 21137, 21138, 21140, 21141, 21142, + 21143, 21144, 21145, 21146, 21148, 21156, 21157, + 21158, 21159, 21166, 21167, 21168, 21172, 21173, + 21174, 21175, 21176, 21177, 21178, 21179, 21180, + 21181, 21184, 21185, 21186, 21188, 21189, 21190, + 21192, 21194, 21196, 21197, 21198, 21199, 21201, + 21203, 21204, 21205, 21207, 21209, 21210, 21211, + 21212, 21213, 21214, 21216, 21217, 21218, 21219, + 21221, 21222, 21223, 21224, 21225, 21226, 21227, + 21228, 21229, 21230, 21231, 21233, 21234, 21235, + 21236, 21237, 21238, 21239, 21240, 21243, 21244, + 21245, 21249, 21250, 21251, 21252, 21255, 21257, + 21258, 21259, 21260, 21262, 21265, 21266, 21267, + 21268, 21272, 21275, 21276, 21278, 21279, 21282, + 21284, 21285, 21287, 21288, 21289, 21291, 21292, + 21293, 21295, 21296, 21297, 21298, 21299, 21300, + 21301, 21302, 21303, 21304, 21308, 21309, 21312, + 21314, 21316, 21318, 21323, 21324, 21325, 21328, + 21332, 21336, 21337, 21339, 21341, 21349, 21352, + 21354, 21356, 21357, 21362, 21366, 21369, 21371, + 21372, 21373, 21374, 21376, 21377, 21379, 21383, + 21384, 21386, 21390, 21391, 21392, 21393, 21394, + 21395, 21396, 21398, 21399, 21401, 21403, 21404, + 21406, 21408, 21409, 21412, 21415, 21418, 21419, + 21420, 21421, 21423, 21424, 21425, 21426, 21427, + 21428, 21429, 21431, 21432, 21433, 21434, 21436, + 21437, 21438, 21440, 21443, 21444, 21445, 21446, + 21447, 21454, 21455, 21456, 21458, 21459, 21461, + 21466, 21468, 21469, 21470, 21473, 21474, 21479, + 21492, 21498, 21502, 21503, 21504, 21506, 21509, + 21511, 21515, 21524, 21528, 21529, 21530, 21532, + 21538, 21540, 21541, 21546, 21552, 21555, 21558, + 21559, 21562, 21565, 21567, 21569, 21570, 21572, + 21573, 21575, 21577, 21580, 21581, 21582, 21583, + 21585, 21594, 21597, 21598, 21599, 21600, 21601, + 21603, 21605, 21607, 21609, 21610, 21611, 21612, + 21613, 21614, 21615, 21616, 21620, 21625, 21626, + 21630, 21631, 21633, 21635, 21637, 21639, 21640, + 21641, 21642, 21645, 21649, 21651, 21655, 21656, + 21660, 21662, 21663, 21664, 21665, 21666, 21669, + 21678, 21680, 21682, 21685, 21686, 21687, 21689, + 21690, 21692, 21694, 21699, 21701, 21706, 21707, + 21718, 21720, 21723, 21728, 21729, 21730, 21731, + 21732, 21739, 21740, 21743, 21744, 21745, 21748, + 21749, 21750, 21751, 21752, 21753, 21755, 21758, + 21760, 21762, 21763, 21764, 21765, 21768, 21770, + 21771, 21772, 21773, 21774, 21778, 21779, 21781, + 21782, 21783, 21784, 21785, 21786, 21788, 21789, + 21790, 21791, 21793, 21797, 21798, 21800, 21801, + 21803, 21805, 21810, 21812, 21813, 21814, 21816, + 21817, 21818, 21819, 21821, 21824, 21826, 21829, + 21831, 21832, 21835, 21836, 21837, 21838, 21839, + 21841, 21842, 21843, 21844, 21847, 21848, 21849, + 21850, 21851, 21853, 21854, 21855, 21856, 21858, + 21859, 21864, 21865, 21867, 21871, 21872, 21873, + 21874, 21875, 21876, 21881, 21882, 21885, 21887, + 21893, 21894, 21900, 21901, 21902, 21904, 21906, + 21907, 21909, 21910, 21911, 21914, 21915, 21918, + 21920, 21921, 21922, 21923, 21924, 21925, 21926, + 21928, 21929, 21930, 21931, 21932, 21933, 21934, + 21935, 21936, 21938, 21940, 21942, 21944, 21946, + 21948, 21951, 21952, 21953, 21954, 21955, 21958, + 21959, 21960, 21962, 21963, 21966, 21967, 21968, + 21973, 21975, 21976, 21977, 21978, 21979, 21982, + 21984, 21986, 21991, 21993, 21997, 21998, 22000, + 22001, 22004, 22006, 22008, 22009, 22010, 22011, + 22012, 22015, 22018, 22019, 22020, 22021, 22022, + 22023, 22026, 22027, 22029, 22032, 22033, 22034, + 22035, 22036, 22037, 22038, 22039, 22041, 22042, + 22044, 22045, 22048, 22049, 22050, 22053, 22054, + 22056, 22057, 22058, 22059, 22062, 22063, 22064, + 22067, 22069, 22071, 22072, 22074, 22076, 22077, + 22078, 22080, 22081, 22082, 22083, 22084, 22085, + 22086, 22087, 22088, 22089, 22090, 22091, 22095, + 22096, 22097, 22098, 22099, 22101, 22102, 22106, + 22107, 22109, 22110, 22111, 22112, 22113, 22115, + 22117, 22118, 22119, 22125, 22126, 22127, 22128, + 22130, 22131, 22132, 22133, 22135, 22136, 22137, + 22138, 22141, 22142, 22143, 22144, 22145, 22146, + 22147, 22148, 22151, 22152, 22153, 22154, 22155, + 22156, 22157, 22160, 22161, 22162, 22164, 22165, + 22166, 22167, 22168, 22169, 22170, 22171, 22172, + 22173, 22174, 22175, 22176, 22177, 22178, 22180, + 22181, 22182, 22183, 22184, 22185, 22186, 22187, + 22188, 22189, 22190, 22192, 22193, 22194, 22195, + 22196, 22197, 22198, 22200, 22201, 22202, 22203, + 22205, 22206, 22207, 22208, 22209, 22210, 22211, + 22212, 22213, 22214, 22215, 22216, 22217, 22219, + 22220, 22221, 22222, 22223, 22224, 22225, 22226, + 22227, 22229, 22230, 22232, 22233, 22236, 22243, + 22245, 22246, 22247, 22248, 22249, 22250, 22252, + 22254, 22255, 22258, 22259, 22262, 22263, 22264, + 22267, 22268, 22272, 22273, 22274, 22277, 22279, + 22283, 22284, 22285, 22286, 22287, 22288, 22289, + 22290, 22291, 22292, 22293, 22294, 22295, 22296, + 22297, 22298, 22299, 22301, 22302, 22304, 22305, + 22306, 22308, 22309, 22310, 22311, 22315, 22321, + 22322, 22324, 22325, 22326, 22327, 22328, 22332, + 22333, 22335, 22337, 22339, 22340, 22341, 22342, + 22344, 22345, 22347, 22354, 22355, 22356, 22357, + 22358, 22360, 22361, 22370, 22371, 22373, 22375, + 22380, 22382, 22384, 22385, 22386, 22388, 22389, + 22392, 22393, 22394, 22397, 22398, 22399, 22400, + 22401, 22407, 22408, 22409, 22410, 22413, 22414, + 22415, 22416, 22417, 22420, 22421, 22422, 22423, + 22424, 22425, 22426, 22428, 22429, 22430, 22431, + 22437, 22440, 22442, 22444, 22447, 22448, 22449, + 22451, 22453, 22454, 22455, 22457, 22458, 22459, + 22460, 22461, 22462, 22463, 22464, 22465, 22468, + 22469, 22470, 22471, 22472, 22473, 22474, 22476, + 22477, 22480, 22481, 22483, 22486, 22487, 22491, + 22492, 22494, 22497, 22498, 22499, 22501, 22502, + 22503, 22504, 22505, 22506, 22507, 22508, 22510, + 22512, 22513, 22514, 22515, 22517, 22518, 22519, + 22523, 22524, 22526, 22527, 22529, 22531, 22532, + 22533, 22536, 22537, 22538, 22540, 22542, 22543, + 22544, 22546, 22547, 22548, 22550, 22551, 22552, + 22554, 22555, 22556, 22557, 22559, 22562, 22563, + 22565, 22566, 22567, 22568, 22569, 22571, 22572, + 22573, 22574, 22575, 22577, 22578, 22579, 22580, + 22582, 22583, 22584, 22585, 22586, 22587, 22588, + 22589, 22590, 22591, 22592, 22593, 22594, 22595, + 22597, 22598, 22599, 22600, 22601, 22602, 22603, + 22606, 22607, 22608, 22610, 22611, 22613, 22614, + 22615, 22617, 22618, 22619, 22620, 22621, 22623, + 22624, 22625, 22626, 22627, 22628, 22630, 22631, + 22632, 22633, 22634, 22637, 22638, 22639, 22640, + 22641, 22642, 22643, 22644, 22645, 22646, 22647, + 22648, 22649, 22650, 22651, 22652, 22653, 22655, + 22658, 22660, 22662, 22663, 22664, 22666, 22667, + 22668, 22669, 22670, 22671, 22672, 22673, 22676, + 22677, 22678, 22679, 22680, 22683, 22684, 22685, + 22688, 22689, 22690, 22691, 22692, 22693, 22694, + 22695, 22698, 22699, 22700, 22701, 22702, 22703, + 22704, 22705, 22706, 22707, 22708, 22709, 22710, + 22711, 22712, 22713, 22714, 22715, 22717, 22718, + 22719, 22720, 22722, 22723, 22724, 22726, 22727, + 22728, 22729, 22730, 22731, 22732, 22733, 22734, + 22735, 22736, 22738, 22739, 22740, 22742, 22743, + 22744, 22745, 22746, 22747, 22748, 22749, 22750, + 22751, 22752, 22753, 22754, 22755, 22757, 22758, + 22759, 22760, 22761, 22762, 22765, 22767, 22769, + 22770, 22772, 22773, 22775, 22776, 22778, 22779, + 22780, 22781, 22782, 22783, 22784, 22785, 22787, + 22789, 22790, 22792, 22793, 22794, 22795, 22796, + 22798, 22800, 22801, 22802, 22803, 22807, 22808, + 22811, 22813, 22814, 22816, 22817, 22818, 22819, + 22822, 22824, 22828, 22832, 22834, 22835, 22837, + 22838, 22843, 22845, 22846, 22847, 22848, 22851, + 22853, 22854, 22858, 22860, 22861, 22864, 22866, + 22867, 22873, 22875, 22876, 22877, 22878, 22879, + 22881, 22883, 22884, 22886, 22887, 22888, 22889, + 22890, 22891, 22892, 22893, 22894, 22895, 22896, + 22897, 22898, 22901, 22903, 22906, 22907, 22908, + 22910, 22911, 22912, 22917, 22921, 22923, 22924, + 22926, 22927, 22928, 22929, 22932, 22933, 22936, + 22938, 22939, 22940, 22941, 22943, 22944, 22945, + 22946, 22950, 22951, 22956, 22957, 22960, 22961, + 22963, 22964, 22965, 22966, 22967, 22968, 22970, + 22972, 22973, 22975, 22976, 22977, 22978, 22979, + 22980, 22981, 22983, 22984, 22985, 22988, 22989, + 22990, 22991, 22997, 22998, 23001, 23003, 23006, + 23007, 23008, 23009, 23010, 23012, 23014, 23015, + 23017, 23018, 23019, 23021, 23022, 23023, 23024, + 23025, 23026, 23027, 23028, 23029, 23030, 23031, + 23032, 23034, 23036, 23037, 23038, 23040, 23042, + 23050, 23051, 23053, 23054, 23055, 23056, 23058, + 23060, 23061, 23062, 23063, 23065, 23066, 23067, + 23069, 23070, 23073, 23074, 23076, 23078, 23079, + 23080, 23082, 23083, 23084, 23085, 23086, 23087, + 23088, 23091, 23093, 23095, 23096, 23097, 23098, + 23099, 23101, 23102, 23103, 23105, 23106, 23107, + 23108, 23109, 23111, 23112, 23115, 23116, 23117, + 23118, 23119, 23120, 23121, 23122, 23123, 23124, + 23126, 23127, 23128, 23129, 23131, 23132, 23133, + 23134, 23135, 23136, 23137, 23139, 23140, 23141, + 23142, 23144, 23145, 23147, 23148, 23149, 23150, + 23151, 23152, 23153, 23154, 23155, 23160, 23161, + 23163, 23164, 23165, 23166, 23168, 23169, 23170, + 23171, 23172, 23173, 23174, 23175, 23176, 23177, + 23178, 23179, 23180, 23181, 23182, 23183, 23184, + 23185, 23187, 23188, 23189, 23190, 23191, 23192, + 23193, 23196, 23197, 23198, 23199, 23200, 23201, + 23202, 23203, 23204, 23205, 23206, 23207, 23208, + 23209, 23211, 23212, 23213, 23214, 23215, 23216, + 23217, 23220, 23222, 23223, 23225, 23226, 23227, + 23228, 23229, 23231, 23232, 23235, 23236, 23237, + 23238, 23239, 23240, 23242, 23243, 23245, 23246, + 23247, 23248, 23249, 23251, 23253, 23255, 23257, + 23258, 23259, 23261, 23262, 23263, 23266, 23268, + 23269, 23271, 23272, 23274, 23276, 23277, 23278, + 23279, 23280, 23282, 23283, 23284, 23285, 23286, + 23287, 23288, 23289, 23290, 23291, 23292, 23293, + 23294, 23295, 23296, 23297, 23298, 23299, 23300, + 23301, 23302, 23303, 23304, 23306, 23307, 23308, + 23309, 23310, 23311, 23312, 23313, 23314, 23315, + 23316, 23317, 23320, 23321, 23322, 23323, 23324, + 23325, 23326, 23327, 23328, 23329, 23330, 23331, + 23332, 23333, 23334, 23335, 23336, 23337, 23338, + 23339, 23340, 23341, 23342, 23343, 23344, 23345, + 23347, 23349, 23350, 23352, 23353, 23354, 23355, + 23356, 23357, 23358, 23359, 23361, 23362, 23363, + 23364, 23365, 23366, 23367, 23368, 23369, 23370, + 23371, 23372, 23373, 23374, 23375, 23378, 23382, + 23390, 23392, 23393, 23399, 23400, 23403, 23405, + 23406, 23407, 23410, 23412, 23414, 23415, 23416, + 23417, 23419, 23420, 23422, 23423, 23426, 23430, + 23434, 23437, 23438, 23440, 23441, 23442, 23444, + 23446, 23455, 23463, 23464, 23465, 23468, 23469, + 23470, 23471, 23473, 23474, 23479, 23482, 23483, + 23484, 23488, 23489, 23491, 23496, 23497, 23498, + 23499, 23501, 23502, 23503, 23505, 23508, 23509, + 23510, 23511, 23512, 23513, 23514, 23515, 23516, + 23520, 23522, 23523, 23526, 23527, 23529, 23530, + 23531, 23532, 23533, 23535, 23537, 23538, 23539, + 23540, 23541, 23542, 23543, 23549, 23550, 23552, + 23554, 23555, 23557, 23559, 23560, 23563, 23564, + 23565, 23566, 23568, 23570, 23571, 23575, 23577, + 23579, 23582, 23583, 23584, 23585, 23587, 23590, + 23592, 23593, 23594, 23595, 23597, 23598, 23599, + 23600, 23602, 23603, 23605, 23606, 23607, 23619, + 23620, 23622, 23623, 23628, 23629, 23634, 23635, + 23636, 23638, 23639, 23640, 23642, 23643, 23644, + 23645, 23647, 23650, 23652, 23655, 23656, 23657, + 23658, 23659, 23660, 23661, 23664, 23666, 23667, + 23668, 23669, 23670, 23671, 23672, 23675, 23676, + 23677, 23678, 23680, 23683, 23684, 23685, 23686, + 23687, 23689, 23690, 23691, 23694, 23695, 23698, + 23699, 23701, 23709, 23710, 23711, 23712, 23713, + 23716, 23717, 23718, 23719, 23720, 23722, 23726, + 23727, 23728, 23730, 23732, 23734, 23737, 23738, + 23739, 23740, 23742, 23744, 23746, 23747, 23749, + 23750, 23751, 23752, 23753, 23754, 23756, 23757, + 23758, 23759, 23760, 23761, 23763, 23764, 23765, + 23766, 23767, 23768, 23770, 23771, 23772, 23773, + 23774, 23775, 23776, 23778, 23779, 23783, 23785, + 23787, 23788, 23790, 23791, 23793, 23794, 23795, + 23796, 23797, 23798, 23799, 23800, 23801, 23802, + 23804, 23805, 23806, 23807, 23808, 23809, 23812, + 23813, 23816, 23817, 23818, 23819, 23820, 23821, + 23823, 23824, 23825, 23826, 23827, 23829, 23831, + 23832, 23833, 23834, 23836, 23837, 23839, 23840, + 23841, 23842, 23843, 23845, 23848, 23850, 23851, + 23852, 23855, 23856, 23857, 23858, 23859, 23861, + 23862, 23863, 23864, 23865, 23866, 23867, 23868, + 23871, 23872, 23873, 23874, 23875, 23876, 23877, + 23878, 23880, 23881, 23885, 23886, 23887, 23888, + 23889, 23890, 23891, 23892, 23893, 23894, 23895, + 23897, 23898, 23900, 23902, 23903, 23904, 23905, + 23906, 23907, 23908, 23909, 23910, 23911, 23912, + 23914, 23917, 23918, 23920, 23921, 23922, 23923, + 23925, 23926, 23927, 23928, 23929, 23930, 23931, + 23932, 23933, 23934, 23935, 23936, 23937, 23939, + 23940, 23941, 23942, 23943, 23944, 23945, 23946, + 23947, 23948, 23949, 23950, 23951, 23952, 23953, + 23954, 23955, 23956, 23957, 23958, 23959, 23960, + 23962, 23963, 23964, 23966, 23967, 23968, 23969, + 23970, 23971, 23972, 23973, 23974, 23975, 23976, + 23977, 23978, 23979, 23980, 23981, 23982, 23983, + 23984, 23985, 23986, 23987, 23988, 23989, 23990, + 23992, 23993, 23994, 23995, 23996, 23997, 23998, + 23999, 24000, 24001, 24002, 24003, 24004, 24006, + 24007, 24008, 24009, 24010, 24011, 24012, 24014, + 24015, 24016, 24017, 24018, 24019, 24020, 24021, + 24022, 24023, 24024, 24025, 24026, 24028, 24031, + 24032, 24035, 24036, 24042, 24044, 24045, 24048, + 24053, 24054, 24056, 24057, 24058, 24059, 24060, + 24063, 24064, 24068, 24071, 24073, 24074, 24075, + 24077, 24078, 24082, 24083, 24087, 24094, 24095, + 24096, 24097, 24098, 24099, 24100, 24101, 24104, + 24105, 24106, 24107, 24108, 24111, 24112, 24114, + 24115, 24116, 24117, 24118, 24121, 24122, 24126, + 24127, 24128, 24129, 24131, 24134, 24135, 24136, + 24137, 24138, 24139, 24141, 24142, 24143, 24144, + 24145, 24146, 24147, 24150, 24151, 24152, 24153, + 24154, 24156, 24157, 24159, 24160, 24163, 24164, + 24165, 24166, 24167, 24168, 24169, 24170, 24171, + 24172, 24173, 24174, 24175, 24176, 24177, 24181, + 24183, 24185, 24190, 24193, 24194, 24195, 24197, + 24200, 24201, 24204, 24205, 24206, 24210, 24216, + 24219, 24221, 24225, 24226, 24227, 24228, 24232, + 24233, 24234, 24235, 24236, 24238, 24239, 24240, + 24241, 24242, 24244, 24250, 24251, 24252, 24253, + 24255, 24256, 24257, 24258, 24259, 24260, 24261, + 24262, 24263, 24264, 24267, 24268, 24269, 24270, + 24271, 24272, 24276, 24277, 24279, 24280, 24281, + 24282, 24284, 24285, 24286, 24287, 24288, 24289, + 24290, 24291, 24292, 24293, 24294, 24295, 24297, + 24299, 24300, 24301, 24302, 24303, 24304, 24305, + 24306, 24307, 24309, 24312, 24313, 24315, 24316, + 24317, 24325, 24326, 24327, 24329, 24332, 24333, + 24334, 24336, 24338, 24340, 24342, 24345, 24346, + 24348, 24349, 24350, 24353, 24354, 24355, 24356, + 24360, 24363, 24364, 24366, 24368, 24370, 24371, + 24372, 24373, 24374, 24375, 24376, 24379, 24381, + 24382, 24383, 24385, 24386, 24387, 24388, 24389, + 24390, 24391, 24392, 24393, 24394, 24395, 24396, + 24397, 24398, 24399, 24401, 24404, 24409, 24410, + 24411, 24412, 24414, 24415, 24416, 24419, 24421, + 24423, 24424, 24427, 24430, 24431, 24434, 24436, + 24437, 24438, 24440, 24442, 24445, 24446, 24447, + 24451, 24454, 24461, 24462, 24463, 24465, 24467, + 24468, 24470, 24474, 24475, 24477, 24478, 24479, + 24480, 24482, 24483, 24484, 24485, 24486, 24487, + 24489, 24491, 24492, 24495, 24496, 24497, 24498, + 24499, 24500, 24502, 24504, 24505, 24506, 24507, + 24510, 24511, 24512, 24513, 24514, 24519, 24520, + 24522, 24523, 24526, 24531, 24532, 24533, 24538, + 24539, 24540, 24542, 24543, 24546, 24547, 24549, + 24550, 24552, 24553, 24556, 24559, 24560, 24562, + 24563, 24564, 24566, 24567, 24569, 24570, 24572, + 24583, 24584, 24585, 24587, 24588, 24592, 24593, + 24595, 24599, 24600, 24602, 24606, 24607, 24610, + 24611, 24612, 24620, 24621, 24622, 24624, 24625, + 24626, 24627, 24628, 24630, 24631, 24632, 24633, + 24634, 24637, 24638, 24640, 24644, 24645, 24646, + 24647, 24648, 24649, 24650, 24652, 24654, 24655, + 24657, 24659, 24660, 24662, 24663, 24664, 24667, + 24668, 24670, 24671, 24672, 24673, 24677, 24678, + 24686, 24689, 24690, 24692, 24693, 24695, 24702, + 24704, 24705, 24706, 24709, 24710, 24711, 24712, + 24714, 24715, 24718, 24719, 24720, 24721, 24723, + 24725, 24727, 24728, 24729, 24732, 24734, 24737, + 24738, 24740, 24741, 24743, 24745, 24746, 24750, + 24752, 24755, 24757, 24758, 24759, 24761, 24762, + 24765, 24766, 24767, 24768, 24769, 24770, 24771, + 24772, 24775, 24776, 24777, 24780, 24781, 24782, + 24783, 24784, 24786, 24787, 24788, 24790, 24791, + 24793, 24795, 24798, 24801, 24802, 24803, 24804, + 24805, 24810, 24817, 24818, 24821, 24823, 24824, + 24827, 24828, 24829, 24830, 24831, 24834, 24835, + 24836, 24837, 24839, 24842, 24843, 24844, 24848, + 24849, 24850, 24851, 24852, 24854, 24855, 24856, + 24857, 24859, 24860, 24861, 24862, 24865, 24866, + 24869, 24872, 24873, 24874, 24876, 24877, 24878, + 24879, 24880, 24881, 24882, 24883, 24884, 24885, + 24886, 24887, 24888, 24889, 24890, 24891, 24892, + 24893, 24894, 24896, 24897, 24898, 24899, 24900, + 24901, 24902, 24903, 24905, 24907, 24909, 24911, + 24912, 24914, 24915, 24916, 24918, 24919, 24920, + 24921, 24922, 24923, 24924, 24926, 24927, 24928, + 24929, 24931, 24932, 24933, 24934, 24937, 24938, + 24939, 24940, 24941, 24942, 24943, 24945, 24946, + 24947, 24948, 24950, 24952, 24953, 24954, 24955, + 24956, 24957, 24958, 24959, 24960, 24961, 24962, + 24963, 24964, 24965, 24966, 24967, 24968, 24969, + 24970, 24972, 24973, 24975, 24976, 24977, 24978, + 24979, 24981, 24982, 24983, 24984, 24985, 24986, + 24987, 24988, 24990, 24991, 24992, 24993, 24994, + 24995, 24996, 24997, 24998, 25002, 25003, 25005, + 25006, 25007, 25008, 25009, 25010, 25011, 25012, + 25013, 25014, 25016, 25017, 25018, 25019, 25020, + 25021, 25023, 25024, 25025, 25027, 25028, 25029, + 25030, 25031, 25033, 25036, 25037, 25038, 25039, + 25040, 25043, 25045, 25046, 25047, 25048, 25049, + 25050, 25051, 25052, 25053, 25054, 25055, 25056, + 25057, 25058, 25059, 25060, 25061, 25063, 25064, + 25065, 25066, 25067, 25068, 25069, 25070, 25071, + 25072, 25073, 25074, 25075, 25076, 25078, 25079, + 25080, 25081, 25082, 25083, 25084, 25085, 25086, + 25088, 25089, 25090, 25091, 25092, 25093, 25095, + 25097, 25107, 25108, 25113, 25116, 25117, 25118, + 25120, 25123, 25126, 25127, 25128, 25129, 25131, + 25133, 25135, 25136, 25137, 25138, 25141, 25142, + 25144, 25145, 25146, 25147, 25148, 25154, 25156, + 25157, 25158, 25162, 25167, 25168, 25173, 25174, + 25175, 25177, 25178, 25180, 25181, 25182, 25183, + 25184, 25185, 25186, 25188, 25189, 25192, 25201, + 25202, 25204, 25205, 25207, 25208, 25210, 25211, + 25213, 25217, 25218, 25219, 25221, 25222, 25223, + 25224, 25227, 25228, 25229, 25230, 25231, 25232, + 25236, 25241, 25244, 25245, 25246, 25251, 25254, + 25255, 25257, 25258, 25261, 25262, 25263, 25264, + 25266, 25267, 25268, 25270, 25271, 25272, 25274, + 25278, 25280, 25281, 25283, 25291, 25295, 25297, + 25301, 25309, 25310, 25312, 25313, 25316, 25322, + 25323, 25328, 25330, 25333, 25336, 25337, 25338, + 25339, 25344, 25347, 25348, 25349, 25350, 25354, + 25355, 25356, 25357, 25359, 25360, 25362, 25363, + 25364, 25365, 25367, 25368, 25369, 25372, 25382, + 25383, 25385, 25388, 25389, 25390, 25392, 25393, + 25395, 25396, 25397, 25398, 25399, 25400, 25403, + 25404, 25406, 25407, 25408, 25409, 25412, 25415, + 25416, 25418, 25425, 25426, 25427, 25428, 25430, + 25431, 25432, 25433, 25434, 25435, 25436, 25437, + 25440, 25444, 25445, 25446, 25448, 25450, 25451, + 25452, 25455, 25456, 25458, 25459, 25460, 25461, + 25464, 25465, 25468, 25469, 25470, 25471, 25473, + 25475, 25476, 25477, 25478, 25483, 25485, 25489, + 25491, 25492, 25493, 25495, 25497, 25498, 25499, + 25500, 25501, 25502, 25503, 25505, 25508, 25510, + 25515, 25519, 25521, 25522, 25525, 25526, 25529, + 25531, 25533, 25535, 25536, 25537, 25538, 25539, + 25541, 25543, 25544, 25546, 25547, 25548, 25553, + 25555, 25556, 25557, 25559, 25560, 25561, 25562, + 25563, 25564, 25565, 25567, 25570, 25572, 25573, + 25574, 25575, 25576, 25579, 25580, 25582, 25583, + 25584, 25585, 25587, 25589, 25591, 25593, 25594, + 25595, 25596, 25598, 25603, 25604, 25606, 25607, + 25608, 25609, 25610, 25613, 25614, 25617, 25618, + 25621, 25622, 25623, 25624, 25625, 25626, 25629, + 25631, 25634, 25635, 25636, 25637, 25639, 25640, + 25641, 25643, 25646, 25647, 25648, 25649, 25650, + 25651, 25653, 25654, 25655, 25656, 25657, 25659, + 25660, 25662, 25664, 25666, 25667, 25673, 25675, + 25676, 25677, 25678, 25679, 25680, 25681, 25683, + 25685, 25686, 25687, 25689, 25690, 25691, 25692, + 25693, 25695, 25696, 25697, 25698, 25699, 25700, + 25701, 25702, 25704, 25706, 25707, 25708, 25710, + 25711, 25712, 25713, 25714, 25715, 25716, 25717, + 25718, 25719, 25723, 25724, 25725, 25726, 25727, + 25728, 25729, 25731, 25734, 25736, 25737, 25738, + 25739, 25740, 25741, 25742, 25743, 25744, 25747, + 25748, 25751, 25752, 25754, 25755, 25756, 25757, + 25759, 25760, 25761, 25762, 25763, 25765, 25766, + 25767, 25768, 25770, 25771, 25775, 25777, 25778, + 25779, 25780, 25782, 25785, 25787, 25789, 25790, + 25791, 25793, 25795, 25796, 25798, 25799, 25800, + 25801, 25802, 25803, 25804, 25807, 25809, 25811, + 25812, 25813, 25814, 25817, 25818, 25819, 25820, + 25821, 25823, 25824, 25825, 25827, 25829, 25831, + 25832, 25833, 25834, 25835, 25836, 25837, 25838, + 25839, 25840, 25841, 25842, 25843, 25844, 25845, + 25846, 25847, 25848, 25849, 25850, 25851, 25852, + 25853, 25854, 25855, 25857, 25858, 25859, 25860, + 25861, 25862, 25863, 25864, 25866, 25867, 25868, + 25869, 25870, 25871, 25872, 25873, 25875, 25876, + 25877, 25878, 25879, 25881, 25882, 25883, 25884, + 25885, 25886, 25887, 25888, 25889, 25890, 25891, + 25892, 25894, 25895, 25896, 25897, 25898, 25900, + 25901, 25904, 25905, 25906, 25907, 25911, 25914, + 25916, 25917, 25920, 25921, 25922, 25923, 25924, + 25926, 25927, 25930, 25931, 25933, 25934, 25936, + 25938, 25939, 25940, 25943, 25944, 25946, 25948, + 25951, 25952, 25953, 25956, 25957, 25959, 25960, + 25961, 25962, 25965, 25966, 25967, 25969, 25971, + 25973, 25974, 25976, 25977, 25978, 25979, 25980, + 25981, 25982, 25983, 25984, 25985, 25986, 25987, + 25988, 25989, 25990, 25992, 25993, 25994, 25997, + 25998, 25999, 26002, 26004, 26005, 26006, 26008, + 26010, 26013, 26014, 26016, 26018, 26019, 26022, + 26024, 26026, 26028, 26030, 26033, 26034, 26035, + 26036, 26037, 26038, 26039, 26040, 26042, 26043, + 26046, 26047, 26048, 26050, 26055, 26056, 26057, + 26058, 26061, 26064, 26065, 26067, 26068, 26069, + 26072, 26073, 26074, 26075, 26076, 26077, 26078, + 26079, 26081, 26083, 26084, 26090, 26091, 26098, + 26099, 26100, 26101, 26104, 26105, 26107, 26108, + 26109, 26110, 26111, 26113, 26116, 26117, 26119, + 26120, 26121, 26123, 26125, 26128, 26129, 26130, + 26134, 26135, 26136, 26138, 26139, 26140, 26142, + 26145, 26146, 26147, 26148, 26150, 26153, 26154, + 26155, 26156, 26158, 26160, 26162, 26163, 26167, + 26168, 26169, 26170, 26171, 26173, 26175, 26176, + 26178, 26180, 26181, 26182, 26183, 26184, 26185, + 26186, 26189, 26190, 26192, 26193, 26200, 26201, + 26203, 26204, 26205, 26206, 26208, 26210, 26211, + 26213, 26215, 26217, 26218, 26219, 26220, 26221, + 26225, 26226, 26227, 26229, 26232, 26233, 26235, + 26236, 26237, 26239, 26240, 26241, 26243, 26245, + 26246, 26248, 26249, 26250, 26251, 26253, 26254, + 26255, 26256, 26258, 26259, 26260, 26261, 26264, + 26265, 26266, 26267, 26268, 26270, 26271, 26272, + 26273, 26274, 26275, 26276, 26277, 26278, 26281, + 26282, 26283, 26284, 26285, 26287, 26288, 26289, + 26290, 26291, 26293, 26294, 26295, 26296, 26298, + 26299, 26300, 26301, 26303, 26304, 26305, 26306, + 26307, 26308, 26309, 26310, 26311, 26312, 26313, + 26314, 26315, 26316, 26317, 26318, 26319, 26320, + 26321, 26322, 26323, 26324, 26325, 26326, 26327, + 26328, 26330, 26334, 26335, 26336, 26337, 26338, + 26339, 26340, 26341, 26343, 26344, 26346, 26347, + 26348, 26349, 26350, 26351, 26353, 26357, 26358, + 26360, 26362, 26363, 26365, 26369, 26370, 26371, + 26372, 26373, 26374, 26375, 26380, 26382, 26383, + 26385, 26386, 26387, 26390, 26392, 26393, 26394, + 26396, 26398, 26400, 26401, 26402, 26403, 26404, + 26405, 26407, 26409, 26414, 26416, 26418, 26419, + 26422, 26423, 26424, 26425, 26427, 26428, 26430, + 26431, 26433, 26436, 26437, 26439, 26442, 26443, + 26445, 26450, 26452, 26453, 26455, 26456, 26457, + 26458, 26459, 26461, 26466, 26467, 26468, 26470, + 26471, 26475, 26476, 26478, 26481, 26484, 26486, + 26488, 26489, 26490, 26491, 26493, 26496, 26498, + 26499, 26501, 26502, 26504, 26506, 26508, 26509, + 26510, 26511, 26513, 26514, 26515, 26516, 26518, + 26521, 26523, 26527, 26528, 26529, 26532, 26534, + 26537, 26540, 26542, 26545, 26546, 26548, 26553, + 26554, 26555, 26556, 26557, 26558, 26559, 26560, + 26562, 26565, 26566, 26567, 26568, 26569, 26570, + 26571, 26572, 26573, 26574, 26581, 26582, 26583, + 26587, 26591, 26593, 26595, 26596, 26598, 26599, + 26600, 26602, 26603, 26605, 26606, 26610, 26613, + 26614, 26615, 26616, 26617, 26618, 26619, 26620, + 26622, 26625, 26626, 26627, 26628, 26630, 26637, + 26640, 26642, 26644, 26645, 26648, 26649, 26650, + 26651, 26652, 26654, 26655, 26656, 26658, 26659, + 26660, 26661, 26662, 26663, 26664, 26667, 26668, + 26669, 26670, 26671, 26672, 26673, 26676, 26677, + 26678, 26682, 26683, 26687, 26695, 26699, 26701, + 26703, 26706, 26710, 26711, 26712, 26713, 26714, + 26715, 26716, 26717, 26718, 26719, 26730, 26732, + 26733, 26734, 26735, 26736, 26737, 26738, 26739, + 26741, 26744, 26745, 26746, 26747, 26748, 26749, + 26750, 26751, 26752, 26754, 26756, 26759, 26760, + 26761, 26762, 26763, 26764, 26765, 26766, 26768, + 26769, 26770, 26772, 26773, 26774, 26776, 26777, + 26778, 26779, 26780, 26781, 26782, 26783, 26784, + 26785, 26787, 26788, 26789, 26793, 26794, 26795, + 26796, 26798, 26801, 26802, 26804, 26806, 26807, + 26808, 26809, 26810, 26811, 26812, 26813, 26814, + 26815, 26817, 26819, 26820, 26821, 26822, 26823, + 26824, 26826, 26828, 26830, 26831, 26832, 26833, + 26835, 26836, 26838, 26839, 26841, 26843, 26844, + 26845, 26846, 26847, 26849, 26850, 26852, 26853, + 26854, 26855, 26856, 26857, 26858, 26859, 26860, + 26861, 26863, 26866, 26867, 26868, 26870, 26871, + 26872, 26875, 26877, 26878, 26879, 26880, 26882, + 26883, 26884, 26886, 26887, 26888, 26889, 26890, + 26892, 26895, 26897, 26899, 26900, 26901, 26902, + 26903, 26904, 26905, 26906, 26907, 26908, 26909, + 26910, 26913, 26914, 26915, 26917, 26918, 26919, + 26920, 26921, 26922, 26923, 26924, 26926, 26927, + 26929, 26930, 26931, 26933, 26934, 26935, 26936, + 26938, 26939, 26940, 26942, 26944, 26945, 26947, + 26948, 26949, 26950, 26951, 26952, 26953, 26954, + 26955, 26956, 26957, 26958, 26959, 26960, 26961, + 26962, 26963, 26965, 26966, 26968, 26969, 26971, + 26972, 26975, 26977, 26978, 26980, 26981, 26983, + 26984, 26985, 26986, 26988, 26989, 26991, 26992, + 26994, 26995, 26996, 26997, 26998, 27002, 27003, + 27005, 27006, 27007, 27009, 27011, 27013, 27018, + 27019, 27020, 27022, 27023, 27024, 27025, 27026, + 27027, 27030, 27031, 27033, 27034, 27037, 27038, + 27039, 27040, 27041, 27042, 27043, 27044, 27045, + 27046, 27049, 27050, 27052, 27054, 27055, 27056, + 27058, 27059, 27061, 27062, 27064, 27065, 27066, + 27068, 27069, 27070, 27071, 27072, 27074, 27075, + 27076, 27077, 27078, 27079, 27080, 27081, 27083, + 27085, 27087, 27089, 27090, 27091, 27093, 27094, + 27095, 27096, 27097, 27098, 27100, 27101, 27102, + 27105, 27106, 27107, 27108, 27109, 27110, 27111, + 27112, 27113, 27114, 27115, 27116, 27118, 27119, + 27120, 27121, 27123, 27124, 27125, 27126, 27127, + 27128, 27129, 27130, 27131, 27132, 27134, 27136, + 27137, 27138, 27139, 27140, 27141, 27142, 27143, + 27144, 27145, 27147, 27148, 27149, 27150, 27151, + 27152, 27153, 27154, 27155, 27156, 27157, 27158, + 27161, 27162, 27163, 27164, 27165, 27166, 27168, + 27170, 27171, 27172, 27173, 27174, 27175, 27177, + 27179, 27180, 27181, 27182, 27184, 27186, 27187, + 27188, 27190, 27191, 27192, 27193, 27194, 27195, + 27196, 27199, 27200, 27201, 27202, 27203, 27205, + 27206, 27208, 27209, 27210, 27211, 27212, 27213, + 27214, 27215, 27217, 27218, 27219, 27220, 27221, + 27222, 27223, 27226, 27228, 27229, 27230, 27231, + 27232, 27234, 27235, 27236, 27238, 27239, 27240, + 27241, 27242, 27243, 27244, 27245, 27246, 27247, + 27248, 27250, 27251, 27252, 27253, 27254, 27255, + 27256, 27258, 27259, 27261, 27262, 27263, 27265, + 27266, 27267, 27269, 27270, 27271, 27272, 27273, + 27274, 27275, 27276, 27277, 27279, 27282, 27283, + 27284, 27285, 27286, 27288, 27289, 27290, 27291, + 27292, 27293, 27294, 27295, 27297, 27298, 27299, + 27300, 27301, 27302, 27303, 27304, 27306, 27309, + 27310, 27311, 27312, 27313, 27314, 27315, 27316, + 27317, 27318, 27319, 27320, 27321, 27322, 27323, + 27324, 27325, 27326, 27327, 27328, 27329, 27330, + 27331, 27332, 27333, 27334, 27335, 27336, 27337, + 27338, 27339, 27340, 27341, 27342, 27343, 27344, + 27345, 27346, 27347, 27348, 27349, 27350, 27351, + 27352, 27353, 27354, 27355, 27356, 27357, 27358, + 27359, 27360, 27361, 27362, 27363, 27364, 27365, + 27366, 27367, 27368, 27369, 27370, 27371, 27372, + 27373, 27374, 27375, 27376, 27377, 27378, 27379, + 27380, 27381, 27382, 27383, 27384, 27385, 27386, + 27387, 27388, 27389, 27390, 27391, 27392, 27393, + 27394, 27395, 27396, 27397, 27398, 27399, 27400, + 27401, 27402, 27403, 27404, 27405, 27406, 27407, + 27408, 27409, 27410, 27411, 27412, 27413, 27414, + 27415, 27416, 27417, 27418, 27419, 27420, 27421, + 27422, 27423, 27429, 27430, 27432, 27433, 27434, + 27435, 27436, 27437, 27438, 27439, 27440, 27441, + 27443, 27444, 27445, 27446, 27448, 27451, 27452, + 27453, 27455, 27456, 27457, 27458, 27460, 27461, + 27464, 27466, 27467, 27469, 27470, 27471, 27472, + 27473, 27474, 27475, 27476, 27477, 27478, 27479, + 27480, 27482, 27483, 27484, 27485, 27486, 27487, + 27488, 27489, 27496, 27497, 27499, 27500, 27501, + 27502, 27503, 27504, 27505, 27506, 27507, 27508, + 27509, 27510, 27511, 27512, 27514, 27517, 27518, + 27519, 27520, 27525, 27528, 27532, 27534, 27535, + 27536, 27537, 27540, 27541, 27543, 27544, 27545, + 27548, 27549, 27550, 27551, 27552, 27554, 27555, + 27556, 27557, 27558, 27559, 27560, 27561, 27563, + 27564, 27565, 27566, 27567, 27568, 27569, 27570, + 27574, 27576, 27577, 27578, 27579, 27580, 27581, + 27582, 27584, 27587, 27588, 27590, 27591, 27592, + 27593, 27594, 27596, 27598, 27600, 27601, 27608, + 27610, 27612, 27613, 27614, 27615, 27616, 27618, + 27619, 27620, 27621, 27622, 27623, 27624, 27625, + 27628, 27629, 27630, 27632, 27633, 27634, 27636, + 27638, 27639, 27640, 27642, 27643, 27644, 27646, + 27647, 27648, 27649, 27650, 27651, 27652, 27656, + 27657, 27658, 27659, 27660, 27662, 27666, 27671, + 27676, 27677, 27678, 27680, 27683, 27685, 27691, + 27692, 27693, 27697, 27699, 27702, 27703, 27705, + 27706, 27707, 27708, 27710, 27711, 27715, 27716, + 27717, 27720, 27723, 27724, 27725, 27726, 27727, + 27729, 27730, 27731, 27734, 27736, 27737, 27738, + 27746, 27747, 27749, 27750, 27751, 27755, 27756, + 27757, 27758, 27759, 27761, 27763, 27765, 27767, + 27768, 27770, 27771, 27772, 27775, 27776, 27780, + 27783, 27786, 27787, 27789, 27790, 27793, 27794, + 27797, 27798, 27799, 27800, 27802, 27804, 27805, + 27806, 27808, 27810, 27816, 27820, 27823, 27824, + 27828, 27829, 27830, 27831, 27834, 27840, 27841, + 27842, 27843, 27846, 27847, 27848, 27851, 27853, + 27854, 27855, 27857, 27858, 27864, 27865, 27866, + 27868, 27869, 27871, 27876, 27878, 27879, 27881, + 27884, 27885, 27890, 27892, 27897, 27903, 27904, + 27906, 27907, 27909, 27910, 27912, 27913, 27914, + 27917, 27919, 27920, 27921, 27923, 27924, 27925, + 27926, 27928, 27932, 27933, 27935, 27936, 27937, + 27938, 27939, 27940, 27942, 27944, 27945, 27948, + 27949, 27951, 27952, 27956, 27958, 27959, 27960, + 27962, 27967, 27968, 27970, 27972, 27977, 27980, + 27984, 27989, 27990, 27991, 27992, 27995, 27997, + 27999, 28001, 28002, 28004, 28005, 28007, 28008, + 28011, 28012, 28013, 28016, 28017, 28018, 28019, + 28021, 28022, 28025, 28026, 28027, 28029, 28030, + 28031, 28032, 28033, 28035, 28036, 28038, 28039, + 28042, 28043, 28045, 28047, 28048, 28050, 28054, + 28055, 28056, 28057, 28058, 28060, 28066, 28069, + 28076, 28077, 28080, 28081, 28083, 28084, 28086, + 28087, 28089, 28090, 28091, 28092, 28093, 28094, + 28097, 28098, 28099, 28104, 28105, 28106, 28109, + 28110, 28111, 28112, 28114, 28115, 28116, 28117, + 28119, 28122, 28123, 28124, 28127, 28130, 28131, + 28133, 28135, 28136, 28137, 28138, 28141, 28143, + 28144, 28146, 28148, 28149, 28150, 28152, 28154, + 28157, 28158, 28159, 28160, 28161, 28162, 28163, + 28164, 28166, 28167, 28168, 28169, 28171, 28175, + 28178, 28179, 28181, 28184, 28185, 28187, 28188, + 28190, 28191, 28194, 28198, 28199, 28200, 28202, + 28204, 28206, 28208, 28209, 28211, 28213, 28214, + 28215, 28217, 28219, 28220, 28221, 28222, 28223, + 28224, 28225, 28226, 28229, 28230, 28231, 28232, + 28233, 28234, 28235, 28236, 28239, 28240, 28241, + 28242, 28245, 28247, 28249, 28250, 28252, 28253, + 28254, 28256, 28257, 28258, 28259, 28260, 28261, + 28262, 28263, 28264, 28265, 28266, 28268, 28269, + 28271, 28272, 28273, 28274, 28275, 28276, 28277, + 28278, 28279, 28280, 28281, 28282, 28283, 28284, + 28285, 28288, 28289, 28290, 28292, 28295, 28296, + 28298, 28299, 28300, 28301, 28302, 28305, 28306, + 28307, 28308, 28309, 28310, 28311, 28313, 28314, + 28315, 28317, 28318, 28320, 28321, 28323, 28324, + 28326, 28328, 28329, 28331, 28332, 28333, 28334, + 28336, 28339, 28341, 28344, 28345, 28348, 28350, + 28351, 28352, 28355, 28356, 28357, 28358, 28360, + 28361, 28362, 28364, 28365, 28366, 28368, 28370, + 28374, 28376, 28377, 28379, 28380, 28381, 28387, + 28391, 28394, 28395, 28396, 28397, 28398, 28399, + 28400, 28401, 28402, 28403, 28405, 28406, 28407, + 28408, 28410, 28411, 28412, 28413, 28414, 28415, + 28416, 28417, 28419, 28420, 28421, 28423, 28424, + 28426, 28427, 28428, 28429, 28430, 28432, 28433, + 28434, 28438, 28439, 28440, 28441, 28442, 28443, + 28444, 28445, 28446, 28447, 28449, 28450, 28451, + 28453, 28454, 28455, 28456, 28460, 28462, 28464, + 28466, 28468, 28469, 28471, 28472, 28473, 28474, + 28475, 28476, 28477, 28479, 28480, 28481, 28482, + 28483, 28484, 28485, 28488, 28489, 28490, 28492, + 28494, 28495, 28496, 28497, 28498, 28499, 28500, + 28501, 28502, 28503, 28505, 28506, 28507, 28509, + 28511, 28512, 28513, 28515, 28516, 28517, 28519, + 28520, 28521, 28522, 28523, 28524, 28527, 28528, + 28529, 28531, 28533, 28534, 28535, 28537, 28539, + 28541, 28542, 28543, 28544, 28545, 28546, 28547, + 28549, 28550, 28551, 28554, 28555, 28559, 28560, + 28561, 28562, 28563, 28564, 28565, 28566, 28567, + 28568, 28569, 28570, 28571, 28573, 28574, 28575, + 28576, 28578, 28579, 28580, 28581, 28582, 28584, + 28585, 28586, 28587, 28588, 28589, 28590, 28591, + 28592, 28593, 28594, 28596, 28597, 28599, 28600, + 28602, 28603, 28604, 28605, 28606, 28607, 28609, + 28611, 28612, 28613, 28614, 28615, 28616, 28618, + 28619, 28620, 28621, 28622, 28623, 28624, 28627, + 28628, 28629, 28630, 28631, 28632, 28633, 28634, + 28635, 28636, 28637, 28639, 28642, 28643, 28644, + 28645, 28646, 28647, 28648, 28649, 28650, 28651, + 28652, 28653, 28656, 28657, 28658, 28659, 28660, + 28661, 28662, 28663, 28664, 28665, 28666, 28667, + 28668, 28669, 28670, 28671, 28672, 28673, 28674, + 28675, 28676, 28677, 28678, 28679, 28680, 28681, + 28682, 28683, 28684, 28685, 28686, 28687, 28688, + 28690, 28691, 28692, 28693, 28694, 28695, 28696, + 28697, 28700, 28701, 28702, 28703, 28704, 28705, + 28706, 28708, 28709, 28710, 28711, 28712, 28713, + 28714, 28715, 28716, 28717, 28718, 28719, 28720, + 28721, 28722, 28723, 28724, 28726, 28727, 28728, + 28730, 28731, 28732, 28733, 28734, 28735, 28736, + 28737, 28738, 28739, 28740, 28741, 28742, 28743, + 28744, 28745, 28746, 28747, 28749, 28750, 28752, + 28753, 28754, 28755, 28756, 28757, 28758, 28759, + 28760, 28761, 28762, 28763, 28764, 28765, 28767, + 28768, 28769, 28770, 28771, 28772, 28773, 28774, + 28775, 28776, 28777, 28778, 28782, 28785, 28786, + 28787, 28788, 28791, 28793, 28794, 28795, 28797, + 28801, 28802, 28803, 28804, 28806, 28807, 28808, + 28811, 28812, 28813, 28815, 28816, 28817, 28819, + 28823, 28824, 28826, 28827, 28830, 28831, 28832, + 28833, 28834, 28835, 28836, 28837, 28838, 28839, + 28840, 28841, 28842, 28848, 28850, 28852, 28853, + 28854, 28858, 28862, 28863, 28868, 28869, 28870, + 28871, 28873, 28875, 28876, 28877, 28878, 28879, + 28880, 28881, 28882, 28883, 28884, 28885, 28886, + 28887, 28890, 28892, 28893, 28894, 28896, 28897, + 28898, 28899, 28901, 28906, 28910, 28912, 28913, + 28914, 28915, 28916, 28917, 28918, 28920, 28922, + 28923, 28924, 28926, 28927, 28928, 28929, 28930, + 28931, 28932, 28933, 28934, 28935, 28936, 28939, + 28940, 28941, 28942, 28943, 28945, 28946, 28948, + 28951, 28955, 28956, 28957, 28958, 28959, 28960, + 28961, 28962, 28963, 28964, 28965, 28967, 28968, + 28969, 28970, 28971, 28972, 28973, 28974, 28978, + 28979, 28980, 28981, 28983, 28984, 28985, 28986, + 28987, 28988, 28989, 28990, 28991, 28992, 28993, + 28994, 28995, 28996, 28998, 28999, 29000, 29001, + 29003, 29005, 29007, 29008, 29009, 29010, 29011, + 29012, 29013, 29014, 29015, 29016, 29017, 29018, + 29019, 29021, 29023, 29024, 29025, 29026, 29027, + 29029, 29033, 29034, 29035, 29036, 29037, 29039, + 29040, 29041, 29044, 29045, 29046, 29047, 29049, + 29051, 29052, 29054, 29055, 29056, 29057, 29058, + 29059, 29061, 29062, 29063, 29064, 29065, 29067, + 29068, 29069, 29070, 29072, 29073, 29074, 29075, + 29077, 29078, 29079, 29082, 29083, 29084, 29085, + 29086, 29089, 29090, 29091, 29092, 29093, 29094, + 29095, 29097, 29098, 29099, 29101, 29102, 29103, + 29104, 29105, 29106, 29108, 29110, 29111, 29112, + 29114, 29115, 29116, 29117, 29118, 29119, 29120, + 29121, 29122, 29124, 29125, 29126, 29127, 29128, + 29129, 29130, 29131, 29132, 29133, 29135, 29136, + 29137, 29138, 29139, 29142, 29143, 29144, 29145, + 29146, 29147, 29148, 29149, 29150, 29151, 29153, + 29154, 29155, 29156, 29158, 29160, 29161, 29162, + 29163, 29164, 29165, 29167, 29168, 29169, 29170, + 29171, 29172, 29173, 29174, 29175, 29176, 29178, + 29179, 29180, 29181, 29182, 29183, 29184, 29185, + 29186, 29187, 29188, 29189, 29191, 29192, 29193, + 29194, 29195, 29196, 29197, 29198, 29199, 29200, + 29201, 29202, 29203, 29204, 29205, 29206, 29207, + 29208, 29209, 29210, 29211, 29212, 29214, 29215, + 29216, 29217, 29218, 29219, 29220, 29221, 29222, + 29223, 29225, 29227, 29229, 29230, 29231, 29234, + 29235, 29236, 29242, 29244, 29246, 29248, 29249, + 29250, 29251, 29252, 29253, 29254, 29257, 29258, + 29259, 29262, 29263, 29264, 29265, 29267, 29268, + 29269, 29271, 29272, 29274, 29276, 29278, 29280, + 29283, 29284, 29285, 29288, 29290, 29291, 29292, + 29293, 29296, 29297, 29299, 29300, 29302, 29303, + 29304, 29307, 29308, 29309, 29314, 29315, 29317, + 29318, 29319, 29320, 29321, 29324, 29326, 29328, + 29329, 29331, 29332, 29333, 29334, 29335, 29336, + 29337, 29338, 29339, 29340, 29341, 29342, 29344, + 29345, 29346, 29347, 29348, 29349, 29350, 29351, + 29352, 29353, 29354, 29355, 29358, 29361, 29362, + 29363, 29365, 29370, 29371, 29372, 29373, 29374, + 29375, 29376, 29381, 29382, 29383, 29385, 29386, + 29387, 29388, 29391, 29393, 29395, 29396, 29397, + 29398, 29400, 29402, 29403, 58566, 58567, 58568, + 58569, 58570, 58571, 58572, 58573, 58574, 58575, + 58576, 58577, 58578, 58579, 58580, 58581, 58582, + 58583, 58584, 58585, 58586, 58587, 58588, 58589, + 58590, 58591, 58592, 58593, 58594, 58595, 58596, + 58597, 58598, 58599, 58600, 58601, 58602, 58603, + 58604, 58605, 58606, 58607, 58608, 58609, 58610, + 58611, 58612, 58613, 58614, 58615, 58616, 58617, + 58618, 58619, 58620, 58621, 58622, 58623, 58624, + 58625, 58626, 58627, 58628, 58629, 58630, 58631, + 58632, 58633, 58634, 58635, 58636, 58637, 58638, + 58639, 58640, 58641, 58642, 58643, 58644, 58645, + 58646, 58647, 58648, 58649, 58650, 58651, 58652, + 58653, 58654, 58655, 58656, 58657, 58658, 58659, + 58660, 58661, 12288, 12289, 12290, 183, 713, 711, + 168, 12291, 12293, 8212, 65374, 8214, 8230, 8216, + 8217, 8220, 8221, 12308, 12309, 12296, 12297, 12298, + 12299, 12300, 12301, 12302, 12303, 12310, 12311, + 12304, 12305, 177, 215, 247, 8758, 8743, 8744, 8721, + 8719, 8746, 8745, 8712, 8759, 8730, 8869, 8741, + 8736, 8978, 8857, 8747, 8750, 8801, 8780, 8776, + 8765, 8733, 8800, 8814, 8815, 8804, 8805, 8734, + 8757, 8756, 9794, 9792, 176, 8242, 8243, 8451, + 65284, 164, 65504, 65505, 8240, 167, 8470, 9734, + 9733, 9675, 9679, 9678, 9671, 9670, 9633, 9632, + 9651, 9650, 8251, 8594, 8592, 8593, 8595, 12307, + 58662, 58663, 58664, 58665, 58666, 58667, 58668, + 58669, 58670, 58671, 58672, 58673, 58674, 58675, + 58676, 58677, 58678, 58679, 58680, 58681, 58682, + 58683, 58684, 58685, 58686, 58687, 58688, 58689, + 58690, 58691, 58692, 58693, 58694, 58695, 58696, + 58697, 58698, 58699, 58700, 58701, 58702, 58703, + 58704, 58705, 58706, 58707, 58708, 58709, 58710, + 58711, 58712, 58713, 58714, 58715, 58716, 58717, + 58718, 58719, 58720, 58721, 58722, 58723, 58724, + 58725, 58726, 58727, 58728, 58729, 58730, 58731, + 58732, 58733, 58734, 58735, 58736, 58737, 58738, + 58739, 58740, 58741, 58742, 58743, 58744, 58745, + 58746, 58747, 58748, 58749, 58750, 58751, 58752, + 58753, 58754, 58755, 58756, 58757, 8560, 8561, 8562, + 8563, 8564, 8565, 8566, 8567, 8568, 8569, 59238, + 59239, 59240, 59241, 59242, 59243, 9352, 9353, 9354, + 9355, 9356, 9357, 9358, 9359, 9360, 9361, 9362, + 9363, 9364, 9365, 9366, 9367, 9368, 9369, 9370, + 9371, 9332, 9333, 9334, 9335, 9336, 9337, 9338, + 9339, 9340, 9341, 9342, 9343, 9344, 9345, 9346, + 9347, 9348, 9349, 9350, 9351, 9312, 9313, 9314, + 9315, 9316, 9317, 9318, 9319, 9320, 9321, 8364, + 59245, 12832, 12833, 12834, 12835, 12836, 12837, + 12838, 12839, 12840, 12841, 59246, 59247, 8544, + 8545, 8546, 8547, 8548, 8549, 8550, 8551, 8552, + 8553, 8554, 8555, 59248, 59249, 58758, 58759, 58760, + 58761, 58762, 58763, 58764, 58765, 58766, 58767, + 58768, 58769, 58770, 58771, 58772, 58773, 58774, + 58775, 58776, 58777, 58778, 58779, 58780, 58781, + 58782, 58783, 58784, 58785, 58786, 58787, 58788, + 58789, 58790, 58791, 58792, 58793, 58794, 58795, + 58796, 58797, 58798, 58799, 58800, 58801, 58802, + 58803, 58804, 58805, 58806, 58807, 58808, 58809, + 58810, 58811, 58812, 58813, 58814, 58815, 58816, + 58817, 58818, 58819, 58820, 58821, 58822, 58823, + 58824, 58825, 58826, 58827, 58828, 58829, 58830, + 58831, 58832, 58833, 58834, 58835, 58836, 58837, + 58838, 58839, 58840, 58841, 58842, 58843, 58844, + 58845, 58846, 58847, 58848, 58849, 58850, 58851, + 58852, 12288, 65281, 65282, 65283, 65509, 65285, + 65286, 65287, 65288, 65289, 65290, 65291, 65292, + 65293, 65294, 65295, 65296, 65297, 65298, 65299, + 65300, 65301, 65302, 65303, 65304, 65305, 65306, + 65307, 65308, 65309, 65310, 65311, 65312, 65313, + 65314, 65315, 65316, 65317, 65318, 65319, 65320, + 65321, 65322, 65323, 65324, 65325, 65326, 65327, + 65328, 65329, 65330, 65331, 65332, 65333, 65334, + 65335, 65336, 65337, 65338, 65339, 65340, 65341, + 65342, 65343, 65344, 65345, 65346, 65347, 65348, + 65349, 65350, 65351, 65352, 65353, 65354, 65355, + 65356, 65357, 65358, 65359, 65360, 65361, 65362, + 65363, 65364, 65365, 65366, 65367, 65368, 65369, + 65370, 65371, 65372, 65373, 65507, 58854, 58855, + 58856, 58857, 58858, 58859, 58860, 58861, 58862, + 58863, 58864, 58865, 58866, 58867, 58868, 58869, + 58870, 58871, 58872, 58873, 58874, 58875, 58876, + 58877, 58878, 58879, 58880, 58881, 58882, 58883, + 58884, 58885, 58886, 58887, 58888, 58889, 58890, + 58891, 58892, 58893, 58894, 58895, 58896, 58897, + 58898, 58899, 58900, 58901, 58902, 58903, 58904, + 58905, 58906, 58907, 58908, 58909, 58910, 58911, + 58912, 58913, 58914, 58915, 58916, 58917, 58918, + 58919, 58920, 58921, 58922, 58923, 58924, 58925, + 58926, 58927, 58928, 58929, 58930, 58931, 58932, + 58933, 58934, 58935, 58936, 58937, 58938, 58939, + 58940, 58941, 58942, 58943, 58944, 58945, 58946, + 58947, 58948, 58949, 12353, 12354, 12355, 12356, + 12357, 12358, 12359, 12360, 12361, 12362, 12363, + 12364, 12365, 12366, 12367, 12368, 12369, 12370, + 12371, 12372, 12373, 12374, 12375, 12376, 12377, + 12378, 12379, 12380, 12381, 12382, 12383, 12384, + 12385, 12386, 12387, 12388, 12389, 12390, 12391, + 12392, 12393, 12394, 12395, 12396, 12397, 12398, + 12399, 12400, 12401, 12402, 12403, 12404, 12405, + 12406, 12407, 12408, 12409, 12410, 12411, 12412, + 12413, 12414, 12415, 12416, 12417, 12418, 12419, + 12420, 12421, 12422, 12423, 12424, 12425, 12426, + 12427, 12428, 12429, 12430, 12431, 12432, 12433, + 12434, 12435, 59250, 59251, 59252, 59253, 59254, + 59255, 59256, 59257, 59258, 59259, 59260, 58950, + 58951, 58952, 58953, 58954, 58955, 58956, 58957, + 58958, 58959, 58960, 58961, 58962, 58963, 58964, + 58965, 58966, 58967, 58968, 58969, 58970, 58971, + 58972, 58973, 58974, 58975, 58976, 58977, 58978, + 58979, 58980, 58981, 58982, 58983, 58984, 58985, + 58986, 58987, 58988, 58989, 58990, 58991, 58992, + 58993, 58994, 58995, 58996, 58997, 58998, 58999, + 59000, 59001, 59002, 59003, 59004, 59005, 59006, + 59007, 59008, 59009, 59010, 59011, 59012, 59013, + 59014, 59015, 59016, 59017, 59018, 59019, 59020, + 59021, 59022, 59023, 59024, 59025, 59026, 59027, + 59028, 59029, 59030, 59031, 59032, 59033, 59034, + 59035, 59036, 59037, 59038, 59039, 59040, 59041, + 59042, 59043, 59044, 59045, 12449, 12450, 12451, + 12452, 12453, 12454, 12455, 12456, 12457, 12458, + 12459, 12460, 12461, 12462, 12463, 12464, 12465, + 12466, 12467, 12468, 12469, 12470, 12471, 12472, + 12473, 12474, 12475, 12476, 12477, 12478, 12479, + 12480, 12481, 12482, 12483, 12484, 12485, 12486, + 12487, 12488, 12489, 12490, 12491, 12492, 12493, + 12494, 12495, 12496, 12497, 12498, 12499, 12500, + 12501, 12502, 12503, 12504, 12505, 12506, 12507, + 12508, 12509, 12510, 12511, 12512, 12513, 12514, + 12515, 12516, 12517, 12518, 12519, 12520, 12521, + 12522, 12523, 12524, 12525, 12526, 12527, 12528, + 12529, 12530, 12531, 12532, 12533, 12534, 59261, + 59262, 59263, 59264, 59265, 59266, 59267, 59268, + 59046, 59047, 59048, 59049, 59050, 59051, 59052, + 59053, 59054, 59055, 59056, 59057, 59058, 59059, + 59060, 59061, 59062, 59063, 59064, 59065, 59066, + 59067, 59068, 59069, 59070, 59071, 59072, 59073, + 59074, 59075, 59076, 59077, 59078, 59079, 59080, + 59081, 59082, 59083, 59084, 59085, 59086, 59087, + 59088, 59089, 59090, 59091, 59092, 59093, 59094, + 59095, 59096, 59097, 59098, 59099, 59100, 59101, + 59102, 59103, 59104, 59105, 59106, 59107, 59108, + 59109, 59110, 59111, 59112, 59113, 59114, 59115, + 59116, 59117, 59118, 59119, 59120, 59121, 59122, + 59123, 59124, 59125, 59126, 59127, 59128, 59129, + 59130, 59131, 59132, 59133, 59134, 59135, 59136, + 59137, 59138, 59139, 59140, 59141, 913, 914, 915, + 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, + 926, 927, 928, 929, 931, 932, 933, 934, 935, 936, + 937, 59269, 59270, 59271, 59272, 59273, 59274, + 59275, 59276, 945, 946, 947, 948, 949, 950, 951, + 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, + 963, 964, 965, 966, 967, 968, 969, 59277, 59278, + 59279, 59280, 59281, 59282, 59283, 65077, 65078, + 65081, 65082, 65087, 65088, 65085, 65086, 65089, + 65090, 65091, 65092, 59284, 59285, 65083, 65084, + 65079, 65080, 65073, 59286, 65075, 65076, 59287, + 59288, 59289, 59290, 59291, 59292, 59293, 59294, + 59295, 59142, 59143, 59144, 59145, 59146, 59147, + 59148, 59149, 59150, 59151, 59152, 59153, 59154, + 59155, 59156, 59157, 59158, 59159, 59160, 59161, + 59162, 59163, 59164, 59165, 59166, 59167, 59168, + 59169, 59170, 59171, 59172, 59173, 59174, 59175, + 59176, 59177, 59178, 59179, 59180, 59181, 59182, + 59183, 59184, 59185, 59186, 59187, 59188, 59189, + 59190, 59191, 59192, 59193, 59194, 59195, 59196, + 59197, 59198, 59199, 59200, 59201, 59202, 59203, + 59204, 59205, 59206, 59207, 59208, 59209, 59210, + 59211, 59212, 59213, 59214, 59215, 59216, 59217, + 59218, 59219, 59220, 59221, 59222, 59223, 59224, + 59225, 59226, 59227, 59228, 59229, 59230, 59231, + 59232, 59233, 59234, 59235, 59236, 59237, 1040, + 1041, 1042, 1043, 1044, 1045, 1025, 1046, 1047, + 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, + 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, + 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, + 59296, 59297, 59298, 59299, 59300, 59301, 59302, + 59303, 59304, 59305, 59306, 59307, 59308, 59309, + 59310, 1072, 1073, 1074, 1075, 1076, 1077, 1105, + 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, + 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, + 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, + 1102, 1103, 59311, 59312, 59313, 59314, 59315, + 59316, 59317, 59318, 59319, 59320, 59321, 59322, + 59323, 714, 715, 729, 8211, 8213, 8229, 8245, 8453, + 8457, 8598, 8599, 8600, 8601, 8725, 8735, 8739, + 8786, 8806, 8807, 8895, 9552, 9553, 9554, 9555, + 9556, 9557, 9558, 9559, 9560, 9561, 9562, 9563, + 9564, 9565, 9566, 9567, 9568, 9569, 9570, 9571, + 9572, 9573, 9574, 9575, 9576, 9577, 9578, 9579, + 9580, 9581, 9582, 9583, 9584, 9585, 9586, 9587, + 9601, 9602, 9603, 9604, 9605, 9606, 9607, 9608, + 9609, 9610, 9611, 9612, 9613, 9614, 9615, 9619, + 9620, 9621, 9660, 9661, 9698, 9699, 9700, 9701, + 9737, 8853, 12306, 12317, 12318, 59324, 59325, + 59326, 59327, 59328, 59329, 59330, 59331, 59332, + 59333, 59334, 257, 225, 462, 224, 275, 233, 283, + 232, 299, 237, 464, 236, 333, 243, 466, 242, 363, + 250, 468, 249, 470, 472, 474, 476, 252, 234, 593, + 59335, 324, 328, 505, 609, 59337, 59338, 59339, + 59340, 12549, 12550, 12551, 12552, 12553, 12554, + 12555, 12556, 12557, 12558, 12559, 12560, 12561, + 12562, 12563, 12564, 12565, 12566, 12567, 12568, + 12569, 12570, 12571, 12572, 12573, 12574, 12575, + 12576, 12577, 12578, 12579, 12580, 12581, 12582, + 12583, 12584, 12585, 59341, 59342, 59343, 59344, + 59345, 59346, 59347, 59348, 59349, 59350, 59351, + 59352, 59353, 59354, 59355, 59356, 59357, 59358, + 59359, 59360, 59361, 12321, 12322, 12323, 12324, + 12325, 12326, 12327, 12328, 12329, 12963, 13198, + 13199, 13212, 13213, 13214, 13217, 13252, 13262, + 13265, 13266, 13269, 65072, 65506, 65508, 59362, + 8481, 12849, 59363, 8208, 59364, 59365, 59366, + 12540, 12443, 12444, 12541, 12542, 12294, 12445, + 12446, 65097, 65098, 65099, 65100, 65101, 65102, + 65103, 65104, 65105, 65106, 65108, 65109, 65110, + 65111, 65113, 65114, 65115, 65116, 65117, 65118, + 65119, 65120, 65121, 65122, 65123, 65124, 65125, + 65126, 65128, 65129, 65130, 65131, 12350, 12272, + 12273, 12274, 12275, 12276, 12277, 12278, 12279, + 12280, 12281, 12282, 12283, 12295, 59380, 59381, + 59382, 59383, 59384, 59385, 59386, 59387, 59388, + 59389, 59390, 59391, 59392, 9472, 9473, 9474, 9475, + 9476, 9477, 9478, 9479, 9480, 9481, 9482, 9483, + 9484, 9485, 9486, 9487, 9488, 9489, 9490, 9491, + 9492, 9493, 9494, 9495, 9496, 9497, 9498, 9499, + 9500, 9501, 9502, 9503, 9504, 9505, 9506, 9507, + 9508, 9509, 9510, 9511, 9512, 9513, 9514, 9515, + 9516, 9517, 9518, 9519, 9520, 9521, 9522, 9523, + 9524, 9525, 9526, 9527, 9528, 9529, 9530, 9531, + 9532, 9533, 9534, 9535, 9536, 9537, 9538, 9539, + 9540, 9541, 9542, 9543, 9544, 9545, 9546, 9547, + 59393, 59394, 59395, 59396, 59397, 59398, 59399, + 59400, 59401, 59402, 59403, 59404, 59405, 59406, + 59407, 29404, 29405, 29407, 29410, 29411, 29412, + 29413, 29414, 29415, 29418, 29419, 29429, 29430, + 29433, 29437, 29438, 29439, 29440, 29442, 29444, + 29445, 29446, 29447, 29448, 29449, 29451, 29452, + 29453, 29455, 29456, 29457, 29458, 29460, 29464, + 29465, 29466, 29471, 29472, 29475, 29476, 29478, + 29479, 29480, 29485, 29487, 29488, 29490, 29491, + 29493, 29494, 29498, 29499, 29500, 29501, 29504, + 29505, 29506, 29507, 29508, 29509, 29510, 29511, + 29512, 29513, 29514, 29515, 29516, 29518, 29519, + 29521, 29523, 29524, 29525, 29526, 29528, 29529, + 29530, 29531, 29532, 29533, 29534, 29535, 29537, + 29538, 29539, 29540, 29541, 29542, 29543, 29544, + 29545, 29546, 29547, 29550, 29552, 29553, 57344, + 57345, 57346, 57347, 57348, 57349, 57350, 57351, + 57352, 57353, 57354, 57355, 57356, 57357, 57358, + 57359, 57360, 57361, 57362, 57363, 57364, 57365, + 57366, 57367, 57368, 57369, 57370, 57371, 57372, + 57373, 57374, 57375, 57376, 57377, 57378, 57379, + 57380, 57381, 57382, 57383, 57384, 57385, 57386, + 57387, 57388, 57389, 57390, 57391, 57392, 57393, + 57394, 57395, 57396, 57397, 57398, 57399, 57400, + 57401, 57402, 57403, 57404, 57405, 57406, 57407, + 57408, 57409, 57410, 57411, 57412, 57413, 57414, + 57415, 57416, 57417, 57418, 57419, 57420, 57421, + 57422, 57423, 57424, 57425, 57426, 57427, 57428, + 57429, 57430, 57431, 57432, 57433, 57434, 57435, + 57436, 57437, 29554, 29555, 29556, 29557, 29558, + 29559, 29560, 29561, 29562, 29563, 29564, 29565, + 29567, 29568, 29569, 29570, 29571, 29573, 29574, + 29576, 29578, 29580, 29581, 29583, 29584, 29586, + 29587, 29588, 29589, 29591, 29592, 29593, 29594, + 29596, 29597, 29598, 29600, 29601, 29603, 29604, + 29605, 29606, 29607, 29608, 29610, 29612, 29613, + 29617, 29620, 29621, 29622, 29624, 29625, 29628, + 29629, 29630, 29631, 29633, 29635, 29636, 29637, + 29638, 29639, 29643, 29644, 29646, 29650, 29651, + 29652, 29653, 29654, 29655, 29656, 29658, 29659, + 29660, 29661, 29663, 29665, 29666, 29667, 29668, + 29670, 29672, 29674, 29675, 29676, 29678, 29679, + 29680, 29681, 29683, 29684, 29685, 29686, 29687, + 57438, 57439, 57440, 57441, 57442, 57443, 57444, + 57445, 57446, 57447, 57448, 57449, 57450, 57451, + 57452, 57453, 57454, 57455, 57456, 57457, 57458, + 57459, 57460, 57461, 57462, 57463, 57464, 57465, + 57466, 57467, 57468, 57469, 57470, 57471, 57472, + 57473, 57474, 57475, 57476, 57477, 57478, 57479, + 57480, 57481, 57482, 57483, 57484, 57485, 57486, + 57487, 57488, 57489, 57490, 57491, 57492, 57493, + 57494, 57495, 57496, 57497, 57498, 57499, 57500, + 57501, 57502, 57503, 57504, 57505, 57506, 57507, + 57508, 57509, 57510, 57511, 57512, 57513, 57514, + 57515, 57516, 57517, 57518, 57519, 57520, 57521, + 57522, 57523, 57524, 57525, 57526, 57527, 57528, + 57529, 57530, 57531, 29688, 29689, 29690, 29691, + 29692, 29693, 29694, 29695, 29696, 29697, 29698, + 29700, 29703, 29704, 29707, 29708, 29709, 29710, + 29713, 29714, 29715, 29716, 29717, 29718, 29719, + 29720, 29721, 29724, 29725, 29726, 29727, 29728, + 29729, 29731, 29732, 29735, 29737, 29739, 29741, + 29743, 29745, 29746, 29751, 29752, 29753, 29754, + 29755, 29757, 29758, 29759, 29760, 29762, 29763, + 29764, 29765, 29766, 29767, 29768, 29769, 29770, + 29771, 29772, 29773, 29774, 29775, 29776, 29777, + 29778, 29779, 29780, 29782, 29784, 29789, 29792, + 29793, 29794, 29795, 29796, 29797, 29798, 29799, + 29800, 29801, 29802, 29803, 29804, 29806, 29807, + 29809, 29810, 29811, 29812, 29813, 29816, 29817, + 29818, 57532, 57533, 57534, 57535, 57536, 57537, + 57538, 57539, 57540, 57541, 57542, 57543, 57544, + 57545, 57546, 57547, 57548, 57549, 57550, 57551, + 57552, 57553, 57554, 57555, 57556, 57557, 57558, + 57559, 57560, 57561, 57562, 57563, 57564, 57565, + 57566, 57567, 57568, 57569, 57570, 57571, 57572, + 57573, 57574, 57575, 57576, 57577, 57578, 57579, + 57580, 57581, 57582, 57583, 57584, 57585, 57586, + 57587, 57588, 57589, 57590, 57591, 57592, 57593, + 57594, 57595, 57596, 57597, 57598, 57599, 57600, + 57601, 57602, 57603, 57604, 57605, 57606, 57607, + 57608, 57609, 57610, 57611, 57612, 57613, 57614, + 57615, 57616, 57617, 57618, 57619, 57620, 57621, + 57622, 57623, 57624, 57625, 29819, 29820, 29821, + 29823, 29826, 29828, 29829, 29830, 29832, 29833, + 29834, 29836, 29837, 29839, 29841, 29842, 29843, + 29844, 29845, 29846, 29847, 29848, 29849, 29850, + 29851, 29853, 29855, 29856, 29857, 29858, 29859, + 29860, 29861, 29862, 29866, 29867, 29868, 29869, + 29870, 29871, 29872, 29873, 29874, 29875, 29876, + 29877, 29878, 29879, 29880, 29881, 29883, 29884, + 29885, 29886, 29887, 29888, 29889, 29890, 29891, + 29892, 29893, 29894, 29895, 29896, 29897, 29898, + 29899, 29900, 29901, 29902, 29903, 29904, 29905, + 29907, 29908, 29909, 29910, 29911, 29912, 29913, + 29914, 29915, 29917, 29919, 29921, 29925, 29927, + 29928, 29929, 29930, 29931, 29932, 29933, 29936, + 29937, 29938, 57626, 57627, 57628, 57629, 57630, + 57631, 57632, 57633, 57634, 57635, 57636, 57637, + 57638, 57639, 57640, 57641, 57642, 57643, 57644, + 57645, 57646, 57647, 57648, 57649, 57650, 57651, + 57652, 57653, 57654, 57655, 57656, 57657, 57658, + 57659, 57660, 57661, 57662, 57663, 57664, 57665, + 57666, 57667, 57668, 57669, 57670, 57671, 57672, + 57673, 57674, 57675, 57676, 57677, 57678, 57679, + 57680, 57681, 57682, 57683, 57684, 57685, 57686, + 57687, 57688, 57689, 57690, 57691, 57692, 57693, + 57694, 57695, 57696, 57697, 57698, 57699, 57700, + 57701, 57702, 57703, 57704, 57705, 57706, 57707, + 57708, 57709, 57710, 57711, 57712, 57713, 57714, + 57715, 57716, 57717, 57718, 57719, 29939, 29941, + 29944, 29945, 29946, 29947, 29948, 29949, 29950, + 29952, 29953, 29954, 29955, 29957, 29958, 29959, + 29960, 29961, 29962, 29963, 29964, 29966, 29968, + 29970, 29972, 29973, 29974, 29975, 29979, 29981, + 29982, 29984, 29985, 29986, 29987, 29988, 29990, + 29991, 29994, 29998, 30004, 30006, 30009, 30012, + 30013, 30015, 30017, 30018, 30019, 30020, 30022, + 30023, 30025, 30026, 30029, 30032, 30033, 30034, + 30035, 30037, 30038, 30039, 30040, 30045, 30046, + 30047, 30048, 30049, 30050, 30051, 30052, 30055, + 30056, 30057, 30059, 30060, 30061, 30062, 30063, + 30064, 30065, 30067, 30069, 30070, 30071, 30074, + 30075, 30076, 30077, 30078, 30080, 30081, 30082, + 30084, 30085, 30087, 57720, 57721, 57722, 57723, + 57724, 57725, 57726, 57727, 57728, 57729, 57730, + 57731, 57732, 57733, 57734, 57735, 57736, 57737, + 57738, 57739, 57740, 57741, 57742, 57743, 57744, + 57745, 57746, 57747, 57748, 57749, 57750, 57751, + 57752, 57753, 57754, 57755, 57756, 57757, 57758, + 57759, 57760, 57761, 57762, 57763, 57764, 57765, + 57766, 57767, 57768, 57769, 57770, 57771, 57772, + 57773, 57774, 57775, 57776, 57777, 57778, 57779, + 57780, 57781, 57782, 57783, 57784, 57785, 57786, + 57787, 57788, 57789, 57790, 57791, 57792, 57793, + 57794, 57795, 57796, 57797, 57798, 57799, 57800, + 57801, 57802, 57803, 57804, 57805, 57806, 57807, + 57808, 57809, 57810, 57811, 57812, 57813, 30088, + 30089, 30090, 30092, 30093, 30094, 30096, 30099, + 30101, 30104, 30107, 30108, 30110, 30114, 30118, + 30119, 30120, 30121, 30122, 30125, 30134, 30135, + 30138, 30139, 30143, 30144, 30145, 30150, 30155, + 30156, 30158, 30159, 30160, 30161, 30163, 30167, + 30169, 30170, 30172, 30173, 30175, 30176, 30177, + 30181, 30185, 30188, 30189, 30190, 30191, 30194, + 30195, 30197, 30198, 30199, 30200, 30202, 30203, + 30205, 30206, 30210, 30212, 30214, 30215, 30216, + 30217, 30219, 30221, 30222, 30223, 30225, 30226, + 30227, 30228, 30230, 30234, 30236, 30237, 30238, + 30241, 30243, 30247, 30248, 30252, 30254, 30255, + 30257, 30258, 30262, 30263, 30265, 30266, 30267, + 30269, 30273, 30274, 30276, 57814, 57815, 57816, + 57817, 57818, 57819, 57820, 57821, 57822, 57823, + 57824, 57825, 57826, 57827, 57828, 57829, 57830, + 57831, 57832, 57833, 57834, 57835, 57836, 57837, + 57838, 57839, 57840, 57841, 57842, 57843, 57844, + 57845, 57846, 57847, 57848, 57849, 57850, 57851, + 57852, 57853, 57854, 57855, 57856, 57857, 57858, + 57859, 57860, 57861, 57862, 57863, 57864, 57865, + 57866, 57867, 57868, 57869, 57870, 57871, 57872, + 57873, 57874, 57875, 57876, 57877, 57878, 57879, + 57880, 57881, 57882, 57883, 57884, 57885, 57886, + 57887, 57888, 57889, 57890, 57891, 57892, 57893, + 57894, 57895, 57896, 57897, 57898, 57899, 57900, + 57901, 57902, 57903, 57904, 57905, 57906, 57907, + 30277, 30278, 30279, 30280, 30281, 30282, 30283, + 30286, 30287, 30288, 30289, 30290, 30291, 30293, + 30295, 30296, 30297, 30298, 30299, 30301, 30303, + 30304, 30305, 30306, 30308, 30309, 30310, 30311, + 30312, 30313, 30314, 30316, 30317, 30318, 30320, + 30321, 30322, 30323, 30324, 30325, 30326, 30327, + 30329, 30330, 30332, 30335, 30336, 30337, 30339, + 30341, 30345, 30346, 30348, 30349, 30351, 30352, + 30354, 30356, 30357, 30359, 30360, 30362, 30363, + 30364, 30365, 30366, 30367, 30368, 30369, 30370, + 30371, 30373, 30374, 30375, 30376, 30377, 30378, + 30379, 30380, 30381, 30383, 30384, 30387, 30389, + 30390, 30391, 30392, 30393, 30394, 30395, 30396, + 30397, 30398, 30400, 30401, 30403, 21834, 38463, + 22467, 25384, 21710, 21769, 21696, 30353, 30284, + 34108, 30702, 33406, 30861, 29233, 38552, 38797, + 27688, 23433, 20474, 25353, 26263, 23736, 33018, + 26696, 32942, 26114, 30414, 20985, 25942, 29100, + 32753, 34948, 20658, 22885, 25034, 28595, 33453, + 25420, 25170, 21485, 21543, 31494, 20843, 30116, + 24052, 25300, 36299, 38774, 25226, 32793, 22365, + 38712, 32610, 29240, 30333, 26575, 30334, 25670, + 20336, 36133, 25308, 31255, 26001, 29677, 25644, + 25203, 33324, 39041, 26495, 29256, 25198, 25292, + 20276, 29923, 21322, 21150, 32458, 37030, 24110, + 26758, 27036, 33152, 32465, 26834, 30917, 34444, + 38225, 20621, 35876, 33502, 32990, 21253, 35090, + 21093, 30404, 30407, 30409, 30411, 30412, 30419, + 30421, 30425, 30426, 30428, 30429, 30430, 30432, + 30433, 30434, 30435, 30436, 30438, 30439, 30440, + 30441, 30442, 30443, 30444, 30445, 30448, 30451, + 30453, 30454, 30455, 30458, 30459, 30461, 30463, + 30464, 30466, 30467, 30469, 30470, 30474, 30476, + 30478, 30479, 30480, 30481, 30482, 30483, 30484, + 30485, 30486, 30487, 30488, 30491, 30492, 30493, + 30494, 30497, 30499, 30500, 30501, 30503, 30506, + 30507, 30508, 30510, 30512, 30513, 30514, 30515, + 30516, 30521, 30523, 30525, 30526, 30527, 30530, + 30532, 30533, 30534, 30536, 30537, 30538, 30539, + 30540, 30541, 30542, 30543, 30546, 30547, 30548, + 30549, 30550, 30551, 30552, 30553, 30556, 34180, + 38649, 20445, 22561, 39281, 23453, 25265, 25253, + 26292, 35961, 40077, 29190, 26479, 30865, 24754, + 21329, 21271, 36744, 32972, 36125, 38049, 20493, + 29384, 22791, 24811, 28953, 34987, 22868, 33519, + 26412, 31528, 23849, 32503, 29997, 27893, 36454, + 36856, 36924, 40763, 27604, 37145, 31508, 24444, + 30887, 34006, 34109, 27605, 27609, 27606, 24065, + 24199, 30201, 38381, 25949, 24330, 24517, 36767, + 22721, 33218, 36991, 38491, 38829, 36793, 32534, + 36140, 25153, 20415, 21464, 21342, 36776, 36777, + 36779, 36941, 26631, 24426, 33176, 34920, 40150, + 24971, 21035, 30250, 24428, 25996, 28626, 28392, + 23486, 25672, 20853, 20912, 26564, 19993, 31177, + 39292, 28851, 30557, 30558, 30559, 30560, 30564, + 30567, 30569, 30570, 30573, 30574, 30575, 30576, + 30577, 30578, 30579, 30580, 30581, 30582, 30583, + 30584, 30586, 30587, 30588, 30593, 30594, 30595, + 30598, 30599, 30600, 30601, 30602, 30603, 30607, + 30608, 30611, 30612, 30613, 30614, 30615, 30616, + 30617, 30618, 30619, 30620, 30621, 30622, 30625, + 30627, 30628, 30630, 30632, 30635, 30637, 30638, + 30639, 30641, 30642, 30644, 30646, 30647, 30648, + 30649, 30650, 30652, 30654, 30656, 30657, 30658, + 30659, 30660, 30661, 30662, 30663, 30664, 30665, + 30666, 30667, 30668, 30670, 30671, 30672, 30673, + 30674, 30675, 30676, 30677, 30678, 30680, 30681, + 30682, 30685, 30686, 30687, 30688, 30689, 30692, + 30149, 24182, 29627, 33760, 25773, 25320, 38069, + 27874, 21338, 21187, 25615, 38082, 31636, 20271, + 24091, 33334, 33046, 33162, 28196, 27850, 39539, + 25429, 21340, 21754, 34917, 22496, 19981, 24067, + 27493, 31807, 37096, 24598, 25830, 29468, 35009, + 26448, 25165, 36130, 30572, 36393, 37319, 24425, + 33756, 34081, 39184, 21442, 34453, 27531, 24813, + 24808, 28799, 33485, 33329, 20179, 27815, 34255, + 25805, 31961, 27133, 26361, 33609, 21397, 31574, + 20391, 20876, 27979, 23618, 36461, 25554, 21449, + 33580, 33590, 26597, 30900, 25661, 23519, 23700, + 24046, 35815, 25286, 26612, 35962, 25600, 25530, + 34633, 39307, 35863, 32544, 38130, 20135, 38416, + 39076, 26124, 29462, 30694, 30696, 30698, 30703, + 30704, 30705, 30706, 30708, 30709, 30711, 30713, + 30714, 30715, 30716, 30723, 30724, 30725, 30726, + 30727, 30728, 30730, 30731, 30734, 30735, 30736, + 30739, 30741, 30745, 30747, 30750, 30752, 30753, + 30754, 30756, 30760, 30762, 30763, 30766, 30767, + 30769, 30770, 30771, 30773, 30774, 30781, 30783, + 30785, 30786, 30787, 30788, 30790, 30792, 30793, + 30794, 30795, 30797, 30799, 30801, 30803, 30804, + 30808, 30809, 30810, 30811, 30812, 30814, 30815, + 30816, 30817, 30818, 30819, 30820, 30821, 30822, + 30823, 30824, 30825, 30831, 30832, 30833, 30834, + 30835, 30836, 30837, 30838, 30840, 30841, 30842, + 30843, 30845, 30846, 30847, 30848, 30849, 30850, + 30851, 22330, 23581, 24120, 38271, 20607, 32928, + 21378, 25950, 30021, 21809, 20513, 36229, 25220, + 38046, 26397, 22066, 28526, 24034, 21557, 28818, + 36710, 25199, 25764, 25507, 24443, 28552, 37108, + 33251, 36784, 23576, 26216, 24561, 27785, 38472, + 36225, 34924, 25745, 31216, 22478, 27225, 25104, + 21576, 20056, 31243, 24809, 28548, 35802, 25215, + 36894, 39563, 31204, 21507, 30196, 25345, 21273, + 27744, 36831, 24347, 39536, 32827, 40831, 20360, + 23610, 36196, 32709, 26021, 28861, 20805, 20914, + 34411, 23815, 23456, 25277, 37228, 30068, 36364, + 31264, 24833, 31609, 20167, 32504, 30597, 19985, + 33261, 21021, 20986, 27249, 21416, 36487, 38148, + 38607, 28353, 38500, 26970, 30852, 30853, 30854, + 30856, 30858, 30859, 30863, 30864, 30866, 30868, + 30869, 30870, 30873, 30877, 30878, 30880, 30882, + 30884, 30886, 30888, 30889, 30890, 30891, 30892, + 30893, 30894, 30895, 30901, 30902, 30903, 30904, + 30906, 30907, 30908, 30909, 30911, 30912, 30914, + 30915, 30916, 30918, 30919, 30920, 30924, 30925, + 30926, 30927, 30929, 30930, 30931, 30934, 30935, + 30936, 30938, 30939, 30940, 30941, 30942, 30943, + 30944, 30945, 30946, 30947, 30948, 30949, 30950, + 30951, 30953, 30954, 30955, 30957, 30958, 30959, + 30960, 30961, 30963, 30965, 30966, 30968, 30969, + 30971, 30972, 30973, 30974, 30975, 30976, 30978, + 30979, 30980, 30982, 30983, 30984, 30985, 30986, + 30987, 30988, 30784, 20648, 30679, 25616, 35302, + 22788, 25571, 24029, 31359, 26941, 20256, 33337, + 21912, 20018, 30126, 31383, 24162, 24202, 38383, + 21019, 21561, 28810, 25462, 38180, 22402, 26149, + 26943, 37255, 21767, 28147, 32431, 34850, 25139, + 32496, 30133, 33576, 30913, 38604, 36766, 24904, + 29943, 35789, 27492, 21050, 36176, 27425, 32874, + 33905, 22257, 21254, 20174, 19995, 20945, 31895, + 37259, 31751, 20419, 36479, 31713, 31388, 25703, + 23828, 20652, 33030, 30209, 31929, 28140, 32736, + 26449, 23384, 23544, 30923, 25774, 25619, 25514, + 25387, 38169, 25645, 36798, 31572, 30249, 25171, + 22823, 21574, 27513, 20643, 25140, 24102, 27526, + 20195, 36151, 34955, 24453, 36910, 30989, 30990, + 30991, 30992, 30993, 30994, 30996, 30997, 30998, + 30999, 31000, 31001, 31002, 31003, 31004, 31005, + 31007, 31008, 31009, 31010, 31011, 31013, 31014, + 31015, 31016, 31017, 31018, 31019, 31020, 31021, + 31022, 31023, 31024, 31025, 31026, 31027, 31029, + 31030, 31031, 31032, 31033, 31037, 31039, 31042, + 31043, 31044, 31045, 31047, 31050, 31051, 31052, + 31053, 31054, 31055, 31056, 31057, 31058, 31060, + 31061, 31064, 31065, 31073, 31075, 31076, 31078, + 31081, 31082, 31083, 31084, 31086, 31088, 31089, + 31090, 31091, 31092, 31093, 31094, 31097, 31099, + 31100, 31101, 31102, 31103, 31106, 31107, 31110, + 31111, 31112, 31113, 31115, 31116, 31117, 31118, + 31120, 31121, 31122, 24608, 32829, 25285, 20025, + 21333, 37112, 25528, 32966, 26086, 27694, 20294, + 24814, 28129, 35806, 24377, 34507, 24403, 25377, + 20826, 33633, 26723, 20992, 25443, 36424, 20498, + 23707, 31095, 23548, 21040, 31291, 24764, 36947, + 30423, 24503, 24471, 30340, 36460, 28783, 30331, + 31561, 30634, 20979, 37011, 22564, 20302, 28404, + 36842, 25932, 31515, 29380, 28068, 32735, 23265, + 25269, 24213, 22320, 33922, 31532, 24093, 24351, + 36882, 32532, 39072, 25474, 28359, 30872, 28857, + 20856, 38747, 22443, 30005, 20291, 30008, 24215, + 24806, 22880, 28096, 27583, 30857, 21500, 38613, + 20939, 20993, 25481, 21514, 38035, 35843, 36300, + 29241, 30879, 34678, 36845, 35853, 21472, 31123, + 31124, 31125, 31126, 31127, 31128, 31129, 31131, + 31132, 31133, 31134, 31135, 31136, 31137, 31138, + 31139, 31140, 31141, 31142, 31144, 31145, 31146, + 31147, 31148, 31149, 31150, 31151, 31152, 31153, + 31154, 31156, 31157, 31158, 31159, 31160, 31164, + 31167, 31170, 31172, 31173, 31175, 31176, 31178, + 31180, 31182, 31183, 31184, 31187, 31188, 31190, + 31191, 31193, 31194, 31195, 31196, 31197, 31198, + 31200, 31201, 31202, 31205, 31208, 31210, 31212, + 31214, 31217, 31218, 31219, 31220, 31221, 31222, + 31223, 31225, 31226, 31228, 31230, 31231, 31233, + 31236, 31237, 31239, 31240, 31241, 31242, 31244, + 31247, 31248, 31249, 31250, 31251, 31253, 31254, + 31256, 31257, 31259, 31260, 19969, 30447, 21486, + 38025, 39030, 40718, 38189, 23450, 35746, 20002, + 19996, 20908, 33891, 25026, 21160, 26635, 20375, + 24683, 20923, 27934, 20828, 25238, 26007, 38497, + 35910, 36887, 30168, 37117, 30563, 27602, 29322, + 29420, 35835, 22581, 30585, 36172, 26460, 38208, + 32922, 24230, 28193, 22930, 31471, 30701, 38203, + 27573, 26029, 32526, 22534, 20817, 38431, 23545, + 22697, 21544, 36466, 25958, 39039, 22244, 38045, + 30462, 36929, 25479, 21702, 22810, 22842, 22427, + 36530, 26421, 36346, 33333, 21057, 24816, 22549, + 34558, 23784, 40517, 20420, 39069, 35769, 23077, + 24694, 21380, 25212, 36943, 37122, 39295, 24681, + 32780, 20799, 32819, 23572, 39285, 27953, 20108, + 31261, 31263, 31265, 31266, 31268, 31269, 31270, + 31271, 31272, 31273, 31274, 31275, 31276, 31277, + 31278, 31279, 31280, 31281, 31282, 31284, 31285, + 31286, 31288, 31290, 31294, 31296, 31297, 31298, + 31299, 31300, 31301, 31303, 31304, 31305, 31306, + 31307, 31308, 31309, 31310, 31311, 31312, 31314, + 31315, 31316, 31317, 31318, 31320, 31321, 31322, + 31323, 31324, 31325, 31326, 31327, 31328, 31329, + 31330, 31331, 31332, 31333, 31334, 31335, 31336, + 31337, 31338, 31339, 31340, 31341, 31342, 31343, + 31345, 31346, 31347, 31349, 31355, 31356, 31357, + 31358, 31362, 31365, 31367, 31369, 31370, 31371, + 31372, 31374, 31375, 31376, 31379, 31380, 31385, + 31386, 31387, 31390, 31393, 31394, 36144, 21457, + 32602, 31567, 20240, 20047, 38400, 27861, 29648, + 34281, 24070, 30058, 32763, 27146, 30718, 38034, + 32321, 20961, 28902, 21453, 36820, 33539, 36137, + 29359, 39277, 27867, 22346, 33459, 26041, 32938, + 25151, 38450, 22952, 20223, 35775, 32442, 25918, + 33778, 38750, 21857, 39134, 32933, 21290, 35837, + 21536, 32954, 24223, 27832, 36153, 33452, 37210, + 21545, 27675, 20998, 32439, 22367, 28954, 27774, + 31881, 22859, 20221, 24575, 24868, 31914, 20016, + 23553, 26539, 34562, 23792, 38155, 39118, 30127, + 28925, 36898, 20911, 32541, 35773, 22857, 20964, + 20315, 21542, 22827, 25975, 32932, 23413, 25206, + 25282, 36752, 24133, 27679, 31526, 20239, 20440, + 26381, 31395, 31396, 31399, 31401, 31402, 31403, + 31406, 31407, 31408, 31409, 31410, 31412, 31413, + 31414, 31415, 31416, 31417, 31418, 31419, 31420, + 31421, 31422, 31424, 31425, 31426, 31427, 31428, + 31429, 31430, 31431, 31432, 31433, 31434, 31436, + 31437, 31438, 31439, 31440, 31441, 31442, 31443, + 31444, 31445, 31447, 31448, 31450, 31451, 31452, + 31453, 31457, 31458, 31460, 31463, 31464, 31465, + 31466, 31467, 31468, 31470, 31472, 31473, 31474, + 31475, 31476, 31477, 31478, 31479, 31480, 31483, + 31484, 31486, 31488, 31489, 31490, 31493, 31495, + 31497, 31500, 31501, 31502, 31504, 31506, 31507, + 31510, 31511, 31512, 31514, 31516, 31517, 31519, + 31521, 31522, 31523, 31527, 31529, 31533, 28014, + 28074, 31119, 34993, 24343, 29995, 25242, 36741, + 20463, 37340, 26023, 33071, 33105, 24220, 33104, + 36212, 21103, 35206, 36171, 22797, 20613, 20184, + 38428, 29238, 33145, 36127, 23500, 35747, 38468, + 22919, 32538, 21648, 22134, 22030, 35813, 25913, + 27010, 38041, 30422, 28297, 24178, 29976, 26438, + 26577, 31487, 32925, 36214, 24863, 31174, 25954, + 36195, 20872, 21018, 38050, 32568, 32923, 32434, + 23703, 28207, 26464, 31705, 30347, 39640, 33167, + 32660, 31957, 25630, 38224, 31295, 21578, 21733, + 27468, 25601, 25096, 40509, 33011, 30105, 21106, + 38761, 33883, 26684, 34532, 38401, 38548, 38124, + 20010, 21508, 32473, 26681, 36319, 32789, 26356, + 24218, 32697, 31535, 31536, 31538, 31540, 31541, + 31542, 31543, 31545, 31547, 31549, 31551, 31552, + 31553, 31554, 31555, 31556, 31558, 31560, 31562, + 31565, 31566, 31571, 31573, 31575, 31577, 31580, + 31582, 31583, 31585, 31587, 31588, 31589, 31590, + 31591, 31592, 31593, 31594, 31595, 31596, 31597, + 31599, 31600, 31603, 31604, 31606, 31608, 31610, + 31612, 31613, 31615, 31617, 31618, 31619, 31620, + 31622, 31623, 31624, 31625, 31626, 31627, 31628, + 31630, 31631, 31633, 31634, 31635, 31638, 31640, + 31641, 31642, 31643, 31646, 31647, 31648, 31651, + 31652, 31653, 31662, 31663, 31664, 31666, 31667, + 31669, 31670, 31671, 31673, 31674, 31675, 31676, + 31677, 31678, 31679, 31680, 31682, 31683, 31684, + 22466, 32831, 26775, 24037, 25915, 21151, 24685, + 40858, 20379, 36524, 20844, 23467, 24339, 24041, + 27742, 25329, 36129, 20849, 38057, 21246, 27807, + 33503, 29399, 22434, 26500, 36141, 22815, 36764, + 33735, 21653, 31629, 20272, 27837, 23396, 22993, + 40723, 21476, 34506, 39592, 35895, 32929, 25925, + 39038, 22266, 38599, 21038, 29916, 21072, 23521, + 25346, 35074, 20054, 25296, 24618, 26874, 20851, + 23448, 20896, 35266, 31649, 39302, 32592, 24815, + 28748, 36143, 20809, 24191, 36891, 29808, 35268, + 22317, 30789, 24402, 40863, 38394, 36712, 39740, + 35809, 30328, 26690, 26588, 36330, 36149, 21053, + 36746, 28378, 26829, 38149, 37101, 22269, 26524, + 35065, 36807, 21704, 31685, 31688, 31689, 31690, + 31691, 31693, 31694, 31695, 31696, 31698, 31700, + 31701, 31702, 31703, 31704, 31707, 31708, 31710, + 31711, 31712, 31714, 31715, 31716, 31719, 31720, + 31721, 31723, 31724, 31725, 31727, 31728, 31730, + 31731, 31732, 31733, 31734, 31736, 31737, 31738, + 31739, 31741, 31743, 31744, 31745, 31746, 31747, + 31748, 31749, 31750, 31752, 31753, 31754, 31757, + 31758, 31760, 31761, 31762, 31763, 31764, 31765, + 31767, 31768, 31769, 31770, 31771, 31772, 31773, + 31774, 31776, 31777, 31778, 31779, 31780, 31781, + 31784, 31785, 31787, 31788, 31789, 31790, 31791, + 31792, 31793, 31794, 31795, 31796, 31797, 31798, + 31799, 31801, 31802, 31803, 31804, 31805, 31806, + 31810, 39608, 23401, 28023, 27686, 20133, 23475, + 39559, 37219, 25000, 37039, 38889, 21547, 28085, + 23506, 20989, 21898, 32597, 32752, 25788, 25421, + 26097, 25022, 24717, 28938, 27735, 27721, 22831, + 26477, 33322, 22741, 22158, 35946, 27627, 37085, + 22909, 32791, 21495, 28009, 21621, 21917, 33655, + 33743, 26680, 31166, 21644, 20309, 21512, 30418, + 35977, 38402, 27827, 28088, 36203, 35088, 40548, + 36154, 22079, 40657, 30165, 24456, 29408, 24680, + 21756, 20136, 27178, 34913, 24658, 36720, 21700, + 28888, 34425, 40511, 27946, 23439, 24344, 32418, + 21897, 20399, 29492, 21564, 21402, 20505, 21518, + 21628, 20046, 24573, 29786, 22774, 33899, 32993, + 34676, 29392, 31946, 28246, 31811, 31812, 31813, + 31814, 31815, 31816, 31817, 31818, 31819, 31820, + 31822, 31823, 31824, 31825, 31826, 31827, 31828, + 31829, 31830, 31831, 31832, 31833, 31834, 31835, + 31836, 31837, 31838, 31839, 31840, 31841, 31842, + 31843, 31844, 31845, 31846, 31847, 31848, 31849, + 31850, 31851, 31852, 31853, 31854, 31855, 31856, + 31857, 31858, 31861, 31862, 31863, 31864, 31865, + 31866, 31870, 31871, 31872, 31873, 31874, 31875, + 31876, 31877, 31878, 31879, 31880, 31882, 31883, + 31884, 31885, 31886, 31887, 31888, 31891, 31892, + 31894, 31897, 31898, 31899, 31904, 31905, 31907, + 31910, 31911, 31912, 31913, 31915, 31916, 31917, + 31919, 31920, 31924, 31925, 31926, 31927, 31928, + 31930, 31931, 24359, 34382, 21804, 25252, 20114, + 27818, 25143, 33457, 21719, 21326, 29502, 28369, + 30011, 21010, 21270, 35805, 27088, 24458, 24576, + 28142, 22351, 27426, 29615, 26707, 36824, 32531, + 25442, 24739, 21796, 30186, 35938, 28949, 28067, + 23462, 24187, 33618, 24908, 40644, 30970, 34647, + 31783, 30343, 20976, 24822, 29004, 26179, 24140, + 24653, 35854, 28784, 25381, 36745, 24509, 24674, + 34516, 22238, 27585, 24724, 24935, 21321, 24800, + 26214, 36159, 31229, 20250, 28905, 27719, 35763, + 35826, 32472, 33636, 26127, 23130, 39746, 27985, + 28151, 35905, 27963, 20249, 28779, 33719, 25110, + 24785, 38669, 36135, 31096, 20987, 22334, 22522, + 26426, 30072, 31293, 31215, 31637, 31935, 31936, + 31938, 31939, 31940, 31942, 31945, 31947, 31950, + 31951, 31952, 31953, 31954, 31955, 31956, 31960, + 31962, 31963, 31965, 31966, 31969, 31970, 31971, + 31972, 31973, 31974, 31975, 31977, 31978, 31979, + 31980, 31981, 31982, 31984, 31985, 31986, 31987, + 31988, 31989, 31990, 31991, 31993, 31994, 31996, + 31997, 31998, 31999, 32000, 32001, 32002, 32003, + 32004, 32005, 32006, 32007, 32008, 32009, 32011, + 32012, 32013, 32014, 32015, 32016, 32017, 32018, + 32019, 32020, 32021, 32022, 32023, 32024, 32025, + 32026, 32027, 32028, 32029, 32030, 32031, 32033, + 32035, 32036, 32037, 32038, 32040, 32041, 32042, + 32044, 32045, 32046, 32048, 32049, 32050, 32051, + 32052, 32053, 32054, 32908, 39269, 36857, 28608, + 35749, 40481, 23020, 32489, 32521, 21513, 26497, + 26840, 36753, 31821, 38598, 21450, 24613, 30142, + 27762, 21363, 23241, 32423, 25380, 20960, 33034, + 24049, 34015, 25216, 20864, 23395, 20238, 31085, + 21058, 24760, 27982, 23492, 23490, 35745, 35760, + 26082, 24524, 38469, 22931, 32487, 32426, 22025, + 26551, 22841, 20339, 23478, 21152, 33626, 39050, + 36158, 30002, 38078, 20551, 31292, 20215, 26550, + 39550, 23233, 27516, 30417, 22362, 23574, 31546, + 38388, 29006, 20860, 32937, 33392, 22904, 32516, + 33575, 26816, 26604, 30897, 30839, 25315, 25441, + 31616, 20461, 21098, 20943, 33616, 27099, 37492, + 36341, 36145, 35265, 38190, 31661, 20214, 32055, + 32056, 32057, 32058, 32059, 32060, 32061, 32062, + 32063, 32064, 32065, 32066, 32067, 32068, 32069, + 32070, 32071, 32072, 32073, 32074, 32075, 32076, + 32077, 32078, 32079, 32080, 32081, 32082, 32083, + 32084, 32085, 32086, 32087, 32088, 32089, 32090, + 32091, 32092, 32093, 32094, 32095, 32096, 32097, + 32098, 32099, 32100, 32101, 32102, 32103, 32104, + 32105, 32106, 32107, 32108, 32109, 32111, 32112, + 32113, 32114, 32115, 32116, 32117, 32118, 32120, + 32121, 32122, 32123, 32124, 32125, 32126, 32127, + 32128, 32129, 32130, 32131, 32132, 32133, 32134, + 32135, 32136, 32137, 32138, 32139, 32140, 32141, + 32142, 32143, 32144, 32145, 32146, 32147, 32148, + 32149, 32150, 32151, 32152, 20581, 33328, 21073, + 39279, 28176, 28293, 28071, 24314, 20725, 23004, + 23558, 27974, 27743, 30086, 33931, 26728, 22870, + 35762, 21280, 37233, 38477, 34121, 26898, 30977, + 28966, 33014, 20132, 37066, 27975, 39556, 23047, + 22204, 25605, 38128, 30699, 20389, 33050, 29409, + 35282, 39290, 32564, 32478, 21119, 25945, 37237, + 36735, 36739, 21483, 31382, 25581, 25509, 30342, + 31224, 34903, 38454, 25130, 21163, 33410, 26708, + 26480, 25463, 30571, 31469, 27905, 32467, 35299, + 22992, 25106, 34249, 33445, 30028, 20511, 20171, + 30117, 35819, 23626, 24062, 31563, 26020, 37329, + 20170, 27941, 35167, 32039, 38182, 20165, 35880, + 36827, 38771, 26187, 31105, 36817, 28908, 28024, + 32153, 32154, 32155, 32156, 32157, 32158, 32159, + 32160, 32161, 32162, 32163, 32164, 32165, 32167, + 32168, 32169, 32170, 32171, 32172, 32173, 32175, + 32176, 32177, 32178, 32179, 32180, 32181, 32182, + 32183, 32184, 32185, 32186, 32187, 32188, 32189, + 32190, 32191, 32192, 32193, 32194, 32195, 32196, + 32197, 32198, 32199, 32200, 32201, 32202, 32203, + 32204, 32205, 32206, 32207, 32208, 32209, 32210, + 32211, 32212, 32213, 32214, 32215, 32216, 32217, + 32218, 32219, 32220, 32221, 32222, 32223, 32224, + 32225, 32226, 32227, 32228, 32229, 32230, 32231, + 32232, 32233, 32234, 32235, 32236, 32237, 32238, + 32239, 32240, 32241, 32242, 32243, 32244, 32245, + 32246, 32247, 32248, 32249, 32250, 23613, 21170, + 33606, 20834, 33550, 30555, 26230, 40120, 20140, + 24778, 31934, 31923, 32463, 20117, 35686, 26223, + 39048, 38745, 22659, 25964, 38236, 24452, 30153, + 38742, 31455, 31454, 20928, 28847, 31384, 25578, + 31350, 32416, 29590, 38893, 20037, 28792, 20061, + 37202, 21417, 25937, 26087, 33276, 33285, 21646, + 23601, 30106, 38816, 25304, 29401, 30141, 23621, + 39545, 33738, 23616, 21632, 30697, 20030, 27822, + 32858, 25298, 25454, 24040, 20855, 36317, 36382, + 38191, 20465, 21477, 24807, 28844, 21095, 25424, + 40515, 23071, 20518, 30519, 21367, 32482, 25733, + 25899, 25225, 25496, 20500, 29237, 35273, 20915, + 35776, 32477, 22343, 33740, 38055, 20891, 21531, + 23803, 32251, 32252, 32253, 32254, 32255, 32256, + 32257, 32258, 32259, 32260, 32261, 32262, 32263, + 32264, 32265, 32266, 32267, 32268, 32269, 32270, + 32271, 32272, 32273, 32274, 32275, 32276, 32277, + 32278, 32279, 32280, 32281, 32282, 32283, 32284, + 32285, 32286, 32287, 32288, 32289, 32290, 32291, + 32292, 32293, 32294, 32295, 32296, 32297, 32298, + 32299, 32300, 32301, 32302, 32303, 32304, 32305, + 32306, 32307, 32308, 32309, 32310, 32311, 32312, + 32313, 32314, 32316, 32317, 32318, 32319, 32320, + 32322, 32323, 32324, 32325, 32326, 32328, 32329, + 32330, 32331, 32332, 32333, 32334, 32335, 32336, + 32337, 32338, 32339, 32340, 32341, 32342, 32343, + 32344, 32345, 32346, 32347, 32348, 32349, 20426, + 31459, 27994, 37089, 39567, 21888, 21654, 21345, + 21679, 24320, 25577, 26999, 20975, 24936, 21002, + 22570, 21208, 22350, 30733, 30475, 24247, 24951, + 31968, 25179, 25239, 20130, 28821, 32771, 25335, + 28900, 38752, 22391, 33499, 26607, 26869, 30933, + 39063, 31185, 22771, 21683, 21487, 28212, 20811, + 21051, 23458, 35838, 32943, 21827, 22438, 24691, + 22353, 21549, 31354, 24656, 23380, 25511, 25248, + 21475, 25187, 23495, 26543, 21741, 31391, 33510, + 37239, 24211, 35044, 22840, 22446, 25358, 36328, + 33007, 22359, 31607, 20393, 24555, 23485, 27454, + 21281, 31568, 29378, 26694, 30719, 30518, 26103, + 20917, 20111, 30420, 23743, 31397, 33909, 22862, + 39745, 20608, 32350, 32351, 32352, 32353, 32354, + 32355, 32356, 32357, 32358, 32359, 32360, 32361, + 32362, 32363, 32364, 32365, 32366, 32367, 32368, + 32369, 32370, 32371, 32372, 32373, 32374, 32375, + 32376, 32377, 32378, 32379, 32380, 32381, 32382, + 32383, 32384, 32385, 32387, 32388, 32389, 32390, + 32391, 32392, 32393, 32394, 32395, 32396, 32397, + 32398, 32399, 32400, 32401, 32402, 32403, 32404, + 32405, 32406, 32407, 32408, 32409, 32410, 32412, + 32413, 32414, 32430, 32436, 32443, 32444, 32470, + 32484, 32492, 32505, 32522, 32528, 32542, 32567, + 32569, 32571, 32572, 32573, 32574, 32575, 32576, + 32577, 32579, 32582, 32583, 32584, 32585, 32586, + 32587, 32588, 32589, 32590, 32591, 32594, 32595, + 39304, 24871, 28291, 22372, 26118, 25414, 22256, + 25324, 25193, 24275, 38420, 22403, 25289, 21895, + 34593, 33098, 36771, 21862, 33713, 26469, 36182, + 34013, 23146, 26639, 25318, 31726, 38417, 20848, + 28572, 35888, 25597, 35272, 25042, 32518, 28866, + 28389, 29701, 27028, 29436, 24266, 37070, 26391, + 28010, 25438, 21171, 29282, 32769, 20332, 23013, + 37226, 28889, 28061, 21202, 20048, 38647, 38253, + 34174, 30922, 32047, 20769, 22418, 25794, 32907, + 31867, 27882, 26865, 26974, 20919, 21400, 26792, + 29313, 40654, 31729, 29432, 31163, 28435, 29702, + 26446, 37324, 40100, 31036, 33673, 33620, 21519, + 26647, 20029, 21385, 21169, 30782, 21382, 21033, + 20616, 20363, 20432, 32598, 32601, 32603, 32604, + 32605, 32606, 32608, 32611, 32612, 32613, 32614, + 32615, 32619, 32620, 32621, 32623, 32624, 32627, + 32629, 32630, 32631, 32632, 32634, 32635, 32636, + 32637, 32639, 32640, 32642, 32643, 32644, 32645, + 32646, 32647, 32648, 32649, 32651, 32653, 32655, + 32656, 32657, 32658, 32659, 32661, 32662, 32663, + 32664, 32665, 32667, 32668, 32672, 32674, 32675, + 32677, 32678, 32680, 32681, 32682, 32683, 32684, + 32685, 32686, 32689, 32691, 32692, 32693, 32694, + 32695, 32698, 32699, 32702, 32704, 32706, 32707, + 32708, 32710, 32711, 32712, 32713, 32715, 32717, + 32719, 32720, 32721, 32722, 32723, 32726, 32727, + 32729, 32730, 32731, 32732, 32733, 32734, 32738, + 32739, 30178, 31435, 31890, 27813, 38582, 21147, + 29827, 21737, 20457, 32852, 33714, 36830, 38256, + 24265, 24604, 28063, 24088, 25947, 33080, 38142, + 24651, 28860, 32451, 31918, 20937, 26753, 31921, + 33391, 20004, 36742, 37327, 26238, 20142, 35845, + 25769, 32842, 20698, 30103, 29134, 23525, 36797, + 28518, 20102, 25730, 38243, 24278, 26009, 21015, + 35010, 28872, 21155, 29454, 29747, 26519, 30967, + 38678, 20020, 37051, 40158, 28107, 20955, 36161, + 21533, 25294, 29618, 33777, 38646, 40836, 38083, + 20278, 32666, 20940, 28789, 38517, 23725, 39046, + 21478, 20196, 28316, 29705, 27060, 30827, 39311, + 30041, 21016, 30244, 27969, 26611, 20845, 40857, + 32843, 21657, 31548, 31423, 32740, 32743, 32744, + 32746, 32747, 32748, 32749, 32751, 32754, 32756, + 32757, 32758, 32759, 32760, 32761, 32762, 32765, + 32766, 32767, 32770, 32775, 32776, 32777, 32778, + 32782, 32783, 32785, 32787, 32794, 32795, 32797, + 32798, 32799, 32801, 32803, 32804, 32811, 32812, + 32813, 32814, 32815, 32816, 32818, 32820, 32825, + 32826, 32828, 32830, 32832, 32833, 32836, 32837, + 32839, 32840, 32841, 32846, 32847, 32848, 32849, + 32851, 32853, 32854, 32855, 32857, 32859, 32860, + 32861, 32862, 32863, 32864, 32865, 32866, 32867, + 32868, 32869, 32870, 32871, 32872, 32875, 32876, + 32877, 32878, 32879, 32880, 32882, 32883, 32884, + 32885, 32886, 32887, 32888, 32889, 32890, 32891, + 32892, 32893, 38534, 22404, 25314, 38471, 27004, + 23044, 25602, 31699, 28431, 38475, 33446, 21346, + 39045, 24208, 28809, 25523, 21348, 34383, 40065, + 40595, 30860, 38706, 36335, 36162, 40575, 28510, + 31108, 24405, 38470, 25134, 39540, 21525, 38109, + 20387, 26053, 23653, 23649, 32533, 34385, 27695, + 24459, 29575, 28388, 32511, 23782, 25371, 23402, + 28390, 21365, 20081, 25504, 30053, 25249, 36718, + 20262, 20177, 27814, 32438, 35770, 33821, 34746, + 32599, 36923, 38179, 31657, 39585, 35064, 33853, + 27931, 39558, 32476, 22920, 40635, 29595, 30721, + 34434, 39532, 39554, 22043, 21527, 22475, 20080, + 40614, 21334, 36808, 33033, 30610, 39314, 34542, + 28385, 34067, 26364, 24930, 28459, 32894, 32897, + 32898, 32901, 32904, 32906, 32909, 32910, 32911, + 32912, 32913, 32914, 32916, 32917, 32919, 32921, + 32926, 32931, 32934, 32935, 32936, 32940, 32944, + 32947, 32949, 32950, 32952, 32953, 32955, 32965, + 32967, 32968, 32969, 32970, 32971, 32975, 32976, + 32977, 32978, 32979, 32980, 32981, 32984, 32991, + 32992, 32994, 32995, 32998, 33006, 33013, 33015, + 33017, 33019, 33022, 33023, 33024, 33025, 33027, + 33028, 33029, 33031, 33032, 33035, 33036, 33045, + 33047, 33049, 33051, 33052, 33053, 33055, 33056, + 33057, 33058, 33059, 33060, 33061, 33062, 33063, + 33064, 33065, 33066, 33067, 33069, 33070, 33072, + 33075, 33076, 33077, 33079, 33081, 33082, 33083, + 33084, 33085, 33087, 35881, 33426, 33579, 30450, + 27667, 24537, 33725, 29483, 33541, 38170, 27611, + 30683, 38086, 21359, 33538, 20882, 24125, 35980, + 36152, 20040, 29611, 26522, 26757, 37238, 38665, + 29028, 27809, 30473, 23186, 38209, 27599, 32654, + 26151, 23504, 22969, 23194, 38376, 38391, 20204, + 33804, 33945, 27308, 30431, 38192, 29467, 26790, + 23391, 30511, 37274, 38753, 31964, 36855, 35868, + 24357, 31859, 31192, 35269, 27852, 34588, 23494, + 24130, 26825, 30496, 32501, 20885, 20813, 21193, + 23081, 32517, 38754, 33495, 25551, 30596, 34256, + 31186, 28218, 24217, 22937, 34065, 28781, 27665, + 25279, 30399, 25935, 24751, 38397, 26126, 34719, + 40483, 38125, 21517, 21629, 35884, 25720, 33088, + 33089, 33090, 33091, 33092, 33093, 33095, 33097, + 33101, 33102, 33103, 33106, 33110, 33111, 33112, + 33115, 33116, 33117, 33118, 33119, 33121, 33122, + 33123, 33124, 33126, 33128, 33130, 33131, 33132, + 33135, 33138, 33139, 33141, 33142, 33143, 33144, + 33153, 33155, 33156, 33157, 33158, 33159, 33161, + 33163, 33164, 33165, 33166, 33168, 33170, 33171, + 33172, 33173, 33174, 33175, 33177, 33178, 33182, + 33183, 33184, 33185, 33186, 33188, 33189, 33191, + 33193, 33195, 33196, 33197, 33198, 33199, 33200, + 33201, 33202, 33204, 33205, 33206, 33207, 33208, + 33209, 33212, 33213, 33214, 33215, 33220, 33221, + 33223, 33224, 33225, 33227, 33229, 33230, 33231, + 33232, 33233, 33234, 33235, 25721, 34321, 27169, + 33180, 30952, 25705, 39764, 25273, 26411, 33707, + 22696, 40664, 27819, 28448, 23518, 38476, 35851, + 29279, 26576, 25287, 29281, 20137, 22982, 27597, + 22675, 26286, 24149, 21215, 24917, 26408, 30446, + 30566, 29287, 31302, 25343, 21738, 21584, 38048, + 37027, 23068, 32435, 27670, 20035, 22902, 32784, + 22856, 21335, 30007, 38590, 22218, 25376, 33041, + 24700, 38393, 28118, 21602, 39297, 20869, 23273, + 33021, 22958, 38675, 20522, 27877, 23612, 25311, + 20320, 21311, 33147, 36870, 28346, 34091, 25288, + 24180, 30910, 25781, 25467, 24565, 23064, 37247, + 40479, 23615, 25423, 32834, 23421, 21870, 38218, + 38221, 28037, 24744, 26592, 29406, 20957, 23425, + 33236, 33237, 33238, 33239, 33240, 33241, 33242, + 33243, 33244, 33245, 33246, 33247, 33248, 33249, + 33250, 33252, 33253, 33254, 33256, 33257, 33259, + 33262, 33263, 33264, 33265, 33266, 33269, 33270, + 33271, 33272, 33273, 33274, 33277, 33279, 33283, + 33287, 33288, 33289, 33290, 33291, 33294, 33295, + 33297, 33299, 33301, 33302, 33303, 33304, 33305, + 33306, 33309, 33312, 33316, 33317, 33318, 33319, + 33321, 33326, 33330, 33338, 33340, 33341, 33343, + 33344, 33345, 33346, 33347, 33349, 33350, 33352, + 33354, 33356, 33357, 33358, 33360, 33361, 33362, + 33363, 33364, 33365, 33366, 33367, 33369, 33371, + 33372, 33373, 33374, 33376, 33377, 33378, 33379, + 33380, 33381, 33382, 33383, 33385, 25319, 27870, + 29275, 25197, 38062, 32445, 33043, 27987, 20892, + 24324, 22900, 21162, 24594, 22899, 26262, 34384, + 30111, 25386, 25062, 31983, 35834, 21734, 27431, + 40485, 27572, 34261, 21589, 20598, 27812, 21866, + 36276, 29228, 24085, 24597, 29750, 25293, 25490, + 29260, 24472, 28227, 27966, 25856, 28504, 30424, + 30928, 30460, 30036, 21028, 21467, 20051, 24222, + 26049, 32810, 32982, 25243, 21638, 21032, 28846, + 34957, 36305, 27873, 21624, 32986, 22521, 35060, + 36180, 38506, 37197, 20329, 27803, 21943, 30406, + 30768, 25256, 28921, 28558, 24429, 34028, 26842, + 30844, 31735, 33192, 26379, 40527, 25447, 30896, + 22383, 30738, 38713, 25209, 25259, 21128, 29749, + 27607, 33386, 33387, 33388, 33389, 33393, 33397, + 33398, 33399, 33400, 33403, 33404, 33408, 33409, + 33411, 33413, 33414, 33415, 33417, 33420, 33424, + 33427, 33428, 33429, 33430, 33434, 33435, 33438, + 33440, 33442, 33443, 33447, 33458, 33461, 33462, + 33466, 33467, 33468, 33471, 33472, 33474, 33475, + 33477, 33478, 33481, 33488, 33494, 33497, 33498, + 33501, 33506, 33511, 33512, 33513, 33514, 33516, + 33517, 33518, 33520, 33522, 33523, 33525, 33526, + 33528, 33530, 33532, 33533, 33534, 33535, 33536, + 33546, 33547, 33549, 33552, 33554, 33555, 33558, + 33560, 33561, 33565, 33566, 33567, 33568, 33569, + 33570, 33571, 33572, 33573, 33574, 33577, 33578, + 33582, 33584, 33586, 33591, 33595, 33597, 21860, + 33086, 30130, 30382, 21305, 30174, 20731, 23617, + 35692, 31687, 20559, 29255, 39575, 39128, 28418, + 29922, 31080, 25735, 30629, 25340, 39057, 36139, + 21697, 32856, 20050, 22378, 33529, 33805, 24179, + 20973, 29942, 35780, 23631, 22369, 27900, 39047, + 23110, 30772, 39748, 36843, 31893, 21078, 25169, + 38138, 20166, 33670, 33889, 33769, 33970, 22484, + 26420, 22275, 26222, 28006, 35889, 26333, 28689, + 26399, 27450, 26646, 25114, 22971, 19971, 20932, + 28422, 26578, 27791, 20854, 26827, 22855, 27495, + 30054, 23822, 33040, 40784, 26071, 31048, 31041, + 39569, 36215, 23682, 20062, 20225, 21551, 22865, + 30732, 22120, 27668, 36804, 24323, 27773, 27875, + 35755, 25488, 33598, 33599, 33601, 33602, 33604, + 33605, 33608, 33610, 33611, 33612, 33613, 33614, + 33619, 33621, 33622, 33623, 33624, 33625, 33629, + 33634, 33648, 33649, 33650, 33651, 33652, 33653, + 33654, 33657, 33658, 33662, 33663, 33664, 33665, + 33666, 33667, 33668, 33671, 33672, 33674, 33675, + 33676, 33677, 33679, 33680, 33681, 33684, 33685, + 33686, 33687, 33689, 33690, 33693, 33695, 33697, + 33698, 33699, 33700, 33701, 33702, 33703, 33708, + 33709, 33710, 33711, 33717, 33723, 33726, 33727, + 33730, 33731, 33732, 33734, 33736, 33737, 33739, + 33741, 33742, 33744, 33745, 33746, 33747, 33749, + 33751, 33753, 33754, 33755, 33758, 33762, 33763, + 33764, 33766, 33767, 33768, 33771, 33772, 33773, + 24688, 27965, 29301, 25190, 38030, 38085, 21315, + 36801, 31614, 20191, 35878, 20094, 40660, 38065, + 38067, 21069, 28508, 36963, 27973, 35892, 22545, + 23884, 27424, 27465, 26538, 21595, 33108, 32652, + 22681, 34103, 24378, 25250, 27207, 38201, 25970, + 24708, 26725, 30631, 20052, 20392, 24039, 38808, + 25772, 32728, 23789, 20431, 31373, 20999, 33540, + 19988, 24623, 31363, 38054, 20405, 20146, 31206, + 29748, 21220, 33465, 25810, 31165, 23517, 27777, + 38738, 36731, 27682, 20542, 21375, 28165, 25806, + 26228, 27696, 24773, 39031, 35831, 24198, 29756, + 31351, 31179, 19992, 37041, 29699, 27714, 22234, + 37195, 27845, 36235, 21306, 34502, 26354, 36527, + 23624, 39537, 28192, 33774, 33775, 33779, 33780, + 33781, 33782, 33783, 33786, 33787, 33788, 33790, + 33791, 33792, 33794, 33797, 33799, 33800, 33801, + 33802, 33808, 33810, 33811, 33812, 33813, 33814, + 33815, 33817, 33818, 33819, 33822, 33823, 33824, + 33825, 33826, 33827, 33833, 33834, 33835, 33836, + 33837, 33838, 33839, 33840, 33842, 33843, 33844, + 33845, 33846, 33847, 33849, 33850, 33851, 33854, + 33855, 33856, 33857, 33858, 33859, 33860, 33861, + 33863, 33864, 33865, 33866, 33867, 33868, 33869, + 33870, 33871, 33872, 33874, 33875, 33876, 33877, + 33878, 33880, 33885, 33886, 33887, 33888, 33890, + 33892, 33893, 33894, 33895, 33896, 33898, 33902, + 33903, 33904, 33906, 33908, 33911, 33913, 33915, + 33916, 21462, 23094, 40843, 36259, 21435, 22280, + 39079, 26435, 37275, 27849, 20840, 30154, 25331, + 29356, 21048, 21149, 32570, 28820, 30264, 21364, + 40522, 27063, 30830, 38592, 35033, 32676, 28982, + 29123, 20873, 26579, 29924, 22756, 25880, 22199, + 35753, 39286, 25200, 32469, 24825, 28909, 22764, + 20161, 20154, 24525, 38887, 20219, 35748, 20995, + 22922, 32427, 25172, 20173, 26085, 25102, 33592, + 33993, 33635, 34701, 29076, 28342, 23481, 32466, + 20887, 25545, 26580, 32905, 33593, 34837, 20754, + 23418, 22914, 36785, 20083, 27741, 20837, 35109, + 36719, 38446, 34122, 29790, 38160, 38384, 28070, + 33509, 24369, 25746, 27922, 33832, 33134, 40131, + 22622, 36187, 19977, 21441, 33917, 33918, 33919, + 33920, 33921, 33923, 33924, 33925, 33926, 33930, + 33933, 33935, 33936, 33937, 33938, 33939, 33940, + 33941, 33942, 33944, 33946, 33947, 33949, 33950, + 33951, 33952, 33954, 33955, 33956, 33957, 33958, + 33959, 33960, 33961, 33962, 33963, 33964, 33965, + 33966, 33968, 33969, 33971, 33973, 33974, 33975, + 33979, 33980, 33982, 33984, 33986, 33987, 33989, + 33990, 33991, 33992, 33995, 33996, 33998, 33999, + 34002, 34004, 34005, 34007, 34008, 34009, 34010, + 34011, 34012, 34014, 34017, 34018, 34020, 34023, + 34024, 34025, 34026, 34027, 34029, 34030, 34031, + 34033, 34034, 34035, 34036, 34037, 34038, 34039, + 34040, 34041, 34042, 34043, 34045, 34046, 34048, + 34049, 34050, 20254, 25955, 26705, 21971, 20007, + 25620, 39578, 25195, 23234, 29791, 33394, 28073, + 26862, 20711, 33678, 30722, 26432, 21049, 27801, + 32433, 20667, 21861, 29022, 31579, 26194, 29642, + 33515, 26441, 23665, 21024, 29053, 34923, 38378, + 38485, 25797, 36193, 33203, 21892, 27733, 25159, + 32558, 22674, 20260, 21830, 36175, 26188, 19978, + 23578, 35059, 26786, 25422, 31245, 28903, 33421, + 21242, 38902, 23569, 21736, 37045, 32461, 22882, + 36170, 34503, 33292, 33293, 36198, 25668, 23556, + 24913, 28041, 31038, 35774, 30775, 30003, 21627, + 20280, 36523, 28145, 23072, 32453, 31070, 27784, + 23457, 23158, 29978, 32958, 24910, 28183, 22768, + 29983, 29989, 29298, 21319, 32499, 34051, 34052, + 34053, 34054, 34055, 34056, 34057, 34058, 34059, + 34061, 34062, 34063, 34064, 34066, 34068, 34069, + 34070, 34072, 34073, 34075, 34076, 34077, 34078, + 34080, 34082, 34083, 34084, 34085, 34086, 34087, + 34088, 34089, 34090, 34093, 34094, 34095, 34096, + 34097, 34098, 34099, 34100, 34101, 34102, 34110, + 34111, 34112, 34113, 34114, 34116, 34117, 34118, + 34119, 34123, 34124, 34125, 34126, 34127, 34128, + 34129, 34130, 34131, 34132, 34133, 34135, 34136, + 34138, 34139, 34140, 34141, 34143, 34144, 34145, + 34146, 34147, 34149, 34150, 34151, 34153, 34154, + 34155, 34156, 34157, 34158, 34159, 34160, 34161, + 34163, 34165, 34166, 34167, 34168, 34172, 34173, + 34175, 34176, 34177, 30465, 30427, 21097, 32988, + 22307, 24072, 22833, 29422, 26045, 28287, 35799, + 23608, 34417, 21313, 30707, 25342, 26102, 20160, + 39135, 34432, 23454, 35782, 21490, 30690, 20351, + 23630, 39542, 22987, 24335, 31034, 22763, 19990, + 26623, 20107, 25325, 35475, 36893, 21183, 26159, + 21980, 22124, 36866, 20181, 20365, 37322, 39280, + 27663, 24066, 24643, 23460, 35270, 35797, 25910, + 25163, 39318, 23432, 23551, 25480, 21806, 21463, + 30246, 20861, 34092, 26530, 26803, 27530, 25234, + 36755, 21460, 33298, 28113, 30095, 20070, 36174, + 23408, 29087, 34223, 26257, 26329, 32626, 34560, + 40653, 40736, 23646, 26415, 36848, 26641, 26463, + 25101, 31446, 22661, 24246, 25968, 28465, 34178, + 34179, 34182, 34184, 34185, 34186, 34187, 34188, + 34189, 34190, 34192, 34193, 34194, 34195, 34196, + 34197, 34198, 34199, 34200, 34201, 34202, 34205, + 34206, 34207, 34208, 34209, 34210, 34211, 34213, + 34214, 34215, 34217, 34219, 34220, 34221, 34225, + 34226, 34227, 34228, 34229, 34230, 34232, 34234, + 34235, 34236, 34237, 34238, 34239, 34240, 34242, + 34243, 34244, 34245, 34246, 34247, 34248, 34250, + 34251, 34252, 34253, 34254, 34257, 34258, 34260, + 34262, 34263, 34264, 34265, 34266, 34267, 34269, + 34270, 34271, 34272, 34273, 34274, 34275, 34277, + 34278, 34279, 34280, 34282, 34283, 34284, 34285, + 34286, 34287, 34288, 34289, 34290, 34291, 34292, + 34293, 34294, 34295, 34296, 24661, 21047, 32781, + 25684, 34928, 29993, 24069, 26643, 25332, 38684, + 21452, 29245, 35841, 27700, 30561, 31246, 21550, + 30636, 39034, 33308, 35828, 30805, 26388, 28865, + 26031, 25749, 22070, 24605, 31169, 21496, 19997, + 27515, 32902, 23546, 21987, 22235, 20282, 20284, + 39282, 24051, 26494, 32824, 24578, 39042, 36865, + 23435, 35772, 35829, 25628, 33368, 25822, 22013, + 33487, 37221, 20439, 32032, 36895, 31903, 20723, + 22609, 28335, 23487, 35785, 32899, 37240, 33948, + 31639, 34429, 38539, 38543, 32485, 39635, 30862, + 23681, 31319, 36930, 38567, 31071, 23385, 25439, + 31499, 34001, 26797, 21766, 32553, 29712, 32034, + 38145, 25152, 22604, 20182, 23427, 22905, 22612, + 34297, 34298, 34300, 34301, 34302, 34304, 34305, + 34306, 34307, 34308, 34310, 34311, 34312, 34313, + 34314, 34315, 34316, 34317, 34318, 34319, 34320, + 34322, 34323, 34324, 34325, 34327, 34328, 34329, + 34330, 34331, 34332, 34333, 34334, 34335, 34336, + 34337, 34338, 34339, 34340, 34341, 34342, 34344, + 34346, 34347, 34348, 34349, 34350, 34351, 34352, + 34353, 34354, 34355, 34356, 34357, 34358, 34359, + 34361, 34362, 34363, 34365, 34366, 34367, 34368, + 34369, 34370, 34371, 34372, 34373, 34374, 34375, + 34376, 34377, 34378, 34379, 34380, 34386, 34387, + 34389, 34390, 34391, 34392, 34393, 34395, 34396, + 34397, 34399, 34400, 34401, 34403, 34404, 34405, + 34406, 34407, 34408, 34409, 34410, 29549, 25374, + 36427, 36367, 32974, 33492, 25260, 21488, 27888, + 37214, 22826, 24577, 27760, 22349, 25674, 36138, + 30251, 28393, 22363, 27264, 30192, 28525, 35885, + 35848, 22374, 27631, 34962, 30899, 25506, 21497, + 28845, 27748, 22616, 25642, 22530, 26848, 33179, + 21776, 31958, 20504, 36538, 28108, 36255, 28907, + 25487, 28059, 28372, 32486, 33796, 26691, 36867, + 28120, 38518, 35752, 22871, 29305, 34276, 33150, + 30140, 35466, 26799, 21076, 36386, 38161, 25552, + 39064, 36420, 21884, 20307, 26367, 22159, 24789, + 28053, 21059, 23625, 22825, 28155, 22635, 30000, + 29980, 24684, 33300, 33094, 25361, 26465, 36834, + 30522, 36339, 36148, 38081, 24086, 21381, 21548, + 28867, 34413, 34415, 34416, 34418, 34419, 34420, + 34421, 34422, 34423, 34424, 34435, 34436, 34437, + 34438, 34439, 34440, 34441, 34446, 34447, 34448, + 34449, 34450, 34452, 34454, 34455, 34456, 34457, + 34458, 34459, 34462, 34463, 34464, 34465, 34466, + 34469, 34470, 34475, 34477, 34478, 34482, 34483, + 34487, 34488, 34489, 34491, 34492, 34493, 34494, + 34495, 34497, 34498, 34499, 34501, 34504, 34508, + 34509, 34514, 34515, 34517, 34518, 34519, 34522, + 34524, 34525, 34528, 34529, 34530, 34531, 34533, + 34534, 34535, 34536, 34538, 34539, 34540, 34543, + 34549, 34550, 34551, 34554, 34555, 34556, 34557, + 34559, 34561, 34564, 34565, 34566, 34571, 34572, + 34574, 34575, 34576, 34577, 34580, 34582, 27712, + 24311, 20572, 20141, 24237, 25402, 33351, 36890, + 26704, 37230, 30643, 21516, 38108, 24420, 31461, + 26742, 25413, 31570, 32479, 30171, 20599, 25237, + 22836, 36879, 20984, 31171, 31361, 22270, 24466, + 36884, 28034, 23648, 22303, 21520, 20820, 28237, + 22242, 25512, 39059, 33151, 34581, 35114, 36864, + 21534, 23663, 33216, 25302, 25176, 33073, 40501, + 38464, 39534, 39548, 26925, 22949, 25299, 21822, + 25366, 21703, 34521, 27964, 23043, 29926, 34972, + 27498, 22806, 35916, 24367, 28286, 29609, 39037, + 20024, 28919, 23436, 30871, 25405, 26202, 30358, + 24779, 23451, 23113, 19975, 33109, 27754, 29579, + 20129, 26505, 32593, 24448, 26106, 26395, 24536, + 22916, 23041, 34585, 34587, 34589, 34591, 34592, + 34596, 34598, 34599, 34600, 34602, 34603, 34604, + 34605, 34607, 34608, 34610, 34611, 34613, 34614, + 34616, 34617, 34618, 34620, 34621, 34624, 34625, + 34626, 34627, 34628, 34629, 34630, 34634, 34635, + 34637, 34639, 34640, 34641, 34642, 34644, 34645, + 34646, 34648, 34650, 34651, 34652, 34653, 34654, + 34655, 34657, 34658, 34662, 34663, 34664, 34665, + 34666, 34667, 34668, 34669, 34671, 34673, 34674, + 34675, 34677, 34679, 34680, 34681, 34682, 34687, + 34688, 34689, 34692, 34694, 34695, 34697, 34698, + 34700, 34702, 34703, 34704, 34705, 34706, 34708, + 34709, 34710, 34712, 34713, 34714, 34715, 34716, + 34717, 34718, 34720, 34721, 34722, 34723, 34724, + 24013, 24494, 21361, 38886, 36829, 26693, 22260, + 21807, 24799, 20026, 28493, 32500, 33479, 33806, + 22996, 20255, 20266, 23614, 32428, 26410, 34074, + 21619, 30031, 32963, 21890, 39759, 20301, 28205, + 35859, 23561, 24944, 21355, 30239, 28201, 34442, + 25991, 38395, 32441, 21563, 31283, 32010, 38382, + 21985, 32705, 29934, 25373, 34583, 28065, 31389, + 25105, 26017, 21351, 25569, 27779, 24043, 21596, + 38056, 20044, 27745, 35820, 23627, 26080, 33436, + 26791, 21566, 21556, 27595, 27494, 20116, 25410, + 21320, 33310, 20237, 20398, 22366, 25098, 38654, + 26212, 29289, 21247, 21153, 24735, 35823, 26132, + 29081, 26512, 35199, 30802, 30717, 26224, 22075, + 21560, 38177, 29306, 34725, 34726, 34727, 34729, + 34730, 34734, 34736, 34737, 34738, 34740, 34742, + 34743, 34744, 34745, 34747, 34748, 34750, 34751, + 34753, 34754, 34755, 34756, 34757, 34759, 34760, + 34761, 34764, 34765, 34766, 34767, 34768, 34772, + 34773, 34774, 34775, 34776, 34777, 34778, 34780, + 34781, 34782, 34783, 34785, 34786, 34787, 34788, + 34790, 34791, 34792, 34793, 34795, 34796, 34797, + 34799, 34800, 34801, 34802, 34803, 34804, 34805, + 34806, 34807, 34808, 34810, 34811, 34812, 34813, + 34815, 34816, 34817, 34818, 34820, 34821, 34822, + 34823, 34824, 34825, 34827, 34828, 34829, 34830, + 34831, 34832, 34833, 34834, 34836, 34839, 34840, + 34841, 34842, 34844, 34845, 34846, 34847, 34848, + 34851, 31232, 24687, 24076, 24713, 33181, 22805, + 24796, 29060, 28911, 28330, 27728, 29312, 27268, + 34989, 24109, 20064, 23219, 21916, 38115, 27927, + 31995, 38553, 25103, 32454, 30606, 34430, 21283, + 38686, 36758, 26247, 23777, 20384, 29421, 19979, + 21414, 22799, 21523, 25472, 38184, 20808, 20185, + 40092, 32420, 21688, 36132, 34900, 33335, 38386, + 28046, 24358, 23244, 26174, 38505, 29616, 29486, + 21439, 33146, 39301, 32673, 23466, 38519, 38480, + 32447, 30456, 21410, 38262, 39321, 31665, 35140, + 28248, 20065, 32724, 31077, 35814, 24819, 21709, + 20139, 39033, 24055, 27233, 20687, 21521, 35937, + 33831, 30813, 38660, 21066, 21742, 22179, 38144, + 28040, 23477, 28102, 26195, 34852, 34853, 34854, + 34855, 34856, 34857, 34858, 34859, 34860, 34861, + 34862, 34863, 34864, 34865, 34867, 34868, 34869, + 34870, 34871, 34872, 34874, 34875, 34877, 34878, + 34879, 34881, 34882, 34883, 34886, 34887, 34888, + 34889, 34890, 34891, 34894, 34895, 34896, 34897, + 34898, 34899, 34901, 34902, 34904, 34906, 34907, + 34908, 34909, 34910, 34911, 34912, 34918, 34919, + 34922, 34925, 34927, 34929, 34931, 34932, 34933, + 34934, 34936, 34937, 34938, 34939, 34940, 34944, + 34947, 34950, 34951, 34953, 34954, 34956, 34958, + 34959, 34960, 34961, 34963, 34964, 34965, 34967, + 34968, 34969, 34970, 34971, 34973, 34974, 34975, + 34976, 34977, 34979, 34981, 34982, 34983, 34984, + 34985, 34986, 23567, 23389, 26657, 32918, 21880, + 31505, 25928, 26964, 20123, 27463, 34638, 38795, + 21327, 25375, 25658, 37034, 26012, 32961, 35856, + 20889, 26800, 21368, 34809, 25032, 27844, 27899, + 35874, 23633, 34218, 33455, 38156, 27427, 36763, + 26032, 24571, 24515, 20449, 34885, 26143, 33125, + 29481, 24826, 20852, 21009, 22411, 24418, 37026, + 34892, 37266, 24184, 26447, 24615, 22995, 20804, + 20982, 33016, 21256, 27769, 38596, 29066, 20241, + 20462, 32670, 26429, 21957, 38152, 31168, 34966, + 32483, 22687, 25100, 38656, 34394, 22040, 39035, + 24464, 35768, 33988, 37207, 21465, 26093, 24207, + 30044, 24676, 32110, 23167, 32490, 32493, 36713, + 21927, 23459, 24748, 26059, 29572, 34988, 34990, + 34991, 34992, 34994, 34995, 34996, 34997, 34998, + 35000, 35001, 35002, 35003, 35005, 35006, 35007, + 35008, 35011, 35012, 35015, 35016, 35018, 35019, + 35020, 35021, 35023, 35024, 35025, 35027, 35030, + 35031, 35034, 35035, 35036, 35037, 35038, 35040, + 35041, 35046, 35047, 35049, 35050, 35051, 35052, + 35053, 35054, 35055, 35058, 35061, 35062, 35063, + 35066, 35067, 35069, 35071, 35072, 35073, 35075, + 35076, 35077, 35078, 35079, 35080, 35081, 35083, + 35084, 35085, 35086, 35087, 35089, 35092, 35093, + 35094, 35095, 35096, 35100, 35101, 35102, 35103, + 35104, 35106, 35107, 35108, 35110, 35111, 35112, + 35113, 35116, 35117, 35118, 35119, 35121, 35122, + 35123, 35125, 35127, 36873, 30307, 30505, 32474, + 38772, 34203, 23398, 31348, 38634, 34880, 21195, + 29071, 24490, 26092, 35810, 23547, 39535, 24033, + 27529, 27739, 35757, 35759, 36874, 36805, 21387, + 25276, 40486, 40493, 21568, 20011, 33469, 29273, + 34460, 23830, 34905, 28079, 38597, 21713, 20122, + 35766, 28937, 21693, 38409, 28895, 28153, 30416, + 20005, 30740, 34578, 23721, 24310, 35328, 39068, + 38414, 28814, 27839, 22852, 25513, 30524, 34893, + 28436, 33395, 22576, 29141, 21388, 30746, 38593, + 21761, 24422, 28976, 23476, 35866, 39564, 27523, + 22830, 40495, 31207, 26472, 25196, 20335, 30113, + 32650, 27915, 38451, 27687, 20208, 30162, 20859, + 26679, 28478, 36992, 33136, 22934, 29814, 35128, + 35129, 35130, 35131, 35132, 35133, 35134, 35135, + 35136, 35138, 35139, 35141, 35142, 35143, 35144, + 35145, 35146, 35147, 35148, 35149, 35150, 35151, + 35152, 35153, 35154, 35155, 35156, 35157, 35158, + 35159, 35160, 35161, 35162, 35163, 35164, 35165, + 35168, 35169, 35170, 35171, 35172, 35173, 35175, + 35176, 35177, 35178, 35179, 35180, 35181, 35182, + 35183, 35184, 35185, 35186, 35187, 35188, 35189, + 35190, 35191, 35192, 35193, 35194, 35196, 35197, + 35198, 35200, 35202, 35204, 35205, 35207, 35208, + 35209, 35210, 35211, 35212, 35213, 35214, 35215, + 35216, 35217, 35218, 35219, 35220, 35221, 35222, + 35223, 35224, 35225, 35226, 35227, 35228, 35229, + 35230, 35231, 35232, 35233, 25671, 23591, 36965, + 31377, 35875, 23002, 21676, 33280, 33647, 35201, + 32768, 26928, 22094, 32822, 29239, 37326, 20918, + 20063, 39029, 25494, 19994, 21494, 26355, 33099, + 22812, 28082, 19968, 22777, 21307, 25558, 38129, + 20381, 20234, 34915, 39056, 22839, 36951, 31227, + 20202, 33008, 30097, 27778, 23452, 23016, 24413, + 26885, 34433, 20506, 24050, 20057, 30691, 20197, + 33402, 25233, 26131, 37009, 23673, 20159, 24441, + 33222, 36920, 32900, 30123, 20134, 35028, 24847, + 27589, 24518, 20041, 30410, 28322, 35811, 35758, + 35850, 35793, 24322, 32764, 32716, 32462, 33589, + 33643, 22240, 27575, 38899, 38452, 23035, 21535, + 38134, 28139, 23493, 39278, 23609, 24341, 38544, + 35234, 35235, 35236, 35237, 35238, 35239, 35240, + 35241, 35242, 35243, 35244, 35245, 35246, 35247, + 35248, 35249, 35250, 35251, 35252, 35253, 35254, + 35255, 35256, 35257, 35258, 35259, 35260, 35261, + 35262, 35263, 35264, 35267, 35277, 35283, 35284, + 35285, 35287, 35288, 35289, 35291, 35293, 35295, + 35296, 35297, 35298, 35300, 35303, 35304, 35305, + 35306, 35308, 35309, 35310, 35312, 35313, 35314, + 35316, 35317, 35318, 35319, 35320, 35321, 35322, + 35323, 35324, 35325, 35326, 35327, 35329, 35330, + 35331, 35332, 35333, 35334, 35336, 35337, 35338, + 35339, 35340, 35341, 35342, 35343, 35344, 35345, + 35346, 35347, 35348, 35349, 35350, 35351, 35352, + 35353, 35354, 35355, 35356, 35357, 21360, 33521, + 27185, 23156, 40560, 24212, 32552, 33721, 33828, + 33829, 33639, 34631, 36814, 36194, 30408, 24433, + 39062, 30828, 26144, 21727, 25317, 20323, 33219, + 30152, 24248, 38605, 36362, 34553, 21647, 27891, + 28044, 27704, 24703, 21191, 29992, 24189, 20248, + 24736, 24551, 23588, 30001, 37038, 38080, 29369, + 27833, 28216, 37193, 26377, 21451, 21491, 20305, + 37321, 35825, 21448, 24188, 36802, 28132, 20110, + 30402, 27014, 34398, 24858, 33286, 20313, 20446, + 36926, 40060, 24841, 28189, 28180, 38533, 20104, + 23089, 38632, 19982, 23679, 31161, 23431, 35821, + 32701, 29577, 22495, 33419, 37057, 21505, 36935, + 21947, 23786, 24481, 24840, 27442, 29425, 32946, + 35465, 35358, 35359, 35360, 35361, 35362, 35363, + 35364, 35365, 35366, 35367, 35368, 35369, 35370, + 35371, 35372, 35373, 35374, 35375, 35376, 35377, + 35378, 35379, 35380, 35381, 35382, 35383, 35384, + 35385, 35386, 35387, 35388, 35389, 35391, 35392, + 35393, 35394, 35395, 35396, 35397, 35398, 35399, + 35401, 35402, 35403, 35404, 35405, 35406, 35407, + 35408, 35409, 35410, 35411, 35412, 35413, 35414, + 35415, 35416, 35417, 35418, 35419, 35420, 35421, + 35422, 35423, 35424, 35425, 35426, 35427, 35428, + 35429, 35430, 35431, 35432, 35433, 35434, 35435, + 35436, 35437, 35438, 35439, 35440, 35441, 35442, + 35443, 35444, 35445, 35446, 35447, 35448, 35450, + 35451, 35452, 35453, 35454, 35455, 35456, 28020, + 23507, 35029, 39044, 35947, 39533, 40499, 28170, + 20900, 20803, 22435, 34945, 21407, 25588, 36757, + 22253, 21592, 22278, 29503, 28304, 32536, 36828, + 33489, 24895, 24616, 38498, 26352, 32422, 36234, + 36291, 38053, 23731, 31908, 26376, 24742, 38405, + 32792, 20113, 37095, 21248, 38504, 20801, 36816, + 34164, 37213, 26197, 38901, 23381, 21277, 30776, + 26434, 26685, 21705, 28798, 23472, 36733, 20877, + 22312, 21681, 25874, 26242, 36190, 36163, 33039, + 33900, 36973, 31967, 20991, 34299, 26531, 26089, + 28577, 34468, 36481, 22122, 36896, 30338, 28790, + 29157, 36131, 25321, 21017, 27901, 36156, 24590, + 22686, 24974, 26366, 36192, 25166, 21939, 28195, + 26413, 36711, 35457, 35458, 35459, 35460, 35461, + 35462, 35463, 35464, 35467, 35468, 35469, 35470, + 35471, 35472, 35473, 35474, 35476, 35477, 35478, + 35479, 35480, 35481, 35482, 35483, 35484, 35485, + 35486, 35487, 35488, 35489, 35490, 35491, 35492, + 35493, 35494, 35495, 35496, 35497, 35498, 35499, + 35500, 35501, 35502, 35503, 35504, 35505, 35506, + 35507, 35508, 35509, 35510, 35511, 35512, 35513, + 35514, 35515, 35516, 35517, 35518, 35519, 35520, + 35521, 35522, 35523, 35524, 35525, 35526, 35527, + 35528, 35529, 35530, 35531, 35532, 35533, 35534, + 35535, 35536, 35537, 35538, 35539, 35540, 35541, + 35542, 35543, 35544, 35545, 35546, 35547, 35548, + 35549, 35550, 35551, 35552, 35553, 35554, 35555, + 38113, 38392, 30504, 26629, 27048, 21643, 20045, + 28856, 35784, 25688, 25995, 23429, 31364, 20538, + 23528, 30651, 27617, 35449, 31896, 27838, 30415, + 26025, 36759, 23853, 23637, 34360, 26632, 21344, + 25112, 31449, 28251, 32509, 27167, 31456, 24432, + 28467, 24352, 25484, 28072, 26454, 19976, 24080, + 36134, 20183, 32960, 30260, 38556, 25307, 26157, + 25214, 27836, 36213, 29031, 32617, 20806, 32903, + 21484, 36974, 25240, 21746, 34544, 36761, 32773, + 38167, 34071, 36825, 27993, 29645, 26015, 30495, + 29956, 30759, 33275, 36126, 38024, 20390, 26517, + 30137, 35786, 38663, 25391, 38215, 38453, 33976, + 25379, 30529, 24449, 29424, 20105, 24596, 25972, + 25327, 27491, 25919, 35556, 35557, 35558, 35559, + 35560, 35561, 35562, 35563, 35564, 35565, 35566, + 35567, 35568, 35569, 35570, 35571, 35572, 35573, + 35574, 35575, 35576, 35577, 35578, 35579, 35580, + 35581, 35582, 35583, 35584, 35585, 35586, 35587, + 35588, 35589, 35590, 35592, 35593, 35594, 35595, + 35596, 35597, 35598, 35599, 35600, 35601, 35602, + 35603, 35604, 35605, 35606, 35607, 35608, 35609, + 35610, 35611, 35612, 35613, 35614, 35615, 35616, + 35617, 35618, 35619, 35620, 35621, 35623, 35624, + 35625, 35626, 35627, 35628, 35629, 35630, 35631, + 35632, 35633, 35634, 35635, 35636, 35637, 35638, + 35639, 35640, 35641, 35642, 35643, 35644, 35645, + 35646, 35647, 35648, 35649, 35650, 35651, 35652, + 35653, 24103, 30151, 37073, 35777, 33437, 26525, + 25903, 21553, 34584, 30693, 32930, 33026, 27713, + 20043, 32455, 32844, 30452, 26893, 27542, 25191, + 20540, 20356, 22336, 25351, 27490, 36286, 21482, + 26088, 32440, 24535, 25370, 25527, 33267, 33268, + 32622, 24092, 23769, 21046, 26234, 31209, 31258, + 36136, 28825, 30164, 28382, 27835, 31378, 20013, + 30405, 24544, 38047, 34935, 32456, 31181, 32959, + 37325, 20210, 20247, 33311, 21608, 24030, 27954, + 35788, 31909, 36724, 32920, 24090, 21650, 30385, + 23449, 26172, 39588, 29664, 26666, 34523, 26417, + 29482, 35832, 35803, 36880, 31481, 28891, 29038, + 25284, 30633, 22065, 20027, 33879, 26609, 21161, + 34496, 36142, 38136, 31569, 35654, 35655, 35656, + 35657, 35658, 35659, 35660, 35661, 35662, 35663, + 35664, 35665, 35666, 35667, 35668, 35669, 35670, + 35671, 35672, 35673, 35674, 35675, 35676, 35677, + 35678, 35679, 35680, 35681, 35682, 35683, 35684, + 35685, 35687, 35688, 35689, 35690, 35691, 35693, + 35694, 35695, 35696, 35697, 35698, 35699, 35700, + 35701, 35702, 35703, 35704, 35705, 35706, 35707, + 35708, 35709, 35710, 35711, 35712, 35713, 35714, + 35715, 35716, 35717, 35718, 35719, 35720, 35721, + 35722, 35723, 35724, 35725, 35726, 35727, 35728, + 35729, 35730, 35731, 35732, 35733, 35734, 35735, + 35736, 35737, 35738, 35739, 35740, 35741, 35742, + 35743, 35756, 35761, 35771, 35783, 35792, 35818, + 35849, 35870, 20303, 27880, 31069, 39547, 25235, + 29226, 25341, 19987, 30742, 36716, 25776, 36186, + 31686, 26729, 24196, 35013, 22918, 25758, 22766, + 29366, 26894, 38181, 36861, 36184, 22368, 32512, + 35846, 20934, 25417, 25305, 21331, 26700, 29730, + 33537, 37196, 21828, 30528, 28796, 27978, 20857, + 21672, 36164, 23039, 28363, 28100, 23388, 32043, + 20180, 31869, 28371, 23376, 33258, 28173, 23383, + 39683, 26837, 36394, 23447, 32508, 24635, 32437, + 37049, 36208, 22863, 25549, 31199, 36275, 21330, + 26063, 31062, 35781, 38459, 32452, 38075, 32386, + 22068, 37257, 26368, 32618, 23562, 36981, 26152, + 24038, 20304, 26590, 20570, 20316, 22352, 24231, + 59408, 59409, 59410, 59411, 59412, 35896, 35897, + 35898, 35899, 35900, 35901, 35902, 35903, 35904, + 35906, 35907, 35908, 35909, 35912, 35914, 35915, + 35917, 35918, 35919, 35920, 35921, 35922, 35923, + 35924, 35926, 35927, 35928, 35929, 35931, 35932, + 35933, 35934, 35935, 35936, 35939, 35940, 35941, + 35942, 35943, 35944, 35945, 35948, 35949, 35950, + 35951, 35952, 35953, 35954, 35956, 35957, 35958, + 35959, 35963, 35964, 35965, 35966, 35967, 35968, + 35969, 35971, 35972, 35974, 35975, 35976, 35979, + 35981, 35982, 35983, 35984, 35985, 35986, 35987, + 35989, 35990, 35991, 35993, 35994, 35995, 35996, + 35997, 35998, 35999, 36000, 36001, 36002, 36003, + 36004, 36005, 36006, 36007, 36008, 36009, 36010, + 36011, 36012, 36013, 20109, 19980, 20800, 19984, + 24319, 21317, 19989, 20120, 19998, 39730, 23404, + 22121, 20008, 31162, 20031, 21269, 20039, 22829, + 29243, 21358, 27664, 22239, 32996, 39319, 27603, + 30590, 40727, 20022, 20127, 40720, 20060, 20073, + 20115, 33416, 23387, 21868, 22031, 20164, 21389, + 21405, 21411, 21413, 21422, 38757, 36189, 21274, + 21493, 21286, 21294, 21310, 36188, 21350, 21347, + 20994, 21000, 21006, 21037, 21043, 21055, 21056, + 21068, 21086, 21089, 21084, 33967, 21117, 21122, + 21121, 21136, 21139, 20866, 32596, 20155, 20163, + 20169, 20162, 20200, 20193, 20203, 20190, 20251, + 20211, 20258, 20324, 20213, 20261, 20263, 20233, + 20267, 20318, 20327, 25912, 20314, 20317, 36014, + 36015, 36016, 36017, 36018, 36019, 36020, 36021, + 36022, 36023, 36024, 36025, 36026, 36027, 36028, + 36029, 36030, 36031, 36032, 36033, 36034, 36035, + 36036, 36037, 36038, 36039, 36040, 36041, 36042, + 36043, 36044, 36045, 36046, 36047, 36048, 36049, + 36050, 36051, 36052, 36053, 36054, 36055, 36056, + 36057, 36058, 36059, 36060, 36061, 36062, 36063, + 36064, 36065, 36066, 36067, 36068, 36069, 36070, + 36071, 36072, 36073, 36074, 36075, 36076, 36077, + 36078, 36079, 36080, 36081, 36082, 36083, 36084, + 36085, 36086, 36087, 36088, 36089, 36090, 36091, + 36092, 36093, 36094, 36095, 36096, 36097, 36098, + 36099, 36100, 36101, 36102, 36103, 36104, 36105, + 36106, 36107, 36108, 36109, 20319, 20311, 20274, + 20285, 20342, 20340, 20369, 20361, 20355, 20367, + 20350, 20347, 20394, 20348, 20396, 20372, 20454, + 20456, 20458, 20421, 20442, 20451, 20444, 20433, + 20447, 20472, 20521, 20556, 20467, 20524, 20495, + 20526, 20525, 20478, 20508, 20492, 20517, 20520, + 20606, 20547, 20565, 20552, 20558, 20588, 20603, + 20645, 20647, 20649, 20666, 20694, 20742, 20717, + 20716, 20710, 20718, 20743, 20747, 20189, 27709, + 20312, 20325, 20430, 40864, 27718, 31860, 20846, + 24061, 40649, 39320, 20865, 22804, 21241, 21261, + 35335, 21264, 20971, 22809, 20821, 20128, 20822, + 20147, 34926, 34980, 20149, 33044, 35026, 31104, + 23348, 34819, 32696, 20907, 20913, 20925, 20924, + 36110, 36111, 36112, 36113, 36114, 36115, 36116, + 36117, 36118, 36119, 36120, 36121, 36122, 36123, + 36124, 36128, 36177, 36178, 36183, 36191, 36197, + 36200, 36201, 36202, 36204, 36206, 36207, 36209, + 36210, 36216, 36217, 36218, 36219, 36220, 36221, + 36222, 36223, 36224, 36226, 36227, 36230, 36231, + 36232, 36233, 36236, 36237, 36238, 36239, 36240, + 36242, 36243, 36245, 36246, 36247, 36248, 36249, + 36250, 36251, 36252, 36253, 36254, 36256, 36257, + 36258, 36260, 36261, 36262, 36263, 36264, 36265, + 36266, 36267, 36268, 36269, 36270, 36271, 36272, + 36274, 36278, 36279, 36281, 36283, 36285, 36288, + 36289, 36290, 36293, 36295, 36296, 36297, 36298, + 36301, 36304, 36306, 36307, 36308, 20935, 20886, + 20898, 20901, 35744, 35750, 35751, 35754, 35764, + 35765, 35767, 35778, 35779, 35787, 35791, 35790, + 35794, 35795, 35796, 35798, 35800, 35801, 35804, + 35807, 35808, 35812, 35816, 35817, 35822, 35824, + 35827, 35830, 35833, 35836, 35839, 35840, 35842, + 35844, 35847, 35852, 35855, 35857, 35858, 35860, + 35861, 35862, 35865, 35867, 35864, 35869, 35871, + 35872, 35873, 35877, 35879, 35882, 35883, 35886, + 35887, 35890, 35891, 35893, 35894, 21353, 21370, + 38429, 38434, 38433, 38449, 38442, 38461, 38460, + 38466, 38473, 38484, 38495, 38503, 38508, 38514, + 38516, 38536, 38541, 38551, 38576, 37015, 37019, + 37021, 37017, 37036, 37025, 37044, 37043, 37046, + 37050, 36309, 36312, 36313, 36316, 36320, 36321, + 36322, 36325, 36326, 36327, 36329, 36333, 36334, + 36336, 36337, 36338, 36340, 36342, 36348, 36350, + 36351, 36352, 36353, 36354, 36355, 36356, 36358, + 36359, 36360, 36363, 36365, 36366, 36368, 36369, + 36370, 36371, 36373, 36374, 36375, 36376, 36377, + 36378, 36379, 36380, 36384, 36385, 36388, 36389, + 36390, 36391, 36392, 36395, 36397, 36400, 36402, + 36403, 36404, 36406, 36407, 36408, 36411, 36412, + 36414, 36415, 36419, 36421, 36422, 36428, 36429, + 36430, 36431, 36432, 36435, 36436, 36437, 36438, + 36439, 36440, 36442, 36443, 36444, 36445, 36446, + 36447, 36448, 36449, 36450, 36451, 36452, 36453, + 36455, 36456, 36458, 36459, 36462, 36465, 37048, + 37040, 37071, 37061, 37054, 37072, 37060, 37063, + 37075, 37094, 37090, 37084, 37079, 37083, 37099, + 37103, 37118, 37124, 37154, 37150, 37155, 37169, + 37167, 37177, 37187, 37190, 21005, 22850, 21154, + 21164, 21165, 21182, 21759, 21200, 21206, 21232, + 21471, 29166, 30669, 24308, 20981, 20988, 39727, + 21430, 24321, 30042, 24047, 22348, 22441, 22433, + 22654, 22716, 22725, 22737, 22313, 22316, 22314, + 22323, 22329, 22318, 22319, 22364, 22331, 22338, + 22377, 22405, 22379, 22406, 22396, 22395, 22376, + 22381, 22390, 22387, 22445, 22436, 22412, 22450, + 22479, 22439, 22452, 22419, 22432, 22485, 22488, + 22490, 22489, 22482, 22456, 22516, 22511, 22520, + 22500, 22493, 36467, 36469, 36471, 36472, 36473, + 36474, 36475, 36477, 36478, 36480, 36482, 36483, + 36484, 36486, 36488, 36489, 36490, 36491, 36492, + 36493, 36494, 36497, 36498, 36499, 36501, 36502, + 36503, 36504, 36505, 36506, 36507, 36509, 36511, + 36512, 36513, 36514, 36515, 36516, 36517, 36518, + 36519, 36520, 36521, 36522, 36525, 36526, 36528, + 36529, 36531, 36532, 36533, 36534, 36535, 36536, + 36537, 36539, 36540, 36541, 36542, 36543, 36544, + 36545, 36546, 36547, 36548, 36549, 36550, 36551, + 36552, 36553, 36554, 36555, 36556, 36557, 36559, + 36560, 36561, 36562, 36563, 36564, 36565, 36566, + 36567, 36568, 36569, 36570, 36571, 36572, 36573, + 36574, 36575, 36576, 36577, 36578, 36579, 36580, + 22539, 22541, 22525, 22509, 22528, 22558, 22553, + 22596, 22560, 22629, 22636, 22657, 22665, 22682, + 22656, 39336, 40729, 25087, 33401, 33405, 33407, + 33423, 33418, 33448, 33412, 33422, 33425, 33431, + 33433, 33451, 33464, 33470, 33456, 33480, 33482, + 33507, 33432, 33463, 33454, 33483, 33484, 33473, + 33449, 33460, 33441, 33450, 33439, 33476, 33486, + 33444, 33505, 33545, 33527, 33508, 33551, 33543, + 33500, 33524, 33490, 33496, 33548, 33531, 33491, + 33553, 33562, 33542, 33556, 33557, 33504, 33493, + 33564, 33617, 33627, 33628, 33544, 33682, 33596, + 33588, 33585, 33691, 33630, 33583, 33615, 33607, + 33603, 33631, 33600, 33559, 33632, 33581, 33594, + 33587, 33638, 33637, 36581, 36582, 36583, 36584, + 36585, 36586, 36587, 36588, 36589, 36590, 36591, + 36592, 36593, 36594, 36595, 36596, 36597, 36598, + 36599, 36600, 36601, 36602, 36603, 36604, 36605, + 36606, 36607, 36608, 36609, 36610, 36611, 36612, + 36613, 36614, 36615, 36616, 36617, 36618, 36619, + 36620, 36621, 36622, 36623, 36624, 36625, 36626, + 36627, 36628, 36629, 36630, 36631, 36632, 36633, + 36634, 36635, 36636, 36637, 36638, 36639, 36640, + 36641, 36642, 36643, 36644, 36645, 36646, 36647, + 36648, 36649, 36650, 36651, 36652, 36653, 36654, + 36655, 36656, 36657, 36658, 36659, 36660, 36661, + 36662, 36663, 36664, 36665, 36666, 36667, 36668, + 36669, 36670, 36671, 36672, 36673, 36674, 36675, + 36676, 33640, 33563, 33641, 33644, 33642, 33645, + 33646, 33712, 33656, 33715, 33716, 33696, 33706, + 33683, 33692, 33669, 33660, 33718, 33705, 33661, + 33720, 33659, 33688, 33694, 33704, 33722, 33724, + 33729, 33793, 33765, 33752, 22535, 33816, 33803, + 33757, 33789, 33750, 33820, 33848, 33809, 33798, + 33748, 33759, 33807, 33795, 33784, 33785, 33770, + 33733, 33728, 33830, 33776, 33761, 33884, 33873, + 33882, 33881, 33907, 33927, 33928, 33914, 33929, + 33912, 33852, 33862, 33897, 33910, 33932, 33934, + 33841, 33901, 33985, 33997, 34000, 34022, 33981, + 34003, 33994, 33983, 33978, 34016, 33953, 33977, + 33972, 33943, 34021, 34019, 34060, 29965, 34104, + 34032, 34105, 34079, 34106, 36677, 36678, 36679, + 36680, 36681, 36682, 36683, 36684, 36685, 36686, + 36687, 36688, 36689, 36690, 36691, 36692, 36693, + 36694, 36695, 36696, 36697, 36698, 36699, 36700, + 36701, 36702, 36703, 36704, 36705, 36706, 36707, + 36708, 36709, 36714, 36736, 36748, 36754, 36765, + 36768, 36769, 36770, 36772, 36773, 36774, 36775, + 36778, 36780, 36781, 36782, 36783, 36786, 36787, + 36788, 36789, 36791, 36792, 36794, 36795, 36796, + 36799, 36800, 36803, 36806, 36809, 36810, 36811, + 36812, 36813, 36815, 36818, 36822, 36823, 36826, + 36832, 36833, 36835, 36839, 36844, 36847, 36849, + 36850, 36852, 36853, 36854, 36858, 36859, 36860, + 36862, 36863, 36871, 36872, 36876, 36878, 36883, + 36885, 36888, 34134, 34107, 34047, 34044, 34137, + 34120, 34152, 34148, 34142, 34170, 30626, 34115, + 34162, 34171, 34212, 34216, 34183, 34191, 34169, + 34222, 34204, 34181, 34233, 34231, 34224, 34259, + 34241, 34268, 34303, 34343, 34309, 34345, 34326, + 34364, 24318, 24328, 22844, 22849, 32823, 22869, + 22874, 22872, 21263, 23586, 23589, 23596, 23604, + 25164, 25194, 25247, 25275, 25290, 25306, 25303, + 25326, 25378, 25334, 25401, 25419, 25411, 25517, + 25590, 25457, 25466, 25486, 25524, 25453, 25516, + 25482, 25449, 25518, 25532, 25586, 25592, 25568, + 25599, 25540, 25566, 25550, 25682, 25542, 25534, + 25669, 25665, 25611, 25627, 25632, 25612, 25638, + 25633, 25694, 25732, 25709, 25750, 36889, 36892, + 36899, 36900, 36901, 36903, 36904, 36905, 36906, + 36907, 36908, 36912, 36913, 36914, 36915, 36916, + 36919, 36921, 36922, 36925, 36927, 36928, 36931, + 36933, 36934, 36936, 36937, 36938, 36939, 36940, + 36942, 36948, 36949, 36950, 36953, 36954, 36956, + 36957, 36958, 36959, 36960, 36961, 36964, 36966, + 36967, 36969, 36970, 36971, 36972, 36975, 36976, + 36977, 36978, 36979, 36982, 36983, 36984, 36985, + 36986, 36987, 36988, 36990, 36993, 36996, 36997, + 36998, 36999, 37001, 37002, 37004, 37005, 37006, + 37007, 37008, 37010, 37012, 37014, 37016, 37018, + 37020, 37022, 37023, 37024, 37028, 37029, 37031, + 37032, 37033, 37035, 37037, 37042, 37047, 37052, + 37053, 37055, 37056, 25722, 25783, 25784, 25753, + 25786, 25792, 25808, 25815, 25828, 25826, 25865, + 25893, 25902, 24331, 24530, 29977, 24337, 21343, + 21489, 21501, 21481, 21480, 21499, 21522, 21526, + 21510, 21579, 21586, 21587, 21588, 21590, 21571, + 21537, 21591, 21593, 21539, 21554, 21634, 21652, + 21623, 21617, 21604, 21658, 21659, 21636, 21622, + 21606, 21661, 21712, 21677, 21698, 21684, 21714, + 21671, 21670, 21715, 21716, 21618, 21667, 21717, + 21691, 21695, 21708, 21721, 21722, 21724, 21673, + 21674, 21668, 21725, 21711, 21726, 21787, 21735, + 21792, 21757, 21780, 21747, 21794, 21795, 21775, + 21777, 21799, 21802, 21863, 21903, 21941, 21833, + 21869, 21825, 21845, 21823, 21840, 21820, 37058, + 37059, 37062, 37064, 37065, 37067, 37068, 37069, + 37074, 37076, 37077, 37078, 37080, 37081, 37082, + 37086, 37087, 37088, 37091, 37092, 37093, 37097, + 37098, 37100, 37102, 37104, 37105, 37106, 37107, + 37109, 37110, 37111, 37113, 37114, 37115, 37116, + 37119, 37120, 37121, 37123, 37125, 37126, 37127, + 37128, 37129, 37130, 37131, 37132, 37133, 37134, + 37135, 37136, 37137, 37138, 37139, 37140, 37141, + 37142, 37143, 37144, 37146, 37147, 37148, 37149, + 37151, 37152, 37153, 37156, 37157, 37158, 37159, + 37160, 37161, 37162, 37163, 37164, 37165, 37166, + 37168, 37170, 37171, 37172, 37173, 37174, 37175, + 37176, 37178, 37179, 37180, 37181, 37182, 37183, + 37184, 37185, 37186, 37188, 21815, 21846, 21877, + 21878, 21879, 21811, 21808, 21852, 21899, 21970, + 21891, 21937, 21945, 21896, 21889, 21919, 21886, + 21974, 21905, 21883, 21983, 21949, 21950, 21908, + 21913, 21994, 22007, 21961, 22047, 21969, 21995, + 21996, 21972, 21990, 21981, 21956, 21999, 21989, + 22002, 22003, 21964, 21965, 21992, 22005, 21988, + 36756, 22046, 22024, 22028, 22017, 22052, 22051, + 22014, 22016, 22055, 22061, 22104, 22073, 22103, + 22060, 22093, 22114, 22105, 22108, 22092, 22100, + 22150, 22116, 22129, 22123, 22139, 22140, 22149, + 22163, 22191, 22228, 22231, 22237, 22241, 22261, + 22251, 22265, 22271, 22276, 22282, 22281, 22300, + 24079, 24089, 24084, 24081, 24113, 24123, 24124, + 37189, 37191, 37192, 37201, 37203, 37204, 37205, + 37206, 37208, 37209, 37211, 37212, 37215, 37216, + 37222, 37223, 37224, 37227, 37229, 37235, 37242, + 37243, 37244, 37248, 37249, 37250, 37251, 37252, + 37254, 37256, 37258, 37262, 37263, 37267, 37268, + 37269, 37270, 37271, 37272, 37273, 37276, 37277, + 37278, 37279, 37280, 37281, 37284, 37285, 37286, + 37287, 37288, 37289, 37291, 37292, 37296, 37297, + 37298, 37299, 37302, 37303, 37304, 37305, 37307, + 37308, 37309, 37310, 37311, 37312, 37313, 37314, + 37315, 37316, 37317, 37318, 37320, 37323, 37328, + 37330, 37331, 37332, 37333, 37334, 37335, 37336, + 37337, 37338, 37339, 37341, 37342, 37343, 37344, + 37345, 37346, 37347, 37348, 37349, 24119, 24132, + 24148, 24155, 24158, 24161, 23692, 23674, 23693, + 23696, 23702, 23688, 23704, 23705, 23697, 23706, + 23708, 23733, 23714, 23741, 23724, 23723, 23729, + 23715, 23745, 23735, 23748, 23762, 23780, 23755, + 23781, 23810, 23811, 23847, 23846, 23854, 23844, + 23838, 23814, 23835, 23896, 23870, 23860, 23869, + 23916, 23899, 23919, 23901, 23915, 23883, 23882, + 23913, 23924, 23938, 23961, 23965, 35955, 23991, + 24005, 24435, 24439, 24450, 24455, 24457, 24460, + 24469, 24473, 24476, 24488, 24493, 24501, 24508, + 34914, 24417, 29357, 29360, 29364, 29367, 29368, + 29379, 29377, 29390, 29389, 29394, 29416, 29423, + 29417, 29426, 29428, 29431, 29441, 29427, 29443, + 29434, 37350, 37351, 37352, 37353, 37354, 37355, + 37356, 37357, 37358, 37359, 37360, 37361, 37362, + 37363, 37364, 37365, 37366, 37367, 37368, 37369, + 37370, 37371, 37372, 37373, 37374, 37375, 37376, + 37377, 37378, 37379, 37380, 37381, 37382, 37383, + 37384, 37385, 37386, 37387, 37388, 37389, 37390, + 37391, 37392, 37393, 37394, 37395, 37396, 37397, + 37398, 37399, 37400, 37401, 37402, 37403, 37404, + 37405, 37406, 37407, 37408, 37409, 37410, 37411, + 37412, 37413, 37414, 37415, 37416, 37417, 37418, + 37419, 37420, 37421, 37422, 37423, 37424, 37425, + 37426, 37427, 37428, 37429, 37430, 37431, 37432, + 37433, 37434, 37435, 37436, 37437, 37438, 37439, + 37440, 37441, 37442, 37443, 37444, 37445, 29435, + 29463, 29459, 29473, 29450, 29470, 29469, 29461, + 29474, 29497, 29477, 29484, 29496, 29489, 29520, + 29517, 29527, 29536, 29548, 29551, 29566, 33307, + 22821, 39143, 22820, 22786, 39267, 39271, 39272, + 39273, 39274, 39275, 39276, 39284, 39287, 39293, + 39296, 39300, 39303, 39306, 39309, 39312, 39313, + 39315, 39316, 39317, 24192, 24209, 24203, 24214, + 24229, 24224, 24249, 24245, 24254, 24243, 36179, + 24274, 24273, 24283, 24296, 24298, 33210, 24516, + 24521, 24534, 24527, 24579, 24558, 24580, 24545, + 24548, 24574, 24581, 24582, 24554, 24557, 24568, + 24601, 24629, 24614, 24603, 24591, 24589, 24617, + 24619, 24586, 24639, 24609, 24696, 24697, 24699, + 24698, 24642, 37446, 37447, 37448, 37449, 37450, + 37451, 37452, 37453, 37454, 37455, 37456, 37457, + 37458, 37459, 37460, 37461, 37462, 37463, 37464, + 37465, 37466, 37467, 37468, 37469, 37470, 37471, + 37472, 37473, 37474, 37475, 37476, 37477, 37478, + 37479, 37480, 37481, 37482, 37483, 37484, 37485, + 37486, 37487, 37488, 37489, 37490, 37491, 37493, + 37494, 37495, 37496, 37497, 37498, 37499, 37500, + 37501, 37502, 37503, 37504, 37505, 37506, 37507, + 37508, 37509, 37510, 37511, 37512, 37513, 37514, + 37515, 37516, 37517, 37519, 37520, 37521, 37522, + 37523, 37524, 37525, 37526, 37527, 37528, 37529, + 37530, 37531, 37532, 37533, 37534, 37535, 37536, + 37537, 37538, 37539, 37540, 37541, 37542, 37543, + 24682, 24701, 24726, 24730, 24749, 24733, 24707, + 24722, 24716, 24731, 24812, 24763, 24753, 24797, + 24792, 24774, 24794, 24756, 24864, 24870, 24853, + 24867, 24820, 24832, 24846, 24875, 24906, 24949, + 25004, 24980, 24999, 25015, 25044, 25077, 24541, + 38579, 38377, 38379, 38385, 38387, 38389, 38390, + 38396, 38398, 38403, 38404, 38406, 38408, 38410, + 38411, 38412, 38413, 38415, 38418, 38421, 38422, + 38423, 38425, 38426, 20012, 29247, 25109, 27701, + 27732, 27740, 27722, 27811, 27781, 27792, 27796, + 27788, 27752, 27753, 27764, 27766, 27782, 27817, + 27856, 27860, 27821, 27895, 27896, 27889, 27863, + 27826, 27872, 27862, 27898, 27883, 27886, 27825, + 27859, 27887, 27902, 37544, 37545, 37546, 37547, + 37548, 37549, 37551, 37552, 37553, 37554, 37555, + 37556, 37557, 37558, 37559, 37560, 37561, 37562, + 37563, 37564, 37565, 37566, 37567, 37568, 37569, + 37570, 37571, 37572, 37573, 37574, 37575, 37577, + 37578, 37579, 37580, 37581, 37582, 37583, 37584, + 37585, 37586, 37587, 37588, 37589, 37590, 37591, + 37592, 37593, 37594, 37595, 37596, 37597, 37598, + 37599, 37600, 37601, 37602, 37603, 37604, 37605, + 37606, 37607, 37608, 37609, 37610, 37611, 37612, + 37613, 37614, 37615, 37616, 37617, 37618, 37619, + 37620, 37621, 37622, 37623, 37624, 37625, 37626, + 37627, 37628, 37629, 37630, 37631, 37632, 37633, + 37634, 37635, 37636, 37637, 37638, 37639, 37640, + 37641, 27961, 27943, 27916, 27971, 27976, 27911, + 27908, 27929, 27918, 27947, 27981, 27950, 27957, + 27930, 27983, 27986, 27988, 27955, 28049, 28015, + 28062, 28064, 27998, 28051, 28052, 27996, 28000, + 28028, 28003, 28186, 28103, 28101, 28126, 28174, + 28095, 28128, 28177, 28134, 28125, 28121, 28182, + 28075, 28172, 28078, 28203, 28270, 28238, 28267, + 28338, 28255, 28294, 28243, 28244, 28210, 28197, + 28228, 28383, 28337, 28312, 28384, 28461, 28386, + 28325, 28327, 28349, 28347, 28343, 28375, 28340, + 28367, 28303, 28354, 28319, 28514, 28486, 28487, + 28452, 28437, 28409, 28463, 28470, 28491, 28532, + 28458, 28425, 28457, 28553, 28557, 28556, 28536, + 28530, 28540, 28538, 28625, 37642, 37643, 37644, + 37645, 37646, 37647, 37648, 37649, 37650, 37651, + 37652, 37653, 37654, 37655, 37656, 37657, 37658, + 37659, 37660, 37661, 37662, 37663, 37664, 37665, + 37666, 37667, 37668, 37669, 37670, 37671, 37672, + 37673, 37674, 37675, 37676, 37677, 37678, 37679, + 37680, 37681, 37682, 37683, 37684, 37685, 37686, + 37687, 37688, 37689, 37690, 37691, 37692, 37693, + 37695, 37696, 37697, 37698, 37699, 37700, 37701, + 37702, 37703, 37704, 37705, 37706, 37707, 37708, + 37709, 37710, 37711, 37712, 37713, 37714, 37715, + 37716, 37717, 37718, 37719, 37720, 37721, 37722, + 37723, 37724, 37725, 37726, 37727, 37728, 37729, + 37730, 37731, 37732, 37733, 37734, 37735, 37736, + 37737, 37739, 28617, 28583, 28601, 28598, 28610, + 28641, 28654, 28638, 28640, 28655, 28698, 28707, + 28699, 28729, 28725, 28751, 28766, 23424, 23428, + 23445, 23443, 23461, 23480, 29999, 39582, 25652, + 23524, 23534, 35120, 23536, 36423, 35591, 36790, + 36819, 36821, 36837, 36846, 36836, 36841, 36838, + 36851, 36840, 36869, 36868, 36875, 36902, 36881, + 36877, 36886, 36897, 36917, 36918, 36909, 36911, + 36932, 36945, 36946, 36944, 36968, 36952, 36962, + 36955, 26297, 36980, 36989, 36994, 37000, 36995, + 37003, 24400, 24407, 24406, 24408, 23611, 21675, + 23632, 23641, 23409, 23651, 23654, 32700, 24362, + 24361, 24365, 33396, 24380, 39739, 23662, 22913, + 22915, 22925, 22953, 22954, 22947, 37740, 37741, + 37742, 37743, 37744, 37745, 37746, 37747, 37748, + 37749, 37750, 37751, 37752, 37753, 37754, 37755, + 37756, 37757, 37758, 37759, 37760, 37761, 37762, + 37763, 37764, 37765, 37766, 37767, 37768, 37769, + 37770, 37771, 37772, 37773, 37774, 37776, 37777, + 37778, 37779, 37780, 37781, 37782, 37783, 37784, + 37785, 37786, 37787, 37788, 37789, 37790, 37791, + 37792, 37793, 37794, 37795, 37796, 37797, 37798, + 37799, 37800, 37801, 37802, 37803, 37804, 37805, + 37806, 37807, 37808, 37809, 37810, 37811, 37812, + 37813, 37814, 37815, 37816, 37817, 37818, 37819, + 37820, 37821, 37822, 37823, 37824, 37825, 37826, + 37827, 37828, 37829, 37830, 37831, 37832, 37833, + 37835, 37836, 37837, 22935, 22986, 22955, 22942, + 22948, 22994, 22962, 22959, 22999, 22974, 23045, + 23046, 23005, 23048, 23011, 23000, 23033, 23052, + 23049, 23090, 23092, 23057, 23075, 23059, 23104, + 23143, 23114, 23125, 23100, 23138, 23157, 33004, + 23210, 23195, 23159, 23162, 23230, 23275, 23218, + 23250, 23252, 23224, 23264, 23267, 23281, 23254, + 23270, 23256, 23260, 23305, 23319, 23318, 23346, + 23351, 23360, 23573, 23580, 23386, 23397, 23411, + 23377, 23379, 23394, 39541, 39543, 39544, 39546, + 39551, 39549, 39552, 39553, 39557, 39560, 39562, + 39568, 39570, 39571, 39574, 39576, 39579, 39580, + 39581, 39583, 39584, 39586, 39587, 39589, 39591, + 32415, 32417, 32419, 32421, 32424, 32425, 37838, + 37839, 37840, 37841, 37842, 37843, 37844, 37845, + 37847, 37848, 37849, 37850, 37851, 37852, 37853, + 37854, 37855, 37856, 37857, 37858, 37859, 37860, + 37861, 37862, 37863, 37864, 37865, 37866, 37867, + 37868, 37869, 37870, 37871, 37872, 37873, 37874, + 37875, 37876, 37877, 37878, 37879, 37880, 37881, + 37882, 37883, 37884, 37885, 37886, 37887, 37888, + 37889, 37890, 37891, 37892, 37893, 37894, 37895, + 37896, 37897, 37898, 37899, 37900, 37901, 37902, + 37903, 37904, 37905, 37906, 37907, 37908, 37909, + 37910, 37911, 37912, 37913, 37914, 37915, 37916, + 37917, 37918, 37919, 37920, 37921, 37922, 37923, + 37924, 37925, 37926, 37927, 37928, 37929, 37930, + 37931, 37932, 37933, 37934, 32429, 32432, 32446, + 32448, 32449, 32450, 32457, 32459, 32460, 32464, + 32468, 32471, 32475, 32480, 32481, 32488, 32491, + 32494, 32495, 32497, 32498, 32525, 32502, 32506, + 32507, 32510, 32513, 32514, 32515, 32519, 32520, + 32523, 32524, 32527, 32529, 32530, 32535, 32537, + 32540, 32539, 32543, 32545, 32546, 32547, 32548, + 32549, 32550, 32551, 32554, 32555, 32556, 32557, + 32559, 32560, 32561, 32562, 32563, 32565, 24186, + 30079, 24027, 30014, 37013, 29582, 29585, 29614, + 29602, 29599, 29647, 29634, 29649, 29623, 29619, + 29632, 29641, 29640, 29669, 29657, 39036, 29706, + 29673, 29671, 29662, 29626, 29682, 29711, 29738, + 29787, 29734, 29733, 29736, 29744, 29742, 29740, + 37935, 37936, 37937, 37938, 37939, 37940, 37941, + 37942, 37943, 37944, 37945, 37946, 37947, 37948, + 37949, 37951, 37952, 37953, 37954, 37955, 37956, + 37957, 37958, 37959, 37960, 37961, 37962, 37963, + 37964, 37965, 37966, 37967, 37968, 37969, 37970, + 37971, 37972, 37973, 37974, 37975, 37976, 37977, + 37978, 37979, 37980, 37981, 37982, 37983, 37984, + 37985, 37986, 37987, 37988, 37989, 37990, 37991, + 37992, 37993, 37994, 37996, 37997, 37998, 37999, + 38000, 38001, 38002, 38003, 38004, 38005, 38006, + 38007, 38008, 38009, 38010, 38011, 38012, 38013, + 38014, 38015, 38016, 38017, 38018, 38019, 38020, + 38033, 38038, 38040, 38087, 38095, 38099, 38100, + 38106, 38118, 38139, 38172, 38176, 29723, 29722, + 29761, 29788, 29783, 29781, 29785, 29815, 29805, + 29822, 29852, 29838, 29824, 29825, 29831, 29835, + 29854, 29864, 29865, 29840, 29863, 29906, 29882, + 38890, 38891, 38892, 26444, 26451, 26462, 26440, + 26473, 26533, 26503, 26474, 26483, 26520, 26535, + 26485, 26536, 26526, 26541, 26507, 26487, 26492, + 26608, 26633, 26584, 26634, 26601, 26544, 26636, + 26585, 26549, 26586, 26547, 26589, 26624, 26563, + 26552, 26594, 26638, 26561, 26621, 26674, 26675, + 26720, 26721, 26702, 26722, 26692, 26724, 26755, + 26653, 26709, 26726, 26689, 26727, 26688, 26686, + 26698, 26697, 26665, 26805, 26767, 26740, 26743, + 26771, 26731, 26818, 26990, 26876, 26911, 26912, + 26873, 38183, 38195, 38205, 38211, 38216, 38219, + 38229, 38234, 38240, 38254, 38260, 38261, 38263, + 38264, 38265, 38266, 38267, 38268, 38269, 38270, + 38272, 38273, 38274, 38275, 38276, 38277, 38278, + 38279, 38280, 38281, 38282, 38283, 38284, 38285, + 38286, 38287, 38288, 38289, 38290, 38291, 38292, + 38293, 38294, 38295, 38296, 38297, 38298, 38299, + 38300, 38301, 38302, 38303, 38304, 38305, 38306, + 38307, 38308, 38309, 38310, 38311, 38312, 38313, + 38314, 38315, 38316, 38317, 38318, 38319, 38320, + 38321, 38322, 38323, 38324, 38325, 38326, 38327, + 38328, 38329, 38330, 38331, 38332, 38333, 38334, + 38335, 38336, 38337, 38338, 38339, 38340, 38341, + 38342, 38343, 38344, 38345, 38346, 38347, 26916, + 26864, 26891, 26881, 26967, 26851, 26896, 26993, + 26937, 26976, 26946, 26973, 27012, 26987, 27008, + 27032, 27000, 26932, 27084, 27015, 27016, 27086, + 27017, 26982, 26979, 27001, 27035, 27047, 27067, + 27051, 27053, 27092, 27057, 27073, 27082, 27103, + 27029, 27104, 27021, 27135, 27183, 27117, 27159, + 27160, 27237, 27122, 27204, 27198, 27296, 27216, + 27227, 27189, 27278, 27257, 27197, 27176, 27224, + 27260, 27281, 27280, 27305, 27287, 27307, 29495, + 29522, 27521, 27522, 27527, 27524, 27538, 27539, + 27533, 27546, 27547, 27553, 27562, 36715, 36717, + 36721, 36722, 36723, 36725, 36726, 36728, 36727, + 36729, 36730, 36732, 36734, 36737, 36738, 36740, + 36743, 36747, 38348, 38349, 38350, 38351, 38352, + 38353, 38354, 38355, 38356, 38357, 38358, 38359, + 38360, 38361, 38362, 38363, 38364, 38365, 38366, + 38367, 38368, 38369, 38370, 38371, 38372, 38373, + 38374, 38375, 38380, 38399, 38407, 38419, 38424, + 38427, 38430, 38432, 38435, 38436, 38437, 38438, + 38439, 38440, 38441, 38443, 38444, 38445, 38447, + 38448, 38455, 38456, 38457, 38458, 38462, 38465, + 38467, 38474, 38478, 38479, 38481, 38482, 38483, + 38486, 38487, 38488, 38489, 38490, 38492, 38493, + 38494, 38496, 38499, 38501, 38502, 38507, 38509, + 38510, 38511, 38512, 38513, 38515, 38520, 38521, + 38522, 38523, 38524, 38525, 38526, 38527, 38528, + 38529, 38530, 38531, 38532, 38535, 38537, 38538, + 36749, 36750, 36751, 36760, 36762, 36558, 25099, + 25111, 25115, 25119, 25122, 25121, 25125, 25124, + 25132, 33255, 29935, 29940, 29951, 29967, 29969, + 29971, 25908, 26094, 26095, 26096, 26122, 26137, + 26482, 26115, 26133, 26112, 28805, 26359, 26141, + 26164, 26161, 26166, 26165, 32774, 26207, 26196, + 26177, 26191, 26198, 26209, 26199, 26231, 26244, + 26252, 26279, 26269, 26302, 26331, 26332, 26342, + 26345, 36146, 36147, 36150, 36155, 36157, 36160, + 36165, 36166, 36168, 36169, 36167, 36173, 36181, + 36185, 35271, 35274, 35275, 35276, 35278, 35279, + 35280, 35281, 29294, 29343, 29277, 29286, 29295, + 29310, 29311, 29316, 29323, 29325, 29327, 29330, + 25352, 25394, 25520, 38540, 38542, 38545, 38546, + 38547, 38549, 38550, 38554, 38555, 38557, 38558, + 38559, 38560, 38561, 38562, 38563, 38564, 38565, + 38566, 38568, 38569, 38570, 38571, 38572, 38573, + 38574, 38575, 38577, 38578, 38580, 38581, 38583, + 38584, 38586, 38587, 38591, 38594, 38595, 38600, + 38602, 38603, 38608, 38609, 38611, 38612, 38614, + 38615, 38616, 38617, 38618, 38619, 38620, 38621, + 38622, 38623, 38625, 38626, 38627, 38628, 38629, + 38630, 38631, 38635, 38636, 38637, 38638, 38640, + 38641, 38642, 38644, 38645, 38648, 38650, 38651, + 38652, 38653, 38655, 38658, 38659, 38661, 38666, + 38667, 38668, 38672, 38673, 38674, 38676, 38677, + 38679, 38680, 38681, 38682, 38683, 38685, 38687, + 38688, 25663, 25816, 32772, 27626, 27635, 27645, + 27637, 27641, 27653, 27655, 27654, 27661, 27669, + 27672, 27673, 27674, 27681, 27689, 27684, 27690, + 27698, 25909, 25941, 25963, 29261, 29266, 29270, + 29232, 34402, 21014, 32927, 32924, 32915, 32956, + 26378, 32957, 32945, 32939, 32941, 32948, 32951, + 32999, 33000, 33001, 33002, 32987, 32962, 32964, + 32985, 32973, 32983, 26384, 32989, 33003, 33009, + 33012, 33005, 33037, 33038, 33010, 33020, 26389, + 33042, 35930, 33078, 33054, 33068, 33048, 33074, + 33096, 33100, 33107, 33140, 33113, 33114, 33137, + 33120, 33129, 33148, 33149, 33133, 33127, 22605, + 23221, 33160, 33154, 33169, 28373, 33187, 33194, + 33228, 26406, 33226, 33211, 38689, 38690, 38691, + 38692, 38693, 38694, 38695, 38696, 38697, 38699, + 38700, 38702, 38703, 38705, 38707, 38708, 38709, + 38710, 38711, 38714, 38715, 38716, 38717, 38719, + 38720, 38721, 38722, 38723, 38724, 38725, 38726, + 38727, 38728, 38729, 38730, 38731, 38732, 38733, + 38734, 38735, 38736, 38737, 38740, 38741, 38743, + 38744, 38746, 38748, 38749, 38751, 38755, 38756, + 38758, 38759, 38760, 38762, 38763, 38764, 38765, + 38766, 38767, 38768, 38769, 38770, 38773, 38775, + 38776, 38777, 38778, 38779, 38781, 38782, 38783, + 38784, 38785, 38786, 38787, 38788, 38790, 38791, + 38792, 38793, 38794, 38796, 38798, 38799, 38800, + 38803, 38805, 38806, 38807, 38809, 38810, 38811, + 38812, 38813, 33217, 33190, 27428, 27447, 27449, + 27459, 27462, 27481, 39121, 39122, 39123, 39125, + 39129, 39130, 27571, 24384, 27586, 35315, 26000, + 40785, 26003, 26044, 26054, 26052, 26051, 26060, + 26062, 26066, 26070, 28800, 28828, 28822, 28829, + 28859, 28864, 28855, 28843, 28849, 28904, 28874, + 28944, 28947, 28950, 28975, 28977, 29043, 29020, + 29032, 28997, 29042, 29002, 29048, 29050, 29080, + 29107, 29109, 29096, 29088, 29152, 29140, 29159, + 29177, 29213, 29224, 28780, 28952, 29030, 29113, + 25150, 25149, 25155, 25160, 25161, 31035, 31040, + 31046, 31049, 31067, 31068, 31059, 31066, 31074, + 31063, 31072, 31087, 31079, 31098, 31109, 31114, + 31130, 31143, 31155, 24529, 24528, 38814, 38815, + 38817, 38818, 38820, 38821, 38822, 38823, 38824, + 38825, 38826, 38828, 38830, 38832, 38833, 38835, + 38837, 38838, 38839, 38840, 38841, 38842, 38843, + 38844, 38845, 38846, 38847, 38848, 38849, 38850, + 38851, 38852, 38853, 38854, 38855, 38856, 38857, + 38858, 38859, 38860, 38861, 38862, 38863, 38864, + 38865, 38866, 38867, 38868, 38869, 38870, 38871, + 38872, 38873, 38874, 38875, 38876, 38877, 38878, + 38879, 38880, 38881, 38882, 38883, 38884, 38885, + 38888, 38894, 38895, 38896, 38897, 38898, 38900, + 38903, 38904, 38905, 38906, 38907, 38908, 38909, + 38910, 38911, 38912, 38913, 38914, 38915, 38916, + 38917, 38918, 38919, 38920, 38921, 38922, 38923, + 38924, 38925, 38926, 24636, 24669, 24666, 24679, + 24641, 24665, 24675, 24747, 24838, 24845, 24925, + 25001, 24989, 25035, 25041, 25094, 32896, 32895, + 27795, 27894, 28156, 30710, 30712, 30720, 30729, + 30743, 30744, 30737, 26027, 30765, 30748, 30749, + 30777, 30778, 30779, 30751, 30780, 30757, 30764, + 30755, 30761, 30798, 30829, 30806, 30807, 30758, + 30800, 30791, 30796, 30826, 30875, 30867, 30874, + 30855, 30876, 30881, 30883, 30898, 30905, 30885, + 30932, 30937, 30921, 30956, 30962, 30981, 30964, + 30995, 31012, 31006, 31028, 40859, 40697, 40699, + 40700, 30449, 30468, 30477, 30457, 30471, 30472, + 30490, 30498, 30489, 30509, 30502, 30517, 30520, + 30544, 30545, 30535, 30531, 30554, 30568, 38927, + 38928, 38929, 38930, 38931, 38932, 38933, 38934, + 38935, 38936, 38937, 38938, 38939, 38940, 38941, + 38942, 38943, 38944, 38945, 38946, 38947, 38948, + 38949, 38950, 38951, 38952, 38953, 38954, 38955, + 38956, 38957, 38958, 38959, 38960, 38961, 38962, + 38963, 38964, 38965, 38966, 38967, 38968, 38969, + 38970, 38971, 38972, 38973, 38974, 38975, 38976, + 38977, 38978, 38979, 38980, 38981, 38982, 38983, + 38984, 38985, 38986, 38987, 38988, 38989, 38990, + 38991, 38992, 38993, 38994, 38995, 38996, 38997, + 38998, 38999, 39000, 39001, 39002, 39003, 39004, + 39005, 39006, 39007, 39008, 39009, 39010, 39011, + 39012, 39013, 39014, 39015, 39016, 39017, 39018, + 39019, 39020, 39021, 39022, 30562, 30565, 30591, + 30605, 30589, 30592, 30604, 30609, 30623, 30624, + 30640, 30645, 30653, 30010, 30016, 30030, 30027, + 30024, 30043, 30066, 30073, 30083, 32600, 32609, + 32607, 35400, 32616, 32628, 32625, 32633, 32641, + 32638, 30413, 30437, 34866, 38021, 38022, 38023, + 38027, 38026, 38028, 38029, 38031, 38032, 38036, + 38039, 38037, 38042, 38043, 38044, 38051, 38052, + 38059, 38058, 38061, 38060, 38063, 38064, 38066, + 38068, 38070, 38071, 38072, 38073, 38074, 38076, + 38077, 38079, 38084, 38088, 38089, 38090, 38091, + 38092, 38093, 38094, 38096, 38097, 38098, 38101, + 38102, 38103, 38105, 38104, 38107, 38110, 38111, + 38112, 38114, 38116, 38117, 38119, 38120, 38122, + 39023, 39024, 39025, 39026, 39027, 39028, 39051, + 39054, 39058, 39061, 39065, 39075, 39080, 39081, + 39082, 39083, 39084, 39085, 39086, 39087, 39088, + 39089, 39090, 39091, 39092, 39093, 39094, 39095, + 39096, 39097, 39098, 39099, 39100, 39101, 39102, + 39103, 39104, 39105, 39106, 39107, 39108, 39109, + 39110, 39111, 39112, 39113, 39114, 39115, 39116, + 39117, 39119, 39120, 39124, 39126, 39127, 39131, + 39132, 39133, 39136, 39137, 39138, 39139, 39140, + 39141, 39142, 39145, 39146, 39147, 39148, 39149, + 39150, 39151, 39152, 39153, 39154, 39155, 39156, + 39157, 39158, 39159, 39160, 39161, 39162, 39163, + 39164, 39165, 39166, 39167, 39168, 39169, 39170, + 39171, 39172, 39173, 39174, 39175, 38121, 38123, + 38126, 38127, 38131, 38132, 38133, 38135, 38137, + 38140, 38141, 38143, 38147, 38146, 38150, 38151, + 38153, 38154, 38157, 38158, 38159, 38162, 38163, + 38164, 38165, 38166, 38168, 38171, 38173, 38174, + 38175, 38178, 38186, 38187, 38185, 38188, 38193, + 38194, 38196, 38198, 38199, 38200, 38204, 38206, + 38207, 38210, 38197, 38212, 38213, 38214, 38217, + 38220, 38222, 38223, 38226, 38227, 38228, 38230, + 38231, 38232, 38233, 38235, 38238, 38239, 38237, + 38241, 38242, 38244, 38245, 38246, 38247, 38248, + 38249, 38250, 38251, 38252, 38255, 38257, 38258, + 38259, 38202, 30695, 30700, 38601, 31189, 31213, + 31203, 31211, 31238, 23879, 31235, 31234, 31262, + 31252, 39176, 39177, 39178, 39179, 39180, 39182, + 39183, 39185, 39186, 39187, 39188, 39189, 39190, + 39191, 39192, 39193, 39194, 39195, 39196, 39197, + 39198, 39199, 39200, 39201, 39202, 39203, 39204, + 39205, 39206, 39207, 39208, 39209, 39210, 39211, + 39212, 39213, 39215, 39216, 39217, 39218, 39219, + 39220, 39221, 39222, 39223, 39224, 39225, 39226, + 39227, 39228, 39229, 39230, 39231, 39232, 39233, + 39234, 39235, 39236, 39237, 39238, 39239, 39240, + 39241, 39242, 39243, 39244, 39245, 39246, 39247, + 39248, 39249, 39250, 39251, 39254, 39255, 39256, + 39257, 39258, 39259, 39260, 39261, 39262, 39263, + 39264, 39265, 39266, 39268, 39270, 39283, 39288, + 39289, 39291, 39294, 39298, 39299, 39305, 31289, + 31287, 31313, 40655, 39333, 31344, 30344, 30350, + 30355, 30361, 30372, 29918, 29920, 29996, 40480, + 40482, 40488, 40489, 40490, 40491, 40492, 40498, + 40497, 40502, 40504, 40503, 40505, 40506, 40510, + 40513, 40514, 40516, 40518, 40519, 40520, 40521, + 40523, 40524, 40526, 40529, 40533, 40535, 40538, + 40539, 40540, 40542, 40547, 40550, 40551, 40552, + 40553, 40554, 40555, 40556, 40561, 40557, 40563, + 30098, 30100, 30102, 30112, 30109, 30124, 30115, + 30131, 30132, 30136, 30148, 30129, 30128, 30147, + 30146, 30166, 30157, 30179, 30184, 30182, 30180, + 30187, 30183, 30211, 30193, 30204, 30207, 30224, + 30208, 30213, 30220, 30231, 30218, 30245, 30232, + 30229, 30233, 39308, 39310, 39322, 39323, 39324, + 39325, 39326, 39327, 39328, 39329, 39330, 39331, + 39332, 39334, 39335, 39337, 39338, 39339, 39340, + 39341, 39342, 39343, 39344, 39345, 39346, 39347, + 39348, 39349, 39350, 39351, 39352, 39353, 39354, + 39355, 39356, 39357, 39358, 39359, 39360, 39361, + 39362, 39363, 39364, 39365, 39366, 39367, 39368, + 39369, 39370, 39371, 39372, 39373, 39374, 39375, + 39376, 39377, 39378, 39379, 39380, 39381, 39382, + 39383, 39384, 39385, 39386, 39387, 39388, 39389, + 39390, 39391, 39392, 39393, 39394, 39395, 39396, + 39397, 39398, 39399, 39400, 39401, 39402, 39403, + 39404, 39405, 39406, 39407, 39408, 39409, 39410, + 39411, 39412, 39413, 39414, 39415, 39416, 39417, + 30235, 30268, 30242, 30240, 30272, 30253, 30256, + 30271, 30261, 30275, 30270, 30259, 30285, 30302, + 30292, 30300, 30294, 30315, 30319, 32714, 31462, + 31352, 31353, 31360, 31366, 31368, 31381, 31398, + 31392, 31404, 31400, 31405, 31411, 34916, 34921, + 34930, 34941, 34943, 34946, 34978, 35014, 34999, + 35004, 35017, 35042, 35022, 35043, 35045, 35057, + 35098, 35068, 35048, 35070, 35056, 35105, 35097, + 35091, 35099, 35082, 35124, 35115, 35126, 35137, + 35174, 35195, 30091, 32997, 30386, 30388, 30684, + 32786, 32788, 32790, 32796, 32800, 32802, 32805, + 32806, 32807, 32809, 32808, 32817, 32779, 32821, + 32835, 32838, 32845, 32850, 32873, 32881, 35203, + 39032, 39040, 39043, 39418, 39419, 39420, 39421, + 39422, 39423, 39424, 39425, 39426, 39427, 39428, + 39429, 39430, 39431, 39432, 39433, 39434, 39435, + 39436, 39437, 39438, 39439, 39440, 39441, 39442, + 39443, 39444, 39445, 39446, 39447, 39448, 39449, + 39450, 39451, 39452, 39453, 39454, 39455, 39456, + 39457, 39458, 39459, 39460, 39461, 39462, 39463, + 39464, 39465, 39466, 39467, 39468, 39469, 39470, + 39471, 39472, 39473, 39474, 39475, 39476, 39477, + 39478, 39479, 39480, 39481, 39482, 39483, 39484, + 39485, 39486, 39487, 39488, 39489, 39490, 39491, + 39492, 39493, 39494, 39495, 39496, 39497, 39498, + 39499, 39500, 39501, 39502, 39503, 39504, 39505, + 39506, 39507, 39508, 39509, 39510, 39511, 39512, + 39513, 39049, 39052, 39053, 39055, 39060, 39066, + 39067, 39070, 39071, 39073, 39074, 39077, 39078, + 34381, 34388, 34412, 34414, 34431, 34426, 34428, + 34427, 34472, 34445, 34443, 34476, 34461, 34471, + 34467, 34474, 34451, 34473, 34486, 34500, 34485, + 34510, 34480, 34490, 34481, 34479, 34505, 34511, + 34484, 34537, 34545, 34546, 34541, 34547, 34512, + 34579, 34526, 34548, 34527, 34520, 34513, 34563, + 34567, 34552, 34568, 34570, 34573, 34569, 34595, + 34619, 34590, 34597, 34606, 34586, 34622, 34632, + 34612, 34609, 34601, 34615, 34623, 34690, 34594, + 34685, 34686, 34683, 34656, 34672, 34636, 34670, + 34699, 34643, 34659, 34684, 34660, 34649, 34661, + 34707, 34735, 34728, 34770, 39514, 39515, 39516, + 39517, 39518, 39519, 39520, 39521, 39522, 39523, + 39524, 39525, 39526, 39527, 39528, 39529, 39530, + 39531, 39538, 39555, 39561, 39565, 39566, 39572, + 39573, 39577, 39590, 39593, 39594, 39595, 39596, + 39597, 39598, 39599, 39602, 39603, 39604, 39605, + 39609, 39611, 39613, 39614, 39615, 39619, 39620, + 39622, 39623, 39624, 39625, 39626, 39629, 39630, + 39631, 39632, 39634, 39636, 39637, 39638, 39639, + 39641, 39642, 39643, 39644, 39645, 39646, 39648, + 39650, 39651, 39652, 39653, 39655, 39656, 39657, + 39658, 39660, 39662, 39664, 39665, 39666, 39667, + 39668, 39669, 39670, 39671, 39672, 39674, 39676, + 39677, 39678, 39679, 39680, 39681, 39682, 39684, + 39685, 39686, 34758, 34696, 34693, 34733, 34711, + 34691, 34731, 34789, 34732, 34741, 34739, 34763, + 34771, 34749, 34769, 34752, 34762, 34779, 34794, + 34784, 34798, 34838, 34835, 34814, 34826, 34843, + 34849, 34873, 34876, 32566, 32578, 32580, 32581, + 33296, 31482, 31485, 31496, 31491, 31492, 31509, + 31498, 31531, 31503, 31559, 31544, 31530, 31513, + 31534, 31537, 31520, 31525, 31524, 31539, 31550, + 31518, 31576, 31578, 31557, 31605, 31564, 31581, + 31584, 31598, 31611, 31586, 31602, 31601, 31632, + 31654, 31655, 31672, 31660, 31645, 31656, 31621, + 31658, 31644, 31650, 31659, 31668, 31697, 31681, + 31692, 31709, 31706, 31717, 31718, 31722, 31756, + 31742, 31740, 31759, 31766, 31755, 39687, 39689, + 39690, 39691, 39692, 39693, 39694, 39696, 39697, + 39698, 39700, 39701, 39702, 39703, 39704, 39705, + 39706, 39707, 39708, 39709, 39710, 39712, 39713, + 39714, 39716, 39717, 39718, 39719, 39720, 39721, + 39722, 39723, 39724, 39725, 39726, 39728, 39729, + 39731, 39732, 39733, 39734, 39735, 39736, 39737, + 39738, 39741, 39742, 39743, 39744, 39750, 39754, + 39755, 39756, 39758, 39760, 39762, 39763, 39765, + 39766, 39767, 39768, 39769, 39770, 39771, 39772, + 39773, 39774, 39775, 39776, 39777, 39778, 39779, + 39780, 39781, 39782, 39783, 39784, 39785, 39786, + 39787, 39788, 39789, 39790, 39791, 39792, 39793, + 39794, 39795, 39796, 39797, 39798, 39799, 39800, + 39801, 39802, 39803, 31775, 31786, 31782, 31800, + 31809, 31808, 33278, 33281, 33282, 33284, 33260, + 34884, 33313, 33314, 33315, 33325, 33327, 33320, + 33323, 33336, 33339, 33331, 33332, 33342, 33348, + 33353, 33355, 33359, 33370, 33375, 33384, 34942, + 34949, 34952, 35032, 35039, 35166, 32669, 32671, + 32679, 32687, 32688, 32690, 31868, 25929, 31889, + 31901, 31900, 31902, 31906, 31922, 31932, 31933, + 31937, 31943, 31948, 31949, 31944, 31941, 31959, + 31976, 33390, 26280, 32703, 32718, 32725, 32741, + 32737, 32742, 32745, 32750, 32755, 31992, 32119, + 32166, 32174, 32327, 32411, 40632, 40628, 36211, + 36228, 36244, 36241, 36273, 36199, 36205, 35911, + 35913, 37194, 37200, 37198, 37199, 37220, 39804, + 39805, 39806, 39807, 39808, 39809, 39810, 39811, + 39812, 39813, 39814, 39815, 39816, 39817, 39818, + 39819, 39820, 39821, 39822, 39823, 39824, 39825, + 39826, 39827, 39828, 39829, 39830, 39831, 39832, + 39833, 39834, 39835, 39836, 39837, 39838, 39839, + 39840, 39841, 39842, 39843, 39844, 39845, 39846, + 39847, 39848, 39849, 39850, 39851, 39852, 39853, + 39854, 39855, 39856, 39857, 39858, 39859, 39860, + 39861, 39862, 39863, 39864, 39865, 39866, 39867, + 39868, 39869, 39870, 39871, 39872, 39873, 39874, + 39875, 39876, 39877, 39878, 39879, 39880, 39881, + 39882, 39883, 39884, 39885, 39886, 39887, 39888, + 39889, 39890, 39891, 39892, 39893, 39894, 39895, + 39896, 39897, 39898, 39899, 37218, 37217, 37232, + 37225, 37231, 37245, 37246, 37234, 37236, 37241, + 37260, 37253, 37264, 37261, 37265, 37282, 37283, + 37290, 37293, 37294, 37295, 37301, 37300, 37306, + 35925, 40574, 36280, 36331, 36357, 36441, 36457, + 36277, 36287, 36284, 36282, 36292, 36310, 36311, + 36314, 36318, 36302, 36303, 36315, 36294, 36332, + 36343, 36344, 36323, 36345, 36347, 36324, 36361, + 36349, 36372, 36381, 36383, 36396, 36398, 36387, + 36399, 36410, 36416, 36409, 36405, 36413, 36401, + 36425, 36417, 36418, 36433, 36434, 36426, 36464, + 36470, 36476, 36463, 36468, 36485, 36495, 36500, + 36496, 36508, 36510, 35960, 35970, 35978, 35973, + 35992, 35988, 26011, 35286, 35294, 35290, 35292, + 39900, 39901, 39902, 39903, 39904, 39905, 39906, + 39907, 39908, 39909, 39910, 39911, 39912, 39913, + 39914, 39915, 39916, 39917, 39918, 39919, 39920, + 39921, 39922, 39923, 39924, 39925, 39926, 39927, + 39928, 39929, 39930, 39931, 39932, 39933, 39934, + 39935, 39936, 39937, 39938, 39939, 39940, 39941, + 39942, 39943, 39944, 39945, 39946, 39947, 39948, + 39949, 39950, 39951, 39952, 39953, 39954, 39955, + 39956, 39957, 39958, 39959, 39960, 39961, 39962, + 39963, 39964, 39965, 39966, 39967, 39968, 39969, + 39970, 39971, 39972, 39973, 39974, 39975, 39976, + 39977, 39978, 39979, 39980, 39981, 39982, 39983, + 39984, 39985, 39986, 39987, 39988, 39989, 39990, + 39991, 39992, 39993, 39994, 39995, 35301, 35307, + 35311, 35390, 35622, 38739, 38633, 38643, 38639, + 38662, 38657, 38664, 38671, 38670, 38698, 38701, + 38704, 38718, 40832, 40835, 40837, 40838, 40839, + 40840, 40841, 40842, 40844, 40702, 40715, 40717, + 38585, 38588, 38589, 38606, 38610, 30655, 38624, + 37518, 37550, 37576, 37694, 37738, 37834, 37775, + 37950, 37995, 40063, 40066, 40069, 40070, 40071, + 40072, 31267, 40075, 40078, 40080, 40081, 40082, + 40084, 40085, 40090, 40091, 40094, 40095, 40096, + 40097, 40098, 40099, 40101, 40102, 40103, 40104, + 40105, 40107, 40109, 40110, 40112, 40113, 40114, + 40115, 40116, 40117, 40118, 40119, 40122, 40123, + 40124, 40125, 40132, 40133, 40134, 40135, 40138, + 40139, 39996, 39997, 39998, 39999, 40000, 40001, + 40002, 40003, 40004, 40005, 40006, 40007, 40008, + 40009, 40010, 40011, 40012, 40013, 40014, 40015, + 40016, 40017, 40018, 40019, 40020, 40021, 40022, + 40023, 40024, 40025, 40026, 40027, 40028, 40029, + 40030, 40031, 40032, 40033, 40034, 40035, 40036, + 40037, 40038, 40039, 40040, 40041, 40042, 40043, + 40044, 40045, 40046, 40047, 40048, 40049, 40050, + 40051, 40052, 40053, 40054, 40055, 40056, 40057, + 40058, 40059, 40061, 40062, 40064, 40067, 40068, + 40073, 40074, 40076, 40079, 40083, 40086, 40087, + 40088, 40089, 40093, 40106, 40108, 40111, 40121, + 40126, 40127, 40128, 40129, 40130, 40136, 40137, + 40145, 40146, 40154, 40155, 40160, 40161, 40140, + 40141, 40142, 40143, 40144, 40147, 40148, 40149, + 40151, 40152, 40153, 40156, 40157, 40159, 40162, + 38780, 38789, 38801, 38802, 38804, 38831, 38827, + 38819, 38834, 38836, 39601, 39600, 39607, 40536, + 39606, 39610, 39612, 39617, 39616, 39621, 39618, + 39627, 39628, 39633, 39749, 39747, 39751, 39753, + 39752, 39757, 39761, 39144, 39181, 39214, 39253, + 39252, 39647, 39649, 39654, 39663, 39659, 39675, + 39661, 39673, 39688, 39695, 39699, 39711, 39715, + 40637, 40638, 32315, 40578, 40583, 40584, 40587, + 40594, 37846, 40605, 40607, 40667, 40668, 40669, + 40672, 40671, 40674, 40681, 40679, 40677, 40682, + 40687, 40738, 40748, 40751, 40761, 40759, 40765, + 40766, 40772, 40163, 40164, 40165, 40166, 40167, + 40168, 40169, 40170, 40171, 40172, 40173, 40174, + 40175, 40176, 40177, 40178, 40179, 40180, 40181, + 40182, 40183, 40184, 40185, 40186, 40187, 40188, + 40189, 40190, 40191, 40192, 40193, 40194, 40195, + 40196, 40197, 40198, 40199, 40200, 40201, 40202, + 40203, 40204, 40205, 40206, 40207, 40208, 40209, + 40210, 40211, 40212, 40213, 40214, 40215, 40216, + 40217, 40218, 40219, 40220, 40221, 40222, 40223, + 40224, 40225, 40226, 40227, 40228, 40229, 40230, + 40231, 40232, 40233, 40234, 40235, 40236, 40237, + 40238, 40239, 40240, 40241, 40242, 40243, 40244, + 40245, 40246, 40247, 40248, 40249, 40250, 40251, + 40252, 40253, 40254, 40255, 40256, 40257, 40258, + 57908, 57909, 57910, 57911, 57912, 57913, 57914, + 57915, 57916, 57917, 57918, 57919, 57920, 57921, + 57922, 57923, 57924, 57925, 57926, 57927, 57928, + 57929, 57930, 57931, 57932, 57933, 57934, 57935, + 57936, 57937, 57938, 57939, 57940, 57941, 57942, + 57943, 57944, 57945, 57946, 57947, 57948, 57949, + 57950, 57951, 57952, 57953, 57954, 57955, 57956, + 57957, 57958, 57959, 57960, 57961, 57962, 57963, + 57964, 57965, 57966, 57967, 57968, 57969, 57970, + 57971, 57972, 57973, 57974, 57975, 57976, 57977, + 57978, 57979, 57980, 57981, 57982, 57983, 57984, + 57985, 57986, 57987, 57988, 57989, 57990, 57991, + 57992, 57993, 57994, 57995, 57996, 57997, 57998, + 57999, 58000, 58001, 40259, 40260, 40261, 40262, + 40263, 40264, 40265, 40266, 40267, 40268, 40269, + 40270, 40271, 40272, 40273, 40274, 40275, 40276, + 40277, 40278, 40279, 40280, 40281, 40282, 40283, + 40284, 40285, 40286, 40287, 40288, 40289, 40290, + 40291, 40292, 40293, 40294, 40295, 40296, 40297, + 40298, 40299, 40300, 40301, 40302, 40303, 40304, + 40305, 40306, 40307, 40308, 40309, 40310, 40311, + 40312, 40313, 40314, 40315, 40316, 40317, 40318, + 40319, 40320, 40321, 40322, 40323, 40324, 40325, + 40326, 40327, 40328, 40329, 40330, 40331, 40332, + 40333, 40334, 40335, 40336, 40337, 40338, 40339, + 40340, 40341, 40342, 40343, 40344, 40345, 40346, + 40347, 40348, 40349, 40350, 40351, 40352, 40353, + 40354, 58002, 58003, 58004, 58005, 58006, 58007, + 58008, 58009, 58010, 58011, 58012, 58013, 58014, + 58015, 58016, 58017, 58018, 58019, 58020, 58021, + 58022, 58023, 58024, 58025, 58026, 58027, 58028, + 58029, 58030, 58031, 58032, 58033, 58034, 58035, + 58036, 58037, 58038, 58039, 58040, 58041, 58042, + 58043, 58044, 58045, 58046, 58047, 58048, 58049, + 58050, 58051, 58052, 58053, 58054, 58055, 58056, + 58057, 58058, 58059, 58060, 58061, 58062, 58063, + 58064, 58065, 58066, 58067, 58068, 58069, 58070, + 58071, 58072, 58073, 58074, 58075, 58076, 58077, + 58078, 58079, 58080, 58081, 58082, 58083, 58084, + 58085, 58086, 58087, 58088, 58089, 58090, 58091, + 58092, 58093, 58094, 58095, 40355, 40356, 40357, + 40358, 40359, 40360, 40361, 40362, 40363, 40364, + 40365, 40366, 40367, 40368, 40369, 40370, 40371, + 40372, 40373, 40374, 40375, 40376, 40377, 40378, + 40379, 40380, 40381, 40382, 40383, 40384, 40385, + 40386, 40387, 40388, 40389, 40390, 40391, 40392, + 40393, 40394, 40395, 40396, 40397, 40398, 40399, + 40400, 40401, 40402, 40403, 40404, 40405, 40406, + 40407, 40408, 40409, 40410, 40411, 40412, 40413, + 40414, 40415, 40416, 40417, 40418, 40419, 40420, + 40421, 40422, 40423, 40424, 40425, 40426, 40427, + 40428, 40429, 40430, 40431, 40432, 40433, 40434, + 40435, 40436, 40437, 40438, 40439, 40440, 40441, + 40442, 40443, 40444, 40445, 40446, 40447, 40448, + 40449, 40450, 58096, 58097, 58098, 58099, 58100, + 58101, 58102, 58103, 58104, 58105, 58106, 58107, + 58108, 58109, 58110, 58111, 58112, 58113, 58114, + 58115, 58116, 58117, 58118, 58119, 58120, 58121, + 58122, 58123, 58124, 58125, 58126, 58127, 58128, + 58129, 58130, 58131, 58132, 58133, 58134, 58135, + 58136, 58137, 58138, 58139, 58140, 58141, 58142, + 58143, 58144, 58145, 58146, 58147, 58148, 58149, + 58150, 58151, 58152, 58153, 58154, 58155, 58156, + 58157, 58158, 58159, 58160, 58161, 58162, 58163, + 58164, 58165, 58166, 58167, 58168, 58169, 58170, + 58171, 58172, 58173, 58174, 58175, 58176, 58177, + 58178, 58179, 58180, 58181, 58182, 58183, 58184, + 58185, 58186, 58187, 58188, 58189, 40451, 40452, + 40453, 40454, 40455, 40456, 40457, 40458, 40459, + 40460, 40461, 40462, 40463, 40464, 40465, 40466, + 40467, 40468, 40469, 40470, 40471, 40472, 40473, + 40474, 40475, 40476, 40477, 40478, 40484, 40487, + 40494, 40496, 40500, 40507, 40508, 40512, 40525, + 40528, 40530, 40531, 40532, 40534, 40537, 40541, + 40543, 40544, 40545, 40546, 40549, 40558, 40559, + 40562, 40564, 40565, 40566, 40567, 40568, 40569, + 40570, 40571, 40572, 40573, 40576, 40577, 40579, + 40580, 40581, 40582, 40585, 40586, 40588, 40589, + 40590, 40591, 40592, 40593, 40596, 40597, 40598, + 40599, 40600, 40601, 40602, 40603, 40604, 40606, + 40608, 40609, 40610, 40611, 40612, 40613, 40615, + 40616, 40617, 40618, 58190, 58191, 58192, 58193, + 58194, 58195, 58196, 58197, 58198, 58199, 58200, + 58201, 58202, 58203, 58204, 58205, 58206, 58207, + 58208, 58209, 58210, 58211, 58212, 58213, 58214, + 58215, 58216, 58217, 58218, 58219, 58220, 58221, + 58222, 58223, 58224, 58225, 58226, 58227, 58228, + 58229, 58230, 58231, 58232, 58233, 58234, 58235, + 58236, 58237, 58238, 58239, 58240, 58241, 58242, + 58243, 58244, 58245, 58246, 58247, 58248, 58249, + 58250, 58251, 58252, 58253, 58254, 58255, 58256, + 58257, 58258, 58259, 58260, 58261, 58262, 58263, + 58264, 58265, 58266, 58267, 58268, 58269, 58270, + 58271, 58272, 58273, 58274, 58275, 58276, 58277, + 58278, 58279, 58280, 58281, 58282, 58283, 40619, + 40620, 40621, 40622, 40623, 40624, 40625, 40626, + 40627, 40629, 40630, 40631, 40633, 40634, 40636, + 40639, 40640, 40641, 40642, 40643, 40645, 40646, + 40647, 40648, 40650, 40651, 40652, 40656, 40658, + 40659, 40661, 40662, 40663, 40665, 40666, 40670, + 40673, 40675, 40676, 40678, 40680, 40683, 40684, + 40685, 40686, 40688, 40689, 40690, 40691, 40692, + 40693, 40694, 40695, 40696, 40698, 40701, 40703, + 40704, 40705, 40706, 40707, 40708, 40709, 40710, + 40711, 40712, 40713, 40714, 40716, 40719, 40721, + 40722, 40724, 40725, 40726, 40728, 40730, 40731, + 40732, 40733, 40734, 40735, 40737, 40739, 40740, + 40741, 40742, 40743, 40744, 40745, 40746, 40747, + 40749, 40750, 40752, 40753, 58284, 58285, 58286, + 58287, 58288, 58289, 58290, 58291, 58292, 58293, + 58294, 58295, 58296, 58297, 58298, 58299, 58300, + 58301, 58302, 58303, 58304, 58305, 58306, 58307, + 58308, 58309, 58310, 58311, 58312, 58313, 58314, + 58315, 58316, 58317, 58318, 58319, 58320, 58321, + 58322, 58323, 58324, 58325, 58326, 58327, 58328, + 58329, 58330, 58331, 58332, 58333, 58334, 58335, + 58336, 58337, 58338, 58339, 58340, 58341, 58342, + 58343, 58344, 58345, 58346, 58347, 58348, 58349, + 58350, 58351, 58352, 58353, 58354, 58355, 58356, + 58357, 58358, 58359, 58360, 58361, 58362, 58363, + 58364, 58365, 58366, 58367, 58368, 58369, 58370, + 58371, 58372, 58373, 58374, 58375, 58376, 58377, + 40754, 40755, 40756, 40757, 40758, 40760, 40762, + 40764, 40767, 40768, 40769, 40770, 40771, 40773, + 40774, 40775, 40776, 40777, 40778, 40779, 40780, + 40781, 40782, 40783, 40786, 40787, 40788, 40789, + 40790, 40791, 40792, 40793, 40794, 40795, 40796, + 40797, 40798, 40799, 40800, 40801, 40802, 40803, + 40804, 40805, 40806, 40807, 40808, 40809, 40810, + 40811, 40812, 40813, 40814, 40815, 40816, 40817, + 40818, 40819, 40820, 40821, 40822, 40823, 40824, + 40825, 40826, 40827, 40828, 40829, 40830, 40833, + 40834, 40845, 40846, 40847, 40848, 40849, 40850, + 40851, 40852, 40853, 40854, 40855, 40856, 40860, + 40861, 40862, 40865, 40866, 40867, 40868, 40869, + 63788, 63865, 63893, 63975, 63985, 58378, 58379, + 58380, 58381, 58382, 58383, 58384, 58385, 58386, + 58387, 58388, 58389, 58390, 58391, 58392, 58393, + 58394, 58395, 58396, 58397, 58398, 58399, 58400, + 58401, 58402, 58403, 58404, 58405, 58406, 58407, + 58408, 58409, 58410, 58411, 58412, 58413, 58414, + 58415, 58416, 58417, 58418, 58419, 58420, 58421, + 58422, 58423, 58424, 58425, 58426, 58427, 58428, + 58429, 58430, 58431, 58432, 58433, 58434, 58435, + 58436, 58437, 58438, 58439, 58440, 58441, 58442, + 58443, 58444, 58445, 58446, 58447, 58448, 58449, + 58450, 58451, 58452, 58453, 58454, 58455, 58456, + 58457, 58458, 58459, 58460, 58461, 58462, 58463, + 58464, 58465, 58466, 58467, 58468, 58469, 58470, + 58471, 64012, 64013, 64014, 64015, 64017, 64019, + 64020, 64024, 64031, 64032, 64033, 64035, 64036, + 64039, 64040, 64041, 11905, 59414, 59415, 59416, + 11908, 13427, 13383, 11912, 11915, 59422, 13726, + 13850, 13838, 11916, 11927, 14702, 14616, 59430, + 14799, 14815, 14963, 14800, 59435, 59436, 15182, + 15470, 15584, 11943, 59441, 59442, 11946, 16470, + 16735, 11950, 17207, 11955, 11958, 11959, 59451, + 17329, 17324, 11963, 17373, 17622, 18017, 17996, + 59459, 18211, 18217, 18300, 18317, 11978, 18759, + 18810, 18813, 18818, 18819, 18821, 18822, 18847, + 18843, 18871, 18870, 59476, 59477, 19619, 19615, + 19616, 19617, 19575, 19618, 19731, 19732, 19733, + 19734, 19735, 19736, 19737, 19886, 59492, 58472, + 58473, 58474, 58475, 58476, 58477, 58478, 58479, + 58480, 58481, 58482, 58483, 58484, 58485, 58486, + 58487, 58488, 58489, 58490, 58491, 58492, 58493, + 58494, 58495, 58496, 58497, 58498, 58499, 58500, + 58501, 58502, 58503, 58504, 58505, 58506, 58507, + 58508, 58509, 58510, 58511, 58512, 58513, 58514, + 58515, 58516, 58517, 58518, 58519, 58520, 58521, + 58522, 58523, 58524, 58525, 58526, 58527, 58528, + 58529, 58530, 58531, 58532, 58533, 58534, 58535, + 58536, 58537, 58538, 58539, 58540, 58541, 58542, + 58543, 58544, 58545, 58546, 58547, 58548, 58549, + 58550, 58551, 58552, 58553, 58554, 58555, 58556, + 58557, 58558, 58559, 58560, 58561, 58562, 58563, + 58564, 58565 ], - 'gb18030-ranges': [ + "gb18030-ranges": [ [0, 128], [36, 165], [38, 169], @@ -40063,21327 +9907,3167 @@ try { [39116, 65132], [39265, 65375], [39394, 65510], - [189000, 65536], + [189000, 65536] ], - jis0208: [ - 12288, - 12289, - 12290, - 65292, - 65294, - 12539, - 65306, - 65307, - 65311, - 65281, - 12443, - 12444, - 180, - 65344, - 168, - 65342, - 65507, - 65343, - 12541, - 12542, - 12445, - 12446, - 12291, - 20189, - 12293, - 12294, - 12295, - 12540, - 8213, - 8208, - 65295, - 65340, - 65374, - 8741, - 65372, - 8230, - 8229, - 8216, - 8217, - 8220, - 8221, - 65288, - 65289, - 12308, - 12309, - 65339, - 65341, - 65371, - 65373, - 12296, - 12297, - 12298, - 12299, - 12300, - 12301, - 12302, - 12303, - 12304, - 12305, - 65291, - 65293, - 177, - 215, - 247, - 65309, - 8800, - 65308, - 65310, - 8806, - 8807, - 8734, - 8756, - 9794, - 9792, - 176, - 8242, - 8243, - 8451, - 65509, - 65284, - 65504, - 65505, - 65285, - 65283, - 65286, - 65290, - 65312, - 167, - 9734, - 9733, - 9675, - 9679, - 9678, - 9671, - 9670, - 9633, - 9632, - 9651, - 9650, - 9661, - 9660, - 8251, - 12306, - 8594, - 8592, - 8593, - 8595, - 12307, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 8712, - 8715, - 8838, - 8839, - 8834, - 8835, - 8746, - 8745, - null, - null, - null, - null, - null, - null, - null, - null, - 8743, - 8744, - 65506, - 8658, - 8660, - 8704, - 8707, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 8736, - 8869, - 8978, - 8706, - 8711, - 8801, - 8786, - 8810, - 8811, - 8730, - 8765, - 8733, - 8757, - 8747, - 8748, - null, - null, - null, - null, - null, - null, - null, - 8491, - 8240, - 9839, - 9837, - 9834, - 8224, - 8225, - 182, - null, - null, - null, - null, - 9711, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 65296, - 65297, - 65298, - 65299, - 65300, - 65301, - 65302, - 65303, - 65304, - 65305, - null, - null, - null, - null, - null, - null, - null, - 65313, - 65314, - 65315, - 65316, - 65317, - 65318, - 65319, - 65320, - 65321, - 65322, - 65323, - 65324, - 65325, - 65326, - 65327, - 65328, - 65329, - 65330, - 65331, - 65332, - 65333, - 65334, - 65335, - 65336, - 65337, - 65338, - null, - null, - null, - null, - null, - null, - 65345, - 65346, - 65347, - 65348, - 65349, - 65350, - 65351, - 65352, - 65353, - 65354, - 65355, - 65356, - 65357, - 65358, - 65359, - 65360, - 65361, - 65362, - 65363, - 65364, - 65365, - 65366, - 65367, - 65368, - 65369, - 65370, - null, - null, - null, - null, - 12353, - 12354, - 12355, - 12356, - 12357, - 12358, - 12359, - 12360, - 12361, - 12362, - 12363, - 12364, - 12365, - 12366, - 12367, - 12368, - 12369, - 12370, - 12371, - 12372, - 12373, - 12374, - 12375, - 12376, - 12377, - 12378, - 12379, - 12380, - 12381, - 12382, - 12383, - 12384, - 12385, - 12386, - 12387, - 12388, - 12389, - 12390, - 12391, - 12392, - 12393, - 12394, - 12395, - 12396, - 12397, - 12398, - 12399, - 12400, - 12401, - 12402, - 12403, - 12404, - 12405, - 12406, - 12407, - 12408, - 12409, - 12410, - 12411, - 12412, - 12413, - 12414, - 12415, - 12416, - 12417, - 12418, - 12419, - 12420, - 12421, - 12422, - 12423, - 12424, - 12425, - 12426, - 12427, - 12428, - 12429, - 12430, - 12431, - 12432, - 12433, - 12434, - 12435, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 12449, - 12450, - 12451, - 12452, - 12453, - 12454, - 12455, - 12456, - 12457, - 12458, - 12459, - 12460, - 12461, - 12462, - 12463, - 12464, - 12465, - 12466, - 12467, - 12468, - 12469, - 12470, - 12471, - 12472, - 12473, - 12474, - 12475, - 12476, - 12477, - 12478, - 12479, - 12480, - 12481, - 12482, - 12483, - 12484, - 12485, - 12486, - 12487, - 12488, - 12489, - 12490, - 12491, - 12492, - 12493, - 12494, - 12495, - 12496, - 12497, - 12498, - 12499, - 12500, - 12501, - 12502, - 12503, - 12504, - 12505, - 12506, - 12507, - 12508, - 12509, - 12510, - 12511, - 12512, - 12513, - 12514, - 12515, - 12516, - 12517, - 12518, - 12519, - 12520, - 12521, - 12522, - 12523, - 12524, - 12525, - 12526, - 12527, - 12528, - 12529, - 12530, - 12531, - 12532, - 12533, - 12534, - null, - null, - null, - null, - null, - null, - null, - null, - 913, - 914, - 915, - 916, - 917, - 918, - 919, - 920, - 921, - 922, - 923, - 924, - 925, - 926, - 927, - 928, - 929, - 931, - 932, - 933, - 934, - 935, - 936, - 937, - null, - null, - null, - null, - null, - null, - null, - null, - 945, - 946, - 947, - 948, - 949, - 950, - 951, - 952, - 953, - 954, - 955, - 956, - 957, - 958, - 959, - 960, - 961, - 963, - 964, - 965, - 966, - 967, - 968, - 969, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 1040, - 1041, - 1042, - 1043, - 1044, - 1045, - 1025, - 1046, - 1047, - 1048, - 1049, - 1050, - 1051, - 1052, - 1053, - 1054, - 1055, - 1056, - 1057, - 1058, - 1059, - 1060, - 1061, - 1062, - 1063, - 1064, - 1065, - 1066, - 1067, - 1068, - 1069, - 1070, - 1071, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 1072, - 1073, - 1074, - 1075, - 1076, - 1077, - 1105, - 1078, - 1079, - 1080, - 1081, - 1082, - 1083, - 1084, - 1085, - 1086, - 1087, - 1088, - 1089, - 1090, - 1091, - 1092, - 1093, - 1094, - 1095, - 1096, - 1097, - 1098, - 1099, - 1100, - 1101, - 1102, - 1103, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 9472, - 9474, - 9484, - 9488, - 9496, - 9492, - 9500, - 9516, - 9508, - 9524, - 9532, - 9473, - 9475, - 9487, - 9491, - 9499, - 9495, - 9507, - 9523, - 9515, - 9531, - 9547, - 9504, - 9519, - 9512, - 9527, - 9535, - 9501, - 9520, - 9509, - 9528, - 9538, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 9312, - 9313, - 9314, - 9315, - 9316, - 9317, - 9318, - 9319, - 9320, - 9321, - 9322, - 9323, - 9324, - 9325, - 9326, - 9327, - 9328, - 9329, - 9330, - 9331, - 8544, - 8545, - 8546, - 8547, - 8548, - 8549, - 8550, - 8551, - 8552, - 8553, - null, - 13129, - 13076, - 13090, - 13133, - 13080, - 13095, - 13059, - 13110, - 13137, - 13143, - 13069, - 13094, - 13091, - 13099, - 13130, - 13115, - 13212, - 13213, - 13214, - 13198, - 13199, - 13252, - 13217, - null, - null, - null, - null, - null, - null, - null, - null, - 13179, - 12317, - 12319, - 8470, - 13261, - 8481, - 12964, - 12965, - 12966, - 12967, - 12968, - 12849, - 12850, - 12857, - 13182, - 13181, - 13180, - 8786, - 8801, - 8747, - 8750, - 8721, - 8730, - 8869, - 8736, - 8735, - 8895, - 8757, - 8745, - 8746, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 20124, - 21782, - 23043, - 38463, - 21696, - 24859, - 25384, - 23030, - 36898, - 33909, - 33564, - 31312, - 24746, - 25569, - 28197, - 26093, - 33894, - 33446, - 39925, - 26771, - 22311, - 26017, - 25201, - 23451, - 22992, - 34427, - 39156, - 32098, - 32190, - 39822, - 25110, - 31903, - 34999, - 23433, - 24245, - 25353, - 26263, - 26696, - 38343, - 38797, - 26447, - 20197, - 20234, - 20301, - 20381, - 20553, - 22258, - 22839, - 22996, - 23041, - 23561, - 24799, - 24847, - 24944, - 26131, - 26885, - 28858, - 30031, - 30064, - 31227, - 32173, - 32239, - 32963, - 33806, - 34915, - 35586, - 36949, - 36986, - 21307, - 20117, - 20133, - 22495, - 32946, - 37057, - 30959, - 19968, - 22769, - 28322, - 36920, - 31282, - 33576, - 33419, - 39983, - 20801, - 21360, - 21693, - 21729, - 22240, - 23035, - 24341, - 39154, - 28139, - 32996, - 34093, - 38498, - 38512, - 38560, - 38907, - 21515, - 21491, - 23431, - 28879, - 32701, - 36802, - 38632, - 21359, - 40284, - 31418, - 19985, - 30867, - 33276, - 28198, - 22040, - 21764, - 27421, - 34074, - 39995, - 23013, - 21417, - 28006, - 29916, - 38287, - 22082, - 20113, - 36939, - 38642, - 33615, - 39180, - 21473, - 21942, - 23344, - 24433, - 26144, - 26355, - 26628, - 27704, - 27891, - 27945, - 29787, - 30408, - 31310, - 38964, - 33521, - 34907, - 35424, - 37613, - 28082, - 30123, - 30410, - 39365, - 24742, - 35585, - 36234, - 38322, - 27022, - 21421, - 20870, - 22290, - 22576, - 22852, - 23476, - 24310, - 24616, - 25513, - 25588, - 27839, - 28436, - 28814, - 28948, - 29017, - 29141, - 29503, - 32257, - 33398, - 33489, - 34199, - 36960, - 37467, - 40219, - 22633, - 26044, - 27738, - 29989, - 20985, - 22830, - 22885, - 24448, - 24540, - 25276, - 26106, - 27178, - 27431, - 27572, - 29579, - 32705, - 35158, - 40236, - 40206, - 40644, - 23713, - 27798, - 33659, - 20740, - 23627, - 25014, - 33222, - 26742, - 29281, - 20057, - 20474, - 21368, - 24681, - 28201, - 31311, - 38899, - 19979, - 21270, - 20206, - 20309, - 20285, - 20385, - 20339, - 21152, - 21487, - 22025, - 22799, - 23233, - 23478, - 23521, - 31185, - 26247, - 26524, - 26550, - 27468, - 27827, - 28779, - 29634, - 31117, - 31166, - 31292, - 31623, - 33457, - 33499, - 33540, - 33655, - 33775, - 33747, - 34662, - 35506, - 22057, - 36008, - 36838, - 36942, - 38686, - 34442, - 20420, - 23784, - 25105, - 29273, - 30011, - 33253, - 33469, - 34558, - 36032, - 38597, - 39187, - 39381, - 20171, - 20250, - 35299, - 22238, - 22602, - 22730, - 24315, - 24555, - 24618, - 24724, - 24674, - 25040, - 25106, - 25296, - 25913, - 39745, - 26214, - 26800, - 28023, - 28784, - 30028, - 30342, - 32117, - 33445, - 34809, - 38283, - 38542, - 35997, - 20977, - 21182, - 22806, - 21683, - 23475, - 23830, - 24936, - 27010, - 28079, - 30861, - 33995, - 34903, - 35442, - 37799, - 39608, - 28012, - 39336, - 34521, - 22435, - 26623, - 34510, - 37390, - 21123, - 22151, - 21508, - 24275, - 25313, - 25785, - 26684, - 26680, - 27579, - 29554, - 30906, - 31339, - 35226, - 35282, - 36203, - 36611, - 37101, - 38307, - 38548, - 38761, - 23398, - 23731, - 27005, - 38989, - 38990, - 25499, - 31520, - 27179, - 27263, - 26806, - 39949, - 28511, - 21106, - 21917, - 24688, - 25324, - 27963, - 28167, - 28369, - 33883, - 35088, - 36676, - 19988, - 39993, - 21494, - 26907, - 27194, - 38788, - 26666, - 20828, - 31427, - 33970, - 37340, - 37772, - 22107, - 40232, - 26658, - 33541, - 33841, - 31909, - 21000, - 33477, - 29926, - 20094, - 20355, - 20896, - 23506, - 21002, - 21208, - 21223, - 24059, - 21914, - 22570, - 23014, - 23436, - 23448, - 23515, - 24178, - 24185, - 24739, - 24863, - 24931, - 25022, - 25563, - 25954, - 26577, - 26707, - 26874, - 27454, - 27475, - 27735, - 28450, - 28567, - 28485, - 29872, - 29976, - 30435, - 30475, - 31487, - 31649, - 31777, - 32233, - 32566, - 32752, - 32925, - 33382, - 33694, - 35251, - 35532, - 36011, - 36996, - 37969, - 38291, - 38289, - 38306, - 38501, - 38867, - 39208, - 33304, - 20024, - 21547, - 23736, - 24012, - 29609, - 30284, - 30524, - 23721, - 32747, - 36107, - 38593, - 38929, - 38996, - 39000, - 20225, - 20238, - 21361, - 21916, - 22120, - 22522, - 22855, - 23305, - 23492, - 23696, - 24076, - 24190, - 24524, - 25582, - 26426, - 26071, - 26082, - 26399, - 26827, - 26820, - 27231, - 24112, - 27589, - 27671, - 27773, - 30079, - 31048, - 23395, - 31232, - 32000, - 24509, - 35215, - 35352, - 36020, - 36215, - 36556, - 36637, - 39138, - 39438, - 39740, - 20096, - 20605, - 20736, - 22931, - 23452, - 25135, - 25216, - 25836, - 27450, - 29344, - 30097, - 31047, - 32681, - 34811, - 35516, - 35696, - 25516, - 33738, - 38816, - 21513, - 21507, - 21931, - 26708, - 27224, - 35440, - 30759, - 26485, - 40653, - 21364, - 23458, - 33050, - 34384, - 36870, - 19992, - 20037, - 20167, - 20241, - 21450, - 21560, - 23470, - 24339, - 24613, - 25937, - 26429, - 27714, - 27762, - 27875, - 28792, - 29699, - 31350, - 31406, - 31496, - 32026, - 31998, - 32102, - 26087, - 29275, - 21435, - 23621, - 24040, - 25298, - 25312, - 25369, - 28192, - 34394, - 35377, - 36317, - 37624, - 28417, - 31142, - 39770, - 20136, - 20139, - 20140, - 20379, - 20384, - 20689, - 20807, - 31478, - 20849, - 20982, - 21332, - 21281, - 21375, - 21483, - 21932, - 22659, - 23777, - 24375, - 24394, - 24623, - 24656, - 24685, - 25375, - 25945, - 27211, - 27841, - 29378, - 29421, - 30703, - 33016, - 33029, - 33288, - 34126, - 37111, - 37857, - 38911, - 39255, - 39514, - 20208, - 20957, - 23597, - 26241, - 26989, - 23616, - 26354, - 26997, - 29577, - 26704, - 31873, - 20677, - 21220, - 22343, - 24062, - 37670, - 26020, - 27427, - 27453, - 29748, - 31105, - 31165, - 31563, - 32202, - 33465, - 33740, - 34943, - 35167, - 35641, - 36817, - 37329, - 21535, - 37504, - 20061, - 20534, - 21477, - 21306, - 29399, - 29590, - 30697, - 33510, - 36527, - 39366, - 39368, - 39378, - 20855, - 24858, - 34398, - 21936, - 31354, - 20598, - 23507, - 36935, - 38533, - 20018, - 27355, - 37351, - 23633, - 23624, - 25496, - 31391, - 27795, - 38772, - 36705, - 31402, - 29066, - 38536, - 31874, - 26647, - 32368, - 26705, - 37740, - 21234, - 21531, - 34219, - 35347, - 32676, - 36557, - 37089, - 21350, - 34952, - 31041, - 20418, - 20670, - 21009, - 20804, - 21843, - 22317, - 29674, - 22411, - 22865, - 24418, - 24452, - 24693, - 24950, - 24935, - 25001, - 25522, - 25658, - 25964, - 26223, - 26690, - 28179, - 30054, - 31293, - 31995, - 32076, - 32153, - 32331, - 32619, - 33550, - 33610, - 34509, - 35336, - 35427, - 35686, - 36605, - 38938, - 40335, - 33464, - 36814, - 39912, - 21127, - 25119, - 25731, - 28608, - 38553, - 26689, - 20625, - 27424, - 27770, - 28500, - 31348, - 32080, - 34880, - 35363, - 26376, - 20214, - 20537, - 20518, - 20581, - 20860, - 21048, - 21091, - 21927, - 22287, - 22533, - 23244, - 24314, - 25010, - 25080, - 25331, - 25458, - 26908, - 27177, - 29309, - 29356, - 29486, - 30740, - 30831, - 32121, - 30476, - 32937, - 35211, - 35609, - 36066, - 36562, - 36963, - 37749, - 38522, - 38997, - 39443, - 40568, - 20803, - 21407, - 21427, - 24187, - 24358, - 28187, - 28304, - 29572, - 29694, - 32067, - 33335, - 35328, - 35578, - 38480, - 20046, - 20491, - 21476, - 21628, - 22266, - 22993, - 23396, - 24049, - 24235, - 24359, - 25144, - 25925, - 26543, - 28246, - 29392, - 31946, - 34996, - 32929, - 32993, - 33776, - 34382, - 35463, - 36328, - 37431, - 38599, - 39015, - 40723, - 20116, - 20114, - 20237, - 21320, - 21577, - 21566, - 23087, - 24460, - 24481, - 24735, - 26791, - 27278, - 29786, - 30849, - 35486, - 35492, - 35703, - 37264, - 20062, - 39881, - 20132, - 20348, - 20399, - 20505, - 20502, - 20809, - 20844, - 21151, - 21177, - 21246, - 21402, - 21475, - 21521, - 21518, - 21897, - 22353, - 22434, - 22909, - 23380, - 23389, - 23439, - 24037, - 24039, - 24055, - 24184, - 24195, - 24218, - 24247, - 24344, - 24658, - 24908, - 25239, - 25304, - 25511, - 25915, - 26114, - 26179, - 26356, - 26477, - 26657, - 26775, - 27083, - 27743, - 27946, - 28009, - 28207, - 28317, - 30002, - 30343, - 30828, - 31295, - 31968, - 32005, - 32024, - 32094, - 32177, - 32789, - 32771, - 32943, - 32945, - 33108, - 33167, - 33322, - 33618, - 34892, - 34913, - 35611, - 36002, - 36092, - 37066, - 37237, - 37489, - 30783, - 37628, - 38308, - 38477, - 38917, - 39321, - 39640, - 40251, - 21083, - 21163, - 21495, - 21512, - 22741, - 25335, - 28640, - 35946, - 36703, - 40633, - 20811, - 21051, - 21578, - 22269, - 31296, - 37239, - 40288, - 40658, - 29508, - 28425, - 33136, - 29969, - 24573, - 24794, - 39592, - 29403, - 36796, - 27492, - 38915, - 20170, - 22256, - 22372, - 22718, - 23130, - 24680, - 25031, - 26127, - 26118, - 26681, - 26801, - 28151, - 30165, - 32058, - 33390, - 39746, - 20123, - 20304, - 21449, - 21766, - 23919, - 24038, - 24046, - 26619, - 27801, - 29811, - 30722, - 35408, - 37782, - 35039, - 22352, - 24231, - 25387, - 20661, - 20652, - 20877, - 26368, - 21705, - 22622, - 22971, - 23472, - 24425, - 25165, - 25505, - 26685, - 27507, - 28168, - 28797, - 37319, - 29312, - 30741, - 30758, - 31085, - 25998, - 32048, - 33756, - 35009, - 36617, - 38555, - 21092, - 22312, - 26448, - 32618, - 36001, - 20916, - 22338, - 38442, - 22586, - 27018, - 32948, - 21682, - 23822, - 22524, - 30869, - 40442, - 20316, - 21066, - 21643, - 25662, - 26152, - 26388, - 26613, - 31364, - 31574, - 32034, - 37679, - 26716, - 39853, - 31545, - 21273, - 20874, - 21047, - 23519, - 25334, - 25774, - 25830, - 26413, - 27578, - 34217, - 38609, - 30352, - 39894, - 25420, - 37638, - 39851, - 30399, - 26194, - 19977, - 20632, - 21442, - 23665, - 24808, - 25746, - 25955, - 26719, - 29158, - 29642, - 29987, - 31639, - 32386, - 34453, - 35715, - 36059, - 37240, - 39184, - 26028, - 26283, - 27531, - 20181, - 20180, - 20282, - 20351, - 21050, - 21496, - 21490, - 21987, - 22235, - 22763, - 22987, - 22985, - 23039, - 23376, - 23629, - 24066, - 24107, - 24535, - 24605, - 25351, - 25903, - 23388, - 26031, - 26045, - 26088, - 26525, - 27490, - 27515, - 27663, - 29509, - 31049, - 31169, - 31992, - 32025, - 32043, - 32930, - 33026, - 33267, - 35222, - 35422, - 35433, - 35430, - 35468, - 35566, - 36039, - 36060, - 38604, - 39164, - 27503, - 20107, - 20284, - 20365, - 20816, - 23383, - 23546, - 24904, - 25345, - 26178, - 27425, - 28363, - 27835, - 29246, - 29885, - 30164, - 30913, - 31034, - 32780, - 32819, - 33258, - 33940, - 36766, - 27728, - 40575, - 24335, - 35672, - 40235, - 31482, - 36600, - 23437, - 38635, - 19971, - 21489, - 22519, - 22833, - 23241, - 23460, - 24713, - 28287, - 28422, - 30142, - 36074, - 23455, - 34048, - 31712, - 20594, - 26612, - 33437, - 23649, - 34122, - 32286, - 33294, - 20889, - 23556, - 25448, - 36198, - 26012, - 29038, - 31038, - 32023, - 32773, - 35613, - 36554, - 36974, - 34503, - 37034, - 20511, - 21242, - 23610, - 26451, - 28796, - 29237, - 37196, - 37320, - 37675, - 33509, - 23490, - 24369, - 24825, - 20027, - 21462, - 23432, - 25163, - 26417, - 27530, - 29417, - 29664, - 31278, - 33131, - 36259, - 37202, - 39318, - 20754, - 21463, - 21610, - 23551, - 25480, - 27193, - 32172, - 38656, - 22234, - 21454, - 21608, - 23447, - 23601, - 24030, - 20462, - 24833, - 25342, - 27954, - 31168, - 31179, - 32066, - 32333, - 32722, - 33261, - 33311, - 33936, - 34886, - 35186, - 35728, - 36468, - 36655, - 36913, - 37195, - 37228, - 38598, - 37276, - 20160, - 20303, - 20805, - 21313, - 24467, - 25102, - 26580, - 27713, - 28171, - 29539, - 32294, - 37325, - 37507, - 21460, - 22809, - 23487, - 28113, - 31069, - 32302, - 31899, - 22654, - 29087, - 20986, - 34899, - 36848, - 20426, - 23803, - 26149, - 30636, - 31459, - 33308, - 39423, - 20934, - 24490, - 26092, - 26991, - 27529, - 28147, - 28310, - 28516, - 30462, - 32020, - 24033, - 36981, - 37255, - 38918, - 20966, - 21021, - 25152, - 26257, - 26329, - 28186, - 24246, - 32210, - 32626, - 26360, - 34223, - 34295, - 35576, - 21161, - 21465, - 22899, - 24207, - 24464, - 24661, - 37604, - 38500, - 20663, - 20767, - 21213, - 21280, - 21319, - 21484, - 21736, - 21830, - 21809, - 22039, - 22888, - 22974, - 23100, - 23477, - 23558, - 23567, - 23569, - 23578, - 24196, - 24202, - 24288, - 24432, - 25215, - 25220, - 25307, - 25484, - 25463, - 26119, - 26124, - 26157, - 26230, - 26494, - 26786, - 27167, - 27189, - 27836, - 28040, - 28169, - 28248, - 28988, - 28966, - 29031, - 30151, - 30465, - 30813, - 30977, - 31077, - 31216, - 31456, - 31505, - 31911, - 32057, - 32918, - 33750, - 33931, - 34121, - 34909, - 35059, - 35359, - 35388, - 35412, - 35443, - 35937, - 36062, - 37284, - 37478, - 37758, - 37912, - 38556, - 38808, - 19978, - 19976, - 19998, - 20055, - 20887, - 21104, - 22478, - 22580, - 22732, - 23330, - 24120, - 24773, - 25854, - 26465, - 26454, - 27972, - 29366, - 30067, - 31331, - 33976, - 35698, - 37304, - 37664, - 22065, - 22516, - 39166, - 25325, - 26893, - 27542, - 29165, - 32340, - 32887, - 33394, - 35302, - 39135, - 34645, - 36785, - 23611, - 20280, - 20449, - 20405, - 21767, - 23072, - 23517, - 23529, - 24515, - 24910, - 25391, - 26032, - 26187, - 26862, - 27035, - 28024, - 28145, - 30003, - 30137, - 30495, - 31070, - 31206, - 32051, - 33251, - 33455, - 34218, - 35242, - 35386, - 36523, - 36763, - 36914, - 37341, - 38663, - 20154, - 20161, - 20995, - 22645, - 22764, - 23563, - 29978, - 23613, - 33102, - 35338, - 36805, - 38499, - 38765, - 31525, - 35535, - 38920, - 37218, - 22259, - 21416, - 36887, - 21561, - 22402, - 24101, - 25512, - 27700, - 28810, - 30561, - 31883, - 32736, - 34928, - 36930, - 37204, - 37648, - 37656, - 38543, - 29790, - 39620, - 23815, - 23913, - 25968, - 26530, - 36264, - 38619, - 25454, - 26441, - 26905, - 33733, - 38935, - 38592, - 35070, - 28548, - 25722, - 23544, - 19990, - 28716, - 30045, - 26159, - 20932, - 21046, - 21218, - 22995, - 24449, - 24615, - 25104, - 25919, - 25972, - 26143, - 26228, - 26866, - 26646, - 27491, - 28165, - 29298, - 29983, - 30427, - 31934, - 32854, - 22768, - 35069, - 35199, - 35488, - 35475, - 35531, - 36893, - 37266, - 38738, - 38745, - 25993, - 31246, - 33030, - 38587, - 24109, - 24796, - 25114, - 26021, - 26132, - 26512, - 30707, - 31309, - 31821, - 32318, - 33034, - 36012, - 36196, - 36321, - 36447, - 30889, - 20999, - 25305, - 25509, - 25666, - 25240, - 35373, - 31363, - 31680, - 35500, - 38634, - 32118, - 33292, - 34633, - 20185, - 20808, - 21315, - 21344, - 23459, - 23554, - 23574, - 24029, - 25126, - 25159, - 25776, - 26643, - 26676, - 27849, - 27973, - 27927, - 26579, - 28508, - 29006, - 29053, - 26059, - 31359, - 31661, - 32218, - 32330, - 32680, - 33146, - 33307, - 33337, - 34214, - 35438, - 36046, - 36341, - 36984, - 36983, - 37549, - 37521, - 38275, - 39854, - 21069, - 21892, - 28472, - 28982, - 20840, - 31109, - 32341, - 33203, - 31950, - 22092, - 22609, - 23720, - 25514, - 26366, - 26365, - 26970, - 29401, - 30095, - 30094, - 30990, - 31062, - 31199, - 31895, - 32032, - 32068, - 34311, - 35380, - 38459, - 36961, - 40736, - 20711, - 21109, - 21452, - 21474, - 20489, - 21930, - 22766, - 22863, - 29245, - 23435, - 23652, - 21277, - 24803, - 24819, - 25436, - 25475, - 25407, - 25531, - 25805, - 26089, - 26361, - 24035, - 27085, - 27133, - 28437, - 29157, - 20105, - 30185, - 30456, - 31379, - 31967, - 32207, - 32156, - 32865, - 33609, - 33624, - 33900, - 33980, - 34299, - 35013, - 36208, - 36865, - 36973, - 37783, - 38684, - 39442, - 20687, - 22679, - 24974, - 33235, - 34101, - 36104, - 36896, - 20419, - 20596, - 21063, - 21363, - 24687, - 25417, - 26463, - 28204, - 36275, - 36895, - 20439, - 23646, - 36042, - 26063, - 32154, - 21330, - 34966, - 20854, - 25539, - 23384, - 23403, - 23562, - 25613, - 26449, - 36956, - 20182, - 22810, - 22826, - 27760, - 35409, - 21822, - 22549, - 22949, - 24816, - 25171, - 26561, - 33333, - 26965, - 38464, - 39364, - 39464, - 20307, - 22534, - 23550, - 32784, - 23729, - 24111, - 24453, - 24608, - 24907, - 25140, - 26367, - 27888, - 28382, - 32974, - 33151, - 33492, - 34955, - 36024, - 36864, - 36910, - 38538, - 40667, - 39899, - 20195, - 21488, - 22823, - 31532, - 37261, - 38988, - 40441, - 28381, - 28711, - 21331, - 21828, - 23429, - 25176, - 25246, - 25299, - 27810, - 28655, - 29730, - 35351, - 37944, - 28609, - 35582, - 33592, - 20967, - 34552, - 21482, - 21481, - 20294, - 36948, - 36784, - 22890, - 33073, - 24061, - 31466, - 36799, - 26842, - 35895, - 29432, - 40008, - 27197, - 35504, - 20025, - 21336, - 22022, - 22374, - 25285, - 25506, - 26086, - 27470, - 28129, - 28251, - 28845, - 30701, - 31471, - 31658, - 32187, - 32829, - 32966, - 34507, - 35477, - 37723, - 22243, - 22727, - 24382, - 26029, - 26262, - 27264, - 27573, - 30007, - 35527, - 20516, - 30693, - 22320, - 24347, - 24677, - 26234, - 27744, - 30196, - 31258, - 32622, - 33268, - 34584, - 36933, - 39347, - 31689, - 30044, - 31481, - 31569, - 33988, - 36880, - 31209, - 31378, - 33590, - 23265, - 30528, - 20013, - 20210, - 23449, - 24544, - 25277, - 26172, - 26609, - 27880, - 34411, - 34935, - 35387, - 37198, - 37619, - 39376, - 27159, - 28710, - 29482, - 33511, - 33879, - 36015, - 19969, - 20806, - 20939, - 21899, - 23541, - 24086, - 24115, - 24193, - 24340, - 24373, - 24427, - 24500, - 25074, - 25361, - 26274, - 26397, - 28526, - 29266, - 30010, - 30522, - 32884, - 33081, - 33144, - 34678, - 35519, - 35548, - 36229, - 36339, - 37530, - 38263, - 38914, - 40165, - 21189, - 25431, - 30452, - 26389, - 27784, - 29645, - 36035, - 37806, - 38515, - 27941, - 22684, - 26894, - 27084, - 36861, - 37786, - 30171, - 36890, - 22618, - 26626, - 25524, - 27131, - 20291, - 28460, - 26584, - 36795, - 34086, - 32180, - 37716, - 26943, - 28528, - 22378, - 22775, - 23340, - 32044, - 29226, - 21514, - 37347, - 40372, - 20141, - 20302, - 20572, - 20597, - 21059, - 35998, - 21576, - 22564, - 23450, - 24093, - 24213, - 24237, - 24311, - 24351, - 24716, - 25269, - 25402, - 25552, - 26799, - 27712, - 30855, - 31118, - 31243, - 32224, - 33351, - 35330, - 35558, - 36420, - 36883, - 37048, - 37165, - 37336, - 40718, - 27877, - 25688, - 25826, - 25973, - 28404, - 30340, - 31515, - 36969, - 37841, - 28346, - 21746, - 24505, - 25764, - 36685, - 36845, - 37444, - 20856, - 22635, - 22825, - 23637, - 24215, - 28155, - 32399, - 29980, - 36028, - 36578, - 39003, - 28857, - 20253, - 27583, - 28593, - 30000, - 38651, - 20814, - 21520, - 22581, - 22615, - 22956, - 23648, - 24466, - 26007, - 26460, - 28193, - 30331, - 33759, - 36077, - 36884, - 37117, - 37709, - 30757, - 30778, - 21162, - 24230, - 22303, - 22900, - 24594, - 20498, - 20826, - 20908, - 20941, - 20992, - 21776, - 22612, - 22616, - 22871, - 23445, - 23798, - 23947, - 24764, - 25237, - 25645, - 26481, - 26691, - 26812, - 26847, - 30423, - 28120, - 28271, - 28059, - 28783, - 29128, - 24403, - 30168, - 31095, - 31561, - 31572, - 31570, - 31958, - 32113, - 21040, - 33891, - 34153, - 34276, - 35342, - 35588, - 35910, - 36367, - 36867, - 36879, - 37913, - 38518, - 38957, - 39472, - 38360, - 20685, - 21205, - 21516, - 22530, - 23566, - 24999, - 25758, - 27934, - 30643, - 31461, - 33012, - 33796, - 36947, - 37509, - 23776, - 40199, - 21311, - 24471, - 24499, - 28060, - 29305, - 30563, - 31167, - 31716, - 27602, - 29420, - 35501, - 26627, - 27233, - 20984, - 31361, - 26932, - 23626, - 40182, - 33515, - 23493, - 37193, - 28702, - 22136, - 23663, - 24775, - 25958, - 27788, - 35930, - 36929, - 38931, - 21585, - 26311, - 37389, - 22856, - 37027, - 20869, - 20045, - 20970, - 34201, - 35598, - 28760, - 25466, - 37707, - 26978, - 39348, - 32260, - 30071, - 21335, - 26976, - 36575, - 38627, - 27741, - 20108, - 23612, - 24336, - 36841, - 21250, - 36049, - 32905, - 34425, - 24319, - 26085, - 20083, - 20837, - 22914, - 23615, - 38894, - 20219, - 22922, - 24525, - 35469, - 28641, - 31152, - 31074, - 23527, - 33905, - 29483, - 29105, - 24180, - 24565, - 25467, - 25754, - 29123, - 31896, - 20035, - 24316, - 20043, - 22492, - 22178, - 24745, - 28611, - 32013, - 33021, - 33075, - 33215, - 36786, - 35223, - 34468, - 24052, - 25226, - 25773, - 35207, - 26487, - 27874, - 27966, - 29750, - 30772, - 23110, - 32629, - 33453, - 39340, - 20467, - 24259, - 25309, - 25490, - 25943, - 26479, - 30403, - 29260, - 32972, - 32954, - 36649, - 37197, - 20493, - 22521, - 23186, - 26757, - 26995, - 29028, - 29437, - 36023, - 22770, - 36064, - 38506, - 36889, - 34687, - 31204, - 30695, - 33833, - 20271, - 21093, - 21338, - 25293, - 26575, - 27850, - 30333, - 31636, - 31893, - 33334, - 34180, - 36843, - 26333, - 28448, - 29190, - 32283, - 33707, - 39361, - 40614, - 20989, - 31665, - 30834, - 31672, - 32903, - 31560, - 27368, - 24161, - 32908, - 30033, - 30048, - 20843, - 37474, - 28300, - 30330, - 37271, - 39658, - 20240, - 32624, - 25244, - 31567, - 38309, - 40169, - 22138, - 22617, - 34532, - 38588, - 20276, - 21028, - 21322, - 21453, - 21467, - 24070, - 25644, - 26001, - 26495, - 27710, - 27726, - 29256, - 29359, - 29677, - 30036, - 32321, - 33324, - 34281, - 36009, - 31684, - 37318, - 29033, - 38930, - 39151, - 25405, - 26217, - 30058, - 30436, - 30928, - 34115, - 34542, - 21290, - 21329, - 21542, - 22915, - 24199, - 24444, - 24754, - 25161, - 25209, - 25259, - 26000, - 27604, - 27852, - 30130, - 30382, - 30865, - 31192, - 32203, - 32631, - 32933, - 34987, - 35513, - 36027, - 36991, - 38750, - 39131, - 27147, - 31800, - 20633, - 23614, - 24494, - 26503, - 27608, - 29749, - 30473, - 32654, - 40763, - 26570, - 31255, - 21305, - 30091, - 39661, - 24422, - 33181, - 33777, - 32920, - 24380, - 24517, - 30050, - 31558, - 36924, - 26727, - 23019, - 23195, - 32016, - 30334, - 35628, - 20469, - 24426, - 27161, - 27703, - 28418, - 29922, - 31080, - 34920, - 35413, - 35961, - 24287, - 25551, - 30149, - 31186, - 33495, - 37672, - 37618, - 33948, - 34541, - 39981, - 21697, - 24428, - 25996, - 27996, - 28693, - 36007, - 36051, - 38971, - 25935, - 29942, - 19981, - 20184, - 22496, - 22827, - 23142, - 23500, - 20904, - 24067, - 24220, - 24598, - 25206, - 25975, - 26023, - 26222, - 28014, - 29238, - 31526, - 33104, - 33178, - 33433, - 35676, - 36000, - 36070, - 36212, - 38428, - 38468, - 20398, - 25771, - 27494, - 33310, - 33889, - 34154, - 37096, - 23553, - 26963, - 39080, - 33914, - 34135, - 20239, - 21103, - 24489, - 24133, - 26381, - 31119, - 33145, - 35079, - 35206, - 28149, - 24343, - 25173, - 27832, - 20175, - 29289, - 39826, - 20998, - 21563, - 22132, - 22707, - 24996, - 25198, - 28954, - 22894, - 31881, - 31966, - 32027, - 38640, - 25991, - 32862, - 19993, - 20341, - 20853, - 22592, - 24163, - 24179, - 24330, - 26564, - 20006, - 34109, - 38281, - 38491, - 31859, - 38913, - 20731, - 22721, - 30294, - 30887, - 21029, - 30629, - 34065, - 31622, - 20559, - 22793, - 29255, - 31687, - 32232, - 36794, - 36820, - 36941, - 20415, - 21193, - 23081, - 24321, - 38829, - 20445, - 33303, - 37610, - 22275, - 25429, - 27497, - 29995, - 35036, - 36628, - 31298, - 21215, - 22675, - 24917, - 25098, - 26286, - 27597, - 31807, - 33769, - 20515, - 20472, - 21253, - 21574, - 22577, - 22857, - 23453, - 23792, - 23791, - 23849, - 24214, - 25265, - 25447, - 25918, - 26041, - 26379, - 27861, - 27873, - 28921, - 30770, - 32299, - 32990, - 33459, - 33804, - 34028, - 34562, - 35090, - 35370, - 35914, - 37030, - 37586, - 39165, - 40179, - 40300, - 20047, - 20129, - 20621, - 21078, - 22346, - 22952, - 24125, - 24536, - 24537, - 25151, - 26292, - 26395, - 26576, - 26834, - 20882, - 32033, - 32938, - 33192, - 35584, - 35980, - 36031, - 37502, - 38450, - 21536, - 38956, - 21271, - 20693, - 21340, - 22696, - 25778, - 26420, - 29287, - 30566, - 31302, - 37350, - 21187, - 27809, - 27526, - 22528, - 24140, - 22868, - 26412, - 32763, - 20961, - 30406, - 25705, - 30952, - 39764, - 40635, - 22475, - 22969, - 26151, - 26522, - 27598, - 21737, - 27097, - 24149, - 33180, - 26517, - 39850, - 26622, - 40018, - 26717, - 20134, - 20451, - 21448, - 25273, - 26411, - 27819, - 36804, - 20397, - 32365, - 40639, - 19975, - 24930, - 28288, - 28459, - 34067, - 21619, - 26410, - 39749, - 24051, - 31637, - 23724, - 23494, - 34588, - 28234, - 34001, - 31252, - 33032, - 22937, - 31885, - 27665, - 30496, - 21209, - 22818, - 28961, - 29279, - 30683, - 38695, - 40289, - 26891, - 23167, - 23064, - 20901, - 21517, - 21629, - 26126, - 30431, - 36855, - 37528, - 40180, - 23018, - 29277, - 28357, - 20813, - 26825, - 32191, - 32236, - 38754, - 40634, - 25720, - 27169, - 33538, - 22916, - 23391, - 27611, - 29467, - 30450, - 32178, - 32791, - 33945, - 20786, - 26408, - 40665, - 30446, - 26466, - 21247, - 39173, - 23588, - 25147, - 31870, - 36016, - 21839, - 24758, - 32011, - 38272, - 21249, - 20063, - 20918, - 22812, - 29242, - 32822, - 37326, - 24357, - 30690, - 21380, - 24441, - 32004, - 34220, - 35379, - 36493, - 38742, - 26611, - 34222, - 37971, - 24841, - 24840, - 27833, - 30290, - 35565, - 36664, - 21807, - 20305, - 20778, - 21191, - 21451, - 23461, - 24189, - 24736, - 24962, - 25558, - 26377, - 26586, - 28263, - 28044, - 29494, - 29495, - 30001, - 31056, - 35029, - 35480, - 36938, - 37009, - 37109, - 38596, - 34701, - 22805, - 20104, - 20313, - 19982, - 35465, - 36671, - 38928, - 20653, - 24188, - 22934, - 23481, - 24248, - 25562, - 25594, - 25793, - 26332, - 26954, - 27096, - 27915, - 28342, - 29076, - 29992, - 31407, - 32650, - 32768, - 33865, - 33993, - 35201, - 35617, - 36362, - 36965, - 38525, - 39178, - 24958, - 25233, - 27442, - 27779, - 28020, - 32716, - 32764, - 28096, - 32645, - 34746, - 35064, - 26469, - 33713, - 38972, - 38647, - 27931, - 32097, - 33853, - 37226, - 20081, - 21365, - 23888, - 27396, - 28651, - 34253, - 34349, - 35239, - 21033, - 21519, - 23653, - 26446, - 26792, - 29702, - 29827, - 30178, - 35023, - 35041, - 37324, - 38626, - 38520, - 24459, - 29575, - 31435, - 33870, - 25504, - 30053, - 21129, - 27969, - 28316, - 29705, - 30041, - 30827, - 31890, - 38534, - 31452, - 40845, - 20406, - 24942, - 26053, - 34396, - 20102, - 20142, - 20698, - 20001, - 20940, - 23534, - 26009, - 26753, - 28092, - 29471, - 30274, - 30637, - 31260, - 31975, - 33391, - 35538, - 36988, - 37327, - 38517, - 38936, - 21147, - 32209, - 20523, - 21400, - 26519, - 28107, - 29136, - 29747, - 33256, - 36650, - 38563, - 40023, - 40607, - 29792, - 22593, - 28057, - 32047, - 39006, - 20196, - 20278, - 20363, - 20919, - 21169, - 23994, - 24604, - 29618, - 31036, - 33491, - 37428, - 38583, - 38646, - 38666, - 40599, - 40802, - 26278, - 27508, - 21015, - 21155, - 28872, - 35010, - 24265, - 24651, - 24976, - 28451, - 29001, - 31806, - 32244, - 32879, - 34030, - 36899, - 37676, - 21570, - 39791, - 27347, - 28809, - 36034, - 36335, - 38706, - 21172, - 23105, - 24266, - 24324, - 26391, - 27004, - 27028, - 28010, - 28431, - 29282, - 29436, - 31725, - 32769, - 32894, - 34635, - 37070, - 20845, - 40595, - 31108, - 32907, - 37682, - 35542, - 20525, - 21644, - 35441, - 27498, - 36036, - 33031, - 24785, - 26528, - 40434, - 20121, - 20120, - 39952, - 35435, - 34241, - 34152, - 26880, - 28286, - 30871, - 33109, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 24332, - 19984, - 19989, - 20010, - 20017, - 20022, - 20028, - 20031, - 20034, - 20054, - 20056, - 20098, - 20101, - 35947, - 20106, - 33298, - 24333, - 20110, - 20126, - 20127, - 20128, - 20130, - 20144, - 20147, - 20150, - 20174, - 20173, - 20164, - 20166, - 20162, - 20183, - 20190, - 20205, - 20191, - 20215, - 20233, - 20314, - 20272, - 20315, - 20317, - 20311, - 20295, - 20342, - 20360, - 20367, - 20376, - 20347, - 20329, - 20336, - 20369, - 20335, - 20358, - 20374, - 20760, - 20436, - 20447, - 20430, - 20440, - 20443, - 20433, - 20442, - 20432, - 20452, - 20453, - 20506, - 20520, - 20500, - 20522, - 20517, - 20485, - 20252, - 20470, - 20513, - 20521, - 20524, - 20478, - 20463, - 20497, - 20486, - 20547, - 20551, - 26371, - 20565, - 20560, - 20552, - 20570, - 20566, - 20588, - 20600, - 20608, - 20634, - 20613, - 20660, - 20658, - 20681, - 20682, - 20659, - 20674, - 20694, - 20702, - 20709, - 20717, - 20707, - 20718, - 20729, - 20725, - 20745, - 20737, - 20738, - 20758, - 20757, - 20756, - 20762, - 20769, - 20794, - 20791, - 20796, - 20795, - 20799, - 20800, - 20818, - 20812, - 20820, - 20834, - 31480, - 20841, - 20842, - 20846, - 20864, - 20866, - 22232, - 20876, - 20873, - 20879, - 20881, - 20883, - 20885, - 20886, - 20900, - 20902, - 20898, - 20905, - 20906, - 20907, - 20915, - 20913, - 20914, - 20912, - 20917, - 20925, - 20933, - 20937, - 20955, - 20960, - 34389, - 20969, - 20973, - 20976, - 20981, - 20990, - 20996, - 21003, - 21012, - 21006, - 21031, - 21034, - 21038, - 21043, - 21049, - 21071, - 21060, - 21067, - 21068, - 21086, - 21076, - 21098, - 21108, - 21097, - 21107, - 21119, - 21117, - 21133, - 21140, - 21138, - 21105, - 21128, - 21137, - 36776, - 36775, - 21164, - 21165, - 21180, - 21173, - 21185, - 21197, - 21207, - 21214, - 21219, - 21222, - 39149, - 21216, - 21235, - 21237, - 21240, - 21241, - 21254, - 21256, - 30008, - 21261, - 21264, - 21263, - 21269, - 21274, - 21283, - 21295, - 21297, - 21299, - 21304, - 21312, - 21318, - 21317, - 19991, - 21321, - 21325, - 20950, - 21342, - 21353, - 21358, - 22808, - 21371, - 21367, - 21378, - 21398, - 21408, - 21414, - 21413, - 21422, - 21424, - 21430, - 21443, - 31762, - 38617, - 21471, - 26364, - 29166, - 21486, - 21480, - 21485, - 21498, - 21505, - 21565, - 21568, - 21548, - 21549, - 21564, - 21550, - 21558, - 21545, - 21533, - 21582, - 21647, - 21621, - 21646, - 21599, - 21617, - 21623, - 21616, - 21650, - 21627, - 21632, - 21622, - 21636, - 21648, - 21638, - 21703, - 21666, - 21688, - 21669, - 21676, - 21700, - 21704, - 21672, - 21675, - 21698, - 21668, - 21694, - 21692, - 21720, - 21733, - 21734, - 21775, - 21780, - 21757, - 21742, - 21741, - 21754, - 21730, - 21817, - 21824, - 21859, - 21836, - 21806, - 21852, - 21829, - 21846, - 21847, - 21816, - 21811, - 21853, - 21913, - 21888, - 21679, - 21898, - 21919, - 21883, - 21886, - 21912, - 21918, - 21934, - 21884, - 21891, - 21929, - 21895, - 21928, - 21978, - 21957, - 21983, - 21956, - 21980, - 21988, - 21972, - 22036, - 22007, - 22038, - 22014, - 22013, - 22043, - 22009, - 22094, - 22096, - 29151, - 22068, - 22070, - 22066, - 22072, - 22123, - 22116, - 22063, - 22124, - 22122, - 22150, - 22144, - 22154, - 22176, - 22164, - 22159, - 22181, - 22190, - 22198, - 22196, - 22210, - 22204, - 22209, - 22211, - 22208, - 22216, - 22222, - 22225, - 22227, - 22231, - 22254, - 22265, - 22272, - 22271, - 22276, - 22281, - 22280, - 22283, - 22285, - 22291, - 22296, - 22294, - 21959, - 22300, - 22310, - 22327, - 22328, - 22350, - 22331, - 22336, - 22351, - 22377, - 22464, - 22408, - 22369, - 22399, - 22409, - 22419, - 22432, - 22451, - 22436, - 22442, - 22448, - 22467, - 22470, - 22484, - 22482, - 22483, - 22538, - 22486, - 22499, - 22539, - 22553, - 22557, - 22642, - 22561, - 22626, - 22603, - 22640, - 27584, - 22610, - 22589, - 22649, - 22661, - 22713, - 22687, - 22699, - 22714, - 22750, - 22715, - 22712, - 22702, - 22725, - 22739, - 22737, - 22743, - 22745, - 22744, - 22757, - 22748, - 22756, - 22751, - 22767, - 22778, - 22777, - 22779, - 22780, - 22781, - 22786, - 22794, - 22800, - 22811, - 26790, - 22821, - 22828, - 22829, - 22834, - 22840, - 22846, - 31442, - 22869, - 22864, - 22862, - 22874, - 22872, - 22882, - 22880, - 22887, - 22892, - 22889, - 22904, - 22913, - 22941, - 20318, - 20395, - 22947, - 22962, - 22982, - 23016, - 23004, - 22925, - 23001, - 23002, - 23077, - 23071, - 23057, - 23068, - 23049, - 23066, - 23104, - 23148, - 23113, - 23093, - 23094, - 23138, - 23146, - 23194, - 23228, - 23230, - 23243, - 23234, - 23229, - 23267, - 23255, - 23270, - 23273, - 23254, - 23290, - 23291, - 23308, - 23307, - 23318, - 23346, - 23248, - 23338, - 23350, - 23358, - 23363, - 23365, - 23360, - 23377, - 23381, - 23386, - 23387, - 23397, - 23401, - 23408, - 23411, - 23413, - 23416, - 25992, - 23418, - 23424, - 23427, - 23462, - 23480, - 23491, - 23495, - 23497, - 23508, - 23504, - 23524, - 23526, - 23522, - 23518, - 23525, - 23531, - 23536, - 23542, - 23539, - 23557, - 23559, - 23560, - 23565, - 23571, - 23584, - 23586, - 23592, - 23608, - 23609, - 23617, - 23622, - 23630, - 23635, - 23632, - 23631, - 23409, - 23660, - 23662, - 20066, - 23670, - 23673, - 23692, - 23697, - 23700, - 22939, - 23723, - 23739, - 23734, - 23740, - 23735, - 23749, - 23742, - 23751, - 23769, - 23785, - 23805, - 23802, - 23789, - 23948, - 23786, - 23819, - 23829, - 23831, - 23900, - 23839, - 23835, - 23825, - 23828, - 23842, - 23834, - 23833, - 23832, - 23884, - 23890, - 23886, - 23883, - 23916, - 23923, - 23926, - 23943, - 23940, - 23938, - 23970, - 23965, - 23980, - 23982, - 23997, - 23952, - 23991, - 23996, - 24009, - 24013, - 24019, - 24018, - 24022, - 24027, - 24043, - 24050, - 24053, - 24075, - 24090, - 24089, - 24081, - 24091, - 24118, - 24119, - 24132, - 24131, - 24128, - 24142, - 24151, - 24148, - 24159, - 24162, - 24164, - 24135, - 24181, - 24182, - 24186, - 40636, - 24191, - 24224, - 24257, - 24258, - 24264, - 24272, - 24271, - 24278, - 24291, - 24285, - 24282, - 24283, - 24290, - 24289, - 24296, - 24297, - 24300, - 24305, - 24307, - 24304, - 24308, - 24312, - 24318, - 24323, - 24329, - 24413, - 24412, - 24331, - 24337, - 24342, - 24361, - 24365, - 24376, - 24385, - 24392, - 24396, - 24398, - 24367, - 24401, - 24406, - 24407, - 24409, - 24417, - 24429, - 24435, - 24439, - 24451, - 24450, - 24447, - 24458, - 24456, - 24465, - 24455, - 24478, - 24473, - 24472, - 24480, - 24488, - 24493, - 24508, - 24534, - 24571, - 24548, - 24568, - 24561, - 24541, - 24755, - 24575, - 24609, - 24672, - 24601, - 24592, - 24617, - 24590, - 24625, - 24603, - 24597, - 24619, - 24614, - 24591, - 24634, - 24666, - 24641, - 24682, - 24695, - 24671, - 24650, - 24646, - 24653, - 24675, - 24643, - 24676, - 24642, - 24684, - 24683, - 24665, - 24705, - 24717, - 24807, - 24707, - 24730, - 24708, - 24731, - 24726, - 24727, - 24722, - 24743, - 24715, - 24801, - 24760, - 24800, - 24787, - 24756, - 24560, - 24765, - 24774, - 24757, - 24792, - 24909, - 24853, - 24838, - 24822, - 24823, - 24832, - 24820, - 24826, - 24835, - 24865, - 24827, - 24817, - 24845, - 24846, - 24903, - 24894, - 24872, - 24871, - 24906, - 24895, - 24892, - 24876, - 24884, - 24893, - 24898, - 24900, - 24947, - 24951, - 24920, - 24921, - 24922, - 24939, - 24948, - 24943, - 24933, - 24945, - 24927, - 24925, - 24915, - 24949, - 24985, - 24982, - 24967, - 25004, - 24980, - 24986, - 24970, - 24977, - 25003, - 25006, - 25036, - 25034, - 25033, - 25079, - 25032, - 25027, - 25030, - 25018, - 25035, - 32633, - 25037, - 25062, - 25059, - 25078, - 25082, - 25076, - 25087, - 25085, - 25084, - 25086, - 25088, - 25096, - 25097, - 25101, - 25100, - 25108, - 25115, - 25118, - 25121, - 25130, - 25134, - 25136, - 25138, - 25139, - 25153, - 25166, - 25182, - 25187, - 25179, - 25184, - 25192, - 25212, - 25218, - 25225, - 25214, - 25234, - 25235, - 25238, - 25300, - 25219, - 25236, - 25303, - 25297, - 25275, - 25295, - 25343, - 25286, - 25812, - 25288, - 25308, - 25292, - 25290, - 25282, - 25287, - 25243, - 25289, - 25356, - 25326, - 25329, - 25383, - 25346, - 25352, - 25327, - 25333, - 25424, - 25406, - 25421, - 25628, - 25423, - 25494, - 25486, - 25472, - 25515, - 25462, - 25507, - 25487, - 25481, - 25503, - 25525, - 25451, - 25449, - 25534, - 25577, - 25536, - 25542, - 25571, - 25545, - 25554, - 25590, - 25540, - 25622, - 25652, - 25606, - 25619, - 25638, - 25654, - 25885, - 25623, - 25640, - 25615, - 25703, - 25711, - 25718, - 25678, - 25898, - 25749, - 25747, - 25765, - 25769, - 25736, - 25788, - 25818, - 25810, - 25797, - 25799, - 25787, - 25816, - 25794, - 25841, - 25831, - 33289, - 25824, - 25825, - 25260, - 25827, - 25839, - 25900, - 25846, - 25844, - 25842, - 25850, - 25856, - 25853, - 25880, - 25884, - 25861, - 25892, - 25891, - 25899, - 25908, - 25909, - 25911, - 25910, - 25912, - 30027, - 25928, - 25942, - 25941, - 25933, - 25944, - 25950, - 25949, - 25970, - 25976, - 25986, - 25987, - 35722, - 26011, - 26015, - 26027, - 26039, - 26051, - 26054, - 26049, - 26052, - 26060, - 26066, - 26075, - 26073, - 26080, - 26081, - 26097, - 26482, - 26122, - 26115, - 26107, - 26483, - 26165, - 26166, - 26164, - 26140, - 26191, - 26180, - 26185, - 26177, - 26206, - 26205, - 26212, - 26215, - 26216, - 26207, - 26210, - 26224, - 26243, - 26248, - 26254, - 26249, - 26244, - 26264, - 26269, - 26305, - 26297, - 26313, - 26302, - 26300, - 26308, - 26296, - 26326, - 26330, - 26336, - 26175, - 26342, - 26345, - 26352, - 26357, - 26359, - 26383, - 26390, - 26398, - 26406, - 26407, - 38712, - 26414, - 26431, - 26422, - 26433, - 26424, - 26423, - 26438, - 26462, - 26464, - 26457, - 26467, - 26468, - 26505, - 26480, - 26537, - 26492, - 26474, - 26508, - 26507, - 26534, - 26529, - 26501, - 26551, - 26607, - 26548, - 26604, - 26547, - 26601, - 26552, - 26596, - 26590, - 26589, - 26594, - 26606, - 26553, - 26574, - 26566, - 26599, - 27292, - 26654, - 26694, - 26665, - 26688, - 26701, - 26674, - 26702, - 26803, - 26667, - 26713, - 26723, - 26743, - 26751, - 26783, - 26767, - 26797, - 26772, - 26781, - 26779, - 26755, - 27310, - 26809, - 26740, - 26805, - 26784, - 26810, - 26895, - 26765, - 26750, - 26881, - 26826, - 26888, - 26840, - 26914, - 26918, - 26849, - 26892, - 26829, - 26836, - 26855, - 26837, - 26934, - 26898, - 26884, - 26839, - 26851, - 26917, - 26873, - 26848, - 26863, - 26920, - 26922, - 26906, - 26915, - 26913, - 26822, - 27001, - 26999, - 26972, - 27000, - 26987, - 26964, - 27006, - 26990, - 26937, - 26996, - 26941, - 26969, - 26928, - 26977, - 26974, - 26973, - 27009, - 26986, - 27058, - 27054, - 27088, - 27071, - 27073, - 27091, - 27070, - 27086, - 23528, - 27082, - 27101, - 27067, - 27075, - 27047, - 27182, - 27025, - 27040, - 27036, - 27029, - 27060, - 27102, - 27112, - 27138, - 27163, - 27135, - 27402, - 27129, - 27122, - 27111, - 27141, - 27057, - 27166, - 27117, - 27156, - 27115, - 27146, - 27154, - 27329, - 27171, - 27155, - 27204, - 27148, - 27250, - 27190, - 27256, - 27207, - 27234, - 27225, - 27238, - 27208, - 27192, - 27170, - 27280, - 27277, - 27296, - 27268, - 27298, - 27299, - 27287, - 34327, - 27323, - 27331, - 27330, - 27320, - 27315, - 27308, - 27358, - 27345, - 27359, - 27306, - 27354, - 27370, - 27387, - 27397, - 34326, - 27386, - 27410, - 27414, - 39729, - 27423, - 27448, - 27447, - 30428, - 27449, - 39150, - 27463, - 27459, - 27465, - 27472, - 27481, - 27476, - 27483, - 27487, - 27489, - 27512, - 27513, - 27519, - 27520, - 27524, - 27523, - 27533, - 27544, - 27541, - 27550, - 27556, - 27562, - 27563, - 27567, - 27570, - 27569, - 27571, - 27575, - 27580, - 27590, - 27595, - 27603, - 27615, - 27628, - 27627, - 27635, - 27631, - 40638, - 27656, - 27667, - 27668, - 27675, - 27684, - 27683, - 27742, - 27733, - 27746, - 27754, - 27778, - 27789, - 27802, - 27777, - 27803, - 27774, - 27752, - 27763, - 27794, - 27792, - 27844, - 27889, - 27859, - 27837, - 27863, - 27845, - 27869, - 27822, - 27825, - 27838, - 27834, - 27867, - 27887, - 27865, - 27882, - 27935, - 34893, - 27958, - 27947, - 27965, - 27960, - 27929, - 27957, - 27955, - 27922, - 27916, - 28003, - 28051, - 28004, - 27994, - 28025, - 27993, - 28046, - 28053, - 28644, - 28037, - 28153, - 28181, - 28170, - 28085, - 28103, - 28134, - 28088, - 28102, - 28140, - 28126, - 28108, - 28136, - 28114, - 28101, - 28154, - 28121, - 28132, - 28117, - 28138, - 28142, - 28205, - 28270, - 28206, - 28185, - 28274, - 28255, - 28222, - 28195, - 28267, - 28203, - 28278, - 28237, - 28191, - 28227, - 28218, - 28238, - 28196, - 28415, - 28189, - 28216, - 28290, - 28330, - 28312, - 28361, - 28343, - 28371, - 28349, - 28335, - 28356, - 28338, - 28372, - 28373, - 28303, - 28325, - 28354, - 28319, - 28481, - 28433, - 28748, - 28396, - 28408, - 28414, - 28479, - 28402, - 28465, - 28399, - 28466, - 28364, - 28478, - 28435, - 28407, - 28550, - 28538, - 28536, - 28545, - 28544, - 28527, - 28507, - 28659, - 28525, - 28546, - 28540, - 28504, - 28558, - 28561, - 28610, - 28518, - 28595, - 28579, - 28577, - 28580, - 28601, - 28614, - 28586, - 28639, - 28629, - 28652, - 28628, - 28632, - 28657, - 28654, - 28635, - 28681, - 28683, - 28666, - 28689, - 28673, - 28687, - 28670, - 28699, - 28698, - 28532, - 28701, - 28696, - 28703, - 28720, - 28734, - 28722, - 28753, - 28771, - 28825, - 28818, - 28847, - 28913, - 28844, - 28856, - 28851, - 28846, - 28895, - 28875, - 28893, - 28889, - 28937, - 28925, - 28956, - 28953, - 29029, - 29013, - 29064, - 29030, - 29026, - 29004, - 29014, - 29036, - 29071, - 29179, - 29060, - 29077, - 29096, - 29100, - 29143, - 29113, - 29118, - 29138, - 29129, - 29140, - 29134, - 29152, - 29164, - 29159, - 29173, - 29180, - 29177, - 29183, - 29197, - 29200, - 29211, - 29224, - 29229, - 29228, - 29232, - 29234, - 29243, - 29244, - 29247, - 29248, - 29254, - 29259, - 29272, - 29300, - 29310, - 29314, - 29313, - 29319, - 29330, - 29334, - 29346, - 29351, - 29369, - 29362, - 29379, - 29382, - 29380, - 29390, - 29394, - 29410, - 29408, - 29409, - 29433, - 29431, - 20495, - 29463, - 29450, - 29468, - 29462, - 29469, - 29492, - 29487, - 29481, - 29477, - 29502, - 29518, - 29519, - 40664, - 29527, - 29546, - 29544, - 29552, - 29560, - 29557, - 29563, - 29562, - 29640, - 29619, - 29646, - 29627, - 29632, - 29669, - 29678, - 29662, - 29858, - 29701, - 29807, - 29733, - 29688, - 29746, - 29754, - 29781, - 29759, - 29791, - 29785, - 29761, - 29788, - 29801, - 29808, - 29795, - 29802, - 29814, - 29822, - 29835, - 29854, - 29863, - 29898, - 29903, - 29908, - 29681, - 29920, - 29923, - 29927, - 29929, - 29934, - 29938, - 29936, - 29937, - 29944, - 29943, - 29956, - 29955, - 29957, - 29964, - 29966, - 29965, - 29973, - 29971, - 29982, - 29990, - 29996, - 30012, - 30020, - 30029, - 30026, - 30025, - 30043, - 30022, - 30042, - 30057, - 30052, - 30055, - 30059, - 30061, - 30072, - 30070, - 30086, - 30087, - 30068, - 30090, - 30089, - 30082, - 30100, - 30106, - 30109, - 30117, - 30115, - 30146, - 30131, - 30147, - 30133, - 30141, - 30136, - 30140, - 30129, - 30157, - 30154, - 30162, - 30169, - 30179, - 30174, - 30206, - 30207, - 30204, - 30209, - 30192, - 30202, - 30194, - 30195, - 30219, - 30221, - 30217, - 30239, - 30247, - 30240, - 30241, - 30242, - 30244, - 30260, - 30256, - 30267, - 30279, - 30280, - 30278, - 30300, - 30296, - 30305, - 30306, - 30312, - 30313, - 30314, - 30311, - 30316, - 30320, - 30322, - 30326, - 30328, - 30332, - 30336, - 30339, - 30344, - 30347, - 30350, - 30358, - 30355, - 30361, - 30362, - 30384, - 30388, - 30392, - 30393, - 30394, - 30402, - 30413, - 30422, - 30418, - 30430, - 30433, - 30437, - 30439, - 30442, - 34351, - 30459, - 30472, - 30471, - 30468, - 30505, - 30500, - 30494, - 30501, - 30502, - 30491, - 30519, - 30520, - 30535, - 30554, - 30568, - 30571, - 30555, - 30565, - 30591, - 30590, - 30585, - 30606, - 30603, - 30609, - 30624, - 30622, - 30640, - 30646, - 30649, - 30655, - 30652, - 30653, - 30651, - 30663, - 30669, - 30679, - 30682, - 30684, - 30691, - 30702, - 30716, - 30732, - 30738, - 31014, - 30752, - 31018, - 30789, - 30862, - 30836, - 30854, - 30844, - 30874, - 30860, - 30883, - 30901, - 30890, - 30895, - 30929, - 30918, - 30923, - 30932, - 30910, - 30908, - 30917, - 30922, - 30956, - 30951, - 30938, - 30973, - 30964, - 30983, - 30994, - 30993, - 31001, - 31020, - 31019, - 31040, - 31072, - 31063, - 31071, - 31066, - 31061, - 31059, - 31098, - 31103, - 31114, - 31133, - 31143, - 40779, - 31146, - 31150, - 31155, - 31161, - 31162, - 31177, - 31189, - 31207, - 31212, - 31201, - 31203, - 31240, - 31245, - 31256, - 31257, - 31264, - 31263, - 31104, - 31281, - 31291, - 31294, - 31287, - 31299, - 31319, - 31305, - 31329, - 31330, - 31337, - 40861, - 31344, - 31353, - 31357, - 31368, - 31383, - 31381, - 31384, - 31382, - 31401, - 31432, - 31408, - 31414, - 31429, - 31428, - 31423, - 36995, - 31431, - 31434, - 31437, - 31439, - 31445, - 31443, - 31449, - 31450, - 31453, - 31457, - 31458, - 31462, - 31469, - 31472, - 31490, - 31503, - 31498, - 31494, - 31539, - 31512, - 31513, - 31518, - 31541, - 31528, - 31542, - 31568, - 31610, - 31492, - 31565, - 31499, - 31564, - 31557, - 31605, - 31589, - 31604, - 31591, - 31600, - 31601, - 31596, - 31598, - 31645, - 31640, - 31647, - 31629, - 31644, - 31642, - 31627, - 31634, - 31631, - 31581, - 31641, - 31691, - 31681, - 31692, - 31695, - 31668, - 31686, - 31709, - 31721, - 31761, - 31764, - 31718, - 31717, - 31840, - 31744, - 31751, - 31763, - 31731, - 31735, - 31767, - 31757, - 31734, - 31779, - 31783, - 31786, - 31775, - 31799, - 31787, - 31805, - 31820, - 31811, - 31828, - 31823, - 31808, - 31824, - 31832, - 31839, - 31844, - 31830, - 31845, - 31852, - 31861, - 31875, - 31888, - 31908, - 31917, - 31906, - 31915, - 31905, - 31912, - 31923, - 31922, - 31921, - 31918, - 31929, - 31933, - 31936, - 31941, - 31938, - 31960, - 31954, - 31964, - 31970, - 39739, - 31983, - 31986, - 31988, - 31990, - 31994, - 32006, - 32002, - 32028, - 32021, - 32010, - 32069, - 32075, - 32046, - 32050, - 32063, - 32053, - 32070, - 32115, - 32086, - 32078, - 32114, - 32104, - 32110, - 32079, - 32099, - 32147, - 32137, - 32091, - 32143, - 32125, - 32155, - 32186, - 32174, - 32163, - 32181, - 32199, - 32189, - 32171, - 32317, - 32162, - 32175, - 32220, - 32184, - 32159, - 32176, - 32216, - 32221, - 32228, - 32222, - 32251, - 32242, - 32225, - 32261, - 32266, - 32291, - 32289, - 32274, - 32305, - 32287, - 32265, - 32267, - 32290, - 32326, - 32358, - 32315, - 32309, - 32313, - 32323, - 32311, - 32306, - 32314, - 32359, - 32349, - 32342, - 32350, - 32345, - 32346, - 32377, - 32362, - 32361, - 32380, - 32379, - 32387, - 32213, - 32381, - 36782, - 32383, - 32392, - 32393, - 32396, - 32402, - 32400, - 32403, - 32404, - 32406, - 32398, - 32411, - 32412, - 32568, - 32570, - 32581, - 32588, - 32589, - 32590, - 32592, - 32593, - 32597, - 32596, - 32600, - 32607, - 32608, - 32616, - 32617, - 32615, - 32632, - 32642, - 32646, - 32643, - 32648, - 32647, - 32652, - 32660, - 32670, - 32669, - 32666, - 32675, - 32687, - 32690, - 32697, - 32686, - 32694, - 32696, - 35697, - 32709, - 32710, - 32714, - 32725, - 32724, - 32737, - 32742, - 32745, - 32755, - 32761, - 39132, - 32774, - 32772, - 32779, - 32786, - 32792, - 32793, - 32796, - 32801, - 32808, - 32831, - 32827, - 32842, - 32838, - 32850, - 32856, - 32858, - 32863, - 32866, - 32872, - 32883, - 32882, - 32880, - 32886, - 32889, - 32893, - 32895, - 32900, - 32902, - 32901, - 32923, - 32915, - 32922, - 32941, - 20880, - 32940, - 32987, - 32997, - 32985, - 32989, - 32964, - 32986, - 32982, - 33033, - 33007, - 33009, - 33051, - 33065, - 33059, - 33071, - 33099, - 38539, - 33094, - 33086, - 33107, - 33105, - 33020, - 33137, - 33134, - 33125, - 33126, - 33140, - 33155, - 33160, - 33162, - 33152, - 33154, - 33184, - 33173, - 33188, - 33187, - 33119, - 33171, - 33193, - 33200, - 33205, - 33214, - 33208, - 33213, - 33216, - 33218, - 33210, - 33225, - 33229, - 33233, - 33241, - 33240, - 33224, - 33242, - 33247, - 33248, - 33255, - 33274, - 33275, - 33278, - 33281, - 33282, - 33285, - 33287, - 33290, - 33293, - 33296, - 33302, - 33321, - 33323, - 33336, - 33331, - 33344, - 33369, - 33368, - 33373, - 33370, - 33375, - 33380, - 33378, - 33384, - 33386, - 33387, - 33326, - 33393, - 33399, - 33400, - 33406, - 33421, - 33426, - 33451, - 33439, - 33467, - 33452, - 33505, - 33507, - 33503, - 33490, - 33524, - 33523, - 33530, - 33683, - 33539, - 33531, - 33529, - 33502, - 33542, - 33500, - 33545, - 33497, - 33589, - 33588, - 33558, - 33586, - 33585, - 33600, - 33593, - 33616, - 33605, - 33583, - 33579, - 33559, - 33560, - 33669, - 33690, - 33706, - 33695, - 33698, - 33686, - 33571, - 33678, - 33671, - 33674, - 33660, - 33717, - 33651, - 33653, - 33696, - 33673, - 33704, - 33780, - 33811, - 33771, - 33742, - 33789, - 33795, - 33752, - 33803, - 33729, - 33783, - 33799, - 33760, - 33778, - 33805, - 33826, - 33824, - 33725, - 33848, - 34054, - 33787, - 33901, - 33834, - 33852, - 34138, - 33924, - 33911, - 33899, - 33965, - 33902, - 33922, - 33897, - 33862, - 33836, - 33903, - 33913, - 33845, - 33994, - 33890, - 33977, - 33983, - 33951, - 34009, - 33997, - 33979, - 34010, - 34000, - 33985, - 33990, - 34006, - 33953, - 34081, - 34047, - 34036, - 34071, - 34072, - 34092, - 34079, - 34069, - 34068, - 34044, - 34112, - 34147, - 34136, - 34120, - 34113, - 34306, - 34123, - 34133, - 34176, - 34212, - 34184, - 34193, - 34186, - 34216, - 34157, - 34196, - 34203, - 34282, - 34183, - 34204, - 34167, - 34174, - 34192, - 34249, - 34234, - 34255, - 34233, - 34256, - 34261, - 34269, - 34277, - 34268, - 34297, - 34314, - 34323, - 34315, - 34302, - 34298, - 34310, - 34338, - 34330, - 34352, - 34367, - 34381, - 20053, - 34388, - 34399, - 34407, - 34417, - 34451, - 34467, - 34473, - 34474, - 34443, - 34444, - 34486, - 34479, - 34500, - 34502, - 34480, - 34505, - 34851, - 34475, - 34516, - 34526, - 34537, - 34540, - 34527, - 34523, - 34543, - 34578, - 34566, - 34568, - 34560, - 34563, - 34555, - 34577, - 34569, - 34573, - 34553, - 34570, - 34612, - 34623, - 34615, - 34619, - 34597, - 34601, - 34586, - 34656, - 34655, - 34680, - 34636, - 34638, - 34676, - 34647, - 34664, - 34670, - 34649, - 34643, - 34659, - 34666, - 34821, - 34722, - 34719, - 34690, - 34735, - 34763, - 34749, - 34752, - 34768, - 38614, - 34731, - 34756, - 34739, - 34759, - 34758, - 34747, - 34799, - 34802, - 34784, - 34831, - 34829, - 34814, - 34806, - 34807, - 34830, - 34770, - 34833, - 34838, - 34837, - 34850, - 34849, - 34865, - 34870, - 34873, - 34855, - 34875, - 34884, - 34882, - 34898, - 34905, - 34910, - 34914, - 34923, - 34945, - 34942, - 34974, - 34933, - 34941, - 34997, - 34930, - 34946, - 34967, - 34962, - 34990, - 34969, - 34978, - 34957, - 34980, - 34992, - 35007, - 34993, - 35011, - 35012, - 35028, - 35032, - 35033, - 35037, - 35065, - 35074, - 35068, - 35060, - 35048, - 35058, - 35076, - 35084, - 35082, - 35091, - 35139, - 35102, - 35109, - 35114, - 35115, - 35137, - 35140, - 35131, - 35126, - 35128, - 35148, - 35101, - 35168, - 35166, - 35174, - 35172, - 35181, - 35178, - 35183, - 35188, - 35191, - 35198, - 35203, - 35208, - 35210, - 35219, - 35224, - 35233, - 35241, - 35238, - 35244, - 35247, - 35250, - 35258, - 35261, - 35263, - 35264, - 35290, - 35292, - 35293, - 35303, - 35316, - 35320, - 35331, - 35350, - 35344, - 35340, - 35355, - 35357, - 35365, - 35382, - 35393, - 35419, - 35410, - 35398, - 35400, - 35452, - 35437, - 35436, - 35426, - 35461, - 35458, - 35460, - 35496, - 35489, - 35473, - 35493, - 35494, - 35482, - 35491, - 35524, - 35533, - 35522, - 35546, - 35563, - 35571, - 35559, - 35556, - 35569, - 35604, - 35552, - 35554, - 35575, - 35550, - 35547, - 35596, - 35591, - 35610, - 35553, - 35606, - 35600, - 35607, - 35616, - 35635, - 38827, - 35622, - 35627, - 35646, - 35624, - 35649, - 35660, - 35663, - 35662, - 35657, - 35670, - 35675, - 35674, - 35691, - 35679, - 35692, - 35695, - 35700, - 35709, - 35712, - 35724, - 35726, - 35730, - 35731, - 35734, - 35737, - 35738, - 35898, - 35905, - 35903, - 35912, - 35916, - 35918, - 35920, - 35925, - 35938, - 35948, - 35960, - 35962, - 35970, - 35977, - 35973, - 35978, - 35981, - 35982, - 35988, - 35964, - 35992, - 25117, - 36013, - 36010, - 36029, - 36018, - 36019, - 36014, - 36022, - 36040, - 36033, - 36068, - 36067, - 36058, - 36093, - 36090, - 36091, - 36100, - 36101, - 36106, - 36103, - 36111, - 36109, - 36112, - 40782, - 36115, - 36045, - 36116, - 36118, - 36199, - 36205, - 36209, - 36211, - 36225, - 36249, - 36290, - 36286, - 36282, - 36303, - 36314, - 36310, - 36300, - 36315, - 36299, - 36330, - 36331, - 36319, - 36323, - 36348, - 36360, - 36361, - 36351, - 36381, - 36382, - 36368, - 36383, - 36418, - 36405, - 36400, - 36404, - 36426, - 36423, - 36425, - 36428, - 36432, - 36424, - 36441, - 36452, - 36448, - 36394, - 36451, - 36437, - 36470, - 36466, - 36476, - 36481, - 36487, - 36485, - 36484, - 36491, - 36490, - 36499, - 36497, - 36500, - 36505, - 36522, - 36513, - 36524, - 36528, - 36550, - 36529, - 36542, - 36549, - 36552, - 36555, - 36571, - 36579, - 36604, - 36603, - 36587, - 36606, - 36618, - 36613, - 36629, - 36626, - 36633, - 36627, - 36636, - 36639, - 36635, - 36620, - 36646, - 36659, - 36667, - 36665, - 36677, - 36674, - 36670, - 36684, - 36681, - 36678, - 36686, - 36695, - 36700, - 36706, - 36707, - 36708, - 36764, - 36767, - 36771, - 36781, - 36783, - 36791, - 36826, - 36837, - 36834, - 36842, - 36847, - 36999, - 36852, - 36869, - 36857, - 36858, - 36881, - 36885, - 36897, - 36877, - 36894, - 36886, - 36875, - 36903, - 36918, - 36917, - 36921, - 36856, - 36943, - 36944, - 36945, - 36946, - 36878, - 36937, - 36926, - 36950, - 36952, - 36958, - 36968, - 36975, - 36982, - 38568, - 36978, - 36994, - 36989, - 36993, - 36992, - 37002, - 37001, - 37007, - 37032, - 37039, - 37041, - 37045, - 37090, - 37092, - 25160, - 37083, - 37122, - 37138, - 37145, - 37170, - 37168, - 37194, - 37206, - 37208, - 37219, - 37221, - 37225, - 37235, - 37234, - 37259, - 37257, - 37250, - 37282, - 37291, - 37295, - 37290, - 37301, - 37300, - 37306, - 37312, - 37313, - 37321, - 37323, - 37328, - 37334, - 37343, - 37345, - 37339, - 37372, - 37365, - 37366, - 37406, - 37375, - 37396, - 37420, - 37397, - 37393, - 37470, - 37463, - 37445, - 37449, - 37476, - 37448, - 37525, - 37439, - 37451, - 37456, - 37532, - 37526, - 37523, - 37531, - 37466, - 37583, - 37561, - 37559, - 37609, - 37647, - 37626, - 37700, - 37678, - 37657, - 37666, - 37658, - 37667, - 37690, - 37685, - 37691, - 37724, - 37728, - 37756, - 37742, - 37718, - 37808, - 37804, - 37805, - 37780, - 37817, - 37846, - 37847, - 37864, - 37861, - 37848, - 37827, - 37853, - 37840, - 37832, - 37860, - 37914, - 37908, - 37907, - 37891, - 37895, - 37904, - 37942, - 37931, - 37941, - 37921, - 37946, - 37953, - 37970, - 37956, - 37979, - 37984, - 37986, - 37982, - 37994, - 37417, - 38000, - 38005, - 38007, - 38013, - 37978, - 38012, - 38014, - 38017, - 38015, - 38274, - 38279, - 38282, - 38292, - 38294, - 38296, - 38297, - 38304, - 38312, - 38311, - 38317, - 38332, - 38331, - 38329, - 38334, - 38346, - 28662, - 38339, - 38349, - 38348, - 38357, - 38356, - 38358, - 38364, - 38369, - 38373, - 38370, - 38433, - 38440, - 38446, - 38447, - 38466, - 38476, - 38479, - 38475, - 38519, - 38492, - 38494, - 38493, - 38495, - 38502, - 38514, - 38508, - 38541, - 38552, - 38549, - 38551, - 38570, - 38567, - 38577, - 38578, - 38576, - 38580, - 38582, - 38584, - 38585, - 38606, - 38603, - 38601, - 38605, - 35149, - 38620, - 38669, - 38613, - 38649, - 38660, - 38662, - 38664, - 38675, - 38670, - 38673, - 38671, - 38678, - 38681, - 38692, - 38698, - 38704, - 38713, - 38717, - 38718, - 38724, - 38726, - 38728, - 38722, - 38729, - 38748, - 38752, - 38756, - 38758, - 38760, - 21202, - 38763, - 38769, - 38777, - 38789, - 38780, - 38785, - 38778, - 38790, - 38795, - 38799, - 38800, - 38812, - 38824, - 38822, - 38819, - 38835, - 38836, - 38851, - 38854, - 38856, - 38859, - 38876, - 38893, - 40783, - 38898, - 31455, - 38902, - 38901, - 38927, - 38924, - 38968, - 38948, - 38945, - 38967, - 38973, - 38982, - 38991, - 38987, - 39019, - 39023, - 39024, - 39025, - 39028, - 39027, - 39082, - 39087, - 39089, - 39094, - 39108, - 39107, - 39110, - 39145, - 39147, - 39171, - 39177, - 39186, - 39188, - 39192, - 39201, - 39197, - 39198, - 39204, - 39200, - 39212, - 39214, - 39229, - 39230, - 39234, - 39241, - 39237, - 39248, - 39243, - 39249, - 39250, - 39244, - 39253, - 39319, - 39320, - 39333, - 39341, - 39342, - 39356, - 39391, - 39387, - 39389, - 39384, - 39377, - 39405, - 39406, - 39409, - 39410, - 39419, - 39416, - 39425, - 39439, - 39429, - 39394, - 39449, - 39467, - 39479, - 39493, - 39490, - 39488, - 39491, - 39486, - 39509, - 39501, - 39515, - 39511, - 39519, - 39522, - 39525, - 39524, - 39529, - 39531, - 39530, - 39597, - 39600, - 39612, - 39616, - 39631, - 39633, - 39635, - 39636, - 39646, - 39647, - 39650, - 39651, - 39654, - 39663, - 39659, - 39662, - 39668, - 39665, - 39671, - 39675, - 39686, - 39704, - 39706, - 39711, - 39714, - 39715, - 39717, - 39719, - 39720, - 39721, - 39722, - 39726, - 39727, - 39730, - 39748, - 39747, - 39759, - 39757, - 39758, - 39761, - 39768, - 39796, - 39827, - 39811, - 39825, - 39830, - 39831, - 39839, - 39840, - 39848, - 39860, - 39872, - 39882, - 39865, - 39878, - 39887, - 39889, - 39890, - 39907, - 39906, - 39908, - 39892, - 39905, - 39994, - 39922, - 39921, - 39920, - 39957, - 39956, - 39945, - 39955, - 39948, - 39942, - 39944, - 39954, - 39946, - 39940, - 39982, - 39963, - 39973, - 39972, - 39969, - 39984, - 40007, - 39986, - 40006, - 39998, - 40026, - 40032, - 40039, - 40054, - 40056, - 40167, - 40172, - 40176, - 40201, - 40200, - 40171, - 40195, - 40198, - 40234, - 40230, - 40367, - 40227, - 40223, - 40260, - 40213, - 40210, - 40257, - 40255, - 40254, - 40262, - 40264, - 40285, - 40286, - 40292, - 40273, - 40272, - 40281, - 40306, - 40329, - 40327, - 40363, - 40303, - 40314, - 40346, - 40356, - 40361, - 40370, - 40388, - 40385, - 40379, - 40376, - 40378, - 40390, - 40399, - 40386, - 40409, - 40403, - 40440, - 40422, - 40429, - 40431, - 40445, - 40474, - 40475, - 40478, - 40565, - 40569, - 40573, - 40577, - 40584, - 40587, - 40588, - 40594, - 40597, - 40593, - 40605, - 40613, - 40617, - 40632, - 40618, - 40621, - 38753, - 40652, - 40654, - 40655, - 40656, - 40660, - 40668, - 40670, - 40669, - 40672, - 40677, - 40680, - 40687, - 40692, - 40694, - 40695, - 40697, - 40699, - 40700, - 40701, - 40711, - 40712, - 30391, - 40725, - 40737, - 40748, - 40766, - 40778, - 40786, - 40788, - 40803, - 40799, - 40800, - 40801, - 40806, - 40807, - 40812, - 40810, - 40823, - 40818, - 40822, - 40853, - 40860, - 40864, - 22575, - 27079, - 36953, - 29796, - 20956, - 29081, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 32394, - 35100, - 37704, - 37512, - 34012, - 20425, - 28859, - 26161, - 26824, - 37625, - 26363, - 24389, - 20008, - 20193, - 20220, - 20224, - 20227, - 20281, - 20310, - 20370, - 20362, - 20378, - 20372, - 20429, - 20544, - 20514, - 20479, - 20510, - 20550, - 20592, - 20546, - 20628, - 20724, - 20696, - 20810, - 20836, - 20893, - 20926, - 20972, - 21013, - 21148, - 21158, - 21184, - 21211, - 21248, - 21255, - 21284, - 21362, - 21395, - 21426, - 21469, - 64014, - 21660, - 21642, - 21673, - 21759, - 21894, - 22361, - 22373, - 22444, - 22472, - 22471, - 64015, - 64016, - 22686, - 22706, - 22795, - 22867, - 22875, - 22877, - 22883, - 22948, - 22970, - 23382, - 23488, - 29999, - 23512, - 23532, - 23582, - 23718, - 23738, - 23797, - 23847, - 23891, - 64017, - 23874, - 23917, - 23992, - 23993, - 24016, - 24353, - 24372, - 24423, - 24503, - 24542, - 24669, - 24709, - 24714, - 24798, - 24789, - 24864, - 24818, - 24849, - 24887, - 24880, - 24984, - 25107, - 25254, - 25589, - 25696, - 25757, - 25806, - 25934, - 26112, - 26133, - 26171, - 26121, - 26158, - 26142, - 26148, - 26213, - 26199, - 26201, - 64018, - 26227, - 26265, - 26272, - 26290, - 26303, - 26362, - 26382, - 63785, - 26470, - 26555, - 26706, - 26560, - 26625, - 26692, - 26831, - 64019, - 26984, - 64020, - 27032, - 27106, - 27184, - 27243, - 27206, - 27251, - 27262, - 27362, - 27364, - 27606, - 27711, - 27740, - 27782, - 27759, - 27866, - 27908, - 28039, - 28015, - 28054, - 28076, - 28111, - 28152, - 28146, - 28156, - 28217, - 28252, - 28199, - 28220, - 28351, - 28552, - 28597, - 28661, - 28677, - 28679, - 28712, - 28805, - 28843, - 28943, - 28932, - 29020, - 28998, - 28999, - 64021, - 29121, - 29182, - 29361, - 29374, - 29476, - 64022, - 29559, - 29629, - 29641, - 29654, - 29667, - 29650, - 29703, - 29685, - 29734, - 29738, - 29737, - 29742, - 29794, - 29833, - 29855, - 29953, - 30063, - 30338, - 30364, - 30366, - 30363, - 30374, - 64023, - 30534, - 21167, - 30753, - 30798, - 30820, - 30842, - 31024, - 64024, - 64025, - 64026, - 31124, - 64027, - 31131, - 31441, - 31463, - 64028, - 31467, - 31646, - 64029, - 32072, - 32092, - 32183, - 32160, - 32214, - 32338, - 32583, - 32673, - 64030, - 33537, - 33634, - 33663, - 33735, - 33782, - 33864, - 33972, - 34131, - 34137, - 34155, - 64031, - 34224, - 64032, - 64033, - 34823, - 35061, - 35346, - 35383, - 35449, - 35495, - 35518, - 35551, - 64034, - 35574, - 35667, - 35711, - 36080, - 36084, - 36114, - 36214, - 64035, - 36559, - 64036, - 64037, - 36967, - 37086, - 64038, - 37141, - 37159, - 37338, - 37335, - 37342, - 37357, - 37358, - 37348, - 37349, - 37382, - 37392, - 37386, - 37434, - 37440, - 37436, - 37454, - 37465, - 37457, - 37433, - 37479, - 37543, - 37495, - 37496, - 37607, - 37591, - 37593, - 37584, - 64039, - 37589, - 37600, - 37587, - 37669, - 37665, - 37627, - 64040, - 37662, - 37631, - 37661, - 37634, - 37744, - 37719, - 37796, - 37830, - 37854, - 37880, - 37937, - 37957, - 37960, - 38290, - 63964, - 64041, - 38557, - 38575, - 38707, - 38715, - 38723, - 38733, - 38735, - 38737, - 38741, - 38999, - 39013, - 64042, - 64043, - 39207, - 64044, - 39326, - 39502, - 39641, - 39644, - 39797, - 39794, - 39823, - 39857, - 39867, - 39936, - 40304, - 40299, - 64045, - 40473, - 40657, - null, - null, - 8560, - 8561, - 8562, - 8563, - 8564, - 8565, - 8566, - 8567, - 8568, - 8569, - 65506, - 65508, - 65287, - 65282, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 8560, - 8561, - 8562, - 8563, - 8564, - 8565, - 8566, - 8567, - 8568, - 8569, - 8544, - 8545, - 8546, - 8547, - 8548, - 8549, - 8550, - 8551, - 8552, - 8553, - 65506, - 65508, - 65287, - 65282, - 12849, - 8470, - 8481, - 8757, - 32394, - 35100, - 37704, - 37512, - 34012, - 20425, - 28859, - 26161, - 26824, - 37625, - 26363, - 24389, - 20008, - 20193, - 20220, - 20224, - 20227, - 20281, - 20310, - 20370, - 20362, - 20378, - 20372, - 20429, - 20544, - 20514, - 20479, - 20510, - 20550, - 20592, - 20546, - 20628, - 20724, - 20696, - 20810, - 20836, - 20893, - 20926, - 20972, - 21013, - 21148, - 21158, - 21184, - 21211, - 21248, - 21255, - 21284, - 21362, - 21395, - 21426, - 21469, - 64014, - 21660, - 21642, - 21673, - 21759, - 21894, - 22361, - 22373, - 22444, - 22472, - 22471, - 64015, - 64016, - 22686, - 22706, - 22795, - 22867, - 22875, - 22877, - 22883, - 22948, - 22970, - 23382, - 23488, - 29999, - 23512, - 23532, - 23582, - 23718, - 23738, - 23797, - 23847, - 23891, - 64017, - 23874, - 23917, - 23992, - 23993, - 24016, - 24353, - 24372, - 24423, - 24503, - 24542, - 24669, - 24709, - 24714, - 24798, - 24789, - 24864, - 24818, - 24849, - 24887, - 24880, - 24984, - 25107, - 25254, - 25589, - 25696, - 25757, - 25806, - 25934, - 26112, - 26133, - 26171, - 26121, - 26158, - 26142, - 26148, - 26213, - 26199, - 26201, - 64018, - 26227, - 26265, - 26272, - 26290, - 26303, - 26362, - 26382, - 63785, - 26470, - 26555, - 26706, - 26560, - 26625, - 26692, - 26831, - 64019, - 26984, - 64020, - 27032, - 27106, - 27184, - 27243, - 27206, - 27251, - 27262, - 27362, - 27364, - 27606, - 27711, - 27740, - 27782, - 27759, - 27866, - 27908, - 28039, - 28015, - 28054, - 28076, - 28111, - 28152, - 28146, - 28156, - 28217, - 28252, - 28199, - 28220, - 28351, - 28552, - 28597, - 28661, - 28677, - 28679, - 28712, - 28805, - 28843, - 28943, - 28932, - 29020, - 28998, - 28999, - 64021, - 29121, - 29182, - 29361, - 29374, - 29476, - 64022, - 29559, - 29629, - 29641, - 29654, - 29667, - 29650, - 29703, - 29685, - 29734, - 29738, - 29737, - 29742, - 29794, - 29833, - 29855, - 29953, - 30063, - 30338, - 30364, - 30366, - 30363, - 30374, - 64023, - 30534, - 21167, - 30753, - 30798, - 30820, - 30842, - 31024, - 64024, - 64025, - 64026, - 31124, - 64027, - 31131, - 31441, - 31463, - 64028, - 31467, - 31646, - 64029, - 32072, - 32092, - 32183, - 32160, - 32214, - 32338, - 32583, - 32673, - 64030, - 33537, - 33634, - 33663, - 33735, - 33782, - 33864, - 33972, - 34131, - 34137, - 34155, - 64031, - 34224, - 64032, - 64033, - 34823, - 35061, - 35346, - 35383, - 35449, - 35495, - 35518, - 35551, - 64034, - 35574, - 35667, - 35711, - 36080, - 36084, - 36114, - 36214, - 64035, - 36559, - 64036, - 64037, - 36967, - 37086, - 64038, - 37141, - 37159, - 37338, - 37335, - 37342, - 37357, - 37358, - 37348, - 37349, - 37382, - 37392, - 37386, - 37434, - 37440, - 37436, - 37454, - 37465, - 37457, - 37433, - 37479, - 37543, - 37495, - 37496, - 37607, - 37591, - 37593, - 37584, - 64039, - 37589, - 37600, - 37587, - 37669, - 37665, - 37627, - 64040, - 37662, - 37631, - 37661, - 37634, - 37744, - 37719, - 37796, - 37830, - 37854, - 37880, - 37937, - 37957, - 37960, - 38290, - 63964, - 64041, - 38557, - 38575, - 38707, - 38715, - 38723, - 38733, - 38735, - 38737, - 38741, - 38999, - 39013, - 64042, - 64043, - 39207, - 64044, - 39326, - 39502, - 39641, - 39644, - 39797, - 39794, - 39823, - 39857, - 39867, - 39936, - 40304, - 40299, - 64045, - 40473, - 40657, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, + "jis0208": [12288, 12289, 12290, 65292, 65294, 12539, 65306, + 65307, 65311, 65281, 12443, 12444, 180, 65344, 168, + 65342, 65507, 65343, 12541, 12542, 12445, 12446, + 12291, 20189, 12293, 12294, 12295, 12540, 8213, + 8208, 65295, 65340, 65374, 8741, 65372, 8230, 8229, + 8216, 8217, 8220, 8221, 65288, 65289, 12308, 12309, + 65339, 65341, 65371, 65373, 12296, 12297, 12298, + 12299, 12300, 12301, 12302, 12303, 12304, 12305, + 65291, 65293, 177, 215, 247, 65309, 8800, 65308, + 65310, 8806, 8807, 8734, 8756, 9794, 9792, 176, + 8242, 8243, 8451, 65509, 65284, 65504, 65505, 65285, + 65283, 65286, 65290, 65312, 167, 9734, 9733, 9675, + 9679, 9678, 9671, 9670, 9633, 9632, 9651, 9650, + 9661, 9660, 8251, 12306, 8594, 8592, 8593, 8595, + 12307, null, null, null, null, null, null, null, + null, null, null, null, 8712, 8715, 8838, 8839, + 8834, 8835, 8746, 8745, null, null, null, null, + null, null, null, null, 8743, 8744, 65506, 8658, + 8660, 8704, 8707, null, null, null, null, null, + null, null, null, null, null, null, 8736, 8869, + 8978, 8706, 8711, 8801, 8786, 8810, 8811, 8730, + 8765, 8733, 8757, 8747, 8748, null, null, null, + null, null, null, null, 8491, 8240, 9839, 9837, + 9834, 8224, 8225, 182, null, null, null, null, 9711, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 65296, + 65297, 65298, 65299, 65300, 65301, 65302, 65303, + 65304, 65305, null, null, null, null, null, null, + null, 65313, 65314, 65315, 65316, 65317, 65318, + 65319, 65320, 65321, 65322, 65323, 65324, 65325, + 65326, 65327, 65328, 65329, 65330, 65331, 65332, + 65333, 65334, 65335, 65336, 65337, 65338, null, + null, null, null, null, null, 65345, 65346, 65347, + 65348, 65349, 65350, 65351, 65352, 65353, 65354, + 65355, 65356, 65357, 65358, 65359, 65360, 65361, + 65362, 65363, 65364, 65365, 65366, 65367, 65368, + 65369, 65370, null, null, null, null, 12353, 12354, + 12355, 12356, 12357, 12358, 12359, 12360, 12361, + 12362, 12363, 12364, 12365, 12366, 12367, 12368, + 12369, 12370, 12371, 12372, 12373, 12374, 12375, + 12376, 12377, 12378, 12379, 12380, 12381, 12382, + 12383, 12384, 12385, 12386, 12387, 12388, 12389, + 12390, 12391, 12392, 12393, 12394, 12395, 12396, + 12397, 12398, 12399, 12400, 12401, 12402, 12403, + 12404, 12405, 12406, 12407, 12408, 12409, 12410, + 12411, 12412, 12413, 12414, 12415, 12416, 12417, + 12418, 12419, 12420, 12421, 12422, 12423, 12424, + 12425, 12426, 12427, 12428, 12429, 12430, 12431, + 12432, 12433, 12434, 12435, null, null, null, null, + null, null, null, null, null, null, null, 12449, + 12450, 12451, 12452, 12453, 12454, 12455, 12456, + 12457, 12458, 12459, 12460, 12461, 12462, 12463, + 12464, 12465, 12466, 12467, 12468, 12469, 12470, + 12471, 12472, 12473, 12474, 12475, 12476, 12477, + 12478, 12479, 12480, 12481, 12482, 12483, 12484, + 12485, 12486, 12487, 12488, 12489, 12490, 12491, + 12492, 12493, 12494, 12495, 12496, 12497, 12498, + 12499, 12500, 12501, 12502, 12503, 12504, 12505, + 12506, 12507, 12508, 12509, 12510, 12511, 12512, + 12513, 12514, 12515, 12516, 12517, 12518, 12519, + 12520, 12521, 12522, 12523, 12524, 12525, 12526, + 12527, 12528, 12529, 12530, 12531, 12532, 12533, + 12534, null, null, null, null, null, null, null, + null, 913, 914, 915, 916, 917, 918, 919, 920, 921, + 922, 923, 924, 925, 926, 927, 928, 929, 931, 932, + 933, 934, 935, 936, 937, null, null, null, null, + null, null, null, null, 945, 946, 947, 948, 949, + 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, + 960, 961, 963, 964, 965, 966, 967, 968, 969, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, 1040, 1041, 1042, + 1043, 1044, 1045, 1025, 1046, 1047, 1048, 1049, + 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, + 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, + 1066, 1067, 1068, 1069, 1070, 1071, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, 1072, 1073, 1074, + 1075, 1076, 1077, 1105, 1078, 1079, 1080, 1081, + 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, + 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, + 1098, 1099, 1100, 1101, 1102, 1103, null, null, + null, null, null, null, null, null, null, null, + null, null, null, 9472, 9474, 9484, 9488, 9496, + 9492, 9500, 9516, 9508, 9524, 9532, 9473, 9475, + 9487, 9491, 9499, 9495, 9507, 9523, 9515, 9531, + 9547, 9504, 9519, 9512, 9527, 9535, 9501, 9520, + 9509, 9528, 9538, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, 9312, 9313, 9314, 9315, 9316, 9317, 9318, + 9319, 9320, 9321, 9322, 9323, 9324, 9325, 9326, + 9327, 9328, 9329, 9330, 9331, 8544, 8545, 8546, + 8547, 8548, 8549, 8550, 8551, 8552, 8553, null, + 13129, 13076, 13090, 13133, 13080, 13095, 13059, + 13110, 13137, 13143, 13069, 13094, 13091, 13099, + 13130, 13115, 13212, 13213, 13214, 13198, 13199, + 13252, 13217, null, null, null, null, null, null, + null, null, 13179, 12317, 12319, 8470, 13261, 8481, + 12964, 12965, 12966, 12967, 12968, 12849, 12850, + 12857, 13182, 13181, 13180, 8786, 8801, 8747, 8750, + 8721, 8730, 8869, 8736, 8735, 8895, 8757, 8745, + 8746, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 20124, + 21782, 23043, 38463, 21696, 24859, 25384, 23030, + 36898, 33909, 33564, 31312, 24746, 25569, 28197, + 26093, 33894, 33446, 39925, 26771, 22311, 26017, + 25201, 23451, 22992, 34427, 39156, 32098, 32190, + 39822, 25110, 31903, 34999, 23433, 24245, 25353, + 26263, 26696, 38343, 38797, 26447, 20197, 20234, + 20301, 20381, 20553, 22258, 22839, 22996, 23041, + 23561, 24799, 24847, 24944, 26131, 26885, 28858, + 30031, 30064, 31227, 32173, 32239, 32963, 33806, + 34915, 35586, 36949, 36986, 21307, 20117, 20133, + 22495, 32946, 37057, 30959, 19968, 22769, 28322, + 36920, 31282, 33576, 33419, 39983, 20801, 21360, + 21693, 21729, 22240, 23035, 24341, 39154, 28139, + 32996, 34093, 38498, 38512, 38560, 38907, 21515, + 21491, 23431, 28879, 32701, 36802, 38632, 21359, + 40284, 31418, 19985, 30867, 33276, 28198, 22040, + 21764, 27421, 34074, 39995, 23013, 21417, 28006, + 29916, 38287, 22082, 20113, 36939, 38642, 33615, + 39180, 21473, 21942, 23344, 24433, 26144, 26355, + 26628, 27704, 27891, 27945, 29787, 30408, 31310, + 38964, 33521, 34907, 35424, 37613, 28082, 30123, + 30410, 39365, 24742, 35585, 36234, 38322, 27022, + 21421, 20870, 22290, 22576, 22852, 23476, 24310, + 24616, 25513, 25588, 27839, 28436, 28814, 28948, + 29017, 29141, 29503, 32257, 33398, 33489, 34199, + 36960, 37467, 40219, 22633, 26044, 27738, 29989, + 20985, 22830, 22885, 24448, 24540, 25276, 26106, + 27178, 27431, 27572, 29579, 32705, 35158, 40236, + 40206, 40644, 23713, 27798, 33659, 20740, 23627, + 25014, 33222, 26742, 29281, 20057, 20474, 21368, + 24681, 28201, 31311, 38899, 19979, 21270, 20206, + 20309, 20285, 20385, 20339, 21152, 21487, 22025, + 22799, 23233, 23478, 23521, 31185, 26247, 26524, + 26550, 27468, 27827, 28779, 29634, 31117, 31166, + 31292, 31623, 33457, 33499, 33540, 33655, 33775, + 33747, 34662, 35506, 22057, 36008, 36838, 36942, + 38686, 34442, 20420, 23784, 25105, 29273, 30011, + 33253, 33469, 34558, 36032, 38597, 39187, 39381, + 20171, 20250, 35299, 22238, 22602, 22730, 24315, + 24555, 24618, 24724, 24674, 25040, 25106, 25296, + 25913, 39745, 26214, 26800, 28023, 28784, 30028, + 30342, 32117, 33445, 34809, 38283, 38542, 35997, + 20977, 21182, 22806, 21683, 23475, 23830, 24936, + 27010, 28079, 30861, 33995, 34903, 35442, 37799, + 39608, 28012, 39336, 34521, 22435, 26623, 34510, + 37390, 21123, 22151, 21508, 24275, 25313, 25785, + 26684, 26680, 27579, 29554, 30906, 31339, 35226, + 35282, 36203, 36611, 37101, 38307, 38548, 38761, + 23398, 23731, 27005, 38989, 38990, 25499, 31520, + 27179, 27263, 26806, 39949, 28511, 21106, 21917, + 24688, 25324, 27963, 28167, 28369, 33883, 35088, + 36676, 19988, 39993, 21494, 26907, 27194, 38788, + 26666, 20828, 31427, 33970, 37340, 37772, 22107, + 40232, 26658, 33541, 33841, 31909, 21000, 33477, + 29926, 20094, 20355, 20896, 23506, 21002, 21208, + 21223, 24059, 21914, 22570, 23014, 23436, 23448, + 23515, 24178, 24185, 24739, 24863, 24931, 25022, + 25563, 25954, 26577, 26707, 26874, 27454, 27475, + 27735, 28450, 28567, 28485, 29872, 29976, 30435, + 30475, 31487, 31649, 31777, 32233, 32566, 32752, + 32925, 33382, 33694, 35251, 35532, 36011, 36996, + 37969, 38291, 38289, 38306, 38501, 38867, 39208, + 33304, 20024, 21547, 23736, 24012, 29609, 30284, + 30524, 23721, 32747, 36107, 38593, 38929, 38996, + 39000, 20225, 20238, 21361, 21916, 22120, 22522, + 22855, 23305, 23492, 23696, 24076, 24190, 24524, + 25582, 26426, 26071, 26082, 26399, 26827, 26820, + 27231, 24112, 27589, 27671, 27773, 30079, 31048, + 23395, 31232, 32000, 24509, 35215, 35352, 36020, + 36215, 36556, 36637, 39138, 39438, 39740, 20096, + 20605, 20736, 22931, 23452, 25135, 25216, 25836, + 27450, 29344, 30097, 31047, 32681, 34811, 35516, + 35696, 25516, 33738, 38816, 21513, 21507, 21931, + 26708, 27224, 35440, 30759, 26485, 40653, 21364, + 23458, 33050, 34384, 36870, 19992, 20037, 20167, + 20241, 21450, 21560, 23470, 24339, 24613, 25937, + 26429, 27714, 27762, 27875, 28792, 29699, 31350, + 31406, 31496, 32026, 31998, 32102, 26087, 29275, + 21435, 23621, 24040, 25298, 25312, 25369, 28192, + 34394, 35377, 36317, 37624, 28417, 31142, 39770, + 20136, 20139, 20140, 20379, 20384, 20689, 20807, + 31478, 20849, 20982, 21332, 21281, 21375, 21483, + 21932, 22659, 23777, 24375, 24394, 24623, 24656, + 24685, 25375, 25945, 27211, 27841, 29378, 29421, + 30703, 33016, 33029, 33288, 34126, 37111, 37857, + 38911, 39255, 39514, 20208, 20957, 23597, 26241, + 26989, 23616, 26354, 26997, 29577, 26704, 31873, + 20677, 21220, 22343, 24062, 37670, 26020, 27427, + 27453, 29748, 31105, 31165, 31563, 32202, 33465, + 33740, 34943, 35167, 35641, 36817, 37329, 21535, + 37504, 20061, 20534, 21477, 21306, 29399, 29590, + 30697, 33510, 36527, 39366, 39368, 39378, 20855, + 24858, 34398, 21936, 31354, 20598, 23507, 36935, + 38533, 20018, 27355, 37351, 23633, 23624, 25496, + 31391, 27795, 38772, 36705, 31402, 29066, 38536, + 31874, 26647, 32368, 26705, 37740, 21234, 21531, + 34219, 35347, 32676, 36557, 37089, 21350, 34952, + 31041, 20418, 20670, 21009, 20804, 21843, 22317, + 29674, 22411, 22865, 24418, 24452, 24693, 24950, + 24935, 25001, 25522, 25658, 25964, 26223, 26690, + 28179, 30054, 31293, 31995, 32076, 32153, 32331, + 32619, 33550, 33610, 34509, 35336, 35427, 35686, + 36605, 38938, 40335, 33464, 36814, 39912, 21127, + 25119, 25731, 28608, 38553, 26689, 20625, 27424, + 27770, 28500, 31348, 32080, 34880, 35363, 26376, + 20214, 20537, 20518, 20581, 20860, 21048, 21091, + 21927, 22287, 22533, 23244, 24314, 25010, 25080, + 25331, 25458, 26908, 27177, 29309, 29356, 29486, + 30740, 30831, 32121, 30476, 32937, 35211, 35609, + 36066, 36562, 36963, 37749, 38522, 38997, 39443, + 40568, 20803, 21407, 21427, 24187, 24358, 28187, + 28304, 29572, 29694, 32067, 33335, 35328, 35578, + 38480, 20046, 20491, 21476, 21628, 22266, 22993, + 23396, 24049, 24235, 24359, 25144, 25925, 26543, + 28246, 29392, 31946, 34996, 32929, 32993, 33776, + 34382, 35463, 36328, 37431, 38599, 39015, 40723, + 20116, 20114, 20237, 21320, 21577, 21566, 23087, + 24460, 24481, 24735, 26791, 27278, 29786, 30849, + 35486, 35492, 35703, 37264, 20062, 39881, 20132, + 20348, 20399, 20505, 20502, 20809, 20844, 21151, + 21177, 21246, 21402, 21475, 21521, 21518, 21897, + 22353, 22434, 22909, 23380, 23389, 23439, 24037, + 24039, 24055, 24184, 24195, 24218, 24247, 24344, + 24658, 24908, 25239, 25304, 25511, 25915, 26114, + 26179, 26356, 26477, 26657, 26775, 27083, 27743, + 27946, 28009, 28207, 28317, 30002, 30343, 30828, + 31295, 31968, 32005, 32024, 32094, 32177, 32789, + 32771, 32943, 32945, 33108, 33167, 33322, 33618, + 34892, 34913, 35611, 36002, 36092, 37066, 37237, + 37489, 30783, 37628, 38308, 38477, 38917, 39321, + 39640, 40251, 21083, 21163, 21495, 21512, 22741, + 25335, 28640, 35946, 36703, 40633, 20811, 21051, + 21578, 22269, 31296, 37239, 40288, 40658, 29508, + 28425, 33136, 29969, 24573, 24794, 39592, 29403, + 36796, 27492, 38915, 20170, 22256, 22372, 22718, + 23130, 24680, 25031, 26127, 26118, 26681, 26801, + 28151, 30165, 32058, 33390, 39746, 20123, 20304, + 21449, 21766, 23919, 24038, 24046, 26619, 27801, + 29811, 30722, 35408, 37782, 35039, 22352, 24231, + 25387, 20661, 20652, 20877, 26368, 21705, 22622, + 22971, 23472, 24425, 25165, 25505, 26685, 27507, + 28168, 28797, 37319, 29312, 30741, 30758, 31085, + 25998, 32048, 33756, 35009, 36617, 38555, 21092, + 22312, 26448, 32618, 36001, 20916, 22338, 38442, + 22586, 27018, 32948, 21682, 23822, 22524, 30869, + 40442, 20316, 21066, 21643, 25662, 26152, 26388, + 26613, 31364, 31574, 32034, 37679, 26716, 39853, + 31545, 21273, 20874, 21047, 23519, 25334, 25774, + 25830, 26413, 27578, 34217, 38609, 30352, 39894, + 25420, 37638, 39851, 30399, 26194, 19977, 20632, + 21442, 23665, 24808, 25746, 25955, 26719, 29158, + 29642, 29987, 31639, 32386, 34453, 35715, 36059, + 37240, 39184, 26028, 26283, 27531, 20181, 20180, + 20282, 20351, 21050, 21496, 21490, 21987, 22235, + 22763, 22987, 22985, 23039, 23376, 23629, 24066, + 24107, 24535, 24605, 25351, 25903, 23388, 26031, + 26045, 26088, 26525, 27490, 27515, 27663, 29509, + 31049, 31169, 31992, 32025, 32043, 32930, 33026, + 33267, 35222, 35422, 35433, 35430, 35468, 35566, + 36039, 36060, 38604, 39164, 27503, 20107, 20284, + 20365, 20816, 23383, 23546, 24904, 25345, 26178, + 27425, 28363, 27835, 29246, 29885, 30164, 30913, + 31034, 32780, 32819, 33258, 33940, 36766, 27728, + 40575, 24335, 35672, 40235, 31482, 36600, 23437, + 38635, 19971, 21489, 22519, 22833, 23241, 23460, + 24713, 28287, 28422, 30142, 36074, 23455, 34048, + 31712, 20594, 26612, 33437, 23649, 34122, 32286, + 33294, 20889, 23556, 25448, 36198, 26012, 29038, + 31038, 32023, 32773, 35613, 36554, 36974, 34503, + 37034, 20511, 21242, 23610, 26451, 28796, 29237, + 37196, 37320, 37675, 33509, 23490, 24369, 24825, + 20027, 21462, 23432, 25163, 26417, 27530, 29417, + 29664, 31278, 33131, 36259, 37202, 39318, 20754, + 21463, 21610, 23551, 25480, 27193, 32172, 38656, + 22234, 21454, 21608, 23447, 23601, 24030, 20462, + 24833, 25342, 27954, 31168, 31179, 32066, 32333, + 32722, 33261, 33311, 33936, 34886, 35186, 35728, + 36468, 36655, 36913, 37195, 37228, 38598, 37276, + 20160, 20303, 20805, 21313, 24467, 25102, 26580, + 27713, 28171, 29539, 32294, 37325, 37507, 21460, + 22809, 23487, 28113, 31069, 32302, 31899, 22654, + 29087, 20986, 34899, 36848, 20426, 23803, 26149, + 30636, 31459, 33308, 39423, 20934, 24490, 26092, + 26991, 27529, 28147, 28310, 28516, 30462, 32020, + 24033, 36981, 37255, 38918, 20966, 21021, 25152, + 26257, 26329, 28186, 24246, 32210, 32626, 26360, + 34223, 34295, 35576, 21161, 21465, 22899, 24207, + 24464, 24661, 37604, 38500, 20663, 20767, 21213, + 21280, 21319, 21484, 21736, 21830, 21809, 22039, + 22888, 22974, 23100, 23477, 23558, 23567, 23569, + 23578, 24196, 24202, 24288, 24432, 25215, 25220, + 25307, 25484, 25463, 26119, 26124, 26157, 26230, + 26494, 26786, 27167, 27189, 27836, 28040, 28169, + 28248, 28988, 28966, 29031, 30151, 30465, 30813, + 30977, 31077, 31216, 31456, 31505, 31911, 32057, + 32918, 33750, 33931, 34121, 34909, 35059, 35359, + 35388, 35412, 35443, 35937, 36062, 37284, 37478, + 37758, 37912, 38556, 38808, 19978, 19976, 19998, + 20055, 20887, 21104, 22478, 22580, 22732, 23330, + 24120, 24773, 25854, 26465, 26454, 27972, 29366, + 30067, 31331, 33976, 35698, 37304, 37664, 22065, + 22516, 39166, 25325, 26893, 27542, 29165, 32340, + 32887, 33394, 35302, 39135, 34645, 36785, 23611, + 20280, 20449, 20405, 21767, 23072, 23517, 23529, + 24515, 24910, 25391, 26032, 26187, 26862, 27035, + 28024, 28145, 30003, 30137, 30495, 31070, 31206, + 32051, 33251, 33455, 34218, 35242, 35386, 36523, + 36763, 36914, 37341, 38663, 20154, 20161, 20995, + 22645, 22764, 23563, 29978, 23613, 33102, 35338, + 36805, 38499, 38765, 31525, 35535, 38920, 37218, + 22259, 21416, 36887, 21561, 22402, 24101, 25512, + 27700, 28810, 30561, 31883, 32736, 34928, 36930, + 37204, 37648, 37656, 38543, 29790, 39620, 23815, + 23913, 25968, 26530, 36264, 38619, 25454, 26441, + 26905, 33733, 38935, 38592, 35070, 28548, 25722, + 23544, 19990, 28716, 30045, 26159, 20932, 21046, + 21218, 22995, 24449, 24615, 25104, 25919, 25972, + 26143, 26228, 26866, 26646, 27491, 28165, 29298, + 29983, 30427, 31934, 32854, 22768, 35069, 35199, + 35488, 35475, 35531, 36893, 37266, 38738, 38745, + 25993, 31246, 33030, 38587, 24109, 24796, 25114, + 26021, 26132, 26512, 30707, 31309, 31821, 32318, + 33034, 36012, 36196, 36321, 36447, 30889, 20999, + 25305, 25509, 25666, 25240, 35373, 31363, 31680, + 35500, 38634, 32118, 33292, 34633, 20185, 20808, + 21315, 21344, 23459, 23554, 23574, 24029, 25126, + 25159, 25776, 26643, 26676, 27849, 27973, 27927, + 26579, 28508, 29006, 29053, 26059, 31359, 31661, + 32218, 32330, 32680, 33146, 33307, 33337, 34214, + 35438, 36046, 36341, 36984, 36983, 37549, 37521, + 38275, 39854, 21069, 21892, 28472, 28982, 20840, + 31109, 32341, 33203, 31950, 22092, 22609, 23720, + 25514, 26366, 26365, 26970, 29401, 30095, 30094, + 30990, 31062, 31199, 31895, 32032, 32068, 34311, + 35380, 38459, 36961, 40736, 20711, 21109, 21452, + 21474, 20489, 21930, 22766, 22863, 29245, 23435, + 23652, 21277, 24803, 24819, 25436, 25475, 25407, + 25531, 25805, 26089, 26361, 24035, 27085, 27133, + 28437, 29157, 20105, 30185, 30456, 31379, 31967, + 32207, 32156, 32865, 33609, 33624, 33900, 33980, + 34299, 35013, 36208, 36865, 36973, 37783, 38684, + 39442, 20687, 22679, 24974, 33235, 34101, 36104, + 36896, 20419, 20596, 21063, 21363, 24687, 25417, + 26463, 28204, 36275, 36895, 20439, 23646, 36042, + 26063, 32154, 21330, 34966, 20854, 25539, 23384, + 23403, 23562, 25613, 26449, 36956, 20182, 22810, + 22826, 27760, 35409, 21822, 22549, 22949, 24816, + 25171, 26561, 33333, 26965, 38464, 39364, 39464, + 20307, 22534, 23550, 32784, 23729, 24111, 24453, + 24608, 24907, 25140, 26367, 27888, 28382, 32974, + 33151, 33492, 34955, 36024, 36864, 36910, 38538, + 40667, 39899, 20195, 21488, 22823, 31532, 37261, + 38988, 40441, 28381, 28711, 21331, 21828, 23429, + 25176, 25246, 25299, 27810, 28655, 29730, 35351, + 37944, 28609, 35582, 33592, 20967, 34552, 21482, + 21481, 20294, 36948, 36784, 22890, 33073, 24061, + 31466, 36799, 26842, 35895, 29432, 40008, 27197, + 35504, 20025, 21336, 22022, 22374, 25285, 25506, + 26086, 27470, 28129, 28251, 28845, 30701, 31471, + 31658, 32187, 32829, 32966, 34507, 35477, 37723, + 22243, 22727, 24382, 26029, 26262, 27264, 27573, + 30007, 35527, 20516, 30693, 22320, 24347, 24677, + 26234, 27744, 30196, 31258, 32622, 33268, 34584, + 36933, 39347, 31689, 30044, 31481, 31569, 33988, + 36880, 31209, 31378, 33590, 23265, 30528, 20013, + 20210, 23449, 24544, 25277, 26172, 26609, 27880, + 34411, 34935, 35387, 37198, 37619, 39376, 27159, + 28710, 29482, 33511, 33879, 36015, 19969, 20806, + 20939, 21899, 23541, 24086, 24115, 24193, 24340, + 24373, 24427, 24500, 25074, 25361, 26274, 26397, + 28526, 29266, 30010, 30522, 32884, 33081, 33144, + 34678, 35519, 35548, 36229, 36339, 37530, 38263, + 38914, 40165, 21189, 25431, 30452, 26389, 27784, + 29645, 36035, 37806, 38515, 27941, 22684, 26894, + 27084, 36861, 37786, 30171, 36890, 22618, 26626, + 25524, 27131, 20291, 28460, 26584, 36795, 34086, + 32180, 37716, 26943, 28528, 22378, 22775, 23340, + 32044, 29226, 21514, 37347, 40372, 20141, 20302, + 20572, 20597, 21059, 35998, 21576, 22564, 23450, + 24093, 24213, 24237, 24311, 24351, 24716, 25269, + 25402, 25552, 26799, 27712, 30855, 31118, 31243, + 32224, 33351, 35330, 35558, 36420, 36883, 37048, + 37165, 37336, 40718, 27877, 25688, 25826, 25973, + 28404, 30340, 31515, 36969, 37841, 28346, 21746, + 24505, 25764, 36685, 36845, 37444, 20856, 22635, + 22825, 23637, 24215, 28155, 32399, 29980, 36028, + 36578, 39003, 28857, 20253, 27583, 28593, 30000, + 38651, 20814, 21520, 22581, 22615, 22956, 23648, + 24466, 26007, 26460, 28193, 30331, 33759, 36077, + 36884, 37117, 37709, 30757, 30778, 21162, 24230, + 22303, 22900, 24594, 20498, 20826, 20908, 20941, + 20992, 21776, 22612, 22616, 22871, 23445, 23798, + 23947, 24764, 25237, 25645, 26481, 26691, 26812, + 26847, 30423, 28120, 28271, 28059, 28783, 29128, + 24403, 30168, 31095, 31561, 31572, 31570, 31958, + 32113, 21040, 33891, 34153, 34276, 35342, 35588, + 35910, 36367, 36867, 36879, 37913, 38518, 38957, + 39472, 38360, 20685, 21205, 21516, 22530, 23566, + 24999, 25758, 27934, 30643, 31461, 33012, 33796, + 36947, 37509, 23776, 40199, 21311, 24471, 24499, + 28060, 29305, 30563, 31167, 31716, 27602, 29420, + 35501, 26627, 27233, 20984, 31361, 26932, 23626, + 40182, 33515, 23493, 37193, 28702, 22136, 23663, + 24775, 25958, 27788, 35930, 36929, 38931, 21585, + 26311, 37389, 22856, 37027, 20869, 20045, 20970, + 34201, 35598, 28760, 25466, 37707, 26978, 39348, + 32260, 30071, 21335, 26976, 36575, 38627, 27741, + 20108, 23612, 24336, 36841, 21250, 36049, 32905, + 34425, 24319, 26085, 20083, 20837, 22914, 23615, + 38894, 20219, 22922, 24525, 35469, 28641, 31152, + 31074, 23527, 33905, 29483, 29105, 24180, 24565, + 25467, 25754, 29123, 31896, 20035, 24316, 20043, + 22492, 22178, 24745, 28611, 32013, 33021, 33075, + 33215, 36786, 35223, 34468, 24052, 25226, 25773, + 35207, 26487, 27874, 27966, 29750, 30772, 23110, + 32629, 33453, 39340, 20467, 24259, 25309, 25490, + 25943, 26479, 30403, 29260, 32972, 32954, 36649, + 37197, 20493, 22521, 23186, 26757, 26995, 29028, + 29437, 36023, 22770, 36064, 38506, 36889, 34687, + 31204, 30695, 33833, 20271, 21093, 21338, 25293, + 26575, 27850, 30333, 31636, 31893, 33334, 34180, + 36843, 26333, 28448, 29190, 32283, 33707, 39361, + 40614, 20989, 31665, 30834, 31672, 32903, 31560, + 27368, 24161, 32908, 30033, 30048, 20843, 37474, + 28300, 30330, 37271, 39658, 20240, 32624, 25244, + 31567, 38309, 40169, 22138, 22617, 34532, 38588, + 20276, 21028, 21322, 21453, 21467, 24070, 25644, + 26001, 26495, 27710, 27726, 29256, 29359, 29677, + 30036, 32321, 33324, 34281, 36009, 31684, 37318, + 29033, 38930, 39151, 25405, 26217, 30058, 30436, + 30928, 34115, 34542, 21290, 21329, 21542, 22915, + 24199, 24444, 24754, 25161, 25209, 25259, 26000, + 27604, 27852, 30130, 30382, 30865, 31192, 32203, + 32631, 32933, 34987, 35513, 36027, 36991, 38750, + 39131, 27147, 31800, 20633, 23614, 24494, 26503, + 27608, 29749, 30473, 32654, 40763, 26570, 31255, + 21305, 30091, 39661, 24422, 33181, 33777, 32920, + 24380, 24517, 30050, 31558, 36924, 26727, 23019, + 23195, 32016, 30334, 35628, 20469, 24426, 27161, + 27703, 28418, 29922, 31080, 34920, 35413, 35961, + 24287, 25551, 30149, 31186, 33495, 37672, 37618, + 33948, 34541, 39981, 21697, 24428, 25996, 27996, + 28693, 36007, 36051, 38971, 25935, 29942, 19981, + 20184, 22496, 22827, 23142, 23500, 20904, 24067, + 24220, 24598, 25206, 25975, 26023, 26222, 28014, + 29238, 31526, 33104, 33178, 33433, 35676, 36000, + 36070, 36212, 38428, 38468, 20398, 25771, 27494, + 33310, 33889, 34154, 37096, 23553, 26963, 39080, + 33914, 34135, 20239, 21103, 24489, 24133, 26381, + 31119, 33145, 35079, 35206, 28149, 24343, 25173, + 27832, 20175, 29289, 39826, 20998, 21563, 22132, + 22707, 24996, 25198, 28954, 22894, 31881, 31966, + 32027, 38640, 25991, 32862, 19993, 20341, 20853, + 22592, 24163, 24179, 24330, 26564, 20006, 34109, + 38281, 38491, 31859, 38913, 20731, 22721, 30294, + 30887, 21029, 30629, 34065, 31622, 20559, 22793, + 29255, 31687, 32232, 36794, 36820, 36941, 20415, + 21193, 23081, 24321, 38829, 20445, 33303, 37610, + 22275, 25429, 27497, 29995, 35036, 36628, 31298, + 21215, 22675, 24917, 25098, 26286, 27597, 31807, + 33769, 20515, 20472, 21253, 21574, 22577, 22857, + 23453, 23792, 23791, 23849, 24214, 25265, 25447, + 25918, 26041, 26379, 27861, 27873, 28921, 30770, + 32299, 32990, 33459, 33804, 34028, 34562, 35090, + 35370, 35914, 37030, 37586, 39165, 40179, 40300, + 20047, 20129, 20621, 21078, 22346, 22952, 24125, + 24536, 24537, 25151, 26292, 26395, 26576, 26834, + 20882, 32033, 32938, 33192, 35584, 35980, 36031, + 37502, 38450, 21536, 38956, 21271, 20693, 21340, + 22696, 25778, 26420, 29287, 30566, 31302, 37350, + 21187, 27809, 27526, 22528, 24140, 22868, 26412, + 32763, 20961, 30406, 25705, 30952, 39764, 40635, + 22475, 22969, 26151, 26522, 27598, 21737, 27097, + 24149, 33180, 26517, 39850, 26622, 40018, 26717, + 20134, 20451, 21448, 25273, 26411, 27819, 36804, + 20397, 32365, 40639, 19975, 24930, 28288, 28459, + 34067, 21619, 26410, 39749, 24051, 31637, 23724, + 23494, 34588, 28234, 34001, 31252, 33032, 22937, + 31885, 27665, 30496, 21209, 22818, 28961, 29279, + 30683, 38695, 40289, 26891, 23167, 23064, 20901, + 21517, 21629, 26126, 30431, 36855, 37528, 40180, + 23018, 29277, 28357, 20813, 26825, 32191, 32236, + 38754, 40634, 25720, 27169, 33538, 22916, 23391, + 27611, 29467, 30450, 32178, 32791, 33945, 20786, + 26408, 40665, 30446, 26466, 21247, 39173, 23588, + 25147, 31870, 36016, 21839, 24758, 32011, 38272, + 21249, 20063, 20918, 22812, 29242, 32822, 37326, + 24357, 30690, 21380, 24441, 32004, 34220, 35379, + 36493, 38742, 26611, 34222, 37971, 24841, 24840, + 27833, 30290, 35565, 36664, 21807, 20305, 20778, + 21191, 21451, 23461, 24189, 24736, 24962, 25558, + 26377, 26586, 28263, 28044, 29494, 29495, 30001, + 31056, 35029, 35480, 36938, 37009, 37109, 38596, + 34701, 22805, 20104, 20313, 19982, 35465, 36671, + 38928, 20653, 24188, 22934, 23481, 24248, 25562, + 25594, 25793, 26332, 26954, 27096, 27915, 28342, + 29076, 29992, 31407, 32650, 32768, 33865, 33993, + 35201, 35617, 36362, 36965, 38525, 39178, 24958, + 25233, 27442, 27779, 28020, 32716, 32764, 28096, + 32645, 34746, 35064, 26469, 33713, 38972, 38647, + 27931, 32097, 33853, 37226, 20081, 21365, 23888, + 27396, 28651, 34253, 34349, 35239, 21033, 21519, + 23653, 26446, 26792, 29702, 29827, 30178, 35023, + 35041, 37324, 38626, 38520, 24459, 29575, 31435, + 33870, 25504, 30053, 21129, 27969, 28316, 29705, + 30041, 30827, 31890, 38534, 31452, 40845, 20406, + 24942, 26053, 34396, 20102, 20142, 20698, 20001, + 20940, 23534, 26009, 26753, 28092, 29471, 30274, + 30637, 31260, 31975, 33391, 35538, 36988, 37327, + 38517, 38936, 21147, 32209, 20523, 21400, 26519, + 28107, 29136, 29747, 33256, 36650, 38563, 40023, + 40607, 29792, 22593, 28057, 32047, 39006, 20196, + 20278, 20363, 20919, 21169, 23994, 24604, 29618, + 31036, 33491, 37428, 38583, 38646, 38666, 40599, + 40802, 26278, 27508, 21015, 21155, 28872, 35010, + 24265, 24651, 24976, 28451, 29001, 31806, 32244, + 32879, 34030, 36899, 37676, 21570, 39791, 27347, + 28809, 36034, 36335, 38706, 21172, 23105, 24266, + 24324, 26391, 27004, 27028, 28010, 28431, 29282, + 29436, 31725, 32769, 32894, 34635, 37070, 20845, + 40595, 31108, 32907, 37682, 35542, 20525, 21644, + 35441, 27498, 36036, 33031, 24785, 26528, 40434, + 20121, 20120, 39952, 35435, 34241, 34152, 26880, + 28286, 30871, 33109, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 24332, 19984, + 19989, 20010, 20017, 20022, 20028, 20031, 20034, + 20054, 20056, 20098, 20101, 35947, 20106, 33298, + 24333, 20110, 20126, 20127, 20128, 20130, 20144, + 20147, 20150, 20174, 20173, 20164, 20166, 20162, + 20183, 20190, 20205, 20191, 20215, 20233, 20314, + 20272, 20315, 20317, 20311, 20295, 20342, 20360, + 20367, 20376, 20347, 20329, 20336, 20369, 20335, + 20358, 20374, 20760, 20436, 20447, 20430, 20440, + 20443, 20433, 20442, 20432, 20452, 20453, 20506, + 20520, 20500, 20522, 20517, 20485, 20252, 20470, + 20513, 20521, 20524, 20478, 20463, 20497, 20486, + 20547, 20551, 26371, 20565, 20560, 20552, 20570, + 20566, 20588, 20600, 20608, 20634, 20613, 20660, + 20658, 20681, 20682, 20659, 20674, 20694, 20702, + 20709, 20717, 20707, 20718, 20729, 20725, 20745, + 20737, 20738, 20758, 20757, 20756, 20762, 20769, + 20794, 20791, 20796, 20795, 20799, 20800, 20818, + 20812, 20820, 20834, 31480, 20841, 20842, 20846, + 20864, 20866, 22232, 20876, 20873, 20879, 20881, + 20883, 20885, 20886, 20900, 20902, 20898, 20905, + 20906, 20907, 20915, 20913, 20914, 20912, 20917, + 20925, 20933, 20937, 20955, 20960, 34389, 20969, + 20973, 20976, 20981, 20990, 20996, 21003, 21012, + 21006, 21031, 21034, 21038, 21043, 21049, 21071, + 21060, 21067, 21068, 21086, 21076, 21098, 21108, + 21097, 21107, 21119, 21117, 21133, 21140, 21138, + 21105, 21128, 21137, 36776, 36775, 21164, 21165, + 21180, 21173, 21185, 21197, 21207, 21214, 21219, + 21222, 39149, 21216, 21235, 21237, 21240, 21241, + 21254, 21256, 30008, 21261, 21264, 21263, 21269, + 21274, 21283, 21295, 21297, 21299, 21304, 21312, + 21318, 21317, 19991, 21321, 21325, 20950, 21342, + 21353, 21358, 22808, 21371, 21367, 21378, 21398, + 21408, 21414, 21413, 21422, 21424, 21430, 21443, + 31762, 38617, 21471, 26364, 29166, 21486, 21480, + 21485, 21498, 21505, 21565, 21568, 21548, 21549, + 21564, 21550, 21558, 21545, 21533, 21582, 21647, + 21621, 21646, 21599, 21617, 21623, 21616, 21650, + 21627, 21632, 21622, 21636, 21648, 21638, 21703, + 21666, 21688, 21669, 21676, 21700, 21704, 21672, + 21675, 21698, 21668, 21694, 21692, 21720, 21733, + 21734, 21775, 21780, 21757, 21742, 21741, 21754, + 21730, 21817, 21824, 21859, 21836, 21806, 21852, + 21829, 21846, 21847, 21816, 21811, 21853, 21913, + 21888, 21679, 21898, 21919, 21883, 21886, 21912, + 21918, 21934, 21884, 21891, 21929, 21895, 21928, + 21978, 21957, 21983, 21956, 21980, 21988, 21972, + 22036, 22007, 22038, 22014, 22013, 22043, 22009, + 22094, 22096, 29151, 22068, 22070, 22066, 22072, + 22123, 22116, 22063, 22124, 22122, 22150, 22144, + 22154, 22176, 22164, 22159, 22181, 22190, 22198, + 22196, 22210, 22204, 22209, 22211, 22208, 22216, + 22222, 22225, 22227, 22231, 22254, 22265, 22272, + 22271, 22276, 22281, 22280, 22283, 22285, 22291, + 22296, 22294, 21959, 22300, 22310, 22327, 22328, + 22350, 22331, 22336, 22351, 22377, 22464, 22408, + 22369, 22399, 22409, 22419, 22432, 22451, 22436, + 22442, 22448, 22467, 22470, 22484, 22482, 22483, + 22538, 22486, 22499, 22539, 22553, 22557, 22642, + 22561, 22626, 22603, 22640, 27584, 22610, 22589, + 22649, 22661, 22713, 22687, 22699, 22714, 22750, + 22715, 22712, 22702, 22725, 22739, 22737, 22743, + 22745, 22744, 22757, 22748, 22756, 22751, 22767, + 22778, 22777, 22779, 22780, 22781, 22786, 22794, + 22800, 22811, 26790, 22821, 22828, 22829, 22834, + 22840, 22846, 31442, 22869, 22864, 22862, 22874, + 22872, 22882, 22880, 22887, 22892, 22889, 22904, + 22913, 22941, 20318, 20395, 22947, 22962, 22982, + 23016, 23004, 22925, 23001, 23002, 23077, 23071, + 23057, 23068, 23049, 23066, 23104, 23148, 23113, + 23093, 23094, 23138, 23146, 23194, 23228, 23230, + 23243, 23234, 23229, 23267, 23255, 23270, 23273, + 23254, 23290, 23291, 23308, 23307, 23318, 23346, + 23248, 23338, 23350, 23358, 23363, 23365, 23360, + 23377, 23381, 23386, 23387, 23397, 23401, 23408, + 23411, 23413, 23416, 25992, 23418, 23424, 23427, + 23462, 23480, 23491, 23495, 23497, 23508, 23504, + 23524, 23526, 23522, 23518, 23525, 23531, 23536, + 23542, 23539, 23557, 23559, 23560, 23565, 23571, + 23584, 23586, 23592, 23608, 23609, 23617, 23622, + 23630, 23635, 23632, 23631, 23409, 23660, 23662, + 20066, 23670, 23673, 23692, 23697, 23700, 22939, + 23723, 23739, 23734, 23740, 23735, 23749, 23742, + 23751, 23769, 23785, 23805, 23802, 23789, 23948, + 23786, 23819, 23829, 23831, 23900, 23839, 23835, + 23825, 23828, 23842, 23834, 23833, 23832, 23884, + 23890, 23886, 23883, 23916, 23923, 23926, 23943, + 23940, 23938, 23970, 23965, 23980, 23982, 23997, + 23952, 23991, 23996, 24009, 24013, 24019, 24018, + 24022, 24027, 24043, 24050, 24053, 24075, 24090, + 24089, 24081, 24091, 24118, 24119, 24132, 24131, + 24128, 24142, 24151, 24148, 24159, 24162, 24164, + 24135, 24181, 24182, 24186, 40636, 24191, 24224, + 24257, 24258, 24264, 24272, 24271, 24278, 24291, + 24285, 24282, 24283, 24290, 24289, 24296, 24297, + 24300, 24305, 24307, 24304, 24308, 24312, 24318, + 24323, 24329, 24413, 24412, 24331, 24337, 24342, + 24361, 24365, 24376, 24385, 24392, 24396, 24398, + 24367, 24401, 24406, 24407, 24409, 24417, 24429, + 24435, 24439, 24451, 24450, 24447, 24458, 24456, + 24465, 24455, 24478, 24473, 24472, 24480, 24488, + 24493, 24508, 24534, 24571, 24548, 24568, 24561, + 24541, 24755, 24575, 24609, 24672, 24601, 24592, + 24617, 24590, 24625, 24603, 24597, 24619, 24614, + 24591, 24634, 24666, 24641, 24682, 24695, 24671, + 24650, 24646, 24653, 24675, 24643, 24676, 24642, + 24684, 24683, 24665, 24705, 24717, 24807, 24707, + 24730, 24708, 24731, 24726, 24727, 24722, 24743, + 24715, 24801, 24760, 24800, 24787, 24756, 24560, + 24765, 24774, 24757, 24792, 24909, 24853, 24838, + 24822, 24823, 24832, 24820, 24826, 24835, 24865, + 24827, 24817, 24845, 24846, 24903, 24894, 24872, + 24871, 24906, 24895, 24892, 24876, 24884, 24893, + 24898, 24900, 24947, 24951, 24920, 24921, 24922, + 24939, 24948, 24943, 24933, 24945, 24927, 24925, + 24915, 24949, 24985, 24982, 24967, 25004, 24980, + 24986, 24970, 24977, 25003, 25006, 25036, 25034, + 25033, 25079, 25032, 25027, 25030, 25018, 25035, + 32633, 25037, 25062, 25059, 25078, 25082, 25076, + 25087, 25085, 25084, 25086, 25088, 25096, 25097, + 25101, 25100, 25108, 25115, 25118, 25121, 25130, + 25134, 25136, 25138, 25139, 25153, 25166, 25182, + 25187, 25179, 25184, 25192, 25212, 25218, 25225, + 25214, 25234, 25235, 25238, 25300, 25219, 25236, + 25303, 25297, 25275, 25295, 25343, 25286, 25812, + 25288, 25308, 25292, 25290, 25282, 25287, 25243, + 25289, 25356, 25326, 25329, 25383, 25346, 25352, + 25327, 25333, 25424, 25406, 25421, 25628, 25423, + 25494, 25486, 25472, 25515, 25462, 25507, 25487, + 25481, 25503, 25525, 25451, 25449, 25534, 25577, + 25536, 25542, 25571, 25545, 25554, 25590, 25540, + 25622, 25652, 25606, 25619, 25638, 25654, 25885, + 25623, 25640, 25615, 25703, 25711, 25718, 25678, + 25898, 25749, 25747, 25765, 25769, 25736, 25788, + 25818, 25810, 25797, 25799, 25787, 25816, 25794, + 25841, 25831, 33289, 25824, 25825, 25260, 25827, + 25839, 25900, 25846, 25844, 25842, 25850, 25856, + 25853, 25880, 25884, 25861, 25892, 25891, 25899, + 25908, 25909, 25911, 25910, 25912, 30027, 25928, + 25942, 25941, 25933, 25944, 25950, 25949, 25970, + 25976, 25986, 25987, 35722, 26011, 26015, 26027, + 26039, 26051, 26054, 26049, 26052, 26060, 26066, + 26075, 26073, 26080, 26081, 26097, 26482, 26122, + 26115, 26107, 26483, 26165, 26166, 26164, 26140, + 26191, 26180, 26185, 26177, 26206, 26205, 26212, + 26215, 26216, 26207, 26210, 26224, 26243, 26248, + 26254, 26249, 26244, 26264, 26269, 26305, 26297, + 26313, 26302, 26300, 26308, 26296, 26326, 26330, + 26336, 26175, 26342, 26345, 26352, 26357, 26359, + 26383, 26390, 26398, 26406, 26407, 38712, 26414, + 26431, 26422, 26433, 26424, 26423, 26438, 26462, + 26464, 26457, 26467, 26468, 26505, 26480, 26537, + 26492, 26474, 26508, 26507, 26534, 26529, 26501, + 26551, 26607, 26548, 26604, 26547, 26601, 26552, + 26596, 26590, 26589, 26594, 26606, 26553, 26574, + 26566, 26599, 27292, 26654, 26694, 26665, 26688, + 26701, 26674, 26702, 26803, 26667, 26713, 26723, + 26743, 26751, 26783, 26767, 26797, 26772, 26781, + 26779, 26755, 27310, 26809, 26740, 26805, 26784, + 26810, 26895, 26765, 26750, 26881, 26826, 26888, + 26840, 26914, 26918, 26849, 26892, 26829, 26836, + 26855, 26837, 26934, 26898, 26884, 26839, 26851, + 26917, 26873, 26848, 26863, 26920, 26922, 26906, + 26915, 26913, 26822, 27001, 26999, 26972, 27000, + 26987, 26964, 27006, 26990, 26937, 26996, 26941, + 26969, 26928, 26977, 26974, 26973, 27009, 26986, + 27058, 27054, 27088, 27071, 27073, 27091, 27070, + 27086, 23528, 27082, 27101, 27067, 27075, 27047, + 27182, 27025, 27040, 27036, 27029, 27060, 27102, + 27112, 27138, 27163, 27135, 27402, 27129, 27122, + 27111, 27141, 27057, 27166, 27117, 27156, 27115, + 27146, 27154, 27329, 27171, 27155, 27204, 27148, + 27250, 27190, 27256, 27207, 27234, 27225, 27238, + 27208, 27192, 27170, 27280, 27277, 27296, 27268, + 27298, 27299, 27287, 34327, 27323, 27331, 27330, + 27320, 27315, 27308, 27358, 27345, 27359, 27306, + 27354, 27370, 27387, 27397, 34326, 27386, 27410, + 27414, 39729, 27423, 27448, 27447, 30428, 27449, + 39150, 27463, 27459, 27465, 27472, 27481, 27476, + 27483, 27487, 27489, 27512, 27513, 27519, 27520, + 27524, 27523, 27533, 27544, 27541, 27550, 27556, + 27562, 27563, 27567, 27570, 27569, 27571, 27575, + 27580, 27590, 27595, 27603, 27615, 27628, 27627, + 27635, 27631, 40638, 27656, 27667, 27668, 27675, + 27684, 27683, 27742, 27733, 27746, 27754, 27778, + 27789, 27802, 27777, 27803, 27774, 27752, 27763, + 27794, 27792, 27844, 27889, 27859, 27837, 27863, + 27845, 27869, 27822, 27825, 27838, 27834, 27867, + 27887, 27865, 27882, 27935, 34893, 27958, 27947, + 27965, 27960, 27929, 27957, 27955, 27922, 27916, + 28003, 28051, 28004, 27994, 28025, 27993, 28046, + 28053, 28644, 28037, 28153, 28181, 28170, 28085, + 28103, 28134, 28088, 28102, 28140, 28126, 28108, + 28136, 28114, 28101, 28154, 28121, 28132, 28117, + 28138, 28142, 28205, 28270, 28206, 28185, 28274, + 28255, 28222, 28195, 28267, 28203, 28278, 28237, + 28191, 28227, 28218, 28238, 28196, 28415, 28189, + 28216, 28290, 28330, 28312, 28361, 28343, 28371, + 28349, 28335, 28356, 28338, 28372, 28373, 28303, + 28325, 28354, 28319, 28481, 28433, 28748, 28396, + 28408, 28414, 28479, 28402, 28465, 28399, 28466, + 28364, 28478, 28435, 28407, 28550, 28538, 28536, + 28545, 28544, 28527, 28507, 28659, 28525, 28546, + 28540, 28504, 28558, 28561, 28610, 28518, 28595, + 28579, 28577, 28580, 28601, 28614, 28586, 28639, + 28629, 28652, 28628, 28632, 28657, 28654, 28635, + 28681, 28683, 28666, 28689, 28673, 28687, 28670, + 28699, 28698, 28532, 28701, 28696, 28703, 28720, + 28734, 28722, 28753, 28771, 28825, 28818, 28847, + 28913, 28844, 28856, 28851, 28846, 28895, 28875, + 28893, 28889, 28937, 28925, 28956, 28953, 29029, + 29013, 29064, 29030, 29026, 29004, 29014, 29036, + 29071, 29179, 29060, 29077, 29096, 29100, 29143, + 29113, 29118, 29138, 29129, 29140, 29134, 29152, + 29164, 29159, 29173, 29180, 29177, 29183, 29197, + 29200, 29211, 29224, 29229, 29228, 29232, 29234, + 29243, 29244, 29247, 29248, 29254, 29259, 29272, + 29300, 29310, 29314, 29313, 29319, 29330, 29334, + 29346, 29351, 29369, 29362, 29379, 29382, 29380, + 29390, 29394, 29410, 29408, 29409, 29433, 29431, + 20495, 29463, 29450, 29468, 29462, 29469, 29492, + 29487, 29481, 29477, 29502, 29518, 29519, 40664, + 29527, 29546, 29544, 29552, 29560, 29557, 29563, + 29562, 29640, 29619, 29646, 29627, 29632, 29669, + 29678, 29662, 29858, 29701, 29807, 29733, 29688, + 29746, 29754, 29781, 29759, 29791, 29785, 29761, + 29788, 29801, 29808, 29795, 29802, 29814, 29822, + 29835, 29854, 29863, 29898, 29903, 29908, 29681, + 29920, 29923, 29927, 29929, 29934, 29938, 29936, + 29937, 29944, 29943, 29956, 29955, 29957, 29964, + 29966, 29965, 29973, 29971, 29982, 29990, 29996, + 30012, 30020, 30029, 30026, 30025, 30043, 30022, + 30042, 30057, 30052, 30055, 30059, 30061, 30072, + 30070, 30086, 30087, 30068, 30090, 30089, 30082, + 30100, 30106, 30109, 30117, 30115, 30146, 30131, + 30147, 30133, 30141, 30136, 30140, 30129, 30157, + 30154, 30162, 30169, 30179, 30174, 30206, 30207, + 30204, 30209, 30192, 30202, 30194, 30195, 30219, + 30221, 30217, 30239, 30247, 30240, 30241, 30242, + 30244, 30260, 30256, 30267, 30279, 30280, 30278, + 30300, 30296, 30305, 30306, 30312, 30313, 30314, + 30311, 30316, 30320, 30322, 30326, 30328, 30332, + 30336, 30339, 30344, 30347, 30350, 30358, 30355, + 30361, 30362, 30384, 30388, 30392, 30393, 30394, + 30402, 30413, 30422, 30418, 30430, 30433, 30437, + 30439, 30442, 34351, 30459, 30472, 30471, 30468, + 30505, 30500, 30494, 30501, 30502, 30491, 30519, + 30520, 30535, 30554, 30568, 30571, 30555, 30565, + 30591, 30590, 30585, 30606, 30603, 30609, 30624, + 30622, 30640, 30646, 30649, 30655, 30652, 30653, + 30651, 30663, 30669, 30679, 30682, 30684, 30691, + 30702, 30716, 30732, 30738, 31014, 30752, 31018, + 30789, 30862, 30836, 30854, 30844, 30874, 30860, + 30883, 30901, 30890, 30895, 30929, 30918, 30923, + 30932, 30910, 30908, 30917, 30922, 30956, 30951, + 30938, 30973, 30964, 30983, 30994, 30993, 31001, + 31020, 31019, 31040, 31072, 31063, 31071, 31066, + 31061, 31059, 31098, 31103, 31114, 31133, 31143, + 40779, 31146, 31150, 31155, 31161, 31162, 31177, + 31189, 31207, 31212, 31201, 31203, 31240, 31245, + 31256, 31257, 31264, 31263, 31104, 31281, 31291, + 31294, 31287, 31299, 31319, 31305, 31329, 31330, + 31337, 40861, 31344, 31353, 31357, 31368, 31383, + 31381, 31384, 31382, 31401, 31432, 31408, 31414, + 31429, 31428, 31423, 36995, 31431, 31434, 31437, + 31439, 31445, 31443, 31449, 31450, 31453, 31457, + 31458, 31462, 31469, 31472, 31490, 31503, 31498, + 31494, 31539, 31512, 31513, 31518, 31541, 31528, + 31542, 31568, 31610, 31492, 31565, 31499, 31564, + 31557, 31605, 31589, 31604, 31591, 31600, 31601, + 31596, 31598, 31645, 31640, 31647, 31629, 31644, + 31642, 31627, 31634, 31631, 31581, 31641, 31691, + 31681, 31692, 31695, 31668, 31686, 31709, 31721, + 31761, 31764, 31718, 31717, 31840, 31744, 31751, + 31763, 31731, 31735, 31767, 31757, 31734, 31779, + 31783, 31786, 31775, 31799, 31787, 31805, 31820, + 31811, 31828, 31823, 31808, 31824, 31832, 31839, + 31844, 31830, 31845, 31852, 31861, 31875, 31888, + 31908, 31917, 31906, 31915, 31905, 31912, 31923, + 31922, 31921, 31918, 31929, 31933, 31936, 31941, + 31938, 31960, 31954, 31964, 31970, 39739, 31983, + 31986, 31988, 31990, 31994, 32006, 32002, 32028, + 32021, 32010, 32069, 32075, 32046, 32050, 32063, + 32053, 32070, 32115, 32086, 32078, 32114, 32104, + 32110, 32079, 32099, 32147, 32137, 32091, 32143, + 32125, 32155, 32186, 32174, 32163, 32181, 32199, + 32189, 32171, 32317, 32162, 32175, 32220, 32184, + 32159, 32176, 32216, 32221, 32228, 32222, 32251, + 32242, 32225, 32261, 32266, 32291, 32289, 32274, + 32305, 32287, 32265, 32267, 32290, 32326, 32358, + 32315, 32309, 32313, 32323, 32311, 32306, 32314, + 32359, 32349, 32342, 32350, 32345, 32346, 32377, + 32362, 32361, 32380, 32379, 32387, 32213, 32381, + 36782, 32383, 32392, 32393, 32396, 32402, 32400, + 32403, 32404, 32406, 32398, 32411, 32412, 32568, + 32570, 32581, 32588, 32589, 32590, 32592, 32593, + 32597, 32596, 32600, 32607, 32608, 32616, 32617, + 32615, 32632, 32642, 32646, 32643, 32648, 32647, + 32652, 32660, 32670, 32669, 32666, 32675, 32687, + 32690, 32697, 32686, 32694, 32696, 35697, 32709, + 32710, 32714, 32725, 32724, 32737, 32742, 32745, + 32755, 32761, 39132, 32774, 32772, 32779, 32786, + 32792, 32793, 32796, 32801, 32808, 32831, 32827, + 32842, 32838, 32850, 32856, 32858, 32863, 32866, + 32872, 32883, 32882, 32880, 32886, 32889, 32893, + 32895, 32900, 32902, 32901, 32923, 32915, 32922, + 32941, 20880, 32940, 32987, 32997, 32985, 32989, + 32964, 32986, 32982, 33033, 33007, 33009, 33051, + 33065, 33059, 33071, 33099, 38539, 33094, 33086, + 33107, 33105, 33020, 33137, 33134, 33125, 33126, + 33140, 33155, 33160, 33162, 33152, 33154, 33184, + 33173, 33188, 33187, 33119, 33171, 33193, 33200, + 33205, 33214, 33208, 33213, 33216, 33218, 33210, + 33225, 33229, 33233, 33241, 33240, 33224, 33242, + 33247, 33248, 33255, 33274, 33275, 33278, 33281, + 33282, 33285, 33287, 33290, 33293, 33296, 33302, + 33321, 33323, 33336, 33331, 33344, 33369, 33368, + 33373, 33370, 33375, 33380, 33378, 33384, 33386, + 33387, 33326, 33393, 33399, 33400, 33406, 33421, + 33426, 33451, 33439, 33467, 33452, 33505, 33507, + 33503, 33490, 33524, 33523, 33530, 33683, 33539, + 33531, 33529, 33502, 33542, 33500, 33545, 33497, + 33589, 33588, 33558, 33586, 33585, 33600, 33593, + 33616, 33605, 33583, 33579, 33559, 33560, 33669, + 33690, 33706, 33695, 33698, 33686, 33571, 33678, + 33671, 33674, 33660, 33717, 33651, 33653, 33696, + 33673, 33704, 33780, 33811, 33771, 33742, 33789, + 33795, 33752, 33803, 33729, 33783, 33799, 33760, + 33778, 33805, 33826, 33824, 33725, 33848, 34054, + 33787, 33901, 33834, 33852, 34138, 33924, 33911, + 33899, 33965, 33902, 33922, 33897, 33862, 33836, + 33903, 33913, 33845, 33994, 33890, 33977, 33983, + 33951, 34009, 33997, 33979, 34010, 34000, 33985, + 33990, 34006, 33953, 34081, 34047, 34036, 34071, + 34072, 34092, 34079, 34069, 34068, 34044, 34112, + 34147, 34136, 34120, 34113, 34306, 34123, 34133, + 34176, 34212, 34184, 34193, 34186, 34216, 34157, + 34196, 34203, 34282, 34183, 34204, 34167, 34174, + 34192, 34249, 34234, 34255, 34233, 34256, 34261, + 34269, 34277, 34268, 34297, 34314, 34323, 34315, + 34302, 34298, 34310, 34338, 34330, 34352, 34367, + 34381, 20053, 34388, 34399, 34407, 34417, 34451, + 34467, 34473, 34474, 34443, 34444, 34486, 34479, + 34500, 34502, 34480, 34505, 34851, 34475, 34516, + 34526, 34537, 34540, 34527, 34523, 34543, 34578, + 34566, 34568, 34560, 34563, 34555, 34577, 34569, + 34573, 34553, 34570, 34612, 34623, 34615, 34619, + 34597, 34601, 34586, 34656, 34655, 34680, 34636, + 34638, 34676, 34647, 34664, 34670, 34649, 34643, + 34659, 34666, 34821, 34722, 34719, 34690, 34735, + 34763, 34749, 34752, 34768, 38614, 34731, 34756, + 34739, 34759, 34758, 34747, 34799, 34802, 34784, + 34831, 34829, 34814, 34806, 34807, 34830, 34770, + 34833, 34838, 34837, 34850, 34849, 34865, 34870, + 34873, 34855, 34875, 34884, 34882, 34898, 34905, + 34910, 34914, 34923, 34945, 34942, 34974, 34933, + 34941, 34997, 34930, 34946, 34967, 34962, 34990, + 34969, 34978, 34957, 34980, 34992, 35007, 34993, + 35011, 35012, 35028, 35032, 35033, 35037, 35065, + 35074, 35068, 35060, 35048, 35058, 35076, 35084, + 35082, 35091, 35139, 35102, 35109, 35114, 35115, + 35137, 35140, 35131, 35126, 35128, 35148, 35101, + 35168, 35166, 35174, 35172, 35181, 35178, 35183, + 35188, 35191, 35198, 35203, 35208, 35210, 35219, + 35224, 35233, 35241, 35238, 35244, 35247, 35250, + 35258, 35261, 35263, 35264, 35290, 35292, 35293, + 35303, 35316, 35320, 35331, 35350, 35344, 35340, + 35355, 35357, 35365, 35382, 35393, 35419, 35410, + 35398, 35400, 35452, 35437, 35436, 35426, 35461, + 35458, 35460, 35496, 35489, 35473, 35493, 35494, + 35482, 35491, 35524, 35533, 35522, 35546, 35563, + 35571, 35559, 35556, 35569, 35604, 35552, 35554, + 35575, 35550, 35547, 35596, 35591, 35610, 35553, + 35606, 35600, 35607, 35616, 35635, 38827, 35622, + 35627, 35646, 35624, 35649, 35660, 35663, 35662, + 35657, 35670, 35675, 35674, 35691, 35679, 35692, + 35695, 35700, 35709, 35712, 35724, 35726, 35730, + 35731, 35734, 35737, 35738, 35898, 35905, 35903, + 35912, 35916, 35918, 35920, 35925, 35938, 35948, + 35960, 35962, 35970, 35977, 35973, 35978, 35981, + 35982, 35988, 35964, 35992, 25117, 36013, 36010, + 36029, 36018, 36019, 36014, 36022, 36040, 36033, + 36068, 36067, 36058, 36093, 36090, 36091, 36100, + 36101, 36106, 36103, 36111, 36109, 36112, 40782, + 36115, 36045, 36116, 36118, 36199, 36205, 36209, + 36211, 36225, 36249, 36290, 36286, 36282, 36303, + 36314, 36310, 36300, 36315, 36299, 36330, 36331, + 36319, 36323, 36348, 36360, 36361, 36351, 36381, + 36382, 36368, 36383, 36418, 36405, 36400, 36404, + 36426, 36423, 36425, 36428, 36432, 36424, 36441, + 36452, 36448, 36394, 36451, 36437, 36470, 36466, + 36476, 36481, 36487, 36485, 36484, 36491, 36490, + 36499, 36497, 36500, 36505, 36522, 36513, 36524, + 36528, 36550, 36529, 36542, 36549, 36552, 36555, + 36571, 36579, 36604, 36603, 36587, 36606, 36618, + 36613, 36629, 36626, 36633, 36627, 36636, 36639, + 36635, 36620, 36646, 36659, 36667, 36665, 36677, + 36674, 36670, 36684, 36681, 36678, 36686, 36695, + 36700, 36706, 36707, 36708, 36764, 36767, 36771, + 36781, 36783, 36791, 36826, 36837, 36834, 36842, + 36847, 36999, 36852, 36869, 36857, 36858, 36881, + 36885, 36897, 36877, 36894, 36886, 36875, 36903, + 36918, 36917, 36921, 36856, 36943, 36944, 36945, + 36946, 36878, 36937, 36926, 36950, 36952, 36958, + 36968, 36975, 36982, 38568, 36978, 36994, 36989, + 36993, 36992, 37002, 37001, 37007, 37032, 37039, + 37041, 37045, 37090, 37092, 25160, 37083, 37122, + 37138, 37145, 37170, 37168, 37194, 37206, 37208, + 37219, 37221, 37225, 37235, 37234, 37259, 37257, + 37250, 37282, 37291, 37295, 37290, 37301, 37300, + 37306, 37312, 37313, 37321, 37323, 37328, 37334, + 37343, 37345, 37339, 37372, 37365, 37366, 37406, + 37375, 37396, 37420, 37397, 37393, 37470, 37463, + 37445, 37449, 37476, 37448, 37525, 37439, 37451, + 37456, 37532, 37526, 37523, 37531, 37466, 37583, + 37561, 37559, 37609, 37647, 37626, 37700, 37678, + 37657, 37666, 37658, 37667, 37690, 37685, 37691, + 37724, 37728, 37756, 37742, 37718, 37808, 37804, + 37805, 37780, 37817, 37846, 37847, 37864, 37861, + 37848, 37827, 37853, 37840, 37832, 37860, 37914, + 37908, 37907, 37891, 37895, 37904, 37942, 37931, + 37941, 37921, 37946, 37953, 37970, 37956, 37979, + 37984, 37986, 37982, 37994, 37417, 38000, 38005, + 38007, 38013, 37978, 38012, 38014, 38017, 38015, + 38274, 38279, 38282, 38292, 38294, 38296, 38297, + 38304, 38312, 38311, 38317, 38332, 38331, 38329, + 38334, 38346, 28662, 38339, 38349, 38348, 38357, + 38356, 38358, 38364, 38369, 38373, 38370, 38433, + 38440, 38446, 38447, 38466, 38476, 38479, 38475, + 38519, 38492, 38494, 38493, 38495, 38502, 38514, + 38508, 38541, 38552, 38549, 38551, 38570, 38567, + 38577, 38578, 38576, 38580, 38582, 38584, 38585, + 38606, 38603, 38601, 38605, 35149, 38620, 38669, + 38613, 38649, 38660, 38662, 38664, 38675, 38670, + 38673, 38671, 38678, 38681, 38692, 38698, 38704, + 38713, 38717, 38718, 38724, 38726, 38728, 38722, + 38729, 38748, 38752, 38756, 38758, 38760, 21202, + 38763, 38769, 38777, 38789, 38780, 38785, 38778, + 38790, 38795, 38799, 38800, 38812, 38824, 38822, + 38819, 38835, 38836, 38851, 38854, 38856, 38859, + 38876, 38893, 40783, 38898, 31455, 38902, 38901, + 38927, 38924, 38968, 38948, 38945, 38967, 38973, + 38982, 38991, 38987, 39019, 39023, 39024, 39025, + 39028, 39027, 39082, 39087, 39089, 39094, 39108, + 39107, 39110, 39145, 39147, 39171, 39177, 39186, + 39188, 39192, 39201, 39197, 39198, 39204, 39200, + 39212, 39214, 39229, 39230, 39234, 39241, 39237, + 39248, 39243, 39249, 39250, 39244, 39253, 39319, + 39320, 39333, 39341, 39342, 39356, 39391, 39387, + 39389, 39384, 39377, 39405, 39406, 39409, 39410, + 39419, 39416, 39425, 39439, 39429, 39394, 39449, + 39467, 39479, 39493, 39490, 39488, 39491, 39486, + 39509, 39501, 39515, 39511, 39519, 39522, 39525, + 39524, 39529, 39531, 39530, 39597, 39600, 39612, + 39616, 39631, 39633, 39635, 39636, 39646, 39647, + 39650, 39651, 39654, 39663, 39659, 39662, 39668, + 39665, 39671, 39675, 39686, 39704, 39706, 39711, + 39714, 39715, 39717, 39719, 39720, 39721, 39722, + 39726, 39727, 39730, 39748, 39747, 39759, 39757, + 39758, 39761, 39768, 39796, 39827, 39811, 39825, + 39830, 39831, 39839, 39840, 39848, 39860, 39872, + 39882, 39865, 39878, 39887, 39889, 39890, 39907, + 39906, 39908, 39892, 39905, 39994, 39922, 39921, + 39920, 39957, 39956, 39945, 39955, 39948, 39942, + 39944, 39954, 39946, 39940, 39982, 39963, 39973, + 39972, 39969, 39984, 40007, 39986, 40006, 39998, + 40026, 40032, 40039, 40054, 40056, 40167, 40172, + 40176, 40201, 40200, 40171, 40195, 40198, 40234, + 40230, 40367, 40227, 40223, 40260, 40213, 40210, + 40257, 40255, 40254, 40262, 40264, 40285, 40286, + 40292, 40273, 40272, 40281, 40306, 40329, 40327, + 40363, 40303, 40314, 40346, 40356, 40361, 40370, + 40388, 40385, 40379, 40376, 40378, 40390, 40399, + 40386, 40409, 40403, 40440, 40422, 40429, 40431, + 40445, 40474, 40475, 40478, 40565, 40569, 40573, + 40577, 40584, 40587, 40588, 40594, 40597, 40593, + 40605, 40613, 40617, 40632, 40618, 40621, 38753, + 40652, 40654, 40655, 40656, 40660, 40668, 40670, + 40669, 40672, 40677, 40680, 40687, 40692, 40694, + 40695, 40697, 40699, 40700, 40701, 40711, 40712, + 30391, 40725, 40737, 40748, 40766, 40778, 40786, + 40788, 40803, 40799, 40800, 40801, 40806, 40807, + 40812, 40810, 40823, 40818, 40822, 40853, 40860, + 40864, 22575, 27079, 36953, 29796, 20956, 29081, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + 32394, 35100, 37704, 37512, 34012, 20425, 28859, + 26161, 26824, 37625, 26363, 24389, 20008, 20193, + 20220, 20224, 20227, 20281, 20310, 20370, 20362, + 20378, 20372, 20429, 20544, 20514, 20479, 20510, + 20550, 20592, 20546, 20628, 20724, 20696, 20810, + 20836, 20893, 20926, 20972, 21013, 21148, 21158, + 21184, 21211, 21248, 21255, 21284, 21362, 21395, + 21426, 21469, 64014, 21660, 21642, 21673, 21759, + 21894, 22361, 22373, 22444, 22472, 22471, 64015, + 64016, 22686, 22706, 22795, 22867, 22875, 22877, + 22883, 22948, 22970, 23382, 23488, 29999, 23512, + 23532, 23582, 23718, 23738, 23797, 23847, 23891, + 64017, 23874, 23917, 23992, 23993, 24016, 24353, + 24372, 24423, 24503, 24542, 24669, 24709, 24714, + 24798, 24789, 24864, 24818, 24849, 24887, 24880, + 24984, 25107, 25254, 25589, 25696, 25757, 25806, + 25934, 26112, 26133, 26171, 26121, 26158, 26142, + 26148, 26213, 26199, 26201, 64018, 26227, 26265, + 26272, 26290, 26303, 26362, 26382, 63785, 26470, + 26555, 26706, 26560, 26625, 26692, 26831, 64019, + 26984, 64020, 27032, 27106, 27184, 27243, 27206, + 27251, 27262, 27362, 27364, 27606, 27711, 27740, + 27782, 27759, 27866, 27908, 28039, 28015, 28054, + 28076, 28111, 28152, 28146, 28156, 28217, 28252, + 28199, 28220, 28351, 28552, 28597, 28661, 28677, + 28679, 28712, 28805, 28843, 28943, 28932, 29020, + 28998, 28999, 64021, 29121, 29182, 29361, 29374, + 29476, 64022, 29559, 29629, 29641, 29654, 29667, + 29650, 29703, 29685, 29734, 29738, 29737, 29742, + 29794, 29833, 29855, 29953, 30063, 30338, 30364, + 30366, 30363, 30374, 64023, 30534, 21167, 30753, + 30798, 30820, 30842, 31024, 64024, 64025, 64026, + 31124, 64027, 31131, 31441, 31463, 64028, 31467, + 31646, 64029, 32072, 32092, 32183, 32160, 32214, + 32338, 32583, 32673, 64030, 33537, 33634, 33663, + 33735, 33782, 33864, 33972, 34131, 34137, 34155, + 64031, 34224, 64032, 64033, 34823, 35061, 35346, + 35383, 35449, 35495, 35518, 35551, 64034, 35574, + 35667, 35711, 36080, 36084, 36114, 36214, 64035, + 36559, 64036, 64037, 36967, 37086, 64038, 37141, + 37159, 37338, 37335, 37342, 37357, 37358, 37348, + 37349, 37382, 37392, 37386, 37434, 37440, 37436, + 37454, 37465, 37457, 37433, 37479, 37543, 37495, + 37496, 37607, 37591, 37593, 37584, 64039, 37589, + 37600, 37587, 37669, 37665, 37627, 64040, 37662, + 37631, 37661, 37634, 37744, 37719, 37796, 37830, + 37854, 37880, 37937, 37957, 37960, 38290, 63964, + 64041, 38557, 38575, 38707, 38715, 38723, 38733, + 38735, 38737, 38741, 38999, 39013, 64042, 64043, + 39207, 64044, 39326, 39502, 39641, 39644, 39797, + 39794, 39823, 39857, 39867, 39936, 40304, 40299, + 64045, 40473, 40657, null, null, 8560, 8561, 8562, + 8563, 8564, 8565, 8566, 8567, 8568, 8569, 65506, + 65508, 65287, 65282, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, 8560, + 8561, 8562, 8563, 8564, 8565, 8566, 8567, 8568, + 8569, 8544, 8545, 8546, 8547, 8548, 8549, 8550, + 8551, 8552, 8553, 65506, 65508, 65287, 65282, 12849, + 8470, 8481, 8757, 32394, 35100, 37704, 37512, 34012, + 20425, 28859, 26161, 26824, 37625, 26363, 24389, + 20008, 20193, 20220, 20224, 20227, 20281, 20310, + 20370, 20362, 20378, 20372, 20429, 20544, 20514, + 20479, 20510, 20550, 20592, 20546, 20628, 20724, + 20696, 20810, 20836, 20893, 20926, 20972, 21013, + 21148, 21158, 21184, 21211, 21248, 21255, 21284, + 21362, 21395, 21426, 21469, 64014, 21660, 21642, + 21673, 21759, 21894, 22361, 22373, 22444, 22472, + 22471, 64015, 64016, 22686, 22706, 22795, 22867, + 22875, 22877, 22883, 22948, 22970, 23382, 23488, + 29999, 23512, 23532, 23582, 23718, 23738, 23797, + 23847, 23891, 64017, 23874, 23917, 23992, 23993, + 24016, 24353, 24372, 24423, 24503, 24542, 24669, + 24709, 24714, 24798, 24789, 24864, 24818, 24849, + 24887, 24880, 24984, 25107, 25254, 25589, 25696, + 25757, 25806, 25934, 26112, 26133, 26171, 26121, + 26158, 26142, 26148, 26213, 26199, 26201, 64018, + 26227, 26265, 26272, 26290, 26303, 26362, 26382, + 63785, 26470, 26555, 26706, 26560, 26625, 26692, + 26831, 64019, 26984, 64020, 27032, 27106, 27184, + 27243, 27206, 27251, 27262, 27362, 27364, 27606, + 27711, 27740, 27782, 27759, 27866, 27908, 28039, + 28015, 28054, 28076, 28111, 28152, 28146, 28156, + 28217, 28252, 28199, 28220, 28351, 28552, 28597, + 28661, 28677, 28679, 28712, 28805, 28843, 28943, + 28932, 29020, 28998, 28999, 64021, 29121, 29182, + 29361, 29374, 29476, 64022, 29559, 29629, 29641, + 29654, 29667, 29650, 29703, 29685, 29734, 29738, + 29737, 29742, 29794, 29833, 29855, 29953, 30063, + 30338, 30364, 30366, 30363, 30374, 64023, 30534, + 21167, 30753, 30798, 30820, 30842, 31024, 64024, + 64025, 64026, 31124, 64027, 31131, 31441, 31463, + 64028, 31467, 31646, 64029, 32072, 32092, 32183, + 32160, 32214, 32338, 32583, 32673, 64030, 33537, + 33634, 33663, 33735, 33782, 33864, 33972, 34131, + 34137, 34155, 64031, 34224, 64032, 64033, 34823, + 35061, 35346, 35383, 35449, 35495, 35518, 35551, + 64034, 35574, 35667, 35711, 36080, 36084, 36114, + 36214, 64035, 36559, 64036, 64037, 36967, 37086, + 64038, 37141, 37159, 37338, 37335, 37342, 37357, + 37358, 37348, 37349, 37382, 37392, 37386, 37434, + 37440, 37436, 37454, 37465, 37457, 37433, 37479, + 37543, 37495, 37496, 37607, 37591, 37593, 37584, + 64039, 37589, 37600, 37587, 37669, 37665, 37627, + 64040, 37662, 37631, 37661, 37634, 37744, 37719, + 37796, 37830, 37854, 37880, 37937, 37957, 37960, + 38290, 63964, 64041, 38557, 38575, 38707, 38715, + 38723, 38733, 38735, 38737, 38741, 38999, 39013, + 64042, 64043, 39207, 64044, 39326, 39502, 39641, + 39644, 39797, 39794, 39823, 39857, 39867, 39936, + 40304, 40299, 64045, 40473, 40657, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null ], - jis0212: [ - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 728, - 711, - 184, - 729, - 733, - 175, - 731, - 730, - 65374, - 900, - 901, - null, - null, - null, - null, - null, - null, - null, - null, - 161, - 166, - 191, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 186, - 170, - 169, - 174, - 8482, - 164, - 8470, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 902, - 904, - 905, - 906, - 938, - null, - 908, - null, - 910, - 939, - null, - 911, - null, - null, - null, - null, - 940, - 941, - 942, - 943, - 970, - 912, - 972, - 962, - 973, - 971, - 944, - 974, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 1026, - 1027, - 1028, - 1029, - 1030, - 1031, - 1032, - 1033, - 1034, - 1035, - 1036, - 1038, - 1039, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 1106, - 1107, - 1108, - 1109, - 1110, - 1111, - 1112, - 1113, - 1114, - 1115, - 1116, - 1118, - 1119, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 198, - 272, - null, - 294, - null, - 306, - null, - 321, - 319, - null, - 330, - 216, - 338, - null, - 358, - 222, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 230, - 273, - 240, - 295, - 305, - 307, - 312, - 322, - 320, - 329, - 331, - 248, - 339, - 223, - 359, - 254, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 193, - 192, - 196, - 194, - 258, - 461, - 256, - 260, - 197, - 195, - 262, - 264, - 268, - 199, - 266, - 270, - 201, - 200, - 203, - 202, - 282, - 278, - 274, - 280, - null, - 284, - 286, - 290, - 288, - 292, - 205, - 204, - 207, - 206, - 463, - 304, - 298, - 302, - 296, - 308, - 310, - 313, - 317, - 315, - 323, - 327, - 325, - 209, - 211, - 210, - 214, - 212, - 465, - 336, - 332, - 213, - 340, - 344, - 342, - 346, - 348, - 352, - 350, - 356, - 354, - 218, - 217, - 220, - 219, - 364, - 467, - 368, - 362, - 370, - 366, - 360, - 471, - 475, - 473, - 469, - 372, - 221, - 376, - 374, - 377, - 381, - 379, - null, - null, - null, - null, - null, - null, - null, - 225, - 224, - 228, - 226, - 259, - 462, - 257, - 261, - 229, - 227, - 263, - 265, - 269, - 231, - 267, - 271, - 233, - 232, - 235, - 234, - 283, - 279, - 275, - 281, - 501, - 285, - 287, - null, - 289, - 293, - 237, - 236, - 239, - 238, - 464, - null, - 299, - 303, - 297, - 309, - 311, - 314, - 318, - 316, - 324, - 328, - 326, - 241, - 243, - 242, - 246, - 244, - 466, - 337, - 333, - 245, - 341, - 345, - 343, - 347, - 349, - 353, - 351, - 357, - 355, - 250, - 249, - 252, - 251, - 365, - 468, - 369, - 363, - 371, - 367, - 361, - 472, - 476, - 474, - 470, - 373, - 253, - 255, - 375, - 378, - 382, - 380, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 19970, - 19972, - 19973, - 19980, - 19986, - 19999, - 20003, - 20004, - 20008, - 20011, - 20014, - 20015, - 20016, - 20021, - 20032, - 20033, - 20036, - 20039, - 20049, - 20058, - 20060, - 20067, - 20072, - 20073, - 20084, - 20085, - 20089, - 20095, - 20109, - 20118, - 20119, - 20125, - 20143, - 20153, - 20163, - 20176, - 20186, - 20187, - 20192, - 20193, - 20194, - 20200, - 20207, - 20209, - 20211, - 20213, - 20221, - 20222, - 20223, - 20224, - 20226, - 20227, - 20232, - 20235, - 20236, - 20242, - 20245, - 20246, - 20247, - 20249, - 20270, - 20273, - 20320, - 20275, - 20277, - 20279, - 20281, - 20283, - 20286, - 20288, - 20290, - 20296, - 20297, - 20299, - 20300, - 20306, - 20308, - 20310, - 20312, - 20319, - 20323, - 20330, - 20332, - 20334, - 20337, - 20343, - 20344, - 20345, - 20346, - 20349, - 20350, - 20353, - 20354, - 20356, - 20357, - 20361, - 20362, - 20364, - 20366, - 20368, - 20370, - 20371, - 20372, - 20375, - 20377, - 20378, - 20382, - 20383, - 20402, - 20407, - 20409, - 20411, - 20412, - 20413, - 20414, - 20416, - 20417, - 20421, - 20422, - 20424, - 20425, - 20427, - 20428, - 20429, - 20431, - 20434, - 20444, - 20448, - 20450, - 20464, - 20466, - 20476, - 20477, - 20479, - 20480, - 20481, - 20484, - 20487, - 20490, - 20492, - 20494, - 20496, - 20499, - 20503, - 20504, - 20507, - 20508, - 20509, - 20510, - 20514, - 20519, - 20526, - 20528, - 20530, - 20531, - 20533, - 20544, - 20545, - 20546, - 20549, - 20550, - 20554, - 20556, - 20558, - 20561, - 20562, - 20563, - 20567, - 20569, - 20575, - 20576, - 20578, - 20579, - 20582, - 20583, - 20586, - 20589, - 20592, - 20593, - 20539, - 20609, - 20611, - 20612, - 20614, - 20618, - 20622, - 20623, - 20624, - 20626, - 20627, - 20628, - 20630, - 20635, - 20636, - 20638, - 20639, - 20640, - 20641, - 20642, - 20650, - 20655, - 20656, - 20665, - 20666, - 20669, - 20672, - 20675, - 20676, - 20679, - 20684, - 20686, - 20688, - 20691, - 20692, - 20696, - 20700, - 20701, - 20703, - 20706, - 20708, - 20710, - 20712, - 20713, - 20719, - 20721, - 20726, - 20730, - 20734, - 20739, - 20742, - 20743, - 20744, - 20747, - 20748, - 20749, - 20750, - 20722, - 20752, - 20759, - 20761, - 20763, - 20764, - 20765, - 20766, - 20771, - 20775, - 20776, - 20780, - 20781, - 20783, - 20785, - 20787, - 20788, - 20789, - 20792, - 20793, - 20802, - 20810, - 20815, - 20819, - 20821, - 20823, - 20824, - 20831, - 20836, - 20838, - 20862, - 20867, - 20868, - 20875, - 20878, - 20888, - 20893, - 20897, - 20899, - 20909, - 20920, - 20922, - 20924, - 20926, - 20927, - 20930, - 20936, - 20943, - 20945, - 20946, - 20947, - 20949, - 20952, - 20958, - 20962, - 20965, - 20974, - 20978, - 20979, - 20980, - 20983, - 20993, - 20994, - 20997, - 21010, - 21011, - 21013, - 21014, - 21016, - 21026, - 21032, - 21041, - 21042, - 21045, - 21052, - 21061, - 21065, - 21077, - 21079, - 21080, - 21082, - 21084, - 21087, - 21088, - 21089, - 21094, - 21102, - 21111, - 21112, - 21113, - 21120, - 21122, - 21125, - 21130, - 21132, - 21139, - 21141, - 21142, - 21143, - 21144, - 21146, - 21148, - 21156, - 21157, - 21158, - 21159, - 21167, - 21168, - 21174, - 21175, - 21176, - 21178, - 21179, - 21181, - 21184, - 21188, - 21190, - 21192, - 21196, - 21199, - 21201, - 21204, - 21206, - 21211, - 21212, - 21217, - 21221, - 21224, - 21225, - 21226, - 21228, - 21232, - 21233, - 21236, - 21238, - 21239, - 21248, - 21251, - 21258, - 21259, - 21260, - 21265, - 21267, - 21272, - 21275, - 21276, - 21278, - 21279, - 21285, - 21287, - 21288, - 21289, - 21291, - 21292, - 21293, - 21296, - 21298, - 21301, - 21308, - 21309, - 21310, - 21314, - 21324, - 21323, - 21337, - 21339, - 21345, - 21347, - 21349, - 21356, - 21357, - 21362, - 21369, - 21374, - 21379, - 21383, - 21384, - 21390, - 21395, - 21396, - 21401, - 21405, - 21409, - 21412, - 21418, - 21419, - 21423, - 21426, - 21428, - 21429, - 21431, - 21432, - 21434, - 21437, - 21440, - 21445, - 21455, - 21458, - 21459, - 21461, - 21466, - 21469, - 21470, - 21472, - 21478, - 21479, - 21493, - 21506, - 21523, - 21530, - 21537, - 21543, - 21544, - 21546, - 21551, - 21553, - 21556, - 21557, - 21571, - 21572, - 21575, - 21581, - 21583, - 21598, - 21602, - 21604, - 21606, - 21607, - 21609, - 21611, - 21613, - 21614, - 21620, - 21631, - 21633, - 21635, - 21637, - 21640, - 21641, - 21645, - 21649, - 21653, - 21654, - 21660, - 21663, - 21665, - 21670, - 21671, - 21673, - 21674, - 21677, - 21678, - 21681, - 21687, - 21689, - 21690, - 21691, - 21695, - 21702, - 21706, - 21709, - 21710, - 21728, - 21738, - 21740, - 21743, - 21750, - 21756, - 21758, - 21759, - 21760, - 21761, - 21765, - 21768, - 21769, - 21772, - 21773, - 21774, - 21781, - 21802, - 21803, - 21810, - 21813, - 21814, - 21819, - 21820, - 21821, - 21825, - 21831, - 21833, - 21834, - 21837, - 21840, - 21841, - 21848, - 21850, - 21851, - 21854, - 21856, - 21857, - 21860, - 21862, - 21887, - 21889, - 21890, - 21894, - 21896, - 21902, - 21903, - 21905, - 21906, - 21907, - 21908, - 21911, - 21923, - 21924, - 21933, - 21938, - 21951, - 21953, - 21955, - 21958, - 21961, - 21963, - 21964, - 21966, - 21969, - 21970, - 21971, - 21975, - 21976, - 21979, - 21982, - 21986, - 21993, - 22006, - 22015, - 22021, - 22024, - 22026, - 22029, - 22030, - 22031, - 22032, - 22033, - 22034, - 22041, - 22060, - 22064, - 22067, - 22069, - 22071, - 22073, - 22075, - 22076, - 22077, - 22079, - 22080, - 22081, - 22083, - 22084, - 22086, - 22089, - 22091, - 22093, - 22095, - 22100, - 22110, - 22112, - 22113, - 22114, - 22115, - 22118, - 22121, - 22125, - 22127, - 22129, - 22130, - 22133, - 22148, - 22149, - 22152, - 22155, - 22156, - 22165, - 22169, - 22170, - 22173, - 22174, - 22175, - 22182, - 22183, - 22184, - 22185, - 22187, - 22188, - 22189, - 22193, - 22195, - 22199, - 22206, - 22213, - 22217, - 22218, - 22219, - 22223, - 22224, - 22220, - 22221, - 22233, - 22236, - 22237, - 22239, - 22241, - 22244, - 22245, - 22246, - 22247, - 22248, - 22257, - 22251, - 22253, - 22262, - 22263, - 22273, - 22274, - 22279, - 22282, - 22284, - 22289, - 22293, - 22298, - 22299, - 22301, - 22304, - 22306, - 22307, - 22308, - 22309, - 22313, - 22314, - 22316, - 22318, - 22319, - 22323, - 22324, - 22333, - 22334, - 22335, - 22341, - 22342, - 22348, - 22349, - 22354, - 22370, - 22373, - 22375, - 22376, - 22379, - 22381, - 22382, - 22383, - 22384, - 22385, - 22387, - 22388, - 22389, - 22391, - 22393, - 22394, - 22395, - 22396, - 22398, - 22401, - 22403, - 22412, - 22420, - 22423, - 22425, - 22426, - 22428, - 22429, - 22430, - 22431, - 22433, - 22421, - 22439, - 22440, - 22441, - 22444, - 22456, - 22461, - 22471, - 22472, - 22476, - 22479, - 22485, - 22493, - 22494, - 22500, - 22502, - 22503, - 22505, - 22509, - 22512, - 22517, - 22518, - 22520, - 22525, - 22526, - 22527, - 22531, - 22532, - 22536, - 22537, - 22497, - 22540, - 22541, - 22555, - 22558, - 22559, - 22560, - 22566, - 22567, - 22573, - 22578, - 22585, - 22591, - 22601, - 22604, - 22605, - 22607, - 22608, - 22613, - 22623, - 22625, - 22628, - 22631, - 22632, - 22648, - 22652, - 22655, - 22656, - 22657, - 22663, - 22664, - 22665, - 22666, - 22668, - 22669, - 22671, - 22672, - 22676, - 22678, - 22685, - 22688, - 22689, - 22690, - 22694, - 22697, - 22705, - 22706, - 22724, - 22716, - 22722, - 22728, - 22733, - 22734, - 22736, - 22738, - 22740, - 22742, - 22746, - 22749, - 22753, - 22754, - 22761, - 22771, - 22789, - 22790, - 22795, - 22796, - 22802, - 22803, - 22804, - 34369, - 22813, - 22817, - 22819, - 22820, - 22824, - 22831, - 22832, - 22835, - 22837, - 22838, - 22847, - 22851, - 22854, - 22866, - 22867, - 22873, - 22875, - 22877, - 22878, - 22879, - 22881, - 22883, - 22891, - 22893, - 22895, - 22898, - 22901, - 22902, - 22905, - 22907, - 22908, - 22923, - 22924, - 22926, - 22930, - 22933, - 22935, - 22943, - 22948, - 22951, - 22957, - 22958, - 22959, - 22960, - 22963, - 22967, - 22970, - 22972, - 22977, - 22979, - 22980, - 22984, - 22986, - 22989, - 22994, - 23005, - 23006, - 23007, - 23011, - 23012, - 23015, - 23022, - 23023, - 23025, - 23026, - 23028, - 23031, - 23040, - 23044, - 23052, - 23053, - 23054, - 23058, - 23059, - 23070, - 23075, - 23076, - 23079, - 23080, - 23082, - 23085, - 23088, - 23108, - 23109, - 23111, - 23112, - 23116, - 23120, - 23125, - 23134, - 23139, - 23141, - 23143, - 23149, - 23159, - 23162, - 23163, - 23166, - 23179, - 23184, - 23187, - 23190, - 23193, - 23196, - 23198, - 23199, - 23200, - 23202, - 23207, - 23212, - 23217, - 23218, - 23219, - 23221, - 23224, - 23226, - 23227, - 23231, - 23236, - 23238, - 23240, - 23247, - 23258, - 23260, - 23264, - 23269, - 23274, - 23278, - 23285, - 23286, - 23293, - 23296, - 23297, - 23304, - 23319, - 23348, - 23321, - 23323, - 23325, - 23329, - 23333, - 23341, - 23352, - 23361, - 23371, - 23372, - 23378, - 23382, - 23390, - 23400, - 23406, - 23407, - 23420, - 23421, - 23422, - 23423, - 23425, - 23428, - 23430, - 23434, - 23438, - 23440, - 23441, - 23443, - 23444, - 23446, - 23464, - 23465, - 23468, - 23469, - 23471, - 23473, - 23474, - 23479, - 23482, - 23484, - 23488, - 23489, - 23501, - 23503, - 23510, - 23511, - 23512, - 23513, - 23514, - 23520, - 23535, - 23537, - 23540, - 23549, - 23564, - 23575, - 23582, - 23583, - 23587, - 23590, - 23593, - 23595, - 23596, - 23598, - 23600, - 23602, - 23605, - 23606, - 23641, - 23642, - 23644, - 23650, - 23651, - 23655, - 23656, - 23657, - 23661, - 23664, - 23668, - 23669, - 23674, - 23675, - 23676, - 23677, - 23687, - 23688, - 23690, - 23695, - 23698, - 23709, - 23711, - 23712, - 23714, - 23715, - 23718, - 23722, - 23730, - 23732, - 23733, - 23738, - 23753, - 23755, - 23762, - 23773, - 23767, - 23790, - 23793, - 23794, - 23796, - 23809, - 23814, - 23821, - 23826, - 23851, - 23843, - 23844, - 23846, - 23847, - 23857, - 23860, - 23865, - 23869, - 23871, - 23874, - 23875, - 23878, - 23880, - 23893, - 23889, - 23897, - 23882, - 23903, - 23904, - 23905, - 23906, - 23908, - 23914, - 23917, - 23920, - 23929, - 23930, - 23934, - 23935, - 23937, - 23939, - 23944, - 23946, - 23954, - 23955, - 23956, - 23957, - 23961, - 23963, - 23967, - 23968, - 23975, - 23979, - 23984, - 23988, - 23992, - 23993, - 24003, - 24007, - 24011, - 24016, - 24014, - 24024, - 24025, - 24032, - 24036, - 24041, - 24056, - 24057, - 24064, - 24071, - 24077, - 24082, - 24084, - 24085, - 24088, - 24095, - 24096, - 24110, - 24104, - 24114, - 24117, - 24126, - 24139, - 24144, - 24137, - 24145, - 24150, - 24152, - 24155, - 24156, - 24158, - 24168, - 24170, - 24171, - 24172, - 24173, - 24174, - 24176, - 24192, - 24203, - 24206, - 24226, - 24228, - 24229, - 24232, - 24234, - 24236, - 24241, - 24243, - 24253, - 24254, - 24255, - 24262, - 24268, - 24267, - 24270, - 24273, - 24274, - 24276, - 24277, - 24284, - 24286, - 24293, - 24299, - 24322, - 24326, - 24327, - 24328, - 24334, - 24345, - 24348, - 24349, - 24353, - 24354, - 24355, - 24356, - 24360, - 24363, - 24364, - 24366, - 24368, - 24372, - 24374, - 24379, - 24381, - 24383, - 24384, - 24388, - 24389, - 24391, - 24397, - 24400, - 24404, - 24408, - 24411, - 24416, - 24419, - 24420, - 24423, - 24431, - 24434, - 24436, - 24437, - 24440, - 24442, - 24445, - 24446, - 24457, - 24461, - 24463, - 24470, - 24476, - 24477, - 24482, - 24487, - 24491, - 24484, - 24492, - 24495, - 24496, - 24497, - 24504, - 24516, - 24519, - 24520, - 24521, - 24523, - 24528, - 24529, - 24530, - 24531, - 24532, - 24542, - 24545, - 24546, - 24552, - 24553, - 24554, - 24556, - 24557, - 24558, - 24559, - 24562, - 24563, - 24566, - 24570, - 24572, - 24583, - 24586, - 24589, - 24595, - 24596, - 24599, - 24600, - 24602, - 24607, - 24612, - 24621, - 24627, - 24629, - 24640, - 24647, - 24648, - 24649, - 24652, - 24657, - 24660, - 24662, - 24663, - 24669, - 24673, - 24679, - 24689, - 24702, - 24703, - 24706, - 24710, - 24712, - 24714, - 24718, - 24721, - 24723, - 24725, - 24728, - 24733, - 24734, - 24738, - 24740, - 24741, - 24744, - 24752, - 24753, - 24759, - 24763, - 24766, - 24770, - 24772, - 24776, - 24777, - 24778, - 24779, - 24782, - 24783, - 24788, - 24789, - 24793, - 24795, - 24797, - 24798, - 24802, - 24805, - 24818, - 24821, - 24824, - 24828, - 24829, - 24834, - 24839, - 24842, - 24844, - 24848, - 24849, - 24850, - 24851, - 24852, - 24854, - 24855, - 24857, - 24860, - 24862, - 24866, - 24874, - 24875, - 24880, - 24881, - 24885, - 24886, - 24887, - 24889, - 24897, - 24901, - 24902, - 24905, - 24926, - 24928, - 24940, - 24946, - 24952, - 24955, - 24956, - 24959, - 24960, - 24961, - 24963, - 24964, - 24971, - 24973, - 24978, - 24979, - 24983, - 24984, - 24988, - 24989, - 24991, - 24992, - 24997, - 25000, - 25002, - 25005, - 25016, - 25017, - 25020, - 25024, - 25025, - 25026, - 25038, - 25039, - 25045, - 25052, - 25053, - 25054, - 25055, - 25057, - 25058, - 25063, - 25065, - 25061, - 25068, - 25069, - 25071, - 25089, - 25091, - 25092, - 25095, - 25107, - 25109, - 25116, - 25120, - 25122, - 25123, - 25127, - 25129, - 25131, - 25145, - 25149, - 25154, - 25155, - 25156, - 25158, - 25164, - 25168, - 25169, - 25170, - 25172, - 25174, - 25178, - 25180, - 25188, - 25197, - 25199, - 25203, - 25210, - 25213, - 25229, - 25230, - 25231, - 25232, - 25254, - 25256, - 25267, - 25270, - 25271, - 25274, - 25278, - 25279, - 25284, - 25294, - 25301, - 25302, - 25306, - 25322, - 25330, - 25332, - 25340, - 25341, - 25347, - 25348, - 25354, - 25355, - 25357, - 25360, - 25363, - 25366, - 25368, - 25385, - 25386, - 25389, - 25397, - 25398, - 25401, - 25404, - 25409, - 25410, - 25411, - 25412, - 25414, - 25418, - 25419, - 25422, - 25426, - 25427, - 25428, - 25432, - 25435, - 25445, - 25446, - 25452, - 25453, - 25457, - 25460, - 25461, - 25464, - 25468, - 25469, - 25471, - 25474, - 25476, - 25479, - 25482, - 25488, - 25492, - 25493, - 25497, - 25498, - 25502, - 25508, - 25510, - 25517, - 25518, - 25519, - 25533, - 25537, - 25541, - 25544, - 25550, - 25553, - 25555, - 25556, - 25557, - 25564, - 25568, - 25573, - 25578, - 25580, - 25586, - 25587, - 25589, - 25592, - 25593, - 25609, - 25610, - 25616, - 25618, - 25620, - 25624, - 25630, - 25632, - 25634, - 25636, - 25637, - 25641, - 25642, - 25647, - 25648, - 25653, - 25661, - 25663, - 25675, - 25679, - 25681, - 25682, - 25683, - 25684, - 25690, - 25691, - 25692, - 25693, - 25695, - 25696, - 25697, - 25699, - 25709, - 25715, - 25716, - 25723, - 25725, - 25733, - 25735, - 25743, - 25744, - 25745, - 25752, - 25753, - 25755, - 25757, - 25759, - 25761, - 25763, - 25766, - 25768, - 25772, - 25779, - 25789, - 25790, - 25791, - 25796, - 25801, - 25802, - 25803, - 25804, - 25806, - 25808, - 25809, - 25813, - 25815, - 25828, - 25829, - 25833, - 25834, - 25837, - 25840, - 25845, - 25847, - 25851, - 25855, - 25857, - 25860, - 25864, - 25865, - 25866, - 25871, - 25875, - 25876, - 25878, - 25881, - 25883, - 25886, - 25887, - 25890, - 25894, - 25897, - 25902, - 25905, - 25914, - 25916, - 25917, - 25923, - 25927, - 25929, - 25936, - 25938, - 25940, - 25951, - 25952, - 25959, - 25963, - 25978, - 25981, - 25985, - 25989, - 25994, - 26002, - 26005, - 26008, - 26013, - 26016, - 26019, - 26022, - 26030, - 26034, - 26035, - 26036, - 26047, - 26050, - 26056, - 26057, - 26062, - 26064, - 26068, - 26070, - 26072, - 26079, - 26096, - 26098, - 26100, - 26101, - 26105, - 26110, - 26111, - 26112, - 26116, - 26120, - 26121, - 26125, - 26129, - 26130, - 26133, - 26134, - 26141, - 26142, - 26145, - 26146, - 26147, - 26148, - 26150, - 26153, - 26154, - 26155, - 26156, - 26158, - 26160, - 26161, - 26163, - 26169, - 26167, - 26176, - 26181, - 26182, - 26186, - 26188, - 26193, - 26190, - 26199, - 26200, - 26201, - 26203, - 26204, - 26208, - 26209, - 26363, - 26218, - 26219, - 26220, - 26238, - 26227, - 26229, - 26239, - 26231, - 26232, - 26233, - 26235, - 26240, - 26236, - 26251, - 26252, - 26253, - 26256, - 26258, - 26265, - 26266, - 26267, - 26268, - 26271, - 26272, - 26276, - 26285, - 26289, - 26290, - 26293, - 26299, - 26303, - 26304, - 26306, - 26307, - 26312, - 26316, - 26318, - 26319, - 26324, - 26331, - 26335, - 26344, - 26347, - 26348, - 26350, - 26362, - 26373, - 26375, - 26382, - 26387, - 26393, - 26396, - 26400, - 26402, - 26419, - 26430, - 26437, - 26439, - 26440, - 26444, - 26452, - 26453, - 26461, - 26470, - 26476, - 26478, - 26484, - 26486, - 26491, - 26497, - 26500, - 26510, - 26511, - 26513, - 26515, - 26518, - 26520, - 26521, - 26523, - 26544, - 26545, - 26546, - 26549, - 26555, - 26556, - 26557, - 26617, - 26560, - 26562, - 26563, - 26565, - 26568, - 26569, - 26578, - 26583, - 26585, - 26588, - 26593, - 26598, - 26608, - 26610, - 26614, - 26615, - 26706, - 26644, - 26649, - 26653, - 26655, - 26664, - 26663, - 26668, - 26669, - 26671, - 26672, - 26673, - 26675, - 26683, - 26687, - 26692, - 26693, - 26698, - 26700, - 26709, - 26711, - 26712, - 26715, - 26731, - 26734, - 26735, - 26736, - 26737, - 26738, - 26741, - 26745, - 26746, - 26747, - 26748, - 26754, - 26756, - 26758, - 26760, - 26774, - 26776, - 26778, - 26780, - 26785, - 26787, - 26789, - 26793, - 26794, - 26798, - 26802, - 26811, - 26821, - 26824, - 26828, - 26831, - 26832, - 26833, - 26835, - 26838, - 26841, - 26844, - 26845, - 26853, - 26856, - 26858, - 26859, - 26860, - 26861, - 26864, - 26865, - 26869, - 26870, - 26875, - 26876, - 26877, - 26886, - 26889, - 26890, - 26896, - 26897, - 26899, - 26902, - 26903, - 26929, - 26931, - 26933, - 26936, - 26939, - 26946, - 26949, - 26953, - 26958, - 26967, - 26971, - 26979, - 26980, - 26981, - 26982, - 26984, - 26985, - 26988, - 26992, - 26993, - 26994, - 27002, - 27003, - 27007, - 27008, - 27021, - 27026, - 27030, - 27032, - 27041, - 27045, - 27046, - 27048, - 27051, - 27053, - 27055, - 27063, - 27064, - 27066, - 27068, - 27077, - 27080, - 27089, - 27094, - 27095, - 27106, - 27109, - 27118, - 27119, - 27121, - 27123, - 27125, - 27134, - 27136, - 27137, - 27139, - 27151, - 27153, - 27157, - 27162, - 27165, - 27168, - 27172, - 27176, - 27184, - 27186, - 27188, - 27191, - 27195, - 27198, - 27199, - 27205, - 27206, - 27209, - 27210, - 27214, - 27216, - 27217, - 27218, - 27221, - 27222, - 27227, - 27236, - 27239, - 27242, - 27249, - 27251, - 27262, - 27265, - 27267, - 27270, - 27271, - 27273, - 27275, - 27281, - 27291, - 27293, - 27294, - 27295, - 27301, - 27307, - 27311, - 27312, - 27313, - 27316, - 27325, - 27326, - 27327, - 27334, - 27337, - 27336, - 27340, - 27344, - 27348, - 27349, - 27350, - 27356, - 27357, - 27364, - 27367, - 27372, - 27376, - 27377, - 27378, - 27388, - 27389, - 27394, - 27395, - 27398, - 27399, - 27401, - 27407, - 27408, - 27409, - 27415, - 27419, - 27422, - 27428, - 27432, - 27435, - 27436, - 27439, - 27445, - 27446, - 27451, - 27455, - 27462, - 27466, - 27469, - 27474, - 27478, - 27480, - 27485, - 27488, - 27495, - 27499, - 27502, - 27504, - 27509, - 27517, - 27518, - 27522, - 27525, - 27543, - 27547, - 27551, - 27552, - 27554, - 27555, - 27560, - 27561, - 27564, - 27565, - 27566, - 27568, - 27576, - 27577, - 27581, - 27582, - 27587, - 27588, - 27593, - 27596, - 27606, - 27610, - 27617, - 27619, - 27622, - 27623, - 27630, - 27633, - 27639, - 27641, - 27647, - 27650, - 27652, - 27653, - 27657, - 27661, - 27662, - 27664, - 27666, - 27673, - 27679, - 27686, - 27687, - 27688, - 27692, - 27694, - 27699, - 27701, - 27702, - 27706, - 27707, - 27711, - 27722, - 27723, - 27725, - 27727, - 27730, - 27732, - 27737, - 27739, - 27740, - 27755, - 27757, - 27759, - 27764, - 27766, - 27768, - 27769, - 27771, - 27781, - 27782, - 27783, - 27785, - 27796, - 27797, - 27799, - 27800, - 27804, - 27807, - 27824, - 27826, - 27828, - 27842, - 27846, - 27853, - 27855, - 27856, - 27857, - 27858, - 27860, - 27862, - 27866, - 27868, - 27872, - 27879, - 27881, - 27883, - 27884, - 27886, - 27890, - 27892, - 27908, - 27911, - 27914, - 27918, - 27919, - 27921, - 27923, - 27930, - 27942, - 27943, - 27944, - 27751, - 27950, - 27951, - 27953, - 27961, - 27964, - 27967, - 27991, - 27998, - 27999, - 28001, - 28005, - 28007, - 28015, - 28016, - 28028, - 28034, - 28039, - 28049, - 28050, - 28052, - 28054, - 28055, - 28056, - 28074, - 28076, - 28084, - 28087, - 28089, - 28093, - 28095, - 28100, - 28104, - 28106, - 28110, - 28111, - 28118, - 28123, - 28125, - 28127, - 28128, - 28130, - 28133, - 28137, - 28143, - 28144, - 28148, - 28150, - 28156, - 28160, - 28164, - 28190, - 28194, - 28199, - 28210, - 28214, - 28217, - 28219, - 28220, - 28228, - 28229, - 28232, - 28233, - 28235, - 28239, - 28241, - 28242, - 28243, - 28244, - 28247, - 28252, - 28253, - 28254, - 28258, - 28259, - 28264, - 28275, - 28283, - 28285, - 28301, - 28307, - 28313, - 28320, - 28327, - 28333, - 28334, - 28337, - 28339, - 28347, - 28351, - 28352, - 28353, - 28355, - 28359, - 28360, - 28362, - 28365, - 28366, - 28367, - 28395, - 28397, - 28398, - 28409, - 28411, - 28413, - 28420, - 28424, - 28426, - 28428, - 28429, - 28438, - 28440, - 28442, - 28443, - 28454, - 28457, - 28458, - 28463, - 28464, - 28467, - 28470, - 28475, - 28476, - 28461, - 28495, - 28497, - 28498, - 28499, - 28503, - 28505, - 28506, - 28509, - 28510, - 28513, - 28514, - 28520, - 28524, - 28541, - 28542, - 28547, - 28551, - 28552, - 28555, - 28556, - 28557, - 28560, - 28562, - 28563, - 28564, - 28566, - 28570, - 28575, - 28576, - 28581, - 28582, - 28583, - 28584, - 28590, - 28591, - 28592, - 28597, - 28598, - 28604, - 28613, - 28615, - 28616, - 28618, - 28634, - 28638, - 28648, - 28649, - 28656, - 28661, - 28665, - 28668, - 28669, - 28672, - 28677, - 28678, - 28679, - 28685, - 28695, - 28704, - 28707, - 28719, - 28724, - 28727, - 28729, - 28732, - 28739, - 28740, - 28744, - 28745, - 28746, - 28747, - 28756, - 28757, - 28765, - 28766, - 28750, - 28772, - 28773, - 28780, - 28782, - 28789, - 28790, - 28798, - 28801, - 28805, - 28806, - 28820, - 28821, - 28822, - 28823, - 28824, - 28827, - 28836, - 28843, - 28848, - 28849, - 28852, - 28855, - 28874, - 28881, - 28883, - 28884, - 28885, - 28886, - 28888, - 28892, - 28900, - 28922, - 28931, - 28932, - 28933, - 28934, - 28935, - 28939, - 28940, - 28943, - 28958, - 28960, - 28971, - 28973, - 28975, - 28976, - 28977, - 28984, - 28993, - 28997, - 28998, - 28999, - 29002, - 29003, - 29008, - 29010, - 29015, - 29018, - 29020, - 29022, - 29024, - 29032, - 29049, - 29056, - 29061, - 29063, - 29068, - 29074, - 29082, - 29083, - 29088, - 29090, - 29103, - 29104, - 29106, - 29107, - 29114, - 29119, - 29120, - 29121, - 29124, - 29131, - 29132, - 29139, - 29142, - 29145, - 29146, - 29148, - 29176, - 29182, - 29184, - 29191, - 29192, - 29193, - 29203, - 29207, - 29210, - 29213, - 29215, - 29220, - 29227, - 29231, - 29236, - 29240, - 29241, - 29249, - 29250, - 29251, - 29253, - 29262, - 29263, - 29264, - 29267, - 29269, - 29270, - 29274, - 29276, - 29278, - 29280, - 29283, - 29288, - 29291, - 29294, - 29295, - 29297, - 29303, - 29304, - 29307, - 29308, - 29311, - 29316, - 29321, - 29325, - 29326, - 29331, - 29339, - 29352, - 29357, - 29358, - 29361, - 29364, - 29374, - 29377, - 29383, - 29385, - 29388, - 29397, - 29398, - 29400, - 29407, - 29413, - 29427, - 29428, - 29434, - 29435, - 29438, - 29442, - 29444, - 29445, - 29447, - 29451, - 29453, - 29458, - 29459, - 29464, - 29465, - 29470, - 29474, - 29476, - 29479, - 29480, - 29484, - 29489, - 29490, - 29493, - 29498, - 29499, - 29501, - 29507, - 29517, - 29520, - 29522, - 29526, - 29528, - 29533, - 29534, - 29535, - 29536, - 29542, - 29543, - 29545, - 29547, - 29548, - 29550, - 29551, - 29553, - 29559, - 29561, - 29564, - 29568, - 29569, - 29571, - 29573, - 29574, - 29582, - 29584, - 29587, - 29589, - 29591, - 29592, - 29596, - 29598, - 29599, - 29600, - 29602, - 29605, - 29606, - 29610, - 29611, - 29613, - 29621, - 29623, - 29625, - 29628, - 29629, - 29631, - 29637, - 29638, - 29641, - 29643, - 29644, - 29647, - 29650, - 29651, - 29654, - 29657, - 29661, - 29665, - 29667, - 29670, - 29671, - 29673, - 29684, - 29685, - 29687, - 29689, - 29690, - 29691, - 29693, - 29695, - 29696, - 29697, - 29700, - 29703, - 29706, - 29713, - 29722, - 29723, - 29732, - 29734, - 29736, - 29737, - 29738, - 29739, - 29740, - 29741, - 29742, - 29743, - 29744, - 29745, - 29753, - 29760, - 29763, - 29764, - 29766, - 29767, - 29771, - 29773, - 29777, - 29778, - 29783, - 29789, - 29794, - 29798, - 29799, - 29800, - 29803, - 29805, - 29806, - 29809, - 29810, - 29824, - 29825, - 29829, - 29830, - 29831, - 29833, - 29839, - 29840, - 29841, - 29842, - 29848, - 29849, - 29850, - 29852, - 29855, - 29856, - 29857, - 29859, - 29862, - 29864, - 29865, - 29866, - 29867, - 29870, - 29871, - 29873, - 29874, - 29877, - 29881, - 29883, - 29887, - 29896, - 29897, - 29900, - 29904, - 29907, - 29912, - 29914, - 29915, - 29918, - 29919, - 29924, - 29928, - 29930, - 29931, - 29935, - 29940, - 29946, - 29947, - 29948, - 29951, - 29958, - 29970, - 29974, - 29975, - 29984, - 29985, - 29988, - 29991, - 29993, - 29994, - 29999, - 30006, - 30009, - 30013, - 30014, - 30015, - 30016, - 30019, - 30023, - 30024, - 30030, - 30032, - 30034, - 30039, - 30046, - 30047, - 30049, - 30063, - 30065, - 30073, - 30074, - 30075, - 30076, - 30077, - 30078, - 30081, - 30085, - 30096, - 30098, - 30099, - 30101, - 30105, - 30108, - 30114, - 30116, - 30132, - 30138, - 30143, - 30144, - 30145, - 30148, - 30150, - 30156, - 30158, - 30159, - 30167, - 30172, - 30175, - 30176, - 30177, - 30180, - 30183, - 30188, - 30190, - 30191, - 30193, - 30201, - 30208, - 30210, - 30211, - 30212, - 30215, - 30216, - 30218, - 30220, - 30223, - 30226, - 30227, - 30229, - 30230, - 30233, - 30235, - 30236, - 30237, - 30238, - 30243, - 30245, - 30246, - 30249, - 30253, - 30258, - 30259, - 30261, - 30264, - 30265, - 30266, - 30268, - 30282, - 30272, - 30273, - 30275, - 30276, - 30277, - 30281, - 30283, - 30293, - 30297, - 30303, - 30308, - 30309, - 30317, - 30318, - 30319, - 30321, - 30324, - 30337, - 30341, - 30348, - 30349, - 30357, - 30363, - 30364, - 30365, - 30367, - 30368, - 30370, - 30371, - 30372, - 30373, - 30374, - 30375, - 30376, - 30378, - 30381, - 30397, - 30401, - 30405, - 30409, - 30411, - 30412, - 30414, - 30420, - 30425, - 30432, - 30438, - 30440, - 30444, - 30448, - 30449, - 30454, - 30457, - 30460, - 30464, - 30470, - 30474, - 30478, - 30482, - 30484, - 30485, - 30487, - 30489, - 30490, - 30492, - 30498, - 30504, - 30509, - 30510, - 30511, - 30516, - 30517, - 30518, - 30521, - 30525, - 30526, - 30530, - 30533, - 30534, - 30538, - 30541, - 30542, - 30543, - 30546, - 30550, - 30551, - 30556, - 30558, - 30559, - 30560, - 30562, - 30564, - 30567, - 30570, - 30572, - 30576, - 30578, - 30579, - 30580, - 30586, - 30589, - 30592, - 30596, - 30604, - 30605, - 30612, - 30613, - 30614, - 30618, - 30623, - 30626, - 30631, - 30634, - 30638, - 30639, - 30641, - 30645, - 30654, - 30659, - 30665, - 30673, - 30674, - 30677, - 30681, - 30686, - 30687, - 30688, - 30692, - 30694, - 30698, - 30700, - 30704, - 30705, - 30708, - 30712, - 30715, - 30725, - 30726, - 30729, - 30733, - 30734, - 30737, - 30749, - 30753, - 30754, - 30755, - 30765, - 30766, - 30768, - 30773, - 30775, - 30787, - 30788, - 30791, - 30792, - 30796, - 30798, - 30802, - 30812, - 30814, - 30816, - 30817, - 30819, - 30820, - 30824, - 30826, - 30830, - 30842, - 30846, - 30858, - 30863, - 30868, - 30872, - 30881, - 30877, - 30878, - 30879, - 30884, - 30888, - 30892, - 30893, - 30896, - 30897, - 30898, - 30899, - 30907, - 30909, - 30911, - 30919, - 30920, - 30921, - 30924, - 30926, - 30930, - 30931, - 30933, - 30934, - 30948, - 30939, - 30943, - 30944, - 30945, - 30950, - 30954, - 30962, - 30963, - 30976, - 30966, - 30967, - 30970, - 30971, - 30975, - 30982, - 30988, - 30992, - 31002, - 31004, - 31006, - 31007, - 31008, - 31013, - 31015, - 31017, - 31021, - 31025, - 31028, - 31029, - 31035, - 31037, - 31039, - 31044, - 31045, - 31046, - 31050, - 31051, - 31055, - 31057, - 31060, - 31064, - 31067, - 31068, - 31079, - 31081, - 31083, - 31090, - 31097, - 31099, - 31100, - 31102, - 31115, - 31116, - 31121, - 31123, - 31124, - 31125, - 31126, - 31128, - 31131, - 31132, - 31137, - 31144, - 31145, - 31147, - 31151, - 31153, - 31156, - 31160, - 31163, - 31170, - 31172, - 31175, - 31176, - 31178, - 31183, - 31188, - 31190, - 31194, - 31197, - 31198, - 31200, - 31202, - 31205, - 31210, - 31211, - 31213, - 31217, - 31224, - 31228, - 31234, - 31235, - 31239, - 31241, - 31242, - 31244, - 31249, - 31253, - 31259, - 31262, - 31265, - 31271, - 31275, - 31277, - 31279, - 31280, - 31284, - 31285, - 31288, - 31289, - 31290, - 31300, - 31301, - 31303, - 31304, - 31308, - 31317, - 31318, - 31321, - 31324, - 31325, - 31327, - 31328, - 31333, - 31335, - 31338, - 31341, - 31349, - 31352, - 31358, - 31360, - 31362, - 31365, - 31366, - 31370, - 31371, - 31376, - 31377, - 31380, - 31390, - 31392, - 31395, - 31404, - 31411, - 31413, - 31417, - 31419, - 31420, - 31430, - 31433, - 31436, - 31438, - 31441, - 31451, - 31464, - 31465, - 31467, - 31468, - 31473, - 31476, - 31483, - 31485, - 31486, - 31495, - 31508, - 31519, - 31523, - 31527, - 31529, - 31530, - 31531, - 31533, - 31534, - 31535, - 31536, - 31537, - 31540, - 31549, - 31551, - 31552, - 31553, - 31559, - 31566, - 31573, - 31584, - 31588, - 31590, - 31593, - 31594, - 31597, - 31599, - 31602, - 31603, - 31607, - 31620, - 31625, - 31630, - 31632, - 31633, - 31638, - 31643, - 31646, - 31648, - 31653, - 31660, - 31663, - 31664, - 31666, - 31669, - 31670, - 31674, - 31675, - 31676, - 31677, - 31682, - 31685, - 31688, - 31690, - 31700, - 31702, - 31703, - 31705, - 31706, - 31707, - 31720, - 31722, - 31730, - 31732, - 31733, - 31736, - 31737, - 31738, - 31740, - 31742, - 31745, - 31746, - 31747, - 31748, - 31750, - 31753, - 31755, - 31756, - 31758, - 31759, - 31769, - 31771, - 31776, - 31781, - 31782, - 31784, - 31788, - 31793, - 31795, - 31796, - 31798, - 31801, - 31802, - 31814, - 31818, - 31829, - 31825, - 31826, - 31827, - 31833, - 31834, - 31835, - 31836, - 31837, - 31838, - 31841, - 31843, - 31847, - 31849, - 31853, - 31854, - 31856, - 31858, - 31865, - 31868, - 31869, - 31878, - 31879, - 31887, - 31892, - 31902, - 31904, - 31910, - 31920, - 31926, - 31927, - 31930, - 31931, - 31932, - 31935, - 31940, - 31943, - 31944, - 31945, - 31949, - 31951, - 31955, - 31956, - 31957, - 31959, - 31961, - 31962, - 31965, - 31974, - 31977, - 31979, - 31989, - 32003, - 32007, - 32008, - 32009, - 32015, - 32017, - 32018, - 32019, - 32022, - 32029, - 32030, - 32035, - 32038, - 32042, - 32045, - 32049, - 32060, - 32061, - 32062, - 32064, - 32065, - 32071, - 32072, - 32077, - 32081, - 32083, - 32087, - 32089, - 32090, - 32092, - 32093, - 32101, - 32103, - 32106, - 32112, - 32120, - 32122, - 32123, - 32127, - 32129, - 32130, - 32131, - 32133, - 32134, - 32136, - 32139, - 32140, - 32141, - 32145, - 32150, - 32151, - 32157, - 32158, - 32166, - 32167, - 32170, - 32179, - 32182, - 32183, - 32185, - 32194, - 32195, - 32196, - 32197, - 32198, - 32204, - 32205, - 32206, - 32215, - 32217, - 32256, - 32226, - 32229, - 32230, - 32234, - 32235, - 32237, - 32241, - 32245, - 32246, - 32249, - 32250, - 32264, - 32272, - 32273, - 32277, - 32279, - 32284, - 32285, - 32288, - 32295, - 32296, - 32300, - 32301, - 32303, - 32307, - 32310, - 32319, - 32324, - 32325, - 32327, - 32334, - 32336, - 32338, - 32344, - 32351, - 32353, - 32354, - 32357, - 32363, - 32366, - 32367, - 32371, - 32376, - 32382, - 32385, - 32390, - 32391, - 32394, - 32397, - 32401, - 32405, - 32408, - 32410, - 32413, - 32414, - 32572, - 32571, - 32573, - 32574, - 32575, - 32579, - 32580, - 32583, - 32591, - 32594, - 32595, - 32603, - 32604, - 32605, - 32609, - 32611, - 32612, - 32613, - 32614, - 32621, - 32625, - 32637, - 32638, - 32639, - 32640, - 32651, - 32653, - 32655, - 32656, - 32657, - 32662, - 32663, - 32668, - 32673, - 32674, - 32678, - 32682, - 32685, - 32692, - 32700, - 32703, - 32704, - 32707, - 32712, - 32718, - 32719, - 32731, - 32735, - 32739, - 32741, - 32744, - 32748, - 32750, - 32751, - 32754, - 32762, - 32765, - 32766, - 32767, - 32775, - 32776, - 32778, - 32781, - 32782, - 32783, - 32785, - 32787, - 32788, - 32790, - 32797, - 32798, - 32799, - 32800, - 32804, - 32806, - 32812, - 32814, - 32816, - 32820, - 32821, - 32823, - 32825, - 32826, - 32828, - 32830, - 32832, - 32836, - 32864, - 32868, - 32870, - 32877, - 32881, - 32885, - 32897, - 32904, - 32910, - 32924, - 32926, - 32934, - 32935, - 32939, - 32952, - 32953, - 32968, - 32973, - 32975, - 32978, - 32980, - 32981, - 32983, - 32984, - 32992, - 33005, - 33006, - 33008, - 33010, - 33011, - 33014, - 33017, - 33018, - 33022, - 33027, - 33035, - 33046, - 33047, - 33048, - 33052, - 33054, - 33056, - 33060, - 33063, - 33068, - 33072, - 33077, - 33082, - 33084, - 33093, - 33095, - 33098, - 33100, - 33106, - 33111, - 33120, - 33121, - 33127, - 33128, - 33129, - 33133, - 33135, - 33143, - 33153, - 33168, - 33156, - 33157, - 33158, - 33163, - 33166, - 33174, - 33176, - 33179, - 33182, - 33186, - 33198, - 33202, - 33204, - 33211, - 33227, - 33219, - 33221, - 33226, - 33230, - 33231, - 33237, - 33239, - 33243, - 33245, - 33246, - 33249, - 33252, - 33259, - 33260, - 33264, - 33265, - 33266, - 33269, - 33270, - 33272, - 33273, - 33277, - 33279, - 33280, - 33283, - 33295, - 33299, - 33300, - 33305, - 33306, - 33309, - 33313, - 33314, - 33320, - 33330, - 33332, - 33338, - 33347, - 33348, - 33349, - 33350, - 33355, - 33358, - 33359, - 33361, - 33366, - 33372, - 33376, - 33379, - 33383, - 33389, - 33396, - 33403, - 33405, - 33407, - 33408, - 33409, - 33411, - 33412, - 33415, - 33417, - 33418, - 33422, - 33425, - 33428, - 33430, - 33432, - 33434, - 33435, - 33440, - 33441, - 33443, - 33444, - 33447, - 33448, - 33449, - 33450, - 33454, - 33456, - 33458, - 33460, - 33463, - 33466, - 33468, - 33470, - 33471, - 33478, - 33488, - 33493, - 33498, - 33504, - 33506, - 33508, - 33512, - 33514, - 33517, - 33519, - 33526, - 33527, - 33533, - 33534, - 33536, - 33537, - 33543, - 33544, - 33546, - 33547, - 33620, - 33563, - 33565, - 33566, - 33567, - 33569, - 33570, - 33580, - 33581, - 33582, - 33584, - 33587, - 33591, - 33594, - 33596, - 33597, - 33602, - 33603, - 33604, - 33607, - 33613, - 33614, - 33617, - 33621, - 33622, - 33623, - 33648, - 33656, - 33661, - 33663, - 33664, - 33666, - 33668, - 33670, - 33677, - 33682, - 33684, - 33685, - 33688, - 33689, - 33691, - 33692, - 33693, - 33702, - 33703, - 33705, - 33708, - 33726, - 33727, - 33728, - 33735, - 33737, - 33743, - 33744, - 33745, - 33748, - 33757, - 33619, - 33768, - 33770, - 33782, - 33784, - 33785, - 33788, - 33793, - 33798, - 33802, - 33807, - 33809, - 33813, - 33817, - 33709, - 33839, - 33849, - 33861, - 33863, - 33864, - 33866, - 33869, - 33871, - 33873, - 33874, - 33878, - 33880, - 33881, - 33882, - 33884, - 33888, - 33892, - 33893, - 33895, - 33898, - 33904, - 33907, - 33908, - 33910, - 33912, - 33916, - 33917, - 33921, - 33925, - 33938, - 33939, - 33941, - 33950, - 33958, - 33960, - 33961, - 33962, - 33967, - 33969, - 33972, - 33978, - 33981, - 33982, - 33984, - 33986, - 33991, - 33992, - 33996, - 33999, - 34003, - 34012, - 34023, - 34026, - 34031, - 34032, - 34033, - 34034, - 34039, - 34098, - 34042, - 34043, - 34045, - 34050, - 34051, - 34055, - 34060, - 34062, - 34064, - 34076, - 34078, - 34082, - 34083, - 34084, - 34085, - 34087, - 34090, - 34091, - 34095, - 34099, - 34100, - 34102, - 34111, - 34118, - 34127, - 34128, - 34129, - 34130, - 34131, - 34134, - 34137, - 34140, - 34141, - 34142, - 34143, - 34144, - 34145, - 34146, - 34148, - 34155, - 34159, - 34169, - 34170, - 34171, - 34173, - 34175, - 34177, - 34181, - 34182, - 34185, - 34187, - 34188, - 34191, - 34195, - 34200, - 34205, - 34207, - 34208, - 34210, - 34213, - 34215, - 34228, - 34230, - 34231, - 34232, - 34236, - 34237, - 34238, - 34239, - 34242, - 34247, - 34250, - 34251, - 34254, - 34221, - 34264, - 34266, - 34271, - 34272, - 34278, - 34280, - 34285, - 34291, - 34294, - 34300, - 34303, - 34304, - 34308, - 34309, - 34317, - 34318, - 34320, - 34321, - 34322, - 34328, - 34329, - 34331, - 34334, - 34337, - 34343, - 34345, - 34358, - 34360, - 34362, - 34364, - 34365, - 34368, - 34370, - 34374, - 34386, - 34387, - 34390, - 34391, - 34392, - 34393, - 34397, - 34400, - 34401, - 34402, - 34403, - 34404, - 34409, - 34412, - 34415, - 34421, - 34422, - 34423, - 34426, - 34445, - 34449, - 34454, - 34456, - 34458, - 34460, - 34465, - 34470, - 34471, - 34472, - 34477, - 34481, - 34483, - 34484, - 34485, - 34487, - 34488, - 34489, - 34495, - 34496, - 34497, - 34499, - 34501, - 34513, - 34514, - 34517, - 34519, - 34522, - 34524, - 34528, - 34531, - 34533, - 34535, - 34440, - 34554, - 34556, - 34557, - 34564, - 34565, - 34567, - 34571, - 34574, - 34575, - 34576, - 34579, - 34580, - 34585, - 34590, - 34591, - 34593, - 34595, - 34600, - 34606, - 34607, - 34609, - 34610, - 34617, - 34618, - 34620, - 34621, - 34622, - 34624, - 34627, - 34629, - 34637, - 34648, - 34653, - 34657, - 34660, - 34661, - 34671, - 34673, - 34674, - 34683, - 34691, - 34692, - 34693, - 34694, - 34695, - 34696, - 34697, - 34699, - 34700, - 34704, - 34707, - 34709, - 34711, - 34712, - 34713, - 34718, - 34720, - 34723, - 34727, - 34732, - 34733, - 34734, - 34737, - 34741, - 34750, - 34751, - 34753, - 34760, - 34761, - 34762, - 34766, - 34773, - 34774, - 34777, - 34778, - 34780, - 34783, - 34786, - 34787, - 34788, - 34794, - 34795, - 34797, - 34801, - 34803, - 34808, - 34810, - 34815, - 34817, - 34819, - 34822, - 34825, - 34826, - 34827, - 34832, - 34841, - 34834, - 34835, - 34836, - 34840, - 34842, - 34843, - 34844, - 34846, - 34847, - 34856, - 34861, - 34862, - 34864, - 34866, - 34869, - 34874, - 34876, - 34881, - 34883, - 34885, - 34888, - 34889, - 34890, - 34891, - 34894, - 34897, - 34901, - 34902, - 34904, - 34906, - 34908, - 34911, - 34912, - 34916, - 34921, - 34929, - 34937, - 34939, - 34944, - 34968, - 34970, - 34971, - 34972, - 34975, - 34976, - 34984, - 34986, - 35002, - 35005, - 35006, - 35008, - 35018, - 35019, - 35020, - 35021, - 35022, - 35025, - 35026, - 35027, - 35035, - 35038, - 35047, - 35055, - 35056, - 35057, - 35061, - 35063, - 35073, - 35078, - 35085, - 35086, - 35087, - 35093, - 35094, - 35096, - 35097, - 35098, - 35100, - 35104, - 35110, - 35111, - 35112, - 35120, - 35121, - 35122, - 35125, - 35129, - 35130, - 35134, - 35136, - 35138, - 35141, - 35142, - 35145, - 35151, - 35154, - 35159, - 35162, - 35163, - 35164, - 35169, - 35170, - 35171, - 35179, - 35182, - 35184, - 35187, - 35189, - 35194, - 35195, - 35196, - 35197, - 35209, - 35213, - 35216, - 35220, - 35221, - 35227, - 35228, - 35231, - 35232, - 35237, - 35248, - 35252, - 35253, - 35254, - 35255, - 35260, - 35284, - 35285, - 35286, - 35287, - 35288, - 35301, - 35305, - 35307, - 35309, - 35313, - 35315, - 35318, - 35321, - 35325, - 35327, - 35332, - 35333, - 35335, - 35343, - 35345, - 35346, - 35348, - 35349, - 35358, - 35360, - 35362, - 35364, - 35366, - 35371, - 35372, - 35375, - 35381, - 35383, - 35389, - 35390, - 35392, - 35395, - 35397, - 35399, - 35401, - 35405, - 35406, - 35411, - 35414, - 35415, - 35416, - 35420, - 35421, - 35425, - 35429, - 35431, - 35445, - 35446, - 35447, - 35449, - 35450, - 35451, - 35454, - 35455, - 35456, - 35459, - 35462, - 35467, - 35471, - 35472, - 35474, - 35478, - 35479, - 35481, - 35487, - 35495, - 35497, - 35502, - 35503, - 35507, - 35510, - 35511, - 35515, - 35518, - 35523, - 35526, - 35528, - 35529, - 35530, - 35537, - 35539, - 35540, - 35541, - 35543, - 35549, - 35551, - 35564, - 35568, - 35572, - 35573, - 35574, - 35580, - 35583, - 35589, - 35590, - 35595, - 35601, - 35612, - 35614, - 35615, - 35594, - 35629, - 35632, - 35639, - 35644, - 35650, - 35651, - 35652, - 35653, - 35654, - 35656, - 35666, - 35667, - 35668, - 35673, - 35661, - 35678, - 35683, - 35693, - 35702, - 35704, - 35705, - 35708, - 35710, - 35713, - 35716, - 35717, - 35723, - 35725, - 35727, - 35732, - 35733, - 35740, - 35742, - 35743, - 35896, - 35897, - 35901, - 35902, - 35909, - 35911, - 35913, - 35915, - 35919, - 35921, - 35923, - 35924, - 35927, - 35928, - 35931, - 35933, - 35929, - 35939, - 35940, - 35942, - 35944, - 35945, - 35949, - 35955, - 35957, - 35958, - 35963, - 35966, - 35974, - 35975, - 35979, - 35984, - 35986, - 35987, - 35993, - 35995, - 35996, - 36004, - 36025, - 36026, - 36037, - 36038, - 36041, - 36043, - 36047, - 36054, - 36053, - 36057, - 36061, - 36065, - 36072, - 36076, - 36079, - 36080, - 36082, - 36085, - 36087, - 36088, - 36094, - 36095, - 36097, - 36099, - 36105, - 36114, - 36119, - 36123, - 36197, - 36201, - 36204, - 36206, - 36223, - 36226, - 36228, - 36232, - 36237, - 36240, - 36241, - 36245, - 36254, - 36255, - 36256, - 36262, - 36267, - 36268, - 36271, - 36274, - 36277, - 36279, - 36281, - 36283, - 36288, - 36293, - 36294, - 36295, - 36296, - 36298, - 36302, - 36305, - 36308, - 36309, - 36311, - 36313, - 36324, - 36325, - 36327, - 36332, - 36336, - 36284, - 36337, - 36338, - 36340, - 36349, - 36353, - 36356, - 36357, - 36358, - 36363, - 36369, - 36372, - 36374, - 36384, - 36385, - 36386, - 36387, - 36390, - 36391, - 36401, - 36403, - 36406, - 36407, - 36408, - 36409, - 36413, - 36416, - 36417, - 36427, - 36429, - 36430, - 36431, - 36436, - 36443, - 36444, - 36445, - 36446, - 36449, - 36450, - 36457, - 36460, - 36461, - 36463, - 36464, - 36465, - 36473, - 36474, - 36475, - 36482, - 36483, - 36489, - 36496, - 36498, - 36501, - 36506, - 36507, - 36509, - 36510, - 36514, - 36519, - 36521, - 36525, - 36526, - 36531, - 36533, - 36538, - 36539, - 36544, - 36545, - 36547, - 36548, - 36551, - 36559, - 36561, - 36564, - 36572, - 36584, - 36590, - 36592, - 36593, - 36599, - 36601, - 36602, - 36589, - 36608, - 36610, - 36615, - 36616, - 36623, - 36624, - 36630, - 36631, - 36632, - 36638, - 36640, - 36641, - 36643, - 36645, - 36647, - 36648, - 36652, - 36653, - 36654, - 36660, - 36661, - 36662, - 36663, - 36666, - 36672, - 36673, - 36675, - 36679, - 36687, - 36689, - 36690, - 36691, - 36692, - 36693, - 36696, - 36701, - 36702, - 36709, - 36765, - 36768, - 36769, - 36772, - 36773, - 36774, - 36789, - 36790, - 36792, - 36798, - 36800, - 36801, - 36806, - 36810, - 36811, - 36813, - 36816, - 36818, - 36819, - 36821, - 36832, - 36835, - 36836, - 36840, - 36846, - 36849, - 36853, - 36854, - 36859, - 36862, - 36866, - 36868, - 36872, - 36876, - 36888, - 36891, - 36904, - 36905, - 36911, - 36906, - 36908, - 36909, - 36915, - 36916, - 36919, - 36927, - 36931, - 36932, - 36940, - 36955, - 36957, - 36962, - 36966, - 36967, - 36972, - 36976, - 36980, - 36985, - 36997, - 37000, - 37003, - 37004, - 37006, - 37008, - 37013, - 37015, - 37016, - 37017, - 37019, - 37024, - 37025, - 37026, - 37029, - 37040, - 37042, - 37043, - 37044, - 37046, - 37053, - 37068, - 37054, - 37059, - 37060, - 37061, - 37063, - 37064, - 37077, - 37079, - 37080, - 37081, - 37084, - 37085, - 37087, - 37093, - 37074, - 37110, - 37099, - 37103, - 37104, - 37108, - 37118, - 37119, - 37120, - 37124, - 37125, - 37126, - 37128, - 37133, - 37136, - 37140, - 37142, - 37143, - 37144, - 37146, - 37148, - 37150, - 37152, - 37157, - 37154, - 37155, - 37159, - 37161, - 37166, - 37167, - 37169, - 37172, - 37174, - 37175, - 37177, - 37178, - 37180, - 37181, - 37187, - 37191, - 37192, - 37199, - 37203, - 37207, - 37209, - 37210, - 37211, - 37217, - 37220, - 37223, - 37229, - 37236, - 37241, - 37242, - 37243, - 37249, - 37251, - 37253, - 37254, - 37258, - 37262, - 37265, - 37267, - 37268, - 37269, - 37272, - 37278, - 37281, - 37286, - 37288, - 37292, - 37293, - 37294, - 37296, - 37297, - 37298, - 37299, - 37302, - 37307, - 37308, - 37309, - 37311, - 37314, - 37315, - 37317, - 37331, - 37332, - 37335, - 37337, - 37338, - 37342, - 37348, - 37349, - 37353, - 37354, - 37356, - 37357, - 37358, - 37359, - 37360, - 37361, - 37367, - 37369, - 37371, - 37373, - 37376, - 37377, - 37380, - 37381, - 37382, - 37383, - 37385, - 37386, - 37388, - 37392, - 37394, - 37395, - 37398, - 37400, - 37404, - 37405, - 37411, - 37412, - 37413, - 37414, - 37416, - 37422, - 37423, - 37424, - 37427, - 37429, - 37430, - 37432, - 37433, - 37434, - 37436, - 37438, - 37440, - 37442, - 37443, - 37446, - 37447, - 37450, - 37453, - 37454, - 37455, - 37457, - 37464, - 37465, - 37468, - 37469, - 37472, - 37473, - 37477, - 37479, - 37480, - 37481, - 37486, - 37487, - 37488, - 37493, - 37494, - 37495, - 37496, - 37497, - 37499, - 37500, - 37501, - 37503, - 37512, - 37513, - 37514, - 37517, - 37518, - 37522, - 37527, - 37529, - 37535, - 37536, - 37540, - 37541, - 37543, - 37544, - 37547, - 37551, - 37554, - 37558, - 37560, - 37562, - 37563, - 37564, - 37565, - 37567, - 37568, - 37569, - 37570, - 37571, - 37573, - 37574, - 37575, - 37576, - 37579, - 37580, - 37581, - 37582, - 37584, - 37587, - 37589, - 37591, - 37592, - 37593, - 37596, - 37597, - 37599, - 37600, - 37601, - 37603, - 37605, - 37607, - 37608, - 37612, - 37614, - 37616, - 37625, - 37627, - 37631, - 37632, - 37634, - 37640, - 37645, - 37649, - 37652, - 37653, - 37660, - 37661, - 37662, - 37663, - 37665, - 37668, - 37669, - 37671, - 37673, - 37674, - 37683, - 37684, - 37686, - 37687, - 37703, - 37704, - 37705, - 37712, - 37713, - 37714, - 37717, - 37719, - 37720, - 37722, - 37726, - 37732, - 37733, - 37735, - 37737, - 37738, - 37741, - 37743, - 37744, - 37745, - 37747, - 37748, - 37750, - 37754, - 37757, - 37759, - 37760, - 37761, - 37762, - 37768, - 37770, - 37771, - 37773, - 37775, - 37778, - 37781, - 37784, - 37787, - 37790, - 37793, - 37795, - 37796, - 37798, - 37800, - 37803, - 37812, - 37813, - 37814, - 37818, - 37801, - 37825, - 37828, - 37829, - 37830, - 37831, - 37833, - 37834, - 37835, - 37836, - 37837, - 37843, - 37849, - 37852, - 37854, - 37855, - 37858, - 37862, - 37863, - 37881, - 37879, - 37880, - 37882, - 37883, - 37885, - 37889, - 37890, - 37892, - 37896, - 37897, - 37901, - 37902, - 37903, - 37909, - 37910, - 37911, - 37919, - 37934, - 37935, - 37937, - 37938, - 37939, - 37940, - 37947, - 37951, - 37949, - 37955, - 37957, - 37960, - 37962, - 37964, - 37973, - 37977, - 37980, - 37983, - 37985, - 37987, - 37992, - 37995, - 37997, - 37998, - 37999, - 38001, - 38002, - 38020, - 38019, - 38264, - 38265, - 38270, - 38276, - 38280, - 38284, - 38285, - 38286, - 38301, - 38302, - 38303, - 38305, - 38310, - 38313, - 38315, - 38316, - 38324, - 38326, - 38330, - 38333, - 38335, - 38342, - 38344, - 38345, - 38347, - 38352, - 38353, - 38354, - 38355, - 38361, - 38362, - 38365, - 38366, - 38367, - 38368, - 38372, - 38374, - 38429, - 38430, - 38434, - 38436, - 38437, - 38438, - 38444, - 38449, - 38451, - 38455, - 38456, - 38457, - 38458, - 38460, - 38461, - 38465, - 38482, - 38484, - 38486, - 38487, - 38488, - 38497, - 38510, - 38516, - 38523, - 38524, - 38526, - 38527, - 38529, - 38530, - 38531, - 38532, - 38537, - 38545, - 38550, - 38554, - 38557, - 38559, - 38564, - 38565, - 38566, - 38569, - 38574, - 38575, - 38579, - 38586, - 38602, - 38610, - 23986, - 38616, - 38618, - 38621, - 38622, - 38623, - 38633, - 38639, - 38641, - 38650, - 38658, - 38659, - 38661, - 38665, - 38682, - 38683, - 38685, - 38689, - 38690, - 38691, - 38696, - 38705, - 38707, - 38721, - 38723, - 38730, - 38734, - 38735, - 38741, - 38743, - 38744, - 38746, - 38747, - 38755, - 38759, - 38762, - 38766, - 38771, - 38774, - 38775, - 38776, - 38779, - 38781, - 38783, - 38784, - 38793, - 38805, - 38806, - 38807, - 38809, - 38810, - 38814, - 38815, - 38818, - 38828, - 38830, - 38833, - 38834, - 38837, - 38838, - 38840, - 38841, - 38842, - 38844, - 38846, - 38847, - 38849, - 38852, - 38853, - 38855, - 38857, - 38858, - 38860, - 38861, - 38862, - 38864, - 38865, - 38868, - 38871, - 38872, - 38873, - 38877, - 38878, - 38880, - 38875, - 38881, - 38884, - 38895, - 38897, - 38900, - 38903, - 38904, - 38906, - 38919, - 38922, - 38937, - 38925, - 38926, - 38932, - 38934, - 38940, - 38942, - 38944, - 38947, - 38950, - 38955, - 38958, - 38959, - 38960, - 38962, - 38963, - 38965, - 38949, - 38974, - 38980, - 38983, - 38986, - 38993, - 38994, - 38995, - 38998, - 38999, - 39001, - 39002, - 39010, - 39011, - 39013, - 39014, - 39018, - 39020, - 39083, - 39085, - 39086, - 39088, - 39092, - 39095, - 39096, - 39098, - 39099, - 39103, - 39106, - 39109, - 39112, - 39116, - 39137, - 39139, - 39141, - 39142, - 39143, - 39146, - 39155, - 39158, - 39170, - 39175, - 39176, - 39185, - 39189, - 39190, - 39191, - 39194, - 39195, - 39196, - 39199, - 39202, - 39206, - 39207, - 39211, - 39217, - 39218, - 39219, - 39220, - 39221, - 39225, - 39226, - 39227, - 39228, - 39232, - 39233, - 39238, - 39239, - 39240, - 39245, - 39246, - 39252, - 39256, - 39257, - 39259, - 39260, - 39262, - 39263, - 39264, - 39323, - 39325, - 39327, - 39334, - 39344, - 39345, - 39346, - 39349, - 39353, - 39354, - 39357, - 39359, - 39363, - 39369, - 39379, - 39380, - 39385, - 39386, - 39388, - 39390, - 39399, - 39402, - 39403, - 39404, - 39408, - 39412, - 39413, - 39417, - 39421, - 39422, - 39426, - 39427, - 39428, - 39435, - 39436, - 39440, - 39441, - 39446, - 39454, - 39456, - 39458, - 39459, - 39460, - 39463, - 39469, - 39470, - 39475, - 39477, - 39478, - 39480, - 39495, - 39489, - 39492, - 39498, - 39499, - 39500, - 39502, - 39505, - 39508, - 39510, - 39517, - 39594, - 39596, - 39598, - 39599, - 39602, - 39604, - 39605, - 39606, - 39609, - 39611, - 39614, - 39615, - 39617, - 39619, - 39622, - 39624, - 39630, - 39632, - 39634, - 39637, - 39638, - 39639, - 39643, - 39644, - 39648, - 39652, - 39653, - 39655, - 39657, - 39660, - 39666, - 39667, - 39669, - 39673, - 39674, - 39677, - 39679, - 39680, - 39681, - 39682, - 39683, - 39684, - 39685, - 39688, - 39689, - 39691, - 39692, - 39693, - 39694, - 39696, - 39698, - 39702, - 39705, - 39707, - 39708, - 39712, - 39718, - 39723, - 39725, - 39731, - 39732, - 39733, - 39735, - 39737, - 39738, - 39741, - 39752, - 39755, - 39756, - 39765, - 39766, - 39767, - 39771, - 39774, - 39777, - 39779, - 39781, - 39782, - 39784, - 39786, - 39787, - 39788, - 39789, - 39790, - 39795, - 39797, - 39799, - 39800, - 39801, - 39807, - 39808, - 39812, - 39813, - 39814, - 39815, - 39817, - 39818, - 39819, - 39821, - 39823, - 39824, - 39828, - 39834, - 39837, - 39838, - 39846, - 39847, - 39849, - 39852, - 39856, - 39857, - 39858, - 39863, - 39864, - 39867, - 39868, - 39870, - 39871, - 39873, - 39879, - 39880, - 39886, - 39888, - 39895, - 39896, - 39901, - 39903, - 39909, - 39911, - 39914, - 39915, - 39919, - 39923, - 39927, - 39928, - 39929, - 39930, - 39933, - 39935, - 39936, - 39938, - 39947, - 39951, - 39953, - 39958, - 39960, - 39961, - 39962, - 39964, - 39966, - 39970, - 39971, - 39974, - 39975, - 39976, - 39977, - 39978, - 39985, - 39989, - 39990, - 39991, - 39997, - 40001, - 40003, - 40004, - 40005, - 40009, - 40010, - 40014, - 40015, - 40016, - 40019, - 40020, - 40022, - 40024, - 40027, - 40029, - 40030, - 40031, - 40035, - 40041, - 40042, - 40028, - 40043, - 40040, - 40046, - 40048, - 40050, - 40053, - 40055, - 40059, - 40166, - 40178, - 40183, - 40185, - 40203, - 40194, - 40209, - 40215, - 40216, - 40220, - 40221, - 40222, - 40239, - 40240, - 40242, - 40243, - 40244, - 40250, - 40252, - 40261, - 40253, - 40258, - 40259, - 40263, - 40266, - 40275, - 40276, - 40287, - 40291, - 40290, - 40293, - 40297, - 40298, - 40299, - 40304, - 40310, - 40311, - 40315, - 40316, - 40318, - 40323, - 40324, - 40326, - 40330, - 40333, - 40334, - 40338, - 40339, - 40341, - 40342, - 40343, - 40344, - 40353, - 40362, - 40364, - 40366, - 40369, - 40373, - 40377, - 40380, - 40383, - 40387, - 40391, - 40393, - 40394, - 40404, - 40405, - 40406, - 40407, - 40410, - 40414, - 40415, - 40416, - 40421, - 40423, - 40425, - 40427, - 40430, - 40432, - 40435, - 40436, - 40446, - 40458, - 40450, - 40455, - 40462, - 40464, - 40465, - 40466, - 40469, - 40470, - 40473, - 40476, - 40477, - 40570, - 40571, - 40572, - 40576, - 40578, - 40579, - 40580, - 40581, - 40583, - 40590, - 40591, - 40598, - 40600, - 40603, - 40606, - 40612, - 40616, - 40620, - 40622, - 40623, - 40624, - 40627, - 40628, - 40629, - 40646, - 40648, - 40651, - 40661, - 40671, - 40676, - 40679, - 40684, - 40685, - 40686, - 40688, - 40689, - 40690, - 40693, - 40696, - 40703, - 40706, - 40707, - 40713, - 40719, - 40720, - 40721, - 40722, - 40724, - 40726, - 40727, - 40729, - 40730, - 40731, - 40735, - 40738, - 40742, - 40746, - 40747, - 40751, - 40753, - 40754, - 40756, - 40759, - 40761, - 40762, - 40764, - 40765, - 40767, - 40769, - 40771, - 40772, - 40773, - 40774, - 40775, - 40787, - 40789, - 40790, - 40791, - 40792, - 40794, - 40797, - 40798, - 40808, - 40809, - 40813, - 40814, - 40815, - 40816, - 40817, - 40819, - 40821, - 40826, - 40829, - 40847, - 40848, - 40849, - 40850, - 40852, - 40854, - 40855, - 40862, - 40865, - 40866, - 40867, - 40869, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, + "jis0212": [null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, 728, 711, 184, 729, 733, + 175, 731, 730, 65374, 900, 901, null, null, null, + null, null, null, null, null, 161, 166, 191, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, 186, 170, 169, 174, + 8482, 164, 8470, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, 902, 904, 905, 906, 938, null, 908, null, 910, + 939, null, 911, null, null, null, null, 940, 941, + 942, 943, 970, 912, 972, 962, 973, 971, 944, 974, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, 1026, 1027, 1028, 1029, 1030, + 1031, 1032, 1033, 1034, 1035, 1036, 1038, 1039, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, 1106, 1107, 1108, 1109, 1110, + 1111, 1112, 1113, 1114, 1115, 1116, 1118, 1119, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, 198, 272, null, + 294, null, 306, null, 321, 319, null, 330, 216, 338, + null, 358, 222, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, 230, 273, 240, 295, 305, 307, 312, 322, + 320, 329, 331, 248, 339, 223, 359, 254, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, 193, 192, 196, 194, 258, + 461, 256, 260, 197, 195, 262, 264, 268, 199, 266, + 270, 201, 200, 203, 202, 282, 278, 274, 280, null, + 284, 286, 290, 288, 292, 205, 204, 207, 206, 463, + 304, 298, 302, 296, 308, 310, 313, 317, 315, 323, + 327, 325, 209, 211, 210, 214, 212, 465, 336, 332, + 213, 340, 344, 342, 346, 348, 352, 350, 356, 354, + 218, 217, 220, 219, 364, 467, 368, 362, 370, 366, + 360, 471, 475, 473, 469, 372, 221, 376, 374, 377, + 381, 379, null, null, null, null, null, null, null, + 225, 224, 228, 226, 259, 462, 257, 261, 229, 227, + 263, 265, 269, 231, 267, 271, 233, 232, 235, 234, + 283, 279, 275, 281, 501, 285, 287, null, 289, 293, + 237, 236, 239, 238, 464, null, 299, 303, 297, 309, + 311, 314, 318, 316, 324, 328, 326, 241, 243, 242, + 246, 244, 466, 337, 333, 245, 341, 345, 343, 347, + 349, 353, 351, 357, 355, 250, 249, 252, 251, 365, + 468, 369, 363, 371, 367, 361, 472, 476, 474, 470, + 373, 253, 255, 375, 378, 382, 380, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, 19970, 19972, 19973, 19980, + 19986, 19999, 20003, 20004, 20008, 20011, 20014, + 20015, 20016, 20021, 20032, 20033, 20036, 20039, + 20049, 20058, 20060, 20067, 20072, 20073, 20084, + 20085, 20089, 20095, 20109, 20118, 20119, 20125, + 20143, 20153, 20163, 20176, 20186, 20187, 20192, + 20193, 20194, 20200, 20207, 20209, 20211, 20213, + 20221, 20222, 20223, 20224, 20226, 20227, 20232, + 20235, 20236, 20242, 20245, 20246, 20247, 20249, + 20270, 20273, 20320, 20275, 20277, 20279, 20281, + 20283, 20286, 20288, 20290, 20296, 20297, 20299, + 20300, 20306, 20308, 20310, 20312, 20319, 20323, + 20330, 20332, 20334, 20337, 20343, 20344, 20345, + 20346, 20349, 20350, 20353, 20354, 20356, 20357, + 20361, 20362, 20364, 20366, 20368, 20370, 20371, + 20372, 20375, 20377, 20378, 20382, 20383, 20402, + 20407, 20409, 20411, 20412, 20413, 20414, 20416, + 20417, 20421, 20422, 20424, 20425, 20427, 20428, + 20429, 20431, 20434, 20444, 20448, 20450, 20464, + 20466, 20476, 20477, 20479, 20480, 20481, 20484, + 20487, 20490, 20492, 20494, 20496, 20499, 20503, + 20504, 20507, 20508, 20509, 20510, 20514, 20519, + 20526, 20528, 20530, 20531, 20533, 20544, 20545, + 20546, 20549, 20550, 20554, 20556, 20558, 20561, + 20562, 20563, 20567, 20569, 20575, 20576, 20578, + 20579, 20582, 20583, 20586, 20589, 20592, 20593, + 20539, 20609, 20611, 20612, 20614, 20618, 20622, + 20623, 20624, 20626, 20627, 20628, 20630, 20635, + 20636, 20638, 20639, 20640, 20641, 20642, 20650, + 20655, 20656, 20665, 20666, 20669, 20672, 20675, + 20676, 20679, 20684, 20686, 20688, 20691, 20692, + 20696, 20700, 20701, 20703, 20706, 20708, 20710, + 20712, 20713, 20719, 20721, 20726, 20730, 20734, + 20739, 20742, 20743, 20744, 20747, 20748, 20749, + 20750, 20722, 20752, 20759, 20761, 20763, 20764, + 20765, 20766, 20771, 20775, 20776, 20780, 20781, + 20783, 20785, 20787, 20788, 20789, 20792, 20793, + 20802, 20810, 20815, 20819, 20821, 20823, 20824, + 20831, 20836, 20838, 20862, 20867, 20868, 20875, + 20878, 20888, 20893, 20897, 20899, 20909, 20920, + 20922, 20924, 20926, 20927, 20930, 20936, 20943, + 20945, 20946, 20947, 20949, 20952, 20958, 20962, + 20965, 20974, 20978, 20979, 20980, 20983, 20993, + 20994, 20997, 21010, 21011, 21013, 21014, 21016, + 21026, 21032, 21041, 21042, 21045, 21052, 21061, + 21065, 21077, 21079, 21080, 21082, 21084, 21087, + 21088, 21089, 21094, 21102, 21111, 21112, 21113, + 21120, 21122, 21125, 21130, 21132, 21139, 21141, + 21142, 21143, 21144, 21146, 21148, 21156, 21157, + 21158, 21159, 21167, 21168, 21174, 21175, 21176, + 21178, 21179, 21181, 21184, 21188, 21190, 21192, + 21196, 21199, 21201, 21204, 21206, 21211, 21212, + 21217, 21221, 21224, 21225, 21226, 21228, 21232, + 21233, 21236, 21238, 21239, 21248, 21251, 21258, + 21259, 21260, 21265, 21267, 21272, 21275, 21276, + 21278, 21279, 21285, 21287, 21288, 21289, 21291, + 21292, 21293, 21296, 21298, 21301, 21308, 21309, + 21310, 21314, 21324, 21323, 21337, 21339, 21345, + 21347, 21349, 21356, 21357, 21362, 21369, 21374, + 21379, 21383, 21384, 21390, 21395, 21396, 21401, + 21405, 21409, 21412, 21418, 21419, 21423, 21426, + 21428, 21429, 21431, 21432, 21434, 21437, 21440, + 21445, 21455, 21458, 21459, 21461, 21466, 21469, + 21470, 21472, 21478, 21479, 21493, 21506, 21523, + 21530, 21537, 21543, 21544, 21546, 21551, 21553, + 21556, 21557, 21571, 21572, 21575, 21581, 21583, + 21598, 21602, 21604, 21606, 21607, 21609, 21611, + 21613, 21614, 21620, 21631, 21633, 21635, 21637, + 21640, 21641, 21645, 21649, 21653, 21654, 21660, + 21663, 21665, 21670, 21671, 21673, 21674, 21677, + 21678, 21681, 21687, 21689, 21690, 21691, 21695, + 21702, 21706, 21709, 21710, 21728, 21738, 21740, + 21743, 21750, 21756, 21758, 21759, 21760, 21761, + 21765, 21768, 21769, 21772, 21773, 21774, 21781, + 21802, 21803, 21810, 21813, 21814, 21819, 21820, + 21821, 21825, 21831, 21833, 21834, 21837, 21840, + 21841, 21848, 21850, 21851, 21854, 21856, 21857, + 21860, 21862, 21887, 21889, 21890, 21894, 21896, + 21902, 21903, 21905, 21906, 21907, 21908, 21911, + 21923, 21924, 21933, 21938, 21951, 21953, 21955, + 21958, 21961, 21963, 21964, 21966, 21969, 21970, + 21971, 21975, 21976, 21979, 21982, 21986, 21993, + 22006, 22015, 22021, 22024, 22026, 22029, 22030, + 22031, 22032, 22033, 22034, 22041, 22060, 22064, + 22067, 22069, 22071, 22073, 22075, 22076, 22077, + 22079, 22080, 22081, 22083, 22084, 22086, 22089, + 22091, 22093, 22095, 22100, 22110, 22112, 22113, + 22114, 22115, 22118, 22121, 22125, 22127, 22129, + 22130, 22133, 22148, 22149, 22152, 22155, 22156, + 22165, 22169, 22170, 22173, 22174, 22175, 22182, + 22183, 22184, 22185, 22187, 22188, 22189, 22193, + 22195, 22199, 22206, 22213, 22217, 22218, 22219, + 22223, 22224, 22220, 22221, 22233, 22236, 22237, + 22239, 22241, 22244, 22245, 22246, 22247, 22248, + 22257, 22251, 22253, 22262, 22263, 22273, 22274, + 22279, 22282, 22284, 22289, 22293, 22298, 22299, + 22301, 22304, 22306, 22307, 22308, 22309, 22313, + 22314, 22316, 22318, 22319, 22323, 22324, 22333, + 22334, 22335, 22341, 22342, 22348, 22349, 22354, + 22370, 22373, 22375, 22376, 22379, 22381, 22382, + 22383, 22384, 22385, 22387, 22388, 22389, 22391, + 22393, 22394, 22395, 22396, 22398, 22401, 22403, + 22412, 22420, 22423, 22425, 22426, 22428, 22429, + 22430, 22431, 22433, 22421, 22439, 22440, 22441, + 22444, 22456, 22461, 22471, 22472, 22476, 22479, + 22485, 22493, 22494, 22500, 22502, 22503, 22505, + 22509, 22512, 22517, 22518, 22520, 22525, 22526, + 22527, 22531, 22532, 22536, 22537, 22497, 22540, + 22541, 22555, 22558, 22559, 22560, 22566, 22567, + 22573, 22578, 22585, 22591, 22601, 22604, 22605, + 22607, 22608, 22613, 22623, 22625, 22628, 22631, + 22632, 22648, 22652, 22655, 22656, 22657, 22663, + 22664, 22665, 22666, 22668, 22669, 22671, 22672, + 22676, 22678, 22685, 22688, 22689, 22690, 22694, + 22697, 22705, 22706, 22724, 22716, 22722, 22728, + 22733, 22734, 22736, 22738, 22740, 22742, 22746, + 22749, 22753, 22754, 22761, 22771, 22789, 22790, + 22795, 22796, 22802, 22803, 22804, 34369, 22813, + 22817, 22819, 22820, 22824, 22831, 22832, 22835, + 22837, 22838, 22847, 22851, 22854, 22866, 22867, + 22873, 22875, 22877, 22878, 22879, 22881, 22883, + 22891, 22893, 22895, 22898, 22901, 22902, 22905, + 22907, 22908, 22923, 22924, 22926, 22930, 22933, + 22935, 22943, 22948, 22951, 22957, 22958, 22959, + 22960, 22963, 22967, 22970, 22972, 22977, 22979, + 22980, 22984, 22986, 22989, 22994, 23005, 23006, + 23007, 23011, 23012, 23015, 23022, 23023, 23025, + 23026, 23028, 23031, 23040, 23044, 23052, 23053, + 23054, 23058, 23059, 23070, 23075, 23076, 23079, + 23080, 23082, 23085, 23088, 23108, 23109, 23111, + 23112, 23116, 23120, 23125, 23134, 23139, 23141, + 23143, 23149, 23159, 23162, 23163, 23166, 23179, + 23184, 23187, 23190, 23193, 23196, 23198, 23199, + 23200, 23202, 23207, 23212, 23217, 23218, 23219, + 23221, 23224, 23226, 23227, 23231, 23236, 23238, + 23240, 23247, 23258, 23260, 23264, 23269, 23274, + 23278, 23285, 23286, 23293, 23296, 23297, 23304, + 23319, 23348, 23321, 23323, 23325, 23329, 23333, + 23341, 23352, 23361, 23371, 23372, 23378, 23382, + 23390, 23400, 23406, 23407, 23420, 23421, 23422, + 23423, 23425, 23428, 23430, 23434, 23438, 23440, + 23441, 23443, 23444, 23446, 23464, 23465, 23468, + 23469, 23471, 23473, 23474, 23479, 23482, 23484, + 23488, 23489, 23501, 23503, 23510, 23511, 23512, + 23513, 23514, 23520, 23535, 23537, 23540, 23549, + 23564, 23575, 23582, 23583, 23587, 23590, 23593, + 23595, 23596, 23598, 23600, 23602, 23605, 23606, + 23641, 23642, 23644, 23650, 23651, 23655, 23656, + 23657, 23661, 23664, 23668, 23669, 23674, 23675, + 23676, 23677, 23687, 23688, 23690, 23695, 23698, + 23709, 23711, 23712, 23714, 23715, 23718, 23722, + 23730, 23732, 23733, 23738, 23753, 23755, 23762, + 23773, 23767, 23790, 23793, 23794, 23796, 23809, + 23814, 23821, 23826, 23851, 23843, 23844, 23846, + 23847, 23857, 23860, 23865, 23869, 23871, 23874, + 23875, 23878, 23880, 23893, 23889, 23897, 23882, + 23903, 23904, 23905, 23906, 23908, 23914, 23917, + 23920, 23929, 23930, 23934, 23935, 23937, 23939, + 23944, 23946, 23954, 23955, 23956, 23957, 23961, + 23963, 23967, 23968, 23975, 23979, 23984, 23988, + 23992, 23993, 24003, 24007, 24011, 24016, 24014, + 24024, 24025, 24032, 24036, 24041, 24056, 24057, + 24064, 24071, 24077, 24082, 24084, 24085, 24088, + 24095, 24096, 24110, 24104, 24114, 24117, 24126, + 24139, 24144, 24137, 24145, 24150, 24152, 24155, + 24156, 24158, 24168, 24170, 24171, 24172, 24173, + 24174, 24176, 24192, 24203, 24206, 24226, 24228, + 24229, 24232, 24234, 24236, 24241, 24243, 24253, + 24254, 24255, 24262, 24268, 24267, 24270, 24273, + 24274, 24276, 24277, 24284, 24286, 24293, 24299, + 24322, 24326, 24327, 24328, 24334, 24345, 24348, + 24349, 24353, 24354, 24355, 24356, 24360, 24363, + 24364, 24366, 24368, 24372, 24374, 24379, 24381, + 24383, 24384, 24388, 24389, 24391, 24397, 24400, + 24404, 24408, 24411, 24416, 24419, 24420, 24423, + 24431, 24434, 24436, 24437, 24440, 24442, 24445, + 24446, 24457, 24461, 24463, 24470, 24476, 24477, + 24482, 24487, 24491, 24484, 24492, 24495, 24496, + 24497, 24504, 24516, 24519, 24520, 24521, 24523, + 24528, 24529, 24530, 24531, 24532, 24542, 24545, + 24546, 24552, 24553, 24554, 24556, 24557, 24558, + 24559, 24562, 24563, 24566, 24570, 24572, 24583, + 24586, 24589, 24595, 24596, 24599, 24600, 24602, + 24607, 24612, 24621, 24627, 24629, 24640, 24647, + 24648, 24649, 24652, 24657, 24660, 24662, 24663, + 24669, 24673, 24679, 24689, 24702, 24703, 24706, + 24710, 24712, 24714, 24718, 24721, 24723, 24725, + 24728, 24733, 24734, 24738, 24740, 24741, 24744, + 24752, 24753, 24759, 24763, 24766, 24770, 24772, + 24776, 24777, 24778, 24779, 24782, 24783, 24788, + 24789, 24793, 24795, 24797, 24798, 24802, 24805, + 24818, 24821, 24824, 24828, 24829, 24834, 24839, + 24842, 24844, 24848, 24849, 24850, 24851, 24852, + 24854, 24855, 24857, 24860, 24862, 24866, 24874, + 24875, 24880, 24881, 24885, 24886, 24887, 24889, + 24897, 24901, 24902, 24905, 24926, 24928, 24940, + 24946, 24952, 24955, 24956, 24959, 24960, 24961, + 24963, 24964, 24971, 24973, 24978, 24979, 24983, + 24984, 24988, 24989, 24991, 24992, 24997, 25000, + 25002, 25005, 25016, 25017, 25020, 25024, 25025, + 25026, 25038, 25039, 25045, 25052, 25053, 25054, + 25055, 25057, 25058, 25063, 25065, 25061, 25068, + 25069, 25071, 25089, 25091, 25092, 25095, 25107, + 25109, 25116, 25120, 25122, 25123, 25127, 25129, + 25131, 25145, 25149, 25154, 25155, 25156, 25158, + 25164, 25168, 25169, 25170, 25172, 25174, 25178, + 25180, 25188, 25197, 25199, 25203, 25210, 25213, + 25229, 25230, 25231, 25232, 25254, 25256, 25267, + 25270, 25271, 25274, 25278, 25279, 25284, 25294, + 25301, 25302, 25306, 25322, 25330, 25332, 25340, + 25341, 25347, 25348, 25354, 25355, 25357, 25360, + 25363, 25366, 25368, 25385, 25386, 25389, 25397, + 25398, 25401, 25404, 25409, 25410, 25411, 25412, + 25414, 25418, 25419, 25422, 25426, 25427, 25428, + 25432, 25435, 25445, 25446, 25452, 25453, 25457, + 25460, 25461, 25464, 25468, 25469, 25471, 25474, + 25476, 25479, 25482, 25488, 25492, 25493, 25497, + 25498, 25502, 25508, 25510, 25517, 25518, 25519, + 25533, 25537, 25541, 25544, 25550, 25553, 25555, + 25556, 25557, 25564, 25568, 25573, 25578, 25580, + 25586, 25587, 25589, 25592, 25593, 25609, 25610, + 25616, 25618, 25620, 25624, 25630, 25632, 25634, + 25636, 25637, 25641, 25642, 25647, 25648, 25653, + 25661, 25663, 25675, 25679, 25681, 25682, 25683, + 25684, 25690, 25691, 25692, 25693, 25695, 25696, + 25697, 25699, 25709, 25715, 25716, 25723, 25725, + 25733, 25735, 25743, 25744, 25745, 25752, 25753, + 25755, 25757, 25759, 25761, 25763, 25766, 25768, + 25772, 25779, 25789, 25790, 25791, 25796, 25801, + 25802, 25803, 25804, 25806, 25808, 25809, 25813, + 25815, 25828, 25829, 25833, 25834, 25837, 25840, + 25845, 25847, 25851, 25855, 25857, 25860, 25864, + 25865, 25866, 25871, 25875, 25876, 25878, 25881, + 25883, 25886, 25887, 25890, 25894, 25897, 25902, + 25905, 25914, 25916, 25917, 25923, 25927, 25929, + 25936, 25938, 25940, 25951, 25952, 25959, 25963, + 25978, 25981, 25985, 25989, 25994, 26002, 26005, + 26008, 26013, 26016, 26019, 26022, 26030, 26034, + 26035, 26036, 26047, 26050, 26056, 26057, 26062, + 26064, 26068, 26070, 26072, 26079, 26096, 26098, + 26100, 26101, 26105, 26110, 26111, 26112, 26116, + 26120, 26121, 26125, 26129, 26130, 26133, 26134, + 26141, 26142, 26145, 26146, 26147, 26148, 26150, + 26153, 26154, 26155, 26156, 26158, 26160, 26161, + 26163, 26169, 26167, 26176, 26181, 26182, 26186, + 26188, 26193, 26190, 26199, 26200, 26201, 26203, + 26204, 26208, 26209, 26363, 26218, 26219, 26220, + 26238, 26227, 26229, 26239, 26231, 26232, 26233, + 26235, 26240, 26236, 26251, 26252, 26253, 26256, + 26258, 26265, 26266, 26267, 26268, 26271, 26272, + 26276, 26285, 26289, 26290, 26293, 26299, 26303, + 26304, 26306, 26307, 26312, 26316, 26318, 26319, + 26324, 26331, 26335, 26344, 26347, 26348, 26350, + 26362, 26373, 26375, 26382, 26387, 26393, 26396, + 26400, 26402, 26419, 26430, 26437, 26439, 26440, + 26444, 26452, 26453, 26461, 26470, 26476, 26478, + 26484, 26486, 26491, 26497, 26500, 26510, 26511, + 26513, 26515, 26518, 26520, 26521, 26523, 26544, + 26545, 26546, 26549, 26555, 26556, 26557, 26617, + 26560, 26562, 26563, 26565, 26568, 26569, 26578, + 26583, 26585, 26588, 26593, 26598, 26608, 26610, + 26614, 26615, 26706, 26644, 26649, 26653, 26655, + 26664, 26663, 26668, 26669, 26671, 26672, 26673, + 26675, 26683, 26687, 26692, 26693, 26698, 26700, + 26709, 26711, 26712, 26715, 26731, 26734, 26735, + 26736, 26737, 26738, 26741, 26745, 26746, 26747, + 26748, 26754, 26756, 26758, 26760, 26774, 26776, + 26778, 26780, 26785, 26787, 26789, 26793, 26794, + 26798, 26802, 26811, 26821, 26824, 26828, 26831, + 26832, 26833, 26835, 26838, 26841, 26844, 26845, + 26853, 26856, 26858, 26859, 26860, 26861, 26864, + 26865, 26869, 26870, 26875, 26876, 26877, 26886, + 26889, 26890, 26896, 26897, 26899, 26902, 26903, + 26929, 26931, 26933, 26936, 26939, 26946, 26949, + 26953, 26958, 26967, 26971, 26979, 26980, 26981, + 26982, 26984, 26985, 26988, 26992, 26993, 26994, + 27002, 27003, 27007, 27008, 27021, 27026, 27030, + 27032, 27041, 27045, 27046, 27048, 27051, 27053, + 27055, 27063, 27064, 27066, 27068, 27077, 27080, + 27089, 27094, 27095, 27106, 27109, 27118, 27119, + 27121, 27123, 27125, 27134, 27136, 27137, 27139, + 27151, 27153, 27157, 27162, 27165, 27168, 27172, + 27176, 27184, 27186, 27188, 27191, 27195, 27198, + 27199, 27205, 27206, 27209, 27210, 27214, 27216, + 27217, 27218, 27221, 27222, 27227, 27236, 27239, + 27242, 27249, 27251, 27262, 27265, 27267, 27270, + 27271, 27273, 27275, 27281, 27291, 27293, 27294, + 27295, 27301, 27307, 27311, 27312, 27313, 27316, + 27325, 27326, 27327, 27334, 27337, 27336, 27340, + 27344, 27348, 27349, 27350, 27356, 27357, 27364, + 27367, 27372, 27376, 27377, 27378, 27388, 27389, + 27394, 27395, 27398, 27399, 27401, 27407, 27408, + 27409, 27415, 27419, 27422, 27428, 27432, 27435, + 27436, 27439, 27445, 27446, 27451, 27455, 27462, + 27466, 27469, 27474, 27478, 27480, 27485, 27488, + 27495, 27499, 27502, 27504, 27509, 27517, 27518, + 27522, 27525, 27543, 27547, 27551, 27552, 27554, + 27555, 27560, 27561, 27564, 27565, 27566, 27568, + 27576, 27577, 27581, 27582, 27587, 27588, 27593, + 27596, 27606, 27610, 27617, 27619, 27622, 27623, + 27630, 27633, 27639, 27641, 27647, 27650, 27652, + 27653, 27657, 27661, 27662, 27664, 27666, 27673, + 27679, 27686, 27687, 27688, 27692, 27694, 27699, + 27701, 27702, 27706, 27707, 27711, 27722, 27723, + 27725, 27727, 27730, 27732, 27737, 27739, 27740, + 27755, 27757, 27759, 27764, 27766, 27768, 27769, + 27771, 27781, 27782, 27783, 27785, 27796, 27797, + 27799, 27800, 27804, 27807, 27824, 27826, 27828, + 27842, 27846, 27853, 27855, 27856, 27857, 27858, + 27860, 27862, 27866, 27868, 27872, 27879, 27881, + 27883, 27884, 27886, 27890, 27892, 27908, 27911, + 27914, 27918, 27919, 27921, 27923, 27930, 27942, + 27943, 27944, 27751, 27950, 27951, 27953, 27961, + 27964, 27967, 27991, 27998, 27999, 28001, 28005, + 28007, 28015, 28016, 28028, 28034, 28039, 28049, + 28050, 28052, 28054, 28055, 28056, 28074, 28076, + 28084, 28087, 28089, 28093, 28095, 28100, 28104, + 28106, 28110, 28111, 28118, 28123, 28125, 28127, + 28128, 28130, 28133, 28137, 28143, 28144, 28148, + 28150, 28156, 28160, 28164, 28190, 28194, 28199, + 28210, 28214, 28217, 28219, 28220, 28228, 28229, + 28232, 28233, 28235, 28239, 28241, 28242, 28243, + 28244, 28247, 28252, 28253, 28254, 28258, 28259, + 28264, 28275, 28283, 28285, 28301, 28307, 28313, + 28320, 28327, 28333, 28334, 28337, 28339, 28347, + 28351, 28352, 28353, 28355, 28359, 28360, 28362, + 28365, 28366, 28367, 28395, 28397, 28398, 28409, + 28411, 28413, 28420, 28424, 28426, 28428, 28429, + 28438, 28440, 28442, 28443, 28454, 28457, 28458, + 28463, 28464, 28467, 28470, 28475, 28476, 28461, + 28495, 28497, 28498, 28499, 28503, 28505, 28506, + 28509, 28510, 28513, 28514, 28520, 28524, 28541, + 28542, 28547, 28551, 28552, 28555, 28556, 28557, + 28560, 28562, 28563, 28564, 28566, 28570, 28575, + 28576, 28581, 28582, 28583, 28584, 28590, 28591, + 28592, 28597, 28598, 28604, 28613, 28615, 28616, + 28618, 28634, 28638, 28648, 28649, 28656, 28661, + 28665, 28668, 28669, 28672, 28677, 28678, 28679, + 28685, 28695, 28704, 28707, 28719, 28724, 28727, + 28729, 28732, 28739, 28740, 28744, 28745, 28746, + 28747, 28756, 28757, 28765, 28766, 28750, 28772, + 28773, 28780, 28782, 28789, 28790, 28798, 28801, + 28805, 28806, 28820, 28821, 28822, 28823, 28824, + 28827, 28836, 28843, 28848, 28849, 28852, 28855, + 28874, 28881, 28883, 28884, 28885, 28886, 28888, + 28892, 28900, 28922, 28931, 28932, 28933, 28934, + 28935, 28939, 28940, 28943, 28958, 28960, 28971, + 28973, 28975, 28976, 28977, 28984, 28993, 28997, + 28998, 28999, 29002, 29003, 29008, 29010, 29015, + 29018, 29020, 29022, 29024, 29032, 29049, 29056, + 29061, 29063, 29068, 29074, 29082, 29083, 29088, + 29090, 29103, 29104, 29106, 29107, 29114, 29119, + 29120, 29121, 29124, 29131, 29132, 29139, 29142, + 29145, 29146, 29148, 29176, 29182, 29184, 29191, + 29192, 29193, 29203, 29207, 29210, 29213, 29215, + 29220, 29227, 29231, 29236, 29240, 29241, 29249, + 29250, 29251, 29253, 29262, 29263, 29264, 29267, + 29269, 29270, 29274, 29276, 29278, 29280, 29283, + 29288, 29291, 29294, 29295, 29297, 29303, 29304, + 29307, 29308, 29311, 29316, 29321, 29325, 29326, + 29331, 29339, 29352, 29357, 29358, 29361, 29364, + 29374, 29377, 29383, 29385, 29388, 29397, 29398, + 29400, 29407, 29413, 29427, 29428, 29434, 29435, + 29438, 29442, 29444, 29445, 29447, 29451, 29453, + 29458, 29459, 29464, 29465, 29470, 29474, 29476, + 29479, 29480, 29484, 29489, 29490, 29493, 29498, + 29499, 29501, 29507, 29517, 29520, 29522, 29526, + 29528, 29533, 29534, 29535, 29536, 29542, 29543, + 29545, 29547, 29548, 29550, 29551, 29553, 29559, + 29561, 29564, 29568, 29569, 29571, 29573, 29574, + 29582, 29584, 29587, 29589, 29591, 29592, 29596, + 29598, 29599, 29600, 29602, 29605, 29606, 29610, + 29611, 29613, 29621, 29623, 29625, 29628, 29629, + 29631, 29637, 29638, 29641, 29643, 29644, 29647, + 29650, 29651, 29654, 29657, 29661, 29665, 29667, + 29670, 29671, 29673, 29684, 29685, 29687, 29689, + 29690, 29691, 29693, 29695, 29696, 29697, 29700, + 29703, 29706, 29713, 29722, 29723, 29732, 29734, + 29736, 29737, 29738, 29739, 29740, 29741, 29742, + 29743, 29744, 29745, 29753, 29760, 29763, 29764, + 29766, 29767, 29771, 29773, 29777, 29778, 29783, + 29789, 29794, 29798, 29799, 29800, 29803, 29805, + 29806, 29809, 29810, 29824, 29825, 29829, 29830, + 29831, 29833, 29839, 29840, 29841, 29842, 29848, + 29849, 29850, 29852, 29855, 29856, 29857, 29859, + 29862, 29864, 29865, 29866, 29867, 29870, 29871, + 29873, 29874, 29877, 29881, 29883, 29887, 29896, + 29897, 29900, 29904, 29907, 29912, 29914, 29915, + 29918, 29919, 29924, 29928, 29930, 29931, 29935, + 29940, 29946, 29947, 29948, 29951, 29958, 29970, + 29974, 29975, 29984, 29985, 29988, 29991, 29993, + 29994, 29999, 30006, 30009, 30013, 30014, 30015, + 30016, 30019, 30023, 30024, 30030, 30032, 30034, + 30039, 30046, 30047, 30049, 30063, 30065, 30073, + 30074, 30075, 30076, 30077, 30078, 30081, 30085, + 30096, 30098, 30099, 30101, 30105, 30108, 30114, + 30116, 30132, 30138, 30143, 30144, 30145, 30148, + 30150, 30156, 30158, 30159, 30167, 30172, 30175, + 30176, 30177, 30180, 30183, 30188, 30190, 30191, + 30193, 30201, 30208, 30210, 30211, 30212, 30215, + 30216, 30218, 30220, 30223, 30226, 30227, 30229, + 30230, 30233, 30235, 30236, 30237, 30238, 30243, + 30245, 30246, 30249, 30253, 30258, 30259, 30261, + 30264, 30265, 30266, 30268, 30282, 30272, 30273, + 30275, 30276, 30277, 30281, 30283, 30293, 30297, + 30303, 30308, 30309, 30317, 30318, 30319, 30321, + 30324, 30337, 30341, 30348, 30349, 30357, 30363, + 30364, 30365, 30367, 30368, 30370, 30371, 30372, + 30373, 30374, 30375, 30376, 30378, 30381, 30397, + 30401, 30405, 30409, 30411, 30412, 30414, 30420, + 30425, 30432, 30438, 30440, 30444, 30448, 30449, + 30454, 30457, 30460, 30464, 30470, 30474, 30478, + 30482, 30484, 30485, 30487, 30489, 30490, 30492, + 30498, 30504, 30509, 30510, 30511, 30516, 30517, + 30518, 30521, 30525, 30526, 30530, 30533, 30534, + 30538, 30541, 30542, 30543, 30546, 30550, 30551, + 30556, 30558, 30559, 30560, 30562, 30564, 30567, + 30570, 30572, 30576, 30578, 30579, 30580, 30586, + 30589, 30592, 30596, 30604, 30605, 30612, 30613, + 30614, 30618, 30623, 30626, 30631, 30634, 30638, + 30639, 30641, 30645, 30654, 30659, 30665, 30673, + 30674, 30677, 30681, 30686, 30687, 30688, 30692, + 30694, 30698, 30700, 30704, 30705, 30708, 30712, + 30715, 30725, 30726, 30729, 30733, 30734, 30737, + 30749, 30753, 30754, 30755, 30765, 30766, 30768, + 30773, 30775, 30787, 30788, 30791, 30792, 30796, + 30798, 30802, 30812, 30814, 30816, 30817, 30819, + 30820, 30824, 30826, 30830, 30842, 30846, 30858, + 30863, 30868, 30872, 30881, 30877, 30878, 30879, + 30884, 30888, 30892, 30893, 30896, 30897, 30898, + 30899, 30907, 30909, 30911, 30919, 30920, 30921, + 30924, 30926, 30930, 30931, 30933, 30934, 30948, + 30939, 30943, 30944, 30945, 30950, 30954, 30962, + 30963, 30976, 30966, 30967, 30970, 30971, 30975, + 30982, 30988, 30992, 31002, 31004, 31006, 31007, + 31008, 31013, 31015, 31017, 31021, 31025, 31028, + 31029, 31035, 31037, 31039, 31044, 31045, 31046, + 31050, 31051, 31055, 31057, 31060, 31064, 31067, + 31068, 31079, 31081, 31083, 31090, 31097, 31099, + 31100, 31102, 31115, 31116, 31121, 31123, 31124, + 31125, 31126, 31128, 31131, 31132, 31137, 31144, + 31145, 31147, 31151, 31153, 31156, 31160, 31163, + 31170, 31172, 31175, 31176, 31178, 31183, 31188, + 31190, 31194, 31197, 31198, 31200, 31202, 31205, + 31210, 31211, 31213, 31217, 31224, 31228, 31234, + 31235, 31239, 31241, 31242, 31244, 31249, 31253, + 31259, 31262, 31265, 31271, 31275, 31277, 31279, + 31280, 31284, 31285, 31288, 31289, 31290, 31300, + 31301, 31303, 31304, 31308, 31317, 31318, 31321, + 31324, 31325, 31327, 31328, 31333, 31335, 31338, + 31341, 31349, 31352, 31358, 31360, 31362, 31365, + 31366, 31370, 31371, 31376, 31377, 31380, 31390, + 31392, 31395, 31404, 31411, 31413, 31417, 31419, + 31420, 31430, 31433, 31436, 31438, 31441, 31451, + 31464, 31465, 31467, 31468, 31473, 31476, 31483, + 31485, 31486, 31495, 31508, 31519, 31523, 31527, + 31529, 31530, 31531, 31533, 31534, 31535, 31536, + 31537, 31540, 31549, 31551, 31552, 31553, 31559, + 31566, 31573, 31584, 31588, 31590, 31593, 31594, + 31597, 31599, 31602, 31603, 31607, 31620, 31625, + 31630, 31632, 31633, 31638, 31643, 31646, 31648, + 31653, 31660, 31663, 31664, 31666, 31669, 31670, + 31674, 31675, 31676, 31677, 31682, 31685, 31688, + 31690, 31700, 31702, 31703, 31705, 31706, 31707, + 31720, 31722, 31730, 31732, 31733, 31736, 31737, + 31738, 31740, 31742, 31745, 31746, 31747, 31748, + 31750, 31753, 31755, 31756, 31758, 31759, 31769, + 31771, 31776, 31781, 31782, 31784, 31788, 31793, + 31795, 31796, 31798, 31801, 31802, 31814, 31818, + 31829, 31825, 31826, 31827, 31833, 31834, 31835, + 31836, 31837, 31838, 31841, 31843, 31847, 31849, + 31853, 31854, 31856, 31858, 31865, 31868, 31869, + 31878, 31879, 31887, 31892, 31902, 31904, 31910, + 31920, 31926, 31927, 31930, 31931, 31932, 31935, + 31940, 31943, 31944, 31945, 31949, 31951, 31955, + 31956, 31957, 31959, 31961, 31962, 31965, 31974, + 31977, 31979, 31989, 32003, 32007, 32008, 32009, + 32015, 32017, 32018, 32019, 32022, 32029, 32030, + 32035, 32038, 32042, 32045, 32049, 32060, 32061, + 32062, 32064, 32065, 32071, 32072, 32077, 32081, + 32083, 32087, 32089, 32090, 32092, 32093, 32101, + 32103, 32106, 32112, 32120, 32122, 32123, 32127, + 32129, 32130, 32131, 32133, 32134, 32136, 32139, + 32140, 32141, 32145, 32150, 32151, 32157, 32158, + 32166, 32167, 32170, 32179, 32182, 32183, 32185, + 32194, 32195, 32196, 32197, 32198, 32204, 32205, + 32206, 32215, 32217, 32256, 32226, 32229, 32230, + 32234, 32235, 32237, 32241, 32245, 32246, 32249, + 32250, 32264, 32272, 32273, 32277, 32279, 32284, + 32285, 32288, 32295, 32296, 32300, 32301, 32303, + 32307, 32310, 32319, 32324, 32325, 32327, 32334, + 32336, 32338, 32344, 32351, 32353, 32354, 32357, + 32363, 32366, 32367, 32371, 32376, 32382, 32385, + 32390, 32391, 32394, 32397, 32401, 32405, 32408, + 32410, 32413, 32414, 32572, 32571, 32573, 32574, + 32575, 32579, 32580, 32583, 32591, 32594, 32595, + 32603, 32604, 32605, 32609, 32611, 32612, 32613, + 32614, 32621, 32625, 32637, 32638, 32639, 32640, + 32651, 32653, 32655, 32656, 32657, 32662, 32663, + 32668, 32673, 32674, 32678, 32682, 32685, 32692, + 32700, 32703, 32704, 32707, 32712, 32718, 32719, + 32731, 32735, 32739, 32741, 32744, 32748, 32750, + 32751, 32754, 32762, 32765, 32766, 32767, 32775, + 32776, 32778, 32781, 32782, 32783, 32785, 32787, + 32788, 32790, 32797, 32798, 32799, 32800, 32804, + 32806, 32812, 32814, 32816, 32820, 32821, 32823, + 32825, 32826, 32828, 32830, 32832, 32836, 32864, + 32868, 32870, 32877, 32881, 32885, 32897, 32904, + 32910, 32924, 32926, 32934, 32935, 32939, 32952, + 32953, 32968, 32973, 32975, 32978, 32980, 32981, + 32983, 32984, 32992, 33005, 33006, 33008, 33010, + 33011, 33014, 33017, 33018, 33022, 33027, 33035, + 33046, 33047, 33048, 33052, 33054, 33056, 33060, + 33063, 33068, 33072, 33077, 33082, 33084, 33093, + 33095, 33098, 33100, 33106, 33111, 33120, 33121, + 33127, 33128, 33129, 33133, 33135, 33143, 33153, + 33168, 33156, 33157, 33158, 33163, 33166, 33174, + 33176, 33179, 33182, 33186, 33198, 33202, 33204, + 33211, 33227, 33219, 33221, 33226, 33230, 33231, + 33237, 33239, 33243, 33245, 33246, 33249, 33252, + 33259, 33260, 33264, 33265, 33266, 33269, 33270, + 33272, 33273, 33277, 33279, 33280, 33283, 33295, + 33299, 33300, 33305, 33306, 33309, 33313, 33314, + 33320, 33330, 33332, 33338, 33347, 33348, 33349, + 33350, 33355, 33358, 33359, 33361, 33366, 33372, + 33376, 33379, 33383, 33389, 33396, 33403, 33405, + 33407, 33408, 33409, 33411, 33412, 33415, 33417, + 33418, 33422, 33425, 33428, 33430, 33432, 33434, + 33435, 33440, 33441, 33443, 33444, 33447, 33448, + 33449, 33450, 33454, 33456, 33458, 33460, 33463, + 33466, 33468, 33470, 33471, 33478, 33488, 33493, + 33498, 33504, 33506, 33508, 33512, 33514, 33517, + 33519, 33526, 33527, 33533, 33534, 33536, 33537, + 33543, 33544, 33546, 33547, 33620, 33563, 33565, + 33566, 33567, 33569, 33570, 33580, 33581, 33582, + 33584, 33587, 33591, 33594, 33596, 33597, 33602, + 33603, 33604, 33607, 33613, 33614, 33617, 33621, + 33622, 33623, 33648, 33656, 33661, 33663, 33664, + 33666, 33668, 33670, 33677, 33682, 33684, 33685, + 33688, 33689, 33691, 33692, 33693, 33702, 33703, + 33705, 33708, 33726, 33727, 33728, 33735, 33737, + 33743, 33744, 33745, 33748, 33757, 33619, 33768, + 33770, 33782, 33784, 33785, 33788, 33793, 33798, + 33802, 33807, 33809, 33813, 33817, 33709, 33839, + 33849, 33861, 33863, 33864, 33866, 33869, 33871, + 33873, 33874, 33878, 33880, 33881, 33882, 33884, + 33888, 33892, 33893, 33895, 33898, 33904, 33907, + 33908, 33910, 33912, 33916, 33917, 33921, 33925, + 33938, 33939, 33941, 33950, 33958, 33960, 33961, + 33962, 33967, 33969, 33972, 33978, 33981, 33982, + 33984, 33986, 33991, 33992, 33996, 33999, 34003, + 34012, 34023, 34026, 34031, 34032, 34033, 34034, + 34039, 34098, 34042, 34043, 34045, 34050, 34051, + 34055, 34060, 34062, 34064, 34076, 34078, 34082, + 34083, 34084, 34085, 34087, 34090, 34091, 34095, + 34099, 34100, 34102, 34111, 34118, 34127, 34128, + 34129, 34130, 34131, 34134, 34137, 34140, 34141, + 34142, 34143, 34144, 34145, 34146, 34148, 34155, + 34159, 34169, 34170, 34171, 34173, 34175, 34177, + 34181, 34182, 34185, 34187, 34188, 34191, 34195, + 34200, 34205, 34207, 34208, 34210, 34213, 34215, + 34228, 34230, 34231, 34232, 34236, 34237, 34238, + 34239, 34242, 34247, 34250, 34251, 34254, 34221, + 34264, 34266, 34271, 34272, 34278, 34280, 34285, + 34291, 34294, 34300, 34303, 34304, 34308, 34309, + 34317, 34318, 34320, 34321, 34322, 34328, 34329, + 34331, 34334, 34337, 34343, 34345, 34358, 34360, + 34362, 34364, 34365, 34368, 34370, 34374, 34386, + 34387, 34390, 34391, 34392, 34393, 34397, 34400, + 34401, 34402, 34403, 34404, 34409, 34412, 34415, + 34421, 34422, 34423, 34426, 34445, 34449, 34454, + 34456, 34458, 34460, 34465, 34470, 34471, 34472, + 34477, 34481, 34483, 34484, 34485, 34487, 34488, + 34489, 34495, 34496, 34497, 34499, 34501, 34513, + 34514, 34517, 34519, 34522, 34524, 34528, 34531, + 34533, 34535, 34440, 34554, 34556, 34557, 34564, + 34565, 34567, 34571, 34574, 34575, 34576, 34579, + 34580, 34585, 34590, 34591, 34593, 34595, 34600, + 34606, 34607, 34609, 34610, 34617, 34618, 34620, + 34621, 34622, 34624, 34627, 34629, 34637, 34648, + 34653, 34657, 34660, 34661, 34671, 34673, 34674, + 34683, 34691, 34692, 34693, 34694, 34695, 34696, + 34697, 34699, 34700, 34704, 34707, 34709, 34711, + 34712, 34713, 34718, 34720, 34723, 34727, 34732, + 34733, 34734, 34737, 34741, 34750, 34751, 34753, + 34760, 34761, 34762, 34766, 34773, 34774, 34777, + 34778, 34780, 34783, 34786, 34787, 34788, 34794, + 34795, 34797, 34801, 34803, 34808, 34810, 34815, + 34817, 34819, 34822, 34825, 34826, 34827, 34832, + 34841, 34834, 34835, 34836, 34840, 34842, 34843, + 34844, 34846, 34847, 34856, 34861, 34862, 34864, + 34866, 34869, 34874, 34876, 34881, 34883, 34885, + 34888, 34889, 34890, 34891, 34894, 34897, 34901, + 34902, 34904, 34906, 34908, 34911, 34912, 34916, + 34921, 34929, 34937, 34939, 34944, 34968, 34970, + 34971, 34972, 34975, 34976, 34984, 34986, 35002, + 35005, 35006, 35008, 35018, 35019, 35020, 35021, + 35022, 35025, 35026, 35027, 35035, 35038, 35047, + 35055, 35056, 35057, 35061, 35063, 35073, 35078, + 35085, 35086, 35087, 35093, 35094, 35096, 35097, + 35098, 35100, 35104, 35110, 35111, 35112, 35120, + 35121, 35122, 35125, 35129, 35130, 35134, 35136, + 35138, 35141, 35142, 35145, 35151, 35154, 35159, + 35162, 35163, 35164, 35169, 35170, 35171, 35179, + 35182, 35184, 35187, 35189, 35194, 35195, 35196, + 35197, 35209, 35213, 35216, 35220, 35221, 35227, + 35228, 35231, 35232, 35237, 35248, 35252, 35253, + 35254, 35255, 35260, 35284, 35285, 35286, 35287, + 35288, 35301, 35305, 35307, 35309, 35313, 35315, + 35318, 35321, 35325, 35327, 35332, 35333, 35335, + 35343, 35345, 35346, 35348, 35349, 35358, 35360, + 35362, 35364, 35366, 35371, 35372, 35375, 35381, + 35383, 35389, 35390, 35392, 35395, 35397, 35399, + 35401, 35405, 35406, 35411, 35414, 35415, 35416, + 35420, 35421, 35425, 35429, 35431, 35445, 35446, + 35447, 35449, 35450, 35451, 35454, 35455, 35456, + 35459, 35462, 35467, 35471, 35472, 35474, 35478, + 35479, 35481, 35487, 35495, 35497, 35502, 35503, + 35507, 35510, 35511, 35515, 35518, 35523, 35526, + 35528, 35529, 35530, 35537, 35539, 35540, 35541, + 35543, 35549, 35551, 35564, 35568, 35572, 35573, + 35574, 35580, 35583, 35589, 35590, 35595, 35601, + 35612, 35614, 35615, 35594, 35629, 35632, 35639, + 35644, 35650, 35651, 35652, 35653, 35654, 35656, + 35666, 35667, 35668, 35673, 35661, 35678, 35683, + 35693, 35702, 35704, 35705, 35708, 35710, 35713, + 35716, 35717, 35723, 35725, 35727, 35732, 35733, + 35740, 35742, 35743, 35896, 35897, 35901, 35902, + 35909, 35911, 35913, 35915, 35919, 35921, 35923, + 35924, 35927, 35928, 35931, 35933, 35929, 35939, + 35940, 35942, 35944, 35945, 35949, 35955, 35957, + 35958, 35963, 35966, 35974, 35975, 35979, 35984, + 35986, 35987, 35993, 35995, 35996, 36004, 36025, + 36026, 36037, 36038, 36041, 36043, 36047, 36054, + 36053, 36057, 36061, 36065, 36072, 36076, 36079, + 36080, 36082, 36085, 36087, 36088, 36094, 36095, + 36097, 36099, 36105, 36114, 36119, 36123, 36197, + 36201, 36204, 36206, 36223, 36226, 36228, 36232, + 36237, 36240, 36241, 36245, 36254, 36255, 36256, + 36262, 36267, 36268, 36271, 36274, 36277, 36279, + 36281, 36283, 36288, 36293, 36294, 36295, 36296, + 36298, 36302, 36305, 36308, 36309, 36311, 36313, + 36324, 36325, 36327, 36332, 36336, 36284, 36337, + 36338, 36340, 36349, 36353, 36356, 36357, 36358, + 36363, 36369, 36372, 36374, 36384, 36385, 36386, + 36387, 36390, 36391, 36401, 36403, 36406, 36407, + 36408, 36409, 36413, 36416, 36417, 36427, 36429, + 36430, 36431, 36436, 36443, 36444, 36445, 36446, + 36449, 36450, 36457, 36460, 36461, 36463, 36464, + 36465, 36473, 36474, 36475, 36482, 36483, 36489, + 36496, 36498, 36501, 36506, 36507, 36509, 36510, + 36514, 36519, 36521, 36525, 36526, 36531, 36533, + 36538, 36539, 36544, 36545, 36547, 36548, 36551, + 36559, 36561, 36564, 36572, 36584, 36590, 36592, + 36593, 36599, 36601, 36602, 36589, 36608, 36610, + 36615, 36616, 36623, 36624, 36630, 36631, 36632, + 36638, 36640, 36641, 36643, 36645, 36647, 36648, + 36652, 36653, 36654, 36660, 36661, 36662, 36663, + 36666, 36672, 36673, 36675, 36679, 36687, 36689, + 36690, 36691, 36692, 36693, 36696, 36701, 36702, + 36709, 36765, 36768, 36769, 36772, 36773, 36774, + 36789, 36790, 36792, 36798, 36800, 36801, 36806, + 36810, 36811, 36813, 36816, 36818, 36819, 36821, + 36832, 36835, 36836, 36840, 36846, 36849, 36853, + 36854, 36859, 36862, 36866, 36868, 36872, 36876, + 36888, 36891, 36904, 36905, 36911, 36906, 36908, + 36909, 36915, 36916, 36919, 36927, 36931, 36932, + 36940, 36955, 36957, 36962, 36966, 36967, 36972, + 36976, 36980, 36985, 36997, 37000, 37003, 37004, + 37006, 37008, 37013, 37015, 37016, 37017, 37019, + 37024, 37025, 37026, 37029, 37040, 37042, 37043, + 37044, 37046, 37053, 37068, 37054, 37059, 37060, + 37061, 37063, 37064, 37077, 37079, 37080, 37081, + 37084, 37085, 37087, 37093, 37074, 37110, 37099, + 37103, 37104, 37108, 37118, 37119, 37120, 37124, + 37125, 37126, 37128, 37133, 37136, 37140, 37142, + 37143, 37144, 37146, 37148, 37150, 37152, 37157, + 37154, 37155, 37159, 37161, 37166, 37167, 37169, + 37172, 37174, 37175, 37177, 37178, 37180, 37181, + 37187, 37191, 37192, 37199, 37203, 37207, 37209, + 37210, 37211, 37217, 37220, 37223, 37229, 37236, + 37241, 37242, 37243, 37249, 37251, 37253, 37254, + 37258, 37262, 37265, 37267, 37268, 37269, 37272, + 37278, 37281, 37286, 37288, 37292, 37293, 37294, + 37296, 37297, 37298, 37299, 37302, 37307, 37308, + 37309, 37311, 37314, 37315, 37317, 37331, 37332, + 37335, 37337, 37338, 37342, 37348, 37349, 37353, + 37354, 37356, 37357, 37358, 37359, 37360, 37361, + 37367, 37369, 37371, 37373, 37376, 37377, 37380, + 37381, 37382, 37383, 37385, 37386, 37388, 37392, + 37394, 37395, 37398, 37400, 37404, 37405, 37411, + 37412, 37413, 37414, 37416, 37422, 37423, 37424, + 37427, 37429, 37430, 37432, 37433, 37434, 37436, + 37438, 37440, 37442, 37443, 37446, 37447, 37450, + 37453, 37454, 37455, 37457, 37464, 37465, 37468, + 37469, 37472, 37473, 37477, 37479, 37480, 37481, + 37486, 37487, 37488, 37493, 37494, 37495, 37496, + 37497, 37499, 37500, 37501, 37503, 37512, 37513, + 37514, 37517, 37518, 37522, 37527, 37529, 37535, + 37536, 37540, 37541, 37543, 37544, 37547, 37551, + 37554, 37558, 37560, 37562, 37563, 37564, 37565, + 37567, 37568, 37569, 37570, 37571, 37573, 37574, + 37575, 37576, 37579, 37580, 37581, 37582, 37584, + 37587, 37589, 37591, 37592, 37593, 37596, 37597, + 37599, 37600, 37601, 37603, 37605, 37607, 37608, + 37612, 37614, 37616, 37625, 37627, 37631, 37632, + 37634, 37640, 37645, 37649, 37652, 37653, 37660, + 37661, 37662, 37663, 37665, 37668, 37669, 37671, + 37673, 37674, 37683, 37684, 37686, 37687, 37703, + 37704, 37705, 37712, 37713, 37714, 37717, 37719, + 37720, 37722, 37726, 37732, 37733, 37735, 37737, + 37738, 37741, 37743, 37744, 37745, 37747, 37748, + 37750, 37754, 37757, 37759, 37760, 37761, 37762, + 37768, 37770, 37771, 37773, 37775, 37778, 37781, + 37784, 37787, 37790, 37793, 37795, 37796, 37798, + 37800, 37803, 37812, 37813, 37814, 37818, 37801, + 37825, 37828, 37829, 37830, 37831, 37833, 37834, + 37835, 37836, 37837, 37843, 37849, 37852, 37854, + 37855, 37858, 37862, 37863, 37881, 37879, 37880, + 37882, 37883, 37885, 37889, 37890, 37892, 37896, + 37897, 37901, 37902, 37903, 37909, 37910, 37911, + 37919, 37934, 37935, 37937, 37938, 37939, 37940, + 37947, 37951, 37949, 37955, 37957, 37960, 37962, + 37964, 37973, 37977, 37980, 37983, 37985, 37987, + 37992, 37995, 37997, 37998, 37999, 38001, 38002, + 38020, 38019, 38264, 38265, 38270, 38276, 38280, + 38284, 38285, 38286, 38301, 38302, 38303, 38305, + 38310, 38313, 38315, 38316, 38324, 38326, 38330, + 38333, 38335, 38342, 38344, 38345, 38347, 38352, + 38353, 38354, 38355, 38361, 38362, 38365, 38366, + 38367, 38368, 38372, 38374, 38429, 38430, 38434, + 38436, 38437, 38438, 38444, 38449, 38451, 38455, + 38456, 38457, 38458, 38460, 38461, 38465, 38482, + 38484, 38486, 38487, 38488, 38497, 38510, 38516, + 38523, 38524, 38526, 38527, 38529, 38530, 38531, + 38532, 38537, 38545, 38550, 38554, 38557, 38559, + 38564, 38565, 38566, 38569, 38574, 38575, 38579, + 38586, 38602, 38610, 23986, 38616, 38618, 38621, + 38622, 38623, 38633, 38639, 38641, 38650, 38658, + 38659, 38661, 38665, 38682, 38683, 38685, 38689, + 38690, 38691, 38696, 38705, 38707, 38721, 38723, + 38730, 38734, 38735, 38741, 38743, 38744, 38746, + 38747, 38755, 38759, 38762, 38766, 38771, 38774, + 38775, 38776, 38779, 38781, 38783, 38784, 38793, + 38805, 38806, 38807, 38809, 38810, 38814, 38815, + 38818, 38828, 38830, 38833, 38834, 38837, 38838, + 38840, 38841, 38842, 38844, 38846, 38847, 38849, + 38852, 38853, 38855, 38857, 38858, 38860, 38861, + 38862, 38864, 38865, 38868, 38871, 38872, 38873, + 38877, 38878, 38880, 38875, 38881, 38884, 38895, + 38897, 38900, 38903, 38904, 38906, 38919, 38922, + 38937, 38925, 38926, 38932, 38934, 38940, 38942, + 38944, 38947, 38950, 38955, 38958, 38959, 38960, + 38962, 38963, 38965, 38949, 38974, 38980, 38983, + 38986, 38993, 38994, 38995, 38998, 38999, 39001, + 39002, 39010, 39011, 39013, 39014, 39018, 39020, + 39083, 39085, 39086, 39088, 39092, 39095, 39096, + 39098, 39099, 39103, 39106, 39109, 39112, 39116, + 39137, 39139, 39141, 39142, 39143, 39146, 39155, + 39158, 39170, 39175, 39176, 39185, 39189, 39190, + 39191, 39194, 39195, 39196, 39199, 39202, 39206, + 39207, 39211, 39217, 39218, 39219, 39220, 39221, + 39225, 39226, 39227, 39228, 39232, 39233, 39238, + 39239, 39240, 39245, 39246, 39252, 39256, 39257, + 39259, 39260, 39262, 39263, 39264, 39323, 39325, + 39327, 39334, 39344, 39345, 39346, 39349, 39353, + 39354, 39357, 39359, 39363, 39369, 39379, 39380, + 39385, 39386, 39388, 39390, 39399, 39402, 39403, + 39404, 39408, 39412, 39413, 39417, 39421, 39422, + 39426, 39427, 39428, 39435, 39436, 39440, 39441, + 39446, 39454, 39456, 39458, 39459, 39460, 39463, + 39469, 39470, 39475, 39477, 39478, 39480, 39495, + 39489, 39492, 39498, 39499, 39500, 39502, 39505, + 39508, 39510, 39517, 39594, 39596, 39598, 39599, + 39602, 39604, 39605, 39606, 39609, 39611, 39614, + 39615, 39617, 39619, 39622, 39624, 39630, 39632, + 39634, 39637, 39638, 39639, 39643, 39644, 39648, + 39652, 39653, 39655, 39657, 39660, 39666, 39667, + 39669, 39673, 39674, 39677, 39679, 39680, 39681, + 39682, 39683, 39684, 39685, 39688, 39689, 39691, + 39692, 39693, 39694, 39696, 39698, 39702, 39705, + 39707, 39708, 39712, 39718, 39723, 39725, 39731, + 39732, 39733, 39735, 39737, 39738, 39741, 39752, + 39755, 39756, 39765, 39766, 39767, 39771, 39774, + 39777, 39779, 39781, 39782, 39784, 39786, 39787, + 39788, 39789, 39790, 39795, 39797, 39799, 39800, + 39801, 39807, 39808, 39812, 39813, 39814, 39815, + 39817, 39818, 39819, 39821, 39823, 39824, 39828, + 39834, 39837, 39838, 39846, 39847, 39849, 39852, + 39856, 39857, 39858, 39863, 39864, 39867, 39868, + 39870, 39871, 39873, 39879, 39880, 39886, 39888, + 39895, 39896, 39901, 39903, 39909, 39911, 39914, + 39915, 39919, 39923, 39927, 39928, 39929, 39930, + 39933, 39935, 39936, 39938, 39947, 39951, 39953, + 39958, 39960, 39961, 39962, 39964, 39966, 39970, + 39971, 39974, 39975, 39976, 39977, 39978, 39985, + 39989, 39990, 39991, 39997, 40001, 40003, 40004, + 40005, 40009, 40010, 40014, 40015, 40016, 40019, + 40020, 40022, 40024, 40027, 40029, 40030, 40031, + 40035, 40041, 40042, 40028, 40043, 40040, 40046, + 40048, 40050, 40053, 40055, 40059, 40166, 40178, + 40183, 40185, 40203, 40194, 40209, 40215, 40216, + 40220, 40221, 40222, 40239, 40240, 40242, 40243, + 40244, 40250, 40252, 40261, 40253, 40258, 40259, + 40263, 40266, 40275, 40276, 40287, 40291, 40290, + 40293, 40297, 40298, 40299, 40304, 40310, 40311, + 40315, 40316, 40318, 40323, 40324, 40326, 40330, + 40333, 40334, 40338, 40339, 40341, 40342, 40343, + 40344, 40353, 40362, 40364, 40366, 40369, 40373, + 40377, 40380, 40383, 40387, 40391, 40393, 40394, + 40404, 40405, 40406, 40407, 40410, 40414, 40415, + 40416, 40421, 40423, 40425, 40427, 40430, 40432, + 40435, 40436, 40446, 40458, 40450, 40455, 40462, + 40464, 40465, 40466, 40469, 40470, 40473, 40476, + 40477, 40570, 40571, 40572, 40576, 40578, 40579, + 40580, 40581, 40583, 40590, 40591, 40598, 40600, + 40603, 40606, 40612, 40616, 40620, 40622, 40623, + 40624, 40627, 40628, 40629, 40646, 40648, 40651, + 40661, 40671, 40676, 40679, 40684, 40685, 40686, + 40688, 40689, 40690, 40693, 40696, 40703, 40706, + 40707, 40713, 40719, 40720, 40721, 40722, 40724, + 40726, 40727, 40729, 40730, 40731, 40735, 40738, + 40742, 40746, 40747, 40751, 40753, 40754, 40756, + 40759, 40761, 40762, 40764, 40765, 40767, 40769, + 40771, 40772, 40773, 40774, 40775, 40787, 40789, + 40790, 40791, 40792, 40794, 40797, 40798, 40808, + 40809, 40813, 40814, 40815, 40816, 40817, 40819, + 40821, 40826, 40829, 40847, 40848, 40849, 40850, + 40852, 40854, 40855, 40862, 40865, 40866, 40867, + 40869, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null ], - ibm866: [ - 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, - 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, - 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 9617, 9618, 9619, 9474, 9508, 9569, 9570, 9558, 9557, - 9571, 9553, 9559, 9565, 9564, 9563, 9488, 9492, 9524, 9516, 9500, 9472, 9532, 9566, 9567, 9562, 9556, 9577, 9574, - 9568, 9552, 9580, 9575, 9576, 9572, 9573, 9561, 9560, 9554, 9555, 9579, 9578, 9496, 9484, 9608, 9604, 9612, 9616, - 9600, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1025, 1105, - 1028, 1108, 1031, 1111, 1038, 1118, 176, 8729, 183, 8730, 8470, 164, 9632, 160, + "ibm866": [1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, + 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, + 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, + 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, + 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, + 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, + 9617, 9618, 9619, 9474, 9508, 9569, 9570, 9558, + 9557, 9571, 9553, 9559, 9565, 9564, 9563, 9488, + 9492, 9524, 9516, 9500, 9472, 9532, 9566, 9567, + 9562, 9556, 9577, 9574, 9568, 9552, 9580, 9575, + 9576, 9572, 9573, 9561, 9560, 9554, 9555, 9579, + 9578, 9496, 9484, 9608, 9604, 9612, 9616, 9600, + 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, + 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, + 1025, 1105, 1028, 1108, 1031, 1111, 1038, 1118, 176, + 8729, 183, 8730, 8470, 164, 9632, 160 ], - 'iso-8859-2': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 260, 728, 321, 164, 317, 346, 167, 168, 352, 350, 356, 377, 173, - 381, 379, 176, 261, 731, 322, 180, 318, 347, 711, 184, 353, 351, 357, 378, 733, 382, 380, 340, 193, 194, 258, 196, - 313, 262, 199, 268, 201, 280, 203, 282, 205, 206, 270, 272, 323, 327, 211, 212, 336, 214, 215, 344, 366, 218, 368, - 220, 221, 354, 223, 341, 225, 226, 259, 228, 314, 263, 231, 269, 233, 281, 235, 283, 237, 238, 271, 273, 324, 328, - 243, 244, 337, 246, 247, 345, 367, 250, 369, 252, 253, 355, 729, + "iso-8859-2": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 260, 728, 321, 164, 317, 346, + 167, 168, 352, 350, 356, 377, 173, 381, 379, 176, + 261, 731, 322, 180, 318, 347, 711, 184, 353, 351, + 357, 378, 733, 382, 380, 340, 193, 194, 258, 196, + 313, 262, 199, 268, 201, 280, 203, 282, 205, 206, + 270, 272, 323, 327, 211, 212, 336, 214, 215, 344, + 366, 218, 368, 220, 221, 354, 223, 341, 225, 226, + 259, 228, 314, 263, 231, 269, 233, 281, 235, 283, + 237, 238, 271, 273, 324, 328, 243, 244, 337, 246, + 247, 345, 367, 250, 369, 252, 253, 355, 729 ], - 'iso-8859-3': [ - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 294, - 728, - 163, - 164, - null, - 292, - 167, - 168, - 304, - 350, - 286, - 308, - 173, - null, - 379, - 176, - 295, - 178, - 179, - 180, - 181, - 293, - 183, - 184, - 305, - 351, - 287, - 309, - 189, - null, - 380, - 192, - 193, - 194, - null, - 196, - 266, - 264, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - null, - 209, - 210, - 211, - 212, - 288, - 214, - 215, - 284, - 217, - 218, - 219, - 220, - 364, - 348, - 223, - 224, - 225, - 226, - null, - 228, - 267, - 265, - 231, - 232, - 233, - 234, - 235, - 236, - 237, - 238, - 239, - null, - 241, - 242, - 243, - 244, - 289, - 246, - 247, - 285, - 249, - 250, - 251, - 252, - 365, - 349, - 729, + "iso-8859-3": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 294, 728, 163, 164, null, 292, + 167, 168, 304, 350, 286, 308, 173, null, 379, 176, + 295, 178, 179, 180, 181, 293, 183, 184, 305, 351, + 287, 309, 189, null, 380, 192, 193, 194, null, 196, + 266, 264, 199, 200, 201, 202, 203, 204, 205, 206, + 207, null, 209, 210, 211, 212, 288, 214, 215, 284, + 217, 218, 219, 220, 364, 348, 223, 224, 225, 226, + null, 228, 267, 265, 231, 232, 233, 234, 235, 236, + 237, 238, 239, null, 241, 242, 243, 244, 289, 246, + 247, 285, 249, 250, 251, 252, 365, 349, 729 ], - 'iso-8859-4': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 260, 312, 342, 164, 296, 315, 167, 168, 352, 274, 290, 358, 173, - 381, 175, 176, 261, 731, 343, 180, 297, 316, 711, 184, 353, 275, 291, 359, 330, 382, 331, 256, 193, 194, 195, 196, - 197, 198, 302, 268, 201, 280, 203, 278, 205, 206, 298, 272, 325, 332, 310, 212, 213, 214, 215, 216, 370, 218, 219, - 220, 360, 362, 223, 257, 225, 226, 227, 228, 229, 230, 303, 269, 233, 281, 235, 279, 237, 238, 299, 273, 326, 333, - 311, 244, 245, 246, 247, 248, 371, 250, 251, 252, 361, 363, 729, + "iso-8859-4": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 260, 312, 342, 164, 296, 315, + 167, 168, 352, 274, 290, 358, 173, 381, 175, 176, + 261, 731, 343, 180, 297, 316, 711, 184, 353, 275, + 291, 359, 330, 382, 331, 256, 193, 194, 195, 196, + 197, 198, 302, 268, 201, 280, 203, 278, 205, 206, + 298, 272, 325, 332, 310, 212, 213, 214, 215, 216, + 370, 218, 219, 220, 360, 362, 223, 257, 225, 226, + 227, 228, 229, 230, 303, 269, 233, 281, 235, 279, + 237, 238, 299, 273, 326, 333, 311, 244, 245, 246, + 247, 248, 371, 250, 251, 252, 361, 363, 729 ], - 'iso-8859-5': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, - 1035, 1036, 173, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, - 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, - 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, - 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 8470, 1105, 1106, 1107, 1108, 1109, 1110, - 1111, 1112, 1113, 1114, 1115, 1116, 167, 1118, 1119, + "iso-8859-5": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 1025, 1026, 1027, 1028, 1029, + 1030, 1031, 1032, 1033, 1034, 1035, 1036, 173, 1038, + 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, + 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, + 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, + 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, + 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, + 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, + 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, + 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, + 1103, 8470, 1105, 1106, 1107, 1108, 1109, 1110, + 1111, 1112, 1113, 1114, 1115, 1116, 167, 1118, 1119 ], - 'iso-8859-6': [ - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - null, - null, - null, - 164, - null, - null, - null, - null, - null, - null, - null, - 1548, - 173, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 1563, - null, - null, - null, - 1567, - null, - 1569, - 1570, - 1571, - 1572, - 1573, - 1574, - 1575, - 1576, - 1577, - 1578, - 1579, - 1580, - 1581, - 1582, - 1583, - 1584, - 1585, - 1586, - 1587, - 1588, - 1589, - 1590, - 1591, - 1592, - 1593, - 1594, - null, - null, - null, - null, - null, - 1600, - 1601, - 1602, - 1603, - 1604, - 1605, - 1606, - 1607, - 1608, - 1609, - 1610, - 1611, - 1612, - 1613, - 1614, - 1615, - 1616, - 1617, - 1618, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, + "iso-8859-6": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, null, null, null, 164, null, + null, null, null, null, null, null, 1548, 173, null, + null, null, null, null, null, null, null, null, + null, null, null, null, 1563, null, null, null, + 1567, null, 1569, 1570, 1571, 1572, 1573, 1574, + 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, + 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, + 1591, 1592, 1593, 1594, null, null, null, null, + null, 1600, 1601, 1602, 1603, 1604, 1605, 1606, + 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, + 1615, 1616, 1617, 1618, null, null, null, null, + null, null, null, null, null, null, null, null, + null ], - 'iso-8859-7': [ - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 8216, - 8217, - 163, - 8364, - 8367, - 166, - 167, - 168, - 169, - 890, - 171, - 172, - 173, - null, - 8213, - 176, - 177, - 178, - 179, - 900, - 901, - 902, - 183, - 904, - 905, - 906, - 187, - 908, - 189, - 910, - 911, - 912, - 913, - 914, - 915, - 916, - 917, - 918, - 919, - 920, - 921, - 922, - 923, - 924, - 925, - 926, - 927, - 928, - 929, - null, - 931, - 932, - 933, - 934, - 935, - 936, - 937, - 938, - 939, - 940, - 941, - 942, - 943, - 944, - 945, - 946, - 947, - 948, - 949, - 950, - 951, - 952, - 953, - 954, - 955, - 956, - 957, - 958, - 959, - 960, - 961, - 962, - 963, - 964, - 965, - 966, - 967, - 968, - 969, - 970, - 971, - 972, - 973, - 974, - null, + "iso-8859-7": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 8216, 8217, 163, 8364, 8367, + 166, 167, 168, 169, 890, 171, 172, 173, null, 8213, + 176, 177, 178, 179, 900, 901, 902, 183, 904, 905, + 906, 187, 908, 189, 910, 911, 912, 913, 914, 915, + 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, + 926, 927, 928, 929, null, 931, 932, 933, 934, 935, + 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, + 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, + 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, + 966, 967, 968, 969, 970, 971, 972, 973, 974, null ], - 'iso-8859-8': [ - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - null, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 215, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 247, - 187, - 188, - 189, - 190, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - null, - 8215, - 1488, - 1489, - 1490, - 1491, - 1492, - 1493, - 1494, - 1495, - 1496, - 1497, - 1498, - 1499, - 1500, - 1501, - 1502, - 1503, - 1504, - 1505, - 1506, - 1507, - 1508, - 1509, - 1510, - 1511, - 1512, - 1513, - 1514, - null, - null, - 8206, - 8207, - null, + "iso-8859-8": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, null, 162, 163, 164, 165, 166, + 167, 168, 169, 215, 171, 172, 173, 174, 175, 176, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 247, + 187, 188, 189, 190, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, + null, null, null, 8215, 1488, 1489, 1490, 1491, + 1492, 1493, 1494, 1495, 1496, 1497, 1498, 1499, + 1500, 1501, 1502, 1503, 1504, 1505, 1506, 1507, + 1508, 1509, 1510, 1511, 1512, 1513, 1514, null, + null, 8206, 8207, null ], - 'iso-8859-10': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 260, 274, 290, 298, 296, 310, 167, 315, 272, 352, 358, 381, 173, - 362, 330, 176, 261, 275, 291, 299, 297, 311, 183, 316, 273, 353, 359, 382, 8213, 363, 331, 256, 193, 194, 195, - 196, 197, 198, 302, 268, 201, 280, 203, 278, 205, 206, 207, 208, 325, 332, 211, 212, 213, 214, 360, 216, 370, 218, - 219, 220, 221, 222, 223, 257, 225, 226, 227, 228, 229, 230, 303, 269, 233, 281, 235, 279, 237, 238, 239, 240, 326, - 333, 243, 244, 245, 246, 361, 248, 371, 250, 251, 252, 253, 254, 312, + "iso-8859-10": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 260, 274, 290, 298, 296, 310, + 167, 315, 272, 352, 358, 381, 173, 362, 330, 176, + 261, 275, 291, 299, 297, 311, 183, 316, 273, 353, + 359, 382, 8213, 363, 331, 256, 193, 194, 195, 196, + 197, 198, 302, 268, 201, 280, 203, 278, 205, 206, + 207, 208, 325, 332, 211, 212, 213, 214, 360, 216, + 370, 218, 219, 220, 221, 222, 223, 257, 225, 226, + 227, 228, 229, 230, 303, 269, 233, 281, 235, 279, + 237, 238, 239, 240, 326, 333, 243, 244, 245, 246, + 361, 248, 371, 250, 251, 252, 253, 254, 312 ], - 'iso-8859-13': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 8221, 162, 163, 164, 8222, 166, 167, 216, 169, 342, 171, 172, - 173, 174, 198, 176, 177, 178, 179, 8220, 181, 182, 183, 248, 185, 343, 187, 188, 189, 190, 230, 260, 302, 256, - 262, 196, 197, 280, 274, 268, 201, 377, 278, 290, 310, 298, 315, 352, 323, 325, 211, 332, 213, 214, 215, 370, 321, - 346, 362, 220, 379, 381, 223, 261, 303, 257, 263, 228, 229, 281, 275, 269, 233, 378, 279, 291, 311, 299, 316, 353, - 324, 326, 243, 333, 245, 246, 247, 371, 322, 347, 363, 252, 380, 382, 8217, + "iso-8859-13": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 8221, 162, 163, 164, 8222, 166, + 167, 216, 169, 342, 171, 172, 173, 174, 198, 176, + 177, 178, 179, 8220, 181, 182, 183, 248, 185, 343, + 187, 188, 189, 190, 230, 260, 302, 256, 262, 196, + 197, 280, 274, 268, 201, 377, 278, 290, 310, 298, + 315, 352, 323, 325, 211, 332, 213, 214, 215, 370, + 321, 346, 362, 220, 379, 381, 223, 261, 303, 257, + 263, 228, 229, 281, 275, 269, 233, 378, 279, 291, + 311, 299, 316, 353, 324, 326, 243, 333, 245, 246, + 247, 371, 322, 347, 363, 252, 380, 382, 8217 ], - 'iso-8859-14': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 7682, 7683, 163, 266, 267, 7690, 167, 7808, 169, 7810, 7691, - 7922, 173, 174, 376, 7710, 7711, 288, 289, 7744, 7745, 182, 7766, 7809, 7767, 7811, 7776, 7923, 7812, 7813, 7777, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 372, 209, 210, 211, 212, 213, 214, - 7786, 216, 217, 218, 219, 220, 221, 374, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 373, 241, 242, 243, 244, 245, 246, 7787, 248, 249, 250, 251, 252, 253, 375, 255, + "iso-8859-14": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 7682, 7683, 163, 266, 267, 7690, + 167, 7808, 169, 7810, 7691, 7922, 173, 174, 376, + 7710, 7711, 288, 289, 7744, 7745, 182, 7766, 7809, + 7767, 7811, 7776, 7923, 7812, 7813, 7777, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 372, 209, 210, 211, 212, 213, + 214, 7786, 216, 217, 218, 219, 220, 221, 374, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 373, 241, 242, 243, + 244, 245, 246, 7787, 248, 249, 250, 251, 252, 253, + 375, 255 ], - 'iso-8859-15': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 8364, 165, 352, 167, 353, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 381, 181, 182, 183, 382, 185, 186, 187, 338, 339, 376, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + "iso-8859-15": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 8364, 165, 352, + 167, 353, 169, 170, 171, 172, 173, 174, 175, 176, + 177, 178, 179, 381, 181, 182, 183, 382, 185, 186, + 187, 338, 339, 376, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255 ], - 'iso-8859-16': [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 260, 261, 321, 8364, 8222, 352, 167, 353, 169, 536, 171, 377, - 173, 378, 379, 176, 177, 268, 322, 381, 8221, 182, 183, 382, 269, 537, 187, 338, 339, 376, 380, 192, 193, 194, - 258, 196, 262, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 272, 323, 210, 211, 212, 336, 214, 346, 368, 217, - 218, 219, 220, 280, 538, 223, 224, 225, 226, 259, 228, 263, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 273, - 324, 242, 243, 244, 337, 246, 347, 369, 249, 250, 251, 252, 281, 539, 255, + "iso-8859-16": [128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 260, 261, 321, 8364, 8222, 352, + 167, 353, 169, 536, 171, 377, 173, 378, 379, 176, + 177, 268, 322, 381, 8221, 182, 183, 382, 269, 537, + 187, 338, 339, 376, 380, 192, 193, 194, 258, 196, + 262, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 272, 323, 210, 211, 212, 336, 214, 346, 368, + 217, 218, 219, 220, 280, 538, 223, 224, 225, 226, + 259, 228, 263, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 273, 324, 242, 243, 244, 337, 246, + 347, 369, 249, 250, 251, 252, 281, 539, 255 ], - 'koi8-r': [ - 9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, 9516, 9524, 9532, 9600, 9604, 9608, 9612, 9616, 9617, 9618, 9619, - 8992, 9632, 8729, 8730, 8776, 8804, 8805, 160, 8993, 176, 178, 183, 247, 9552, 9553, 9554, 1105, 9555, 9556, 9557, - 9558, 9559, 9560, 9561, 9562, 9563, 9564, 9565, 9566, 9567, 9568, 9569, 1025, 9570, 9571, 9572, 9573, 9574, 9575, - 9576, 9577, 9578, 9579, 9580, 169, 1102, 1072, 1073, 1094, 1076, 1077, 1092, 1075, 1093, 1080, 1081, 1082, 1083, - 1084, 1085, 1086, 1087, 1103, 1088, 1089, 1090, 1091, 1078, 1074, 1100, 1099, 1079, 1096, 1101, 1097, 1095, 1098, - 1070, 1040, 1041, 1062, 1044, 1045, 1060, 1043, 1061, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1071, 1056, - 1057, 1058, 1059, 1046, 1042, 1068, 1067, 1047, 1064, 1069, 1065, 1063, 1066, + "koi8-r": [9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, + 9516, 9524, 9532, 9600, 9604, 9608, 9612, 9616, + 9617, 9618, 9619, 8992, 9632, 8729, 8730, 8776, + 8804, 8805, 160, 8993, 176, 178, 183, 247, 9552, + 9553, 9554, 1105, 9555, 9556, 9557, 9558, 9559, + 9560, 9561, 9562, 9563, 9564, 9565, 9566, 9567, + 9568, 9569, 1025, 9570, 9571, 9572, 9573, 9574, + 9575, 9576, 9577, 9578, 9579, 9580, 169, 1102, 1072, + 1073, 1094, 1076, 1077, 1092, 1075, 1093, 1080, + 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1103, + 1088, 1089, 1090, 1091, 1078, 1074, 1100, 1099, + 1079, 1096, 1101, 1097, 1095, 1098, 1070, 1040, + 1041, 1062, 1044, 1045, 1060, 1043, 1061, 1048, + 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1071, + 1056, 1057, 1058, 1059, 1046, 1042, 1068, 1067, + 1047, 1064, 1069, 1065, 1063, 1066 ], - 'koi8-u': [ - 9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, 9516, 9524, 9532, 9600, 9604, 9608, 9612, 9616, 9617, 9618, 9619, - 8992, 9632, 8729, 8730, 8776, 8804, 8805, 160, 8993, 176, 178, 183, 247, 9552, 9553, 9554, 1105, 1108, 9556, 1110, - 1111, 9559, 9560, 9561, 9562, 9563, 1169, 9565, 9566, 9567, 9568, 9569, 1025, 1028, 9571, 1030, 1031, 9574, 9575, - 9576, 9577, 9578, 1168, 9580, 169, 1102, 1072, 1073, 1094, 1076, 1077, 1092, 1075, 1093, 1080, 1081, 1082, 1083, - 1084, 1085, 1086, 1087, 1103, 1088, 1089, 1090, 1091, 1078, 1074, 1100, 1099, 1079, 1096, 1101, 1097, 1095, 1098, - 1070, 1040, 1041, 1062, 1044, 1045, 1060, 1043, 1061, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1071, 1056, - 1057, 1058, 1059, 1046, 1042, 1068, 1067, 1047, 1064, 1069, 1065, 1063, 1066, + "koi8-u": [9472, 9474, 9484, 9488, 9492, 9496, 9500, 9508, + 9516, 9524, 9532, 9600, 9604, 9608, 9612, 9616, + 9617, 9618, 9619, 8992, 9632, 8729, 8730, 8776, + 8804, 8805, 160, 8993, 176, 178, 183, 247, 9552, + 9553, 9554, 1105, 1108, 9556, 1110, 1111, 9559, + 9560, 9561, 9562, 9563, 1169, 9565, 9566, 9567, + 9568, 9569, 1025, 1028, 9571, 1030, 1031, 9574, + 9575, 9576, 9577, 9578, 1168, 9580, 169, 1102, 1072, + 1073, 1094, 1076, 1077, 1092, 1075, 1093, 1080, + 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1103, + 1088, 1089, 1090, 1091, 1078, 1074, 1100, 1099, + 1079, 1096, 1101, 1097, 1095, 1098, 1070, 1040, + 1041, 1062, 1044, 1045, 1060, 1043, 1061, 1048, + 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1071, + 1056, 1057, 1058, 1059, 1046, 1042, 1068, 1067, + 1047, 1064, 1069, 1065, 1063, 1066 ], - macintosh: [ - 196, 197, 199, 201, 209, 214, 220, 225, 224, 226, 228, 227, 229, 231, 233, 232, 234, 235, 237, 236, 238, 239, 241, - 243, 242, 244, 246, 245, 250, 249, 251, 252, 8224, 176, 162, 163, 167, 8226, 182, 223, 174, 169, 8482, 180, 168, - 8800, 198, 216, 8734, 177, 8804, 8805, 165, 181, 8706, 8721, 8719, 960, 8747, 170, 186, 937, 230, 248, 191, 161, - 172, 8730, 402, 8776, 8710, 171, 187, 8230, 160, 192, 195, 213, 338, 339, 8211, 8212, 8220, 8221, 8216, 8217, 247, - 9674, 255, 376, 8260, 8364, 8249, 8250, 64257, 64258, 8225, 183, 8218, 8222, 8240, 194, 202, 193, 203, 200, 205, - 206, 207, 204, 211, 212, 63743, 210, 218, 219, 217, 305, 710, 732, 175, 728, 729, 730, 184, 733, 731, 711, + "macintosh": [196, 197, 199, 201, 209, 214, 220, 225, 224, + 226, 228, 227, 229, 231, 233, 232, 234, 235, 237, + 236, 238, 239, 241, 243, 242, 244, 246, 245, 250, + 249, 251, 252, 8224, 176, 162, 163, 167, 8226, 182, + 223, 174, 169, 8482, 180, 168, 8800, 198, 216, 8734, + 177, 8804, 8805, 165, 181, 8706, 8721, 8719, 960, + 8747, 170, 186, 937, 230, 248, 191, 161, 172, 8730, + 402, 8776, 8710, 171, 187, 8230, 160, 192, 195, 213, + 338, 339, 8211, 8212, 8220, 8221, 8216, 8217, 247, + 9674, 255, 376, 8260, 8364, 8249, 8250, 64257, + 64258, 8225, 183, 8218, 8222, 8240, 194, 202, 193, + 203, 200, 205, 206, 207, 204, 211, 212, 63743, 210, + 218, 219, 217, 305, 710, 732, 175, 728, 729, 730, + 184, 733, 731, 711 ], - 'windows-874': [ - 8364, - 129, - 130, - 131, - 132, - 8230, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 8216, - 8217, - 8220, - 8221, - 8226, - 8211, - 8212, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 3585, - 3586, - 3587, - 3588, - 3589, - 3590, - 3591, - 3592, - 3593, - 3594, - 3595, - 3596, - 3597, - 3598, - 3599, - 3600, - 3601, - 3602, - 3603, - 3604, - 3605, - 3606, - 3607, - 3608, - 3609, - 3610, - 3611, - 3612, - 3613, - 3614, - 3615, - 3616, - 3617, - 3618, - 3619, - 3620, - 3621, - 3622, - 3623, - 3624, - 3625, - 3626, - 3627, - 3628, - 3629, - 3630, - 3631, - 3632, - 3633, - 3634, - 3635, - 3636, - 3637, - 3638, - 3639, - 3640, - 3641, - 3642, - null, - null, - null, - null, - 3647, - 3648, - 3649, - 3650, - 3651, - 3652, - 3653, - 3654, - 3655, - 3656, - 3657, - 3658, - 3659, - 3660, - 3661, - 3662, - 3663, - 3664, - 3665, - 3666, - 3667, - 3668, - 3669, - 3670, - 3671, - 3672, - 3673, - 3674, - 3675, - null, - null, - null, - null, + "windows-874": [8364, 129, 130, 131, 132, 8230, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 8216, + 8217, 8220, 8221, 8226, 8211, 8212, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 3585, 3586, 3587, + 3588, 3589, 3590, 3591, 3592, 3593, 3594, 3595, + 3596, 3597, 3598, 3599, 3600, 3601, 3602, 3603, + 3604, 3605, 3606, 3607, 3608, 3609, 3610, 3611, + 3612, 3613, 3614, 3615, 3616, 3617, 3618, 3619, + 3620, 3621, 3622, 3623, 3624, 3625, 3626, 3627, + 3628, 3629, 3630, 3631, 3632, 3633, 3634, 3635, + 3636, 3637, 3638, 3639, 3640, 3641, 3642, null, + null, null, null, 3647, 3648, 3649, 3650, 3651, + 3652, 3653, 3654, 3655, 3656, 3657, 3658, 3659, + 3660, 3661, 3662, 3663, 3664, 3665, 3666, 3667, + 3668, 3669, 3670, 3671, 3672, 3673, 3674, 3675, + null, null, null, null ], - 'windows-1250': [ - 8364, 129, 8218, 131, 8222, 8230, 8224, 8225, 136, 8240, 352, 8249, 346, 356, 381, 377, 144, 8216, 8217, 8220, - 8221, 8226, 8211, 8212, 152, 8482, 353, 8250, 347, 357, 382, 378, 160, 711, 728, 321, 164, 260, 166, 167, 168, - 169, 350, 171, 172, 173, 174, 379, 176, 177, 731, 322, 180, 181, 182, 183, 184, 261, 351, 187, 317, 733, 318, 380, - 340, 193, 194, 258, 196, 313, 262, 199, 268, 201, 280, 203, 282, 205, 206, 270, 272, 323, 327, 211, 212, 336, 214, - 215, 344, 366, 218, 368, 220, 221, 354, 223, 341, 225, 226, 259, 228, 314, 263, 231, 269, 233, 281, 235, 283, 237, - 238, 271, 273, 324, 328, 243, 244, 337, 246, 247, 345, 367, 250, 369, 252, 253, 355, 729, + "windows-1250": [8364, 129, 8218, 131, 8222, 8230, 8224, + 8225, 136, 8240, 352, 8249, 346, 356, 381, 377, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 152, 8482, + 353, 8250, 347, 357, 382, 378, 160, 711, 728, 321, + 164, 260, 166, 167, 168, 169, 350, 171, 172, 173, + 174, 379, 176, 177, 731, 322, 180, 181, 182, 183, + 184, 261, 351, 187, 317, 733, 318, 380, 340, 193, + 194, 258, 196, 313, 262, 199, 268, 201, 280, 203, + 282, 205, 206, 270, 272, 323, 327, 211, 212, 336, + 214, 215, 344, 366, 218, 368, 220, 221, 354, 223, + 341, 225, 226, 259, 228, 314, 263, 231, 269, 233, + 281, 235, 283, 237, 238, 271, 273, 324, 328, 243, + 244, 337, 246, 247, 345, 367, 250, 369, 252, 253, + 355, 729 ], - 'windows-1251': [ - 1026, 1027, 8218, 1107, 8222, 8230, 8224, 8225, 8364, 8240, 1033, 8249, 1034, 1036, 1035, 1039, 1106, 8216, 8217, - 8220, 8221, 8226, 8211, 8212, 152, 8482, 1113, 8250, 1114, 1116, 1115, 1119, 160, 1038, 1118, 1032, 164, 1168, - 166, 167, 1025, 169, 1028, 171, 172, 173, 174, 1031, 176, 177, 1030, 1110, 1169, 181, 182, 183, 1105, 8470, 1108, - 187, 1112, 1029, 1109, 1111, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, - 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, - 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, - 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, + "windows-1251": [1026, 1027, 8218, 1107, 8222, 8230, 8224, + 8225, 8364, 8240, 1033, 8249, 1034, 1036, 1035, + 1039, 1106, 8216, 8217, 8220, 8221, 8226, 8211, + 8212, 152, 8482, 1113, 8250, 1114, 1116, 1115, 1119, + 160, 1038, 1118, 1032, 164, 1168, 166, 167, 1025, + 169, 1028, 171, 172, 173, 174, 1031, 176, 177, 1030, + 1110, 1169, 181, 182, 183, 1105, 8470, 1108, 187, + 1112, 1029, 1109, 1111, 1040, 1041, 1042, 1043, + 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, + 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, + 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, + 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, + 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, + 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, + 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, + 1100, 1101, 1102, 1103 ], - 'windows-1252': [ - 8364, 129, 8218, 402, 8222, 8230, 8224, 8225, 710, 8240, 352, 8249, 338, 141, 381, 143, 144, 8216, 8217, 8220, - 8221, 8226, 8211, 8212, 732, 8482, 353, 8250, 339, 157, 382, 376, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + "windows-1252": [8364, 129, 8218, 402, 8222, 8230, 8224, + 8225, 710, 8240, 352, 8249, 338, 141, 381, 143, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 732, 8482, + 353, 8250, 339, 157, 382, 376, 160, 161, 162, 163, + 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, + 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255 ], - 'windows-1253': [ - 8364, - 129, - 8218, - 402, - 8222, - 8230, - 8224, - 8225, - 136, - 8240, - 138, - 8249, - 140, - 141, - 142, - 143, - 144, - 8216, - 8217, - 8220, - 8221, - 8226, - 8211, - 8212, - 152, - 8482, - 154, - 8250, - 156, - 157, - 158, - 159, - 160, - 901, - 902, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - null, - 171, - 172, - 173, - 174, - 8213, - 176, - 177, - 178, - 179, - 900, - 181, - 182, - 183, - 904, - 905, - 906, - 187, - 908, - 189, - 910, - 911, - 912, - 913, - 914, - 915, - 916, - 917, - 918, - 919, - 920, - 921, - 922, - 923, - 924, - 925, - 926, - 927, - 928, - 929, - null, - 931, - 932, - 933, - 934, - 935, - 936, - 937, - 938, - 939, - 940, - 941, - 942, - 943, - 944, - 945, - 946, - 947, - 948, - 949, - 950, - 951, - 952, - 953, - 954, - 955, - 956, - 957, - 958, - 959, - 960, - 961, - 962, - 963, - 964, - 965, - 966, - 967, - 968, - 969, - 970, - 971, - 972, - 973, - 974, - null, + "windows-1253": [8364, 129, 8218, 402, 8222, 8230, 8224, + 8225, 136, 8240, 138, 8249, 140, 141, 142, 143, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 152, 8482, + 154, 8250, 156, 157, 158, 159, 160, 901, 902, 163, + 164, 165, 166, 167, 168, 169, null, 171, 172, 173, + 174, 8213, 176, 177, 178, 179, 900, 181, 182, 183, + 904, 905, 906, 187, 908, 189, 910, 911, 912, 913, + 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, + 924, 925, 926, 927, 928, 929, null, 931, 932, 933, + 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, + 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, + 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, + 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, + 974, null ], - 'windows-1254': [ - 8364, 129, 8218, 402, 8222, 8230, 8224, 8225, 710, 8240, 352, 8249, 338, 141, 142, 143, 144, 8216, 8217, 8220, - 8221, 8226, 8211, 8212, 732, 8482, 353, 8250, 339, 157, 158, 376, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 286, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 304, 350, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 287, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 305, 351, 255, + "windows-1254": [8364, 129, 8218, 402, 8222, 8230, 8224, + 8225, 710, 8240, 352, 8249, 338, 141, 142, 143, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 732, 8482, + 353, 8250, 339, 157, 158, 376, 160, 161, 162, 163, + 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, + 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 286, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 220, 304, 350, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 287, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 305, + 351, 255 ], - 'windows-1255': [ - 8364, - 129, - 8218, - 402, - 8222, - 8230, - 8224, - 8225, - 710, - 8240, - 138, - 8249, - 140, - 141, - 142, - 143, - 144, - 8216, - 8217, - 8220, - 8221, - 8226, - 8211, - 8212, - 732, - 8482, - 154, - 8250, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 8362, - 165, - 166, - 167, - 168, - 169, - 215, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 247, - 187, - 188, - 189, - 190, - 191, - 1456, - 1457, - 1458, - 1459, - 1460, - 1461, - 1462, - 1463, - 1464, - 1465, - null, - 1467, - 1468, - 1469, - 1470, - 1471, - 1472, - 1473, - 1474, - 1475, - 1520, - 1521, - 1522, - 1523, - 1524, - null, - null, - null, - null, - null, - null, - null, - 1488, - 1489, - 1490, - 1491, - 1492, - 1493, - 1494, - 1495, - 1496, - 1497, - 1498, - 1499, - 1500, - 1501, - 1502, - 1503, - 1504, - 1505, - 1506, - 1507, - 1508, - 1509, - 1510, - 1511, - 1512, - 1513, - 1514, - null, - null, - 8206, - 8207, - null, + "windows-1255": [8364, 129, 8218, 402, 8222, 8230, 8224, + 8225, 710, 8240, 138, 8249, 140, 141, 142, 143, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 732, 8482, + 154, 8250, 156, 157, 158, 159, 160, 161, 162, 163, + 8362, 165, 166, 167, 168, 169, 215, 171, 172, 173, + 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, + 184, 185, 247, 187, 188, 189, 190, 191, 1456, 1457, + 1458, 1459, 1460, 1461, 1462, 1463, 1464, 1465, + null, 1467, 1468, 1469, 1470, 1471, 1472, 1473, + 1474, 1475, 1520, 1521, 1522, 1523, 1524, null, + null, null, null, null, null, null, 1488, 1489, + 1490, 1491, 1492, 1493, 1494, 1495, 1496, 1497, + 1498, 1499, 1500, 1501, 1502, 1503, 1504, 1505, + 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, + 1514, null, null, 8206, 8207, null ], - 'windows-1256': [ - 8364, 1662, 8218, 402, 8222, 8230, 8224, 8225, 710, 8240, 1657, 8249, 338, 1670, 1688, 1672, 1711, 8216, 8217, - 8220, 8221, 8226, 8211, 8212, 1705, 8482, 1681, 8250, 339, 8204, 8205, 1722, 160, 1548, 162, 163, 164, 165, 166, - 167, 168, 169, 1726, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 1563, 187, 188, - 189, 190, 1567, 1729, 1569, 1570, 1571, 1572, 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, 1583, - 1584, 1585, 1586, 1587, 1588, 1589, 1590, 215, 1591, 1592, 1593, 1594, 1600, 1601, 1602, 1603, 224, 1604, 226, - 1605, 1606, 1607, 1608, 231, 232, 233, 234, 235, 1609, 1610, 238, 239, 1611, 1612, 1613, 1614, 244, 1615, 1616, - 247, 1617, 249, 1618, 251, 252, 8206, 8207, 1746, + "windows-1256": [8364, 1662, 8218, 402, 8222, 8230, 8224, + 8225, 710, 8240, 1657, 8249, 338, 1670, 1688, 1672, + 1711, 8216, 8217, 8220, 8221, 8226, 8211, 8212, + 1705, 8482, 1681, 8250, 339, 8204, 8205, 1722, 160, + 1548, 162, 163, 164, 165, 166, 167, 168, 169, 1726, + 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, + 181, 182, 183, 184, 185, 1563, 187, 188, 189, 190, + 1567, 1729, 1569, 1570, 1571, 1572, 1573, 1574, + 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, + 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 215, + 1591, 1592, 1593, 1594, 1600, 1601, 1602, 1603, 224, + 1604, 226, 1605, 1606, 1607, 1608, 231, 232, 233, + 234, 235, 1609, 1610, 238, 239, 1611, 1612, 1613, + 1614, 244, 1615, 1616, 247, 1617, 249, 1618, 251, + 252, 8206, 8207, 1746 ], - 'windows-1257': [ - 8364, - 129, - 8218, - 131, - 8222, - 8230, - 8224, - 8225, - 136, - 8240, - 138, - 8249, - 140, - 168, - 711, - 184, - 144, - 8216, - 8217, - 8220, - 8221, - 8226, - 8211, - 8212, - 152, - 8482, - 154, - 8250, - 156, - 175, - 731, - 159, - 160, - null, - 162, - 163, - 164, - null, - 166, - 167, - 216, - 169, - 342, - 171, - 172, - 173, - 174, - 198, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 248, - 185, - 343, - 187, - 188, - 189, - 190, - 230, - 260, - 302, - 256, - 262, - 196, - 197, - 280, - 274, - 268, - 201, - 377, - 278, - 290, - 310, - 298, - 315, - 352, - 323, - 325, - 211, - 332, - 213, - 214, - 215, - 370, - 321, - 346, - 362, - 220, - 379, - 381, - 223, - 261, - 303, - 257, - 263, - 228, - 229, - 281, - 275, - 269, - 233, - 378, - 279, - 291, - 311, - 299, - 316, - 353, - 324, - 326, - 243, - 333, - 245, - 246, - 247, - 371, - 322, - 347, - 363, - 252, - 380, - 382, - 729, + "windows-1257": [8364, 129, 8218, 131, 8222, 8230, 8224, + 8225, 136, 8240, 138, 8249, 140, 168, 711, 184, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 152, 8482, + 154, 8250, 156, 175, 731, 159, 160, null, 162, 163, + 164, null, 166, 167, 216, 169, 342, 171, 172, 173, + 174, 198, 176, 177, 178, 179, 180, 181, 182, 183, + 248, 185, 343, 187, 188, 189, 190, 230, 260, 302, + 256, 262, 196, 197, 280, 274, 268, 201, 377, 278, + 290, 310, 298, 315, 352, 323, 325, 211, 332, 213, + 214, 215, 370, 321, 346, 362, 220, 379, 381, 223, + 261, 303, 257, 263, 228, 229, 281, 275, 269, 233, + 378, 279, 291, 311, 299, 316, 353, 324, 326, 243, + 333, 245, 246, 247, 371, 322, 347, 363, 252, 380, + 382, 729 ], - 'windows-1258': [ - 8364, 129, 8218, 402, 8222, 8230, 8224, 8225, 710, 8240, 138, 8249, 338, 141, 142, 143, 144, 8216, 8217, 8220, - 8221, 8226, 8211, 8212, 732, 8482, 154, 8250, 339, 157, 158, 376, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 258, 196, 197, 198, 199, 200, 201, 202, 203, 768, 205, 206, 207, 272, 209, 777, 211, 212, 416, 214, - 215, 216, 217, 218, 219, 220, 431, 771, 223, 224, 225, 226, 259, 228, 229, 230, 231, 232, 233, 234, 235, 769, 237, - 238, 239, 273, 241, 803, 243, 244, 417, 246, 247, 248, 249, 250, 251, 252, 432, 8363, 255, - ], - 'x-mac-cyrillic': [ - 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, - 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 8224, 176, 1168, 163, 167, 8226, - 182, 1030, 174, 169, 8482, 1026, 1106, 8800, 1027, 1107, 8734, 177, 8804, 8805, 1110, 181, 1169, 1032, 1028, 1108, - 1031, 1111, 1033, 1113, 1034, 1114, 1112, 1029, 172, 8730, 402, 8776, 8710, 171, 187, 8230, 160, 1035, 1115, 1036, - 1116, 1109, 8211, 8212, 8220, 8221, 8216, 8217, 247, 8222, 1038, 1118, 1039, 1119, 8470, 1025, 1105, 1103, 1072, - 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, - 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 8364, + "windows-1258": [8364, 129, 8218, 402, 8222, 8230, 8224, + 8225, 710, 8240, 138, 8249, 338, 141, 142, 143, 144, + 8216, 8217, 8220, 8221, 8226, 8211, 8212, 732, 8482, + 154, 8250, 339, 157, 158, 376, 160, 161, 162, 163, + 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, + 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 258, 196, 197, 198, 199, 200, 201, 202, 203, + 768, 205, 206, 207, 272, 209, 777, 211, 212, 416, + 214, 215, 216, 217, 218, 219, 220, 431, 771, 223, + 224, 225, 226, 259, 228, 229, 230, 231, 232, 233, + 234, 235, 769, 237, 238, 239, 273, 241, 803, 243, + 244, 417, 246, 247, 248, 249, 250, 251, 252, 432, + 8363, 255 ], + "x-mac-cyrillic": [1040, 1041, 1042, 1043, 1044, 1045, 1046, + 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, + 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, + 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, + 1071, 8224, 176, 1168, 163, 167, 8226, 182, 1030, + 174, 169, 8482, 1026, 1106, 8800, 1027, 1107, 8734, + 177, 8804, 8805, 1110, 181, 1169, 1032, 1028, 1108, + 1031, 1111, 1033, 1113, 1034, 1114, 1112, 1029, 172, + 8730, 402, 8776, 8710, 171, 187, 8230, 160, 1035, + 1115, 1036, 1116, 1109, 8211, 8212, 8220, 8221, + 8216, 8217, 247, 8222, 1038, 1118, 1039, 1119, 8470, + 1025, 1105, 1103, 1072, 1073, 1074, 1075, 1076, + 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, + 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, + 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, + 1101, 1102, 8364 + ] }; // @@ -61409,6 +13093,7 @@ try { return Math.floor(n / d); } + // // Implementation of Encoding specification // http://dvcs.w3.org/hg/encoding/raw-file/tip/Overview.html @@ -61440,7 +13125,8 @@ try { * @return {number} Get the next byte from the stream. */ this.get = function () { - return pos >= bytes.length ? EOF_byte : Number(bytes[pos]); + return (pos >= bytes.length) ? EOF_byte : Number(bytes[ + pos]); }; /** @param {number} n Number (positive or negative) by which to @@ -61515,23 +13201,22 @@ try { n = string.length; while (i < string.length) { var c = string.charCodeAt(i); - if (!inRange(c, 0xd800, 0xdfff)) { + if (!inRange(c, 0xD800, 0xDFFF)) { cps.push(c); - } else if (inRange(c, 0xdc00, 0xdfff)) { - cps.push(0xfffd); - } else { - // (inRange(cu, 0xD800, 0xDBFF)) + } else if (inRange(c, 0xDC00, 0xDFFF)) { + cps.push(0xFFFD); + } else { // (inRange(cu, 0xD800, 0xDBFF)) if (i === n - 1) { - cps.push(0xfffd); + cps.push(0xFFFD); } else { var d = string.charCodeAt(i + 1); - if (inRange(d, 0xdc00, 0xdfff)) { - var a = c & 0x3ff; - var b = d & 0x3ff; + if (inRange(d, 0xDC00, 0xDFFF)) { + var a = c & 0x3FF; + var b = d & 0x3FF; i += 1; cps.push(0x10000 + (a << 10) + b); } else { - cps.push(0xfffd); + cps.push(0xFFFD); } } } @@ -61557,6 +13242,7 @@ try { } }; + /** @return {number} Get the next code point from the stream. */ this.get = function () { if (pos >= cps.length) { @@ -61580,12 +13266,13 @@ try { /** @param {number} c The code point to encode into the stream. */ this.emit = function (c) { - if (c <= 0xffff) { + if (c <= 0xFFFF) { string += String.fromCharCode(c); } else { c -= 0x10000; - string += String.fromCharCode(0xd800 + ((c >> 10) & 0x3ff)); - string += String.fromCharCode(0xdc00 + (c & 0x3ff)); + string += String.fromCharCode(0xD800 + ((c >> 10) & + 0x3ff)); + string += String.fromCharCode(0xDC00 + (c & 0x3ff)); } }; } @@ -61610,7 +13297,7 @@ try { if (fatal) { throw new EncodingError('Decoder error'); } - return opt_code_point || 0xfffd; + return opt_code_point || 0xFFFD; } /** @@ -61618,7 +13305,8 @@ try { * @return {number} Always throws, no value is actually returned. */ function encoderError(code_point) { - throw new EncodingError('The code point ' + code_point + ' could not be encoded.'); + throw new EncodingError('The code point ' + code_point + + ' could not be encoded.'); } /** @@ -61627,7 +13315,8 @@ try { */ function getEncoding(label) { label = String(label).trim().toLowerCase(); - if (Object.prototype.hasOwnProperty.call(label_to_encoding, label)) { + if (Object.prototype.hasOwnProperty.call(label_to_encoding, + label)) { return label_to_encoding[label]; } return null; @@ -61635,335 +13324,404 @@ try { /** @type {Array.<{encodings: Array.<{name:string,labels:Array.}>, * heading: string}>} */ - var encodings = [ - { - encodings: [ - { - labels: ['unicode-1-1-utf-8', 'utf-8', 'utf8'], - name: 'utf-8', - }, + var encodings = [{ + "encodings": [{ + "labels": [ + "unicode-1-1-utf-8", + "utf-8", + "utf8" ], - heading: 'The Encoding', - }, - { - encodings: [ - { - labels: ['866', 'cp866', 'csibm866', 'ibm866'], - name: 'ibm866', - }, - { - labels: [ - 'csisolatin2', - 'iso-8859-2', - 'iso-ir-101', - 'iso8859-2', - 'iso88592', - 'iso_8859-2', - 'iso_8859-2:1987', - 'l2', - 'latin2', - ], - name: 'iso-8859-2', - }, - { - labels: [ - 'csisolatin3', - 'iso-8859-3', - 'iso-ir-109', - 'iso8859-3', - 'iso88593', - 'iso_8859-3', - 'iso_8859-3:1988', - 'l3', - 'latin3', - ], - name: 'iso-8859-3', - }, - { - labels: [ - 'csisolatin4', - 'iso-8859-4', - 'iso-ir-110', - 'iso8859-4', - 'iso88594', - 'iso_8859-4', - 'iso_8859-4:1988', - 'l4', - 'latin4', - ], - name: 'iso-8859-4', - }, - { - labels: [ - 'csisolatincyrillic', - 'cyrillic', - 'iso-8859-5', - 'iso-ir-144', - 'iso8859-5', - 'iso88595', - 'iso_8859-5', - 'iso_8859-5:1988', - ], - name: 'iso-8859-5', - }, - { - labels: [ - 'arabic', - 'asmo-708', - 'csiso88596e', - 'csiso88596i', - 'csisolatinarabic', - 'ecma-114', - 'iso-8859-6', - 'iso-8859-6-e', - 'iso-8859-6-i', - 'iso-ir-127', - 'iso8859-6', - 'iso88596', - 'iso_8859-6', - 'iso_8859-6:1987', - ], - name: 'iso-8859-6', - }, - { - labels: [ - 'csisolatingreek', - 'ecma-118', - 'elot_928', - 'greek', - 'greek8', - 'iso-8859-7', - 'iso-ir-126', - 'iso8859-7', - 'iso88597', - 'iso_8859-7', - 'iso_8859-7:1987', - 'sun_eu_greek', - ], - name: 'iso-8859-7', - }, - { - labels: [ - 'csiso88598e', - 'csisolatinhebrew', - 'hebrew', - 'iso-8859-8', - 'iso-8859-8-e', - 'iso-ir-138', - 'iso8859-8', - 'iso88598', - 'iso_8859-8', - 'iso_8859-8:1988', - 'visual', - ], - name: 'iso-8859-8', - }, - { - labels: ['csiso88598i', 'iso-8859-8-i', 'logical'], - name: 'iso-8859-8-i', - }, - { - labels: ['csisolatin6', 'iso-8859-10', 'iso-ir-157', 'iso8859-10', 'iso885910', 'l6', 'latin6'], - name: 'iso-8859-10', - }, - { - labels: ['iso-8859-13', 'iso8859-13', 'iso885913'], - name: 'iso-8859-13', - }, - { - labels: ['iso-8859-14', 'iso8859-14', 'iso885914'], - name: 'iso-8859-14', - }, - { - labels: ['csisolatin9', 'iso-8859-15', 'iso8859-15', 'iso885915', 'iso_8859-15', 'l9'], - name: 'iso-8859-15', - }, - { - labels: ['iso-8859-16'], - name: 'iso-8859-16', - }, - { - labels: ['cskoi8r', 'koi', 'koi8', 'koi8-r', 'koi8_r'], - name: 'koi8-r', - }, - { - labels: ['koi8-u'], - name: 'koi8-u', - }, - { - labels: ['csmacintosh', 'mac', 'macintosh', 'x-mac-roman'], - name: 'macintosh', - }, - { - labels: ['dos-874', 'iso-8859-11', 'iso8859-11', 'iso885911', 'tis-620', 'windows-874'], - name: 'windows-874', - }, - { - labels: ['cp1250', 'windows-1250', 'x-cp1250'], - name: 'windows-1250', - }, - { - labels: ['cp1251', 'windows-1251', 'x-cp1251'], - name: 'windows-1251', - }, - { - labels: [ - 'ansi_x3.4-1968', - 'ascii', - 'cp1252', - 'cp819', - 'csisolatin1', - 'ibm819', - 'iso-8859-1', - 'iso-ir-100', - 'iso8859-1', - 'iso88591', - 'iso_8859-1', - 'iso_8859-1:1987', - 'l1', - 'latin1', - 'us-ascii', - 'windows-1252', - 'x-cp1252', - ], - name: 'windows-1252', - }, - { - labels: ['cp1253', 'windows-1253', 'x-cp1253'], - name: 'windows-1253', - }, - { - labels: [ - 'cp1254', - 'csisolatin5', - 'iso-8859-9', - 'iso-ir-148', - 'iso8859-9', - 'iso88599', - 'iso_8859-9', - 'iso_8859-9:1989', - 'l5', - 'latin5', - 'windows-1254', - 'x-cp1254', - ], - name: 'windows-1254', - }, - { - labels: ['cp1255', 'windows-1255', 'x-cp1255'], - name: 'windows-1255', - }, - { - labels: ['cp1256', 'windows-1256', 'x-cp1256'], - name: 'windows-1256', - }, - { - labels: ['cp1257', 'windows-1257', 'x-cp1257'], - name: 'windows-1257', - }, - { - labels: ['cp1258', 'windows-1258', 'x-cp1258'], - name: 'windows-1258', - }, - { - labels: ['x-mac-cyrillic', 'x-mac-ukrainian'], - name: 'x-mac-cyrillic', - }, + "name": "utf-8" + }], + "heading": "The Encoding" + }, { + "encodings": [{ + "labels": [ + "866", + "cp866", + "csibm866", + "ibm866" ], - heading: 'Legacy single-byte encodings', - }, - { - encodings: [ - { - labels: [ - 'chinese', - 'csgb2312', - 'csiso58gb231280', - 'gb18030', - 'gb2312', - 'gb_2312', - 'gb_2312-80', - 'gbk', - 'iso-ir-58', - 'x-gbk', - ], - name: 'gb18030', - }, - { - labels: ['hz-gb-2312'], - name: 'hz-gb-2312', - }, + "name": "ibm866" + }, { + "labels": [ + "csisolatin2", + "iso-8859-2", + "iso-ir-101", + "iso8859-2", + "iso88592", + "iso_8859-2", + "iso_8859-2:1987", + "l2", + "latin2" ], - heading: 'Legacy multi-byte Chinese (simplified) encodings', - }, - { - encodings: [ - { - labels: ['big5', 'big5-hkscs', 'cn-big5', 'csbig5', 'x-x-big5'], - name: 'big5', - }, + "name": "iso-8859-2" + }, { + "labels": [ + "csisolatin3", + "iso-8859-3", + "iso-ir-109", + "iso8859-3", + "iso88593", + "iso_8859-3", + "iso_8859-3:1988", + "l3", + "latin3" ], - heading: 'Legacy multi-byte Chinese (traditional) encodings', - }, - { - encodings: [ - { - labels: ['cseucpkdfmtjapanese', 'euc-jp', 'x-euc-jp'], - name: 'euc-jp', - }, - { - labels: ['csiso2022jp', 'iso-2022-jp'], - name: 'iso-2022-jp', - }, - { - labels: ['csshiftjis', 'ms_kanji', 'shift-jis', 'shift_jis', 'sjis', 'windows-31j', 'x-sjis'], - name: 'shift_jis', - }, + "name": "iso-8859-3" + }, { + "labels": [ + "csisolatin4", + "iso-8859-4", + "iso-ir-110", + "iso8859-4", + "iso88594", + "iso_8859-4", + "iso_8859-4:1988", + "l4", + "latin4" ], - heading: 'Legacy multi-byte Japanese encodings', - }, - { - encodings: [ - { - labels: [ - 'cseuckr', - 'csksc56011987', - 'euc-kr', - 'iso-ir-149', - 'korean', - 'ks_c_5601-1987', - 'ks_c_5601-1989', - 'ksc5601', - 'ksc_5601', - 'windows-949', - ], - name: 'euc-kr', - }, + "name": "iso-8859-4" + }, { + "labels": [ + "csisolatincyrillic", + "cyrillic", + "iso-8859-5", + "iso-ir-144", + "iso8859-5", + "iso88595", + "iso_8859-5", + "iso_8859-5:1988" ], - heading: 'Legacy multi-byte Korean encodings', - }, - { - encodings: [ - { - labels: ['csiso2022kr', 'iso-2022-cn', 'iso-2022-cn-ext', 'iso-2022-kr'], - name: 'replacement', - }, - { - labels: ['utf-16be'], - name: 'utf-16be', - }, - { - labels: ['utf-16', 'utf-16le'], - name: 'utf-16le', - }, - { - labels: ['x-user-defined'], - name: 'x-user-defined', - }, + "name": "iso-8859-5" + }, { + "labels": [ + "arabic", + "asmo-708", + "csiso88596e", + "csiso88596i", + "csisolatinarabic", + "ecma-114", + "iso-8859-6", + "iso-8859-6-e", + "iso-8859-6-i", + "iso-ir-127", + "iso8859-6", + "iso88596", + "iso_8859-6", + "iso_8859-6:1987" ], - heading: 'Legacy miscellaneous encodings', - }, - ]; + "name": "iso-8859-6" + }, { + "labels": [ + "csisolatingreek", + "ecma-118", + "elot_928", + "greek", + "greek8", + "iso-8859-7", + "iso-ir-126", + "iso8859-7", + "iso88597", + "iso_8859-7", + "iso_8859-7:1987", + "sun_eu_greek" + ], + "name": "iso-8859-7" + }, { + "labels": [ + "csiso88598e", + "csisolatinhebrew", + "hebrew", + "iso-8859-8", + "iso-8859-8-e", + "iso-ir-138", + "iso8859-8", + "iso88598", + "iso_8859-8", + "iso_8859-8:1988", + "visual" + ], + "name": "iso-8859-8" + }, { + "labels": [ + "csiso88598i", + "iso-8859-8-i", + "logical" + ], + "name": "iso-8859-8-i" + }, { + "labels": [ + "csisolatin6", + "iso-8859-10", + "iso-ir-157", + "iso8859-10", + "iso885910", + "l6", + "latin6" + ], + "name": "iso-8859-10" + }, { + "labels": [ + "iso-8859-13", + "iso8859-13", + "iso885913" + ], + "name": "iso-8859-13" + }, { + "labels": [ + "iso-8859-14", + "iso8859-14", + "iso885914" + ], + "name": "iso-8859-14" + }, { + "labels": [ + "csisolatin9", + "iso-8859-15", + "iso8859-15", + "iso885915", + "iso_8859-15", + "l9" + ], + "name": "iso-8859-15" + }, { + "labels": [ + "iso-8859-16" + ], + "name": "iso-8859-16" + }, { + "labels": [ + "cskoi8r", + "koi", + "koi8", + "koi8-r", + "koi8_r" + ], + "name": "koi8-r" + }, { + "labels": [ + "koi8-u" + ], + "name": "koi8-u" + }, { + "labels": [ + "csmacintosh", + "mac", + "macintosh", + "x-mac-roman" + ], + "name": "macintosh" + }, { + "labels": [ + "dos-874", + "iso-8859-11", + "iso8859-11", + "iso885911", + "tis-620", + "windows-874" + ], + "name": "windows-874" + }, { + "labels": [ + "cp1250", + "windows-1250", + "x-cp1250" + ], + "name": "windows-1250" + }, { + "labels": [ + "cp1251", + "windows-1251", + "x-cp1251" + ], + "name": "windows-1251" + }, { + "labels": [ + "ansi_x3.4-1968", + "ascii", + "cp1252", + "cp819", + "csisolatin1", + "ibm819", + "iso-8859-1", + "iso-ir-100", + "iso8859-1", + "iso88591", + "iso_8859-1", + "iso_8859-1:1987", + "l1", + "latin1", + "us-ascii", + "windows-1252", + "x-cp1252" + ], + "name": "windows-1252" + }, { + "labels": [ + "cp1253", + "windows-1253", + "x-cp1253" + ], + "name": "windows-1253" + }, { + "labels": [ + "cp1254", + "csisolatin5", + "iso-8859-9", + "iso-ir-148", + "iso8859-9", + "iso88599", + "iso_8859-9", + "iso_8859-9:1989", + "l5", + "latin5", + "windows-1254", + "x-cp1254" + ], + "name": "windows-1254" + }, { + "labels": [ + "cp1255", + "windows-1255", + "x-cp1255" + ], + "name": "windows-1255" + }, { + "labels": [ + "cp1256", + "windows-1256", + "x-cp1256" + ], + "name": "windows-1256" + }, { + "labels": [ + "cp1257", + "windows-1257", + "x-cp1257" + ], + "name": "windows-1257" + }, { + "labels": [ + "cp1258", + "windows-1258", + "x-cp1258" + ], + "name": "windows-1258" + }, { + "labels": [ + "x-mac-cyrillic", + "x-mac-ukrainian" + ], + "name": "x-mac-cyrillic" + }], + "heading": "Legacy single-byte encodings" + }, { + "encodings": [{ + "labels": [ + "chinese", + "csgb2312", + "csiso58gb231280", + "gb18030", + "gb2312", + "gb_2312", + "gb_2312-80", + "gbk", + "iso-ir-58", + "x-gbk" + ], + "name": "gb18030" + }, { + "labels": [ + "hz-gb-2312" + ], + "name": "hz-gb-2312" + }], + "heading": "Legacy multi-byte Chinese (simplified) encodings" + }, { + "encodings": [{ + "labels": [ + "big5", + "big5-hkscs", + "cn-big5", + "csbig5", + "x-x-big5" + ], + "name": "big5" + }], + "heading": "Legacy multi-byte Chinese (traditional) encodings" + }, { + "encodings": [{ + "labels": [ + "cseucpkdfmtjapanese", + "euc-jp", + "x-euc-jp" + ], + "name": "euc-jp" + }, { + "labels": [ + "csiso2022jp", + "iso-2022-jp" + ], + "name": "iso-2022-jp" + }, { + "labels": [ + "csshiftjis", + "ms_kanji", + "shift-jis", + "shift_jis", + "sjis", + "windows-31j", + "x-sjis" + ], + "name": "shift_jis" + }], + "heading": "Legacy multi-byte Japanese encodings" + }, { + "encodings": [{ + "labels": [ + "cseuckr", + "csksc56011987", + "euc-kr", + "iso-ir-149", + "korean", + "ks_c_5601-1987", + "ks_c_5601-1989", + "ksc5601", + "ksc_5601", + "windows-949" + ], + "name": "euc-kr" + }], + "heading": "Legacy multi-byte Korean encodings" + }, { + "encodings": [{ + "labels": [ + "csiso2022kr", + "iso-2022-cn", + "iso-2022-cn-ext", + "iso-2022-kr" + ], + "name": "replacement" + }, { + "labels": [ + "utf-16be" + ], + "name": "utf-16be" + }, { + "labels": [ + "utf-16", + "utf-16le" + ], + "name": "utf-16le" + }, { + "labels": [ + "x-user-defined" + ], + "name": "x-user-defined" + }], + "heading": "Legacy miscellaneous encodings" + }]; var name_to_encoding = {}; var label_to_encoding = {}; @@ -61971,7 +13729,8 @@ try { category.encodings.forEach(function (encoding) { name_to_encoding[encoding.name] = encoding; encoding.labels.forEach(function (label) { - label_to_encoding[label] = encoding; + label_to_encoding[label] = + encoding; }); }); }); @@ -62016,7 +13775,7 @@ try { * or null if |code point| is not in the gb18030 index. */ function indexGB18030CodePointFor(pointer) { - if ((pointer > 39419 && pointer < 189000) || pointer > 1237575) { + if ((pointer > 39419 && pointer < 189000) || (pointer > 1237575)) { return null; } var /** @type {number} */ offset = 0, @@ -62061,6 +13820,7 @@ try { return pointer_offset + code_point - offset; } + // // 7. API // @@ -62080,11 +13840,13 @@ try { if (!(this instanceof TextDecoder)) { return new TextDecoder(opt_encoding, options); } - opt_encoding = opt_encoding ? String(opt_encoding) : DEFAULT_ENCODING; + opt_encoding = opt_encoding ? String(opt_encoding) : + DEFAULT_ENCODING; options = Object(options); /** @private */ this._encoding = getEncoding(opt_encoding); - if (this._encoding === null || this._encoding.name === 'replacement') + if (this._encoding === null || this._encoding.name === + 'replacement') throw new TypeError('Unknown encoding: ' + opt_encoding); /** @private @type {boolean} */ @@ -62095,14 +13857,15 @@ try { this._decoder = null; /** @private @type {{fatal: boolean}=} */ this._options = { - fatal: Boolean(options.fatal), + fatal: Boolean(options.fatal) }; if (Object.defineProperty) { - Object.defineProperty(this, 'encoding', { + Object.defineProperty( + this, 'encoding', { get: function () { return this._encoding.name; - }, + } }); } else { this.encoding = this._encoding.name; @@ -62120,7 +13883,9 @@ try { * @param {{stream: boolean}=} options */ decode: function decode(opt_view, options) { - if (opt_view && !('buffer' in opt_view && 'byteOffset' in opt_view && 'byteLength' in opt_view)) { + if (opt_view && !('buffer' in opt_view && + 'byteOffset' in opt_view && + 'byteLength' in opt_view)) { throw new TypeError('Expected ArrayBufferView'); } else if (!opt_view) { opt_view = new Uint8Array(0); @@ -62133,7 +13898,9 @@ try { } this._streaming = Boolean(options.stream); - var bytes = new Uint8Array(opt_view.buffer, opt_view.byteOffset, opt_view.byteLength); + var bytes = new Uint8Array(opt_view.buffer, + opt_view.byteOffset, + opt_view.byteLength); var input_stream = new ByteInputStream(bytes); var output_stream = new CodePointOutputStream(); @@ -62143,30 +13910,36 @@ try { while (input_stream.get() !== EOF_byte) { code_point = this._decoder.decode(input_stream); - if (code_point !== null && code_point !== EOF_code_point) { + if (code_point !== null && code_point !== + EOF_code_point) { output_stream.emit(code_point); } } if (!this._streaming) { do { - code_point = this._decoder.decode(input_stream); - if (code_point !== null && code_point !== EOF_code_point) { + code_point = this._decoder.decode( + input_stream); + if (code_point !== null && code_point !== + EOF_code_point) { output_stream.emit(code_point); } - } while (code_point !== EOF_code_point && input_stream.get() != EOF_byte); + } while (code_point !== EOF_code_point && + input_stream.get() != EOF_byte); this._decoder = null; } var result = output_stream.string(); if (!this._BOMseen && result.length) { this._BOMseen = true; - if (['utf-8', 'utf-16le', 'utf-16be'].indexOf(this.encoding) !== -1 && result.charCodeAt(0) === 0xfeff) { + if (['utf-8', 'utf-16le', 'utf-16be'].indexOf( + this.encoding) !== -1 && + result.charCodeAt(0) === 0xFEFF) { result = result.substring(1); } } return result; - }, + } }; // 7.2 Interface TextEncoder @@ -62181,14 +13954,14 @@ try { if (!(this instanceof TextEncoder)) { return new TextEncoder(opt_encoding, options); } - opt_encoding = opt_encoding ? String(opt_encoding) : DEFAULT_ENCODING; + opt_encoding = opt_encoding ? String(opt_encoding) : + DEFAULT_ENCODING; options = Object(options); /** @private */ this._encoding = getEncoding(opt_encoding); - if ( - this._encoding === null || - (this._encoding.name !== 'utf-8' && this._encoding.name !== 'utf-16le' && this._encoding.name !== 'utf-16be') - ) + if (this._encoding === null || (this._encoding.name !== 'utf-8' && + this._encoding.name !== 'utf-16le' && + this._encoding.name !== 'utf-16be')) throw new TypeError('Unknown encoding: ' + opt_encoding); /** @private @type {boolean} */ this._streaming = false; @@ -62196,14 +13969,15 @@ try { this._encoder = null; /** @private @type {{fatal: boolean}=} */ this._options = { - fatal: Boolean(options.fatal), + fatal: Boolean(options.fatal) }; if (Object.defineProperty) { - Object.defineProperty(this, 'encoding', { + Object.defineProperty( + this, 'encoding', { get: function () { return this._encoding.name; - }, + } }); } else { this.encoding = this._encoding.name; @@ -62228,22 +14002,26 @@ try { var bytes = []; var output_stream = new ByteOutputStream(bytes); - var input_stream = new CodePointInputStream(opt_string); + var input_stream = new CodePointInputStream( + opt_string); while (input_stream.get() !== EOF_code_point) { - this._encoder.encode(output_stream, input_stream); + this._encoder.encode(output_stream, + input_stream); } if (!this._streaming) { /** @type {number} */ var last_byte; do { - last_byte = this._encoder.encode(output_stream, input_stream); + last_byte = this._encoder.encode( + output_stream, input_stream); } while (last_byte !== EOF_byte); this._encoder = null; } return new Uint8Array(bytes); - }, + } }; + // // 8. The encoding // @@ -62280,28 +14058,29 @@ try { byte_pointer.offset(1); if (utf8_bytes_needed === 0) { - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } - if (inRange(bite, 0xc2, 0xdf)) { + if (inRange(bite, 0xC2, 0xDF)) { utf8_bytes_needed = 1; utf8_lower_boundary = 0x80; - utf8_code_point = bite - 0xc0; - } else if (inRange(bite, 0xe0, 0xef)) { + utf8_code_point = bite - 0xC0; + } else if (inRange(bite, 0xE0, 0xEF)) { utf8_bytes_needed = 2; utf8_lower_boundary = 0x800; - utf8_code_point = bite - 0xe0; - } else if (inRange(bite, 0xf0, 0xf4)) { + utf8_code_point = bite - 0xE0; + } else if (inRange(bite, 0xF0, 0xF4)) { utf8_bytes_needed = 3; utf8_lower_boundary = 0x10000; - utf8_code_point = bite - 0xf0; + utf8_code_point = bite - 0xF0; } else { return decoderError(fatal); } - utf8_code_point = utf8_code_point * Math.pow(64, utf8_bytes_needed); + utf8_code_point = utf8_code_point * Math.pow(64, + utf8_bytes_needed); return null; } - if (!inRange(bite, 0x80, 0xbf)) { + if (!inRange(bite, 0x80, 0xBF)) { utf8_code_point = 0; utf8_bytes_needed = 0; utf8_bytes_seen = 0; @@ -62310,7 +14089,8 @@ try { return decoderError(fatal); } utf8_bytes_seen += 1; - utf8_code_point = utf8_code_point + (bite - 0x80) * Math.pow(64, utf8_bytes_needed - utf8_bytes_seen); + utf8_code_point = utf8_code_point + (bite - 0x80) * + Math.pow(64, utf8_bytes_needed - utf8_bytes_seen); if (utf8_bytes_seen !== utf8_bytes_needed) { return null; } @@ -62320,7 +14100,8 @@ try { utf8_bytes_needed = 0; utf8_bytes_seen = 0; utf8_lower_boundary = 0; - if (inRange(code_point, lower_boundary, 0x10ffff) && !inRange(code_point, 0xd800, 0xdfff)) { + if (inRange(code_point, lower_boundary, 0x10FFFF) && + !inRange(code_point, 0xD800, 0xDFFF)) { return code_point; } return decoderError(fatal); @@ -62344,24 +14125,25 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0xd800, 0xdfff)) { + if (inRange(code_point, 0xD800, 0xDFFF)) { return encoderError(code_point); } if (inRange(code_point, 0x0000, 0x007f)) { return output_byte_stream.emit(code_point); } var count, offset; - if (inRange(code_point, 0x0080, 0x07ff)) { + if (inRange(code_point, 0x0080, 0x07FF)) { count = 1; - offset = 0xc0; - } else if (inRange(code_point, 0x0800, 0xffff)) { + offset = 0xC0; + } else if (inRange(code_point, 0x0800, 0xFFFF)) { count = 2; - offset = 0xe0; - } else if (inRange(code_point, 0x10000, 0x10ffff)) { + offset = 0xE0; + } else if (inRange(code_point, 0x10000, 0x10FFFF)) { count = 3; - offset = 0xf0; + offset = 0xF0; } - var result = output_byte_stream.emit(div(code_point, Math.pow(64, count)) + offset); + var result = output_byte_stream.emit( + div(code_point, Math.pow(64, count)) + offset); while (count > 0) { var temp = div(code_point, Math.pow(64, count - 1)); result = output_byte_stream.emit(0x80 + (temp % 64)); @@ -62402,7 +14184,7 @@ try { return EOF_code_point; } byte_pointer.offset(1); - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } var code_point = index[bite - 0x80]; @@ -62430,7 +14212,7 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } var pointer = indexPointerFor(code_point, index); @@ -62443,20 +14225,26 @@ try { (function () { encodings.forEach(function (category) { - if (category.heading !== 'Legacy single-byte encodings') return; + if (category.heading !== + 'Legacy single-byte encodings') + return; category.encodings.forEach(function (encoding) { var idx = index(encoding.name); /** @param {{fatal: boolean}} options */ - encoding.getDecoder = function (options) { - return new SingleByteDecoder(idx, options); + encoding.getDecoder = function ( + options) { + return new SingleByteDecoder( + idx, options); }; /** @param {{fatal: boolean}} options */ - encoding.getEncoder = function (options) { - return new SingleByteEncoder(idx, options); + encoding.getEncoder = function ( + options) { + return new SingleByteEncoder( + idx, options); }; }); }); - })(); + }()); // // 10. Legacy multi-byte Chinese (simplified) encodings @@ -62482,10 +14270,13 @@ try { */ this.decode = function (byte_pointer) { var bite = byte_pointer.get(); - if (bite === EOF_byte && gb18030_first === 0x00 && gb18030_second === 0x00 && gb18030_third === 0x00) { + if (bite === EOF_byte && gb18030_first === 0x00 && + gb18030_second === 0x00 && gb18030_third === 0x00) { return EOF_code_point; } - if (bite === EOF_byte && (gb18030_first !== 0x00 || gb18030_second !== 0x00 || gb18030_third !== 0x00)) { + if (bite === EOF_byte && + (gb18030_first !== 0x00 || gb18030_second !== 0x00 || + gb18030_third !== 0x00)) { gb18030_first = 0x00; gb18030_second = 0x00; gb18030_third = 0x00; @@ -62497,8 +14288,10 @@ try { code_point = null; if (inRange(bite, 0x30, 0x39)) { code_point = indexGB18030CodePointFor( - (((gb18030_first - 0x81) * 10 + (gb18030_second - 0x30)) * 126 + (gb18030_third - 0x81)) * 10 + bite - 0x30, - ); + (((gb18030_first - 0x81) * 10 + ( + gb18030_second - 0x30)) * 126 + + (gb18030_third - 0x81)) * 10 + bite - + 0x30); } gb18030_first = 0x00; gb18030_second = 0x00; @@ -62510,7 +14303,7 @@ try { return code_point; } if (gb18030_second !== 0x00) { - if (inRange(bite, 0x81, 0xfe)) { + if (inRange(bite, 0x81, 0xFE)) { gb18030_third = bite; return null; } @@ -62527,11 +14320,13 @@ try { var lead = gb18030_first; var pointer = null; gb18030_first = 0x00; - var offset = bite < 0x7f ? 0x40 : 0x41; - if (inRange(bite, 0x40, 0x7e) || inRange(bite, 0x80, 0xfe)) { + var offset = bite < 0x7F ? 0x40 : 0x41; + if (inRange(bite, 0x40, 0x7E) || inRange(bite, 0x80, + 0xFE)) { pointer = (lead - 0x81) * 190 + (bite - offset); } - code_point = pointer === null ? null : indexCodePointFor(pointer, index('gb18030')); + code_point = pointer === null ? null : + indexCodePointFor(pointer, index('gb18030')); if (pointer === null) { byte_pointer.offset(-1); } @@ -62540,13 +14335,13 @@ try { } return code_point; } - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } if (bite === 0x80) { - return 0x20ac; + return 0x20AC; } - if (inRange(bite, 0x81, 0xfe)) { + if (inRange(bite, 0x81, 0xFE)) { gb18030_first = bite; return null; } @@ -62570,14 +14365,15 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } - var pointer = indexPointerFor(code_point, index('gb18030')); + var pointer = indexPointerFor(code_point, index( + 'gb18030')); if (pointer !== null) { var lead = div(pointer, 190) + 0x81; var trail = pointer % 190; - var offset = trail < 0x3f ? 0x40 : 0x41; + var offset = trail < 0x3F ? 0x40 : 0x41; return output_byte_stream.emit(lead, trail + offset); } pointer = indexGB18030PointerFor(code_point); @@ -62587,7 +14383,10 @@ try { pointer = pointer - byte2 * 10 * 126; var byte3 = div(pointer, 10); var byte4 = pointer - byte3 * 10; - return output_byte_stream.emit(byte1 + 0x81, byte2 + 0x30, byte3 + 0x81, byte4 + 0x30); + return output_byte_stream.emit(byte1 + 0x81, + byte2 + 0x30, + byte3 + 0x81, + byte4 + 0x30); }; } @@ -62626,20 +14425,20 @@ try { return decoderError(fatal); } byte_pointer.offset(1); - if (hzgb2312_lead === 0x7e) { + if (hzgb2312_lead === 0x7E) { hzgb2312_lead = 0x00; - if (bite === 0x7b) { + if (bite === 0x7B) { hzgb2312 = true; return null; } - if (bite === 0x7d) { + if (bite === 0x7D) { hzgb2312 = false; return null; } - if (bite === 0x7e) { - return 0x007e; + if (bite === 0x7E) { + return 0x007E; } - if (bite === 0x0a) { + if (bite === 0x0A) { return null; } byte_pointer.offset(-1); @@ -62649,10 +14448,11 @@ try { var lead = hzgb2312_lead; hzgb2312_lead = 0x00; var code_point = null; - if (inRange(bite, 0x21, 0x7e)) { - code_point = indexCodePointFor((lead - 1) * 190 + (bite + 0x3f), index('gb18030')); + if (inRange(bite, 0x21, 0x7E)) { + code_point = indexCodePointFor((lead - 1) * 190 + + (bite + 0x3F), index('gb18030')); } - if (bite === 0x0a) { + if (bite === 0x0A) { hzgb2312 = false; } if (code_point === null) { @@ -62660,21 +14460,21 @@ try { } return code_point; } - if (bite === 0x7e) { - hzgb2312_lead = 0x7e; + if (bite === 0x7E) { + hzgb2312_lead = 0x7E; return null; } if (hzgb2312) { - if (inRange(bite, 0x20, 0x7f)) { + if (inRange(bite, 0x20, 0x7F)) { hzgb2312_lead = bite; return null; } - if (bite === 0x0a) { + if (bite === 0x0A) { hzgb2312 = false; } return decoderError(fatal); } - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } return decoderError(fatal); @@ -62699,29 +14499,31 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0x0000, 0x007f) && hzgb2312) { + if (inRange(code_point, 0x0000, 0x007F) && hzgb2312) { code_point_pointer.offset(-1); hzgb2312 = false; - return output_byte_stream.emit(0x7e, 0x7d); + return output_byte_stream.emit(0x7E, 0x7D); } - if (code_point === 0x007e) { - return output_byte_stream.emit(0x7e, 0x7e); + if (code_point === 0x007E) { + return output_byte_stream.emit(0x7E, 0x7E); } - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } if (!hzgb2312) { code_point_pointer.offset(-1); hzgb2312 = true; - return output_byte_stream.emit(0x7e, 0x7b); + return output_byte_stream.emit(0x7E, 0x7B); } - var pointer = indexPointerFor(code_point, index('gb18030')); + var pointer = indexPointerFor(code_point, index( + 'gb18030')); if (pointer === null) { return encoderError(code_point); } var lead = div(pointer, 190) + 1; - var trail = (pointer % 190) - 0x3f; - if (!inRange(lead, 0x21, 0x7e) || !inRange(trail, 0x21, 0x7e)) { + var trail = pointer % 190 - 0x3F; + if (!inRange(lead, 0x21, 0x7E) || !inRange(trail, 0x21, + 0x7E)) { return encoderError(code_point); } return output_byte_stream.emit(lead, trail); @@ -62778,27 +14580,29 @@ try { var lead = big5_lead; var pointer = null; big5_lead = 0x00; - var offset = bite < 0x7f ? 0x40 : 0x62; - if (inRange(bite, 0x40, 0x7e) || inRange(bite, 0xa1, 0xfe)) { + var offset = bite < 0x7F ? 0x40 : 0x62; + if (inRange(bite, 0x40, 0x7E) || inRange(bite, 0xA1, + 0xFE)) { pointer = (lead - 0x81) * 157 + (bite - offset); } if (pointer === 1133) { big5_pending = 0x0304; - return 0x00ca; + return 0x00CA; } if (pointer === 1135) { - big5_pending = 0x030c; - return 0x00ca; + big5_pending = 0x030C; + return 0x00CA; } if (pointer === 1164) { big5_pending = 0x0304; - return 0x00ea; + return 0x00EA; } if (pointer === 1166) { - big5_pending = 0x030c; - return 0x00ea; + big5_pending = 0x030C; + return 0x00EA; } - var code_point = pointer === null ? null : indexCodePointFor(pointer, index('big5')); + var code_point = (pointer === null) ? null : + indexCodePointFor(pointer, index('big5')); if (pointer === null) { byte_pointer.offset(-1); } @@ -62807,10 +14611,10 @@ try { } return code_point; } - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } - if (inRange(bite, 0x81, 0xfe)) { + if (inRange(bite, 0x81, 0xFE)) { big5_lead = bite; return null; } @@ -62834,7 +14638,7 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } var pointer = indexPointerFor(code_point, index('big5')); @@ -62846,7 +14650,7 @@ try { // return encoderError(code_point); //} var trail = pointer % 157; - var offset = trail < 0x3f ? 0x40 : 0x62; + var offset = trail < 0x3F ? 0x40 : 0x62; return output_byte_stream.emit(lead, trail + offset); }; } @@ -62860,6 +14664,7 @@ try { return new Big5Decoder(options); }; + // // 12. Legacy multi-byte Japanese encodings // @@ -62897,10 +14702,13 @@ try { lead = eucjp_second; eucjp_second = 0x00; code_point = null; - if (inRange(lead, 0xa1, 0xfe) && inRange(bite, 0xa1, 0xfe)) { - code_point = indexCodePointFor((lead - 0xa1) * 94 + bite - 0xa1, index('jis0212')); + if (inRange(lead, 0xA1, 0xFE) && inRange(bite, 0xA1, + 0xFE)) { + code_point = indexCodePointFor((lead - 0xA1) * + 94 + bite - 0xA1, + index('jis0212')); } - if (!inRange(bite, 0xa1, 0xfe)) { + if (!inRange(bite, 0xA1, 0xFE)) { byte_pointer.offset(-1); } if (code_point === null) { @@ -62908,11 +14716,11 @@ try { } return code_point; } - if (eucjp_first === 0x8e && inRange(bite, 0xa1, 0xdf)) { + if (eucjp_first === 0x8E && inRange(bite, 0xA1, 0xDF)) { eucjp_first = 0x00; - return 0xff61 + bite - 0xa1; + return 0xFF61 + bite - 0xA1; } - if (eucjp_first === 0x8f && inRange(bite, 0xa1, 0xfe)) { + if (eucjp_first === 0x8F && inRange(bite, 0xA1, 0xFE)) { eucjp_first = 0x00; eucjp_second = bite; return null; @@ -62921,10 +14729,13 @@ try { lead = eucjp_first; eucjp_first = 0x00; code_point = null; - if (inRange(lead, 0xa1, 0xfe) && inRange(bite, 0xa1, 0xfe)) { - code_point = indexCodePointFor((lead - 0xa1) * 94 + bite - 0xa1, index('jis0208')); + if (inRange(lead, 0xA1, 0xFE) && inRange(bite, 0xA1, + 0xFE)) { + code_point = indexCodePointFor((lead - 0xA1) * + 94 + bite - 0xA1, + index('jis0208')); } - if (!inRange(bite, 0xa1, 0xfe)) { + if (!inRange(bite, 0xA1, 0xFE)) { byte_pointer.offset(-1); } if (code_point === null) { @@ -62932,10 +14743,11 @@ try { } return code_point; } - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } - if (bite === 0x8e || bite === 0x8f || inRange(bite, 0xa1, 0xfe)) { + if (bite === 0x8E || bite === 0x8F || (inRange(bite, + 0xA1, 0xFE))) { eucjp_first = bite; return null; } @@ -62959,25 +14771,27 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } - if (code_point === 0x00a5) { - return output_byte_stream.emit(0x5c); + if (code_point === 0x00A5) { + return output_byte_stream.emit(0x5C); } - if (code_point === 0x203e) { - return output_byte_stream.emit(0x7e); + if (code_point === 0x203E) { + return output_byte_stream.emit(0x7E); } - if (inRange(code_point, 0xff61, 0xff9f)) { - return output_byte_stream.emit(0x8e, code_point - 0xff61 + 0xa1); + if (inRange(code_point, 0xFF61, 0xFF9F)) { + return output_byte_stream.emit(0x8E, code_point - + 0xFF61 + 0xA1); } - var pointer = indexPointerFor(code_point, index('jis0208')); + var pointer = indexPointerFor(code_point, index( + 'jis0208')); if (pointer === null) { return encoderError(code_point); } - var lead = div(pointer, 94) + 0xa1; - var trail = (pointer % 94) + 0xa1; + var lead = div(pointer, 94) + 0xA1; + var trail = pointer % 94 + 0xA1; return output_byte_stream.emit(lead, trail); }; } @@ -63007,7 +14821,7 @@ try { escape_final: 3, lead: 4, trail: 5, - Katakana: 6, + Katakana: 6 }; var /** @type {number} */ iso2022jp_state = state.ASCII, /** @type {boolean} */ @@ -63027,11 +14841,11 @@ try { switch (iso2022jp_state) { default: case state.ASCII: - if (bite === 0x1b) { + if (bite === 0x1B) { iso2022jp_state = state.escape_start; return null; } - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } if (bite === EOF_byte) { @@ -63054,7 +14868,8 @@ try { case state.escape_middle: var lead = iso2022jp_lead; iso2022jp_lead = 0x00; - if (lead === 0x24 && (bite === 0x40 || bite === 0x42)) { + if (lead === 0x24 && (bite === 0x40 || bite === + 0x42)) { iso2022jp_jis0212 = false; iso2022jp_state = state.lead; return null; @@ -63063,7 +14878,8 @@ try { iso2022jp_state = state.escape_final; return null; } - if (lead === 0x28 && (bite === 0x42 || bite === 0x4a)) { + if (lead === 0x28 && (bite === 0x42 || bite === + 0x4A)) { iso2022jp_state = state.ASCII; return null; } @@ -63094,11 +14910,11 @@ try { return decoderError(fatal); case state.lead: - if (bite === 0x0a) { + if (bite === 0x0A) { iso2022jp_state = state.ASCII; - return decoderError(fatal, 0x000a); + return decoderError(fatal, 0x000A); } - if (bite === 0x1b) { + if (bite === 0x1B) { iso2022jp_state = state.escape_start; return null; } @@ -63115,12 +14931,15 @@ try { return decoderError(fatal); } var code_point = null; - var pointer = (iso2022jp_lead - 0x21) * 94 + bite - 0x21; - if (inRange(iso2022jp_lead, 0x21, 0x7e) && inRange(bite, 0x21, 0x7e)) { - code_point = - iso2022jp_jis0212 === false - ? indexCodePointFor(pointer, index('jis0208')) - : indexCodePointFor(pointer, index('jis0212')); + var pointer = (iso2022jp_lead - 0x21) * 94 + + bite - 0x21; + if (inRange(iso2022jp_lead, 0x21, 0x7E) && + inRange(bite, 0x21, 0x7E)) { + code_point = (iso2022jp_jis0212 === false) ? + indexCodePointFor(pointer, index( + 'jis0208')) : + indexCodePointFor(pointer, index( + 'jis0212')); } if (code_point === null) { return decoderError(fatal); @@ -63128,12 +14947,12 @@ try { return code_point; case state.Katakana: - if (bite === 0x1b) { + if (bite === 0x1B) { iso2022jp_state = state.escape_start; return null; } - if (inRange(bite, 0x21, 0x5f)) { - return 0xff61 + bite - 0x21; + if (inRange(bite, 0x21, 0x5F)) { + return 0xFF61 + bite - 0x21; } if (bite === EOF_byte) { return EOF_code_point; @@ -63152,7 +14971,7 @@ try { var state = { ASCII: 0, lead: 1, - Katakana: 2, + Katakana: 2 }; var /** @type {number} */ iso2022jp_state = state.ASCII; /** @@ -63166,42 +14985,44 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if ( - (inRange(code_point, 0x0000, 0x007f) || code_point === 0x00a5 || code_point === 0x203e) && - iso2022jp_state !== state.ASCII - ) { + if ((inRange(code_point, 0x0000, 0x007F) || + code_point === 0x00A5 || code_point === 0x203E) && + iso2022jp_state !== state.ASCII) { code_point_pointer.offset(-1); iso2022jp_state = state.ASCII; - return output_byte_stream.emit(0x1b, 0x28, 0x42); + return output_byte_stream.emit(0x1B, 0x28, 0x42); } - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } - if (code_point === 0x00a5) { - return output_byte_stream.emit(0x5c); + if (code_point === 0x00A5) { + return output_byte_stream.emit(0x5C); } - if (code_point === 0x203e) { - return output_byte_stream.emit(0x7e); + if (code_point === 0x203E) { + return output_byte_stream.emit(0x7E); } - if (inRange(code_point, 0xff61, 0xff9f) && iso2022jp_state !== state.Katakana) { + if (inRange(code_point, 0xFF61, 0xFF9F) && + iso2022jp_state !== state.Katakana) { code_point_pointer.offset(-1); iso2022jp_state = state.Katakana; - return output_byte_stream.emit(0x1b, 0x28, 0x49); + return output_byte_stream.emit(0x1B, 0x28, 0x49); } - if (inRange(code_point, 0xff61, 0xff9f)) { - return output_byte_stream.emit(code_point - 0xff61 - 0x21); + if (inRange(code_point, 0xFF61, 0xFF9F)) { + return output_byte_stream.emit(code_point - 0xFF61 - + 0x21); } if (iso2022jp_state !== state.lead) { code_point_pointer.offset(-1); iso2022jp_state = state.lead; - return output_byte_stream.emit(0x1b, 0x24, 0x42); + return output_byte_stream.emit(0x1B, 0x24, 0x42); } - var pointer = indexPointerFor(code_point, index('jis0208')); + var pointer = indexPointerFor(code_point, index( + 'jis0208')); if (pointer === null) { return encoderError(code_point); } var lead = div(pointer, 94) + 0x21; - var trail = (pointer % 94) + 0x21; + var trail = pointer % 94 + 0x21; return output_byte_stream.emit(lead, trail); }; } @@ -63242,10 +15063,13 @@ try { if (shiftjis_lead !== 0x00) { var lead = shiftjis_lead; shiftjis_lead = 0x00; - if (inRange(bite, 0x40, 0x7e) || inRange(bite, 0x80, 0xfc)) { - var offset = bite < 0x7f ? 0x40 : 0x41; - var lead_offset = lead < 0xa0 ? 0x81 : 0xc1; - var code_point = indexCodePointFor((lead - lead_offset) * 188 + bite - offset, index('jis0208')); + if (inRange(bite, 0x40, 0x7E) || inRange(bite, 0x80, + 0xFC)) { + var offset = (bite < 0x7F) ? 0x40 : 0x41; + var lead_offset = (lead < 0xA0) ? 0x81 : 0xC1; + var code_point = indexCodePointFor((lead - + lead_offset) * 188 + + bite - offset, index('jis0208')); if (code_point === null) { return decoderError(fatal); } @@ -63257,10 +15081,11 @@ try { if (inRange(bite, 0x00, 0x80)) { return bite; } - if (inRange(bite, 0xa1, 0xdf)) { - return 0xff61 + bite - 0xa1; + if (inRange(bite, 0xA1, 0xDF)) { + return 0xFF61 + bite - 0xA1; } - if (inRange(bite, 0x81, 0x9f) || inRange(bite, 0xe0, 0xfc)) { + if (inRange(bite, 0x81, 0x9F) || inRange(bite, 0xE0, + 0xFC)) { shiftjis_lead = bite; return null; } @@ -63287,24 +15112,27 @@ try { if (inRange(code_point, 0x0000, 0x0080)) { return output_byte_stream.emit(code_point); } - if (code_point === 0x00a5) { - return output_byte_stream.emit(0x5c); + if (code_point === 0x00A5) { + return output_byte_stream.emit(0x5C); } - if (code_point === 0x203e) { - return output_byte_stream.emit(0x7e); + if (code_point === 0x203E) { + return output_byte_stream.emit(0x7E); } - if (inRange(code_point, 0xff61, 0xff9f)) { - return output_byte_stream.emit(code_point - 0xff61 + 0xa1); + if (inRange(code_point, 0xFF61, 0xFF9F)) { + return output_byte_stream.emit(code_point - 0xFF61 + + 0xA1); } - var pointer = indexPointerFor(code_point, index('jis0208')); + var pointer = indexPointerFor(code_point, index( + 'jis0208')); if (pointer === null) { return encoderError(code_point); } var lead = div(pointer, 188); - var lead_offset = lead < 0x1f ? 0x81 : 0xc1; + var lead_offset = lead < 0x1F ? 0x81 : 0xC1; var trail = pointer % 188; - var offset = trail < 0x3f ? 0x40 : 0x41; - return output_byte_stream.emit(lead + lead_offset, trail + offset); + var offset = trail < 0x3F ? 0x40 : 0x41; + return output_byte_stream.emit(lead + lead_offset, + trail + offset); }; } @@ -63350,22 +15178,26 @@ try { var pointer = null; euckr_lead = 0x00; - if (inRange(lead, 0x81, 0xc6)) { + if (inRange(lead, 0x81, 0xC6)) { var temp = (26 + 26 + 126) * (lead - 0x81); - if (inRange(bite, 0x41, 0x5a)) { + if (inRange(bite, 0x41, 0x5A)) { pointer = temp + bite - 0x41; - } else if (inRange(bite, 0x61, 0x7a)) { + } else if (inRange(bite, 0x61, 0x7A)) { pointer = temp + 26 + bite - 0x61; - } else if (inRange(bite, 0x81, 0xfe)) { + } else if (inRange(bite, 0x81, 0xFE)) { pointer = temp + 26 + 26 + bite - 0x81; } } - if (inRange(lead, 0xc7, 0xfd) && inRange(bite, 0xa1, 0xfe)) { - pointer = (26 + 26 + 126) * (0xc7 - 0x81) + (lead - 0xc7) * 94 + (bite - 0xa1); + if (inRange(lead, 0xC7, 0xFD) && inRange(bite, 0xA1, + 0xFE)) { + pointer = (26 + 26 + 126) * (0xC7 - 0x81) + ( + lead - 0xC7) * 94 + + (bite - 0xA1); } - var code_point = pointer === null ? null : indexCodePointFor(pointer, index('euc-kr')); + var code_point = (pointer === null) ? null : + indexCodePointFor(pointer, index('euc-kr')); if (pointer === null) { byte_pointer.offset(-1); } @@ -63375,11 +15207,11 @@ try { return code_point; } - if (inRange(bite, 0x00, 0x7f)) { + if (inRange(bite, 0x00, 0x7F)) { return bite; } - if (inRange(bite, 0x81, 0xfd)) { + if (inRange(bite, 0x81, 0xFD)) { euckr_lead = bite; return null; } @@ -63404,23 +15236,25 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0x0000, 0x007f)) { + if (inRange(code_point, 0x0000, 0x007F)) { return output_byte_stream.emit(code_point); } - var pointer = indexPointerFor(code_point, index('euc-kr')); + var pointer = indexPointerFor(code_point, index( + 'euc-kr')); if (pointer === null) { return encoderError(code_point); } var lead, trail; - if (pointer < (26 + 26 + 126) * (0xc7 - 0x81)) { - lead = div(pointer, 26 + 26 + 126) + 0x81; + if (pointer < ((26 + 26 + 126) * (0xC7 - 0x81))) { + lead = div(pointer, (26 + 26 + 126)) + 0x81; trail = pointer % (26 + 26 + 126); - var offset = trail < 26 ? 0x41 : trail < 26 + 26 ? 0x47 : 0x4d; + var offset = trail < 26 ? 0x41 : trail < 26 + 26 ? + 0x47 : 0x4D; return output_byte_stream.emit(lead, trail + offset); } - pointer = pointer - (26 + 26 + 126) * (0xc7 - 0x81); - lead = div(pointer, 94) + 0xc7; - trail = (pointer % 94) + 0xa1; + pointer = pointer - (26 + 26 + 126) * (0xC7 - 0x81); + lead = div(pointer, 94) + 0xC7; + trail = pointer % 94 + 0xA1; return output_byte_stream.emit(lead, trail); }; } @@ -63434,6 +15268,7 @@ try { return new EUCKRDecoder(options); }; + // // 14. Legacy miscellaneous encodings // @@ -63461,10 +15296,12 @@ try { */ this.decode = function (byte_pointer) { var bite = byte_pointer.get(); - if (bite === EOF_byte && utf16_lead_byte === null && utf16_lead_surrogate === null) { + if (bite === EOF_byte && utf16_lead_byte === null && + utf16_lead_surrogate === null) { return EOF_code_point; } - if (bite === EOF_byte && (utf16_lead_byte !== null || utf16_lead_surrogate !== null)) { + if (bite === EOF_byte && (utf16_lead_byte !== null || + utf16_lead_surrogate !== null)) { return decoderError(fatal); } byte_pointer.offset(1); @@ -63482,17 +15319,19 @@ try { if (utf16_lead_surrogate !== null) { var lead_surrogate = utf16_lead_surrogate; utf16_lead_surrogate = null; - if (inRange(code_point, 0xdc00, 0xdfff)) { - return 0x10000 + (lead_surrogate - 0xd800) * 0x400 + (code_point - 0xdc00); + if (inRange(code_point, 0xDC00, 0xDFFF)) { + return 0x10000 + (lead_surrogate - 0xD800) * + 0x400 + + (code_point - 0xDC00); } byte_pointer.offset(-2); return decoderError(fatal); } - if (inRange(code_point, 0xd800, 0xdbff)) { + if (inRange(code_point, 0xD800, 0xDBFF)) { utf16_lead_surrogate = code_point; return null; } - if (inRange(code_point, 0xdc00, 0xdfff)) { + if (inRange(code_point, 0xDC00, 0xDFFF)) { return decoderError(fatal); } return code_point; @@ -63517,7 +15356,7 @@ try { */ function convert_to_bytes(code_unit) { var byte1 = code_unit >> 8; - var byte2 = code_unit & 0x00ff; + var byte2 = code_unit & 0x00FF; if (utf16_be) { return output_byte_stream.emit(byte1, byte2); } @@ -63528,14 +15367,14 @@ try { return EOF_byte; } code_point_pointer.offset(1); - if (inRange(code_point, 0xd800, 0xdfff)) { + if (inRange(code_point, 0xD800, 0xDFFF)) { encoderError(code_point); } - if (code_point <= 0xffff) { + if (code_point <= 0xFFFF) { return convert_to_bytes(code_point); } - var lead = div(code_point - 0x10000, 0x400) + 0xd800; - var trail = ((code_point - 0x10000) % 0x400) + 0xdc00; + var lead = div((code_point - 0x10000), 0x400) + 0xD800; + var trail = ((code_point - 0x10000) % 0x400) + 0xDC00; convert_to_bytes(lead); return convert_to_bytes(trail); }; @@ -63566,9 +15405,10 @@ try { return { TextEncoder: TextEncoder, - TextDecoder: TextDecoder, + TextDecoder: TextDecoder }; -}); + +})); // Copyright (c) 2013 Andris Reinman // @@ -63590,2168 +15430,2097 @@ try { // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -(function (root, factory) { - 'use strict'; - if (typeof define === 'function' && define.amd) { - define(factory); - } else if (typeof exports === 'object') { - module.exports = factory(); - } else { - root['emailjs-mime-types'] = factory(); - } -})(this, function () { - 'use strict'; - - /** - * Returns file extension for a content type string. If no suitable extensions - * are found, 'bin' is used as the default extension - * - * @param {String} mimeType Content type to be checked for - * @return {String} File extension - */ - function detectExtension(mimeType) { - mimeType = (mimeType || '').toString().toLowerCase().replace(/\s/g, ''); - if (!(mimeType in mimetypesList)) { - return 'bin'; +(function(root, factory) { + 'use strict'; + if (typeof define === 'function' && define.amd) { + define(factory); + } else if (typeof exports === 'object') { + module.exports = factory(); + } else { + root['emailjs-mime-types'] = factory(); } +}(this, function() { + 'use strict'; - if (typeof mimetypesList[mimeType] === 'string') { - return mimetypesList[mimeType]; - } + /** + * Returns file extension for a content type string. If no suitable extensions + * are found, 'bin' is used as the default extension + * + * @param {String} mimeType Content type to be checked for + * @return {String} File extension + */ + function detectExtension(mimeType) { + mimeType = (mimeType || '').toString().toLowerCase().replace(/\s/g, ''); + if (!(mimeType in mimetypesList)) { + return 'bin'; + } - var mimeParts = mimeType.split('/'); + if (typeof mimetypesList[mimeType] === 'string') { + return mimetypesList[mimeType]; + } - // search for name match - for (var i = 0, len = mimetypesList[mimeType].length; i < len; i++) { - if (mimeParts[1] === mimetypesList[mimeType][i]) { - return mimetypesList[mimeType][i]; - } + var mimeParts = mimeType.split('/'); + + // search for name match + for (var i = 0, len = mimetypesList[mimeType].length; i < len; i++) { + if (mimeParts[1] === mimetypesList[mimeType][i]) { + return mimetypesList[mimeType][i]; + } + } + + // use the first one + return mimetypesList[mimeType][0]; } - // use the first one - return mimetypesList[mimeType][0]; - } + /** + * Returns content type for a file extension. If no suitable content types + * are found, 'application/octet-stream' is used as the default content type + * + * @param {String} extension Extension to be checked for + * @return {String} File extension + */ + function detectMimeType(extension) { + extension = (extension || '').toString().toLowerCase().replace(/\s/g, '').replace(/^\./g, ''); - /** - * Returns content type for a file extension. If no suitable content types - * are found, 'application/octet-stream' is used as the default content type - * - * @param {String} extension Extension to be checked for - * @return {String} File extension - */ - function detectMimeType(extension) { - extension = (extension || '').toString().toLowerCase().replace(/\s/g, '').replace(/^\./g, ''); + if (!(extension in mimetypesExtensions)) { + return 'application/octet-stream'; + } - if (!(extension in mimetypesExtensions)) { - return 'application/octet-stream'; - } + if (typeof mimetypesExtensions[extension] === 'string') { + return mimetypesExtensions[extension]; + } - if (typeof mimetypesExtensions[extension] === 'string') { - return mimetypesExtensions[extension]; - } + var mimeParts; - var mimeParts; + // search for name match + for (var i = 0, len = mimetypesExtensions[extension].length; i < len; i++) { + mimeParts = mimetypesExtensions[extension][i].split('/'); + if (mimeParts[1] === extension) { + return mimetypesExtensions[extension][i]; + } + } - // search for name match - for (var i = 0, len = mimetypesExtensions[extension].length; i < len; i++) { - mimeParts = mimetypesExtensions[extension][i].split('/'); - if (mimeParts[1] === extension) { - return mimetypesExtensions[extension][i]; - } + // use the first one + return mimetypesExtensions[extension][0]; } - // use the first one - return mimetypesExtensions[extension][0]; - } - - var mimetypesList = { - 'application/acad': 'dwg', - 'application/andrew-inset': '', - 'application/applixware': 'aw', - 'application/arj': 'arj', - 'application/atom+xml': 'xml', - 'application/atomcat+xml': 'atomcat', - 'application/atomsvc+xml': 'atomsvc', - 'application/base64': ['mm', 'mme'], - 'application/binhex': 'hqx', - 'application/binhex4': 'hqx', - 'application/book': ['boo', 'book'], - 'application/ccxml+xml,': 'ccxml', - 'application/cdf': 'cdf', - 'application/cdmi-capability': 'cdmia', - 'application/cdmi-container': 'cdmic', - 'application/cdmi-domain': 'cdmid', - 'application/cdmi-object': 'cdmio', - 'application/cdmi-queue': 'cdmiq', - 'application/clariscad': 'ccad', - 'application/commonground': 'dp', - 'application/cu-seeme': 'cu', - 'application/davmount+xml': 'davmount', - 'application/drafting': 'drw', - 'application/dsptype': 'tsp', - 'application/dssc+der': 'dssc', - 'application/dssc+xml': 'xdssc', - 'application/dxf': 'dxf', - 'application/ecmascript': ['js', 'es'], - 'application/emma+xml': 'emma', - 'application/envoy': 'evy', - 'application/epub+zip': 'epub', - 'application/excel': ['xl', 'xla', 'xlb', 'xlc', 'xld', 'xlk', 'xll', 'xlm', 'xls', 'xlt', 'xlv', 'xlw'], - 'application/exi': 'exi', - 'application/font-tdpfr': 'pfr', - 'application/fractals': 'fif', - 'application/freeloader': 'frl', - 'application/futuresplash': 'spl', - 'application/gnutar': 'tgz', - 'application/groupwise': 'vew', - 'application/hlp': 'hlp', - 'application/hta': 'hta', - 'application/hyperstudio': 'stk', - 'application/i-deas': 'unv', - 'application/iges': ['iges', 'igs'], - 'application/inf': 'inf', - 'application/internet-property-stream': 'acx', - 'application/ipfix': 'ipfix', - 'application/java': 'class', - 'application/java-archive': 'jar', - 'application/java-byte-code': 'class', - 'application/java-serialized-object': 'ser', - 'application/java-vm': 'class', - 'application/javascript': 'js', - 'application/json': 'json', - 'application/lha': 'lha', - 'application/lzx': 'lzx', - 'application/mac-binary': 'bin', - 'application/mac-binhex': 'hqx', - 'application/mac-binhex40': 'hqx', - 'application/mac-compactpro': 'cpt', - 'application/macbinary': 'bin', - 'application/mads+xml': 'mads', - 'application/marc': 'mrc', - 'application/marcxml+xml': 'mrcx', - 'application/mathematica': 'ma', - 'application/mathml+xml': 'mathml', - 'application/mbedlet': 'mbd', - 'application/mbox': 'mbox', - 'application/mcad': 'mcd', - 'application/mediaservercontrol+xml': 'mscml', - 'application/metalink4+xml': 'meta4', - 'application/mets+xml': 'mets', - 'application/mime': 'aps', - 'application/mods+xml': 'mods', - 'application/mp21': 'm21', - 'application/mp4': 'mp4', - 'application/mspowerpoint': ['pot', 'pps', 'ppt', 'ppz'], - 'application/msword': ['doc', 'dot', 'w6w', 'wiz', 'word'], - 'application/mswrite': 'wri', - 'application/mxf': 'mxf', - 'application/netmc': 'mcp', - 'application/octet-stream': ['*'], - 'application/oda': 'oda', - 'application/oebps-package+xml': 'opf', - 'application/ogg': 'ogx', - 'application/olescript': 'axs', - 'application/onenote': 'onetoc', - 'application/patch-ops-error+xml': 'xer', - 'application/pdf': 'pdf', - 'application/pgp-encrypted': '', - 'application/pgp-signature': 'pgp', - 'application/pics-rules': 'prf', - 'application/pkcs-12': 'p12', - 'application/pkcs-crl': 'crl', - 'application/pkcs10': 'p10', - 'application/pkcs7-mime': ['p7c', 'p7m'], - 'application/pkcs7-signature': 'p7s', - 'application/pkcs8': 'p8', - 'application/pkix-attr-cert': 'ac', - 'application/pkix-cert': ['cer', 'crt'], - 'application/pkix-crl': 'crl', - 'application/pkix-pkipath': 'pkipath', - 'application/pkixcmp': 'pki', - 'application/plain': 'text', - 'application/pls+xml': 'pls', - 'application/postscript': ['ai', 'eps', 'ps'], - 'application/powerpoint': 'ppt', - 'application/pro_eng': ['part', 'prt'], - 'application/prs.cww': 'cww', - 'application/pskc+xml': 'pskcxml', - 'application/rdf+xml': 'rdf', - 'application/reginfo+xml': 'rif', - 'application/relax-ng-compact-syntax': 'rnc', - 'application/resource-lists+xml': 'rl', - 'application/resource-lists-diff+xml': 'rld', - 'application/ringing-tones': 'rng', - 'application/rls-services+xml': 'rs', - 'application/rsd+xml': 'rsd', - 'application/rss+xml': 'xml', - 'application/rtf': ['rtf', 'rtx'], - 'application/sbml+xml': 'sbml', - 'application/scvp-cv-request': 'scq', - 'application/scvp-cv-response': 'scs', - 'application/scvp-vp-request': 'spq', - 'application/scvp-vp-response': 'spp', - 'application/sdp': 'sdp', - 'application/sea': 'sea', - 'application/set': 'set', - 'application/set-payment-initiation': 'setpay', - 'application/set-registration-initiation': 'setreg', - 'application/shf+xml': 'shf', - 'application/sla': 'stl', - 'application/smil': ['smi', 'smil'], - 'application/smil+xml': 'smi', - 'application/solids': 'sol', - 'application/sounder': 'sdr', - 'application/sparql-query': 'rq', - 'application/sparql-results+xml': 'srx', - 'application/srgs': 'gram', - 'application/srgs+xml': 'grxml', - 'application/sru+xml': 'sru', - 'application/ssml+xml': 'ssml', - 'application/step': ['step', 'stp'], - 'application/streamingmedia': 'ssm', - 'application/tei+xml': 'tei', - 'application/thraud+xml': 'tfi', - 'application/timestamped-data': 'tsd', - 'application/toolbook': 'tbk', - 'application/vda': 'vda', - 'application/vnd.3gpp.pic-bw-large': 'plb', - 'application/vnd.3gpp.pic-bw-small': 'psb', - 'application/vnd.3gpp.pic-bw-var': 'pvb', - 'application/vnd.3gpp2.tcap': 'tcap', - 'application/vnd.3m.post-it-notes': 'pwn', - 'application/vnd.accpac.simply.aso': 'aso', - 'application/vnd.accpac.simply.imp': 'imp', - 'application/vnd.acucobol': 'acu', - 'application/vnd.acucorp': 'atc', - 'application/vnd.adobe.air-application-installer-package+zip': 'air', - 'application/vnd.adobe.fxp': 'fxp', - 'application/vnd.adobe.xdp+xml': 'xdp', - 'application/vnd.adobe.xfdf': 'xfdf', - 'application/vnd.ahead.space': 'ahead', - 'application/vnd.airzip.filesecure.azf': 'azf', - 'application/vnd.airzip.filesecure.azs': 'azs', - 'application/vnd.amazon.ebook': 'azw', - 'application/vnd.americandynamics.acc': 'acc', - 'application/vnd.amiga.ami': 'ami', - 'application/vnd.android.package-archive': 'apk', - 'application/vnd.anser-web-certificate-issue-initiation': 'cii', - 'application/vnd.anser-web-funds-transfer-initiation': 'fti', - 'application/vnd.antix.game-component': 'atx', - 'application/vnd.apple.installer+xml': 'mpkg', - 'application/vnd.apple.mpegurl': 'm3u8', - 'application/vnd.aristanetworks.swi': 'swi', - 'application/vnd.audiograph': 'aep', - 'application/vnd.blueice.multipass': 'mpm', - 'application/vnd.bmi': 'bmi', - 'application/vnd.businessobjects': 'rep', - 'application/vnd.chemdraw+xml': 'cdxml', - 'application/vnd.chipnuts.karaoke-mmd': 'mmd', - 'application/vnd.cinderella': 'cdy', - 'application/vnd.claymore': 'cla', - 'application/vnd.cloanto.rp9': 'rp9', - 'application/vnd.clonk.c4group': 'c4g', - 'application/vnd.cluetrust.cartomobile-config': 'c11amc', - 'application/vnd.cluetrust.cartomobile-config-pkg': 'c11amz', - 'application/vnd.commonspace': 'csp', - 'application/vnd.contact.cmsg': 'cdbcmsg', - 'application/vnd.cosmocaller': 'cmc', - 'application/vnd.crick.clicker': 'clkx', - 'application/vnd.crick.clicker.keyboard': 'clkk', - 'application/vnd.crick.clicker.palette': 'clkp', - 'application/vnd.crick.clicker.template': 'clkt', - 'application/vnd.crick.clicker.wordbank': 'clkw', - 'application/vnd.criticaltools.wbs+xml': 'wbs', - 'application/vnd.ctc-posml': 'pml', - 'application/vnd.cups-ppd': 'ppd', - 'application/vnd.curl.car': 'car', - 'application/vnd.curl.pcurl': 'pcurl', - 'application/vnd.data-vision.rdz': 'rdz', - 'application/vnd.denovo.fcselayout-link': 'fe_launch', - 'application/vnd.dna': 'dna', - 'application/vnd.dolby.mlp': 'mlp', - 'application/vnd.dpgraph': 'dpg', - 'application/vnd.dreamfactory': 'dfac', - 'application/vnd.dvb.ait': 'ait', - 'application/vnd.dvb.service': 'svc', - 'application/vnd.dynageo': 'geo', - 'application/vnd.ecowin.chart': 'mag', - 'application/vnd.enliven': 'nml', - 'application/vnd.epson.esf': 'esf', - 'application/vnd.epson.msf': 'msf', - 'application/vnd.epson.quickanime': 'qam', - 'application/vnd.epson.salt': 'slt', - 'application/vnd.epson.ssf': 'ssf', - 'application/vnd.eszigno3+xml': 'es3', - 'application/vnd.ezpix-album': 'ez2', - 'application/vnd.ezpix-package': 'ez3', - 'application/vnd.fdf': 'fdf', - 'application/vnd.fdsn.seed': 'seed', - 'application/vnd.flographit': 'gph', - 'application/vnd.fluxtime.clip': 'ftc', - 'application/vnd.framemaker': 'fm', - 'application/vnd.frogans.fnc': 'fnc', - 'application/vnd.frogans.ltf': 'ltf', - 'application/vnd.fsc.weblaunch': 'fsc', - 'application/vnd.fujitsu.oasys': 'oas', - 'application/vnd.fujitsu.oasys2': 'oa2', - 'application/vnd.fujitsu.oasys3': 'oa3', - 'application/vnd.fujitsu.oasysgp': 'fg5', - 'application/vnd.fujitsu.oasysprs': 'bh2', - 'application/vnd.fujixerox.ddd': 'ddd', - 'application/vnd.fujixerox.docuworks': 'xdw', - 'application/vnd.fujixerox.docuworks.binder': 'xbd', - 'application/vnd.fuzzysheet': 'fzs', - 'application/vnd.genomatix.tuxedo': 'txd', - 'application/vnd.geogebra.file': 'ggb', - 'application/vnd.geogebra.tool': 'ggt', - 'application/vnd.geometry-explorer': 'gex', - 'application/vnd.geonext': 'gxt', - 'application/vnd.geoplan': 'g2w', - 'application/vnd.geospace': 'g3w', - 'application/vnd.gmx': 'gmx', - 'application/vnd.google-earth.kml+xml': 'kml', - 'application/vnd.google-earth.kmz': 'kmz', - 'application/vnd.grafeq': 'gqf', - 'application/vnd.groove-account': 'gac', - 'application/vnd.groove-help': 'ghf', - 'application/vnd.groove-identity-message': 'gim', - 'application/vnd.groove-injector': 'grv', - 'application/vnd.groove-tool-message': 'gtm', - 'application/vnd.groove-tool-template': 'tpl', - 'application/vnd.groove-vcard': 'vcg', - 'application/vnd.hal+xml': 'hal', - 'application/vnd.handheld-entertainment+xml': 'zmm', - 'application/vnd.hbci': 'hbci', - 'application/vnd.hhe.lesson-player': 'les', - 'application/vnd.hp-hpgl': ['hgl', 'hpg', 'hpgl'], - 'application/vnd.hp-hpid': 'hpid', - 'application/vnd.hp-hps': 'hps', - 'application/vnd.hp-jlyt': 'jlt', - 'application/vnd.hp-pcl': 'pcl', - 'application/vnd.hp-pclxl': 'pclxl', - 'application/vnd.hydrostatix.sof-data': 'sfd-hdstx', - 'application/vnd.hzn-3d-crossword': 'x3d', - 'application/vnd.ibm.minipay': 'mpy', - 'application/vnd.ibm.modcap': 'afp', - 'application/vnd.ibm.rights-management': 'irm', - 'application/vnd.ibm.secure-container': 'sc', - 'application/vnd.iccprofile': 'icc', - 'application/vnd.igloader': 'igl', - 'application/vnd.immervision-ivp': 'ivp', - 'application/vnd.immervision-ivu': 'ivu', - 'application/vnd.insors.igm': 'igm', - 'application/vnd.intercon.formnet': 'xpw', - 'application/vnd.intergeo': 'i2g', - 'application/vnd.intu.qbo': 'qbo', - 'application/vnd.intu.qfx': 'qfx', - 'application/vnd.ipunplugged.rcprofile': 'rcprofile', - 'application/vnd.irepository.package+xml': 'irp', - 'application/vnd.is-xpr': 'xpr', - 'application/vnd.isac.fcs': 'fcs', - 'application/vnd.jam': 'jam', - 'application/vnd.jcp.javame.midlet-rms': 'rms', - 'application/vnd.jisp': 'jisp', - 'application/vnd.joost.joda-archive': 'joda', - 'application/vnd.kahootz': 'ktz', - 'application/vnd.kde.karbon': 'karbon', - 'application/vnd.kde.kchart': 'chrt', - 'application/vnd.kde.kformula': 'kfo', - 'application/vnd.kde.kivio': 'flw', - 'application/vnd.kde.kontour': 'kon', - 'application/vnd.kde.kpresenter': 'kpr', - 'application/vnd.kde.kspread': 'ksp', - 'application/vnd.kde.kword': 'kwd', - 'application/vnd.kenameaapp': 'htke', - 'application/vnd.kidspiration': 'kia', - 'application/vnd.kinar': 'kne', - 'application/vnd.koan': 'skp', - 'application/vnd.kodak-descriptor': 'sse', - 'application/vnd.las.las+xml': 'lasxml', - 'application/vnd.llamagraphics.life-balance.desktop': 'lbd', - 'application/vnd.llamagraphics.life-balance.exchange+xml': 'lbe', - 'application/vnd.lotus-1-2-3': '123', - 'application/vnd.lotus-approach': 'apr', - 'application/vnd.lotus-freelance': 'pre', - 'application/vnd.lotus-notes': 'nsf', - 'application/vnd.lotus-organizer': 'org', - 'application/vnd.lotus-screencam': 'scm', - 'application/vnd.lotus-wordpro': 'lwp', - 'application/vnd.macports.portpkg': 'portpkg', - 'application/vnd.mcd': 'mcd', - 'application/vnd.medcalcdata': 'mc1', - 'application/vnd.mediastation.cdkey': 'cdkey', - 'application/vnd.mfer': 'mwf', - 'application/vnd.mfmp': 'mfm', - 'application/vnd.micrografx.flo': 'flo', - 'application/vnd.micrografx.igx': 'igx', - 'application/vnd.mif': 'mif', - 'application/vnd.mobius.daf': 'daf', - 'application/vnd.mobius.dis': 'dis', - 'application/vnd.mobius.mbk': 'mbk', - 'application/vnd.mobius.mqy': 'mqy', - 'application/vnd.mobius.msl': 'msl', - 'application/vnd.mobius.plc': 'plc', - 'application/vnd.mobius.txf': 'txf', - 'application/vnd.mophun.application': 'mpn', - 'application/vnd.mophun.certificate': 'mpc', - 'application/vnd.mozilla.xul+xml': 'xul', - 'application/vnd.ms-artgalry': 'cil', - 'application/vnd.ms-cab-compressed': 'cab', - 'application/vnd.ms-excel': ['xla', 'xlc', 'xlm', 'xls', 'xlt', 'xlw', 'xlb', 'xll'], - 'application/vnd.ms-excel.addin.macroenabled.12': 'xlam', - 'application/vnd.ms-excel.sheet.binary.macroenabled.12': 'xlsb', - 'application/vnd.ms-excel.sheet.macroenabled.12': 'xlsm', - 'application/vnd.ms-excel.template.macroenabled.12': 'xltm', - 'application/vnd.ms-fontobject': 'eot', - 'application/vnd.ms-htmlhelp': 'chm', - 'application/vnd.ms-ims': 'ims', - 'application/vnd.ms-lrm': 'lrm', - 'application/vnd.ms-officetheme': 'thmx', - 'application/vnd.ms-outlook': 'msg', - 'application/vnd.ms-pki.certstore': 'sst', - 'application/vnd.ms-pki.pko': 'pko', - 'application/vnd.ms-pki.seccat': 'cat', - 'application/vnd.ms-pki.stl': 'stl', - 'application/vnd.ms-pkicertstore': 'sst', - 'application/vnd.ms-pkiseccat': 'cat', - 'application/vnd.ms-pkistl': 'stl', - 'application/vnd.ms-powerpoint': ['pot', 'pps', 'ppt', 'ppa', 'pwz'], - 'application/vnd.ms-powerpoint.addin.macroenabled.12': 'ppam', - 'application/vnd.ms-powerpoint.presentation.macroenabled.12': 'pptm', - 'application/vnd.ms-powerpoint.slide.macroenabled.12': 'sldm', - 'application/vnd.ms-powerpoint.slideshow.macroenabled.12': 'ppsm', - 'application/vnd.ms-powerpoint.template.macroenabled.12': 'potm', - 'application/vnd.ms-project': 'mpp', - 'application/vnd.ms-word.document.macroenabled.12': 'docm', - 'application/vnd.ms-word.template.macroenabled.12': 'dotm', - 'application/vnd.ms-works': ['wcm', 'wdb', 'wks', 'wps'], - 'application/vnd.ms-wpl': 'wpl', - 'application/vnd.ms-xpsdocument': 'xps', - 'application/vnd.mseq': 'mseq', - 'application/vnd.musician': 'mus', - 'application/vnd.muvee.style': 'msty', - 'application/vnd.neurolanguage.nlu': 'nlu', - 'application/vnd.noblenet-directory': 'nnd', - 'application/vnd.noblenet-sealer': 'nns', - 'application/vnd.noblenet-web': 'nnw', - 'application/vnd.nokia.configuration-message': 'ncm', - 'application/vnd.nokia.n-gage.data': 'ngdat', - 'application/vnd.nokia.n-gage.symbian.install': 'n-gage', - 'application/vnd.nokia.radio-preset': 'rpst', - 'application/vnd.nokia.radio-presets': 'rpss', - 'application/vnd.nokia.ringing-tone': 'rng', - 'application/vnd.novadigm.edm': 'edm', - 'application/vnd.novadigm.edx': 'edx', - 'application/vnd.novadigm.ext': 'ext', - 'application/vnd.oasis.opendocument.chart': 'odc', - 'application/vnd.oasis.opendocument.chart-template': 'otc', - 'application/vnd.oasis.opendocument.database': 'odb', - 'application/vnd.oasis.opendocument.formula': 'odf', - 'application/vnd.oasis.opendocument.formula-template': 'odft', - 'application/vnd.oasis.opendocument.graphics': 'odg', - 'application/vnd.oasis.opendocument.graphics-template': 'otg', - 'application/vnd.oasis.opendocument.image': 'odi', - 'application/vnd.oasis.opendocument.image-template': 'oti', - 'application/vnd.oasis.opendocument.presentation': 'odp', - 'application/vnd.oasis.opendocument.presentation-template': 'otp', - 'application/vnd.oasis.opendocument.spreadsheet': 'ods', - 'application/vnd.oasis.opendocument.spreadsheet-template': 'ots', - 'application/vnd.oasis.opendocument.text': 'odt', - 'application/vnd.oasis.opendocument.text-master': 'odm', - 'application/vnd.oasis.opendocument.text-template': 'ott', - 'application/vnd.oasis.opendocument.text-web': 'oth', - 'application/vnd.olpc-sugar': 'xo', - 'application/vnd.oma.dd2+xml': 'dd2', - 'application/vnd.openofficeorg.extension': 'oxt', - 'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'pptx', - 'application/vnd.openxmlformats-officedocument.presentationml.slide': 'sldx', - 'application/vnd.openxmlformats-officedocument.presentationml.slideshow': 'ppsx', - 'application/vnd.openxmlformats-officedocument.presentationml.template': 'potx', - 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xlsx', - 'application/vnd.openxmlformats-officedocument.spreadsheetml.template': 'xltx', - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'docx', - 'application/vnd.openxmlformats-officedocument.wordprocessingml.template': 'dotx', - 'application/vnd.osgeo.mapguide.package': 'mgp', - 'application/vnd.osgi.dp': 'dp', - 'application/vnd.palm': 'pdb', - 'application/vnd.pawaafile': 'paw', - 'application/vnd.pg.format': 'str', - 'application/vnd.pg.osasli': 'ei6', - 'application/vnd.picsel': 'efif', - 'application/vnd.pmi.widget': 'wg', - 'application/vnd.pocketlearn': 'plf', - 'application/vnd.powerbuilder6': 'pbd', - 'application/vnd.previewsystems.box': 'box', - 'application/vnd.proteus.magazine': 'mgz', - 'application/vnd.publishare-delta-tree': 'qps', - 'application/vnd.pvi.ptid1': 'ptid', - 'application/vnd.quark.quarkxpress': 'qxd', - 'application/vnd.realvnc.bed': 'bed', - 'application/vnd.recordare.musicxml': 'mxl', - 'application/vnd.recordare.musicxml+xml': 'musicxml', - 'application/vnd.rig.cryptonote': 'cryptonote', - 'application/vnd.rim.cod': 'cod', - 'application/vnd.rn-realmedia': 'rm', - 'application/vnd.rn-realplayer': 'rnx', - 'application/vnd.route66.link66+xml': 'link66', - 'application/vnd.sailingtracker.track': 'st', - 'application/vnd.seemail': 'see', - 'application/vnd.sema': 'sema', - 'application/vnd.semd': 'semd', - 'application/vnd.semf': 'semf', - 'application/vnd.shana.informed.formdata': 'ifm', - 'application/vnd.shana.informed.formtemplate': 'itp', - 'application/vnd.shana.informed.interchange': 'iif', - 'application/vnd.shana.informed.package': 'ipk', - 'application/vnd.simtech-mindmapper': 'twd', - 'application/vnd.smaf': 'mmf', - 'application/vnd.smart.teacher': 'teacher', - 'application/vnd.solent.sdkm+xml': 'sdkm', - 'application/vnd.spotfire.dxp': 'dxp', - 'application/vnd.spotfire.sfs': 'sfs', - 'application/vnd.stardivision.calc': 'sdc', - 'application/vnd.stardivision.draw': 'sda', - 'application/vnd.stardivision.impress': 'sdd', - 'application/vnd.stardivision.math': 'smf', - 'application/vnd.stardivision.writer': 'sdw', - 'application/vnd.stardivision.writer-global': 'sgl', - 'application/vnd.stepmania.stepchart': 'sm', - 'application/vnd.sun.xml.calc': 'sxc', - 'application/vnd.sun.xml.calc.template': 'stc', - 'application/vnd.sun.xml.draw': 'sxd', - 'application/vnd.sun.xml.draw.template': 'std', - 'application/vnd.sun.xml.impress': 'sxi', - 'application/vnd.sun.xml.impress.template': 'sti', - 'application/vnd.sun.xml.math': 'sxm', - 'application/vnd.sun.xml.writer': 'sxw', - 'application/vnd.sun.xml.writer.global': 'sxg', - 'application/vnd.sun.xml.writer.template': 'stw', - 'application/vnd.sus-calendar': 'sus', - 'application/vnd.svd': 'svd', - 'application/vnd.symbian.install': 'sis', - 'application/vnd.syncml+xml': 'xsm', - 'application/vnd.syncml.dm+wbxml': 'bdm', - 'application/vnd.syncml.dm+xml': 'xdm', - 'application/vnd.tao.intent-module-archive': 'tao', - 'application/vnd.tmobile-livetv': 'tmo', - 'application/vnd.trid.tpt': 'tpt', - 'application/vnd.triscape.mxs': 'mxs', - 'application/vnd.trueapp': 'tra', - 'application/vnd.ufdl': 'ufd', - 'application/vnd.uiq.theme': 'utz', - 'application/vnd.umajin': 'umj', - 'application/vnd.unity': 'unityweb', - 'application/vnd.uoml+xml': 'uoml', - 'application/vnd.vcx': 'vcx', - 'application/vnd.visio': 'vsd', - 'application/vnd.visionary': 'vis', - 'application/vnd.vsf': 'vsf', - 'application/vnd.wap.wbxml': 'wbxml', - 'application/vnd.wap.wmlc': 'wmlc', - 'application/vnd.wap.wmlscriptc': 'wmlsc', - 'application/vnd.webturbo': 'wtb', - 'application/vnd.wolfram.player': 'nbp', - 'application/vnd.wordperfect': 'wpd', - 'application/vnd.wqd': 'wqd', - 'application/vnd.wt.stf': 'stf', - 'application/vnd.xara': ['web', 'xar'], - 'application/vnd.xfdl': 'xfdl', - 'application/vnd.yamaha.hv-dic': 'hvd', - 'application/vnd.yamaha.hv-script': 'hvs', - 'application/vnd.yamaha.hv-voice': 'hvp', - 'application/vnd.yamaha.openscoreformat': 'osf', - 'application/vnd.yamaha.openscoreformat.osfpvg+xml': 'osfpvg', - 'application/vnd.yamaha.smaf-audio': 'saf', - 'application/vnd.yamaha.smaf-phrase': 'spf', - 'application/vnd.yellowriver-custom-menu': 'cmp', - 'application/vnd.zul': 'zir', - 'application/vnd.zzazz.deck+xml': 'zaz', - 'application/vocaltec-media-desc': 'vmd', - 'application/vocaltec-media-file': 'vmf', - 'application/voicexml+xml': 'vxml', - 'application/widget': 'wgt', - 'application/winhlp': 'hlp', - 'application/wordperfect': ['wp', 'wp5', 'wp6', 'wpd'], - 'application/wordperfect6.0': ['w60', 'wp5'], - 'application/wordperfect6.1': 'w61', - 'application/wsdl+xml': 'wsdl', - 'application/wspolicy+xml': 'wspolicy', - 'application/x-123': 'wk1', - 'application/x-7z-compressed': '7z', - 'application/x-abiword': 'abw', - 'application/x-ace-compressed': 'ace', - 'application/x-aim': 'aim', - 'application/x-authorware-bin': 'aab', - 'application/x-authorware-map': 'aam', - 'application/x-authorware-seg': 'aas', - 'application/x-bcpio': 'bcpio', - 'application/x-binary': 'bin', - 'application/x-binhex40': 'hqx', - 'application/x-bittorrent': 'torrent', - 'application/x-bsh': ['bsh', 'sh', 'shar'], - 'application/x-bytecode.elisp': 'elc', - 'applicaiton/x-bytecode.python': 'pyc', - 'application/x-bzip': 'bz', - 'application/x-bzip2': ['boz', 'bz2'], - 'application/x-cdf': 'cdf', - 'application/x-cdlink': 'vcd', - 'application/x-chat': ['cha', 'chat'], - 'application/x-chess-pgn': 'pgn', - 'application/x-cmu-raster': 'ras', - 'application/x-cocoa': 'cco', - 'application/x-compactpro': 'cpt', - 'application/x-compress': 'z', - 'application/x-compressed': ['tgz', 'gz', 'z', 'zip'], - 'application/x-conference': 'nsc', - 'application/x-cpio': 'cpio', - 'application/x-cpt': 'cpt', - 'application/x-csh': 'csh', - 'application/x-debian-package': 'deb', - 'application/x-deepv': 'deepv', - 'application/x-director': ['dcr', 'dir', 'dxr'], - 'application/x-doom': 'wad', - 'application/x-dtbncx+xml': 'ncx', - 'application/x-dtbook+xml': 'dtb', - 'application/x-dtbresource+xml': 'res', - 'application/x-dvi': 'dvi', - 'application/x-elc': 'elc', - 'application/x-envoy': ['env', 'evy'], - 'application/x-esrehber': 'es', - 'application/x-excel': ['xla', 'xlb', 'xlc', 'xld', 'xlk', 'xll', 'xlm', 'xls', 'xlt', 'xlv', 'xlw'], - 'application/x-font-bdf': 'bdf', - 'application/x-font-ghostscript': 'gsf', - 'application/x-font-linux-psf': 'psf', - 'application/x-font-otf': 'otf', - 'application/x-font-pcf': 'pcf', - 'application/x-font-snf': 'snf', - 'application/x-font-ttf': 'ttf', - 'application/x-font-type1': 'pfa', - 'application/x-font-woff': 'woff', - 'application/x-frame': 'mif', - 'application/x-freelance': 'pre', - 'application/x-futuresplash': 'spl', - 'application/x-gnumeric': 'gnumeric', - 'application/x-gsp': 'gsp', - 'application/x-gss': 'gss', - 'application/x-gtar': 'gtar', - 'application/x-gzip': ['gz', 'gzip'], - 'application/x-hdf': 'hdf', - 'application/x-helpfile': ['help', 'hlp'], - 'application/x-httpd-imap': 'imap', - 'application/x-ima': 'ima', - 'application/x-internet-signup': ['ins', 'isp'], - 'application/x-internett-signup': 'ins', - 'application/x-inventor': 'iv', - 'application/x-ip2': 'ip', - 'application/x-iphone': 'iii', - 'application/x-java-class': 'class', - 'application/x-java-commerce': 'jcm', - 'application/x-java-jnlp-file': 'jnlp', - 'application/x-javascript': 'js', - 'application/x-koan': ['skd', 'skm', 'skp', 'skt'], - 'application/x-ksh': 'ksh', - 'application/x-latex': ['latex', 'ltx'], - 'application/x-lha': 'lha', - 'application/x-lisp': 'lsp', - 'application/x-livescreen': 'ivy', - 'application/x-lotus': 'wq1', - 'application/x-lotusscreencam': 'scm', - 'application/x-lzh': 'lzh', - 'application/x-lzx': 'lzx', - 'application/x-mac-binhex40': 'hqx', - 'application/x-macbinary': 'bin', - 'application/x-magic-cap-package-1.0': 'mc$', - 'application/x-mathcad': 'mcd', - 'application/x-meme': 'mm', - 'application/x-midi': ['mid', 'midi'], - 'application/x-mif': 'mif', - 'application/x-mix-transfer': 'nix', - 'application/x-mobipocket-ebook': 'prc', - 'application/x-mplayer2': 'asx', - 'application/x-ms-application': 'application', - 'application/x-ms-wmd': 'wmd', - 'application/x-ms-wmz': 'wmz', - 'application/x-ms-xbap': 'xbap', - 'application/x-msaccess': 'mdb', - 'application/x-msbinder': 'obd', - 'application/x-mscardfile': 'crd', - 'application/x-msclip': 'clp', - 'application/x-msdownload': ['dll', 'exe'], - 'application/x-msexcel': ['xla', 'xls', 'xlw'], - 'application/x-msmediaview': ['m13', 'm14', 'mvb'], - 'application/x-msmetafile': 'wmf', - 'application/x-msmoney': 'mny', - 'application/x-mspowerpoint': 'ppt', - 'application/x-mspublisher': 'pub', - 'application/x-msschedule': 'scd', - 'application/x-msterminal': 'trm', - 'application/x-mswrite': 'wri', - 'application/x-navi-animation': 'ani', - 'application/x-navidoc': 'nvd', - 'application/x-navimap': 'map', - 'application/x-navistyle': 'stl', - 'application/x-netcdf': ['cdf', 'nc'], - 'application/x-newton-compatible-pkg': 'pkg', - 'application/x-nokia-9000-communicator-add-on-software': 'aos', - 'application/x-omc': 'omc', - 'application/x-omcdatamaker': 'omcd', - 'application/x-omcregerator': 'omcr', - 'application/x-pagemaker': ['pm4', 'pm5'], - 'application/x-pcl': 'pcl', - 'application/x-perfmon': ['pma', 'pmc', 'pml', 'pmr', 'pmw'], - 'application/x-pixclscript': 'plx', - 'application/x-pkcs10': 'p10', - 'application/x-pkcs12': ['p12', 'pfx'], - 'application/x-pkcs7-certificates': ['p7b', 'spc'], - 'application/x-pkcs7-certreqresp': 'p7r', - 'application/x-pkcs7-mime': ['p7c', 'p7m'], - 'application/x-pkcs7-signature': ['p7s', 'p7a'], - 'application/x-pointplus': 'css', - 'application/x-portable-anymap': 'pnm', - 'application/x-project': ['mpc', 'mpt', 'mpv', 'mpx'], - 'application/x-qpro': 'wb1', - 'application/x-rar-compressed': 'rar', - 'application/x-rtf': 'rtf', - 'application/x-sdp': 'sdp', - 'application/x-sea': 'sea', - 'application/x-seelogo': 'sl', - 'application/x-sh': 'sh', - 'application/x-shar': ['shar', 'sh'], - 'application/x-shockwave-flash': 'swf', - 'application/x-silverlight-app': 'xap', - 'application/x-sit': 'sit', - 'application/x-sprite': ['spr', 'sprite'], - 'application/x-stuffit': 'sit', - 'application/x-stuffitx': 'sitx', - 'application/x-sv4cpio': 'sv4cpio', - 'application/x-sv4crc': 'sv4crc', - 'application/x-tar': 'tar', - 'application/x-tbook': ['sbk', 'tbk'], - 'application/x-tcl': 'tcl', - 'application/x-tex': 'tex', - 'application/x-tex-tfm': 'tfm', - 'application/x-texinfo': ['texi', 'texinfo'], - 'application/x-troff': ['roff', 't', 'tr'], - 'application/x-troff-man': 'man', - 'application/x-troff-me': 'me', - 'application/x-troff-ms': 'ms', - 'application/x-troff-msvideo': 'avi', - 'application/x-ustar': 'ustar', - 'application/x-visio': ['vsd', 'vst', 'vsw'], - 'application/x-vnd.audioexplosion.mzz': 'mzz', - 'application/x-vnd.ls-xpix': 'xpix', - 'application/x-vrml': 'vrml', - 'application/x-wais-source': ['src', 'wsrc'], - 'application/x-winhelp': 'hlp', - 'application/x-wintalk': 'wtk', - 'application/x-world': ['svr', 'wrl'], - 'application/x-wpwin': 'wpd', - 'application/x-wri': 'wri', - 'application/x-x509-ca-cert': ['cer', 'crt', 'der'], - 'application/x-x509-user-cert': 'crt', - 'application/x-xfig': 'fig', - 'application/x-xpinstall': 'xpi', - 'application/x-zip-compressed': 'zip', - 'application/xcap-diff+xml': 'xdf', - 'application/xenc+xml': 'xenc', - 'application/xhtml+xml': 'xhtml', - 'application/xml': 'xml', - 'application/xml-dtd': 'dtd', - 'application/xop+xml': 'xop', - 'application/xslt+xml': 'xslt', - 'application/xspf+xml': 'xspf', - 'application/xv+xml': 'mxml', - 'application/yang': 'yang', - 'application/yin+xml': 'yin', - 'application/ynd.ms-pkipko': 'pko', - 'application/zip': 'zip', - 'audio/adpcm': 'adp', - 'audio/aiff': ['aif', 'aifc', 'aiff'], - 'audio/basic': ['au', 'snd'], - 'audio/it': 'it', - 'audio/make': ['funk', 'my', 'pfunk'], - 'audio/make.my.funk': 'pfunk', - 'audio/mid': ['mid', 'rmi'], - 'audio/midi': ['kar', 'mid', 'midi'], - 'audio/mod': 'mod', - 'audio/mp4': 'mp4a', - 'audio/mpeg': ['mp3', 'm2a', 'mp2', 'mpa', 'mpg', 'mpga'], - 'audio/mpeg3': 'mp3', - 'audio/nspaudio': ['la', 'lma'], - 'audio/ogg': 'oga', - 'audio/s3m': 's3m', - 'audio/tsp-audio': 'tsi', - 'audio/tsplayer': 'tsp', - 'audio/vnd.dece.audio': 'uva', - 'audio/vnd.digital-winds': 'eol', - 'audio/vnd.dra': 'dra', - 'audio/vnd.dts': 'dts', - 'audio/vnd.dts.hd': 'dtshd', - 'audio/vnd.lucent.voice': 'lvp', - 'audio/vnd.ms-playready.media.pya': 'pya', - 'audio/vnd.nuera.ecelp4800': 'ecelp4800', - 'audio/vnd.nuera.ecelp7470': 'ecelp7470', - 'audio/vnd.nuera.ecelp9600': 'ecelp9600', - 'audio/vnd.qcelp': 'qcp', - 'audio/vnd.rip': 'rip', - 'audio/voc': 'voc', - 'audio/voxware': 'vox', - 'audio/wav': 'wav', - 'audio/webm': 'weba', - 'audio/x-aac': 'aac', - 'audio/x-adpcm': 'snd', - 'audio/x-aiff': ['aif', 'aifc', 'aiff'], - 'audio/x-au': 'au', - 'audio/x-gsm': ['gsd', 'gsm'], - 'audio/x-jam': 'jam', - 'audio/x-liveaudio': 'lam', - 'audio/x-mid': ['mid', 'midi'], - 'audio/x-midi': ['mid', 'midi'], - 'audio/x-mod': 'mod', - 'audio/x-mpeg': 'mp2', - 'audio/x-mpeg-3': 'mp3', - 'audio/x-mpegurl': 'm3u', - 'audio/x-mpequrl': 'm3u', - 'audio/x-ms-wax': 'wax', - 'audio/x-ms-wma': 'wma', - 'audio/x-nspaudio': ['la', 'lma'], - 'audio/x-pn-realaudio': ['ra', 'ram', 'rm', 'rmm', 'rmp'], - 'audio/x-pn-realaudio-plugin': ['ra', 'rmp', 'rpm'], - 'audio/x-psid': 'sid', - 'audio/x-realaudio': 'ra', - 'audio/x-twinvq': 'vqf', - 'audio/x-twinvq-plugin': ['vqe', 'vql'], - 'audio/x-vnd.audioexplosion.mjuicemediafile': 'mjf', - 'audio/x-voc': 'voc', - 'audio/x-wav': 'wav', - 'audio/xm': 'xm', - 'chemical/x-cdx': 'cdx', - 'chemical/x-cif': 'cif', - 'chemical/x-cmdf': 'cmdf', - 'chemical/x-cml': 'cml', - 'chemical/x-csml': 'csml', - 'chemical/x-pdb': ['pdb', 'xyz'], - 'chemical/x-xyz': 'xyz', - 'drawing/x-dwf': 'dwf', - 'i-world/i-vrml': 'ivr', - 'image/bmp': ['bmp', 'bm'], - 'image/cgm': 'cgm', - 'image/cis-cod': 'cod', - 'image/cmu-raster': ['ras', 'rast'], - 'image/fif': 'fif', - 'image/florian': ['flo', 'turbot'], - 'image/g3fax': 'g3', - 'image/gif': 'gif', - 'image/ief': ['ief', 'iefs'], - 'image/jpeg': ['jpe', 'jpeg', 'jpg', 'jfif', 'jfif-tbnl'], - 'image/jutvision': 'jut', - 'image/ktx': 'ktx', - 'image/naplps': ['nap', 'naplps'], - 'image/pict': ['pic', 'pict'], - 'image/pipeg': 'jfif', - 'image/pjpeg': ['jfif', 'jpe', 'jpeg', 'jpg'], - 'image/png': ['png', 'x-png'], - 'image/prs.btif': 'btif', - 'image/svg+xml': 'svg', - 'image/tiff': ['tif', 'tiff'], - 'image/vasa': 'mcf', - 'image/vnd.adobe.photoshop': 'psd', - 'image/vnd.dece.graphic': 'uvi', - 'image/vnd.djvu': 'djvu', - 'image/vnd.dvb.subtitle': 'sub', - 'image/vnd.dwg': ['dwg', 'dxf', 'svf'], - 'image/vnd.dxf': 'dxf', - 'image/vnd.fastbidsheet': 'fbs', - 'image/vnd.fpx': 'fpx', - 'image/vnd.fst': 'fst', - 'image/vnd.fujixerox.edmics-mmr': 'mmr', - 'image/vnd.fujixerox.edmics-rlc': 'rlc', - 'image/vnd.ms-modi': 'mdi', - 'image/vnd.net-fpx': ['fpx', 'npx'], - 'image/vnd.rn-realflash': 'rf', - 'image/vnd.rn-realpix': 'rp', - 'image/vnd.wap.wbmp': 'wbmp', - 'image/vnd.xiff': 'xif', - 'image/webp': 'webp', - 'image/x-cmu-raster': 'ras', - 'image/x-cmx': 'cmx', - 'image/x-dwg': ['dwg', 'dxf', 'svf'], - 'image/x-freehand': 'fh', - 'image/x-icon': 'ico', - 'image/x-jg': 'art', - 'image/x-jps': 'jps', - 'image/x-niff': ['nif', 'niff'], - 'image/x-pcx': 'pcx', - 'image/x-pict': ['pct', 'pic'], - 'image/x-portable-anymap': 'pnm', - 'image/x-portable-bitmap': 'pbm', - 'image/x-portable-graymap': 'pgm', - 'image/x-portable-greymap': 'pgm', - 'image/x-portable-pixmap': 'ppm', - 'image/x-quicktime': ['qif', 'qti', 'qtif'], - 'image/x-rgb': 'rgb', - 'image/x-tiff': ['tif', 'tiff'], - 'image/x-windows-bmp': 'bmp', - 'image/x-xbitmap': 'xbm', - 'image/x-xbm': 'xbm', - 'image/x-xpixmap': ['xpm', 'pm'], - 'image/x-xwd': 'xwd', - 'image/x-xwindowdump': 'xwd', - 'image/xbm': 'xbm', - 'image/xpm': 'xpm', - 'message/rfc822': ['mht', 'mhtml', 'nws', 'mime', 'eml'], - 'model/iges': ['iges', 'igs'], - 'model/mesh': 'msh', - 'model/vnd.collada+xml': 'dae', - 'model/vnd.dwf': 'dwf', - 'model/vnd.gdl': 'gdl', - 'model/vnd.gtw': 'gtw', - 'model/vnd.mts': 'mts', - 'model/vnd.vtu': 'vtu', - 'model/vrml': ['vrml', 'wrl', 'wrz'], - 'model/x-pov': 'pov', - 'multipart/x-gzip': 'gzip', - 'multipart/x-ustar': 'ustar', - 'multipart/x-zip': 'zip', - 'music/crescendo': ['mid', 'midi'], - 'music/x-karaoke': 'kar', - 'paleovu/x-pv': 'pvu', - 'text/asp': 'asp', - 'text/calendar': 'ics', - 'text/css': 'css', - 'text/csv': 'csv', - 'text/ecmascript': 'js', - 'text/h323': '323', - 'text/html': ['htm', 'html', 'stm', 'acgi', 'htmls', 'htx', 'shtml'], - 'text/iuls': 'uls', - 'text/javascript': 'js', - 'text/mcf': 'mcf', - 'text/n3': 'n3', - 'text/pascal': 'pas', - 'text/plain': [ - 'bas', - 'c', - 'h', - 'txt', - 'c++', - 'cc', - 'com', - 'conf', - 'cxx', - 'def', - 'f', - 'f90', - 'for', - 'g', - 'hh', - 'idc', - 'jav', - 'java', - 'list', - 'log', - 'lst', - 'm', - 'mar', - 'pl', - 'sdml', - 'text', - ], - 'text/plain-bas': 'par', - 'text/prs.lines.tag': 'dsc', - 'text/richtext': ['rtx', 'rt', 'rtf'], - 'text/scriplet': 'wsc', - 'text/scriptlet': 'sct', - 'text/sgml': ['sgm', 'sgml'], - 'text/tab-separated-values': 'tsv', - 'text/troff': 't', - 'text/turtle': 'ttl', - 'text/uri-list': ['uni', 'unis', 'uri', 'uris'], - 'text/vnd.abc': 'abc', - 'text/vnd.curl': 'curl', - 'text/vnd.curl.dcurl': 'dcurl', - 'text/vnd.curl.mcurl': 'mcurl', - 'text/vnd.curl.scurl': 'scurl', - 'text/vnd.fly': 'fly', - 'text/vnd.fmi.flexstor': 'flx', - 'text/vnd.graphviz': 'gv', - 'text/vnd.in3d.3dml': '3dml', - 'text/vnd.in3d.spot': 'spot', - 'text/vnd.rn-realtext': 'rt', - 'text/vnd.sun.j2me.app-descriptor': 'jad', - 'text/vnd.wap.wml': 'wml', - 'text/vnd.wap.wmlscript': 'wmls', - 'text/webviewhtml': 'htt', - 'text/x-asm': ['asm', 's'], - 'text/x-audiosoft-intra': 'aip', - 'text/x-c': ['c', 'cc', 'cpp'], - 'text/x-component': 'htc', - 'text/x-fortran': ['f', 'f77', 'f90', 'for'], - 'text/x-h': ['h', 'hh'], - 'text/x-java-source': ['jav', 'java'], - 'text/x-java-source,java': 'java', - 'text/x-la-asf': 'lsx', - 'text/x-m': 'm', - 'text/x-pascal': 'p', - 'text/x-script': 'hlb', - 'text/x-script.csh': 'csh', - 'text/x-script.elisp': 'el', - 'text/x-script.guile': 'scm', - 'text/x-script.ksh': 'ksh', - 'text/x-script.lisp': 'lsp', - 'text/x-script.perl': 'pl', - 'text/x-script.perl-module': 'pm', - 'text/x-script.phyton': 'py', - 'text/x-script.rexx': 'rexx', - 'text/x-script.scheme': 'scm', - 'text/x-script.sh': 'sh', - 'text/x-script.tcl': 'tcl', - 'text/x-script.tcsh': 'tcsh', - 'text/x-script.zsh': 'zsh', - 'text/x-server-parsed-html': ['shtml', 'ssi'], - 'text/x-setext': 'etx', - 'text/x-sgml': ['sgm', 'sgml'], - 'text/x-speech': ['spc', 'talk'], - 'text/x-uil': 'uil', - 'text/x-uuencode': ['uu', 'uue'], - 'text/x-vcalendar': 'vcs', - 'text/x-vcard': 'vcf', - 'text/xml': 'xml', - 'video/3gpp': '3gp', - 'video/3gpp2': '3g2', - 'video/animaflex': 'afl', - 'video/avi': 'avi', - 'video/avs-video': 'avs', - 'video/dl': 'dl', - 'video/fli': 'fli', - 'video/gl': 'gl', - 'video/h261': 'h261', - 'video/h263': 'h263', - 'video/h264': 'h264', - 'video/jpeg': 'jpgv', - 'video/jpm': 'jpm', - 'video/mj2': 'mj2', - 'video/mp4': 'mp4', - 'video/mpeg': ['mp2', 'mpa', 'mpe', 'mpeg', 'mpg', 'mpv2', 'm1v', 'm2v', 'mp3'], - 'video/msvideo': 'avi', - 'video/ogg': 'ogv', - 'video/quicktime': ['mov', 'qt', 'moov'], - 'video/vdo': 'vdo', - 'video/vivo': ['viv', 'vivo'], - 'video/vnd.dece.hd': 'uvh', - 'video/vnd.dece.mobile': 'uvm', - 'video/vnd.dece.pd': 'uvp', - 'video/vnd.dece.sd': 'uvs', - 'video/vnd.dece.video': 'uvv', - 'video/vnd.fvt': 'fvt', - 'video/vnd.mpegurl': 'mxu', - 'video/vnd.ms-playready.media.pyv': 'pyv', - 'video/vnd.rn-realvideo': 'rv', - 'video/vnd.uvvu.mp4': 'uvu', - 'video/vnd.vivo': ['viv', 'vivo'], - 'video/vosaic': 'vos', - 'video/webm': 'webm', - 'video/x-amt-demorun': 'xdr', - 'video/x-amt-showrun': 'xsr', - 'video/x-atomic3d-feature': 'fmf', - 'video/x-dl': 'dl', - 'video/x-dv': ['dif', 'dv'], - 'video/x-f4v': 'f4v', - 'video/x-fli': 'fli', - 'video/x-flv': 'flv', - 'video/x-gl': 'gl', - 'video/x-isvideo': 'isu', - 'video/x-la-asf': ['lsf', 'lsx'], - 'video/x-m4v': 'm4v', - 'video/x-motion-jpeg': 'mjpg', - 'video/x-mpeg': ['mp2', 'mp3'], - 'video/x-mpeq2a': 'mp2', - 'video/x-ms-asf': ['asf', 'asr', 'asx'], - 'video/x-ms-asf-plugin': 'asx', - 'video/x-ms-wm': 'wm', - 'video/x-ms-wmv': 'wmv', - 'video/x-ms-wmx': 'wmx', - 'video/x-ms-wvx': 'wvx', - 'video/x-msvideo': 'avi', - 'video/x-qtc': 'qtc', - 'video/x-scm': 'scm', - 'video/x-sgi-movie': ['movie', 'mv'], - 'windows/metafile': 'wmf', - 'www/mime': 'mime', - 'x-conference/x-cooltalk': 'ice', - 'x-music/x-midi': ['mid', 'midi'], - 'x-world/x-3dmf': ['3dm', '3dmf', 'qd3', 'qd3d'], - 'x-world/x-svr': 'svr', - 'x-world/x-vrml': ['flr', 'vrml', 'wrl', 'wrz', 'xaf', 'xof'], - 'x-world/x-vrt': 'vrt', - 'xgl/drawing': 'xgz', - 'xgl/movie': 'xmz', - }; + var mimetypesList = { + 'application/acad': 'dwg', + 'application/andrew-inset': '', + 'application/applixware': 'aw', + 'application/arj': 'arj', + 'application/atom+xml': 'xml', + 'application/atomcat+xml': 'atomcat', + 'application/atomsvc+xml': 'atomsvc', + 'application/base64': ['mm', 'mme'], + 'application/binhex': 'hqx', + 'application/binhex4': 'hqx', + 'application/book': ['boo', 'book'], + 'application/ccxml+xml,': 'ccxml', + 'application/cdf': 'cdf', + 'application/cdmi-capability': 'cdmia', + 'application/cdmi-container': 'cdmic', + 'application/cdmi-domain': 'cdmid', + 'application/cdmi-object': 'cdmio', + 'application/cdmi-queue': 'cdmiq', + 'application/clariscad': 'ccad', + 'application/commonground': 'dp', + 'application/cu-seeme': 'cu', + 'application/davmount+xml': 'davmount', + 'application/drafting': 'drw', + 'application/dsptype': 'tsp', + 'application/dssc+der': 'dssc', + 'application/dssc+xml': 'xdssc', + 'application/dxf': 'dxf', + 'application/ecmascript': ['js', 'es'], + 'application/emma+xml': 'emma', + 'application/envoy': 'evy', + 'application/epub+zip': 'epub', + 'application/excel': ['xl', 'xla', 'xlb', 'xlc', 'xld', 'xlk', 'xll', 'xlm', 'xls', 'xlt', 'xlv', 'xlw'], + 'application/exi': 'exi', + 'application/font-tdpfr': 'pfr', + 'application/fractals': 'fif', + 'application/freeloader': 'frl', + 'application/futuresplash': 'spl', + 'application/gnutar': 'tgz', + 'application/groupwise': 'vew', + 'application/hlp': 'hlp', + 'application/hta': 'hta', + 'application/hyperstudio': 'stk', + 'application/i-deas': 'unv', + 'application/iges': ['iges', 'igs'], + 'application/inf': 'inf', + 'application/internet-property-stream': 'acx', + 'application/ipfix': 'ipfix', + 'application/java': 'class', + 'application/java-archive': 'jar', + 'application/java-byte-code': 'class', + 'application/java-serialized-object': 'ser', + 'application/java-vm': 'class', + 'application/javascript': 'js', + 'application/json': 'json', + 'application/lha': 'lha', + 'application/lzx': 'lzx', + 'application/mac-binary': 'bin', + 'application/mac-binhex': 'hqx', + 'application/mac-binhex40': 'hqx', + 'application/mac-compactpro': 'cpt', + 'application/macbinary': 'bin', + 'application/mads+xml': 'mads', + 'application/marc': 'mrc', + 'application/marcxml+xml': 'mrcx', + 'application/mathematica': 'ma', + 'application/mathml+xml': 'mathml', + 'application/mbedlet': 'mbd', + 'application/mbox': 'mbox', + 'application/mcad': 'mcd', + 'application/mediaservercontrol+xml': 'mscml', + 'application/metalink4+xml': 'meta4', + 'application/mets+xml': 'mets', + 'application/mime': 'aps', + 'application/mods+xml': 'mods', + 'application/mp21': 'm21', + 'application/mp4': 'mp4', + 'application/mspowerpoint': ['pot', 'pps', 'ppt', 'ppz'], + 'application/msword': ['doc', 'dot', 'w6w', 'wiz', 'word'], + 'application/mswrite': 'wri', + 'application/mxf': 'mxf', + 'application/netmc': 'mcp', + 'application/octet-stream': ['*'], + 'application/oda': 'oda', + 'application/oebps-package+xml': 'opf', + 'application/ogg': 'ogx', + 'application/olescript': 'axs', + 'application/onenote': 'onetoc', + 'application/patch-ops-error+xml': 'xer', + 'application/pdf': 'pdf', + 'application/pgp-encrypted': '', + 'application/pgp-signature': 'pgp', + 'application/pics-rules': 'prf', + 'application/pkcs-12': 'p12', + 'application/pkcs-crl': 'crl', + 'application/pkcs10': 'p10', + 'application/pkcs7-mime': ['p7c', 'p7m'], + 'application/pkcs7-signature': 'p7s', + 'application/pkcs8': 'p8', + 'application/pkix-attr-cert': 'ac', + 'application/pkix-cert': ['cer', 'crt'], + 'application/pkix-crl': 'crl', + 'application/pkix-pkipath': 'pkipath', + 'application/pkixcmp': 'pki', + 'application/plain': 'text', + 'application/pls+xml': 'pls', + 'application/postscript': ['ai', 'eps', 'ps'], + 'application/powerpoint': 'ppt', + 'application/pro_eng': ['part', 'prt'], + 'application/prs.cww': 'cww', + 'application/pskc+xml': 'pskcxml', + 'application/rdf+xml': 'rdf', + 'application/reginfo+xml': 'rif', + 'application/relax-ng-compact-syntax': 'rnc', + 'application/resource-lists+xml': 'rl', + 'application/resource-lists-diff+xml': 'rld', + 'application/ringing-tones': 'rng', + 'application/rls-services+xml': 'rs', + 'application/rsd+xml': 'rsd', + 'application/rss+xml': 'xml', + 'application/rtf': ['rtf', 'rtx'], + 'application/sbml+xml': 'sbml', + 'application/scvp-cv-request': 'scq', + 'application/scvp-cv-response': 'scs', + 'application/scvp-vp-request': 'spq', + 'application/scvp-vp-response': 'spp', + 'application/sdp': 'sdp', + 'application/sea': 'sea', + 'application/set': 'set', + 'application/set-payment-initiation': 'setpay', + 'application/set-registration-initiation': 'setreg', + 'application/shf+xml': 'shf', + 'application/sla': 'stl', + 'application/smil': ['smi', 'smil'], + 'application/smil+xml': 'smi', + 'application/solids': 'sol', + 'application/sounder': 'sdr', + 'application/sparql-query': 'rq', + 'application/sparql-results+xml': 'srx', + 'application/srgs': 'gram', + 'application/srgs+xml': 'grxml', + 'application/sru+xml': 'sru', + 'application/ssml+xml': 'ssml', + 'application/step': ['step', 'stp'], + 'application/streamingmedia': 'ssm', + 'application/tei+xml': 'tei', + 'application/thraud+xml': 'tfi', + 'application/timestamped-data': 'tsd', + 'application/toolbook': 'tbk', + 'application/vda': 'vda', + 'application/vnd.3gpp.pic-bw-large': 'plb', + 'application/vnd.3gpp.pic-bw-small': 'psb', + 'application/vnd.3gpp.pic-bw-var': 'pvb', + 'application/vnd.3gpp2.tcap': 'tcap', + 'application/vnd.3m.post-it-notes': 'pwn', + 'application/vnd.accpac.simply.aso': 'aso', + 'application/vnd.accpac.simply.imp': 'imp', + 'application/vnd.acucobol': 'acu', + 'application/vnd.acucorp': 'atc', + 'application/vnd.adobe.air-application-installer-package+zip': 'air', + 'application/vnd.adobe.fxp': 'fxp', + 'application/vnd.adobe.xdp+xml': 'xdp', + 'application/vnd.adobe.xfdf': 'xfdf', + 'application/vnd.ahead.space': 'ahead', + 'application/vnd.airzip.filesecure.azf': 'azf', + 'application/vnd.airzip.filesecure.azs': 'azs', + 'application/vnd.amazon.ebook': 'azw', + 'application/vnd.americandynamics.acc': 'acc', + 'application/vnd.amiga.ami': 'ami', + 'application/vnd.android.package-archive': 'apk', + 'application/vnd.anser-web-certificate-issue-initiation': 'cii', + 'application/vnd.anser-web-funds-transfer-initiation': 'fti', + 'application/vnd.antix.game-component': 'atx', + 'application/vnd.apple.installer+xml': 'mpkg', + 'application/vnd.apple.mpegurl': 'm3u8', + 'application/vnd.aristanetworks.swi': 'swi', + 'application/vnd.audiograph': 'aep', + 'application/vnd.blueice.multipass': 'mpm', + 'application/vnd.bmi': 'bmi', + 'application/vnd.businessobjects': 'rep', + 'application/vnd.chemdraw+xml': 'cdxml', + 'application/vnd.chipnuts.karaoke-mmd': 'mmd', + 'application/vnd.cinderella': 'cdy', + 'application/vnd.claymore': 'cla', + 'application/vnd.cloanto.rp9': 'rp9', + 'application/vnd.clonk.c4group': 'c4g', + 'application/vnd.cluetrust.cartomobile-config': 'c11amc', + 'application/vnd.cluetrust.cartomobile-config-pkg': 'c11amz', + 'application/vnd.commonspace': 'csp', + 'application/vnd.contact.cmsg': 'cdbcmsg', + 'application/vnd.cosmocaller': 'cmc', + 'application/vnd.crick.clicker': 'clkx', + 'application/vnd.crick.clicker.keyboard': 'clkk', + 'application/vnd.crick.clicker.palette': 'clkp', + 'application/vnd.crick.clicker.template': 'clkt', + 'application/vnd.crick.clicker.wordbank': 'clkw', + 'application/vnd.criticaltools.wbs+xml': 'wbs', + 'application/vnd.ctc-posml': 'pml', + 'application/vnd.cups-ppd': 'ppd', + 'application/vnd.curl.car': 'car', + 'application/vnd.curl.pcurl': 'pcurl', + 'application/vnd.data-vision.rdz': 'rdz', + 'application/vnd.denovo.fcselayout-link': 'fe_launch', + 'application/vnd.dna': 'dna', + 'application/vnd.dolby.mlp': 'mlp', + 'application/vnd.dpgraph': 'dpg', + 'application/vnd.dreamfactory': 'dfac', + 'application/vnd.dvb.ait': 'ait', + 'application/vnd.dvb.service': 'svc', + 'application/vnd.dynageo': 'geo', + 'application/vnd.ecowin.chart': 'mag', + 'application/vnd.enliven': 'nml', + 'application/vnd.epson.esf': 'esf', + 'application/vnd.epson.msf': 'msf', + 'application/vnd.epson.quickanime': 'qam', + 'application/vnd.epson.salt': 'slt', + 'application/vnd.epson.ssf': 'ssf', + 'application/vnd.eszigno3+xml': 'es3', + 'application/vnd.ezpix-album': 'ez2', + 'application/vnd.ezpix-package': 'ez3', + 'application/vnd.fdf': 'fdf', + 'application/vnd.fdsn.seed': 'seed', + 'application/vnd.flographit': 'gph', + 'application/vnd.fluxtime.clip': 'ftc', + 'application/vnd.framemaker': 'fm', + 'application/vnd.frogans.fnc': 'fnc', + 'application/vnd.frogans.ltf': 'ltf', + 'application/vnd.fsc.weblaunch': 'fsc', + 'application/vnd.fujitsu.oasys': 'oas', + 'application/vnd.fujitsu.oasys2': 'oa2', + 'application/vnd.fujitsu.oasys3': 'oa3', + 'application/vnd.fujitsu.oasysgp': 'fg5', + 'application/vnd.fujitsu.oasysprs': 'bh2', + 'application/vnd.fujixerox.ddd': 'ddd', + 'application/vnd.fujixerox.docuworks': 'xdw', + 'application/vnd.fujixerox.docuworks.binder': 'xbd', + 'application/vnd.fuzzysheet': 'fzs', + 'application/vnd.genomatix.tuxedo': 'txd', + 'application/vnd.geogebra.file': 'ggb', + 'application/vnd.geogebra.tool': 'ggt', + 'application/vnd.geometry-explorer': 'gex', + 'application/vnd.geonext': 'gxt', + 'application/vnd.geoplan': 'g2w', + 'application/vnd.geospace': 'g3w', + 'application/vnd.gmx': 'gmx', + 'application/vnd.google-earth.kml+xml': 'kml', + 'application/vnd.google-earth.kmz': 'kmz', + 'application/vnd.grafeq': 'gqf', + 'application/vnd.groove-account': 'gac', + 'application/vnd.groove-help': 'ghf', + 'application/vnd.groove-identity-message': 'gim', + 'application/vnd.groove-injector': 'grv', + 'application/vnd.groove-tool-message': 'gtm', + 'application/vnd.groove-tool-template': 'tpl', + 'application/vnd.groove-vcard': 'vcg', + 'application/vnd.hal+xml': 'hal', + 'application/vnd.handheld-entertainment+xml': 'zmm', + 'application/vnd.hbci': 'hbci', + 'application/vnd.hhe.lesson-player': 'les', + 'application/vnd.hp-hpgl': ['hgl', 'hpg', 'hpgl'], + 'application/vnd.hp-hpid': 'hpid', + 'application/vnd.hp-hps': 'hps', + 'application/vnd.hp-jlyt': 'jlt', + 'application/vnd.hp-pcl': 'pcl', + 'application/vnd.hp-pclxl': 'pclxl', + 'application/vnd.hydrostatix.sof-data': 'sfd-hdstx', + 'application/vnd.hzn-3d-crossword': 'x3d', + 'application/vnd.ibm.minipay': 'mpy', + 'application/vnd.ibm.modcap': 'afp', + 'application/vnd.ibm.rights-management': 'irm', + 'application/vnd.ibm.secure-container': 'sc', + 'application/vnd.iccprofile': 'icc', + 'application/vnd.igloader': 'igl', + 'application/vnd.immervision-ivp': 'ivp', + 'application/vnd.immervision-ivu': 'ivu', + 'application/vnd.insors.igm': 'igm', + 'application/vnd.intercon.formnet': 'xpw', + 'application/vnd.intergeo': 'i2g', + 'application/vnd.intu.qbo': 'qbo', + 'application/vnd.intu.qfx': 'qfx', + 'application/vnd.ipunplugged.rcprofile': 'rcprofile', + 'application/vnd.irepository.package+xml': 'irp', + 'application/vnd.is-xpr': 'xpr', + 'application/vnd.isac.fcs': 'fcs', + 'application/vnd.jam': 'jam', + 'application/vnd.jcp.javame.midlet-rms': 'rms', + 'application/vnd.jisp': 'jisp', + 'application/vnd.joost.joda-archive': 'joda', + 'application/vnd.kahootz': 'ktz', + 'application/vnd.kde.karbon': 'karbon', + 'application/vnd.kde.kchart': 'chrt', + 'application/vnd.kde.kformula': 'kfo', + 'application/vnd.kde.kivio': 'flw', + 'application/vnd.kde.kontour': 'kon', + 'application/vnd.kde.kpresenter': 'kpr', + 'application/vnd.kde.kspread': 'ksp', + 'application/vnd.kde.kword': 'kwd', + 'application/vnd.kenameaapp': 'htke', + 'application/vnd.kidspiration': 'kia', + 'application/vnd.kinar': 'kne', + 'application/vnd.koan': 'skp', + 'application/vnd.kodak-descriptor': 'sse', + 'application/vnd.las.las+xml': 'lasxml', + 'application/vnd.llamagraphics.life-balance.desktop': 'lbd', + 'application/vnd.llamagraphics.life-balance.exchange+xml': 'lbe', + 'application/vnd.lotus-1-2-3': '123', + 'application/vnd.lotus-approach': 'apr', + 'application/vnd.lotus-freelance': 'pre', + 'application/vnd.lotus-notes': 'nsf', + 'application/vnd.lotus-organizer': 'org', + 'application/vnd.lotus-screencam': 'scm', + 'application/vnd.lotus-wordpro': 'lwp', + 'application/vnd.macports.portpkg': 'portpkg', + 'application/vnd.mcd': 'mcd', + 'application/vnd.medcalcdata': 'mc1', + 'application/vnd.mediastation.cdkey': 'cdkey', + 'application/vnd.mfer': 'mwf', + 'application/vnd.mfmp': 'mfm', + 'application/vnd.micrografx.flo': 'flo', + 'application/vnd.micrografx.igx': 'igx', + 'application/vnd.mif': 'mif', + 'application/vnd.mobius.daf': 'daf', + 'application/vnd.mobius.dis': 'dis', + 'application/vnd.mobius.mbk': 'mbk', + 'application/vnd.mobius.mqy': 'mqy', + 'application/vnd.mobius.msl': 'msl', + 'application/vnd.mobius.plc': 'plc', + 'application/vnd.mobius.txf': 'txf', + 'application/vnd.mophun.application': 'mpn', + 'application/vnd.mophun.certificate': 'mpc', + 'application/vnd.mozilla.xul+xml': 'xul', + 'application/vnd.ms-artgalry': 'cil', + 'application/vnd.ms-cab-compressed': 'cab', + 'application/vnd.ms-excel': ['xla', 'xlc', 'xlm', 'xls', 'xlt', 'xlw', 'xlb', 'xll'], + 'application/vnd.ms-excel.addin.macroenabled.12': 'xlam', + 'application/vnd.ms-excel.sheet.binary.macroenabled.12': 'xlsb', + 'application/vnd.ms-excel.sheet.macroenabled.12': 'xlsm', + 'application/vnd.ms-excel.template.macroenabled.12': 'xltm', + 'application/vnd.ms-fontobject': 'eot', + 'application/vnd.ms-htmlhelp': 'chm', + 'application/vnd.ms-ims': 'ims', + 'application/vnd.ms-lrm': 'lrm', + 'application/vnd.ms-officetheme': 'thmx', + 'application/vnd.ms-outlook': 'msg', + 'application/vnd.ms-pki.certstore': 'sst', + 'application/vnd.ms-pki.pko': 'pko', + 'application/vnd.ms-pki.seccat': 'cat', + 'application/vnd.ms-pki.stl': 'stl', + 'application/vnd.ms-pkicertstore': 'sst', + 'application/vnd.ms-pkiseccat': 'cat', + 'application/vnd.ms-pkistl': 'stl', + 'application/vnd.ms-powerpoint': ['pot', 'pps', 'ppt', 'ppa', 'pwz'], + 'application/vnd.ms-powerpoint.addin.macroenabled.12': 'ppam', + 'application/vnd.ms-powerpoint.presentation.macroenabled.12': 'pptm', + 'application/vnd.ms-powerpoint.slide.macroenabled.12': 'sldm', + 'application/vnd.ms-powerpoint.slideshow.macroenabled.12': 'ppsm', + 'application/vnd.ms-powerpoint.template.macroenabled.12': 'potm', + 'application/vnd.ms-project': 'mpp', + 'application/vnd.ms-word.document.macroenabled.12': 'docm', + 'application/vnd.ms-word.template.macroenabled.12': 'dotm', + 'application/vnd.ms-works': ['wcm', 'wdb', 'wks', 'wps'], + 'application/vnd.ms-wpl': 'wpl', + 'application/vnd.ms-xpsdocument': 'xps', + 'application/vnd.mseq': 'mseq', + 'application/vnd.musician': 'mus', + 'application/vnd.muvee.style': 'msty', + 'application/vnd.neurolanguage.nlu': 'nlu', + 'application/vnd.noblenet-directory': 'nnd', + 'application/vnd.noblenet-sealer': 'nns', + 'application/vnd.noblenet-web': 'nnw', + 'application/vnd.nokia.configuration-message': 'ncm', + 'application/vnd.nokia.n-gage.data': 'ngdat', + 'application/vnd.nokia.n-gage.symbian.install': 'n-gage', + 'application/vnd.nokia.radio-preset': 'rpst', + 'application/vnd.nokia.radio-presets': 'rpss', + 'application/vnd.nokia.ringing-tone': 'rng', + 'application/vnd.novadigm.edm': 'edm', + 'application/vnd.novadigm.edx': 'edx', + 'application/vnd.novadigm.ext': 'ext', + 'application/vnd.oasis.opendocument.chart': 'odc', + 'application/vnd.oasis.opendocument.chart-template': 'otc', + 'application/vnd.oasis.opendocument.database': 'odb', + 'application/vnd.oasis.opendocument.formula': 'odf', + 'application/vnd.oasis.opendocument.formula-template': 'odft', + 'application/vnd.oasis.opendocument.graphics': 'odg', + 'application/vnd.oasis.opendocument.graphics-template': 'otg', + 'application/vnd.oasis.opendocument.image': 'odi', + 'application/vnd.oasis.opendocument.image-template': 'oti', + 'application/vnd.oasis.opendocument.presentation': 'odp', + 'application/vnd.oasis.opendocument.presentation-template': 'otp', + 'application/vnd.oasis.opendocument.spreadsheet': 'ods', + 'application/vnd.oasis.opendocument.spreadsheet-template': 'ots', + 'application/vnd.oasis.opendocument.text': 'odt', + 'application/vnd.oasis.opendocument.text-master': 'odm', + 'application/vnd.oasis.opendocument.text-template': 'ott', + 'application/vnd.oasis.opendocument.text-web': 'oth', + 'application/vnd.olpc-sugar': 'xo', + 'application/vnd.oma.dd2+xml': 'dd2', + 'application/vnd.openofficeorg.extension': 'oxt', + 'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'pptx', + 'application/vnd.openxmlformats-officedocument.presentationml.slide': 'sldx', + 'application/vnd.openxmlformats-officedocument.presentationml.slideshow': 'ppsx', + 'application/vnd.openxmlformats-officedocument.presentationml.template': 'potx', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xlsx', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.template': 'xltx', + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'docx', + 'application/vnd.openxmlformats-officedocument.wordprocessingml.template': 'dotx', + 'application/vnd.osgeo.mapguide.package': 'mgp', + 'application/vnd.osgi.dp': 'dp', + 'application/vnd.palm': 'pdb', + 'application/vnd.pawaafile': 'paw', + 'application/vnd.pg.format': 'str', + 'application/vnd.pg.osasli': 'ei6', + 'application/vnd.picsel': 'efif', + 'application/vnd.pmi.widget': 'wg', + 'application/vnd.pocketlearn': 'plf', + 'application/vnd.powerbuilder6': 'pbd', + 'application/vnd.previewsystems.box': 'box', + 'application/vnd.proteus.magazine': 'mgz', + 'application/vnd.publishare-delta-tree': 'qps', + 'application/vnd.pvi.ptid1': 'ptid', + 'application/vnd.quark.quarkxpress': 'qxd', + 'application/vnd.realvnc.bed': 'bed', + 'application/vnd.recordare.musicxml': 'mxl', + 'application/vnd.recordare.musicxml+xml': 'musicxml', + 'application/vnd.rig.cryptonote': 'cryptonote', + 'application/vnd.rim.cod': 'cod', + 'application/vnd.rn-realmedia': 'rm', + 'application/vnd.rn-realplayer': 'rnx', + 'application/vnd.route66.link66+xml': 'link66', + 'application/vnd.sailingtracker.track': 'st', + 'application/vnd.seemail': 'see', + 'application/vnd.sema': 'sema', + 'application/vnd.semd': 'semd', + 'application/vnd.semf': 'semf', + 'application/vnd.shana.informed.formdata': 'ifm', + 'application/vnd.shana.informed.formtemplate': 'itp', + 'application/vnd.shana.informed.interchange': 'iif', + 'application/vnd.shana.informed.package': 'ipk', + 'application/vnd.simtech-mindmapper': 'twd', + 'application/vnd.smaf': 'mmf', + 'application/vnd.smart.teacher': 'teacher', + 'application/vnd.solent.sdkm+xml': 'sdkm', + 'application/vnd.spotfire.dxp': 'dxp', + 'application/vnd.spotfire.sfs': 'sfs', + 'application/vnd.stardivision.calc': 'sdc', + 'application/vnd.stardivision.draw': 'sda', + 'application/vnd.stardivision.impress': 'sdd', + 'application/vnd.stardivision.math': 'smf', + 'application/vnd.stardivision.writer': 'sdw', + 'application/vnd.stardivision.writer-global': 'sgl', + 'application/vnd.stepmania.stepchart': 'sm', + 'application/vnd.sun.xml.calc': 'sxc', + 'application/vnd.sun.xml.calc.template': 'stc', + 'application/vnd.sun.xml.draw': 'sxd', + 'application/vnd.sun.xml.draw.template': 'std', + 'application/vnd.sun.xml.impress': 'sxi', + 'application/vnd.sun.xml.impress.template': 'sti', + 'application/vnd.sun.xml.math': 'sxm', + 'application/vnd.sun.xml.writer': 'sxw', + 'application/vnd.sun.xml.writer.global': 'sxg', + 'application/vnd.sun.xml.writer.template': 'stw', + 'application/vnd.sus-calendar': 'sus', + 'application/vnd.svd': 'svd', + 'application/vnd.symbian.install': 'sis', + 'application/vnd.syncml+xml': 'xsm', + 'application/vnd.syncml.dm+wbxml': 'bdm', + 'application/vnd.syncml.dm+xml': 'xdm', + 'application/vnd.tao.intent-module-archive': 'tao', + 'application/vnd.tmobile-livetv': 'tmo', + 'application/vnd.trid.tpt': 'tpt', + 'application/vnd.triscape.mxs': 'mxs', + 'application/vnd.trueapp': 'tra', + 'application/vnd.ufdl': 'ufd', + 'application/vnd.uiq.theme': 'utz', + 'application/vnd.umajin': 'umj', + 'application/vnd.unity': 'unityweb', + 'application/vnd.uoml+xml': 'uoml', + 'application/vnd.vcx': 'vcx', + 'application/vnd.visio': 'vsd', + 'application/vnd.visionary': 'vis', + 'application/vnd.vsf': 'vsf', + 'application/vnd.wap.wbxml': 'wbxml', + 'application/vnd.wap.wmlc': 'wmlc', + 'application/vnd.wap.wmlscriptc': 'wmlsc', + 'application/vnd.webturbo': 'wtb', + 'application/vnd.wolfram.player': 'nbp', + 'application/vnd.wordperfect': 'wpd', + 'application/vnd.wqd': 'wqd', + 'application/vnd.wt.stf': 'stf', + 'application/vnd.xara': ['web', 'xar'], + 'application/vnd.xfdl': 'xfdl', + 'application/vnd.yamaha.hv-dic': 'hvd', + 'application/vnd.yamaha.hv-script': 'hvs', + 'application/vnd.yamaha.hv-voice': 'hvp', + 'application/vnd.yamaha.openscoreformat': 'osf', + 'application/vnd.yamaha.openscoreformat.osfpvg+xml': 'osfpvg', + 'application/vnd.yamaha.smaf-audio': 'saf', + 'application/vnd.yamaha.smaf-phrase': 'spf', + 'application/vnd.yellowriver-custom-menu': 'cmp', + 'application/vnd.zul': 'zir', + 'application/vnd.zzazz.deck+xml': 'zaz', + 'application/vocaltec-media-desc': 'vmd', + 'application/vocaltec-media-file': 'vmf', + 'application/voicexml+xml': 'vxml', + 'application/widget': 'wgt', + 'application/winhlp': 'hlp', + 'application/wordperfect': ['wp', 'wp5', 'wp6', 'wpd'], + 'application/wordperfect6.0': ['w60', 'wp5'], + 'application/wordperfect6.1': 'w61', + 'application/wsdl+xml': 'wsdl', + 'application/wspolicy+xml': 'wspolicy', + 'application/x-123': 'wk1', + 'application/x-7z-compressed': '7z', + 'application/x-abiword': 'abw', + 'application/x-ace-compressed': 'ace', + 'application/x-aim': 'aim', + 'application/x-authorware-bin': 'aab', + 'application/x-authorware-map': 'aam', + 'application/x-authorware-seg': 'aas', + 'application/x-bcpio': 'bcpio', + 'application/x-binary': 'bin', + 'application/x-binhex40': 'hqx', + 'application/x-bittorrent': 'torrent', + 'application/x-bsh': ['bsh', 'sh', 'shar'], + 'application/x-bytecode.elisp': 'elc', + 'applicaiton/x-bytecode.python': 'pyc', + 'application/x-bzip': 'bz', + 'application/x-bzip2': ['boz', 'bz2'], + 'application/x-cdf': 'cdf', + 'application/x-cdlink': 'vcd', + 'application/x-chat': ['cha', 'chat'], + 'application/x-chess-pgn': 'pgn', + 'application/x-cmu-raster': 'ras', + 'application/x-cocoa': 'cco', + 'application/x-compactpro': 'cpt', + 'application/x-compress': 'z', + 'application/x-compressed': ['tgz', 'gz', 'z', 'zip'], + 'application/x-conference': 'nsc', + 'application/x-cpio': 'cpio', + 'application/x-cpt': 'cpt', + 'application/x-csh': 'csh', + 'application/x-debian-package': 'deb', + 'application/x-deepv': 'deepv', + 'application/x-director': ['dcr', 'dir', 'dxr'], + 'application/x-doom': 'wad', + 'application/x-dtbncx+xml': 'ncx', + 'application/x-dtbook+xml': 'dtb', + 'application/x-dtbresource+xml': 'res', + 'application/x-dvi': 'dvi', + 'application/x-elc': 'elc', + 'application/x-envoy': ['env', 'evy'], + 'application/x-esrehber': 'es', + 'application/x-excel': ['xla', 'xlb', 'xlc', 'xld', 'xlk', 'xll', 'xlm', 'xls', 'xlt', 'xlv', 'xlw'], + 'application/x-font-bdf': 'bdf', + 'application/x-font-ghostscript': 'gsf', + 'application/x-font-linux-psf': 'psf', + 'application/x-font-otf': 'otf', + 'application/x-font-pcf': 'pcf', + 'application/x-font-snf': 'snf', + 'application/x-font-ttf': 'ttf', + 'application/x-font-type1': 'pfa', + 'application/x-font-woff': 'woff', + 'application/x-frame': 'mif', + 'application/x-freelance': 'pre', + 'application/x-futuresplash': 'spl', + 'application/x-gnumeric': 'gnumeric', + 'application/x-gsp': 'gsp', + 'application/x-gss': 'gss', + 'application/x-gtar': 'gtar', + 'application/x-gzip': ['gz', 'gzip'], + 'application/x-hdf': 'hdf', + 'application/x-helpfile': ['help', 'hlp'], + 'application/x-httpd-imap': 'imap', + 'application/x-ima': 'ima', + 'application/x-internet-signup': ['ins', 'isp'], + 'application/x-internett-signup': 'ins', + 'application/x-inventor': 'iv', + 'application/x-ip2': 'ip', + 'application/x-iphone': 'iii', + 'application/x-java-class': 'class', + 'application/x-java-commerce': 'jcm', + 'application/x-java-jnlp-file': 'jnlp', + 'application/x-javascript': 'js', + 'application/x-koan': ['skd', 'skm', 'skp', 'skt'], + 'application/x-ksh': 'ksh', + 'application/x-latex': ['latex', 'ltx'], + 'application/x-lha': 'lha', + 'application/x-lisp': 'lsp', + 'application/x-livescreen': 'ivy', + 'application/x-lotus': 'wq1', + 'application/x-lotusscreencam': 'scm', + 'application/x-lzh': 'lzh', + 'application/x-lzx': 'lzx', + 'application/x-mac-binhex40': 'hqx', + 'application/x-macbinary': 'bin', + 'application/x-magic-cap-package-1.0': 'mc$', + 'application/x-mathcad': 'mcd', + 'application/x-meme': 'mm', + 'application/x-midi': ['mid', 'midi'], + 'application/x-mif': 'mif', + 'application/x-mix-transfer': 'nix', + 'application/x-mobipocket-ebook': 'prc', + 'application/x-mplayer2': 'asx', + 'application/x-ms-application': 'application', + 'application/x-ms-wmd': 'wmd', + 'application/x-ms-wmz': 'wmz', + 'application/x-ms-xbap': 'xbap', + 'application/x-msaccess': 'mdb', + 'application/x-msbinder': 'obd', + 'application/x-mscardfile': 'crd', + 'application/x-msclip': 'clp', + 'application/x-msdownload': ['dll', 'exe'], + 'application/x-msexcel': ['xla', 'xls', 'xlw'], + 'application/x-msmediaview': ['m13', 'm14', 'mvb'], + 'application/x-msmetafile': 'wmf', + 'application/x-msmoney': 'mny', + 'application/x-mspowerpoint': 'ppt', + 'application/x-mspublisher': 'pub', + 'application/x-msschedule': 'scd', + 'application/x-msterminal': 'trm', + 'application/x-mswrite': 'wri', + 'application/x-navi-animation': 'ani', + 'application/x-navidoc': 'nvd', + 'application/x-navimap': 'map', + 'application/x-navistyle': 'stl', + 'application/x-netcdf': ['cdf', 'nc'], + 'application/x-newton-compatible-pkg': 'pkg', + 'application/x-nokia-9000-communicator-add-on-software': 'aos', + 'application/x-omc': 'omc', + 'application/x-omcdatamaker': 'omcd', + 'application/x-omcregerator': 'omcr', + 'application/x-pagemaker': ['pm4', 'pm5'], + 'application/x-pcl': 'pcl', + 'application/x-perfmon': ['pma', 'pmc', 'pml', 'pmr', 'pmw'], + 'application/x-pixclscript': 'plx', + 'application/x-pkcs10': 'p10', + 'application/x-pkcs12': ['p12', 'pfx'], + 'application/x-pkcs7-certificates': ['p7b', 'spc'], + 'application/x-pkcs7-certreqresp': 'p7r', + 'application/x-pkcs7-mime': ['p7c', 'p7m'], + 'application/x-pkcs7-signature': ['p7s', 'p7a'], + 'application/x-pointplus': 'css', + 'application/x-portable-anymap': 'pnm', + 'application/x-project': ['mpc', 'mpt', 'mpv', 'mpx'], + 'application/x-qpro': 'wb1', + 'application/x-rar-compressed': 'rar', + 'application/x-rtf': 'rtf', + 'application/x-sdp': 'sdp', + 'application/x-sea': 'sea', + 'application/x-seelogo': 'sl', + 'application/x-sh': 'sh', + 'application/x-shar': ['shar', 'sh'], + 'application/x-shockwave-flash': 'swf', + 'application/x-silverlight-app': 'xap', + 'application/x-sit': 'sit', + 'application/x-sprite': ['spr', 'sprite'], + 'application/x-stuffit': 'sit', + 'application/x-stuffitx': 'sitx', + 'application/x-sv4cpio': 'sv4cpio', + 'application/x-sv4crc': 'sv4crc', + 'application/x-tar': 'tar', + 'application/x-tbook': ['sbk', 'tbk'], + 'application/x-tcl': 'tcl', + 'application/x-tex': 'tex', + 'application/x-tex-tfm': 'tfm', + 'application/x-texinfo': ['texi', 'texinfo'], + 'application/x-troff': ['roff', 't', 'tr'], + 'application/x-troff-man': 'man', + 'application/x-troff-me': 'me', + 'application/x-troff-ms': 'ms', + 'application/x-troff-msvideo': 'avi', + 'application/x-ustar': 'ustar', + 'application/x-visio': ['vsd', 'vst', 'vsw'], + 'application/x-vnd.audioexplosion.mzz': 'mzz', + 'application/x-vnd.ls-xpix': 'xpix', + 'application/x-vrml': 'vrml', + 'application/x-wais-source': ['src', 'wsrc'], + 'application/x-winhelp': 'hlp', + 'application/x-wintalk': 'wtk', + 'application/x-world': ['svr', 'wrl'], + 'application/x-wpwin': 'wpd', + 'application/x-wri': 'wri', + 'application/x-x509-ca-cert': ['cer', 'crt', 'der'], + 'application/x-x509-user-cert': 'crt', + 'application/x-xfig': 'fig', + 'application/x-xpinstall': 'xpi', + 'application/x-zip-compressed': 'zip', + 'application/xcap-diff+xml': 'xdf', + 'application/xenc+xml': 'xenc', + 'application/xhtml+xml': 'xhtml', + 'application/xml': 'xml', + 'application/xml-dtd': 'dtd', + 'application/xop+xml': 'xop', + 'application/xslt+xml': 'xslt', + 'application/xspf+xml': 'xspf', + 'application/xv+xml': 'mxml', + 'application/yang': 'yang', + 'application/yin+xml': 'yin', + 'application/ynd.ms-pkipko': 'pko', + 'application/zip': 'zip', + 'audio/adpcm': 'adp', + 'audio/aiff': ['aif', 'aifc', 'aiff'], + 'audio/basic': ['au', 'snd'], + 'audio/it': 'it', + 'audio/make': ['funk', 'my', 'pfunk'], + 'audio/make.my.funk': 'pfunk', + 'audio/mid': ['mid', 'rmi'], + 'audio/midi': ['kar', 'mid', 'midi'], + 'audio/mod': 'mod', + 'audio/mp4': 'mp4a', + 'audio/mpeg': ['mp3', 'm2a', 'mp2', 'mpa', 'mpg', 'mpga'], + 'audio/mpeg3': 'mp3', + 'audio/nspaudio': ['la', 'lma'], + 'audio/ogg': 'oga', + 'audio/s3m': 's3m', + 'audio/tsp-audio': 'tsi', + 'audio/tsplayer': 'tsp', + 'audio/vnd.dece.audio': 'uva', + 'audio/vnd.digital-winds': 'eol', + 'audio/vnd.dra': 'dra', + 'audio/vnd.dts': 'dts', + 'audio/vnd.dts.hd': 'dtshd', + 'audio/vnd.lucent.voice': 'lvp', + 'audio/vnd.ms-playready.media.pya': 'pya', + 'audio/vnd.nuera.ecelp4800': 'ecelp4800', + 'audio/vnd.nuera.ecelp7470': 'ecelp7470', + 'audio/vnd.nuera.ecelp9600': 'ecelp9600', + 'audio/vnd.qcelp': 'qcp', + 'audio/vnd.rip': 'rip', + 'audio/voc': 'voc', + 'audio/voxware': 'vox', + 'audio/wav': 'wav', + 'audio/webm': 'weba', + 'audio/x-aac': 'aac', + 'audio/x-adpcm': 'snd', + 'audio/x-aiff': ['aif', 'aifc', 'aiff'], + 'audio/x-au': 'au', + 'audio/x-gsm': ['gsd', 'gsm'], + 'audio/x-jam': 'jam', + 'audio/x-liveaudio': 'lam', + 'audio/x-mid': ['mid', 'midi'], + 'audio/x-midi': ['mid', 'midi'], + 'audio/x-mod': 'mod', + 'audio/x-mpeg': 'mp2', + 'audio/x-mpeg-3': 'mp3', + 'audio/x-mpegurl': 'm3u', + 'audio/x-mpequrl': 'm3u', + 'audio/x-ms-wax': 'wax', + 'audio/x-ms-wma': 'wma', + 'audio/x-nspaudio': ['la', 'lma'], + 'audio/x-pn-realaudio': ['ra', 'ram', 'rm', 'rmm', 'rmp'], + 'audio/x-pn-realaudio-plugin': ['ra', 'rmp', 'rpm'], + 'audio/x-psid': 'sid', + 'audio/x-realaudio': 'ra', + 'audio/x-twinvq': 'vqf', + 'audio/x-twinvq-plugin': ['vqe', 'vql'], + 'audio/x-vnd.audioexplosion.mjuicemediafile': 'mjf', + 'audio/x-voc': 'voc', + 'audio/x-wav': 'wav', + 'audio/xm': 'xm', + 'chemical/x-cdx': 'cdx', + 'chemical/x-cif': 'cif', + 'chemical/x-cmdf': 'cmdf', + 'chemical/x-cml': 'cml', + 'chemical/x-csml': 'csml', + 'chemical/x-pdb': ['pdb', 'xyz'], + 'chemical/x-xyz': 'xyz', + 'drawing/x-dwf': 'dwf', + 'i-world/i-vrml': 'ivr', + 'image/bmp': ['bmp', 'bm'], + 'image/cgm': 'cgm', + 'image/cis-cod': 'cod', + 'image/cmu-raster': ['ras', 'rast'], + 'image/fif': 'fif', + 'image/florian': ['flo', 'turbot'], + 'image/g3fax': 'g3', + 'image/gif': 'gif', + 'image/ief': ['ief', 'iefs'], + 'image/jpeg': ['jpe', 'jpeg', 'jpg', 'jfif', 'jfif-tbnl'], + 'image/jutvision': 'jut', + 'image/ktx': 'ktx', + 'image/naplps': ['nap', 'naplps'], + 'image/pict': ['pic', 'pict'], + 'image/pipeg': 'jfif', + 'image/pjpeg': ['jfif', 'jpe', 'jpeg', 'jpg'], + 'image/png': ['png', 'x-png'], + 'image/prs.btif': 'btif', + 'image/svg+xml': 'svg', + 'image/tiff': ['tif', 'tiff'], + 'image/vasa': 'mcf', + 'image/vnd.adobe.photoshop': 'psd', + 'image/vnd.dece.graphic': 'uvi', + 'image/vnd.djvu': 'djvu', + 'image/vnd.dvb.subtitle': 'sub', + 'image/vnd.dwg': ['dwg', 'dxf', 'svf'], + 'image/vnd.dxf': 'dxf', + 'image/vnd.fastbidsheet': 'fbs', + 'image/vnd.fpx': 'fpx', + 'image/vnd.fst': 'fst', + 'image/vnd.fujixerox.edmics-mmr': 'mmr', + 'image/vnd.fujixerox.edmics-rlc': 'rlc', + 'image/vnd.ms-modi': 'mdi', + 'image/vnd.net-fpx': ['fpx', 'npx'], + 'image/vnd.rn-realflash': 'rf', + 'image/vnd.rn-realpix': 'rp', + 'image/vnd.wap.wbmp': 'wbmp', + 'image/vnd.xiff': 'xif', + 'image/webp': 'webp', + 'image/x-cmu-raster': 'ras', + 'image/x-cmx': 'cmx', + 'image/x-dwg': ['dwg', 'dxf', 'svf'], + 'image/x-freehand': 'fh', + 'image/x-icon': 'ico', + 'image/x-jg': 'art', + 'image/x-jps': 'jps', + 'image/x-niff': ['nif', 'niff'], + 'image/x-pcx': 'pcx', + 'image/x-pict': ['pct', 'pic'], + 'image/x-portable-anymap': 'pnm', + 'image/x-portable-bitmap': 'pbm', + 'image/x-portable-graymap': 'pgm', + 'image/x-portable-greymap': 'pgm', + 'image/x-portable-pixmap': 'ppm', + 'image/x-quicktime': ['qif', 'qti', 'qtif'], + 'image/x-rgb': 'rgb', + 'image/x-tiff': ['tif', 'tiff'], + 'image/x-windows-bmp': 'bmp', + 'image/x-xbitmap': 'xbm', + 'image/x-xbm': 'xbm', + 'image/x-xpixmap': ['xpm', 'pm'], + 'image/x-xwd': 'xwd', + 'image/x-xwindowdump': 'xwd', + 'image/xbm': 'xbm', + 'image/xpm': 'xpm', + 'message/rfc822': ['mht', 'mhtml', 'nws', 'mime', 'eml'], + 'model/iges': ['iges', 'igs'], + 'model/mesh': 'msh', + 'model/vnd.collada+xml': 'dae', + 'model/vnd.dwf': 'dwf', + 'model/vnd.gdl': 'gdl', + 'model/vnd.gtw': 'gtw', + 'model/vnd.mts': 'mts', + 'model/vnd.vtu': 'vtu', + 'model/vrml': ['vrml', 'wrl', 'wrz'], + 'model/x-pov': 'pov', + 'multipart/x-gzip': 'gzip', + 'multipart/x-ustar': 'ustar', + 'multipart/x-zip': 'zip', + 'music/crescendo': ['mid', 'midi'], + 'music/x-karaoke': 'kar', + 'paleovu/x-pv': 'pvu', + 'text/asp': 'asp', + 'text/calendar': 'ics', + 'text/css': 'css', + 'text/csv': 'csv', + 'text/ecmascript': 'js', + 'text/h323': '323', + 'text/html': ['htm', 'html', 'stm', 'acgi', 'htmls', 'htx', 'shtml'], + 'text/iuls': 'uls', + 'text/javascript': 'js', + 'text/mcf': 'mcf', + 'text/n3': 'n3', + 'text/pascal': 'pas', + 'text/plain': ['bas', 'c', 'h', 'txt', 'c++', 'cc', 'com', 'conf', 'cxx', 'def', 'f', 'f90', 'for', 'g', 'hh', 'idc', 'jav', 'java', 'list', 'log', 'lst', 'm', 'mar', 'pl', 'sdml', 'text'], + 'text/plain-bas': 'par', + 'text/prs.lines.tag': 'dsc', + 'text/richtext': ['rtx', 'rt', 'rtf'], + 'text/scriplet': 'wsc', + 'text/scriptlet': 'sct', + 'text/sgml': ['sgm', 'sgml'], + 'text/tab-separated-values': 'tsv', + 'text/troff': 't', + 'text/turtle': 'ttl', + 'text/uri-list': ['uni', 'unis', 'uri', 'uris'], + 'text/vnd.abc': 'abc', + 'text/vnd.curl': 'curl', + 'text/vnd.curl.dcurl': 'dcurl', + 'text/vnd.curl.mcurl': 'mcurl', + 'text/vnd.curl.scurl': 'scurl', + 'text/vnd.fly': 'fly', + 'text/vnd.fmi.flexstor': 'flx', + 'text/vnd.graphviz': 'gv', + 'text/vnd.in3d.3dml': '3dml', + 'text/vnd.in3d.spot': 'spot', + 'text/vnd.rn-realtext': 'rt', + 'text/vnd.sun.j2me.app-descriptor': 'jad', + 'text/vnd.wap.wml': 'wml', + 'text/vnd.wap.wmlscript': 'wmls', + 'text/webviewhtml': 'htt', + 'text/x-asm': ['asm', 's'], + 'text/x-audiosoft-intra': 'aip', + 'text/x-c': ['c', 'cc', 'cpp'], + 'text/x-component': 'htc', + 'text/x-fortran': ['f', 'f77', 'f90', 'for'], + 'text/x-h': ['h', 'hh'], + 'text/x-java-source': ['jav', 'java'], + 'text/x-java-source,java': 'java', + 'text/x-la-asf': 'lsx', + 'text/x-m': 'm', + 'text/x-pascal': 'p', + 'text/x-script': 'hlb', + 'text/x-script.csh': 'csh', + 'text/x-script.elisp': 'el', + 'text/x-script.guile': 'scm', + 'text/x-script.ksh': 'ksh', + 'text/x-script.lisp': 'lsp', + 'text/x-script.perl': 'pl', + 'text/x-script.perl-module': 'pm', + 'text/x-script.phyton': 'py', + 'text/x-script.rexx': 'rexx', + 'text/x-script.scheme': 'scm', + 'text/x-script.sh': 'sh', + 'text/x-script.tcl': 'tcl', + 'text/x-script.tcsh': 'tcsh', + 'text/x-script.zsh': 'zsh', + 'text/x-server-parsed-html': ['shtml', 'ssi'], + 'text/x-setext': 'etx', + 'text/x-sgml': ['sgm', 'sgml'], + 'text/x-speech': ['spc', 'talk'], + 'text/x-uil': 'uil', + 'text/x-uuencode': ['uu', 'uue'], + 'text/x-vcalendar': 'vcs', + 'text/x-vcard': 'vcf', + 'text/xml': 'xml', + 'video/3gpp': '3gp', + 'video/3gpp2': '3g2', + 'video/animaflex': 'afl', + 'video/avi': 'avi', + 'video/avs-video': 'avs', + 'video/dl': 'dl', + 'video/fli': 'fli', + 'video/gl': 'gl', + 'video/h261': 'h261', + 'video/h263': 'h263', + 'video/h264': 'h264', + 'video/jpeg': 'jpgv', + 'video/jpm': 'jpm', + 'video/mj2': 'mj2', + 'video/mp4': 'mp4', + 'video/mpeg': ['mp2', 'mpa', 'mpe', 'mpeg', 'mpg', 'mpv2', 'm1v', 'm2v', 'mp3'], + 'video/msvideo': 'avi', + 'video/ogg': 'ogv', + 'video/quicktime': ['mov', 'qt', 'moov'], + 'video/vdo': 'vdo', + 'video/vivo': ['viv', 'vivo'], + 'video/vnd.dece.hd': 'uvh', + 'video/vnd.dece.mobile': 'uvm', + 'video/vnd.dece.pd': 'uvp', + 'video/vnd.dece.sd': 'uvs', + 'video/vnd.dece.video': 'uvv', + 'video/vnd.fvt': 'fvt', + 'video/vnd.mpegurl': 'mxu', + 'video/vnd.ms-playready.media.pyv': 'pyv', + 'video/vnd.rn-realvideo': 'rv', + 'video/vnd.uvvu.mp4': 'uvu', + 'video/vnd.vivo': ['viv', 'vivo'], + 'video/vosaic': 'vos', + 'video/webm': 'webm', + 'video/x-amt-demorun': 'xdr', + 'video/x-amt-showrun': 'xsr', + 'video/x-atomic3d-feature': 'fmf', + 'video/x-dl': 'dl', + 'video/x-dv': ['dif', 'dv'], + 'video/x-f4v': 'f4v', + 'video/x-fli': 'fli', + 'video/x-flv': 'flv', + 'video/x-gl': 'gl', + 'video/x-isvideo': 'isu', + 'video/x-la-asf': ['lsf', 'lsx'], + 'video/x-m4v': 'm4v', + 'video/x-motion-jpeg': 'mjpg', + 'video/x-mpeg': ['mp2', 'mp3'], + 'video/x-mpeq2a': 'mp2', + 'video/x-ms-asf': ['asf', 'asr', 'asx'], + 'video/x-ms-asf-plugin': 'asx', + 'video/x-ms-wm': 'wm', + 'video/x-ms-wmv': 'wmv', + 'video/x-ms-wmx': 'wmx', + 'video/x-ms-wvx': 'wvx', + 'video/x-msvideo': 'avi', + 'video/x-qtc': 'qtc', + 'video/x-scm': 'scm', + 'video/x-sgi-movie': ['movie', 'mv'], + 'windows/metafile': 'wmf', + 'www/mime': 'mime', + 'x-conference/x-cooltalk': 'ice', + 'x-music/x-midi': ['mid', 'midi'], + 'x-world/x-3dmf': ['3dm', '3dmf', 'qd3', 'qd3d'], + 'x-world/x-svr': 'svr', + 'x-world/x-vrml': ['flr', 'vrml', 'wrl', 'wrz', 'xaf', 'xof'], + 'x-world/x-vrt': 'vrt', + 'xgl/drawing': 'xgz', + 'xgl/movie': 'xmz', + }; - var mimetypesExtensions = { - '': ['application/andrew-inset', 'application/pgp-encrypted'], - '*': 'application/octet-stream', - 123: 'application/vnd.lotus-1-2-3', - 323: 'text/h323', - '3dm': 'x-world/x-3dmf', - '3dmf': 'x-world/x-3dmf', - '3dml': 'text/vnd.in3d.3dml', - '3g2': 'video/3gpp2', - '3gp': 'video/3gpp', - '7z': 'application/x-7z-compressed', - a: 'application/octet-stream', - aab: 'application/x-authorware-bin', - aac: 'audio/x-aac', - aam: 'application/x-authorware-map', - aas: 'application/x-authorware-seg', - abc: 'text/vnd.abc', - abw: 'application/x-abiword', - ac: 'application/pkix-attr-cert', - acc: 'application/vnd.americandynamics.acc', - ace: 'application/x-ace-compressed', - acgi: 'text/html', - acu: 'application/vnd.acucobol', - acx: 'application/internet-property-stream', - adp: 'audio/adpcm', - aep: 'application/vnd.audiograph', - afl: 'video/animaflex', - afp: 'application/vnd.ibm.modcap', - ahead: 'application/vnd.ahead.space', - ai: 'application/postscript', - aif: ['audio/aiff', 'audio/x-aiff'], - aifc: ['audio/aiff', 'audio/x-aiff'], - aiff: ['audio/aiff', 'audio/x-aiff'], - aim: 'application/x-aim', - aip: 'text/x-audiosoft-intra', - air: 'application/vnd.adobe.air-application-installer-package+zip', - ait: 'application/vnd.dvb.ait', - ami: 'application/vnd.amiga.ami', - ani: 'application/x-navi-animation', - aos: 'application/x-nokia-9000-communicator-add-on-software', - apk: 'application/vnd.android.package-archive', - application: 'application/x-ms-application', - apr: 'application/vnd.lotus-approach', - aps: 'application/mime', - arc: 'application/octet-stream', - arj: ['application/arj', 'application/octet-stream'], - art: 'image/x-jg', - asf: 'video/x-ms-asf', - asm: 'text/x-asm', - aso: 'application/vnd.accpac.simply.aso', - asp: 'text/asp', - asr: 'video/x-ms-asf', - asx: ['video/x-ms-asf', 'application/x-mplayer2', 'video/x-ms-asf-plugin'], - atc: 'application/vnd.acucorp', - atomcat: 'application/atomcat+xml', - atomsvc: 'application/atomsvc+xml', - atx: 'application/vnd.antix.game-component', - au: ['audio/basic', 'audio/x-au'], - avi: ['video/avi', 'video/msvideo', 'application/x-troff-msvideo', 'video/x-msvideo'], - avs: 'video/avs-video', - aw: 'application/applixware', - axs: 'application/olescript', - azf: 'application/vnd.airzip.filesecure.azf', - azs: 'application/vnd.airzip.filesecure.azs', - azw: 'application/vnd.amazon.ebook', - bas: 'text/plain', - bcpio: 'application/x-bcpio', - bdf: 'application/x-font-bdf', - bdm: 'application/vnd.syncml.dm+wbxml', - bed: 'application/vnd.realvnc.bed', - bh2: 'application/vnd.fujitsu.oasysprs', - bin: [ - 'application/octet-stream', - 'application/mac-binary', - 'application/macbinary', - 'application/x-macbinary', - 'application/x-binary', - ], - bm: 'image/bmp', - bmi: 'application/vnd.bmi', - bmp: ['image/bmp', 'image/x-windows-bmp'], - boo: 'application/book', - book: 'application/book', - box: 'application/vnd.previewsystems.box', - boz: 'application/x-bzip2', - bsh: 'application/x-bsh', - btif: 'image/prs.btif', - bz: 'application/x-bzip', - bz2: 'application/x-bzip2', - c: ['text/plain', 'text/x-c'], - 'c++': 'text/plain', - c11amc: 'application/vnd.cluetrust.cartomobile-config', - c11amz: 'application/vnd.cluetrust.cartomobile-config-pkg', - c4g: 'application/vnd.clonk.c4group', - cab: 'application/vnd.ms-cab-compressed', - car: 'application/vnd.curl.car', - cat: ['application/vnd.ms-pkiseccat', 'application/vnd.ms-pki.seccat'], - cc: ['text/plain', 'text/x-c'], - ccad: 'application/clariscad', - cco: 'application/x-cocoa', - ccxml: 'application/ccxml+xml,', - cdbcmsg: 'application/vnd.contact.cmsg', - cdf: ['application/cdf', 'application/x-cdf', 'application/x-netcdf'], - cdkey: 'application/vnd.mediastation.cdkey', - cdmia: 'application/cdmi-capability', - cdmic: 'application/cdmi-container', - cdmid: 'application/cdmi-domain', - cdmio: 'application/cdmi-object', - cdmiq: 'application/cdmi-queue', - cdx: 'chemical/x-cdx', - cdxml: 'application/vnd.chemdraw+xml', - cdy: 'application/vnd.cinderella', - cer: ['application/pkix-cert', 'application/x-x509-ca-cert'], - cgm: 'image/cgm', - cha: 'application/x-chat', - chat: 'application/x-chat', - chm: 'application/vnd.ms-htmlhelp', - chrt: 'application/vnd.kde.kchart', - cif: 'chemical/x-cif', - cii: 'application/vnd.anser-web-certificate-issue-initiation', - cil: 'application/vnd.ms-artgalry', - cla: 'application/vnd.claymore', - class: [ - 'application/octet-stream', - 'application/java', - 'application/java-byte-code', - 'application/java-vm', - 'application/x-java-class', - ], - clkk: 'application/vnd.crick.clicker.keyboard', - clkp: 'application/vnd.crick.clicker.palette', - clkt: 'application/vnd.crick.clicker.template', - clkw: 'application/vnd.crick.clicker.wordbank', - clkx: 'application/vnd.crick.clicker', - clp: 'application/x-msclip', - cmc: 'application/vnd.cosmocaller', - cmdf: 'chemical/x-cmdf', - cml: 'chemical/x-cml', - cmp: 'application/vnd.yellowriver-custom-menu', - cmx: 'image/x-cmx', - cod: ['image/cis-cod', 'application/vnd.rim.cod'], - com: ['application/octet-stream', 'text/plain'], - conf: 'text/plain', - cpio: 'application/x-cpio', - cpp: 'text/x-c', - cpt: ['application/mac-compactpro', 'application/x-compactpro', 'application/x-cpt'], - crd: 'application/x-mscardfile', - crl: ['application/pkix-crl', 'application/pkcs-crl'], - crt: ['application/pkix-cert', 'application/x-x509-user-cert', 'application/x-x509-ca-cert'], - cryptonote: 'application/vnd.rig.cryptonote', - csh: ['text/x-script.csh', 'application/x-csh'], - csml: 'chemical/x-csml', - csp: 'application/vnd.commonspace', - css: ['text/css', 'application/x-pointplus'], - csv: 'text/csv', - cu: 'application/cu-seeme', - curl: 'text/vnd.curl', - cww: 'application/prs.cww', - cxx: 'text/plain', - dae: 'model/vnd.collada+xml', - daf: 'application/vnd.mobius.daf', - davmount: 'application/davmount+xml', - dcr: 'application/x-director', - dcurl: 'text/vnd.curl.dcurl', - dd2: 'application/vnd.oma.dd2+xml', - ddd: 'application/vnd.fujixerox.ddd', - deb: 'application/x-debian-package', - deepv: 'application/x-deepv', - def: 'text/plain', - der: 'application/x-x509-ca-cert', - dfac: 'application/vnd.dreamfactory', - dif: 'video/x-dv', - dir: 'application/x-director', - dis: 'application/vnd.mobius.dis', - djvu: 'image/vnd.djvu', - dl: ['video/dl', 'video/x-dl'], - dll: 'application/x-msdownload', - dms: 'application/octet-stream', - dna: 'application/vnd.dna', - doc: 'application/msword', - docm: 'application/vnd.ms-word.document.macroenabled.12', - docx: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - dot: 'application/msword', - dotm: 'application/vnd.ms-word.template.macroenabled.12', - dotx: 'application/vnd.openxmlformats-officedocument.wordprocessingml.template', - dp: ['application/commonground', 'application/vnd.osgi.dp'], - dpg: 'application/vnd.dpgraph', - dra: 'audio/vnd.dra', - drw: 'application/drafting', - dsc: 'text/prs.lines.tag', - dssc: 'application/dssc+der', - dtb: 'application/x-dtbook+xml', - dtd: 'application/xml-dtd', - dts: 'audio/vnd.dts', - dtshd: 'audio/vnd.dts.hd', - dump: 'application/octet-stream', - dv: 'video/x-dv', - dvi: 'application/x-dvi', - dwf: ['model/vnd.dwf', 'drawing/x-dwf'], - dwg: ['application/acad', 'image/vnd.dwg', 'image/x-dwg'], - dxf: ['application/dxf', 'image/vnd.dwg', 'image/vnd.dxf', 'image/x-dwg'], - dxp: 'application/vnd.spotfire.dxp', - dxr: 'application/x-director', - ecelp4800: 'audio/vnd.nuera.ecelp4800', - ecelp7470: 'audio/vnd.nuera.ecelp7470', - ecelp9600: 'audio/vnd.nuera.ecelp9600', - edm: 'application/vnd.novadigm.edm', - edx: 'application/vnd.novadigm.edx', - efif: 'application/vnd.picsel', - ei6: 'application/vnd.pg.osasli', - el: 'text/x-script.elisp', - elc: ['application/x-elc', 'application/x-bytecode.elisp'], - eml: 'message/rfc822', - emma: 'application/emma+xml', - env: 'application/x-envoy', - eol: 'audio/vnd.digital-winds', - eot: 'application/vnd.ms-fontobject', - eps: 'application/postscript', - epub: 'application/epub+zip', - es: ['application/ecmascript', 'application/x-esrehber'], - es3: 'application/vnd.eszigno3+xml', - esf: 'application/vnd.epson.esf', - etx: 'text/x-setext', - evy: ['application/envoy', 'application/x-envoy'], - exe: ['application/octet-stream', 'application/x-msdownload'], - exi: 'application/exi', - ext: 'application/vnd.novadigm.ext', - ez2: 'application/vnd.ezpix-album', - ez3: 'application/vnd.ezpix-package', - f: ['text/plain', 'text/x-fortran'], - f4v: 'video/x-f4v', - f77: 'text/x-fortran', - f90: ['text/plain', 'text/x-fortran'], - fbs: 'image/vnd.fastbidsheet', - fcs: 'application/vnd.isac.fcs', - fdf: 'application/vnd.fdf', - fe_launch: 'application/vnd.denovo.fcselayout-link', - fg5: 'application/vnd.fujitsu.oasysgp', - fh: 'image/x-freehand', - fif: ['application/fractals', 'image/fif'], - fig: 'application/x-xfig', - fli: ['video/fli', 'video/x-fli'], - flo: ['image/florian', 'application/vnd.micrografx.flo'], - flr: 'x-world/x-vrml', - flv: 'video/x-flv', - flw: 'application/vnd.kde.kivio', - flx: 'text/vnd.fmi.flexstor', - fly: 'text/vnd.fly', - fm: 'application/vnd.framemaker', - fmf: 'video/x-atomic3d-feature', - fnc: 'application/vnd.frogans.fnc', - for: ['text/plain', 'text/x-fortran'], - fpx: ['image/vnd.fpx', 'image/vnd.net-fpx'], - frl: 'application/freeloader', - fsc: 'application/vnd.fsc.weblaunch', - fst: 'image/vnd.fst', - ftc: 'application/vnd.fluxtime.clip', - fti: 'application/vnd.anser-web-funds-transfer-initiation', - funk: 'audio/make', - fvt: 'video/vnd.fvt', - fxp: 'application/vnd.adobe.fxp', - fzs: 'application/vnd.fuzzysheet', - g: 'text/plain', - g2w: 'application/vnd.geoplan', - g3: 'image/g3fax', - g3w: 'application/vnd.geospace', - gac: 'application/vnd.groove-account', - gdl: 'model/vnd.gdl', - geo: 'application/vnd.dynageo', - gex: 'application/vnd.geometry-explorer', - ggb: 'application/vnd.geogebra.file', - ggt: 'application/vnd.geogebra.tool', - ghf: 'application/vnd.groove-help', - gif: 'image/gif', - gim: 'application/vnd.groove-identity-message', - gl: ['video/gl', 'video/x-gl'], - gmx: 'application/vnd.gmx', - gnumeric: 'application/x-gnumeric', - gph: 'application/vnd.flographit', - gqf: 'application/vnd.grafeq', - gram: 'application/srgs', - grv: 'application/vnd.groove-injector', - grxml: 'application/srgs+xml', - gsd: 'audio/x-gsm', - gsf: 'application/x-font-ghostscript', - gsm: 'audio/x-gsm', - gsp: 'application/x-gsp', - gss: 'application/x-gss', - gtar: 'application/x-gtar', - gtm: 'application/vnd.groove-tool-message', - gtw: 'model/vnd.gtw', - gv: 'text/vnd.graphviz', - gxt: 'application/vnd.geonext', - gz: ['application/x-gzip', 'application/x-compressed'], - gzip: ['multipart/x-gzip', 'application/x-gzip'], - h: ['text/plain', 'text/x-h'], - h261: 'video/h261', - h263: 'video/h263', - h264: 'video/h264', - hal: 'application/vnd.hal+xml', - hbci: 'application/vnd.hbci', - hdf: 'application/x-hdf', - help: 'application/x-helpfile', - hgl: 'application/vnd.hp-hpgl', - hh: ['text/plain', 'text/x-h'], - hlb: 'text/x-script', - hlp: ['application/winhlp', 'application/hlp', 'application/x-helpfile', 'application/x-winhelp'], - hpg: 'application/vnd.hp-hpgl', - hpgl: 'application/vnd.hp-hpgl', - hpid: 'application/vnd.hp-hpid', - hps: 'application/vnd.hp-hps', - hqx: [ - 'application/mac-binhex40', - 'application/binhex', - 'application/binhex4', - 'application/mac-binhex', - 'application/x-binhex40', - 'application/x-mac-binhex40', - ], - hta: 'application/hta', - htc: 'text/x-component', - htke: 'application/vnd.kenameaapp', - htm: 'text/html', - html: 'text/html', - htmls: 'text/html', - htt: 'text/webviewhtml', - htx: 'text/html', - hvd: 'application/vnd.yamaha.hv-dic', - hvp: 'application/vnd.yamaha.hv-voice', - hvs: 'application/vnd.yamaha.hv-script', - i2g: 'application/vnd.intergeo', - icc: 'application/vnd.iccprofile', - ice: 'x-conference/x-cooltalk', - ico: 'image/x-icon', - ics: 'text/calendar', - idc: 'text/plain', - ief: 'image/ief', - iefs: 'image/ief', - ifm: 'application/vnd.shana.informed.formdata', - iges: ['application/iges', 'model/iges'], - igl: 'application/vnd.igloader', - igm: 'application/vnd.insors.igm', - igs: ['application/iges', 'model/iges'], - igx: 'application/vnd.micrografx.igx', - iif: 'application/vnd.shana.informed.interchange', - iii: 'application/x-iphone', - ima: 'application/x-ima', - imap: 'application/x-httpd-imap', - imp: 'application/vnd.accpac.simply.imp', - ims: 'application/vnd.ms-ims', - inf: 'application/inf', - ins: ['application/x-internet-signup', 'application/x-internett-signup'], - ip: 'application/x-ip2', - ipfix: 'application/ipfix', - ipk: 'application/vnd.shana.informed.package', - irm: 'application/vnd.ibm.rights-management', - irp: 'application/vnd.irepository.package+xml', - isp: 'application/x-internet-signup', - isu: 'video/x-isvideo', - it: 'audio/it', - itp: 'application/vnd.shana.informed.formtemplate', - iv: 'application/x-inventor', - ivp: 'application/vnd.immervision-ivp', - ivr: 'i-world/i-vrml', - ivu: 'application/vnd.immervision-ivu', - ivy: 'application/x-livescreen', - jad: 'text/vnd.sun.j2me.app-descriptor', - jam: ['application/vnd.jam', 'audio/x-jam'], - jar: 'application/java-archive', - jav: ['text/plain', 'text/x-java-source'], - java: ['text/plain', 'text/x-java-source,java', 'text/x-java-source'], - jcm: 'application/x-java-commerce', - jfif: ['image/pipeg', 'image/jpeg', 'image/pjpeg'], - 'jfif-tbnl': 'image/jpeg', - jisp: 'application/vnd.jisp', - jlt: 'application/vnd.hp-jlyt', - jnlp: 'application/x-java-jnlp-file', - joda: 'application/vnd.joost.joda-archive', - jpe: ['image/jpeg', 'image/pjpeg'], - jpeg: ['image/jpeg', 'image/pjpeg'], - jpg: ['image/jpeg', 'image/pjpeg'], - jpgv: 'video/jpeg', - jpm: 'video/jpm', - jps: 'image/x-jps', - js: [ - 'application/javascript', - 'application/ecmascript', - 'text/javascript', - 'text/ecmascript', - 'application/x-javascript', - ], - json: 'application/json', - jut: 'image/jutvision', - kar: ['audio/midi', 'music/x-karaoke'], - karbon: 'application/vnd.kde.karbon', - kfo: 'application/vnd.kde.kformula', - kia: 'application/vnd.kidspiration', - kml: 'application/vnd.google-earth.kml+xml', - kmz: 'application/vnd.google-earth.kmz', - kne: 'application/vnd.kinar', - kon: 'application/vnd.kde.kontour', - kpr: 'application/vnd.kde.kpresenter', - ksh: ['application/x-ksh', 'text/x-script.ksh'], - ksp: 'application/vnd.kde.kspread', - ktx: 'image/ktx', - ktz: 'application/vnd.kahootz', - kwd: 'application/vnd.kde.kword', - la: ['audio/nspaudio', 'audio/x-nspaudio'], - lam: 'audio/x-liveaudio', - lasxml: 'application/vnd.las.las+xml', - latex: 'application/x-latex', - lbd: 'application/vnd.llamagraphics.life-balance.desktop', - lbe: 'application/vnd.llamagraphics.life-balance.exchange+xml', - les: 'application/vnd.hhe.lesson-player', - lha: ['application/octet-stream', 'application/lha', 'application/x-lha'], - lhx: 'application/octet-stream', - link66: 'application/vnd.route66.link66+xml', - list: 'text/plain', - lma: ['audio/nspaudio', 'audio/x-nspaudio'], - log: 'text/plain', - lrm: 'application/vnd.ms-lrm', - lsf: 'video/x-la-asf', - lsp: ['application/x-lisp', 'text/x-script.lisp'], - lst: 'text/plain', - lsx: ['video/x-la-asf', 'text/x-la-asf'], - ltf: 'application/vnd.frogans.ltf', - ltx: 'application/x-latex', - lvp: 'audio/vnd.lucent.voice', - lwp: 'application/vnd.lotus-wordpro', - lzh: ['application/octet-stream', 'application/x-lzh'], - lzx: ['application/lzx', 'application/octet-stream', 'application/x-lzx'], - m: ['text/plain', 'text/x-m'], - m13: 'application/x-msmediaview', - m14: 'application/x-msmediaview', - m1v: 'video/mpeg', - m21: 'application/mp21', - m2a: 'audio/mpeg', - m2v: 'video/mpeg', - m3u: ['audio/x-mpegurl', 'audio/x-mpequrl'], - m3u8: 'application/vnd.apple.mpegurl', - m4v: 'video/x-m4v', - ma: 'application/mathematica', - mads: 'application/mads+xml', - mag: 'application/vnd.ecowin.chart', - man: 'application/x-troff-man', - map: 'application/x-navimap', - mar: 'text/plain', - mathml: 'application/mathml+xml', - mbd: 'application/mbedlet', - mbk: 'application/vnd.mobius.mbk', - mbox: 'application/mbox', - mc$: 'application/x-magic-cap-package-1.0', - mc1: 'application/vnd.medcalcdata', - mcd: ['application/mcad', 'application/vnd.mcd', 'application/x-mathcad'], - mcf: ['image/vasa', 'text/mcf'], - mcp: 'application/netmc', - mcurl: 'text/vnd.curl.mcurl', - mdb: 'application/x-msaccess', - mdi: 'image/vnd.ms-modi', - me: 'application/x-troff-me', - meta4: 'application/metalink4+xml', - mets: 'application/mets+xml', - mfm: 'application/vnd.mfmp', - mgp: 'application/vnd.osgeo.mapguide.package', - mgz: 'application/vnd.proteus.magazine', - mht: 'message/rfc822', - mhtml: 'message/rfc822', - mid: [ - 'audio/mid', - 'audio/midi', - 'music/crescendo', - 'x-music/x-midi', - 'audio/x-midi', - 'application/x-midi', - 'audio/x-mid', - ], - midi: ['audio/midi', 'music/crescendo', 'x-music/x-midi', 'audio/x-midi', 'application/x-midi', 'audio/x-mid'], - mif: ['application/vnd.mif', 'application/x-mif', 'application/x-frame'], - mime: ['message/rfc822', 'www/mime'], - mj2: 'video/mj2', - mjf: 'audio/x-vnd.audioexplosion.mjuicemediafile', - mjpg: 'video/x-motion-jpeg', - mlp: 'application/vnd.dolby.mlp', - mm: ['application/base64', 'application/x-meme'], - mmd: 'application/vnd.chipnuts.karaoke-mmd', - mme: 'application/base64', - mmf: 'application/vnd.smaf', - mmr: 'image/vnd.fujixerox.edmics-mmr', - mny: 'application/x-msmoney', - mod: ['audio/mod', 'audio/x-mod'], - mods: 'application/mods+xml', - moov: 'video/quicktime', - mov: 'video/quicktime', - movie: 'video/x-sgi-movie', - mp2: ['video/mpeg', 'audio/mpeg', 'video/x-mpeg', 'audio/x-mpeg', 'video/x-mpeq2a'], - mp3: ['audio/mpeg', 'audio/mpeg3', 'video/mpeg', 'audio/x-mpeg-3', 'video/x-mpeg'], - mp4: ['video/mp4', 'application/mp4'], - mp4a: 'audio/mp4', - mpa: ['video/mpeg', 'audio/mpeg'], - mpc: ['application/vnd.mophun.certificate', 'application/x-project'], - mpe: 'video/mpeg', - mpeg: 'video/mpeg', - mpg: ['video/mpeg', 'audio/mpeg'], - mpga: 'audio/mpeg', - mpkg: 'application/vnd.apple.installer+xml', - mpm: 'application/vnd.blueice.multipass', - mpn: 'application/vnd.mophun.application', - mpp: 'application/vnd.ms-project', - mpt: 'application/x-project', - mpv: 'application/x-project', - mpv2: 'video/mpeg', - mpx: 'application/x-project', - mpy: 'application/vnd.ibm.minipay', - mqy: 'application/vnd.mobius.mqy', - mrc: 'application/marc', - mrcx: 'application/marcxml+xml', - ms: 'application/x-troff-ms', - mscml: 'application/mediaservercontrol+xml', - mseq: 'application/vnd.mseq', - msf: 'application/vnd.epson.msf', - msg: 'application/vnd.ms-outlook', - msh: 'model/mesh', - msl: 'application/vnd.mobius.msl', - msty: 'application/vnd.muvee.style', - mts: 'model/vnd.mts', - mus: 'application/vnd.musician', - musicxml: 'application/vnd.recordare.musicxml+xml', - mv: 'video/x-sgi-movie', - mvb: 'application/x-msmediaview', - mwf: 'application/vnd.mfer', - mxf: 'application/mxf', - mxl: 'application/vnd.recordare.musicxml', - mxml: 'application/xv+xml', - mxs: 'application/vnd.triscape.mxs', - mxu: 'video/vnd.mpegurl', - my: 'audio/make', - mzz: 'application/x-vnd.audioexplosion.mzz', - 'n-gage': 'application/vnd.nokia.n-gage.symbian.install', - n3: 'text/n3', - nap: 'image/naplps', - naplps: 'image/naplps', - nbp: 'application/vnd.wolfram.player', - nc: 'application/x-netcdf', - ncm: 'application/vnd.nokia.configuration-message', - ncx: 'application/x-dtbncx+xml', - ngdat: 'application/vnd.nokia.n-gage.data', - nif: 'image/x-niff', - niff: 'image/x-niff', - nix: 'application/x-mix-transfer', - nlu: 'application/vnd.neurolanguage.nlu', - nml: 'application/vnd.enliven', - nnd: 'application/vnd.noblenet-directory', - nns: 'application/vnd.noblenet-sealer', - nnw: 'application/vnd.noblenet-web', - npx: 'image/vnd.net-fpx', - nsc: 'application/x-conference', - nsf: 'application/vnd.lotus-notes', - nvd: 'application/x-navidoc', - nws: 'message/rfc822', - o: 'application/octet-stream', - oa2: 'application/vnd.fujitsu.oasys2', - oa3: 'application/vnd.fujitsu.oasys3', - oas: 'application/vnd.fujitsu.oasys', - obd: 'application/x-msbinder', - oda: 'application/oda', - odb: 'application/vnd.oasis.opendocument.database', - odc: 'application/vnd.oasis.opendocument.chart', - odf: 'application/vnd.oasis.opendocument.formula', - odft: 'application/vnd.oasis.opendocument.formula-template', - odg: 'application/vnd.oasis.opendocument.graphics', - odi: 'application/vnd.oasis.opendocument.image', - odm: 'application/vnd.oasis.opendocument.text-master', - odp: 'application/vnd.oasis.opendocument.presentation', - ods: 'application/vnd.oasis.opendocument.spreadsheet', - odt: 'application/vnd.oasis.opendocument.text', - oga: 'audio/ogg', - ogv: 'video/ogg', - ogx: 'application/ogg', - omc: 'application/x-omc', - omcd: 'application/x-omcdatamaker', - omcr: 'application/x-omcregerator', - onetoc: 'application/onenote', - opf: 'application/oebps-package+xml', - org: 'application/vnd.lotus-organizer', - osf: 'application/vnd.yamaha.openscoreformat', - osfpvg: 'application/vnd.yamaha.openscoreformat.osfpvg+xml', - otc: 'application/vnd.oasis.opendocument.chart-template', - otf: 'application/x-font-otf', - otg: 'application/vnd.oasis.opendocument.graphics-template', - oth: 'application/vnd.oasis.opendocument.text-web', - oti: 'application/vnd.oasis.opendocument.image-template', - otp: 'application/vnd.oasis.opendocument.presentation-template', - ots: 'application/vnd.oasis.opendocument.spreadsheet-template', - ott: 'application/vnd.oasis.opendocument.text-template', - oxt: 'application/vnd.openofficeorg.extension', - p: 'text/x-pascal', - p10: ['application/pkcs10', 'application/x-pkcs10'], - p12: ['application/pkcs-12', 'application/x-pkcs12'], - p7a: 'application/x-pkcs7-signature', - p7b: 'application/x-pkcs7-certificates', - p7c: ['application/pkcs7-mime', 'application/x-pkcs7-mime'], - p7m: ['application/pkcs7-mime', 'application/x-pkcs7-mime'], - p7r: 'application/x-pkcs7-certreqresp', - p7s: ['application/pkcs7-signature', 'application/x-pkcs7-signature'], - p8: 'application/pkcs8', - par: 'text/plain-bas', - part: 'application/pro_eng', - pas: 'text/pascal', - paw: 'application/vnd.pawaafile', - pbd: 'application/vnd.powerbuilder6', - pbm: 'image/x-portable-bitmap', - pcf: 'application/x-font-pcf', - pcl: ['application/vnd.hp-pcl', 'application/x-pcl'], - pclxl: 'application/vnd.hp-pclxl', - pct: 'image/x-pict', - pcurl: 'application/vnd.curl.pcurl', - pcx: 'image/x-pcx', - pdb: ['application/vnd.palm', 'chemical/x-pdb'], - pdf: 'application/pdf', - pfa: 'application/x-font-type1', - pfr: 'application/font-tdpfr', - pfunk: ['audio/make', 'audio/make.my.funk'], - pfx: 'application/x-pkcs12', - pgm: ['image/x-portable-graymap', 'image/x-portable-greymap'], - pgn: 'application/x-chess-pgn', - pgp: 'application/pgp-signature', - pic: ['image/pict', 'image/x-pict'], - pict: 'image/pict', - pkg: 'application/x-newton-compatible-pkg', - pki: 'application/pkixcmp', - pkipath: 'application/pkix-pkipath', - pko: ['application/ynd.ms-pkipko', 'application/vnd.ms-pki.pko'], - pl: ['text/plain', 'text/x-script.perl'], - plb: 'application/vnd.3gpp.pic-bw-large', - plc: 'application/vnd.mobius.plc', - plf: 'application/vnd.pocketlearn', - pls: 'application/pls+xml', - plx: 'application/x-pixclscript', - pm: ['text/x-script.perl-module', 'image/x-xpixmap'], - pm4: 'application/x-pagemaker', - pm5: 'application/x-pagemaker', - pma: 'application/x-perfmon', - pmc: 'application/x-perfmon', - pml: ['application/vnd.ctc-posml', 'application/x-perfmon'], - pmr: 'application/x-perfmon', - pmw: 'application/x-perfmon', - png: 'image/png', - pnm: ['application/x-portable-anymap', 'image/x-portable-anymap'], - portpkg: 'application/vnd.macports.portpkg', - pot: ['application/vnd.ms-powerpoint', 'application/mspowerpoint'], - potm: 'application/vnd.ms-powerpoint.template.macroenabled.12', - potx: 'application/vnd.openxmlformats-officedocument.presentationml.template', - pov: 'model/x-pov', - ppa: 'application/vnd.ms-powerpoint', - ppam: 'application/vnd.ms-powerpoint.addin.macroenabled.12', - ppd: 'application/vnd.cups-ppd', - ppm: 'image/x-portable-pixmap', - pps: ['application/vnd.ms-powerpoint', 'application/mspowerpoint'], - ppsm: 'application/vnd.ms-powerpoint.slideshow.macroenabled.12', - ppsx: 'application/vnd.openxmlformats-officedocument.presentationml.slideshow', - ppt: [ - 'application/vnd.ms-powerpoint', - 'application/mspowerpoint', - 'application/powerpoint', - 'application/x-mspowerpoint', - ], - pptm: 'application/vnd.ms-powerpoint.presentation.macroenabled.12', - pptx: 'application/vnd.openxmlformats-officedocument.presentationml.presentation', - ppz: 'application/mspowerpoint', - prc: 'application/x-mobipocket-ebook', - pre: ['application/vnd.lotus-freelance', 'application/x-freelance'], - prf: 'application/pics-rules', - prt: 'application/pro_eng', - ps: 'application/postscript', - psb: 'application/vnd.3gpp.pic-bw-small', - psd: ['application/octet-stream', 'image/vnd.adobe.photoshop'], - psf: 'application/x-font-linux-psf', - pskcxml: 'application/pskc+xml', - ptid: 'application/vnd.pvi.ptid1', - pub: 'application/x-mspublisher', - pvb: 'application/vnd.3gpp.pic-bw-var', - pvu: 'paleovu/x-pv', - pwn: 'application/vnd.3m.post-it-notes', - pwz: 'application/vnd.ms-powerpoint', - py: 'text/x-script.phyton', - pya: 'audio/vnd.ms-playready.media.pya', - pyc: 'applicaiton/x-bytecode.python', - pyv: 'video/vnd.ms-playready.media.pyv', - qam: 'application/vnd.epson.quickanime', - qbo: 'application/vnd.intu.qbo', - qcp: 'audio/vnd.qcelp', - qd3: 'x-world/x-3dmf', - qd3d: 'x-world/x-3dmf', - qfx: 'application/vnd.intu.qfx', - qif: 'image/x-quicktime', - qps: 'application/vnd.publishare-delta-tree', - qt: 'video/quicktime', - qtc: 'video/x-qtc', - qti: 'image/x-quicktime', - qtif: 'image/x-quicktime', - qxd: 'application/vnd.quark.quarkxpress', - ra: ['audio/x-realaudio', 'audio/x-pn-realaudio', 'audio/x-pn-realaudio-plugin'], - ram: 'audio/x-pn-realaudio', - rar: 'application/x-rar-compressed', - ras: ['image/cmu-raster', 'application/x-cmu-raster', 'image/x-cmu-raster'], - rast: 'image/cmu-raster', - rcprofile: 'application/vnd.ipunplugged.rcprofile', - rdf: 'application/rdf+xml', - rdz: 'application/vnd.data-vision.rdz', - rep: 'application/vnd.businessobjects', - res: 'application/x-dtbresource+xml', - rexx: 'text/x-script.rexx', - rf: 'image/vnd.rn-realflash', - rgb: 'image/x-rgb', - rif: 'application/reginfo+xml', - rip: 'audio/vnd.rip', - rl: 'application/resource-lists+xml', - rlc: 'image/vnd.fujixerox.edmics-rlc', - rld: 'application/resource-lists-diff+xml', - rm: ['application/vnd.rn-realmedia', 'audio/x-pn-realaudio'], - rmi: 'audio/mid', - rmm: 'audio/x-pn-realaudio', - rmp: ['audio/x-pn-realaudio-plugin', 'audio/x-pn-realaudio'], - rms: 'application/vnd.jcp.javame.midlet-rms', - rnc: 'application/relax-ng-compact-syntax', - rng: ['application/ringing-tones', 'application/vnd.nokia.ringing-tone'], - rnx: 'application/vnd.rn-realplayer', - roff: 'application/x-troff', - rp: 'image/vnd.rn-realpix', - rp9: 'application/vnd.cloanto.rp9', - rpm: 'audio/x-pn-realaudio-plugin', - rpss: 'application/vnd.nokia.radio-presets', - rpst: 'application/vnd.nokia.radio-preset', - rq: 'application/sparql-query', - rs: 'application/rls-services+xml', - rsd: 'application/rsd+xml', - rt: ['text/richtext', 'text/vnd.rn-realtext'], - rtf: ['application/rtf', 'text/richtext', 'application/x-rtf'], - rtx: ['text/richtext', 'application/rtf'], - rv: 'video/vnd.rn-realvideo', - s: 'text/x-asm', - s3m: 'audio/s3m', - saf: 'application/vnd.yamaha.smaf-audio', - saveme: 'application/octet-stream', - sbk: 'application/x-tbook', - sbml: 'application/sbml+xml', - sc: 'application/vnd.ibm.secure-container', - scd: 'application/x-msschedule', - scm: [ - 'application/vnd.lotus-screencam', - 'video/x-scm', - 'text/x-script.guile', - 'application/x-lotusscreencam', - 'text/x-script.scheme', - ], - scq: 'application/scvp-cv-request', - scs: 'application/scvp-cv-response', - sct: 'text/scriptlet', - scurl: 'text/vnd.curl.scurl', - sda: 'application/vnd.stardivision.draw', - sdc: 'application/vnd.stardivision.calc', - sdd: 'application/vnd.stardivision.impress', - sdkm: 'application/vnd.solent.sdkm+xml', - sdml: 'text/plain', - sdp: ['application/sdp', 'application/x-sdp'], - sdr: 'application/sounder', - sdw: 'application/vnd.stardivision.writer', - sea: ['application/sea', 'application/x-sea'], - see: 'application/vnd.seemail', - seed: 'application/vnd.fdsn.seed', - sema: 'application/vnd.sema', - semd: 'application/vnd.semd', - semf: 'application/vnd.semf', - ser: 'application/java-serialized-object', - set: 'application/set', - setpay: 'application/set-payment-initiation', - setreg: 'application/set-registration-initiation', - 'sfd-hdstx': 'application/vnd.hydrostatix.sof-data', - sfs: 'application/vnd.spotfire.sfs', - sgl: 'application/vnd.stardivision.writer-global', - sgm: ['text/sgml', 'text/x-sgml'], - sgml: ['text/sgml', 'text/x-sgml'], - sh: ['application/x-shar', 'application/x-bsh', 'application/x-sh', 'text/x-script.sh'], - shar: ['application/x-bsh', 'application/x-shar'], - shf: 'application/shf+xml', - shtml: ['text/html', 'text/x-server-parsed-html'], - sid: 'audio/x-psid', - sis: 'application/vnd.symbian.install', - sit: ['application/x-stuffit', 'application/x-sit'], - sitx: 'application/x-stuffitx', - skd: 'application/x-koan', - skm: 'application/x-koan', - skp: ['application/vnd.koan', 'application/x-koan'], - skt: 'application/x-koan', - sl: 'application/x-seelogo', - sldm: 'application/vnd.ms-powerpoint.slide.macroenabled.12', - sldx: 'application/vnd.openxmlformats-officedocument.presentationml.slide', - slt: 'application/vnd.epson.salt', - sm: 'application/vnd.stepmania.stepchart', - smf: 'application/vnd.stardivision.math', - smi: ['application/smil', 'application/smil+xml'], - smil: 'application/smil', - snd: ['audio/basic', 'audio/x-adpcm'], - snf: 'application/x-font-snf', - sol: 'application/solids', - spc: ['text/x-speech', 'application/x-pkcs7-certificates'], - spf: 'application/vnd.yamaha.smaf-phrase', - spl: ['application/futuresplash', 'application/x-futuresplash'], - spot: 'text/vnd.in3d.spot', - spp: 'application/scvp-vp-response', - spq: 'application/scvp-vp-request', - spr: 'application/x-sprite', - sprite: 'application/x-sprite', - src: 'application/x-wais-source', - sru: 'application/sru+xml', - srx: 'application/sparql-results+xml', - sse: 'application/vnd.kodak-descriptor', - ssf: 'application/vnd.epson.ssf', - ssi: 'text/x-server-parsed-html', - ssm: 'application/streamingmedia', - ssml: 'application/ssml+xml', - sst: ['application/vnd.ms-pkicertstore', 'application/vnd.ms-pki.certstore'], - st: 'application/vnd.sailingtracker.track', - stc: 'application/vnd.sun.xml.calc.template', - std: 'application/vnd.sun.xml.draw.template', - step: 'application/step', - stf: 'application/vnd.wt.stf', - sti: 'application/vnd.sun.xml.impress.template', - stk: 'application/hyperstudio', - stl: ['application/vnd.ms-pkistl', 'application/sla', 'application/vnd.ms-pki.stl', 'application/x-navistyle'], - stm: 'text/html', - stp: 'application/step', - str: 'application/vnd.pg.format', - stw: 'application/vnd.sun.xml.writer.template', - sub: 'image/vnd.dvb.subtitle', - sus: 'application/vnd.sus-calendar', - sv4cpio: 'application/x-sv4cpio', - sv4crc: 'application/x-sv4crc', - svc: 'application/vnd.dvb.service', - svd: 'application/vnd.svd', - svf: ['image/vnd.dwg', 'image/x-dwg'], - svg: 'image/svg+xml', - svr: ['x-world/x-svr', 'application/x-world'], - swf: 'application/x-shockwave-flash', - swi: 'application/vnd.aristanetworks.swi', - sxc: 'application/vnd.sun.xml.calc', - sxd: 'application/vnd.sun.xml.draw', - sxg: 'application/vnd.sun.xml.writer.global', - sxi: 'application/vnd.sun.xml.impress', - sxm: 'application/vnd.sun.xml.math', - sxw: 'application/vnd.sun.xml.writer', - t: ['text/troff', 'application/x-troff'], - talk: 'text/x-speech', - tao: 'application/vnd.tao.intent-module-archive', - tar: 'application/x-tar', - tbk: ['application/toolbook', 'application/x-tbook'], - tcap: 'application/vnd.3gpp2.tcap', - tcl: ['text/x-script.tcl', 'application/x-tcl'], - tcsh: 'text/x-script.tcsh', - teacher: 'application/vnd.smart.teacher', - tei: 'application/tei+xml', - tex: 'application/x-tex', - texi: 'application/x-texinfo', - texinfo: 'application/x-texinfo', - text: ['application/plain', 'text/plain'], - tfi: 'application/thraud+xml', - tfm: 'application/x-tex-tfm', - tgz: ['application/gnutar', 'application/x-compressed'], - thmx: 'application/vnd.ms-officetheme', - tif: ['image/tiff', 'image/x-tiff'], - tiff: ['image/tiff', 'image/x-tiff'], - tmo: 'application/vnd.tmobile-livetv', - torrent: 'application/x-bittorrent', - tpl: 'application/vnd.groove-tool-template', - tpt: 'application/vnd.trid.tpt', - tr: 'application/x-troff', - tra: 'application/vnd.trueapp', - trm: 'application/x-msterminal', - tsd: 'application/timestamped-data', - tsi: 'audio/tsp-audio', - tsp: ['application/dsptype', 'audio/tsplayer'], - tsv: 'text/tab-separated-values', - ttf: 'application/x-font-ttf', - ttl: 'text/turtle', - turbot: 'image/florian', - twd: 'application/vnd.simtech-mindmapper', - txd: 'application/vnd.genomatix.tuxedo', - txf: 'application/vnd.mobius.txf', - txt: 'text/plain', - ufd: 'application/vnd.ufdl', - uil: 'text/x-uil', - uls: 'text/iuls', - umj: 'application/vnd.umajin', - uni: 'text/uri-list', - unis: 'text/uri-list', - unityweb: 'application/vnd.unity', - unv: 'application/i-deas', - uoml: 'application/vnd.uoml+xml', - uri: 'text/uri-list', - uris: 'text/uri-list', - ustar: ['application/x-ustar', 'multipart/x-ustar'], - utz: 'application/vnd.uiq.theme', - uu: ['application/octet-stream', 'text/x-uuencode'], - uue: 'text/x-uuencode', - uva: 'audio/vnd.dece.audio', - uvh: 'video/vnd.dece.hd', - uvi: 'image/vnd.dece.graphic', - uvm: 'video/vnd.dece.mobile', - uvp: 'video/vnd.dece.pd', - uvs: 'video/vnd.dece.sd', - uvu: 'video/vnd.uvvu.mp4', - uvv: 'video/vnd.dece.video', - vcd: 'application/x-cdlink', - vcf: 'text/x-vcard', - vcg: 'application/vnd.groove-vcard', - vcs: 'text/x-vcalendar', - vcx: 'application/vnd.vcx', - vda: 'application/vda', - vdo: 'video/vdo', - vew: 'application/groupwise', - vis: 'application/vnd.visionary', - viv: ['video/vivo', 'video/vnd.vivo'], - vivo: ['video/vivo', 'video/vnd.vivo'], - vmd: 'application/vocaltec-media-desc', - vmf: 'application/vocaltec-media-file', - voc: ['audio/voc', 'audio/x-voc'], - vos: 'video/vosaic', - vox: 'audio/voxware', - vqe: 'audio/x-twinvq-plugin', - vqf: 'audio/x-twinvq', - vql: 'audio/x-twinvq-plugin', - vrml: ['model/vrml', 'x-world/x-vrml', 'application/x-vrml'], - vrt: 'x-world/x-vrt', - vsd: ['application/vnd.visio', 'application/x-visio'], - vsf: 'application/vnd.vsf', - vst: 'application/x-visio', - vsw: 'application/x-visio', - vtu: 'model/vnd.vtu', - vxml: 'application/voicexml+xml', - w60: 'application/wordperfect6.0', - w61: 'application/wordperfect6.1', - w6w: 'application/msword', - wad: 'application/x-doom', - wav: ['audio/wav', 'audio/x-wav'], - wax: 'audio/x-ms-wax', - wb1: 'application/x-qpro', - wbmp: 'image/vnd.wap.wbmp', - wbs: 'application/vnd.criticaltools.wbs+xml', - wbxml: 'application/vnd.wap.wbxml', - wcm: 'application/vnd.ms-works', - wdb: 'application/vnd.ms-works', - web: 'application/vnd.xara', - weba: 'audio/webm', - webm: 'video/webm', - webp: 'image/webp', - wg: 'application/vnd.pmi.widget', - wgt: 'application/widget', - wiz: 'application/msword', - wk1: 'application/x-123', - wks: 'application/vnd.ms-works', - wm: 'video/x-ms-wm', - wma: 'audio/x-ms-wma', - wmd: 'application/x-ms-wmd', - wmf: ['windows/metafile', 'application/x-msmetafile'], - wml: 'text/vnd.wap.wml', - wmlc: 'application/vnd.wap.wmlc', - wmls: 'text/vnd.wap.wmlscript', - wmlsc: 'application/vnd.wap.wmlscriptc', - wmv: 'video/x-ms-wmv', - wmx: 'video/x-ms-wmx', - wmz: 'application/x-ms-wmz', - woff: 'application/x-font-woff', - word: 'application/msword', - wp: 'application/wordperfect', - wp5: ['application/wordperfect', 'application/wordperfect6.0'], - wp6: 'application/wordperfect', - wpd: ['application/wordperfect', 'application/vnd.wordperfect', 'application/x-wpwin'], - wpl: 'application/vnd.ms-wpl', - wps: 'application/vnd.ms-works', - wq1: 'application/x-lotus', - wqd: 'application/vnd.wqd', - wri: ['application/mswrite', 'application/x-wri', 'application/x-mswrite'], - wrl: ['model/vrml', 'x-world/x-vrml', 'application/x-world'], - wrz: ['model/vrml', 'x-world/x-vrml'], - wsc: 'text/scriplet', - wsdl: 'application/wsdl+xml', - wspolicy: 'application/wspolicy+xml', - wsrc: 'application/x-wais-source', - wtb: 'application/vnd.webturbo', - wtk: 'application/x-wintalk', - wvx: 'video/x-ms-wvx', - 'x-png': 'image/png', - x3d: 'application/vnd.hzn-3d-crossword', - xaf: 'x-world/x-vrml', - xap: 'application/x-silverlight-app', - xar: 'application/vnd.xara', - xbap: 'application/x-ms-xbap', - xbd: 'application/vnd.fujixerox.docuworks.binder', - xbm: ['image/xbm', 'image/x-xbm', 'image/x-xbitmap'], - xdf: 'application/xcap-diff+xml', - xdm: 'application/vnd.syncml.dm+xml', - xdp: 'application/vnd.adobe.xdp+xml', - xdr: 'video/x-amt-demorun', - xdssc: 'application/dssc+xml', - xdw: 'application/vnd.fujixerox.docuworks', - xenc: 'application/xenc+xml', - xer: 'application/patch-ops-error+xml', - xfdf: 'application/vnd.adobe.xfdf', - xfdl: 'application/vnd.xfdl', - xgz: 'xgl/drawing', - xhtml: 'application/xhtml+xml', - xif: 'image/vnd.xiff', - xl: 'application/excel', - xla: ['application/vnd.ms-excel', 'application/excel', 'application/x-msexcel', 'application/x-excel'], - xlam: 'application/vnd.ms-excel.addin.macroenabled.12', - xlb: ['application/excel', 'application/vnd.ms-excel', 'application/x-excel'], - xlc: ['application/vnd.ms-excel', 'application/excel', 'application/x-excel'], - xld: ['application/excel', 'application/x-excel'], - xlk: ['application/excel', 'application/x-excel'], - xll: ['application/excel', 'application/vnd.ms-excel', 'application/x-excel'], - xlm: ['application/vnd.ms-excel', 'application/excel', 'application/x-excel'], - xls: ['application/vnd.ms-excel', 'application/excel', 'application/x-msexcel', 'application/x-excel'], - xlsb: 'application/vnd.ms-excel.sheet.binary.macroenabled.12', - xlsm: 'application/vnd.ms-excel.sheet.macroenabled.12', - xlsx: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', - xlt: ['application/vnd.ms-excel', 'application/excel', 'application/x-excel'], - xltm: 'application/vnd.ms-excel.template.macroenabled.12', - xltx: 'application/vnd.openxmlformats-officedocument.spreadsheetml.template', - xlv: ['application/excel', 'application/x-excel'], - xlw: ['application/vnd.ms-excel', 'application/excel', 'application/x-msexcel', 'application/x-excel'], - xm: 'audio/xm', - xml: ['application/xml', 'text/xml', 'application/atom+xml', 'application/rss+xml'], - xmz: 'xgl/movie', - xo: 'application/vnd.olpc-sugar', - xof: 'x-world/x-vrml', - xop: 'application/xop+xml', - xpi: 'application/x-xpinstall', - xpix: 'application/x-vnd.ls-xpix', - xpm: ['image/xpm', 'image/x-xpixmap'], - xpr: 'application/vnd.is-xpr', - xps: 'application/vnd.ms-xpsdocument', - xpw: 'application/vnd.intercon.formnet', - xslt: 'application/xslt+xml', - xsm: 'application/vnd.syncml+xml', - xspf: 'application/xspf+xml', - xsr: 'video/x-amt-showrun', - xul: 'application/vnd.mozilla.xul+xml', - xwd: ['image/x-xwd', 'image/x-xwindowdump'], - xyz: ['chemical/x-xyz', 'chemical/x-pdb'], - yang: 'application/yang', - yin: 'application/yin+xml', - z: ['application/x-compressed', 'application/x-compress'], - zaz: 'application/vnd.zzazz.deck+xml', - zip: ['application/zip', 'multipart/x-zip', 'application/x-zip-compressed', 'application/x-compressed'], - zir: 'application/vnd.zul', - zmm: 'application/vnd.handheld-entertainment+xml', - zoo: 'application/octet-stream', - zsh: 'text/x-script.zsh', - }; + var mimetypesExtensions = { + '': ['application/andrew-inset', 'application/pgp-encrypted'], + '*': 'application/octet-stream', + '123': 'application/vnd.lotus-1-2-3', + '323': 'text/h323', + '3dm': 'x-world/x-3dmf', + '3dmf': 'x-world/x-3dmf', + '3dml': 'text/vnd.in3d.3dml', + '3g2': 'video/3gpp2', + '3gp': 'video/3gpp', + '7z': 'application/x-7z-compressed', + 'a': 'application/octet-stream', + 'aab': 'application/x-authorware-bin', + 'aac': 'audio/x-aac', + 'aam': 'application/x-authorware-map', + 'aas': 'application/x-authorware-seg', + 'abc': 'text/vnd.abc', + 'abw': 'application/x-abiword', + 'ac': 'application/pkix-attr-cert', + 'acc': 'application/vnd.americandynamics.acc', + 'ace': 'application/x-ace-compressed', + 'acgi': 'text/html', + 'acu': 'application/vnd.acucobol', + 'acx': 'application/internet-property-stream', + 'adp': 'audio/adpcm', + 'aep': 'application/vnd.audiograph', + 'afl': 'video/animaflex', + 'afp': 'application/vnd.ibm.modcap', + 'ahead': 'application/vnd.ahead.space', + 'ai': 'application/postscript', + 'aif': ['audio/aiff', 'audio/x-aiff'], + 'aifc': ['audio/aiff', 'audio/x-aiff'], + 'aiff': ['audio/aiff', 'audio/x-aiff'], + 'aim': 'application/x-aim', + 'aip': 'text/x-audiosoft-intra', + 'air': 'application/vnd.adobe.air-application-installer-package+zip', + 'ait': 'application/vnd.dvb.ait', + 'ami': 'application/vnd.amiga.ami', + 'ani': 'application/x-navi-animation', + 'aos': 'application/x-nokia-9000-communicator-add-on-software', + 'apk': 'application/vnd.android.package-archive', + 'application': 'application/x-ms-application', + 'apr': 'application/vnd.lotus-approach', + 'aps': 'application/mime', + 'arc': 'application/octet-stream', + 'arj': ['application/arj', 'application/octet-stream'], + 'art': 'image/x-jg', + 'asf': 'video/x-ms-asf', + 'asm': 'text/x-asm', + 'aso': 'application/vnd.accpac.simply.aso', + 'asp': 'text/asp', + 'asr': 'video/x-ms-asf', + 'asx': ['video/x-ms-asf', 'application/x-mplayer2', 'video/x-ms-asf-plugin'], + 'atc': 'application/vnd.acucorp', + 'atomcat': 'application/atomcat+xml', + 'atomsvc': 'application/atomsvc+xml', + 'atx': 'application/vnd.antix.game-component', + 'au': ['audio/basic', 'audio/x-au'], + 'avi': ['video/avi', 'video/msvideo', 'application/x-troff-msvideo', 'video/x-msvideo'], + 'avs': 'video/avs-video', + 'aw': 'application/applixware', + 'axs': 'application/olescript', + 'azf': 'application/vnd.airzip.filesecure.azf', + 'azs': 'application/vnd.airzip.filesecure.azs', + 'azw': 'application/vnd.amazon.ebook', + 'bas': 'text/plain', + 'bcpio': 'application/x-bcpio', + 'bdf': 'application/x-font-bdf', + 'bdm': 'application/vnd.syncml.dm+wbxml', + 'bed': 'application/vnd.realvnc.bed', + 'bh2': 'application/vnd.fujitsu.oasysprs', + 'bin': ['application/octet-stream', 'application/mac-binary', 'application/macbinary', 'application/x-macbinary', 'application/x-binary'], + 'bm': 'image/bmp', + 'bmi': 'application/vnd.bmi', + 'bmp': ['image/bmp', 'image/x-windows-bmp'], + 'boo': 'application/book', + 'book': 'application/book', + 'box': 'application/vnd.previewsystems.box', + 'boz': 'application/x-bzip2', + 'bsh': 'application/x-bsh', + 'btif': 'image/prs.btif', + 'bz': 'application/x-bzip', + 'bz2': 'application/x-bzip2', + 'c': ['text/plain', 'text/x-c'], + 'c++': 'text/plain', + 'c11amc': 'application/vnd.cluetrust.cartomobile-config', + 'c11amz': 'application/vnd.cluetrust.cartomobile-config-pkg', + 'c4g': 'application/vnd.clonk.c4group', + 'cab': 'application/vnd.ms-cab-compressed', + 'car': 'application/vnd.curl.car', + 'cat': ['application/vnd.ms-pkiseccat', 'application/vnd.ms-pki.seccat'], + 'cc': ['text/plain', 'text/x-c'], + 'ccad': 'application/clariscad', + 'cco': 'application/x-cocoa', + 'ccxml': 'application/ccxml+xml,', + 'cdbcmsg': 'application/vnd.contact.cmsg', + 'cdf': ['application/cdf', 'application/x-cdf', 'application/x-netcdf'], + 'cdkey': 'application/vnd.mediastation.cdkey', + 'cdmia': 'application/cdmi-capability', + 'cdmic': 'application/cdmi-container', + 'cdmid': 'application/cdmi-domain', + 'cdmio': 'application/cdmi-object', + 'cdmiq': 'application/cdmi-queue', + 'cdx': 'chemical/x-cdx', + 'cdxml': 'application/vnd.chemdraw+xml', + 'cdy': 'application/vnd.cinderella', + 'cer': ['application/pkix-cert', 'application/x-x509-ca-cert'], + 'cgm': 'image/cgm', + 'cha': 'application/x-chat', + 'chat': 'application/x-chat', + 'chm': 'application/vnd.ms-htmlhelp', + 'chrt': 'application/vnd.kde.kchart', + 'cif': 'chemical/x-cif', + 'cii': 'application/vnd.anser-web-certificate-issue-initiation', + 'cil': 'application/vnd.ms-artgalry', + 'cla': 'application/vnd.claymore', + 'class': ['application/octet-stream', 'application/java', 'application/java-byte-code', 'application/java-vm', 'application/x-java-class'], + 'clkk': 'application/vnd.crick.clicker.keyboard', + 'clkp': 'application/vnd.crick.clicker.palette', + 'clkt': 'application/vnd.crick.clicker.template', + 'clkw': 'application/vnd.crick.clicker.wordbank', + 'clkx': 'application/vnd.crick.clicker', + 'clp': 'application/x-msclip', + 'cmc': 'application/vnd.cosmocaller', + 'cmdf': 'chemical/x-cmdf', + 'cml': 'chemical/x-cml', + 'cmp': 'application/vnd.yellowriver-custom-menu', + 'cmx': 'image/x-cmx', + 'cod': ['image/cis-cod', 'application/vnd.rim.cod'], + 'com': ['application/octet-stream', 'text/plain'], + 'conf': 'text/plain', + 'cpio': 'application/x-cpio', + 'cpp': 'text/x-c', + 'cpt': ['application/mac-compactpro', 'application/x-compactpro', 'application/x-cpt'], + 'crd': 'application/x-mscardfile', + 'crl': ['application/pkix-crl', 'application/pkcs-crl'], + 'crt': ['application/pkix-cert', 'application/x-x509-user-cert', 'application/x-x509-ca-cert'], + 'cryptonote': 'application/vnd.rig.cryptonote', + 'csh': ['text/x-script.csh', 'application/x-csh'], + 'csml': 'chemical/x-csml', + 'csp': 'application/vnd.commonspace', + 'css': ['text/css', 'application/x-pointplus'], + 'csv': 'text/csv', + 'cu': 'application/cu-seeme', + 'curl': 'text/vnd.curl', + 'cww': 'application/prs.cww', + 'cxx': 'text/plain', + 'dae': 'model/vnd.collada+xml', + 'daf': 'application/vnd.mobius.daf', + 'davmount': 'application/davmount+xml', + 'dcr': 'application/x-director', + 'dcurl': 'text/vnd.curl.dcurl', + 'dd2': 'application/vnd.oma.dd2+xml', + 'ddd': 'application/vnd.fujixerox.ddd', + 'deb': 'application/x-debian-package', + 'deepv': 'application/x-deepv', + 'def': 'text/plain', + 'der': 'application/x-x509-ca-cert', + 'dfac': 'application/vnd.dreamfactory', + 'dif': 'video/x-dv', + 'dir': 'application/x-director', + 'dis': 'application/vnd.mobius.dis', + 'djvu': 'image/vnd.djvu', + 'dl': ['video/dl', 'video/x-dl'], + 'dll': 'application/x-msdownload', + 'dms': 'application/octet-stream', + 'dna': 'application/vnd.dna', + 'doc': 'application/msword', + 'docm': 'application/vnd.ms-word.document.macroenabled.12', + 'docx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'dot': 'application/msword', + 'dotm': 'application/vnd.ms-word.template.macroenabled.12', + 'dotx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.template', + 'dp': ['application/commonground', 'application/vnd.osgi.dp'], + 'dpg': 'application/vnd.dpgraph', + 'dra': 'audio/vnd.dra', + 'drw': 'application/drafting', + 'dsc': 'text/prs.lines.tag', + 'dssc': 'application/dssc+der', + 'dtb': 'application/x-dtbook+xml', + 'dtd': 'application/xml-dtd', + 'dts': 'audio/vnd.dts', + 'dtshd': 'audio/vnd.dts.hd', + 'dump': 'application/octet-stream', + 'dv': 'video/x-dv', + 'dvi': 'application/x-dvi', + 'dwf': ['model/vnd.dwf', 'drawing/x-dwf'], + 'dwg': ['application/acad', 'image/vnd.dwg', 'image/x-dwg'], + 'dxf': ['application/dxf', 'image/vnd.dwg', 'image/vnd.dxf', 'image/x-dwg'], + 'dxp': 'application/vnd.spotfire.dxp', + 'dxr': 'application/x-director', + 'ecelp4800': 'audio/vnd.nuera.ecelp4800', + 'ecelp7470': 'audio/vnd.nuera.ecelp7470', + 'ecelp9600': 'audio/vnd.nuera.ecelp9600', + 'edm': 'application/vnd.novadigm.edm', + 'edx': 'application/vnd.novadigm.edx', + 'efif': 'application/vnd.picsel', + 'ei6': 'application/vnd.pg.osasli', + 'el': 'text/x-script.elisp', + 'elc': ['application/x-elc', 'application/x-bytecode.elisp'], + 'eml': 'message/rfc822', + 'emma': 'application/emma+xml', + 'env': 'application/x-envoy', + 'eol': 'audio/vnd.digital-winds', + 'eot': 'application/vnd.ms-fontobject', + 'eps': 'application/postscript', + 'epub': 'application/epub+zip', + 'es': ['application/ecmascript', 'application/x-esrehber'], + 'es3': 'application/vnd.eszigno3+xml', + 'esf': 'application/vnd.epson.esf', + 'etx': 'text/x-setext', + 'evy': ['application/envoy', 'application/x-envoy'], + 'exe': ['application/octet-stream', 'application/x-msdownload'], + 'exi': 'application/exi', + 'ext': 'application/vnd.novadigm.ext', + 'ez2': 'application/vnd.ezpix-album', + 'ez3': 'application/vnd.ezpix-package', + 'f': ['text/plain', 'text/x-fortran'], + 'f4v': 'video/x-f4v', + 'f77': 'text/x-fortran', + 'f90': ['text/plain', 'text/x-fortran'], + 'fbs': 'image/vnd.fastbidsheet', + 'fcs': 'application/vnd.isac.fcs', + 'fdf': 'application/vnd.fdf', + 'fe_launch': 'application/vnd.denovo.fcselayout-link', + 'fg5': 'application/vnd.fujitsu.oasysgp', + 'fh': 'image/x-freehand', + 'fif': ['application/fractals', 'image/fif'], + 'fig': 'application/x-xfig', + 'fli': ['video/fli', 'video/x-fli'], + 'flo': ['image/florian', 'application/vnd.micrografx.flo'], + 'flr': 'x-world/x-vrml', + 'flv': 'video/x-flv', + 'flw': 'application/vnd.kde.kivio', + 'flx': 'text/vnd.fmi.flexstor', + 'fly': 'text/vnd.fly', + 'fm': 'application/vnd.framemaker', + 'fmf': 'video/x-atomic3d-feature', + 'fnc': 'application/vnd.frogans.fnc', + 'for': ['text/plain', 'text/x-fortran'], + 'fpx': ['image/vnd.fpx', 'image/vnd.net-fpx'], + 'frl': 'application/freeloader', + 'fsc': 'application/vnd.fsc.weblaunch', + 'fst': 'image/vnd.fst', + 'ftc': 'application/vnd.fluxtime.clip', + 'fti': 'application/vnd.anser-web-funds-transfer-initiation', + 'funk': 'audio/make', + 'fvt': 'video/vnd.fvt', + 'fxp': 'application/vnd.adobe.fxp', + 'fzs': 'application/vnd.fuzzysheet', + 'g': 'text/plain', + 'g2w': 'application/vnd.geoplan', + 'g3': 'image/g3fax', + 'g3w': 'application/vnd.geospace', + 'gac': 'application/vnd.groove-account', + 'gdl': 'model/vnd.gdl', + 'geo': 'application/vnd.dynageo', + 'gex': 'application/vnd.geometry-explorer', + 'ggb': 'application/vnd.geogebra.file', + 'ggt': 'application/vnd.geogebra.tool', + 'ghf': 'application/vnd.groove-help', + 'gif': 'image/gif', + 'gim': 'application/vnd.groove-identity-message', + 'gl': ['video/gl', 'video/x-gl'], + 'gmx': 'application/vnd.gmx', + 'gnumeric': 'application/x-gnumeric', + 'gph': 'application/vnd.flographit', + 'gqf': 'application/vnd.grafeq', + 'gram': 'application/srgs', + 'grv': 'application/vnd.groove-injector', + 'grxml': 'application/srgs+xml', + 'gsd': 'audio/x-gsm', + 'gsf': 'application/x-font-ghostscript', + 'gsm': 'audio/x-gsm', + 'gsp': 'application/x-gsp', + 'gss': 'application/x-gss', + 'gtar': 'application/x-gtar', + 'gtm': 'application/vnd.groove-tool-message', + 'gtw': 'model/vnd.gtw', + 'gv': 'text/vnd.graphviz', + 'gxt': 'application/vnd.geonext', + 'gz': ['application/x-gzip', 'application/x-compressed'], + 'gzip': ['multipart/x-gzip', 'application/x-gzip'], + 'h': ['text/plain', 'text/x-h'], + 'h261': 'video/h261', + 'h263': 'video/h263', + 'h264': 'video/h264', + 'hal': 'application/vnd.hal+xml', + 'hbci': 'application/vnd.hbci', + 'hdf': 'application/x-hdf', + 'help': 'application/x-helpfile', + 'hgl': 'application/vnd.hp-hpgl', + 'hh': ['text/plain', 'text/x-h'], + 'hlb': 'text/x-script', + 'hlp': ['application/winhlp', 'application/hlp', 'application/x-helpfile', 'application/x-winhelp'], + 'hpg': 'application/vnd.hp-hpgl', + 'hpgl': 'application/vnd.hp-hpgl', + 'hpid': 'application/vnd.hp-hpid', + 'hps': 'application/vnd.hp-hps', + 'hqx': ['application/mac-binhex40', 'application/binhex', 'application/binhex4', 'application/mac-binhex', 'application/x-binhex40', 'application/x-mac-binhex40'], + 'hta': 'application/hta', + 'htc': 'text/x-component', + 'htke': 'application/vnd.kenameaapp', + 'htm': 'text/html', + 'html': 'text/html', + 'htmls': 'text/html', + 'htt': 'text/webviewhtml', + 'htx': 'text/html', + 'hvd': 'application/vnd.yamaha.hv-dic', + 'hvp': 'application/vnd.yamaha.hv-voice', + 'hvs': 'application/vnd.yamaha.hv-script', + 'i2g': 'application/vnd.intergeo', + 'icc': 'application/vnd.iccprofile', + 'ice': 'x-conference/x-cooltalk', + 'ico': 'image/x-icon', + 'ics': 'text/calendar', + 'idc': 'text/plain', + 'ief': 'image/ief', + 'iefs': 'image/ief', + 'ifm': 'application/vnd.shana.informed.formdata', + 'iges': ['application/iges', 'model/iges'], + 'igl': 'application/vnd.igloader', + 'igm': 'application/vnd.insors.igm', + 'igs': ['application/iges', 'model/iges'], + 'igx': 'application/vnd.micrografx.igx', + 'iif': 'application/vnd.shana.informed.interchange', + 'iii': 'application/x-iphone', + 'ima': 'application/x-ima', + 'imap': 'application/x-httpd-imap', + 'imp': 'application/vnd.accpac.simply.imp', + 'ims': 'application/vnd.ms-ims', + 'inf': 'application/inf', + 'ins': ['application/x-internet-signup', 'application/x-internett-signup'], + 'ip': 'application/x-ip2', + 'ipfix': 'application/ipfix', + 'ipk': 'application/vnd.shana.informed.package', + 'irm': 'application/vnd.ibm.rights-management', + 'irp': 'application/vnd.irepository.package+xml', + 'isp': 'application/x-internet-signup', + 'isu': 'video/x-isvideo', + 'it': 'audio/it', + 'itp': 'application/vnd.shana.informed.formtemplate', + 'iv': 'application/x-inventor', + 'ivp': 'application/vnd.immervision-ivp', + 'ivr': 'i-world/i-vrml', + 'ivu': 'application/vnd.immervision-ivu', + 'ivy': 'application/x-livescreen', + 'jad': 'text/vnd.sun.j2me.app-descriptor', + 'jam': ['application/vnd.jam', 'audio/x-jam'], + 'jar': 'application/java-archive', + 'jav': ['text/plain', 'text/x-java-source'], + 'java': ['text/plain', 'text/x-java-source,java', 'text/x-java-source'], + 'jcm': 'application/x-java-commerce', + 'jfif': ['image/pipeg', 'image/jpeg', 'image/pjpeg'], + 'jfif-tbnl': 'image/jpeg', + 'jisp': 'application/vnd.jisp', + 'jlt': 'application/vnd.hp-jlyt', + 'jnlp': 'application/x-java-jnlp-file', + 'joda': 'application/vnd.joost.joda-archive', + 'jpe': ['image/jpeg', 'image/pjpeg'], + 'jpeg': ['image/jpeg', 'image/pjpeg'], + 'jpg': ['image/jpeg', 'image/pjpeg'], + 'jpgv': 'video/jpeg', + 'jpm': 'video/jpm', + 'jps': 'image/x-jps', + 'js': ['application/javascript', 'application/ecmascript', 'text/javascript', 'text/ecmascript', 'application/x-javascript'], + 'json': 'application/json', + 'jut': 'image/jutvision', + 'kar': ['audio/midi', 'music/x-karaoke'], + 'karbon': 'application/vnd.kde.karbon', + 'kfo': 'application/vnd.kde.kformula', + 'kia': 'application/vnd.kidspiration', + 'kml': 'application/vnd.google-earth.kml+xml', + 'kmz': 'application/vnd.google-earth.kmz', + 'kne': 'application/vnd.kinar', + 'kon': 'application/vnd.kde.kontour', + 'kpr': 'application/vnd.kde.kpresenter', + 'ksh': ['application/x-ksh', 'text/x-script.ksh'], + 'ksp': 'application/vnd.kde.kspread', + 'ktx': 'image/ktx', + 'ktz': 'application/vnd.kahootz', + 'kwd': 'application/vnd.kde.kword', + 'la': ['audio/nspaudio', 'audio/x-nspaudio'], + 'lam': 'audio/x-liveaudio', + 'lasxml': 'application/vnd.las.las+xml', + 'latex': 'application/x-latex', + 'lbd': 'application/vnd.llamagraphics.life-balance.desktop', + 'lbe': 'application/vnd.llamagraphics.life-balance.exchange+xml', + 'les': 'application/vnd.hhe.lesson-player', + 'lha': ['application/octet-stream', 'application/lha', 'application/x-lha'], + 'lhx': 'application/octet-stream', + 'link66': 'application/vnd.route66.link66+xml', + 'list': 'text/plain', + 'lma': ['audio/nspaudio', 'audio/x-nspaudio'], + 'log': 'text/plain', + 'lrm': 'application/vnd.ms-lrm', + 'lsf': 'video/x-la-asf', + 'lsp': ['application/x-lisp', 'text/x-script.lisp'], + 'lst': 'text/plain', + 'lsx': ['video/x-la-asf', 'text/x-la-asf'], + 'ltf': 'application/vnd.frogans.ltf', + 'ltx': 'application/x-latex', + 'lvp': 'audio/vnd.lucent.voice', + 'lwp': 'application/vnd.lotus-wordpro', + 'lzh': ['application/octet-stream', 'application/x-lzh'], + 'lzx': ['application/lzx', 'application/octet-stream', 'application/x-lzx'], + 'm': ['text/plain', 'text/x-m'], + 'm13': 'application/x-msmediaview', + 'm14': 'application/x-msmediaview', + 'm1v': 'video/mpeg', + 'm21': 'application/mp21', + 'm2a': 'audio/mpeg', + 'm2v': 'video/mpeg', + 'm3u': ['audio/x-mpegurl', 'audio/x-mpequrl'], + 'm3u8': 'application/vnd.apple.mpegurl', + 'm4v': 'video/x-m4v', + 'ma': 'application/mathematica', + 'mads': 'application/mads+xml', + 'mag': 'application/vnd.ecowin.chart', + 'man': 'application/x-troff-man', + 'map': 'application/x-navimap', + 'mar': 'text/plain', + 'mathml': 'application/mathml+xml', + 'mbd': 'application/mbedlet', + 'mbk': 'application/vnd.mobius.mbk', + 'mbox': 'application/mbox', + 'mc$': 'application/x-magic-cap-package-1.0', + 'mc1': 'application/vnd.medcalcdata', + 'mcd': ['application/mcad', 'application/vnd.mcd', 'application/x-mathcad'], + 'mcf': ['image/vasa', 'text/mcf'], + 'mcp': 'application/netmc', + 'mcurl': 'text/vnd.curl.mcurl', + 'mdb': 'application/x-msaccess', + 'mdi': 'image/vnd.ms-modi', + 'me': 'application/x-troff-me', + 'meta4': 'application/metalink4+xml', + 'mets': 'application/mets+xml', + 'mfm': 'application/vnd.mfmp', + 'mgp': 'application/vnd.osgeo.mapguide.package', + 'mgz': 'application/vnd.proteus.magazine', + 'mht': 'message/rfc822', + 'mhtml': 'message/rfc822', + 'mid': ['audio/mid', 'audio/midi', 'music/crescendo', 'x-music/x-midi', 'audio/x-midi', 'application/x-midi', 'audio/x-mid'], + 'midi': ['audio/midi', 'music/crescendo', 'x-music/x-midi', 'audio/x-midi', 'application/x-midi', 'audio/x-mid'], + 'mif': ['application/vnd.mif', 'application/x-mif', 'application/x-frame'], + 'mime': ['message/rfc822', 'www/mime'], + 'mj2': 'video/mj2', + 'mjf': 'audio/x-vnd.audioexplosion.mjuicemediafile', + 'mjpg': 'video/x-motion-jpeg', + 'mlp': 'application/vnd.dolby.mlp', + 'mm': ['application/base64', 'application/x-meme'], + 'mmd': 'application/vnd.chipnuts.karaoke-mmd', + 'mme': 'application/base64', + 'mmf': 'application/vnd.smaf', + 'mmr': 'image/vnd.fujixerox.edmics-mmr', + 'mny': 'application/x-msmoney', + 'mod': ['audio/mod', 'audio/x-mod'], + 'mods': 'application/mods+xml', + 'moov': 'video/quicktime', + 'mov': 'video/quicktime', + 'movie': 'video/x-sgi-movie', + 'mp2': ['video/mpeg', 'audio/mpeg', 'video/x-mpeg', 'audio/x-mpeg', 'video/x-mpeq2a'], + 'mp3': ['audio/mpeg', 'audio/mpeg3', 'video/mpeg', 'audio/x-mpeg-3', 'video/x-mpeg'], + 'mp4': ['video/mp4', 'application/mp4'], + 'mp4a': 'audio/mp4', + 'mpa': ['video/mpeg', 'audio/mpeg'], + 'mpc': ['application/vnd.mophun.certificate', 'application/x-project'], + 'mpe': 'video/mpeg', + 'mpeg': 'video/mpeg', + 'mpg': ['video/mpeg', 'audio/mpeg'], + 'mpga': 'audio/mpeg', + 'mpkg': 'application/vnd.apple.installer+xml', + 'mpm': 'application/vnd.blueice.multipass', + 'mpn': 'application/vnd.mophun.application', + 'mpp': 'application/vnd.ms-project', + 'mpt': 'application/x-project', + 'mpv': 'application/x-project', + 'mpv2': 'video/mpeg', + 'mpx': 'application/x-project', + 'mpy': 'application/vnd.ibm.minipay', + 'mqy': 'application/vnd.mobius.mqy', + 'mrc': 'application/marc', + 'mrcx': 'application/marcxml+xml', + 'ms': 'application/x-troff-ms', + 'mscml': 'application/mediaservercontrol+xml', + 'mseq': 'application/vnd.mseq', + 'msf': 'application/vnd.epson.msf', + 'msg': 'application/vnd.ms-outlook', + 'msh': 'model/mesh', + 'msl': 'application/vnd.mobius.msl', + 'msty': 'application/vnd.muvee.style', + 'mts': 'model/vnd.mts', + 'mus': 'application/vnd.musician', + 'musicxml': 'application/vnd.recordare.musicxml+xml', + 'mv': 'video/x-sgi-movie', + 'mvb': 'application/x-msmediaview', + 'mwf': 'application/vnd.mfer', + 'mxf': 'application/mxf', + 'mxl': 'application/vnd.recordare.musicxml', + 'mxml': 'application/xv+xml', + 'mxs': 'application/vnd.triscape.mxs', + 'mxu': 'video/vnd.mpegurl', + 'my': 'audio/make', + 'mzz': 'application/x-vnd.audioexplosion.mzz', + 'n-gage': 'application/vnd.nokia.n-gage.symbian.install', + 'n3': 'text/n3', + 'nap': 'image/naplps', + 'naplps': 'image/naplps', + 'nbp': 'application/vnd.wolfram.player', + 'nc': 'application/x-netcdf', + 'ncm': 'application/vnd.nokia.configuration-message', + 'ncx': 'application/x-dtbncx+xml', + 'ngdat': 'application/vnd.nokia.n-gage.data', + 'nif': 'image/x-niff', + 'niff': 'image/x-niff', + 'nix': 'application/x-mix-transfer', + 'nlu': 'application/vnd.neurolanguage.nlu', + 'nml': 'application/vnd.enliven', + 'nnd': 'application/vnd.noblenet-directory', + 'nns': 'application/vnd.noblenet-sealer', + 'nnw': 'application/vnd.noblenet-web', + 'npx': 'image/vnd.net-fpx', + 'nsc': 'application/x-conference', + 'nsf': 'application/vnd.lotus-notes', + 'nvd': 'application/x-navidoc', + 'nws': 'message/rfc822', + 'o': 'application/octet-stream', + 'oa2': 'application/vnd.fujitsu.oasys2', + 'oa3': 'application/vnd.fujitsu.oasys3', + 'oas': 'application/vnd.fujitsu.oasys', + 'obd': 'application/x-msbinder', + 'oda': 'application/oda', + 'odb': 'application/vnd.oasis.opendocument.database', + 'odc': 'application/vnd.oasis.opendocument.chart', + 'odf': 'application/vnd.oasis.opendocument.formula', + 'odft': 'application/vnd.oasis.opendocument.formula-template', + 'odg': 'application/vnd.oasis.opendocument.graphics', + 'odi': 'application/vnd.oasis.opendocument.image', + 'odm': 'application/vnd.oasis.opendocument.text-master', + 'odp': 'application/vnd.oasis.opendocument.presentation', + 'ods': 'application/vnd.oasis.opendocument.spreadsheet', + 'odt': 'application/vnd.oasis.opendocument.text', + 'oga': 'audio/ogg', + 'ogv': 'video/ogg', + 'ogx': 'application/ogg', + 'omc': 'application/x-omc', + 'omcd': 'application/x-omcdatamaker', + 'omcr': 'application/x-omcregerator', + 'onetoc': 'application/onenote', + 'opf': 'application/oebps-package+xml', + 'org': 'application/vnd.lotus-organizer', + 'osf': 'application/vnd.yamaha.openscoreformat', + 'osfpvg': 'application/vnd.yamaha.openscoreformat.osfpvg+xml', + 'otc': 'application/vnd.oasis.opendocument.chart-template', + 'otf': 'application/x-font-otf', + 'otg': 'application/vnd.oasis.opendocument.graphics-template', + 'oth': 'application/vnd.oasis.opendocument.text-web', + 'oti': 'application/vnd.oasis.opendocument.image-template', + 'otp': 'application/vnd.oasis.opendocument.presentation-template', + 'ots': 'application/vnd.oasis.opendocument.spreadsheet-template', + 'ott': 'application/vnd.oasis.opendocument.text-template', + 'oxt': 'application/vnd.openofficeorg.extension', + 'p': 'text/x-pascal', + 'p10': ['application/pkcs10', 'application/x-pkcs10'], + 'p12': ['application/pkcs-12', 'application/x-pkcs12'], + 'p7a': 'application/x-pkcs7-signature', + 'p7b': 'application/x-pkcs7-certificates', + 'p7c': ['application/pkcs7-mime', 'application/x-pkcs7-mime'], + 'p7m': ['application/pkcs7-mime', 'application/x-pkcs7-mime'], + 'p7r': 'application/x-pkcs7-certreqresp', + 'p7s': ['application/pkcs7-signature', 'application/x-pkcs7-signature'], + 'p8': 'application/pkcs8', + 'par': 'text/plain-bas', + 'part': 'application/pro_eng', + 'pas': 'text/pascal', + 'paw': 'application/vnd.pawaafile', + 'pbd': 'application/vnd.powerbuilder6', + 'pbm': 'image/x-portable-bitmap', + 'pcf': 'application/x-font-pcf', + 'pcl': ['application/vnd.hp-pcl', 'application/x-pcl'], + 'pclxl': 'application/vnd.hp-pclxl', + 'pct': 'image/x-pict', + 'pcurl': 'application/vnd.curl.pcurl', + 'pcx': 'image/x-pcx', + 'pdb': ['application/vnd.palm', 'chemical/x-pdb'], + 'pdf': 'application/pdf', + 'pfa': 'application/x-font-type1', + 'pfr': 'application/font-tdpfr', + 'pfunk': ['audio/make', 'audio/make.my.funk'], + 'pfx': 'application/x-pkcs12', + 'pgm': ['image/x-portable-graymap', 'image/x-portable-greymap'], + 'pgn': 'application/x-chess-pgn', + 'pgp': 'application/pgp-signature', + 'pic': ['image/pict', 'image/x-pict'], + 'pict': 'image/pict', + 'pkg': 'application/x-newton-compatible-pkg', + 'pki': 'application/pkixcmp', + 'pkipath': 'application/pkix-pkipath', + 'pko': ['application/ynd.ms-pkipko', 'application/vnd.ms-pki.pko'], + 'pl': ['text/plain', 'text/x-script.perl'], + 'plb': 'application/vnd.3gpp.pic-bw-large', + 'plc': 'application/vnd.mobius.plc', + 'plf': 'application/vnd.pocketlearn', + 'pls': 'application/pls+xml', + 'plx': 'application/x-pixclscript', + 'pm': ['text/x-script.perl-module', 'image/x-xpixmap'], + 'pm4': 'application/x-pagemaker', + 'pm5': 'application/x-pagemaker', + 'pma': 'application/x-perfmon', + 'pmc': 'application/x-perfmon', + 'pml': ['application/vnd.ctc-posml', 'application/x-perfmon'], + 'pmr': 'application/x-perfmon', + 'pmw': 'application/x-perfmon', + 'png': 'image/png', + 'pnm': ['application/x-portable-anymap', 'image/x-portable-anymap'], + 'portpkg': 'application/vnd.macports.portpkg', + 'pot': ['application/vnd.ms-powerpoint', 'application/mspowerpoint'], + 'potm': 'application/vnd.ms-powerpoint.template.macroenabled.12', + 'potx': 'application/vnd.openxmlformats-officedocument.presentationml.template', + 'pov': 'model/x-pov', + 'ppa': 'application/vnd.ms-powerpoint', + 'ppam': 'application/vnd.ms-powerpoint.addin.macroenabled.12', + 'ppd': 'application/vnd.cups-ppd', + 'ppm': 'image/x-portable-pixmap', + 'pps': ['application/vnd.ms-powerpoint', 'application/mspowerpoint'], + 'ppsm': 'application/vnd.ms-powerpoint.slideshow.macroenabled.12', + 'ppsx': 'application/vnd.openxmlformats-officedocument.presentationml.slideshow', + 'ppt': ['application/vnd.ms-powerpoint', 'application/mspowerpoint', 'application/powerpoint', 'application/x-mspowerpoint'], + 'pptm': 'application/vnd.ms-powerpoint.presentation.macroenabled.12', + 'pptx': 'application/vnd.openxmlformats-officedocument.presentationml.presentation', + 'ppz': 'application/mspowerpoint', + 'prc': 'application/x-mobipocket-ebook', + 'pre': ['application/vnd.lotus-freelance', 'application/x-freelance'], + 'prf': 'application/pics-rules', + 'prt': 'application/pro_eng', + 'ps': 'application/postscript', + 'psb': 'application/vnd.3gpp.pic-bw-small', + 'psd': ['application/octet-stream', 'image/vnd.adobe.photoshop'], + 'psf': 'application/x-font-linux-psf', + 'pskcxml': 'application/pskc+xml', + 'ptid': 'application/vnd.pvi.ptid1', + 'pub': 'application/x-mspublisher', + 'pvb': 'application/vnd.3gpp.pic-bw-var', + 'pvu': 'paleovu/x-pv', + 'pwn': 'application/vnd.3m.post-it-notes', + 'pwz': 'application/vnd.ms-powerpoint', + 'py': 'text/x-script.phyton', + 'pya': 'audio/vnd.ms-playready.media.pya', + 'pyc': 'applicaiton/x-bytecode.python', + 'pyv': 'video/vnd.ms-playready.media.pyv', + 'qam': 'application/vnd.epson.quickanime', + 'qbo': 'application/vnd.intu.qbo', + 'qcp': 'audio/vnd.qcelp', + 'qd3': 'x-world/x-3dmf', + 'qd3d': 'x-world/x-3dmf', + 'qfx': 'application/vnd.intu.qfx', + 'qif': 'image/x-quicktime', + 'qps': 'application/vnd.publishare-delta-tree', + 'qt': 'video/quicktime', + 'qtc': 'video/x-qtc', + 'qti': 'image/x-quicktime', + 'qtif': 'image/x-quicktime', + 'qxd': 'application/vnd.quark.quarkxpress', + 'ra': ['audio/x-realaudio', 'audio/x-pn-realaudio', 'audio/x-pn-realaudio-plugin'], + 'ram': 'audio/x-pn-realaudio', + 'rar': 'application/x-rar-compressed', + 'ras': ['image/cmu-raster', 'application/x-cmu-raster', 'image/x-cmu-raster'], + 'rast': 'image/cmu-raster', + 'rcprofile': 'application/vnd.ipunplugged.rcprofile', + 'rdf': 'application/rdf+xml', + 'rdz': 'application/vnd.data-vision.rdz', + 'rep': 'application/vnd.businessobjects', + 'res': 'application/x-dtbresource+xml', + 'rexx': 'text/x-script.rexx', + 'rf': 'image/vnd.rn-realflash', + 'rgb': 'image/x-rgb', + 'rif': 'application/reginfo+xml', + 'rip': 'audio/vnd.rip', + 'rl': 'application/resource-lists+xml', + 'rlc': 'image/vnd.fujixerox.edmics-rlc', + 'rld': 'application/resource-lists-diff+xml', + 'rm': ['application/vnd.rn-realmedia', 'audio/x-pn-realaudio'], + 'rmi': 'audio/mid', + 'rmm': 'audio/x-pn-realaudio', + 'rmp': ['audio/x-pn-realaudio-plugin', 'audio/x-pn-realaudio'], + 'rms': 'application/vnd.jcp.javame.midlet-rms', + 'rnc': 'application/relax-ng-compact-syntax', + 'rng': ['application/ringing-tones', 'application/vnd.nokia.ringing-tone'], + 'rnx': 'application/vnd.rn-realplayer', + 'roff': 'application/x-troff', + 'rp': 'image/vnd.rn-realpix', + 'rp9': 'application/vnd.cloanto.rp9', + 'rpm': 'audio/x-pn-realaudio-plugin', + 'rpss': 'application/vnd.nokia.radio-presets', + 'rpst': 'application/vnd.nokia.radio-preset', + 'rq': 'application/sparql-query', + 'rs': 'application/rls-services+xml', + 'rsd': 'application/rsd+xml', + 'rt': ['text/richtext', 'text/vnd.rn-realtext'], + 'rtf': ['application/rtf', 'text/richtext', 'application/x-rtf'], + 'rtx': ['text/richtext', 'application/rtf'], + 'rv': 'video/vnd.rn-realvideo', + 's': 'text/x-asm', + 's3m': 'audio/s3m', + 'saf': 'application/vnd.yamaha.smaf-audio', + 'saveme': 'application/octet-stream', + 'sbk': 'application/x-tbook', + 'sbml': 'application/sbml+xml', + 'sc': 'application/vnd.ibm.secure-container', + 'scd': 'application/x-msschedule', + 'scm': ['application/vnd.lotus-screencam', 'video/x-scm', 'text/x-script.guile', 'application/x-lotusscreencam', 'text/x-script.scheme'], + 'scq': 'application/scvp-cv-request', + 'scs': 'application/scvp-cv-response', + 'sct': 'text/scriptlet', + 'scurl': 'text/vnd.curl.scurl', + 'sda': 'application/vnd.stardivision.draw', + 'sdc': 'application/vnd.stardivision.calc', + 'sdd': 'application/vnd.stardivision.impress', + 'sdkm': 'application/vnd.solent.sdkm+xml', + 'sdml': 'text/plain', + 'sdp': ['application/sdp', 'application/x-sdp'], + 'sdr': 'application/sounder', + 'sdw': 'application/vnd.stardivision.writer', + 'sea': ['application/sea', 'application/x-sea'], + 'see': 'application/vnd.seemail', + 'seed': 'application/vnd.fdsn.seed', + 'sema': 'application/vnd.sema', + 'semd': 'application/vnd.semd', + 'semf': 'application/vnd.semf', + 'ser': 'application/java-serialized-object', + 'set': 'application/set', + 'setpay': 'application/set-payment-initiation', + 'setreg': 'application/set-registration-initiation', + 'sfd-hdstx': 'application/vnd.hydrostatix.sof-data', + 'sfs': 'application/vnd.spotfire.sfs', + 'sgl': 'application/vnd.stardivision.writer-global', + 'sgm': ['text/sgml', 'text/x-sgml'], + 'sgml': ['text/sgml', 'text/x-sgml'], + 'sh': ['application/x-shar', 'application/x-bsh', 'application/x-sh', 'text/x-script.sh'], + 'shar': ['application/x-bsh', 'application/x-shar'], + 'shf': 'application/shf+xml', + 'shtml': ['text/html', 'text/x-server-parsed-html'], + 'sid': 'audio/x-psid', + 'sis': 'application/vnd.symbian.install', + 'sit': ['application/x-stuffit', 'application/x-sit'], + 'sitx': 'application/x-stuffitx', + 'skd': 'application/x-koan', + 'skm': 'application/x-koan', + 'skp': ['application/vnd.koan', 'application/x-koan'], + 'skt': 'application/x-koan', + 'sl': 'application/x-seelogo', + 'sldm': 'application/vnd.ms-powerpoint.slide.macroenabled.12', + 'sldx': 'application/vnd.openxmlformats-officedocument.presentationml.slide', + 'slt': 'application/vnd.epson.salt', + 'sm': 'application/vnd.stepmania.stepchart', + 'smf': 'application/vnd.stardivision.math', + 'smi': ['application/smil', 'application/smil+xml'], + 'smil': 'application/smil', + 'snd': ['audio/basic', 'audio/x-adpcm'], + 'snf': 'application/x-font-snf', + 'sol': 'application/solids', + 'spc': ['text/x-speech', 'application/x-pkcs7-certificates'], + 'spf': 'application/vnd.yamaha.smaf-phrase', + 'spl': ['application/futuresplash', 'application/x-futuresplash'], + 'spot': 'text/vnd.in3d.spot', + 'spp': 'application/scvp-vp-response', + 'spq': 'application/scvp-vp-request', + 'spr': 'application/x-sprite', + 'sprite': 'application/x-sprite', + 'src': 'application/x-wais-source', + 'sru': 'application/sru+xml', + 'srx': 'application/sparql-results+xml', + 'sse': 'application/vnd.kodak-descriptor', + 'ssf': 'application/vnd.epson.ssf', + 'ssi': 'text/x-server-parsed-html', + 'ssm': 'application/streamingmedia', + 'ssml': 'application/ssml+xml', + 'sst': ['application/vnd.ms-pkicertstore', 'application/vnd.ms-pki.certstore'], + 'st': 'application/vnd.sailingtracker.track', + 'stc': 'application/vnd.sun.xml.calc.template', + 'std': 'application/vnd.sun.xml.draw.template', + 'step': 'application/step', + 'stf': 'application/vnd.wt.stf', + 'sti': 'application/vnd.sun.xml.impress.template', + 'stk': 'application/hyperstudio', + 'stl': ['application/vnd.ms-pkistl', 'application/sla', 'application/vnd.ms-pki.stl', 'application/x-navistyle'], + 'stm': 'text/html', + 'stp': 'application/step', + 'str': 'application/vnd.pg.format', + 'stw': 'application/vnd.sun.xml.writer.template', + 'sub': 'image/vnd.dvb.subtitle', + 'sus': 'application/vnd.sus-calendar', + 'sv4cpio': 'application/x-sv4cpio', + 'sv4crc': 'application/x-sv4crc', + 'svc': 'application/vnd.dvb.service', + 'svd': 'application/vnd.svd', + 'svf': ['image/vnd.dwg', 'image/x-dwg'], + 'svg': 'image/svg+xml', + 'svr': ['x-world/x-svr', 'application/x-world'], + 'swf': 'application/x-shockwave-flash', + 'swi': 'application/vnd.aristanetworks.swi', + 'sxc': 'application/vnd.sun.xml.calc', + 'sxd': 'application/vnd.sun.xml.draw', + 'sxg': 'application/vnd.sun.xml.writer.global', + 'sxi': 'application/vnd.sun.xml.impress', + 'sxm': 'application/vnd.sun.xml.math', + 'sxw': 'application/vnd.sun.xml.writer', + 't': ['text/troff', 'application/x-troff'], + 'talk': 'text/x-speech', + 'tao': 'application/vnd.tao.intent-module-archive', + 'tar': 'application/x-tar', + 'tbk': ['application/toolbook', 'application/x-tbook'], + 'tcap': 'application/vnd.3gpp2.tcap', + 'tcl': ['text/x-script.tcl', 'application/x-tcl'], + 'tcsh': 'text/x-script.tcsh', + 'teacher': 'application/vnd.smart.teacher', + 'tei': 'application/tei+xml', + 'tex': 'application/x-tex', + 'texi': 'application/x-texinfo', + 'texinfo': 'application/x-texinfo', + 'text': ['application/plain', 'text/plain'], + 'tfi': 'application/thraud+xml', + 'tfm': 'application/x-tex-tfm', + 'tgz': ['application/gnutar', 'application/x-compressed'], + 'thmx': 'application/vnd.ms-officetheme', + 'tif': ['image/tiff', 'image/x-tiff'], + 'tiff': ['image/tiff', 'image/x-tiff'], + 'tmo': 'application/vnd.tmobile-livetv', + 'torrent': 'application/x-bittorrent', + 'tpl': 'application/vnd.groove-tool-template', + 'tpt': 'application/vnd.trid.tpt', + 'tr': 'application/x-troff', + 'tra': 'application/vnd.trueapp', + 'trm': 'application/x-msterminal', + 'tsd': 'application/timestamped-data', + 'tsi': 'audio/tsp-audio', + 'tsp': ['application/dsptype', 'audio/tsplayer'], + 'tsv': 'text/tab-separated-values', + 'ttf': 'application/x-font-ttf', + 'ttl': 'text/turtle', + 'turbot': 'image/florian', + 'twd': 'application/vnd.simtech-mindmapper', + 'txd': 'application/vnd.genomatix.tuxedo', + 'txf': 'application/vnd.mobius.txf', + 'txt': 'text/plain', + 'ufd': 'application/vnd.ufdl', + 'uil': 'text/x-uil', + 'uls': 'text/iuls', + 'umj': 'application/vnd.umajin', + 'uni': 'text/uri-list', + 'unis': 'text/uri-list', + 'unityweb': 'application/vnd.unity', + 'unv': 'application/i-deas', + 'uoml': 'application/vnd.uoml+xml', + 'uri': 'text/uri-list', + 'uris': 'text/uri-list', + 'ustar': ['application/x-ustar', 'multipart/x-ustar'], + 'utz': 'application/vnd.uiq.theme', + 'uu': ['application/octet-stream', 'text/x-uuencode'], + 'uue': 'text/x-uuencode', + 'uva': 'audio/vnd.dece.audio', + 'uvh': 'video/vnd.dece.hd', + 'uvi': 'image/vnd.dece.graphic', + 'uvm': 'video/vnd.dece.mobile', + 'uvp': 'video/vnd.dece.pd', + 'uvs': 'video/vnd.dece.sd', + 'uvu': 'video/vnd.uvvu.mp4', + 'uvv': 'video/vnd.dece.video', + 'vcd': 'application/x-cdlink', + 'vcf': 'text/x-vcard', + 'vcg': 'application/vnd.groove-vcard', + 'vcs': 'text/x-vcalendar', + 'vcx': 'application/vnd.vcx', + 'vda': 'application/vda', + 'vdo': 'video/vdo', + 'vew': 'application/groupwise', + 'vis': 'application/vnd.visionary', + 'viv': ['video/vivo', 'video/vnd.vivo'], + 'vivo': ['video/vivo', 'video/vnd.vivo'], + 'vmd': 'application/vocaltec-media-desc', + 'vmf': 'application/vocaltec-media-file', + 'voc': ['audio/voc', 'audio/x-voc'], + 'vos': 'video/vosaic', + 'vox': 'audio/voxware', + 'vqe': 'audio/x-twinvq-plugin', + 'vqf': 'audio/x-twinvq', + 'vql': 'audio/x-twinvq-plugin', + 'vrml': ['model/vrml', 'x-world/x-vrml', 'application/x-vrml'], + 'vrt': 'x-world/x-vrt', + 'vsd': ['application/vnd.visio', 'application/x-visio'], + 'vsf': 'application/vnd.vsf', + 'vst': 'application/x-visio', + 'vsw': 'application/x-visio', + 'vtu': 'model/vnd.vtu', + 'vxml': 'application/voicexml+xml', + 'w60': 'application/wordperfect6.0', + 'w61': 'application/wordperfect6.1', + 'w6w': 'application/msword', + 'wad': 'application/x-doom', + 'wav': ['audio/wav', 'audio/x-wav'], + 'wax': 'audio/x-ms-wax', + 'wb1': 'application/x-qpro', + 'wbmp': 'image/vnd.wap.wbmp', + 'wbs': 'application/vnd.criticaltools.wbs+xml', + 'wbxml': 'application/vnd.wap.wbxml', + 'wcm': 'application/vnd.ms-works', + 'wdb': 'application/vnd.ms-works', + 'web': 'application/vnd.xara', + 'weba': 'audio/webm', + 'webm': 'video/webm', + 'webp': 'image/webp', + 'wg': 'application/vnd.pmi.widget', + 'wgt': 'application/widget', + 'wiz': 'application/msword', + 'wk1': 'application/x-123', + 'wks': 'application/vnd.ms-works', + 'wm': 'video/x-ms-wm', + 'wma': 'audio/x-ms-wma', + 'wmd': 'application/x-ms-wmd', + 'wmf': ['windows/metafile', 'application/x-msmetafile'], + 'wml': 'text/vnd.wap.wml', + 'wmlc': 'application/vnd.wap.wmlc', + 'wmls': 'text/vnd.wap.wmlscript', + 'wmlsc': 'application/vnd.wap.wmlscriptc', + 'wmv': 'video/x-ms-wmv', + 'wmx': 'video/x-ms-wmx', + 'wmz': 'application/x-ms-wmz', + 'woff': 'application/x-font-woff', + 'word': 'application/msword', + 'wp': 'application/wordperfect', + 'wp5': ['application/wordperfect', 'application/wordperfect6.0'], + 'wp6': 'application/wordperfect', + 'wpd': ['application/wordperfect', 'application/vnd.wordperfect', 'application/x-wpwin'], + 'wpl': 'application/vnd.ms-wpl', + 'wps': 'application/vnd.ms-works', + 'wq1': 'application/x-lotus', + 'wqd': 'application/vnd.wqd', + 'wri': ['application/mswrite', 'application/x-wri', 'application/x-mswrite'], + 'wrl': ['model/vrml', 'x-world/x-vrml', 'application/x-world'], + 'wrz': ['model/vrml', 'x-world/x-vrml'], + 'wsc': 'text/scriplet', + 'wsdl': 'application/wsdl+xml', + 'wspolicy': 'application/wspolicy+xml', + 'wsrc': 'application/x-wais-source', + 'wtb': 'application/vnd.webturbo', + 'wtk': 'application/x-wintalk', + 'wvx': 'video/x-ms-wvx', + 'x-png': 'image/png', + 'x3d': 'application/vnd.hzn-3d-crossword', + 'xaf': 'x-world/x-vrml', + 'xap': 'application/x-silverlight-app', + 'xar': 'application/vnd.xara', + 'xbap': 'application/x-ms-xbap', + 'xbd': 'application/vnd.fujixerox.docuworks.binder', + 'xbm': ['image/xbm', 'image/x-xbm', 'image/x-xbitmap'], + 'xdf': 'application/xcap-diff+xml', + 'xdm': 'application/vnd.syncml.dm+xml', + 'xdp': 'application/vnd.adobe.xdp+xml', + 'xdr': 'video/x-amt-demorun', + 'xdssc': 'application/dssc+xml', + 'xdw': 'application/vnd.fujixerox.docuworks', + 'xenc': 'application/xenc+xml', + 'xer': 'application/patch-ops-error+xml', + 'xfdf': 'application/vnd.adobe.xfdf', + 'xfdl': 'application/vnd.xfdl', + 'xgz': 'xgl/drawing', + 'xhtml': 'application/xhtml+xml', + 'xif': 'image/vnd.xiff', + 'xl': 'application/excel', + 'xla': ['application/vnd.ms-excel', 'application/excel', 'application/x-msexcel', 'application/x-excel'], + 'xlam': 'application/vnd.ms-excel.addin.macroenabled.12', + 'xlb': ['application/excel', 'application/vnd.ms-excel', 'application/x-excel'], + 'xlc': ['application/vnd.ms-excel', 'application/excel', 'application/x-excel'], + 'xld': ['application/excel', 'application/x-excel'], + 'xlk': ['application/excel', 'application/x-excel'], + 'xll': ['application/excel', 'application/vnd.ms-excel', 'application/x-excel'], + 'xlm': ['application/vnd.ms-excel', 'application/excel', 'application/x-excel'], + 'xls': ['application/vnd.ms-excel', 'application/excel', 'application/x-msexcel', 'application/x-excel'], + 'xlsb': 'application/vnd.ms-excel.sheet.binary.macroenabled.12', + 'xlsm': 'application/vnd.ms-excel.sheet.macroenabled.12', + 'xlsx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'xlt': ['application/vnd.ms-excel', 'application/excel', 'application/x-excel'], + 'xltm': 'application/vnd.ms-excel.template.macroenabled.12', + 'xltx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.template', + 'xlv': ['application/excel', 'application/x-excel'], + 'xlw': ['application/vnd.ms-excel', 'application/excel', 'application/x-msexcel', 'application/x-excel'], + 'xm': 'audio/xm', + 'xml': ['application/xml', 'text/xml', 'application/atom+xml', 'application/rss+xml'], + 'xmz': 'xgl/movie', + 'xo': 'application/vnd.olpc-sugar', + 'xof': 'x-world/x-vrml', + 'xop': 'application/xop+xml', + 'xpi': 'application/x-xpinstall', + 'xpix': 'application/x-vnd.ls-xpix', + 'xpm': ['image/xpm', 'image/x-xpixmap'], + 'xpr': 'application/vnd.is-xpr', + 'xps': 'application/vnd.ms-xpsdocument', + 'xpw': 'application/vnd.intercon.formnet', + 'xslt': 'application/xslt+xml', + 'xsm': 'application/vnd.syncml+xml', + 'xspf': 'application/xspf+xml', + 'xsr': 'video/x-amt-showrun', + 'xul': 'application/vnd.mozilla.xul+xml', + 'xwd': ['image/x-xwd', 'image/x-xwindowdump'], + 'xyz': ['chemical/x-xyz', 'chemical/x-pdb'], + 'yang': 'application/yang', + 'yin': 'application/yin+xml', + 'z': ['application/x-compressed', 'application/x-compress'], + 'zaz': 'application/vnd.zzazz.deck+xml', + 'zip': ['application/zip', 'multipart/x-zip', 'application/x-zip-compressed', 'application/x-compressed'], + 'zir': 'application/vnd.zul', + 'zmm': 'application/vnd.handheld-entertainment+xml', + 'zoo': 'application/octet-stream', + 'zsh': 'text/x-script.zsh' + }; - return { - detectExtension: detectExtension, - detectMimeType: detectMimeType, - }; -}); + return { + detectExtension: detectExtension, + detectMimeType: detectMimeType + }; +})); // Copyright (c) 2013 Andris Reinman // @@ -65792,13 +17561,13 @@ try { encoding = require('./emailjs-stringencoding'); module.exports = factory(encoding.TextEncoder, encoding.TextDecoder, function (str) { var NodeBuffer = require('buffer').Buffer; - return new NodeBuffer(str, 'binary').toString('base64'); + return new NodeBuffer(str, 'binary').toString("base64"); }); } else { // global for browser root['emailjs-mime-codec'] = factory(root.TextEncoder, root.TextDecoder, root.btoa); } -})(this, function (TextEncoder, TextDecoder, btoa) { +}(this, function (TextEncoder, TextDecoder, btoa) { 'use strict'; btoa = btoa || base64Encode; @@ -65820,10 +17589,10 @@ try { ranges = [ // https://tools.ietf.org/html/rfc2045#section-6.7 [0x09], // - [0x0a], // - [0x0d], // - [0x20, 0x3c], // !"#$%&'()*+,-./0123456789:; - [0x3e, 0x7e], // >?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} + [0x0A], // + [0x0D], // + [0x20, 0x3C], // !"#$%&'()*+,-./0123456789:; + [0x3E, 0x7E] // >?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ], result = '', ord; @@ -65831,10 +17600,7 @@ try { for (var i = 0, len = buffer.length; i < len; i++) { ord = buffer[i]; // if the char is in allowed range, then keep as is, unless it is a ws in the end of a line - if ( - mimecodec._checkRanges(ord, ranges) && - !((ord === 0x20 || ord === 0x09) && (i === len - 1 || buffer[i + 1] === 0x0a || buffer[i + 1] === 0x0d)) - ) { + if (mimecodec._checkRanges(ord, ranges) && !((ord === 0x20 || ord === 0x09) && (i === len - 1 || buffer[i + 1] === 0x0a || buffer[i + 1] === 0x0d))) { result += String.fromCharCode(ord); continue; } @@ -65858,8 +17624,7 @@ try { var encodedBytesCount = (str.match(/\=[\da-fA-F]{2}/g) || []).length, bufferLength = str.length - encodedBytesCount * 2, - chr, - hex, + chr, hex, buffer = new Uint8Array(bufferLength), bufferPos = 0; @@ -65921,11 +17686,11 @@ try { quotedPrintableEncode: function (data, fromCharset) { var mimeEncodedStr = mimecodec.mimeEncode(data, fromCharset); - mimeEncodedStr = mimeEncodedStr + mimeEncodedStr = mimeEncodedStr. // fix line breaks, ensure - .replace(/\r?\n|\r/g, '\r\n') + replace(/\r?\n|\r/g, '\r\n'). // replace spaces in the end of lines - .replace(/[\t ]+$/gm, function (spaces) { + replace(/[\t ]+$/gm, function (spaces) { return spaces.replace(/ /g, '=20').replace(/\t/g, '=09'); }); @@ -65944,11 +17709,11 @@ try { quotedPrintableDecode: function (str, fromCharset) { str = (str || '').toString(); - str = str + str = str. // remove invalid whitespace from the end of lines - .replace(/[\t ]+$/gm, '') + replace(/[\t ]+$/gm, ''). // remove soft line breaks - .replace(/\=(?:\r?\n|$)/g, ''); + replace(/\=(?:\r?\n|$)/g, ''); return mimecodec.mimeDecode(str, fromCharset); }, @@ -65974,18 +17739,16 @@ try { var encodedStr, toCharset = 'UTF-8', - i, - len, - parts; + i, len, parts; if (maxLength && maxLength > 7 + toCharset.length) { - maxLength -= 7 + toCharset.length; + maxLength -= (7 + toCharset.length); } if (mimeWordEncoding === 'Q') { encodedStr = mimecodec.mimeEncode(data, fromCharset); // https://tools.ietf.org/html/rfc2047#section-5 rule (3) - encodedStr = encodedStr.replace(/[^a-z0-9!*+\-\/=]/gi, function (chr) { + encodedStr = encodedStr.replace(/[^a-z0-9!*+\-\/=]/ig, function (chr) { var code = chr.charCodeAt(0); if (chr === ' ') { return '_'; @@ -65995,15 +17758,14 @@ try { }); } else if (mimeWordEncoding === 'B') { encodedStr = typeof data === 'string' ? data : mimecodec.decode(data, fromCharset); - maxLength = Math.max(3, ((maxLength - (maxLength % 4)) / 4) * 3); + maxLength = Math.max(3, (maxLength - maxLength % 4) / 4 * 3); } if (maxLength && encodedStr.length > maxLength) { if (mimeWordEncoding === 'Q') { - encodedStr = mimecodec - ._splitMimeEncodedString(encodedStr, maxLength) - .join('?= =?' + toCharset + '?' + mimeWordEncoding + '?'); + encodedStr = mimecodec._splitMimeEncodedString(encodedStr, maxLength).join('?= =?' + toCharset + '?' + mimeWordEncoding + '?'); } else { + // RFC2047 6.3 (2) states that encoded-word must include an integral number of characters, so no chopping unicode sequences parts = []; for (i = 0, len = encodedStr.length; i < len; i += maxLength) { @@ -66011,15 +17773,7 @@ try { } if (parts.length > 1) { - return ( - '=?' + - toCharset + - '?' + - mimeWordEncoding + - '?' + - parts.join('?= =?' + toCharset + '?' + mimeWordEncoding + '?') + - '?=' - ); + return '=?' + toCharset + '?' + mimeWordEncoding + '?' + parts.join('?= =?' + toCharset + '?' + mimeWordEncoding + '?') + '?='; } else { encodedStr = parts.join(''); } @@ -66028,9 +17782,7 @@ try { encodedStr = mimecodec.base64.encode(encodedStr); } - return ( - '=?' + toCharset + '?' + mimeWordEncoding + '?' + encodedStr + (encodedStr.substr(-2) === '?=' ? '' : '?=') - ); + return '=?' + toCharset + '?' + mimeWordEncoding + '?' + encodedStr + (encodedStr.substr(-2) === '?=' ? '' : '?='); }, /** @@ -66050,15 +17802,12 @@ try { maxLength = maxLength || 0; - var decodedValue = mimecodec.charset.decode(mimecodec.charset.convert(data || '', fromCharset)), + var decodedValue = mimecodec.charset.decode(mimecodec.charset.convert((data || ''), fromCharset)), encodedValue; - encodedValue = decodedValue.replace( - /([^\s\u0080-\uFFFF]*[\u0080-\uFFFF]+[^\s\u0080-\uFFFF]*(?:\s+[^\s\u0080-\uFFFF]*[\u0080-\uFFFF]+[^\s\u0080-\uFFFF]*\s*)?)+/g, - function (match) { - return match.length ? mimecodec.mimeWordEncode(match, mimeWordEncoding || 'Q', maxLength) : ''; - }, - ); + encodedValue = decodedValue.replace(/([^\s\u0080-\uFFFF]*[\u0080-\uFFFF]+[^\s\u0080-\uFFFF]*(?:\s+[^\s\u0080-\uFFFF]*[\u0080-\uFFFF]+[^\s\u0080-\uFFFF]*\s*)?)+/g, function (match) { + return match.length ? mimecodec.mimeWordEncode(match, mimeWordEncoding || 'Q', maxLength) : ''; + }); return encodedValue; }, @@ -66094,6 +17843,7 @@ try { } else { return str; } + }, /** @@ -66104,9 +17854,9 @@ try { */ mimeWordsDecode: function (str) { str = (str || '').toString(); - str = str - .replace(/(=\?[^?]+\?[QqBb]\?[^?]+\?=)\s+(?==\?[^?]+\?[QqBb]\?[^?]+\?=)/g, '$1') - .replace(/\=\?([\w_\-\*]+)\?([QqBb])\?[^\?]+\?\=/g, function (mimeWord) { + str = str. + replace(/(=\?[^?]+\?[QqBb]\?[^?]+\?=)\s+(?==\?[^?]+\?[QqBb]\?[^?]+\?=)/g, '$1'). + replace(/\=\?([\w_\-\*]+)\?([QqBb])\?[^\?]+\?\=/g, function (mimeWord) { return mimecodec.mimeWordDecode(mimeWord); }); @@ -66129,8 +17879,7 @@ try { var pos = 0, len = str.length, result = '', - line, - match; + line, match; while (pos < len) { line = str.substr(pos, lineLengthMax); @@ -66143,10 +17892,7 @@ try { result += line; pos += line.length; continue; - } else if ( - (match = line.match(/(\s+)[^\s]*$/)) && - match[0].length - (afterSpace ? (match[1] || '').length : 0) < line.length - ) { + } else if ((match = line.match(/(\s+)[^\s]*$/)) && match[0].length - (afterSpace ? (match[1] || '').length : 0) < line.length) { line = line.substr(0, line.length - (match[0].length - (afterSpace ? (match[1] || '').length : 0))); } else if ((match = str.substr(pos + line.length).match(/^[^\s]+(\s*)/))) { line = line + match[0].substr(0, match[0].length - (!afterSpace ? (match[1] || '').length : 0)); @@ -66185,17 +17931,14 @@ try { * @return {Object} And object of {key, value} */ headerLineDecode: function (headerLine) { - var line = (headerLine || '') - .toString() - .replace(/(?:\r?\n|\r)[ \t]*/g, ' ') - .trim(), + var line = (headerLine || '').toString().replace(/(?:\r?\n|\r)[ \t]*/g, ' ').trim(), match = line.match(/^\s*([^:]+):(.*)$/), - key = ((match && match[1]) || '').trim(), - value = ((match && match[2]) || '').trim(); + key = (match && match[1] || '').trim(), + value = (match && match[2] || '').trim(); return { key: key, - value: value, + value: value }; }, @@ -66209,11 +17952,9 @@ try { headerLinesDecode: function (headers) { var lines = headers.split(/\r?\n|\r/), headersObj = {}, - key, - value, + key, value, header, - i, - len; + i, len; for (i = lines.length - 1; i >= 0; i--) { if (i && lines[i].match(/^\s/)) { @@ -66290,9 +18031,9 @@ try { */ parseHeaderValue: function (str) { var response = { - value: false, - params: {}, - }, + value: false, + params: {} + }, key = false, value = '', type = 'value', @@ -66332,6 +18073,7 @@ try { value += chr; } escaped = false; + } } @@ -66358,7 +18100,7 @@ try { if (!response.params[actualKey] || typeof response.params[actualKey] !== 'object') { response.params[actualKey] = { charset: false, - values: [], + values: [] }; } @@ -66377,41 +18119,36 @@ try { }); // concatenate split rfc2231 strings and convert encoded strings to mime encoded words - Object.keys(response.params).forEach( - function (key) { - var value; - if (response.params[key] && Array.isArray(response.params[key].values)) { - value = response.params[key].values - .map(function (val) { - return val || ''; - }) - .join(''); - - if (response.params[key].charset) { - // convert "%AB" to "=?charset?Q?=AB?=" - response.params[key] = - '=?' + - response.params[key].charset + - '?Q?' + - value - // fix invalidly encoded chars - .replace(/[=\?_\s]/g, function (s) { - var c = s.charCodeAt(0).toString(16); - if (s === ' ') { - return '_'; - } else { - return '%' + (c.length < 2 ? '0' : '') + c; - } - }) - // change from urlencoding to percent encoding - .replace(/%/g, '=') + - '?='; - } else { - response.params[key] = value; - } + Object.keys(response.params).forEach(function (key) { + var value; + if (response.params[key] && Array.isArray(response.params[key].values)) { + value = response.params[key].values.map(function (val) { + return val || ''; + }).join(''); + + if (response.params[key].charset) { + // convert "%AB" to "=?charset?Q?=AB?=" + response.params[key] = '=?' + + response.params[key].charset + + '?Q?' + + value. + // fix invalidly encoded chars + replace(/[=\?_\s]/g, function (s) { + var c = s.charCodeAt(0).toString(16); + if (s === ' ') { + return '_'; + } else { + return '%' + (c.length < 2 ? '0' : '') + c; + } + }). + // change from urlencoding to percent encoding + replace(/%/g, '=') + + '?='; + } else { + response.params[key] = value; } - }.bind(this), - ); + } + }.bind(this)); return response; }, @@ -66443,36 +18180,38 @@ try { // process ascii only text if (/^[\w.\- ]*$/.test(data)) { + // check if conversion is even needed if (encodedStr.length <= maxLength) { - return [ - { - key: key, - value: /[\s";=]/.test(encodedStr) ? '"' + encodedStr + '"' : encodedStr, - }, - ]; + return [{ + key: key, + value: /[\s";=]/.test(encodedStr) ? '"' + encodedStr + '"' : encodedStr + }]; } encodedStr = encodedStr.replace(new RegExp('.{' + maxLength + '}', 'g'), function (str) { list.push({ - line: str, + line: str }); return ''; }); if (encodedStr) { list.push({ - line: encodedStr, + line: encodedStr }); } + } else { + // first line includes the charset and language info and needs to be encoded // even if it does not contain any unicode characters - line = "utf-8''"; + line = 'utf-8\'\''; isEncoded = true; startPos = 0; // process text with unicode or special chars for (var i = 0, len = encodedStr.length; i < len; i++) { + chr = encodedStr[i]; if (isEncoded) { @@ -66490,7 +18229,7 @@ try { if ((encodeURIComponent(line) + chr).length >= maxLength) { list.push({ line: line, - encoded: isEncoded, + encoded: isEncoded }); line = ''; startPos = i - 1; @@ -66507,7 +18246,7 @@ try { if ((line + chr).length >= maxLength) { list.push({ line: line, - encoded: isEncoded, + encoded: isEncoded }); line = chr = encodedStr[i] === ' ' ? ' ' : encodeURIComponent(encodedStr[i]); if (chr === encodedStr[i]) { @@ -66524,7 +18263,7 @@ try { if (line) { list.push({ line: line, - encoded: isEncoded, + encoded: isEncoded }); } } @@ -66535,7 +18274,7 @@ try { // unencoded lines: {name}*{part} // if any line needs to be encoded then the first line (part==0) is always encoded key: key + '*' + i + (item.encoded ? '*' : ''), - value: /[\s";=]/.test(item.line) ? '"' + item.line + '"' : item.line, + value: /[\s";=]/.test(item.line) ? '"' + item.line + '"' : item.line }; }); }, @@ -66548,10 +18287,7 @@ try { * @return {Array} Split string */ _splitMimeEncodedString: function (str, maxlen) { - var curLine, - match, - chr, - done, + var curLine, match, chr, done, lines = []; // require at least 12 symbols to fit possible 4 octet UTF-8 sequences @@ -66572,7 +18308,7 @@ try { if ((match = str.substr(curLine.length).match(/^\=([0-9A-F]{2})/i))) { chr = parseInt(match[1], 16); // invalid sequence, move one char back anc recheck - if (chr < 0xc2 && chr > 0x7f) { + if (chr < 0xC2 && chr > 0x7F) { curLine = curLine.substr(0, curLine.length - 3); done = false; } @@ -66638,9 +18374,7 @@ try { var pos = 0, len = qpEncodedStr.length, - match, - code, - line, + match, code, line, lineMargin = Math.floor(lineLengthMax / 3), result = ''; @@ -66665,28 +18399,21 @@ try { result += line; pos += line.length; continue; - } else if ( - line.length > lineLengthMax - lineMargin && - (match = line.substr(-lineMargin).match(/[ \t\.,!\?][^ \t\.,!\?]*$/)) - ) { + } else if (line.length > lineLengthMax - lineMargin && (match = line.substr(-lineMargin).match(/[ \t\.,!\?][^ \t\.,!\?]*$/))) { // truncate to nearest space line = line.substr(0, line.length - (match[0].length - 1)); } else if (line.substr(-1) === '\r') { line = line.substr(0, line.length - 1); } else { if (line.match(/\=[\da-f]{0,2}$/i)) { + // push incomplete encoding sequences to the next line if ((match = line.match(/\=[\da-f]{0,1}$/i))) { line = line.substr(0, line.length - match[0].length); } // ensure that utf-8 sequences are not split - while ( - line.length > 3 && - line.length < len - pos && - !line.match(/^(?:=[\da-f]{2}){1,4}$/i) && - (match = line.match(/\=[\da-f]{2}$/gi)) - ) { + while (line.length > 3 && line.length < len - pos && !line.match(/^(?:=[\da-f]{2}){1,4}$/i) && (match = line.match(/\=[\da-f]{2}$/ig))) { code = parseInt(match[0].substr(1, 2), 16); if (code < 128) { break; @@ -66694,10 +18421,11 @@ try { line = line.substr(0, line.length - 3); - if (code >= 0xc0) { + if (code >= 0xC0) { break; } } + } } @@ -66739,13 +18467,14 @@ try { } } return false; - }, + } }; /** * Character set encoding and decoding functions */ mimecodec.charset = { + /** * Encodes an unicode string into an Uint8Array object as UTF-8 * @@ -66779,7 +18508,7 @@ try { } catch (E) { try { return new TextDecoder('utf-8', { - fatal: true, // if the input is not a valid utf-8 the decoder will throw + fatal: true // if the input is not a valid utf-8 the decoder will throw }).decode(buf); } catch (E) { try { @@ -66790,6 +18519,7 @@ try { } } } + }, /** @@ -66837,13 +18567,14 @@ try { } return charset; - }, + } }; /** * Base64 encoding and decoding functions */ mimecodec.base64 = { + /** * Encodes input into base64 * @@ -66908,29 +18639,23 @@ try { var bitsSoFar = 0; var validBits = 0; var iOut = 0; - var arr = new Uint8Array(Math.ceil((base64Str.length * 3) / 4)); + var arr = new Uint8Array(Math.ceil(base64Str.length * 3 / 4)); var c; var bits; for (var i = 0, len = base64Str.length; i < len; i++) { c = base64Str.charCodeAt(i); - if (c >= 0x41 && c <= 0x5a) { - // [A-Z] + if (c >= 0x41 && c <= 0x5a) { // [A-Z] bits = c - 0x41; - } else if (c >= 0x61 && c <= 0x7a) { - // [a-z] + } else if (c >= 0x61 && c <= 0x7a) { // [a-z] bits = c - 0x61 + 0x1a; - } else if (c >= 0x30 && c <= 0x39) { - // [0-9] + } else if (c >= 0x30 && c <= 0x39) { // [0-9] bits = c - 0x30 + 0x34; - } else if (c === 0x2b) { - // + + } else if (c === 0x2b) { // + bits = 0x3e; - } else if (c === 0x2f) { - // / + } else if (c === 0x2f) { // / bits = 0x3f; - } else if (c === 0x3d) { - // = + } else if (c === 0x3d) { // = validBits = 0; continue; } else { @@ -66954,7 +18679,7 @@ try { return arr.subarray(0, iOut); } return arr; - }, + } }; /* @@ -66964,22 +18689,18 @@ try { function base64Encode(input) { var str = String(input); var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; - for ( - var block, charCode, idx = 0, map = chars, output = ''; - str.charAt(idx | 0) || ((map = '='), idx % 1); - output += map.charAt(63 & (block >> (8 - (idx % 1) * 8))) - ) { - charCode = str.charCodeAt((idx += 3 / 4)); - if (charCode > 0xff) { + for (var block, charCode, idx = 0, map = chars, output = ''; str.charAt(idx | 0) || (map = '=', idx % 1); output += map.charAt(63 & block >> 8 - idx % 1 * 8)) { + charCode = str.charCodeAt(idx += 3 / 4); + if (charCode > 0xFF) { throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range."); } - block = (block << 8) | charCode; + block = block << 8 | charCode; } return output; } return mimecodec; -}); +})); // Copyright (c) 2013 Andris Reinman // @@ -67002,7 +18723,7 @@ try { // THE SOFTWARE. (function (root, factory) { - 'use strict'; + "use strict"; if (typeof define === 'function' && define.amd) { define(factory); @@ -67011,8 +18732,8 @@ try { } else { root['emailjs-addressparser'] = factory(); } -})(this, function () { - 'use strict'; +}(this, function () { + "use strict"; /** * Defines an object as a namespace for the parsing function @@ -67042,7 +18763,7 @@ try { parsedAddresses = []; tokens.forEach(function (token) { - if (token.type === 'operator' && (token.value === ',' || token.value === ';')) { + if (token.type === "operator" && (token.value === "," || token.value === ";")) { if (address.length) { addresses.push(address); } @@ -67081,11 +18802,10 @@ try { address: [], comment: [], group: [], - text: [], + text: [] // Filter out , (comments) and regular text - }; - for (var i = 0, len = tokens.length; i < len; i++) { + }; for (var i = 0, len = tokens.length; i < len; i++) { var token = tokens[i]; if (token.type === 'operator') { @@ -67120,8 +18840,8 @@ try { // http://tools.ietf.org/html/rfc2822#appendix-A.1.3 data.text = data.text.join(' '); addresses.push({ - name: data.text || (address && address.name), - group: data.group.length ? parse(data.group.join(',')) : [], + name: data.text || address && address.name, + group: data.group.length ? parse(data.group.join(',')) : [] }); } else { // If no address was found, try to detect one from regular text @@ -67162,11 +18882,9 @@ try { // Keep only the last address occurence, push others to regular text if (data.address.length > 1) { var _address = data.address.pop(); - data.text = data.text.concat( - data.address.map(function (fakeAddress) { - return '<' + fakeAddress + '>'; - }), - ); + data.text = data.text.concat(data.address.map(function (fakeAddress) { + return '<' + fakeAddress + '>'; + })); data.address = [_address]; } @@ -67176,7 +18894,7 @@ try { address = { address: data.address || data.text || '', - name: data.text || data.address || '', + name: data.text || data.address || '' }; if (address.address === address.name) { @@ -67200,32 +18918,34 @@ try { * @param {String} str Address field string */ addressparser.Tokenizer = function (str) { - this.str = (str || '').toString(); - this.operatorCurrent = ''; - this.operatorExpecting = ''; + + this.str = (str || "").toString(); + this.operatorCurrent = ""; + this.operatorExpecting = ""; this.node = null; this.escaped = false; this.list = []; + }; /** * Operator tokens and which tokens are expected to end the sequence */ addressparser.Tokenizer.prototype.operators = { - '"': '"', - '(': ')', - '<': '>', - ',': '', + "\"": "\"", + "(": ")", + "<": ">", + ",": "", // Groups are ended by semicolons - ':': ';', + ":": ";", // Semicolons are not a legal delimiter per the RFC2822 grammar other // than for terminating a group, but they are also not valid for any // other use in this context. Given that some mail clients have // historically allowed the semicolon as a delimiter equivalent to the // comma in their UI, it makes sense to treat them the same as a comma // when used outside of a group. - ';': '', + ";": "" }; /** @@ -67234,15 +18954,14 @@ try { * @return {Array} An array of operator|text tokens */ addressparser.Tokenizer.prototype.tokenize = function () { - var chr, - list = []; + var chr, list = []; for (var i = 0, len = this.str.length; i < len; i++) { chr = this.str.charAt(i); this.checkChar(chr); } this.list.forEach(function (node) { - node.value = (node.value || '').toString().trim(); + node.value = (node.value || "").toString().trim(); if (node.value) { list.push(node); } @@ -67257,22 +18976,22 @@ try { * @param {String} chr Character from the address field */ addressparser.Tokenizer.prototype.checkChar = function (chr) { - if ((chr in this.operators || chr === '\\') && this.escaped) { + if ((chr in this.operators || chr === "\\") && this.escaped) { this.escaped = false; } else if (this.operatorExpecting && chr === this.operatorExpecting) { this.node = { - type: 'operator', - value: chr, + type: "operator", + value: chr }; this.list.push(this.node); this.node = null; - this.operatorExpecting = ''; + this.operatorExpecting = ""; this.escaped = false; return; } else if (!this.operatorExpecting && chr in this.operators) { this.node = { - type: 'operator', - value: chr, + type: "operator", + value: chr }; this.list.push(this.node); this.node = null; @@ -67281,21 +19000,21 @@ try { return; } - if (!this.escaped && chr === '\\') { + if (!this.escaped && chr === "\\") { this.escaped = true; return; } if (!this.node) { this.node = { - type: 'text', - value: '', + type: "text", + value: "" }; this.list.push(this.node); } - if (this.escaped && chr !== '\\') { - this.node.value += '\\'; + if (this.escaped && chr !== "\\") { + this.node.value += "\\"; } this.node.value += chr; @@ -67303,7 +19022,7 @@ try { }; return addressparser; -}); +})); // Copyright (c) 2013 Andris Reinman // @@ -67335,188 +19054,189 @@ try { } else { root['emailjs-mime-parser'] = factory(root['emailjs-mime-codec'], root['emailjs-addressparser']); } -})(this, function (mimecodec, addressparser) { + +}(this, function (mimecodec, addressparser) { 'use strict'; var TIMEZONE_ABBREVATIONS = { - ACDT: '+1030', - ACST: '+0930', - ACT: '+0800', - ADT: '-0300', - AEDT: '+1100', - AEST: '+1000', - AFT: '+0430', - AKDT: '-0800', - AKST: '-0900', - AMST: '-0300', - AMT: '+0400', - ART: '-0300', - AST: '+0300', - AWDT: '+0900', - AWST: '+0800', - AZOST: '-0100', - AZT: '+0400', - BDT: '+0800', - BIOT: '+0600', - BIT: '-1200', - BOT: '-0400', - BRT: '-0300', - BST: '+0600', - BTT: '+0600', - CAT: '+0200', - CCT: '+0630', - CDT: '-0500', - CEDT: '+0200', - CEST: '+0200', - CET: '+0100', - CHADT: '+1345', - CHAST: '+1245', - CHOT: '+0800', - CHST: '+1000', - CHUT: '+1000', - CIST: '-0800', - CIT: '+0800', - CKT: '-1000', - CLST: '-0300', - CLT: '-0400', - COST: '-0400', - COT: '-0500', - CST: '-0600', - CT: '+0800', - CVT: '-0100', - CWST: '+0845', - CXT: '+0700', - DAVT: '+0700', - DDUT: '+1000', - DFT: '+0100', - EASST: '-0500', - EAST: '-0600', - EAT: '+0300', - ECT: '-0500', - EDT: '-0400', - EEDT: '+0300', - EEST: '+0300', - EET: '+0200', - EGST: '+0000', - EGT: '-0100', - EIT: '+0900', - EST: '-0500', - FET: '+0300', - FJT: '+1200', - FKST: '-0300', - FKT: '-0400', - FNT: '-0200', - GALT: '-0600', - GAMT: '-0900', - GET: '+0400', - GFT: '-0300', - GILT: '+1200', - GIT: '-0900', - GMT: '+0000', - GST: '+0400', - GYT: '-0400', - HADT: '-0900', - HAEC: '+0200', - HAST: '-1000', - HKT: '+0800', - HMT: '+0500', - HOVT: '+0700', - HST: '-1000', - ICT: '+0700', - IDT: '+0300', - IOT: '+0300', - IRDT: '+0430', - IRKT: '+0900', - IRST: '+0330', - IST: '+0530', - JST: '+0900', - KGT: '+0600', - KOST: '+1100', - KRAT: '+0700', - KST: '+0900', - LHST: '+1030', - LINT: '+1400', - MAGT: '+1200', - MART: '-0930', - MAWT: '+0500', - MDT: '-0600', - MET: '+0100', - MEST: '+0200', - MHT: '+1200', - MIST: '+1100', - MIT: '-0930', - MMT: '+0630', - MSK: '+0400', - MST: '-0700', - MUT: '+0400', - MVT: '+0500', - MYT: '+0800', - NCT: '+1100', - NDT: '-0230', - NFT: '+1130', - NPT: '+0545', - NST: '-0330', - NT: '-0330', - NUT: '-1100', - NZDT: '+1300', - NZST: '+1200', - OMST: '+0700', - ORAT: '+0500', - PDT: '-0700', - PET: '-0500', - PETT: '+1200', - PGT: '+1000', - PHOT: '+1300', - PHT: '+0800', - PKT: '+0500', - PMDT: '-0200', - PMST: '-0300', - PONT: '+1100', - PST: '-0800', - PYST: '-0300', - PYT: '-0400', - RET: '+0400', - ROTT: '-0300', - SAKT: '+1100', - SAMT: '+0400', - SAST: '+0200', - SBT: '+1100', - SCT: '+0400', - SGT: '+0800', - SLST: '+0530', - SRT: '-0300', - SST: '+0800', - SYOT: '+0300', - TAHT: '-1000', - THA: '+0700', - TFT: '+0500', - TJT: '+0500', - TKT: '+1300', - TLT: '+0900', - TMT: '+0500', - TOT: '+1300', - TVT: '+1200', - UCT: '+0000', - ULAT: '+0800', - UTC: '+0000', - UYST: '-0200', - UYT: '-0300', - UZT: '+0500', - VET: '-0430', - VLAT: '+1000', - VOLT: '+0400', - VOST: '+0600', - VUT: '+1100', - WAKT: '+1200', - WAST: '+0200', - WAT: '+0100', - WEDT: '+0100', - WEST: '+0100', - WET: '+0000', - WST: '+0800', - YAKT: '+1000', - YEKT: '+0600', - Z: '+0000', + "ACDT": "+1030", + "ACST": "+0930", + "ACT": "+0800", + "ADT": "-0300", + "AEDT": "+1100", + "AEST": "+1000", + "AFT": "+0430", + "AKDT": "-0800", + "AKST": "-0900", + "AMST": "-0300", + "AMT": "+0400", + "ART": "-0300", + "AST": "+0300", + "AWDT": "+0900", + "AWST": "+0800", + "AZOST": "-0100", + "AZT": "+0400", + "BDT": "+0800", + "BIOT": "+0600", + "BIT": "-1200", + "BOT": "-0400", + "BRT": "-0300", + "BST": "+0600", + "BTT": "+0600", + "CAT": "+0200", + "CCT": "+0630", + "CDT": "-0500", + "CEDT": "+0200", + "CEST": "+0200", + "CET": "+0100", + "CHADT": "+1345", + "CHAST": "+1245", + "CHOT": "+0800", + "CHST": "+1000", + "CHUT": "+1000", + "CIST": "-0800", + "CIT": "+0800", + "CKT": "-1000", + "CLST": "-0300", + "CLT": "-0400", + "COST": "-0400", + "COT": "-0500", + "CST": "-0600", + "CT": "+0800", + "CVT": "-0100", + "CWST": "+0845", + "CXT": "+0700", + "DAVT": "+0700", + "DDUT": "+1000", + "DFT": "+0100", + "EASST": "-0500", + "EAST": "-0600", + "EAT": "+0300", + "ECT": "-0500", + "EDT": "-0400", + "EEDT": "+0300", + "EEST": "+0300", + "EET": "+0200", + "EGST": "+0000", + "EGT": "-0100", + "EIT": "+0900", + "EST": "-0500", + "FET": "+0300", + "FJT": "+1200", + "FKST": "-0300", + "FKT": "-0400", + "FNT": "-0200", + "GALT": "-0600", + "GAMT": "-0900", + "GET": "+0400", + "GFT": "-0300", + "GILT": "+1200", + "GIT": "-0900", + "GMT": "+0000", + "GST": "+0400", + "GYT": "-0400", + "HADT": "-0900", + "HAEC": "+0200", + "HAST": "-1000", + "HKT": "+0800", + "HMT": "+0500", + "HOVT": "+0700", + "HST": "-1000", + "ICT": "+0700", + "IDT": "+0300", + "IOT": "+0300", + "IRDT": "+0430", + "IRKT": "+0900", + "IRST": "+0330", + "IST": "+0530", + "JST": "+0900", + "KGT": "+0600", + "KOST": "+1100", + "KRAT": "+0700", + "KST": "+0900", + "LHST": "+1030", + "LINT": "+1400", + "MAGT": "+1200", + "MART": "-0930", + "MAWT": "+0500", + "MDT": "-0600", + "MET": "+0100", + "MEST": "+0200", + "MHT": "+1200", + "MIST": "+1100", + "MIT": "-0930", + "MMT": "+0630", + "MSK": "+0400", + "MST": "-0700", + "MUT": "+0400", + "MVT": "+0500", + "MYT": "+0800", + "NCT": "+1100", + "NDT": "-0230", + "NFT": "+1130", + "NPT": "+0545", + "NST": "-0330", + "NT": "-0330", + "NUT": "-1100", + "NZDT": "+1300", + "NZST": "+1200", + "OMST": "+0700", + "ORAT": "+0500", + "PDT": "-0700", + "PET": "-0500", + "PETT": "+1200", + "PGT": "+1000", + "PHOT": "+1300", + "PHT": "+0800", + "PKT": "+0500", + "PMDT": "-0200", + "PMST": "-0300", + "PONT": "+1100", + "PST": "-0800", + "PYST": "-0300", + "PYT": "-0400", + "RET": "+0400", + "ROTT": "-0300", + "SAKT": "+1100", + "SAMT": "+0400", + "SAST": "+0200", + "SBT": "+1100", + "SCT": "+0400", + "SGT": "+0800", + "SLST": "+0530", + "SRT": "-0300", + "SST": "+0800", + "SYOT": "+0300", + "TAHT": "-1000", + "THA": "+0700", + "TFT": "+0500", + "TJT": "+0500", + "TKT": "+1300", + "TLT": "+0900", + "TMT": "+0500", + "TOT": "+1300", + "TVT": "+1200", + "UCT": "+0000", + "ULAT": "+0800", + "UTC": "+0000", + "UYST": "-0200", + "UYT": "-0300", + "UZT": "+0500", + "VET": "-0430", + "VLAT": "+1000", + "VOLT": "+0400", + "VOST": "+0600", + "VUT": "+1100", + "WAKT": "+1200", + "WAST": "+0200", + "WAT": "+0100", + "WEDT": "+0100", + "WEST": "+0100", + "WET": "+0000", + "WST": "+0800", + "YAKT": "+1000", + "YEKT": "+0600", + "Z": "+0000" }; /** @@ -67558,9 +19278,8 @@ try { return !this.running; } - var lines = (this._remainder + (typeof chunk === 'object' ? mimecodec.fromTypedArray(chunk) : chunk)).split( - /\r?\n/g, - ); + var lines = (this._remainder + (typeof chunk === 'object' ? + mimecodec.fromTypedArray(chunk) : chunk)).split(/\r?\n/g); this._remainder = lines.pop(); for (var i = 0, len = lines.length; i < len; i++) { @@ -67611,7 +19330,7 @@ try { * Called when the parsing is ended * @event */ - MimeParser.prototype.onend = function () {}; + MimeParser.prototype.onend = function () { }; /** * Override this function. @@ -67619,7 +19338,7 @@ try { * @event * @param {Object} node Current mime part. See node.header for header lines */ - MimeParser.prototype.onheader = function () {}; + MimeParser.prototype.onheader = function () { }; /** * Override this function. @@ -67628,7 +19347,7 @@ try { * @param {Object} node Current mime part * @param {Uint8Array} chunk Body chunk */ - MimeParser.prototype.onbody = function () {}; + MimeParser.prototype.onbody = function () { }; // NODE PROCESSING @@ -67640,6 +19359,7 @@ try { * @param {Object} parser MimeParser object */ function MimeNode(parentNode, parser) { + // Public properties /** @@ -67732,6 +19452,7 @@ try { * @param {String} line Entire input line as 'binary' string */ MimeNode.prototype.writeLine = function (line) { + this.raw += (this.raw ? '\n' : '') + line; if (this._state === 'HEADER') { @@ -67778,6 +19499,7 @@ try { * Joins folded header lines and calls Content-Type and Transfer-Encoding processors */ MimeNode.prototype._parseHeaders = function () { + // Join header lines var key, value, hasBinary; @@ -67791,9 +19513,7 @@ try { hasBinary = true; } // use default charset at first and if the actual charset is resolved, the conversion is re-run - value = mimecodec.charset.decode( - mimecodec.charset.convert(mimecodec.toTypedArray(value), this.charset || 'iso-8859-1'), - ); + value = mimecodec.charset.decode(mimecodec.charset.convert(mimecodec.toTypedArray(value), this.charset || 'iso-8859-1')); } if (!this.headers[key]) { @@ -67825,8 +19545,7 @@ try { * @return {Object} parsed header */ MimeNode.prototype._parseHeaderValue = function (key, value) { - var parsedValue, - isAddress = false; + var parsedValue, isAddress = false; switch (key) { case 'content-type': @@ -67847,23 +19566,23 @@ try { case 'delivered-to': isAddress = true; parsedValue = { - value: [].concat(addressparser.parse(value) || []), + value: [].concat(addressparser.parse(value) || []) }; break; case 'date': parsedValue = { - value: this._parseDate(value), + value: this._parseDate(value) }; break; default: parsedValue = { - value: value, + value: value }; } parsedValue.initial = value; this._decodeHeaderCharset(parsedValue, { - isAddress: isAddress, + isAddress: isAddress }); return parsedValue; @@ -67930,23 +19649,18 @@ try { // decode addresses if (options.isAddress && Array.isArray(parsed.value)) { - parsed.value.forEach( - function (addr) { - if (addr.name) { - addr.name = mimecodec.mimeWordsDecode(addr.name); - if (Array.isArray(addr.group)) { - this._decodeHeaderCharset( - { - value: addr.group, - }, - { - isAddress: true, - }, - ); - } + parsed.value.forEach(function (addr) { + if (addr.name) { + addr.name = mimecodec.mimeWordsDecode(addr.name); + if (Array.isArray(addr.group)) { + this._decodeHeaderCharset({ + value: addr.group + }, { + isAddress: true + }); } - }.bind(this), - ); + } + }.bind(this)); } return parsed; @@ -67958,10 +19672,10 @@ try { MimeNode.prototype._processContentType = function () { var contentDisposition; - this.contentType = - (this.headers['content-type'] && this.headers['content-type'][0]) || mimecodec.parseHeaderValue('text/plain'); + this.contentType = this.headers['content-type'] && this.headers['content-type'][0] || + mimecodec.parseHeaderValue('text/plain'); this.contentType.value = (this.contentType.value || '').toLowerCase().trim(); - this.contentType.type = this.contentType.value.split('/').shift() || 'text'; + this.contentType.type = (this.contentType.value.split('/').shift() || 'text'); if (this.contentType.params && this.contentType.params.charset && !this.charset) { this.charset = this.contentType.params.charset; @@ -67969,7 +19683,7 @@ try { if (this.contentType.type === 'multipart' && this.contentType.params.boundary) { this._childNodes = []; - this._isMultipart = this.contentType.value.split('/').pop() || 'mixed'; + this._isMultipart = (this.contentType.value.split('/').pop() || 'mixed'); this._multipartBoundary = this.contentType.params.boundary; } @@ -67978,8 +19692,7 @@ try { * Parse message/rfc822 only if the mime part is not marked with content-disposition: attachment, * otherwise treat it like a regular attachment */ - contentDisposition = - (this.headers['content-disposition'] && this.headers['content-disposition'][0]) || + contentDisposition = this.headers['content-disposition'] && this.headers['content-disposition'][0] || mimecodec.parseHeaderValue(''); if ((contentDisposition.value || '').toLowerCase().trim() !== 'attachment') { this._childNodes = []; @@ -67995,18 +19708,17 @@ try { * before it can be emitted */ MimeNode.prototype._processContentTransferEncoding = function () { - this.contentTransferEncoding = - (this.headers['content-transfer-encoding'] && this.headers['content-transfer-encoding'][0]) || + this.contentTransferEncoding = this.headers['content-transfer-encoding'] && this.headers['content-transfer-encoding'][0] || mimecodec.parseHeaderValue('7bit'); this.contentTransferEncoding.value = (this.contentTransferEncoding.value || '').toLowerCase().trim(); }; /** - * Processes a line in the BODY state. If this is a multipart or rfc822 node, - * passes line value to child nodes. - * - * @param {String} line Entire input line as 'binary' string - */ + * Processes a line in the BODY state. If this is a multipart or rfc822 node, + * passes line value to child nodes. + * + * @param {String} line Entire input line as 'binary' string + */ MimeNode.prototype._processBodyLine = function (line) { var curLine, match; @@ -68074,8 +19786,8 @@ try { * @param {Boolean} forceEmit If set to true does not keep any remainders */ MimeNode.prototype._emitBody = function () { - var contentDisposition = - (this.headers['content-disposition'] && this.headers['content-disposition'][0]) || mimecodec.parseHeaderValue(''); + var contentDisposition = this.headers['content-disposition'] && this.headers['content-disposition'][0] || + mimecodec.parseHeaderValue(''); var delSp; if (this._isMultipart || !this._bodyBuffer) { @@ -68083,18 +19795,16 @@ try { } // Process flowed text before emitting it - if ( - /^text\/(plain|html)$/i.test(this.contentType.value) && - this.contentType.params && - /^flowed$/i.test(this.contentType.params.format) - ) { + if (/^text\/(plain|html)$/i.test(this.contentType.value) && + this.contentType.params && /^flowed$/i.test(this.contentType.params.format)) { + delSp = /^yes$/i.test(this.contentType.params.delsp); - this._bodyBuffer = this._bodyBuffer - .split('\n') + this._bodyBuffer = this._bodyBuffer. + split('\n'). // remove soft linebreaks // soft linebreaks are added after space symbols - .reduce(function (previousValue, currentValue) { + reduce(function (previousValue, currentValue) { var body = previousValue; if (delSp) { // delsp adds spaces to text to be able to fold it @@ -68106,25 +19816,23 @@ try { } else { return body + '\n' + currentValue; } - }) + }). // remove whitespace stuffing // http://tools.ietf.org/html/rfc3676#section-4.4 - .replace(/^ /gm, ''); + replace(/^ /gm, ''); } this.content = mimecodec.toTypedArray(this._bodyBuffer); this.rawContent = this._bodyBuffer; if (/^text\/(plain|html)$/i.test(this.contentType.value) && !/^attachment$/i.test(contentDisposition.value)) { + if (!this.charset && /^text\/html$/i.test(this.contentType.value)) { this.charset = this._detectHTMLCharset(this._bodyBuffer); } // decode "binary" string to an unicode string if (!/^utf[\-_]?8$/i.test(this.charset)) { - this.content = mimecodec.charset.convert( - mimecodec.toTypedArray(this._bodyBuffer), - this.charset || 'iso-8859-1', - ); + this.content = mimecodec.charset.convert(mimecodec.toTypedArray(this._bodyBuffer), this.charset || 'iso-8859-1'); } // override charset for text nodes @@ -68148,7 +19856,7 @@ try { html = html.toString('ascii'); } - html = html.replace(/\r?\n|\r/g, ' '); + html = html.replace(/\r?\n|\r/g, " "); if ((meta = html.match(/]*?>/i))) { input = meta[0]; @@ -68169,7 +19877,7 @@ try { }; return MimeParser; -}); +})); // Copyright (c) 2013 Andris Reinman // @@ -68197,21 +19905,11 @@ try { if (typeof define === 'function' && define.amd) { define(['emailjs-mime-codec', 'emailjs-mime-types', 'punycode', 'emailjs-addressparser'], factory); } else if (typeof exports === 'object') { - module.exports = factory( - require('./emailjs-mime-codec'), - require('./emailjs-mime-types'), - require('./punycode'), - require('./emailjs-addressparser'), - ); + module.exports = factory(require('./emailjs-mime-codec'), require('./emailjs-mime-types'), require('./punycode'), require('./emailjs-addressparser')); } else { - root['emailjs-mime-builder'] = factory( - root['emailjs-mime-codec'], - root['emailjs-mime-types'], - root.punycode, - root['emailjs-addressparser'], - ); + root['emailjs-mime-builder'] = factory(root['emailjs-mime-codec'], root['emailjs-mime-types'], root.punycode, root['emailjs-addressparser']); } -})(this, function (mimecodec, mimetypes, punycode, addressparser) { +}(this, function (mimecodec, mimetypes, punycode, addressparser) { 'use strict'; /** @@ -68318,6 +20016,7 @@ try { * @return {Object} Appended node object */ MimeNode.prototype.appendChild = function (childNode) { + if (childNode.rootNode !== this.rootNode) { childNode.rootNode = this.rootNode; childNode._nodeId = ++this.rootNode.nodeCounter; @@ -68340,20 +20039,19 @@ try { return this; } - this.parentNode._childNodes.forEach( - function (childNode, i) { - if (childNode === this) { - node.rootNode = this.rootNode; - node.parentNode = this.parentNode; - node._nodeId = this._nodeId; + this.parentNode._childNodes.forEach(function (childNode, i) { + if (childNode === this) { - this.rootNode = this; - this.parentNode = undefined; + node.rootNode = this.rootNode; + node.parentNode = this.parentNode; + node._nodeId = this._nodeId; - node.parentNode._childNodes[i] = node; - } - }.bind(this), - ); + this.rootNode = this; + this.parentNode = undefined; + + node.parentNode._childNodes[i] = node; + } + }.bind(this)); return node; }; @@ -68399,19 +20097,15 @@ try { } // allow [{key:'content-type', value: 'text/plain'}] else if (Array.isArray(key)) { - key.forEach( - function (i) { - this.setHeader(i.key, i.value); - }.bind(this), - ); + key.forEach(function (i) { + this.setHeader(i.key, i.value); + }.bind(this)); } // allow {'content-type': 'text/plain'} else { - Object.keys(key).forEach( - function (i) { - this.setHeader(i, key[i]); - }.bind(this), - ); + Object.keys(key).forEach(function (i) { + this.setHeader(i, key[i]); + }.bind(this)); } return this; } @@ -68420,7 +20114,7 @@ try { headerValue = { key: key, - value: value, + value: value }; // Check if the value exists and overwrite @@ -68458,6 +20152,7 @@ try { * @return {Object} current node */ MimeNode.prototype.addHeader = function (key, value) { + // Allow setting multiple headers at once if (!value && key && typeof key === 'object') { // allow {key:'content-type', value: 'text/plain'} @@ -68466,26 +20161,22 @@ try { } // allow [{key:'content-type', value: 'text/plain'}] else if (Array.isArray(key)) { - key.forEach( - function (i) { - this.addHeader(i.key, i.value); - }.bind(this), - ); + key.forEach(function (i) { + this.addHeader(i.key, i.value); + }.bind(this)); } // allow {'content-type': 'text/plain'} else { - Object.keys(key).forEach( - function (i) { - this.addHeader(i, key[i]); - }.bind(this), - ); + Object.keys(key).forEach(function (i) { + this.addHeader(i, key[i]); + }.bind(this)); } return this; } this._headers.push({ key: this._normalizeHeaderKey(key), - value: value, + value: value }); return this; @@ -68528,8 +20219,7 @@ try { MimeNode.prototype.build = function () { var lines = [], contentType = (this.getHeader('Content-Type') || '').toString().toLowerCase().trim(), - transferEncoding, - flowed; + transferEncoding, flowed; if (this.content) { transferEncoding = (this.getHeader('Content-Transfer-Encoding') || '').toString().toLowerCase().trim(); @@ -68559,58 +20249,52 @@ try { this.setHeader('Content-Disposition', 'attachment'); } - this._headers.forEach( - function (header) { - var key = header.key, - value = header.value, - structured; - - switch (header.key) { - case 'Content-Disposition': - structured = mimecodec.parseHeaderValue(value); - if (this.filename) { - structured.params.filename = this.filename; - } - value = this._buildHeaderValue(structured); - break; - case 'Content-Type': - structured = mimecodec.parseHeaderValue(value); + this._headers.forEach(function (header) { + var key = header.key, + value = header.value, + structured; - this._handleContentType(structured); + switch (header.key) { + case 'Content-Disposition': + structured = mimecodec.parseHeaderValue(value); + if (this.filename) { + structured.params.filename = this.filename; + } + value = this._buildHeaderValue(structured); + break; + case 'Content-Type': + structured = mimecodec.parseHeaderValue(value); - if (flowed) { - structured.params.format = 'flowed'; - } - if (String(structured.params.format).toLowerCase().trim() === 'flowed') { - flowed = true; - } + this._handleContentType(structured); - if ( - structured.value.match(/^text\//) && - typeof this.content === 'string' && - /[\u0080-\uFFFF]/.test(this.content) - ) { - structured.params.charset = 'utf-8'; - } + if (flowed) { + structured.params.format = 'flowed'; + } + if (String(structured.params.format).toLowerCase().trim() === 'flowed') { + flowed = true; + } - value = this._buildHeaderValue(structured); - break; - case 'Bcc': - if (this.includeBccInHeader === false) { - // skip BCC values - return; - } - } + if (structured.value.match(/^text\//) && typeof this.content === 'string' && /[\u0080-\uFFFF]/.test(this.content)) { + structured.params.charset = 'utf-8'; + } - // skip empty lines - value = this._encodeHeaderValue(key, value); - if (!(value || '').toString().trim()) { - return; - } + value = this._buildHeaderValue(structured); + break; + case 'Bcc': + if (this.includeBccInHeader === false) { + // skip BCC values + return; + } + } - lines.push(mimecodec.foldLines(key + ': ' + value, 76)); - }.bind(this), - ); + // skip empty lines + value = this._encodeHeaderValue(key, value); + if (!(value || '').toString().trim()) { + return; + } + + lines.push(mimecodec.foldLines(key + ': ' + value, 76)); + }.bind(this)); // Ensure mandatory header fields if (this.rootNode === this) { @@ -68619,24 +20303,18 @@ try { } // You really should define your own Message-Id field if (!this.getHeader('Message-Id')) { - lines.push( - 'Message-Id: <' + - // crux to generate random strings like this: - // "1401391905590-58aa8c32-d32a065c-c1a2aad2" - [0, 0, 0].reduce(function (prev) { - return ( - prev + - '-' + - Math.floor((1 + Math.random()) * 0x100000000) - .toString(16) - .substring(1) - ); - }, Date.now()) + - '@' + - // try to use the domain of the FROM address or fallback localhost - (this.getEnvelope().from || 'localhost').split('@').pop() + - '>', - ); + lines.push('Message-Id: <' + + // crux to generate random strings like this: + // "1401391905590-58aa8c32-d32a065c-c1a2aad2" + [0, 0, 0].reduce(function (prev) { + return prev + '-' + Math.floor((1 + Math.random()) * 0x100000000). + toString(16). + substring(1); + }, Date.now()) + + '@' + + // try to use the domain of the FROM address or fallback localhost + (this.getEnvelope().from || 'localhost').split('@').pop() + + '>'); } if (!this.getHeader('MIME-Version')) { lines.push('MIME-Version: 1.0'); @@ -68645,25 +20323,20 @@ try { lines.push(''); if (this.content) { + switch (transferEncoding) { case 'quoted-printable': lines.push(mimecodec.quotedPrintableEncode(this.content)); break; case 'base64': - lines.push(mimecodec.base64Encode(this.content, (typeof this.content === 'object' && 'binary') || false)); + lines.push(mimecodec.base64Encode(this.content, typeof this.content === 'object' && 'binary' || false)); break; default: if (flowed) { - lines.push( - mimecodec.foldLines( - this.content - .replace(/\r?\n/g, '\r\n') - // space stuffing http://tools.ietf.org/html/rfc3676#section-4.2 - .replace(/^( |From|>)/gim, ' $1'), - 76, - true, - ), - ); + lines.push(mimecodec.foldLines(this.content.replace(/\r?\n/g, '\r\n'). + // space stuffing http://tools.ietf.org/html/rfc3676#section-4.2 + replace(/^( |From|>)/igm, ' $1'), + 76, true)); } else { lines.push(this.content.replace(/\r?\n/g, '\r\n')); } @@ -68674,12 +20347,10 @@ try { } if (this.multipart) { - this._childNodes.forEach( - function (node) { - lines.push('--' + this.boundary); - lines.push(node.build()); - }.bind(this), - ); + this._childNodes.forEach(function (node) { + lines.push('--' + this.boundary); + lines.push(node.build()); + }.bind(this)); lines.push('--' + this.boundary + '--'); lines.push(''); } @@ -68695,21 +20366,19 @@ try { MimeNode.prototype.getEnvelope = function () { var envelope = { from: false, - to: [], + to: [] }; - this._headers.forEach( - function (header) { - var list = []; - if (header.key === 'From' || (!envelope.from && ['Reply-To', 'Sender'].indexOf(header.key) >= 0)) { - this._convertAddresses(this._parseAddresses(header.value), list); - if (list.length && list[0]) { - envelope.from = list[0]; - } - } else if (['To', 'Cc', 'Bcc'].indexOf(header.key) >= 0) { - this._convertAddresses(this._parseAddresses(header.value), envelope.to); + this._headers.forEach(function (header) { + var list = []; + if (header.key === 'From' || (!envelope.from && ['Reply-To', 'Sender'].indexOf(header.key) >= 0)) { + this._convertAddresses(this._parseAddresses(header.value), list); + if (list.length && list[0]) { + envelope.from = list[0]; } - }.bind(this), - ); + } else if (['To', 'Cc', 'Bcc'].indexOf(header.key) >= 0) { + this._convertAddresses(this._parseAddresses(header.value), envelope.to); + } + }.bind(this)); return envelope; }; @@ -68724,17 +20393,12 @@ try { * @return {Array} An array of address objects */ MimeNode.prototype._parseAddresses = function (addresses) { - return [].concat.apply( - [], - [].concat(addresses).map( - function (address) { - if (address && address.address) { - address = this._convertAddresses(address); - } - return addressparser.parse(address); - }.bind(this), - ), - ); + return [].concat.apply([], [].concat(addresses).map(function (address) { + if (address && address.address) { + address = this._convertAddresses(address); + } + return addressparser.parse(address); + }.bind(this))); }; /** @@ -68744,18 +20408,14 @@ try { * @return {String} key in Camel-Case form */ MimeNode.prototype._normalizeHeaderKey = function (key) { - return ( - (key || '') - .toString() - // no newlines in keys - .replace(/\r?\n|\r/g, ' ') - .trim() - .toLowerCase() - // use uppercase words, except MIME - .replace(/^MIME\b|^[a-z]|\-[a-z]/gi, function (c) { - return c.toUpperCase(); - }) - ); + return (key || '').toString(). + // no newlines in keys + replace(/\r?\n|\r/g, ' '). + trim().toLowerCase(). + // use uppercase words, except MIME + replace(/^MIME\b|^[a-z]|\-[a-z]/ig, function (c) { + return c.toUpperCase(); + }); }; /** @@ -68767,20 +20427,18 @@ try { MimeNode.prototype._buildHeaderValue = function (structured) { var paramsArray = []; - Object.keys(structured.params || {}).forEach( - function (param) { - // filename might include unicode characters so it is a special case - if (param === 'filename') { - mimecodec.continuationEncode(param, structured.params[param], 50).forEach(function (encodedParam) { - // continuation encoded strings are always escaped, so no need to use enclosing quotes - // in fact using quotes might end up with invalid filenames in some clients - paramsArray.push(encodedParam.key + '=' + encodedParam.value); - }); - } else { - paramsArray.push(param + '=' + this._escapeHeaderArgument(structured.params[param])); - } - }.bind(this), - ); + Object.keys(structured.params || {}).forEach(function (param) { + // filename might include unicode characters so it is a special case + if (param === 'filename') { + mimecodec.continuationEncode(param, structured.params[param], 50).forEach(function (encodedParam) { + // continuation encoded strings are always escaped, so no need to use enclosing quotes + // in fact using quotes might end up with invalid filenames in some clients + paramsArray.push(encodedParam.key + '=' + encodedParam.value); + }); + } else { + paramsArray.push(param + '=' + this._escapeHeaderArgument(structured.params[param])); + } + }.bind(this)); return structured.value + (paramsArray.length ? '; ' + paramsArray.join('; ') : ''); }; @@ -68794,7 +20452,7 @@ try { */ MimeNode.prototype._escapeHeaderArgument = function (value) { if (value.match(/[\s'"\\;\/=]|^\-/g)) { - return '"' + value.replace(/(["\\])/g, '\\$1') + '"'; + return '"' + value.replace(/(["\\])/g, "\\$1") + '"'; } else { return value; } @@ -68814,8 +20472,7 @@ try { }); if (this.multipart) { - this.boundary = structured.params.boundary = - structured.params.boundary || this.boundary || this._generateBoundary(); + this.boundary = structured.params.boundary = structured.params.boundary || this.boundary || this._generateBoundary(); } else { this.boundary = false; } @@ -68863,30 +20520,20 @@ try { return value; case 'References': - value = [].concat - .apply( - [], - [].concat(value || '').map(function (elm) { - elm = (elm || '') - .toString() - .replace(/\r?\n|\r/g, ' ') - .trim(); - return elm - .replace(/<[^>]*>/g, function (str) { - return str.replace(/\s/g, ''); - }) - .split(/\s+/); - }), - ) - .map(function (elm) { - if (elm.charAt(0) !== '<') { - elm = '<' + elm; - } - if (elm.charAt(elm.length - 1) !== '>') { - elm = elm + '>'; - } - return elm; - }); + value = [].concat.apply([], [].concat(value || '').map(function (elm) { + elm = (elm || '').toString().replace(/\r?\n|\r/g, ' ').trim(); + return elm.replace(/<[^>]*>/g, function (str) { + return str.replace(/\s/g, ''); + }).split(/\s+/); + })).map(function (elm) { + if (elm.charAt(0) !== '<') { + elm = '<' + elm; + } + if (elm.charAt(elm.length - 1) !== '>') { + elm = elm + '>'; + } + return elm; + }); return value.join(' ').trim(); @@ -68909,36 +20556,27 @@ try { uniqueList = uniqueList || []; - [].concat(addresses || []).forEach( - function (address) { - if (address.address) { - address.address = address.address - .replace(/^.*?(?=\@)/, function (user) { - return mimecodec.mimeWordsEncode(user, 'Q', 52); - }) - .replace(/@.+$/, function (domain) { - return '@' + punycode.toASCII(domain.substr(1)); - }); + [].concat(addresses || []).forEach(function (address) { + if (address.address) { + address.address = address.address.replace(/^.*?(?=\@)/, function (user) { + return mimecodec.mimeWordsEncode(user, 'Q', 52); + }).replace(/@.+$/, function (domain) { + return '@' + punycode.toASCII(domain.substr(1)); + }); - if (!address.name) { - values.push(address.address); - } else if (address.name) { - values.push(this._encodeAddressName(address.name) + ' <' + address.address + '>'); - } + if (!address.name) { + values.push(address.address); + } else if (address.name) { + values.push(this._encodeAddressName(address.name) + ' <' + address.address + '>'); + } - if (uniqueList.indexOf(address.address) < 0) { - uniqueList.push(address.address); - } - } else if (address.group) { - values.push( - this._encodeAddressName(address.name) + - ':' + - (address.group.length ? this._convertAddresses(address.group, uniqueList) : '').trim() + - ';', - ); + if (uniqueList.indexOf(address.address) < 0) { + uniqueList.push(address.address); } - }.bind(this), - ); + } else if (address.group) { + values.push(this._encodeAddressName(address.name) + ':' + (address.group.length ? this._convertAddresses(address.group, uniqueList) : '').trim() + ';'); + } + }.bind(this)); return values.join(', '); }; @@ -68975,7 +20613,7 @@ try { }; return MimeNode; -}); +})); // end emailjs })(); @@ -69011,7 +20649,7 @@ var time_estimates;time_estimates={estimate_attack_times:function(e){var t,n,s,o /* entrypoint-bare starts here */ /*! For license information please see entrypoint-bare.js.LICENSE.txt */ -(()=>{var e={3830:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Att=void 0;const n=r(4769);class i{static attachmentsPattern=/^(((cryptup|flowcrypt)-backup-[a-z0-9]+\.(key|asc))|(.+\.pgp)|(.+\.gpg)|(.+\.asc)|(noname)|(message)|(PGPMIME version identification)|())$/gm;length=NaN;type;name;url;id;msgId;inline;cid;contentDescription;bytes;treatAsValue;constructor({data:e,type:t,name:r,length:n,url:i,inline:a,id:s,msgId:o,treatAs:c,cid:u,contentDescription:l}){if(void 0===e&&void 0===i&&void 0===s)throw new Error("Att: one of data|url|id has to be set");if(s&&!o)throw new Error("Att: if id is set, msgId must be set too");e?(this.bytes=e,this.length=e.length):this.length=Number(n),this.name=r||"",this.type=t||"application/octet-stream",this.url=i||void 0,this.inline=!!a,this.id=s||void 0,this.msgId=o||void 0,this.treatAsValue=c||void 0,this.cid=u||void 0,this.contentDescription=l||void 0}static keyinfoAsPubkeyAtt=e=>new i({data:n.Buf.fromUtfStr(e.public),type:"application/pgp-keys",name:`0x${e.longid}.asc`});hasData=()=>this.bytes instanceof Uint8Array;setData=e=>{if(this.hasData())throw new Error("Att bytes already set");this.bytes=e};getData=()=>{if(this.bytes instanceof n.Buf)return this.bytes;if(this.bytes instanceof Uint8Array)return new n.Buf(this.bytes);throw new Error("Att has no data set")};treatAs=()=>this.treatAsValue?this.treatAsValue:["PGPexch.htm.pgp","PGPMIME version identification","Version.txt","PGPMIME Versions Identification"].includes(this.name)?"hidden":"signature.asc"===this.name||"application/pgp-signature"===this.type?"signature":this.name||this.type.startsWith("image/")?"msg.asc"===this.name&&this.length<100&&"application/pgp-encrypted"===this.type?"hidden":["message","msg.asc","message.asc","encrypted.asc","encrypted.eml.pgp","Message.pgp"].includes(this.name)?"encryptedMsg":this.name.match(/(\.pgp$)|(\.gpg$)|(\.[a-zA-Z0-9]{3,4}\.asc$)/g)?"encryptedFile":this.name.match(/(cryptup|flowcrypt)-backup-[a-z0-9]+\.(key|asc)$/g)?"privateKey":this.name.match(/^(0|0x)?[A-F0-9]{8}([A-F0-9]{8})?.*\.asc$/g)||this.name.toLowerCase().includes("public")&&this.name.match(/[A-F0-9]{8}.*\.asc$/g)||this.name.match(/\.asc$/)&&this.hasData()&&n.Buf.with(this.getData().subarray(0,100)).toUtfStr().includes("-----BEGIN PGP PUBLIC KEY BLOCK-----")?"publicKey":this.name.match(/\.asc$/)&&this.length<1e5&&!this.inline?"encryptedMsg":"plainFile":this.length<100?"hidden":"encryptedMsg"}t.Att=i},4769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Buf=void 0;const n=r(1106);class i extends Uint8Array{static concat=e=>{const t=new Uint8Array(e.reduce(((e,t)=>e+t.length),0));let r=0;for(const n of e)t.set(n,r),r+=n.length;return i.fromUint8(t)};static with=e=>e instanceof i?e:e instanceof Uint8Array?i.fromUint8(e):i.fromUtfStr(e);static fromUint8=e=>new i(e);static fromRawBytesStr=e=>{const t=e.length,r=new i(t);for(let n=0;n{let t;const r=e.length;let n;const a=[];for(let i=0;i55295&&t<57344){if(!n){if(t>56319){a.push(239,191,189);continue}if(i+1===r){a.push(239,191,189);continue}n=t;continue}if(t<56320){a.push(239,191,189),n=t;continue}t=65536+(n-55296<<10|t-56320)}else n&&a.push(239,191,189);if(n=void 0,t<128)a.push(t);else if(t<2048)a.push(t>>6|192,63&t|128);else if(t<65536)a.push(t>>12|224,t>>6&63|128,63&t|128);else{if(!(t<1114112))throw new Error("Invalid code point");a.push(t>>18|240,t>>12&63|128,t>>6&63|128,63&t|128)}}return new i(a)};static fromBase64Str=e=>i.fromRawBytesStr((0,n.base64decode)(e));static fromBase64UrlStr=e=>i.fromBase64Str(e.replace(/-/g,"+").replace(/_/g,"/"));toString=(e="inform")=>this.toUtfStr(e);toUtfStr=(e="inform")=>{const t=this.length;let r=0,n="";const i=new Array(t);for(let a=0;a{const e=this.length,t=[];for(let r=0;r(0,n.base64encode)(this.toRawBytesStr());toBase64UrlStr=()=>this.toBase64Str().replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}t.Buf=i},4115:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Value=t.Str=void 0;const n=r(1106);class i{static extractErrorMessage=e=>{if("object"==typeof e&&void 0!==e.message)return"string"==typeof e.message?e.message:JSON.stringify(e)};static parseEmail=(e,t="VALIDATE")=>{let r,n;if(e.includes("<")&&e.includes(">")){const t=e.indexOf("<"),i=e.indexOf(">");r=e.substr(t+1,t-i-1).replace(/["']/g,"").trim().toLowerCase(),n=e.substr(0,e.indexOf("<")).replace(/["']/g,"").trim()}else r=e.replace(/["']/g,"").trim().toLowerCase();return"VALIDATE"!==t||i.isEmailValid(r)||(r=void 0),{email:r,name:n,full:e}};static prettyPrint=e=>"object"==typeof e?JSON.stringify(e,void 0,2).replace(/ /g," ").replace(/\n/g,"
"):String(e);static normalizeSpaces=e=>e.replace(RegExp(String.fromCharCode(160),"g"),String.fromCharCode(32));static normalizeDashes=e=>e.replace(/^—–|—–$/gm,"-----");static normalize=e=>i.normalizeSpaces(i.normalizeDashes(e));static isEmailValid=e=>-1===e.indexOf(" ")&&/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e);static monthName=e=>["January","February","March","April","May","June","July","August","September","October","November","December"][e];static sloppyRandom=(e=5)=>{let t="";for(let r=0;re.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");static asEscapedHtml=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">").replace(/\//g,"/").replace(/\n/g,"
");static htmlAttrDecode=e=>{try{return JSON.parse(i.base64urlUtfDecode(e))}catch(e){return}};static capitalize=e=>e.trim().split(" ").map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join(" ");static pluralize=(e,t,r="s")=>`${e} ${t}${e>1?r:""}`;static toUtcTimestamp=(e,t=!1)=>t?String(Date.parse(e)):Date.parse(e);static datetimeToDate=e=>e.substring(0,10).replace(/"/g,""").replace(/'/g,"'").replace(/e.toISOString().replace(/T/," ").replace(/:[^:]+$/,"");static base64urlUtfDecode=e=>void 0===e?e:decodeURIComponent(String(Array.prototype.map.call((0,n.base64decode)(e.replace(/-/g,"+").replace(/_/g,"/")),(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2))).join("")))}t.Str=i;class a{static arr={unique:e=>{const t=[];for(const r of e)t.includes(r)||t.push(r);return t},contains:(e,t)=>Boolean(e&&"function"==typeof e.indexOf&&-1!==e.indexOf(t)),sum:e=>e.reduce(((e,t)=>e+t),0),average:e=>a.arr.sum(e)/e.length};static obj={keyByValue:(e,t)=>{for(const r of Object.keys(e))if(e[r]===t)return r}}}t.Value=a},2853:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.gmailBackupSearchQuery=t.GMAIL_RECOVERY_EMAIL_SUBJECTS=t.BACKEND_API_HOST=t.GOOGLE_CONTACTS_API_HOST=t.GOOGLE_OAUTH_SCREEN_HOST=t.GOOGLE_API_HOST=t.VERSION=void 0,t.VERSION=APP_VERSION,t.GOOGLE_API_HOST="[BUILD_REPLACEABLE_GOOGLE_API_HOST]",t.GOOGLE_OAUTH_SCREEN_HOST="[BUILD_REPLACEABLE_GOOGLE_OAUTH_SCREEN_HOST]",t.GOOGLE_CONTACTS_API_HOST="[BUILD_REPLACEABLE_GOOGLE_CONTACTS_API_HOST]",t.BACKEND_API_HOST="[BUILD_REPLACEABLE_BACKEND_API_HOST]",t.GMAIL_RECOVERY_EMAIL_SUBJECTS=["Your FlowCrypt Backup","Your CryptUp Backup","All you need to know about CryptUP (contains a backup)","CryptUP Account Backup"],t.gmailBackupSearchQuery=e=>["from:"+e,"to:"+e,'(subject:"'+t.GMAIL_RECOVERY_EMAIL_SUBJECTS.join('" OR subject: "')+'")',"-is:spam"].join(" ")},7596:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Mime=void 0;const n=r(4115),i=r(8078),a=r(3830),s=r(4769),o=r(6240),c=r(504),u=r(4313),l=r(9357),h=r(1106),d=(0,i.requireMimeParser)(),f=(0,i.requireMimeBuilder)(),p=(0,i.requireIso88592)();class y{static processDecoded=e=>{const t=[];if(e.text){const r=u.MsgBlockParser.detectBlocks(n.Str.normalize(e.text)).blocks;r.find((e=>"encryptedMsg"===e.type||"signedMsg"===e.type||"publicKey"===e.type||"privateKey"===e.type))?t.push(...r):e.html?t.push(c.MsgBlock.fromContent("plainHtml",e.html)):t.push(...r)}else e.html&&t.push(c.MsgBlock.fromContent("plainHtml",e.html));for(const r of e.atts){const n=r.treatAs();if("encryptedMsg"===n){const e=l.PgpArmor.clip(r.getData().toUtfStr());e&&t.push(c.MsgBlock.fromContent("encryptedMsg",e))}else"signature"===n?e.signature=e.signature||r.getData().toUtfStr():"publicKey"===n||"privateKey"===n?t.push(...u.MsgBlockParser.detectBlocks(r.getData().toUtfStr()).blocks):"encryptedFile"===n?t.push(c.MsgBlock.fromAtt("encryptedAtt","",{name:r.name,type:r.type,length:r.getData().length,data:r.getData()})):"plainFile"===n&&t.push(c.MsgBlock.fromAtt("plainAtt","",{name:r.name,type:r.type,length:r.getData().length,data:r.getData(),inline:r.inline,cid:r.cid}))}if(e.signature){for(const r of t)"plainText"===r.type?(r.type="signedMsg",r.signature=e.signature):"plainHtml"===r.type&&(r.type="signedHtml",r.signature=e.signature);t.find((e=>"plainText"===e.type||"plainHtml"===e.type||"signedMsg"===e.type||"signedHtml"===e.type))||t.push(new c.MsgBlock("signedMsg","",!0,e.signature))}return{headers:e.headers,blocks:t,from:e.from,to:e.to,rawSignedContent:e.rawSignedContent}};static process=async e=>{const t=await y.decode(e);return y.processDecoded(t)};static isPlainImgAtt=e=>"plainAtt"===e.type&&e.attMeta&&e.attMeta.type&&["image/jpeg","image/jpg","image/bmp","image/png","image/svg+xml"].includes(e.attMeta.type);static replyHeaders=e=>{const t=String(e.headers["message-id"]||"");return{"in-reply-to":t,references:String(e.headers["in-reply-to"]||"")+" "+t}};static resemblesMsg=e=>{const t=new s.Buf(e.slice(0,1e3)).toUtfStr().toLowerCase(),r=t.match(/content-type: +[0-9a-z\-\/]+/);return!!r&&(!!(t.match(/content-transfer-encoding: +[0-9a-z\-\/]+/)||t.match(/content-disposition: +[0-9a-z\-\/]+/)||t.match(/; boundary=/)||t.match(/; charset=/))||Boolean(0===r.index&&t.match(/boundary=/)))};static decode=async e=>{const t={atts:[],headers:{},subject:void 0,text:void 0,html:void 0,signature:void 0,from:void 0,to:[],cc:[],bcc:[]},r=new d,n={};return r.onbody=e=>{const t=String(e.path.join("."));void 0===n[t]&&(n[t]=e)},await new Promise(((i,a)=>{try{r.onend=()=>{try{for(const e of Object.keys(r.node.headers))t.headers[e]=r.node.headers[e][0].value;t.rawSignedContent=y.retrieveRawSignedContent([r.node]);for(const e of Object.values(n))"application/pgp-signature"===y.getNodeType(e)?t.signature=e.rawContent:"text/html"!==y.getNodeType(e)||y.getNodeFilename(e)?"text/plain"!==y.getNodeType(e)||y.getNodeFilename(e)&&!y.isNodeInline(e)?"text/rfc822-headers"===y.getNodeType(e)?e._parentNode&&e._parentNode.headers.subject&&(t.subject=e._parentNode.headers.subject[0].value):t.atts.push(y.getNodeAsAtt(e)):t.text=(t.text?`${t.text}\n\n`:"")+y.getNodeContentAsUtfStr(e):t.html=(t.html||"")+y.getNodeContentAsUtfStr(e);const e=y.headerGetAddress(t,["from","to","cc","bcc"]);t.subject=String(t.subject||t.headers.subject||""),Object.assign(t,e),i(t)}catch(e){a(e)}},r.write(e),r.end()}catch(e){o.Catch.reportErr(e),i(t)}}))};static encode=async(e,t,r=[],n)=>{const i=new f("pgpMimeEncrypted"!==n?"multipart/mixed":'multipart/encrypted; protocol="application/pgp-encrypted";',{includeBccInHeader:!0});for(const e of Object.keys(t))i.addHeader(e,t[e]);if(Object.keys(e).length){let t;if(1===Object.keys(e).length)t=y.newContentNode(f,Object.keys(e)[0],e[Object.keys(e)[0]]||"");else{t=new f("multipart/alternative");for(const r of Object.keys(e))t.appendChild(y.newContentNode(f,r,e[r]??""))}i.appendChild(t)}for(const e of r)i.appendChild(y.createAttNode(e));return i.build()};static subjectWithoutPrefixes=e=>e.replace(/^((Re|Fwd): ?)+/g,"").trim();static encodePgpMimeSigned=async(e,t,r=[],i)=>{const o=`SIG_PLACEHOLDER_${n.Str.sloppyRandom(10)}`,c=new f('multipart/signed; protocol="application/pgp-signature";',{includeBccInHeader:!0});for(const e of Object.keys(t))c.addHeader(e,t[e]);const u=new f("multipart/alternative");for(const t of Object.keys(e))u.appendChild(y.newContentNode(f,t,e[t]??""));const l=new f("multipart/mixed");l.appendChild(u);for(const e of r)l.appendChild(y.createAttNode(e));const h=new a.Att({data:s.Buf.fromUtfStr(o),type:"application/pgp-signature",name:"signature.asc"}),d=y.createAttNode(h);c.appendChild(l),c.appendChild(d);const p=c.build(),{rawSignedContent:g}=await y.decode(s.Buf.fromUtfStr(p));if(!g)throw console.log(`mimeStrWithPlaceholderSig(placeholder:${o}):\n${p}`),new Error("Could not find raw signed content immediately after mime-encoding a signed message");const m=await i(g),b=p.replace(s.Buf.fromUtfStr(o).toBase64Str(),s.Buf.fromUtfStr(m).toBase64Str());if(b===p)throw console.log(`pgpMimeSigned(placeholder:${o}):\n${b}`),new Error("Replaced sigPlaceholder with realSignature but mime stayed the same");return b};static headerGetAddress=(e,t)=>{const r={to:[],cc:[],bcc:[]};let i;const a=e=>"string"==typeof e?[e].map((e=>n.Str.parseEmail(e).email)).filter((e=>!!e)):e.map((e=>e.address));for(const o of t){const t=e.headers[o];t&&("from"===o?(s=t,i=n.Str.parseEmail((Array.isArray(s)?(s[0]||{}).address:String(s||""))||"").email):r[o]=[...r[o],...a(t)])}var s;return{...r,from:i}};static retrieveRawSignedContent=e=>{for(const t of e){if(!t._childNodes||!t._childNodes.length)continue;const e="signed"===t._isMultipart,r="mixed"===t._isMultipart&&2===t._childNodes.length&&"application/pgp-signature"===y.getNodeType(t._childNodes[1]);if(e||r){let e=t._childNodes[0].raw.replace(/\r?\n/g,"\r\n");return/--$/.test(e)&&(e+="\r\n"),e}return y.retrieveRawSignedContent(t._childNodes)}};static createAttNode=e=>{const t=`${e.type}; name="${e.name}"`,r=`f_${n.Str.sloppyRandom(30)}@flowcrypt`,i={};return e.contentDescription&&(i["Content-Description"]=e.contentDescription),i["Content-Disposition"]=e.inline?"inline":"attachment",i["X-Attachment-Id"]=r,i["Content-ID"]=`<${r}>`,i["Content-Transfer-Encoding"]="base64",new f(t,{filename:e.name}).setHeader(i).setContent(e.getData())};static getNodeType=(e,t="value")=>{if(e.headers["content-type"]&&e.headers["content-type"][0])return e.headers["content-type"][0][t]};static getNodeContentId=e=>{if(e.headers["content-id"]&&e.headers["content-id"][0])return e.headers["content-id"][0].value};static getNodeFilename=e=>{if(e.headers["content-disposition"]&&e.headers["content-disposition"][0]){const t=e.headers["content-disposition"][0];if(t.params&&t.params.filename)return String(t.params.filename)}if(e.headers["content-type"]&&e.headers["content-type"][0]){const t=e.headers["content-type"][0];if(t.params&&t.params.name)return String(t.params.name)}};static isNodeInline=e=>{const t=e.headers["content-disposition"];return t&&t[0]&&"inline"===t[0].value};static fromEqualSignNotationAsBuf=e=>s.Buf.fromRawBytesStr(e.replace(/(=[A-F0-9]{2})+/g,(e=>{const t=e.replace(/^=/,"").split("=").map((e=>parseInt(e,16)));return new s.Buf(t).toRawBytesStr()})));static getNodeAsAtt=e=>new a.Att({name:y.getNodeFilename(e),type:y.getNodeType(e),data:"quoted-printable"===e.contentTransferEncoding.value?y.fromEqualSignNotationAsBuf(e.rawContent??""):e.content,cid:y.getNodeContentId(e)});static getNodeContentAsUtfStr=e=>{if(e.charset&&p.labels.includes(e.charset))return p.decode(e.rawContent??"");let t;return t="utf-8"===e.charset&&"base64"===e.contentTransferEncoding.value?s.Buf.fromUint8(e.content):"utf-8"===e.charset&&"quoted-printable"===e.contentTransferEncoding.value?y.fromEqualSignNotationAsBuf(e.rawContent??""):s.Buf.fromRawBytesStr(e.rawContent??""),"ISO-2022-JP"===e.charset?.toUpperCase()||"utf-8"===e.charset&&y.getNodeType(e,"initial")?.includes("ISO-2022-JP")?(0,h.iso2022jpToUtf)(t):t.toUtfStr()};static newContentNode=(e,t,r)=>{const n=new e(t).setContent(r);return"text/plain"===t&&n.addHeader("Content-Transfer-Encoding","quoted-printable"),n}}t.Mime=y},559:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mnemonic=void 0;const r=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"];t.mnemonic=e=>{if(!e)return;const t=(11,e.split("").map((e=>((e,t)=>{let r=e+"";for(;r.length<4;)r="0"+r;return r})(parseInt(e,16).toString(2)))).join("").match(new RegExp(".{1,11}","g")));return(t?.map((e=>parseInt(e,2)))??[]).map((e=>r[e].toUpperCase())).join(" ")}},4313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MsgBlockParser=void 0;const n=r(504),i=r(9307),a=r(4769),s=r(6240),o=r(7596),c=r(9357),u=r(5335),l=r(5308),h=r(4115);class d{static ARMOR_HEADER_MAX_LENGTH=50;static detectBlocks=e=>{const t=[],r=h.Str.normalize(e);let n=0;for(;;){const e=d.detectBlockNext(r,n);if(e.found&&t.push(...e.found),void 0===e.continueAt)return{blocks:t,normalized:r};if(e.continueAt<=n)return s.Catch.report(`PgpArmordetect_blocks likely infinite loop: r.continue_at(${e.continueAt}) <= start_at(${n})`),{blocks:t,normalized:r};n=e.continueAt}};static fmtDecryptedAsSanitizedHtmlBlocks=async(e,t)=>{const r=[];let s=!1;if(!o.Mime.resemblesMsg(e)){let i=a.Buf.fromUint8(e).toUtfStr();i=l.PgpMsg.extractFcAtts(i,r),i=l.PgpMsg.stripFcTeplyToken(i);const o=[];i=l.PgpMsg.stripPublicKeys(i,o);const c=n.MsgBlock.fromContent("decryptedHtml",h.Str.asEscapedHtml(i));return c.verifyRes=t,r.push(c),await d.pushArmoredPubkeysToBlocks(o,r),{blocks:r,subject:void 0,isRichText:s}}const c=await o.Mime.decode(e);if(void 0!==c.html){const e=n.MsgBlock.fromContent("decryptedHtml",i.Xss.htmlSanitizeKeepBasicTags(c.html));e.verifyRes=t,r.push(e),s=!0}else if(void 0!==c.text){const e=n.MsgBlock.fromContent("decryptedHtml",h.Str.asEscapedHtml(c.text));e.verifyRes=t,r.push(e)}else n.MsgBlock.fromContent("decryptedHtml",h.Str.asEscapedHtml(a.Buf.with(e).toUtfStr())).verifyRes=t,r.push();for(const e of c.atts)if("publicKey"===e.treatAs())await d.pushArmoredPubkeysToBlocks([e.getData().toUtfStr()],r);else{const i=n.MsgBlock.fromAtt("decryptedAtt","",{name:e.name,data:e.getData(),length:e.length,type:e.type});i.verifyRes=t,r.push(i)}return{blocks:r,subject:c.subject,isRichText:s}};static detectBlockNext=(e,t)=>{const r={found:[]},i=e.indexOf(c.PgpArmor.headers("null").begin,t);if(-1!==i){const a=e.substring(i,i+d.ARMOR_HEADER_MAX_LENGTH);for(const s of Object.keys(c.PgpArmor.ARMOR_HEADER_DICT)){const o=s,u=c.PgpArmor.ARMOR_HEADER_DICT[o];if(u.replace){const s=a.indexOf(u.begin);if(0===s||"encryptedMsgLink"===o&&s>=0&&s<15){if(i>t){const a=e.substring(t,i).trim();a&&r.found.push(n.MsgBlock.fromContent("plainText",a))}let a=-1,s=0;if("string"==typeof u.end)a=e.indexOf(u.end,i+u.begin.length),s=u.end.length;else{const t=e.substring(i).match(u.end);t&&(a=t.index?i+t.index:-1,s=t[0].length)}if(-1!==a){if("encryptedMsgLink"!==o)r.found.push(n.MsgBlock.fromContent(o,e.substring(i,a+s).trim()));else{const t=e.substring(i,a+s).trim(),c=t.match(/[a-zA-Z0-9]{10}$/);c?r.found.push(n.MsgBlock.fromContent(o,c[0])):r.found.push(n.MsgBlock.fromContent("plainText",t))}r.continueAt=a+s}else r.found.push(n.MsgBlock.fromContent(o,e.substring(i),!0));break}}}}if(e&&!r.found.length){const i=e.substring(t).trim();i&&r.found.push(n.MsgBlock.fromContent("plainText",i))}return r};static pushArmoredPubkeysToBlocks=async(e,t)=>{for(const r of e){const{keys:e}=await u.PgpKey.parse(r);for(const r of e)t.push(n.MsgBlock.fromKeyDetails("publicKey",r.public,r))}}}t.MsgBlockParser=d},504:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MsgBlock=void 0;class r{type;content;complete;signature;keyDetails;attMeta;decryptErr;verifyRes;constructor(e,t,r,n,i,a,s,o){this.type=e,this.content=t,this.complete=r,this.signature=n,this.keyDetails=i,this.attMeta=a,this.decryptErr=s,this.verifyRes=o}static fromContent=(e,t,n=!1)=>new r(e,t,!n);static fromKeyDetails=(e,t,n)=>new r(e,t,!0,void 0,n);static fromAtt=(e,t,n)=>new r(e,t,!0,void 0,void 0,n)}t.MsgBlock=r},9357:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpArmor=void 0;const n=r(4769),i=r(4115),a=r(8618);class s{static ARMOR_HEADER_DICT={null:{begin:"-----BEGIN",end:"-----END",replace:!1},publicKey:{begin:"-----BEGIN PGP PUBLIC KEY BLOCK-----",end:"-----END PGP PUBLIC KEY BLOCK-----",replace:!0},privateKey:{begin:"-----BEGIN PGP PRIVATE KEY BLOCK-----",end:"-----END PGP PRIVATE KEY BLOCK-----",replace:!0},signedMsg:{begin:"-----BEGIN PGP SIGNED MESSAGE-----",middle:"-----BEGIN PGP SIGNATURE-----",end:"-----END PGP SIGNATURE-----",replace:!0},signature:{begin:"-----BEGIN PGP SIGNATURE-----",end:"-----END PGP SIGNATURE-----",replace:!1},encryptedMsg:{begin:"-----BEGIN PGP MESSAGE-----",end:"-----END PGP MESSAGE-----",replace:!0},encryptedMsgLink:{begin:"This message is encrypted: Open Message",end:/https:(\/|/){2}(cryptup\.org|flowcrypt\.com)(\/|/)[a-zA-Z0-9]{10}(\n|$)/,replace:!0}};static clip=e=>{if(e?.includes(s.ARMOR_HEADER_DICT.null.begin)&&e.includes(String(s.ARMOR_HEADER_DICT.null.end))){const t=e.match(/(-----BEGIN PGP (MESSAGE|SIGNED MESSAGE|SIGNATURE|PUBLIC KEY BLOCK)-----[^]+-----END PGP (MESSAGE|SIGNATURE|PUBLIC KEY BLOCK)-----)/gm);return t&&t.length?t[0]:void 0}};static headers=(e,t="string")=>{const r=s.ARMOR_HEADER_DICT[e];return{begin:"string"==typeof r.begin&&"re"===t?r.begin.replace(/ /g,"\\s"):r.begin,end:"string"==typeof r.end&&"re"===t?r.end.replace(/ /g,"\\s"):r.end,replace:r.replace}};static normalize=(e,t)=>{if(e=i.Str.normalize(e).replace(/\n /g,"\n"),["encryptedMsg","publicKey","privateKey","key"].includes(t)){const t=(e=e.replace(/\r?\n/g,"\n").trim()).match(/\n\n/g),r=e.match(/\n\n\n/g),n=e.match(/\n\n\n\n/g),i=e.match(/\n\n\n\n\n\n/g);r&&i&&r.length>1&&1===i.length?e=e.replace(/\n\n\n/g,"\n"):t&&n&&t.length>1&&1===n.length&&(e=e.replace(/\n\n/g,"\n"))}const r=e.split("\n"),n=s.headers("key"===t?"null":t);if(r.length>5&&r[0].includes(n.begin)&&r[r.length-1].includes(String(n.end))&&!r.includes(""))for(let t=1;t<5;t++)if(!r[t].match(/^[a-zA-Z0-9\-_. ]+: .+$/)){if(r[t].match(/^[a-zA-Z0-9\/+]{32,77}$/)){e=`${r.slice(0,t).join("\n")}\n\n${r.slice(t).join("\n")}`;break}break}return e};static cryptoMsgPrepareForDecrypt=async e=>{if(!e.length)throw new Error("Encrypted message could not be parsed because no data was provided");const t=new n.Buf(e.slice(0,100)).toUtfStr("ignore"),r=t.includes(s.headers("encryptedMsg").begin),i=t.includes(s.headers("signedMsg").begin),o=r||i;if(i)return{isArmored:o,isCleartext:!0,message:await(0,a.readCleartextMessage)({cleartextMessage:new n.Buf(e).toUtfStr()})};if(r)return{isArmored:o,isCleartext:!1,message:await(0,a.readMessage)({armoredMessage:new n.Buf(e).toUtfStr()})};if(e instanceof Uint8Array)return{isArmored:o,isCleartext:!1,message:await(0,a.readMessage)({binaryMessage:e})};throw new Error("Message does not have armor headers")}}t.PgpArmor=s},5335:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpKey=void 0;const n=r(6240),i=r(9357),a=r(7620),s=r(559),o=r(1106),c=r(8618),u=r(505),l=r(8078),h=r(4115);class d{static create=async(e,t,r)=>{const n=await(0,c.generateKey)({userIDs:e,passphrase:r,format:"armored",curve:"curve25519"===t?"curve25519":void 0,rsaBits:"curve25519"===t?void 0:"rsa2048"===t?2048:4096});return{public:n.publicKey,private:n.privateKey,revCert:n.revocationCertificate}};static read=async e=>{const t=a.Store.armoredKeyCacheGet(e);if(t)return t;const r=await(0,c.readKey)({armoredKey:e});return r?.isPrivate()&&a.Store.armoredKeyCacheSet(e,r),r};static isPacketPrivate=e=>e instanceof c.SecretKeyPacket||e instanceof c.SecretSubkeyPacket;static validateAllDecryptedPackets=async e=>{for(const t of e.toPacketList().filter(d.isPacketPrivate))t.isDecrypted()&&await t.validate()};static decrypt=async(e,t,r,n)=>{if(!e.isPrivate())throw new Error("Nothing to decrypt in a public key");const i=e.getKeys(r).map((e=>e.keyPacket)).filter(d.isPacketPrivate);if(!i.length)throw new Error(`No private key packets selected of${e.getKeys().map((e=>e.keyPacket)).filter(d.isPacketPrivate).length} prv packets available`);for(const e of i){if(e.isDecrypted()){if("OK-IF-ALREADY-DECRYPTED"===n)continue;throw new Error("Decryption failed - key packet was already decrypted")}try{await e.decrypt(t),await e.validate()}catch(e){if(e instanceof Error&&e.message.toLowerCase().includes("passphrase"))return!1;throw e}}return!0};static encrypt=async(e,t)=>{if(!t||"undefined"===t||"null"===t)throw new Error(`Encryption passphrase should not be empty:${typeof t}:${t}`);const r=e.getKeys().map((e=>e.keyPacket)).filter(d.isPacketPrivate),n=r.filter((e=>!e.isDecrypted())).length;if(!r.length)throw new Error("No private key packets in key to encrypt. Is this a private key?");if(n)throw new Error(`Cannot encrypt a key that has ${n} of ${r.length} private packets still encrypted`);await(0,c.encryptKey)({privateKey:e,passphrase:t})};static normalize=async e=>{try{let t=[];if(e=i.PgpArmor.normalize(e,"key"),RegExp(i.PgpArmor.headers("publicKey","re").begin).test(e))t=await(0,c.readKeys)({armoredKeys:e});else if(RegExp(i.PgpArmor.headers("privateKey","re").begin).test(e))t=await(0,c.readKeys)({armoredKeys:e});else if(RegExp(i.PgpArmor.headers("encryptedMsg","re").begin).test(e)){const r=await(0,c.readMessage)({armoredMessage:e});t=[new c.PublicKey(r.packets)]}for(const e of t)for(const t of e.users)await d.validateAllDecryptedPackets(e),t.otherCertifications=[];return{normalized:t.map((e=>e.armor())).join("\n"),keys:t}}catch(e){return n.Catch.reportErr(e),{normalized:"",keys:[],error:h.Str.extractErrorMessage(e)}}};static fingerprint=async e=>{if(e)if("string"==typeof e)try{return await d.fingerprint(await d.read(e))}catch(e){return e instanceof Error&&"openpgp is not defined"===e.message&&n.Catch.reportErr(e),void console.error(e)}else{if(!e.keyPacket.getFingerprintBytes())return;try{return e.keyPacket.getFingerprint().toUpperCase()}catch(e){return void console.error(e)}}};static longid=async e=>{if(e)return"string"==typeof e&&8===e.length?(0,o.strToHex)(e).toUpperCase():"string"==typeof e&&40===e.length?e.substr(-16):"string"==typeof e&&49===e.length?e.replace(/ /g,"").substr(-16):await d.longid(await d.fingerprint(e))};static longids=async e=>{const t=[];for(const r of e){const e=await d.longid(r.bytes);e&&t.push(e)}return t};static usable=async(e,t)=>{if(!await d.fingerprint(e))return!1;const r=await(0,c.readKey)({armoredKey:e});return!!r&&(!!await d.keyIsUsable(r,t)||await d.usableButExpired(r,t))};static expired=async e=>{if(!e)return!1;const t=await e.getExpirationTime();if(t===1/0||!t)return!1;if(t instanceof Date)return Date.now()>t.getTime();throw new Error(`Got unexpected value for expiration: ${t}`)};static usableButExpired=async(e,t)=>{if(!e)return!1;if(await d.keyIsUsable(e,t))return!1;const r=await d.dateBeforeExpiration(e);return void 0!==r&&d.keyIsUsable(e,t,r)};static dateBeforeExpiration=async e=>{const t="string"==typeof e?await d.read(e):e,r=await(0,o.getKeyExpirationTimeForCapabilities)(t,"encrypt");if(r instanceof Date&&r.getTime(){const{normalized:t,keys:r,error:n}=await d.normalize(e);return{original:e,normalized:t,keys:await Promise.all(r.map(d.details)),error:n}};static details=async e=>{const t=e.getKeys(),r=e.keyPacket.getAlgorithmInfo(),n={algorithm:r.algorithm,algorithmId:c.enums.publicKey[r.algorithm]};r.bits&&Object.assign(n,{bits:r.bits}),r.curve&&Object.assign(n,{curve:r.curve});const i=e.keyPacket.created.getTime()/1e3,a=await(0,o.getKeyExpirationTimeForCapabilities)(e,"encrypt"),l=a!==1/0&&a?a.getTime()/1e3:void 0,h=await d.lastSig(e)/1e3,f=[];for(const e of t){const t=e.getFingerprint().toUpperCase();if(t){const e=await d.longid(t);if(e){const r=e.substr(-8);f.push({fingerprint:t,longid:e,shortid:r,keywords:(0,s.mnemonic)(e)??""})}}}const p=e.toPublic().armor(),y={public:p,users:e.getUserIDs(),ids:f,algo:n,created:i,expiration:l,lastModified:h,revoked:e.revocationSignatures.length>0,usableForEncryption:await d.usable(p,"encrypt"),usableForSigning:await d.usable(p,"sign")};return e.isPrivate()&&Object.assign(y,{private:e.armor(),isFullyDecrypted:(0,u.isFullyDecrypted)(e),isFullyEncrypted:(0,u.isFullyEncrypted)(e)}),y};static lastSig=async e=>{const t=[];for(const r of e.users){const n={userID:r.userID,userAttribute:r.userAttribute,key:e};for(const i of r.selfCertifications)try{await i.verify(e.keyPacket,c.enums.signature.certGeneric,n),t.push(i)}catch(e){console.log(`PgpKey.lastSig: Skipping self-certification signature because it is invalid: ${String(e)}`)}}for(const r of e.subkeys)try{const e=await r.verify();t.push(e)}catch(e){console.log(`PgpKey.lastSig: Skipping subkey ${r.getKeyID().toHex()} because there is no valid binding signature: ${String(e)}`)}if(t.length>0)return Math.max(...t.map((e=>e.created?e.created.getTime():0)));throw new Error("No valid signature found in key")};static revoke=async e=>{await e.isRevoked()||(e=(await(0,c.revokeKey)({key:e,format:"object"})).privateKey);const t=await e.getRevocationCertificate();if(t){if("string"==typeof t)return{key:e,revocationCertificate:t};{const r=await(0,l.requireStreamReadToEnd)();return{key:e,revocationCertificate:await r(t)}}}};static keyIsUsable=async(e,t,r)=>Boolean(await n.Catch.undefinedOnException("encrypt"===t?e.getEncryptionKey(void 0,r):e.getSigningKey(void 0,r)))}t.PgpKey=d},5308:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpMsg=t.FormatError=t.DecryptErrTypes=void 0;const n=r(5335),i=r(504),a=r(4115),s=r(4769),o=r(6240),c=r(4313),u=r(9357),l=r(7620),h=r(8618),d=r(505),f=r(8078);var p;!function(e){e.keyMismatch="key_mismatch",e.usePassword="use_password",e.wrongPwd="wrong_password",e.noMdc="no_mdc",e.badMdc="bad_mdc",e.needPassphrase="need_passphrase",e.format="format",e.other="other"}(p||(t.DecryptErrTypes=p={}));class y extends Error{data;constructor(e,t){super(e),this.data=t}}t.FormatError=y;class g{static type=async({data:e})=>{if(!e||!e.length)return;const t=e[0];if(128==(128&t)){let e=0;if(e=192==(192&t)?63&t:(60&t)/4,Object.values(h.enums.packet).includes(e)){const t=h.enums.packet;return{armored:!1,type:[t.symEncryptedIntegrityProtectedData,t.modificationDetectionCode,t.aeadEncryptedData,t.symmetricallyEncryptedData,t.compressedData].includes(e)?"encryptedMsg":"publicKey"}}}const{blocks:r}=c.MsgBlockParser.detectBlocks(new s.Buf(e.slice(0,50)).toUtfStr().trim());return 1===r.length&&!1===r[0].complete&&["encryptedMsg","privateKey","publicKey","signedMsg"].includes(r[0].type)?{armored:!0,type:r[0].type}:void 0};static sign=async(e,t,r=!1)=>{const n=await(0,h.createCleartextMessage)({text:t});return await(0,h.sign)({message:n,signingKeys:e,detached:r,format:"armored"})};static verify=async(e,t)=>{const r={match:null};try{const i=Array.isArray(e)?e:await e.verify(t);for(const e of i)r.signer||(r.signer=await n.PgpKey.longid(e.keyID.bytes)),r.match=(!0===r.match||null===r.match)&&await e.verified}catch(e){r.match=null,e instanceof Error&&"Can only verify message with one literal data packet."===e.message?r.error="FlowCrypt is not equipped to verify this message (err 101)":(r.error=e.message,o.Catch.reportErr(e))}return r};static verifyDetached=async({plaintext:e,sigText:t,verificationPubkeys:r})=>{const n=await(0,h.createMessage)({text:s.Buf.fromUint8(e).toUtfStr()});await n.appendSignature(s.Buf.fromUint8(t).toUtfStr());const i=await g.getSortedKeys([],n);if(r)for(const e of r){const t=await(0,h.readKeys)({armoredKeys:e});i.forVerification.push(...t)}return await g.verify(n,i.forVerification)};static decrypt=async({kisWithPp:e,encryptedData:t,msgPwd:r,verificationPubkeys:n})=>{let i;const a={message:[],matching:[],chosen:[],needPassphrase:[]};try{i=await u.PgpArmor.cryptoMsgPrepareForDecrypt(t)}catch(e){return{success:!1,error:{type:p.format,message:String(e)},longids:a}}const o=await g.getSortedKeys(e,i.message,n);a.message=o.encryptedFor,a.matching=o.prvForDecrypt.map((e=>e.longid)),a.chosen=o.prvForDecryptDecrypted.map((e=>e.longid)),a.needPassphrase=o.prvForDecryptWithoutPassphrases.map((e=>e.longid));const c=!i.isCleartext;if(!c){const e=await g.verify(i.message,o.forVerification),t=await(0,f.requireStreamReadToEnd)(),r=await t(i.message.getText()??"");return{success:!0,content:s.Buf.fromUtfStr(r),isEncrypted:c,signature:e}}if(!o.prvMatching.length&&!r)return{success:!1,error:{type:p.keyMismatch,message:"Missing appropriate key"},message:i.message,longids:a,isEncrypted:c};if(!o.prvForDecryptDecrypted.length&&!r)return{success:!1,error:{type:p.needPassphrase,message:"Missing pass phrase"},message:i.message,longids:a,isEncrypted:c};try{const e=i.message.packets,t=e.filterByTag(h.enums.packet.symEncryptedSessionKey).length>0,u=e.filterByTag(h.enums.packet.publicKeyEncryptedSessionKey).length>0;if(t&&!u&&!r)return{success:!1,error:{type:p.usePassword,message:"Use message password"},longids:a,isEncrypted:c};const l=r?[r]:void 0,d=o.prvForDecryptDecrypted.map((e=>e.decrypted)),y=await i.message.decrypt(d,l);await g.cryptoMsgGetSignedBy(y,o),await g.populateKeysForVerification(o,n);const m=o.signedBy.length?await y.verify(o.forVerification):void 0,b=await(0,f.requireStreamReadToEnd)(),w=new s.Buf(await b(y.getLiteralData())),v=m?await g.verify(m,[]):void 0;if(!i.isCleartext&&i.message.packets.filterByTag(h.enums.packet.symmetricallyEncryptedData).length){const e="Security threat!\n\nMessage is missing integrity checks (MDC). The sender should update their outdated software and resend.";return{success:!1,content:w,error:{type:p.noMdc,message:e},message:i.message,longids:a,isEncrypted:c}}return{success:!0,content:w,isEncrypted:c,filename:y.getFilename()||void 0,signature:v}}catch(e){return{success:!1,error:g.cryptoMsgDecryptCategorizeErr(e,r),message:i.message,longids:a,isEncrypted:c}}};static encrypt=async({pubkeys:e,signingPrv:t,pwd:r,data:n,filename:i,armor:a,date:s})=>{if(!e&&!r)throw new Error("no-pubkeys-no-challenge");const o=await(0,h.createMessage)({binary:n,filename:i,date:s}),c=[];for(const t of e){const e=await(0,h.readKeys)({armoredKeys:t});c.push(...e)}const u={message:o,date:s,encryptionKeys:c,passwords:r?[r]:void 0,signingKeys:t&&t.isPrivate()?t:void 0};return a||Object.assign(u,{format:"binary"}),await(0,h.encrypt)(u)};static extractFcAtts=(e,t)=>(e.includes('class="cryptup_file"')&&(e=e.replace(/[^<]+<\/a>\n?/gm,((e,r,n)=>{const s=a.Str.htmlAttrDecode(String(n));return g.isFcAttLinkData(s)&&t.push(i.MsgBlock.fromAtt("encryptedAttLink","",{type:s.type,name:s.name,length:s.size,url:String(r)})),""}))),e);static stripFcTeplyToken=e=>e.replace(/]+class="cryptup_reply"[^>]+><\/div>/,"");static stripPublicKeys=(e,t)=>{let{blocks:r,normalized:n}=c.MsgBlockParser.detectBlocks(e);for(const e of r)if("publicKey"===e.type){const r=e.content.toString();t.push(r),n=n.replace(r,"")}return n};static isFcAttLinkData=e=>e&&"object"==typeof e&&void 0!==e.name&&void 0!==e.size&&void 0!==e.type;static cryptoMsgGetSignedBy=async(e,t)=>{t.signedBy=a.Value.arr.unique(await n.PgpKey.longids(e.getSigningKeyIDs?e.getSigningKeyIDs():[]))};static populateKeysForVerification=async(e,t)=>{if(void 0!==t){e.forVerification=[];for(const r of t){const t=await(0,h.readKeys)({armoredKeys:r});e.forVerification.push(...t)}}};static getSortedKeys=async(e,t,r)=>{const i={forVerification:[],encryptedFor:[],signedBy:[],prvMatching:[],prvForDecrypt:[],prvForDecryptDecrypted:[],prvForDecryptWithoutPassphrases:[]},a=t instanceof h.Message?t.getEncryptionKeyIDs():[];if(i.encryptedFor=await n.PgpKey.longids(a),await g.cryptoMsgGetSignedBy(t,i),await g.populateKeysForVerification(i,r),i.encryptedFor.length){for(const t of e){t.parsed=await n.PgpKey.read(t.private);for(const e of await Promise.all(t.parsed.getKeyIDs().map((({bytes:e})=>n.PgpKey.longid(e)))))if(i.encryptedFor.includes(e)){i.prvMatching.push(t);break}}i.prvForDecrypt=i.prvMatching}else i.prvForDecrypt=[];for(const e of i.prvForDecrypt){if(!e.parsed||!e.passphrase)continue;const t=g.matchingKeyids(e.parsed,a),r=l.Store.decryptedKeyCacheGet(e.longid);r&&g.isKeyDecryptedFor(r,t)?(e.decrypted=r,i.prvForDecryptDecrypted.push(e)):g.isKeyDecryptedFor(e.parsed,t)||!0===await g.decryptKeyFor(e.parsed,e.passphrase,t)?(l.Store.decryptedKeyCacheSet(e.parsed),e.decrypted=e.parsed,i.prvForDecryptDecrypted.push(e)):i.prvForDecryptWithoutPassphrases.push(e)}return i};static matchingKeyids=(e,t)=>{const r=(t||[]).map((e=>e.bytes));return e.getKeyIDs().filter((e=>r.includes(e.bytes)))};static decryptKeyFor=async(e,t,r)=>{if(!r.length)return await n.PgpKey.decrypt(e,t,void 0,"OK-IF-ALREADY-DECRYPTED");for(const i of r)if(!await n.PgpKey.decrypt(e,t,i,"OK-IF-ALREADY-DECRYPTED"))return!1;return!0};static isKeyDecryptedFor=(e,t)=>!!(0,d.isFullyDecrypted)(e)||!(0,d.isFullyEncrypted)(e)&&!!t.length&&t.filter((t=>(0,d.isPacketDecrypted)(e,t))).length===t.length;static cryptoMsgDecryptCategorizeErr=(e,t)=>{const r=String(e).replace("Error: ","").replace("Error decrypting message: ","");return["Cannot read property 'isDecrypted' of null","privateKeyPacket is null","TypeprivateKeyPacket is null","Session key decryption failed.","Invalid session key for decryption."].includes(r)&&!t?{type:p.keyMismatch,message:r}:t&&["Invalid enum value.","CFB decrypt: invalid key","Session key decryption failed."].includes(r)?{type:p.wrongPwd,message:r}:"Decryption failed due to missing MDC in combination with modern cipher."===r||"Decryption failed due to missing MDC."===r?{type:p.noMdc,message:r}:"Decryption error"===r?{type:p.format,message:r}:"Modification detected."===r?{type:p.badMdc,message:"Security threat - opening this message is dangerous because it was modified in transit."}:{type:p.other,message:r}}}t.PgpMsg=g},3338:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpPwd=void 0;class r{static CRACK_GUESSES_PER_SECOND=8e7;static CRACK_TIME_WORDS_PWD=[{match:"millenni",word:"perfect",bar:100,color:"green",pass:!0},{match:"centu",word:"perfect",bar:95,color:"green",pass:!0},{match:"year",word:"great",bar:80,color:"orange",pass:!0},{match:"month",word:"good",bar:70,color:"darkorange",pass:!0},{match:"week",word:"good",bar:30,color:"darkred",pass:!0},{match:"day",word:"reasonable",bar:40,color:"darkorange",pass:!0},{match:"hour",word:"bare minimum",bar:20,color:"darkred",pass:!0},{match:"minute",word:"poor",bar:15,color:"red",pass:!1},{match:"",word:"weak",bar:10,color:"red",pass:!1}];static CRACK_TIME_WORDS_PASS_PHRASE=[{match:"millenni",word:"perfect",bar:100,color:"green",pass:!0},{match:"centu",word:"great",bar:80,color:"green",pass:!0},{match:"year",word:"good",bar:60,color:"orange",pass:!0},{match:"month",word:"reasonable",bar:40,color:"darkorange",pass:!0},{match:"week",word:"poor",bar:30,color:"darkred",pass:!1},{match:"day",word:"poor",bar:20,color:"darkred",pass:!1},{match:"",word:"weak",bar:10,color:"red",pass:!1}];static estimateStrength=(e,t="passphrase")=>{const n=e/r.CRACK_GUESSES_PER_SECOND;for(const e of"pwd"===t?r.CRACK_TIME_WORDS_PWD:r.CRACK_TIME_WORDS_PASS_PHRASE){const t=r.readableCrackTime(n);if(t.includes(e.match))return{word:e,seconds:Math.round(n),time:t}}throw Error("(thrown) estimate_strength: got to end without any result")};static weakWords=()=>["crypt","up","cryptup","flow","flowcrypt","encryption","pgp","email","set","backup","passphrase","best","pass","phrases","are","long","and","have","several","words","in","them","Best pass phrases are long","have several words","in them","bestpassphrasesarelong","haveseveralwords","inthem","Loss of this pass phrase","cannot be recovered","Note it down","on a paper","lossofthispassphrase","cannotberecovered","noteitdown","onapaper","setpassword","set password","set pass word","setpassphrase","set pass phrase","set passphrase"];static readableCrackTime=e=>{const t=e=>e>1?"s":"";e=Math.round(e);const r=Math.round(e/31104e8);if(r)return 1===r?"a millennium":"millennia";const n=Math.round(e/31104e5);if(n)return 1===n?"a century":"centuries";const i=Math.round(e/31104e3);if(i)return i+" year"+t(i);const a=Math.round(e/2592e3);if(a)return a+" month"+t(a);const s=Math.round(e/604800);if(s)return s+" week"+t(s);const o=Math.round(e/86400);if(o)return o+" day"+t(o);const c=Math.round(e/3600);if(c)return c+" hour"+t(c);const u=Math.round(e/60);if(u)return u+" minute"+t(u);const l=e%60;return l?l+" second"+t(l):"less than a second"}}t.PgpPwd=r},505:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPacketDecrypted=t.isFullyEncrypted=t.isFullyDecrypted=void 0;const n=r(5335),i=r(2853),a=r(8618);a.config.versionString=`FlowCrypt ${i.VERSION} Gmail Encryption`,a.config.commentString="Seamlessly send and receive encrypted email",a.config.allowUnauthenticatedMessages=!0,a.config.allowUnauthenticatedStream=!0;const s=e=>{if(!e.isPrivate())throw new Error("Cannot check encryption status of secret keys in a Public Key");const t=e.getKeys().map((e=>e.keyPacket)).filter(n.PgpKey.isPacketPrivate);if(!t.length)throw new Error("This key has no private packets. Is it a Private Key?");const r=t.filter((e=>!e.isDummy()));if(!r.length)throw new Error("This key only has a gnu-dummy private packet, with no actual secret keys.");return r};t.isFullyDecrypted=e=>s(e).every((e=>!0===e.isDecrypted())),t.isFullyEncrypted=e=>s(e).every((e=>!1===e.isDecrypted())),t.isPacketDecrypted=(e,t)=>{if(!e.isPrivate())throw new Error("Cannot check packet encryption status of secret key in a Public Key");if(!t)throw new Error("No KeyID provided to isPacketDecrypted");const[r]=e.getKeys(t);if(!r)throw new Error("KeyID not found in Private Key");return!0===r.keyPacket.isDecrypted()}},1769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getSigningPrv=t.Endpoints=void 0;const n=r(8267),i=r(5308),a=r(5335),s=r(7596),o=r(3830),c=r(4769),u=r(4313),l=r(3338),h=r(7620),d=r(4115),f=r(2853),p=r(8383),y=r(9307),g=r(2853),m=r(8618);t.Endpoints=class{version=async()=>(0,n.fmtRes)({app_version:f.VERSION});setClientConfiguration=async e=>{const{shouldHideArmorMeta:t}=p.ValidateInput.setClientConfiguration(e);return m.config.showVersion=!t,m.config.showComment=!t,(0,n.fmtRes)({})};generateKey=async e=>{h.Store.keyCacheWipe();const{passphrase:t,userIds:r,variant:i}=p.ValidateInput.generateKey(e);if(t.length<12)throw new Error("Pass phrase length seems way too low! Pass phrase strength should be properly checked before encrypting a key.");const s=await a.PgpKey.create(r,i,t);return(0,n.fmtRes)({key:await a.PgpKey.details(await a.PgpKey.read(s.private))})};composeEmail=async e=>{const r=p.ValidateInput.composeEmail(e),a={to:r.to,from:r.from,subject:r.subject,cc:r.cc,bcc:r.bcc};if(r.replyToMsgId&&(a["in-reply-to"]=r.replyToMsgId,a.references=[r.inReplyTo,r.replyToMsgId].filter((e=>!!e)).join(" ")),"plain"===r.format){const e=(r.atts||[]).map((({name:e,type:t,base64:r})=>new o.Att({name:e,type:t,data:c.Buf.fromBase64Str(r)}))),t={"text/plain":r.text};return r.html&&(t["text/html"]=r.html),(0,n.fmtRes)({},c.Buf.fromUtfStr(await s.Mime.encode(t,a,e)))}if("encryptInline"===r.format){const e=[];for(const t of r.atts||[]){const n=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,data:c.Buf.fromBase64Str(t.base64),filename:t.name,armor:!1});e.push(new o.Att({name:`${t.name}.pgp`,type:"application/pgp-encrypted",data:n}))}const u=await(0,t.getSigningPrv)(r),l=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,signingPrv:u,data:c.Buf.fromUtfStr(r.text),armor:!0});return(0,n.fmtRes)({},c.Buf.fromUtfStr(await s.Mime.encode({"text/plain":l},a,e)))}throw new Error(`Unknown format: ${r.format}`)};encryptMsg=async(e,t)=>{const r=p.ValidateInput.encryptMsg(e),a=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,pwd:r.msgPwd,data:c.Buf.concat(t),armor:!0});return(0,n.fmtRes)({},c.Buf.fromUtfStr(a))};encryptFile=async(e,t)=>{const r=p.ValidateInput.encryptFile(e),a=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,data:c.Buf.concat(t),filename:r.name,armor:!1});return(0,n.fmtRes)({},a)};parseDecryptMsg=async(e,t)=>{const{keys:r,msgPwd:o,isMime:l,verificationPubkeys:h}=p.ValidateInput.parseDecryptMsg(e),f=[];let g,m;if(l){const{blocks:e,rawSignedContent:r,headers:n}=await s.Mime.process(c.Buf.concat(t));m=String(n.subject),g=r,f.push(...e)}else{const{blocks:e}=u.MsgBlockParser.detectBlocks(c.Buf.concat(t).toString());f.push(...e)}const b=[];for(const e of f)if("signedMsg"!==e.type&&"signedHtml"!==e.type||!e.signature)if("encryptedMsg"===e.type||"signedMsg"===e.type){const t=await i.PgpMsg.decrypt({kisWithPp:r,msgPwd:o,encryptedData:c.Buf.with(e.content),verificationPubkeys:h});if(t.success)if(t.isEncrypted){const e=await u.MsgBlockParser.fmtDecryptedAsSanitizedHtmlBlocks(t.content,t.signature);b.push(...e.blocks),m=e.subject||m}else b.push({type:"verifiedMsg",content:d.Str.asEscapedHtml(t.content.toUtfStr()),complete:!0,verifyRes:t.signature});else delete t.message,b.push({type:"decryptErr",content:t.error.type===i.DecryptErrTypes.noMdc?t.content?.toUtfStr()??"":e.content.toString(),decryptErr:t,complete:!0})}else if("encryptedAtt"===e.type&&e.attMeta&&/^(0x)?[A-Fa-f0-9]{16,40}\.asc\.pgp$/.test(e.attMeta.name||"")){const t=await i.PgpMsg.decrypt({kisWithPp:r,msgPwd:o,encryptedData:c.Buf.with(e.attMeta.data||""),verificationPubkeys:h});t.content?b.push({type:"publicKey",content:t.content.toString(),complete:!0}):b.push(e)}else b.push(e);else{const t=await i.PgpMsg.verifyDetached({sigText:c.Buf.fromUtfStr(e.signature),plaintext:c.Buf.with(g||e.content),verificationPubkeys:h});"signedHtml"===e.type?b.push({type:"verifiedMsg",content:y.Xss.htmlSanitizeKeepBasicTags(e.content.toString()),verifyRes:t,complete:!0}):b.push({type:"verifiedMsg",content:d.Str.asEscapedHtml(e.content.toString()),verifyRes:t,complete:!0})}const w=[],v=[];let k="plain";for(const e of b)if(e.content instanceof c.Buf?e.content=(0,n.isContentBlock)(e.type)?e.content.toUtfStr():e.content.toRawBytesStr():e.attMeta&&e.attMeta.data instanceof Uint8Array&&(e.attMeta.data=c.Buf.fromUint8(e.attMeta.data).toBase64Str()),e.decryptErr?.content instanceof c.Buf&&(e.decryptErr.content=e.decryptErr.content.toUtfStr()),"decryptedHtml"!==e.type&&"decryptedText"!==e.type&&"decryptedAtt"!==e.type||(k="encrypted"),"publicKey"===e.type)if(e.keyDetails)v.push(e);else{const{keys:t}=await a.PgpKey.normalize(e.content);if(t.length)for(const e of t)v.push({type:"publicKey",content:e.armor(),complete:!0,keyDetails:await a.PgpKey.details(e)});else v.push({type:"decryptErr",content:e.content,complete:!0,decryptErr:{success:!1,error:{type:i.DecryptErrTypes.format,message:"Badly formatted public key"},longids:{message:[],matching:[],chosen:[],needPassphrase:[]}}})}else(0,n.isContentBlock)(e.type)||s.Mime.isPlainImgAtt(e)?w.push(e):v.push(e);const{contentBlock:A,text:_}=(0,n.fmtContentBlock)(w);v.unshift(A);const S=c.Buf.fromUtfStr(v.map((e=>JSON.stringify(e,((e,t)=>"content"===e&&t.length>1e5?"":t)))).join("\n")),E={text:_,replyType:k};return m&&Object.assign(E,{subject:m}),(0,n.fmtRes)(E,S)};parseAttachmentType=async e=>{const{atts:t}=p.ValidateInput.parseAttachmentType(e),r=t.map((e=>{const t=new o.Att(e);return{id:t.id,treatAs:t.treatAs()}}));return(0,n.fmtRes)({atts:r})};decryptFile=async(e,t,r)=>{const{keys:a,msgPwd:s}=p.ValidateInput.decryptFile(e),o=await i.PgpMsg.decrypt({kisWithPp:a,encryptedData:c.Buf.concat(t),msgPwd:s,verificationPubkeys:r});return o.success?(0,n.fmtRes)({decryptSuccess:{name:o.filename||""}},o.content):(delete o.message,delete o.content,(0,n.fmtRes)({decryptErr:o}))};zxcvbnStrengthBar=async e=>{const t=p.ValidateInput.zxcvbnStrengthBar(e);if("passphrase"===t.purpose){if("number"==typeof t.guesses)return(0,n.fmtRes)(l.PgpPwd.estimateStrength(t.guesses));if("string"==typeof t.value){if("function"!=typeof window.zxcvbn)throw new Error("window.zxcvbn missing in js");const e=window.zxcvbn(t.value,l.PgpPwd.weakWords()).guesses;return(0,n.fmtRes)(l.PgpPwd.estimateStrength(e))}throw new Error("Unexpected format: guesses is not a number, value is not a string")}throw new Error(`Unknown purpose: ${t.purpose}`)};gmailBackupSearch=async e=>{const{acctEmail:t}=p.ValidateInput.gmailBackupSearch(e);return(0,n.fmtRes)({query:(0,g.gmailBackupSearchQuery)(t)})};parseKeys=async(e,t)=>{const r=[],s=c.Buf.concat(t),o=await i.PgpMsg.type({data:s});if(!o)return(0,n.fmtRes)({format:"unknown",keyDetails:r});if(o.armored){const{blocks:e}=u.MsgBlockParser.detectBlocks(s.toString());for(const t of e){const{keys:e}=await a.PgpKey.parse(t.content.toString());r.push(...e)}for(const e of r)(0,n.removeUndefinedValues)(e);return(0,n.fmtRes)({format:"armored",keyDetails:r})}const l=await(0,m.readKeys)({binaryKeys:s});for(const e of l)r.push(await a.PgpKey.details(e));for(const e of r)(0,n.removeUndefinedValues)(e);return(0,n.fmtRes)({format:"binary",keyDetails:r})};isEmailValid=async e=>{const{email:t}=p.ValidateInput.isEmailValid(e);return(0,n.fmtRes)({valid:d.Str.isEmailValid(t)})};decryptKey=async e=>{h.Store.keyCacheWipe();const{armored:t,passphrases:r}=p.ValidateInput.decryptKey(e);if(1!==r.length)throw new Error(`decryptKey: Can only accept exactly 1 pass phrase for decrypt, received: ${r.length}`);const i=await(0,p.readArmoredKeyOrThrow)(t);return await a.PgpKey.decrypt(i,r[0])?(0,n.fmtRes)({decryptedKey:i.armor()}):(0,n.fmtRes)({decryptedKey:void 0})};encryptKey=async e=>{h.Store.keyCacheWipe();const{armored:t,passphrase:r}=p.ValidateInput.encryptKey(e),i=await(0,p.readArmoredKeyOrThrow)(t);if(!r||r.length<12)throw new Error("Pass phrase length seems way too low! Pass phrase strength should be properly checked before encrypting a key.");const a=await(0,m.encryptKey)({privateKey:i,passphrase:r});return(0,n.fmtRes)({encryptedKey:a.armor()})};verifyKey=async e=>{const{armored:t}=p.ValidateInput.verifyKey(e),r=await(0,m.readKey)({armoredKey:t});return await r.verifyPrimaryKey(),(0,n.fmtRes)({})};keyCacheWipe=async()=>(h.Store.keyCacheWipe(),(0,n.fmtRes)({}))},t.getSigningPrv=async e=>{if(!e.signingPrv)return;const t=await(0,p.readArmoredKeyOrThrow)(e.signingPrv.private);if(await a.PgpKey.decrypt(t,e.signingPrv.passphrase||""))return t;throw new Error("Fail to decrypt signing key")}},8267:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeUndefinedValues=t.fmtErr=t.fmtRes=t.fmtContentBlock=t.stripHtmlRootTags=t.isContentBlock=void 0;const n=r(504),i=r(7596),a=r(4115),s=r(9307);t.isContentBlock=e=>"plainText"===e||"decryptedText"===e||"plainHtml"===e||"decryptedHtml"===e||"signedMsg"===e||"verifiedMsg"===e;const o=(e,t)=>{let r;return r="green"===t?"border: 1px solid #f0f0f0;border-left: 8px solid #31A217;border-right: none;' +\n 'background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAABaCAMAAAAPdrEwAAAAh1BMVEXw8PD////w8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PD7MuHIAAAALXRSTlMAAAECBAcICw4QEhUZIyYqMTtGTV5kdn2Ii5mfoKOqrbG0uL6/xcnM0NTX2t1l7cN4AAAB0UlEQVR4Ae3Y3Y4SQRCG4bdHweFHRBTBH1FRFLXv//qsA8kmvbMdXhh2Q0KfknpSCQc130c67s22+e9+v/+d84fxkSPH0m/+5P9vN7vRV0vPfx7or1NB23e99KAHuoXOOc6moQsBwNN1Q9g4Wdh1uq3MA7Qn0+2ylAt7WbWpyT+Wo8roKH6v2QhZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2gjZ2AUNOLmwgQdogEJ2dnF3UJdU3WjqO/u96aYtVd/7jqvIyu76G5se6GaY7tNNcy5d7se7eWVnDz87fMkuVuS8epF6f9NPObPY5re9y4N1/vya9Gr3se2bfvl9M0mkyZdv077p+a/3z4Meby5Br4NWiV51BaiUqfLro9I3WiR61RVcffwfXI7u5zZ20EOA82Uu8x3SlrSwXQuBSvSqK0AletUVoBK96gpIwlZy0MJWctDCVnLQwlZy0MJWctDCVnLQwlZy0MJWctDCVnLQwlZy0MJWctDCVnLQwlZy0MJWckIletUVIJJxITN6wtZd2EI+0NquyIJOnUpFVvRpcwmV6FVXgEr0qitAJXrVFaASveoKUIledQWoRK+6AlSiV13BP+/VVbky7Xq1AAAAAElFTkSuQmCC);":"red"===t?"border: 1px solid #f0f0f0;border-left: 8px solid #d14836;border-right: none;":"plain"===t?"border: none;":"border: 1px solid #f0f0f0;border-left: 8px solid #989898;border-right: none;",`
${s.Xss.htmlSanitizeKeepBasicTags(e)}
\x3c!-- next MsgBlock --\x3e\n`};t.stripHtmlRootTags=e=>(e=(e=(e=e.replace(/<\/?html[^>]*>/g,"")).replace(/]*>.*<\/head>/g,"")).replace(/<\/?body[^>]*>/g,"")).trim();const c=(e,t)=>e.replace(/src="cid:([^"]+)"/g,((e,r)=>{const n=t[r];if(n){const e=`src="data:${n.attMeta?.type};base64,${n.attMeta?.data}"`;return delete t[r],e}return e}));t.fmtContentBlock=e=>{const r=[],u=[],l=e.filter((e=>!i.Mime.isPlainImgAtt(e))),h=[],d={};for(const t of e.filter((e=>i.Mime.isPlainImgAtt(e))))t.attMeta?.cid?d[t.attMeta.cid.replace(/>$/,"").replace(/^0&&y!==l.length&&(f.partial=!0));for(const e of h.concat(Object.values(d))){const t=`${e.attMeta?.name||"(unnamed image)"} - ${e.attMeta?.length??0}kb`,n=`${s.Xss.escape(t)} `;r.push(o(n,"plain")),u.push(`[image: ${t}]\n`)}const g=n.MsgBlock.fromContent("plainHtml",`\n \n \n \n \n \n ${r.join("")}\n `);return g.verifyRes=f,{contentBlock:g,text:u.join("").trim()}},t.fmtRes=(e,t)=>({json:e,data:t||new Uint8Array(0)}),t.fmtErr=e=>(0,t.fmtRes)({error:{message:String(e),stack:e&&"object"==typeof e&&e.stack||""}}),t.removeUndefinedValues=e=>{for(const t in e)void 0===e[t]&&delete e[t]}},8383:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readArmoredKeyOrThrow=t.ValidateInput=void 0;const n=r(8618);t.ValidateInput=class{static setClientConfiguration=e=>{if(i(e)&&a(e,"shouldHideArmorMeta","boolean?"))return e;throw new Error("Wrong request structure for NodeRequest.setClientConfiguration")};static generateKey=e=>{if(i(e)&&a(e,"userIds","Userid[]")&&e.userIds.length&&a(e,"passphrase","string")&&["rsa2048","rsa4096","curve25519"].includes(e.variant))return e;throw new Error("Wrong request structure for NodeRequest.generateKey")};static encryptMsg=e=>{if(i(e)&&a(e,"pubKeys","string[]")&&a(e,"msgPwd","string?"))return e;throw new Error("Wrong request structure for NodeRequest.encryptMsg")};static composeEmail=e=>{if(!(i(e)&&a(e,"text","string")&&a(e,"html","string?")&&a(e,"from","string")&&a(e,"subject","string")&&a(e,"to","string[]")&&a(e,"cc","string[]")&&a(e,"bcc","string[]")))throw new Error("Wrong request structure for NodeRequest.composeEmail, need: text,from,subject,to,cc,bcc,atts (can use empty arr for cc/bcc, and can skip atts)");if(!a(e,"atts","ComposeAttachment[]?"))throw new Error("Wrong atts structure for NodeRequest.composeEmail, need: {name, type, base64}");if(a(e,"pubKeys","string[]")&&a(e,"signingPrv","PrvKeyInfo?")&&e.pubKeys.length&&("encryptInline"===e.format||"encryptPgpmime"===e.format))return e;if(!e.pubKeys&&"plain"===e.format)return e;throw new Error("Wrong choice of pubKeys and format. Either pubKeys:[..]+format:encryptInline OR format:plain allowed")};static parseDecryptMsg=e=>{if(i(e)&&a(e,"keys","PrvKeyInfo[]")&&a(e,"msgPwd","string?")&&a(e,"isMime","boolean?")&&a(e,"verificationPubkeys","string[]?"))return e;throw new Error("Wrong request structure for NodeRequest.parseDecryptMsg")};static encryptFile=e=>{if(i(e)&&a(e,"pubKeys","string[]")&&a(e,"name","string"))return e;throw new Error("Wrong request structure for NodeRequest.encryptFile")};static parseAttachmentType=e=>{if(i(e)&&a(e,"atts","Attachment[]"))return e;throw new Error("Wrong request structure for NodeRequest.parseAttachmentType")};static decryptFile=e=>{if(i(e)&&a(e,"keys","PrvKeyInfo[]")&&a(e,"msgPwd","string?"))return e;throw new Error("Wrong request structure for NodeRequest.decryptFile")};static zxcvbnStrengthBar=e=>{if(i(e)&&a(e,"guesses","number")&&a(e,"purpose","string")&&"passphrase"===e.purpose)return e;if(i(e)&&a(e,"value","string")&&a(e,"purpose","string")&&"passphrase"===e.purpose)return e;throw new Error("Wrong request structure for NodeRequest.zxcvbnStrengthBar")};static gmailBackupSearch=e=>{if(i(e)&&a(e,"acctEmail","string"))return e;throw new Error("Wrong request structure for NodeRequest.gmailBackupSearchQuery")};static isEmailValid=e=>{if(i(e)&&a(e,"email","string"))return e;throw new Error("Wrong request structure for NodeRequest.isEmailValid")};static decryptKey=e=>{if(i(e)&&a(e,"armored","string")&&a(e,"passphrases","string[]"))return e;throw new Error("Wrong request structure for NodeRequest.decryptKey")};static encryptKey=e=>{if(i(e)&&a(e,"armored","string")&&a(e,"passphrase","string"))return e;throw new Error("Wrong request structure for NodeRequest.encryptKey")};static verifyKey=e=>{if(i(e)&&a(e,"armored","string"))return e;throw new Error("Wrong request structure for NodeRequest.verifyKey")}};const i=e=>!!e&&"object"==typeof e,a=(e,t,r)=>{if(!i(e))return!1;const n=e[t];return"number"===r||"string"===r?typeof n===r:"boolean?"===r?"boolean"==typeof n||void 0===n:"string?"===r?null===n?(e[t]=void 0,!0):"string"==typeof n||void 0===n:"ComposeAttachment[]?"===r?void 0===n||Array.isArray(n)&&n.filter((e=>a(e,"name","string")&&a(e,"type","string")&&a(e,"base64","string"))).length===n.length:"Attachment[]"===r?Array.isArray(n)&&n.filter((e=>a(e,"id","string")&&a(e,"msgId","string")&&a(e,"name","string")&&a(e,"type","string?"))).length===n.length:"string[]"===r?Array.isArray(n)&&n.filter((e=>"string"==typeof e)).length===n.length:"string[]?"===r?void 0===n||Array.isArray(n)&&n.filter((e=>"string"==typeof e)).length===n.length:"PrvKeyInfo?"===r?null===n?(e[t]=void 0,!0):void 0===n||a(n,"private","string")&&a(n,"longid","string")&&a(n,"passphrase","string?"):"PrvKeyInfo[]"===r?Array.isArray(n)&&n.filter((e=>a(e,"private","string")&&a(e,"longid","string")&&a(e,"passphrase","string?"))).length===n.length:"Userid[]"===r?Array.isArray(n)&&n.filter((e=>a(e,"name","string")&&a(e,"email","string"))).length===n.length:"object"===r&&i(n)};t.readArmoredKeyOrThrow=async e=>{const t=await(0,n.readKey)({armoredKey:e});if(!t)throw new Error("No key found");return t}},6240:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Catch=void 0,t.Catch=class{static reportErr=e=>{console.error(e)};static report=(e,t)=>{console.error(e,t)};static undefinedOnException=async e=>{try{return await e}catch(e){return}}}},8078:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.requireIso88592=t.requireMimeBuilder=t.requireMimeParser=t.requireStreamReadToEnd=void 0,t.requireStreamReadToEnd=async()=>"not node"===(globalThis.process?.release?.name||"not node")?(await Promise.resolve().then((()=>r(9691)))).readToEnd:r(17).readToEnd,t.requireMimeParser=()=>r.g["emailjs-mime-parser"],t.requireMimeBuilder=()=>r.g["emailjs-mime-builder"],t.requireIso88592=()=>r.g.iso88592},7620:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Store=void 0;const n=r(1106);let i,a={};class s{static decryptedKeyCacheSet=e=>{s.keyCacheRenewExpiry(),a[(e=>(0,n.strToHex)(e.getKeyID().bytes).toUpperCase())(e)]=e};static decryptedKeyCacheGet=e=>(s.keyCacheRenewExpiry(),a[e]);static armoredKeyCacheSet=(e,t)=>{s.keyCacheRenewExpiry(),a[e]=t};static armoredKeyCacheGet=e=>(s.keyCacheRenewExpiry(),a[e]);static keyCacheWipe=()=>{a={}};static keyCacheRenewExpiry=()=>{i&&clearTimeout(i),i=setTimeout(s.keyCacheWipe,12e4)}}t.Store=s},1106:(e,t,r)=>{"use strict";var n=r(5456);Object.defineProperty(t,"__esModule",{value:!0}),t.getKeyExpirationTimeForCapabilities=t.strToHex=t.iso2022jpToUtf=t.base64decode=t.base64encode=void 0;const i=r(8764);t.base64encode=e=>i.Buffer.from(e,"binary").toString("base64"),t.base64decode=e=>i.Buffer.from(e,"base64").toString("binary"),t.iso2022jpToUtf=e=>n.convert(e,{to:"UTF8",from:"JIS",type:"string"}),t.strToHex=e=>{if(null===e)return"";const t=[],r=e.length;let n,i=0;for(;i{let t=null;for(const r of e)(null===t||null!==r&&r>t)&&(t=r);return t},s=e=>{const t=a(e.bindingSignatures.map((e=>e.created)));return e.bindingSignatures.filter((e=>e.created===t))[0].getExpirationTime()};t.getKeyExpirationTimeForCapabilities=async(e,t,r,n)=>{const i=await e.getPrimaryUser(void 0,n,void 0);if(!i)throw new Error("Could not find primary user");const o=await e.getExpirationTime(n);if(!o)return null;const c=a(i.user.selfCertifications.map((e=>e.created))),u=i.user.selfCertifications.filter((e=>e.created===c))[0].getExpirationTime();let l=o{}))||await e.getEncryptionKey(r,null,n).catch((()=>{}));if(!t)return null;const i="bindingSignatures"in t?s(t):await t.getExpirationTime(n)??0;i{}))||await e.getSigningKey(r,null,n).catch((()=>{}));if(!t)return null;const i="bindingSignatures"in t?s(t):await t.getExpirationTime(n)??0;i{"use strict";var n=r(1036);Object.defineProperty(t,"__esModule",{value:!0}),t.Xss=void 0;const i=r(4115);class a{static ALLOWED_BASIC_TAGS=["p","div","br","u","i","em","b","ol","ul","pre","li","table","thead","tbody","tfoot","tr","td","th","img","h1","h2","h3","h4","h5","h6","hr","address","blockquote","dl","fieldset","a","font","strong","strike","code"];static ALLOWED_ATTRS={a:["href","name","target"],img:["src","width","height","alt"],font:["size","color","face"],span:["color"],div:["color"],p:["color"],em:["style"],td:["width","height"],hr:["color","height"]};static ALLOWED_SCHEMES=["data","http","https","mailto"];static htmlSanitizeKeepBasicTags=e=>{const t=`IMG_ICON_${i.Str.sloppyRandom()}`;let r=!1,s=n(e,{allowedTags:a.ALLOWED_BASIC_TAGS,allowedAttributes:a.ALLOWED_ATTRS,allowedSchemes:a.ALLOWED_SCHEMES,transformTags:{img:(e,n)=>{const i=(n.src||"").substring(0,10);return i.startsWith("data:")?{tagName:"img",attribs:{src:n.src,alt:n.alt||""}}:i.startsWith("http://")||i.startsWith("https://")?(r=!0,{tagName:"a",attribs:{href:String(n.src),target:"_blank"},text:t}):{tagName:"img",attribs:{alt:n.alt,title:n.title},text:"[img]"}},"*":(e,t)=>(t.width&&"1"!==t.width&&"img"!==e&&delete t.width,t.height&&"1"!==t.height&&"img"!==e&&delete t.width,{tagName:e,attribs:t})},exclusiveFilter:({tag:e,attribs:t})=>"1"===t.width||"1"===t.height&&"hr"!==e});return r&&(s=`[remote content blocked for your privacy]

${s}`,s=n(s,{allowedTags:a.ALLOWED_BASIC_TAGS,allowedAttributes:a.ALLOWED_ATTRS,allowedSchemes:a.ALLOWED_SCHEMES})),s=s.replace(new RegExp(t,"g"),'[img]'),s};static htmlSanitizeAndStripAllTags=(e,t)=>{let r=a.htmlSanitizeKeepBasicTags(e);const s=i.Str.sloppyRandom(5),o=`CU_BR_${s}`,c=`CU_BS_${s}`,u=`CU_BE_${s}`;r=r.replace(/]*>/gi,o),r=r.replace(/\n/g,""),r=r.replace(/<\/(p|h1|h2|h3|h4|h5|h6|ol|ul|pre|address|blockquote|dl|div|fieldset|form|hr|table)[^>]*>/gi,u),r=r.replace(/<(p|h1|h2|h3|h4|h5|h6|ol|ul|pre|address|blockquote|dl|div|fieldset|form|hr|table)[^>]*>/gi,c),r=r.replace(RegExp(`(${c})+`,"g"),c).replace(RegExp(`(${u})+`,"g"),u),r=r.split(o+u+c).join(o).split(u+c).join(o).split(o+u).join(o);let l=r.split(o).join("\n").split(c).filter((e=>!!e)).join("\n").split(u).filter((e=>!!e)).join("\n");return l=l.replace(/\n{2,}/g,"\n\n"),l=n(l,{allowedTags:["img","span"],allowedAttributes:{img:["src"]},allowedSchemes:a.ALLOWED_SCHEMES,transformTags:{img:(e,t)=>({tagName:"span",attribs:{},text:`[image: ${t.alt||t.title||"no name"}]`})}}),l=n(l,{allowedTags:[]}),l=l.trim(),"\n"!==t&&(l=l.replace(/\n/g,t)),l};static escape=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">").replace(/\//g,"/");static escapeTextAsRenderableHtml=e=>a.escape(e).replace(/\n/g,"
\n").replace(/^ +/gm,(e=>e.replace(/ /g," "))).replace(/^\t+/gm,(e=>e.replace(/\t/g," "))).replace(/\n/g,"");static htmlUnescape=e=>e.replace(///g,"/").replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/ /g," ").replace(/&/g,"&")}t.Xss=a},9691:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ArrayStream:()=>o,cancel:()=>q,clone:()=>R,concat:()=>E,concatStream:()=>x,concatUint8Array:()=>p,fromAsync:()=>F,getReader:()=>P,getWriter:()=>C,isArrayStream:()=>c,isStream:()=>d,isUint8Array:()=>f,nodeToWeb:()=>m,parse:()=>U,passiveClone:()=>K,pipe:()=>T,readToEnd:()=>L,slice:()=>N,toStream:()=>_,transform:()=>D,transformPair:()=>B,transformRaw:()=>M,webToNode:()=>b});const n=Symbol("doneWritingPromise"),i=Symbol("doneWritingResolve"),a=Symbol("doneWritingReject"),s=Symbol("readingIndex");class o extends Array{constructor(){super(),this[n]=new Promise(((e,t)=>{this[i]=e,this[a]=t})),this[n].catch((()=>{}))}}function c(e){return e&&e.getReader&&Array.isArray(e)}function u(e){if(!c(e)){const t=e.getWriter(),r=t.releaseLock;return t.releaseLock=()=>{t.closed.catch((function(){})),r.call(t)},t}this.stream=e}o.prototype.getReader=function(){return void 0===this[s]&&(this[s]=0),{read:async()=>(await this[n],this[s]===this.length?{value:void 0,done:!0}:{value:this[this[s]++],done:!1})}},o.prototype.readToEnd=async function(e){await this[n];const t=e(this.slice(this[s]));return this.length=0,t},o.prototype.clone=function(){const e=new o;return e[n]=this[n].then((()=>{e.push(...this)})),e},u.prototype.write=async function(e){this.stream.push(e)},u.prototype.close=async function(){this.stream[i]()},u.prototype.abort=async function(e){return this.stream[a](e),e},u.prototype.releaseLock=function(){};const l="object"==typeof globalThis.process&&"object"==typeof globalThis.process.versions,h=l&&r(6845).Readable;function d(e){return c(e)?"array":globalThis.ReadableStream&&globalThis.ReadableStream.prototype.isPrototypeOf(e)?"web":h&&h.prototype.isPrototypeOf(e)?"node":!(!e||!e.getReader)&&"web-like"}function f(e){return Uint8Array.prototype.isPrototypeOf(e)}function p(e){if(1===e.length)return e[0];let t=0;for(let r=0;r{t||(y.isBuffer(n)&&(n=new Uint8Array(n.buffer,n.byteOffset,n.byteLength)),r.enqueue(n),e.pause())})),e.on("end",(()=>{t||r.close()})),e.on("error",(e=>r.error(e)))},pull(){e.resume()},cancel(r){t=!0,e.destroy(r)}})};class e extends g{constructor(e,t){super(t),this._reader=P(e)}async _read(e){try{for(;;){const{done:e,value:t}=await this._reader.read();if(e){this.push(null);break}if(!this.push(t)||this._cancelling){this._reading=!1;break}}}catch(e){this.emit("error",e)}}_destroy(e){this._reader.cancel(e)}}b=function(t,r){return new e(t,r)}}const w=new WeakSet,v=Symbol("externalBuffer");function k(e){if(this.stream=e,e[v]&&(this[v]=e[v].slice()),c(e)){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{},void(this._cancel=()=>{})}let t=d(e);if("node"===t&&(e=m(e)),t){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{t.closed.catch((function(){})),t.releaseLock()},void(this._cancel=t.cancel.bind(t))}let r=!1;this._read=async()=>r||w.has(e)?{value:void 0,done:!0}:(r=!0,{value:e,done:!1}),this._releaseLock=()=>{if(r)try{w.add(e)}catch(e){}}}k.prototype.read=async function(){return this[v]&&this[v].length?{done:!1,value:this[v].shift()}:this._read()},k.prototype.releaseLock=function(){this[v]&&(this.stream[v]=this[v]),this._releaseLock()},k.prototype.cancel=function(e){return this._cancel(e)},k.prototype.readLine=async function(){let e,t=[];for(;!e;){let{done:r,value:n}=await this.read();if(n+="",r)return t.length?E(t):void 0;const i=n.indexOf("\n")+1;i&&(e=E(t.concat(n.substr(0,i))),t=[]),i!==n.length&&t.push(n.substr(i))}return this.unshift(...t),e},k.prototype.readByte=async function(){const{done:e,value:t}=await this.read();if(e)return;const r=t[0];return this.unshift(N(t,1)),r},k.prototype.readBytes=async function(e){const t=[];let r=0;for(;;){const{done:n,value:i}=await this.read();if(n)return t.length?E(t):void 0;if(t.push(i),r+=i.length,r>=e){const r=E(t);return this.unshift(N(r,e)),N(r,0,e)}}},k.prototype.peekBytes=async function(e){const t=await this.readBytes(e);return this.unshift(t),t},k.prototype.unshift=function(...e){this[v]||(this[v]=[]),1===e.length&&f(e[0])&&this[v].length&&e[0].length&&this[v][0].byteOffset>=e[0].length?this[v][0]=new Uint8Array(this[v][0].buffer,this[v][0].byteOffset-e[0].length,this[v][0].byteLength+e[0].length):this[v].unshift(...e.filter((e=>e&&e.length)))},k.prototype.readToEnd=async function(e=E){const t=[];for(;;){const{done:e,value:r}=await this.read();if(e)break;t.push(r)}return e(t)};const A=l&&r(7921).Buffer;function _(e){let t=d(e);return"node"===t?m(e):t?e:new ReadableStream({start(t){t.enqueue(e),t.close()}})}function S(e){if(d(e))return e;const t=new o;return(async()=>{const r=C(t);await r.write(e),await r.close()})(),t}function E(e){return e.some((e=>d(e)&&!c(e)))?x(e):e.some((e=>c(e)))?function(e){const t=new o;let r=Promise.resolve();return e.forEach(((n,i)=>(r=r.then((()=>T(n,t,{preventClose:i!==e.length-1}))),r))),t}(e):"string"==typeof e[0]?e.join(""):A&&A.isBuffer(e[0])?A.concat(e):p(e)}function x(e){e=e.map(_);const t=I((async function(e){await Promise.all(n.map((t=>q(t,e))))}));let r=Promise.resolve();const n=e.map(((n,i)=>B(n,((n,a)=>(r=r.then((()=>T(n,t.writable,{preventClose:i!==e.length-1}))),r)))));return t.readable}function P(e){return new k(e)}function C(e){return new u(e)}async function T(e,t,{preventClose:r=!1,preventAbort:n=!1,preventCancel:i=!1}={}){if(d(e)&&!c(e)){e=_(e);try{if(e[v]){const r=C(t);for(let t=0;t{t=e})),t=null)},close:r.close.bind(r),abort:r.error.bind(r)})}}function D(e,t=(()=>{}),r=(()=>{})){if(c(e)){const n=new o;return(async()=>{const i=C(n);try{const n=await L(e),a=t(n),s=r();let o;o=void 0!==a&&void 0!==s?E([a,s]):void 0!==a?a:s,await i.write(o),await i.close()}catch(e){await i.abort(e)}})(),n}if(d(e))return M(e,{async transform(e,r){try{const n=await t(e);void 0!==n&&r.enqueue(n)}catch(e){r.error(e)}},async flush(e){try{const t=await r();void 0!==t&&e.enqueue(t)}catch(t){e.error(t)}}});const n=t(e),i=r();return void 0!==n&&void 0!==i?E([n,i]):void 0!==n?n:i}function B(e,t){if(d(e)&&!c(e)){let r;const n=new TransformStream({start(e){r=e}}),i=T(e,n.writable),a=I((async function(e){r.error(e),await i,await new Promise(setTimeout)}));return t(n.readable,a.writable),a.readable}e=S(e);const r=new o;return t(e,r),r}function U(e,t){let r;const n=B(e,((e,i)=>{const a=P(e);a.remainder=()=>(a.releaseLock(),T(e,i),n),r=t(a)}));return r}function R(e){if(c(e))return e.clone();if(d(e)){const t=function(e){if(c(e))throw new Error("ArrayStream cannot be tee()d, use clone() instead");if(d(e)){const t=_(e).tee();return t[0][v]=t[1][v]=e[v],t}return[N(e),N(e)]}(e);return O(e,t[0]),t[1]}return N(e)}function K(e){return c(e)?R(e):d(e)?new ReadableStream({start(t){const r=B(e,(async(e,r)=>{const n=P(e),i=C(r);try{for(;;){await i.ready;const{done:e,value:r}=await n.read();if(e){try{t.close()}catch(e){}return void await i.close()}try{t.enqueue(r)}catch(e){}await i.write(r)}}catch(e){t.error(e),await i.abort(e)}}));O(e,r)}}):N(e)}function O(e,t){Object.entries(Object.getOwnPropertyDescriptors(e.constructor.prototype)).forEach((([r,n])=>{"constructor"!==r&&(n.value?n.value=n.value.bind(t):n.get=n.get.bind(t),Object.defineProperty(e,r,n))}))}function N(e,t=0,r=1/0){if(c(e))throw new Error("Not implemented");if(d(e)){if(t>=0&&r>=0){let n=0;return M(e,{transform(e,i){n=t&&i.enqueue(N(e,Math.max(t-n,0),r-n)),n+=e.length):i.terminate()}})}if(t<0&&(r<0||r===1/0)){let n=[];return D(e,(e=>{e.length>=-t?n=[e]:n.push(e)}),(()=>N(E(n),t,r)))}if(0===t&&r<0){let n;return D(e,(e=>{const i=n?E([n,e]):e;if(i.length>=-r)return n=N(i,r),N(i,t,r);n=i}))}return console.warn(`stream.slice(input, ${t}, ${r}) not implemented efficiently.`),F((async()=>N(await L(e),t,r)))}return e[v]&&(e=E(e[v].concat([e]))),!f(e)||A&&A.isBuffer(e)?e.slice(t,r):(r===1/0&&(r=e.length),e.subarray(t,r))}async function L(e,t=E){return c(e)?e.readToEnd(t):d(e)?P(e).readToEnd(t):e}async function q(e,t){if(d(e)){if(e.cancel)return e.cancel(t);if(e.destroy)return e.destroy(t),await new Promise(setTimeout),t}}function F(e){const t=new o;return(async()=>{const r=C(t);try{await r.write(await e()),await r.close()}catch(e){await r.abort(e)}})(),t}},9742:(e,t)=>{"use strict";t.byteLength=function(e){var t=o(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=o(e),s=a[0],c=a[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,s,c)),l=0,h=c>0?s-4:s;for(r=0;r>16&255,u[l++]=t>>8&255,u[l++]=255&t;return 2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[l++]=255&t),1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],s=16383,o=0,u=n-i;ou?u:o+s));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0;s<64;++s)r[s]=a[s],n[a.charCodeAt(s)]=s;function o(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,a,s=[],o=t;o>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return s.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},8764:(e,t,r)=>{"use strict";const n=r(9742),i=r(645),a="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const s=2147483647;function o(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return h(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|y(e,t);let n=o(r);const i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(J(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return d(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(J(e,ArrayBuffer)||e&&J(e.buffer,ArrayBuffer))return f(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(J(e,SharedArrayBuffer)||e&&J(e.buffer,SharedArrayBuffer)))return f(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=o(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||Z(e.length)?o(0):d(e):"Buffer"===e.type&&Array.isArray(e.data)?d(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function l(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function h(e){return l(e),o(e<0?0:0|p(e))}function d(e){const t=e.length<0?0:0|p(e.length),r=o(t);for(let n=0;n=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||J(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return V(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return G(e).length;default:if(i)return n?-1:V(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return M(this,t,r);case"utf8":case"utf-8":return x(this,t,r);case"ascii":return C(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function m(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function b(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Z(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:w(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):w(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function w(e,t,r,n,i){let a,s=1,o=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,o/=2,c/=2,r/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){let n=-1;for(a=r;ao&&(r=o-c),a=r;a>=0;a--){let r=!0;for(let n=0;ni&&(n=i):n=i;const a=t.length;let s;for(n>a/2&&(n=a/2),s=0;s>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function x(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+s<=r){let r,n,o,c;switch(s){case 1:t<128&&(a=t);break;case 2:r=e[i+1],128==(192&r)&&(c=(31&t)<<6|63&r,c>127&&(a=c));break;case 3:r=e[i+1],n=e[i+2],128==(192&r)&&128==(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:r=e[i+1],n=e[i+2],o=e[i+3],128==(192&r)&&128==(192&n)&&128==(192&o)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&o,c>65535&&c<1114112&&(a=c))}}null===a?(a=65533,s=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),i+=s}return function(e){const t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(J(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let a=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(t>>>=0);const o=Math.min(a,s),u=this.slice(n,i),l=e.slice(t,r);for(let e=0;e>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return v(this,e,t,r);case"utf8":case"utf-8":return k(this,e,t,r);case"ascii":case"latin1":case"binary":return A(this,e,t,r);case"base64":return _(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const P=4096;function C(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let n=t;nr)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,r,n,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function U(e,t,r,n,i){z(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s>>=8,e[r++]=s,s>>=8,e[r++]=s,s>>=8,e[r++]=s,r}function R(e,t,r,n,i){z(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s>>=8,e[r+2]=s,s>>=8,e[r+1]=s,s>>=8,e[r]=s,r+8}function K(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function O(e,t,r,n,a){return t=+t,r>>>=0,a||K(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function N(e,t,r,n,a){return t=+t,r>>>=0,a||K(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||D(e,t,this.length);let n=this[e],i=1,a=0;for(;++a>>=0,t>>>=0,r||D(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||D(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||D(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||D(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||D(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||D(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=X((function(e){j(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||D(e,t,this.length);let n=this[e],i=1,a=0;for(;++a=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||D(e,t,this.length);let n=t,i=1,a=this[e+--n];for(;n>0&&(i*=256);)a+=this[e+--n]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return e>>>=0,t||D(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||D(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||D(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||D(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||D(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=X((function(e){j(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||D(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||D(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||D(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||D(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);let i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);let i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=X((function(e,t=0){return U(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=X((function(e,t=0){return R(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);B(this,e,t,r,n-1,-n)}let i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);B(this,e,t,r,n-1,-n)}let i=r-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=X((function(e,t=0){return U(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=X((function(e,t=0){return R(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return O(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return O(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return N(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return N(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function z(e,t,r,n,i,a){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(a+1)}${n}`:`>= -(2${n} ** ${8*(a+1)-1}${n}) and < 2 ** ${8*(a+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new L.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){j(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||H(t,e.length-(r+1))}(n,i,a)}function j(e,t){if("number"!=typeof e)throw new L.ERR_INVALID_ARG_TYPE(t,"number",e)}function H(e,t,r){if(Math.floor(e)!==e)throw j(e,r),new L.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new L.ERR_BUFFER_OUT_OF_BOUNDS;throw new L.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}q("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),q("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),q("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=F(String(r)):"bigint"==typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=F(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const W=/[^+/0-9A-Za-z-_]/g;function V(e,t){let r;t=t||1/0;const n=e.length;let i=null;const a=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function G(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(W,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function $(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function J(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Z(e){return e!=e}const Y=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function X(e){return"undefined"==typeof BigInt?Q:e}function Q(){throw new Error("BigInt not supported")}},9996:e=>{"use strict";var t=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)},r="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?o((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function i(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function s(e,t){try{return t in e}catch(e){return!1}}function o(e,r,c){(c=c||{}).arrayMerge=c.arrayMerge||i,c.isMergeableObject=c.isMergeableObject||t,c.cloneUnlessOtherwiseSpecified=n;var u=Array.isArray(r);return u===Array.isArray(e)?u?c.arrayMerge(e,r,c):function(e,t,r){var i={};return r.isMergeableObject(e)&&a(e).forEach((function(t){i[t]=n(e[t],r)})),a(t).forEach((function(a){(function(e,t){return s(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,a)||(s(e,a)&&r.isMergeableObject(t[a])?i[a]=function(e,t){if(!t.customMerge)return o;var r=t.customMerge(e);return"function"==typeof r?r:o}(a,r)(e[a],t[a],r):i[a]=n(t[a],r))})),i}(e,r,c):n(r,c)}o.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return o(e,r,t)}),{})};var c=o;e.exports=c},7837:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.attributeNames=t.elementNames=void 0,t.elementNames=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((function(e){return[e.toLowerCase(),e]}))),t.attributeNames=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((function(e){return[e.toLowerCase(),e]})))},7220:function(e,t,r){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r");case o.Comment:return"\x3c!--".concat(e.data,"--\x3e");case o.CDATA:return function(e){return"")}(e);case o.Script:case o.Style:case o.Tag:return function(e,t){var r;"foreign"===t.xmlMode&&(e.name=null!==(r=u.elementNames.get(e.name))&&void 0!==r?r:e.name,e.parent&&y.has(e.parent.name)&&(t=n(n({},t),{xmlMode:!1}))),!t.xmlMode&&g.has(e.name)&&(t=n(n({},t),{xmlMode:"foreign"}));var i="<".concat(e.name),a=function(e,t){var r;if(e){var n=!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)?h:t.xmlMode||"utf8"!==t.encodeEntities?c.encodeXML:c.escapeAttribute;return Object.keys(e).map((function(r){var i,a,s=null!==(i=e[r])&&void 0!==i?i:"";return"foreign"===t.xmlMode&&(r=null!==(a=u.attributeNames.get(r))&&void 0!==a?a:r),t.emptyAttrs||t.xmlMode||""!==s?"".concat(r,'="').concat(n(s),'"'):r})).join(" ")}}(e.attribs,t);return a&&(i+=" ".concat(a)),0===e.children.length&&(t.xmlMode?!1!==t.selfClosingTags:t.selfClosingTags&&d.has(e.name))?(t.xmlMode||(i+=" "),i+="/>"):(i+=">",e.children.length>0&&(i+=f(e.children,t)),!t.xmlMode&&d.has(e.name)||(i+=""))),i}(e,t);case o.Text:return function(e,t){var r,n=e.data||"";return!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)||!t.xmlMode&&e.parent&&l.has(e.parent.name)||(n=t.xmlMode||"utf8"!==t.encodeEntities?(0,c.encodeXML)(n):(0,c.escapeText)(n)),n}(e,t)}}t.render=f,t.default=f;var y=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),g=new Set(["svg","math"])},9960:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(r=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===r.Tag||e.type===r.Script||e.type===r.Style},t.Root=r.Root,t.Text=r.Text,t.Directive=r.Directive,t.Comment=r.Comment,t.Script=r.Script,t.Style=r.Style,t.Tag=r.Tag,t.CDATA=r.CDATA,t.Doctype=r.Doctype},7915:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var a=r(9960),s=r(7790);i(r(7790),t);var o={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},c=function(){function e(e,t,r){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(r=t,t=o),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:o,this.elementCB=null!=r?r:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var r=this.options.xmlMode?a.ElementType.Tag:void 0,n=new s.Element(e,t,void 0,r);this.addNode(n),this.tagStack.push(n)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===a.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var r=new s.Text(e);this.addNode(r),this.lastNode=r}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===a.ElementType.Comment)this.lastNode.data+=e;else{var t=new s.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new s.Text(""),t=new s.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var r=new s.ProcessingInstruction(e,t);this.addNode(r)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],r=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),r&&(e.prev=r,r.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=c,t.default=c},7790:function(e,t,r){"use strict";var n,i=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(o);t.NodeWithChildren=d;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.CDATA,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(d);t.CDATA=f;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.Root,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(d);t.Document=p;var y=function(e){function t(t,r,n,i){void 0===n&&(n=[]),void 0===i&&(i="script"===t?s.ElementType.Script:"style"===t?s.ElementType.Style:s.ElementType.Tag);var a=e.call(this,n)||this;return a.name=t,a.attribs=r,a.type=i,a}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var r,n;return{name:t,value:e.attribs[t],namespace:null===(r=e["x-attribsNamespace"])||void 0===r?void 0:r[t],prefix:null===(n=e["x-attribsPrefix"])||void 0===n?void 0:n[t]}}))},enumerable:!1,configurable:!0}),t}(d);function g(e){return(0,s.isTag)(e)}function m(e){return e.type===s.ElementType.CDATA}function b(e){return e.type===s.ElementType.Text}function w(e){return e.type===s.ElementType.Comment}function v(e){return e.type===s.ElementType.Directive}function k(e){return e.type===s.ElementType.Root}function A(e,t){var r;if(void 0===t&&(t=!1),b(e))r=new u(e.data);else if(w(e))r=new l(e.data);else if(g(e)){var n=t?_(e.children):[],i=new y(e.name,a({},e.attribs),n);n.forEach((function(e){return e.parent=i})),null!=e.namespace&&(i.namespace=e.namespace),e["x-attribsNamespace"]&&(i["x-attribsNamespace"]=a({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(i["x-attribsPrefix"]=a({},e["x-attribsPrefix"])),r=i}else if(m(e)){n=t?_(e.children):[];var s=new f(n);n.forEach((function(e){return e.parent=s})),r=s}else if(k(e)){n=t?_(e.children):[];var o=new p(n);n.forEach((function(e){return e.parent=o})),e["x-mode"]&&(o["x-mode"]=e["x-mode"]),r=o}else{if(!v(e))throw new Error("Not implemented yet: ".concat(e.type));var c=new h(e.name,e.data);null!=e["x-name"]&&(c["x-name"]=e["x-name"],c["x-publicId"]=e["x-publicId"],c["x-systemId"]=e["x-systemId"]),r=c}return r.startIndex=e.startIndex,r.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function _(e){for(var t=e.map((function(e){return A(e,!0)})),r=1;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFeed=void 0;var n=r(3346),i=r(3905);t.getFeed=function(e){var t=c(h,e);return t?"feed"===t.name?function(e){var t,r=e.children,n={type:"atom",items:(0,i.getElementsByTagName)("entry",r).map((function(e){var t,r=e.children,n={media:o(r)};l(n,"id","id",r),l(n,"title","title",r);var i=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;i&&(n.link=i);var a=u("summary",r)||u("content",r);a&&(n.description=a);var s=u("updated",r);return s&&(n.pubDate=new Date(s)),n}))};l(n,"id","id",r),l(n,"title","title",r);var a=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;a&&(n.link=a),l(n,"description","subtitle",r);var s=u("updated",r);return s&&(n.updated=new Date(s)),l(n,"author","email",r,!0),n}(t):function(e){var t,r,n=null!==(r=null===(t=c("channel",e.children))||void 0===t?void 0:t.children)&&void 0!==r?r:[],a={type:e.name.substr(0,3),id:"",items:(0,i.getElementsByTagName)("item",e.children).map((function(e){var t=e.children,r={media:o(t)};l(r,"id","guid",t),l(r,"title","title",t),l(r,"link","link",t),l(r,"description","description",t);var n=u("pubDate",t)||u("dc:date",t);return n&&(r.pubDate=new Date(n)),r}))};l(a,"title","title",n),l(a,"link","link",n),l(a,"description","description",n);var s=u("lastBuildDate",n);return s&&(a.updated=new Date(s)),l(a,"author","managingEditor",n,!0),a}(t):null};var a=["url","type","lang"],s=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function o(e){return(0,i.getElementsByTagName)("media:content",e).map((function(e){for(var t=e.attribs,r={medium:t.medium,isDefault:!!t.isDefault},n=0,i=a;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.uniqueSort=t.compareDocumentPosition=t.DocumentPosition=t.removeSubsets=void 0;var n,i=r(7915);function a(e,t){var r=[],a=[];if(e===t)return 0;for(var s=(0,i.hasChildren)(e)?e:e.parent;s;)r.unshift(s),s=s.parent;for(s=(0,i.hasChildren)(t)?t:t.parent;s;)a.unshift(s),s=s.parent;for(var o=Math.min(r.length,a.length),c=0;cl.indexOf(d)?u===t?n.FOLLOWING|n.CONTAINED_BY:n.FOLLOWING:u===e?n.PRECEDING|n.CONTAINS:n.PRECEDING}t.removeSubsets=function(e){for(var t=e.length;--t>=0;){var r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0)e.splice(t,1);else for(var n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e},function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"}(n=t.DocumentPosition||(t.DocumentPosition={})),t.compareDocumentPosition=a,t.uniqueSort=function(e){return(e=e.filter((function(e,t,r){return!r.includes(e,t+1)}))).sort((function(e,t){var r=a(e,t);return r&n.PRECEDING?-1:r&n.FOLLOWING?1:0})),e}},9432:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=t.isDocument=t.isComment=t.isText=t.isCDATA=t.isTag=void 0,i(r(3346),t),i(r(5010),t),i(r(6765),t),i(r(8043),t),i(r(3905),t),i(r(4975),t),i(r(6996),t);var a=r(7915);Object.defineProperty(t,"isTag",{enumerable:!0,get:function(){return a.isTag}}),Object.defineProperty(t,"isCDATA",{enumerable:!0,get:function(){return a.isCDATA}}),Object.defineProperty(t,"isText",{enumerable:!0,get:function(){return a.isText}}),Object.defineProperty(t,"isComment",{enumerable:!0,get:function(){return a.isComment}}),Object.defineProperty(t,"isDocument",{enumerable:!0,get:function(){return a.isDocument}}),Object.defineProperty(t,"hasChildren",{enumerable:!0,get:function(){return a.hasChildren}})},3905:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getElementsByTagType=t.getElementsByTagName=t.getElementById=t.getElements=t.testElement=void 0;var n=r(7915),i=r(8043),a={tag_name:function(e){return"function"==typeof e?function(t){return(0,n.isTag)(t)&&e(t.name)}:"*"===e?n.isTag:function(t){return(0,n.isTag)(t)&&t.name===e}},tag_type:function(e){return"function"==typeof e?function(t){return e(t.type)}:function(t){return t.type===e}},tag_contains:function(e){return"function"==typeof e?function(t){return(0,n.isText)(t)&&e(t.data)}:function(t){return(0,n.isText)(t)&&t.data===e}}};function s(e,t){return"function"==typeof t?function(r){return(0,n.isTag)(r)&&t(r.attribs[e])}:function(r){return(0,n.isTag)(r)&&r.attribs[e]===t}}function o(e,t){return function(r){return e(r)||t(r)}}function c(e){var t=Object.keys(e).map((function(t){var r=e[t];return Object.prototype.hasOwnProperty.call(a,t)?a[t](r):s(t,r)}));return 0===t.length?null:t.reduce(o)}t.testElement=function(e,t){var r=c(e);return!r||r(t)},t.getElements=function(e,t,r,n){void 0===n&&(n=1/0);var a=c(e);return a?(0,i.filter)(a,t,r,n):[]},t.getElementById=function(e,t,r){return void 0===r&&(r=!0),Array.isArray(t)||(t=[t]),(0,i.findOne)(s("id",e),t,r)},t.getElementsByTagName=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_name(e),t,r,n)},t.getElementsByTagType=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_type(e),t,r,n)}},6765:(e,t)=>{"use strict";function r(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){var t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}Object.defineProperty(t,"__esModule",{value:!0}),t.prepend=t.prependChild=t.append=t.appendChild=t.replaceElement=t.removeElement=void 0,t.removeElement=r,t.replaceElement=function(e,t){var r=t.prev=e.prev;r&&(r.next=t);var n=t.next=e.next;n&&(n.prev=t);var i=t.parent=e.parent;if(i){var a=i.children;a[a.lastIndexOf(e)]=t,e.parent=null}},t.appendChild=function(e,t){if(r(t),t.next=null,t.parent=e,e.children.push(t)>1){var n=e.children[e.children.length-2];n.next=t,t.prev=n}else t.prev=null},t.append=function(e,t){r(t);var n=e.parent,i=e.next;if(t.next=i,t.prev=e,e.next=t,t.parent=n,i){if(i.prev=t,n){var a=n.children;a.splice(a.lastIndexOf(i),0,t)}}else n&&n.children.push(t)},t.prependChild=function(e,t){if(r(t),t.parent=e,t.prev=null,1!==e.children.unshift(t)){var n=e.children[1];n.prev=t,t.next=n}else t.next=null},t.prepend=function(e,t){r(t);var n=e.parent;if(n){var i=n.children;i.splice(i.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=n,t.prev=e.prev,t.next=e,e.prev=t}},8043:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findAll=t.existsOne=t.findOne=t.findOneChild=t.find=t.filter=void 0;var n=r(7915);function i(e,t,r,i){for(var a=[],s=[t],o=[0];;)if(o[0]>=s[0].length){if(1===o.length)return a;s.shift(),o.shift()}else{var c=s[0][o[0]++];if(e(c)&&(a.push(c),--i<=0))return a;r&&(0,n.hasChildren)(c)&&c.children.length>0&&(o.unshift(0),s.unshift(c.children))}}t.filter=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),i(e,Array.isArray(t)?t:[t],r,n)},t.find=i,t.findOneChild=function(e,t){return t.find(e)},t.findOne=function e(t,r,i){void 0===i&&(i=!0);for(var a=null,s=0;s0&&(a=e(t,o.children,!0)))}return a},t.existsOne=function e(t,r){return r.some((function(r){return(0,n.isTag)(r)&&(t(r)||e(t,r.children))}))},t.findAll=function(e,t){for(var r=[],i=[t],a=[0];;)if(a[0]>=i[0].length){if(1===i.length)return r;i.shift(),a.shift()}else{var s=i[0][a[0]++];(0,n.isTag)(s)&&(e(s)&&r.push(s),s.children.length>0&&(a.unshift(0),i.unshift(s.children)))}}},3346:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.innerText=t.textContent=t.getText=t.getInnerHTML=t.getOuterHTML=void 0;var i=r(7915),a=n(r(7220)),s=r(9960);function o(e,t){return(0,a.default)(e,t)}t.getOuterHTML=o,t.getInnerHTML=function(e,t){return(0,i.hasChildren)(e)?e.children.map((function(e){return o(e,t)})).join(""):""},t.getText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.isTag)(t)?"br"===t.name?"\n":e(t.children):(0,i.isCDATA)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.textContent=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&!(0,i.isComment)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.innerText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&(t.type===s.ElementType.Tag||(0,i.isCDATA)(t))?e(t.children):(0,i.isText)(t)?t.data:""}},5010:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.prevElementSibling=t.nextElementSibling=t.getName=t.hasAttrib=t.getAttributeValue=t.getSiblings=t.getParent=t.getChildren=void 0;var n=r(7915);function i(e){return(0,n.hasChildren)(e)?e.children:[]}function a(e){return e.parent||null}t.getChildren=i,t.getParent=a,t.getSiblings=function(e){var t=a(e);if(null!=t)return i(t);for(var r=[e],n=e.prev,s=e.next;null!=n;)r.unshift(n),n=n.prev;for(;null!=s;)r.push(s),s=s.next;return r},t.getAttributeValue=function(e,t){var r;return null===(r=e.attribs)||void 0===r?void 0:r[t]},t.hasAttrib=function(e,t){return null!=e.attribs&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&null!=e.attribs[t]},t.getName=function(e){return e.name},t.nextElementSibling=function(e){for(var t=e.next;null!==t&&!(0,n.isTag)(t);)t=t.next;return t},t.prevElementSibling=function(e){for(var t=e.prev;null!==t&&!(0,n.isTag)(t);)t=t.prev;return t}},5046:(e,t,r)=>{var n=r(6128),i=r(3611);t.FALLBACK_CHARACTER=63;var a=t.HAS_TYPED="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array,s=!1,o=!1;try{"a"===String.fromCharCode.apply(null,[97])&&(s=!0)}catch(e){}if(a)try{"a"===String.fromCharCode.apply(null,new Uint8Array([97]))&&(o=!0)}catch(e){}t.CAN_CHARCODE_APPLY=s,t.CAN_CHARCODE_APPLY_TYPED=o,t.APPLY_BUFFER_SIZE=65533,t.APPLY_BUFFER_SIZE_OK=null;var c=t.EncodingNames={UTF32:{order:0},UTF32BE:{alias:["UCS4"]},UTF32LE:null,UTF16:{order:1},UTF16BE:{alias:["UCS2"]},UTF16LE:null,BINARY:{order:2},ASCII:{order:3,alias:["ISO646","CP367"]},JIS:{order:4,alias:["ISO2022JP"]},UTF8:{order:5},EUCJP:{order:6},SJIS:{order:7,alias:["CP932","MSKANJI","WINDOWS31J"]},UNICODE:{order:8}},u={};t.EncodingAliases=u,t.EncodingOrders=function(){for(var e,t,r,i,a=u,s=n.objectKeys(c),o=[],l=0,h=s.length;l95&&(i.JIS_TO_UTF8_TABLE[t]=0|e);for(i.JISX0212_TO_UTF8_TABLE={},s=(r=n.objectKeys(i.UTF8_TO_JISX0212_TABLE)).length,a=0;a{var n=r(5046),i=r(6128),a=r(7464),s=r(3611);function o(e){n.init_JIS_TO_UTF8_TABLE();for(var t,r,i,a,o,c,u,l=[],h=0,d=e&&e.length;h=161&&t<=223?(a=188|(i=t-64)>>6&3,o=128|63&i,l[l.length]=239,l[l.length]=255&a,l[l.length]=255&o):t>=128?(r=t<<1,(i=e[++h])<159?(r-=r<319?225:97,i-=i>126?32:31):(r-=r<319?224:96,i-=126),c=((r&=255)<<8)+i,void 0===(u=s.JIS_TO_UTF8_TABLE[c])?l[l.length]=n.FALLBACK_CHARACTER:u<65535?(l[l.length]=u>>8&255,l[l.length]=255&u):(l[l.length]=u>>16&255,l[l.length]=u>>8&255,l[l.length]=255&u)):l[l.length]=255&e[h];return l}function c(e){n.init_JIS_TO_UTF8_TABLE();for(var t,r,i,a,o,c,u=[],l=0,h=e&&e.length;l>6&3,a=128|63&r,u[u.length]=239,u[u.length]=255&i,u[u.length]=255&a):143===t?(o=(e[++l]-128<<8)+(e[++l]-128),void 0===(c=s.JISX0212_TO_UTF8_TABLE[o])?u[u.length]=n.FALLBACK_CHARACTER:c<65535?(u[u.length]=c>>8&255,u[u.length]=255&c):(u[u.length]=c>>16&255,u[u.length]=c>>8&255,u[u.length]=255&c)):t>=128?(o=(t-128<<8)+(e[++l]-128),void 0===(c=s.JIS_TO_UTF8_TABLE[o])?u[u.length]=n.FALLBACK_CHARACTER:c<65535?(u[u.length]=c>>8&255,u[u.length]=255&c):(u[u.length]=c>>16&255,u[u.length]=c>>8&255,u[u.length]=255&c)):u[u.length]=255&e[l];return u}function u(e){n.init_JIS_TO_UTF8_TABLE();for(var t,r,i,a,o,c=[],u=0,l=0,h=e&&e.length;l>8&255,c[c.length]=255&o):(c[c.length]=o>>16&255,c[c.length]=o>>8&255,c[c.length]=255&o)):2===u?(r=188|(t=e[l]+64)>>6&3,i=128|63&t,c[c.length]=239,c[c.length]=255&r,c[c.length]=255&i):3===u?(a=(e[l]<<8)+e[++l],void 0===(o=s.JISX0212_TO_UTF8_TABLE[a])?c[c.length]=n.FALLBACK_CHARACTER:o<65535?(c[c.length]=o>>8&255,c[c.length]=255&o):(c[c.length]=o>>16&255,c[c.length]=o>>8&255,c[c.length]=255&o)):c[c.length]=255&e[l]}return c}function l(e,t){for(var r,i,a,o,c,u,l=[],h=0,d=e&&e.length,f=t&&t.fallback;h=128?(r<=223?(o=[r,e[h+1]],c=(r<<8)+e[++h]):r<=239?(o=[r,e[h+1],e[h+2]],c=(r<<16)+(e[++h]<<8)+(255&e[++h])):(o=[r,e[h+1],e[h+2],e[h+3]],c=(r<<24)+(e[++h]<<16)+(e[++h]<<8)+(255&e[++h])),null==(u=s.UTF8_TO_JIS_TABLE[c])?f?C(l,o,f):l[l.length]=n.FALLBACK_CHARACTER:u<255?l[l.length]=u+128:(u>65536&&(u-=65536),a=255&u,1&(i=u>>8)?((i>>=1)<47?i+=113:i-=79,a+=a>95?32:31):((i>>=1)<=47?i+=112:i-=80,a+=126),l[l.length]=255&i,l[l.length]=255&a)):l[l.length]=255&e[h];return l}function h(e,t){for(var r,i,a,o,c=[],u=0,l=e&&e.length,h=t&&t.fallback;u=128?(r<=223?(i=[r,e[u+1]],a=(r<<8)+e[++u]):r<=239?(i=[r,e[u+1],e[u+2]],a=(r<<16)+(e[++u]<<8)+(255&e[++u])):(i=[r,e[u+1],e[u+2],e[u+3]],a=(r<<24)+(e[++u]<<16)+(e[++u]<<8)+(255&e[++u])),null==(o=s.UTF8_TO_JIS_TABLE[a])?null==(o=s.UTF8_TO_JISX0212_TABLE[a])?h?C(c,i,h):c[c.length]=n.FALLBACK_CHARACTER:(c[c.length]=143,c[c.length]=(o>>8)-128&255,c[c.length]=(255&o)-128&255):(o>65536&&(o-=65536),o<255?(c[c.length]=142,c[c.length]=o-128&255):(c[c.length]=(o>>8)-128&255,c[c.length]=(255&o)-128&255))):c[c.length]=255&e[u];return c}function d(e,t){for(var r,i,a,o,c=[],u=0,l=e&&e.length,h=0,d=t&&t.fallback,f=[27,40,66,27,36,66,27,40,73,27,36,40,68];h>8&255,c[c.length]=255&o):(o>65536&&(o-=65536),o<255?(2!==u&&(u=2,c[c.length]=f[6],c[c.length]=f[7],c[c.length]=f[8]),c[c.length]=255&o):(1!==u&&(u=1,c[c.length]=f[3],c[c.length]=f[4],c[c.length]=f[5]),c[c.length]=o>>8&255,c[c.length]=255&o)));return 0!==u&&(c[c.length]=f[0],c[c.length]=f[1],c[c.length]=f[2]),c}function f(e){for(var t,r,n=[],i=0,a=e&&e.length;i=55296&&t<=56319&&i+1=56320&&r<=57343&&(t=1024*(t-55296)+r-56320+65536,i++),t<128?n[n.length]=t:t<2048?(n[n.length]=192|t>>6&31,n[n.length]=128|63&t):t<65536?(n[n.length]=224|t>>12&15,n[n.length]=128|t>>6&63,n[n.length]=128|63&t):t<2097152&&(n[n.length]=240|t>>18&15,n[n.length]=128|t>>12&63,n[n.length]=128|t>>6&63,n[n.length]=128|63&t);return n}function p(e,t){for(var r,n,i,a=[],s=0,o=e&&e.length,c=t&&t.ignoreSurrogatePair;s>4)>=0&&r<=7?i=n:12===r||13===r?i=(31&n)<<6|63&e[s++]:14===r?i=(15&n)<<12|(63&e[s++])<<6|63&e[s++]:15===r&&(i=(7&n)<<18|(63&e[s++])<<12|(63&e[s++])<<6|63&e[s++]),i<=65535||c?a[a.length]=i:(i-=65536,a[a.length]=55296+(i>>10),a[a.length]=i%1024+56320);return a}function y(e,t){var r;if(t&&t.bom){var n,a,s=t.bom;i.isString(s)||(s="BE"),"B"===s.charAt(0).toUpperCase()?(n=[254,255],a=g(e)):(n=[255,254],a=m(e)),(r=[])[0]=n[0],r[1]=n[1];for(var o=0,c=a.length;o>8&255,r[r.length]=255&t);return r}function m(e){for(var t,r=[],n=0,i=e&&e.length;n>8&255);return r}function b(e){var t,r,n=[],i=0,a=e&&e.length;for(a>=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(i=2);i=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(i=2);i=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(i=2);i>=1)<47?t+=113:t-=79,r+=r>95?32:31):((t>>=1)<=47?t+=112:t-=80,r+=126),i[i.length]=255&t,i[i.length]=255&r):i[i.length]=2===a?e[s]+128&255:3===a?n.FALLBACK_CHARACTER:255&e[s]}return i},t.JISToEUCJP=function(e){for(var t=[],r=0,n=e&&e.length,i=0;i=161&&t<=223?(2!==i&&(i=2,n[n.length]=o[6],n[n.length]=o[7],n[n.length]=o[8]),n[n.length]=t-128&255):t>=128?(1!==i&&(i=1,n[n.length]=o[3],n[n.length]=o[4],n[n.length]=o[5]),t<<=1,(r=e[++s])<159?(t-=t<319?225:97,r-=r>126?32:31):(t-=t<319?224:96,r-=126),n[n.length]=255&t,n[n.length]=255&r):(0!==i&&(i=0,n[n.length]=o[0],n[n.length]=o[1],n[n.length]=o[2]),n[n.length]=255&t);return 0!==i&&(n[n.length]=o[0],n[n.length]=o[1],n[n.length]=o[2]),n},t.SJISToEUCJP=function(e){for(var t,r,n=[],i=e&&e.length,a=0;a=161&&t<=223?(n[n.length]=142,n[n.length]=t):t>=129?(t<<=1,(r=e[++a])<159?(t-=t<319?97:225,r+=r>126?96:97):(t-=t<319?96:224,r+=2),n[n.length]=255&t,n[n.length]=255&r):n[n.length]=255&t;return n},t.EUCJPToJIS=function(e){for(var t,r=[],n=0,i=e&&e.length,a=0,s=[27,40,66,27,36,66,27,40,73,27,36,40,68];a142?(1!==n&&(n=1,r[r.length]=s[3],r[r.length]=s[4],r[r.length]=s[5]),r[r.length]=t-128&255,r[r.length]=e[++a]-128&255):(0!==n&&(n=0,r[r.length]=s[0],r[r.length]=s[1],r[r.length]=s[2]),r[r.length]=255&t);return 0!==n&&(r[r.length]=s[0],r[r.length]=s[1],r[r.length]=s[2]),r},t.EUCJPToSJIS=function(e){for(var t,r,i=[],a=e&&e.length,s=0;s142?(r=e[++s],1&t?(t>>=1,t+=t<111?49:113,r-=r>223?96:97):(t>>=1,t+=t<=111?48:112,r-=2),i[i.length]=255&t,i[i.length]=255&r):i[i.length]=142===t?255&e[++s]:255&t;return i},t.SJISToUTF8=o,t.EUCJPToUTF8=c,t.JISToUTF8=u,t.UTF8ToSJIS=l,t.UTF8ToEUCJP=h,t.UTF8ToJIS=d,t.UNICODEToUTF8=f,t.UTF8ToUNICODE=p,t.UNICODEToUTF16=y,t.UNICODEToUTF16BE=g,t.UNICODEToUTF16LE=m,t.UTF16BEToUNICODE=b,t.UTF16LEToUNICODE=w,t.UTF16ToUNICODE=v,t.UTF16ToUTF16BE=function(e){for(var t,r,n=[],i=0,s=e&&e.length,o=!1,c=!0;i=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(l=2),r&&(c[0]=r[0],c[1]=r[1]);l=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(l=2),r&&(c[0]=r[0],c[1]=r[1]);l{t.isBINARY=function(e){for(var t,r=0,n=e&&e.length;r255)return!1;if(t>=0&&t<=7||255===t)return!0}return!1},t.isASCII=function(e){for(var t,r=0,n=e&&e.length;r255||t>=128&&t<=255||27===t)return!1;return!0},t.isJIS=function(e){for(var t,r,n,i=0,a=e&&e.length;i255||t>=128&&t<=255)return!1;if(27===t){if(i+2>=a)return!1;if(r=e[i+1],n=e[i+2],36===r){if(40===n||64===n||66===n)return!0}else{if(38===r&&64===n)return!0;if(40===r&&(66===n||73===n||74===n))return!0}}}return!1},t.isEUCJP=function(e){for(var t,r=0,n=e&&e.length;r255||t<142)return!1;if(142===t){if(r+1>=n)return!1;if((t=e[++r])<161||223=n)return!1;if((t=e[++r])<162||237=n)return!1;if((t=e[++r])<161||254128;)if(e[r++]>255)return!1;for(;r239||r+1>=n)return!1;if((t=e[++r])<64||127===t||t>252)return!1}return!0},t.isUTF8=function(e){for(var t,r=0,n=e&&e.length;r255)return!1;if(!(9===t||10===t||13===t||t>=32&&t<=126))if(t>=194&&t<=223){if(r+1>=n||e[r+1]<128||e[r+1]>191)return!1;r++}else if(224===t){if(r+2>=n||e[r+1]<160||e[r+1]>191||e[r+2]<128||e[r+2]>191)return!1;r+=2}else if(t>=225&&t<=236||238===t||239===t){if(r+2>=n||e[r+1]<128||e[r+1]>191||e[r+2]<128||e[r+2]>191)return!1;r+=2}else if(237===t){if(r+2>=n||e[r+1]<128||e[r+1]>159||e[r+2]<128||e[r+2]>191)return!1;r+=2}else if(240===t){if(r+3>=n||e[r+1]<144||e[r+1]>191||e[r+2]<128||e[r+2]>191||e[r+3]<128||e[r+3]>191)return!1;r+=3}else if(t>=241&&t<=243){if(r+3>=n||e[r+1]<128||e[r+1]>191||e[r+2]<128||e[r+2]>191||e[r+3]<128||e[r+3]>191)return!1;r+=3}else{if(244!==t)return!1;if(r+3>=n||e[r+1]<128||e[r+1]>143||e[r+2]<128||e[r+2]>191||e[r+3]<128||e[r+3]>191)return!1;r+=3}}return!0},t.isUTF16=function(e){var t,r,n,i,a=0,s=e&&e.length,o=null;if(s<2){if(e[0]>255)return!1}else{if(t=e[0],r=e[1],255===t&&254===r)return!0;if(254===t&&255===r)return!0;for(;a255)return!1}if(null===o)return!1;if(void 0!==(n=e[o+1])&&n>0&&n<128)return!0;if(void 0!==(i=e[o-1])&&i>0&&i<128)return!0}return!1},t.isUTF16BE=function(e){var t,r,n=0,i=e&&e.length,a=null;if(i<2){if(e[0]>255)return!1}else{if(t=e[0],r=e[1],254===t&&255===r)return!0;for(;n255)return!1}if(null===a)return!1;if(a%2==0)return!0}return!1},t.isUTF16LE=function(e){var t,r,n=0,i=e&&e.length,a=null;if(i<2){if(e[0]>255)return!1}else{if(t=e[0],r=e[1],255===t&&254===r)return!0;for(;n255)return!1}if(null===a)return!1;if(a%2!=0)return!0}return!1},t.isUTF32=function(e){var t,r,n,i,a,s,o=0,c=e&&e.length,u=null;if(c<4){for(;o255)return!1}else{if(t=e[0],r=e[1],n=e[2],i=e[3],0===t&&0===r&&254===n&&255===i)return!0;if(255===t&&254===r&&0===n&&0===i)return!0;for(;o255)return!1}if(null===u)return!1;if(void 0!==(a=e[u+3])&&a>0&&a<=127)return 0===e[u+2]&&0===e[u+1];if(void 0!==(s=e[u-1])&&s>0&&s<=127)return 0===e[u+1]&&0===e[u+2]}return!1},t.isUNICODE=function(e){for(var t,r=0,n=e&&e.length;r1114111)return!1;return!0}},3611:(e,t,r)=>{t.UTF8_TO_JIS_TABLE=r(5557),t.UTF8_TO_JISX0212_TABLE=r(5594),t.JIS_TO_UTF8_TABLE=r(6732),t.JISX0212_TO_UTF8_TABLE=r(2126)},5456:(e,t,r)=>{var n=r(5046),i=r(6128),a=r(7464),s=r(9555),o=r(4557),c=r(7726).i8,u=Object.prototype.hasOwnProperty,l={version:c,orders:n.EncodingOrders,detect:function(e,t){if(null==e||0===e.length)return!1;i.isObject(t)&&!i.isArray(t)&&(t=t.encoding),i.isString(e)&&(e=i.stringToBuffer(e)),null==t?t=l.orders:i.isString(t)&&(t="AUTO"===(t=t.toUpperCase())?l.orders:~t.indexOf(",")?t.split(/\s*,\s*/):[t]);for(var r,n,s,o=t.length,c=0;c255)return encodeURIComponent(i.codeToString_fast(e));t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||33===t||t>=39&&t<=42||45===t||46===t||95===t||126===t?n[n.length]=t:(n[n.length]=37,t<16?(n[n.length]=48,n[n.length]=r[t]):(n[n.length]=r[t>>4&15],n[n.length]=r[15&t]))}return i.codeToString_fast(n)},urlDecode:function(e){for(var t,r=[],n=0,i=e&&e.length;n=65281&&r<=65374&&(r-=65248),n[n.length]=r;return t?i.codeToString_fast(n):n},toZenkakuCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));for(var r,n=[],a=e&&e.length,s=0;s=33&&r<=126&&(r+=65248),n[n.length]=r;return t?i.codeToString_fast(n):n},toHiraganaCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));for(var r,n=[],a=e&&e.length,s=0;s=12449&&r<=12534?r-=96:12535===r?(n[n.length]=12431,r=12443):12538===r&&(n[n.length]=12434,r=12443),n[n.length]=r;return t?i.codeToString_fast(n):n},toKatakanaCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));for(var r,n=[],a=e&&e.length,s=0;s=12353&&r<=12438&&((12431===r||12434===r)&&s=12289&&r<=12540&&void 0!==(a=o.HANKANA_TABLE[r])?s[s.length]=a:12532===r||12535===r||12538===r?(s[s.length]=o.HANKANA_SONANTS[r],s[s.length]=65438):r>=12459&&r<=12489?(s[s.length]=o.HANKANA_TABLE[r-1],s[s.length]=65438):r>=12495&&r<=12509?(n=r%3,s[s.length]=o.HANKANA_TABLE[r-n],s[s.length]=o.HANKANA_MARKS[n-1]):s[s.length]=r;return t?i.codeToString_fast(s):s},toZenkanaCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));var r,n,a,s=[],c=e&&e.length,u=0;for(u=0;u65376&&r<65440&&(n=o.ZENKANA_TABLE[r-65377],u+165397&&r<65413||r>65417&&r<65423)?(n++,u++):65439===a&&r>65417&&r<65423&&(n+=2,u++)),r=n),s[s.length]=r;return t?i.codeToString_fast(s):s},toHankakuSpace:function(e){if(i.isString(e))return e.replace(/\u3000/g," ");for(var t,r=[],n=e&&e.length,a=0;a{e.exports=null},2126:e=>{e.exports=null},4557:(e,t)=>{t.HANKANA_TABLE={12289:65380,12290:65377,12300:65378,12301:65379,12443:65438,12444:65439,12449:65383,12450:65393,12451:65384,12452:65394,12453:65385,12454:65395,12455:65386,12456:65396,12457:65387,12458:65397,12459:65398,12461:65399,12463:65400,12465:65401,12467:65402,12469:65403,12471:65404,12473:65405,12475:65406,12477:65407,12479:65408,12481:65409,12483:65391,12484:65410,12486:65411,12488:65412,12490:65413,12491:65414,12492:65415,12493:65416,12494:65417,12495:65418,12498:65419,12501:65420,12504:65421,12507:65422,12510:65423,12511:65424,12512:65425,12513:65426,12514:65427,12515:65388,12516:65428,12517:65389,12518:65429,12519:65390,12520:65430,12521:65431,12522:65432,12523:65433,12524:65434,12525:65435,12527:65436,12530:65382,12531:65437,12539:65381,12540:65392},t.HANKANA_SONANTS={12532:65395,12535:65436,12538:65382},t.HANKANA_MARKS=[65438,65439],t.ZENKANA_TABLE=[12290,12300,12301,12289,12539,12530,12449,12451,12453,12455,12457,12515,12517,12519,12483,12540,12450,12452,12454,12456,12458,12459,12461,12463,12465,12467,12469,12471,12473,12475,12477,12479,12481,12484,12486,12488,12490,12491,12492,12493,12494,12495,12498,12501,12504,12507,12510,12511,12512,12513,12514,12516,12518,12520,12521,12522,12523,12524,12525,12527,12531,12443,12444]},5557:e=>{e.exports={15711649:33,15711650:34,15711651:35,15711652:36,15711653:37,15711654:38,15711655:39,15711656:40,15711657:41,15711658:42,15711659:43,15711660:44,15711661:45,15711662:46,15711663:47,15711664:48,15711665:49,15711666:50,15711667:51,15711668:52,15711669:53,15711670:54,15711671:55,15711672:56,15711673:57,15711674:58,15711675:59,15711676:60,15711677:61,15711678:62,15711679:63,15711872:64,15711873:65,15711874:66,15711875:67,15711876:68,15711877:69,15711878:70,15711879:71,15711880:72,15711881:73,15711882:74,15711883:75,15711884:76,15711885:77,15711886:78,15711887:79,15711888:80,15711889:81,15711890:82,15711891:83,15711892:84,15711893:85,15711894:86,15711895:87,15711896:88,15711897:89,15711898:90,15711899:91,15711900:92,15711901:93,15711902:94,15711903:95,14848416:11553,14848417:11554,14848418:11555,14848419:11556,14848420:11557,14848421:11558,14848422:11559,14848423:11560,14848424:11561,14848425:11562,14848426:11563,14848427:11564,14848428:11565,14848429:11566,14848430:11567,14848431:11568,14848432:11569,14848433:11570,14848434:11571,14848435:11572,14845344:11573,14845345:11574,14845346:11575,14845347:11576,14845348:11577,14845349:11578,14845350:11579,14845351:11580,14845352:11581,14845353:11582,14912905:11584,14912660:11585,14912674:11586,14912909:11587,14912664:11588,14912679:11589,14912643:11590,14912694:11591,14912913:11592,14912919:11593,14912653:11594,14912678:11595,14912675:11596,14912683:11597,14912906:11598,14912699:11599,14913180:11600,14913181:11601,14913182:11602,14913166:11603,14913167:11604,14913412:11605,14913185:11606,14912955:11615,14909597:11616,14909599:11617,14845078:11618,14913421:11619,14845089:11620,14912164:11621,14912165:11622,14912166:11623,14912167:11624,14912168:11625,14911665:11626,14911666:11627,14911673:11628,14912958:11629,14912957:11630,14912956:11631,14846126:11635,14846097:11636,14846111:11640,14846655:11641,14909568:8481,14909569:8482,14909570:8483,15711372:8484,15711374:8485,14910395:8486,15711386:8487,15711387:8488,15711391:8489,15711361:8490,14910107:8491,14910108:8492,49844:8493,15711616:8494,49832:8495,15711422:8496,15712163:8497,15711423:8498,14910397:8499,14910398:8500,14910109:8501,14910110:8502,14909571:8503,14990237:8504,14909573:8505,14909574:8506,14909575:8507,14910396:8508,14844053:8509,14844048:8510,15711375:8511,15711420:8512,15711646:8513,14844054:8514,15711644:8515,14844070:8516,14844069:8517,14844056:8518,14844057:8519,14844060:8520,14844061:8521,15711368:8522,15711369:8523,14909588:8524,14909589:8525,15711419:8526,15711421:8527,15711643:8528,15711645:8529,14909576:8530,14909577:8531,14909578:8532,14909579:8533,14909580:8534,14909581:8535,14909582:8536,14909583:8537,14909584:8538,14909585:8539,15711371:8540,15711373:8541,49841:8542,50071:8543,50103:8544,15711389:8545,14846368:8546,15711388:8547,15711390:8548,14846374:8549,14846375:8550,14846110:8551,14846132:8552,14850434:8553,14850432:8554,49840:8555,14844082:8556,14844083:8557,14845059:8558,15712165:8559,15711364:8560,15712160:8561,15712161:8562,15711365:8563,15711363:8564,15711366:8565,15711370:8566,15711392:8567,49831:8568,14850182:8569,14850181:8570,14849931:8571,14849935:8572,14849934:8573,14849927:8574,14849926:8737,14849697:8738,14849696:8739,14849715:8740,14849714:8741,14849725:8742,14849724:8743,14844091:8744,14909586:8745,14845586:8746,14845584:8747,14845585:8748,14845587:8749,14909587:8750,14846088:8762,14846091:8763,14846598:8764,14846599:8765,14846594:8766,14846595:8767,14846122:8768,14846121:8769,14846119:8778,14846120:8779,49836:8780,14845842:8781,14845844:8782,14846080:8783,14846083:8784,14846112:8796,14846629:8797,14847122:8798,14846082:8799,14846087:8800,14846369:8801,14846354:8802,14846378:8803,14846379:8804,14846106:8805,14846141:8806,14846109:8807,14846133:8808,14846123:8809,14846124:8810,14845099:8818,14844080:8819,14850479:8820,14850477:8821,14850474:8822,14844064:8823,14844065:8824,49846:8825,14849967:8830,15711376:9008,15711377:9009,15711378:9010,15711379:9011,15711380:9012,15711381:9013,15711382:9014,15711383:9015,15711384:9016,15711385:9017,15711393:9025,15711394:9026,15711395:9027,15711396:9028,15711397:9029,15711398:9030,15711399:9031,15711400:9032,15711401:9033,15711402:9034,15711403:9035,15711404:9036,15711405:9037,15711406:9038,15711407:9039,15711408:9040,15711409:9041,15711410:9042,15711411:9043,15711412:9044,15711413:9045,15711414:9046,15711415:9047,15711416:9048,15711417:9049,15711418:9050,15711617:9057,15711618:9058,15711619:9059,15711620:9060,15711621:9061,15711622:9062,15711623:9063,15711624:9064,15711625:9065,15711626:9066,15711627:9067,15711628:9068,15711629:9069,15711630:9070,15711631:9071,15711632:9072,15711633:9073,15711634:9074,15711635:9075,15711636:9076,15711637:9077,15711638:9078,15711639:9079,15711640:9080,15711641:9081,15711642:9082,14909825:9249,14909826:9250,14909827:9251,14909828:9252,14909829:9253,14909830:9254,14909831:9255,14909832:9256,14909833:9257,14909834:9258,14909835:9259,14909836:9260,14909837:9261,14909838:9262,14909839:9263,14909840:9264,14909841:9265,14909842:9266,14909843:9267,14909844:9268,14909845:9269,14909846:9270,14909847:9271,14909848:9272,14909849:9273,14909850:9274,14909851:9275,14909852:9276,14909853:9277,14909854:9278,14909855:9279,14909856:9280,14909857:9281,14909858:9282,14909859:9283,14909860:9284,14909861:9285,14909862:9286,14909863:9287,14909864:9288,14909865:9289,14909866:9290,14909867:9291,14909868:9292,14909869:9293,14909870:9294,14909871:9295,14909872:9296,14909873:9297,14909874:9298,14909875:9299,14909876:9300,14909877:9301,14909878:9302,14909879:9303,14909880:9304,14909881:9305,14909882:9306,14909883:9307,14909884:9308,14909885:9309,14909886:9310,14909887:9311,14910080:9312,14910081:9313,14910082:9314,14910083:9315,14910084:9316,14910085:9317,14910086:9318,14910087:9319,14910088:9320,14910089:9321,14910090:9322,14910091:9323,14910092:9324,14910093:9325,14910094:9326,14910095:9327,14910096:9328,14910097:9329,14910098:9330,14910099:9331,14910113:9505,14910114:9506,14910115:9507,14910116:9508,14910117:9509,14910118:9510,14910119:9511,14910120:9512,14910121:9513,14910122:9514,14910123:9515,14910124:9516,14910125:9517,14910126:9518,14910127:9519,14910128:9520,14910129:9521,14910130:9522,14910131:9523,14910132:9524,14910133:9525,14910134:9526,14910135:9527,14910136:9528,14910137:9529,14910138:9530,14910139:9531,14910140:9532,14910141:9533,14910142:9534,14910143:9535,14910336:9536,14910337:9537,14910338:9538,14910339:9539,14910340:9540,14910341:9541,14910342:9542,14910343:9543,14910344:9544,14910345:9545,14910346:9546,14910347:9547,14910348:9548,14910349:9549,14910350:9550,14910351:9551,14910352:9552,14910353:9553,14910354:9554,14910355:9555,14910356:9556,14910357:9557,14910358:9558,14910359:9559,14910360:9560,14910361:9561,14910362:9562,14910363:9563,14910364:9564,14910365:9565,14910366:9566,14910367:9567,14910368:9568,14910369:9569,14910370:9570,14910371:9571,14910372:9572,14910373:9573,14910374:9574,14910375:9575,14910376:9576,14910377:9577,14910378:9578,14910379:9579,14910380:9580,14910381:9581,14910382:9582,14910383:9583,14910384:9584,14910385:9585,14910386:9586,14910387:9587,14910388:9588,14910389:9589,14910390:9590,52881:9761,52882:9762,52883:9763,52884:9764,52885:9765,52886:9766,52887:9767,52888:9768,52889:9769,52890:9770,52891:9771,52892:9772,52893:9773,52894:9774,52895:9775,52896:9776,52897:9777,52899:9778,52900:9779,52901:9780,52902:9781,52903:9782,52904:9783,52905:9784,52913:9793,52914:9794,52915:9795,52916:9796,52917:9797,52918:9798,52919:9799,52920:9800,52921:9801,52922:9802,52923:9803,52924:9804,52925:9805,52926:9806,52927:9807,53120:9808,53121:9809,53123:9810,53124:9811,53125:9812,53126:9813,53127:9814,53128:9815,53129:9816,53392:10017,53393:10018,53394:10019,53395:10020,53396:10021,53397:10022,53377:10023,53398:10024,53399:10025,53400:10026,53401:10027,53402:10028,53403:10029,53404:10030,53405:10031,53406:10032,53407:10033,53408:10034,53409:10035,53410:10036,53411:10037,53412:10038,53413:10039,53414:10040,53415:10041,53416:10042,53417:10043,53418:10044,53419:10045,53420:10046,53421:10047,53422:10048,53423:10049,53424:10065,53425:10066,53426:10067,53427:10068,53428:10069,53429:10070,53649:10071,53430:10072,53431:10073,53432:10074,53433:10075,53434:10076,53435:10077,53436:10078,53437:10079,53438:10080,53439:10081,53632:10082,53633:10083,53634:10084,53635:10085,53636:10086,53637:10087,53638:10088,53639:10089,53640:10090,53641:10091,53642:10092,53643:10093,53644:10094,53645:10095,53646:10096,53647:10097,14849152:10273,14849154:10274,14849164:10275,14849168:10276,14849176:10277,14849172:10278,14849180:10279,14849196:10280,14849188:10281,14849204:10282,14849212:10283,14849153:10284,14849155:10285,14849167:10286,14849171:10287,14849179:10288,14849175:10289,14849187:10290,14849203:10291,14849195:10292,14849211:10293,14849419:10294,14849184:10295,14849199:10296,14849192:10297,14849207:10298,14849215:10299,14849181:10300,14849200:10301,14849189:10302,14849208:10303,14849410:10304,14989980:12321,15045782:12322,15050883:12323,15308991:12324,15045504:12325,15107227:12326,15109288:12327,15050678:12328,15302818:12329,15241653:12330,15240348:12331,15182224:12332,15106730:12333,15110049:12334,15120549:12335,15112109:12336,15241638:12337,15239846:12338,15314869:12339,15114899:12340,15047847:12341,15111841:12342,15108529:12343,15052443:12344,15050640:12345,15243707:12346,15311796:12347,15185314:12348,15185598:12349,15314574:12350,15108246:12351,15184543:12352,15246007:12353,15052425:12354,15055541:12355,15109257:12356,15112855:12357,15114632:12358,15308679:12359,15310477:12360,15113615:12361,14990245:12362,14990474:12363,14990733:12364,14991005:12365,15040905:12366,15047602:12367,15049911:12368,15050644:12369,15050881:12370,15052937:12371,15106975:12372,15107215:12373,15107504:12374,15112339:12375,15115397:12376,15172282:12377,15177103:12378,15177136:12379,15181755:12380,15185581:12381,15185839:12382,15238019:12383,15241358:12384,15245731:12385,15248514:12386,15303061:12387,15303098:12388,15043771:12389,14989973:12390,14989989:12391,15048607:12392,15237810:12393,15303553:12394,15180719:12395,14989440:12396,15049649:12397,15121058:12398,15302840:12399,15182002:12400,15240360:12401,15239819:12402,15315119:12403,15041921:12404,15044016:12405,15045309:12406,15045537:12407,15047584:12408,15050683:12409,15056021:12410,15311794:12411,15120299:12412,15238052:12413,15242413:12414,15309218:12577,15309232:12578,15309472:12579,15310779:12580,15044747:12581,15044531:12582,15052423:12583,15172495:12584,15187645:12585,15253378:12586,15309736:12587,15044015:12588,15316380:12589,15182522:12590,14989457:12591,15180435:12592,15239100:12593,15120550:12594,15046808:12595,15045764:12596,15117469:12597,15242394:12598,15315131:12599,15050661:12600,15044265:12601,15119782:12602,15176604:12603,15308431:12604,15047042:12605,14989969:12606,15303051:12607,15309746:12608,15240591:12609,15312012:12610,15044513:12611,15046326:12612,15051952:12613,15056305:12614,15112352:12615,15113139:12616,15114372:12617,15118520:12618,15119283:12619,15119529:12620,15176091:12621,15178632:12622,15182222:12623,15311028:12624,15240113:12625,15245723:12626,15247776:12627,15305645:12628,15120050:12629,15177387:12630,15178634:12631,15312773:12632,15106726:12633,15248513:12634,15251082:12635,15308466:12636,15115918:12637,15044269:12638,15042182:12639,15047826:12640,15048880:12641,15050116:12642,15052468:12643,15055798:12644,15106216:12645,15109801:12646,15110068:12647,15119039:12648,15121556:12649,15172238:12650,15172756:12651,15173017:12652,15173525:12653,15174847:12654,15186049:12655,15239606:12656,15240081:12657,15242903:12658,15303072:12659,15305115:12660,15316123:12661,15049129:12662,15111868:12663,15118746:12664,15176869:12665,15042489:12666,15049902:12667,15050149:12668,15056512:12669,15056796:12670,15108796:12833,15112122:12834,15116458:12835,15117479:12836,15118004:12837,15175307:12838,15187841:12839,15246742:12840,15316140:12841,15316110:12842,15317892:12843,15053473:12844,15118998:12845,15240635:12846,15041668:12847,15053195:12848,15107766:12849,15239046:12850,15114678:12851,15174049:12852,14989721:12853,14991290:12854,15044024:12855,15106473:12856,15120553:12857,15182223:12858,15310771:12859,14989451:12860,15043734:12861,14990254:12862,14990741:12863,14990525:12864,14991009:12865,14990771:12866,15043232:12867,15044527:12868,15046793:12869,15049871:12870,15051649:12871,15052470:12872,15052705:12873,15181713:12874,15112839:12875,15113884:12876,15113910:12877,15117708:12878,15119027:12879,15172011:12880,15175554:12881,15181453:12882,15181502:12883,15182012:12884,15183495:12885,15239857:12886,15240091:12887,15240324:12888,15240631:12889,15241135:12890,15241107:12891,15244710:12892,15248050:12893,15046825:12894,15250088:12895,15253414:12896,15303054:12897,15309982:12898,15243914:12899,14991236:12900,15053736:12901,15108241:12902,15174041:12903,15176891:12904,15239077:12905,15239869:12906,15244222:12907,15250304:12908,15309701:12909,15312019:12910,15312789:12911,14990219:12912,14990490:12913,15247267:12914,15047582:12915,15049098:12916,15049610:12917,15055803:12918,15056811:12919,15106218:12920,15106708:12921,15106466:12922,15107984:12923,15108242:12924,15109008:12925,15111353:12926,15314305:13089,15112614:13090,15114928:13091,15119799:13092,15172016:13093,15177100:13094,15178374:13095,15185333:13096,15239845:13097,15245241:13098,15308427:13099,15309454:13100,15250077:13101,15042481:13102,15043262:13103,15049878:13104,15045299:13105,15052467:13106,15053974:13107,15107496:13108,15115906:13109,15120047:13110,15180429:13111,15242123:13112,15245719:13113,15247794:13114,15306407:13115,15313592:13116,15119788:13117,15312552:13118,15244185:13119,15048355:13120,15114175:13121,15244174:13122,15304846:13123,15043203:13124,15047303:13125,15044740:13126,15055763:13127,15109025:13128,15110841:13129,15114428:13130,15114424:13131,15118011:13132,15175090:13133,15180474:13134,15182251:13135,15247002:13136,15247250:13137,15250859:13138,15252611:13139,15303597:13140,15308451:13141,15309460:13142,15310249:13143,15052198:13144,15053491:13145,15115709:13146,15311245:13147,15311246:13148,15109787:13149,15183008:13150,15116459:13151,15116735:13152,15114934:13153,15315085:13154,15121823:13155,15042994:13156,15046301:13157,15106480:13158,15109036:13159,15119547:13160,15120519:13161,15121297:13162,15241627:13163,15246480:13164,15252868:13165,14989460:13166,15315129:13167,15044534:13168,15115419:13169,15116474:13170,15310468:13171,15114410:13172,15041948:13173,15182723:13174,15241906:13175,15304604:13176,15306380:13177,15047067:13178,15316136:13179,15114402:13180,15240325:13181,15241393:13182,15184549:13345,15042696:13346,15240069:13347,15176614:13348,14989758:13349,14990979:13350,15042208:13351,15052690:13352,15042698:13353,15043480:13354,15043495:13355,15054779:13356,15046298:13357,15048874:13358,15050662:13359,15052428:13360,15052440:13361,15052699:13362,15055282:13363,15055289:13364,15106723:13365,15107231:13366,15107491:13367,15107774:13368,15110043:13369,15111586:13370,15114129:13371,15114643:13372,15115194:13373,15117502:13374,15117715:13375,15118743:13376,15121570:13377,15122071:13378,15121797:13379,15176368:13380,15176856:13381,15178659:13382,15178891:13383,15182783:13384,15183521:13385,15184033:13386,15185833:13387,15187126:13388,15187888:13389,15237789:13390,15239590:13391,15240862:13392,15247027:13393,15248268:13394,15250091:13395,15303300:13396,15307153:13397,15308435:13398,15308433:13399,15308450:13400,15309221:13401,15310739:13402,15312040:13403,15239320:13404,14989496:13405,15044779:13406,15053496:13407,15054732:13408,15175337:13409,15178124:13410,15178940:13411,15053481:13412,15187883:13413,15250571:13414,15309697:13415,15310993:13416,15311252:13417,15311256:13418,14990465:13419,14990478:13420,15044017:13421,15046300:13422,15047080:13423,15048634:13424,15050119:13425,15051913:13426,15052676:13427,15053456:13428,15054988:13429,15055294:13430,15056780:13431,15110062:13432,15113402:13433,15112087:13434,15112098:13435,15113375:13436,15115147:13437,15115140:13438,15116703:13601,15055024:13602,15118213:13603,15118487:13604,15118781:13605,15177151:13606,15181192:13607,15052195:13608,15181952:13609,15185024:13610,15056573:13611,15246991:13612,15247512:13613,15250100:13614,15250871:13615,15252364:13616,15252637:13617,15311778:13618,15313038:13619,15314108:13620,14989952:13621,15040957:13622,15041664:13623,15050387:13624,15052444:13625,15108271:13626,15108736:13627,15111084:13628,15117498:13629,15174304:13630,15177361:13631,15181191:13632,15187625:13633,15245243:13634,15248060:13635,15248816:13636,15109804:13637,15241098:13638,15310496:13639,15044745:13640,15044739:13641,15046315:13642,15114644:13643,15116696:13644,15247792:13645,15179943:13646,15113653:13647,15317901:13648,15044020:13649,15052450:13650,15238298:13651,15243664:13652,15302790:13653,14989464:13654,14989701:13655,14990215:13656,14990481:13657,15044490:13658,15044792:13659,15052462:13660,15056019:13661,15106213:13662,15111569:13663,15113405:13664,15118722:13665,15118770:13666,15119267:13667,15172024:13668,15175811:13669,15182262:13670,15182510:13671,15182984:13672,15185050:13673,15184830:13674,15185318:13675,15112103:13676,15174043:13677,15044283:13678,15053189:13679,15054760:13680,15109010:13681,15109024:13682,15109273:13683,15120544:13684,15243674:13685,15247537:13686,15251357:13687,15305656:13688,15121537:13689,15181478:13690,15314330:13691,14989992:13692,14989995:13693,14989996:13694,14991003:13857,14991008:13858,15041425:13859,15041927:13860,15182774:13861,15041969:13862,15042486:13863,15043988:13864,15043745:13865,15044031:13866,15044523:13867,15046316:13868,15049347:13869,15053729:13870,15056055:13871,15056266:13872,15106223:13873,15106448:13874,15106477:13875,15109279:13876,15111577:13877,15116683:13878,15119233:13879,15174530:13880,15174573:13881,15179695:13882,15238072:13883,15238277:13884,15239304:13885,15242638:13886,15303607:13887,15306657:13888,15310783:13889,15312279:13890,15313306:13891,14990256:13892,15042461:13893,15052973:13894,15112833:13895,15115693:13896,15053184:13897,15113138:13898,15115701:13899,15175305:13900,15114640:13901,15184513:13902,15041413:13903,15043492:13904,15048071:13905,15054782:13906,15305894:13907,15111844:13908,15117475:13909,15117501:13910,15175860:13911,15181441:13912,15181501:13913,15183243:13914,15185802:13915,15239865:13916,15241100:13917,15245759:13918,15246751:13919,15248569:13920,15253393:13921,15304593:13922,15044767:13923,15305344:13924,14989725:13925,15040694:13926,15044517:13927,15043770:13928,15174551:13929,15175318:13930,15179689:13931,15240102:13932,15252143:13933,15312774:13934,15312776:13935,15312786:13936,15041975:13937,15107226:13938,15243678:13939,15046320:13940,15182266:13941,15040950:13942,15052691:13943,15303047:13944,15309445:13945,14989490:13946,15117211:13947,15304615:13948,15053201:13949,15053192:13950,15109784:14113,15182495:14114,15118995:14115,15310260:14116,15252897:14117,15182506:14118,15173258:14119,15309448:14120,15184514:14121,15114391:14122,15186352:14123,15114641:14124,15306156:14125,15043506:14126,15044763:14127,15242923:14128,15247507:14129,15187620:14130,15252365:14131,15303585:14132,15044006:14133,15245960:14134,15181185:14135,14991234:14136,15041214:14137,15042705:14138,15041924:14139,15046035:14140,15047853:14141,15175594:14142,15048331:14143,15050129:14144,15056290:14145,15056516:14146,15106485:14147,15107510:14148,15107495:14149,15107753:14150,15109810:14151,15110330:14152,15111596:14153,15112623:14154,15114626:14155,15120531:14156,15177126:14157,15182013:14158,15184827:14159,15185292:14160,15185561:14161,15186315:14162,15187371:14163,15240334:14164,15240586:14165,15244173:14166,15247496:14167,15247779:14168,15248806:14169,15252413:14170,15311002:14171,15316623:14172,15239864:14173,15253390:14174,15314856:14175,15043207:14176,15108255:14177,15110787:14178,15122304:14179,15309465:14180,15114625:14181,15041169:14182,15117472:14183,15118778:14184,15121812:14185,15182260:14186,15185296:14187,15245696:14188,15247523:14189,15113352:14190,14990262:14191,15040697:14192,15040678:14193,15040933:14194,15041980:14195,15042744:14196,15042979:14197,15046311:14198,15047823:14199,15048837:14200,15051660:14201,15055802:14202,15107762:14203,15108024:14204,15109043:14205,15109554:14206,15115420:14369,15116457:14370,15174077:14371,15174316:14372,15174830:14373,15179924:14374,15180207:14375,15185337:14376,15178892:14377,15237801:14378,15246987:14379,15248537:14380,15250338:14381,15252370:14382,15303075:14383,15306165:14384,15309242:14385,15311253:14386,15313043:14387,15317432:14388,15041923:14389,15044255:14390,15044275:14391,15055291:14392,15056038:14393,15120539:14394,15121040:14395,15175300:14396,15175614:14397,15185283:14398,15239351:14399,15247488:14400,15248314:14401,15309200:14402,14989710:14403,15040651:14404,15044516:14405,15045052:14406,15047610:14407,15050641:14408,15052196:14409,15054769:14410,15055531:14411,15056039:14412,15108280:14413,15111557:14414,15113903:14415,15120790:14416,15174544:14417,15184778:14418,15246004:14419,15237793:14420,15238049:14421,15241136:14422,15243662:14423,15248007:14424,15251368:14425,15304887:14426,15309703:14427,15311271:14428,15318163:14429,14989972:14430,14989970:14431,14990477:14432,15043976:14433,15045001:14434,15044798:14435,15050927:14436,15056524:14437,15056545:14438,15106719:14439,15114919:14440,15116942:14441,15176090:14442,15180417:14443,15248030:14444,15248036:14445,15248823:14446,15304336:14447,14989726:14448,15314825:14449,14989988:14450,14990780:14451,14991023:14452,15040665:14453,15040662:14454,15041929:14455,15041964:14456,15043231:14457,15043257:14458,15043518:14459,15044250:14460,15044515:14461,15044753:14462,15044750:14625,15046281:14626,15048081:14627,15048354:14628,15050173:14629,15052180:14630,15052189:14631,15052431:14632,15054757:14633,15054759:14634,15054775:14635,15055288:14636,15055491:14637,15055514:14638,15055543:14639,15056024:14640,15106450:14641,15107468:14642,15108759:14643,15109016:14644,15109799:14645,15111355:14646,15112322:14647,15112579:14648,15113140:14649,15113645:14650,15114401:14651,15114903:14652,15116171:14653,15118751:14654,15119530:14655,15119785:14656,15120559:14657,15121053:14658,15176882:14659,15178375:14660,15180204:14661,15182015:14662,15184800:14663,15185029:14664,15185048:14665,15185310:14666,15185585:14667,15237269:14668,15237251:14669,15237807:14670,15237809:14671,15238548:14672,15238799:14673,15239338:14674,15240594:14675,15245708:14676,15245729:14677,15248539:14678,15250082:14679,15250364:14680,15303562:14681,15304117:14682,15305137:14683,15179967:14684,15305660:14685,15308452:14686,15309197:14687,15310981:14688,15312537:14689,15313816:14690,15316155:14691,15042971:14692,15043243:14693,15044535:14694,15044744:14695,15049621:14696,15109047:14697,15122336:14698,15249834:14699,15252895:14700,15317689:14701,15041931:14702,15042747:14703,15045002:14704,15047613:14705,15182208:14706,15304119:14707,15316384:14708,15317906:14709,15175044:14710,15121545:14711,15238576:14712,15176849:14713,15056829:14714,15106970:14715,15313576:14716,15174555:14717,15253180:14718,15117732:14881,15310979:14882,14990218:14883,15047600:14884,15048100:14885,15049406:14886,15051162:14887,15106472:14888,15107975:14889,15112335:14890,15112326:14891,15114425:14892,15114929:14893,15120311:14894,15177621:14895,15185082:14896,15239598:14897,15314306:14898,14989979:14899,14990736:14900,15044489:14901,15045766:14902,15054255:14903,15054758:14904,15054766:14905,15114171:14906,15119001:14907,15176115:14908,15179906:14909,15247760:14910,15306390:14911,15246239:14912,15048080:14913,15055527:14914,15109291:14915,15041205:14916,15041196:14917,15042189:14918,15113344:14919,15045513:14920,15049118:14921,15050427:14922,15052464:14923,15056297:14924,15108493:14925,15109793:14926,15114429:14927,15117747:14928,15120520:14929,15172029:14930,15304583:14931,15174272:14932,15179925:14933,15179942:14934,15181229:14935,15111822:14936,15185072:14937,15241116:14938,15246209:14939,15252617:14940,15309467:14941,15042980:14942,15047848:14943,15113616:14944,15187370:14945,15250081:14946,15042228:14947,15048066:14948,15308970:14949,15048890:14950,15115914:14951,15237812:14952,15045298:14953,15053966:14954,15048636:14955,15180437:14956,15316922:14957,14990748:14958,15042954:14959,15045259:14960,15110334:14961,15112360:14962,15113364:14963,15114165:14964,15182468:14965,15183254:14966,15185058:14967,15305903:14968,15114652:14969,15314605:14970,15183033:14971,15043737:14972,15042186:14973,15042743:14974,15052703:15137,15109046:15138,15110830:15139,15111078:15140,15113389:15141,15118010:15142,15242921:15143,15309713:15144,15178384:15145,15314838:15146,15109516:15147,15305862:15148,15314603:15149,15178431:15150,15112594:15151,14989449:15152,15041176:15153,15044482:15154,15053233:15155,15106984:15156,15110802:15157,15111587:15158,15114655:15159,15173542:15160,15175562:15161,15176867:15162,15183511:15163,15186562:15164,15243925:15165,15249027:15166,15250331:15167,15304120:15168,15312016:15169,15111852:15170,15112875:15171,15117963:15172,14990229:15173,14990228:15174,14990522:15175,14990783:15176,15042746:15177,15044536:15178,15044530:15179,15046563:15180,15047579:15181,15049643:15182,15050635:15183,15050633:15184,15050687:15185,15052176:15186,15053197:15187,15054978:15188,15055019:15189,15056791:15190,15106205:15191,15109255:15192,15111343:15193,15052188:15194,15111855:15195,15111869:15196,15112104:15197,15113885:15198,15117730:15199,15117755:15200,15118479:15201,15175045:15202,15181193:15203,15181697:15204,15184824:15205,15185049:15206,15185067:15207,15237794:15208,15238274:15209,15239091:15210,15246998:15211,15247774:15212,15247785:15213,15247782:15214,15248012:15215,15248302:15216,15250311:15217,15250332:15218,15309708:15219,15311804:15220,15117743:15221,14989963:15222,14990524:15223,14990989:15224,15041936:15225,15052183:15226,15052730:15227,15107464:15228,15109249:15229,15112578:15230,15117473:15393,15121291:15394,15119035:15395,15173822:15396,15176381:15397,15177620:15398,15180673:15399,15180986:15400,15237260:15401,15237299:15402,15239082:15403,15241876:15404,15253150:15405,15118736:15406,15317439:15407,15056015:15408,15248792:15409,15316139:15410,15182778:15411,15252408:15412,15052429:15413,15309739:15414,14989443:15415,15044529:15416,15048631:15417,15049905:15418,15051657:15419,15052452:15420,15106697:15421,15120831:15422,15121542:15423,15177406:15424,15250346:15425,15052447:15426,15242368:15427,15183776:15428,15040946:15429,15114164:15430,15239837:15431,15053217:15432,15242634:15433,15186078:15434,15239310:15435,15042201:15436,15052932:15437,15109544:15438,15250854:15439,15111836:15440,15173038:15441,15180990:15442,15185047:15443,15237253:15444,15248541:15445,15252362:15446,15303086:15447,15244167:15448,15303338:15449,15040671:15450,15043514:15451,15052986:15452,15113619:15453,15172028:15454,15173813:15455,15304076:15456,15304584:15457,15305899:15458,15240101:15459,15052674:15460,15056049:15461,15107001:15462,14989499:15463,15044502:15464,15052424:15465,15108491:15466,15113393:15467,15117962:15468,15174569:15469,15175584:15470,15181998:15471,15238571:15472,15251107:15473,15304082:15474,15312534:15475,15041682:15476,15044503:15477,15045034:15478,15052735:15479,15109768:15480,15116473:15481,15185580:15482,15309952:15483,15047578:15484,15044494:15485,15045032:15486,15052439:15649,15052977:15650,15054750:15651,14991278:15652,15107201:15653,15109054:15654,15119538:15655,15181696:15656,15181707:15657,15185282:15658,15186317:15659,15187858:15660,15239085:15661,15239327:15662,15241872:15663,15245702:15664,15246770:15665,15249040:15666,15251892:15667,15252655:15668,15302833:15669,15304075:15670,15304108:15671,15309702:15672,15304348:15673,14990208:15674,14990735:15675,15041925:15676,15043969:15677,15056531:15678,15108238:15679,15114132:15680,15118721:15681,15120523:15682,15175075:15683,15186086:15684,15304589:15685,15305347:15686,15044500:15687,15049881:15688,15052479:15689,15120273:15690,15181213:15691,15186094:15692,15184539:15693,15049150:15694,15173279:15695,15042490:15696,15245715:15697,15253424:15698,14991242:15699,15053755:15700,15112357:15701,15179436:15702,15182755:15703,15239324:15704,15312831:15705,15042438:15706,15056554:15707,15112108:15708,15115695:15709,15117961:15710,15120307:15711,15121046:15712,15121828:15713,15178686:15714,15185044:15715,15054753:15716,15303093:15717,15304327:15718,15310982:15719,15042470:15720,15042717:15721,15108480:15722,15112849:15723,15113113:15724,15120538:15725,15055542:15726,15185810:15727,15187378:15728,15113144:15729,15242927:15730,15243191:15731,15248312:15732,15043241:15733,15044505:15734,15050163:15735,15055503:15736,15056528:15737,15106453:15738,15305636:15739,15309220:15740,15041207:15741,15041695:15742,15043485:15905,15043744:15906,15043975:15907,15044524:15908,15045544:15909,15046022:15910,15045809:15911,15046807:15912,15050152:15913,15050430:15914,15050940:15915,15052469:15916,15052934:15917,15052943:15918,15052945:15919,15052954:15920,15055492:15921,15055498:15922,15055776:15923,15056304:15924,15108543:15925,15108740:15926,15109019:15927,15109772:15928,15109559:15929,15112327:15930,15112332:15931,15112365:15932,15112630:15933,15113662:15934,15114914:15935,15116447:15936,15116469:15937,15119036:15938,15120008:15939,15120521:15940,15120792:15941,15172796:15942,15172774:15943,15173031:15944,15177607:15945,15178881:15946,15180189:15947,15180929:15948,15181221:15949,15181744:15950,15182752:15951,15182993:15952,15184551:15953,15185081:15954,15237782:15955,15241110:15956,15241867:15957,15242633:15958,15245725:15959,15246259:15960,15247519:15961,15247548:15962,15247764:15963,15247795:15964,15249825:15965,15250334:15966,15304356:15967,15305126:15968,15306174:15969,15306904:15970,15309468:15971,15310488:15972,14989450:15973,14989448:15974,14989470:15975,14989719:15976,15042199:15977,15042992:15978,15048590:15979,15048884:15980,15049612:15981,15051938:15982,15055032:15983,15106949:15984,15111102:15985,15113633:15986,15113622:15987,15119748:15988,15174326:15989,15177139:15990,15182243:15991,15241912:15992,15248818:15993,15304376:15994,15305888:15995,15046833:15996,15048628:15997,15311806:15998,15109037:16161,15115405:16162,15117974:16163,15173549:16164,15186324:16165,15237559:16166,15239602:16167,15247270:16168,15311775:16169,15244693:16170,15253169:16171,15052987:16172,14990520:16173,14991265:16174,14991029:16175,15045767:16176,15050912:16177,15052701:16178,15052713:16179,15056771:16180,15107470:16181,15109295:16182,15111856:16183,15112587:16184,15115182:16185,15115931:16186,15119800:16187,15120305:16188,15176883:16189,15177401:16190,15178911:16191,15181214:16192,15181734:16193,15185075:16194,15239075:16195,15239855:16196,15242922:16197,15247018:16198,15247546:16199,15252139:16200,15253147:16201,15302834:16202,15304605:16203,15309959:16204,14990010:16205,14990209:16206,15042691:16207,15049141:16208,15049644:16209,15052939:16210,15176858:16211,15052989:16212,15238542:16213,15247498:16214,15253381:16215,15309219:16216,15310253:16217,15183013:16218,15248271:16219,15310984:16220,15304098:16221,15047603:16222,15044264:16223,15302807:16224,15044793:16225,15048322:16226,15055013:16227,15109800:16228,15118516:16229,15172234:16230,15179169:16231,15184523:16232,15187872:16233,15245744:16234,15303042:16235,15304084:16236,15305872:16237,15305880:16238,15309455:16239,15176094:16240,15313796:16241,15053959:16242,15054249:16243,15111600:16244,15113890:16245,15251112:16246,15309723:16247,15109550:16248,15113609:16249,15115417:16250,15241093:16251,15310999:16252,15309696:16253,15246270:16254,15122052:16417,15110586:16418,15052728:16419,14989462:16420,15171756:16421,15177117:16422,15112367:16423,15042436:16424,15042742:16425,15043490:16426,15050643:16427,15056513:16428,15106215:16429,15108240:16430,15111359:16431,15111604:16432,15112351:16433,15112628:16434,15115186:16435,15114390:16436,15117731:16437,15120517:16438,15174066:16439,15176863:16440,15178651:16441,15184574:16442,15237526:16443,15049648:16444,15246269:16445,15246783:16446,15248032:16447,15248019:16448,15248267:16449,15302813:16450,15304338:16451,15310226:16452,15310233:16453,15111817:16454,15181966:16455,15238278:16456,15309499:16457,15055021:16458,15106972:16459,15108250:16460,15111845:16461,15112340:16462,15113872:16463,15179699:16464,15182221:16465,15184269:16466,15186110:16467,15238282:16468,15250092:16469,15250852:16470,15251361:16471,15251871:16472,15180457:16473,15042695:16474,15109017:16475,15109797:16476,15110530:16477,15108760:16478,15247533:16479,15182467:16480,15183744:16481,15248044:16482,15309738:16483,15185334:16484,15239308:16485,15244681:16486,14990233:16487,15041928:16488,15043971:16489,15044e3:16490,15052451:16491,15052930:16492,15052950:16493,15054749:16494,15108262:16495,15108487:16496,15110832:16497,15114387:16498,15114420:16499,15119241:16500,15119749:16501,15119511:16502,15114131:16503,15121820:16504,15173006:16505,15173053:16506,15112075:16507,15182271:16508,15183533:16509,15185818:16510,15186314:16673,15187624:16674,15238586:16675,15239323:16676,15239353:16677,15242918:16678,15247790:16679,15250318:16680,15251381:16681,15303096:16682,15303095:16683,15305389:16684,15305361:16685,15308419:16686,15314606:16687,15042957:16688,15046276:16689,15121592:16690,15172790:16691,15041960:16692,15181445:16693,15186325:16694,15238835:16695,15184782:16696,15047052:16697,15049105:16698,15053480:16699,15109802:16700,15113150:16701,15113149:16702,15115674:16703,15174553:16704,15177359:16705,15177358:16706,15180942:16707,15181206:16708,15181727:16709,15184535:16710,15185056:16711,15185284:16712,15243399:16713,15247540:16714,15308987:16715,15303073:16716,15318176:16717,15041447:16718,15042997:16719,15044492:16720,15044514:16721,15040649:16722,15046314:16723,15049646:16724,15050127:16725,15173821:16726,15052427:16727,15053220:16728,15043741:16729,15106979:16730,15106995:16731,15109532:16732,15109763:16733,15109311:16734,15109819:16735,15111053:16736,15112105:16737,15113145:16738,15054755:16739,15116173:16740,15116221:16741,15121557:16742,15173541:16743,14989961:16744,15177641:16745,15178680:16746,15182483:16747,15184799:16748,15185807:16749,15185564:16750,15237537:16751,15240585:16752,15240600:16753,15241644:16754,15241916:16755,15243195:16756,15246213:16757,15250864:16758,15302785:16759,15303085:16760,15306391:16761,15309980:16762,15313042:16763,15041423:16764,15049367:16765,15107726:16766,15239059:16929,15242421:16930,15250568:16931,15302816:16932,14991235:16933,15040948:16934,15042951:16935,15044019:16936,15106479:16937,15109513:16938,15113631:16939,15120556:16940,15251123:16941,15302815:16942,14991255:16943,15053214:16944,15250314:16945,15112079:16946,15185562:16947,15043986:16948,15245974:16949,15041974:16950,15110019:16951,15052184:16952,15052203:16953,15052938:16954,15110285:16955,15113617:16956,15303068:16957,14990230:16958,15049882:16959,15049898:16960,15118768:16961,15247761:16962,15045822:16963,15048853:16964,15050405:16965,15106992:16966,15108499:16967,15114113:16968,15239349:16969,15115669:16970,15309184:16971,15312772:16972,15313064:16973,14990739:16974,15048838:16975,15052734:16976,15237264:16977,15053489:16978,15055023:16979,15056517:16980,15106208:16981,15107467:16982,15108276:16983,15113151:16984,15119280:16985,15121310:16986,15238030:16987,15238591:16988,15240084:16989,15245963:16990,15250104:16991,15302784:16992,15302830:16993,15309450:16994,15317915:16995,15314843:16996,14990243:16997,15044528:16998,15049895:16999,15183020:17e3,15304333:17001,15311244:17002,15316921:17003,15121309:17004,15171751:17005,15043987:17006,15046020:17007,15052421:17008,15108504:17009,15108766:17010,15109011:17011,15119010:17012,15122351:17013,15175842:17014,15247511:17015,15306936:17016,15122305:17017,15248318:17018,15240376:17019,15042471:17020,15244216:17021,15044522:17022,15044521:17185,14990726:17186,15303060:17187,15253168:17188,15050154:17189,15238321:17190,15054781:17191,15182762:17192,15253183:17193,15115162:17194,15249591:17195,15174584:17196,15315336:17197,15116477:17198,15248048:17199,14989497:17200,15043992:17201,15046790:17202,15048102:17203,15108997:17204,15109794:17205,15112102:17206,15117710:17207,15120289:17208,15120795:17209,15172269:17210,15179693:17211,15182767:17212,15183530:17213,15185595:17214,15237309:17215,15238022:17216,15244171:17217,15248021:17218,15306139:17219,15047587:17220,15049607:17221,15056062:17222,15111853:17223,15112854:17224,15116928:17225,15118005:17226,15176887:17227,15248263:17228,15040676:17229,15179685:17230,15047856:17231,15056027:17232,15106469:17233,15112634:17234,15118752:17235,15177652:17236,15181978:17237,15187374:17238,15239092:17239,15244440:17240,15303045:17241,15312563:17242,15183753:17243,15177116:17244,15182777:17245,15183249:17246,15242116:17247,15302800:17248,15181737:17249,15182482:17250,15240374:17251,15051681:17252,15179136:17253,14989485:17254,14990258:17255,15052441:17256,15056800:17257,15108797:17258,15112380:17259,15114161:17260,15119272:17261,15243691:17262,15245751:17263,15247547:17264,15304078:17265,15305651:17266,15312784:17267,15116439:17268,15171750:17269,15174826:17270,15240103:17271,15241623:17272,15250095:17273,14989441:17274,15041926:17275,15042443:17276,15046283:17277,15052725:17278,15054998:17441,15055027:17442,15055489:17443,15056020:17444,15056053:17445,15056299:17446,15056564:17447,15108018:17448,15109265:17449,15112866:17450,15113373:17451,15121838:17452,15174034:17453,15176890:17454,15178938:17455,15237556:17456,15238329:17457,15238584:17458,15244726:17459,15248063:17460,15248284:17461,15251077:17462,15251379:17463,15305370:17464,15308215:17465,15310978:17466,15315877:17467,15043461:17468,15109527:17469,15178676:17470,15113365:17471,15118984:17472,15175565:17473,15250307:17474,15306414:17475,15309235:17476,15119525:17477,15049372:17478,15115406:17479,15116172:17480,15253437:17481,15306394:17482,15177627:17483,15302810:17484,15049114:17485,15114370:17486,15109812:17487,15116219:17488,14990723:17489,15121580:17490,15114136:17491,15253179:17492,15242406:17493,15185588:17494,15306132:17495,15115455:17496,15121840:17497,15048106:17498,15049655:17499,15051948:17500,15185068:17501,15173802:17502,15044746:17503,15304611:17504,15316660:17505,14989997:17506,14990734:17507,15040924:17508,15040949:17509,15042947:17510,15250078:17511,15045e3:17512,15048868:17513,15052442:17514,15055005:17515,15055509:17516,15055533:17517,15055799:17518,15056031:17519,15106700:17520,15108789:17521,15109306:17522,15110032:17523,15114927:17524,15118720:17525,15180423:17526,15181454:17527,15181963:17528,15185824:17529,15239559:17530,15247490:17531,15248294:17532,15251844:17533,15302803:17534,15303352:17697,15303853:17698,15304600:17699,15318158:17700,15119269:17701,15110552:17702,15111074:17703,15111605:17704,15121332:17705,15178372:17706,15183003:17707,15303081:17708,15306641:17709,15121082:17710,15045554:17711,15056569:17712,15110820:17713,15252877:17714,15253421:17715,15305092:17716,15041976:17717,15049131:17718,15049897:17719,15053205:17720,15055511:17721,15120315:17722,15186575:17723,15176860:17724,15250108:17725,15252386:17726,15311259:17727,15172281:17728,14990493:17729,15118015:17730,15122097:17731,15176880:17732,15309755:17733,15041934:17734,15044752:17735,15048885:17736,15049111:17737,15050412:17738,15053216:17739,15056530:17740,15111831:17741,15113628:17742,15120545:17743,15178171:17744,15241119:17745,15250349:17746,15302804:17747,15303613:17748,15306125:17749,15179941:17750,15179962:17751,15043242:17752,15055526:17753,15047839:17754,15050164:17755,15106194:17756,15040658:17757,15041946:17758,15042220:17759,15042445:17760,15042688:17761,15045776:17762,15049108:17763,15049112:17764,15050135:17765,15052437:17766,15053750:17767,15054475:17768,15106748:17769,15108757:17770,15110317:17771,15113649:17772,15114627:17773,15114940:17774,15115167:17775,15178647:17776,15120280:17777,15120815:17778,15120027:17779,15172015:17780,15173512:17781,15056275:17782,15177624:17783,15181239:17784,15183241:17785,15183252:17786,15183250:17787,15184790:17788,15185329:17789,15042736:17790,15241635:17953,15242665:17954,15243172:17955,15247502:17956,15248516:17957,15249798:17958,15251599:17959,15302787:17960,15302799:17961,15306905:17962,15309238:17963,15311021:17964,15313072:17965,15308696:17966,15041421:17967,15043477:17968,15044748:17969,15048834:17970,15052942:17971,15107751:17972,15110814:17973,15119518:17974,15179443:17975,15182757:17976,15238068:17977,15241348:17978,15303059:17979,15305349:17980,15053728:17981,15316103:17982,15043775:17983,15056535:17984,15056563:17985,15120028:17986,15174073:17987,15179171:17988,15181503:17989,15183780:17990,15118226:17991,15174572:17992,15248045:17993,15114371:17994,15116705:17995,15042488:17996,15182465:17997,15115444:17998,15053194:17999,15315894:18e3,15240107:18001,15052677:18002,15304073:18003,15171742:18004,15047096:18005,15053231:18006,15106951:18007,15111590:18008,15118988:18009,15249818:18010,15303041:18011,15310995:18012,15045009:18013,15113095:18014,15304845:18015,15050120:18016,15303331:18017,15042181:18018,14989709:18019,15042474:18020,15242905:18021,15248526:18022,15171992:18023,15109562:18024,15306123:18025,15115682:18026,15312564:18027,15186052:18028,15177143:18029,15043991:18030,15115680:18031,15252383:18032,15309731:18033,15118749:18034,14989964:18035,15052988:18036,15056016:18037,15253417:18038,15043714:18039,15250321:18040,15237769:18041,15243705:18042,15055807:18043,15112101:18044,14989747:18045,15041957:18046,15050370:18209,15052991:18210,15310766:18211,14990267:18212,15050378:18213,15056781:18214,15248013:18215,15122337:18216,15181488:18217,15181218:18218,15052711:18219,15241649:18220,15174827:18221,15173297:18222,15055284:18223,15056821:18224,15109563:18225,15110810:18226,15173507:18227,15184536:18228,14989699:18229,15055804:18230,14989707:18231,15048604:18232,15047330:18233,15106729:18234,15122307:18235,15185037:18236,15238077:18237,15238323:18238,15238847:18239,15253170:18240,15246999:18241,15243940:18242,15054772:18243,15108746:18244,15110829:18245,15246983:18246,15113655:18247,15119266:18248,15119550:18249,15175862:18250,15179956:18251,15051142:18252,15187381:18253,15239853:18254,15312556:18255,14991283:18256,15055747:18257,15109021:18258,15109778:18259,15111575:18260,15113647:18261,15178627:18262,15174028:18263,15238028:18264,15237818:18265,15252649:18266,15304077:18267,15040653:18268,15048633:18269,15051410:18270,15114885:18271,15115699:18272,15173028:18273,15174589:18274,15250103:18275,15049650:18276,15250336:18277,15309226:18278,15302809:18279,15244735:18280,15181732:18281,15179687:18282,15241385:18283,14990511:18284,15042981:18285,15043994:18286,15109005:18287,15114127:18288,15119242:18289,15178173:18290,15183508:18291,15184533:18292,15239350:18293,15242884:18294,15253419:18295,15113117:18296,15121568:18297,15173766:18298,15186075:18299,15240875:18300,15312769:18301,15317670:18302,15042493:18465,15183537:18466,15180210:18467,15183544:18468,15237767:18469,15183240:18470,15117224:18471,15055265:18472,15237772:18473,15177105:18474,15177120:18475,15041963:18476,15305122:18477,15121036:18478,15178170:18479,15304343:18480,15313834:18481,14990480:18482,15187376:18483,15108764:18484,15183247:18485,15308453:18486,15315881:18487,15047098:18488,15049113:18489,15244196:18490,15309500:18491,14990516:18492,15042724:18493,15043978:18494,15044493:18495,15044507:18496,15054982:18497,15110316:18498,15111825:18499,15113663:18500,15118526:18501,15118734:18502,15174024:18503,15174319:18504,15175597:18505,15177108:18506,15186305:18507,15239340:18508,15243177:18509,15250089:18510,15183748:18511,15304582:18512,15173033:18513,15310994:18514,15311791:18515,15109309:18516,15112617:18517,15177130:18518,15178660:18519,15180688:18520,15242627:18521,15244206:18522,15043754:18523,15043985:18524,15044774:18525,15050371:18526,15055495:18527,15056316:18528,15106738:18529,15108489:18530,15108537:18531,15108779:18532,15111824:18533,15118228:18534,15119244:18535,15177394:18536,15178414:18537,15180433:18538,15181720:18539,15185803:18540,15187383:18541,15237797:18542,15245995:18543,15248057:18544,15250107:18545,15303103:18546,15310238:18547,15311771:18548,15116427:18549,15184056:18550,15041177:18551,15052990:18552,15056558:18553,15113863:18554,15118232:18555,15175861:18556,15178889:18557,15187598:18558,15318203:18721,15114122:18722,15181975:18723,15043769:18724,15177355:18725,15313837:18726,15056294:18727,15238813:18728,15241137:18729,15237784:18730,15056060:18731,15056773:18732,15177122:18733,15183238:18734,15302844:18735,15114663:18736,15050667:18737,15051419:18738,15185040:18739,15178174:18740,15248556:18741,14991285:18742,15056298:18743,15116441:18744,15118519:18745,15121538:18746,15176610:18747,15181224:18748,15245736:18749,15247765:18750,15249849:18751,15055775:18752,15110031:18753,15177605:18754,15181714:18755,15240087:18756,15305896:18757,15305650:18758,15241884:18759,15244205:18760,15315117:18761,15045505:18762,15056300:18763,15111820:18764,15119772:18765,15171733:18766,15250087:18767,15250323:18768,15311035:18769,15111567:18770,15176630:18771,14989453:18772,14990232:18773,15048608:18774,15049899:18775,15051174:18776,15052684:18777,15042216:18778,15054979:18779,15055516:18780,15106198:18781,15108534:18782,15111607:18783,15111847:18784,15112622:18785,15119790:18786,15173814:18787,15183014:18788,15238544:18789,15238810:18790,15239833:18791,15248796:18792,15250080:18793,15250342:18794,15250868:18795,15308956:18796,15309188:18797,14991022:18798,15110827:18799,15117734:18800,15239326:18801,15241633:18802,15242666:18803,15303592:18804,15052929:18805,15115667:18806,15311528:18807,15241658:18808,15242647:18809,14990479:18810,15042991:18811,15056553:18812,15055237:18813,15113357:18814,15181455:18977,15238585:18978,15246471:18979,15246982:18980,15120309:18981,15056023:18982,15108501:18983,15119032:18984,14990223:18985,15174057:18986,15314578:18987,15042694:18988,15044795:18989,15047092:18990,15049395:18991,15107748:18992,15108526:18993,15172762:18994,15050158:18995,15184521:18996,15184798:18997,15185051:18998,15309744:18999,15111815:19e3,15237534:19001,14989465:19002,14990773:19003,15041973:19004,15049088:19005,15055267:19006,15055283:19007,15056010:19008,15114116:19009,14989478:19010,15242429:19011,15308425:19012,15309211:19013,15184307:19014,15310977:19015,15041467:19016,15049601:19017,15178134:19018,15180455:19019,15042725:19020,15179429:19021,15242385:19022,15183494:19023,15040911:19024,15049865:19025,15174023:19026,15183751:19027,15185832:19028,15253178:19029,15253396:19030,15303053:19031,14991039:19032,15043465:19033,15050921:19034,15056001:19035,15310509:19036,14991261:19037,15239319:19038,15305642:19039,15047811:19040,15109525:19041,15117737:19042,15176875:19043,15246236:19044,15252628:19045,15182210:19046,15043487:19047,15049363:19048,15107477:19049,15108234:19050,15112878:19051,15118221:19052,15184063:19053,15241129:19054,15040675:19055,14991288:19056,15043717:19057,15044998:19058,15048881:19059,15050121:19060,15052445:19061,15053744:19062,15053743:19063,15053993:19064,15055510:19065,15108785:19066,15109543:19067,15111358:19068,15111865:19069,15113355:19070,15119253:19233,15119265:19234,15172537:19235,15179954:19236,15186091:19237,15238046:19238,15239859:19239,15241356:19240,15242156:19241,15244418:19242,15246482:19243,15247530:19244,15249802:19245,15303334:19246,15305618:19247,15311805:19248,15315891:19249,15316396:19250,14989711:19251,14989985:19252,15041165:19253,15042966:19254,15048074:19255,15050408:19256,15055037:19257,15056792:19258,15056793:19259,15108287:19260,15112884:19261,15113371:19262,15114128:19263,15115154:19264,15042194:19265,15185057:19266,15237802:19267,15238824:19268,15248512:19269,15250060:19270,15250111:19271,15305150:19272,15308978:19273,15044768:19274,15311020:19275,15043735:19276,15041429:19277,15043996:19278,15049384:19279,15110834:19280,15113396:19281,15174055:19282,15179174:19283,15182214:19284,15304614:19285,15043459:19286,15119009:19287,15117958:19288,15048832:19289,15055244:19290,15050132:19291,15113388:19292,15187899:19293,15042465:19294,15178630:19295,15110569:19296,15180712:19297,15314324:19298,15317691:19299,15048587:19300,15050425:19301,15112359:19302,15113882:19303,15118222:19304,15045545:19305,15116185:19306,15055253:19307,15238812:19308,15113877:19309,15314602:19310,15114174:19311,15315346:19312,15114653:19313,14989990:19314,14991267:19315,15044488:19316,15108793:19317,15113387:19318,15119019:19319,15253380:19320,14991021:19321,15186349:19322,15317695:19323,14989447:19324,15107490:19325,15121024:19326,15121579:19489,15242387:19490,15045043:19491,15113386:19492,15314309:19493,15054771:19494,15183509:19495,15053484:19496,15052678:19497,15244444:19498,15120778:19499,15242129:19500,15181972:19501,15238280:19502,15050393:19503,15184525:19504,15118481:19505,15178912:19506,15043481:19507,15049890:19508,15172769:19509,15174047:19510,15179675:19511,15309991:19512,15316385:19513,15115403:19514,15051199:19515,15050904:19516,15042213:19517,15044749:19518,15045053:19519,15112334:19520,15178655:19521,15253431:19522,15305368:19523,15315892:19524,15050666:19525,15174045:19526,15121285:19527,15041933:19528,15115145:19529,15185599:19530,15185836:19531,15310242:19532,15317690:19533,15110584:19534,15116449:19535,15240322:19536,15050372:19537,15052191:19538,15118235:19539,15174811:19540,15178674:19541,15185586:19542,15237271:19543,15241881:19544,15041714:19545,15113384:19546,15317913:19547,15178670:19548,15113634:19549,15043519:19550,15312005:19551,15052964:19552,15108283:19553,15184318:19554,15250096:19555,15046031:19556,15106742:19557,15185035:19558,15308416:19559,15043713:19560,14989727:19561,15042230:19562,15049884:19563,15173818:19564,15237302:19565,15304590:19566,15056037:19567,15179682:19568,15044228:19569,15056313:19570,15185028:19571,15242924:19572,15247539:19573,15252109:19574,15310230:19575,15114163:19576,15242926:19577,15307155:19578,15107209:19579,15107208:19580,15119033:19581,15178130:19582,15248301:19745,15252664:19746,15045807:19747,14990737:19748,15041706:19749,15043463:19750,15044491:19751,15052453:19752,15055293:19753,15106720:19754,15107714:19755,15110038:19756,15113353:19757,15114138:19758,15120807:19759,15120012:19760,15174838:19761,15174839:19762,15176881:19763,15181200:19764,15246229:19765,15248024:19766,15303050:19767,15303313:19768,15303605:19769,15309700:19770,15244941:19771,15049877:19772,14989960:19773,14990745:19774,14989454:19775,15248009:19776,15252671:19777,15310992:19778,15041197:19779,15055292:19780,15050390:19781,15052473:19782,15055544:19783,15110042:19784,15110074:19785,15111041:19786,15113116:19787,15115658:19788,15116184:19789,15119499:19790,15121078:19791,15173268:19792,15176872:19793,15182511:19794,15187594:19795,15237248:19796,15241609:19797,15242121:19798,15246977:19799,15248545:19800,15251594:19801,15303077:19802,15309245:19803,15312010:19804,15107518:19805,15108753:19806,15117490:19807,15118979:19808,15119796:19809,15187852:19810,15187900:19811,15120256:19812,15187589:19813,15244986:19814,15246264:19815,15113637:19816,15240881:19817,15311036:19818,15309751:19819,15119515:19820,15185313:19821,15241405:19822,15304106:19823,14989745:19824,15044021:19825,15054224:19826,15117444:19827,15122347:19828,15243149:19829,15243437:19830,15247015:19831,15042729:19832,15044751:19833,15053221:19834,15113614:19835,15114920:19836,15175814:19837,15176323:19838,15177634:20001,15246223:20002,15246241:20003,15304588:20004,15309730:20005,15309240:20006,15056523:20007,15175303:20008,15182731:20009,15241614:20010,15109792:20011,15177125:20012,15043209:20013,15119745:20014,15121052:20015,15175817:20016,15177113:20017,15180203:20018,15184530:20019,15309446:20020,15182748:20021,15318669:20022,14991030:20023,15107502:20024,15112069:20025,15243676:20026,14989958:20027,14989998:20028,15041434:20029,14989473:20030,15042444:20031,15052718:20032,15111833:20033,15114881:20034,15120060:20035,15174815:20036,15178114:20037,15179437:20038,15181980:20039,15184807:20040,15239599:20041,15248274:20042,15303100:20043,15304591:20044,15309237:20045,15311e3:20046,15043227:20047,15185809:20048,15040683:20049,15044248:20050,15113879:20051,15120267:20052,15173520:20053,15175859:20054,15239080:20055,15252650:20056,15309475:20057,15315351:20058,15317663:20059,15176096:20060,15049089:20061,15120025:20062,15185071:20063,15311262:20064,14990244:20065,14990518:20066,14990987:20067,15042231:20068,15043249:20069,15054522:20070,15106204:20071,15175346:20072,15180988:20073,15240083:20074,15304884:20075,15309495:20076,15309750:20077,15309962:20078,15317655:20079,15318434:20080,15112870:20081,15117748:20082,15042711:20083,15043235:20084,15172488:20085,15246210:20086,15055753:20087,15106443:20088,15107728:20089,15121571:20090,15173001:20091,15184062:20092,15185844:20093,15237551:20094,15242158:20257,15302819:20258,15305900:20259,15044994:20260,15314351:20261,15117203:20262,15172233:20263,15250306:20264,15251375:20265,15310002:20266,15043252:20267,15051137:20268,15055754:20269,15056004:20270,15113367:20271,15115708:20272,15115924:20273,15119786:20274,15121551:20275,15174050:20276,15174588:20277,15183789:20278,15237249:20279,15237566:20280,15244683:20281,15303566:20282,15041965:20283,15317651:20284,15181444:20285,15237771:20286,15305906:20287,15248278:20288,15040685:20289,15045260:20290,15247793:20291,15117738:20292,15250308:20293,15238279:20294,15106961:20295,15113888:20296,15316914:20297,14989977:20298,14989976:20299,15315088:20300,15247787:20301,15243137:20302,15242664:20303,15115392:20304,15120830:20305,15180439:20306,15238549:20307,15056012:20513,14989456:20514,14989461:20515,14989482:20516,14989489:20517,14989494:20518,14989500:20519,14989503:20520,14989698:20521,14989718:20522,14989720:20523,14989954:20524,14989957:20525,15249835:20526,14989962:20527,15239314:20528,15056013:20529,14989966:20530,14989982:20531,14989983:20532,14989984:20533,14989986:20534,1499e4:20535,14990003:20536,14990006:20537,14990222:20538,14990221:20539,14990212:20540,14990214:20541,14990210:20542,14990231:20543,14990238:20544,14990253:20545,14990239:20546,14990263:20547,14990473:20548,14990746:20549,14990512:20550,14990747:20551,14990749:20552,14990743:20553,14990727:20554,14990774:20555,14990984:20556,14990991:20557,14991e3:20558,14990779:20559,14990761:20560,14990768:20561,14990993:20562,14990767:20563,14990982:20564,14990998:20565,15041688:20566,14991252:20567,14991263:20568,14991246:20569,14991256:20570,14991259:20571,14991249:20572,14991258:20573,14991248:20574,14991268:20575,14991269:20576,15040666:20577,15040680:20578,15040660:20579,15040682:20580,15040677:20581,15040645:20582,14990492:20583,14991286:20584,15040673:20585,15040681:20586,15040684:20587,14991294:20588,14991279:20589,15040657:20590,15040646:20591,15040899:20592,15040903:20593,15113347:20594,15040917:20595,15040912:20596,15040904:20597,15040922:20598,15040918:20599,15040940:20600,15040952:20601,15041152:20602,15041178:20603,15041157:20604,15041204:20605,15041202:20606,15041417:20769,15041418:20770,15041203:20771,15041410:20772,15041430:20773,15041438:20774,15041445:20775,15041453:20776,15041443:20777,15041454:20778,15041465:20779,15041461:20780,15041673:20781,15041665:20782,15041666:20783,15041686:20784,15041685:20785,15041684:20786,15041690:20787,15041697:20788,15041722:20789,15041719:20790,15041724:20791,15041723:20792,15041727:20793,15041920:20794,15041938:20795,15041932:20796,15041940:20797,15041954:20798,15182776:20799,15041961:20800,15041962:20801,15041966:20802,15042176:20803,15042178:20804,15047576:20805,15042188:20806,15042185:20807,15042191:20808,15042193:20809,15042195:20810,15042197:20811,15042198:20812,15042212:20813,15042214:20814,15042210:20815,15042217:20816,15042218:20817,15042219:20818,15042227:20819,15042225:20820,15042226:20821,15042224:20822,15042229:20823,15042237:20824,15042437:20825,15042441:20826,15042459:20827,15042464:20828,15243669:20829,15042473:20830,15042477:20831,15042480:20832,15042485:20833,15042494:20834,15042692:20835,15042699:20836,15042708:20837,15042702:20838,15042727:20839,15042730:20840,15042734:20841,15042739:20842,15042745:20843,15042959:20844,15042948:20845,15042955:20846,15042956:20847,15042974:20848,15042964:20849,15042986:20850,15042996:20851,15042985:20852,15042995:20853,15043007:20854,15043005:20855,15043213:20856,15043220:20857,15043218:20858,15042993:20859,15043208:20860,15043217:20861,15253160:20862,15253159:21025,15043244:21026,15043245:21027,15043260:21028,15043253:21029,15043457:21030,15043469:21031,15043479:21032,15043486:21033,15043491:21034,15043494:21035,15311789:21036,15043488:21037,15043507:21038,15043509:21039,15043512:21040,15043513:21041,15043718:21042,15043720:21043,15176888:21044,15043725:21045,15043728:21046,15043727:21047,15043733:21048,15043738:21049,15043747:21050,15043759:21051,15043761:21052,15043763:21053,15043768:21054,15043968:21055,15043974:21056,15043973:21057,14989463:21058,15043977:21059,15043981:21060,15042454:21061,15043998:21062,15044009:21063,15044014:21064,15049880:21065,15044027:21066,15044023:21067,15044226:21068,15044246:21069,15044256:21070,15044262:21071,15044261:21072,15044270:21073,15044272:21074,15044278:21075,15044483:21076,15184018:21077,15309721:21078,15044511:21079,15113148:21080,15173550:21081,15044526:21082,15044520:21083,15044525:21084,15044538:21085,15044737:21086,15044797:21087,15044992:21088,15044780:21089,15044781:21090,15044796:21091,15044782:21092,15044790:21093,15044777:21094,15044765:21095,15045006:21096,15045263:21097,15045045:21098,15045262:21099,15045023:21100,15045041:21101,15045047:21102,15045040:21103,15045266:21104,15045051:21105,15045248:21106,15045046:21107,15045252:21108,15045264:21109,15045254:21110,15045511:21111,15045282:21112,15045304:21113,15045285:21114,15045292:21115,15045508:21116,15045512:21117,15045288:21118,15045291:21281,15045506:21282,15045284:21283,15045310:21284,15045308:21285,15045528:21286,15045541:21287,15045542:21288,15045775:21289,15045780:21290,15045565:21291,15045550:21292,15045549:21293,15045562:21294,15045538:21295,15045817:21296,15046016:21297,15046051:21298,15046028:21299,15045806:21300,15046044:21301,15046021:21302,15046038:21303,15046039:21304,15045816:21305,15045811:21306,15046045:21307,15046297:21308,15046272:21309,15045295:21310,15046282:21311,15046303:21312,15046075:21313,15046078:21314,15046296:21315,15046302:21316,15046318:21317,15046076:21318,15046275:21319,15046313:21320,15046279:21321,15046312:21322,15046554:21323,15046533:21324,15046559:21325,15046532:21326,15046556:21327,15046564:21328,15046548:21329,15046804:21330,15046583:21331,15046806:21332,15046590:21333,15046589:21334,15046811:21335,15046585:21336,15047054:21337,15047056:21338,15173535:21339,15046836:21340,15046838:21341,15046834:21342,15046840:21343,15047083:21344,15047076:21345,15046831:21346,15047084:21347,15047082:21348,15047302:21349,15047296:21350,15047306:21351,15047328:21352,15047316:21353,15047311:21354,15047333:21355,15047342:21356,15047350:21357,15047348:21358,15047554:21359,15047356:21360,15047553:21361,15047555:21362,15047552:21363,15047560:21364,15047566:21365,15047569:21366,15047571:21367,15047575:21368,15047598:21369,15047609:21370,15047808:21371,15047615:21372,15047812:21373,15047817:21374,15047816:21537,15047819:21538,15047821:21539,15047827:21540,15047832:21541,15047830:21542,15046535:21543,15047836:21544,15047846:21545,15047863:21546,15047864:21547,15048078:21548,15047867:21549,15048064:21550,15048079:21551,15048105:21552,15048576:21553,15048328:21554,15048097:21555,15048127:21556,15048329:21557,15048339:21558,15048352:21559,15048371:21560,15048356:21561,15048362:21562,15048368:21563,15048579:21564,15048582:21565,15048596:21566,15048594:21567,15048595:21568,15048842:21569,15048598:21570,15048611:21571,15048843:21572,15048857:21573,15048861:21574,15049138:21575,15048865:21576,15049122:21577,15049099:21578,15049136:21579,15118208:21580,15049106:21581,15048893:21582,15049145:21583,15049349:21584,15049401:21585,15049375:21586,15049387:21587,15049402:21588,15049630:21589,15049403:21590,15049400:21591,15049390:21592,15049605:21593,15049619:21594,15049617:21595,15049623:21596,15049625:21597,15049624:21598,15049637:21599,15049628:21600,15049636:21601,15049631:21602,15049647:21603,15049658:21604,15049657:21605,15049659:21606,15049660:21607,15049661:21608,15049858:21609,15049866:21610,15049872:21611,15049883:21612,15114918:21613,15049893:21614,15049900:21615,15049901:21616,15049906:21617,15049912:21618,15049918:21619,15182738:21620,15050133:21621,15050128:21622,15050126:21623,15050138:21624,15050136:21625,15050146:21626,15050144:21627,15050151:21628,15050156:21629,15050153:21630,15050168:21793,15050369:21794,15050397:21795,14990750:21796,14991019:21797,15050403:21798,15050418:21799,15050630:21800,15050664:21801,15050652:21802,15050381:21803,15050649:21804,15050650:21805,15050917:21806,15050911:21807,15050897:21808,15050908:21809,15050889:21810,15050906:21811,15051136:21812,15051180:21813,15051145:21814,15050933:21815,15050934:21816,15051170:21817,15051178:21818,15051418:21819,15051452:21820,15051454:21821,15051659:21822,15051650:21823,15051453:21824,15051683:21825,15051671:21826,15051686:21827,15051689:21828,15051670:21829,15051706:21830,15051707:21831,15051916:21832,15051915:21833,15051926:21834,15051954:21835,15051664:21836,15051946:21837,15051958:21838,15051966:21839,15052163:21840,15052165:21841,15052160:21842,15052177:21843,15052181:21844,15052186:21845,15052187:21846,15052197:21847,15052201:21848,15052208:21849,15052211:21850,15052213:21851,15052216:21852,15111816:21853,15052218:21854,15052416:21855,15052419:21856,15052454:21857,15052472:21858,15052675:21859,15052679:21860,15052681:21861,15052692:21862,15052688:21863,15052708:21864,15052710:21865,15052706:21866,15052702:21867,15052709:21868,15052715:21869,15052720:21870,15052726:21871,15052723:21872,15052933:21873,15052935:21874,15052936:21875,15052941:21876,15052947:21877,15052960:21878,15052962:21879,15052968:21880,15052984:21881,15052985:21882,15053185:21883,15053190:21884,15053198:21885,15053203:21886,15053200:22049,15053199:22050,15052209:22051,15053228:22052,15053230:22053,14989730:22054,15053238:22055,15053241:22056,15053452:22057,15053457:22058,15053460:22059,15050395:22060,15053483:22061,15053499:22062,15053494:22063,15053500:22064,15053495:22065,15053701:22066,15053502:22067,15053703:22068,15053721:22069,15053737:22070,15053757:22071,15053754:22072,15053741:22073,15054476:22074,15053738:22075,15053963:22076,15053973:22077,15053975:22078,15054236:22079,15053983:22080,15053979:22081,15053969:22082,15053972:22083,15053986:22084,15053978:22085,15053977:22086,15053976:22087,15054220:22088,15054226:22089,15054222:22090,15054219:22091,15054252:22092,15054259:22093,15054262:22094,15054471:22095,15054468:22096,15054466:22097,15054498:22098,15054493:22099,15054508:22100,15054510:22101,15054525:22102,15054480:22103,15054519:22104,15054524:22105,15054729:22106,15054733:22107,15054739:22108,15054738:22109,15054742:22110,15054747:22111,15054763:22112,15054770:22113,15054773:22114,15054987:22115,15055002:22116,15055001:22117,15054993:22118,15055003:22119,15055030:22120,15055031:22121,15055236:22122,15055235:22123,15055232:22124,15055246:22125,15055255:22126,15055252:22127,15055263:22128,15055266:22129,15055268:22130,15055239:22131,15055285:22132,15055286:22133,15055290:22134,15317692:22135,15055295:22136,15055520:22137,15055745:22138,15055746:22139,15055752:22140,15055760:22141,15055759:22142,15055766:22305,15055779:22306,15055773:22307,15055770:22308,15055771:22309,15055778:22310,15055777:22311,15055784:22312,15055785:22313,15055788:22314,15055793:22315,15055795:22316,15055792:22317,15055796:22318,15055800:22319,15055806:22320,15056003:22321,15056009:22322,15056285:22323,15056284:22324,15056011:22325,15056017:22326,15056022:22327,15056041:22328,15056045:22329,15056056:22330,15056257:22331,15056264:22332,15056268:22333,15056270:22334,15056047:22335,15056273:22336,15056278:22337,15056279:22338,15056281:22339,15056289:22340,15056301:22341,15056307:22342,15056311:22343,15056515:22344,15056514:22345,15056319:22346,15056522:22347,15056520:22348,15056529:22349,15056519:22350,15056542:22351,15056537:22352,15056536:22353,15056544:22354,15056552:22355,15056557:22356,15056572:22357,15056790:22358,15056827:22359,15056804:22360,15056824:22361,15056817:22362,15056797:22363,15106739:22364,15056831:22365,15106209:22366,15106464:22367,15106201:22368,15106192:22369,15106217:22370,15106190:22371,15106225:22372,15106203:22373,15106197:22374,15106219:22375,15106214:22376,15106191:22377,15106234:22378,15106458:22379,15106433:22380,15106474:22381,15106487:22382,15106463:22383,15106442:22384,15106438:22385,15106445:22386,15106467:22387,15106435:22388,15106468:22389,15106434:22390,15106476:22391,15106475:22392,15106457:22393,15106689:22394,15106701:22395,15106983:22396,15106691:22397,15106714:22398,15106692:22561,15106715:22562,15106710:22563,15106711:22564,15106706:22565,15106727:22566,15106699:22567,15106977:22568,15106744:22569,15106976:22570,15106963:22571,15106740:22572,15056816:22573,15106749:22574,15106950:22575,15106741:22576,15106968:22577,15107469:22578,15107221:22579,15107206:22580,15106998:22581,15106999:22582,15107200:22583,15106996:22584,15107002:22585,15107203:22586,15107233:22587,15107003:22588,15106993:22589,15107213:22590,15107214:22591,15107463:22592,15107262:22593,15107240:22594,15107239:22595,15107466:22596,15107263:22597,15107260:22598,15107244:22599,15107252:22600,15107261:22601,15107458:22602,15107460:22603,15107507:22604,15107511:22605,15107480:22606,15107481:22607,15107482:22608,15107499:22609,15107508:22610,15107503:22611,15107493:22612,15107505:22613,15107487:22614,15107485:22615,15107475:22616,15107509:22617,15107737:22618,15107734:22619,15107719:22620,15107756:22621,15107732:22622,15107738:22623,15107722:22624,15107729:22625,15107755:22626,15107758:22627,15107980:22628,15107978:22629,15107977:22630,15108023:22631,15107976:22632,15107971:22633,15107974:22634,15107770:22635,15107979:22636,15187385:22637,15107981:22638,15108006:22639,15108003:22640,15108022:22641,15108026:22642,15108020:22643,15108031:22644,15108029:22645,15108028:22646,15108030:22647,15108224:22648,15108232:22649,15108233:22650,15108237:22651,15108236:22652,15108244:22653,15108251:22654,15108254:22817,15108257:22818,15108266:22819,15108270:22820,15108272:22821,15108274:22822,15108275:22823,15108481:22824,15108494:22825,15108510:22826,15108515:22827,15108507:22828,15108512:22829,15108520:22830,15108540:22831,15108738:22832,15108745:22833,15108542:22834,15108754:22835,15108755:22836,15108758:22837,15109012:22838,15108739:22839,15108756:22840,15109015:22841,15109009:22842,15108795:22843,15109007:22844,15109055:22845,15108998:22846,15111060:22847,15109e3:22848,15109020:22849,15109004:22850,15109002:22851,15108994:22852,15108999:22853,15108763:22854,15109001:22855,15109260:22856,15109038:22857,15109041:22858,15109287:22859,15109250:22860,15109256:22861,15109039:22862,15109045:22863,15109520:22864,15109310:22865,15109517:22866,15110300:22867,15109519:22868,15109782:22869,15109774:22870,15109760:22871,15109803:22872,15109558:22873,15109795:22874,15109775:22875,15109769:22876,15109791:22877,15109813:22878,15109547:22879,15109545:22880,15109822:22881,15110057:22882,15110016:22883,15110022:22884,15110051:22885,15110025:22886,15110034:22887,15110070:22888,15110020:22889,15110294:22890,15110324:22891,15110278:22892,15110291:22893,15110310:22894,15110326:22895,15111325:22896,15110295:22897,15110312:22898,15110287:22899,15110567:22900,15110575:22901,15110582:22902,15110542:22903,15111338:22904,15110805:22905,15110803:22906,15110821:22907,15110825:22908,15110792:22909,15110844:22910,15111066:23073,15111058:23074,15111045:23075,15111047:23076,15110843:23077,15111064:23078,15111042:23079,15111089:23080,15111079:23081,15239305:23082,15111072:23083,15111073:23084,15108780:23085,15111075:23086,15111087:23087,15111340:23088,15111094:23089,15111092:23090,15111090:23091,15111098:23092,15111296:23093,15111101:23094,15111320:23095,15111324:23096,15111301:23097,15111332:23098,15111331:23099,15111339:23100,15111348:23101,15111349:23102,15111351:23103,15111350:23104,15111352:23105,15177099:23106,15111560:23107,15111574:23108,15111573:23109,15111565:23110,15111576:23111,15111582:23112,15111581:23113,15111602:23114,15111608:23115,15111810:23116,15111811:23117,15249034:23118,15111835:23119,15111839:23120,15111851:23121,15111863:23122,15112067:23123,15112070:23124,15112065:23125,15112068:23126,15112076:23127,15112082:23128,15112091:23129,15112089:23130,15112096:23131,15112097:23132,15112113:23133,15113650:23134,15112330:23135,15112323:23136,15112123:23137,15113651:23138,15112373:23139,15112374:23140,15112372:23141,15112348:23142,15112591:23143,15112580:23144,15112585:23145,15112577:23146,15112606:23147,15112605:23148,15112612:23149,15112615:23150,15112616:23151,15112607:23152,15112610:23153,15112624:23154,15112835:23155,15112840:23156,15112846:23157,15112841:23158,15112836:23159,15112856:23160,15112861:23161,15113089:23162,15112889:23163,15113097:23164,15112894:23165,15112892:23166,15113092:23329,15112888:23330,15113110:23331,15113114:23332,15113120:23333,15112383:23334,15113126:23335,15113129:23336,15113136:23337,15113141:23338,15113143:23339,15113359:23340,15113366:23341,15113374:23342,15113382:23343,15113383:23344,15310008:23345,15113390:23346,15113407:23347,15113398:23348,15113601:23349,15113400:23350,15113399:23351,15113606:23352,15113630:23353,15113632:23354,15113625:23355,15113635:23356,15113636:23357,15113865:23358,15113648:23359,15113897:23360,15113660:23361,15113642:23362,15113868:23363,15113867:23364,15113894:23365,15113889:23366,15113861:23367,15113911:23368,15114159:23369,15113908:23370,15114156:23371,15113907:23372,15114153:23373,15113912:23374,15114148:23375,15114142:23376,15114141:23377,15114146:23378,15114158:23379,15113913:23380,15114126:23381,15114118:23382,15114151:23383,15116956:23384,15114398:23385,15114630:23386,15114409:23387,15114624:23388,15114637:23389,15114418:23390,15114638:23391,15114931:23392,15114411:23393,15114649:23394,15114659:23395,15114679:23396,15114687:23397,15114911:23398,15114895:23399,15114925:23400,15114900:23401,15114909:23402,15114907:23403,15114883:23404,15116974:23405,15114937:23406,15114676:23407,15114933:23408,15114912:23409,15114938:23410,15115407:23411,15114893:23412,15114686:23413,15115393:23414,15115146:23415,15115400:23416,15115160:23417,15115426:23418,15115430:23419,15115169:23420,15115404:23421,15115149:23422,15115156:23585,15115175:23586,15115157:23587,15115446:23588,15115410:23589,15115396:23590,15115159:23591,15115171:23592,15115429:23593,15115193:23594,15115168:23595,15115183:23596,15115432:23597,15115434:23598,15115418:23599,15115427:23600,15115425:23601,15115142:23602,15115705:23603,15115703:23604,15115676:23605,15115704:23606,15115691:23607,15115668:23608,15115710:23609,15115694:23610,15115449:23611,15115700:23612,15115453:23613,15115673:23614,15115440:23615,15115681:23616,15115678:23617,15115677:23618,15115905:23619,15115690:23620,15115954:23621,15115950:23622,15116176:23623,15115967:23624,15116161:23625,15116179:23626,15115966:23627,15116174:23628,15052712:23629,15116170:23630,15116189:23631,15115963:23632,15116163:23633,15115943:23634,15116462:23635,15115921:23636,15115936:23637,15115932:23638,15115925:23639,15115956:23640,15116190:23641,15116200:23642,15116418:23643,15116443:23644,15116223:23645,15117450:23646,15116217:23647,15116210:23648,15116199:23649,15116421:23650,15115953:23651,15116446:23652,15116205:23653,15116436:23654,15116203:23655,15116426:23656,15116434:23657,15117185:23658,15116451:23659,15116435:23660,15116676:23661,15116428:23662,15116722:23663,15116470:23664,15116728:23665,15116679:23666,15116706:23667,15116697:23668,15116710:23669,15116680:23670,15116472:23671,15116450:23672,15116944:23673,15116941:23674,15116960:23675,15116932:23676,15116962:23677,15116963:23678,15116951:23841,15243415:23842,15116987:23843,15117187:23844,15117186:23845,15116984:23846,15116979:23847,15116972:23848,15117214:23849,15117201:23850,15117215:23851,15116970:23852,15117210:23853,15117226:23854,15117243:23855,15117445:23856,15243414:23857,15117242:23858,15117458:23859,15117462:23860,15314097:23861,15117471:23862,15117496:23863,15117495:23864,15178652:23865,15117497:23866,15311790:23867,15117703:23868,15117699:23869,15117705:23870,15117712:23871,15117721:23872,15117716:23873,15117723:23874,15117727:23875,15117729:23876,15117752:23877,15117753:23878,15117759:23879,15117952:23880,15117956:23881,15117955:23882,15117965:23883,15117976:23884,15117973:23885,15117982:23886,15117988:23887,15117994:23888,15117995:23889,15117999:23890,15118002:23891,15118001:23892,15118003:23893,15118007:23894,15118012:23895,15118214:23896,15118219:23897,15118227:23898,15118239:23899,15118252:23900,15118251:23901,15118259:23902,15118255:23903,15317694:23904,15118472:23905,15118483:23906,15118484:23907,15118491:23908,15118500:23909,15118499:23910,15118750:23911,15118741:23912,15118754:23913,15118762:23914,15118978:23915,15118989:23916,15119002:23917,15118977:23918,15119003:23919,15118782:23920,15118760:23921,15118771:23922,15118994:23923,15118992:23924,15119236:23925,15119281:23926,15119251:23927,15119037:23928,15119255:23929,15119237:23930,15119261:23931,15119022:23932,15119025:23933,15119038:23934,15119034:24097,15119259:24098,15119279:24099,15119257:24100,15119274:24101,15119519:24102,15245709:24103,15119542:24104,15119531:24105,15119549:24106,15119544:24107,15119513:24108,15119541:24109,15119539:24110,15119506:24111,15119500:24112,15119779:24113,15120019:24114,15119780:24115,15119770:24116,15119801:24117,15119769:24118,15120014:24119,15120021:24120,15122340:24121,15120005:24122,15120313:24123,15120533:24124,15120522:24125,15120053:24126,15120263:24127,15120294:24128,15120056:24129,15120262:24130,15120300:24131,15120286:24132,15120268:24133,15120296:24134,15120274:24135,15120261:24136,15120314:24137,15120281:24138,15120292:24139,15120277:24140,15120298:24141,15120302:24142,15120557:24143,15120814:24144,15120558:24145,15120537:24146,15120818:24147,15120799:24148,15120574:24149,15120547:24150,15120811:24151,15120555:24152,15120822:24153,15120781:24154,15120543:24155,15120771:24156,15120570:24157,15120782:24158,15120548:24159,15121343:24160,15120541:24161,15120568:24162,15121026:24163,15121066:24164,15121048:24165,15121289:24166,15121079:24167,15121299:24168,15121085:24169,15121071:24170,15121284:24171,15121074:24172,15121300:24173,15121301:24174,15121039:24175,15121061:24176,15121282:24177,15121055:24178,15121793:24179,15121553:24180,15171980:24181,15121324:24182,15121336:24183,15121342:24184,15121599:24185,15121330:24186,15121585:24187,15121327:24188,15121586:24189,15121292:24190,15121598:24353,15121555:24354,15121335:24355,15122054:24356,15121850:24357,15121848:24358,15122049:24359,15122048:24360,15121839:24361,15121819:24362,15122355:24363,15121837:24364,15122050:24365,15121852:24366,15121816:24367,15122062:24368,15122065:24369,15122306:24370,15121830:24371,15122099:24372,15122083:24373,15122081:24374,15122084:24375,15122105:24376,15122310:24377,15122090:24378,15122335:24379,15122325:24380,15122348:24381,15122324:24382,15122328:24383,15122353:24384,15122350:24385,15122331:24386,15171721:24387,15171723:24388,15122362:24389,15171729:24390,15171713:24391,15171727:24392,15122366:24393,15171739:24394,15171738:24395,15121844:24396,15171741:24397,15171736:24398,15171743:24399,15171760:24400,15171774:24401,15171762:24402,15171985:24403,15172003:24404,15172249:24405,15172242:24406,15172271:24407,15172529:24408,15172268:24409,15172280:24410,15172275:24411,15172270:24412,15172511:24413,15172491:24414,15172509:24415,15172505:24416,15172745:24417,15172541:24418,15172764:24419,15172761:24420,15173029:24421,15173013:24422,15173256:24423,15173030:24424,15173026:24425,15173004:24426,15173014:24427,15173036:24428,15173263:24429,15173563:24430,15173252:24431,15173269:24432,15173288:24433,15173292:24434,15173527:24435,15173305:24436,15173310:24437,15173522:24438,15173513:24439,15173524:24440,15173518:24441,15173536:24442,15173548:24443,15173543:24444,15173557:24445,15173564:24446,15173561:24609,15173567:24610,15173773:24611,15173776:24612,15173787:24613,15173800:24614,15173805:24615,15173804:24616,15173808:24617,15173810:24618,15173819:24619,15173820:24620,15173823:24621,15174016:24622,15174022:24623,15174027:24624,15174040:24625,15174068:24626,15174078:24627,15174274:24628,15174273:24629,15174279:24630,15174290:24631,15174294:24632,15174306:24633,15174311:24634,15174329:24635,15174322:24636,15174531:24637,15174534:24638,15174532:24639,15174542:24640,15174546:24641,15174562:24642,15174560:24643,15174561:24644,15174585:24645,15174583:24646,15040655:24647,15174807:24648,15174794:24649,15174812:24650,15174806:24651,15174813:24652,15174836:24653,15174831:24654,15174825:24655,15174821:24656,15174846:24657,15175054:24658,15175055:24659,15317912:24660,15175063:24661,15175082:24662,15175080:24663,15175088:24664,15175096:24665,15175093:24666,15175099:24667,15175098:24668,15175560:24669,15175347:24670,15175566:24671,15175355:24672,15175552:24673,15175589:24674,15175598:24675,15175582:24676,15176354:24677,15175813:24678,15176111:24679,15175845:24680,15175608:24681,15175858:24682,15175866:24683,15176085:24684,15175871:24685,15176095:24686,15176089:24687,15176065:24688,15176092:24689,15176105:24690,15176112:24691,15176099:24692,15176106:24693,15176118:24694,15176126:24695,15176331:24696,15176350:24697,15176359:24698,15176586:24699,15176591:24700,15176596:24701,15175601:24702,15176608:24865,15176611:24866,15176615:24867,15176617:24868,15176622:24869,15176626:24870,15176624:24871,15176625:24872,15176632:24873,15176631:24874,15176836:24875,15176835:24876,15176837:24877,15176844:24878,15176846:24879,15176845:24880,15176853:24881,15176851:24882,15176862:24883,15176870:24884,15176876:24885,15176892:24886,15177092:24887,15177101:24888,15177098:24889,15177097:24890,15177115:24891,15177094:24892,15177114:24893,15177129:24894,15177124:24895,15177127:24896,15177131:24897,15177133:24898,15177144:24899,15177142:24900,15177350:24901,15177351:24902,15177140:24903,15177354:24904,15177353:24905,15177346:24906,15177364:24907,15177370:24908,15177373:24909,15177381:24910,15177379:24911,15177602:24912,15177395:24913,15177603:24914,15177397:24915,15177405:24916,15177400:24917,15177404:24918,15177393:24919,15177613:24920,15177610:24921,15177618:24922,15177625:24923,15177635:24924,15177630:24925,15177662:24926,15177663:24927,15177660:24928,15177857:24929,15177648:24930,15177658:24931,15177650:24932,15177651:24933,15177867:24934,15177869:24935,15177865:24936,15177887:24937,15177895:24938,15177888:24939,15177889:24940,15177890:24941,15177892:24942,15177908:24943,15177904:24944,15177915:24945,15178119:24946,15178120:24947,15178118:24948,15178140:24949,15178136:24950,15178145:24951,15178146:24952,15178152:24953,15178153:24954,15178154:24955,15178151:24956,15178156:24957,15178160:24958,15178162:25121,15178166:25122,15178168:25123,15178172:25124,15178368:25125,15178371:25126,15178376:25127,15178379:25128,15178382:25129,15178390:25130,15178387:25131,15178393:25132,15178394:25133,15178416:25134,15178420:25135,15178424:25136,15178425:25137,15178426:25138,15178626:25139,15178637:25140,15178646:25141,15178642:25142,15178654:25143,15178657:25144,15178661:25145,15178663:25146,15178666:25147,15243439:25148,15178683:25149,15178888:25150,15178887:25151,15178884:25152,15178921:25153,15178916:25154,15178910:25155,15178917:25156,15178918:25157,15178907:25158,15178935:25159,15178936:25160,15179143:25161,15179162:25162,15179176:25163,15179179:25164,15179163:25165,15179173:25166,15179199:25167,15179198:25168,15179193:25169,15179406:25170,15179403:25171,15179409:25172,15179424:25173,15179422:25174,15179440:25175,15179446:25176,15179449:25177,15179455:25178,15179452:25179,15179453:25180,15179451:25181,15179655:25182,15179661:25183,15179671:25184,15179674:25185,15179676:25186,15179683:25187,15179694:25188,15179708:25189,15179916:25190,15179922:25191,15180966:25192,15179936:25193,15180970:25194,15180165:25195,15180430:25196,15180212:25197,15180422:25198,15180220:25199,15180442:25200,15180428:25201,15180451:25202,15180469:25203,15180458:25204,15180463:25205,15180689:25206,15180678:25207,15180683:25208,15180692:25209,15180478:25210,15180476:25211,15180677:25212,15180682:25213,15180716:25214,15180711:25377,15180698:25378,15180733:25379,15180724:25380,15180935:25381,15180946:25382,15180945:25383,15180953:25384,15180972:25385,15180971:25386,15181184:25387,15181216:25388,15181207:25389,15181215:25390,15181210:25391,15181205:25392,15181203:25393,15181242:25394,15181247:25395,15181450:25396,15181469:25397,15181479:25398,15318411:25399,15181482:25400,15181486:25401,15181491:25402,15181497:25403,15181498:25404,15181705:25405,15181717:25406,15181735:25407,15181740:25408,15181729:25409,15181731:25410,15181960:25411,15181965:25412,15181976:25413,15181977:25414,15181984:25415,15181983:25416,15181440:25417,15182001:25418,15182011:25419,15182014:25420,15182007:25421,15182211:25422,15182231:25423,15182217:25424,15182241:25425,15182242:25426,15182249:25427,15318685:25428,15182256:25429,15182265:25430,15182269:25431,15182472:25432,15182487:25433,15182485:25434,15182488:25435,15182486:25436,15182505:25437,15182728:25438,15182512:25439,15182518:25440,15182725:25441,15182724:25442,15182527:25443,15303299:25444,15182727:25445,15182730:25446,15182733:25447,15182735:25448,15182741:25449,15182739:25450,15182745:25451,15182746:25452,15182749:25453,15182753:25454,15182754:25455,15182758:25456,15182765:25457,15182768:25458,15182978:25459,15182991:25460,15182986:25461,15182982:25462,15183027:25463,15183e3:25464,15183001:25465,15183006:25466,15183029:25467,15183016:25468,15183030:25469,15183248:25470,15183290:25633,15182980:25634,15183245:25635,15182987:25636,15183244:25637,15183237:25638,15183285:25639,15183269:25640,15183284:25641,15183271:25642,15183280:25643,15183281:25644,15183276:25645,15183278:25646,15183517:25647,15183512:25648,15183519:25649,15183501:25650,15183516:25651,15183514:25652,15183499:25653,15183506:25654,15183503:25655,15183261:25656,15183513:25657,15183755:25658,15183745:25659,15183756:25660,15183759:25661,15183540:25662,15183750:25663,15183773:25664,15183785:25665,15184017:25666,15184020:25667,15183782:25668,15183781:25669,15184288:25670,15184e3:25671,15184007:25672,15184019:25673,15183795:25674,15183799:25675,15184023:25676,15184013:25677,15183798:25678,15184035:25679,15184039:25680,15184042:25681,15184031:25682,15184055:25683,15184043:25684,15184061:25685,15184268:25686,15184259:25687,15184276:25688,15184271:25689,15184256:25690,15184272:25691,15184280:25692,15184287:25693,15184292:25694,15184278:25695,15184293:25696,15184300:25697,15184309:25698,15184515:25699,15184528:25700,15184548:25701,15184557:25702,15184546:25703,15184555:25704,15184545:25705,15184552:25706,15184563:25707,15184562:25708,15184561:25709,15184558:25710,15184569:25711,15184573:25712,15184768:25713,15184773:25714,15184770:25715,15184792:25716,15184786:25717,15184796:25718,15184802:25719,15314107:25720,15184815:25721,15184818:25722,15184820:25723,15184822:25724,15184826:25725,15185030:25726,15185026:25889,15185052:25890,15185045:25891,15185034:25892,15185285:25893,15185291:25894,15185070:25895,15185074:25896,15185087:25897,15185077:25898,15185286:25899,15185331:25900,15185302:25901,15185294:25902,15185330:25903,15185320:25904,15185326:25905,15185295:25906,15185315:25907,15185555:25908,15185545:25909,15185307:25910,15185551:25911,15185341:25912,15185563:25913,15185594:25914,15185582:25915,15185571:25916,15185589:25917,15185799:25918,15185597:25919,15185579:25920,15186109:25921,15185570:25922,15185583:25923,15185820:25924,15185592:25925,15185567:25926,15185584:25927,15185816:25928,15185821:25929,15185828:25930,15185822:25931,15185851:25932,15185842:25933,15185825:25934,15186053:25935,15186058:25936,15186083:25937,15186081:25938,15186066:25939,15186097:25940,15186079:25941,15186057:25942,15186059:25943,15186082:25944,15186310:25945,15186342:25946,15186107:25947,15186101:25948,15186105:25949,15186307:25950,15186103:25951,15186098:25952,15186106:25953,15186343:25954,15186333:25955,15186326:25956,15186334:25957,15186329:25958,15186330:25959,15186361:25960,15186346:25961,15186345:25962,15186364:25963,15186363:25964,15186563:25965,15185813:25966,15186365:25967,15253166:25968,15186367:25969,15186568:25970,15186569:25971,15186572:25972,15186578:25973,15186576:25974,15186579:25975,15186580:25976,15186582:25977,15186574:25978,15186587:25979,15186588:25980,15187128:25981,15187130:25982,15187333:26145,15187340:26146,15187341:26147,15187342:26148,15187344:26149,15187345:26150,15187349:26151,15187348:26152,15187352:26153,15187359:26154,15187360:26155,15187368:26156,15187369:26157,15187367:26158,15187384:26159,15187586:26160,15187590:26161,15187587:26162,15187592:26163,15187591:26164,15187596:26165,15187604:26166,15187614:26167,15187613:26168,15187610:26169,15187619:26170,15187631:26171,15187634:26172,15187641:26173,15187630:26174,15187638:26175,15187640:26176,15248817:26177,15187845:26178,15187846:26179,15187850:26180,15187861:26181,15187860:26182,15187873:26183,15187878:26184,15187881:26185,15187891:26186,15187897:26187,15311772:26188,15237254:26189,15237252:26190,15237259:26191,15237266:26192,15237272:26193,15237273:26194,15237276:26195,15237281:26196,15237288:26197,15237311:26198,15237307:26199,15237514:26200,15237510:26201,15237522:26202,15237528:26203,15237530:26204,15237535:26205,15237538:26206,15237544:26207,15237555:26208,15237554:26209,15237552:26210,15237558:26211,15237561:26212,15237565:26213,15237567:26214,15237764:26215,15237766:26216,15237765:26217,15237787:26218,15237779:26219,15237786:26220,15237805:26221,15042192:26222,15237804:26223,15238043:26224,15238053:26225,15238041:26226,15238045:26227,15238020:26228,15238042:26229,15238038:26230,15238281:26231,15238063:26232,15238065:26233,15238299:26234,15238313:26235,15238307:26236,15238319:26237,15238539:26238,15309451:26401,15238534:26402,15238334:26403,15238547:26404,15238545:26405,15238076:26406,15238577:26407,15238574:26408,15238565:26409,15238566:26410,15238580:26411,15238787:26412,15238792:26413,15238794:26414,15238784:26415,15238786:26416,15238816:26417,15238805:26418,15238820:26419,15238819:26420,15238559:26421,15238803:26422,15238825:26423,15238832:26424,15238837:26425,15238846:26426,15238840:26427,15238845:26428,15239040:26429,15239042:26430,15238842:26431,15239049:26432,15239053:26433,15239057:26434,15239065:26435,15239064:26436,15239048:26437,15239066:26438,15239071:26439,15239072:26440,15239079:26441,15239098:26442,15239099:26443,15239102:26444,15239297:26445,15239298:26446,15239301:26447,15239303:26448,15239306:26449,15239309:26450,15239312:26451,15239318:26452,15239337:26453,15239339:26454,15239352:26455,15239347:26456,15239552:26457,15239577:26458,15239576:26459,15239581:26460,15239578:26461,15239583:26462,15239588:26463,15239586:26464,15239592:26465,15239594:26466,15239595:26467,15239342:26468,15239601:26469,15239607:26470,15239608:26471,15239614:26472,15239821:26473,15239826:26474,15239851:26475,15239839:26476,15239867:26477,15239852:26478,15240097:26479,15240099:26480,15240095:26481,15240082:26482,15240116:26483,15240115:26484,15240122:26485,15240851:26486,15240323:26487,15240123:26488,15240121:26489,15240094:26490,15240326:26491,15240092:26492,15240329:26493,15240089:26494,15240373:26657,15240372:26658,15240342:26659,15240370:26660,15240369:26661,15240576:26662,15240377:26663,15240592:26664,15240581:26665,15240367:26666,15240363:26667,15240343:26668,15240344:26669,15240837:26670,15240858:26671,15240874:26672,15240863:26673,15240866:26674,15240854:26675,15240355:26676,15240846:26677,15240839:26678,15240842:26679,15240636:26680,15240885:26681,15240627:26682,15240629:26683,15240864:26684,15240841:26685,15240872:26686,15241140:26687,15241363:26688,15241131:26689,15241102:26690,15241149:26691,15241347:26692,15241112:26693,15241355:26694,15241089:26695,15241143:26696,15241351:26697,15241120:26698,15241138:26699,15241357:26700,15241378:26701,15241376:26702,15240893:26703,15241400:26704,15242374:26705,15241147:26706,15241645:26707,15241386:26708,15241404:26709,15242650:26710,15241860:26711,15241655:26712,15241643:26713,15241901:26714,15241646:26715,15241858:26716,15241641:26717,15241606:26718,15241388:26719,15241647:26720,15241657:26721,15241397:26722,15242122:26723,15241634:26724,15241913:26725,15241919:26726,15241887:26727,15242137:26728,15242125:26729,15241915:26730,15242138:26731,15242128:26732,15242113:26733,15242118:26734,15242134:26735,15241889:26736,15242401:26737,15242175:26738,15242164:26739,15242391:26740,15242392:26741,15242412:26742,15242399:26743,15242389:26744,15242388:26745,15242172:26746,15242624:26747,15242659:26748,15242648:26749,15242632:26750,15242625:26913,15243394:26914,15242635:26915,15242645:26916,15242880:26917,15242916:26918,15242888:26919,15242897:26920,15242890:26921,15242920:26922,15242669:26923,15242900:26924,15242907:26925,15243178:26926,15242887:26927,15242908:26928,15242679:26929,15242686:26930,15242896:26931,15243145:26932,15242938:26933,15243151:26934,15242937:26935,15243152:26936,15243157:26937,15243165:26938,15243173:26939,15243164:26940,15243193:26941,15243402:26942,15243411:26943,15243403:26944,15243198:26945,15243194:26946,15243398:26947,15243426:26948,15243418:26949,15243440:26950,15243455:26951,15243661:26952,14989717:26953,15243668:26954,15243679:26955,15243687:26956,15243697:26957,15243923:26958,15243939:26959,15243945:26960,15243946:26961,15243915:26962,15243916:26963,15243958:26964,15243951:26965,15244164:26966,15244166:26967,15243952:26968,15244169:26969,15245475:26970,15243947:26971,15244180:26972,15244190:26973,15244201:26974,15244204:26975,15244191:26976,15244187:26977,15244207:26978,15244434:26979,15244422:26980,15244424:26981,15244416:26982,15244419:26983,15244219:26984,15244433:26985,15244425:26986,15244429:26987,15244217:26988,15244426:26989,15244468:26990,15244479:26991,15244471:26992,15244475:26993,15244453:26994,15244457:26995,15244442:26996,15244704:26997,15244703:26998,15244728:26999,15244684:27e3,15244686:27001,15244724:27002,15244695:27003,15244712:27004,15244718:27005,15244697:27006,15244691:27169,15244707:27170,15244714:27171,15245445:27172,15244962:27173,15244959:27174,15244930:27175,15244975:27176,15245195:27177,15244989:27178,15245184:27179,15245200:27180,15309718:27181,15244971:27182,15245188:27183,15244979:27184,15245191:27185,15245190:27186,15244987:27187,15245231:27188,15245234:27189,15245216:27190,15245455:27191,15245453:27192,15245246:27193,15245238:27194,15245239:27195,15245454:27196,15245202:27197,15245457:27198,15245462:27199,15245461:27200,15245474:27201,15245473:27202,15245489:27203,15245494:27204,15245497:27205,15245479:27206,15245499:27207,15245700:27208,15245698:27209,15245714:27210,15245721:27211,15245726:27212,15245730:27213,15245739:27214,15245953:27215,15245758:27216,15245982:27217,15245749:27218,15245757:27219,15246005:27220,15245746:27221,15245954:27222,15245975:27223,15245970:27224,15245998:27225,15245977:27226,15245986:27227,15245965:27228,15245988:27229,15246e3:27230,15246015:27231,15246001:27232,15246211:27233,15246212:27234,15246228:27235,15246232:27236,15246233:27237,15246237:27238,15246265:27239,15246466:27240,15246268:27241,15246260:27242,15246248:27243,15246258:27244,15246468:27245,15246476:27246,15246474:27247,15246483:27248,15246723:27249,15246494:27250,15246501:27251,15246506:27252,15246507:27253,15246721:27254,15246724:27255,15246523:27256,15246518:27257,15246520:27258,15246732:27259,15246493:27260,15246752:27261,15246750:27262,15246758:27425,15246756:27426,15246765:27427,15246762:27428,15246767:27429,15246772:27430,15246775:27431,15246782:27432,15246979:27433,15246984:27434,15246986:27435,15246995:27436,15247e3:27437,15247009:27438,15247017:27439,15247014:27440,15247020:27441,15247023:27442,15247026:27443,15247034:27444,15247037:27445,15247039:27446,15247232:27447,15247258:27448,15247260:27449,15247261:27450,15247271:27451,15247284:27452,15247288:27453,15247491:27454,15247510:27455,15247504:27456,15247500:27457,15247515:27458,15247517:27459,15247525:27460,15247542:27461,15247745:27462,15247771:27463,15247762:27464,15247750:27465,15247752:27466,15247804:27467,15247789:27468,15247788:27469,15247778:27470,15248005:27471,15248002:27472,15248004:27473,15248040:27474,15248033:27475,15248017:27476,15248037:27477,15248038:27478,15248026:27479,15248035:27480,15248260:27481,15248269:27482,15248258:27483,15248282:27484,15248299:27485,15248307:27486,15248295:27487,15248292:27488,15248305:27489,15248532:27490,15248288:27491,15248290:27492,15248311:27493,15248286:27494,15248283:27495,15248524:27496,15248519:27497,15248538:27498,15248289:27499,15248534:27500,15248528:27501,15248535:27502,15248544:27503,15248563:27504,15310507:27505,15248550:27506,15248555:27507,15248574:27508,15248552:27509,15248769:27510,15248780:27511,15248783:27512,15248782:27513,15248777:27514,15248790:27515,15248795:27516,15248794:27517,15248811:27518,15248799:27681,15248812:27682,15248815:27683,15248820:27684,15248829:27685,15249024:27686,15249036:27687,15249038:27688,15249042:27689,15249043:27690,15249046:27691,15249049:27692,15249050:27693,15249594:27694,15249793:27695,15249599:27696,15249800:27697,15249804:27698,15249806:27699,15249808:27700,15249813:27701,15249826:27702,15249836:27703,15249848:27704,15249850:27705,15250050:27706,15250057:27707,15250053:27708,15250058:27709,15250061:27710,15250062:27711,15250068:27712,15249852:27713,15250072:27714,15108253:27715,15250093:27716,15250090:27717,15250109:27718,15250098:27719,15250099:27720,15250094:27721,15250102:27722,15250312:27723,15250305:27724,15250340:27725,15250339:27726,15250330:27727,15250365:27728,15250362:27729,15250363:27730,15250564:27731,15250565:27732,15250570:27733,15250567:27734,15250575:27735,15250573:27736,15250576:27737,15318414:27738,15250579:27739,15250317:27740,15250580:27741,15250582:27742,15250855:27743,15250861:27744,15250865:27745,15250867:27746,15251073:27747,15251097:27748,15251330:27749,15251134:27750,15251130:27751,15251343:27752,15251354:27753,15251350:27754,15251340:27755,15251355:27756,15251339:27757,15251370:27758,15251371:27759,15251359:27760,15251363:27761,15251388:27762,15251592:27763,15251593:27764,15251391:27765,15251613:27766,15251614:27767,15251600:27768,15251615:27769,15251842:27770,15251637:27771,15251632:27772,15251636:27773,15251850:27774,15251847:27937,15251849:27938,15251852:27939,15251856:27940,15251848:27941,15251865:27942,15251876:27943,15251872:27944,15251626:27945,15251875:27946,15251861:27947,15251894:27948,15251890:27949,15251900:27950,15252097:27951,15252103:27952,15252101:27953,15252100:27954,15252107:27955,15252106:27956,15252115:27957,15252113:27958,15252116:27959,15252121:27960,15252138:27961,15252129:27962,15252140:27963,15252144:27964,15252358:27965,15252145:27966,15252158:27967,15252357:27968,15252360:27969,15252363:27970,15252379:27971,15252387:27972,15252412:27973,15252411:27974,15252395:27975,15252414:27976,15252618:27977,15252613:27978,15252629:27979,15252626:27980,15252633:27981,15252627:27982,15252636:27983,15252639:27984,15252635:27985,15252620:27986,15252646:27987,15252659:27988,15252667:27989,15252665:27990,15252869:27991,15252866:27992,15252670:27993,15252876:27994,15252873:27995,15252870:27996,15252878:27997,15252887:27998,15252892:27999,15252898:28e3,15252899:28001,15252900:28002,15253148:28003,15253151:28004,15253155:28005,15253165:28006,15253167:28007,15253175:28008,15253402:28009,15253413:28010,15253410:28011,15253418:28012,15253423:28013,15303303:28014,15253428:28015,15302789:28016,15253433:28017,15253434:28018,15302801:28019,15302805:28020,15302817:28021,15302797:28022,15302814:28023,15302806:28024,15302795:28025,15302823:28026,15302838:28027,15302837:28028,15302841:28029,15253432:28030,15303055:28193,15303056:28194,15303057:28195,15303058:28196,15302798:28197,15303049:28198,15302846:28199,15303062:28200,15303064:28201,15303070:28202,15303080:28203,15303087:28204,15303094:28205,15309480:28206,15303090:28207,15303298:28208,15303101:28209,15303297:28210,15303296:28211,15303306:28212,15303305:28213,15303311:28214,15303336:28215,15303343:28216,15303345:28217,15303349:28218,15303586:28219,15303588:28220,15108488:28221,15303579:28222,15303810:28223,15303826:28224,15303833:28225,15303858:28226,15303856:28227,15304074:28228,15304086:28229,15304088:28230,15304099:28231,15304101:28232,15304105:28233,15304115:28234,15304114:28235,15304331:28236,15304329:28237,15304322:28238,15304354:28239,15304363:28240,15304367:28241,15304362:28242,15304373:28243,15304372:28244,15304378:28245,15304576:28246,15304577:28247,15304585:28248,15304587:28249,15304592:28250,15304598:28251,15304607:28252,15304609:28253,15304603:28254,15304636:28255,15304629:28256,15304630:28257,15304862:28258,15304639:28259,15304852:28260,15304876:28261,15304853:28262,15304849:28263,15305118:28264,15305111:28265,15305093:28266,15305097:28267,15305124:28268,15305096:28269,15305365:28270,15304895:28271,15305099:28272,15305104:28273,15305372:28274,15305366:28275,15305363:28276,15305371:28277,15305114:28278,15305615:28279,15305401:28280,15305399:28281,15305641:28282,15305871:28283,15305658:28284,15306116:28285,15305902:28286,15305881:28449,15305890:28450,15305882:28451,15305891:28452,15305914:28453,15305909:28454,15305915:28455,15306140:28456,15306144:28457,15306172:28458,15306158:28459,15306134:28460,15306416:28461,15306412:28462,15306413:28463,15306388:28464,15306425:28465,15306646:28466,15306647:28467,15306664:28468,15306661:28469,15306648:28470,15306627:28471,15306653:28472,15306640:28473,15306632:28474,15306660:28475,15306906:28476,15306900:28477,15306899:28478,15306883:28479,15306887:28480,15306896:28481,15306934:28482,15306923:28483,15306933:28484,15306913:28485,15306938:28486,15307137:28487,15307154:28488,15307140:28489,15307163:28490,15307168:28491,15307170:28492,15307166:28493,15307178:28494,15304873:28495,15307184:28496,15307189:28497,15307191:28498,15307197:28499,15307162:28500,15307196:28501,15307198:28502,15307393:28503,15307199:28504,15308418:28505,15308423:28506,15308426:28507,15308436:28508,15308438:28509,15308440:28510,15308441:28511,15308448:28512,15308456:28513,15308455:28514,15308461:28515,15308476:28516,15308475:28517,15308473:28518,15308478:28519,15308682:28520,15122358:28521,15308675:28522,15308685:28523,15308684:28524,15308693:28525,15308692:28526,15308694:28527,15308700:28528,15308705:28529,15308709:28530,15308706:28531,15308961:28532,15308968:28533,15308974:28534,15308975:28535,15309186:28536,15309196:28537,15309199:28538,15309195:28539,15309239:28540,15309212:28541,15309214:28542,15309213:28705,15309215:28706,15309222:28707,15309234:28708,15309228:28709,15309453:28710,15309464:28711,15309461:28712,15309463:28713,15309482:28714,15309479:28715,15309489:28716,15309490:28717,15309488:28718,15309492:28719,15309494:28720,15309496:28721,15309497:28722,15309710:28723,15309707:28724,15309705:28725,15309709:28726,15246733:28727,15309724:28728,15309965:28729,15309717:28730,15309753:28731,15309956:28732,15309958:28733,15309960:28734,15309971:28735,15309966:28736,15309969:28737,15309967:28738,15309974:28739,15309977:28740,15309988:28741,15309994:28742,1531e4:28743,15310009:28744,15310013:28745,15310014:28746,15310212:28747,15310214:28748,15310216:28749,15310210:28750,15310217:28751,15310236:28752,15310240:28753,15310244:28754,15310246:28755,15310248:28756,15043474:28757,15310251:28758,15310257:28759,15310265:28760,15310469:28761,15310268:28762,15310465:28763,15310266:28764,15310470:28765,15310475:28766,15310479:28767,15310480:28768,15310492:28769,15310504:28770,15310502:28771,15310499:28772,15310515:28773,15310516:28774,15310723:28775,15310726:28776,15310728:28777,15310731:28778,15310748:28779,15310765:28780,15318415:28781,15310770:28782,15182751:28783,15310774:28784,15310773:28785,15310991:28786,15310988:28787,15311032:28788,15311012:28789,15311009:28790,15311031:28791,15311037:28792,15311238:28793,15311247:28794,15311243:28795,15311275:28796,15311279:28797,15311280:28798,15311281:28961,15311284:28962,15311283:28963,15311530:28964,15311535:28965,15311537:28966,15311542:28967,15311748:28968,15311747:28969,15311750:28970,15311785:28971,15311787:28972,15312003:28973,15312009:28974,15312018:28975,15312020:28976,15312024:28977,15312033:28978,15312029:28979,15312030:28980,15312036:28981,15312032:28982,15312044:28983,15312046:28984,15312061:28985,15312062:28986,15312258:28987,15312265:28988,15312261:28989,15312272:28990,15312267:28991,15312273:28992,15312274:28993,15312268:28994,15312277:28995,15312535:28996,15312536:28997,15312549:28998,15312557:28999,15312558:29e3,15312572:29001,15312799:29002,15312795:29003,15312797:29004,15312792:29005,15312785:29006,15312813:29007,15312814:29008,15312817:29009,15312818:29010,15312827:29011,15312824:29012,15313025:29013,15313039:29014,15313029:29015,15312802:29016,15313049:29017,15313067:29018,15313079:29019,15313285:29020,15313282:29021,15313280:29022,15313283:29023,15313086:29024,15313301:29025,15313293:29026,15313307:29027,15313303:29028,15313311:29029,15313314:29030,15313317:29031,15313316:29032,15313321:29033,15313323:29034,15313322:29035,15313581:29036,15313584:29037,15313596:29038,15313792:29039,15313807:29040,15313809:29041,15313811:29042,15313812:29043,15313822:29044,15313823:29045,15313826:29046,15313827:29047,15313830:29048,15313839:29049,15313835:29050,15313838:29051,15313844:29052,15313841:29053,15313847:29054,15313851:29217,15314054:29218,15314072:29219,15314074:29220,15314079:29221,15314082:29222,15314083:29223,15314085:29224,15314087:29225,15314088:29226,15314089:29227,15314090:29228,15314094:29229,15314095:29230,15314098:29231,15314308:29232,15314307:29233,15314319:29234,15314317:29235,15314318:29236,15314321:29237,15314328:29238,15314356:29239,15314579:29240,15314563:29241,15314577:29242,15314582:29243,15314583:29244,15314591:29245,15314592:29246,15314600:29247,15314612:29248,15314816:29249,15314826:29250,15314617:29251,15314822:29252,15314831:29253,15314833:29254,15314834:29255,15314851:29256,15314850:29257,15314852:29258,15314836:29259,15314849:29260,15315130:29261,15314866:29262,15314865:29263,15314864:29264,15315093:29265,15315092:29266,15315081:29267,15315091:29268,15315084:29269,15315078:29270,15315080:29271,15315090:29272,15315082:29273,15315076:29274,15315118:29275,15315099:29276,15315109:29277,15315108:29278,15315105:29279,15315120:29280,15315335:29281,15315122:29282,15315334:29283,15315134:29284,15315354:29285,15315360:29286,15315367:29287,15315382:29288,15315384:29289,15315879:29290,15315884:29291,15315888:29292,15316105:29293,15316104:29294,15315883:29295,15316099:29296,15316102:29297,15316138:29298,15316134:29299,15316655:29300,15316131:29301,15316127:29302,15316356:29303,15316117:29304,15316114:29305,15316353:29306,15316159:29307,15316158:29308,15316358:29309,15316360:29310,15316381:29473,15316382:29474,15316388:29475,15316369:29476,15316368:29477,15316377:29478,15316402:29479,15316617:29480,15316615:29481,15316651:29482,15316399:29483,15316410:29484,15316634:29485,15316644:29486,15316649:29487,15316658:29488,15316868:29489,15316865:29490,15316667:29491,15316664:29492,15316666:29493,15316870:29494,15316879:29495,15316866:29496,15316889:29497,15316883:29498,15316920:29499,15316902:29500,15316909:29501,15316911:29502,15316925:29503,15317146:29504,15317147:29505,15317150:29506,15317429:29507,15317433:29508,15317437:29509,15317633:29510,15317640:29511,15317643:29512,15317644:29513,15317650:29514,15317653:29515,15317649:29516,15317661:29517,15317669:29518,15317673:29519,15317688:29520,15317674:29521,15317677:29522,15310241:29523,15317900:29524,15317902:29525,15317903:29526,15317904:29527,15317908:29528,15317916:29529,15317918:29530,15317917:29531,15317920:29532,15317925:29533,15317928:29534,15317935:29535,15317940:29536,15317942:29537,15317943:29538,15317945:29539,15317947:29540,15317948:29541,15317949:29542,15318151:29543,15318152:29544,15178423:29545,15318165:29546,15318177:29547,15318188:29548,15318206:29549,15318410:29550,15318418:29551,15318420:29552,15318435:29553,15318431:29554,15318432:29555,15318433:29556,15318438:29557,15318439:29558,15318444:29559,15318442:29560,15318455:29561,15318450:29562,15318454:29563,15318677:29564,15318684:29565,15318688:29566,15048879:29729,15116167:29730,15303065:29731,15176100:29732,15042460:29733,15173273:29734,15186570:31009,15246492:31010,15306120:31011,15305352:31012,15242140:31013,14991241:31014,15172283:31015,15112369:31016,15115144:31017,15305657:31018,15113147:31019,15056261:31020,14989480:31021,14990241:31022,14990268:31023,14990464:31024,14990467:31025,14990521:31026,14990742:31027,14990994:31028,14990986:31029,14991002:31030,14990996:31031,14991245:31032,15040896:31033,15040674:31034,14991295:31035,15040670:31036,15040902:31037,15040944:31038,15040898:31039,15041172:31040,15041460:31041,15041432:31042,15041930:31043,15041956:31044,15042205:31045,15042238:31046,15042476:31047,15042709:31048,15043228:31049,15043238:31050,15043456:31051,15043483:31052,15043712:31053,15043719:31054,15043748:31055,15044018:31056,15044243:31057,15044274:31058,15044509:31059,15706254:31060,15045276:31061,15045258:31062,15045289:31063,15045567:31064,15046278:31065,15048089:31066,15048101:31067,15048364:31068,15048584:31069,15048583:31070,15706255:31071,15706256:31072,15049374:31073,15049394:31074,15049867:31075,15050131:31076,15050139:31077,15050141:31078,15050147:31079,15050404:31080,15050426:31081,15052182:31082,15052672:31083,15176879:31084,15052696:31085,15052716:31086,15052958:31087,15053478:31088,15053498:31089,15053749:31090,15053991:31091,15054227:31092,15706257:31093,15054210:31094,15054253:31095,15054520:31096,15054521:31097,15054736:31098,15056033:31099,15056052:31100,15056295:31101,15056567:31102,15056798:31265,15106461:31266,15106693:31267,15106698:31268,15106974:31269,15106965:31270,15107232:31271,15106994:31272,15107217:31273,15107255:31274,15107248:31275,15107736:31276,15108243:31277,15108774:31278,15110069:31279,15110560:31280,15110813:31281,15111054:31282,15111566:31283,15112320:31284,15112341:31285,15112379:31286,15112329:31287,15112366:31288,15112350:31289,15112356:31290,15112613:31291,15112599:31292,15112601:31293,15706258:31294,15112627:31295,15112857:31296,15112864:31297,15112882:31298,15112895:31299,15113146:31300,15113358:31301,15705257:31302,15113638:31303,15113915:31304,15114642:31305,15114112:31306,15114369:31307,15114628:31308,15115151:31309,15706259:31310,15115688:31311,15706260:31312,15115928:31313,15116194:31314,15116464:31315,15116715:31316,15116678:31317,15116723:31318,15116734:31319,15117218:31320,15117220:31321,15118230:31322,15118527:31323,15118748:31324,15118982:31325,15118767:31326,15119258:31327,15119492:31328,15120007:31329,15119791:31330,15120022:31331,15120044:31332,15120271:31333,15120312:31334,15120306:31335,15120316:31336,15120569:31337,15120796:31338,15120551:31339,15120572:31340,15121087:31341,15122056:31342,15122101:31343,15122357:31344,15171717:31345,15171719:31346,15171752:31347,15172229:31348,15172267:31349,15172751:31350,15172740:31351,15173020:31352,15172998:31353,15172999:31354,15706261:31355,15173505:31356,15173566:31357,15174321:31358,15174334:31521,15174820:31522,15706262:31523,15175095:31524,15175357:31525,15175561:31526,15175574:31527,15175587:31528,15175570:31529,15175815:31530,15175605:31531,15175846:31532,15175850:31533,15175849:31534,15175854:31535,15176098:31536,15176329:31537,15176351:31538,15176833:31539,15177135:31540,15178370:31541,15178396:31542,15178398:31543,15178395:31544,15178406:31545,15706263:31546,15179142:31547,15043247:31548,15179937:31549,15180174:31550,15180196:31551,15180218:31552,15180976:31553,15706264:31554,15706265:31555,15706266:31556,15181460:31557,15706267:31558,15181467:31559,15182737:31560,15182759:31561,15706268:31562,15182763:31563,15183518:31564,15706269:31565,15185288:31566,15185308:31567,15185591:31568,15185568:31569,15185814:31570,15186322:31571,15187335:31572,15187617:31573,15706270:31574,15240321:31575,15240610:31576,15240639:31577,15241095:31578,15241142:31579,15241608:31580,15241908:31581,15242643:31582,15242649:31583,15242667:31584,15706271:31585,15242928:31586,15706272:31587,15706273:31588,15245447:31589,15246261:31590,15247506:31591,15247543:31592,15247801:31593,15248039:31594,15248062:31595,15248287:31596,15706274:31597,15248310:31598,15248787:31599,15248831:31600,15250352:31601,15250356:31602,15250578:31603,15250870:31604,15706275:31605,15252367:31606,15706276:31607,15706277:31608,15303079:31609,15303582:31610,15706278:31611,15303829:31612,15303847:31613,15304602:31614,15304599:31777,15304606:31778,15304621:31779,15304622:31780,15304612:31781,15304613:31782,15304838:31783,15304848:31784,15304842:31785,15304890:31786,15305088:31787,15304892:31788,15305102:31789,15305113:31790,15305105:31791,15304889:31792,15305127:31793,15305383:31794,15305143:31795,15305144:31796,15305639:31797,15305623:31798,15305625:31799,15305616:31800,15706279:31801,15305621:31802,15305632:31803,15305619:31804,15305893:31805,15305889:31806,15305659:31807,15706280:31808,15305886:31809,15305663:31810,15305885:31811,15305858:31812,15306160:31813,15306135:31814,15306404:31815,15306630:31816,15306654:31817,15306680:31818,15306929:31819,15307141:31820,15307144:31821,15308434:31822,15706012:31823,15706281:31824,15309469:31825,15309487:31826,15310003:31827,15310011:31828,15310211:31829,15310221:31830,15310223:31831,15310225:31832,15310229:31833,15311255:31834,15311269:31835,15706282:31836,15706283:31837,15312039:31838,15706284:31839,15312542:31840,15313294:31841,15313817:31842,15313820:31843,15314357:31844,15314354:31845,15314575:31846,15314609:31847,15314619:31848,15315072:31849,15316400:31850,15316395:31851,15706285:31852,15317145:31853,15317905:31854,14845360:31857,14845361:31858,14845362:31859,14845363:31860,14845364:31861,14845365:31862,14845366:31863,14845367:31864,14845368:31865,14845369:31866,15712164:31868,15711367:31869,15711362:31870,14846117:8514,15712162:8780,14846098:74077}},5594:e=>{e.exports={52120:8751,52103:8752,49848:8753,52121:8754,52125:8755,49839:8756,52123:8757,52122:8758,126:8759,52868:8760,52869:8761,49825:8770,49830:8771,49855:8772,49850:8811,49834:8812,49833:8813,49838:8814,14845090:8815,49828:8816,14845078:8817,52870:9825,52872:9826,52873:9827,52874:9828,52906:9829,52876:9831,52878:9833,52907:9834,52879:9836,52908:9841,52909:9842,52910:9843,52911:9844,53130:9845,52880:9846,53132:9847,53122:9848,53133:9849,53131:9850,52912:9851,53134:9852,53378:10050,53379:10051,53380:10052,53381:10053,53382:10054,53383:10055,53384:10056,53385:10057,53386:10058,53387:10059,53388:10060,53390:10061,53391:10062,53650:10098,53651:10099,53652:10100,53653:10101,53654:10102,53655:10103,53656:10104,53657:10105,53658:10106,53659:10107,53660:10108,53662:10109,53663:10110,50054:10529,50320:10530,50342:10532,50354:10534,50561:10536,50367:10537,50570:10539,50072:10540,50578:10541,50598:10543,50078:10544,50086:10561,50321:10562,50096:10563,50343:10564,50353:10565,50355:10566,50360:10567,50562:10568,50560:10569,50569:10570,50571:10571,50104:10572,50579:10573,50079:10574,50599:10575,50110:10576,50049:10785,50048:10786,50052:10787,50050:10788,50306:10789,51085:10790,50304:10791,50308:10792,50053:10793,50051:10794,50310:10795,50312:10796,50316:10797,50055:10798,50314:10799,50318:10800,50057:10801,50056:10802,50059:10803,50058:10804,50330:10805,50326:10806,50322:10807,50328:10808,50332:10810,50334:10811,50338:10812,50336:10813,50340:10814,50061:10815,50060:10816,50063:10817,50062:10818,51087:10819,50352:10820,50346:10821,50350:10822,50344:10823,50356:10824,50358:10825,50361:10826,50365:10827,50363:10828,50563:10829,50567:10830,50565:10831,50065:10832,50067:10833,50066:10834,50070:10835,50068:10836,51089:10837,50576:10838,50572:10839,50069:10840,50580:10841,50584:10842,50582:10843,50586:10844,50588:10845,50592:10846,50590:10847,50596:10848,50594:10849,50074:10850,50073:10851,50076:10852,50075:10853,50604:10854,51091:10855,50608:10856,50602:10857,50610:10858,50606:10859,50600:10860,51095:10861,51099:10862,51097:10863,51093:10864,50612:10865,50077:10866,50616:10867,50614:10868,50617:10869,50621:10870,50619:10871,50081:11041,50080:11042,50084:11043,50082:11044,50307:11045,51086:11046,50305:11047,50309:11048,50085:11049,50083:11050,50311:11051,50313:11052,50317:11053,50087:11054,50315:11055,50319:11056,50089:11057,50088:11058,50091:11059,50090:11060,50331:11061,50327:11062,50323:11063,50329:11064,51125:11065,50333:11066,50335:11067,50337:11069,50341:11070,50093:11071,50092:11072,50095:11073,50094:11074,51088:11075,50347:11077,50351:11078,50345:11079,50357:11080,50359:11081,50362:11082,50366:11083,50364:11084,50564:11085,50568:11086,50566:11087,50097:11088,50099:11089,50098:11090,50102:11091,50100:11092,51090:11093,50577:11094,50573:11095,50101:11096,50581:11097,50585:11098,50583:11099,50587:11100,50589:11101,50593:11102,50591:11103,50597:11104,50595:11105,50106:11106,50105:11107,50108:11108,50107:11109,50605:11110,51092:11111,50609:11112,50603:11113,50611:11114,50607:11115,50601:11116,51096:11117,51100:11118,51098:11119,51094:11120,50613:11121,50109:11122,50111:11123,50615:11124,50618:11125,50622:11126,50620:11127,14989442:12321,14989444:12322,14989445:12323,14989452:12324,14989458:12325,14989471:12326,14989475:12327,14989476:12328,14989480:12329,14989483:12330,14989486:12331,14989487:12332,14989488:12333,14989493:12334,14989696:12335,14989697:12336,14989700:12337,14989703:12338,14989713:12339,14989722:12340,14989724:12341,14989731:12342,14989736:12343,14989737:12344,14989748:12345,14989749:12346,14989753:12347,14989759:12348,14989965:12349,14989974:12350,14989975:12351,14989981:12352,14989999:12353,14990009:12354,14990211:12355,14990224:12356,14990234:12357,14990235:12358,14990240:12359,14990241:12360,14990242:12361,14990248:12362,14990255:12363,14990257:12364,14990259:12365,14990261:12366,14990269:12367,14990270:12368,14990271:12369,14990464:12370,14990466:12371,14990467:12372,14990472:12373,14990475:12374,14990476:12375,14990482:12376,14990485:12377,14990486:12378,14990487:12379,14990489:12380,14990510:12381,14990513:12382,14990752:12383,14990515:12384,14990517:12385,14990519:12386,14990521:12387,14990523:12388,14990526:12389,14990720:12390,14990722:12391,14990728:12392,14990729:12393,14990731:12394,14990732:12395,14990738:12396,14990740:12397,14990742:12398,14990744:12399,14990751:12400,14990755:12401,14990762:12402,14990764:12403,14990766:12404,14990769:12405,14990775:12406,14990776:12407,14990777:12408,14990778:12409,14990781:12410,14990782:12411,14990977:12412,14990978:12413,14990980:12414,14990981:12577,14990985:12578,14990986:12579,14990988:12580,14990990:12581,14990992:12582,14990994:12583,14990995:12584,14990996:12585,14990999:12586,14991001:12587,14991002:12588,14991006:12589,14991007:12590,14991026:12591,14991031:12592,14991033:12593,14991035:12594,14991036:12595,14991037:12596,14991038:12597,14991232:12598,14991233:12599,14991237:12600,14991238:12601,14991240:12602,14991241:12603,14991243:12604,14991244:12605,14991245:12606,14991247:12607,14991250:12608,14991260:12609,14991264:12610,14991266:12611,14991280:12612,14991282:12613,14991292:12614,14991293:12615,14991295:12616,15040640:12617,15040641:12618,15040644:12619,15040647:12620,15040650:12621,15040652:12622,15040654:12623,15040656:12624,15040659:12625,15040663:12626,15040664:12627,15040667:12628,15040668:12629,15040669:12630,15040670:12631,15040674:12632,15040679:12633,15040686:12634,15040688:12635,15040690:12636,15040691:12637,15040693:12638,15040896:12639,15040897:12640,15040898:12641,15040901:12642,15040902:12643,15040906:12644,15040908:12645,15040910:12646,15040913:12647,15040914:12648,15040915:12649,15040919:12650,15040921:12651,15040927:12652,15040928:12653,15040930:12654,15040931:12655,15040934:12656,15040935:12657,15040938:12658,15040941:12659,15040944:12660,15040945:12661,15040699:12662,15041153:12663,15041155:12664,15041156:12665,15041158:12666,15041162:12667,15041166:12668,15041167:12669,15041168:12670,15041170:12833,15041171:12834,15041172:12835,15041174:12836,15041179:12837,15041180:12838,15041182:12839,15041183:12840,15041184:12841,15041185:12842,15041186:12843,15041194:12844,15041199:12845,15041200:12846,15041209:12847,15041210:12848,15041213:12849,15041408:12850,15041411:12851,15041412:12852,15041415:12853,15041420:12854,15041422:12855,15041424:12856,15041427:12857,15041428:12858,15041432:12859,15041436:12860,15041437:12861,15041439:12862,15041442:12863,15041444:12864,15041446:12865,15041448:12866,15041449:12867,15041455:12868,15041457:12869,15041462:12870,15041466:12871,15041470:12872,15041667:12873,15041670:12874,15041671:12875,15041672:12876,15041675:12877,15041676:12878,15041677:12879,15041678:12880,15041458:12881,15041680:12882,15041687:12883,15041689:12884,15041691:12885,15041692:12886,15041693:12887,15041694:12888,15041699:12889,15041703:12890,15041704:12891,15041708:12892,15041709:12893,15041711:12894,15041713:12895,15041715:12896,15041716:12897,15041717:12898,15041720:12899,15041721:12900,15041922:12901,15041930:12902,15041935:12903,15041939:12904,15041941:12905,15041943:12906,15041944:12907,15041951:12908,15041956:12909,15041958:12910,15041982:12911,15042179:12912,15042180:12913,15042187:12914,15042190:12915,15042200:12916,15042205:12917,15042209:12918,15042211:12919,15042221:12920,15042232:12921,15042234:12922,15042236:12923,15042238:12924,15042239:12925,15042434:12926,15042440:13089,15042447:13090,15042449:13091,15042450:13092,15042451:13093,15042453:13094,15042456:13095,15042462:13096,15042466:13097,15042469:13098,15042478:13099,15042482:13100,15042483:13101,15042484:13102,15042487:13103,15042689:13104,15042690:13105,15042693:13106,15042706:13107,15042707:13108,15042709:13109,15042710:13110,15042712:13111,15042722:13112,15042728:13113,15042737:13114,15042738:13115,15042741:13116,15042748:13117,15042949:13118,15042953:13119,15042965:13120,15042967:13121,15042968:13122,15042970:13123,15042972:13124,15042975:13125,15042976:13126,15042977:13127,15042982:13128,15042990:13129,15042999:13130,15043e3:13131,15043001:13132,15043200:13133,15043202:13134,15043205:13135,15043210:13136,15043212:13137,15043219:13138,15043221:13139,15043222:13140,15043223:13141,15043224:13142,15043226:13143,15043228:13144,15043236:13145,15043237:13146,15043238:13147,15043239:13148,15043247:13149,15043248:13150,15043254:13151,15043255:13152,15043256:13153,15043258:13154,15043259:13155,15043261:13156,15043456:13157,15043460:13158,15043462:13159,15043464:13160,15043468:13161,15043471:13162,15043473:13163,15043476:13164,15043478:13165,15043483:13166,15043484:13167,15043489:13168,15043493:13169,15043496:13170,15043497:13171,15043498:13172,15043500:13173,15043504:13174,15043505:13175,15043508:13176,15043510:13177,15043511:13178,15043712:13179,15043715:13180,15043722:13181,15043723:13182,15043724:13345,15043729:13346,15043731:13347,15043736:13348,15043739:13349,15043740:13350,15043742:13351,15043743:13352,15043749:13353,15043751:13354,15043752:13355,15043753:13356,15043755:13357,15043756:13358,15043757:13359,15043760:13360,15043762:13361,15043765:13362,15043772:13363,15043773:13364,15043774:13365,15043970:13366,15043980:13367,15043979:13368,15043993:13369,15043995:13370,15044001:13371,15044003:13372,15044005:13373,15044012:13374,15044013:13375,15044018:13376,15044025:13377,15044030:13378,15044227:13379,15044231:13380,15044232:13381,15044238:13382,15044243:13383,15044244:13384,15044249:13385,15044253:13386,15044257:13387,15044260:13388,15044266:13389,15044267:13390,15044271:13391,15044274:13392,15044276:13393,15044277:13394,15044279:13395,15044280:13396,15044282:13397,15044285:13398,15044480:13399,15044485:13400,15044495:13401,15044498:13402,15044499:13403,15044501:13404,15044506:13405,15044509:13406,15044510:13407,15044512:13408,15044518:13409,15044519:13410,15044533:13411,15044738:13412,15044755:13413,15044762:13414,15044769:13415,15044775:13416,15044776:13417,15044778:13418,15044783:13419,15044785:13420,15044788:13421,15044789:13422,15044995:13423,15044996:13424,15044999:13425,15045005:13426,15045007:13427,15045022:13428,15045026:13429,15045028:13430,15045030:13431,15045031:13432,15045033:13433,15045035:13434,15045037:13435,15045038:13436,15045044:13437,15045055:13438,15045249:13601,15045251:13602,15045253:13603,15045256:13604,15045257:13605,15045261:13606,15045265:13607,15045269:13608,15045270:13609,15045276:13610,15045279:13611,15045281:13612,15045286:13613,15045287:13614,15045289:13615,15045290:13616,15045293:13617,15045294:13618,15045297:13619,15045303:13620,15045305:13621,15045306:13622,15045307:13623,15045311:13624,15045510:13625,15045514:13626,15045517:13627,15045518:13628,15045536:13629,15045546:13630,15045548:13631,15045551:13632,15045558:13633,15045564:13634,15045566:13635,15045567:13636,15045760:13637,15045761:13638,15045765:13639,15045768:13640,15045769:13641,15045772:13642,15045773:13643,15045774:13644,15045781:13645,15045802:13646,15045803:13647,15045810:13648,15045813:13649,15045814:13650,15045819:13651,15045820:13652,15045821:13653,15046017:13654,15046023:13655,15046025:13656,15046026:13657,15046029:13658,15046032:13659,15046033:13660,15046040:13661,15046042:13662,15046043:13663,15046046:13664,15046048:13665,15046049:13666,15046052:13667,15046054:13668,15046079:13669,15046273:13670,15046274:13671,15046278:13672,15046280:13673,15046286:13674,15046287:13675,15046289:13676,15046290:13677,15046291:13678,15046292:13679,15046295:13680,15046307:13681,15046308:13682,15046317:13683,15046322:13684,15046335:13685,15046529:13686,15046531:13687,15046534:13688,15046537:13689,15046539:13690,15046540:13691,15046542:13692,15046545:13693,15046546:13694,15046547:13857,15046551:13858,15046552:13859,15046555:13860,15046558:13861,15046562:13862,15046569:13863,15046582:13864,15046591:13865,15046789:13866,15046792:13867,15046794:13868,15046797:13869,15046798:13870,15046799:13871,15046800:13872,15046801:13873,15046802:13874,15046809:13875,15046828:13876,15046832:13877,15046835:13878,15046837:13879,15046839:13880,15046841:13881,15046843:13882,15046844:13883,15046845:13884,15046847:13885,15047040:13886,15047041:13887,15047043:13888,15047044:13889,15047046:13890,15047049:13891,15047051:13892,15047053:13893,15047055:13894,15047060:13895,15047070:13896,15047072:13897,15047073:13898,15047074:13899,15047075:13900,15047078:13901,15047081:13902,15047085:13903,15047087:13904,15047089:13905,15047090:13906,15047093:13907,15047300:13908,15047301:13909,15047304:13910,15047307:13911,15047308:13912,15047317:13913,15047321:13914,15047322:13915,15047325:13916,15047326:13917,15047327:13918,15047334:13919,15047335:13920,15047336:13921,15047337:13922,15047339:13923,15047340:13924,15047341:13925,15047345:13926,15047347:13927,15047351:13928,15047358:13929,15047557:13930,15047561:13931,15047562:13932,15047563:13933,15047567:13934,15047568:13935,15047564:13936,15047565:13937,15047577:13938,15047580:13939,15047581:13940,15047583:13941,15047585:13942,15047588:13943,15047589:13944,15047590:13945,15047591:13946,15047592:13947,15047601:13948,15047595:13949,15047597:13950,15047606:14113,15047607:14114,15047809:14115,15047810:14116,15047815:14117,15047818:14118,15047820:14119,15047825:14120,15047829:14121,15047834:14122,15047835:14123,15047837:14124,15047840:14125,15047842:14126,15047843:14127,15047844:14128,15047845:14129,15047849:14130,15047850:14131,15047852:14132,15047854:14133,15047855:14134,15047859:14135,15047860:14136,15047869:14137,15047870:14138,15047871:14139,15048069:14140,15048070:14141,15048076:14142,15048077:14143,15048082:14144,15048098:14145,15048101:14146,15048103:14147,15048104:14148,15048107:14149,15048109:14150,15048110:14151,15048111:14152,15048112:14153,15048113:14154,15048115:14155,15048116:14156,15048117:14157,15048119:14158,15048121:14159,15048122:14160,15048123:14161,15048124:14162,15048126:14163,15048321:14164,15048323:14165,15048332:14166,15048340:14167,15048343:14168,15048345:14169,15048346:14170,15048348:14171,15048349:14172,15048350:14173,15048351:14174,15048353:14175,15048341:14176,15048359:14177,15048360:14178,15048361:14179,15048364:14180,15048376:14181,15048381:14182,15048583:14183,15048584:14184,15048588:14185,15048591:14186,15048597:14187,15048605:14188,15048606:14189,15048612:14190,15048614:14191,15048615:14192,15048617:14193,15048621:14194,15048624:14195,15048629:14196,15048630:14197,15048632:14198,15048637:14199,15048638:14200,15048639:14201,15048835:14202,15048836:14203,15048840:14204,15048841:14205,15048609:14206,15048844:14369,15048845:14370,15048859:14371,15048862:14372,15048863:14373,15048864:14374,15048870:14375,15048871:14376,15048877:14377,15048882:14378,15048889:14379,15048895:14380,15049097:14381,15049100:14382,15049101:14383,15049103:14384,15049104:14385,15049109:14386,15049119:14387,15049121:14388,15049124:14389,15049127:14390,15049128:14391,15049144:14392,15049148:14393,15049151:14394,15049344:14395,15049345:14396,15049351:14397,15049352:14398,15049353:14399,15049354:14400,15049356:14401,15049357:14402,15049359:14403,15049360:14404,15049364:14405,15049366:14406,15049373:14407,15049376:14408,15049377:14409,15049378:14410,15049382:14411,15049385:14412,15049393:14413,15049394:14414,15049604:14415,15049404:14416,15049602:14417,15049608:14418,15049613:14419,15049614:14420,15049616:14421,15049618:14422,15049620:14423,15049622:14424,15049626:14425,15049629:14426,15049633:14427,15049634:14428,15049641:14429,15049651:14430,15049861:14431,15049862:14432,15049867:14433,15049868:14434,15049874:14435,15049875:14436,15049876:14437,15243649:14438,15049885:14439,15049889:14440,15049891:14441,15049892:14442,15049896:14443,15049903:14444,15049904:14445,15049907:14446,15049909:14447,15049910:14448,15049919:14449,15050115:14450,15050118:14451,15050130:14452,15050131:14453,15050137:14454,15050139:14455,15050141:14456,15050142:14457,15050143:14458,15050145:14459,15050147:14460,15050155:14461,15050157:14462,15050159:14625,15050162:14626,15050165:14627,15050166:14628,15050169:14629,15050171:14630,15050172:14631,15050379:14632,15050380:14633,15050382:14634,15050386:14635,15050389:14636,15050391:14637,15050399:14638,15050404:14639,15050407:14640,15050413:14641,15050414:14642,15050415:14643,15050416:14644,15050419:14645,15050423:14646,15050426:14647,15050428:14648,15050625:14649,15050627:14650,15050628:14651,15050632:14652,15050634:14653,15050637:14654,15050642:14655,15050653:14656,15050654:14657,15050655:14658,15050659:14659,15050660:14660,15050663:14661,15050670:14662,15050671:14663,15050673:14664,15050674:14665,15050676:14666,15050679:14667,15050880:14668,15050884:14669,15050892:14670,15050893:14671,15050894:14672,15050898:14673,15050899:14674,15050910:14675,15050915:14676,15050916:14677,15050919:14678,15050920:14679,15050922:14680,15050925:14681,15050928:14682,15051140:14683,15051141:14684,15051143:14685,15051144:14686,15051148:14687,15051152:14688,15051157:14689,15051166:14690,15051171:14691,15051173:14692,15051175:14693,15051181:14694,15051191:14695,15051194:14696,15051195:14697,15051198:14698,15051403:14699,15051408:14700,15051411:14701,15051414:14702,15051417:14703,15051420:14704,15051422:14705,15051423:14706,15051424:14707,15051426:14708,15051431:14709,15051436:14710,15051441:14711,15051442:14712,15051443:14713,15051445:14714,15051448:14715,15051450:14716,15051451:14717,15051455:14718,15051652:14881,15051654:14882,15051656:14883,15051663:14884,15051674:14885,15051676:14886,15051680:14887,15051685:14888,15051690:14889,15051694:14890,15051701:14891,15051702:14892,15051709:14893,15051904:14894,15051905:14895,15051912:14896,15051927:14897,15051956:14898,15051929:14899,15051931:14900,15051933:14901,15051937:14902,15051941:14903,15051949:14904,15051960:14905,15052161:14906,15052171:14907,15052172:14908,15052178:14909,15052182:14910,15052190:14911,15052200:14912,15052206:14913,15052207:14914,15052220:14915,15052221:14916,15052222:14917,15052223:14918,15052417:14919,15052420:14920,15052422:14921,15052426:14922,15052430:14923,15052432:14924,15052433:14925,15052435:14926,15052436:14927,15052438:14928,15052456:14929,15052457:14930,15052460:14931,15052461:14932,15052463:14933,15052465:14934,15052466:14935,15052471:14936,15052474:14937,15052476:14938,15052672:14939,15052673:14940,15052685:14941,15052687:14942,15052694:14943,15052695:14944,15052696:14945,15052697:14946,15052698:14947,15052704:14948,15052719:14949,15052721:14950,15052724:14951,15052733:14952,15052940:14953,15052951:14954,15052958:14955,15052959:14956,15052963:14957,15052966:14958,15052969:14959,15052971:14960,15052972:14961,15052974:14962,15052976:14963,15052978:14964,15052981:14965,15052982:14966,15053209:14967,15053210:14968,15053212:14969,15053218:14970,15053219:14971,15053223:14972,15053224:14973,15053225:14974,15053229:15137,15053232:15138,15053236:15139,15053237:15140,15053242:15141,15053243:15142,15053244:15143,15053245:15144,15053447:15145,15053448:15146,15053450:15147,15053455:15148,15053458:15149,15053469:15150,15053471:15151,15053472:15152,15053474:15153,15053475:15154,15053478:15155,15053482:15156,15053490:15157,15053492:15158,15053493:15159,15053498:15160,15053705:15161,15053707:15162,15053714:15163,15053725:15164,15053719:15165,15053742:15166,15053745:15167,15053746:15168,15053748:15169,15053953:15170,15053958:15171,15053965:15172,15053970:15173,15053995:15174,15053987:15175,15053988:15176,15053990:15177,15053991:15178,15054001:15179,15054004:15180,15054009:15181,15054013:15182,15054015:15183,15054210:15184,15054211:15185,15054214:15186,15054216:15187,15054229:15188,15054225:15189,15054233:15190,15054218:15191,15054239:15192,15054240:15193,15054241:15194,15054242:15195,15054244:15196,15054250:15197,15054253:15198,15054256:15199,15054265:15200,15054266:15201,15054270:15202,15054271:15203,15054465:15204,15054467:15205,15054472:15206,15054474:15207,15054482:15208,15054483:15209,15054484:15210,15054485:15211,15054489:15212,15054491:15213,15054495:15214,15054496:15215,15054503:15216,15054507:15217,15054512:15218,15054516:15219,15054520:15220,15054521:15221,15054723:15222,15054727:15223,15054731:15224,15054736:15225,15054734:15226,15054744:15227,15054745:15228,15054752:15229,15054756:15230,15054761:15393,15054776:15394,15054777:15395,15054976:15396,15054983:15397,15054989:15398,15054994:15399,15054996:15400,15054997:15401,15055e3:15402,15055007:15403,15055008:15404,15055022:15405,15055016:15406,15055026:15407,15055029:15408,15055038:15409,15055243:15410,15055248:15411,15055241:15412,15055249:15413,15055254:15414,15055256:15415,15055259:15416,15055260:15417,15055262:15418,15055272:15419,15055274:15420,15055275:15421,15055276:15422,15055277:15423,15055278:15424,15055280:15425,15055488:15426,15055499:15427,15055502:15428,15055522:15429,15055524:15430,15055525:15431,15055528:15432,15055530:15433,15055532:15434,15055537:15435,15055539:15436,15055549:15437,15055550:15438,15055551:15439,15055750:15440,15055756:15441,15055755:15442,15055758:15443,15055761:15444,15055762:15445,15055764:15446,15055765:15447,15055772:15448,15055774:15449,15055781:15450,15055787:15451,15056002:15452,15056006:15453,15056007:15454,15056008:15455,15056014:15456,15056025:15457,15056028:15458,15056029:15459,15056033:15460,15056034:15461,15056035:15462,15056036:15463,15056040:15464,15056043:15465,15056044:15466,15056046:15467,15056048:15468,15056052:15469,15056054:15470,15056059:15471,15056061:15472,15056063:15473,15056256:15474,15056260:15475,15056261:15476,15056263:15477,15056269:15478,15056272:15479,15056276:15480,15056280:15481,15056283:15482,15056288:15483,15056291:15484,15056292:15485,15056295:15486,15056303:15649,15056306:15650,15056308:15651,15056309:15652,15056312:15653,15056314:15654,15056317:15655,15056318:15656,15056521:15657,15056525:15658,15056527:15659,15056534:15660,15056540:15661,15056541:15662,15056546:15663,15056551:15664,15056555:15665,15056548:15666,15056556:15667,15056559:15668,15056560:15669,15056561:15670,15056568:15671,15056772:15672,15056775:15673,15056776:15674,15056777:15675,15056779:15676,15056784:15677,15056785:15678,15056786:15679,15056787:15680,15056788:15681,15056798:15682,15056801:15683,15056802:15684,15056808:15685,15056809:15686,15056810:15687,15056812:15688,15056813:15689,15056814:15690,15056815:15691,15056818:15692,15056819:15693,15056822:15694,15056826:15695,15056828:15696,15106183:15697,15106186:15698,15106189:15699,15106195:15700,15106196:15701,15106199:15702,15106200:15703,15106202:15704,15106207:15705,15106212:15706,15106221:15707,15106227:15708,15106229:15709,15106432:15710,15106439:15711,15106440:15712,15106441:15713,15106444:15714,15106449:15715,15106452:15716,15106454:15717,15106455:15718,15106461:15719,15106465:15720,15106471:15721,15106481:15722,15106494:15723,15106495:15724,15106690:15725,15106694:15726,15106696:15727,15106698:15728,15106702:15729,15106705:15730,15106707:15731,15106709:15732,15106712:15733,15106717:15734,15106718:15735,15106722:15736,15106724:15737,15106725:15738,15106728:15739,15106736:15740,15106737:15741,15106743:15742,15106747:15905,15106750:15906,15106946:15907,15106948:15908,15106952:15909,15106953:15910,15106954:15911,15106955:15912,15106958:15913,15106959:15914,15106964:15915,15106965:15916,15106969:15917,15106971:15918,15106973:15919,15106974:15920,15106978:15921,15106981:15922,15106994:15923,15106997:15924,15107e3:15925,15107004:15926,15107005:15927,15107202:15928,15107207:15929,15107210:15930,15107212:15931,15107216:15932,15107217:15933,15107218:15934,15107219:15935,15107220:15936,15107222:15937,15107223:15938,15107225:15939,15107228:15940,15107230:15941,15107234:15942,15107242:15943,15107243:15944,15107248:15945,15107249:15946,15107253:15947,15107254:15948,15107255:15949,15107257:15950,15107457:15951,15107461:15952,15107462:15953,15107465:15954,15107486:15955,15107488:15956,15107500:15957,15107506:15958,15107512:15959,15107515:15960,15107516:15961,15107519:15962,15107712:15963,15107713:15964,15107715:15965,15107716:15966,15107723:15967,15107725:15968,15107730:15969,15107731:15970,15107735:15971,15107736:15972,15107740:15973,15107741:15974,15107743:15975,15107744:15976,15107749:15977,15107752:15978,15107754:15979,15107757:15980,15107768:15981,15107769:15982,15107772:15983,15107968:15984,15107969:15985,15107970:15986,15107982:15987,15107983:15988,15107989:15989,15107996:15990,15107997:15991,15107998:15992,15107999:15993,15108001:15994,15108002:15995,15108007:15996,15108009:15997,15108005:15998,15108012:16161,15108013:16162,15108015:16163,15108225:16164,15108227:16165,15108228:16166,15108231:16167,15108243:16168,15108245:16169,15108252:16170,15108256:16171,15108258:16172,15108259:16173,15108263:16174,15108265:16175,15108267:16176,15108281:16177,15108285:16178,15108482:16179,15108483:16180,15108484:16181,15108486:16182,15108492:16183,15108496:16184,15108497:16185,15108498:16186,15108500:16187,15108502:16188,15108506:16189,15108508:16190,15108516:16191,15108525:16192,15108527:16193,15108531:16194,15108538:16195,15108541:16196,15108749:16197,15108750:16198,15108751:16199,15108752:16200,15108774:16201,15108776:16202,15108787:16203,15108790:16204,15108791:16205,15108794:16206,15108798:16207,15108799:16208,15108996:16209,15109006:16210,15109013:16211,15109014:16212,15109018:16213,15109034:16214,15109042:16215,15109044:16216,15109052:16217,15109053:16218,15109251:16219,15109252:16220,15109258:16221,15109259:16222,15109261:16223,15109264:16224,15109267:16225,15109270:16226,15109272:16227,15109289:16228,15109290:16229,15109293:16230,15109301:16231,15109302:16232,15109305:16233,15109308:16234,15109505:16235,15109506:16236,15109507:16237,15109508:16238,15109510:16239,15109514:16240,15109515:16241,15109518:16242,15109522:16243,15109523:16244,15109524:16245,15109528:16246,15109531:16247,15109541:16248,15109542:16249,15109548:16250,15109549:16251,15109553:16252,15109556:16253,15109557:16254,15109560:16417,15109564:16418,15109565:16419,15109567:16420,15109762:16421,15109764:16422,15109767:16423,15109770:16424,15109776:16425,15109780:16426,15109781:16427,15109785:16428,15109786:16429,15109790:16430,15109796:16431,15109798:16432,15109805:16433,15109806:16434,15109807:16435,15109821:16436,15110017:16437,15110021:16438,15110024:16439,15110030:16440,15110033:16441,15110035:16442,15110036:16443,15110037:16444,15110044:16445,15110048:16446,15110053:16447,15110058:16448,15110060:16449,15110066:16450,15110067:16451,15110069:16452,15110072:16453,15110073:16454,15110281:16455,15110282:16456,15110288:16457,15110290:16458,15110292:16459,15110296:16460,15110302:16461,15110304:16462,15110306:16463,15110308:16464,15110309:16465,15110313:16466,15110314:16467,15110319:16468,15110320:16469,15110325:16470,15110333:16471,15110335:16472,15110539:16473,15110543:16474,15110545:16475,15110546:16476,15110547:16477,15110548:16478,15110554:16479,15110555:16480,15110556:16481,15110557:16482,15110559:16483,15110560:16484,15110561:16485,15110563:16486,15110573:16487,15110579:16488,15110580:16489,15110587:16490,15110589:16491,15110789:16492,15110791:16493,15110799:16494,15110800:16495,15110801:16496,15110808:16497,15110809:16498,15110811:16499,15110813:16500,15110815:16501,15110817:16502,15110819:16503,15110822:16504,15110824:16505,15110828:16506,15110835:16507,15110845:16508,15110846:16509,15110847:16510,15111044:16673,15111049:16674,15111050:16675,15111051:16676,15111052:16677,15111054:16678,15111056:16679,15111057:16680,15111061:16681,15111063:16682,15111076:16683,15111077:16684,15111081:16685,15111082:16686,15111085:16687,15111088:16688,15111093:16689,15111095:16690,15111099:16691,15111103:16692,15111297:16693,15111300:16694,15111304:16695,15111305:16696,15111306:16697,15111311:16698,15111315:16699,15111316:16700,15111318:16701,15111321:16702,15111323:16703,15111326:16704,15111327:16705,15111330:16706,15111334:16707,15111337:16708,15111342:16709,15111345:16710,15111354:16711,15111356:16712,15111357:16713,15111555:16714,15111559:16715,15111561:16716,15111568:16717,15111570:16718,15111572:16719,15111583:16720,15111584:16721,15111591:16722,15111595:16723,15111610:16724,15111613:16725,15111809:16726,15111813:16727,15111818:16728,15111826:16729,15111829:16730,15111832:16731,15111837:16732,15111840:16733,15111843:16734,15111846:16735,15111854:16736,15111858:16737,15111859:16738,15111860:16739,15111871:16740,15112066:16741,15112072:16742,15112073:16743,15112078:16744,15112080:16745,15112084:16746,15112086:16747,15112088:16748,15112095:16749,15112112:16750,15112114:16751,15112116:16752,15112117:16753,15112121:16754,15112126:16755,15112127:16756,15112320:16757,15112324:16758,15112328:16759,15112329:16760,15112333:16761,15112337:16762,15112338:16763,15112341:16764,15112342:16765,15112349:16766,15112350:16929,15112353:16930,15112354:16931,15112355:16932,15112356:16933,15112358:16934,15112361:16935,15112362:16936,15112363:16937,15112364:16938,15112366:16939,15112368:16940,15112369:16941,15112371:16942,15112377:16943,15112375:16944,15112576:16945,15112581:16946,15112582:16947,15112586:16948,15112588:16949,15112593:16950,15112590:16951,15112599:16952,15112600:16953,15112601:16954,15112603:16955,15112604:16956,15112608:16957,15112609:16958,15113147:16959,15112618:16960,15112619:16961,15112620:16962,15112638:16963,15112627:16964,15112629:16965,15112639:16966,15112631:16967,15112632:16968,15112633:16969,15112635:16970,15112832:16971,15112636:16972,15112843:16973,15112844:16974,15112845:16975,15112848:16976,15112850:16977,15112857:16978,15112858:16979,15112859:16980,15112860:16981,15112863:16982,15112864:16983,15112868:16984,15112877:16985,15112881:16986,15112882:16987,15112885:16988,15112891:16989,15112895:16990,15113088:16991,15113090:16992,15113091:16993,15113096:16994,15113100:16995,15113102:16996,15113103:16997,15113108:16998,15113115:16999,15113119:17e3,15113128:17001,15113131:17002,15113132:17003,15113134:17004,15113146:17005,15113349:17006,15113351:17007,15113358:17008,15113363:17009,15113369:17010,15113372:17011,15113376:17012,15113378:17013,15113395:17014,15113406:17015,15113605:17016,15113607:17017,15113608:17018,15113612:17019,15113620:17020,15113621:17021,15113629:17022,15113638:17185,15113644:17186,15113646:17187,15113652:17188,15113654:17189,15113659:17190,15113857:17191,15113860:17192,15113870:17193,15113871:17194,15113873:17195,15113875:17196,15113878:17197,15113880:17198,15113881:17199,15113883:17200,15113904:17201,15113905:17202,15113906:17203,15113909:17204,15113915:17205,15113916:17206,15113917:17207,15114169:17208,15114112:17209,15114114:17210,15114115:17211,15114117:17212,15114120:17213,15114121:17214,15114130:17215,15114135:17216,15114137:17217,15114140:17218,15114145:17219,15114150:17220,15114160:17221,15114162:17222,15114166:17223,15114167:17224,15114642:17225,15114388:17226,15114393:17227,15114397:17228,15114399:17229,15114408:17230,15114407:17231,15114412:17232,15114413:17233,15114415:17234,15114416:17235,15114417:17236,15114419:17237,15114427:17238,15114431:17239,15114628:17240,15114629:17241,15114634:17242,15114636:17243,15114645:17244,15114647:17245,15114648:17246,15114651:17247,15114667:17248,15114670:17249,15114671:17250,15114672:17251,15114673:17252,15114674:17253,15114677:17254,15114681:17255,15114682:17256,15114683:17257,15114684:17258,15114882:17259,15114884:17260,15114886:17261,15114888:17262,15114902:17263,15114904:17264,15114906:17265,15114908:17266,15114913:17267,15114915:17268,15114917:17269,15114921:17270,15114922:17271,15114926:17272,15114930:17273,15114939:17274,15115141:17275,15115144:17276,15115148:17277,15115151:17278,15115152:17441,15115153:17442,15115155:17443,15115158:17444,15115161:17445,15115164:17446,15115165:17447,15115173:17448,15115176:17449,15115178:17450,15115179:17451,15115180:17452,15115181:17453,15115184:17454,15115185:17455,15115189:17456,15115190:17457,15115195:17458,15115196:17459,15115197:17460,15115398:17461,15115401:17462,15115402:17463,15115408:17464,15115409:17465,15115411:17466,15115414:17467,15115415:17468,15115441:17469,15115443:17470,15115445:17471,15115448:17472,15115451:17473,15115650:17474,15115653:17475,15115657:17476,15115662:17477,15115671:17478,15115675:17479,15115683:17480,15115684:17481,15115685:17482,15115686:17483,15115688:17484,15115689:17485,15115692:17486,15115696:17487,15115697:17488,15115698:17489,15115706:17490,15115707:17491,15115711:17492,15115904:17493,15115917:17494,15115922:17495,15115926:17496,15115928:17497,15115937:17498,15115941:17499,15115942:17500,15115944:17501,15115947:17502,15115949:17503,15115951:17504,15115959:17505,15115960:17506,15115962:17507,15115964:17508,15116165:17509,15116168:17510,15116177:17511,15116182:17512,15116183:17513,15116194:17514,15116197:17515,15116206:17516,15116207:17517,15116209:17518,15116211:17519,15116213:17520,15116222:17521,15116416:17522,15116417:17523,15116419:17524,15116431:17525,15116433:17526,15116437:17527,15116442:17528,15116445:17529,15116448:17530,15116452:17531,15116456:17532,15116464:17533,15116466:17534,15116468:17697,15116471:17698,15116475:17699,15116478:17700,15116479:17701,15116677:17702,15116678:17703,15116681:17704,15116682:17705,15116686:17706,15116688:17707,15116689:17708,15116690:17709,15116693:17710,15116694:17711,15116699:17712,15116708:17713,15116711:17714,15116714:17715,15116721:17716,15116723:17717,15116734:17718,15116929:17719,15116931:17720,15116934:17721,15116935:17722,15116937:17723,15116939:17724,15116945:17725,15116955:17726,15116957:17727,15116958:17728,15116959:17729,15116965:17730,15116971:17731,15116975:17732,15116976:17733,15116977:17734,15116980:17735,15116989:17736,15116990:17737,15116991:17738,15117190:17739,15117193:17740,15117192:17741,15117196:17742,15117200:17743,15117204:17744,15117205:17745,15117206:17746,15117212:17747,15117213:17748,15117220:17749,15117223:17750,15117228:17751,15117232:17752,15117233:17753,15117234:17754,15117244:17755,15117245:17756,15117442:17757,15117443:17758,15117446:17759,15117447:17760,15117449:17761,15117455:17762,15117456:17763,15117457:17764,15117463:17765,15117467:17766,15117470:17767,15117476:17768,15117480:17769,15117483:17770,15117484:17771,15117487:17772,15117493:17773,15117494:17774,15117499:17775,15117503:17776,15117702:17777,15117706:17778,15117709:17779,15117714:17780,15117718:17781,15117720:17782,15117725:17783,15117728:17784,15117735:17785,15117739:17786,15117742:17787,15117744:17788,15117749:17789,15117757:17790,15117758:17953,15117954:17954,15117957:17955,15117975:17956,15117979:17957,15117983:17958,15117984:17959,15117986:17960,15117987:17961,15117992:17962,15117993:17963,15117996:17964,15117997:17965,15117998:17966,15118e3:17967,15118008:17968,15118009:17969,15118013:17970,15118014:17971,15118211:17972,15118212:17973,15118217:17974,15118220:17975,15118230:17976,15118234:17977,15118241:17978,15118243:17979,15118246:17980,15118247:17981,15118254:17982,15118257:17983,15118263:17984,15118265:17985,15118271:17986,15118466:17987,15118468:17988,15118469:17989,15118473:17990,15118477:17991,15118478:17992,15118480:17993,15118482:17994,15118489:17995,15118495:17996,15118502:17997,15118503:17998,15118504:17999,15118508:18e3,15118510:18001,15118515:18002,15118517:18003,15118518:18004,15118522:18005,15118523:18006,15118527:18007,15118730:18008,15118731:18009,15118733:18010,15118735:18011,15118738:18012,15118740:18013,15118745:18014,15118747:18015,15118748:18016,15118763:18017,15118765:18018,15118767:18019,15118772:18020,15118774:18021,15118776:18022,15118777:18023,15118779:18024,15118981:18025,15118982:18026,15118983:18027,15118985:18028,15118996:18029,15118997:18030,15118999:18031,15119e3:18032,15119004:18033,15119007:18034,15119024:18035,15119026:18036,15119028:18037,15119234:18038,15119238:18039,15119245:18040,15119247:18041,15119248:18042,15119249:18043,15119250:18044,15119252:18045,15119254:18046,15119258:18209,15119260:18210,15119264:18211,15119271:18212,15119273:18213,15119275:18214,15119276:18215,15119278:18216,15119282:18217,15119284:18218,15119492:18219,15119495:18220,15119498:18221,15119502:18222,15119503:18223,15119505:18224,15119507:18225,15119514:18226,15119526:18227,15119527:18228,15119528:18229,15118759:18230,15119534:18231,15119535:18232,15119537:18233,15119545:18234,15119548:18235,15119551:18236,15119767:18237,15119774:18238,15119775:18239,15119777:18240,15119781:18241,15119783:18242,15119791:18243,15119792:18244,15119804:18245,15120002:18246,15120007:18247,15120017:18248,15120018:18249,15120020:18250,15120022:18251,15120023:18252,15120024:18253,15120042:18254,15120044:18255,15120052:18256,15120055:18257,15120057:18258,15120061:18259,15120063:18260,15120260:18261,15120264:18262,15120266:18263,15120270:18264,15120271:18265,15120278:18266,15120283:18267,15120285:18268,15120287:18269,15120288:18270,15120290:18271,15120293:18272,15120297:18273,15120303:18274,15120304:18275,15120308:18276,15120310:18277,15120316:18278,15120512:18279,15120516:18280,15120542:18281,15120546:18282,15120551:18283,15120562:18284,15120566:18285,15120569:18286,15120571:18287,15120572:18288,15120772:18289,15120773:18290,15120776:18291,15120777:18292,15120779:18293,15120783:18294,15120785:18295,15120786:18296,15120787:18297,15120788:18298,15120791:18299,15120796:18300,15120797:18301,15120798:18302,15120802:18465,15120803:18466,15120808:18467,15120819:18468,15120827:18469,15120829:18470,15121037:18471,15121043:18472,15121049:18473,15121056:18474,15121063:18475,15121069:18476,15121070:18477,15121073:18478,15121075:18479,15121083:18480,15121087:18481,15121280:18482,15121281:18483,15121283:18484,15121287:18485,15121288:18486,15121290:18487,15121293:18488,15121294:18489,15121295:18490,15121323:18491,15121325:18492,15121326:18493,15121337:18494,15121339:18495,15121341:18496,15121540:18497,15121544:18498,15121546:18499,15121548:18500,15121549:18501,15121558:18502,15121560:18503,15121562:18504,15121563:18505,15121574:18506,15121577:18507,15121578:18508,15121583:18509,15121584:18510,15121587:18511,15121590:18512,15121595:18513,15121596:18514,15121581:18515,15121807:18516,15121809:18517,15121810:18518,15121811:18519,15121815:18520,15121817:18521,15121818:18522,15121821:18523,15121822:18524,15121825:18525,15121826:18526,15121832:18527,15121836:18528,15121853:18529,15121854:18530,15122051:18531,15122055:18532,15122056:18533,15122059:18534,15122060:18535,15122061:18536,15122064:18537,15122066:18538,15122067:18539,15122068:18540,15122070:18541,15122074:18542,15122079:18543,15122080:18544,15122085:18545,15122086:18546,15122087:18547,15122088:18548,15122094:18549,15122095:18550,15122096:18551,15122101:18552,15122102:18553,15122108:18554,15122309:18555,15122311:18556,15122312:18557,15122314:18558,15122330:18721,15122334:18722,15122344:18723,15122345:18724,15122352:18725,15122357:18726,15122361:18727,15122364:18728,15122365:18729,15171712:18730,15171717:18731,15171718:18732,15171719:18733,15171725:18734,15171735:18735,15171744:18736,15171747:18737,15171759:18738,15171764:18739,15171767:18740,15171769:18741,15171772:18742,15171971:18743,15171972:18744,15171976:18745,15171977:18746,15171978:18747,15171979:18748,15171988:18749,15171989:18750,15171997:18751,15171998:18752,15171982:18753,15172004:18754,15172005:18755,15172012:18756,15172014:18757,15172021:18758,15172022:18759,15172030:18760,15172225:18761,15172229:18762,15172230:18763,15172244:18764,15172245:18765,15172246:18766,15172247:18767,15172248:18768,15172251:18769,15172260:18770,15172267:18771,15172272:18772,15172273:18773,15172276:18774,15172279:18775,15172490:18776,15172497:18777,15172499:18778,15172500:18779,15172501:18780,15172502:18781,15172504:18782,15172508:18783,15172516:18784,15172538:18785,15172739:18786,15172740:18787,15172741:18788,15172742:18789,15172743:18790,15172747:18791,15172748:18792,15172751:18793,15172766:18794,15172768:18795,15172779:18796,15172781:18797,15172783:18798,15172784:18799,15172785:18800,15172792:18801,15172993:18802,15172997:18803,15172998:18804,15172999:18805,15173002:18806,15173003:18807,15173008:18808,15173010:18809,15173015:18810,15173018:18811,15173020:18812,15173022:18813,15173024:18814,15173032:18977,15173049:18978,15173248:18979,15173253:18980,15173255:18981,15173260:18982,15173266:18983,15173274:18984,15173275:18985,15173280:18986,15173282:18987,15173295:18988,15173296:18989,15173298:18990,15173299:18991,15173306:18992,15173311:18993,15173504:18994,15173505:18995,15173508:18996,15173515:18997,15173516:18998,15173523:18999,15173526:19e3,15173529:19001,15173530:19002,15173532:19003,15173560:19004,15173566:19005,15173760:19006,15173767:19007,15173768:19008,15173769:19009,15173779:19010,15173783:19011,15173786:19012,15173789:19013,15173791:19014,15173796:19015,15173803:19016,15173807:19017,15173812:19018,15173816:19019,15173817:19020,15174017:19021,15174018:19022,15174019:19023,15174021:19024,15174030:19025,15174031:19026,15174032:19027,15174035:19028,15174037:19029,15174038:19030,15174042:19031,15174044:19032,15174046:19033,15174048:19034,15174051:19035,15174056:19036,15174059:19037,15174062:19038,15174063:19039,15174065:19040,15174071:19041,15174072:19042,15174075:19043,15174076:19044,15174079:19045,15174276:19046,15174281:19047,15174285:19048,15174286:19049,15174291:19050,15174299:19051,15174312:19052,15174317:19053,15174318:19054,15174321:19055,15174324:19056,15174334:19057,15174529:19058,15174535:19059,15174537:19060,15174540:19061,15174549:19062,15174550:19063,15174552:19064,15174559:19065,15174565:19066,15174579:19067,15174580:19068,15174586:19069,15174587:19070,15174590:19233,15174786:19234,15174788:19235,15174789:19236,15174791:19237,15174795:19238,15174797:19239,15174802:19240,15174803:19241,15174808:19242,15174809:19243,15174814:19244,15174818:19245,15174820:19246,15174823:19247,15174824:19248,15174828:19249,15174833:19250,15174834:19251,15174837:19252,15174842:19253,15174843:19254,15174845:19255,15175043:19256,15175053:19257,15175056:19258,15175058:19259,15175062:19260,15175064:19261,15175069:19262,15175070:19263,15175071:19264,15175072:19265,15175078:19266,15175079:19267,15175081:19268,15175083:19269,15175084:19270,15175086:19271,15175087:19272,15175089:19273,15175095:19274,15175097:19275,15175100:19276,15175296:19277,15175297:19278,15175299:19279,15175301:19280,15175302:19281,15175310:19282,15175312:19283,15175315:19284,15175317:19285,15175319:19286,15175320:19287,15175324:19288,15175326:19289,15175327:19290,15175328:19291,15175330:19292,15175333:19293,15175334:19294,15175338:19295,15175339:19296,15175341:19297,15175349:19298,15175351:19299,15175353:19300,15175356:19301,15175357:19302,15175359:19303,15175557:19304,15175558:19305,15175561:19306,15175563:19307,15175564:19308,15175567:19309,15175570:19310,15175571:19311,15175574:19312,15175577:19313,15175581:19314,15175585:19315,15175587:19316,15175590:19317,15175591:19318,15175593:19319,15175604:19320,15175605:19321,15175607:19322,15175609:19323,15175610:19324,15175611:19325,15175613:19326,15175615:19489,15175808:19490,15175809:19491,15175812:19492,15175815:19493,15175818:19494,15175825:19495,15175834:19496,15175835:19497,15175844:19498,15175846:19499,15175848:19500,15175849:19501,15175850:19502,15175851:19503,15175852:19504,15175853:19505,15175854:19506,15175855:19507,15175856:19508,15175857:19509,15175865:19510,15176064:19511,15176067:19512,15176068:19513,15176070:19514,15176071:19515,15176075:19516,15176077:19517,15176081:19518,15176082:19519,15176087:19520,15176093:19521,15176098:19522,15176102:19523,15176103:19524,15176104:19525,15176107:19526,15176109:19527,15176110:19528,15176113:19529,15176114:19530,15176320:19531,15176321:19532,15176325:19533,15176326:19534,15176327:19535,15176329:19536,15176335:19537,15176336:19538,15176337:19539,15176338:19540,15176344:19541,15176345:19542,15176346:19543,15176348:19544,15176351:19545,15176352:19546,15176353:19547,15176355:19548,15176358:19549,15176360:19550,15176361:19551,15176362:19552,15176363:19553,15176366:19554,15176367:19555,15176369:19556,15176370:19557,15176373:19558,15176377:19559,15176379:19560,15176383:19561,15176584:19562,15176585:19563,15176588:19564,15176592:19565,15176595:19566,15176600:19567,15176602:19568,15176603:19569,15176606:19570,15176607:19571,15176612:19572,15176616:19573,15176618:19574,15176619:19575,15176623:19576,15176628:19577,15176634:19578,15176635:19579,15176636:19580,15176639:19581,15176838:19582,15176850:19745,15176854:19746,15176855:19747,15176864:19748,15176865:19749,15176868:19750,15176871:19751,15176873:19752,15176874:19753,15176879:19754,15176886:19755,15176889:19756,15176893:19757,15176894:19758,15176895:19759,15177088:19760,15177091:19761,15177095:19762,15177096:19763,15177102:19764,15177104:19765,15177106:19766,15177111:19767,15177118:19768,15177119:19769,15177121:19770,15177135:19771,15177137:19772,15177145:19773,15177146:19774,15177147:19775,15177148:19776,15177149:19777,15177150:19778,15177345:19779,15177349:19780,15177360:19781,15177362:19782,15177363:19783,15177365:19784,15177369:19785,15177372:19786,15177378:19787,15177380:19788,15177396:19789,15177402:19790,15177407:19791,15177600:19792,15177601:19793,15177604:19794,15177606:19795,15177612:19796,15177614:19797,15177615:19798,15177623:19799,15177628:19800,15177631:19801,15177632:19802,15177633:19803,15177636:19804,15177639:19805,15177644:19806,15177646:19807,15177647:19808,15177649:19809,15177657:19810,15177856:19811,15177858:19812,15177859:19813,15177860:19814,15177863:19815,15177864:19816,15177866:19817,15177868:19818,15177871:19819,15177874:19820,15177875:19821,15177877:19822,15177878:19823,15177881:19824,15177883:19825,15177884:19826,15177885:19827,15177886:19828,15177891:19829,15177893:19830,15177894:19831,15177897:19832,15177901:19833,15177906:19834,15177907:19835,15177909:19836,15177912:19837,15177913:19838,15177914:20001,15177916:20002,15178122:20003,15178112:20004,15178113:20005,15178115:20006,15178116:20007,15178117:20008,15178121:20009,15178123:20010,15178133:20011,15178137:20012,15178143:20013,15178148:20014,15178149:20015,15178157:20016,15178158:20017,15178159:20018,15178161:20019,15178164:20020,15178369:20021,15178373:20022,15178380:20023,15178381:20024,15178389:20025,15178395:20026,15178396:20027,15178397:20028,15178399:20029,15178400:20030,15178402:20031,15178403:20032,15178404:20033,15178405:20034,15178406:20035,15178407:20036,15178408:20037,15178410:20038,15178413:20039,15178429:20040,15178625:20041,15178629:20042,15178633:20043,15178635:20044,15178636:20045,15178638:20046,15178644:20047,15178649:20048,15178656:20049,15178662:20050,15178664:20051,15178668:20052,15178672:20053,15178673:20054,15178678:20055,15178681:20056,15178684:20057,15178880:20058,15178886:20059,15178890:20060,15178894:20061,15178898:20062,15178900:20063,15178901:20064,15178903:20065,15178905:20066,15178906:20067,15178908:20068,15178914:20069,15178920:20070,15178925:20071,15178926:20072,15178927:20073,15178932:20074,15178933:20075,15178934:20076,15178937:20077,15178941:20078,15178942:20079,15179138:20080,15179141:20081,15179142:20082,15179146:20083,15179149:20084,15179150:20085,15179151:20086,15179154:20087,15179158:20088,15179159:20089,15179164:20090,15179166:20091,15179167:20092,15179168:20093,15179170:20094,15179172:20257,15179175:20258,15179178:20259,15179180:20260,15179184:20261,15179186:20262,15179187:20263,15179188:20264,15179194:20265,15179197:20266,15179392:20267,15179396:20268,15179404:20269,15179405:20270,15179412:20271,15179413:20272,15179414:20273,15179418:20274,15179423:20275,15179426:20276,15179431:20277,15179434:20278,15179438:20279,15179439:20280,15179441:20281,15179445:20282,15179454:20283,15179651:20284,15179657:20285,15179665:20286,15179666:20287,15179669:20288,15179673:20289,15179678:20290,15179679:20291,15179680:20292,15179684:20293,15179686:20294,15179690:20295,15179692:20296,15179696:20297,15179697:20298,15179700:20299,15179704:20300,15179707:20301,15179909:20302,15179910:20303,15179913:20304,15179917:20305,15179918:20306,15179921:20307,15179933:20308,15179937:20309,15179938:20310,15179939:20311,15179949:20312,15179950:20313,15179952:20314,15179957:20315,15179959:20316,15180163:20317,15180164:20318,15180167:20319,15180168:20320,15180172:20321,15180174:20322,15180178:20323,15180188:20324,15180190:20325,15180192:20326,15180193:20327,15180195:20328,15180196:20329,15180200:20330,15180202:20331,15180206:20332,15180218:20333,15180222:20334,15180426:20335,15180431:20336,15180436:20337,15180440:20338,15180449:20339,15180445:20340,15180446:20341,15180447:20342,15180452:20343,15180456:20344,15180460:20345,15180461:20346,15180464:20347,15180465:20348,15180466:20349,15180467:20350,15180475:20513,15180477:20514,15180479:20515,15180679:20516,15180680:20517,15180681:20518,15180684:20519,15180686:20520,15180690:20521,15180691:20522,15180693:20523,15180694:20524,15180708:20525,15180699:20526,15180703:20527,15180704:20528,15180705:20529,15180710:20530,15180714:20531,15180722:20532,15180723:20533,15180928:20534,15180726:20535,15180727:20536,15180730:20537,15180731:20538,15180735:20539,15180934:20540,15180940:20541,15180944:20542,15180954:20543,15180956:20544,15180958:20545,15180959:20546,15180960:20547,15180965:20548,15180967:20549,15180969:20550,15180973:20551,15180977:20552,15180980:20553,15180981:20554,15180987:20555,15180989:20556,15180991:20557,15181188:20558,15181189:20559,15181190:20560,15181194:20561,15181195:20562,15181199:20563,15181201:20564,15181204:20565,15181208:20566,15181211:20567,15181212:20568,15181223:20569,15181225:20570,15181227:20571,15181234:20572,15181241:20573,15181243:20574,15181244:20575,15181246:20576,15181451:20577,15181452:20578,15181457:20579,15181459:20580,15181460:20581,15181461:20582,15181462:20583,15181464:20584,15181467:20585,15181468:20586,15181473:20587,15181480:20588,15181481:20589,15181483:20590,15181487:20591,15181489:20592,15181492:20593,15181496:20594,15181499:20595,15181698:20596,15181700:20597,15181703:20598,15181704:20599,15181706:20600,15181711:20601,15181716:20602,15181718:20603,15181722:20604,15181725:20605,15181726:20606,15181728:20769,15181730:20770,15181733:20771,15181738:20772,15181739:20773,15181741:20774,15181745:20775,15181752:20776,15181756:20777,15181954:20778,15181955:20779,15181959:20780,15181961:20781,15181962:20782,15181964:20783,15181969:20784,15181973:20785,15181979:20786,15181982:20787,15181985:20788,15181991:20789,15181995:20790,15181997:20791,15181999:20792,15182e3:20793,15182004:20794,15182005:20795,15182008:20796,15182009:20797,15182010:20798,15182212:20799,15182213:20800,15182215:20801,15182216:20802,15182220:20803,15182229:20804,15182230:20805,15182233:20806,15182236:20807,15182237:20808,15182239:20809,15182240:20810,15182245:20811,15182247:20812,15182250:20813,15182253:20814,15182261:20815,15182264:20816,15182270:20817,15182464:20818,15182466:20819,15182469:20820,15182470:20821,15182474:20822,15182475:20823,15182480:20824,15182481:20825,15182484:20826,15182494:20827,15182496:20828,15182499:20829,15182508:20830,15182515:20831,15182517:20832,15182521:20833,15182523:20834,15182524:20835,15182726:20836,15182729:20837,15182732:20838,15182734:20839,15182737:20840,15182747:20841,15182760:20842,15182761:20843,15182763:20844,15182764:20845,15182769:20846,15182772:20847,15182779:20848,15182781:20849,15182782:20850,15182983:20851,15182996:20852,15183007:20853,15183011:20854,15183015:20855,15183017:20856,15183018:20857,15183019:20858,15183021:20859,15183022:20860,15183023:20861,15183024:20862,15183025:21025,15183028:21026,15183037:21027,15183039:21028,15183232:21029,15183233:21030,15183239:21031,15183246:21032,15183253:21033,15183264:21034,15183268:21035,15183270:21036,15183273:21037,15183274:21038,15183277:21039,15183279:21040,15183282:21041,15183283:21042,15183287:21043,15183492:21044,15183497:21045,15183502:21046,15183504:21047,15183505:21048,15183510:21049,15183515:21050,15183518:21051,15183520:21052,15183525:21053,15183532:21054,15183535:21055,15183536:21056,15183538:21057,15183541:21058,15183542:21059,15183546:21060,15183547:21061,15183548:21062,15183549:21063,15183746:21064,15183749:21065,15183752:21066,15183754:21067,15183764:21068,15183766:21069,15183767:21070,15183769:21071,15183770:21072,15183771:21073,15183784:21074,15183786:21075,15183794:21076,15183796:21077,15183797:21078,15183800:21079,15183801:21080,15183802:21081,15183804:21082,15183806:21083,15184001:21084,15184002:21085,15184003:21086,15184004:21087,15184006:21088,15184009:21089,15184011:21090,15184012:21091,15184014:21092,15184015:21093,15184025:21094,15184027:21095,15184032:21096,15184037:21097,15184038:21098,15184040:21099,15184044:21100,15184049:21101,15184051:21102,15184052:21103,15184054:21104,15184057:21105,15184058:21106,15184262:21107,15184266:21108,15184277:21109,15184273:21110,15184274:21111,15184275:21112,15184281:21113,15184282:21114,15184283:21115,15184284:21116,15184285:21117,15184286:21118,15184289:21281,15184291:21282,15184295:21283,15184297:21284,15184301:21285,15184302:21286,15184304:21287,15184306:21288,15184313:21289,15184316:21290,15184317:21291,15184518:21292,15184519:21293,15184527:21294,15184532:21295,15184542:21296,15184544:21297,15184550:21298,15184560:21299,15184566:21300,15184567:21301,15184570:21302,15184571:21303,15184572:21304,15184575:21305,15184772:21306,15184775:21307,15184776:21308,15184777:21309,15184781:21310,15184783:21311,15184787:21312,15184788:21313,15184789:21314,15184791:21315,15184793:21316,15184794:21317,15184797:21318,15184806:21319,15184809:21320,15184811:21321,15184821:21322,15185027:21323,15185031:21324,15185032:21325,15185033:21326,15185039:21327,15185041:21328,15185042:21329,15185043:21330,15185046:21331,15185053:21332,15185054:21333,15185059:21334,15185062:21335,15185066:21336,15185069:21337,15185073:21338,15185084:21339,15185085:21340,15185086:21341,15185280:21342,15185281:21343,15185287:21344,15185288:21345,15185293:21346,15185297:21347,15185299:21348,15185303:21349,15185305:21350,15185306:21351,15185308:21352,15185309:21353,15185317:21354,15185319:21355,15185322:21356,15185328:21357,15185336:21358,15185338:21359,15185339:21360,15185343:21361,15185537:21362,15185538:21363,15185539:21364,15185541:21365,15185542:21366,15185544:21367,15185547:21368,15185548:21369,15185549:21370,15185553:21371,15185558:21372,15185559:21373,15185565:21374,15185566:21537,15185574:21538,15185575:21539,15185578:21540,15185587:21541,15185590:21542,15185591:21543,15185593:21544,15185794:21545,15185795:21546,15185796:21547,15185797:21548,15185798:21549,15185804:21550,15185805:21551,15185806:21552,15185815:21553,15185817:21554,15186048:21555,15185826:21556,15185829:21557,15185830:21558,15185834:21559,15185835:21560,15185837:21561,15185841:21562,15185845:21563,15185846:21564,15185849:21565,15185850:21566,15186056:21567,15186064:21568,15186065:21569,15186069:21570,15186071:21571,15186076:21572,15186077:21573,15186080:21574,15186087:21575,15186088:21576,15186092:21577,15186093:21578,15186095:21579,15186099:21580,15186102:21581,15186111:21582,15186308:21583,15186309:21584,15186311:21585,15186318:21586,15186320:21587,15186322:21588,15186328:21589,15186335:21590,15186337:21591,15186338:21592,15186341:21593,15186347:21594,15186350:21595,15186351:21596,15186355:21597,15186360:21598,15186366:21599,15186561:21600,15186566:21601,15186567:21602,15186570:21603,15186573:21604,15186577:21605,15186581:21606,15186584:21607,15186586:21608,15186589:21609,15186590:21610,15187132:21611,15187131:21612,15187133:21613,15187134:21614,15187135:21615,15187331:21616,15187332:21617,15187335:21618,15187343:21619,15187346:21620,15187347:21621,15187355:21622,15187356:21623,15187357:21624,15187361:21625,15187363:21626,15187364:21627,15187365:21628,15187366:21629,15187373:21630,15187377:21793,15187389:21794,15187390:21795,15187391:21796,15187584:21797,15187595:21798,15187597:21799,15187599:21800,15187600:21801,15187601:21802,15187606:21803,15187607:21804,15187612:21805,15187617:21806,15187618:21807,15187622:21808,15187626:21809,15187629:21810,15187636:21811,15187644:21812,15187647:21813,15187840:21814,15187843:21815,15187848:21816,15187854:21817,15187855:21818,15187867:21819,15187871:21820,15187875:21821,15187877:21822,15187880:21823,15187884:21824,15187886:21825,15187887:21826,15187890:21827,15187898:21828,15187901:21829,15187902:21830,15187903:21831,15237255:21832,15237256:21833,15237258:21834,15237261:21835,15237262:21836,15237263:21837,15237265:21838,15237267:21839,15237268:21840,15237270:21841,15237277:21842,15237278:21843,15237279:21844,15237280:21845,15237284:21846,15237286:21847,15237292:21848,15237294:21849,15237296:21850,15237300:21851,15237301:21852,15237303:21853,15237305:21854,15237306:21855,15237308:21856,15237310:21857,15237504:21858,15237508:21859,15237536:21860,15237540:21861,15237542:21862,15237549:21863,15237553:21864,15237557:21865,15237761:21866,15237768:21867,15237774:21868,15237788:21869,15237790:21870,15237798:21871,15237799:21872,15237803:21873,15237816:21874,15237817:21875,15238024:21876,15238029:21877,15238031:21878,15238034:21879,15238036:21880,15238037:21881,15238039:21882,15238040:21883,15238048:21884,15238061:21885,15238062:21886,15238064:22049,15238066:22050,15238067:22051,15238070:22052,15238073:22053,15238074:22054,15238078:22055,15238275:22056,15238283:22057,15238294:22058,15238295:22059,15238296:22060,15238300:22061,15238302:22062,15238304:22063,15238308:22064,15238311:22065,15238316:22066,15238320:22067,15238325:22068,15238330:22069,15238332:22070,15238533:22071,15238535:22072,15238538:22073,15238540:22074,15238546:22075,15238551:22076,15238560:22077,15238561:22078,15238567:22079,15238568:22080,15238569:22081,15238573:22082,15238575:22083,15238583:22084,15238785:22085,15238800:22086,15238788:22087,15238789:22088,15238790:22089,15238795:22090,15238798:22091,15238806:22092,15238808:22093,15238811:22094,15238814:22095,15238818:22096,15238830:22097,15238834:22098,15238836:22099,15238843:22100,15239051:22101,15239043:22102,15239045:22103,15239050:22104,15239054:22105,15239055:22106,15239061:22107,15239063:22108,15239067:22109,15239069:22110,15239070:22111,15239073:22112,15239076:22113,15239083:22114,15239084:22115,15239088:22116,15239089:22117,15239090:22118,15239093:22119,15239094:22120,15239096:22121,15239097:22122,15239101:22123,15239103:22124,15239296:22125,15239299:22126,15239311:22127,15239315:22128,15239316:22129,15239321:22130,15239322:22131,15239325:22132,15239329:22133,15239330:22134,15239336:22135,15239346:22136,15239348:22137,15239354:22138,15239555:22139,15239556:22140,15239557:22141,15239558:22142,15239563:22305,15239566:22306,15239567:22307,15239569:22308,15239574:22309,15239580:22310,15239584:22311,15239587:22312,15239591:22313,15239597:22314,15239604:22315,15239611:22316,15239613:22317,15239615:22318,15239808:22319,15239809:22320,15239811:22321,15239812:22322,15239815:22323,15239817:22324,15239818:22325,15239822:22326,15239825:22327,15239828:22328,15239830:22329,15239832:22330,15239834:22331,15239835:22332,15239840:22333,15239841:22334,15239843:22335,15239844:22336,15239847:22337,15239848:22338,15239849:22339,15239850:22340,15239854:22341,15239856:22342,15239858:22343,15239860:22344,15239863:22345,15239866:22346,15239868:22347,15239870:22348,15239871:22349,15240070:22350,15240080:22351,15240085:22352,15240090:22353,15240096:22354,15240098:22355,15240100:22356,15240104:22357,15240106:22358,15240109:22359,15240111:22360,15240118:22361,15240119:22362,15240125:22363,15240126:22364,15240320:22365,15240321:22366,15240327:22367,15240328:22368,15240330:22369,15240331:22370,15240596:22371,15240347:22372,15240349:22373,15240350:22374,15240351:22375,15240353:22376,15240354:22377,15240364:22378,15240365:22379,15240366:22380,15240368:22381,15240371:22382,15240375:22383,15240378:22384,15240380:22385,15240381:22386,15240578:22387,15240579:22388,15240580:22389,15240583:22390,15240589:22391,15240590:22392,15240593:22393,15240597:22394,15240598:22395,15240599:22396,15240624:22397,15240632:22398,15240637:22561,15240639:22562,15240832:22563,15240834:22564,15240836:22565,15240838:22566,15240845:22567,15240850:22568,15240852:22569,15240853:22570,15240856:22571,15240857:22572,15240859:22573,15240860:22574,15240861:22575,15240870:22576,15240871:22577,15240873:22578,15240876:22579,15240894:22580,15240895:22581,15241088:22582,15241095:22583,15241097:22584,15241103:22585,15241104:22586,15241105:22587,15241108:22588,15241117:22589,15240595:22590,15241128:22591,15241130:22592,15241142:22593,15241144:22594,15241145:22595,15241148:22596,15241345:22597,15241350:22598,15241354:22599,15241359:22600,15241361:22601,15241365:22602,15241369:22603,15240877:22604,15241391:22605,15241401:22606,15241605:22607,15241607:22608,15241608:22609,15241610:22610,15241613:22611,15241615:22612,15241617:22613,15241618:22614,15241622:22615,15241624:22616,15241625:22617,15241626:22618,15241628:22619,15241632:22620,15241636:22621,15241637:22622,15241639:22623,15241642:22624,15241648:22625,15241651:22626,15241652:22627,15241654:22628,15241656:22629,15241660:22630,15241661:22631,15241857:22632,15241861:22633,15241874:22634,15241875:22635,15241877:22636,15241886:22637,15241894:22638,15241896:22639,15241897:22640,15241898:22641,15241903:22642,15241905:22643,15241908:22644,15241914:22645,15241917:22646,15241918:22647,15242112:22648,15242114:22649,15242119:22650,15242120:22651,15242124:22652,15242127:22653,15242131:22654,15242140:22817,15242151:22818,15242154:22819,15242159:22820,15242160:22821,15242161:22822,15242162:22823,15242167:22824,15242418:22825,15242170:22826,15242171:22827,15242173:22828,15242370:22829,15242371:22830,15242375:22831,15242380:22832,15242382:22833,15242384:22834,15242396:22835,15242398:22836,15242402:22837,15242403:22838,15242404:22839,15242405:22840,15242407:22841,15242410:22842,15242411:22843,15242415:22844,15242419:22845,15242420:22846,15242422:22847,15242431:22848,15242630:22849,15242639:22850,15242640:22851,15242641:22852,15242642:22853,15242643:22854,15242646:22855,15242649:22856,15242652:22857,15242653:22858,15242654:22859,15242655:22860,15242656:22861,15242657:22862,15242658:22863,15242660:22864,15242667:22865,15242671:22866,15242681:22867,15242682:22868,15242683:22869,15242685:22870,15242687:22871,15242881:22872,15242885:22873,15242886:22874,15242889:22875,15242891:22876,15242892:22877,15242895:22878,15242899:22879,15242904:22880,15242909:22881,15242911:22882,15242912:22883,15242914:22884,15242917:22885,15242919:22886,15242932:22887,15242934:22888,15242935:22889,15242936:22890,15242940:22891,15242941:22892,15242942:22893,15242943:22894,15243138:22895,15243143:22896,15243146:22897,15243147:22898,15243150:22899,15242925:22900,15243160:22901,15243162:22902,15243167:22903,15243168:22904,15243174:22905,15243176:22906,15243181:22907,15243187:22908,15243190:22909,15243196:22910,15243199:23073,15243392:23074,15243396:23075,15243397:23076,15243405:23077,15243406:23078,15243408:23079,15243409:23080,15243410:23081,15243416:23082,15243417:23083,15243419:23084,15243422:23085,15243425:23086,15243431:23087,15243433:23088,15243446:23089,15243448:23090,15243450:23091,15243452:23092,15243453:23093,15243648:23094,15243650:23095,15243654:23096,15243666:23097,15243667:23098,15243670:23099,15243671:23100,15243672:23101,15243673:23102,15243677:23103,15243680:23104,15243681:23105,15243682:23106,15243683:23107,15243684:23108,15243689:23109,15243692:23110,15243695:23111,15243701:23112,15243702:23113,15243703:23114,15243706:23115,15243917:23116,15243921:23117,15243926:23118,15243928:23119,15243930:23120,15243932:23121,15243937:23122,15243942:23123,15243943:23124,15243944:23125,15243949:23126,15243953:23127,15243955:23128,15243956:23129,15243957:23130,15243959:23131,15243960:23132,15243961:23133,15243967:23134,15244160:23135,15244161:23136,15244163:23137,15244165:23138,15244177:23139,15244178:23140,15244181:23141,15244183:23142,15244186:23143,15244188:23144,15244192:23145,15244195:23146,15244197:23147,15244199:23148,15243912:23149,15244218:23150,15244220:23151,15244221:23152,15244420:23153,15244421:23154,15244423:23155,15244427:23156,15244430:23157,15244431:23158,15244432:23159,15244435:23160,15244436:23161,15244441:23162,15244446:23163,15244447:23164,15244449:23165,15244451:23166,15244456:23329,15244462:23330,15244463:23331,15244465:23332,15244466:23333,15244473:23334,15244474:23335,15244476:23336,15244477:23337,15244478:23338,15244672:23339,15244675:23340,15244677:23341,15244685:23342,15244696:23343,15244701:23344,15244705:23345,15244708:23346,15244709:23347,15244719:23348,15244721:23349,15244722:23350,15244731:23351,15244931:23352,15244932:23353,15244933:23354,15244934:23355,15244935:23356,15244936:23357,15244937:23358,15244939:23359,15244940:23360,15244944:23361,15244947:23362,15244949:23363,15244951:23364,15244952:23365,15244953:23366,15244958:23367,15244960:23368,15244963:23369,15244967:23370,15244972:23371,15244973:23372,15244974:23373,15244977:23374,15244981:23375,15244990:23376,15244991:23377,15245185:23378,15245192:23379,15245193:23380,15245194:23381,15245198:23382,15245205:23383,15245206:23384,15245209:23385,15245210:23386,15245212:23387,15245215:23388,15245218:23389,15245219:23390,15245220:23391,15245226:23392,15245227:23393,15245229:23394,15245233:23395,15245235:23396,15245240:23397,15245242:23398,15245247:23399,15245441:23400,15245443:23401,15245446:23402,15245449:23403,15245450:23404,15245451:23405,15245456:23406,15245465:23407,15245458:23408,15245459:23409,15245460:23410,15245464:23411,15245466:23412,15245467:23413,15245468:23414,15245470:23415,15245471:23416,15245480:23417,15245485:23418,15245486:23419,15245488:23420,15245490:23421,15245493:23422,15245498:23585,15245500:23586,15245697:23587,15245699:23588,15245701:23589,15245704:23590,15245705:23591,15245706:23592,15245707:23593,15245710:23594,15245713:23595,15245717:23596,15245718:23597,15245720:23598,15245722:23599,15245724:23600,15245727:23601,15245728:23602,15245732:23603,15245737:23604,15245745:23605,15245753:23606,15245755:23607,15245952:23608,15245976:23609,15245978:23610,15245979:23611,15245980:23612,15245983:23613,15245984:23614,15245992:23615,15245994:23616,15246010:23617,15246013:23618,15246014:23619,15246208:23620,15246218:23621,15246219:23622,15246220:23623,15246221:23624,15246222:23625,15246225:23626,15246226:23627,15246227:23628,15246235:23629,15246238:23630,15246247:23631,15246255:23632,15246256:23633,15246257:23634,15246261:23635,15246263:23636,15246465:23637,15246470:23638,15246477:23639,15246478:23640,15246479:23641,15246485:23642,15246486:23643,15246488:23644,15246489:23645,15246490:23646,15246492:23647,15246496:23648,15246502:23649,15246503:23650,15246504:23651,15246512:23652,15246513:23653,15246514:23654,15246517:23655,15246521:23656,15246522:23657,15246526:23658,15246720:23659,15246722:23660,15246725:23661,15246726:23662,15246729:23663,15246735:23664,15246738:23665,15246743:23666,15246746:23667,15246747:23668,15246748:23669,15246753:23670,15246754:23671,15246755:23672,15246763:23673,15246766:23674,15246768:23675,15246771:23676,15246773:23677,15246778:23678,15246779:23841,15246780:23842,15246781:23843,15246985:23844,15246989:23845,15246992:23846,15246996:23847,15246997:23848,15247003:23849,15247004:23850,15247007:23851,15247008:23852,15247013:23853,15247024:23854,15247028:23855,15247029:23856,15247030:23857,15247031:23858,15247036:23859,15247252:23860,15247253:23861,15247254:23862,15247255:23863,15247256:23864,15247269:23865,15247273:23866,15247275:23867,15247277:23868,15247281:23869,15247283:23870,15247286:23871,15247289:23872,15247293:23873,15247295:23874,15247492:23875,15247493:23876,15247495:23877,15247503:23878,15247505:23879,15247506:23880,15247508:23881,15247509:23882,15247518:23883,15247520:23884,15247522:23885,15247524:23886,15247526:23887,15247531:23888,15247532:23889,15247535:23890,15247541:23891,15247543:23892,15247549:23893,15247550:23894,15247744:23895,15247747:23896,15247749:23897,15247751:23898,15247753:23899,15247757:23900,15247758:23901,15247763:23902,15247766:23903,15247767:23904,15247768:23905,15247772:23906,15247773:23907,15247777:23908,15247781:23909,15247783:23910,15247797:23911,15247798:23912,15247799:23913,15247801:23914,15247802:23915,15247803:23916,15247806:23917,15247807:23918,15248e3:23919,15248003:23920,15248006:23921,15248011:23922,15248015:23923,15248016:23924,15248018:23925,15248022:23926,15248023:23927,15248025:23928,15248031:23929,15248039:23930,15248041:23931,15248046:23932,15248047:23933,15248051:23934,15248054:24097,15248055:24098,15248059:24099,15248062:24100,15248259:24101,15248262:24102,15248264:24103,15248265:24104,15248266:24105,15248273:24106,15248275:24107,15248276:24108,15248277:24109,15248279:24110,15248285:24111,15248287:24112,15248300:24113,15248304:24114,15248308:24115,15248309:24116,15248310:24117,15248316:24118,15248319:24119,15248517:24120,15248518:24121,15248523:24122,15248529:24123,15248540:24124,15248542:24125,15248543:24126,15248522:24127,15248557:24128,15248560:24129,15248567:24130,15248572:24131,15248770:24132,15248771:24133,15248772:24134,15248773:24135,15248774:24136,15248776:24137,15248786:24138,15248787:24139,15248788:24140,15248793:24141,15248781:24142,15248798:24143,15248803:24144,15248813:24145,15248822:24146,15248824:24147,15248825:24148,15248828:24149,15248830:24150,15249025:24151,15249028:24152,15249029:24153,15249035:24154,15249037:24155,15249039:24156,15249044:24157,15249045:24158,15249052:24159,15249054:24160,15249055:24161,15249592:24162,15249593:24163,15249597:24164,15249598:24165,15249797:24166,15249799:24167,15249801:24168,15249803:24169,15249807:24170,15249809:24171,15249811:24172,15249812:24173,15249815:24174,15249816:24175,15249819:24176,15249821:24177,15249817:24178,15249827:24179,15249828:24180,15249830:24181,15249832:24182,15249833:24183,15249837:24184,15249843:24185,15249845:24186,15249846:24187,15249851:24188,15249854:24189,15250054:24190,15250055:24353,15250059:24354,15250064:24355,15250066:24356,15250067:24357,15250073:24358,15250075:24359,15250076:24360,15250084:24361,15250105:24362,15250106:24363,15250309:24364,15250310:24365,15250313:24366,15250315:24367,15250319:24368,15250326:24369,15250325:24370,15250329:24371,15250333:24372,15250337:24373,15250344:24374,15250348:24375,15250351:24376,15250352:24377,15250354:24378,15250357:24379,15250359:24380,15250360:24381,15250366:24382,15250367:24383,15250561:24384,15250563:24385,15250569:24386,15250578:24387,15250583:24388,15250587:24389,15250853:24390,15250857:24391,15250860:24392,15250862:24393,15250879:24394,15251074:24395,15251076:24396,15251080:24397,15251085:24398,15251088:24399,15251089:24400,15251093:24401,15251102:24402,15251103:24403,15251104:24404,15251110:24405,15251115:24406,15251116:24407,15251119:24408,15251122:24409,15251125:24410,15251127:24411,15251129:24412,15251131:24413,15251328:24414,15251333:24415,15251334:24416,15251335:24417,15251336:24418,15251338:24419,15251342:24420,15251345:24421,15251348:24422,15251349:24423,15251351:24424,15251353:24425,15251364:24426,15251365:24427,15251367:24428,15251372:24429,15251376:24430,15251132:24431,15251377:24432,15251378:24433,15251380:24434,15251389:24435,15251585:24436,15251588:24437,15251589:24438,15251590:24439,15251595:24440,15251601:24441,15251604:24442,15251606:24443,15251616:24444,15251617:24445,15251618:24446,15251619:24609,15251622:24610,15251623:24611,15251633:24612,15251635:24613,15251638:24614,15251639:24615,15251640:24616,15251641:24617,15251645:24618,15251840:24619,15251841:24620,15251851:24621,15251853:24622,15251854:24623,15251855:24624,15251860:24625,15251867:24626,15251868:24627,15251869:24628,15251870:24629,15251873:24630,15251874:24631,15251881:24632,15251884:24633,15251885:24634,15251887:24635,15251888:24636,15251889:24637,15251897:24638,15251898:24639,15251899:24640,15252098:24641,15252099:24642,15252105:24643,15252112:24644,15252114:24645,15252117:24646,15252122:24647,15252123:24648,15252125:24649,15252126:24650,15252130:24651,15252135:24652,15252137:24653,15252141:24654,15252142:24655,15252147:24656,15252149:24657,15252154:24658,15252155:24659,15252352:24660,15252353:24661,15252355:24662,15252356:24663,15252359:24664,15252367:24665,15252369:24666,15252372:24667,15252380:24668,15252392:24669,15252398:24670,15252400:24671,15252401:24672,15252407:24673,15252409:24674,15252410:24675,15252397:24676,15252608:24677,15252610:24678,15252615:24679,15252616:24680,15252623:24681,15252624:24682,15252630:24683,15252631:24684,15252632:24685,15252638:24686,15252640:24687,15252641:24688,15252643:24689,15252645:24690,15252647:24691,15252648:24692,15252652:24693,15252653:24694,15252654:24695,15252660:24696,15252661:24697,15252662:24698,15252663:24699,15252666:24700,15252864:24701,15252865:24702,15252867:24865,15252871:24866,15252879:24867,15252881:24868,15252882:24869,15252883:24870,15252884:24871,15252885:24872,15252888:24873,15252893:24874,15252894:24875,15252901:24876,15253149:24877,15253152:24878,15253153:24879,15253156:24880,15253157:24881,15253158:24882,15253173:24883,15253174:24884,15253176:24885,15253182:24886,15253376:24887,15253377:24888,15253382:24889,15253386:24890,15253387:24891,15253389:24892,15253392:24893,15253394:24894,15253395:24895,15253397:24896,15253408:24897,15253411:24898,15253412:24899,15253416:24900,15253422:24901,15253425:24902,15253429:24903,15253430:24904,15253435:24905,15253438:24906,15302786:24907,15302788:24908,15302792:24909,15302796:24910,15302808:24911,15302811:24912,15302824:24913,15302825:24914,15302831:24915,15302826:24916,15302828:24917,15302829:24918,15302835:24919,15302836:24920,15302839:24921,15302847:24922,15303043:24923,15303044:24924,15303052:24925,15303067:24926,15303069:24927,15303074:24928,15303078:24929,15303079:24930,15303084:24931,15303088:24932,15303092:24933,15303097:24934,15303301:24935,15303304:24936,15303307:24937,15303308:24938,15303310:24939,15303312:24940,15303317:24941,15303319:24942,15303320:24943,15303321:24944,15303323:24945,15303328:24946,15303329:24947,15303330:24948,15303333:24949,15303344:24950,15303346:24951,15303347:24952,15303348:24953,15303350:24954,15303357:24955,15303564:24956,15303358:24957,15303555:24958,15303556:25121,15303557:25122,15303559:25123,15303560:25124,15303573:25125,15303575:25126,15303576:25127,15303577:25128,15303580:25129,15303581:25130,15303583:25131,15303589:25132,15303570:25133,15303606:25134,15303595:25135,15303599:25136,15303600:25137,15303604:25138,15303614:25139,15303615:25140,15303808:25141,15303812:25142,15303813:25143,15303814:25144,15303816:25145,15303821:25146,15303824:25147,15303828:25148,15303830:25149,15303831:25150,15303832:25151,15303834:25152,15303836:25153,15303838:25154,15303840:25155,15303845:25156,15303842:25157,15303843:25158,15303847:25159,15303849:25160,15303854:25161,15303855:25162,15303857:25163,15303860:25164,15303862:25165,15303863:25166,15303865:25167,15303866:25168,15303868:25169,15303869:25170,15304067:25171,15304071:25172,15304072:25173,15304079:25174,15304083:25175,15304087:25176,15304089:25177,15304090:25178,15304091:25179,15304097:25180,15304100:25181,15304103:25182,15304109:25183,15304116:25184,15304121:25185,15304122:25186,15304123:25187,15304321:25188,15304323:25189,15304325:25190,15304326:25191,15304330:25192,15304334:25193,15304337:25194,15304339:25195,15304340:25196,15304341:25197,15304344:25198,15304350:25199,15304353:25200,15304358:25201,15304360:25202,15304364:25203,15304365:25204,15304366:25205,15304368:25206,15304369:25207,15304370:25208,15304371:25209,15304374:25210,15304379:25211,15304380:25212,15304381:25213,15304383:25214,15304578:25377,15304579:25378,15304581:25379,15304595:25380,15304596:25381,15304599:25382,15304601:25383,15304602:25384,15304606:25385,15304612:25386,15304613:25387,15304617:25388,15304618:25389,15304620:25390,15304621:25391,15304622:25392,15304623:25393,15304624:25394,15304625:25395,15304631:25396,15304633:25397,15304635:25398,15304637:25399,15304832:25400,15304833:25401,15304836:25402,15304837:25403,15304838:25404,15304839:25405,15304841:25406,15304842:25407,15304844:25408,15304848:25409,15304850:25410,15304851:25411,15304854:25412,15304856:25413,15304860:25414,15304861:25415,15304867:25416,15304868:25417,15304869:25418,15304870:25419,15304872:25420,15304878:25421,15304879:25422,15304880:25423,15304883:25424,15304885:25425,15304886:25426,15304888:25427,15304889:25428,15304890:25429,15304892:25430,15304894:25431,15305088:25432,15305090:25433,15305091:25434,15305094:25435,15305095:25436,15305098:25437,15305101:25438,15305102:25439,15305103:25440,15305105:25441,15305112:25442,15305113:25443,15305116:25444,15305117:25445,15305120:25446,15305121:25447,15305125:25448,15305127:25449,15305128:25450,15305129:25451,15305134:25452,15305135:25453,15305136:25454,15305141:25455,15305142:25456,15305143:25457,15305144:25458,15305145:25459,15305147:25460,15305148:25461,15305149:25462,15305151:25463,15305352:25464,15305353:25465,15305354:25466,15305357:25467,15305358:25468,15305362:25469,15305367:25470,15305369:25633,15305375:25634,15305376:25635,15305380:25636,15305381:25637,15305383:25638,15305384:25639,15305387:25640,15305391:25641,15305394:25642,15305398:25643,15305400:25644,15305402:25645,15305403:25646,15305404:25647,15305405:25648,15305407:25649,15305600:25650,15305601:25651,15305602:25652,15305603:25653,15305605:25654,15305606:25655,15305607:25656,15305608:25657,15305611:25658,15305612:25659,15305613:25660,15305614:25661,15305616:25662,15305619:25663,15305621:25664,15305623:25665,15305624:25666,15305625:25667,15305628:25668,15305629:25669,15305631:25670,15305632:25671,15305633:25672,15305635:25673,15305637:25674,15305639:25675,15305640:25676,15305644:25677,15305646:25678,15305648:25679,15305657:25680,15305659:25681,15305663:25682,15305856:25683,15305858:25684,15305864:25685,15305869:25686,15305873:25687,15305876:25688,15305877:25689,15305884:25690,15305885:25691,15305886:25692,15305887:25693,15305889:25694,15305892:25695,15305893:25696,15305895:25697,15305897:25698,15305898:25699,15305907:25700,15305908:25701,15305910:25702,15305911:25703,15306119:25704,15306120:25705,15306121:25706,15306128:25707,15306129:25708,15306130:25709,15306133:25710,15306135:25711,15306136:25712,15306138:25713,15306142:25714,15306148:25715,15306149:25716,15306151:25717,15306153:25718,15306154:25719,15306157:25720,15306159:25721,15306160:25722,15306161:25723,15306163:25724,15306164:25725,15306166:25726,15306170:25889,15306173:25890,15306175:25891,15306368:25892,15306369:25893,15306370:25894,15306376:25895,15306378:25896,15306379:25897,15306381:25898,15306383:25899,15306386:25900,15306389:25901,15306392:25902,15306395:25903,15306398:25904,15306401:25905,15306403:25906,15306404:25907,15306406:25908,15306408:25909,15306411:25910,15306420:25911,15306421:25912,15306422:25913,15306426:25914,15306409:25915,15306625:25916,15306628:25917,15306629:25918,15306630:25919,15306631:25920,15306633:25921,15306634:25922,15306635:25923,15306636:25924,15306637:25925,15306643:25926,15306649:25927,15306652:25928,15306654:25929,15306655:25930,15306658:25931,15306662:25932,15306663:25933,15306681:25934,15306679:25935,15306680:25936,15306682:25937,15306683:25938,15306685:25939,15306881:25940,15306882:25941,15306884:25942,15306888:25943,15306889:25944,15306893:25945,15306894:25946,15306895:25947,15306901:25948,15306902:25949,15306903:25950,15306911:25951,15306926:25952,15306927:25953,15306929:25954,15306930:25955,15306931:25956,15306932:25957,15306939:25958,15306943:25959,15306941:25960,15307139:25961,15307141:25962,15307144:25963,15307146:25964,15307148:25965,15307157:25966,15307161:25967,15307164:25968,15307167:25969,15307169:25970,15307171:25971,15307176:25972,15307179:25973,15307181:25974,15307182:25975,15307183:25976,15307185:25977,15307186:25978,15307396:25979,15307395:25980,15308216:25981,15308217:25982,15308222:26145,15308420:26146,15308424:26147,15308428:26148,15308429:26149,15308430:26150,15308445:26151,15308446:26152,15308447:26153,15308449:26154,15308454:26155,15308457:26156,15308459:26157,15308460:26158,15308468:26159,15308470:26160,15308474:26161,15308477:26162,15308479:26163,15308678:26164,15308680:26165,15308681:26166,15308683:26167,15308688:26168,15308689:26169,15308690:26170,15308691:26171,15308697:26172,15308698:26173,15308701:26174,15308702:26175,15308703:26176,15308704:26177,15308708:26178,15308710:26179,15308957:26180,15308958:26181,15308962:26182,15308964:26183,15308965:26184,15308966:26185,15308972:26186,15308977:26187,15308979:26188,15308983:26189,15308984:26190,15308985:26191,15308986:26192,15308988:26193,15308989:26194,15309185:26195,15309202:26196,15309204:26197,15309206:26198,15309207:26199,15309208:26200,15309217:26201,15309230:26202,15309236:26203,15309243:26204,15309244:26205,15309246:26206,15309247:26207,15309441:26208,15309442:26209,15309443:26210,15309444:26211,15309449:26212,15309457:26213,15309462:26214,15309466:26215,15309469:26216,15309471:26217,15309476:26218,15309477:26219,15309478:26220,15309481:26221,15309486:26222,15309487:26223,15309491:26224,15309498:26225,15309706:26226,15309714:26227,15054514:26228,15309720:26229,15309722:26230,15309725:26231,15309726:26232,15309727:26233,15309737:26234,15309743:26235,15309745:26236,15309754:26237,15309954:26238,15309955:26401,15309957:26402,15309961:26403,15309978:26404,15309979:26405,15309981:26406,15309985:26407,15309986:26408,15309987:26409,15309992:26410,15310001:26411,15310003:26412,15310209:26413,15310211:26414,15310218:26415,15310222:26416,15310223:26417,15310229:26418,15310231:26419,15310232:26420,15310234:26421,15310235:26422,15310243:26423,15310247:26424,15310250:26425,15310254:26426,15310259:26427,15310262:26428,15310263:26429,15310264:26430,15310267:26431,15310269:26432,15310271:26433,15310464:26434,15310473:26435,15310485:26436,15310486:26437,15310487:26438,15310489:26439,15310490:26440,15310494:26441,15310495:26442,15310498:26443,15310508:26444,15310510:26445,15310513:26446,15310514:26447,15310517:26448,15310518:26449,15310520:26450,15310521:26451,15310522:26452,15310524:26453,15310526:26454,15310527:26455,15310721:26456,15310724:26457,15310725:26458,15310727:26459,15310729:26460,15310730:26461,15310732:26462,15310733:26463,15310734:26464,15310736:26465,15310737:26466,15310740:26467,15310743:26468,15310744:26469,15310745:26470,15310749:26471,15310750:26472,15310752:26473,15310747:26474,15310753:26475,15310756:26476,15310767:26477,15310769:26478,15310772:26479,15310775:26480,15310776:26481,15310778:26482,15310983:26483,15310986:26484,15311001:26485,15310989:26486,15310990:26487,15310996:26488,15310998:26489,15311004:26490,15311006:26491,15311008:26492,15311011:26493,15311014:26494,15311019:26657,15311022:26658,15311023:26659,15311024:26660,15311026:26661,15311027:26662,15311029:26663,15311013:26664,15311038:26665,15311236:26666,15311239:26667,15311242:26668,15311249:26669,15311250:26670,15311251:26671,15311254:26672,15311255:26673,15311257:26674,15311258:26675,15311266:26676,15311267:26677,15311269:26678,15311270:26679,15311274:26680,15311276:26681,15311531:26682,15311533:26683,15311534:26684,15311536:26685,15311540:26686,15311543:26687,15311544:26688,15311546:26689,15311547:26690,15311551:26691,15311746:26692,15311749:26693,15311752:26694,15311756:26695,15311777:26696,15311779:26697,15311781:26698,15311782:26699,15311783:26700,15311786:26701,15311795:26702,15311798:26703,15312002:26704,15312007:26705,15312008:26706,15312017:26707,15312021:26708,15312022:26709,15312023:26710,15312026:26711,15312027:26712,15312028:26713,15312031:26714,15312034:26715,15312038:26716,15312039:26717,15312043:26718,15312049:26719,15312050:26720,15312051:26721,15312052:26722,15312053:26723,15312057:26724,15312058:26725,15312059:26726,15312060:26727,15312256:26728,15312257:26729,15312262:26730,15312263:26731,15312264:26732,15312269:26733,15312270:26734,15312276:26735,15312280:26736,15312281:26737,15312283:26738,15312284:26739,15312286:26740,15312287:26741,15312288:26742,15312539:26743,15312541:26744,15312543:26745,15312550:26746,15312560:26747,15312561:26748,15312562:26749,15312565:26750,15312569:26913,15312570:26914,15312573:26915,15312575:26916,15312771:26917,15312777:26918,15312787:26919,15312788:26920,15312793:26921,15312794:26922,15312796:26923,15312798:26924,15312807:26925,15312810:26926,15312811:26927,15312812:26928,15312816:26929,15312820:26930,15312821:26931,15312825:26932,15312829:26933,15312830:26934,15313026:26935,15313027:26936,15313028:26937,15313035:26938,15313036:26939,15313040:26940,15313041:26941,15313046:26942,15313054:26943,15313056:26944,15313058:26945,15313059:26946,15313060:26947,15313063:26948,15313069:26949,15313070:26950,15313075:26951,15313077:26952,15313078:26953,15313080:26954,15313287:26955,15313281:26956,15313284:26957,15313290:26958,15313291:26959,15313292:26960,15313294:26961,15313297:26962,15313300:26963,15313302:26964,15313309:26965,15313578:26966,15313580:26967,15313582:26968,15313583:26969,15313586:26970,15313588:26971,15313589:26972,15313590:26973,15313593:26974,15313595:26975,15313598:26976,15313599:26977,15313793:26978,15313795:26979,15313798:26980,15313800:26981,15313806:26982,15313808:26983,15313810:26984,15313813:26985,15313814:26986,15313815:26987,15313819:26988,15313820:26989,15313824:26990,15313828:26991,15313829:26992,15313831:26993,15313833:26994,15313836:26995,15313842:26996,15313843:26997,15313845:26998,15313849:26999,15313850:27e3,15313853:27001,15313855:27002,15314048:27003,15314049:27004,15314050:27005,15314051:27006,15314052:27169,15314053:27170,15314056:27171,15314057:27172,15314059:27173,15314060:27174,15314061:27175,15314062:27176,15314064:27177,15314066:27178,15314070:27179,15314073:27180,15314075:27181,15314076:27182,15314080:27183,15314086:27184,15314091:27185,15314093:27186,15314099:27187,15314100:27188,15314101:27189,15314103:27190,15314105:27191,15314106:27192,15314109:27193,15314312:27194,15314315:27195,15314316:27196,15314325:27197,15314326:27198,15314327:27199,15314331:27200,15314334:27201,15314337:27202,15314339:27203,15314341:27204,15314342:27205,15314344:27206,15314346:27207,15314347:27208,15314348:27209,15314349:27210,15314350:27211,15314355:27212,15314357:27213,15314359:27214,15314360:27215,15314361:27216,15314367:27217,15314560:27218,15314564:27219,15314565:27220,15314566:27221,15314567:27222,15314569:27223,15314570:27224,15314571:27225,15314573:27226,15314575:27227,15314576:27228,15314580:27229,15314586:27230,15314589:27231,15314590:27232,15314598:27233,15314599:27234,15314601:27235,15314604:27236,15314608:27237,15314609:27238,15314610:27239,15314615:27240,15314616:27241,15314619:27242,15314620:27243,15314622:27244,15314623:27245,15314817:27246,15314823:27247,15314824:27248,15314830:27249,15314832:27250,15314839:27251,15314840:27252,15314845:27253,15314847:27254,15314853:27255,15314855:27256,15314858:27257,15314859:27258,15314863:27259,15314867:27260,15314871:27261,15314872:27262,15314873:27425,15314874:27426,15314877:27427,15314879:27428,15315072:27429,15315074:27430,15315083:27431,15315087:27432,15315089:27433,15315094:27434,15315096:27435,15315097:27436,15315098:27437,15315100:27438,15315102:27439,15315106:27440,15315107:27441,15315110:27442,15315111:27443,15315112:27444,15315113:27445,15315114:27446,15315121:27447,15315125:27448,15315126:27449,15315127:27450,15315133:27451,15315329:27452,15315331:27453,15315332:27454,15315333:27455,15315337:27456,15315338:27457,15315342:27458,15315343:27459,15315344:27460,15315347:27461,15315348:27462,15315350:27463,15315352:27464,15315355:27465,15315357:27466,15315358:27467,15315359:27468,15315363:27469,15315369:27470,15315370:27471,15315356:27472,15315371:27473,15315368:27474,15315374:27475,15315376:27476,15315378:27477,15315381:27478,15315383:27479,15315387:27480,15315878:27481,15315890:27482,15315895:27483,15315897:27484,15316107:27485,15316098:27486,15316113:27487,15316119:27488,15316120:27489,15316124:27490,15316125:27491,15316126:27492,15316143:27493,15316144:27494,15316146:27495,15316147:27496,15316148:27497,15316154:27498,15316156:27499,15316357:27500,15316157:27501,15316354:27502,15316355:27503,15316359:27504,15316362:27505,15316371:27506,15316372:27507,15316383:27508,15316387:27509,15316386:27510,15316389:27511,15316393:27512,15316394:27513,15316395:27514,15316400:27515,15316406:27516,15316407:27517,15316411:27518,15316412:27681,15316414:27682,15316611:27683,15316612:27684,15316614:27685,15316618:27686,15316621:27687,15316622:27688,15316626:27689,15316627:27690,15316629:27691,15316630:27692,15316631:27693,15316632:27694,15316641:27695,15316650:27696,15316652:27697,15316654:27698,15316657:27699,15316661:27700,15316665:27701,15316668:27702,15316671:27703,15316867:27704,15316871:27705,15316873:27706,15316874:27707,15316884:27708,15316885:27709,15316886:27710,15316887:27711,15316890:27712,15316894:27713,15316895:27714,15316896:27715,15316901:27716,15316903:27717,15316905:27718,15316907:27719,15316910:27720,15316912:27721,15316915:27722,15316916:27723,15316926:27724,15317130:27725,15317122:27726,15317127:27727,15317134:27728,15317136:27729,15317137:27730,15317138:27731,15317141:27732,15317142:27733,15317145:27734,15317148:27735,15317149:27736,15317434:27737,15317435:27738,15317436:27739,15317632:27740,15317634:27741,15317635:27742,15317636:27743,15317637:27744,15317639:27745,15317646:27746,15317647:27747,15317654:27748,15317656:27749,15317659:27750,15317662:27751,15317668:27752,15317672:27753,15317676:27754,15317678:27755,15317679:27756,15317680:27757,15317683:27758,15317684:27759,15317685:27760,15317894:27761,15317896:27762,15317899:27763,15317909:27764,15317919:27765,15317924:27766,15317927:27767,15317932:27768,15317933:27769,15317934:27770,15317936:27771,15317937:27772,15317938:27773,15317941:27774,15317944:27937,15317951:27938,15318146:27939,15318147:27940,15318153:27941,15318159:27942,15318160:27943,15318161:27944,15318162:27945,15318164:27946,15318166:27947,15318167:27948,15318169:27949,15318170:27950,15318171:27951,15318175:27952,15318178:27953,15318182:27954,15318186:27955,15318187:27956,15318191:27957,15318193:27958,15318194:27959,15318196:27960,15318199:27961,15318201:27962,15318202:27963,15318204:27964,15318205:27965,15318207:27966,15318401:27967,15318403:27968,15318404:27969,15318405:27970,15318406:27971,15318407:27972,15318419:27973,15318421:27974,15318422:27975,15318423:27976,15318424:27977,15318426:27978,15318429:27979,15318430:27980,15318440:27981,15318441:27982,15318445:27983,15318446:27984,15318447:27985,15318448:27986,15318449:27987,15318451:27988,15318453:27989,15318458:27990,15318461:27991,15318671:27992,15318672:27993,15318673:27994,15318674:27995,15318676:27996,15318678:27997,15318679:27998,15318686:27999,15318689:28e3,15318690:28001,15318691:28002,15318693:28003,14909596:8513}},6128:(e,t,r)=>{var n=r(5046),i=String.fromCharCode,a=Array.prototype.slice,s=Object.prototype.toString,o=Object.prototype.hasOwnProperty,c=Array.isArray,u=Object.keys;function l(e){return c?c(e):"[object Array]"===s.call(e)}function h(e){if(u)return u(e);var t=[];for(var r in e)o.call(e,r)&&(t[t.length]=r);return t}function d(e,t){if(n.HAS_TYPED)switch(e){case 8:return new Uint8Array(t);case 16:return new Uint16Array(t)}return new Array(t)}function f(e){if(n.CAN_CHARCODE_APPLY&&n.CAN_CHARCODE_APPLY_TYPED){var t=e&&e.length;if(tn.APPLY_BUFFER_SIZE&&(n.APPLY_BUFFER_SIZE_OK=!0),r}catch(e){n.APPLY_BUFFER_SIZE_OK=!1}}return p(e)}function p(e){for(var t,r="",a=e&&e.length,s=0;sn.APPLY_BUFFER_SIZE&&(n.APPLY_BUFFER_SIZE_OK=!0);continue}catch(e){n.APPLY_BUFFER_SIZE_OK=!1}return y(e)}r+=i.apply(null,t)}return r}function y(e){for(var t="",r=e&&e.length,n=0;n>2],t[t.length]=g[(3&i)<<4],t[t.length]=b,t[t.length]=b;break}if(a=e[r++],r==n){t[t.length]=g[i>>2],t[t.length]=g[(3&i)<<4|(240&a)>>4],t[t.length]=g[(15&a)<<2],t[t.length]=b;break}s=e[r++],t[t.length]=g[i>>2],t[t.length]=g[(3&i)<<4|(240&a)>>4],t[t.length]=g[(15&a)<<2|(192&s)>>6],t[t.length]=g[63&s]}return f(t)},t.base64decode=function(e){var t,r,n,i,a,s,o;for(s=e&&e.length,a=0,o=[];a>4;do{if(61==(n=255&e.charCodeAt(a++)))return o;n=m[n]}while(a>2;do{if(61==(i=255&e.charCodeAt(a++)))return o;i=m[i]}while(a=l.ZERO&&e<=l.NINE}Object.defineProperty(t,"replaceCodePoint",{enumerable:!0,get:function(){return p.replaceCodePoint}}),Object.defineProperty(t,"fromCodePoint",{enumerable:!0,get:function(){return p.fromCodePoint}}),function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(l||(l={})),function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}(h=t.BinTrieFlags||(t.BinTrieFlags={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(d||(d={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(f=t.DecodingMode||(t.DecodingMode={}));var g=function(){function e(e,t,r){this.decodeTree=e,this.emitCodePoint=t,this.errors=r,this.state=d.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=f.Strict}return e.prototype.startEntity=function(e){this.decodeMode=e,this.state=d.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1},e.prototype.write=function(e,t){switch(this.state){case d.EntityStart:return e.charCodeAt(t)===l.NUM?(this.state=d.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=d.NamedEntity,this.stateNamedEntity(e,t));case d.NumericStart:return this.stateNumericStart(e,t);case d.NumericDecimal:return this.stateNumericDecimal(e,t);case d.NumericHex:return this.stateNumericHex(e,t);case d.NamedEntity:return this.stateNamedEntity(e,t)}},e.prototype.stateNumericStart=function(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===l.LOWER_X?(this.state=d.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=d.NumericDecimal,this.stateNumericDecimal(e,t))},e.prototype.addToNumericResult=function(e,t,r,n){if(t!==r){var i=r-t;this.result=this.result*Math.pow(n,i)+parseInt(e.substr(t,i),n),this.consumed+=i}},e.prototype.stateNumericHex=function(e,t){for(var r,n=t;t=l.UPPER_A&&r<=l.UPPER_F||r>=l.LOWER_A&&r<=l.LOWER_F)))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(i,3);t+=1}return this.addToNumericResult(e,n,t,16),-1},e.prototype.stateNumericDecimal=function(e,t){for(var r=t;t>14;t=l.UPPER_A&&e<=l.UPPER_Z||e>=l.LOWER_A&&e<=l.LOWER_Z||y(e)}(s)))?0:this.emitNotTerminatedNamedEntity();if(0!=(i=((n=r[this.treeIndex])&h.VALUE_LENGTH)>>14)){if(a===l.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==f.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}var s;return-1},e.prototype.emitNotTerminatedNamedEntity=function(){var e,t=this.result,r=(this.decodeTree[t]&h.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed},e.prototype.emitNamedEntityData=function(e,t,r){var n=this.decodeTree;return this.emitCodePoint(1===t?n[e]&~h.VALUE_LENGTH:n[e+1],r),3===t&&this.emitCodePoint(n[e+2],r),r},e.prototype.end=function(){var e;switch(this.state){case d.NamedEntity:return 0===this.result||this.decodeMode===f.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case d.NumericDecimal:return this.emitNumericEntity(0,2);case d.NumericHex:return this.emitNumericEntity(0,3);case d.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case d.EntityStart:return 0}},e}();function m(e){var t="",r=new g(e,(function(e){return t+=(0,u.fromCodePoint)(e)}));return function(e,n){for(var i=0,a=0;(a=e.indexOf("&",a))>=0;){t+=e.slice(i,a),r.startEntity(n);var s=r.write(e,a+1);if(s<0){i=a+r.end();break}i=a+s,a=0===s?i+1:i}var o=t+e.slice(i);return t="",o}}function b(e,t,r,n){var i=(t&h.BRANCH_LENGTH)>>7,a=t&h.JUMP_TABLE;if(0===i)return 0!==a&&n===a?r:-1;if(a){var s=n-a;return s<0||s>=i?-1:e[r+s]-1}for(var o=r,c=o+i-1;o<=c;){var u=o+c>>>1,l=e[u];if(ln))return e[u+i];c=u-1}}return-1}t.EntityDecoder=g,t.determineBranch=b;var w=m(o.default),v=m(c.default);t.decodeHTML=function(e,t){return void 0===t&&(t=f.Legacy),w(e,t)},t.decodeHTMLAttribute=function(e){return w(e,f.Attribute)},t.decodeHTMLStrict=function(e){return w(e,f.Strict)},t.decodeXML=function(e){return v(e,f.Strict)}},26:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.replaceCodePoint=t.fromCodePoint=void 0;var n=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function i(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=n.get(e))&&void 0!==t?t:e}t.fromCodePoint=null!==(r=String.fromCodePoint)&&void 0!==r?r:function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+String.fromCharCode(e)},t.replaceCodePoint=i,t.default=function(e){return(0,t.fromCodePoint)(i(e))}},7322:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.encodeNonAsciiHTML=t.encodeHTML=void 0;var i=n(r(4021)),a=r(4625),s=/[\t\n!-,./:-@[-`\f{-}$\x80-\uFFFF]/g;function o(e,t){for(var r,n="",s=0;null!==(r=e.exec(t));){var o=r.index;n+=t.substring(s,o);var c=t.charCodeAt(o),u=i.default.get(c);if("object"==typeof u){if(o+1{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.getCodePoint=t.xmlReplacer=void 0,t.xmlReplacer=/["&'<>$\x80-\uFFFF]/g;var r=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]);function n(e){for(var n,i="",a=0;null!==(n=t.xmlReplacer.exec(e));){var s=n.index,o=e.charCodeAt(s),c=r.get(o);void 0!==c?(i+=e.substring(a,s)+c,a=s+1):(i+="".concat(e.substring(a,s),"&#x").concat((0,t.getCodePoint)(e,s).toString(16),";"),a=t.xmlReplacer.lastIndex+=Number(55296==(64512&o)))}return i+e.substr(a)}function i(e,t){return function(r){for(var n,i=0,a="";n=e.exec(r);)i!==n.index&&(a+=r.substring(i,n.index)),a+=t.get(n[0].charCodeAt(0)),i=n.index+1;return a+r.substring(i)}}t.getCodePoint=null!=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){return 55296==(64512&e.charCodeAt(t))?1024*(e.charCodeAt(t)-55296)+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t)},t.encodeXML=n,t.escape=n,t.escapeUTF8=i(/[&<>'"]/g,r),t.escapeAttribute=i(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),t.escapeText=i(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))},3704:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(e){return e.charCodeAt(0)})))},2060:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(e){return e.charCodeAt(0)})))},4021:(e,t)=>{"use strict";function r(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLAttribute=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.DecodingMode=t.EntityDecoder=t.encodeHTML5=t.encodeHTML4=t.encodeNonAsciiHTML=t.encodeHTML=t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.encode=t.decodeStrict=t.decode=t.EncodingMode=t.EntityLevel=void 0;var n,i,a=r(4076),s=r(7322),o=r(4625);function c(e,t){if(void 0===t&&(t=n.XML),("number"==typeof t?t:t.level)===n.HTML){var r="object"==typeof t?t.mode:void 0;return(0,a.decodeHTML)(e,r)}return(0,a.decodeXML)(e)}!function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"}(n=t.EntityLevel||(t.EntityLevel={})),function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"}(i=t.EncodingMode||(t.EncodingMode={})),t.decode=c,t.decodeStrict=function(e,t){var r;void 0===t&&(t=n.XML);var i="number"==typeof t?{level:t}:t;return null!==(r=i.mode)&&void 0!==r||(i.mode=a.DecodingMode.Strict),c(e,i)},t.encode=function(e,t){void 0===t&&(t=n.XML);var r="number"==typeof t?{level:t}:t;return r.mode===i.UTF8?(0,o.escapeUTF8)(e):r.mode===i.Attribute?(0,o.escapeAttribute)(e):r.mode===i.Text?(0,o.escapeText)(e):r.level===n.HTML?r.mode===i.ASCII?(0,s.encodeNonAsciiHTML)(e):(0,s.encodeHTML)(e):(0,o.encodeXML)(e)};var u=r(4625);Object.defineProperty(t,"encodeXML",{enumerable:!0,get:function(){return u.encodeXML}}),Object.defineProperty(t,"escape",{enumerable:!0,get:function(){return u.escape}}),Object.defineProperty(t,"escapeUTF8",{enumerable:!0,get:function(){return u.escapeUTF8}}),Object.defineProperty(t,"escapeAttribute",{enumerable:!0,get:function(){return u.escapeAttribute}}),Object.defineProperty(t,"escapeText",{enumerable:!0,get:function(){return u.escapeText}});var l=r(7322);Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return l.encodeNonAsciiHTML}}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:function(){return l.encodeHTML}});var h=r(4076);Object.defineProperty(t,"EntityDecoder",{enumerable:!0,get:function(){return h.EntityDecoder}}),Object.defineProperty(t,"DecodingMode",{enumerable:!0,get:function(){return h.DecodingMode}}),Object.defineProperty(t,"decodeXML",{enumerable:!0,get:function(){return h.decodeXML}}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:function(){return h.decodeHTML}}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:function(){return h.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTMLAttribute",{enumerable:!0,get:function(){return h.decodeHTMLAttribute}}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:function(){return h.decodeHTML}}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:function(){return h.decodeHTML}}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:function(){return h.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:function(){return h.decodeHTMLStrict}}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:function(){return h.decodeXML}})},763:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;var s=a(r(9889)),o=r(4076),c=new Set(["input","option","optgroup","select","button","datalist","textarea"]),u=new Set(["p"]),l=new Set(["thead","tbody"]),h=new Set(["dd","dt"]),d=new Set(["rt","rp"]),f=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",u],["h1",u],["h2",u],["h3",u],["h4",u],["h5",u],["h6",u],["select",c],["input",c],["output",c],["button",c],["datalist",c],["textarea",c],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",h],["dt",h],["address",u],["article",u],["aside",u],["blockquote",u],["details",u],["div",u],["dl",u],["fieldset",u],["figcaption",u],["figure",u],["footer",u],["form",u],["header",u],["hr",u],["main",u],["nav",u],["ol",u],["pre",u],["section",u],["table",u],["ul",u],["rt",d],["rp",d],["tbody",l],["tfoot",l]]),p=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),y=new Set(["math","svg"]),g=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),m=/\s|\//,b=function(){function e(e,t){var r,n,i,a,o;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.lowerCaseTagNames=null!==(r=t.lowerCaseTags)&&void 0!==r?r:!t.xmlMode,this.lowerCaseAttributeNames=null!==(n=t.lowerCaseAttributeNames)&&void 0!==n?n:!t.xmlMode,this.tokenizer=new(null!==(i=t.Tokenizer)&&void 0!==i?i:s.default)(this.options,this),null===(o=(a=this.cbs).onparserinit)||void 0===o||o.call(a,this)}return e.prototype.ontext=function(e,t){var r,n,i=this.getSlice(e,t);this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,i),this.startIndex=t},e.prototype.ontextentity=function(e){var t,r,n=this.tokenizer.getSectionStart();this.endIndex=n-1,null===(r=(t=this.cbs).ontext)||void 0===r||r.call(t,(0,o.fromCodePoint)(e)),this.startIndex=n},e.prototype.isVoidElement=function(e){return!this.options.xmlMode&&p.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);this.lowerCaseTagNames&&(r=r.toLowerCase()),this.emitOpenTag(r)},e.prototype.emitOpenTag=function(e){var t,r,n,i;this.openTagStart=this.startIndex,this.tagname=e;var a=!this.options.xmlMode&&f.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){var s=this.stack.pop();null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,s,!0)}this.isVoidElement(e)||(this.stack.push(e),y.has(e)?this.foreignContext.push(!0):g.has(e)&&this.foreignContext.push(!1)),null===(i=(n=this.cbs).onopentagname)||void 0===i||i.call(n,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,r;this.startIndex=this.openTagStart,this.attribs&&(null===(r=(t=this.cbs).onopentag)||void 0===r||r.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){var r,n,i,a,s,o;this.endIndex=t;var c=this.getSlice(e,t);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(y.has(c)||g.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))this.options.xmlMode||"br"!==c||(null===(n=(r=this.cbs).onopentagname)||void 0===n||n.call(r,"br"),null===(a=(i=this.cbs).onopentag)||void 0===a||a.call(i,"br",{},!0),null===(o=(s=this.cbs).onclosetag)||void 0===o||o.call(s,"br",!1));else{var u=this.stack.lastIndexOf(c);if(-1!==u)if(this.cbs.onclosetag)for(var l=this.stack.length-u;l--;)this.cbs.onclosetag(this.stack.pop(),0!==l);else this.stack.length=u;else this.options.xmlMode||"p"!==c||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,r,n=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===n&&(null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,n,!e),this.stack.pop())},e.prototype.onattribname=function(e,t){this.startIndex=e;var r=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?r.toLowerCase():r},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,o.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var r,n;this.endIndex=t,null===(n=(r=this.cbs).onattribute)||void 0===n||n.call(r,this.attribname,this.attribvalue,e===s.QuoteType.Double?'"':e===s.QuoteType.Single?"'":e===s.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(m),r=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(r=r.toLowerCase()),r},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("!".concat(n),"!".concat(r))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("?".concat(n),"?".concat(r))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,r){var n,i,a,s;this.endIndex=t,null===(i=(n=this.cbs).oncomment)||void 0===i||i.call(n,this.getSlice(e,t-r)),null===(s=(a=this.cbs).oncommentend)||void 0===s||s.call(a),this.startIndex=t+1},e.prototype.oncdata=function(e,t,r){var n,i,a,s,o,c,u,l,h,d;this.endIndex=t;var f=this.getSlice(e,t-r);this.options.xmlMode||this.options.recognizeCDATA?(null===(i=(n=this.cbs).oncdatastart)||void 0===i||i.call(n),null===(s=(a=this.cbs).ontext)||void 0===s||s.call(a,f),null===(c=(o=this.cbs).oncdataend)||void 0===c||c.call(o)):(null===(l=(u=this.cbs).oncomment)||void 0===l||l.call(u,"[CDATA[".concat(f,"]]")),null===(d=(h=this.cbs).oncommentend)||void 0===d||d.call(h)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var r=this.stack.length;r>0;this.cbs.onclosetag(this.stack[--r],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)},e.prototype.reset=function(){var e,t,r,n;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(n=(r=this.cbs).onparserinit)||void 0===n||n.call(r,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1},e.prototype.parseComplete=function(e){this.reset(),this.end(e)},e.prototype.getSlice=function(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();for(var r=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),r+=this.buffers[0].slice(0,t-this.bufferOffset);return r},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))},e.prototype.end=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuoteType=void 0;var n,i,a,s=r(4076);function o(e){return e===n.Space||e===n.NewLine||e===n.Tab||e===n.FormFeed||e===n.CarriageReturn}function c(e){return e===n.Slash||e===n.Gt||o(e)}function u(e){return e>=n.Zero&&e<=n.Nine}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(n||(n={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"}(i||(i={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(a=t.QuoteType||(t.QuoteType={}));var l={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},h=function(){function e(e,t){var r=e.xmlMode,n=void 0!==r&&r,a=e.decodeEntities,o=void 0===a||a;this.cbs=t,this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=n,this.decodeEntities=o,this.entityTrie=n?s.xmlDecodeTree:s.htmlDecodeTree}return e.prototype.reset=function(){this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=i.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===n.Amp&&(this.state=i.BeforeEntity)},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?c(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=i.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===n.Gt||o(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=n.LowerA&&e<=n.LowerZ||e>=n.UpperA&&e<=n.UpperZ}(e)},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=i.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===n.ExclamationMark)this.state=i.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===n.Questionmark)this.state=i.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==l.TitleEnd[2]?this.state=this.xmlMode||t!==l.ScriptEnd[2]?i.InTagName:i.BeforeSpecialS:this.startSpecial(l.TitleEnd,3)}else e===n.Slash?this.state=i.BeforeClosingTagName:(this.state=i.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){c(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){o(e)||(e===n.Gt?this.state=i.Text:(this.state=this.isTagStartChar(e)?i.InClosingTagName:i.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===n.Gt||o(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===n.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=i.InSpecialTag,this.sequenceIndex=0):this.state=i.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===n.Slash?this.state=i.InSelfClosingTag:o(e)||(this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===n.Gt?(this.cbs.onselfclosingtag(this.index),this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1,this.isSpecial=!1):o(e)||(this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===n.Eq||c(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===n.Eq?this.state=i.BeforeAttributeValue:e===n.Slash||e===n.Gt?(this.cbs.onattribend(a.NoValue,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):o(e)||(this.cbs.onattribend(a.NoValue,this.index),this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===n.DoubleQuote?(this.state=i.InAttributeValueDq,this.sectionStart=this.index+1):e===n.SingleQuote?(this.state=i.InAttributeValueSq,this.sectionStart=this.index+1):o(e)||(this.sectionStart=this.index,this.state=i.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===n.DoubleQuote?a.Double:a.Single,this.index),this.state=i.BeforeAttributeName):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,n.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,n.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){o(e)||e===n.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(a.Unquoted,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateBeforeDeclaration=function(e){e===n.OpeningSquareBracket?(this.state=i.CDATASequence,this.sequenceIndex=0):this.state=e===n.Dash?i.BeforeComment:i.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===n.Dash?(this.state=i.InCommentLike,this.currentSequence=l.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=i.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===l.ScriptEnd[3]?this.startSpecial(l.ScriptEnd,4):t===l.StyleEnd[3]?this.startSpecial(l.StyleEnd,4):(this.state=i.InTagName,this.stateInTagName(e))},e.prototype.stateBeforeEntity=function(e){this.entityExcess=1,this.entityResult=0,e===n.Number?this.state=i.BeforeNumericEntity:e===n.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=i.InNamedEntity,this.stateInNamedEntity(e))},e.prototype.stateInNamedEntity=function(e){if(this.entityExcess+=1,this.trieIndex=(0,s.determineBranch)(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0)return this.emitNamedEntity(),void this.index--;this.trieCurrent=this.entityTrie[this.trieIndex];var t=this.trieCurrent&s.BinTrieFlags.VALUE_LENGTH;if(t){var r=(t>>14)-1;if(this.allowLegacyEntity()||e===n.Semi){var i=this.index-this.entityExcess+1;i>this.sectionStart&&this.emitPartial(this.sectionStart,i),this.entityResult=this.trieIndex,this.trieIndex+=r,this.entityExcess=0,this.sectionStart=this.index+1,0===r&&this.emitNamedEntity()}else this.trieIndex+=r}},e.prototype.emitNamedEntity=function(){if(this.state=this.baseState,0!==this.entityResult)switch((this.entityTrie[this.entityResult]&s.BinTrieFlags.VALUE_LENGTH)>>14){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~s.BinTrieFlags.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}},e.prototype.stateBeforeNumericEntity=function(e){(32|e)===n.LowerX?(this.entityExcess++,this.state=i.InHexEntity):(this.state=i.InNumericEntity,this.stateInNumericEntity(e))},e.prototype.emitNumericEntity=function(e){var t=this.index-this.entityExcess-1;t+2+Number(this.state===i.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint((0,s.replaceCodePoint)(this.entityResult))),this.state=this.baseState},e.prototype.stateInNumericEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=10*this.entityResult+(e-n.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.stateInHexEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=16*this.entityResult+(e-n.Zero),this.entityExcess++):function(e){return e>=n.UpperA&&e<=n.UpperF||e>=n.LowerA&&e<=n.LowerF}(e)?(this.entityResult=16*this.entityResult+((32|e)-n.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.allowLegacyEntity=function(){return!this.xmlMode&&(this.baseState===i.Text||this.baseState===i.InSpecialTag)},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===i.Text||this.state===i.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==i.InAttributeValueDq&&this.state!==i.InAttributeValueSq&&this.state!==i.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index{t.read=function(e,t,r,n,i){var a,s,o=8*i-n-1,c=(1<>1,l=-7,h=r?i-1:0,d=r?-1:1,f=e[t+h];for(h+=d,a=f&(1<<-l)-1,f>>=-l,l+=o;l>0;a=256*a+e[t+h],h+=d,l-=8);for(s=a&(1<<-l)-1,a>>=-l,l+=n;l>0;s=256*s+e[t+h],h+=d,l-=8);if(0===a)a=1-u;else{if(a===c)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,n),a-=u}return(f?-1:1)*s*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var s,o,c,u=8*a-i-1,l=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,p=n?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,s=l):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),(t+=s+h>=1?d/c:d*Math.pow(2,1-h))*c>=2&&(s++,c/=2),s+h>=l?(o=0,s=l):s+h>=1?(o=(t*c-1)*Math.pow(2,i),s+=h):(o=t*Math.pow(2,h-1)*Math.pow(2,i),s=0));i>=8;e[r+f]=255&o,f+=p,o/=256,i-=8);for(s=s<0;e[r+f]=255&s,f+=p,s/=256,u-=8);e[r+f-p]|=128*y}},6057:(e,t)=>{"use strict";function r(e){return"[object Object]"===Object.prototype.toString.call(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.isPlainObject=function(e){var t,n;return!1!==r(e)&&(void 0===(t=e.constructor)||!1!==r(n=t.prototype)&&!1!==n.hasOwnProperty("isPrototypeOf"))}},9430:function(e,t){var r,n;void 0===(n="function"==typeof(r=function(){return function(e){function t(e){return" "===e||"\t"===e||"\n"===e||"\f"===e||"\r"===e}function r(t){var r,n=t.exec(e.substring(y));if(n)return r=n[0],y+=r.length,r}for(var n,i,a,s,o,c=e.length,u=/^[ \t\n\r\u000c]+/,l=/^[, \t\n\r\u000c]+/,h=/^[^ \t\n\r\u000c]+/,d=/[,]+$/,f=/^\d+$/,p=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,y=0,g=[];;){if(r(l),y>=c)return g;n=r(h),i=[],","===n.slice(-1)?(n=n.replace(d,""),b()):m()}function m(){for(r(u),a="",s="in descriptor";;){if(o=e.charAt(y),"in descriptor"===s)if(t(o))a&&(i.push(a),a="",s="after descriptor");else{if(","===o)return y+=1,a&&i.push(a),void b();if("("===o)a+=o,s="in parens";else{if(""===o)return a&&i.push(a),void b();a+=o}}else if("in parens"===s)if(")"===o)a+=o,s="in descriptor";else{if(""===o)return i.push(a),void b();a+=o}else if("after descriptor"===s)if(t(o));else{if(""===o)return void b();s="in descriptor",y-=1}y+=1}}function b(){var t,r,a,s,o,c,u,l,h,d=!1,y={};for(s=0;s{var t=String,r=function(){return{isColorSupported:!1,reset:t,bold:t,dim:t,italic:t,underline:t,inverse:t,hidden:t,strikethrough:t,black:t,red:t,green:t,yellow:t,blue:t,magenta:t,cyan:t,white:t,gray:t,bgBlack:t,bgRed:t,bgGreen:t,bgYellow:t,bgBlue:t,bgMagenta:t,bgCyan:t,bgWhite:t}};e.exports=r(),e.exports.createColors=r},1353:(e,t,r)=>{"use strict";let n=r(1019);class i extends n{constructor(e){super(e),this.type="atrule"}append(...e){return this.proxyOf.nodes||(this.nodes=[]),super.append(...e)}prepend(...e){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...e)}}e.exports=i,i.default=i,n.registerAtRule(i)},9932:(e,t,r)=>{"use strict";let n=r(5631);class i extends n{constructor(e){super(e),this.type="comment"}}e.exports=i,i.default=i},1019:(e,t,r)=>{"use strict";let n,i,a,s,{isClean:o,my:c}=r(5513),u=r(4258),l=r(9932),h=r(5631);function d(e){return e.map((e=>(e.nodes&&(e.nodes=d(e.nodes)),delete e.source,e)))}function f(e){if(e[o]=!1,e.proxyOf.nodes)for(let t of e.proxyOf.nodes)f(t)}class p extends h{push(e){return e.parent=this,this.proxyOf.nodes.push(e),this}each(e){if(!this.proxyOf.nodes)return;let t,r,n=this.getIterator();for(;this.indexes[n]{let n;try{n=e(t,r)}catch(e){throw t.addToError(e)}return!1!==n&&t.walk&&(n=t.walk(e)),n}))}walkDecls(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("decl"===r.type&&e.test(r.prop))return t(r,n)})):this.walk(((r,n)=>{if("decl"===r.type&&r.prop===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("decl"===e.type)return t(e,r)})))}walkRules(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("rule"===r.type&&e.test(r.selector))return t(r,n)})):this.walk(((r,n)=>{if("rule"===r.type&&r.selector===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("rule"===e.type)return t(e,r)})))}walkAtRules(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("atrule"===r.type&&e.test(r.name))return t(r,n)})):this.walk(((r,n)=>{if("atrule"===r.type&&r.name===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("atrule"===e.type)return t(e,r)})))}walkComments(e){return this.walk(((t,r)=>{if("comment"===t.type)return e(t,r)}))}append(...e){for(let t of e){let e=this.normalize(t,this.last);for(let t of e)this.proxyOf.nodes.push(t)}return this.markDirty(),this}prepend(...e){e=e.reverse();for(let t of e){let e=this.normalize(t,this.first,"prepend").reverse();for(let t of e)this.proxyOf.nodes.unshift(t);for(let t in this.indexes)this.indexes[t]=this.indexes[t]+e.length}return this.markDirty(),this}cleanRaws(e){if(super.cleanRaws(e),this.nodes)for(let t of this.nodes)t.cleanRaws(e)}insertBefore(e,t){let r,n=this.index(e),i=0===n&&"prepend",a=this.normalize(t,this.proxyOf.nodes[n],i).reverse();n=this.index(e);for(let e of a)this.proxyOf.nodes.splice(n,0,e);for(let e in this.indexes)r=this.indexes[e],n<=r&&(this.indexes[e]=r+a.length);return this.markDirty(),this}insertAfter(e,t){let r,n=this.index(e),i=this.normalize(t,this.proxyOf.nodes[n]).reverse();n=this.index(e);for(let e of i)this.proxyOf.nodes.splice(n+1,0,e);for(let e in this.indexes)r=this.indexes[e],n=e&&(this.indexes[r]=t-1);return this.markDirty(),this}removeAll(){for(let e of this.proxyOf.nodes)e.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}replaceValues(e,t,r){return r||(r=t,t={}),this.walkDecls((n=>{t.props&&!t.props.includes(n.prop)||t.fast&&!n.value.includes(t.fast)||(n.value=n.value.replace(e,r))})),this.markDirty(),this}every(e){return this.nodes.every(e)}some(e){return this.nodes.some(e)}index(e){return"number"==typeof e?e:(e.proxyOf&&(e=e.proxyOf),this.proxyOf.nodes.indexOf(e))}get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}normalize(e,t){if("string"==typeof e)e=d(n(e).nodes);else if(Array.isArray(e)){e=e.slice(0);for(let t of e)t.parent&&t.parent.removeChild(t,"ignore")}else if("root"===e.type&&"document"!==this.type){e=e.nodes.slice(0);for(let t of e)t.parent&&t.parent.removeChild(t,"ignore")}else if(e.type)e=[e];else if(e.prop){if(void 0===e.value)throw new Error("Value field is missed in node creation");"string"!=typeof e.value&&(e.value=String(e.value)),e=[new u(e)]}else if(e.selector)e=[new i(e)];else if(e.name)e=[new a(e)];else{if(!e.text)throw new Error("Unknown node type in node creation");e=[new l(e)]}return e.map((e=>(e[c]||p.rebuild(e),(e=e.proxyOf).parent&&e.parent.removeChild(e),e[o]&&f(e),void 0===e.raws.before&&t&&void 0!==t.raws.before&&(e.raws.before=t.raws.before.replace(/\S/g,"")),e.parent=this.proxyOf,e)))}getProxyProcessor(){return{set:(e,t,r)=>(e[t]===r||(e[t]=r,"name"!==t&&"params"!==t&&"selector"!==t||e.markDirty()),!0),get:(e,t)=>"proxyOf"===t?e:e[t]?"each"===t||"string"==typeof t&&t.startsWith("walk")?(...r)=>e[t](...r.map((e=>"function"==typeof e?(t,r)=>e(t.toProxy(),r):e))):"every"===t||"some"===t?r=>e[t](((e,...t)=>r(e.toProxy(),...t))):"root"===t?()=>e.root().toProxy():"nodes"===t?e.nodes.map((e=>e.toProxy())):"first"===t||"last"===t?e[t].toProxy():e[t]:e[t]}}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let e=this.lastEach;return this.indexes[e]=0,e}}p.registerParse=e=>{n=e},p.registerRule=e=>{i=e},p.registerAtRule=e=>{a=e},p.registerRoot=e=>{s=e},e.exports=p,p.default=p,p.rebuild=e=>{"atrule"===e.type?Object.setPrototypeOf(e,a.prototype):"rule"===e.type?Object.setPrototypeOf(e,i.prototype):"decl"===e.type?Object.setPrototypeOf(e,u.prototype):"comment"===e.type?Object.setPrototypeOf(e,l.prototype):"root"===e.type&&Object.setPrototypeOf(e,s.prototype),e[c]=!0,e.nodes&&e.nodes.forEach((e=>{p.rebuild(e)}))}},2671:(e,t,r)=>{"use strict";let n=r(4241),i=r(2868);class a extends Error{constructor(e,t,r,n,i,s){super(e),this.name="CssSyntaxError",this.reason=e,i&&(this.file=i),n&&(this.source=n),s&&(this.plugin=s),void 0!==t&&void 0!==r&&("number"==typeof t?(this.line=t,this.column=r):(this.line=t.line,this.column=t.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,a)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"",void 0!==this.line&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(e){if(!this.source)return"";let t=this.source;null==e&&(e=n.isColorSupported),i&&e&&(t=i(t));let r,a,s=t.split(/\r?\n/),o=Math.max(this.line-3,0),c=Math.min(this.line+2,s.length),u=String(c).length;if(e){let{bold:e,red:t,gray:i}=n.createColors(!0);r=r=>e(t(r)),a=e=>i(e)}else r=a=e=>e;return s.slice(o,c).map(((e,t)=>{let n=o+1+t,i=" "+(" "+n).slice(-u)+" | ";if(n===this.line){let t=a(i.replace(/\d/g," "))+e.slice(0,this.column-1).replace(/[^\t]/g," ");return r(">")+a(i)+e+"\n "+t+r("^")}return" "+a(i)+e})).join("\n")}toString(){let e=this.showSourceCode();return e&&(e="\n\n"+e+"\n"),this.name+": "+this.message+e}}e.exports=a,a.default=a},4258:(e,t,r)=>{"use strict";let n=r(5631);class i extends n{constructor(e){e&&void 0!==e.value&&"string"!=typeof e.value&&(e={...e,value:String(e.value)}),super(e),this.type="decl"}get variable(){return this.prop.startsWith("--")||"$"===this.prop[0]}}e.exports=i,i.default=i},6461:(e,t,r)=>{"use strict";let n,i,a=r(1019);class s extends a{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new n(new i,this,e).stringify()}}s.registerLazyResult=e=>{n=e},s.registerProcessor=e=>{i=e},e.exports=s,s.default=s},250:(e,t,r)=>{"use strict";let n=r(4258),i=r(7981),a=r(9932),s=r(1353),o=r(5995),c=r(1025),u=r(1675);function l(e,t){if(Array.isArray(e))return e.map((e=>l(e)));let{inputs:r,...h}=e;if(r){t=[];for(let e of r){let r={...e,__proto__:o.prototype};r.map&&(r.map={...r.map,__proto__:i.prototype}),t.push(r)}}if(h.nodes&&(h.nodes=e.nodes.map((e=>l(e,t)))),h.source){let{inputId:e,...r}=h.source;h.source=r,null!=e&&(h.source.input=t[e])}if("root"===h.type)return new c(h);if("decl"===h.type)return new n(h);if("rule"===h.type)return new u(h);if("comment"===h.type)return new a(h);if("atrule"===h.type)return new s(h);throw new Error("Unknown node type: "+e.type)}e.exports=l,l.default=l},5995:(e,t,r)=>{"use strict";let{SourceMapConsumer:n,SourceMapGenerator:i}=r(209),{fileURLToPath:a,pathToFileURL:s}=r(7414),{resolve:o,isAbsolute:c}=r(9830),{nanoid:u}=r(2961),l=r(2868),h=r(2671),d=r(7981),f=Symbol("fromOffsetCache"),p=Boolean(n&&i),y=Boolean(o&&c);class g{constructor(e,t={}){if(null==e||"object"==typeof e&&!e.toString)throw new Error(`PostCSS received ${e} instead of CSS string`);if(this.css=e.toString(),"\ufeff"===this.css[0]||"￾"===this.css[0]?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!y||/^\w+:\/\//.test(t.from)||c(t.from)?this.file=t.from:this.file=o(t.from)),y&&p){let e=new d(this.css,t);if(e.text){this.map=e;let t=e.consumer().file;!this.file&&t&&(this.file=this.mapResolve(t))}}this.file||(this.id=""),this.map&&(this.map.file=this.from)}fromOffset(e){let t,r;if(this[f])r=this[f];else{let e=this.css.split("\n");r=new Array(e.length);let t=0;for(let n=0,i=e.length;n=t)n=r.length-1;else{let t,i=r.length-2;for(;n>1),e=r[t+1])){n=t;break}n=t+1}}return{line:n+1,col:e-r[n]+1}}error(e,t,r,n={}){let i,a,o;if(t&&"object"==typeof t){let e=t,n=r;if("number"==typeof e.offset){let n=this.fromOffset(e.offset);t=n.line,r=n.col}else t=e.line,r=e.column;if("number"==typeof n.offset){let e=this.fromOffset(n.offset);a=e.line,o=e.col}else a=n.line,o=n.column}else if(!r){let e=this.fromOffset(t);t=e.line,r=e.col}let c=this.origin(t,r,a,o);return i=c?new h(e,void 0===c.endLine?c.line:{line:c.line,column:c.column},void 0===c.endLine?c.column:{line:c.endLine,column:c.endColumn},c.source,c.file,n.plugin):new h(e,void 0===a?t:{line:t,column:r},void 0===a?r:{line:a,column:o},this.css,this.file,n.plugin),i.input={line:t,column:r,endLine:a,endColumn:o,source:this.css},this.file&&(s&&(i.input.url=s(this.file).toString()),i.input.file=this.file),i}origin(e,t,r,n){if(!this.map)return!1;let i,o,u=this.map.consumer(),l=u.originalPositionFor({line:e,column:t});if(!l.source)return!1;"number"==typeof r&&(i=u.originalPositionFor({line:r,column:n})),o=c(l.source)?s(l.source):new URL(l.source,this.map.consumer().sourceRoot||s(this.map.mapFile));let h={url:o.toString(),line:l.line,column:l.column,endLine:i&&i.line,endColumn:i&&i.column};if("file:"===o.protocol){if(!a)throw new Error("file: protocol is not available in this PostCSS build");h.file=a(o)}let d=u.sourceContentFor(l.source);return d&&(h.source=d),h}mapResolve(e){return/^\w+:\/\//.test(e)?e:o(this.map.consumer().sourceRoot||this.map.root||".",e)}get from(){return this.file||this.id}toJSON(){let e={};for(let t of["hasBOM","css","file","id"])null!=this[t]&&(e[t]=this[t]);return this.map&&(e.map={...this.map},e.map.consumerCache&&(e.map.consumerCache=void 0)),e}}e.exports=g,g.default=g,l&&l.registerInput&&l.registerInput(g)},1939:(e,t,r)=>{"use strict";let{isClean:n,my:i}=r(5513),a=r(8505),s=r(7088),o=r(1019),c=r(6461),u=(r(2448),r(3632)),l=r(6939),h=r(1025);const d={document:"Document",root:"Root",atrule:"AtRule",rule:"Rule",decl:"Declaration",comment:"Comment"},f={postcssPlugin:!0,prepare:!0,Once:!0,Document:!0,Root:!0,Declaration:!0,Rule:!0,AtRule:!0,Comment:!0,DeclarationExit:!0,RuleExit:!0,AtRuleExit:!0,CommentExit:!0,RootExit:!0,DocumentExit:!0,OnceExit:!0},p={postcssPlugin:!0,prepare:!0,Once:!0},y=0;function g(e){return"object"==typeof e&&"function"==typeof e.then}function m(e){let t=!1,r=d[e.type];return"decl"===e.type?t=e.prop.toLowerCase():"atrule"===e.type&&(t=e.name.toLowerCase()),t&&e.append?[r,r+"-"+t,y,r+"Exit",r+"Exit-"+t]:t?[r,r+"-"+t,r+"Exit",r+"Exit-"+t]:e.append?[r,y,r+"Exit"]:[r,r+"Exit"]}function b(e){let t;return t="document"===e.type?["Document",y,"DocumentExit"]:"root"===e.type?["Root",y,"RootExit"]:m(e),{node:e,events:t,eventIndex:0,visitors:[],visitorIndex:0,iterator:0}}function w(e){return e[n]=!1,e.nodes&&e.nodes.forEach((e=>w(e))),e}let v={};class k{constructor(e,t,r){let n;if(this.stringified=!1,this.processed=!1,"object"!=typeof t||null===t||"root"!==t.type&&"document"!==t.type)if(t instanceof k||t instanceof u)n=w(t.root),t.map&&(void 0===r.map&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=t.map);else{let e=l;r.syntax&&(e=r.syntax.parse),r.parser&&(e=r.parser),e.parse&&(e=e.parse);try{n=e(t,r)}catch(e){this.processed=!0,this.error=e}n&&!n[i]&&o.rebuild(n)}else n=w(t);this.result=new u(e,n,r),this.helpers={...v,result:this.result,postcss:v},this.plugins=this.processor.plugins.map((e=>"object"==typeof e&&e.prepare?{...e,...e.prepare(this.result)}:e))}get[Symbol.toStringTag](){return"LazyResult"}get processor(){return this.result.processor}get opts(){return this.result.opts}get css(){return this.stringify().css}get content(){return this.stringify().content}get map(){return this.stringify().map}get root(){return this.sync().root}get messages(){return this.sync().messages}warnings(){return this.sync().warnings()}toString(){return this.css}then(e,t){return this.async().then(e,t)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let e of this.plugins)if(g(this.runOnRoot(e)))throw this.getAsyncError();if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[n];)e[n]=!0,this.walkSync(e);if(this.listeners.OnceExit)if("document"===e.type)for(let t of e.nodes)this.visitSync(this.listeners.OnceExit,t);else this.visitSync(this.listeners.OnceExit,e)}return this.result}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let e=this.result.opts,t=s;e.syntax&&(t=e.syntax.stringify),e.stringifier&&(t=e.stringifier),t.stringify&&(t=t.stringify);let r=new a(t,this.result.root,this.result.opts).generate();return this.result.css=r[0],this.result.map=r[1],this.result}walkSync(e){e[n]=!0;let t=m(e);for(let r of t)if(r===y)e.nodes&&e.each((e=>{e[n]||this.walkSync(e)}));else{let t=this.listeners[r];if(t&&this.visitSync(t,e.toProxy()))return}}visitSync(e,t){for(let[r,n]of e){let e;this.result.lastPlugin=r;try{e=n(t,this.helpers)}catch(e){throw this.handleError(e,t.proxyOf)}if("root"!==t.type&&"document"!==t.type&&!t.parent)return!0;if(g(e))throw this.getAsyncError()}}runOnRoot(e){this.result.lastPlugin=e;try{if("object"==typeof e&&e.Once){if("document"===this.result.root.type){let t=this.result.root.nodes.map((t=>e.Once(t,this.helpers)));return g(t[0])?Promise.all(t):t}return e.Once(this.result.root,this.helpers)}if("function"==typeof e)return e(this.result.root,this.result)}catch(e){throw this.handleError(e)}}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(e,t){let r=this.result.lastPlugin;try{t&&t.addToError(e),this.error=e,"CssSyntaxError"!==e.name||e.plugin?r.postcssVersion:(e.plugin=r.postcssPlugin,e.setMessage())}catch(e){console&&console.error&&console.error(e)}return e}async runAsync(){this.plugin=0;for(let e=0;e0;){let e=this.visitTick(t);if(g(e))try{await e}catch(e){let r=t[t.length-1].node;throw this.handleError(e,r)}}}if(this.listeners.OnceExit)for(let[t,r]of this.listeners.OnceExit){this.result.lastPlugin=t;try{if("document"===e.type){let t=e.nodes.map((e=>r(e,this.helpers)));await Promise.all(t)}else await r(e,this.helpers)}catch(e){throw this.handleError(e)}}}return this.processed=!0,this.stringify()}prepareVisitors(){this.listeners={};let e=(e,t,r)=>{this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push([e,r])};for(let t of this.plugins)if("object"==typeof t)for(let r in t){if(!f[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${t.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!p[r])if("object"==typeof t[r])for(let n in t[r])e(t,"*"===n?r:r+"-"+n.toLowerCase(),t[r][n]);else"function"==typeof t[r]&&e(t,r,t[r])}this.hasListener=Object.keys(this.listeners).length>0}visitTick(e){let t=e[e.length-1],{node:r,visitors:i}=t;if("root"!==r.type&&"document"!==r.type&&!r.parent)return void e.pop();if(i.length>0&&t.visitorIndex{v=e},e.exports=k,k.default=k,h.registerLazyResult(k),c.registerLazyResult(k)},4715:e=>{"use strict";let t={split(e,t,r){let n=[],i="",a=!1,s=0,o=!1,c="",u=!1;for(let r of e)u?u=!1:"\\"===r?u=!0:o?r===c&&(o=!1):'"'===r||"'"===r?(o=!0,c=r):"("===r?s+=1:")"===r?s>0&&(s-=1):0===s&&t.includes(r)&&(a=!0),a?(""!==i&&n.push(i.trim()),i="",a=!1):i+=r;return(r||""!==i)&&n.push(i.trim()),n},space:e=>t.split(e,[" ","\n","\t"]),comma:e=>t.split(e,[","],!0)};e.exports=t,t.default=t},8505:(e,t,r)=>{"use strict";let{SourceMapConsumer:n,SourceMapGenerator:i}=r(209),{dirname:a,resolve:s,relative:o,sep:c}=r(9830),{pathToFileURL:u}=r(7414),l=r(5995),h=Boolean(n&&i),d=Boolean(a&&s&&o&&c);e.exports=class{constructor(e,t,r,n){this.stringify=e,this.mapOpts=r.map||{},this.root=t,this.opts=r,this.css=n,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute}isMap(){return void 0!==this.opts.map?!!this.opts.map:this.previous().length>0}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk((e=>{if(e.source&&e.source.input.map){let t=e.source.input.map;this.previousMaps.includes(t)||this.previousMaps.push(t)}}));else{let e=new l(this.css,this.opts);e.map&&this.previousMaps.push(e.map)}return this.previousMaps}isInline(){if(void 0!==this.mapOpts.inline)return this.mapOpts.inline;let e=this.mapOpts.annotation;return(void 0===e||!0===e)&&(!this.previous().length||this.previous().some((e=>e.inline)))}isSourcesContent(){return void 0!==this.mapOpts.sourcesContent?this.mapOpts.sourcesContent:!this.previous().length||this.previous().some((e=>e.withContent()))}clearAnnotation(){if(!1!==this.mapOpts.annotation)if(this.root){let e;for(let t=this.root.nodes.length-1;t>=0;t--)e=this.root.nodes[t],"comment"===e.type&&0===e.text.indexOf("# sourceMappingURL=")&&this.root.removeChild(t)}else this.css&&(this.css=this.css.replace(/(\n)?\/\*#[\S\s]*?\*\/$/gm,""))}setSourcesContent(){let e={};if(this.root)this.root.walk((t=>{if(t.source){let r=t.source.input.from;if(r&&!e[r]){e[r]=!0;let n=this.usesFileUrls?this.toFileUrl(r):this.toUrl(this.path(r));this.map.setSourceContent(n,t.source.input.css)}}}));else if(this.css){let e=this.opts.from?this.toUrl(this.path(this.opts.from)):"";this.map.setSourceContent(e,this.css)}}applyPrevMaps(){for(let e of this.previous()){let t,r=this.toUrl(this.path(e.file)),i=e.root||a(e.file);!1===this.mapOpts.sourcesContent?(t=new n(e.text),t.sourcesContent&&(t.sourcesContent=t.sourcesContent.map((()=>null)))):t=e.consumer(),this.map.applySourceMap(t,r,this.toUrl(this.path(i)))}}isAnnotation(){return!!this.isInline()||(void 0!==this.mapOpts.annotation?this.mapOpts.annotation:!this.previous().length||this.previous().some((e=>e.annotation)))}toBase64(e){return Buffer?Buffer.from(e).toString("base64"):window.btoa(unescape(encodeURIComponent(e)))}addAnnotation(){let e;e=this.isInline()?"data:application/json;base64,"+this.toBase64(this.map.toString()):"string"==typeof this.mapOpts.annotation?this.mapOpts.annotation:"function"==typeof this.mapOpts.annotation?this.mapOpts.annotation(this.opts.to,this.root):this.outputFile()+".map";let t="\n";this.css.includes("\r\n")&&(t="\r\n"),this.css+=t+"/*# sourceMappingURL="+e+" */"}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}generateMap(){if(this.root)this.generateString();else if(1===this.previous().length){let e=this.previous()[0].consumer();e.file=this.outputFile(),this.map=i.fromSourceMap(e)}else this.map=new i({file:this.outputFile()}),this.map.addMapping({source:this.opts.from?this.toUrl(this.path(this.opts.from)):"",generated:{line:1,column:0},original:{line:1,column:0}});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]}path(e){if(0===e.indexOf("<"))return e;if(/^\w+:\/\//.test(e))return e;if(this.mapOpts.absolute)return e;let t=this.opts.to?a(this.opts.to):".";return"string"==typeof this.mapOpts.annotation&&(t=a(s(t,this.mapOpts.annotation))),o(t,e)}toUrl(e){return"\\"===c&&(e=e.replace(/\\/g,"/")),encodeURI(e).replace(/[#?]/g,encodeURIComponent)}toFileUrl(e){if(u)return u(e).toString();throw new Error("`map.absolute` option is not available in this PostCSS build")}sourcePath(e){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(e.source.input.from):this.toUrl(this.path(e.source.input.from))}generateString(){this.css="",this.map=new i({file:this.outputFile()});let e,t,r=1,n=1,a="",s={source:"",generated:{line:0,column:0},original:{line:0,column:0}};this.stringify(this.root,((i,o,c)=>{if(this.css+=i,o&&"end"!==c&&(s.generated.line=r,s.generated.column=n-1,o.source&&o.source.start?(s.source=this.sourcePath(o),s.original.line=o.source.start.line,s.original.column=o.source.start.column-1,this.map.addMapping(s)):(s.source=a,s.original.line=1,s.original.column=0,this.map.addMapping(s))),e=i.match(/\n/g),e?(r+=e.length,t=i.lastIndexOf("\n"),n=i.length-t):n+=i.length,o&&"start"!==c){let e=o.parent||{raws:{}};("decl"===o.type||"atrule"===o.type&&!o.nodes)&&o===e.last&&!e.raws.semicolon||(o.source&&o.source.end?(s.source=this.sourcePath(o),s.original.line=o.source.end.line,s.original.column=o.source.end.column-1,s.generated.line=r,s.generated.column=n-2,this.map.addMapping(s)):(s.source=a,s.original.line=1,s.original.column=0,s.generated.line=r,s.generated.column=n-1,this.map.addMapping(s)))}}))}generate(){if(this.clearAnnotation(),d&&h&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,(t=>{e+=t})),[e]}}}},7647:(e,t,r)=>{"use strict";let n=r(8505),i=r(7088),a=(r(2448),r(6939));const s=r(3632);class o{constructor(e,t,r){let a;t=t.toString(),this.stringified=!1,this._processor=e,this._css=t,this._opts=r,this._map=void 0;let o=i;this.result=new s(this._processor,a,this._opts),this.result.css=t;let c=this;Object.defineProperty(this.result,"root",{get:()=>c.root});let u=new n(o,a,this._opts,t);if(u.isMap()){let[e,t]=u.generate();e&&(this.result.css=e),t&&(this.result.map=t)}}get[Symbol.toStringTag](){return"NoWorkResult"}get processor(){return this.result.processor}get opts(){return this.result.opts}get css(){return this.result.css}get content(){return this.result.css}get map(){return this.result.map}get root(){if(this._root)return this._root;let e,t=a;try{e=t(this._css,this._opts)}catch(e){this.error=e}if(this.error)throw this.error;return this._root=e,e}get messages(){return[]}warnings(){return[]}toString(){return this._css}then(e,t){return this.async().then(e,t)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}sync(){if(this.error)throw this.error;return this.result}}e.exports=o,o.default=o},5631:(e,t,r)=>{"use strict";let{isClean:n,my:i}=r(5513),a=r(2671),s=r(1062),o=r(7088);function c(e,t){let r=new e.constructor;for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue;if("proxyCache"===n)continue;let i=e[n],a=typeof i;"parent"===n&&"object"===a?t&&(r[n]=t):"source"===n?r[n]=i:Array.isArray(i)?r[n]=i.map((e=>c(e,r))):("object"===a&&null!==i&&(i=c(i)),r[n]=i)}return r}class u{constructor(e={}){this.raws={},this[n]=!1,this[i]=!0;for(let t in e)if("nodes"===t){this.nodes=[];for(let r of e[t])"function"==typeof r.clone?this.append(r.clone()):this.append(r)}else this[t]=e[t]}error(e,t={}){if(this.source){let{start:r,end:n}=this.rangeBy(t);return this.source.input.error(e,{line:r.line,column:r.column},{line:n.line,column:n.column},t)}return new a(e)}warn(e,t,r){let n={node:this};for(let e in r)n[e]=r[e];return e.warn(t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}toString(e=o){e.stringify&&(e=e.stringify);let t="";return e(this,(e=>{t+=e})),t}assign(e={}){for(let t in e)this[t]=e[t];return this}clone(e={}){let t=c(this);for(let r in e)t[r]=e[r];return t}cloneBefore(e={}){let t=this.clone(e);return this.parent.insertBefore(this,t),t}cloneAfter(e={}){let t=this.clone(e);return this.parent.insertAfter(this,t),t}replaceWith(...e){if(this.parent){let t=this,r=!1;for(let n of e)n===this?r=!0:r?(this.parent.insertAfter(t,n),t=n):this.parent.insertBefore(t,n);r||this.remove()}return this}next(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e+1]}prev(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e-1]}before(e){return this.parent.insertBefore(this,e),this}after(e){return this.parent.insertAfter(this,e),this}root(){let e=this;for(;e.parent&&"document"!==e.parent.type;)e=e.parent;return e}raw(e,t){return(new s).raw(this,e,t)}cleanRaws(e){delete this.raws.before,delete this.raws.after,e||delete this.raws.between}toJSON(e,t){let r={},n=null==t;t=t||new Map;let i=0;for(let e in this){if(!Object.prototype.hasOwnProperty.call(this,e))continue;if("parent"===e||"proxyCache"===e)continue;let n=this[e];if(Array.isArray(n))r[e]=n.map((e=>"object"==typeof e&&e.toJSON?e.toJSON(null,t):e));else if("object"==typeof n&&n.toJSON)r[e]=n.toJSON(null,t);else if("source"===e){let a=t.get(n.input);null==a&&(a=i,t.set(n.input,i),i++),r[e]={inputId:a,start:n.start,end:n.end}}else r[e]=n}return n&&(r.inputs=[...t.keys()].map((e=>e.toJSON()))),r}positionInside(e){let t=this.toString(),r=this.source.start.column,n=this.source.start.line;for(let i=0;i(e[t]===r||(e[t]=r,"prop"!==t&&"value"!==t&&"name"!==t&&"params"!==t&&"important"!==t&&"text"!==t||e.markDirty()),!0),get:(e,t)=>"proxyOf"===t?e:"root"===t?()=>e.root().toProxy():e[t]}}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}addToError(e){if(e.postcssNode=this,e.stack&&this.source&&/\n\s{4}at /.test(e.stack)){let t=this.source;e.stack=e.stack.replace(/\n\s{4}at /,`$&${t.input.from}:${t.start.line}:${t.start.column}$&`)}return e}markDirty(){if(this[n]){this[n]=!1;let e=this;for(;e=e.parent;)e[n]=!1}}get proxyOf(){return this}}e.exports=u,u.default=u},6939:(e,t,r)=>{"use strict";let n=r(1019),i=r(8867),a=r(5995);function s(e,t){let r=new a(e,t),n=new i(r);try{n.parse()}catch(e){throw e}return n.root}e.exports=s,s.default=s,n.registerParse(s)},8867:(e,t,r)=>{"use strict";let n=r(4258),i=r(3852),a=r(9932),s=r(1353),o=r(1025),c=r(1675);const u={empty:!0,space:!0};e.exports=class{constructor(e){this.input=e,this.root=new o,this.current=this.root,this.spaces="",this.semicolon=!1,this.customProperty=!1,this.createTokenizer(),this.root.source={input:e,start:{offset:0,line:1,column:1}}}createTokenizer(){this.tokenizer=i(this.input)}parse(){let e;for(;!this.tokenizer.endOfFile();)switch(e=this.tokenizer.nextToken(),e[0]){case"space":this.spaces+=e[1];break;case";":this.freeSemicolon(e);break;case"}":this.end(e);break;case"comment":this.comment(e);break;case"at-word":this.atrule(e);break;case"{":this.emptyRule(e);break;default:this.other(e)}this.endFile()}comment(e){let t=new a;this.init(t,e[2]),t.source.end=this.getPosition(e[3]||e[2]);let r=e[1].slice(2,-2);if(/^\s*$/.test(r))t.text="",t.raws.left=r,t.raws.right="";else{let e=r.match(/^(\s*)([^]*\S)(\s*)$/);t.text=e[2],t.raws.left=e[1],t.raws.right=e[3]}}emptyRule(e){let t=new c;this.init(t,e[2]),t.selector="",t.raws.between="",this.current=t}other(e){let t=!1,r=null,n=!1,i=null,a=[],s=e[1].startsWith("--"),o=[],c=e;for(;c;){if(r=c[0],o.push(c),"("===r||"["===r)i||(i=c),a.push("("===r?")":"]");else if(s&&n&&"{"===r)i||(i=c),a.push("}");else if(0===a.length){if(";"===r){if(n)return void this.decl(o,s);break}if("{"===r)return void this.rule(o);if("}"===r){this.tokenizer.back(o.pop()),t=!0;break}":"===r&&(n=!0)}else r===a[a.length-1]&&(a.pop(),0===a.length&&(i=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(t=!0),a.length>0&&this.unclosedBracket(i),t&&n){if(!s)for(;o.length&&(c=o[o.length-1][0],"space"===c||"comment"===c);)this.tokenizer.back(o.pop());this.decl(o,s)}else this.unknownWord(o)}rule(e){e.pop();let t=new c;this.init(t,e[0][2]),t.raws.between=this.spacesAndCommentsFromEnd(e),this.raw(t,"selector",e),this.current=t}decl(e,t){let r=new n;this.init(r,e[0][2]);let i,a=e[e.length-1];for(";"===a[0]&&(this.semicolon=!0,e.pop()),r.source.end=this.getPosition(a[3]||a[2]||function(e){for(let t=e.length-1;t>=0;t--){let r=e[t],n=r[3]||r[2];if(n)return n}}(e));"word"!==e[0][0];)1===e.length&&this.unknownWord(e),r.raws.before+=e.shift()[1];for(r.source.start=this.getPosition(e[0][2]),r.prop="";e.length;){let t=e[0][0];if(":"===t||"space"===t||"comment"===t)break;r.prop+=e.shift()[1]}for(r.raws.between="";e.length;){if(i=e.shift(),":"===i[0]){r.raws.between+=i[1];break}"word"===i[0]&&/\w/.test(i[1])&&this.unknownWord([i]),r.raws.between+=i[1]}"_"!==r.prop[0]&&"*"!==r.prop[0]||(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let s,o=[];for(;e.length&&(s=e[0][0],"space"===s||"comment"===s);)o.push(e.shift());this.precheckMissedSemicolon(e);for(let t=e.length-1;t>=0;t--){if(i=e[t],"!important"===i[1].toLowerCase()){r.important=!0;let n=this.stringFrom(e,t);n=this.spacesFromEnd(e)+n," !important"!==n&&(r.raws.important=n);break}if("important"===i[1].toLowerCase()){let n=e.slice(0),i="";for(let e=t;e>0;e--){let t=n[e][0];if(0===i.trim().indexOf("!")&&"space"!==t)break;i=n.pop()[1]+i}0===i.trim().indexOf("!")&&(r.important=!0,r.raws.important=i,e=n)}if("space"!==i[0]&&"comment"!==i[0])break}e.some((e=>"space"!==e[0]&&"comment"!==e[0]))&&(r.raws.between+=o.map((e=>e[1])).join(""),o=[]),this.raw(r,"value",o.concat(e),t),r.value.includes(":")&&!t&&this.checkMissedSemicolon(e)}atrule(e){let t,r,n,i=new s;i.name=e[1].slice(1),""===i.name&&this.unnamedAtrule(i,e),this.init(i,e[2]);let a=!1,o=!1,c=[],u=[];for(;!this.tokenizer.endOfFile();){if(t=(e=this.tokenizer.nextToken())[0],"("===t||"["===t?u.push("("===t?")":"]"):"{"===t&&u.length>0?u.push("}"):t===u[u.length-1]&&u.pop(),0===u.length){if(";"===t){i.source.end=this.getPosition(e[2]),this.semicolon=!0;break}if("{"===t){o=!0;break}if("}"===t){if(c.length>0){for(n=c.length-1,r=c[n];r&&"space"===r[0];)r=c[--n];r&&(i.source.end=this.getPosition(r[3]||r[2]))}this.end(e);break}c.push(e)}else c.push(e);if(this.tokenizer.endOfFile()){a=!0;break}}i.raws.between=this.spacesAndCommentsFromEnd(c),c.length?(i.raws.afterName=this.spacesAndCommentsFromStart(c),this.raw(i,"params",c),a&&(e=c[c.length-1],i.source.end=this.getPosition(e[3]||e[2]),this.spaces=i.raws.between,i.raws.between="")):(i.raws.afterName="",i.params=""),o&&(i.nodes=[],this.current=i)}end(e){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(e[2]),this.current=this.current.parent):this.unexpectedClose(e)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces}freeSemicolon(e){if(this.spaces+=e[1],this.current.nodes){let e=this.current.nodes[this.current.nodes.length-1];e&&"rule"===e.type&&!e.raws.ownSemicolon&&(e.raws.ownSemicolon=this.spaces,this.spaces="")}}getPosition(e){let t=this.input.fromOffset(e);return{offset:e,line:t.line,column:t.col}}init(e,t){this.current.push(e),e.source={start:this.getPosition(t),input:this.input},e.raws.before=this.spaces,this.spaces="","comment"!==e.type&&(this.semicolon=!1)}raw(e,t,r,n){let i,a,s,o,c=r.length,l="",h=!0;for(let e=0;ee+t[1]),"");e.raws[t]={value:l,raw:n}}e[t]=l}spacesAndCommentsFromEnd(e){let t,r="";for(;e.length&&(t=e[e.length-1][0],"space"===t||"comment"===t);)r=e.pop()[1]+r;return r}spacesAndCommentsFromStart(e){let t,r="";for(;e.length&&(t=e[0][0],"space"===t||"comment"===t);)r+=e.shift()[1];return r}spacesFromEnd(e){let t,r="";for(;e.length&&(t=e[e.length-1][0],"space"===t);)r=e.pop()[1]+r;return r}stringFrom(e,t){let r="";for(let n=t;n=0&&(r=e[i],"space"===r[0]||(n+=1,2!==n));i--);throw this.input.error("Missed semicolon","word"===r[0]?r[3]+1:r[2])}}},20:(e,t,r)=>{"use strict";let n=r(2671),i=r(4258),a=r(1939),s=r(1019),o=r(1723),c=r(7088),u=r(250),l=r(6461),h=r(1728),d=r(9932),f=r(1353),p=r(3632),y=r(5995),g=r(6939),m=r(4715),b=r(1675),w=r(1025),v=r(5631);function k(...e){return 1===e.length&&Array.isArray(e[0])&&(e=e[0]),new o(e)}k.plugin=function(e,t){let r,n=!1;function i(...r){console&&console.warn&&!n&&(n=!0,console.warn(e+": postcss.plugin was deprecated. Migration guide:\nhttps://evilmartians.com/chronicles/postcss-8-plugin-migration"),process.env.LANG&&process.env.LANG.startsWith("cn")&&console.warn(e+": 里面 postcss.plugin 被弃用. 迁移指南:\nhttps://www.w3ctech.com/topic/2226"));let i=t(...r);return i.postcssPlugin=e,i.postcssVersion=(new o).version,i}return Object.defineProperty(i,"postcss",{get:()=>(r||(r=i()),r)}),i.process=function(e,t,r){return k([i(r)]).process(e,t)},i},k.stringify=c,k.parse=g,k.fromJSON=u,k.list=m,k.comment=e=>new d(e),k.atRule=e=>new f(e),k.decl=e=>new i(e),k.rule=e=>new b(e),k.root=e=>new w(e),k.document=e=>new l(e),k.CssSyntaxError=n,k.Declaration=i,k.Container=s,k.Processor=o,k.Document=l,k.Comment=d,k.Warning=h,k.AtRule=f,k.Result=p,k.Input=y,k.Rule=b,k.Root=w,k.Node=v,a.registerPostcss(k),e.exports=k,k.default=k},7981:(e,t,r)=>{"use strict";let{SourceMapConsumer:n,SourceMapGenerator:i}=r(209),{existsSync:a,readFileSync:s}=r(4777),{dirname:o,join:c}=r(9830);class u{constructor(e,t){if(!1===t.map)return;this.loadAnnotation(e),this.inline=this.startWith(this.annotation,"data:");let r=t.map?t.map.prev:void 0,n=this.loadMap(t.from,r);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=o(this.mapFile)),n&&(this.text=n)}consumer(){return this.consumerCache||(this.consumerCache=new n(this.text)),this.consumerCache}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}startWith(e,t){return!!e&&e.substr(0,t.length)===t}getAnnotationURL(e){return e.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}loadAnnotation(e){let t=e.match(/\/\*\s*# sourceMappingURL=/gm);if(!t)return;let r=e.lastIndexOf(t.pop()),n=e.indexOf("*/",r);r>-1&&n>-1&&(this.annotation=this.getAnnotationURL(e.substring(r,n)))}decodeInline(e){if(/^data:application\/json;charset=utf-?8,/.test(e)||/^data:application\/json,/.test(e))return decodeURIComponent(e.substr(RegExp.lastMatch.length));if(/^data:application\/json;charset=utf-?8;base64,/.test(e)||/^data:application\/json;base64,/.test(e))return t=e.substr(RegExp.lastMatch.length),Buffer?Buffer.from(t,"base64").toString():window.atob(t);var t;let r=e.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+r)}loadFile(e){if(this.root=o(e),a(e))return this.mapFile=e,s(e,"utf-8").toString().trim()}loadMap(e,t){if(!1===t)return!1;if(t){if("string"==typeof t)return t;if("function"!=typeof t){if(t instanceof n)return i.fromSourceMap(t).toString();if(t instanceof i)return t.toString();if(this.isMap(t))return JSON.stringify(t);throw new Error("Unsupported previous source map format: "+t.toString())}{let r=t(e);if(r){let e=this.loadFile(r);if(!e)throw new Error("Unable to load previous source map: "+r.toString());return e}}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let t=this.annotation;return e&&(t=c(o(e),t)),this.loadFile(t)}}}isMap(e){return"object"==typeof e&&("string"==typeof e.mappings||"string"==typeof e._mappings||Array.isArray(e.sections))}}e.exports=u,u.default=u},1723:(e,t,r)=>{"use strict";let n=r(7647),i=r(1939),a=r(6461),s=r(1025);class o{constructor(e=[]){this.version="8.4.24",this.plugins=this.normalize(e)}use(e){return this.plugins=this.plugins.concat(this.normalize([e])),this}process(e,t={}){return 0===this.plugins.length&&void 0===t.parser&&void 0===t.stringifier&&void 0===t.syntax?new n(this,e,t):new i(this,e,t)}normalize(e){let t=[];for(let r of e)if(!0===r.postcss?r=r():r.postcss&&(r=r.postcss),"object"==typeof r&&Array.isArray(r.plugins))t=t.concat(r.plugins);else if("object"==typeof r&&r.postcssPlugin)t.push(r);else if("function"==typeof r)t.push(r);else if("object"!=typeof r||!r.parse&&!r.stringify)throw new Error(r+" is not a PostCSS plugin");return t}}e.exports=o,o.default=o,s.registerProcessor(o),a.registerProcessor(o)},3632:(e,t,r)=>{"use strict";let n=r(1728);class i{constructor(e,t,r){this.processor=e,this.messages=[],this.root=t,this.opts=r,this.css=void 0,this.map=void 0}toString(){return this.css}warn(e,t={}){t.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(t.plugin=this.lastPlugin.postcssPlugin);let r=new n(e,t);return this.messages.push(r),r}warnings(){return this.messages.filter((e=>"warning"===e.type))}get content(){return this.css}}e.exports=i,i.default=i},1025:(e,t,r)=>{"use strict";let n,i,a=r(1019);class s extends a{constructor(e){super(e),this.type="root",this.nodes||(this.nodes=[])}removeChild(e,t){let r=this.index(e);return!t&&0===r&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[r].raws.before),super.removeChild(e)}normalize(e,t,r){let n=super.normalize(e);if(t)if("prepend"===r)this.nodes.length>1?t.raws.before=this.nodes[1].raws.before:delete t.raws.before;else if(this.first!==t)for(let e of n)e.raws.before=t.raws.before;return n}toResult(e={}){return new n(new i,this,e).stringify()}}s.registerLazyResult=e=>{n=e},s.registerProcessor=e=>{i=e},e.exports=s,s.default=s,a.registerRoot(s)},1675:(e,t,r)=>{"use strict";let n=r(1019),i=r(4715);class a extends n{constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}get selectors(){return i.comma(this.selector)}set selectors(e){let t=this.selector?this.selector.match(/,\s*/):null,r=t?t[0]:","+this.raw("between","beforeOpen");this.selector=e.join(r)}}e.exports=a,a.default=a,n.registerRule(a)},1062:e=>{"use strict";const t={colon:": ",indent:" ",beforeDecl:"\n",beforeRule:"\n",beforeOpen:" ",beforeClose:"\n",beforeComment:"\n",after:"\n",emptyBody:"",commentLeft:" ",commentRight:" ",semicolon:!1};class r{constructor(e){this.builder=e}stringify(e,t){if(!this[e.type])throw new Error("Unknown AST node type "+e.type+". Maybe you need to change PostCSS stringifier.");this[e.type](e,t)}document(e){this.body(e)}root(e){this.body(e),e.raws.after&&this.builder(e.raws.after)}comment(e){let t=this.raw(e,"left","commentLeft"),r=this.raw(e,"right","commentRight");this.builder("/*"+t+e.text+r+"*/",e)}decl(e,t){let r=this.raw(e,"between","colon"),n=e.prop+r+this.rawValue(e,"value");e.important&&(n+=e.raws.important||" !important"),t&&(n+=";"),this.builder(n,e)}rule(e){this.block(e,this.rawValue(e,"selector")),e.raws.ownSemicolon&&this.builder(e.raws.ownSemicolon,e,"end")}atrule(e,t){let r="@"+e.name,n=e.params?this.rawValue(e,"params"):"";if(void 0!==e.raws.afterName?r+=e.raws.afterName:n&&(r+=" "),e.nodes)this.block(e,r+n);else{let i=(e.raws.between||"")+(t?";":"");this.builder(r+n+i,e)}}body(e){let t=e.nodes.length-1;for(;t>0&&"comment"===e.nodes[t].type;)t-=1;let r=this.raw(e,"semicolon");for(let n=0;n{if(i=e.raws[r],void 0!==i)return!1}))}var o;return void 0===i&&(i=t[n]),s.rawCache[n]=i,i}rawSemicolon(e){let t;return e.walk((e=>{if(e.nodes&&e.nodes.length&&"decl"===e.last.type&&(t=e.raws.semicolon,void 0!==t))return!1})),t}rawEmptyBody(e){let t;return e.walk((e=>{if(e.nodes&&0===e.nodes.length&&(t=e.raws.after,void 0!==t))return!1})),t}rawIndent(e){if(e.raws.indent)return e.raws.indent;let t;return e.walk((r=>{let n=r.parent;if(n&&n!==e&&n.parent&&n.parent===e&&void 0!==r.raws.before){let e=r.raws.before.split("\n");return t=e[e.length-1],t=t.replace(/\S/g,""),!1}})),t}rawBeforeComment(e,t){let r;return e.walkComments((e=>{if(void 0!==e.raws.before)return r=e.raws.before,r.includes("\n")&&(r=r.replace(/[^\n]+$/,"")),!1})),void 0===r?r=this.raw(t,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeDecl(e,t){let r;return e.walkDecls((e=>{if(void 0!==e.raws.before)return r=e.raws.before,r.includes("\n")&&(r=r.replace(/[^\n]+$/,"")),!1})),void 0===r?r=this.raw(t,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeRule(e){let t;return e.walk((r=>{if(r.nodes&&(r.parent!==e||e.first!==r)&&void 0!==r.raws.before)return t=r.raws.before,t.includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1})),t&&(t=t.replace(/\S/g,"")),t}rawBeforeClose(e){let t;return e.walk((e=>{if(e.nodes&&e.nodes.length>0&&void 0!==e.raws.after)return t=e.raws.after,t.includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1})),t&&(t=t.replace(/\S/g,"")),t}rawBeforeOpen(e){let t;return e.walk((e=>{if("decl"!==e.type&&(t=e.raws.between,void 0!==t))return!1})),t}rawColon(e){let t;return e.walkDecls((e=>{if(void 0!==e.raws.between)return t=e.raws.between.replace(/[^\s:]/g,""),!1})),t}beforeAfter(e,t){let r;r="decl"===e.type?this.raw(e,null,"beforeDecl"):"comment"===e.type?this.raw(e,null,"beforeComment"):"before"===t?this.raw(e,null,"beforeRule"):this.raw(e,null,"beforeClose");let n=e.parent,i=0;for(;n&&"root"!==n.type;)i+=1,n=n.parent;if(r.includes("\n")){let t=this.raw(e,null,"indent");if(t.length)for(let e=0;e{"use strict";let n=r(1062);function i(e,t){new n(t).stringify(e)}e.exports=i,i.default=i},5513:e=>{"use strict";e.exports.isClean=Symbol("isClean"),e.exports.my=Symbol("my")},3852:e=>{"use strict";const t="'".charCodeAt(0),r='"'.charCodeAt(0),n="\\".charCodeAt(0),i="/".charCodeAt(0),a="\n".charCodeAt(0),s=" ".charCodeAt(0),o="\f".charCodeAt(0),c="\t".charCodeAt(0),u="\r".charCodeAt(0),l="[".charCodeAt(0),h="]".charCodeAt(0),d="(".charCodeAt(0),f=")".charCodeAt(0),p="{".charCodeAt(0),y="}".charCodeAt(0),g=";".charCodeAt(0),m="*".charCodeAt(0),b=":".charCodeAt(0),w="@".charCodeAt(0),v=/[\t\n\f\r "#'()/;[\\\]{}]/g,k=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,A=/.[\n"'(/\\]/,_=/[\da-f]/i;e.exports=function(e,S={}){let E,x,P,C,T,M,I,D,B,U,R=e.css.valueOf(),K=S.ignoreErrors,O=R.length,N=0,L=[],q=[];function F(t){throw e.error("Unclosed "+t,N)}return{back:function(e){q.push(e)},nextToken:function(e){if(q.length)return q.pop();if(N>=O)return;let S=!!e&&e.ignoreUnclosed;switch(E=R.charCodeAt(N),E){case a:case s:case c:case u:case o:x=N;do{x+=1,E=R.charCodeAt(x)}while(E===s||E===a||E===c||E===u||E===o);U=["space",R.slice(N,x)],N=x-1;break;case l:case h:case p:case y:case b:case g:case f:{let e=String.fromCharCode(E);U=[e,e,N];break}case d:if(D=L.length?L.pop()[1]:"",B=R.charCodeAt(N+1),"url"===D&&B!==t&&B!==r&&B!==s&&B!==a&&B!==c&&B!==o&&B!==u){x=N;do{if(M=!1,x=R.indexOf(")",x+1),-1===x){if(K||S){x=N;break}F("bracket")}for(I=x;R.charCodeAt(I-1)===n;)I-=1,M=!M}while(M);U=["brackets",R.slice(N,x+1),N,x],N=x}else x=R.indexOf(")",N+1),C=R.slice(N,x+1),-1===x||A.test(C)?U=["(","(",N]:(U=["brackets",C,N,x],N=x);break;case t:case r:P=E===t?"'":'"',x=N;do{if(M=!1,x=R.indexOf(P,x+1),-1===x){if(K||S){x=N+1;break}F("string")}for(I=x;R.charCodeAt(I-1)===n;)I-=1,M=!M}while(M);U=["string",R.slice(N,x+1),N,x],N=x;break;case w:v.lastIndex=N+1,v.test(R),x=0===v.lastIndex?R.length-1:v.lastIndex-2,U=["at-word",R.slice(N,x+1),N,x],N=x;break;case n:for(x=N,T=!0;R.charCodeAt(x+1)===n;)x+=1,T=!T;if(E=R.charCodeAt(x+1),T&&E!==i&&E!==s&&E!==a&&E!==c&&E!==u&&E!==o&&(x+=1,_.test(R.charAt(x)))){for(;_.test(R.charAt(x+1));)x+=1;R.charCodeAt(x+1)===s&&(x+=1)}U=["word",R.slice(N,x+1),N,x],N=x;break;default:E===i&&R.charCodeAt(N+1)===m?(x=R.indexOf("*/",N+2)+1,0===x&&(K||S?x=R.length:F("comment")),U=["comment",R.slice(N,x+1),N,x],N=x):(k.lastIndex=N+1,k.test(R),x=0===k.lastIndex?R.length-1:k.lastIndex-2,U=["word",R.slice(N,x+1),N,x],L.push(U),N=x)}return N++,U},endOfFile:function(){return 0===q.length&&N>=O},position:function(){return N}}}},2448:e=>{"use strict";let t={};e.exports=function(e){t[e]||(t[e]=!0,"undefined"!=typeof console&&console.warn&&console.warn(e))}},1728:e=>{"use strict";class t{constructor(e,t={}){if(this.type="warning",this.text=e,t.node&&t.node.source){let e=t.node.rangeBy(t);this.line=e.start.line,this.column=e.start.column,this.endLine=e.end.line,this.endColumn=e.end.column}for(let e in t)this[e]=t[e]}toString(){return this.node?this.node.error(this.text,{plugin:this.plugin,index:this.index,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}}e.exports=t,t.default=t},1036:(e,t,r)=>{const n=r(3719),i=r(2997),{isPlainObject:a}=r(6057),s=r(9996),o=r(9430),{parse:c}=r(20),u=["img","audio","video","picture","svg","object","map","iframe","embed"],l=["script","style"];function h(e,t){e&&Object.keys(e).forEach((function(r){t(e[r],r)}))}function d(e,t){return{}.hasOwnProperty.call(e,t)}function f(e,t){const r=[];return h(e,(function(e){t(e)&&r.push(e)})),r}e.exports=y;const p=/^[^\0\t\n\f\r /<=>]+$/;function y(e,t,r){if(null==e)return"";"number"==typeof e&&(e=e.toString());let m="",b="";function w(e,t){const r=this;this.tag=e,this.attribs=t||{},this.tagPosition=m.length,this.text="",this.mediaChildren=[],this.updateParentNodeText=function(){M.length&&(M[M.length-1].text+=r.text)},this.updateParentNodeMediaChildren=function(){M.length&&u.includes(this.tag)&&M[M.length-1].mediaChildren.push(this.tag)}}(t=Object.assign({},y.defaults,t)).parser=Object.assign({},g,t.parser);const v=function(e){return!1===t.allowedTags||(t.allowedTags||[]).indexOf(e)>-1};l.forEach((function(e){v(e)&&!t.allowVulnerableTags&&console.warn(`\n\n⚠️ Your \`allowedTags\` option includes, \`${e}\`, which is inherently\nvulnerable to XSS attacks. Please remove it from \`allowedTags\`.\nOr, to disable this warning, add the \`allowVulnerableTags\` option\nand ensure you are accounting for this risk.\n\n`)}));const k=t.nonTextTags||["script","style","textarea","option"];let A,_;t.allowedAttributes&&(A={},_={},h(t.allowedAttributes,(function(e,t){A[t]=[];const r=[];e.forEach((function(e){"string"==typeof e&&e.indexOf("*")>=0?r.push(i(e).replace(/\\\*/g,".*")):A[t].push(e)})),r.length&&(_[t]=new RegExp("^("+r.join("|")+")$"))})));const S={},E={},x={};h(t.allowedClasses,(function(e,t){A&&(d(A,t)||(A[t]=[]),A[t].push("class")),S[t]=[],x[t]=[];const r=[];e.forEach((function(e){"string"==typeof e&&e.indexOf("*")>=0?r.push(i(e).replace(/\\\*/g,".*")):e instanceof RegExp?x[t].push(e):S[t].push(e)})),r.length&&(E[t]=new RegExp("^("+r.join("|")+")$"))}));const P={};let C,T,M,I,D,B,U;h(t.transformTags,(function(e,t){let r;"function"==typeof e?r=e:"string"==typeof e&&(r=y.simpleTransform(e)),"*"===t?C=r:P[t]=r}));let R=!1;O();const K=new n.Parser({onopentag:function(e,r){if(t.enforceHtmlBoundary&&"html"===e&&O(),B)return void U++;const n=new w(e,r);M.push(n);let i=!1;const u=!!n.text;let l;if(d(P,e)&&(l=P[e](e,r),n.attribs=r=l.attribs,void 0!==l.text&&(n.innerText=l.text),e!==l.tagName&&(n.name=e=l.tagName,D[T]=l.tagName)),C&&(l=C(e,r),n.attribs=r=l.attribs,e!==l.tagName&&(n.name=e=l.tagName,D[T]=l.tagName)),(!v(e)||"recursiveEscape"===t.disallowedTagsMode&&!function(e){for(const t in e)if(d(e,t))return!1;return!0}(I)||null!=t.nestingLimit&&T>=t.nestingLimit)&&(i=!0,I[T]=!0,"discard"===t.disallowedTagsMode&&-1!==k.indexOf(e)&&(B=!0,U=1),I[T]=!0),T++,i){if("discard"===t.disallowedTagsMode)return;b=m,m=""}m+="<"+e,"script"===e&&(t.allowedScriptHostnames||t.allowedScriptDomains)&&(n.innerText=""),(!A||d(A,e)||A["*"])&&h(r,(function(r,i){if(!p.test(i))return void delete n.attribs[i];let u=!1;if(!A||d(A,e)&&-1!==A[e].indexOf(i)||A["*"]&&-1!==A["*"].indexOf(i)||d(_,e)&&_[e].test(i)||_["*"]&&_["*"].test(i))u=!0;else if(A&&A[e])for(const t of A[e])if(a(t)&&t.name&&t.name===i){u=!0;let e="";if(!0===t.multiple){const n=r.split(" ");for(const r of n)-1!==t.values.indexOf(r)&&(""===e?e=r:e+=" "+r)}else t.values.indexOf(r)>=0&&(e=r);r=e}if(u){if(-1!==t.allowedSchemesAppliedToAttributes.indexOf(i)&&L(e,r))return void delete n.attribs[i];if("script"===e&&"src"===i){let e=!0;try{const n=q(r);if(t.allowedScriptHostnames||t.allowedScriptDomains){const r=(t.allowedScriptHostnames||[]).find((function(e){return e===n.url.hostname})),i=(t.allowedScriptDomains||[]).find((function(e){return n.url.hostname===e||n.url.hostname.endsWith(`.${e}`)}));e=r||i}}catch(t){e=!1}if(!e)return void delete n.attribs[i]}if("iframe"===e&&"src"===i){let e=!0;try{const n=q(r);if(n.isRelativeUrl)e=d(t,"allowIframeRelativeUrls")?t.allowIframeRelativeUrls:!t.allowedIframeHostnames&&!t.allowedIframeDomains;else if(t.allowedIframeHostnames||t.allowedIframeDomains){const r=(t.allowedIframeHostnames||[]).find((function(e){return e===n.url.hostname})),i=(t.allowedIframeDomains||[]).find((function(e){return n.url.hostname===e||n.url.hostname.endsWith(`.${e}`)}));e=r||i}}catch(t){e=!1}if(!e)return void delete n.attribs[i]}if("srcset"===i)try{let e=o(r);if(e.forEach((function(e){L("srcset",e.url)&&(e.evil=!0)})),e=f(e,(function(e){return!e.evil})),!e.length)return void delete n.attribs[i];r=f(e,(function(e){return!e.evil})).map((function(e){if(!e.url)throw new Error("URL missing");return e.url+(e.w?` ${e.w}w`:"")+(e.h?` ${e.h}h`:"")+(e.d?` ${e.d}x`:"")})).join(", "),n.attribs[i]=r}catch(e){return void delete n.attribs[i]}if("class"===i){const t=S[e],a=S["*"],o=E[e],c=x[e],u=[o,E["*"]].concat(c).filter((function(e){return e}));if(!(l=r,h=t&&a?s(t,a):t||a,y=u,r=h?(l=l.split(/\s+/)).filter((function(e){return-1!==h.indexOf(e)||y.some((function(t){return t.test(e)}))})).join(" "):l).length)return void delete n.attribs[i]}if("style"===i)if(t.parseStyleAttributes)try{if(r=function(e){return e.nodes[0].nodes.reduce((function(e,t){return e.push(`${t.prop}:${t.value}${t.important?" !important":""}`),e}),[]).join(";")}(function(e,t){if(!t)return e;const r=e.nodes[0];let n;return n=t[r.selector]&&t["*"]?s(t[r.selector],t["*"]):t[r.selector]||t["*"],n&&(e.nodes[0].nodes=r.nodes.reduce(function(e){return function(t,r){return d(e,r.prop)&&e[r.prop].some((function(e){return e.test(r.value)}))&&t.push(r),t}}(n),[])),e}(c(e+" {"+r+"}"),t.allowedStyles)),0===r.length)return void delete n.attribs[i]}catch(t){return console.warn('Failed to parse "'+e+" {"+r+"}\", If you're running this in a browser, we recommend to disable style parsing: options.parseStyleAttributes: false, since this only works in a node environment due to a postcss dependency, More info: https://github.com/apostrophecms/sanitize-html/issues/547"),void delete n.attribs[i]}else if(t.allowedStyles)throw new Error("allowedStyles option cannot be used together with parseStyleAttributes: false.");m+=" "+i,r&&r.length&&(m+='="'+N(r,!0)+'"')}else delete n.attribs[i];var l,h,y})),-1!==t.selfClosing.indexOf(e)?m+=" />":(m+=">",!n.innerText||u||t.textFilter||(m+=N(n.innerText),R=!0)),i&&(m=b+N(m),b="")},ontext:function(e){if(B)return;const r=M[M.length-1];let n;if(r&&(n=r.tag,e=void 0!==r.innerText?r.innerText:e),"discard"!==t.disallowedTagsMode||"script"!==n&&"style"!==n){const r=N(e,!1);t.textFilter&&!R?m+=t.textFilter(r,n):R||(m+=r)}else m+=e;M.length&&(M[M.length-1].text+=e)},onclosetag:function(e,r){if(B){if(U--,U)return;B=!1}const n=M.pop();if(!n)return;if(n.tag!==e)return void M.push(n);B=!!t.enforceHtmlBoundary&&"html"===e,T--;const i=I[T];if(i){if(delete I[T],"discard"===t.disallowedTagsMode)return void n.updateParentNodeText();b=m,m=""}D[T]&&(e=D[T],delete D[T]),t.exclusiveFilter&&t.exclusiveFilter(n)?m=m.substr(0,n.tagPosition):(n.updateParentNodeMediaChildren(),n.updateParentNodeText(),-1!==t.selfClosing.indexOf(e)||r&&!v(e)&&["escape","recursiveEscape"].indexOf(t.disallowedTagsMode)>=0?i&&(m=b,b=""):(m+="",i&&(m=b+N(m),b=""),R=!1))}},t.parser);return K.write(e),K.end(),m;function O(){m="",T=0,M=[],I={},D={},B=!1,U=0}function N(e,r){return"string"!=typeof e&&(e+=""),t.parser.decodeEntities&&(e=e.replace(/&/g,"&").replace(//g,">"),r&&(e=e.replace(/"/g,"""))),e=e.replace(/&(?![a-zA-Z0-9#]{1,20};)/g,"&").replace(//g,">"),r&&(e=e.replace(/"/g,""")),e}function L(e,r){for(r=r.replace(/[\x00-\x20]+/g,"");;){const e=r.indexOf("\x3c!--");if(-1===e)break;const t=r.indexOf("--\x3e",e+4);if(-1===t)break;r=r.substring(0,e)+r.substring(t+3)}const n=r.match(/^([a-zA-Z][a-zA-Z0-9.\-+]*):/);if(!n)return!!r.match(/^[/\\]{2}/)&&!t.allowProtocolRelative;const i=n[1].toLowerCase();return d(t.allowedSchemesByTag,e)?-1===t.allowedSchemesByTag[e].indexOf(i):!t.allowedSchemes||-1===t.allowedSchemes.indexOf(i)}function q(e){if((e=e.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/,"$1//")).startsWith("relative:"))throw new Error("relative: exploit attempt");let t="relative://relative-site";for(let e=0;e<100;e++)t+=`/${e}`;const r=new URL(e,t);return{isRelativeUrl:r&&"relative-site"===r.hostname&&"relative:"===r.protocol,url:r}}}const g={decodeEntities:!0};y.defaults={allowedTags:["address","article","aside","footer","header","h1","h2","h3","h4","h5","h6","hgroup","main","nav","section","blockquote","dd","div","dl","dt","figcaption","figure","hr","li","main","ol","p","pre","ul","a","abbr","b","bdi","bdo","br","cite","code","data","dfn","em","i","kbd","mark","q","rb","rp","rt","rtc","ruby","s","samp","small","span","strong","sub","sup","time","u","var","wbr","caption","col","colgroup","table","tbody","td","tfoot","th","thead","tr"],disallowedTagsMode:"discard",allowedAttributes:{a:["href","name","target"],img:["src","srcset","alt","title","width","height","loading"]},selfClosing:["img","br","hr","area","base","basefont","input","link","meta"],allowedSchemes:["http","https","ftp","mailto","tel"],allowedSchemesByTag:{},allowedSchemesAppliedToAttributes:["href","src","cite"],allowProtocolRelative:!0,enforceHtmlBoundary:!1,parseStyleAttributes:!0},y.simpleTransform=function(e,t,r){return r=void 0===r||r,t=t||{},function(n,i){let a;if(r)for(a in t)i[a]=t[a];else i=t;return{tagName:e,attribs:i}}}},2997:e=>{"use strict";e.exports=e=>{if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}},17:e=>{"use strict";e.exports=require("../../bundles/raw/web-stream-tools")},7921:()=>{},6845:()=>{},2868:()=>{},4777:()=>{},9830:()=>{},209:()=>{},7414:()=>{},2961:e=>{e.exports={nanoid:(e=21)=>{let t="",r=e;for(;r--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t},customAlphabet:(e,t=21)=>(r=t)=>{let n="",i=r;for(;i--;)n+=e[Math.random()*e.length|0];return n}}},8618:(e,t,r)=>{"use strict";r.r(t),r.d(t,{AEADEncryptedDataPacket:()=>yc,CleartextMessage:()=>vu,CompressedDataPacket:()=>ic,LiteralDataPacket:()=>Jo,MarkerPacket:()=>Ac,Message:()=>pu,OnePassSignaturePacket:()=>ec,PacketList:()=>rc,PrivateKey:()=>nu,PublicKey:()=>ru,PublicKeyEncryptedSessionKeyPacket:()=>gc,PublicKeyPacket:()=>wc,PublicSubkeyPacket:()=>_c,SecretKeyPacket:()=>Ec,SecretSubkeyPacket:()=>Tc,Signature:()=>Dc,SignaturePacket:()=>Xo,Subkey:()=>Yc,SymEncryptedIntegrityProtectedDataPacket:()=>fc,SymEncryptedSessionKeyPacket:()=>bc,SymmetricallyEncryptedDataPacket:()=>kc,TrustPacket:()=>Mc,UnparseablePacket:()=>bi,UserAttributePacket:()=>Sc,UserIDPacket:()=>Cc,armor:()=>ye,config:()=>se,createCleartextMessage:()=>Au,createMessage:()=>bu,decrypt:()=>Tu,decryptKey:()=>xu,decryptSessionKeys:()=>Uu,encrypt:()=>Cu,encryptKey:()=>Pu,encryptSessionKey:()=>Bu,enums:()=>ae,generateKey:()=>_u,generateSessionKey:()=>Du,readCleartextMessage:()=>ku,readKey:()=>ou,readKeys:()=>uu,readMessage:()=>mu,readPrivateKey:()=>cu,readPrivateKeys:()=>lu,readSignature:()=>Bc,reformatKey:()=>Su,revokeKey:()=>Eu,sign:()=>Mu,unarmor:()=>pe,verify:()=>Iu});const n="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},i=Symbol("doneWritingPromise"),a=Symbol("doneWritingResolve"),s=Symbol("doneWritingReject"),o=Symbol("readingIndex");class c extends Array{constructor(){super(),this[i]=new Promise(((e,t)=>{this[a]=e,this[s]=t})),this[i].catch((()=>{}))}}function u(e){return e&&e.getReader&&Array.isArray(e)}function l(e){if(!u(e)){const t=e.getWriter(),r=t.releaseLock;return t.releaseLock=()=>{t.closed.catch((function(){})),r.call(t)},t}this.stream=e}c.prototype.getReader=function(){return void 0===this[o]&&(this[o]=0),{read:async()=>(await this[i],this[o]===this.length?{value:void 0,done:!0}:{value:this[this[o]++],done:!1})}},c.prototype.readToEnd=async function(e){await this[i];const t=e(this.slice(this[o]));return this.length=0,t},c.prototype.clone=function(){const e=new c;return e[i]=this[i].then((()=>{e.push(...this)})),e},l.prototype.write=async function(e){this.stream.push(e)},l.prototype.close=async function(){this.stream[a]()},l.prototype.abort=async function(e){return this.stream[s](e),e},l.prototype.releaseLock=function(){};const h="object"==typeof n.process&&"object"==typeof n.process.versions,d=h&&void 0;function f(e){return u(e)?"array":n.ReadableStream&&n.ReadableStream.prototype.isPrototypeOf(e)?"web":E&&E.prototype.isPrototypeOf(e)?"ponyfill":d&&d.prototype.isPrototypeOf(e)?"node":!(!e||!e.getReader)&&"web-like"}function p(e){return Uint8Array.prototype.isPrototypeOf(e)}function y(e){if(1===e.length)return e[0];let t=0;for(let r=0;r{t||(g.isBuffer(n)&&(n=new Uint8Array(n.buffer,n.byteOffset,n.byteLength)),r.enqueue(n),e.pause())})),e.on("end",(()=>{t||r.close()})),e.on("error",(e=>r.error(e)))},pull(){e.resume()},cancel(r){t=!0,e.destroy(r)}})};class e extends m{constructor(e,t){super(t),this._reader=B(e)}async _read(e){try{for(;;){const{done:e,value:t}=await this._reader.read();if(e){this.push(null);break}if(!this.push(t)||this._cancelling){this._reading=!1;break}}}catch(e){this.emit("error",e)}}_destroy(e){this._reader.cancel(e)}}w=function(t,r){return new e(t,r)}}const v=new WeakSet,k=Symbol("externalBuffer");function A(e){if(this.stream=e,e[k]&&(this[k]=e[k].slice()),u(e)){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{},void(this._cancel=()=>{})}let t=f(e);if("node"===t&&(e=b(e)),t){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{t.closed.catch((function(){})),t.releaseLock()},void(this._cancel=t.cancel.bind(t))}let r=!1;this._read=async()=>r||v.has(e)?{value:void 0,done:!0}:(r=!0,{value:e,done:!1}),this._releaseLock=()=>{if(r)try{v.add(e)}catch(e){}}}A.prototype.read=async function(){return this[k]&&this[k].length?{done:!1,value:this[k].shift()}:this._read()},A.prototype.releaseLock=function(){this[k]&&(this.stream[k]=this[k]),this._releaseLock()},A.prototype.cancel=function(e){return this._cancel(e)},A.prototype.readLine=async function(){let e,t=[];for(;!e;){let{done:r,value:n}=await this.read();if(n+="",r)return t.length?D(t):void 0;const i=n.indexOf("\n")+1;i&&(e=D(t.concat(n.substr(0,i))),t=[]),i!==n.length&&t.push(n.substr(i))}return this.unshift(...t),e},A.prototype.readByte=async function(){const{done:e,value:t}=await this.read();if(e)return;const r=t[0];return this.unshift(H(t,1)),r},A.prototype.readBytes=async function(e){const t=[];let r=0;for(;;){const{done:n,value:i}=await this.read();if(n)return t.length?D(t):void 0;if(t.push(i),r+=i.length,r>=e){const r=D(t);return this.unshift(H(r,e)),H(r,0,e)}}},A.prototype.peekBytes=async function(e){const t=await this.readBytes(e);return this.unshift(t),t},A.prototype.unshift=function(...e){this[k]||(this[k]=[]),1===e.length&&p(e[0])&&this[k].length&&e[0].length&&this[k][0].byteOffset>=e[0].length?this[k][0]=new Uint8Array(this[k][0].buffer,this[k][0].byteOffset-e[0].length,this[k][0].byteLength+e[0].length):this[k].unshift(...e.filter((e=>e&&e.length)))},A.prototype.readToEnd=async function(e=D){const t=[];for(;;){const{done:e,value:r}=await this.read();if(e)break;t.push(r)}return e(t)};let _,S,{ReadableStream:E,WritableStream:x,TransformStream:P}=n;async function C(){if(P)return;const[e,t]=await Promise.all([Promise.resolve().then((function(){return _f})),Promise.resolve().then((function(){return Hf}))]);({ReadableStream:E,WritableStream:x,TransformStream:P}=e);const{createReadableStreamWrapper:r}=t;n.ReadableStream&&E!==n.ReadableStream&&(_=r(E),S=r(n.ReadableStream))}const T=h&&void 0;function M(e){let t=f(e);return"node"===t?b(e):"web"===t&&_?_(e):t?e:new E({start(t){t.enqueue(e),t.close()}})}function I(e){if(f(e))return e;const t=new c;return(async()=>{const r=U(t);await r.write(e),await r.close()})(),t}function D(e){return e.some((e=>f(e)&&!u(e)))?function(e){e=e.map(M);const t=O((async function(e){await Promise.all(n.map((t=>V(t,e))))}));let r=Promise.resolve();const n=e.map(((n,i)=>L(n,((n,a)=>(r=r.then((()=>R(n,t.writable,{preventClose:i!==e.length-1}))),r)))));return t.readable}(e):e.some((e=>u(e)))?function(e){const t=new c;let r=Promise.resolve();return e.forEach(((n,i)=>(r=r.then((()=>R(n,t,{preventClose:i!==e.length-1}))),r))),t}(e):"string"==typeof e[0]?e.join(""):T&&T.isBuffer(e[0])?T.concat(e):y(e)}function B(e){return new A(e)}function U(e){return new l(e)}async function R(e,t,{preventClose:r=!1,preventAbort:n=!1,preventCancel:i=!1}={}){if(f(e)&&!u(e)){e=M(e);try{if(e[k]){const r=U(t);for(let t=0;t{t=e})),t=null)},close:r.close.bind(r),abort:r.error.bind(r)})}}function N(e,t=(()=>{}),r=(()=>{})){if(u(e)){const n=new c;return(async()=>{const i=U(n);try{const n=await W(e),a=t(n),s=r();let o;o=void 0!==a&&void 0!==s?D([a,s]):void 0!==a?a:s,await i.write(o),await i.close()}catch(e){await i.abort(e)}})(),n}if(f(e))return K(e,{async transform(e,r){try{const n=await t(e);void 0!==n&&r.enqueue(n)}catch(e){r.error(e)}},async flush(e){try{const t=await r();void 0!==t&&e.enqueue(t)}catch(t){e.error(t)}}});const n=t(e),i=r();return void 0!==n&&void 0!==i?D([n,i]):void 0!==n?n:i}function L(e,t){if(f(e)&&!u(e)){let r;const n=new P({start(e){r=e}}),i=R(e,n.writable),a=O((async function(e){r.error(e),await i,await new Promise(setTimeout)}));return t(n.readable,a.writable),a.readable}e=I(e);const r=new c;return t(e,r),r}function q(e,t){let r;const n=L(e,((e,i)=>{const a=B(e);a.remainder=()=>(a.releaseLock(),R(e,i),n),r=t(a)}));return r}function F(e){if(u(e))return e.clone();if(f(e)){const t=function(e){if(u(e))throw new Error("ArrayStream cannot be tee()d, use clone() instead");if(f(e)){const t=M(e).tee();return t[0][k]=t[1][k]=e[k],t}return[H(e),H(e)]}(e);return j(e,t[0]),t[1]}return H(e)}function z(e){return u(e)?F(e):f(e)?new E({start(t){const r=L(e,(async(e,r)=>{const n=B(e),i=U(r);try{for(;;){await i.ready;const{done:e,value:r}=await n.read();if(e){try{t.close()}catch(e){}return void await i.close()}try{t.enqueue(r)}catch(e){}await i.write(r)}}catch(e){t.error(e),await i.abort(e)}}));j(e,r)}}):H(e)}function j(e,t){Object.entries(Object.getOwnPropertyDescriptors(e.constructor.prototype)).forEach((([r,n])=>{"constructor"!==r&&(n.value?n.value=n.value.bind(t):n.get=n.get.bind(t),Object.defineProperty(e,r,n))}))}function H(e,t=0,r=1/0){if(u(e))throw new Error("Not implemented");if(f(e)){if(t>=0&&r>=0){let n=0;return K(e,{transform(e,i){n=t&&i.enqueue(H(e,Math.max(t-n,0),r-n)),n+=e.length):i.terminate()}})}if(t<0&&(r<0||r===1/0)){let n=[];return N(e,(e=>{e.length>=-t?n=[e]:n.push(e)}),(()=>H(D(n),t,r)))}if(0===t&&r<0){let n;return N(e,(e=>{const i=n?D([n,e]):e;if(i.length>=-r)return n=H(i,r),H(i,t,r);n=i}))}return console.warn(`stream.slice(input, ${t}, ${r}) not implemented efficiently.`),G((async()=>H(await W(e),t,r)))}return e[k]&&(e=D(e[k].concat([e]))),!p(e)||T&&T.isBuffer(e)?e.slice(t,r):(r===1/0&&(r=e.length),e.subarray(t,r))}async function W(e,t=D){return u(e)?e.readToEnd(t):f(e)?B(e).readToEnd(t):e}async function V(e,t){if(f(e)){if(e.cancel)return e.cancel(t);if(e.destroy)return e.destroy(t),await new Promise(setTimeout),t}}function G(e){const t=new c;return(async()=>{const r=U(t);try{await r.write(await e()),await r.close()}catch(e){await r.abort(e)}})(),t}class ${constructor(e){if(void 0===e)throw new Error("Invalid BigInteger input");if(e instanceof Uint8Array){const t=e,r=new Array(t.length);for(let e=0;eBigInt(0);){const e=r&BigInt(1);r>>=BigInt(1);const a=i*n%t.value;i=e?a:i,n=n*n%t.value}return new $(i)}modInv(e){const{gcd:t,x:r}=this._egcd(e);if(!t.isOne())throw new Error("Inverse does not exist");return r.add(e).mod(e)}_egcd(e){let t=BigInt(0),r=BigInt(1),n=BigInt(1),i=BigInt(0),a=this.value;for(e=e.value;e!==BigInt(0);){const s=a/e;let o=t;t=n-s*t,n=o,o=r,r=i-s*r,i=o,o=e,e=a%e,a=o}return{x:new $(n),y:new $(i),gcd:new $(a)}}gcd(e){let t=this.value;for(e=e.value;e!==BigInt(0);){const r=e;e=t%e,t=r}return new $(t)}ileftShift(e){return this.value<<=e.value,this}leftShift(e){return this.clone().ileftShift(e)}irightShift(e){return this.value>>=e.value,this}rightShift(e){return this.clone().irightShift(e)}equal(e){return this.value===e.value}lt(e){return this.valuee.value}gte(e){return this.value>=e.value}isZero(){return this.value===BigInt(0)}isOne(){return this.value===BigInt(1)}isNegative(){return this.valueNumber.MAX_SAFE_INTEGER)throw new Error("Number can only safely store up to 53 bits");return e}getBit(e){return(this.value>>BigInt(e)&BigInt(1))===BigInt(0)?0:1}bitLength(){const e=new $(0),t=new $(1),r=new $(-1),n=this.isNegative()?r:e;let i=1;const a=this.clone();for(;!a.irightShift(t).equal(n);)i++;return i}byteLength(){const e=new $(0),t=new $(-1),r=this.isNegative()?t:e,n=new $(8);let i=1;const a=this.clone();for(;!a.irightShift(n).equal(r);)i++;return i}toUint8Array(e="be",t){let r=this.value.toString(16);r.length%2==1&&(r="0"+r);const n=r.length/2,i=new Uint8Array(t||n),a=t?t-n:0;let s=0;for(;s{try{return!1}catch(e){}return!1})(),Z={isString:function(e){return"string"==typeof e||e instanceof String},isArray:function(e){return e instanceof Array},isUint8Array:p,isStream:f,readNumber:function(e){let t=0;for(let r=0;r>8*(t-n-1)&255;return r},readDate:function(e){const t=Z.readNumber(e);return new Date(1e3*t)},writeDate:function(e){const t=Math.floor(e.getTime()/1e3);return Z.writeNumber(t,4)},normalizeDate:function(e=Date.now()){return null===e||e===1/0?e:new Date(1e3*Math.floor(+e/1e3))},readMPI:function(e){const t=7+(e[0]<<8|e[1])>>>3;return e.subarray(2,2+t)},leftPad(e,t){const r=new Uint8Array(t),n=t-e.length;return r.set(e,n),r},uint8ArrayToMPI:function(e){const t=Z.uint8ArrayBitLength(e);if(0===t)throw new Error("Zero MPI");const r=e.subarray(e.length-Math.ceil(t/8)),n=new Uint8Array([(65280&t)>>8,255&t]);return Z.concatUint8Array([n,r])},uint8ArrayBitLength:function(e){let t;for(t=0;t>1);for(let r=0;r>1;r++)t[r]=parseInt(e.substr(r<<1,2),16);return t},uint8ArrayToHex:function(e){const t=[],r=e.length;let n,i=0;for(;i{if(!Z.isString(e))throw new Error("stringToUint8Array: Data must be in the form of a string");const t=new Uint8Array(e.length);for(let r=0;rr("",!0)))},decodeUTF8:function(e){const t=new TextDecoder("utf-8");function r(e,r=!1){return t.decode(e,{stream:!r})}return N(e,r,(()=>r(new Uint8Array,!0)))},concat:D,concatUint8Array:y,equalsUint8Array:function(e,t){if(!Z.isUint8Array(e)||!Z.isUint8Array(t))throw new Error("Data must be in the form of a Uint8Array");if(e.length!==t.length)return!1;for(let r=0;r>>16;return 0!==r&&(e=r,t+=16),r=e>>8,0!==r&&(e=r,t+=8),r=e>>4,0!==r&&(e=r,t+=4),r=e>>2,0!==r&&(e=r,t+=2),r=e>>1,0!==r&&(e=r,t+=1),t},double:function(e){const t=new Uint8Array(e.length),r=e.length-1;for(let n=0;n>7;return t[r]=e[r]<<1^135*(e[0]>>7),t},shiftRight:function(e,t){if(t)for(let r=e.length-1;r>=0;r--)e[r]>>=t,r>0&&(e[r]|=e[r-1]<<8-t);return e},getWebCrypto:function(){return void 0!==n&&n.crypto&&n.crypto.subtle},getBigInteger:async function(){if("undefined"!=typeof BigInt)return $;{const{default:e}=await Promise.resolve().then((function(){return Jf}));return e}},getNodeCrypto:function(){},getNodeZlib:function(){},getNodeBuffer:function(){return{}.Buffer},getHardwareConcurrency:function(){return"undefined"!=typeof navigator?navigator.hardwareConcurrency||1:(void 0).cpus().length},isEmailAddress:function(e){return!!Z.isString(e)&&/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+([a-zA-Z]{2,}[0-9]*|xn--[a-zA-Z\-0-9]+)))$/.test(e)},canonicalizeEOL:function(e){let t=!1;return N(e,(e=>{let r;t&&(e=Z.concatUint8Array([new Uint8Array([13]),e])),13===e[e.length-1]?(t=!0,e=e.subarray(0,-1)):t=!1;const n=[];for(let t=0;r=e.indexOf(10,t)+1,r;t=r)13!==e[r-2]&&n.push(r);if(!n.length)return e;const i=new Uint8Array(e.length+n.length);let a=0;for(let t=0;tt?new Uint8Array([13]):void 0))},nativeEOL:function(e){let t=!1;return N(e,(e=>{let r;13===(e=t&&10!==e[0]?Z.concatUint8Array([new Uint8Array([13]),e]):new Uint8Array(e))[e.length-1]?(t=!0,e=e.subarray(0,-1)):t=!1;let n=0;for(let t=0;t!==e.length;t=r){r=e.indexOf(13,t)+1,r||(r=e.length);const i=r-(10===e[r]?1:0);t&&e.copyWithin(n,t,i),n+=i-t}return e.subarray(0,n)}),(()=>t?new Uint8Array([13]):void 0))},removeTrailingSpaces:function(e){return e.split("\n").map((e=>{let t=e.length-1;for(;t>=0&&(" "===e[t]||"\t"===e[t]||"\r"===e[t]);t--);return e.substr(0,t+1)})).join("\n")},wrapError:function(e,t){if(!t)return new Error(e);try{t.message=e+": "+t.message}catch(e){}return t},constructAllowedPackets:function(e){const t={};return e.forEach((e=>{if(!e.tag)throw new Error("Invalid input: expected a packet class");t[e.tag]=e})),t},anyPromise:function(e){return new Promise((async(t,r)=>{let n;await Promise.all(e.map((async e=>{try{t(await e)}catch(e){n=e}}))),r(n)}))},selectUint8Array:function(e,t,r){const n=Math.max(t.length,r.length),i=new Uint8Array(n);let a=0;for(let n=0;n{t=Z.concatUint8Array([t,e]);const r=[],n=Math.floor(t.length/45),i=45*n,a=X(t.subarray(0,i));for(let e=0;et.length?X(t)+"\n":""))}function te(e){let t="";return N(e,(e=>{t+=e;let r=0;const n=[" ","\t","\r","\n"];for(let e=0;e0&&(i-r)%4!=0;i--)n.includes(t[i])&&r--;const a=Q(t.substr(0,i));return t=t.substr(i),a}),(()=>Q(t)))}function re(e){return te(e.replace(/-/g,"+").replace(/_/g,"/"))}function ne(e,t){let r=ee(e).replace(/[\r\n]/g,"");return t&&(r=r.replace(/[+]/g,"-").replace(/[/]/g,"_").replace(/[=]/g,"")),r}Y?(X=e=>Y.from(e).toString("base64"),Q=e=>{const t=Y.from(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}):(X=e=>btoa(Z.uint8ArrayToString(e)),Q=e=>Z.stringToUint8Array(atob(e)));const ie=Symbol("byValue");var ae={curve:{p256:"p256","P-256":"p256",secp256r1:"p256",prime256v1:"p256","1.2.840.10045.3.1.7":"p256","2a8648ce3d030107":"p256","2A8648CE3D030107":"p256",p384:"p384","P-384":"p384",secp384r1:"p384","1.3.132.0.34":"p384","2b81040022":"p384","2B81040022":"p384",p521:"p521","P-521":"p521",secp521r1:"p521","1.3.132.0.35":"p521","2b81040023":"p521","2B81040023":"p521",secp256k1:"secp256k1","1.3.132.0.10":"secp256k1","2b8104000a":"secp256k1","2B8104000A":"secp256k1",ED25519:"ed25519",ed25519:"ed25519",Ed25519:"ed25519","1.3.6.1.4.1.11591.15.1":"ed25519","2b06010401da470f01":"ed25519","2B06010401DA470F01":"ed25519",X25519:"curve25519",cv25519:"curve25519",curve25519:"curve25519",Curve25519:"curve25519","1.3.6.1.4.1.3029.1.5.1":"curve25519","2b060104019755010501":"curve25519","2B060104019755010501":"curve25519",brainpoolP256r1:"brainpoolP256r1","1.3.36.3.3.2.8.1.1.7":"brainpoolP256r1","2b2403030208010107":"brainpoolP256r1","2B2403030208010107":"brainpoolP256r1",brainpoolP384r1:"brainpoolP384r1","1.3.36.3.3.2.8.1.1.11":"brainpoolP384r1","2b240303020801010b":"brainpoolP384r1","2B240303020801010B":"brainpoolP384r1",brainpoolP512r1:"brainpoolP512r1","1.3.36.3.3.2.8.1.1.13":"brainpoolP512r1","2b240303020801010d":"brainpoolP512r1","2B240303020801010D":"brainpoolP512r1"},s2k:{simple:0,salted:1,iterated:3,gnu:101},publicKey:{rsaEncryptSign:1,rsaEncrypt:2,rsaSign:3,elgamal:16,dsa:17,ecdh:18,ecdsa:19,eddsa:22,aedh:23,aedsa:24},symmetric:{plaintext:0,idea:1,tripledes:2,cast5:3,blowfish:4,aes128:7,aes192:8,aes256:9,twofish:10},compression:{uncompressed:0,zip:1,zlib:2,bzip2:3},hash:{md5:1,sha1:2,ripemd:3,sha256:8,sha384:9,sha512:10,sha224:11},webHash:{"SHA-1":2,"SHA-256":8,"SHA-384":9,"SHA-512":10},aead:{eax:1,ocb:2,experimentalGCM:100},packet:{publicKeyEncryptedSessionKey:1,signature:2,symEncryptedSessionKey:3,onePassSignature:4,secretKey:5,publicKey:6,secretSubkey:7,compressedData:8,symmetricallyEncryptedData:9,marker:10,literalData:11,trust:12,userID:13,publicSubkey:14,userAttribute:17,symEncryptedIntegrityProtectedData:18,modificationDetectionCode:19,aeadEncryptedData:20},literal:{binary:"b".charCodeAt(),text:"t".charCodeAt(),utf8:"u".charCodeAt(),mime:"m".charCodeAt()},signature:{binary:0,text:1,standalone:2,certGeneric:16,certPersona:17,certCasual:18,certPositive:19,certRevocation:48,subkeyBinding:24,keyBinding:25,key:31,keyRevocation:32,subkeyRevocation:40,timestamp:64,thirdParty:80},signatureSubpacket:{signatureCreationTime:2,signatureExpirationTime:3,exportableCertification:4,trustSignature:5,regularExpression:6,revocable:7,keyExpirationTime:9,placeholderBackwardsCompatibility:10,preferredSymmetricAlgorithms:11,revocationKey:12,issuer:16,notationData:20,preferredHashAlgorithms:21,preferredCompressionAlgorithms:22,keyServerPreferences:23,preferredKeyServer:24,primaryUserID:25,policyURI:26,keyFlags:27,signersUserID:28,reasonForRevocation:29,features:30,signatureTarget:31,embeddedSignature:32,issuerFingerprint:33,preferredAEADAlgorithms:34},keyFlags:{certifyKeys:1,signData:2,encryptCommunication:4,encryptStorage:8,splitPrivateKey:16,authentication:32,sharedPrivateKey:128},armor:{multipartSection:0,multipartLast:1,signed:2,message:3,publicKey:4,privateKey:5,signature:6},reasonForRevocation:{noReason:0,keySuperseded:1,keyCompromised:2,keyRetired:3,userIDInvalid:32},features:{modificationDetection:1,aead:2,v5Keys:4},write:function(e,t){if("number"==typeof t&&(t=this.read(e,t)),void 0!==e[t])return e[t];throw new Error("Invalid enum value.")},read:function(e,t){if(e[ie]||(e[ie]=[],Object.entries(e).forEach((([t,r])=>{e[ie][r]=t}))),void 0!==e[ie][t])return e[ie][t];throw new Error("Invalid enum value.")}},se={preferredHashAlgorithm:ae.hash.sha256,preferredSymmetricAlgorithm:ae.symmetric.aes256,preferredCompressionAlgorithm:ae.compression.uncompressed,deflateLevel:6,aeadProtect:!1,preferredAEADAlgorithm:ae.aead.eax,aeadChunkSizeByte:12,v5Keys:!1,s2kIterationCountByte:224,allowUnauthenticatedMessages:!1,allowUnauthenticatedStream:!1,checksumRequired:!1,minRSABits:2047,passwordCollisionCheck:!1,revocationsExpire:!1,allowInsecureDecryptionWithSigningKeys:!1,allowInsecureVerificationWithReformattedKeys:!1,constantTimePKCS1Decryption:!1,constantTimePKCS1DecryptionSupportedSymmetricAlgorithms:new Set([ae.symmetric.aes128,ae.symmetric.aes192,ae.symmetric.aes256]),minBytesForWebCrypto:1e3,ignoreUnsupportedPackets:!0,ignoreMalformedPackets:!1,additionalAllowedPackets:[],showVersion:!1,showComment:!1,versionString:"OpenPGP.js 5.9.0",commentString:"https://openpgpjs.org",maxUserIDLength:5120,knownNotations:[],useIndutnyElliptic:!0,rejectHashAlgorithms:new Set([ae.hash.md5,ae.hash.ripemd]),rejectMessageHashAlgorithms:new Set([ae.hash.md5,ae.hash.ripemd,ae.hash.sha1]),rejectPublicKeyAlgorithms:new Set([ae.publicKey.elgamal,ae.publicKey.dsa]),rejectCurves:new Set([ae.curve.secp256k1])};function oe(e){const t=e.match(/^-----BEGIN PGP (MESSAGE, PART \d+\/\d+|MESSAGE, PART \d+|SIGNED MESSAGE|MESSAGE|PUBLIC KEY BLOCK|PRIVATE KEY BLOCK|SIGNATURE)-----$/m);if(!t)throw new Error("Unknown ASCII armor type");return/MESSAGE, PART \d+\/\d+/.test(t[1])?ae.armor.multipartSection:/MESSAGE, PART \d+/.test(t[1])?ae.armor.multipartLast:/SIGNED MESSAGE/.test(t[1])?ae.armor.signed:/MESSAGE/.test(t[1])?ae.armor.message:/PUBLIC KEY BLOCK/.test(t[1])?ae.armor.publicKey:/PRIVATE KEY BLOCK/.test(t[1])?ae.armor.privateKey:/SIGNATURE/.test(t[1])?ae.armor.signature:void 0}function ce(e,t){let r="";return t.showVersion&&(r+="Version: "+t.versionString+"\n"),t.showComment&&(r+="Comment: "+t.commentString+"\n"),e&&(r+="Comment: "+e+"\n"),r+="\n",r}function ue(e){return ee(function(e){let t=13501623;return N(e,(e=>{const r=he?Math.floor(e.length/4):0,n=new Uint32Array(e.buffer,e.byteOffset,r);for(let e=0;e>24&255]^le[1][t>>16&255]^le[2][t>>8&255]^le[3][t>>0&255];for(let n=4*r;n>8^le[0][255&t^e[n]]}),(()=>new Uint8Array([t,t>>8,t>>16])))}(e))}const le=[new Array(255),new Array(255),new Array(255),new Array(255)];for(let e=0;e<=255;e++){let t=e<<16;for(let e=0;e<8;e++)t=t<<1^(0!=(8388608&t)?8801531:0);le[0][e]=(16711680&t)>>16|65280&t|(255&t)<<16}for(let e=0;e<=255;e++)le[1][e]=le[0][e]>>8^le[0][255&le[0][e]];for(let e=0;e<=255;e++)le[2][e]=le[1][e]>>8^le[0][255&le[1][e]];for(let e=0;e<=255;e++)le[3][e]=le[2][e]>>8^le[0][255&le[2][e]];const he=function(){const e=new ArrayBuffer(2);return new DataView(e).setInt16(0,255,!0),255===new Int16Array(e)[0]}();function de(e){for(let t=0;t=0&&n!==e.length-1&&(t=e.slice(0,n),r=e.slice(n+1).substr(0,4)),{body:t,checksum:r}}function pe(e,t=se){return new Promise((async(r,n)=>{try{const i=/^-----[^-]+-----$/m,a=/^[ \f\r\t\u00a0\u2000-\u200a\u202f\u205f\u3000]*$/;let s;const o=[];let c,u,l,h=o,d=[],f=te(L(e,(async(e,t)=>{const p=B(e);try{for(;;){let e=await p.readLine();if(void 0===e)throw new Error("Misformed armored text");if(e=Z.removeTrailingSpaces(e.replace(/[\r\n]/g,"")),s)if(c)u||2!==s||(i.test(e)?(d=d.join("\r\n"),u=!0,de(h),h=[],c=!1):d.push(e.replace(/^- /,"")));else if(i.test(e)&&n(new Error("Mandatory blank line missing between armor headers and armor data")),a.test(e)){if(de(h),c=!0,u||2!==s){r({text:d,data:f,headers:o,type:s});break}}else h.push(e);else i.test(e)&&(s=oe(e))}}catch(e){return void n(e)}const y=U(t);try{for(;;){await y.ready;const{done:e,value:t}=await p.read();if(e)throw new Error("Misformed armored text");const r=t+"";if(-1!==r.indexOf("=")||-1!==r.indexOf("-")){let e=await p.readToEnd();e.length||(e=""),e=r+e,e=Z.removeTrailingSpaces(e.replace(/\r/g,""));const t=e.split(i);if(1===t.length)throw new Error("Misformed armored text");const n=fe(t[0].slice(0,-1));l=n.checksum,await y.write(n.body);break}await y.write(r)}await y.ready,await y.close()}catch(e){await y.abort(e)}})));f=L(f,(async(e,r)=>{const n=W(ue(z(e)));n.catch((()=>{})),await R(e,r,{preventClose:!0});const i=U(r);try{const e=(await n).replace("\n","");if(l!==e&&(l||t.checksumRequired))throw new Error("Ascii armor integrity check failed");await i.ready,await i.close()}catch(e){await i.abort(e)}}))}catch(e){n(e)}})).then((async e=>(u(e.data)&&(e.data=await W(e.data)),e)))}function ye(e,t,r,n,i,a=se){let s,o;e===ae.armor.signed&&(s=t.text,o=t.hash,t=t.data);const c=z(t),u=[];switch(e){case ae.armor.multipartSection:u.push("-----BEGIN PGP MESSAGE, PART "+r+"/"+n+"-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP MESSAGE, PART "+r+"/"+n+"-----\n");break;case ae.armor.multipartLast:u.push("-----BEGIN PGP MESSAGE, PART "+r+"-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP MESSAGE, PART "+r+"-----\n");break;case ae.armor.signed:u.push("-----BEGIN PGP SIGNED MESSAGE-----\n"),u.push("Hash: "+o+"\n\n"),u.push(s.replace(/^-/gm,"- -")),u.push("\n-----BEGIN PGP SIGNATURE-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP SIGNATURE-----\n");break;case ae.armor.message:u.push("-----BEGIN PGP MESSAGE-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP MESSAGE-----\n");break;case ae.armor.publicKey:u.push("-----BEGIN PGP PUBLIC KEY BLOCK-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP PUBLIC KEY BLOCK-----\n");break;case ae.armor.privateKey:u.push("-----BEGIN PGP PRIVATE KEY BLOCK-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP PRIVATE KEY BLOCK-----\n");break;case ae.armor.signature:u.push("-----BEGIN PGP SIGNATURE-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP SIGNATURE-----\n")}return Z.concat(u)}class ge{constructor(){this.bytes=""}read(e){this.bytes=Z.uint8ArrayToString(e.subarray(0,8))}write(){return Z.stringToUint8Array(this.bytes)}toHex(){return Z.uint8ArrayToHex(Z.stringToUint8Array(this.bytes))}equals(e,t=!1){return t&&(e.isWildcard()||this.isWildcard())||this.bytes===e.bytes}isNull(){return""===this.bytes}isWildcard(){return/^0+$/.test(this.toHex())}static mapToHex(e){return e.toHex()}static fromID(e){const t=new ge;return t.read(Z.hexToUint8Array(e)),t}static wildcard(){const e=new ge;return e.read(new Uint8Array(8)),e}}var me=function(){var e,t,r=!1;function n(r,n){var i=e[(t[r]+t[n])%255];return 0!==r&&0!==n||(i=0),i}var i,a,s,o,c=!1;var u=function(u,l){c||function(){function u(r){var n,i,a;for(i=a=function(r){var n=e[255-t[r]];return 0===r&&(n=0),n}(r),n=0;n<4;n++)a^=i=255&(i<<1|i>>>7);return 99^a}r||function(){e=[],t=[];var n,i,a=1;for(n=0;n<255;n++)e[n]=a,i=128&a,a<<=1,a&=255,128===i&&(a^=27),a^=e[n],t[e[n]]=n;e[255]=e[0],t[0]=0,r=!0}(),i=[],a=[],s=[[],[],[],[]],o=[[],[],[],[]];for(var l=0;l<256;l++){var h=u(l);i[l]=h,a[h]=l,s[0][l]=n(2,h)<<24|h<<16|h<<8|n(3,h),o[0][h]=n(14,l)<<24|n(9,l)<<16|n(13,l)<<8|n(11,l);for(var d=1;d<4;d++)s[d][l]=s[d-1][l]>>>8|s[d-1][l]<<24,o[d][h]=o[d-1][h]>>>8|o[d-1][h]<<24}c=!0}();var h=new Uint32Array(l);h.set(i,512),h.set(a,768);for(var d=0;d<4;d++)h.set(s[d],4096+1024*d>>2),h.set(o[d],8192+1024*d>>2);var f=function(e,t,r){"use asm";var n=0,i=0,a=0,s=0,o=0,c=0,u=0,l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0;var S=new e.Uint32Array(r),E=new e.Uint8Array(r);function x(e,t,r,o,c,u,l,h){e=e|0;t=t|0;r=r|0;o=o|0;c=c|0;u=u|0;l=l|0;h=h|0;var d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0;d=r|0x400,f=r|0x800,p=r|0xc00;c=c^S[(e|0)>>2],u=u^S[(e|4)>>2],l=l^S[(e|8)>>2],h=h^S[(e|12)>>2];for(w=16;(w|0)<=o<<4;w=w+16|0){y=S[(r|c>>22&1020)>>2]^S[(d|u>>14&1020)>>2]^S[(f|l>>6&1020)>>2]^S[(p|h<<2&1020)>>2]^S[(e|w|0)>>2],g=S[(r|u>>22&1020)>>2]^S[(d|l>>14&1020)>>2]^S[(f|h>>6&1020)>>2]^S[(p|c<<2&1020)>>2]^S[(e|w|4)>>2],m=S[(r|l>>22&1020)>>2]^S[(d|h>>14&1020)>>2]^S[(f|c>>6&1020)>>2]^S[(p|u<<2&1020)>>2]^S[(e|w|8)>>2],b=S[(r|h>>22&1020)>>2]^S[(d|c>>14&1020)>>2]^S[(f|u>>6&1020)>>2]^S[(p|l<<2&1020)>>2]^S[(e|w|12)>>2];c=y,u=g,l=m,h=b}n=S[(t|c>>22&1020)>>2]<<24^S[(t|u>>14&1020)>>2]<<16^S[(t|l>>6&1020)>>2]<<8^S[(t|h<<2&1020)>>2]^S[(e|w|0)>>2],i=S[(t|u>>22&1020)>>2]<<24^S[(t|l>>14&1020)>>2]<<16^S[(t|h>>6&1020)>>2]<<8^S[(t|c<<2&1020)>>2]^S[(e|w|4)>>2],a=S[(t|l>>22&1020)>>2]<<24^S[(t|h>>14&1020)>>2]<<16^S[(t|c>>6&1020)>>2]<<8^S[(t|u<<2&1020)>>2]^S[(e|w|8)>>2],s=S[(t|h>>22&1020)>>2]<<24^S[(t|c>>14&1020)>>2]<<16^S[(t|u>>6&1020)>>2]<<8^S[(t|l<<2&1020)>>2]^S[(e|w|12)>>2]}function P(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;x(0x0000,0x0800,0x1000,_,e,t,r,n)}function C(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var a=0;x(0x0400,0x0c00,0x2000,_,e,n,r,t);a=i,i=s,s=a}function T(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o^e,c^t,u^r,l^h);o=n,c=i,u=a,l=s}function M(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;var d=0;x(0x0400,0x0c00,0x2000,_,e,h,r,t);d=i,i=s,s=d;n=n^o,i=i^c,a=a^u,s=s^l;o=e,c=t,u=r,l=h}function I(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o,c,u,l);o=n=n^e,c=i=i^t,u=a=a^r,l=s=s^h}function D(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o,c,u,l);n=n^e,i=i^t,a=a^r,s=s^h;o=e,c=t,u=r,l=h}function B(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o,c,u,l);o=n,c=i,u=a,l=s;n=n^e,i=i^t,a=a^r,s=s^h}function U(e,t,r,o){e=e|0;t=t|0;r=r|0;o=o|0;x(0x0000,0x0800,0x1000,_,h,d,f,p);p=~b&p|b&p+1;f=~m&f|m&f+((p|0)==0);d=~g&d|g&d+((f|0)==0);h=~y&h|y&h+((d|0)==0);n=n^e;i=i^t;a=a^r;s=s^o}function R(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0,s=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0;e=e^o,t=t^c,r=r^u,n=n^l;i=w|0,a=v|0,s=k|0,h=A|0;for(;(g|0)<128;g=g+1|0){if(i>>>31){d=d^e,f=f^t,p=p^r,y=y^n}i=i<<1|a>>>31,a=a<<1|s>>>31,s=s<<1|h>>>31,h=h<<1;m=n&1;n=n>>>1|r<<31,r=r>>>1|t<<31,t=t>>>1|e<<31,e=e>>>1;if(m)e=e^0xe1000000}o=d,c=f,u=p,l=y}function K(e){e=e|0;_=e}function O(e,t,r,o){e=e|0;t=t|0;r=r|0;o=o|0;n=e,i=t,a=r,s=o}function N(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;o=e,c=t,u=r,l=n}function L(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;h=e,d=t,f=r,p=n}function q(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;y=e,g=t,m=r,b=n}function F(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;p=~b&p|b&n,f=~m&f|m&r,d=~g&d|g&t,h=~y&h|y&e}function z(e){e=e|0;if(e&15)return-1;E[e|0]=n>>>24,E[e|1]=n>>>16&255,E[e|2]=n>>>8&255,E[e|3]=n&255,E[e|4]=i>>>24,E[e|5]=i>>>16&255,E[e|6]=i>>>8&255,E[e|7]=i&255,E[e|8]=a>>>24,E[e|9]=a>>>16&255,E[e|10]=a>>>8&255,E[e|11]=a&255,E[e|12]=s>>>24,E[e|13]=s>>>16&255,E[e|14]=s>>>8&255,E[e|15]=s&255;return 16}function j(e){e=e|0;if(e&15)return-1;E[e|0]=o>>>24,E[e|1]=o>>>16&255,E[e|2]=o>>>8&255,E[e|3]=o&255,E[e|4]=c>>>24,E[e|5]=c>>>16&255,E[e|6]=c>>>8&255,E[e|7]=c&255,E[e|8]=u>>>24,E[e|9]=u>>>16&255,E[e|10]=u>>>8&255,E[e|11]=u&255,E[e|12]=l>>>24,E[e|13]=l>>>16&255,E[e|14]=l>>>8&255,E[e|15]=l&255;return 16}function H(){P(0,0,0,0);w=n,v=i,k=a,A=s}function W(e,t,r){e=e|0;t=t|0;r=r|0;var o=0;if(t&15)return-1;while((r|0)>=16){G[e&7](E[t|0]<<24|E[t|1]<<16|E[t|2]<<8|E[t|3],E[t|4]<<24|E[t|5]<<16|E[t|6]<<8|E[t|7],E[t|8]<<24|E[t|9]<<16|E[t|10]<<8|E[t|11],E[t|12]<<24|E[t|13]<<16|E[t|14]<<8|E[t|15]);E[t|0]=n>>>24,E[t|1]=n>>>16&255,E[t|2]=n>>>8&255,E[t|3]=n&255,E[t|4]=i>>>24,E[t|5]=i>>>16&255,E[t|6]=i>>>8&255,E[t|7]=i&255,E[t|8]=a>>>24,E[t|9]=a>>>16&255,E[t|10]=a>>>8&255,E[t|11]=a&255,E[t|12]=s>>>24,E[t|13]=s>>>16&255,E[t|14]=s>>>8&255,E[t|15]=s&255;o=o+16|0,t=t+16|0,r=r-16|0}return o|0}function V(e,t,r){e=e|0;t=t|0;r=r|0;var n=0;if(t&15)return-1;while((r|0)>=16){$[e&1](E[t|0]<<24|E[t|1]<<16|E[t|2]<<8|E[t|3],E[t|4]<<24|E[t|5]<<16|E[t|6]<<8|E[t|7],E[t|8]<<24|E[t|9]<<16|E[t|10]<<8|E[t|11],E[t|12]<<24|E[t|13]<<16|E[t|14]<<8|E[t|15]);n=n+16|0,t=t+16|0,r=r-16|0}return n|0}var G=[P,C,T,M,I,D,B,U];var $=[T,R];return{set_rounds:K,set_state:O,set_iv:N,set_nonce:L,set_mask:q,set_counter:F,get_state:z,get_iv:j,gcm_init:H,cipher:W,mac:V}}({Uint8Array,Uint32Array},0,l);return f.set_key=function(e,t,r,n,a,s,c,u,l){var d=h.subarray(0,60),p=h.subarray(256,316);d.set([t,r,n,a,s,c,u,l]);for(var y=e,g=1;y<4*e+28;y++){var m=d[y-1];(y%e==0||8===e&&y%e==4)&&(m=i[m>>>24]<<24^i[m>>>16&255]<<16^i[m>>>8&255]<<8^i[255&m]),y%e==0&&(m=m<<8^m>>>24^g<<24,g=g<<1^(128&g?27:0)),d[y]=d[y-e]^m}for(var b=0;b=y-4?m:o[0][i[m>>>24]]^o[1][i[m>>>16&255]]^o[2][i[m>>>8&255]]^o[3][i[255&m]];f.set_rounds(e+5)},f};return u.ENC={ECB:0,CBC:2,CFB:4,OFB:6,CTR:7},u.DEC={ECB:1,CBC:3,CFB:5,OFB:6,CTR:7},u.MAC={CBC:0,GCM:1},u.HEAP_DATA=16384,u}();function be(e){return e instanceof Uint8Array}function we(e,t){const r=e?e.byteLength:t||65536;if(4095&r||r<=0)throw new Error("heap size must be a positive integer and a multiple of 4096");return e||new Uint8Array(new ArrayBuffer(r))}function ve(e,t,r,n,i){const a=e.length-t,s=ae+t.length),0),r=new Uint8Array(t);let n=0;for(let t=0;t>2,i.getUint32(0),i.getUint32(4),i.getUint32(8),i.getUint32(12),n>16?i.getUint32(16):0,n>16?i.getUint32(20):0,n>24?i.getUint32(24):0,n>24?i.getUint32(28):0),void 0!==t){if(16!==t.length)throw new _e("illegal iv size");let e=new DataView(t.buffer,t.byteOffset,t.byteLength);r.set_iv(e.getUint32(0),e.getUint32(4),e.getUint32(8),e.getUint32(12))}else r.set_iv(0,0,0,0)}AES_Encrypt_process(e){if(!be(e))throw new TypeError("data isn't of expected type");let{heap:t,asm:r}=this.acquire_asm(),n=me.ENC[this.mode],i=me.HEAP_DATA,a=this.pos,s=this.len,o=0,c=e.length||0,u=0,l=0,h=new Uint8Array(s+c&-16);for(;c>0;)l=ve(t,a+s,e,o,c),s+=l,o+=l,c-=l,l=r.cipher(n,i+a,s),l&&h.set(t.subarray(a,a+l),u),u+=l,l0;)d=ve(t,a+s,e,o,c),s+=d,o+=d,c-=d,d=r.cipher(n,i+a,s-(c?0:h)),d&&f.set(t.subarray(a,a+d),u),u+=d,d0){if(a%16){if(this.hasOwnProperty("padding"))throw new _e("data length must be a multiple of the block size");a+=16-a%16}if(t.cipher(r,n+i,a),this.hasOwnProperty("padding")&&this.padding){let t=e[i+s-1];if(t<1||t>16||t>s)throw new Se("bad padding");let r=0;for(let n=t;n>1;n--)r|=t^e[i+s-n];if(r)throw new Se("bad padding");s-=t}}const o=new Uint8Array(s);return s>0&&o.set(e.subarray(i,i+s)),this.pos=0,this.len=0,this.release_asm(),o}}class Ce{static encrypt(e,t,r=!1){return new Ce(t,r).encrypt(e)}static decrypt(e,t,r=!1){return new Ce(t,r).decrypt(e)}constructor(e,t=!1,r){this.aes=r||new Pe(e,void 0,t,"ECB")}encrypt(e){return ke(this.aes.AES_Encrypt_process(e),this.aes.AES_Encrypt_finish())}decrypt(e){return ke(this.aes.AES_Decrypt_process(e),this.aes.AES_Decrypt_finish())}}function Te(e){const t=function(e){const t=new Ce(e);this.encrypt=function(e){return t.encrypt(e)},this.decrypt=function(e){return t.decrypt(e)}};return t.blockSize=t.prototype.blockSize=16,t.keySize=t.prototype.keySize=e/8,t}function Me(e,t,r,n,i,a){const s=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],o=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],c=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],u=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],l=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],h=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],d=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],f=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];let p,y,g,m,b,w,v,k,A,_,S,E,x,P,C=0,T=t.length;const M=32===e.length?3:9;k=3===M?r?[0,32,2]:[30,-2,-2]:r?[0,32,2,62,30,-2,64,96,2]:[94,62,-2,32,64,2,30,-2,-2],r&&(t=function(e,t){const r=8-e.length%8;let n;if(2===t&&r<8)n=" ".charCodeAt(0);else if(1===t)n=r;else{if(t||!(r<8)){if(8===r)return e;throw new Error("des: invalid padding")}n=0}const i=new Uint8Array(e.length+r);for(let t=0;t>>4^v),v^=g,w^=g<<4,g=65535&(w>>>16^v),v^=g,w^=g<<16,g=858993459&(v>>>2^w),w^=g,v^=g<<2,g=16711935&(v>>>8^w),w^=g,v^=g<<8,g=1431655765&(w>>>1^v),v^=g,w^=g<<1,w=w<<1|w>>>31,v=v<<1|v>>>31,y=0;y>>4|v<<28)^e[p+1],g=w,w=v,v=g^(o[m>>>24&63]|u[m>>>16&63]|h[m>>>8&63]|f[63&m]|s[b>>>24&63]|c[b>>>16&63]|l[b>>>8&63]|d[63&b]);g=w,w=v,v=g}w=w>>>1|w<<31,v=v>>>1|v<<31,g=1431655765&(w>>>1^v),v^=g,w^=g<<1,g=16711935&(v>>>8^w),w^=g,v^=g<<8,g=858993459&(v>>>2^w),w^=g,v^=g<<2,g=65535&(w>>>16^v),v^=g,w^=g<<16,g=252645135&(w>>>4^v),v^=g,w^=g<<4,1===n&&(r?(A=w,S=v):(w^=_,v^=E)),I[D++]=w>>>24,I[D++]=w>>>16&255,I[D++]=w>>>8&255,I[D++]=255&w,I[D++]=v>>>24,I[D++]=v>>>16&255,I[D++]=v>>>8&255,I[D++]=255&v}return r||(I=function(e,t){let r,n=null;if(2===t)r=" ".charCodeAt(0);else if(1===t)n=e[e.length-1];else{if(t)throw new Error("des: invalid padding");r=0}if(!n){for(n=1;e[e.length-n]===r;)n++;n--}return e.subarray(0,e.length-n)}(I,a)),I}function Ie(e){const t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],a=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],o=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],u=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],l=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],h=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],f=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],p=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],y=e.length>8?3:1,g=new Array(32*y),m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0];let b,w,v,k=0,A=0;for(let _=0;_>>4^_),_^=v,y^=v<<4,v=65535&(_>>>-16^y),y^=v,_^=v<<-16,v=858993459&(y>>>2^_),_^=v,y^=v<<2,v=65535&(_>>>-16^y),y^=v,_^=v<<-16,v=1431655765&(y>>>1^_),_^=v,y^=v<<1,v=16711935&(_>>>8^y),y^=v,_^=v<<8,v=1431655765&(y>>>1^_),_^=v,y^=v<<1,v=y<<8|_>>>20&240,y=_<<24|_<<8&16711680|_>>>8&65280|_>>>24&240,_=v;for(let e=0;e>>26,_=_<<2|_>>>26):(y=y<<1|y>>>27,_=_<<1|_>>>27),y&=-15,_&=-15,b=t[y>>>28]|r[y>>>24&15]|n[y>>>20&15]|i[y>>>16&15]|a[y>>>12&15]|s[y>>>8&15]|o[y>>>4&15],w=c[_>>>28]|u[_>>>24&15]|l[_>>>20&15]|h[_>>>16&15]|d[_>>>12&15]|f[_>>>8&15]|p[_>>>4&15],v=65535&(w>>>16^b),g[A++]=b^v,g[A++]=w^v<<16}return g}function De(e){this.key=[];for(let t=0;t<3;t++)this.key.push(new Uint8Array(e.subarray(8*t,8*t+8)));this.encrypt=function(e){return Me(Ie(this.key[2]),Me(Ie(this.key[1]),Me(Ie(this.key[0]),e,!0,0,null,null),!1,0,null,null),!0,0,null,null)}}function Be(){this.BlockSize=8,this.KeySize=16,this.setKey=function(e){if(this.masking=new Array(16),this.rotate=new Array(16),this.reset(),e.length!==this.KeySize)throw new Error("CAST-128: keys must be 16 bytes");return this.keySchedule(e),!0},this.reset=function(){for(let e=0;e<16;e++)this.masking[e]=0,this.rotate[e]=0},this.getBlockSize=function(){return this.BlockSize},this.encrypt=function(e){const t=new Array(e.length);for(let a=0;a>>24&255,t[a+1]=c>>>16&255,t[a+2]=c>>>8&255,t[a+3]=255&c,t[a+4]=o>>>24&255,t[a+5]=o>>>16&255,t[a+6]=o>>>8&255,t[a+7]=255&o}return t},this.decrypt=function(e){const t=new Array(e.length);for(let a=0;a>>24&255,t[a+1]=c>>>16&255,t[a+2]=c>>>8&255,t[a+3]=255&c,t[a+4]=o>>>24&255,t[a+5]=o>>16&255,t[a+6]=o>>8&255,t[a+7]=255&o}return t};const e=new Array(4);e[0]=new Array(4),e[0][0]=[4,0,13,15,12,14,8],e[0][1]=[5,2,16,18,17,19,10],e[0][2]=[6,3,23,22,21,20,9],e[0][3]=[7,1,26,25,27,24,11],e[1]=new Array(4),e[1][0]=[0,6,21,23,20,22,16],e[1][1]=[1,4,0,2,1,3,18],e[1][2]=[2,5,7,6,5,4,17],e[1][3]=[3,7,10,9,11,8,19],e[2]=new Array(4),e[2][0]=[4,0,13,15,12,14,8],e[2][1]=[5,2,16,18,17,19,10],e[2][2]=[6,3,23,22,21,20,9],e[2][3]=[7,1,26,25,27,24,11],e[3]=new Array(4),e[3][0]=[0,6,21,23,20,22,16],e[3][1]=[1,4,0,2,1,3,18],e[3][2]=[2,5,7,6,5,4,17],e[3][3]=[3,7,10,9,11,8,19];const t=new Array(4);function r(e,t,r){const n=t+e,i=n<>>32-r;return(a[0][i>>>24]^a[1][i>>>16&255])-a[2][i>>>8&255]+a[3][255&i]}function n(e,t,r){const n=t^e,i=n<>>32-r;return a[0][i>>>24]-a[1][i>>>16&255]+a[2][i>>>8&255]^a[3][255&i]}function i(e,t,r){const n=t-e,i=n<>>32-r;return(a[0][i>>>24]+a[1][i>>>16&255]^a[2][i>>>8&255])-a[3][255&i]}t[0]=new Array(4),t[0][0]=[24,25,23,22,18],t[0][1]=[26,27,21,20,22],t[0][2]=[28,29,19,18,25],t[0][3]=[30,31,17,16,28],t[1]=new Array(4),t[1][0]=[3,2,12,13,8],t[1][1]=[1,0,14,15,13],t[1][2]=[7,6,8,9,3],t[1][3]=[5,4,10,11,7],t[2]=new Array(4),t[2][0]=[19,18,28,29,25],t[2][1]=[17,16,30,31,28],t[2][2]=[23,22,24,25,18],t[2][3]=[21,20,26,27,22],t[3]=new Array(4),t[3][0]=[8,9,7,6,3],t[3][1]=[10,11,5,4,7],t[3][2]=[12,13,3,2,8],t[3][3]=[14,15,1,0,13],this.keySchedule=function(r){const n=new Array(8),i=new Array(32);let s;for(let e=0;e<4;e++)s=4*e,n[e]=r[s]<<24|r[s+1]<<16|r[s+2]<<8|r[s+3];const o=[6,7,4,5];let c,u=0;for(let r=0;r<2;r++)for(let r=0;r<4;r++){for(s=0;s<4;s++){const t=e[r][s];c=n[t[1]],c^=a[4][n[t[2]>>>2]>>>24-8*(3&t[2])&255],c^=a[5][n[t[3]>>>2]>>>24-8*(3&t[3])&255],c^=a[6][n[t[4]>>>2]>>>24-8*(3&t[4])&255],c^=a[7][n[t[5]>>>2]>>>24-8*(3&t[5])&255],c^=a[o[s]][n[t[6]>>>2]>>>24-8*(3&t[6])&255],n[t[0]]=c}for(s=0;s<4;s++){const e=t[r][s];c=a[4][n[e[0]>>>2]>>>24-8*(3&e[0])&255],c^=a[5][n[e[1]>>>2]>>>24-8*(3&e[1])&255],c^=a[6][n[e[2]>>>2]>>>24-8*(3&e[2])&255],c^=a[7][n[e[3]>>>2]>>>24-8*(3&e[3])&255],c^=a[4+s][n[e[4]>>>2]>>>24-8*(3&e[4])&255],i[u]=c,u++}}for(let e=0;e<16;e++)this.masking[e]=i[e],this.rotate[e]=31&i[16+e]};const a=new Array(8);a[0]=[821772500,2678128395,1810681135,1059425402,505495343,2617265619,1610868032,3483355465,3218386727,2294005173,3791863952,2563806837,1852023008,365126098,3269944861,584384398,677919599,3229601881,4280515016,2002735330,1136869587,3744433750,2289869850,2731719981,2714362070,879511577,1639411079,575934255,717107937,2857637483,576097850,2731753936,1725645e3,2810460463,5111599,767152862,2543075244,1251459544,1383482551,3052681127,3089939183,3612463449,1878520045,1510570527,2189125840,2431448366,582008916,3163445557,1265446783,1354458274,3529918736,3202711853,3073581712,3912963487,3029263377,1275016285,4249207360,2905708351,3304509486,1442611557,3585198765,2712415662,2731849581,3248163920,2283946226,208555832,2766454743,1331405426,1447828783,3315356441,3108627284,2957404670,2981538698,3339933917,1669711173,286233437,1465092821,1782121619,3862771680,710211251,980974943,1651941557,430374111,2051154026,704238805,4128970897,3144820574,2857402727,948965521,3333752299,2227686284,718756367,2269778983,2731643755,718440111,2857816721,3616097120,1113355533,2478022182,410092745,1811985197,1944238868,2696854588,1415722873,1682284203,1060277122,1998114690,1503841958,82706478,2315155686,1068173648,845149890,2167947013,1768146376,1993038550,3566826697,3390574031,940016341,3355073782,2328040721,904371731,1205506512,4094660742,2816623006,825647681,85914773,2857843460,1249926541,1417871568,3287612,3211054559,3126306446,1975924523,1353700161,2814456437,2438597621,1800716203,722146342,2873936343,1151126914,4160483941,2877670899,458611604,2866078500,3483680063,770352098,2652916994,3367839148,3940505011,3585973912,3809620402,718646636,2504206814,2914927912,3631288169,2857486607,2860018678,575749918,2857478043,718488780,2069512688,3548183469,453416197,1106044049,3032691430,52586708,3378514636,3459808877,3211506028,1785789304,218356169,3571399134,3759170522,1194783844,1523787992,3007827094,1975193539,2555452411,1341901877,3045838698,3776907964,3217423946,2802510864,2889438986,1057244207,1636348243,3761863214,1462225785,2632663439,481089165,718503062,24497053,3332243209,3344655856,3655024856,3960371065,1195698900,2971415156,3710176158,2115785917,4027663609,3525578417,2524296189,2745972565,3564906415,1372086093,1452307862,2780501478,1476592880,3389271281,18495466,2378148571,901398090,891748256,3279637769,3157290713,2560960102,1447622437,4284372637,216884176,2086908623,1879786977,3588903153,2242455666,2938092967,3559082096,2810645491,758861177,1121993112,215018983,642190776,4169236812,1196255959,2081185372,3508738393,941322904,4124243163,2877523539,1848581667,2205260958,3180453958,2589345134,3694731276,550028657,2519456284,3789985535,2973870856,2093648313,443148163,46942275,2734146937,1117713533,1115362972,1523183689,3717140224,1551984063],a[1]=[522195092,4010518363,1776537470,960447360,4267822970,4005896314,1435016340,1929119313,2913464185,1310552629,3579470798,3724818106,2579771631,1594623892,417127293,2715217907,2696228731,1508390405,3994398868,3925858569,3695444102,4019471449,3129199795,3770928635,3520741761,990456497,4187484609,2783367035,21106139,3840405339,631373633,3783325702,532942976,396095098,3548038825,4267192484,2564721535,2011709262,2039648873,620404603,3776170075,2898526339,3612357925,4159332703,1645490516,223693667,1567101217,3362177881,1029951347,3470931136,3570957959,1550265121,119497089,972513919,907948164,3840628539,1613718692,3594177948,465323573,2659255085,654439692,2575596212,2699288441,3127702412,277098644,624404830,4100943870,2717858591,546110314,2403699828,3655377447,1321679412,4236791657,1045293279,4010672264,895050893,2319792268,494945126,1914543101,2777056443,3894764339,2219737618,311263384,4275257268,3458730721,669096869,3584475730,3835122877,3319158237,3949359204,2005142349,2713102337,2228954793,3769984788,569394103,3855636576,1425027204,108000370,2736431443,3671869269,3043122623,1750473702,2211081108,762237499,3972989403,2798899386,3061857628,2943854345,867476300,964413654,1591880597,1594774276,2179821409,552026980,3026064248,3726140315,2283577634,3110545105,2152310760,582474363,1582640421,1383256631,2043843868,3322775884,1217180674,463797851,2763038571,480777679,2718707717,2289164131,3118346187,214354409,200212307,3810608407,3025414197,2674075964,3997296425,1847405948,1342460550,510035443,4080271814,815934613,833030224,1620250387,1945732119,2703661145,3966000196,1388869545,3456054182,2687178561,2092620194,562037615,1356438536,3409922145,3261847397,1688467115,2150901366,631725691,3840332284,549916902,3455104640,394546491,837744717,2114462948,751520235,2221554606,2415360136,3999097078,2063029875,803036379,2702586305,821456707,3019566164,360699898,4018502092,3511869016,3677355358,2402471449,812317050,49299192,2570164949,3259169295,2816732080,3331213574,3101303564,2156015656,3705598920,3546263921,143268808,3200304480,1638124008,3165189453,3341807610,578956953,2193977524,3638120073,2333881532,807278310,658237817,2969561766,1641658566,11683945,3086995007,148645947,1138423386,4158756760,1981396783,2401016740,3699783584,380097457,2680394679,2803068651,3334260286,441530178,4016580796,1375954390,761952171,891809099,2183123478,157052462,3683840763,1592404427,341349109,2438483839,1417898363,644327628,2233032776,2353769706,2201510100,220455161,1815641738,182899273,2995019788,3627381533,3702638151,2890684138,1052606899,588164016,1681439879,4038439418,2405343923,4229449282,167996282,1336969661,1688053129,2739224926,1543734051,1046297529,1138201970,2121126012,115334942,1819067631,1902159161,1941945968,2206692869,1159982321],a[2]=[2381300288,637164959,3952098751,3893414151,1197506559,916448331,2350892612,2932787856,3199334847,4009478890,3905886544,1373570990,2450425862,4037870920,3778841987,2456817877,286293407,124026297,3001279700,1028597854,3115296800,4208886496,2691114635,2188540206,1430237888,1218109995,3572471700,308166588,570424558,2187009021,2455094765,307733056,1310360322,3135275007,1384269543,2388071438,863238079,2359263624,2801553128,3380786597,2831162807,1470087780,1728663345,4072488799,1090516929,532123132,2389430977,1132193179,2578464191,3051079243,1670234342,1434557849,2711078940,1241591150,3314043432,3435360113,3091448339,1812415473,2198440252,267246943,796911696,3619716990,38830015,1526438404,2806502096,374413614,2943401790,1489179520,1603809326,1920779204,168801282,260042626,2358705581,1563175598,2397674057,1356499128,2217211040,514611088,2037363785,2186468373,4022173083,2792511869,2913485016,1173701892,4200428547,3896427269,1334932762,2455136706,602925377,2835607854,1613172210,41346230,2499634548,2457437618,2188827595,41386358,4172255629,1313404830,2405527007,3801973774,2217704835,873260488,2528884354,2478092616,4012915883,2555359016,2006953883,2463913485,575479328,2218240648,2099895446,660001756,2341502190,3038761536,3888151779,3848713377,3286851934,1022894237,1620365795,3449594689,1551255054,15374395,3570825345,4249311020,4151111129,3181912732,310226346,1133119310,530038928,136043402,2476768958,3107506709,2544909567,1036173560,2367337196,1681395281,1758231547,3641649032,306774401,1575354324,3716085866,1990386196,3114533736,2455606671,1262092282,3124342505,2768229131,4210529083,1833535011,423410938,660763973,2187129978,1639812e3,3508421329,3467445492,310289298,272797111,2188552562,2456863912,310240523,677093832,1013118031,901835429,3892695601,1116285435,3036471170,1337354835,243122523,520626091,277223598,4244441197,4194248841,1766575121,594173102,316590669,742362309,3536858622,4176435350,3838792410,2501204839,1229605004,3115755532,1552908988,2312334149,979407927,3959474601,1148277331,176638793,3614686272,2083809052,40992502,1340822838,2731552767,3535757508,3560899520,1354035053,122129617,7215240,2732932949,3118912700,2718203926,2539075635,3609230695,3725561661,1928887091,2882293555,1988674909,2063640240,2491088897,1459647954,4189817080,2302804382,1113892351,2237858528,1927010603,4002880361,1856122846,1594404395,2944033133,3855189863,3474975698,1643104450,4054590833,3431086530,1730235576,2984608721,3084664418,2131803598,4178205752,267404349,1617849798,1616132681,1462223176,736725533,2327058232,551665188,2945899023,1749386277,2575514597,1611482493,674206544,2201269090,3642560800,728599968,1680547377,2620414464,1388111496,453204106,4156223445,1094905244,2754698257,2201108165,3757000246,2704524545,3922940700,3996465027],a[3]=[2645754912,532081118,2814278639,3530793624,1246723035,1689095255,2236679235,4194438865,2116582143,3859789411,157234593,2045505824,4245003587,1687664561,4083425123,605965023,672431967,1336064205,3376611392,214114848,4258466608,3232053071,489488601,605322005,3998028058,264917351,1912574028,756637694,436560991,202637054,135989450,85393697,2152923392,3896401662,2895836408,2145855233,3535335007,115294817,3147733898,1922296357,3464822751,4117858305,1037454084,2725193275,2127856640,1417604070,1148013728,1827919605,642362335,2929772533,909348033,1346338451,3547799649,297154785,1917849091,4161712827,2883604526,3968694238,1469521537,3780077382,3375584256,1763717519,136166297,4290970789,1295325189,2134727907,2798151366,1566297257,3672928234,2677174161,2672173615,965822077,2780786062,289653839,1133871874,3491843819,35685304,1068898316,418943774,672553190,642281022,2346158704,1954014401,3037126780,4079815205,2030668546,3840588673,672283427,1776201016,359975446,3750173538,555499703,2769985273,1324923,69110472,152125443,3176785106,3822147285,1340634837,798073664,1434183902,15393959,216384236,1303690150,3881221631,3711134124,3960975413,106373927,2578434224,1455997841,1801814300,1578393881,1854262133,3188178946,3258078583,2302670060,1539295533,3505142565,3078625975,2372746020,549938159,3278284284,2620926080,181285381,2865321098,3970029511,68876850,488006234,1728155692,2608167508,836007927,2435231793,919367643,3339422534,3655756360,1457871481,40520939,1380155135,797931188,234455205,2255801827,3990488299,397000196,739833055,3077865373,2871719860,4022553888,772369276,390177364,3853951029,557662966,740064294,1640166671,1699928825,3535942136,622006121,3625353122,68743880,1742502,219489963,1664179233,1577743084,1236991741,410585305,2366487942,823226535,1050371084,3426619607,3586839478,212779912,4147118561,1819446015,1911218849,530248558,3486241071,3252585495,2886188651,3410272728,2342195030,20547779,2982490058,3032363469,3631753222,312714466,1870521650,1493008054,3491686656,615382978,4103671749,2534517445,1932181,2196105170,278426614,6369430,3274544417,2913018367,697336853,2143000447,2946413531,701099306,1558357093,2805003052,3500818408,2321334417,3567135975,216290473,3591032198,23009561,1996984579,3735042806,2024298078,3739440863,569400510,2339758983,3016033873,3097871343,3639523026,3844324983,3256173865,795471839,2951117563,4101031090,4091603803,3603732598,971261452,534414648,428311343,3389027175,2844869880,694888862,1227866773,2456207019,3043454569,2614353370,3749578031,3676663836,459166190,4132644070,1794958188,51825668,2252611902,3084671440,2036672799,3436641603,1099053433,2469121526,3059204941,1323291266,2061838604,1018778475,2233344254,2553501054,334295216,3556750194,1065731521,183467730],a[4]=[2127105028,745436345,2601412319,2788391185,3093987327,500390133,1155374404,389092991,150729210,3891597772,3523549952,1935325696,716645080,946045387,2901812282,1774124410,3869435775,4039581901,3293136918,3438657920,948246080,363898952,3867875531,1286266623,1598556673,68334250,630723836,1104211938,1312863373,613332731,2377784574,1101634306,441780740,3129959883,1917973735,2510624549,3238456535,2544211978,3308894634,1299840618,4076074851,1756332096,3977027158,297047435,3790297736,2265573040,3621810518,1311375015,1667687725,47300608,3299642885,2474112369,201668394,1468347890,576830978,3594690761,3742605952,1958042578,1747032512,3558991340,1408974056,3366841779,682131401,1033214337,1545599232,4265137049,206503691,103024618,2855227313,1337551222,2428998917,2963842932,4015366655,3852247746,2796956967,3865723491,3747938335,247794022,3755824572,702416469,2434691994,397379957,851939612,2314769512,218229120,1380406772,62274761,214451378,3170103466,2276210409,3845813286,28563499,446592073,1693330814,3453727194,29968656,3093872512,220656637,2470637031,77972100,1667708854,1358280214,4064765667,2395616961,325977563,4277240721,4220025399,3605526484,3355147721,811859167,3069544926,3962126810,652502677,3075892249,4132761541,3498924215,1217549313,3250244479,3858715919,3053989961,1538642152,2279026266,2875879137,574252750,3324769229,2651358713,1758150215,141295887,2719868960,3515574750,4093007735,4194485238,1082055363,3417560400,395511885,2966884026,179534037,3646028556,3738688086,1092926436,2496269142,257381841,3772900718,1636087230,1477059743,2499234752,3811018894,2675660129,3285975680,90732309,1684827095,1150307763,1723134115,3237045386,1769919919,1240018934,815675215,750138730,2239792499,1234303040,1995484674,138143821,675421338,1145607174,1936608440,3238603024,2345230278,2105974004,323969391,779555213,3004902369,2861610098,1017501463,2098600890,2628620304,2940611490,2682542546,1171473753,3656571411,3687208071,4091869518,393037935,159126506,1662887367,1147106178,391545844,3452332695,1891500680,3016609650,1851642611,546529401,1167818917,3194020571,2848076033,3953471836,575554290,475796850,4134673196,450035699,2351251534,844027695,1080539133,86184846,1554234488,3692025454,1972511363,2018339607,1491841390,1141460869,1061690759,4244549243,2008416118,2351104703,2868147542,1598468138,722020353,1027143159,212344630,1387219594,1725294528,3745187956,2500153616,458938280,4129215917,1828119673,544571780,3503225445,2297937496,1241802790,267843827,2694610800,1397140384,1558801448,3782667683,1806446719,929573330,2234912681,400817706,616011623,4121520928,3603768725,1761550015,1968522284,4053731006,4192232858,4005120285,872482584,3140537016,3894607381,2287405443,1963876937,3663887957,1584857e3,2975024454,1833426440,4025083860],a[5]=[4143615901,749497569,1285769319,3795025788,2514159847,23610292,3974978748,844452780,3214870880,3751928557,2213566365,1676510905,448177848,3730751033,4086298418,2307502392,871450977,3222878141,4110862042,3831651966,2735270553,1310974780,2043402188,1218528103,2736035353,4274605013,2702448458,3936360550,2693061421,162023535,2827510090,687910808,23484817,3784910947,3371371616,779677500,3503626546,3473927188,4157212626,3500679282,4248902014,2466621104,3899384794,1958663117,925738300,1283408968,3669349440,1840910019,137959847,2679828185,1239142320,1315376211,1547541505,1690155329,739140458,3128809933,3933172616,3876308834,905091803,1548541325,4040461708,3095483362,144808038,451078856,676114313,2861728291,2469707347,993665471,373509091,2599041286,4025009006,4170239449,2149739950,3275793571,3749616649,2794760199,1534877388,572371878,2590613551,1753320020,3467782511,1405125690,4270405205,633333386,3026356924,3475123903,632057672,2846462855,1404951397,3882875879,3915906424,195638627,2385783745,3902872553,1233155085,3355999740,2380578713,2702246304,2144565621,3663341248,3894384975,2502479241,4248018925,3094885567,1594115437,572884632,3385116731,767645374,1331858858,1475698373,3793881790,3532746431,1321687957,619889600,1121017241,3440213920,2070816767,2833025776,1933951238,4095615791,890643334,3874130214,859025556,360630002,925594799,1764062180,3920222280,4078305929,979562269,2810700344,4087740022,1949714515,546639971,1165388173,3069891591,1495988560,922170659,1291546247,2107952832,1813327274,3406010024,3306028637,4241950635,153207855,2313154747,1608695416,1150242611,1967526857,721801357,1220138373,3691287617,3356069787,2112743302,3281662835,1111556101,1778980689,250857638,2298507990,673216130,2846488510,3207751581,3562756981,3008625920,3417367384,2198807050,529510932,3547516680,3426503187,2364944742,102533054,2294910856,1617093527,1204784762,3066581635,1019391227,1069574518,1317995090,1691889997,3661132003,510022745,3238594800,1362108837,1817929911,2184153760,805817662,1953603311,3699844737,120799444,2118332377,207536705,2282301548,4120041617,145305846,2508124933,3086745533,3261524335,1877257368,2977164480,3160454186,2503252186,4221677074,759945014,254147243,2767453419,3801518371,629083197,2471014217,907280572,3900796746,940896768,2751021123,2625262786,3161476951,3661752313,3260732218,1425318020,2977912069,1496677566,3988592072,2140652971,3126511541,3069632175,977771578,1392695845,1698528874,1411812681,1369733098,1343739227,3620887944,1142123638,67414216,3102056737,3088749194,1626167401,2546293654,3941374235,697522451,33404913,143560186,2595682037,994885535,1247667115,3859094837,2699155541,3547024625,4114935275,2968073508,3199963069,2732024527,1237921620,951448369,1898488916,1211705605,2790989240,2233243581,3598044975],a[6]=[2246066201,858518887,1714274303,3485882003,713916271,2879113490,3730835617,539548191,36158695,1298409750,419087104,1358007170,749914897,2989680476,1261868530,2995193822,2690628854,3443622377,3780124940,3796824509,2976433025,4259637129,1551479e3,512490819,1296650241,951993153,2436689437,2460458047,144139966,3136204276,310820559,3068840729,643875328,1969602020,1680088954,2185813161,3283332454,672358534,198762408,896343282,276269502,3014846926,84060815,197145886,376173866,3943890818,3813173521,3545068822,1316698879,1598252827,2633424951,1233235075,859989710,2358460855,3503838400,3409603720,1203513385,1193654839,2792018475,2060853022,207403770,1144516871,3068631394,1121114134,177607304,3785736302,326409831,1929119770,2983279095,4183308101,3474579288,3200513878,3228482096,119610148,1170376745,3378393471,3163473169,951863017,3337026068,3135789130,2907618374,1183797387,2015970143,4045674555,2182986399,2952138740,3928772205,384012900,2454997643,10178499,2879818989,2596892536,111523738,2995089006,451689641,3196290696,235406569,1441906262,3890558523,3013735005,4158569349,1644036924,376726067,1006849064,3664579700,2041234796,1021632941,1374734338,2566452058,371631263,4007144233,490221539,206551450,3140638584,1053219195,1853335209,3412429660,3562156231,735133835,1623211703,3104214392,2738312436,4096837757,3366392578,3110964274,3956598718,3196820781,2038037254,3877786376,2339753847,300912036,3766732888,2372630639,1516443558,4200396704,1574567987,4069441456,4122592016,2699739776,146372218,2748961456,2043888151,35287437,2596680554,655490400,1132482787,110692520,1031794116,2188192751,1324057718,1217253157,919197030,686247489,3261139658,1028237775,3135486431,3059715558,2460921700,986174950,2661811465,4062904701,2752986992,3709736643,367056889,1353824391,731860949,1650113154,1778481506,784341916,357075625,3608602432,1074092588,2480052770,3811426202,92751289,877911070,3600361838,1231880047,480201094,3756190983,3094495953,434011822,87971354,363687820,1717726236,1901380172,3926403882,2481662265,400339184,1490350766,2661455099,1389319756,2558787174,784598401,1983468483,30828846,3550527752,2716276238,3841122214,1765724805,1955612312,1277890269,1333098070,1564029816,2704417615,1026694237,3287671188,1260819201,3349086767,1016692350,1582273796,1073413053,1995943182,694588404,1025494639,3323872702,3551898420,4146854327,453260480,1316140391,1435673405,3038941953,3486689407,1622062951,403978347,817677117,950059133,4246079218,3278066075,1486738320,1417279718,481875527,2549965225,3933690356,760697757,1452955855,3897451437,1177426808,1702951038,4085348628,2447005172,1084371187,3516436277,3068336338,1073369276,1027665953,3284188590,1230553676,1368340146,2226246512,267243139,2274220762,4070734279,2497715176,2423353163,2504755875],a[7]=[3793104909,3151888380,2817252029,895778965,2005530807,3871412763,237245952,86829237,296341424,3851759377,3974600970,2475086196,709006108,1994621201,2972577594,937287164,3734691505,168608556,3189338153,2225080640,3139713551,3033610191,3025041904,77524477,185966941,1208824168,2344345178,1721625922,3354191921,1066374631,1927223579,1971335949,2483503697,1551748602,2881383779,2856329572,3003241482,48746954,1398218158,2050065058,313056748,4255789917,393167848,1912293076,940740642,3465845460,3091687853,2522601570,2197016661,1727764327,364383054,492521376,1291706479,3264136376,1474851438,1685747964,2575719748,1619776915,1814040067,970743798,1561002147,2925768690,2123093554,1880132620,3151188041,697884420,2550985770,2607674513,2659114323,110200136,1489731079,997519150,1378877361,3527870668,478029773,2766872923,1022481122,431258168,1112503832,897933369,2635587303,669726182,3383752315,918222264,163866573,3246985393,3776823163,114105080,1903216136,761148244,3571337562,1690750982,3166750252,1037045171,1888456500,2010454850,642736655,616092351,365016990,1185228132,4174898510,1043824992,2023083429,2241598885,3863320456,3279669087,3674716684,108438443,2132974366,830746235,606445527,4173263986,2204105912,1844756978,2532684181,4245352700,2969441100,3796921661,1335562986,4061524517,2720232303,2679424040,634407289,885462008,3294724487,3933892248,2094100220,339117932,4048830727,3202280980,1458155303,2689246273,1022871705,2464987878,3714515309,353796843,2822958815,4256850100,4052777845,551748367,618185374,3778635579,4020649912,1904685140,3069366075,2670879810,3407193292,2954511620,4058283405,2219449317,3135758300,1120655984,3447565834,1474845562,3577699062,550456716,3466908712,2043752612,881257467,869518812,2005220179,938474677,3305539448,3850417126,1315485940,3318264702,226533026,965733244,321539988,1136104718,804158748,573969341,3708209826,937399083,3290727049,2901666755,1461057207,4013193437,4066861423,3242773476,2421326174,1581322155,3028952165,786071460,3900391652,3918438532,1485433313,4023619836,3708277595,3678951060,953673138,1467089153,1930354364,1533292819,2492563023,1346121658,1685000834,1965281866,3765933717,4190206607,2052792609,3515332758,690371149,3125873887,2180283551,2903598061,3933952357,436236910,289419410,14314871,1242357089,2904507907,1616633776,2666382180,585885352,3471299210,2699507360,1432659641,277164553,3354103607,770115018,2303809295,3741942315,3177781868,2853364978,2269453327,3774259834,987383833,1290892879,225909803,1741533526,890078084,1496906255,1111072499,916028167,243534141,1252605537,2204162171,531204876,290011180,3916834213,102027703,237315147,209093447,1486785922,220223953,2758195998,4175039106,82940208,3127791296,2569425252,518464269,1353887104,3941492737,2377294467,3935040926]}function Ue(e){this.cast5=new Be,this.cast5.setKey(e),this.encrypt=function(e){return this.cast5.encrypt(e)}}De.keySize=De.prototype.keySize=24,De.blockSize=De.prototype.blockSize=8,Ue.blockSize=Ue.prototype.blockSize=8,Ue.keySize=Ue.prototype.keySize=16;const Re=4294967295;function Ke(e,t){return(e<>>32-t)&Re}function Oe(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24}function Ne(e,t,r){e.splice(t,4,255&r,r>>>8&255,r>>>16&255,r>>>24&255)}function Le(e,t){return e>>>8*t&255}function qe(e){this.tf=function(){let e=null,t=null,r=-1,n=[],i=[[],[],[],[]];function a(e){return i[0][Le(e,0)]^i[1][Le(e,1)]^i[2][Le(e,2)]^i[3][Le(e,3)]}function s(e){return i[0][Le(e,3)]^i[1][Le(e,0)]^i[2][Le(e,1)]^i[3][Le(e,2)]}function o(e,t){let r=a(t[0]),i=s(t[1]);t[2]=Ke(t[2]^r+i+n[4*e+8]&Re,31),t[3]=Ke(t[3],1)^r+2*i+n[4*e+9]&Re,r=a(t[2]),i=s(t[3]),t[0]=Ke(t[0]^r+i+n[4*e+10]&Re,31),t[1]=Ke(t[1],1)^r+2*i+n[4*e+11]&Re}function c(e,t){let r=a(t[0]),i=s(t[1]);t[2]=Ke(t[2],1)^r+i+n[4*e+10]&Re,t[3]=Ke(t[3]^r+2*i+n[4*e+11]&Re,31),r=a(t[2]),i=s(t[3]),t[0]=Ke(t[0],1)^r+i+n[4*e+8]&Re,t[1]=Ke(t[1]^r+2*i+n[4*e+9]&Re,31)}return{name:"twofish",blocksize:16,open:function(t){let r,a,s,o,c;e=t;const u=[],l=[],h=[];let d;const f=[];let p,y,g;const m=[[8,1,7,13,6,15,3,2,0,11,5,9,14,12,10,4],[2,8,11,13,15,7,6,14,3,1,9,4,0,10,12,5]],b=[[14,12,11,8,1,2,3,5,15,4,10,6,7,0,9,13],[1,14,2,11,4,12,3,7,6,13,10,5,15,9,0,8]],w=[[11,10,5,14,6,13,9,0,12,8,15,3,2,4,7,1],[4,12,7,5,1,6,9,10,0,14,13,8,2,11,3,15]],v=[[13,7,15,4,1,2,6,14,9,11,3,0,8,5,12,10],[11,9,5,1,12,3,13,14,6,4,7,15,2,0,8,10]],k=[0,8,1,9,2,10,3,11,4,12,5,13,6,14,7,15],A=[0,9,2,11,4,13,6,15,8,1,10,3,12,5,14,7],_=[[],[]],S=[[],[],[],[]];function E(e){return e^e>>2^[0,90,180,238][3&e]}function x(e){return e^e>>1^e>>2^[0,238,180,90][3&e]}function P(e,t){let r,n,i;for(r=0;r<8;r++)n=t>>>24,t=t<<8&Re|e>>>24,e=e<<8&Re,i=n<<1,128&n&&(i^=333),t^=n^i<<16,i^=n>>>1,1&n&&(i^=166),t^=i<<24|i<<8;return t}function C(e,t){const r=t>>4,n=15&t,i=m[e][r^n],a=b[e][k[n]^A[r]];return v[e][k[a]^A[i]]<<4|w[e][i^a]}function T(e,t){let r=Le(e,0),n=Le(e,1),i=Le(e,2),a=Le(e,3);switch(d){case 4:r=_[1][r]^Le(t[3],0),n=_[0][n]^Le(t[3],1),i=_[0][i]^Le(t[3],2),a=_[1][a]^Le(t[3],3);case 3:r=_[1][r]^Le(t[2],0),n=_[1][n]^Le(t[2],1),i=_[0][i]^Le(t[2],2),a=_[0][a]^Le(t[2],3);case 2:r=_[0][_[0][r]^Le(t[1],0)]^Le(t[0],0),n=_[0][_[1][n]^Le(t[1],1)]^Le(t[0],1),i=_[1][_[0][i]^Le(t[1],2)]^Le(t[0],2),a=_[1][_[1][a]^Le(t[1],3)]^Le(t[0],3)}return S[0][r]^S[1][n]^S[2][i]^S[3][a]}for(e=e.slice(0,32),r=e.length;16!==r&&24!==r&&32!==r;)e[r++]=0;for(r=0;r>2]=Oe(e,r);for(r=0;r<256;r++)_[0][r]=C(0,r),_[1][r]=C(1,r);for(r=0;r<256;r++)p=_[1][r],y=E(p),g=x(p),S[0][r]=p+(y<<8)+(g<<16)+(g<<24),S[2][r]=y+(g<<8)+(p<<16)+(g<<24),p=_[0][r],y=E(p),g=x(p),S[1][r]=g+(g<<8)+(y<<16)+(p<<24),S[3][r]=y+(p<<8)+(g<<16)+(y<<24);for(d=h.length/2,r=0;r=0;e--)c(e,a);Ne(t,r,a[2]^n[0]),Ne(t,r+4,a[3]^n[1]),Ne(t,r+8,a[0]^n[2]),Ne(t,r+12,a[1]^n[3]),r+=16},finalize:function(){return t}}}(),this.tf.open(Array.from(e),0),this.encrypt=function(e){return this.tf.encrypt(Array.from(e),0)}}function Fe(){}function ze(e){this.bf=new Fe,this.bf.init(e),this.encrypt=function(e){return this.bf.encryptBlock(e)}}qe.keySize=qe.prototype.keySize=32,qe.blockSize=qe.prototype.blockSize=16,Fe.prototype.BLOCKSIZE=8,Fe.prototype.SBOXES=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]],Fe.prototype.PARRAY=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],Fe.prototype.NN=16,Fe.prototype._clean=function(e){return e<0&&(e=2147483648+(2147483647&e)),e},Fe.prototype._F=function(e){let t;const r=255&e,n=255&(e>>>=8),i=255&(e>>>=8),a=255&(e>>>=8);return t=this.sboxes[0][a]+this.sboxes[1][i],t^=this.sboxes[2][n],t+=this.sboxes[3][r],t},Fe.prototype._encryptBlock=function(e){let t,r=e[0],n=e[1];for(t=0;t>>24-8*t&255,i[t+n]=r[1]>>>24-8*t&255;return i},Fe.prototype._decryptBlock=function(e){let t,r=e[0],n=e[1];for(t=this.NN+1;t>1;--t){r^=this.parray[t],n=this._F(r)^n;const e=r;r=n,n=e}r^=this.parray[1],n^=this.parray[0],e[0]=this._clean(n),e[1]=this._clean(r)},Fe.prototype.init=function(e){let t,r=0;for(this.parray=[],t=0;t=e.length&&(r=0);this.parray[t]=this.PARRAY[t]^n}for(this.sboxes=[],t=0;t<4;++t)for(this.sboxes[t]=[],r=0;r<256;++r)this.sboxes[t][r]=this.SBOXES[t][r];const n=[0,0];for(t=0;t>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=t+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=r+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=c+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=u+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=l+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=h+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=d+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=f+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=p+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=y+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=g+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=m+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=b+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=w+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=v+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=b^f^r^e;C=x<<1|x>>>31;P=C+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=w^p^c^t;T=x<<1|x>>>31;P=T+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=v^y^u^r;M=x<<1|x>>>31;P=M+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=C^g^l^c;I=x<<1|x>>>31;P=I+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=T^m^h^u;D=x<<1|x>>>31;P=D+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=M^b^d^l;B=x<<1|x>>>31;P=B+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=I^w^f^h;U=x<<1|x>>>31;P=U+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=D^v^p^d;R=x<<1|x>>>31;P=R+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=B^C^y^f;K=x<<1|x>>>31;P=K+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=U^T^g^p;O=x<<1|x>>>31;P=O+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=R^M^m^y;N=x<<1|x>>>31;P=N+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=K^I^b^g;L=x<<1|x>>>31;P=L+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=O^D^w^m;q=x<<1|x>>>31;P=q+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=N^B^v^b;F=x<<1|x>>>31;P=F+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=L^U^C^w;z=x<<1|x>>>31;P=z+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=q^R^T^v;j=x<<1|x>>>31;P=j+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=F^K^M^C;H=x<<1|x>>>31;P=H+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=z^O^I^T;W=x<<1|x>>>31;P=W+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=j^N^D^M;V=x<<1|x>>>31;P=V+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=H^L^B^I;G=x<<1|x>>>31;P=G+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=W^q^U^D;$=x<<1|x>>>31;P=$+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=V^F^R^B;J=x<<1|x>>>31;P=J+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=G^z^K^U;Z=x<<1|x>>>31;P=Z+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=$^j^O^R;Y=x<<1|x>>>31;P=Y+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=J^H^N^K;X=x<<1|x>>>31;P=X+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Z^W^L^O;Q=x<<1|x>>>31;P=Q+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Y^V^q^N;ee=x<<1|x>>>31;P=ee+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=X^G^F^L;te=x<<1|x>>>31;P=te+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Q^$^z^q;re=x<<1|x>>>31;P=re+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ee^J^j^F;ne=x<<1|x>>>31;P=ne+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=te^Z^H^z;ie=x<<1|x>>>31;P=ie+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=re^Y^W^j;ae=x<<1|x>>>31;P=ae+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ne^X^V^H;se=x<<1|x>>>31;P=se+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ie^Q^G^W;oe=x<<1|x>>>31;P=oe+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ae^ee^$^V;ce=x<<1|x>>>31;P=ce+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=se^te^J^G;ue=x<<1|x>>>31;P=ue+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=oe^re^Z^$;le=x<<1|x>>>31;P=le+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ce^ne^Y^J;he=x<<1|x>>>31;P=he+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ue^ie^X^Z;de=x<<1|x>>>31;P=de+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=le^ae^Q^Y;fe=x<<1|x>>>31;P=fe+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=he^se^ee^X;pe=x<<1|x>>>31;P=pe+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=de^oe^te^Q;ye=x<<1|x>>>31;P=ye+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=fe^ce^re^ee;ge=x<<1|x>>>31;P=ge+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=pe^ue^ne^te;me=x<<1|x>>>31;P=me+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ye^le^ie^re;be=x<<1|x>>>31;P=be+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ge^he^ae^ne;we=x<<1|x>>>31;P=we+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=me^de^se^ie;ve=x<<1|x>>>31;P=ve+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=be^fe^oe^ae;ke=x<<1|x>>>31;P=ke+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=we^pe^ce^se;Ae=x<<1|x>>>31;P=Ae+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ve^ye^ue^oe;_e=x<<1|x>>>31;P=_e+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ke^ge^le^ce;Se=x<<1|x>>>31;P=Se+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ae^me^he^ue;Ee=x<<1|x>>>31;P=Ee+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=_e^be^de^le;xe=x<<1|x>>>31;P=xe+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Se^we^fe^he;Pe=x<<1|x>>>31;P=Pe+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ee^ve^pe^de;Ce=x<<1|x>>>31;P=Ce+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=xe^ke^ye^fe;Te=x<<1|x>>>31;P=Te+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Pe^Ae^ge^pe;Me=x<<1|x>>>31;P=Me+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ce^_e^me^ye;Ie=x<<1|x>>>31;P=Ie+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Te^Se^be^ge;De=x<<1|x>>>31;P=De+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Me^Ee^we^me;Be=x<<1|x>>>31;P=Be+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ie^xe^ve^be;Ue=x<<1|x>>>31;P=Ue+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=De^Pe^ke^we;Re=x<<1|x>>>31;P=Re+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Be^Ce^Ae^ve;Ke=x<<1|x>>>31;P=Ke+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ue^Te^_e^ke;Oe=x<<1|x>>>31;P=Oe+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;n=n+k|0;i=i+A|0;a=a+_|0;s=s+S|0;o=o+E|0}function A(e){e=e|0;k(v[e|0]<<24|v[e|1]<<16|v[e|2]<<8|v[e|3],v[e|4]<<24|v[e|5]<<16|v[e|6]<<8|v[e|7],v[e|8]<<24|v[e|9]<<16|v[e|10]<<8|v[e|11],v[e|12]<<24|v[e|13]<<16|v[e|14]<<8|v[e|15],v[e|16]<<24|v[e|17]<<16|v[e|18]<<8|v[e|19],v[e|20]<<24|v[e|21]<<16|v[e|22]<<8|v[e|23],v[e|24]<<24|v[e|25]<<16|v[e|26]<<8|v[e|27],v[e|28]<<24|v[e|29]<<16|v[e|30]<<8|v[e|31],v[e|32]<<24|v[e|33]<<16|v[e|34]<<8|v[e|35],v[e|36]<<24|v[e|37]<<16|v[e|38]<<8|v[e|39],v[e|40]<<24|v[e|41]<<16|v[e|42]<<8|v[e|43],v[e|44]<<24|v[e|45]<<16|v[e|46]<<8|v[e|47],v[e|48]<<24|v[e|49]<<16|v[e|50]<<8|v[e|51],v[e|52]<<24|v[e|53]<<16|v[e|54]<<8|v[e|55],v[e|56]<<24|v[e|57]<<16|v[e|58]<<8|v[e|59],v[e|60]<<24|v[e|61]<<16|v[e|62]<<8|v[e|63])}function _(e){e=e|0;v[e|0]=n>>>24;v[e|1]=n>>>16&255;v[e|2]=n>>>8&255;v[e|3]=n&255;v[e|4]=i>>>24;v[e|5]=i>>>16&255;v[e|6]=i>>>8&255;v[e|7]=i&255;v[e|8]=a>>>24;v[e|9]=a>>>16&255;v[e|10]=a>>>8&255;v[e|11]=a&255;v[e|12]=s>>>24;v[e|13]=s>>>16&255;v[e|14]=s>>>8&255;v[e|15]=s&255;v[e|16]=o>>>24;v[e|17]=o>>>16&255;v[e|18]=o>>>8&255;v[e|19]=o&255}function S(){n=0x67452301;i=0xefcdab89;a=0x98badcfe;s=0x10325476;o=0xc3d2e1f0;c=u=0}function E(e,t,r,l,h,d,f){e=e|0;t=t|0;r=r|0;l=l|0;h=h|0;d=d|0;f=f|0;n=e;i=t;a=r;s=l;o=h;c=d;u=f}function x(e,t){e=e|0;t=t|0;var r=0;if(e&63)return-1;while((t|0)>=64){A(e);e=e+64|0;t=t-64|0;r=r+64|0}c=c+r|0;if(c>>>0>>0)u=u+1|0;return r|0}function P(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;if(e&63)return-1;if(~r)if(r&31)return-1;if((t|0)>=64){n=x(e,t)|0;if((n|0)==-1)return-1;e=e+n|0;t=t-n|0}n=n+t|0;c=c+t|0;if(c>>>0>>0)u=u+1|0;v[e|t]=0x80;if((t|0)>=56){for(i=t+1|0;(i|0)<64;i=i+1|0)v[e|i]=0x00;A(e);t=0;v[e|0]=0}for(i=t+1|0;(i|0)<59;i=i+1|0)v[e|i]=0;v[e|56]=u>>>21&255;v[e|57]=u>>>13&255;v[e|58]=u>>>5&255;v[e|59]=u<<3&255|c>>>29;v[e|60]=c>>>21&255;v[e|61]=c>>>13&255;v[e|62]=c>>>5&255;v[e|63]=c<<3&255;A(e);if(~r)_(r);return n|0}function C(){n=l;i=h;a=d;s=f;o=p;c=64;u=0}function T(){n=y;i=g;a=m;s=b;o=w;c=64;u=0}function M(e,t,r,v,A,_,E,x,P,C,T,M,I,D,B,U){e=e|0;t=t|0;r=r|0;v=v|0;A=A|0;_=_|0;E=E|0;x=x|0;P=P|0;C=C|0;T=T|0;M=M|0;I=I|0;D=D|0;B=B|0;U=U|0;S();k(e^0x5c5c5c5c,t^0x5c5c5c5c,r^0x5c5c5c5c,v^0x5c5c5c5c,A^0x5c5c5c5c,_^0x5c5c5c5c,E^0x5c5c5c5c,x^0x5c5c5c5c,P^0x5c5c5c5c,C^0x5c5c5c5c,T^0x5c5c5c5c,M^0x5c5c5c5c,I^0x5c5c5c5c,D^0x5c5c5c5c,B^0x5c5c5c5c,U^0x5c5c5c5c);y=n;g=i;m=a;b=s;w=o;S();k(e^0x36363636,t^0x36363636,r^0x36363636,v^0x36363636,A^0x36363636,_^0x36363636,E^0x36363636,x^0x36363636,P^0x36363636,C^0x36363636,T^0x36363636,M^0x36363636,I^0x36363636,D^0x36363636,B^0x36363636,U^0x36363636);l=n;h=i;d=a;f=s;p=o;c=64;u=0}function I(e,t,r){e=e|0;t=t|0;r=r|0;var c=0,u=0,l=0,h=0,d=0,f=0;if(e&63)return-1;if(~r)if(r&31)return-1;f=P(e,t,-1)|0;c=n,u=i,l=a,h=s,d=o;T();k(c,u,l,h,d,0x80000000,0,0,0,0,0,0,0,0,0,672);if(~r)_(r);return f|0}function D(e,t,r,c,u){e=e|0;t=t|0;r=r|0;c=c|0;u=u|0;var l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0;if(e&63)return-1;if(~u)if(u&31)return-1;v[e+t|0]=r>>>24;v[e+t+1|0]=r>>>16&255;v[e+t+2|0]=r>>>8&255;v[e+t+3|0]=r&255;I(e,t+4|0,-1)|0;l=y=n,h=g=i,d=m=a,f=b=s,p=w=o;c=c-1|0;while((c|0)>0){C();k(y,g,m,b,w,0x80000000,0,0,0,0,0,0,0,0,0,672);y=n,g=i,m=a,b=s,w=o;T();k(y,g,m,b,w,0x80000000,0,0,0,0,0,0,0,0,0,672);y=n,g=i,m=a,b=s,w=o;l=l^n;h=h^i;d=d^a;f=f^s;p=p^o;c=c-1|0}n=l;i=h;a=d;s=f;o=p;if(~u)_(u);return 0}return{reset:S,init:E,process:x,finish:P,hmac_reset:C,hmac_init:M,hmac_finish:I,pbkdf2_generate_block:D}};class Xe{constructor(){this.pos=0,this.len=0}reset(){const{asm:e}=this.acquire_asm();return this.result=null,this.pos=0,this.len=0,e.reset(),this}process(e){if(null!==this.result)throw new Ae("state must be reset before processing new data");const{asm:t,heap:r}=this.acquire_asm();let n=this.pos,i=this.len,a=0,s=e.length,o=0;for(;s>0;)o=ve(r,n+i,e,a,s),i+=o,a+=o,s-=o,o=t.process(n,i),n+=o,i-=o,i||(n=0);return this.pos=n,this.len=i,this}finish(){if(null!==this.result)throw new Ae("state must be reset before processing new data");const{asm:e,heap:t}=this.acquire_asm();return e.finish(this.pos,this.len,0),this.result=new Uint8Array(this.HASH_SIZE),this.result.set(t.subarray(0,this.HASH_SIZE)),this.pos=0,this.len=0,this.release_asm(),this}}const Qe=[],et=[];class tt extends Xe{constructor(){super(),this.NAME="sha1",this.BLOCK_SIZE=64,this.HASH_SIZE=20,this.acquire_asm()}acquire_asm(){return void 0!==this.heap&&void 0!==this.asm||(this.heap=Qe.pop()||we(),this.asm=et.pop()||Ye({Uint8Array},0,this.heap.buffer),this.reset()),{heap:this.heap,asm:this.asm}}release_asm(){void 0!==this.heap&&void 0!==this.asm&&(Qe.push(this.heap),et.push(this.asm)),this.heap=void 0,this.asm=void 0}static bytes(e){return(new tt).process(e).finish().result}}tt.NAME="sha1",tt.heap_pool=[],tt.asm_pool=[],tt.asm_function=Ye;const rt=[],nt=[];class it extends Xe{constructor(){super(),this.NAME="sha256",this.BLOCK_SIZE=64,this.HASH_SIZE=32,this.acquire_asm()}acquire_asm(){return void 0!==this.heap&&void 0!==this.asm||(this.heap=rt.pop()||we(),this.asm=nt.pop()||function(e,t,r){"use asm";var n=0,i=0,a=0,s=0,o=0,c=0,u=0,l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0,S=0,E=0,x=0,P=0,C=0,T=new e.Uint8Array(r);function M(e,t,r,h,d,f,p,y,g,m,b,w,v,k,A,_){e=e|0;t=t|0;r=r|0;h=h|0;d=d|0;f=f|0;p=p|0;y=y|0;g=g|0;m=m|0;b=b|0;w=w|0;v=v|0;k=k|0;A=A|0;_=_|0;var S=0,E=0,x=0,P=0,C=0,T=0,M=0,I=0;S=n;E=i;x=a;P=s;C=o;T=c;M=u;I=l;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x428a2f98|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x71374491|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0xb5c0fbcf|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0xe9b5dba5|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x3956c25b|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x59f111f1|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x923f82a4|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0xab1c5ed5|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0xd807aa98|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x12835b01|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x243185be|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x550c7dc3|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x72be5d74|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x80deb1fe|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x9bdc06a7|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0xc19bf174|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;e=(t>>>7^t>>>18^t>>>3^t<<25^t<<14)+(A>>>17^A>>>19^A>>>10^A<<15^A<<13)+e+m|0;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0xe49b69c1|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;t=(r>>>7^r>>>18^r>>>3^r<<25^r<<14)+(_>>>17^_>>>19^_>>>10^_<<15^_<<13)+t+b|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0xefbe4786|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;r=(h>>>7^h>>>18^h>>>3^h<<25^h<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+r+w|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x0fc19dc6|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;h=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(t>>>17^t>>>19^t>>>10^t<<15^t<<13)+h+v|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x240ca1cc|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;d=(f>>>7^f>>>18^f>>>3^f<<25^f<<14)+(r>>>17^r>>>19^r>>>10^r<<15^r<<13)+d+k|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x2de92c6f|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;f=(p>>>7^p>>>18^p>>>3^p<<25^p<<14)+(h>>>17^h>>>19^h>>>10^h<<15^h<<13)+f+A|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x4a7484aa|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;p=(y>>>7^y>>>18^y>>>3^y<<25^y<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+p+_|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x5cb0a9dc|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;y=(g>>>7^g>>>18^g>>>3^g<<25^g<<14)+(f>>>17^f>>>19^f>>>10^f<<15^f<<13)+y+e|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x76f988da|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;g=(m>>>7^m>>>18^m>>>3^m<<25^m<<14)+(p>>>17^p>>>19^p>>>10^p<<15^p<<13)+g+t|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x983e5152|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;m=(b>>>7^b>>>18^b>>>3^b<<25^b<<14)+(y>>>17^y>>>19^y>>>10^y<<15^y<<13)+m+r|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0xa831c66d|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;b=(w>>>7^w>>>18^w>>>3^w<<25^w<<14)+(g>>>17^g>>>19^g>>>10^g<<15^g<<13)+b+h|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0xb00327c8|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;w=(v>>>7^v>>>18^v>>>3^v<<25^v<<14)+(m>>>17^m>>>19^m>>>10^m<<15^m<<13)+w+d|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0xbf597fc7|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;v=(k>>>7^k>>>18^k>>>3^k<<25^k<<14)+(b>>>17^b>>>19^b>>>10^b<<15^b<<13)+v+f|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0xc6e00bf3|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;k=(A>>>7^A>>>18^A>>>3^A<<25^A<<14)+(w>>>17^w>>>19^w>>>10^w<<15^w<<13)+k+p|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0xd5a79147|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;A=(_>>>7^_>>>18^_>>>3^_<<25^_<<14)+(v>>>17^v>>>19^v>>>10^v<<15^v<<13)+A+y|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x06ca6351|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;_=(e>>>7^e>>>18^e>>>3^e<<25^e<<14)+(k>>>17^k>>>19^k>>>10^k<<15^k<<13)+_+g|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x14292967|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;e=(t>>>7^t>>>18^t>>>3^t<<25^t<<14)+(A>>>17^A>>>19^A>>>10^A<<15^A<<13)+e+m|0;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x27b70a85|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;t=(r>>>7^r>>>18^r>>>3^r<<25^r<<14)+(_>>>17^_>>>19^_>>>10^_<<15^_<<13)+t+b|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x2e1b2138|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;r=(h>>>7^h>>>18^h>>>3^h<<25^h<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+r+w|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x4d2c6dfc|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;h=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(t>>>17^t>>>19^t>>>10^t<<15^t<<13)+h+v|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x53380d13|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;d=(f>>>7^f>>>18^f>>>3^f<<25^f<<14)+(r>>>17^r>>>19^r>>>10^r<<15^r<<13)+d+k|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x650a7354|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;f=(p>>>7^p>>>18^p>>>3^p<<25^p<<14)+(h>>>17^h>>>19^h>>>10^h<<15^h<<13)+f+A|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x766a0abb|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;p=(y>>>7^y>>>18^y>>>3^y<<25^y<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+p+_|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x81c2c92e|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;y=(g>>>7^g>>>18^g>>>3^g<<25^g<<14)+(f>>>17^f>>>19^f>>>10^f<<15^f<<13)+y+e|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x92722c85|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;g=(m>>>7^m>>>18^m>>>3^m<<25^m<<14)+(p>>>17^p>>>19^p>>>10^p<<15^p<<13)+g+t|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0xa2bfe8a1|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;m=(b>>>7^b>>>18^b>>>3^b<<25^b<<14)+(y>>>17^y>>>19^y>>>10^y<<15^y<<13)+m+r|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0xa81a664b|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;b=(w>>>7^w>>>18^w>>>3^w<<25^w<<14)+(g>>>17^g>>>19^g>>>10^g<<15^g<<13)+b+h|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0xc24b8b70|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;w=(v>>>7^v>>>18^v>>>3^v<<25^v<<14)+(m>>>17^m>>>19^m>>>10^m<<15^m<<13)+w+d|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0xc76c51a3|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;v=(k>>>7^k>>>18^k>>>3^k<<25^k<<14)+(b>>>17^b>>>19^b>>>10^b<<15^b<<13)+v+f|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0xd192e819|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;k=(A>>>7^A>>>18^A>>>3^A<<25^A<<14)+(w>>>17^w>>>19^w>>>10^w<<15^w<<13)+k+p|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0xd6990624|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;A=(_>>>7^_>>>18^_>>>3^_<<25^_<<14)+(v>>>17^v>>>19^v>>>10^v<<15^v<<13)+A+y|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0xf40e3585|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;_=(e>>>7^e>>>18^e>>>3^e<<25^e<<14)+(k>>>17^k>>>19^k>>>10^k<<15^k<<13)+_+g|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x106aa070|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;e=(t>>>7^t>>>18^t>>>3^t<<25^t<<14)+(A>>>17^A>>>19^A>>>10^A<<15^A<<13)+e+m|0;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x19a4c116|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;t=(r>>>7^r>>>18^r>>>3^r<<25^r<<14)+(_>>>17^_>>>19^_>>>10^_<<15^_<<13)+t+b|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x1e376c08|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;r=(h>>>7^h>>>18^h>>>3^h<<25^h<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+r+w|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x2748774c|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;h=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(t>>>17^t>>>19^t>>>10^t<<15^t<<13)+h+v|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x34b0bcb5|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;d=(f>>>7^f>>>18^f>>>3^f<<25^f<<14)+(r>>>17^r>>>19^r>>>10^r<<15^r<<13)+d+k|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x391c0cb3|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;f=(p>>>7^p>>>18^p>>>3^p<<25^p<<14)+(h>>>17^h>>>19^h>>>10^h<<15^h<<13)+f+A|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x4ed8aa4a|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;p=(y>>>7^y>>>18^y>>>3^y<<25^y<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+p+_|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x5b9cca4f|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;y=(g>>>7^g>>>18^g>>>3^g<<25^g<<14)+(f>>>17^f>>>19^f>>>10^f<<15^f<<13)+y+e|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x682e6ff3|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;g=(m>>>7^m>>>18^m>>>3^m<<25^m<<14)+(p>>>17^p>>>19^p>>>10^p<<15^p<<13)+g+t|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x748f82ee|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;m=(b>>>7^b>>>18^b>>>3^b<<25^b<<14)+(y>>>17^y>>>19^y>>>10^y<<15^y<<13)+m+r|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x78a5636f|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;b=(w>>>7^w>>>18^w>>>3^w<<25^w<<14)+(g>>>17^g>>>19^g>>>10^g<<15^g<<13)+b+h|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x84c87814|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;w=(v>>>7^v>>>18^v>>>3^v<<25^v<<14)+(m>>>17^m>>>19^m>>>10^m<<15^m<<13)+w+d|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x8cc70208|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;v=(k>>>7^k>>>18^k>>>3^k<<25^k<<14)+(b>>>17^b>>>19^b>>>10^b<<15^b<<13)+v+f|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x90befffa|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;k=(A>>>7^A>>>18^A>>>3^A<<25^A<<14)+(w>>>17^w>>>19^w>>>10^w<<15^w<<13)+k+p|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0xa4506ceb|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;A=(_>>>7^_>>>18^_>>>3^_<<25^_<<14)+(v>>>17^v>>>19^v>>>10^v<<15^v<<13)+A+y|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0xbef9a3f7|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;_=(e>>>7^e>>>18^e>>>3^e<<25^e<<14)+(k>>>17^k>>>19^k>>>10^k<<15^k<<13)+_+g|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0xc67178f2|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;n=n+S|0;i=i+E|0;a=a+x|0;s=s+P|0;o=o+C|0;c=c+T|0;u=u+M|0;l=l+I|0}function I(e){e=e|0;M(T[e|0]<<24|T[e|1]<<16|T[e|2]<<8|T[e|3],T[e|4]<<24|T[e|5]<<16|T[e|6]<<8|T[e|7],T[e|8]<<24|T[e|9]<<16|T[e|10]<<8|T[e|11],T[e|12]<<24|T[e|13]<<16|T[e|14]<<8|T[e|15],T[e|16]<<24|T[e|17]<<16|T[e|18]<<8|T[e|19],T[e|20]<<24|T[e|21]<<16|T[e|22]<<8|T[e|23],T[e|24]<<24|T[e|25]<<16|T[e|26]<<8|T[e|27],T[e|28]<<24|T[e|29]<<16|T[e|30]<<8|T[e|31],T[e|32]<<24|T[e|33]<<16|T[e|34]<<8|T[e|35],T[e|36]<<24|T[e|37]<<16|T[e|38]<<8|T[e|39],T[e|40]<<24|T[e|41]<<16|T[e|42]<<8|T[e|43],T[e|44]<<24|T[e|45]<<16|T[e|46]<<8|T[e|47],T[e|48]<<24|T[e|49]<<16|T[e|50]<<8|T[e|51],T[e|52]<<24|T[e|53]<<16|T[e|54]<<8|T[e|55],T[e|56]<<24|T[e|57]<<16|T[e|58]<<8|T[e|59],T[e|60]<<24|T[e|61]<<16|T[e|62]<<8|T[e|63])}function D(e){e=e|0;T[e|0]=n>>>24;T[e|1]=n>>>16&255;T[e|2]=n>>>8&255;T[e|3]=n&255;T[e|4]=i>>>24;T[e|5]=i>>>16&255;T[e|6]=i>>>8&255;T[e|7]=i&255;T[e|8]=a>>>24;T[e|9]=a>>>16&255;T[e|10]=a>>>8&255;T[e|11]=a&255;T[e|12]=s>>>24;T[e|13]=s>>>16&255;T[e|14]=s>>>8&255;T[e|15]=s&255;T[e|16]=o>>>24;T[e|17]=o>>>16&255;T[e|18]=o>>>8&255;T[e|19]=o&255;T[e|20]=c>>>24;T[e|21]=c>>>16&255;T[e|22]=c>>>8&255;T[e|23]=c&255;T[e|24]=u>>>24;T[e|25]=u>>>16&255;T[e|26]=u>>>8&255;T[e|27]=u&255;T[e|28]=l>>>24;T[e|29]=l>>>16&255;T[e|30]=l>>>8&255;T[e|31]=l&255}function B(){n=0x6a09e667;i=0xbb67ae85;a=0x3c6ef372;s=0xa54ff53a;o=0x510e527f;c=0x9b05688c;u=0x1f83d9ab;l=0x5be0cd19;h=d=0}function U(e,t,r,f,p,y,g,m,b,w){e=e|0;t=t|0;r=r|0;f=f|0;p=p|0;y=y|0;g=g|0;m=m|0;b=b|0;w=w|0;n=e;i=t;a=r;s=f;o=p;c=y;u=g;l=m;h=b;d=w}function R(e,t){e=e|0;t=t|0;var r=0;if(e&63)return-1;while((t|0)>=64){I(e);e=e+64|0;t=t-64|0;r=r+64|0}h=h+r|0;if(h>>>0>>0)d=d+1|0;return r|0}function K(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;if(e&63)return-1;if(~r)if(r&31)return-1;if((t|0)>=64){n=R(e,t)|0;if((n|0)==-1)return-1;e=e+n|0;t=t-n|0}n=n+t|0;h=h+t|0;if(h>>>0>>0)d=d+1|0;T[e|t]=0x80;if((t|0)>=56){for(i=t+1|0;(i|0)<64;i=i+1|0)T[e|i]=0x00;I(e);t=0;T[e|0]=0}for(i=t+1|0;(i|0)<59;i=i+1|0)T[e|i]=0;T[e|56]=d>>>21&255;T[e|57]=d>>>13&255;T[e|58]=d>>>5&255;T[e|59]=d<<3&255|h>>>29;T[e|60]=h>>>21&255;T[e|61]=h>>>13&255;T[e|62]=h>>>5&255;T[e|63]=h<<3&255;I(e);if(~r)D(r);return n|0}function O(){n=f;i=p;a=y;s=g;o=m;c=b;u=w;l=v;h=64;d=0}function N(){n=k;i=A;a=_;s=S;o=E;c=x;u=P;l=C;h=64;d=0}function L(e,t,r,T,I,D,U,R,K,O,N,L,q,F,z,j){e=e|0;t=t|0;r=r|0;T=T|0;I=I|0;D=D|0;U=U|0;R=R|0;K=K|0;O=O|0;N=N|0;L=L|0;q=q|0;F=F|0;z=z|0;j=j|0;B();M(e^0x5c5c5c5c,t^0x5c5c5c5c,r^0x5c5c5c5c,T^0x5c5c5c5c,I^0x5c5c5c5c,D^0x5c5c5c5c,U^0x5c5c5c5c,R^0x5c5c5c5c,K^0x5c5c5c5c,O^0x5c5c5c5c,N^0x5c5c5c5c,L^0x5c5c5c5c,q^0x5c5c5c5c,F^0x5c5c5c5c,z^0x5c5c5c5c,j^0x5c5c5c5c);k=n;A=i;_=a;S=s;E=o;x=c;P=u;C=l;B();M(e^0x36363636,t^0x36363636,r^0x36363636,T^0x36363636,I^0x36363636,D^0x36363636,U^0x36363636,R^0x36363636,K^0x36363636,O^0x36363636,N^0x36363636,L^0x36363636,q^0x36363636,F^0x36363636,z^0x36363636,j^0x36363636);f=n;p=i;y=a;g=s;m=o;b=c;w=u;v=l;h=64;d=0}function q(e,t,r){e=e|0;t=t|0;r=r|0;var h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0;if(e&63)return-1;if(~r)if(r&31)return-1;w=K(e,t,-1)|0;h=n,d=i,f=a,p=s,y=o,g=c,m=u,b=l;N();M(h,d,f,p,y,g,m,b,0x80000000,0,0,0,0,0,0,768);if(~r)D(r);return w|0}function F(e,t,r,h,d){e=e|0;t=t|0;r=r|0;h=h|0;d=d|0;var f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0,S=0,E=0,x=0,P=0,C=0;if(e&63)return-1;if(~d)if(d&31)return-1;T[e+t|0]=r>>>24;T[e+t+1|0]=r>>>16&255;T[e+t+2|0]=r>>>8&255;T[e+t+3|0]=r&255;q(e,t+4|0,-1)|0;f=k=n,p=A=i,y=_=a,g=S=s,m=E=o,b=x=c,w=P=u,v=C=l;h=h-1|0;while((h|0)>0){O();M(k,A,_,S,E,x,P,C,0x80000000,0,0,0,0,0,0,768);k=n,A=i,_=a,S=s,E=o,x=c,P=u,C=l;N();M(k,A,_,S,E,x,P,C,0x80000000,0,0,0,0,0,0,768);k=n,A=i,_=a,S=s,E=o,x=c,P=u,C=l;f=f^n;p=p^i;y=y^a;g=g^s;m=m^o;b=b^c;w=w^u;v=v^l;h=h-1|0}n=f;i=p;a=y;s=g;o=m;c=b;u=w;l=v;if(~d)D(d);return 0}return{reset:B,init:U,process:R,finish:K,hmac_reset:O,hmac_init:L,hmac_finish:q,pbkdf2_generate_block:F}}({Uint8Array},0,this.heap.buffer),this.reset()),{heap:this.heap,asm:this.asm}}release_asm(){void 0!==this.heap&&void 0!==this.asm&&(rt.push(this.heap),nt.push(this.asm)),this.heap=void 0,this.asm=void 0}static bytes(e){return(new it).process(e).finish().result}}it.NAME="sha256";var at=st;function st(e,t){if(!e)throw new Error(t||"Assertion failed")}st.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)};var ot=void 0!==n?n:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ct(e,t){return e(t={exports:{}},t.exports),t.exports}function ut(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var lt=ct((function(e){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}));function ht(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function dt(e){return 1===e.length?"0"+e:e}function ft(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}var pt={inherits:lt,toArray:function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),n=0;n>8,s=255&i;a?r.push(a,s):r.push(s)}else for(n=0;n>>0}return a},split32:function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=a>>>16&255,r[i+2]=a>>>8&255,r[i+3]=255&a):(r[i+3]=a>>>24,r[i+2]=a>>>16&255,r[i+1]=a>>>8&255,r[i]=255&a)}return r},rotr32:function(e,t){return e>>>t|e<<32-t},rotl32:function(e,t){return e<>>32-t},sum32:function(e,t){return e+t>>>0},sum32_3:function(e,t,r){return e+t+r>>>0},sum32_4:function(e,t,r,n){return e+t+r+n>>>0},sum32_5:function(e,t,r,n,i){return e+t+r+n+i>>>0},sum64:function(e,t,r,n){var i=e[t],a=n+e[t+1]>>>0,s=(a>>0,e[t+1]=a},sum64_hi:function(e,t,r,n){return(t+n>>>0>>0},sum64_lo:function(e,t,r,n){return t+n>>>0},sum64_4_hi:function(e,t,r,n,i,a,s,o){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},sum64_4_lo:function(e,t,r,n,i,a,s,o){return t+n+a+o>>>0},sum64_5_hi:function(e,t,r,n,i,a,s,o,c,u){var l=0,h=t;return l+=(h=h+n>>>0)>>0)>>0)>>0)>>0},sum64_5_lo:function(e,t,r,n,i,a,s,o,c,u){return t+n+a+o+u>>>0},rotr64_hi:function(e,t,r){return(t<<32-r|e>>>r)>>>0},rotr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0},shr64_hi:function(e,t,r){return e>>>r},shr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0}};function yt(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}var gt=yt;yt.prototype.update=function(e,t){if(e=pt.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=pt.join32(e,0,e.length-r,this.endian);for(var n=0;n>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,a=8;a>>3},Ct=function(e){return bt(e,17)^bt(e,19)^e>>>10},Tt=pt.sum32,Mt=pt.sum32_4,It=pt.sum32_5,Dt=_t,Bt=St,Ut=Et,Rt=xt,Kt=Pt,Ot=Ct,Nt=mt.BlockHash,Lt=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function qt(){if(!(this instanceof qt))return new qt;Nt.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=Lt,this.W=new Array(64)}pt.inherits(qt,Nt);var Ft=qt;function zt(){if(!(this instanceof zt))return new zt;Ft.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}qt.blockSize=512,qt.outSize=256,qt.hmacStrength=192,qt.padLength=64,qt.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n>>32-i,r)}function Kr(e,t,r,n,i,a,s){return Rr(t&r|~t&n,e,t,i,a,s)}function Or(e,t,r,n,i,a,s){return Rr(t&n|r&~n,e,t,i,a,s)}function Nr(e,t,r,n,i,a,s){return Rr(t^r^n,e,t,i,a,s)}function Lr(e,t,r,n,i,a,s){return Rr(r^(t|~n),e,t,i,a,s)}function qr(e){const t=[];let r;for(r=0;r<64;r+=4)t[r>>2]=e.charCodeAt(r)+(e.charCodeAt(r+1)<<8)+(e.charCodeAt(r+2)<<16)+(e.charCodeAt(r+3)<<24);return t}const Fr="0123456789abcdef".split("");function zr(e){let t="",r=0;for(;r<4;r++)t+=Fr[e>>8*r+4&15]+Fr[e>>8*r&15];return t}function jr(e,t){return e+t&4294967295}const Hr=Z.getWebCrypto(),Wr=Z.getNodeCrypto(),Vr=Wr&&Wr.getHashes();function Gr(e){if(Wr&&Vr.includes(e))return async function(t){const r=Wr.createHash(e);return N(t,(e=>{r.update(e)}),(()=>new Uint8Array(r.digest())))}}function $r(e,t){return async function(r,n=se){if(u(r)&&(r=await W(r)),!Z.isStream(r)&&Hr&&t&&r.length>=n.minBytesForWebCrypto)return new Uint8Array(await Hr.digest(t,r));const i=e();return N(r,(e=>{i.update(e)}),(()=>new Uint8Array(i.digest())))}}function Jr(e,t){return async function(r,n=se){if(u(r)&&(r=await W(r)),Z.isStream(r)){const t=new e;return N(r,(e=>{t.process(e)}),(()=>t.finish().result))}return Hr&&t&&r.length>=n.minBytesForWebCrypto?new Uint8Array(await Hr.digest(t,r)):e.bytes(r)}}const Zr={md5:Gr("md5")||async function(e){const t=function(e){const t=e.length,r=[1732584193,-271733879,-1732584194,271733878];let n;for(n=64;n<=e.length;n+=64)Ur(r,qr(e.substring(n-64,n)));e=e.substring(n-64);const i=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(n=0;n>2]|=e.charCodeAt(n)<<(n%4<<3);if(i[n>>2]|=128<<(n%4<<3),n>55)for(Ur(r,i),n=0;n<16;n++)i[n]=0;return i[14]=8*t,Ur(r,i),r}(Z.uint8ArrayToString(e));return Z.hexToUint8Array(function(e){for(let t=0;tnew Uint8Array(a.update(e))))}(e,t,r,n);if("aes"===a.substr(0,3))return function(e,t,r,n,i){if(Z.getWebCrypto()&&24!==t.length&&!Z.isStream(r)&&r.length>=3e3*i.minBytesForWebCrypto)return async function(e,t,r,n){const i="AES-CBC",a=await en.importKey("raw",t,{name:i},!1,["encrypt"]),{blockSize:s}=Qr(e),o=Z.concatUint8Array([new Uint8Array(s),r]),c=new Uint8Array(await en.encrypt({name:i,iv:n},a,o)).subarray(0,r.length);return function(e,t){for(let r=0;ra.aes.AES_Encrypt_process(e)),(()=>a.aes.AES_Encrypt_finish()))}(e,t,r,n,i);const s=new(Qr(e))(t),o=s.blockSize,c=n.slice();let u=new Uint8Array;const l=e=>{e&&(u=Z.concatUint8Array([u,e]));const t=new Uint8Array(u.length);let r,n=0;for(;e?u.length>=o:u.length;){const e=s.encrypt(c);for(r=0;rnew Uint8Array(a.update(e))))}(e,t,r,n);if("aes"===i.substr(0,3))return function(e,t,r,n){if(Z.isStream(r)){const e=new Xr(t,n);return N(r,(t=>e.aes.AES_Decrypt_process(t)),(()=>e.aes.AES_Decrypt_finish()))}return Xr.decrypt(r,t,n)}(0,t,r,n);const a=new(Qr(e))(t),s=a.blockSize;let o=n,c=new Uint8Array;const u=e=>{e&&(c=Z.concatUint8Array([c,e]));const t=new Uint8Array(c.length);let r,n=0;for(;e?c.length>=s:c.length;){const e=a.encrypt(o);for(o=c,r=0;r48)throw new _e("illegal counter size");let e=Math.pow(2,r)-1;n.set_mask(0,0,e/4294967296|0,0|e)}else r=48,n.set_mask(0,0,65535,4294967295);if(void 0===e)throw new Error("nonce is required");{let t=e.length;if(!t||t>16)throw new _e("illegal nonce size");let r=new DataView(new ArrayBuffer(16));new Uint8Array(r.buffer).set(e),n.set_nonce(r.getUint32(0),r.getUint32(4),r.getUint32(8),r.getUint32(12))}if(void 0!==t){if(t<0||t>=Math.pow(2,r))throw new _e("illegal counter value");n.set_counter(0,0,t/4294967296|0,0|t)}}}class on{static encrypt(e,t,r=!0,n){return new on(t,n,r).encrypt(e)}static decrypt(e,t,r=!0,n){return new on(t,n,r).decrypt(e)}constructor(e,t,r=!0,n){this.aes=n||new Pe(e,t,r,"CBC")}encrypt(e){return ke(this.aes.AES_Encrypt_process(e),this.aes.AES_Encrypt_finish())}decrypt(e){return ke(this.aes.AES_Decrypt_process(e),this.aes.AES_Decrypt_finish())}}const cn=Z.getWebCrypto(),un=Z.getNodeCrypto(),ln=16;function hn(e,t){const r=e.length-ln;for(let n=0;n>3),17+(u>>3)),8-(7&u)).subarray(1),f=new Uint8Array(En),p=new Uint8Array(t.length+16);let y,g=0;for(y=0;y16)throw new _e("illegal tagSize value");const o=t.length||0,c=new Uint8Array(16);12!==o?(this._gcm_mac_process(t),s[0]=0,s[1]=0,s[2]=0,s[3]=0,s[4]=0,s[5]=0,s[6]=0,s[7]=0,s[8]=0,s[9]=0,s[10]=0,s[11]=o>>>29,s[12]=o>>>21&255,s[13]=o>>>13&255,s[14]=o>>>5&255,s[15]=o<<3&255,a.mac(me.MAC.GCM,me.HEAP_DATA,16),a.get_iv(me.HEAP_DATA),a.set_iv(0,0,0,0),c.set(s.subarray(0,16))):(c.set(t),c[15]=1);const u=new DataView(c.buffer);if(this.gamma0=u.getUint32(12),a.set_nonce(u.getUint32(0),u.getUint32(4),u.getUint32(8),0),a.set_mask(0,0,0,4294967295),void 0!==r){if(r.length>Dn)throw new _e("illegal adata length");r.length?(this.adata=r,this._gcm_mac_process(r)):this.adata=void 0}else this.adata=void 0;if(this.counter<1||this.counter>4294967295)throw new RangeError("counter must be a positive 32-bit integer");a.set_counter(0,0,0,this.gamma0+this.counter|0)}static encrypt(e,t,r,n,i){return new Bn(t,r,n,i).encrypt(e)}static decrypt(e,t,r,n,i){return new Bn(t,r,n,i).decrypt(e)}encrypt(e){return this.AES_GCM_encrypt(e)}decrypt(e){return this.AES_GCM_decrypt(e)}AES_GCM_Encrypt_process(e){let t=0,r=e.length||0,{asm:n,heap:i}=this.aes.acquire_asm(),a=this.counter,s=this.aes.pos,o=this.aes.len,c=0,u=o+r&-16,l=0;if((a-1<<4)+o+r>Dn)throw new RangeError("counter overflow");const h=new Uint8Array(u);for(;r>0;)l=ve(i,s+o,e,t,r),o+=l,t+=l,r-=l,l=n.cipher(me.ENC.CTR,me.HEAP_DATA+s,o),l=n.mac(me.MAC.GCM,me.HEAP_DATA+s,l),l&&h.set(i.subarray(s,s+l),c),a+=l>>>4,c+=l,l>>29,t[4]=u>>>21,t[5]=u>>>13&255,t[6]=u>>>5&255,t[7]=u<<3&255,t[8]=t[9]=t[10]=0,t[11]=l>>>29,t[12]=l>>>21&255,t[13]=l>>>13&255,t[14]=l>>>5&255,t[15]=l<<3&255,e.mac(me.MAC.GCM,me.HEAP_DATA,16),e.get_iv(me.HEAP_DATA),e.set_counter(0,0,0,this.gamma0),e.cipher(me.ENC.CTR,me.HEAP_DATA,16),o.set(t.subarray(0,n),s),this.counter=1,this.aes.pos=0,this.aes.len=0,o}AES_GCM_Decrypt_process(e){let t=0,r=e.length||0,{asm:n,heap:i}=this.aes.acquire_asm(),a=this.counter,s=this.tagSize,o=this.aes.pos,c=this.aes.len,u=0,l=c+r>s?c+r-s&-16:0,h=c+r-l,d=0;if((a-1<<4)+c+r>Dn)throw new RangeError("counter overflow");const f=new Uint8Array(l);for(;r>h;)d=ve(i,o+c,e,t,r-h),c+=d,t+=d,r-=d,d=n.mac(me.MAC.GCM,me.HEAP_DATA+o,d),d=n.cipher(me.DEC.CTR,me.HEAP_DATA+o,d),d&&f.set(i.subarray(o,o+d),u),a+=d>>>4,u+=d,o=0,c=0;return r>0&&(c+=ve(i,0,e,t,r)),this.counter=a,this.aes.pos=o,this.aes.len=c,f}AES_GCM_Decrypt_finish(){let{asm:e,heap:t}=this.aes.acquire_asm(),r=this.tagSize,n=this.adata,i=this.counter,a=this.aes.pos,s=this.aes.len,o=s-r;if(s>>29,t[4]=h>>>21,t[5]=h>>>13&255,t[6]=h>>>5&255,t[7]=h<<3&255,t[8]=t[9]=t[10]=0,t[11]=d>>>29,t[12]=d>>>21&255,t[13]=d>>>13&255,t[14]=d>>>5&255,t[15]=d<<3&255,e.mac(me.MAC.GCM,me.HEAP_DATA,16),e.get_iv(me.HEAP_DATA),e.set_counter(0,0,0,this.gamma0),e.cipher(me.ENC.CTR,me.HEAP_DATA,16);let f=0;for(let e=0;e0;){for(a=ve(r,0,e,n,i),n+=a,i-=a;15&a;)r[a++]=0;t.mac(me.MAC.GCM,me.HEAP_DATA,a)}}}const Un=Z.getWebCrypto(),Rn=Z.getNodeCrypto(),Kn=Z.getNodeBuffer(),On="AES-GCM";async function Nn(e,t){if(e!==ae.symmetric.aes128&&e!==ae.symmetric.aes192&&e!==ae.symmetric.aes256)throw new Error("GCM mode supports only AES cipher");if(Z.getWebCrypto()&&24!==t.length){const e=await Un.importKey("raw",t,{name:On},!1,["encrypt","decrypt"]);return{encrypt:async function(r,n,i=new Uint8Array){if(!r.length)return Bn.encrypt(r,t,n,i);const a=await Un.encrypt({name:On,iv:n,additionalData:i,tagLength:128},e,r);return new Uint8Array(a)},decrypt:async function(r,n,i=new Uint8Array){if(16===r.length)return Bn.decrypt(r,t,n,i);const a=await Un.decrypt({name:On,iv:n,additionalData:i,tagLength:128},e,r);return new Uint8Array(a)}}}return Z.getNodeCrypto()?{encrypt:async function(e,r,n=new Uint8Array){const i=new Rn.createCipheriv("aes-"+8*t.length+"-gcm",t,r);i.setAAD(n);const a=Kn.concat([i.update(e),i.final(),i.getAuthTag()]);return new Uint8Array(a)},decrypt:async function(e,r,n=new Uint8Array){const i=new Rn.createDecipheriv("aes-"+8*t.length+"-gcm",t,r);i.setAAD(n),i.setAuthTag(e.slice(e.length-16,e.length));const a=Kn.concat([i.update(e.slice(0,e.length-16)),i.final()]);return new Uint8Array(a)}}:{encrypt:async function(e,r,n){return Bn.encrypt(e,t,r,n)},decrypt:async function(e,r,n){return Bn.decrypt(e,t,r,n)}}}Nn.getNonce=function(e,t){const r=e.slice();for(let e=0;e>>8)-1}(e,t,r,n)}function f(e,t){var r;for(r=0;r<16;r++)e[r]=0|t[r]}function p(e){var t,r,n=1;for(t=0;t<16;t++)r=e[t]+n+65535,n=Math.floor(r/65536),e[t]=r-65536*n;e[0]+=n-1+37*(n-1)}function y(e,t,r){for(var n,i=~(r-1),a=0;a<16;a++)n=i&(e[a]^t[a]),e[a]^=n,t[a]^=n}function g(e,r){var n,i,a,s=t(),o=t();for(n=0;n<16;n++)o[n]=r[n];for(p(o),p(o),p(o),i=0;i<2;i++){for(s[0]=o[0]-65517,n=1;n<15;n++)s[n]=o[n]-65535-(s[n-1]>>16&1),s[n-1]&=65535;s[15]=o[15]-32767-(s[14]>>16&1),a=s[15]>>16&1,s[14]&=65535,y(o,s,1-a)}for(n=0;n<16;n++)e[2*n]=255&o[n],e[2*n+1]=o[n]>>8}function m(e,t){var r=new Uint8Array(32),n=new Uint8Array(32);return g(r,e),g(n,t),d(r,0,n,0)}function b(e){var t=new Uint8Array(32);return g(t,e),1&t[0]}function w(e,t){var r;for(r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}function v(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function k(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function A(e,t,r){var n,i,a=0,s=0,o=0,c=0,u=0,l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0,S=0,E=0,x=0,P=0,C=0,T=0,M=0,I=0,D=0,B=0,U=0,R=0,K=r[0],O=r[1],N=r[2],L=r[3],q=r[4],F=r[5],z=r[6],j=r[7],H=r[8],W=r[9],V=r[10],G=r[11],$=r[12],J=r[13],Z=r[14],Y=r[15];a+=(n=t[0])*K,s+=n*O,o+=n*N,c+=n*L,u+=n*q,l+=n*F,h+=n*z,d+=n*j,f+=n*H,p+=n*W,y+=n*V,g+=n*G,m+=n*$,b+=n*J,w+=n*Z,v+=n*Y,s+=(n=t[1])*K,o+=n*O,c+=n*N,u+=n*L,l+=n*q,h+=n*F,d+=n*z,f+=n*j,p+=n*H,y+=n*W,g+=n*V,m+=n*G,b+=n*$,w+=n*J,v+=n*Z,k+=n*Y,o+=(n=t[2])*K,c+=n*O,u+=n*N,l+=n*L,h+=n*q,d+=n*F,f+=n*z,p+=n*j,y+=n*H,g+=n*W,m+=n*V,b+=n*G,w+=n*$,v+=n*J,k+=n*Z,A+=n*Y,c+=(n=t[3])*K,u+=n*O,l+=n*N,h+=n*L,d+=n*q,f+=n*F,p+=n*z,y+=n*j,g+=n*H,m+=n*W,b+=n*V,w+=n*G,v+=n*$,k+=n*J,A+=n*Z,_+=n*Y,u+=(n=t[4])*K,l+=n*O,h+=n*N,d+=n*L,f+=n*q,p+=n*F,y+=n*z,g+=n*j,m+=n*H,b+=n*W,w+=n*V,v+=n*G,k+=n*$,A+=n*J,_+=n*Z,S+=n*Y,l+=(n=t[5])*K,h+=n*O,d+=n*N,f+=n*L,p+=n*q,y+=n*F,g+=n*z,m+=n*j,b+=n*H,w+=n*W,v+=n*V,k+=n*G,A+=n*$,_+=n*J,S+=n*Z,E+=n*Y,h+=(n=t[6])*K,d+=n*O,f+=n*N,p+=n*L,y+=n*q,g+=n*F,m+=n*z,b+=n*j,w+=n*H,v+=n*W,k+=n*V,A+=n*G,_+=n*$,S+=n*J,E+=n*Z,x+=n*Y,d+=(n=t[7])*K,f+=n*O,p+=n*N,y+=n*L,g+=n*q,m+=n*F,b+=n*z,w+=n*j,v+=n*H,k+=n*W,A+=n*V,_+=n*G,S+=n*$,E+=n*J,x+=n*Z,P+=n*Y,f+=(n=t[8])*K,p+=n*O,y+=n*N,g+=n*L,m+=n*q,b+=n*F,w+=n*z,v+=n*j,k+=n*H,A+=n*W,_+=n*V,S+=n*G,E+=n*$,x+=n*J,P+=n*Z,C+=n*Y,p+=(n=t[9])*K,y+=n*O,g+=n*N,m+=n*L,b+=n*q,w+=n*F,v+=n*z,k+=n*j,A+=n*H,_+=n*W,S+=n*V,E+=n*G,x+=n*$,P+=n*J,C+=n*Z,T+=n*Y,y+=(n=t[10])*K,g+=n*O,m+=n*N,b+=n*L,w+=n*q,v+=n*F,k+=n*z,A+=n*j,_+=n*H,S+=n*W,E+=n*V,x+=n*G,P+=n*$,C+=n*J,T+=n*Z,M+=n*Y,g+=(n=t[11])*K,m+=n*O,b+=n*N,w+=n*L,v+=n*q,k+=n*F,A+=n*z,_+=n*j,S+=n*H,E+=n*W,x+=n*V,P+=n*G,C+=n*$,T+=n*J,M+=n*Z,I+=n*Y,m+=(n=t[12])*K,b+=n*O,w+=n*N,v+=n*L,k+=n*q,A+=n*F,_+=n*z,S+=n*j,E+=n*H,x+=n*W,P+=n*V,C+=n*G,T+=n*$,M+=n*J,I+=n*Z,D+=n*Y,b+=(n=t[13])*K,w+=n*O,v+=n*N,k+=n*L,A+=n*q,_+=n*F,S+=n*z,E+=n*j,x+=n*H,P+=n*W,C+=n*V,T+=n*G,M+=n*$,I+=n*J,D+=n*Z,B+=n*Y,w+=(n=t[14])*K,v+=n*O,k+=n*N,A+=n*L,_+=n*q,S+=n*F,E+=n*z,x+=n*j,P+=n*H,C+=n*W,T+=n*V,M+=n*G,I+=n*$,D+=n*J,B+=n*Z,U+=n*Y,v+=(n=t[15])*K,s+=38*(A+=n*N),o+=38*(_+=n*L),c+=38*(S+=n*q),u+=38*(E+=n*F),l+=38*(x+=n*z),h+=38*(P+=n*j),d+=38*(C+=n*H),f+=38*(T+=n*W),p+=38*(M+=n*V),y+=38*(I+=n*G),g+=38*(D+=n*$),m+=38*(B+=n*J),b+=38*(U+=n*Z),w+=38*(R+=n*Y),a=(n=(a+=38*(k+=n*O))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=(a+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),a+=i-1+37*(i-1),e[0]=a,e[1]=s,e[2]=o,e[3]=c,e[4]=u,e[5]=l,e[6]=h,e[7]=d,e[8]=f,e[9]=p,e[10]=y,e[11]=g,e[12]=m,e[13]=b,e[14]=w,e[15]=v}function _(e,t){A(e,t,t)}function S(e,r){var n,i=t();for(n=0;n<16;n++)i[n]=r[n];for(n=253;n>=0;n--)_(i,i),2!==n&&4!==n&&A(i,i,r);for(n=0;n<16;n++)e[n]=i[n]}function E(e,r,n){var i,a,o=new Uint8Array(32),c=new Float64Array(80),u=t(),l=t(),h=t(),d=t(),f=t(),p=t();for(a=0;a<31;a++)o[a]=r[a];for(o[31]=127&r[31]|64,o[0]&=248,w(c,n),a=0;a<16;a++)l[a]=c[a],d[a]=u[a]=h[a]=0;for(u[0]=d[0]=1,a=254;a>=0;--a)y(u,l,i=o[a>>>3]>>>(7&a)&1),y(h,d,i),v(f,u,h),k(u,u,h),v(h,l,d),k(l,l,d),_(d,f),_(p,u),A(u,h,u),A(h,l,f),v(f,u,h),k(u,u,h),_(l,u),k(h,d,p),A(u,h,s),v(u,u,d),A(h,h,u),A(u,d,p),A(d,l,c),_(l,f),y(u,l,i),y(h,d,i);for(a=0;a<16;a++)c[a+16]=u[a],c[a+32]=h[a],c[a+48]=l[a],c[a+64]=d[a];var m=c.subarray(32),b=c.subarray(16);return S(m,m),A(b,b,m),g(e,b),0}function x(e,t){return E(e,t,n)}function P(e,r){var n=t(),i=t(),a=t(),s=t(),o=t(),u=t(),l=t(),h=t(),d=t();k(n,e[1],e[0]),k(d,r[1],r[0]),A(n,n,d),v(i,e[0],e[1]),v(d,r[0],r[1]),A(i,i,d),A(a,e[3],r[3]),A(a,a,c),A(s,e[2],r[2]),v(s,s,s),k(o,i,n),k(u,s,a),v(l,s,a),v(h,i,n),A(e[0],o,u),A(e[1],h,l),A(e[2],l,u),A(e[3],o,h)}function C(e,t,r){var n;for(n=0;n<4;n++)y(e[n],t[n],r)}function T(e,r){var n=t(),i=t(),a=t();S(a,r[2]),A(n,r[0],a),A(i,r[1],a),g(e,i),e[31]^=b(n)<<7}function M(e,t,r){var n,s;for(f(e[0],i),f(e[1],a),f(e[2],a),f(e[3],i),s=255;s>=0;--s)C(e,t,n=r[s/8|0]>>(7&s)&1),P(t,e),P(e,e),C(e,t,n)}function I(e,r){var n=[t(),t(),t(),t()];f(n[0],u),f(n[1],l),f(n[2],a),A(n[3],u,l),M(e,n,r)}function D(n,i,a){var s,o,c=[t(),t(),t(),t()];for(a||r(i,32),(s=e.hash(i.subarray(0,32)))[0]&=248,s[31]&=127,s[31]|=64,I(c,s),T(n,c),o=0;o<32;o++)i[o+32]=n[o];return 0}var B=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function U(e,t){var r,n,i,a;for(n=63;n>=32;--n){for(r=0,i=n-32,a=n-12;i>4)*B[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*B[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function R(e){var t,r=new Float64Array(64);for(t=0;t<64;t++)r[t]=e[t];for(t=0;t<64;t++)e[t]=0;U(e,r)}var K=64;function O(){for(var e=0;e=0;n--)_(i,i),1!==n&&A(i,i,r);for(n=0;n<16;n++)e[n]=i[n]}(n,n),A(n,n,c),A(n,n,u),A(n,n,u),A(e[0],n,u),_(s,e[0]),A(s,s,u),m(s,c)&&A(e[0],e[0],h),_(s,e[0]),A(s,s,u),m(s,c)?-1:(b(e[0])===r[31]>>7&&k(e[0],i,e[0]),A(e[3],e[0],e[1]),0)}(g,c))return-1;for(u=0;u=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return D(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(O(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),r=0;re&&(c.imod(a.leftShift(i)).iadd(a),u=c.mod(s).toNumber())}while(!await Vn(c,t,r));return c}async function Vn(e,t,r){return!(t&&!e.dec().gcd(t).isOne()||!await async function(e){const t=await Z.getBigInteger();return Gn.every((r=>0!==e.mod(new t(r))))}(e)||!await async function(e,t){const r=await Z.getBigInteger();return(t=t||new r(2)).modExp(e.dec(),e).isOne()}(e)||!await async function(e,t,r){const n=await Z.getBigInteger(),i=e.bitLength();t||(t=Math.max(1,i/48|0));const a=e.dec();let s=0;for(;!a.getBit(s);)s++;const o=e.rightShift(new n(s));for(;t>0;t--){let t,r=(await jn(new n(2),a)).modExp(o,e);if(!r.isOne()&&!r.equal(a)){for(t=1;tt-11)throw new Error("Message too long");const n=function(e){const t=new Uint8Array(e);let r=0;for(;r=8&!n;if(t)return Z.selectUint8Array(s,a,t);if(s)return a;throw new Error("Decryption error")}async function Yn(e,t,r){let n;if(t.length!==Yr.getHashByteLength(e))throw new Error("Invalid hash length");const i=new Uint8Array($n[e].length);for(n=0;n<$n[e].length;n++)i[n]=$n[e][n];const a=i.length+t.length;if(r{ei.generateKeyPair("rsa",r,((r,n,i)=>{r?t(r):e(ri.decode(i,"der"))}))}));return{n:n.modulus.toArrayLike(Uint8Array),e:n.publicExponent.toArrayLike(Uint8Array),d:n.privateExponent.toArrayLike(Uint8Array),p:n.prime2.toArrayLike(Uint8Array),q:n.prime1.toArrayLike(Uint8Array),u:n.coefficient.toArrayLike(Uint8Array)}}let r,n,i;do{n=await Wn(e-(e>>1),t,40),r=await Wn(e>>1,t,40),i=r.mul(n)}while(i.bitLength()!==e);const a=r.dec().imul(n.dec());return n.lt(r)&&([r,n]=[n,r]),{n:i.toUint8Array(),e:t.toUint8Array(),d:t.modInv(a).toUint8Array(),p:r.toUint8Array(),q:n.toUint8Array(),u:r.modInv(n).toUint8Array()}},validateParams:async function(e,t,r,n,i,a){const s=await Z.getBigInteger();if(e=new s(e),n=new s(n),i=new s(i),!n.mul(i).equal(e))return!1;const o=new s(2);if(a=new s(a),!n.mul(a).mod(i).isOne())return!1;t=new s(t),r=new s(r);const c=new s(Math.floor(e.bitLength()/3)),u=await jn(o,o.leftShift(c)),l=u.mul(r).mul(t);return!(!l.mod(n.dec()).equal(u)||!l.mod(i.dec()).equal(u))}}),ai=Object.freeze({__proto__:null,encrypt:async function(e,t,r,n){const i=await Z.getBigInteger();t=new i(t),r=new i(r),n=new i(n);const a=new i(Jn(e,t.byteLength())),s=await jn(new i(1),t.dec());return{c1:r.modExp(s,t).toUint8Array(),c2:n.modExp(s,t).imul(a).imod(t).toUint8Array()}},decrypt:async function(e,t,r,n,i){const a=await Z.getBigInteger();return e=new a(e),t=new a(t),r=new a(r),n=new a(n),Zn(e.modExp(n,r).modInv(r).imul(t).imod(r).toUint8Array("be",r.byteLength()),i)},validateParams:async function(e,t,r,n){const i=await Z.getBigInteger();e=new i(e),t=new i(t),r=new i(r);const a=new i(1);if(t.lte(a)||t.gte(e))return!1;const s=new i(e.bitLength()),o=new i(1023);if(s.lt(o))return!1;if(!t.modExp(e.dec(),e).isOne())return!1;let c=t;const u=new i(1),l=new i(2).leftShift(new i(17));for(;u.lt(l);){if(c=c.mul(t).imod(e),c.isOne())return!1;u.iinc()}n=new i(n);const h=new i(2),d=await jn(h.leftShift(s.dec()),h.leftShift(s)),f=e.dec().imul(d).iadd(n);return!!r.equal(t.modExp(f,e))}});class si{constructor(e){if(e instanceof si)this.oid=e.oid;else if(Z.isArray(e)||Z.isUint8Array(e)){if(6===(e=new Uint8Array(e))[0]){if(e[1]!==e.length-2)throw new Error("Length mismatch in DER encoded oid");e=e.subarray(2)}this.oid=e}else this.oid=""}read(e){if(e.length>=1){const t=e[0];if(e.length>=1+t)return this.oid=e.subarray(1,1+t),1+this.oid.length}throw new Error("Invalid oid")}write(){return Z.concatUint8Array([new Uint8Array([this.oid.length]),this.oid])}toHex(){return Z.uint8ArrayToHex(this.oid)}getName(){const e=this.toHex();if(ae.curve[e])return ae.write(ae.curve,e);throw new Error("Unknown curve object identifier.")}}function oi(e,t){return e.keyPair({priv:t})}function ci(e,t){const r=e.keyPair({pub:t});if(!0!==r.validate().result)throw new Error("Invalid elliptic public key");return r}async function ui(e){if(!se.useIndutnyElliptic)throw new Error("This curve is only supported in the full build of OpenPGP.js");const{default:t}=await Promise.resolve().then((function(){return hy}));return new t.ec(e)}function li(e){let t,r=0;const n=e[0];return n<192?([r]=e,t=1):n<255?(r=(e[0]-192<<8)+e[1]+192,t=2):255===n&&(r=Z.readNumber(e.subarray(1,5)),t=5),{len:r,offset:t}}function hi(e){return e<192?new Uint8Array([e]):e>191&&e<8384?new Uint8Array([192+(e-192>>8),e-192&255]):Z.concatUint8Array([new Uint8Array([255]),Z.writeNumber(e,4)])}function di(e){if(e<0||e>30)throw new Error("Partial Length power must be between 1 and 30");return new Uint8Array([224+e])}function fi(e){return new Uint8Array([192|e])}function pi(e,t){return Z.concatUint8Array([fi(e),hi(t)])}function yi(e){return[ae.packet.literalData,ae.packet.compressedData,ae.packet.symmetricallyEncryptedData,ae.packet.symEncryptedIntegrityProtectedData,ae.packet.aeadEncryptedData].includes(e)}async function gi(e,t){const r=B(e);let n,i;try{const a=await r.peekBytes(2);if(!a||a.length<2||0==(128&a[0]))throw new Error("Error during parsing. This message / key probably does not conform to a valid OpenPGP format.");const s=await r.readByte();let o,u,l=-1,h=-1;h=0,0!=(64&s)&&(h=1),h?l=63&s:(l=(63&s)>>2,u=3&s);const d=yi(l);let f,p=null;if(d){if("array"===Z.isStream(e)){const e=new c;n=U(e),p=e}else{const e=new P;n=U(e.writable),p=e.readable}i=t({tag:l,packet:p})}else p=[];do{if(h){const e=await r.readByte();if(f=!1,e<192)o=e;else if(e>=192&&e<224)o=(e-192<<8)+await r.readByte()+192;else if(e>223&&e<255){if(o=1<<(31&e),f=!0,!d)throw new TypeError("This packet type does not support partial lengths.")}else o=await r.readByte()<<24|await r.readByte()<<16|await r.readByte()<<8|await r.readByte()}else switch(u){case 0:o=await r.readByte();break;case 1:o=await r.readByte()<<8|await r.readByte();break;case 2:o=await r.readByte()<<24|await r.readByte()<<16|await r.readByte()<<8|await r.readByte();break;default:o=1/0}if(o>0){let e=0;for(;;){n&&await n.ready;const{done:t,value:i}=await r.read();if(t){if(o===1/0)break;throw new Error("Unexpected end of packet")}const a=o===1/0?i:i.subarray(0,o-e);if(n?await n.write(a):p.push(a),e+=i.length,e>=o){r.unshift(i.subarray(o-e+i.length));break}}}}while(f);const y=await r.peekBytes(d?1/0:2);return n?(await n.ready,await n.close()):(p=Z.concatUint8Array(p),await t({tag:l,packet:p})),!y||!y.length}catch(e){if(n)return await n.abort(e),!0;throw e}finally{n&&await i,r.releaseLock()}}class mi extends Error{constructor(...e){super(...e),Error.captureStackTrace&&Error.captureStackTrace(this,mi),this.name="UnsupportedError"}}class bi{constructor(e,t){this.tag=e,this.rawContent=t}write(){return this.rawContent}}const wi=Z.getWebCrypto(),vi=Z.getNodeCrypto(),ki={p256:"P-256",p384:"P-384",p521:"P-521"},Ai=vi?vi.getCurves():[],_i=vi?{secp256k1:Ai.includes("secp256k1")?"secp256k1":void 0,p256:Ai.includes("prime256v1")?"prime256v1":void 0,p384:Ai.includes("secp384r1")?"secp384r1":void 0,p521:Ai.includes("secp521r1")?"secp521r1":void 0,ed25519:Ai.includes("ED25519")?"ED25519":void 0,curve25519:Ai.includes("X25519")?"X25519":void 0,brainpoolP256r1:Ai.includes("brainpoolP256r1")?"brainpoolP256r1":void 0,brainpoolP384r1:Ai.includes("brainpoolP384r1")?"brainpoolP384r1":void 0,brainpoolP512r1:Ai.includes("brainpoolP512r1")?"brainpoolP512r1":void 0}:{},Si={p256:{oid:[6,8,42,134,72,206,61,3,1,7],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:_i.p256,web:ki.p256,payloadSize:32,sharedSize:256},p384:{oid:[6,5,43,129,4,0,34],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha384,cipher:ae.symmetric.aes192,node:_i.p384,web:ki.p384,payloadSize:48,sharedSize:384},p521:{oid:[6,5,43,129,4,0,35],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha512,cipher:ae.symmetric.aes256,node:_i.p521,web:ki.p521,payloadSize:66,sharedSize:528},secp256k1:{oid:[6,5,43,129,4,0,10],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:_i.secp256k1,payloadSize:32},ed25519:{oid:[6,9,43,6,1,4,1,218,71,15,1],keyType:ae.publicKey.eddsa,hash:ae.hash.sha512,node:!1,payloadSize:32},curve25519:{oid:[6,10,43,6,1,4,1,151,85,1,5,1],keyType:ae.publicKey.ecdh,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:!1,payloadSize:32},brainpoolP256r1:{oid:[6,9,43,36,3,3,2,8,1,1,7],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:_i.brainpoolP256r1,payloadSize:32},brainpoolP384r1:{oid:[6,9,43,36,3,3,2,8,1,1,11],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha384,cipher:ae.symmetric.aes192,node:_i.brainpoolP384r1,payloadSize:48},brainpoolP512r1:{oid:[6,9,43,36,3,3,2,8,1,1,13],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha512,cipher:ae.symmetric.aes256,node:_i.brainpoolP512r1,payloadSize:64}};class Ei{constructor(e,t){try{(Z.isArray(e)||Z.isUint8Array(e))&&(e=new si(e)),e instanceof si&&(e=e.getName()),this.name=ae.write(ae.curve,e)}catch(e){throw new mi("Unknown curve")}t=t||Si[this.name],this.keyType=t.keyType,this.oid=t.oid,this.hash=t.hash,this.cipher=t.cipher,this.node=t.node&&Si[this.name],this.web=t.web&&Si[this.name],this.payloadSize=t.payloadSize,this.web&&Z.getWebCrypto()?this.type="web":this.node&&Z.getNodeCrypto()?this.type="node":"curve25519"===this.name?this.type="curve25519":"ed25519"===this.name&&(this.type="ed25519")}async genKeyPair(){let e;switch(this.type){case"web":try{return await async function(e){const t=await wi.generateKey({name:"ECDSA",namedCurve:ki[e]},!0,["sign","verify"]),r=await wi.exportKey("jwk",t.privateKey);return{publicKey:Pi(await wi.exportKey("jwk",t.publicKey)),privateKey:re(r.d)}}(this.name)}catch(e){Z.printDebugError("Browser did not support generating ec key "+e.message);break}case"node":return async function(e){const t=vi.createECDH(_i[e]);return await t.generateKeys(),{publicKey:new Uint8Array(t.getPublicKey()),privateKey:new Uint8Array(t.getPrivateKey())}}(this.name);case"curve25519":{const t=zn(32);t[0]=127&t[0]|64,t[31]&=248;const r=t.slice().reverse();return e=qn.box.keyPair.fromSecretKey(r),{publicKey:Z.concatUint8Array([new Uint8Array([64]),e.publicKey]),privateKey:t}}case"ed25519":{const e=zn(32),t=qn.sign.keyPair.fromSeed(e);return{publicKey:Z.concatUint8Array([new Uint8Array([64]),t.publicKey]),privateKey:e}}}const t=await ui(this.name);return e=await t.genKeyPair({entropy:Z.uint8ArrayToString(zn(32))}),{publicKey:new Uint8Array(e.getPublic("array",!1)),privateKey:e.getPrivate().toArrayLike(Uint8Array)}}}async function xi(e,t,r,n){const i={p256:!0,p384:!0,p521:!0,secp256k1:!0,curve25519:e===ae.publicKey.ecdh,brainpoolP256r1:!0,brainpoolP384r1:!0,brainpoolP512r1:!0},a=t.getName();if(!i[a])return!1;if("curve25519"===a){n=n.slice().reverse();const{publicKey:e}=qn.box.keyPair.fromSecretKey(n);r=new Uint8Array(r);const t=new Uint8Array([64,...e]);return!!Z.equalsUint8Array(t,r)}const s=await ui(a);try{r=ci(s,r).getPublic()}catch(e){return!1}return!!oi(s,n).getPublic().eq(r)}function Pi(e){const t=re(e.x),r=re(e.y),n=new Uint8Array(t.length+r.length+1);return n[0]=4,n.set(t,1),n.set(r,t.length+1),n}function Ci(e,t,r){const n=e,i=r.slice(1,n+1),a=r.slice(n+1,2*n+1);return{kty:"EC",crv:t,x:ne(i,!0),y:ne(a,!0),ext:!0}}function Ti(e,t,r,n){const i=Ci(e,t,r);return i.d=ne(n,!0),i}const Mi=Z.getWebCrypto(),Ii=Z.getNodeCrypto();async function Di(e,t,r,n,i,a){const s=new Ei(e);if(r&&!Z.isStream(r)){const e={publicKey:n,privateKey:i};switch(s.type){case"web":try{return await async function(e,t,r,n){const i=e.payloadSize,a=Ti(e.payloadSize,ki[e.name],n.publicKey,n.privateKey),s=await Mi.importKey("jwk",a,{name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,e.hash)}},!1,["sign"]),o=new Uint8Array(await Mi.sign({name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,t)}},s,r));return{r:o.slice(0,i),s:o.slice(i,i<<1)}}(s,t,r,e)}catch(e){if("p521"!==s.name&&("DataError"===e.name||"OperationError"===e.name))throw e;Z.printDebugError("Browser did not support signing: "+e.message)}break;case"node":{const n=await async function(e,t,r,n){const i=Ii.createSign(ae.read(ae.hash,t));i.write(r),i.end();const a=Ki.encode({version:1,parameters:e.oid,privateKey:Array.from(n.privateKey),publicKey:{unused:0,data:Array.from(n.publicKey)}},"pem",{label:"EC PRIVATE KEY"});return Ri.decode(i.sign(a),"der")}(s,t,r,e);return{r:n.r.toArrayLike(Uint8Array),s:n.s.toArrayLike(Uint8Array)}}}}return async function(e,t,r){const n=oi(await ui(e.name),r).sign(t);return{r:n.r.toArrayLike(Uint8Array),s:n.s.toArrayLike(Uint8Array)}}(s,a,i)}async function Bi(e,t,r,n,i,a){const s=new Ei(e);if(n&&!Z.isStream(n))switch(s.type){case"web":try{return await async function(e,t,{r,s:n},i,a){const s=Ci(e.payloadSize,ki[e.name],a),o=await Mi.importKey("jwk",s,{name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,e.hash)}},!1,["verify"]),c=Z.concatUint8Array([r,n]).buffer;return Mi.verify({name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,t)}},o,c,i)}(s,t,r,n,i)}catch(e){if("p521"!==s.name&&("DataError"===e.name||"OperationError"===e.name))throw e;Z.printDebugError("Browser did not support verifying: "+e.message)}break;case"node":return async function(e,t,{r,s:n},i,a){const{default:s}=await Promise.resolve().then((function(){return Vf})),o=Ii.createVerify(ae.read(ae.hash,t));o.write(i),o.end();const c=Ni.encode({algorithm:{algorithm:[1,2,840,10045,2,1],parameters:e.oid},subjectPublicKey:{unused:0,data:Array.from(a)}},"pem",{label:"PUBLIC KEY"}),u=Ri.encode({r:new s(r),s:new s(n)},"der");try{return o.verify(c,u)}catch(e){return!1}}(s,t,r,n,i)}return async function(e,t,r,n){return ci(await ui(e.name),n).verify(r,t)}(s,r,void 0===t?n:a,i)}const Ui=void 0,Ri=Ii?Ui.define("ECDSASignature",(function(){this.seq().obj(this.key("r").int(),this.key("s").int())})):void 0,Ki=Ii?Ui.define("ECPrivateKey",(function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").explicit(0).optional().any(),this.key("publicKey").explicit(1).optional().bitstr())})):void 0,Oi=Ii?Ui.define("AlgorithmIdentifier",(function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional().any())})):void 0,Ni=Ii?Ui.define("SubjectPublicKeyInfo",(function(){this.seq().obj(this.key("algorithm").use(Oi),this.key("subjectPublicKey").bitstr())})):void 0;var Li=Object.freeze({__proto__:null,sign:Di,verify:Bi,validateParams:async function(e,t,r){const n=new Ei(e);if(n.keyType!==ae.publicKey.ecdsa)return!1;switch(n.type){case"web":case"node":{const n=zn(8),i=ae.hash.sha256,a=await Yr.digest(i,n);try{const s=await Di(e,i,n,t,r,a);return await Bi(e,i,s,n,t,a)}catch(e){return!1}}default:return xi(ae.publicKey.ecdsa,e,t,r)}}});qn.hash=e=>new Uint8Array(ir().update(e).digest());var qi=Object.freeze({__proto__:null,sign:async function(e,t,r,n,i,a){if(Yr.getHashByteLength(t)=0;--e)for(let t=o-1;t>=0;--t)c[1]=o*e+(t+1),u[0]=a[0]^c[0],u[1]=a[1]^c[1],u[2]=s[2*t],u[3]=s[2*t+1],u=ji(r.decrypt(Hi(u))),a=u.subarray(0,2),s[2*t]=u[2],s[2*t+1]=u[3];if(a[0]===n[0]&&a[1]===n[1])return Hi(s);throw new Error("Key Data Integrity failed")}function ji(e){const{length:t}=e,r=function(e){if(Z.isString(e)){const{length:t}=e,r=new ArrayBuffer(t),n=new Uint8Array(r);for(let r=0;r0){const r=e[t-1];if(r>=1){const n=e.subarray(t-r),i=new Uint8Array(r).fill(r);if(Z.equalsUint8Array(n,i))return e.subarray(0,t-r)}}throw new Error("Invalid padding")}var $i=Object.freeze({__proto__:null,encode:Vi,decode:Gi});const Ji=Z.getWebCrypto(),Zi=Z.getNodeCrypto();function Yi(e,t,r,n){return Z.concatUint8Array([t.write(),new Uint8Array([e]),r.write(),Z.stringToUint8Array("Anonymous Sender "),n.subarray(0,20)])}async function Xi(e,t,r,n,i=!1,a=!1){let s;if(i){for(s=0;s=0&&0===t[s];s--);t=t.subarray(0,s+1)}return(await Yr.digest(e,Z.concatUint8Array([new Uint8Array([0,0,0,1]),t,n]))).subarray(0,r)}async function Qi(e,t,r,n){if(n.length!==e.payloadSize){const t=new Uint8Array(e.payloadSize);t.set(n,e.payloadSize-n.length),n=t}switch(e.type){case"curve25519":{const e=n.slice().reverse();return{secretKey:e,sharedKey:qn.scalarMult(e,t.subarray(1))}}case"web":if(e.web&&Z.getWebCrypto())try{return await async function(e,t,r,n){const i=Ti(e.payloadSize,e.web.web,r,n);let a=Ji.importKey("jwk",i,{name:"ECDH",namedCurve:e.web.web},!0,["deriveKey","deriveBits"]);const s=Ci(e.payloadSize,e.web.web,t);let o=Ji.importKey("jwk",s,{name:"ECDH",namedCurve:e.web.web},!0,[]);[a,o]=await Promise.all([a,o]);let c=Ji.deriveBits({name:"ECDH",namedCurve:e.web.web,public:o},a,e.web.sharedSize),u=Ji.exportKey("jwk",a);[c,u]=await Promise.all([c,u]);const l=new Uint8Array(c);return{secretKey:re(u.d),sharedKey:l}}(e,t,r,n)}catch(e){Z.printDebugError(e)}break;case"node":return async function(e,t,r){const n=Zi.createECDH(e.node.node);n.setPrivateKey(r);const i=new Uint8Array(n.computeSecret(t));return{secretKey:new Uint8Array(n.getPrivateKey()),sharedKey:i}}(e,t,n)}return async function(e,t,r){const n=await ui(e.name);t=ci(n,t),r=oi(n,r);const i=new Uint8Array(r.getPrivate()),a=r.derive(t.getPublic()),s=n.curve.p.byteLength();return{secretKey:i,sharedKey:a.toArrayLike(Uint8Array,"be",s)}}(e,t,n)}var ea=Object.freeze({__proto__:null,validateParams:async function(e,t,r){return xi(ae.publicKey.ecdh,e,t,r)},encrypt:async function(e,t,r,n,i){const a=Vi(r),s=new Ei(e),{publicKey:o,sharedKey:c}=await async function(e,t){switch(e.type){case"curve25519":{const r=zn(32),{secretKey:n,sharedKey:i}=await Qi(e,t,null,r);let{publicKey:a}=qn.box.keyPair.fromSecretKey(n);return a=Z.concatUint8Array([new Uint8Array([64]),a]),{publicKey:a,sharedKey:i}}case"web":if(e.web&&Z.getWebCrypto())try{return await async function(e,t){const r=Ci(e.payloadSize,e.web.web,t);let n=Ji.generateKey({name:"ECDH",namedCurve:e.web.web},!0,["deriveKey","deriveBits"]),i=Ji.importKey("jwk",r,{name:"ECDH",namedCurve:e.web.web},!1,[]);[n,i]=await Promise.all([n,i]);let a=Ji.deriveBits({name:"ECDH",namedCurve:e.web.web,public:i},n.privateKey,e.web.sharedSize),s=Ji.exportKey("jwk",n.publicKey);[a,s]=await Promise.all([a,s]);const o=new Uint8Array(a);return{publicKey:new Uint8Array(Pi(s)),sharedKey:o}}(e,t)}catch(e){Z.printDebugError(e)}break;case"node":return async function(e,t){const r=Zi.createECDH(e.node.node);r.generateKeys();const n=new Uint8Array(r.computeSecret(t));return{publicKey:new Uint8Array(r.getPublicKey()),sharedKey:n}}(e,t)}return async function(e,t){const r=await ui(e.name),n=await e.genKeyPair();t=ci(r,t);const i=oi(r,n.privateKey),a=n.publicKey,s=i.derive(t.getPublic()),o=r.curve.p.byteLength();return{publicKey:a,sharedKey:s.toArrayLike(Uint8Array,"be",o)}}(e,t)}(s,n),u=Yi(ae.publicKey.ecdh,e,t,i),{keySize:l}=Qr(t.cipher);return{publicKey:o,wrappedKey:Fi(await Xi(t.hash,c,l,u),a)}},decrypt:async function(e,t,r,n,i,a,s){const o=new Ei(e),{sharedKey:c}=await Qi(o,r,i,a),u=Yi(ae.publicKey.ecdh,e,t,s),{keySize:l}=Qr(t.cipher);let h;for(let e=0;e<3;e++)try{return Gi(zi(await Xi(t.hash,c,l,u,1===e,2===e),n))}catch(e){h=e}throw h}}),ta=Object.freeze({__proto__:null,Curve:Ei,ecdh:ea,ecdsa:Li,eddsa:qi,generate:async function(e){const t=await Z.getBigInteger();e=new Ei(e);const r=await e.genKeyPair(),n=new t(r.publicKey).toUint8Array(),i=new t(r.privateKey).toUint8Array("be",e.payloadSize);return{oid:e.oid,Q:n,secret:i,hash:e.hash,cipher:e.cipher}},getPreferredHashAlgo:function(e){return Si[ae.write(ae.curve,e.toHex())].hash}}),ra=Object.freeze({__proto__:null,sign:async function(e,t,r,n,i,a){const s=await Z.getBigInteger(),o=new s(1);let c,u,l,h;n=new s(n),i=new s(i),r=new s(r),a=new s(a),r=r.mod(n),a=a.mod(i);const d=new s(t.subarray(0,i.byteLength())).mod(i);for(;;){if(c=await jn(o,i),u=r.modExp(c,n).imod(i),u.isZero())continue;const e=a.mul(u).imod(i);if(h=d.add(e).imod(i),l=c.modInv(i).imul(h).imod(i),!l.isZero())break}return{r:u.toUint8Array("be",i.byteLength()),s:l.toUint8Array("be",i.byteLength())}},verify:async function(e,t,r,n,i,a,s,o){const c=await Z.getBigInteger(),u=new c(0);if(t=new c(t),r=new c(r),a=new c(a),s=new c(s),i=new c(i),o=new c(o),t.lte(u)||t.gte(s)||r.lte(u)||r.gte(s))return Z.printDebug("invalid DSA Signature"),!1;const l=new c(n.subarray(0,s.byteLength())).imod(s),h=r.modInv(s);if(h.isZero())return Z.printDebug("invalid DSA Signature"),!1;i=i.mod(a),o=o.mod(a);const d=l.mul(h).imod(s),f=t.mul(h).imod(s),p=i.modExp(d,a),y=o.modExp(f,a);return p.mul(y).imod(a).imod(s).equal(t)},validateParams:async function(e,t,r,n,i){const a=await Z.getBigInteger();e=new a(e),t=new a(t),r=new a(r),n=new a(n);const s=new a(1);if(r.lte(s)||r.gte(e))return!1;if(!e.dec().mod(t).isZero())return!1;if(!r.modExp(t,e).isOne())return!1;const o=new a(t.bitLength()),c=new a(150);if(o.lt(c)||!await Vn(t,null,32))return!1;i=new a(i);const u=new a(2),l=await jn(u.leftShift(o.dec()),u.leftShift(o)),h=t.mul(l).add(i);return!!n.equal(r.modExp(h,e))}}),na={rsa:ii,elgamal:ai,elliptic:ta,dsa:ra,nacl:qn},ia=Object.freeze({__proto__:null,parseSignatureParams:function(e,t){let r=0;switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaSign:return{s:Z.readMPI(t.subarray(r))};case ae.publicKey.dsa:case ae.publicKey.ecdsa:{const e=Z.readMPI(t.subarray(r));return r+=e.length+2,{r:e,s:Z.readMPI(t.subarray(r))}}case ae.publicKey.eddsa:{let e=Z.readMPI(t.subarray(r));r+=e.length+2,e=Z.leftPad(e,32);let n=Z.readMPI(t.subarray(r));return n=Z.leftPad(n,32),{r:e,s:n}}default:throw new mi("Unknown signature algorithm.")}},verify:async function(e,t,r,n,i,a){switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaSign:{const{n:e,e:s}=n,o=Z.leftPad(r.s,e.length);return na.rsa.verify(t,i,o,e,s,a)}case ae.publicKey.dsa:{const{g:e,p:i,q:s,y:o}=n,{r:c,s:u}=r;return na.dsa.verify(t,c,u,a,e,i,s,o)}case ae.publicKey.ecdsa:{const{oid:e,Q:s}=n,o=new na.elliptic.Curve(e).payloadSize,c=Z.leftPad(r.r,o),u=Z.leftPad(r.s,o);return na.elliptic.ecdsa.verify(e,t,{r:c,s:u},i,s,a)}case ae.publicKey.eddsa:{const{oid:e,Q:s}=n;return na.elliptic.eddsa.verify(e,t,r,i,s,a)}default:throw new Error("Unknown signature algorithm.")}},sign:async function(e,t,r,n,i,a){if(!r||!n)throw new Error("Missing key parameters");switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaSign:{const{n:e,e:s}=r,{d:o,p:c,q:u,u:l}=n;return{s:await na.rsa.sign(t,i,e,s,o,c,u,l,a)}}case ae.publicKey.dsa:{const{g:e,p:i,q:s}=r,{x:o}=n;return na.dsa.sign(t,a,e,i,s,o)}case ae.publicKey.elgamal:throw new Error("Signing with Elgamal is not defined in the OpenPGP standard.");case ae.publicKey.ecdsa:{const{oid:e,Q:s}=r,{d:o}=n;return na.elliptic.ecdsa.sign(e,t,i,s,o,a)}case ae.publicKey.eddsa:{const{oid:e,Q:s}=r,{seed:o}=n;return na.elliptic.eddsa.sign(e,t,i,s,o,a)}default:throw new Error("Unknown signature algorithm.")}}});class aa{constructor(e){e=void 0===e?new Uint8Array([]):Z.isString(e)?Z.stringToUint8Array(e):new Uint8Array(e),this.data=e}read(e){if(e.length>=1){const t=e[0];if(e.length>=1+t)return this.data=e.subarray(1,1+t),1+this.data.length}throw new Error("Invalid symmetric key")}write(){return Z.concatUint8Array([new Uint8Array([this.data.length]),this.data])}}class sa{constructor(e){if(e){const{hash:t,cipher:r}=e;this.hash=t,this.cipher=r}else this.hash=null,this.cipher=null}read(e){if(e.length<4||3!==e[0]||1!==e[1])throw new Error("Cannot read KDFParams");return this.hash=e[2],this.cipher=e[3],4}write(){return new Uint8Array([3,1,this.hash,this.cipher])}}function oa(e){try{e.getName()}catch(e){throw new mi("Unknown curve OID")}}var ca=Object.freeze({__proto__:null,publicKeyEncrypt:async function(e,t,r,n){switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:{const{n:e,e:n}=t;return{c:await na.rsa.encrypt(r,e,n)}}case ae.publicKey.elgamal:{const{p:e,g:n,y:i}=t;return na.elgamal.encrypt(r,e,n,i)}case ae.publicKey.ecdh:{const{oid:e,Q:i,kdfParams:a}=t,{publicKey:s,wrappedKey:o}=await na.elliptic.ecdh.encrypt(e,a,r,i,n);return{V:s,C:new aa(o)}}default:return[]}},publicKeyDecrypt:async function(e,t,r,n,i,a){switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:{const{c:e}=n,{n:i,e:s}=t,{d:o,p:c,q:u,u:l}=r;return na.rsa.decrypt(e,i,s,o,c,u,l,a)}case ae.publicKey.elgamal:{const{c1:e,c2:i}=n,s=t.p,o=r.x;return na.elgamal.decrypt(e,i,s,o,a)}case ae.publicKey.ecdh:{const{oid:e,Q:a,kdfParams:s}=t,{d:o}=r,{V:c,C:u}=n;return na.elliptic.ecdh.decrypt(e,s,c,u.data,a,o,i)}default:throw new Error("Unknown public key encryption algorithm.")}},parsePublicKeyParams:function(e,t){let r=0;switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=Z.readMPI(t.subarray(r));return r+=n.length+2,{read:r,publicParams:{n:e,e:n}}}case ae.publicKey.dsa:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=Z.readMPI(t.subarray(r));r+=n.length+2;const i=Z.readMPI(t.subarray(r));r+=i.length+2;const a=Z.readMPI(t.subarray(r));return r+=a.length+2,{read:r,publicParams:{p:e,q:n,g:i,y:a}}}case ae.publicKey.elgamal:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=Z.readMPI(t.subarray(r));r+=n.length+2;const i=Z.readMPI(t.subarray(r));return r+=i.length+2,{read:r,publicParams:{p:e,g:n,y:i}}}case ae.publicKey.ecdsa:{const e=new si;r+=e.read(t),oa(e);const n=Z.readMPI(t.subarray(r));return r+=n.length+2,{read:r,publicParams:{oid:e,Q:n}}}case ae.publicKey.eddsa:{const e=new si;r+=e.read(t),oa(e);let n=Z.readMPI(t.subarray(r));return r+=n.length+2,n=Z.leftPad(n,33),{read:r,publicParams:{oid:e,Q:n}}}case ae.publicKey.ecdh:{const e=new si;r+=e.read(t),oa(e);const n=Z.readMPI(t.subarray(r));r+=n.length+2;const i=new sa;return r+=i.read(t.subarray(r)),{read:r,publicParams:{oid:e,Q:n,kdfParams:i}}}default:throw new mi("Unknown public key encryption algorithm.")}},parsePrivateKeyParams:function(e,t,r){let n=0;switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:{const e=Z.readMPI(t.subarray(n));n+=e.length+2;const r=Z.readMPI(t.subarray(n));n+=r.length+2;const i=Z.readMPI(t.subarray(n));n+=i.length+2;const a=Z.readMPI(t.subarray(n));return n+=a.length+2,{read:n,privateParams:{d:e,p:r,q:i,u:a}}}case ae.publicKey.dsa:case ae.publicKey.elgamal:{const e=Z.readMPI(t.subarray(n));return n+=e.length+2,{read:n,privateParams:{x:e}}}case ae.publicKey.ecdsa:case ae.publicKey.ecdh:{const e=new Ei(r.oid);let i=Z.readMPI(t.subarray(n));return n+=i.length+2,i=Z.leftPad(i,e.payloadSize),{read:n,privateParams:{d:i}}}case ae.publicKey.eddsa:{const e=new Ei(r.oid);let i=Z.readMPI(t.subarray(n));return n+=i.length+2,i=Z.leftPad(i,e.payloadSize),{read:n,privateParams:{seed:i}}}default:throw new mi("Unknown public key encryption algorithm.")}},parseEncSessionKeyParams:function(e,t){let r=0;switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:return{c:Z.readMPI(t.subarray(r))};case ae.publicKey.elgamal:{const e=Z.readMPI(t.subarray(r));return r+=e.length+2,{c1:e,c2:Z.readMPI(t.subarray(r))}}case ae.publicKey.ecdh:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=new aa;return n.read(t.subarray(r)),{V:e,C:n}}default:throw new mi("Unknown public key encryption algorithm.")}},serializeParams:function(e,t){const r=Object.keys(t).map((e=>{const r=t[e];return Z.isUint8Array(r)?Z.uint8ArrayToMPI(r):r.write()}));return Z.concatUint8Array(r)},generateParams:function(e,t,r){switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:return na.rsa.generate(t,65537).then((({n:e,e:t,d:r,p:n,q:i,u:a})=>({privateParams:{d:r,p:n,q:i,u:a},publicParams:{n:e,e:t}})));case ae.publicKey.ecdsa:return na.elliptic.generate(r).then((({oid:e,Q:t,secret:r})=>({privateParams:{d:r},publicParams:{oid:new si(e),Q:t}})));case ae.publicKey.eddsa:return na.elliptic.generate(r).then((({oid:e,Q:t,secret:r})=>({privateParams:{seed:r},publicParams:{oid:new si(e),Q:t}})));case ae.publicKey.ecdh:return na.elliptic.generate(r).then((({oid:e,Q:t,secret:r,hash:n,cipher:i})=>({privateParams:{d:r},publicParams:{oid:new si(e),Q:t,kdfParams:new sa({hash:n,cipher:i})}})));case ae.publicKey.dsa:case ae.publicKey.elgamal:throw new Error("Unsupported algorithm for key generation.");default:throw new Error("Unknown public key algorithm.")}},validateParams:async function(e,t,r){if(!t||!r)throw new Error("Missing key parameters");switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:{const{n:e,e:n}=t,{d:i,p:a,q:s,u:o}=r;return na.rsa.validateParams(e,n,i,a,s,o)}case ae.publicKey.dsa:{const{p:e,q:n,g:i,y:a}=t,{x:s}=r;return na.dsa.validateParams(e,n,i,a,s)}case ae.publicKey.elgamal:{const{p:e,g:n,y:i}=t,{x:a}=r;return na.elgamal.validateParams(e,n,i,a)}case ae.publicKey.ecdsa:case ae.publicKey.ecdh:{const n=na.elliptic[ae.read(ae.publicKey,e)],{oid:i,Q:a}=t,{d:s}=r;return n.validateParams(i,a,s)}case ae.publicKey.eddsa:{const{oid:e,Q:n}=t,{seed:i}=r;return na.elliptic.eddsa.validateParams(e,n,i)}default:throw new Error("Unknown public key algorithm.")}},getPrefixRandom:async function(e){const{blockSize:t}=Qr(e),r=await zn(t),n=new Uint8Array([r[r.length-2],r[r.length-1]]);return Z.concat([r,n])},generateSessionKey:function(e){const{keySize:t}=Qr(e);return zn(t)},getAEADMode:function(e){const t=ae.read(ae.aead,e);return Ln[t]},getCipher:Qr});const ua={cipher:Ze,hash:Yr,mode:Ln,publicKey:na,signature:ia,random:Hn,pkcs1:Xn,pkcs5:$i,aesKW:Wi};Object.assign(ua,ca);var la="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function ha(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)}const da={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(let a=0;a=0;)e[t]=0}const xa=0,Pa=1,Ca=2,Ta=29,Ma=256,Ia=Ma+1+Ta,Da=30,Ba=19,Ua=2*Ia+1,Ra=15,Ka=16,Oa=7,Na=256,La=16,qa=17,Fa=18,za=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ja=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ha=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Wa=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Va=new Array(2*(Ia+2));Ea(Va);const Ga=new Array(2*Da);Ea(Ga);const $a=new Array(512);Ea($a);const Ja=new Array(256);Ea(Ja);const Za=new Array(Ta);Ea(Za);const Ya=new Array(Da);function Xa(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}let Qa,es,ts;function rs(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function ns(e){return e<256?$a[e]:$a[256+(e>>>7)]}function is(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function as(e,t,r){e.bi_valid>Ka-r?(e.bi_buf|=t<>Ka-e.bi_valid,e.bi_valid+=r-Ka):(e.bi_buf|=t<>>=1,r<<=1}while(--t>0);return r>>>1}function cs(e,t,r){const n=new Array(Ra+1);let i,a,s=0;for(i=1;i<=Ra;i++)n[i]=s=s+r[i-1]<<1;for(a=0;a<=t;a++){const t=e[2*a+1];0!==t&&(e[2*a]=os(n[t]++,t))}}function us(e){let t;for(t=0;t8?is(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function hs(e,t,r,n){const i=2*t,a=2*r;return e[i]>1;s>=1;s--)ds(e,r,s);c=a;do{s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ds(e,r,1),o=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=o,r[2*c]=r[2*s]+r[2*o],e.depth[c]=(e.depth[s]>=e.depth[o]?e.depth[s]:e.depth[o])+1,r[2*s+1]=r[2*o+1]=c,e.heap[1]=c++,ds(e,r,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){const r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,a=t.stat_desc.has_stree,s=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,c=t.stat_desc.max_length;let u,l,h,d,f,p,y=0;for(d=0;d<=Ra;d++)e.bl_count[d]=0;for(r[2*e.heap[e.heap_max]+1]=0,u=e.heap_max+1;uc&&(d=c,y++),r[2*l+1]=d,l>n||(e.bl_count[d]++,f=0,l>=o&&(f=s[l-o]),p=r[2*l],e.opt_len+=p*(d+f),a&&(e.static_len+=p*(i[2*l+1]+f)));if(0!==y){do{for(d=c-1;0===e.bl_count[d];)d--;e.bl_count[d]--,e.bl_count[d+1]+=2,e.bl_count[c]--,y-=2}while(y>0);for(d=c;0!==d;d--)for(l=e.bl_count[d];0!==l;)h=e.heap[--u],h>n||(r[2*h+1]!==d&&(e.opt_len+=(d-r[2*h+1])*r[2*h],r[2*h+1]=d),l--)}}(e,t),cs(r,u,e.bl_count)}function ys(e,t,r){let n,i,a=-1,s=t[1],o=0,c=7,u=4;for(0===s&&(c=138,u=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=s,s=t[2*(n+1)+1],++o>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(Ja[r]+Ma+1)]++,e.dyn_dtree[2*ns(t)]++),e.last_lit===e.lit_bufsize-1}function vs(e,t,r,n){let i=65535&e|0,a=e>>>16&65535|0,s=0;for(;0!==r;){s=r>2e3?2e3:r,r-=s;do{i=i+t[n++]|0,a=a+i|0}while(--s);i%=65521,a%=65521}return i|a<<16|0}const ks=function(){let e;const t=[];for(let r=0;r<256;r++){e=r;for(let t=0;t<8;t++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();function As(e,t,r,n){const i=ks,a=n+r;e^=-1;for(let r=n;r>>8^i[255&(e^t[r])];return-1^e}var _s={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};const Ss=3,Es=258,xs=Es+Ss+1,Ps=103,Cs=113,Ts=666;function Ms(e,t){return e.msg=_s[t],t}function Is(e){return(e<<1)-(e>4?9:0)}function Ds(e){let t=e.length;for(;--t>=0;)e[t]=0}function Bs(e){const t=e.state;let r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(ba(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function Us(e,t){(function(e,t,r,n){let i,a,s=0;e.level>0?(e.strm.data_type===Sa&&(e.strm.data_type=function(e){let t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return Aa;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return _a;for(t=32;t=3&&0===e.bl_tree[2*Wa[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a<=i&&(i=a)):i=a=r+5,r+4<=i&&-1!==t?bs(e,t,r,n):e.strategy===ka||a===i?(as(e,(Pa<<1)+(n?1:0),3),fs(e,Va,Ga)):(as(e,(Ca<<1)+(n?1:0),3),function(e,t,r,n){let i;for(as(e,t-257,5),as(e,r-1,5),as(e,n-4,4),i=0;i=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Bs(e.strm)}function Rs(e,t){e.pending_buf[e.pending++]=t}function Ks(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function Os(e,t,r,n){let i=e.avail_in;return i>n&&(i=n),0===i?0:(e.avail_in-=i,ba(t,e.input,e.next_in,i,r),1===e.state.wrap?e.adler=vs(e.adler,t,i,r):2===e.state.wrap&&(e.adler=As(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)}function Ns(e,t){let r,n,i=e.max_chain_length,a=e.strstart,s=e.prev_length,o=e.nice_match;const c=e.strstart>e.w_size-xs?e.strstart-(e.w_size-xs):0,u=e.window,l=e.w_mask,h=e.prev,d=e.strstart+Es;let f=u[a+s-1],p=u[a+s];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(r=t,u[r+s]===p&&u[r+s-1]===f&&u[r]===u[a]&&u[++r]===u[a+1]){a+=2,r++;do{}while(u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&as){if(e.match_start=t,s=n,n>=o)break;f=u[a+s-1],p=u[a+s]}}}while((t=h[t&l])>c&&0!=--i);return s<=e.lookahead?s:e.lookahead}function Ls(e){const t=e.w_size;let r,n,i,a,s;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-xs)){ba(e.window,e.window,t,t,0),e.match_start-=t,e.strstart-=t,e.block_start-=t,n=e.hash_size,r=n;do{i=e.head[--r],e.head[r]=i>=t?i-t:0}while(--n);n=t,r=n;do{i=e.prev[--r],e.prev[r]=i>=t?i-t:0}while(--n);a+=t}if(0===e.strm.avail_in)break;if(n=Os(e.strm,e.window,e.strstart+e.lookahead,a),e.lookahead+=n,e.lookahead+e.insert>=Ss)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<=Ss&&(e.ins_h=(e.ins_h<=Ss)if(n=ws(e,e.strstart-e.match_start,e.match_length-Ss),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=Ss){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=Ss&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=Ss-1)),e.prev_length>=Ss&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-Ss,n=ws(e,e.strstart-1-e.prev_match,e.prev_length-Ss),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(Ls(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;const n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,Us(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-xs&&(Us(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Us(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(Us(e,!1),e.strm.avail_out),1)})),new zs(4,4,8,4,qs),new zs(4,5,16,8,qs),new zs(4,6,32,32,qs),new zs(4,4,16,16,Fs),new zs(8,16,32,32,Fs),new zs(8,16,128,128,Fs),new zs(8,32,128,256,Fs),new zs(32,128,258,1024,Fs),new zs(32,258,258,4096,Fs)];class Hs{constructor(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new ya(1146),this.dyn_dtree=new ya(122),this.bl_tree=new ya(78),Ds(this.dyn_ltree),Ds(this.dyn_dtree),Ds(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new ya(16),this.heap=new ya(573),Ds(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ya(573),Ds(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}}function Ws(e){const t=function(e){let t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=Sa,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:Cs,e.adler=2===t.wrap?0:1,t.last_flush=0,function(e){ms||(function(){let e,t,r,n,i;const a=new Array(Ra+1);for(r=0,n=0;n>=7;n5||t<0)return e?Ms(e,va):va;if(n=e.state,!e.output||!e.input&&0!==e.avail_in||n.status===Ts&&4!==t)return Ms(e,0===e.avail_out?-5:va);if(n.strm=e,r=n.last_flush,n.last_flush=t,42===n.status)if(2===n.wrap)e.adler=0,Rs(n,31),Rs(n,139),Rs(n,8),n.gzhead?(Rs(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),Rs(n,255&n.gzhead.time),Rs(n,n.gzhead.time>>8&255),Rs(n,n.gzhead.time>>16&255),Rs(n,n.gzhead.time>>24&255),Rs(n,9===n.level?2:n.strategy>=2||n.level<2?4:0),Rs(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(Rs(n,255&n.gzhead.extra.length),Rs(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=As(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(Rs(n,0),Rs(n,0),Rs(n,0),Rs(n,0),Rs(n,0),Rs(n,9===n.level?2:n.strategy>=2||n.level<2?4:0),Rs(n,3),n.status=Cs);else{let t=8+(n.w_bits-8<<4)<<8,r=-1;r=n.strategy>=2||n.level<2?0:n.level<6?1:6===n.level?2:3,t|=r<<6,0!==n.strstart&&(t|=32),t+=31-t%31,n.status=Cs,Ks(n,t),0!==n.strstart&&(Ks(n,e.adler>>>16),Ks(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),Bs(e),i=n.pending,n.pending!==n.pending_buf_size));)Rs(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),Bs(e),i=n.pending,n.pending===n.pending_buf_size)){a=1;break}a=n.gzindexi&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),0===a&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),Bs(e),i=n.pending,n.pending===n.pending_buf_size)){a=1;break}a=n.gzindexi&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),0===a&&(n.status=Ps)}else n.status=Ps;if(n.status===Ps&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&Bs(e),n.pending+2<=n.pending_buf_size&&(Rs(n,255&e.adler),Rs(n,e.adler>>8&255),e.adler=0,n.status=Cs)):n.status=Cs),0!==n.pending){if(Bs(e),0===e.avail_out)return n.last_flush=-1,wa}else if(0===e.avail_in&&Is(t)<=Is(r)&&4!==t)return Ms(e,-5);if(n.status===Ts&&0!==e.avail_in)return Ms(e,-5);if(0!==e.avail_in||0!==n.lookahead||0!==t&&n.status!==Ts){var s=2===n.strategy?function(e,t){let r;for(;;){if(0===e.lookahead&&(Ls(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,r=ws(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Us(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Us(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Us(e,!1),0===e.strm.avail_out)?1:2}(n,t):3===n.strategy?function(e,t){let r,n,i,a;const s=e.window;for(;;){if(e.lookahead<=Es){if(Ls(e),e.lookahead<=Es&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=Ss&&e.strstart>0&&(i=e.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){a=e.strstart+Es;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=Ss?(r=ws(e,1,e.match_length-Ss),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=ws(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Us(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Us(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Us(e,!1),0===e.strm.avail_out)?1:2}(n,t):js[n.level].func(n,t);if(3!==s&&4!==s||(n.status=Ts),1===s||3===s)return 0===e.avail_out&&(n.last_flush=-1),wa;if(2===s&&(1===t?function(e){as(e,Pa<<1,3),ss(e,Na,Va),function(e){16===e.bi_valid?(is(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}(n):5!==t&&(bs(n,0,0,!1),3===t&&(Ds(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),Bs(e),0===e.avail_out))return n.last_flush=-1,wa}return 4!==t?wa:n.wrap<=0?1:(2===n.wrap?(Rs(n,255&e.adler),Rs(n,e.adler>>8&255),Rs(n,e.adler>>16&255),Rs(n,e.adler>>24&255),Rs(n,255&e.total_in),Rs(n,e.total_in>>8&255),Rs(n,e.total_in>>16&255),Rs(n,e.total_in>>24&255)):(Ks(n,e.adler>>>16),Ks(n,65535&e.adler)),Bs(e),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?wa:1)}try{String.fromCharCode.apply(null,[0])}catch(e){}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){}const Gs=new pa(256);for(let e=0;e<256;e++)Gs[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;function $s(e){let t,r,n,i,a=0;const s=e.length;for(n=0;n>>6,o[i++]=128|63&t):t<65536?(o[i++]=224|t>>>12,o[i++]=128|t>>>6&63,o[i++]=128|63&t):(o[i++]=240|t>>>18,o[i++]=128|t>>>12&63,o[i++]=128|t>>>6&63,o[i++]=128|63&t);return o}Gs[254]=Gs[254]=1;class Js{constructor(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}}class Zs{constructor(e){this.options={level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,...e||{}};const t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Js,this.strm.avail_out=0;var r,n,i=function(e,t,r,n,i,a){if(!e)return va;let s=1;if(-1===t&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>9||8!==r||n<8||n>15||t<0||t>9||a<0||a>ka)return Ms(e,va);8===n&&(n=9);const o=new Hs;return e.state=o,o.strm=e,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<=r.w_size&&(0===a&&(Ds(r.head),r.strstart=0,r.block_start=0,r.insert=0),u=new pa(r.w_size),ba(u,t,l-r.w_size,r.w_size,0),t=u,l=r.w_size),s=e.avail_in,o=e.next_in,c=e.input,e.avail_in=l,e.next_in=0,e.input=t,Ls(r);r.lookahead>=Ss;){n=r.strstart,i=r.lookahead-(Ss-1);do{r.ins_h=(r.ins_h<0||0===r.avail_out)&&1!==i);return 4===a?(i=function(e){let t;return e&&e.state?(t=e.state.status,42!==t&&69!==t&&73!==t&&91!==t&&t!==Ps&&t!==Cs&&t!==Ts?Ms(e,va):(e.state=null,t===Cs?Ms(e,-3):wa)):va}(this.strm),this.onEnd(i),this.ended=!0,i===wa):2!==a||(this.onEnd(wa),r.avail_out=0,!0)}onData(e){this.chunks.push(e)}onEnd(e){e===wa&&(this.result=ma(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg}}const Ys=30,Xs=12;function Qs(e,t){let r,n,i,a,s,o,c,u,l,h;const d=e.state;r=e.next_in;const f=e.input,p=r+(e.avail_in-5);n=e.next_out;const y=e.output,g=n-(t-e.avail_out),m=n+(e.avail_out-257),b=d.dmax,w=d.wsize,v=d.whave,k=d.wnext,A=d.window;i=d.hold,a=d.bits;const _=d.lencode,S=d.distcode,E=(1<>>24,i>>>=o,a-=o,o=s>>>16&255,0===o)y[n++]=65535&s;else{if(!(16&o)){if(0==(64&o)){s=_[(65535&s)+(i&(1<>>=o,a-=o),a<15&&(i+=f[r++]<>>24,i>>>=o,a-=o,o=s>>>16&255,!(16&o)){if(0==(64&o)){s=S[(65535&s)+(i&(1<b){e.msg="invalid distance too far back",d.mode=Ys;break e}if(i>>>=o,a-=o,o=n-g,u>o){if(o=u-o,o>v&&d.sane){e.msg="invalid distance too far back",d.mode=Ys;break e}if(l=0,h=A,0===k){if(l+=w-o,o2;)y[n++]=h[l++],y[n++]=h[l++],y[n++]=h[l++],c-=3;c&&(y[n++]=h[l++],c>1&&(y[n++]=h[l++]))}else{l=n-u;do{y[n++]=y[l++],y[n++]=y[l++],y[n++]=y[l++],c-=3}while(c>2);c&&(y[n++]=y[l++],c>1&&(y[n++]=y[l++]))}break}}break}}while(r>3,r-=c,a-=c<<3,i&=(1<=1&&0===x[m];m--);if(b>m&&(b=m),0===m)return i[a++]=20971520,i[a++]=20971520,o.bits=1,0;for(g=1;g0&&(e===no||1!==m))return-1;for(P[1]=0,p=1;pto||e===ao&&A>ro)return 1;for(;;){C=p-v,s[y]f?(T=I[D+s[y]],M=S[E+s[y]]):(T=96,M=0),u=1<>v)+l]=C<<24|T<<16|M|0}while(0!==l);for(u=1<>=1;if(0!==u?(_&=u-1,_+=u):_=0,y++,0==--x[p]){if(p===m)break;p=t[r+s[y]]}if(p>b&&(_&B)!==h){for(0===v&&(v=b),d+=g,w=p-v,k=1<to||e===ao&&A>ro)return 1;h=_&B,i[h]=b<<24|w<<16|d-a|0}}return 0!==_&&(i[d+_]=p-v<<24|64<<16|0),o.bits=b,0}const ho=1,fo=2,po=1,yo=12,go=30,mo=852,bo=592;function wo(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}class vo{constructor(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new ya(320),this.work=new ya(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}}function ko(e,t){let r,n;return e?(n=new vo,e.state=n,n.window=null,r=function(e,t){let r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?va:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,function(e){let t;return e&&e.state?(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,function(e){let t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=po,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new ga(mo),t.distcode=t.distdyn=new ga(bo),t.sane=1,t.back=-1,wa):va}(e)):va}(e))):va}(e,t),r!==wa&&(e.state=null),r):va}let Ao,_o,So=!0;function Eo(e){if(So){let t;for(Ao=new ga(512),_o=new ga(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(lo(ho,e.lens,0,288,Ao,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;lo(fo,e.lens,0,32,_o,0,e.work,{bits:5}),So=!1}e.lencode=Ao,e.lenbits=9,e.distcode=_o,e.distbits=5}function xo(e,t,r,n){let i;const a=e.state;return null===a.window&&(a.wsize=1<=a.wsize?(ba(a.window,t,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i=a.wsize-a.wnext,i>n&&(i=n),ba(a.window,t,r-n,i,a.wnext),(n-=i)?(ba(a.window,t,r-n,n,0),a.wnext=n,a.whave=a.wsize):(a.wnext+=i,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=As(r.check,P,2,0),u=0,l=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg="incorrect header check",r.mode=go;break}if(8!=(15&u)){e.msg="unknown compression method",r.mode=go;break}if(u>>>=4,l-=4,A=8+(15&u),0===r.wbits)r.wbits=A;else if(A>r.wbits){e.msg="invalid window size",r.mode=go;break}r.dmax=1<>8&1),512&r.flags&&(P[0]=255&u,P[1]=u>>>8&255,r.check=As(r.check,P,2,0)),u=0,l=0,r.mode=3;case 3:for(;l<32;){if(0===o)break e;o--,u+=n[a++]<>>8&255,P[2]=u>>>16&255,P[3]=u>>>24&255,r.check=As(r.check,P,4,0)),u=0,l=0,r.mode=4;case 4:for(;l<16;){if(0===o)break e;o--,u+=n[a++]<>8),512&r.flags&&(P[0]=255&u,P[1]=u>>>8&255,r.check=As(r.check,P,2,0)),u=0,l=0,r.mode=5;case 5:if(1024&r.flags){for(;l<16;){if(0===o)break e;o--,u+=n[a++]<>>8&255,r.check=As(r.check,P,2,0)),u=0,l=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(f=r.length,f>o&&(f=o),f&&(r.head&&(A=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),ba(r.head.extra,n,a,f,A)),512&r.flags&&(r.check=As(r.check,n,f,a)),o-=f,a+=f,r.length-=f),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===o)break e;f=0;do{A=n[a+f++],r.head&&A&&r.length<65536&&(r.head.name+=String.fromCharCode(A))}while(A&&f>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=yo;break;case 10:for(;l<32;){if(0===o)break e;o--,u+=n[a++]<>>=7&l,l-=7&l,r.mode=27;break}for(;l<3;){if(0===o)break e;o--,u+=n[a++]<>>=1,l-=1,3&u){case 0:r.mode=14;break;case 1:if(Eo(r),r.mode=20,6===t){u>>>=2,l-=2;break e}break;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=go}u>>>=2,l-=2;break;case 14:for(u>>>=7&l,l-=7&l;l<32;){if(0===o)break e;o--,u+=n[a++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=go;break}if(r.length=65535&u,u=0,l=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(f=r.length,f){if(f>o&&(f=o),f>c&&(f=c),0===f)break e;ba(i,n,a,f,s),o-=f,a+=f,c-=f,s+=f,r.length-=f;break}r.mode=yo;break;case 17:for(;l<14;){if(0===o)break e;o--,u+=n[a++]<>>=5,l-=5,r.ndist=1+(31&u),u>>>=5,l-=5,r.ncode=4+(15&u),u>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=go;break}r.have=0,r.mode=18;case 18:for(;r.have>>=3,l-=3}for(;r.have<19;)r.lens[C[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},_=lo(0,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,_){e.msg="invalid code lengths set",r.mode=go;break}r.have=0,r.mode=19;case 19:for(;r.have>>24,m=x>>>16&255,b=65535&x,!(g<=l);){if(0===o)break e;o--,u+=n[a++]<>>=g,l-=g,r.lens[r.have++]=b;else{if(16===b){for(E=g+2;l>>=g,l-=g,0===r.have){e.msg="invalid bit length repeat",r.mode=go;break}A=r.lens[r.have-1],f=3+(3&u),u>>>=2,l-=2}else if(17===b){for(E=g+3;l>>=g,l-=g,A=0,f=3+(7&u),u>>>=3,l-=3}else{for(E=g+7;l>>=g,l-=g,A=0,f=11+(127&u),u>>>=7,l-=7}if(r.have+f>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=go;break}for(;f--;)r.lens[r.have++]=A}}if(r.mode===go)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=go;break}if(r.lenbits=9,S={bits:r.lenbits},_=lo(ho,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,_){e.msg="invalid literal/lengths set",r.mode=go;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},_=lo(fo,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,_){e.msg="invalid distances set",r.mode=go;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(o>=6&&c>=258){e.next_out=s,e.avail_out=c,e.next_in=a,e.avail_in=o,r.hold=u,r.bits=l,Qs(e,d),s=e.next_out,i=e.output,c=e.avail_out,a=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,r.mode===yo&&(r.back=-1);break}for(r.back=0;x=r.lencode[u&(1<>>24,m=x>>>16&255,b=65535&x,!(g<=l);){if(0===o)break e;o--,u+=n[a++]<>w)],g=x>>>24,m=x>>>16&255,b=65535&x,!(w+g<=l);){if(0===o)break e;o--,u+=n[a++]<>>=w,l-=w,r.back+=w}if(u>>>=g,l-=g,r.back+=g,r.length=b,0===m){r.mode=26;break}if(32&m){r.back=-1,r.mode=yo;break}if(64&m){e.msg="invalid literal/length code",r.mode=go;break}r.extra=15&m,r.mode=22;case 22:if(r.extra){for(E=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;x=r.distcode[u&(1<>>24,m=x>>>16&255,b=65535&x,!(g<=l);){if(0===o)break e;o--,u+=n[a++]<>w)],g=x>>>24,m=x>>>16&255,b=65535&x,!(w+g<=l);){if(0===o)break e;o--,u+=n[a++]<>>=w,l-=w,r.back+=w}if(u>>>=g,l-=g,r.back+=g,64&m){e.msg="invalid distance code",r.mode=go;break}r.offset=b,r.extra=15&m,r.mode=24;case 24:if(r.extra){for(E=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=go;break}r.mode=25;case 25:if(0===c)break e;if(f=d-c,r.offset>f){if(f=r.offset-f,f>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=go;break}f>r.wnext?(f-=r.wnext,p=r.wsize-f):p=r.wnext-f,f>r.length&&(f=r.length),y=r.window}else y=i,p=s-r.offset,f=r.length;f>c&&(f=c),c-=f,r.length-=f;do{i[s++]=y[p++]}while(--f);0===r.length&&(r.mode=21);break;case 26:if(0===c)break e;i[s++]=r.length,c--,r.mode=21;break;case 27:if(r.wrap){for(;l<32;){if(0===o)break e;o--,u|=n[a++]<=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Js,this.strm.avail_out=0;let r=ko(this.strm,t.windowBits);if(r!==wa)throw new Error(_s[r]);if(this.header=new To,function(e,t){let r;e&&e.state&&(r=e.state,0==(2&r.wrap)||(r.head=t,t.done=!1))}(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=$s(t.dictionary):t.dictionary instanceof ArrayBuffer&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Co(this.strm,t.dictionary),r!==wa)))throw new Error(_s[r])}push(e,t){const{strm:r,options:{chunkSize:n,dictionary:i}}=this;let a,s,o=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?4:0,"string"==typeof e?r.input=function(e){const t=new pa(e.length);for(let r=0,n=t.length;r0||0===r.avail_out)&&1!==a);return 1===a&&(s=4),4===s?(a=function(e){if(!e||!e.state)return va;const t=e.state;return t.window&&(t.window=null),e.state=null,wa}(this.strm),this.onEnd(a),this.ended=!0,a===wa):2!==s||(this.onEnd(wa),r.avail_out=0,!0)}onData(e){this.chunks.push(e)}onEnd(e){e===wa&&(this.result=ma(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg}}var Io=[0,1,3,7,15,31,63,127,255],Do=function(e){this.stream=e,this.bitOffset=0,this.curByte=0,this.hasByte=!1};Do.prototype._ensureByte=function(){this.hasByte||(this.curByte=this.stream.readByte(),this.hasByte=!0)},Do.prototype.read=function(e){for(var t=0;e>0;){this._ensureByte();var r=8-this.bitOffset;if(e>=r)t<<=r,t|=Io[r]&this.curByte,this.hasByte=!1,this.bitOffset=0,e-=r;else{t<<=e;var n=r-e;t|=(this.curByte&Io[e]<>n,this.bitOffset+=e,e=0}}return t},Do.prototype.seek=function(e){var t=e%8,r=(e-t)/8;this.bitOffset=t,this.stream.seek(r),this.hasByte=!1},Do.prototype.pi=function(){var e,t=new Uint8Array(6);for(e=0;e("00"+e.toString(16)).slice(-2))).join("")}(t)};var Bo=Do,Uo=function(){};Uo.prototype.readByte=function(){throw new Error("abstract method readByte() not implemented")},Uo.prototype.read=function(e,t,r){for(var n=0;n>>0},this.updateCRC=function(t){e=e<<8^Ro[255&(e>>>24^t)]},this.updateCRCRun=function(t,r){for(;r-- >0;)e=e<<8^Ro[255&(e>>>24^t)]}}),No=function(e,t){var r,n=e[t];for(r=t;r>0;r--)e[r]=e[r-1];return e[0]=n,n},Lo=-2,qo=-3,Fo=-4,zo=-5,jo=-6,Ho=-7,Wo={"-1":"Bad file checksum"};Wo[Lo]="Not bzip data",Wo[qo]="Unexpected input EOF",Wo[Fo]="Unexpected output EOF",Wo[zo]="Data error",Wo[jo]="Out of memory",Wo[Ho]="Obsolete (pre 0.9.5) bzip format not supported.";var Vo=function(e,t){var r=Wo[e]||"unknown error";t&&(r+=": "+t);var n=new TypeError(r);throw n.errorCode=e,n},Go=function(e,t){this.writePos=this.writeCurrent=this.writeCount=0,this._start_bunzip(e,t)};Go.prototype._init_block=function(){return this._get_next_block()?(this.blockCRC=new Oo,!0):(this.writeCount=-1,!1)},Go.prototype._start_bunzip=function(e,t){var r=new Uint8Array(4);4===e.read(r,0,4)&&"BZh"===String.fromCharCode(r[0],r[1],r[2])||Vo(Lo,"bad magic");var n=r[3]-48;(n<1||n>9)&&Vo(Lo,"level out of range"),this.reader=new Bo(e),this.dbufSize=1e5*n,this.nextoutput=0,this.outputStream=t,this.streamCRC=0},Go.prototype._get_next_block=function(){var e,t,r,n=this.reader,i=n.pi();if("177245385090"===i)return!1;"314159265359"!==i&&Vo(Lo),this.targetBlockCRC=n.read(32)>>>0,this.streamCRC=(this.targetBlockCRC^(this.streamCRC<<1|this.streamCRC>>>31))>>>0,n.read(1)&&Vo(Ho);var a=n.read(24);a>this.dbufSize&&Vo(zo,"initial position out of bounds");var s=n.read(16),o=new Uint8Array(256),c=0;for(e=0;e<16;e++)if(s&1<<15-e){var u=16*e;for(r=n.read(16),t=0;t<16;t++)r&1<<15-t&&(o[c++]=u+t)}var l=n.read(3);(l<2||l>6)&&Vo(zo);var h=n.read(15);0===h&&Vo(zo);var d=new Uint8Array(256);for(e=0;e=l&&Vo(zo);f[e]=No(d,t)}var p,y=c+2,g=[];for(t=0;t20)&&Vo(zo),n.read(1);)n.read(1)?s--:s++;w[e]=s}for(m=b=w[0],e=1;eb?b=w[e]:w[e]=h&&Vo(zo),p=g[f[x++]]),e=p.minLen,t=n.read(e);e>p.maxLen&&Vo(zo),!(t<=p.limit[e]);e++)t=t<<1|n.read(1);((t-=p.base[e])<0||t>=258)&&Vo(zo);var C=p.permute[t];if(0!==C&&1!==C){if(S)for(S=0,E+s>this.dbufSize&&Vo(zo),A[_=o[d[0]]]+=s;s--;)P[E++]=_;if(C>c)break;E>=this.dbufSize&&Vo(zo),A[_=o[_=No(d,e=C-1)]]++,P[E++]=_}else S||(S=1,s=0),s+=0===C?S:2*S,S<<=1}for((a<0||a>=E)&&Vo(zo),t=0,e=0;e<256;e++)r=t+A[e],A[e]=t,t=r;for(e=0;e>=8,I=-1),this.writePos=T,this.writeCurrent=M,this.writeCount=E,this.writeRun=I,!0},Go.prototype._read_bunzip=function(e,t){var r,n,i;if(this.writeCount<0)return 0;var a=this.dbuf,s=this.writePos,o=this.writeCurrent,c=this.writeCount;this.outputsize;for(var u=this.writeRun;c;){for(c--,n=o,o=255&(s=a[s]),s>>=8,3==u++?(r=o,i=n,o=-1):(r=1,i=o),this.blockCRC.updateCRCRun(i,r);r--;)this.outputStream.writeByte(i),this.nextoutput++;o!=n&&(u=0)}return this.writeCount=c,this.blockCRC.getCRC()!==this.targetBlockCRC&&Vo(zo,"Bad block CRC (got "+this.blockCRC.getCRC().toString(16)+" expected "+this.targetBlockCRC.toString(16)+")"),this.nextoutput};var $o=function(e,t,r){for(var n=function(e){if("readByte"in e)return e;var t=new Ko;return t.pos=0,t.readByte=function(){return e[this.pos++]},t.seek=function(e){this.pos=e},t.eof=function(){return this.pos>=e.length},t}(e),i=function(e){var t=new Ko,r=!0;if(e)if("number"==typeof e)t.buffer=new Uint8Array(e),r=!1;else{if("writeByte"in e)return e;t.buffer=e,r=!1}else t.buffer=new Uint8Array(16384);return t.pos=0,t.writeByte=function(e){if(r&&this.pos>=this.buffer.length){var t=new Uint8Array(2*this.buffer.length);t.set(this.buffer),this.buffer=t}this.buffer[this.pos++]=e},t.getBuffer=function(){if(this.pos!==this.buffer.length){if(!r)throw new TypeError("outputsize does not match decoded input");var e=new Uint8Array(this.pos);e.set(this.buffer.subarray(0,this.pos)),this.buffer=e}return this.buffer},t._coerced=!0,t}(t),a=new Go(n,i);!("eof"in n)||!n.eof();)if(a._init_block())a._read_bunzip();else{var s=a.reader.read(32)>>>0;if(s!==a.streamCRC&&Vo(zo,"Bad stream CRC (got "+a.streamCRC.toString(16)+" expected "+s.toString(16)+")"),!r||!("eof"in n)||n.eof())break;a._start_bunzip(n,i)}if("getBuffer"in i)return i.getBuffer()};class Jo{static get tag(){return ae.packet.literalData}constructor(e=new Date){this.format=ae.literal.utf8,this.date=Z.normalizeDate(e),this.text=null,this.data=null,this.filename=""}setText(e,t=ae.literal.utf8){this.format=t,this.text=e,this.data=null}getText(e=!1){return(null===this.text||Z.isStream(this.text))&&(this.text=Z.decodeUTF8(Z.nativeEOL(this.getBytes(e)))),this.text}setBytes(e,t){this.format=t,this.data=e,this.text=null}getBytes(e=!1){return null===this.data&&(this.data=Z.canonicalizeEOL(Z.encodeUTF8(this.text))),e?z(this.data):this.data}setFilename(e){this.filename=e}getFilename(){return this.filename}async read(e){await q(e,(async e=>{const t=await e.readByte(),r=await e.readByte();this.filename=Z.decodeUTF8(await e.readBytes(r)),this.date=Z.readDate(await e.readBytes(4));let n=e.remainder();u(n)&&(n=await W(n)),this.setBytes(n,t)}))}writeHeader(){const e=Z.encodeUTF8(this.filename),t=new Uint8Array([e.length]),r=new Uint8Array([this.format]),n=Z.writeDate(this.date);return Z.concatUint8Array([r,t,e,n])}write(){const e=this.writeHeader(),t=this.getBytes();return Z.concat([e,t])}}const Zo=Symbol("verified"),Yo=new Set([ae.signatureSubpacket.issuer,ae.signatureSubpacket.issuerFingerprint,ae.signatureSubpacket.embeddedSignature]);class Xo{static get tag(){return ae.packet.signature}constructor(){this.version=null,this.signatureType=null,this.hashAlgorithm=null,this.publicKeyAlgorithm=null,this.signatureData=null,this.unhashedSubpackets=[],this.signedHashValue=null,this.created=null,this.signatureExpirationTime=null,this.signatureNeverExpires=!0,this.exportable=null,this.trustLevel=null,this.trustAmount=null,this.regularExpression=null,this.revocable=null,this.keyExpirationTime=null,this.keyNeverExpires=null,this.preferredSymmetricAlgorithms=null,this.revocationKeyClass=null,this.revocationKeyAlgorithm=null,this.revocationKeyFingerprint=null,this.issuerKeyID=new ge,this.rawNotations=[],this.notations={},this.preferredHashAlgorithms=null,this.preferredCompressionAlgorithms=null,this.keyServerPreferences=null,this.preferredKeyServer=null,this.isPrimaryUserID=null,this.policyURI=null,this.keyFlags=null,this.signersUserID=null,this.reasonForRevocationFlag=null,this.reasonForRevocationString=null,this.features=null,this.signatureTargetPublicKeyAlgorithm=null,this.signatureTargetHashAlgorithm=null,this.signatureTargetHash=null,this.embeddedSignature=null,this.issuerKeyVersion=null,this.issuerFingerprint=null,this.preferredAEADAlgorithms=null,this.revoked=null,this[Zo]=null}read(e){let t=0;if(this.version=e[t++],4!==this.version&&5!==this.version)throw new mi(`Version ${this.version} of the signature packet is unsupported.`);if(this.signatureType=e[t++],this.publicKeyAlgorithm=e[t++],this.hashAlgorithm=e[t++],t+=this.readSubPackets(e.subarray(t,e.length),!0),!this.created)throw new Error("Missing signature creation time subpacket.");this.signatureData=e.subarray(0,t),t+=this.readSubPackets(e.subarray(t,e.length),!1),this.signedHashValue=e.subarray(t,t+2),t+=2,this.params=ua.signature.parseSignatureParams(this.publicKeyAlgorithm,e.subarray(t,e.length))}writeParams(){return this.params instanceof Promise?G((async()=>ua.serializeParams(this.publicKeyAlgorithm,await this.params))):ua.serializeParams(this.publicKeyAlgorithm,this.params)}write(){const e=[];return e.push(this.signatureData),e.push(this.writeUnhashedSubPackets()),e.push(this.signedHashValue),e.push(this.writeParams()),Z.concat(e)}async sign(e,t,r=new Date,n=!1){5===e.version?this.version=5:this.version=4;const i=[new Uint8Array([this.version,this.signatureType,this.publicKeyAlgorithm,this.hashAlgorithm])];this.created=Z.normalizeDate(r),this.issuerKeyVersion=e.version,this.issuerFingerprint=e.getFingerprintBytes(),this.issuerKeyID=e.getKeyID(),i.push(this.writeHashedSubPackets()),this.unhashedSubpackets=[],this.signatureData=Z.concat(i);const a=this.toHash(this.signatureType,t,n),s=await this.hash(this.signatureType,t,a,n);this.signedHashValue=H(F(s),0,2);const o=async()=>ua.signature.sign(this.publicKeyAlgorithm,this.hashAlgorithm,e.publicParams,e.privateParams,a,await W(s));Z.isStream(s)?this.params=o():(this.params=await o(),this[Zo]=!0)}writeHashedSubPackets(){const e=ae.signatureSubpacket,t=[];let r;if(null===this.created)throw new Error("Missing signature creation time");t.push(Qo(e.signatureCreationTime,!0,Z.writeDate(this.created))),null!==this.signatureExpirationTime&&t.push(Qo(e.signatureExpirationTime,!0,Z.writeNumber(this.signatureExpirationTime,4))),null!==this.exportable&&t.push(Qo(e.exportableCertification,!0,new Uint8Array([this.exportable?1:0]))),null!==this.trustLevel&&(r=new Uint8Array([this.trustLevel,this.trustAmount]),t.push(Qo(e.trustSignature,!0,r))),null!==this.regularExpression&&t.push(Qo(e.regularExpression,!0,this.regularExpression)),null!==this.revocable&&t.push(Qo(e.revocable,!0,new Uint8Array([this.revocable?1:0]))),null!==this.keyExpirationTime&&t.push(Qo(e.keyExpirationTime,!0,Z.writeNumber(this.keyExpirationTime,4))),null!==this.preferredSymmetricAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredSymmetricAlgorithms)),t.push(Qo(e.preferredSymmetricAlgorithms,!1,r))),null!==this.revocationKeyClass&&(r=new Uint8Array([this.revocationKeyClass,this.revocationKeyAlgorithm]),r=Z.concat([r,this.revocationKeyFingerprint]),t.push(Qo(e.revocationKey,!1,r))),this.issuerKeyID.isNull()||5===this.issuerKeyVersion||t.push(Qo(e.issuer,!0,this.issuerKeyID.write())),this.rawNotations.forEach((({name:n,value:i,humanReadable:a,critical:s})=>{r=[new Uint8Array([a?128:0,0,0,0])];const o=Z.encodeUTF8(n);r.push(Z.writeNumber(o.length,2)),r.push(Z.writeNumber(i.length,2)),r.push(o),r.push(i),r=Z.concat(r),t.push(Qo(e.notationData,s,r))})),null!==this.preferredHashAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredHashAlgorithms)),t.push(Qo(e.preferredHashAlgorithms,!1,r))),null!==this.preferredCompressionAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredCompressionAlgorithms)),t.push(Qo(e.preferredCompressionAlgorithms,!1,r))),null!==this.keyServerPreferences&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.keyServerPreferences)),t.push(Qo(e.keyServerPreferences,!1,r))),null!==this.preferredKeyServer&&t.push(Qo(e.preferredKeyServer,!1,Z.encodeUTF8(this.preferredKeyServer))),null!==this.isPrimaryUserID&&t.push(Qo(e.primaryUserID,!1,new Uint8Array([this.isPrimaryUserID?1:0]))),null!==this.policyURI&&t.push(Qo(e.policyURI,!1,Z.encodeUTF8(this.policyURI))),null!==this.keyFlags&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.keyFlags)),t.push(Qo(e.keyFlags,!0,r))),null!==this.signersUserID&&t.push(Qo(e.signersUserID,!1,Z.encodeUTF8(this.signersUserID))),null!==this.reasonForRevocationFlag&&(r=Z.stringToUint8Array(String.fromCharCode(this.reasonForRevocationFlag)+this.reasonForRevocationString),t.push(Qo(e.reasonForRevocation,!0,r))),null!==this.features&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.features)),t.push(Qo(e.features,!1,r))),null!==this.signatureTargetPublicKeyAlgorithm&&(r=[new Uint8Array([this.signatureTargetPublicKeyAlgorithm,this.signatureTargetHashAlgorithm])],r.push(Z.stringToUint8Array(this.signatureTargetHash)),r=Z.concat(r),t.push(Qo(e.signatureTarget,!0,r))),null!==this.embeddedSignature&&t.push(Qo(e.embeddedSignature,!0,this.embeddedSignature.write())),null!==this.issuerFingerprint&&(r=[new Uint8Array([this.issuerKeyVersion]),this.issuerFingerprint],r=Z.concat(r),t.push(Qo(e.issuerFingerprint,5===this.version,r))),null!==this.preferredAEADAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredAEADAlgorithms)),t.push(Qo(e.preferredAEADAlgorithms,!1,r)));const n=Z.concat(t),i=Z.writeNumber(n.length,2);return Z.concat([i,n])}writeUnhashedSubPackets(){const e=[];this.unhashedSubpackets.forEach((t=>{e.push(hi(t.length)),e.push(t)}));const t=Z.concat(e),r=Z.writeNumber(t.length,2);return Z.concat([r,t])}readSubPacket(e,t=!0){let r=0;const n=!!(128&e[r]),i=127&e[r];if(t||(this.unhashedSubpackets.push(e.subarray(r,e.length)),Yo.has(i)))switch(r++,i){case ae.signatureSubpacket.signatureCreationTime:this.created=Z.readDate(e.subarray(r,e.length));break;case ae.signatureSubpacket.signatureExpirationTime:{const t=Z.readNumber(e.subarray(r,e.length));this.signatureNeverExpires=0===t,this.signatureExpirationTime=t;break}case ae.signatureSubpacket.exportableCertification:this.exportable=1===e[r++];break;case ae.signatureSubpacket.trustSignature:this.trustLevel=e[r++],this.trustAmount=e[r++];break;case ae.signatureSubpacket.regularExpression:this.regularExpression=e[r];break;case ae.signatureSubpacket.revocable:this.revocable=1===e[r++];break;case ae.signatureSubpacket.keyExpirationTime:{const t=Z.readNumber(e.subarray(r,e.length));this.keyExpirationTime=t,this.keyNeverExpires=0===t;break}case ae.signatureSubpacket.preferredSymmetricAlgorithms:this.preferredSymmetricAlgorithms=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.revocationKey:this.revocationKeyClass=e[r++],this.revocationKeyAlgorithm=e[r++],this.revocationKeyFingerprint=e.subarray(r,r+20);break;case ae.signatureSubpacket.issuer:this.issuerKeyID.read(e.subarray(r,e.length));break;case ae.signatureSubpacket.notationData:{const t=!!(128&e[r]);r+=4;const i=Z.readNumber(e.subarray(r,r+2));r+=2;const a=Z.readNumber(e.subarray(r,r+2));r+=2;const s=Z.decodeUTF8(e.subarray(r,r+i)),o=e.subarray(r+i,r+i+a);this.rawNotations.push({name:s,humanReadable:t,value:o,critical:n}),t&&(this.notations[s]=Z.decodeUTF8(o));break}case ae.signatureSubpacket.preferredHashAlgorithms:this.preferredHashAlgorithms=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.preferredCompressionAlgorithms:this.preferredCompressionAlgorithms=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.keyServerPreferences:this.keyServerPreferences=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.preferredKeyServer:this.preferredKeyServer=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.primaryUserID:this.isPrimaryUserID=0!==e[r++];break;case ae.signatureSubpacket.policyURI:this.policyURI=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.keyFlags:this.keyFlags=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.signersUserID:this.signersUserID=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.reasonForRevocation:this.reasonForRevocationFlag=e[r++],this.reasonForRevocationString=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.features:this.features=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.signatureTarget:{this.signatureTargetPublicKeyAlgorithm=e[r++],this.signatureTargetHashAlgorithm=e[r++];const t=ua.getHashByteLength(this.signatureTargetHashAlgorithm);this.signatureTargetHash=Z.uint8ArrayToString(e.subarray(r,r+t));break}case ae.signatureSubpacket.embeddedSignature:this.embeddedSignature=new Xo,this.embeddedSignature.read(e.subarray(r,e.length));break;case ae.signatureSubpacket.issuerFingerprint:this.issuerKeyVersion=e[r++],this.issuerFingerprint=e.subarray(r,e.length),5===this.issuerKeyVersion?this.issuerKeyID.read(this.issuerFingerprint):this.issuerKeyID.read(this.issuerFingerprint.subarray(-8));break;case ae.signatureSubpacket.preferredAEADAlgorithms:this.preferredAEADAlgorithms=[...e.subarray(r,e.length)];break;default:{const e=new Error(`Unknown signature subpacket type ${i}`);if(n)throw e;Z.printDebug(e)}}}readSubPackets(e,t=!0,r){const n=Z.readNumber(e.subarray(0,2));let i=2;for(;i<2+n;){const n=li(e.subarray(i,e.length));i+=n.offset,this.readSubPacket(e.subarray(i,i+n.len),t,r),i+=n.len}return i}toSign(e,t){const r=ae.signature;switch(e){case r.binary:return null!==t.text?Z.encodeUTF8(t.getText(!0)):t.getBytes(!0);case r.text:{const e=t.getBytes(!0);return Z.canonicalizeEOL(e)}case r.standalone:return new Uint8Array(0);case r.certGeneric:case r.certPersona:case r.certCasual:case r.certPositive:case r.certRevocation:{let e,n;if(t.userID)n=180,e=t.userID;else{if(!t.userAttribute)throw new Error("Either a userID or userAttribute packet needs to be supplied for certification.");n=209,e=t.userAttribute}const i=e.write();return Z.concat([this.toSign(r.key,t),new Uint8Array([n]),Z.writeNumber(i.length,4),i])}case r.subkeyBinding:case r.subkeyRevocation:case r.keyBinding:return Z.concat([this.toSign(r.key,t),this.toSign(r.key,{key:t.bind})]);case r.key:if(void 0===t.key)throw new Error("Key packet is required for this signature.");return t.key.writeForHash(this.version);case r.keyRevocation:return this.toSign(r.key,t);case r.timestamp:return new Uint8Array(0);case r.thirdParty:throw new Error("Not implemented");default:throw new Error("Unknown signature type.")}}calculateTrailer(e,t){let r=0;return N(F(this.signatureData),(e=>{r+=e.length}),(()=>{const n=[];return 5!==this.version||this.signatureType!==ae.signature.binary&&this.signatureType!==ae.signature.text||(t?n.push(new Uint8Array(6)):n.push(e.writeHeader())),n.push(new Uint8Array([this.version,255])),5===this.version&&n.push(new Uint8Array(4)),n.push(Z.writeNumber(r,4)),Z.concat(n)}))}toHash(e,t,r=!1){const n=this.toSign(e,t);return Z.concat([n,this.signatureData,this.calculateTrailer(t,r)])}async hash(e,t,r,n=!1){return r||(r=this.toHash(e,t,n)),ua.hash.digest(this.hashAlgorithm,r)}async verify(e,t,r,n=new Date,i=!1,a=se){if(!this.issuerKeyID.equals(e.getKeyID()))throw new Error("Signature was not issued by the given public key");if(this.publicKeyAlgorithm!==e.algorithm)throw new Error("Public key algorithm used to sign signature does not match issuer key algorithm.");const s=t===ae.signature.binary||t===ae.signature.text;if(!this[Zo]||s){let n,a;if(this.hashed?a=await this.hashed:(n=this.toHash(t,r,i),a=await this.hash(t,r,n)),a=await W(a),this.signedHashValue[0]!==a[0]||this.signedHashValue[1]!==a[1])throw new Error("Signed digest did not match");if(this.params=await this.params,this[Zo]=await ua.signature.verify(this.publicKeyAlgorithm,this.hashAlgorithm,this.params,e.publicParams,n,a),!this[Zo])throw new Error("Signature verification failed")}const o=Z.normalizeDate(n);if(o&&this.created>o)throw new Error("Signature creation time is in the future");if(o&&o>=this.getExpirationTime())throw new Error("Signature is expired");if(a.rejectHashAlgorithms.has(this.hashAlgorithm))throw new Error("Insecure hash algorithm: "+ae.read(ae.hash,this.hashAlgorithm).toUpperCase());if(a.rejectMessageHashAlgorithms.has(this.hashAlgorithm)&&[ae.signature.binary,ae.signature.text].includes(this.signatureType))throw new Error("Insecure message hash algorithm: "+ae.read(ae.hash,this.hashAlgorithm).toUpperCase());if(this.rawNotations.forEach((({name:e,critical:t})=>{if(t&&a.knownNotations.indexOf(e)<0)throw new Error(`Unknown critical notation: ${e}`)})),null!==this.revocationKeyClass)throw new Error("This key is intended to be revoked with an authorized key, which OpenPGP.js does not support.")}isExpired(e=new Date){const t=Z.normalizeDate(e);return null!==t&&!(this.created<=t&&tXo.prototype.calculateTrailer.apply(await this.correspondingSig,e)))}async verify(){const e=await this.correspondingSig;if(!e||e.constructor.tag!==ae.packet.signature)throw new Error("Corresponding signature packet missing");if(e.signatureType!==this.signatureType||e.hashAlgorithm!==this.hashAlgorithm||e.publicKeyAlgorithm!==this.publicKeyAlgorithm||!e.issuerKeyID.equals(this.issuerKeyID))throw new Error("Corresponding signature packet does not match one-pass signature packet");return e.hashed=this.hashed,e.verify.apply(e,arguments)}}function tc(e,t){if(!t[e]){let t;try{t=ae.read(ae.packet,e)}catch(t){throw new mi(`Unknown packet type with tag: ${e}`)}throw new Error(`Packet not allowed in this context: ${t}`)}return new t[e]}ec.prototype.hash=Xo.prototype.hash,ec.prototype.toHash=Xo.prototype.toHash,ec.prototype.toSign=Xo.prototype.toSign;class rc extends Array{static async fromBinary(e,t,r=se){const n=new rc;return await n.read(e,t,r),n}async read(e,t,r=se){r.additionalAllowedPackets.length&&(t={...t,...Z.constructAllowedPackets(r.additionalAllowedPackets)}),this.stream=L(e,(async(e,n)=>{const i=U(n);try{for(;;)if(await i.ready,await gi(e,(async e=>{try{if(e.tag===ae.packet.marker||e.tag===ae.packet.trust)return;const n=tc(e.tag,t);n.packets=new rc,n.fromStream=Z.isStream(e.packet),await n.read(e.packet,r),await i.write(n)}catch(t){const n=!r.ignoreUnsupportedPackets&&t instanceof mi,a=!(r.ignoreMalformedPackets||t instanceof mi);if(n||a||yi(e.tag))await i.abort(t);else{const t=new bi(e.tag,e.packet);await i.write(t)}Z.printDebugError(t)}})))return await i.ready,void await i.close()}catch(e){await i.abort(e)}}));const n=B(this.stream);for(;;){const{done:e,value:t}=await n.read();if(e?this.stream=null:this.push(t),e||yi(t.constructor.tag))break}n.releaseLock()}write(){const e=[];for(let t=0;t{if(t.push(e),i+=e.length,i>=a){const e=Math.min(Math.log(i)/Math.LN2|0,30),r=2**e,n=Z.concat([di(e)].concat(t));return t=[n.subarray(1+r)],i=t[0].length,n.subarray(0,1+r)}}),(()=>Z.concat([hi(i)].concat(t)))))}else{if(Z.isStream(n)){let t=0;e.push(N(F(n),(e=>{t+=e.length}),(()=>pi(r,t))))}else e.push(pi(r,n.length));e.push(n)}}return Z.concat(e)}filterByTag(...e){const t=new rc,r=e=>t=>e===t;for(let n=0;nt.constructor.tag===e))}indexOfTag(...e){const t=[],r=this,n=e=>t=>e===t;for(let i=0;i{this.algorithm=await e.readByte(),this.compressed=e.remainder(),await this.decompress(t)}))}write(){return null===this.compressed&&this.compress(),Z.concat([new Uint8Array([this.algorithm]),this.compressed])}async decompress(e=se){const t=ae.read(ae.compression,this.algorithm),r=hc[t];if(!r)throw new Error(`${t} decompression not supported`);this.packets=await rc.fromBinary(r(this.compressed),nc,e)}compress(){const e=ae.read(ae.compression,this.algorithm),t=lc[e];if(!t)throw new Error(`${e} compression not supported`);this.compressed=t(this.packets.write(),this.deflateLevel)}}const ac=Z.getNodeZlib();function sc(e){return e}function oc(e,t,r={}){return function(n){return!Z.isStream(n)||u(n)?G((()=>W(n).then((t=>new Promise(((n,i)=>{e(t,r,((e,t)=>{if(e)return i(e);n(t)}))})))))):b(w(n).pipe(t(r)))}}function cc(e,t={}){return function(r){const n=new e(t);return N(r,(e=>{if(e.length)return n.push(e,2),n.result}),(()=>{if(e===Zs)return n.push([],4),n.result}))}}function uc(e){return function(t){return G((async()=>e(await W(t))))}}const lc=ac?{zip:(e,t)=>oc(ac.deflateRaw,ac.createDeflateRaw,{level:t})(e),zlib:(e,t)=>oc(ac.deflate,ac.createDeflate,{level:t})(e)}:{zip:(e,t)=>cc(Zs,{raw:!0,level:t})(e),zlib:(e,t)=>cc(Zs,{level:t})(e)},hc=ac?{uncompressed:sc,zip:oc(ac.inflateRaw,ac.createInflateRaw),zlib:oc(ac.inflate,ac.createInflate),bzip2:uc($o)}:{uncompressed:sc,zip:cc(Mo,{raw:!0}),zlib:cc(Mo),bzip2:uc($o)},dc=Z.constructAllowedPackets([Jo,ic,ec,Xo]);class fc{static get tag(){return ae.packet.symEncryptedIntegrityProtectedData}constructor(){this.version=1,this.encrypted=null,this.packets=null}async read(e){await q(e,(async e=>{const t=await e.readByte();if(1!==t)throw new mi(`Version ${t} of the SEIP packet is unsupported.`);this.encrypted=e.remainder()}))}write(){return Z.concat([new Uint8Array([1]),this.encrypted])}async encrypt(e,t,r=se){const{blockSize:n}=ua.getCipher(e);let i=this.packets.write();u(i)&&(i=await W(i));const a=await ua.getPrefixRandom(e),s=new Uint8Array([211,20]),o=Z.concat([a,i,s]),c=await ua.hash.sha1(z(o)),l=Z.concat([o,c]);return this.encrypted=await ua.mode.cfb.encrypt(e,t,l,new Uint8Array(n),r),!0}async decrypt(e,t,r=se){const{blockSize:n}=ua.getCipher(e);let i=F(this.encrypted);u(i)&&(i=await W(i));const a=await ua.mode.cfb.decrypt(e,t,i,new Uint8Array(n)),s=H(z(a),-20),o=H(a,0,-20),c=Promise.all([W(await ua.hash.sha1(z(o))),W(s)]).then((([e,t])=>{if(!Z.equalsUint8Array(e,t))throw new Error("Modification detected.");return new Uint8Array})),l=H(o,n+2);let h=H(l,0,-2);return h=D([h,G((()=>c))]),Z.isStream(i)&&r.allowUnauthenticatedStream||(h=await W(h)),this.packets=await rc.fromBinary(h,dc,r),!0}}const pc=Z.constructAllowedPackets([Jo,ic,ec,Xo]);class yc{static get tag(){return ae.packet.aeadEncryptedData}constructor(){this.version=1,this.cipherAlgorithm=null,this.aeadAlgorithm=ae.aead.eax,this.chunkSizeByte=null,this.iv=null,this.encrypted=null,this.packets=null}async read(e){await q(e,(async e=>{const t=await e.readByte();if(1!==t)throw new mi(`Version ${t} of the AEAD-encrypted data packet is not supported.`);this.cipherAlgorithm=await e.readByte(),this.aeadAlgorithm=await e.readByte(),this.chunkSizeByte=await e.readByte();const r=ua.getAEADMode(this.aeadAlgorithm);this.iv=await e.readBytes(r.ivLength),this.encrypted=e.remainder()}))}write(){return Z.concat([new Uint8Array([this.version,this.cipherAlgorithm,this.aeadAlgorithm,this.chunkSizeByte]),this.iv,this.encrypted])}async decrypt(e,t,r=se){this.packets=await rc.fromBinary(await this.crypt("decrypt",t,F(this.encrypted)),pc,r)}async encrypt(e,t,r=se){this.cipherAlgorithm=e;const{ivLength:n}=ua.getAEADMode(this.aeadAlgorithm);this.iv=ua.random.getRandomBytes(n),this.chunkSizeByte=r.aeadChunkSizeByte;const i=this.packets.write();this.encrypted=await this.crypt("encrypt",t,i)}async crypt(e,t,r){const n=ua.getAEADMode(this.aeadAlgorithm),i=await n(this.cipherAlgorithm,t),a="decrypt"===e?n.tagLength:0,s="encrypt"===e?n.tagLength:0,o=2**(this.chunkSizeByte+6)+a,c=new ArrayBuffer(21),u=new Uint8Array(c,0,13),l=new Uint8Array(c),h=new DataView(c),d=new Uint8Array(c,5,8);u.set([192|yc.tag,this.version,this.cipherAlgorithm,this.aeadAlgorithm,this.chunkSizeByte],0);let f=0,p=Promise.resolve(),y=0,g=0;const m=this.iv;return L(r,(async(t,r)=>{if("array"!==Z.isStream(t)){const e=new P({},{highWaterMark:Z.getHardwareConcurrency()*2**(this.chunkSizeByte+6),size:e=>e.length});R(e.readable,r),r=e.writable}const c=B(t),b=U(r);try{for(;;){let t=await c.readBytes(o+a)||new Uint8Array;const r=t.subarray(t.length-a);let w,v;if(t=t.subarray(0,t.length-a),!f||t.length?(c.unshift(r),w=i[e](t,n.getNonce(m,d),u),g+=t.length-a+s):(h.setInt32(17,y),w=i[e](r,n.getNonce(m,d),l),g+=s,v=!0),y+=t.length-a,p=p.then((()=>w)).then((async e=>{await b.ready,await b.write(e),g-=e.length})).catch((e=>b.abort(e))),(v||g>b.desiredSize)&&await p,v){await b.close();break}h.setInt32(9,++f)}}catch(e){await b.abort(e)}}))}}class gc{static get tag(){return ae.packet.publicKeyEncryptedSessionKey}constructor(){this.version=3,this.publicKeyID=new ge,this.publicKeyAlgorithm=null,this.sessionKey=null,this.sessionKeyAlgorithm=null,this.encrypted={}}read(e){if(this.version=e[0],3!==this.version)throw new mi(`Version ${this.version} of the PKESK packet is unsupported.`);this.publicKeyID.read(e.subarray(1,e.length)),this.publicKeyAlgorithm=e[9],this.encrypted=ua.parseEncSessionKeyParams(this.publicKeyAlgorithm,e.subarray(10))}write(){const e=[new Uint8Array([this.version]),this.publicKeyID.write(),new Uint8Array([this.publicKeyAlgorithm]),ua.serializeParams(this.publicKeyAlgorithm,this.encrypted)];return Z.concatUint8Array(e)}async encrypt(e){const t=Z.concatUint8Array([new Uint8Array([ae.write(ae.symmetric,this.sessionKeyAlgorithm)]),this.sessionKey,Z.writeChecksum(this.sessionKey)]),r=ae.write(ae.publicKey,this.publicKeyAlgorithm);this.encrypted=await ua.publicKeyEncrypt(r,e.publicParams,t,e.getFingerprintBytes())}async decrypt(e,t){if(this.publicKeyAlgorithm!==e.algorithm)throw new Error("Decryption error");const r=t?Z.concatUint8Array([new Uint8Array([t.sessionKeyAlgorithm]),t.sessionKey,Z.writeChecksum(t.sessionKey)]):null,n=await ua.publicKeyDecrypt(this.publicKeyAlgorithm,e.publicParams,e.privateParams,this.encrypted,e.getFingerprintBytes(),r),i=n[0],a=n.subarray(1,n.length-2),s=n.subarray(n.length-2),o=Z.writeChecksum(a),c=o[0]===s[0]&o[1]===s[1];if(t){const e=c&i===t.sessionKeyAlgorithm&a.length===t.sessionKey.length;this.sessionKeyAlgorithm=Z.selectUint8(e,i,t.sessionKeyAlgorithm),this.sessionKey=Z.selectUint8Array(e,a,t.sessionKey)}else{if(!c||!ae.read(ae.symmetric,i))throw new Error("Decryption error");this.sessionKey=a,this.sessionKeyAlgorithm=i}}}class mc{constructor(e=se){this.algorithm=ae.hash.sha256,this.type="iterated",this.c=e.s2kIterationCountByte,this.salt=null}getCount(){return 16+(15&this.c)<<6+(this.c>>4)}read(e){let t=0;switch(this.type=ae.read(ae.s2k,e[t++]),this.algorithm=e[t++],this.type){case"simple":break;case"salted":this.salt=e.subarray(t,t+8),t+=8;break;case"iterated":this.salt=e.subarray(t,t+8),t+=8,this.c=e[t++];break;case"gnu":if("GNU"!==Z.uint8ArrayToString(e.subarray(t,t+3)))throw new Error("Unknown s2k type.");if(t+=3,1001!==1e3+e[t++])throw new Error("Unknown s2k gnu protection mode.");this.type="gnu-dummy";break;default:throw new Error("Unknown s2k type.")}return t}write(){if("gnu-dummy"===this.type)return new Uint8Array([101,0,...Z.stringToUint8Array("GNU"),1]);const e=[new Uint8Array([ae.write(ae.s2k,this.type),this.algorithm])];switch(this.type){case"simple":break;case"salted":e.push(this.salt);break;case"iterated":e.push(this.salt),e.push(new Uint8Array([this.c]));break;case"gnu":throw new Error("GNU s2k type not supported.");default:throw new Error("Unknown s2k type.")}return Z.concatUint8Array(e)}async produceKey(e,t){e=Z.encodeUTF8(e);const r=[];let n=0,i=0;for(;n{this.privateParams[e].fill(0),delete this.privateParams[e]})),this.privateParams=null,this.isEncrypted=!0)}}async function xc(e,t,r){const{keySize:n}=ua.getCipher(r);return e.produceKey(t,n)}var Pc=ct((function(e){!function(t){function r(e){function t(){return _e0&&(t.semantic=" "),t}}function g(e,t){return function(){var n,a,o,u,l;for(u=r(),n=s("star"),o=0,l=void 0===t?0:t;null!==(a=e());)o+=1,c(n,a);return o>=l?n:(i(u),null)}}function m(e){return e.charCodeAt(0)>=128}function b(){return o("cr",l("\r")())}function w(){return o("crlf",h(b,A)())}function v(){return o("dquote",l('"')())}function k(){return o("htab",l("\t")())}function A(){return o("lf",l("\n")())}function _(){return o("sp",l(" ")())}function S(){return o("vchar",u((function(t){var r=t.charCodeAt(0),n=33<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n})))}function E(){return o("wsp",d(_,k)())}function x(){var e=o("quoted-pair",d(h(l("\\"),d(S,E)),ne)());return null===e?null:(e.semantic=e.semantic[1],e)}function P(){return o("fws",d(ae,h(f(h(g(E),p(w))),g(E,1)))())}function C(){return o("ctext",d((function(){return u((function(t){var r=t.charCodeAt(0),n=33<=r&&r<=39||42<=r&&r<=91||93<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n}))}),te)())}function T(){return o("ccontent",d(C,x,M)())}function M(){return o("comment",h(l("("),g(h(f(P),T)),f(P),l(")"))())}function I(){return o("cfws",d(h(g(h(f(P),M),1),f(P)),P)())}function D(){return o("atext",u((function(t){var r="a"<=t&&t<="z"||"A"<=t&&t<="Z"||"0"<=t&&t<="9"||["!","#","$","%","&","'","*","+","-","/","=","?","^","_","`","{","|","}","~"].indexOf(t)>=0;return e.rfc6532&&(r=r||m(t)),r})))}function B(){return o("atom",h(y(f(I)),g(D,1),y(f(I)))())}function U(){var e,t;return null===(e=o("dot-atom-text",g(D,1)()))||null!==(t=g(h(l("."),g(D,1)))())&&c(e,t),e}function R(){return o("dot-atom",h(p(f(I)),U,p(f(I)))())}function K(){return o("qtext",d((function(){return u((function(t){var r=t.charCodeAt(0),n=33===r||35<=r&&r<=91||93<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n}))}),re)())}function O(){return o("qcontent",d(K,x)())}function N(){return o("quoted-string",h(p(f(I)),p(v),g(h(f(y(P)),O)),f(p(P)),p(v),p(f(I)))())}function L(){return o("word",d(B,N)())}function q(){return o("address",d(F,H)())}function F(){return o("mailbox",d(z,Q)())}function z(){return o("name-addr",h(f(W),j)())}function j(){return o("angle-addr",d(h(p(f(I)),l("<"),Q,l(">"),p(f(I))),se)())}function H(){return o("group",h(W,l(":"),f($),l(";"),p(f(I)))())}function W(){return o("display-name",(null!==(e=o("phrase",d(ie,g(L,1))()))&&(e.semantic=function(e){return e.replace(/([ \t]|\r\n)+/g," ").replace(/^\s*/,"").replace(/\s*$/,"")}(e.semantic)),e));var e}function V(){return o("mailbox-list",d(h(F,g(h(l(","),F))),ue)())}function G(){return o("address-list",d(h(q,g(h(l(","),q))),le)())}function $(){return o("group-list",d(V,p(I),he)())}function J(){return o("local-part",d(de,R,N)())}function Z(){return o("dtext",d((function(){return u((function(t){var r=t.charCodeAt(0),n=33<=r&&r<=90||94<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n}))}),pe)())}function Y(){return o("domain-literal",h(p(f(I)),l("["),g(h(f(P),Z)),f(P),l("]"),p(f(I)))())}function X(){return o("domain",(t=d(fe,R,Y)(),e.rejectTLD&&t&&t.semantic&&t.semantic.indexOf(".")<0?null:(t&&(t.semantic=t.semantic.replace(/\s+/g,"")),t)));var t}function Q(){return o("addr-spec",h(J,l("@"),X)())}function ee(){return e.strict?null:o("obs-NO-WS-CTL",u((function(e){var t=e.charCodeAt(0);return 1<=t&&t<=8||11===t||12===t||14<=t&&t<=31||127===t})))}function te(){return e.strict?null:o("obs-ctext",ee())}function re(){return e.strict?null:o("obs-qtext",ee())}function ne(){return e.strict?null:o("obs-qp",h(l("\\"),d(l("\0"),ee,A,b))())}function ie(){return e.strict?null:e.atInDisplayName?o("obs-phrase",h(L,g(d(L,l("."),l("@"),y(I))))()):o("obs-phrase",h(L,g(d(L,l("."),y(I))))())}function ae(){return e.strict?null:o("obs-FWS",g(h(p(f(w)),E),1)())}function se(){return e.strict?null:o("obs-angle-addr",h(p(f(I)),l("<"),oe,Q,l(">"),p(f(I)))())}function oe(){return e.strict?null:o("obs-route",h(ce,l(":"))())}function ce(){return e.strict?null:o("obs-domain-list",h(g(d(p(I),l(","))),l("@"),X,g(h(l(","),p(f(I)),f(h(l("@"),X)))))())}function ue(){return e.strict?null:o("obs-mbox-list",h(g(h(p(f(I)),l(","))),F,g(h(l(","),f(h(F,p(I))))))())}function le(){return e.strict?null:o("obs-addr-list",h(g(h(p(f(I)),l(","))),q,g(h(l(","),f(h(q,p(I))))))())}function he(){return e.strict?null:o("obs-group-list",h(g(h(p(f(I)),l(",")),1),p(f(I)))())}function de(){return e.strict?null:o("obs-local-part",h(L,g(h(l("."),L)))())}function fe(){return e.strict?null:o("obs-domain",h(B,g(h(l("."),B)))())}function pe(){return e.strict?null:o("obs-dtext",d(ee,x)())}function ye(e,t){var r,n,i;if(null==t)return null;for(n=[t];n.length>0;){if((i=n.pop()).name===e)return i;for(r=i.children.length-1;r>=0;r-=1)n.push(i.children[r])}return null}function ge(e,t){var r,n,i,a,s;if(null==t)return null;for(n=[t],a=[],s={},r=0;r0;)if((i=n.pop()).name in s)a.push(i);else for(r=i.children.length-1;r>=0;r-=1)n.push(i.children[r]);return a}function me(t){var r,n,i,a,s;if(null===t)return null;for(r=[],n=ge(["group","mailbox"],t),i=0;i1?null:t.addresses&&t.addresses[0]:null}(s):e.simple?s&&s.addresses:s}function be(e){var t,r=ye("display-name",e),n=[],i=ge(["mailbox"],e);for(t=0;t0;)for("cfws"===(i=n.pop()).name&&a.push(i),r=i.children.length-1;r>=0;r-=1)n.push(i.children[r]);return a}(0,e),i=ge(["comment"],e),a=ye("local-part",r),s=ye("domain",r);return{node:e,parts:{name:t,address:r,local:a,domain:s,comments:n},type:e.name,name:ve(t),address:ve(r),local:ve(a),domain:ve(s),comments:ke(i),groupName:ve(e.groupName)}}function ve(e){return null!=e?e.semantic:null}function ke(e){var t="";if(e)for(var r=0;r`),t.userID=r.join(" "),t}read(e,t=se){const r=Z.decodeUTF8(e);if(r.length>t.maxUserIDLength)throw new Error("User ID string is too long");try{const{name:e,address:t,comments:n}=Pc.parseOneAddress({input:r,atInDisplayName:!0});this.comment=n.replace(/^\(|\)$/g,""),this.name=e,this.email=t}catch(e){}this.userID=r}write(){return Z.encodeUTF8(this.userID)}equals(e){return e&&e.userID===this.userID}}class Tc extends Ec{static get tag(){return ae.packet.secretSubkey}constructor(e=new Date,t=se){super(e,t)}}class Mc{static get tag(){return ae.packet.trust}read(){throw new mi("Trust packets are not supported")}write(){throw new mi("Trust packets are not supported")}}const Ic=Z.constructAllowedPackets([Xo]);class Dc{constructor(e){this.packets=e||new rc}write(){return this.packets.write()}armor(e=se){return ye(ae.armor.signature,this.write(),void 0,void 0,void 0,e)}getSigningKeyIDs(){return this.packets.map((e=>e.issuerKeyID))}}async function Bc({armoredSignature:e,binarySignature:t,config:r,...n}){r={...se,...r};let i=e||t;if(!i)throw new Error("readSignature: must pass options object containing `armoredSignature` or `binarySignature`");if(e&&!Z.isString(e))throw new Error("readSignature: options.armoredSignature must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readSignature: options.binarySignature must be a Uint8Array");const a=Object.keys(n);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);if(e){const{type:e,data:t}=await pe(i,r);if(e!==ae.armor.signature)throw new Error("Armored text not of type signature");i=t}const s=await rc.fromBinary(i,Ic,r);return new Dc(s)}async function Uc(e,t){const r=new Tc(e.date,t);return r.packets=null,r.algorithm=ae.write(ae.publicKey,e.algorithm),await r.generate(e.rsaBits,e.curve),await r.computeFingerprintAndKeyID(),r}async function Rc(e,t){const r=new Ec(e.date,t);return r.packets=null,r.algorithm=ae.write(ae.publicKey,e.algorithm),await r.generate(e.rsaBits,e.curve,e.config),await r.computeFingerprintAndKeyID(),r}async function Kc(e,t,r,n,i=new Date,a){let s,o;for(let c=e.length-1;c>=0;c--)try{(!s||e[c].created>=s.created)&&(await e[c].verify(t,r,n,i,void 0,a),s=e[c])}catch(e){o=e}if(!s)throw Z.wrapError(`Could not find valid ${ae.read(ae.signature,r)} signature in key ${t.getKeyID().toHex()}`.replace("certGeneric ","self-").replace(/([a-z])([A-Z])/g,((e,t,r)=>t+" "+r.toLowerCase())),o);return s}function Oc(e,t,r=new Date){const n=Z.normalizeDate(r);if(null!==n){const r=Hc(e,t);return!(e.created<=n&&n0&&(a.keyExpirationTime=r.keyExpirationTime,a.keyNeverExpires=!1),await a.sign(t,i,r.date),a}async function Lc(e,t,r=new Date,n={},i){let a=i.preferredHashAlgorithm,s=a;if(e){const t=await e.getPrimaryUser(r,n,i);t.selfCertification.preferredHashAlgorithms&&([s]=t.selfCertification.preferredHashAlgorithms,a=ua.hash.getHashByteLength(a)<=ua.hash.getHashByteLength(s)?s:a)}switch(Object.getPrototypeOf(t)){case Ec.prototype:case wc.prototype:case Tc.prototype:case _c.prototype:switch(t.algorithm){case ae.publicKey.ecdh:case ae.publicKey.ecdsa:case ae.publicKey.eddsa:s=ua.publicKey.elliptic.getPreferredHashAlgo(t.publicParams.oid)}}return ua.hash.getHashByteLength(a)<=ua.hash.getHashByteLength(s)?s:a}async function qc(e,t=[],r=new Date,n=[],i=se){const a={symmetric:ae.symmetric.aes128,aead:ae.aead.eax,compression:ae.compression.uncompressed}[e],s={symmetric:i.preferredSymmetricAlgorithm,aead:i.preferredAEADAlgorithm,compression:i.preferredCompressionAlgorithm}[e],o={symmetric:"preferredSymmetricAlgorithms",aead:"preferredAEADAlgorithms",compression:"preferredCompressionAlgorithms"}[e],c=await Promise.all(t.map((async function(e,t){const a=(await e.getPrimaryUser(r,n[t],i)).selfCertification[o];return!!a&&a.indexOf(s)>=0})));return c.every(Boolean)?s:a}async function Fc(e,t,r,n,i,a,s=[],o=!1,c){if(r.isDummy())throw new Error("Cannot sign with a gnu-dummy key.");if(!r.isDecrypted())throw new Error("Signing key is not decrypted.");const u=new Xo;return Object.assign(u,n),u.publicKeyAlgorithm=r.algorithm,u.hashAlgorithm=await Lc(t,r,i,a,c),u.rawNotations=s,await u.sign(r,e,i,o),u}async function zc(e,t,r,n=new Date,i){(e=e[r])&&(t[r].length?await Promise.all(e.map((async function(e){e.isExpired(n)||i&&!await i(e)||t[r].some((function(t){return Z.equalsUint8Array(t.writeParams(),e.writeParams())}))||t[r].push(e)}))):t[r]=e)}async function jc(e,t,r,n,i,a,s=new Date,o){a=a||e;const c=[];return await Promise.all(n.map((async function(e){try{i&&!e.issuerKeyID.equals(i.issuerKeyID)||(await e.verify(a,t,r,o.revocationsExpire?s:null,!1,o),c.push(e.issuerKeyID))}catch(e){}}))),i?(i.revoked=!!c.some((e=>e.equals(i.issuerKeyID)))||i.revoked||!1,i.revoked):c.length>0}function Hc(e,t){let r;return!1===t.keyNeverExpires&&(r=e.created.getTime()+1e3*t.keyExpirationTime),r?new Date(r):1/0}function Wc(e,t={}){switch(e.type=e.type||t.type,e.curve=e.curve||t.curve,e.rsaBits=e.rsaBits||t.rsaBits,e.keyExpirationTime=void 0!==e.keyExpirationTime?e.keyExpirationTime:t.keyExpirationTime,e.passphrase=Z.isString(e.passphrase)?e.passphrase:t.passphrase,e.date=e.date||t.date,e.sign=e.sign||!1,e.type){case"ecc":try{e.curve=ae.write(ae.curve,e.curve)}catch(e){throw new Error("Unknown curve")}e.curve!==ae.curve.ed25519&&e.curve!==ae.curve.curve25519||(e.curve=e.sign?ae.curve.ed25519:ae.curve.curve25519),e.sign?e.algorithm=e.curve===ae.curve.ed25519?ae.publicKey.eddsa:ae.publicKey.ecdsa:e.algorithm=ae.publicKey.ecdh;break;case"rsa":e.algorithm=ae.publicKey.rsaEncryptSign;break;default:throw new Error(`Unsupported key type ${e.type}`)}return e}function Vc(e,t){const r=e.algorithm;return r!==ae.publicKey.rsaEncrypt&&r!==ae.publicKey.elgamal&&r!==ae.publicKey.ecdh&&(!t.keyFlags||0!=(t.keyFlags[0]&ae.keyFlags.signData))}function Gc(e,t){const r=e.algorithm;return r!==ae.publicKey.dsa&&r!==ae.publicKey.rsaSign&&r!==ae.publicKey.ecdsa&&r!==ae.publicKey.eddsa&&(!t.keyFlags||0!=(t.keyFlags[0]&ae.keyFlags.encryptCommunication)||0!=(t.keyFlags[0]&ae.keyFlags.encryptStorage))}function $c(e,t){return!!t.allowInsecureDecryptionWithSigningKeys||!e.keyFlags||0!=(e.keyFlags[0]&ae.keyFlags.encryptCommunication)||0!=(e.keyFlags[0]&ae.keyFlags.encryptStorage)}function Jc(e,t){const r=ae.write(ae.publicKey,e.algorithm),n=e.getAlgorithmInfo();if(t.rejectPublicKeyAlgorithms.has(r))throw new Error(`${n.algorithm} keys are considered too weak.`);switch(r){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:case ae.publicKey.rsaEncrypt:if(n.bitse.getKeys(o).length>0));return 0===c.length?null:(await Promise.all(c.map((async t=>{const a=await t.getSigningKey(o,e.created,void 0,n);if(e.revoked||await i.isRevoked(e,a.keyPacket,r,n))throw new Error("User certificate is revoked");try{await e.verify(a.keyPacket,ae.signature.certGeneric,s,r,void 0,n)}catch(e){throw Z.wrapError("User certificate is invalid",e)}}))),!0)}async verifyAllCertifications(e,t=new Date,r){const n=this,i=this.selfCertifications.concat(this.otherCertifications);return Promise.all(i.map((async i=>({keyID:i.issuerKeyID,valid:await n.verifyCertificate(i,e,t,r).catch((()=>!1))}))))}async verify(e=new Date,t){if(!this.selfCertifications.length)throw new Error("No self-certifications found");const r=this,n=this.mainKey.keyPacket,i={userID:this.userID,userAttribute:this.userAttribute,key:n};let a;for(let s=this.selfCertifications.length-1;s>=0;s--)try{const a=this.selfCertifications[s];if(a.revoked||await r.isRevoked(a,void 0,e,t))throw new Error("Self-certification is revoked");try{await a.verify(n,ae.signature.certGeneric,i,e,void 0,t)}catch(e){throw Z.wrapError("Self-certification is invalid",e)}return!0}catch(e){a=e}throw a}async update(e,t,r){const n=this.mainKey.keyPacket,i={userID:this.userID,userAttribute:this.userAttribute,key:n};await zc(e,this,"selfCertifications",t,(async function(e){try{return await e.verify(n,ae.signature.certGeneric,i,t,!1,r),!0}catch(e){return!1}})),await zc(e,this,"otherCertifications",t),await zc(e,this,"revocationSignatures",t,(function(e){return jc(n,ae.signature.certRevocation,i,[e],void 0,void 0,t,r)}))}async revoke(e,{flag:t=ae.reasonForRevocation.noReason,string:r=""}={},n=new Date,i=se){const a={userID:this.userID,userAttribute:this.userAttribute,key:e},s=new Zc(a.userID||a.userAttribute,this.mainKey);return s.revocationSignatures.push(await Fc(a,null,e,{signatureType:ae.signature.certRevocation,reasonForRevocationFlag:ae.write(ae.reasonForRevocation,t),reasonForRevocationString:r},n,void 0,void 0,!1,i)),await s.update(this),s}}class Yc{constructor(e,t){this.keyPacket=e,this.bindingSignatures=[],this.revocationSignatures=[],this.mainKey=t}toPacketList(){const e=new rc;return e.push(this.keyPacket),e.push(...this.revocationSignatures),e.push(...this.bindingSignatures),e}clone(){const e=new Yc(this.keyPacket,this.mainKey);return e.bindingSignatures=[...this.bindingSignatures],e.revocationSignatures=[...this.revocationSignatures],e}async isRevoked(e,t,r=new Date,n=se){const i=this.mainKey.keyPacket;return jc(i,ae.signature.subkeyRevocation,{key:i,bind:this.keyPacket},this.revocationSignatures,e,t,r,n)}async verify(e=new Date,t=se){const r=this.mainKey.keyPacket,n={key:r,bind:this.keyPacket},i=await Kc(this.bindingSignatures,r,ae.signature.subkeyBinding,n,e,t);if(i.revoked||await this.isRevoked(i,null,e,t))throw new Error("Subkey is revoked");if(Oc(this.keyPacket,i,e))throw new Error("Subkey is expired");return i}async getExpirationTime(e=new Date,t=se){const r=this.mainKey.keyPacket,n={key:r,bind:this.keyPacket};let i;try{i=await Kc(this.bindingSignatures,r,ae.signature.subkeyBinding,n,e,t)}catch(e){return null}const a=Hc(this.keyPacket,i),s=i.getExpirationTime();return ai.bindingSignatures[t].created&&(i.bindingSignatures[t]=e),!1;try{return await e.verify(n,ae.signature.subkeyBinding,a,t,void 0,r),!0}catch(e){return!1}})),await zc(e,this,"revocationSignatures",t,(function(e){return jc(n,ae.signature.subkeyRevocation,a,[e],void 0,void 0,t,r)}))}async revoke(e,{flag:t=ae.reasonForRevocation.noReason,string:r=""}={},n=new Date,i=se){const a={key:e,bind:this.keyPacket},s=new Yc(this.keyPacket,this.mainKey);return s.revocationSignatures.push(await Fc(a,null,e,{signatureType:ae.signature.subkeyRevocation,reasonForRevocationFlag:ae.write(ae.reasonForRevocation,t),reasonForRevocationString:r},n,void 0,void 0,!1,i)),await s.update(this),s}hasSameFingerprintAs(e){return this.keyPacket.hasSameFingerprintAs(e.keyPacket||e)}}["getKeyID","getFingerprint","getAlgorithmInfo","getCreationTime","isDecrypted"].forEach((e=>{Yc.prototype[e]=function(){return this.keyPacket[e]()}}));const Xc=Z.constructAllowedPackets([Xo]),Qc=new Set([ae.packet.publicKey,ae.packet.privateKey]),eu=new Set([ae.packet.publicKey,ae.packet.privateKey,ae.packet.publicSubkey,ae.packet.privateSubkey]);class tu{packetListToStructure(e,t=new Set){let r,n,i,a;for(const s of e){if(s instanceof bi){eu.has(s.tag)&&!a&&(a=Qc.has(s.tag)?Qc:eu);continue}const e=s.constructor.tag;if(a){if(!a.has(e))continue;a=null}if(t.has(e))throw new Error(`Unexpected packet type: ${e}`);switch(e){case ae.packet.publicKey:case ae.packet.secretKey:if(this.keyPacket)throw new Error("Key block contains multiple keys");if(this.keyPacket=s,n=this.getKeyID(),!n)throw new Error("Missing Key ID");break;case ae.packet.userID:case ae.packet.userAttribute:r=new Zc(s,this),this.users.push(r);break;case ae.packet.publicSubkey:case ae.packet.secretSubkey:r=null,i=new Yc(s,this),this.subkeys.push(i);break;case ae.packet.signature:switch(s.signatureType){case ae.signature.certGeneric:case ae.signature.certPersona:case ae.signature.certCasual:case ae.signature.certPositive:if(!r){Z.printDebug("Dropping certification signatures without preceding user packet");continue}s.issuerKeyID.equals(n)?r.selfCertifications.push(s):r.otherCertifications.push(s);break;case ae.signature.certRevocation:r?r.revocationSignatures.push(s):this.directSignatures.push(s);break;case ae.signature.key:this.directSignatures.push(s);break;case ae.signature.subkeyBinding:if(!i){Z.printDebug("Dropping subkey binding signature without preceding subkey packet");continue}i.bindingSignatures.push(s);break;case ae.signature.keyRevocation:this.revocationSignatures.push(s);break;case ae.signature.subkeyRevocation:if(!i){Z.printDebug("Dropping subkey revocation signature without preceding subkey packet");continue}i.revocationSignatures.push(s)}}}}toPacketList(){const e=new rc;return e.push(this.keyPacket),e.push(...this.revocationSignatures),e.push(...this.directSignatures),this.users.map((t=>e.push(...t.toPacketList()))),this.subkeys.map((t=>e.push(...t.toPacketList()))),e}clone(e=!1){const t=new this.constructor(this.toPacketList());return e&&t.getKeys().forEach((e=>{if(e.keyPacket=Object.create(Object.getPrototypeOf(e.keyPacket),Object.getOwnPropertyDescriptors(e.keyPacket)),!e.keyPacket.isDecrypted())return;const t={};Object.keys(e.keyPacket.privateParams).forEach((r=>{t[r]=new Uint8Array(e.keyPacket.privateParams[r])})),e.keyPacket.privateParams=t})),t}getSubkeys(e=null){return this.subkeys.filter((t=>!e||t.getKeyID().equals(e,!0)))}getKeys(e=null){const t=[];return e&&!this.getKeyID().equals(e,!0)||t.push(this),t.concat(this.getSubkeys(e))}getKeyIDs(){return this.getKeys().map((e=>e.getKeyID()))}getUserIDs(){return this.users.map((e=>e.userID?e.userID.userID:null)).filter((e=>null!==e))}write(){return this.toPacketList().write()}async getSigningKey(e=null,t=new Date,r={},n=se){await this.verifyPrimaryKey(t,r,n);const i=this.keyPacket,a=this.subkeys.slice().sort(((e,t)=>t.keyPacket.created-e.keyPacket.created));let s;for(const r of a)if(!e||r.getKeyID().equals(e))try{await r.verify(t,n);const e={key:i,bind:r.keyPacket},a=await Kc(r.bindingSignatures,i,ae.signature.subkeyBinding,e,t,n);if(!Vc(r.keyPacket,a))continue;if(!a.embeddedSignature)throw new Error("Missing embedded signature");return await Kc([a.embeddedSignature],r.keyPacket,ae.signature.keyBinding,e,t,n),Jc(r.keyPacket,n),r}catch(e){s=e}try{const a=await this.getPrimaryUser(t,r,n);if((!e||i.getKeyID().equals(e))&&Vc(i,a.selfCertification))return Jc(i,n),this}catch(e){s=e}throw Z.wrapError("Could not find valid signing key packet in key "+this.getKeyID().toHex(),s)}async getEncryptionKey(e,t=new Date,r={},n=se){await this.verifyPrimaryKey(t,r,n);const i=this.keyPacket,a=this.subkeys.slice().sort(((e,t)=>t.keyPacket.created-e.keyPacket.created));let s;for(const r of a)if(!e||r.getKeyID().equals(e))try{await r.verify(t,n);const e={key:i,bind:r.keyPacket},a=await Kc(r.bindingSignatures,i,ae.signature.subkeyBinding,e,t,n);if(Gc(r.keyPacket,a))return Jc(r.keyPacket,n),r}catch(e){s=e}try{const a=await this.getPrimaryUser(t,r,n);if((!e||i.getKeyID().equals(e))&&Gc(i,a.selfCertification))return Jc(i,n),this}catch(e){s=e}throw Z.wrapError("Could not find valid encryption key packet in key "+this.getKeyID().toHex(),s)}async isRevoked(e,t,r=new Date,n=se){return jc(this.keyPacket,ae.signature.keyRevocation,{key:this.keyPacket},this.revocationSignatures,e,t,r,n)}async verifyPrimaryKey(e=new Date,t={},r=se){const n=this.keyPacket;if(await this.isRevoked(null,null,e,r))throw new Error("Primary key is revoked");const{selfCertification:i}=await this.getPrimaryUser(e,t,r);if(Oc(n,i,e))throw new Error("Primary key is expired");const a=await Kc(this.directSignatures,n,ae.signature.key,{key:n},e,r).catch((()=>{}));if(a&&Oc(n,a,e))throw new Error("Primary key is expired")}async getExpirationTime(e,t=se){let r;try{const{selfCertification:n}=await this.getPrimaryUser(null,e,t),i=Hc(this.keyPacket,n),a=n.getExpirationTime(),s=await Kc(this.directSignatures,this.keyPacket,ae.signature.key,{key:this.keyPacket},null,t).catch((()=>{}));if(s){const e=Hc(this.keyPacket,s);r=Math.min(i,a,e)}else r=ie.subkeys.some((e=>t.hasSameFingerprintAs(e))))))throw new Error("Cannot update public key with private key if subkeys mismatch");return e.update(this,r)}const n=this.clone();return await zc(e,n,"revocationSignatures",t,(i=>jc(n.keyPacket,ae.signature.keyRevocation,n,[i],null,e.keyPacket,t,r))),await zc(e,n,"directSignatures",t),await Promise.all(e.users.map((async e=>{const i=n.users.filter((t=>e.userID&&e.userID.equals(t.userID)||e.userAttribute&&e.userAttribute.equals(t.userAttribute)));if(i.length>0)await Promise.all(i.map((n=>n.update(e,t,r))));else{const t=e.clone();t.mainKey=n,n.users.push(t)}}))),await Promise.all(e.subkeys.map((async e=>{const i=n.subkeys.filter((t=>t.hasSameFingerprintAs(e)));if(i.length>0)await Promise.all(i.map((n=>n.update(e,t,r))));else{const t=e.clone();t.mainKey=n,n.subkeys.push(t)}}))),n}async getRevocationCertificate(e=new Date,t=se){const r={key:this.keyPacket},n=await Kc(this.revocationSignatures,this.keyPacket,ae.signature.keyRevocation,r,e,t),i=new rc;return i.push(n),ye(ae.armor.publicKey,i.write(),null,null,"This is a revocation certificate")}async applyRevocationCertificate(e,t=new Date,r=se){const n=await pe(e,r),i=(await rc.fromBinary(n.data,Xc,r)).findPacket(ae.packet.signature);if(!i||i.signatureType!==ae.signature.keyRevocation)throw new Error("Could not find revocation signature packet");if(!i.issuerKeyID.equals(this.getKeyID()))throw new Error("Revocation signature does not match key");try{await i.verify(this.keyPacket,ae.signature.keyRevocation,{key:this.keyPacket},t,void 0,r)}catch(e){throw Z.wrapError("Could not verify revocation signature",e)}const a=this.clone();return a.revocationSignatures.push(i),a}async signPrimaryUser(e,t,r,n=se){const{index:i,user:a}=await this.getPrimaryUser(t,r,n),s=await a.certify(e,t,n),o=this.clone();return o.users[i]=s,o}async signAllUsers(e,t=new Date,r=se){const n=this.clone();return n.users=await Promise.all(this.users.map((function(n){return n.certify(e,t,r)}))),n}async verifyPrimaryUser(e,t=new Date,r,n=se){const i=this.keyPacket,{user:a}=await this.getPrimaryUser(t,r,n);return e?await a.verifyAllCertifications(e,t,n):[{keyID:i.getKeyID(),valid:await a.verify(t,n).catch((()=>!1))}]}async verifyAllUsers(e,t=new Date,r=se){const n=this.keyPacket,i=[];return await Promise.all(this.users.map((async a=>{const s=e?await a.verifyAllCertifications(e,t,r):[{keyID:n.getKeyID(),valid:await a.verify(t,r).catch((()=>!1))}];i.push(...s.map((e=>({userID:a.userID?a.userID.userID:null,userAttribute:a.userAttribute,keyID:e.keyID,valid:e.valid}))))}))),i}}["getKeyID","getFingerprint","getAlgorithmInfo","getCreationTime","hasSameFingerprintAs"].forEach((e=>{tu.prototype[e]=Yc.prototype[e]}));class ru extends tu{constructor(e){if(super(),this.keyPacket=null,this.revocationSignatures=[],this.directSignatures=[],this.users=[],this.subkeys=[],e&&(this.packetListToStructure(e,new Set([ae.packet.secretKey,ae.packet.secretSubkey])),!this.keyPacket))throw new Error("Invalid key: missing public-key packet")}isPrivate(){return!1}toPublic(){return this}armor(e=se){return ye(ae.armor.publicKey,this.toPacketList().write(),void 0,void 0,void 0,e)}}class nu extends ru{constructor(e){if(super(),this.packetListToStructure(e,new Set([ae.packet.publicKey,ae.packet.publicSubkey])),!this.keyPacket)throw new Error("Invalid key: missing private-key packet")}isPrivate(){return!0}toPublic(){const e=new rc,t=this.toPacketList();for(const r of t)switch(r.constructor.tag){case ae.packet.secretKey:{const t=wc.fromSecretKeyPacket(r);e.push(t);break}case ae.packet.secretSubkey:{const t=_c.fromSecretSubkeyPacket(r);e.push(t);break}default:e.push(r)}return new ru(e)}armor(e=se){return ye(ae.armor.privateKey,this.toPacketList().write(),void 0,void 0,void 0,e)}async getDecryptionKeys(e,t=new Date,r={},n=se){const i=this.keyPacket,a=[];for(let r=0;re.isDecrypted()))}async validate(e=se){if(!this.isPrivate())throw new Error("Cannot validate a public key");let t;if(this.keyPacket.isDummy()){const r=await this.getSigningKey(null,null,void 0,{...e,rejectPublicKeyAlgorithms:new Set,minRSABits:0});r&&!r.keyPacket.isDummy()&&(t=r.keyPacket)}else t=this.keyPacket;if(t)return t.validate();{const e=this.getKeys(),t=e.map((e=>e.keyPacket.isDummy())).every(Boolean);if(t)throw new Error("Cannot validate an all-gnu-dummy key");return Promise.all(e.map((async e=>e.keyPacket.validate())))}}clearPrivateParams(){this.getKeys().forEach((({keyPacket:e})=>{e.isDecrypted()&&e.clearPrivateParams()}))}async revoke({flag:e=ae.reasonForRevocation.noReason,string:t=""}={},r=new Date,n=se){if(!this.isPrivate())throw new Error("Need private key for revoking");const i={key:this.keyPacket},a=this.clone();return a.revocationSignatures.push(await Fc(i,null,this.keyPacket,{signatureType:ae.signature.keyRevocation,reasonForRevocationFlag:ae.write(ae.reasonForRevocation,e),reasonForRevocationString:t},r,void 0,void 0,void 0,n)),a}async addSubkey(e={}){const t={...se,...e.config};if(e.passphrase)throw new Error("Subkey could not be encrypted here, please encrypt whole key");if(e.rsaBitse!==t))]}const s=Cc.fromObject(t),o={};o.userID=s,o.key=e;const c=new Xo;return c.signatureType=ae.signature.certGeneric,c.publicKeyAlgorithm=e.algorithm,c.hashAlgorithm=await Lc(null,e,void 0,void 0,n),c.keyFlags=[ae.keyFlags.certifyKeys|ae.keyFlags.signData],c.preferredSymmetricAlgorithms=a([ae.symmetric.aes256,ae.symmetric.aes128,ae.symmetric.aes192],n.preferredSymmetricAlgorithm),n.aeadProtect&&(c.preferredAEADAlgorithms=a([ae.aead.eax,ae.aead.ocb],n.preferredAEADAlgorithm)),c.preferredHashAlgorithms=a([ae.hash.sha256,ae.hash.sha512],n.preferredHashAlgorithm),c.preferredCompressionAlgorithms=a([ae.compression.zlib,ae.compression.zip,ae.compression.uncompressed],n.preferredCompressionAlgorithm),0===i&&(c.isPrimaryUserID=!0),c.features=[0],c.features[0]|=ae.features.modificationDetection,n.aeadProtect&&(c.features[0]|=ae.features.aead),n.v5Keys&&(c.features[0]|=ae.features.v5Keys),r.keyExpirationTime>0&&(c.keyExpirationTime=r.keyExpirationTime,c.keyNeverExpires=!1),await c.sign(e,o,r.date),{userIDPacket:s,signaturePacket:c}}))).then((e=>{e.forEach((({userIDPacket:e,signaturePacket:t})=>{i.push(e),i.push(t)}))})),await Promise.all(t.map((async function(t,i){const a=r.subkeys[i];return{secretSubkeyPacket:t,subkeySignaturePacket:await Nc(t,e,a,n)}}))).then((e=>{e.forEach((({secretSubkeyPacket:e,subkeySignaturePacket:t})=>{i.push(e),i.push(t)}))}));const a={key:e};return i.push(await Fc(a,null,e,{signatureType:ae.signature.keyRevocation,reasonForRevocationFlag:ae.reasonForRevocation.noReason,reasonForRevocationString:""},r.date,void 0,void 0,void 0,n)),r.passphrase&&e.clearPrivateParams(),await Promise.all(t.map((async function(e,t){r.subkeys[t].passphrase&&e.clearPrivateParams()}))),new nu(i)}async function ou({armoredKey:e,binaryKey:t,config:r,...n}){if(r={...se,...r},!e&&!t)throw new Error("readKey: must pass options object containing `armoredKey` or `binaryKey`");if(e&&!Z.isString(e))throw new Error("readKey: options.armoredKey must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readKey: options.binaryKey must be a Uint8Array");const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);let a;if(e){const{type:t,data:n}=await pe(e,r);if(t!==ae.armor.publicKey&&t!==ae.armor.privateKey)throw new Error("Armored text not of type key");a=n}else a=t;return au(await rc.fromBinary(a,iu,r))}async function cu({armoredKey:e,binaryKey:t,config:r,...n}){if(r={...se,...r},!e&&!t)throw new Error("readPrivateKey: must pass options object containing `armoredKey` or `binaryKey`");if(e&&!Z.isString(e))throw new Error("readPrivateKey: options.armoredKey must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readPrivateKey: options.binaryKey must be a Uint8Array");const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);let a;if(e){const{type:t,data:n}=await pe(e,r);if(t!==ae.armor.privateKey)throw new Error("Armored text not of type private key");a=n}else a=t;const s=await rc.fromBinary(a,iu,r);return new nu(s)}async function uu({armoredKeys:e,binaryKeys:t,config:r,...n}){r={...se,...r};let i=e||t;if(!i)throw new Error("readKeys: must pass options object containing `armoredKeys` or `binaryKeys`");if(e&&!Z.isString(e))throw new Error("readKeys: options.armoredKeys must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readKeys: options.binaryKeys must be a Uint8Array");const a=Object.keys(n);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);if(e){const{type:t,data:n}=await pe(e,r);if(t!==ae.armor.publicKey&&t!==ae.armor.privateKey)throw new Error("Armored text not of type key");i=n}const s=[],o=await rc.fromBinary(i,iu,r),c=o.indexOfTag(ae.packet.publicKey,ae.packet.secretKey);if(0===c.length)throw new Error("No key packet found");for(let e=0;e0?t.map((e=>e.issuerKeyID)):e.packets.filterByTag(ae.packet.signature).map((e=>e.issuerKeyID))}async decrypt(e,t,r,n=new Date,i=se){const a=r||await this.decryptSessionKeys(e,t,n,i),s=this.packets.filterByTag(ae.packet.symmetricallyEncryptedData,ae.packet.symEncryptedIntegrityProtectedData,ae.packet.aeadEncryptedData);if(0===s.length)throw new Error("No encrypted data found");const o=s[0];let c=null;const u=Promise.all(a.map((async({algorithm:e,data:t})=>{if(!Z.isUint8Array(t)||!Z.isString(e))throw new Error("Invalid session key for decryption.");try{const r=ae.write(ae.symmetric,e);await o.decrypt(r,t,i)}catch(e){Z.printDebugError(e),c=e}})));if(V(o.encrypted),o.encrypted=null,await u,!o.packets||!o.packets.length)throw c||new Error("Decryption failed.");const l=new pu(o.packets);return o.packets=new rc,l}async decryptSessionKeys(e,t,r=new Date,n=se){let i,a=[];if(t){const e=this.packets.filterByTag(ae.packet.symEncryptedSessionKey);if(0===e.length)throw new Error("No symmetrically encrypted session key packet found.");await Promise.all(t.map((async function(t,r){let i;i=r?await rc.fromBinary(e.write(),du,n):e,await Promise.all(i.map((async function(e){try{await e.decrypt(t),a.push(e)}catch(e){Z.printDebugError(e)}})))})))}else{if(!e)throw new Error("No key or password specified.");{const t=this.packets.filterByTag(ae.packet.publicKeyEncryptedSessionKey);if(0===t.length)throw new Error("No public key encrypted session key packet found.");await Promise.all(t.map((async function(t){await Promise.all(e.map((async function(e){let s=[ae.symmetric.aes256,ae.symmetric.aes128,ae.symmetric.tripledes,ae.symmetric.cast5];try{const t=await e.getPrimaryUser(r,void 0,n);t.selfCertification.preferredSymmetricAlgorithms&&(s=s.concat(t.selfCertification.preferredSymmetricAlgorithms))}catch(e){}const o=(await e.getDecryptionKeys(t.publicKeyID,null,void 0,n)).map((e=>e.keyPacket));await Promise.all(o.map((async function(e){if(e&&!e.isDummy()){if(!e.isDecrypted())throw new Error("Decryption key is not decrypted.");if(!n.constantTimePKCS1Decryption||t.publicKeyAlgorithm!==ae.publicKey.rsaEncrypt&&t.publicKeyAlgorithm!==ae.publicKey.rsaEncryptSign&&t.publicKeyAlgorithm!==ae.publicKey.rsaSign&&t.publicKeyAlgorithm!==ae.publicKey.elgamal)try{if(await t.decrypt(e),!s.includes(ae.write(ae.symmetric,t.sessionKeyAlgorithm)))throw new Error("A non-preferred symmetric algorithm was used.");a.push(t)}catch(e){Z.printDebugError(e),i=e}else{const r=t.write();await Promise.all(Array.from(n.constantTimePKCS1DecryptionSupportedSymmetricAlgorithms).map((async t=>{const n=new gc;n.read(r);const s={sessionKeyAlgorithm:t,sessionKey:ua.generateSessionKey(t)};try{await n.decrypt(e,s),a.push(n)}catch(e){Z.printDebugError(e),i=e}})))}}})))}))),V(t.encrypted),t.encrypted=null})))}}if(a.length>0){if(a.length>1){const e=new Set;a=a.filter((t=>{const r=t.sessionKeyAlgorithm+Z.uint8ArrayToString(t.sessionKey);return!e.has(r)&&(e.add(r),!0)}))}return a.map((e=>({data:e.sessionKey,algorithm:ae.read(ae.symmetric,e.sessionKeyAlgorithm)})))}throw i||new Error("Session key decryption failed.")}getLiteralData(){const e=this.unwrapCompressed().packets.findPacket(ae.packet.literalData);return e&&e.getBytes()||null}getFilename(){const e=this.unwrapCompressed().packets.findPacket(ae.packet.literalData);return e&&e.getFilename()||null}getText(){const e=this.unwrapCompressed().packets.findPacket(ae.packet.literalData);return e?e.getText():null}static async generateSessionKey(e=[],t=new Date,r=[],n=se){const i=await qc("symmetric",e,t,r,n),a=ae.read(ae.symmetric,i),s=n.aeadProtect&&await async function(e,t=new Date,r=[],n=se){let i=!0;return await Promise.all(e.map((async function(e,a){const s=await e.getPrimaryUser(t,r[a],n);s.selfCertification.features&&s.selfCertification.features[0]&ae.features.aead||(i=!1)}))),i}(e,t,r,n)?ae.read(ae.aead,await qc("aead",e,t,r,n)):void 0;return{data:ua.generateSessionKey(i),algorithm:a,aeadAlgorithm:s}}async encrypt(e,t,r,n=!1,i=[],a=new Date,s=[],o=se){if(r){if(!Z.isUint8Array(r.data)||!Z.isString(r.algorithm))throw new Error("Invalid session key for encryption.")}else if(e&&e.length)r=await pu.generateSessionKey(e,a,s,o);else{if(!t||!t.length)throw new Error("No keys, passwords, or session key provided.");r=await pu.generateSessionKey(void 0,void 0,void 0,o)}const{data:c,algorithm:u,aeadAlgorithm:l}=r,h=await pu.encryptSessionKey(c,u,l,e,t,n,i,a,s,o);let d;l?(d=new yc,d.aeadAlgorithm=ae.write(ae.aead,l)):d=new fc,d.packets=this.packets;const f=ae.write(ae.symmetric,u);return await d.encrypt(f,c,o),h.packets.push(d),d.packets=new rc,h}static async encryptSessionKey(e,t,r,n,i,a=!1,s=[],o=new Date,c=[],u=se){const l=new rc,h=ae.write(ae.symmetric,t),d=r&&ae.write(ae.aead,r);if(n){const t=await Promise.all(n.map((async function(t,r){const n=await t.getEncryptionKey(s[r],o,c,u),i=new gc;return i.publicKeyID=a?ge.wildcard():n.getKeyID(),i.publicKeyAlgorithm=n.keyPacket.algorithm,i.sessionKey=e,i.sessionKeyAlgorithm=h,await i.encrypt(n.keyPacket),delete i.sessionKey,i})));l.push(...t)}if(i){const t=async function(e,t){try{return await e.decrypt(t),1}catch(e){return 0}},r=(e,t)=>e+t,n=async function(e,a,s,o){const c=new bc(u);return c.sessionKey=e,c.sessionKeyAlgorithm=a,s&&(c.aeadAlgorithm=s),await c.encrypt(o,u),u.passwordCollisionCheck&&1!==(await Promise.all(i.map((e=>t(c,e))))).reduce(r)?n(e,a,o):(delete c.sessionKey,c)},a=await Promise.all(i.map((t=>n(e,h,d,t))));l.push(...a)}return new pu(l)}async sign(e=[],t=null,r=[],n=new Date,i=[],a=[],s=se){const o=new rc,c=this.packets.findPacket(ae.packet.literalData);if(!c)throw new Error("No literal data packet to sign.");let u,l;const h=null===c.text?ae.signature.binary:ae.signature.text;if(t)for(l=t.packets.filterByTag(ae.packet.signature),u=l.length-1;u>=0;u--){const t=l[u],r=new ec;r.signatureType=t.signatureType,r.hashAlgorithm=t.hashAlgorithm,r.publicKeyAlgorithm=t.publicKeyAlgorithm,r.issuerKeyID=t.issuerKeyID,e.length||0!==u||(r.flags=1),o.push(r)}return await Promise.all(Array.from(e).reverse().map((async function(t,a){if(!t.isPrivate())throw new Error("Need private key for signing");const o=r[e.length-1-a],c=await t.getSigningKey(o,n,i,s),u=new ec;return u.signatureType=h,u.hashAlgorithm=await Lc(t,c.keyPacket,n,i,s),u.publicKeyAlgorithm=c.keyPacket.algorithm,u.issuerKeyID=c.getKeyID(),a===e.length-1&&(u.flags=1),u}))).then((e=>{e.forEach((e=>o.push(e)))})),o.push(c),o.push(...await yu(c,e,t,r,n,i,a,!1,s)),new pu(o)}compress(e,t=se){if(e===ae.compression.uncompressed)return this;const r=new ic(t);r.algorithm=e,r.packets=this.packets;const n=new rc;return n.push(r),new pu(n)}async signDetached(e=[],t=null,r=[],n=new Date,i=[],a=[],s=se){const o=this.packets.findPacket(ae.packet.literalData);if(!o)throw new Error("No literal data packet to sign.");return new Dc(await yu(o,e,t,r,n,i,a,!0,s))}async verify(e,t=new Date,r=se){const n=this.unwrapCompressed(),i=n.packets.filterByTag(ae.packet.literalData);if(1!==i.length)throw new Error("Can only verify message with one literal data packet.");u(n.packets.stream)&&n.packets.push(...await W(n.packets.stream,(e=>e||[])));const a=n.packets.filterByTag(ae.packet.onePassSignature).reverse(),s=n.packets.filterByTag(ae.packet.signature);return a.length&&!s.length&&Z.isStream(n.packets.stream)&&!u(n.packets.stream)?(await Promise.all(a.map((async e=>{e.correspondingSig=new Promise(((t,r)=>{e.correspondingSigResolve=t,e.correspondingSigReject=r})),e.signatureData=G((async()=>(await e.correspondingSig).signatureData)),e.hashed=W(await e.hash(e.signatureType,i[0],void 0,!1)),e.hashed.catch((()=>{}))}))),n.packets.stream=L(n.packets.stream,(async(e,t)=>{const r=B(e),n=U(t);try{for(let e=0;e{t.correspondingSigReject(e)})),await n.abort(e)}})),gu(a,i,e,t,!1,r)):gu(s,i,e,t,!1,r)}verifyDetached(e,t,r=new Date,n=se){const i=this.unwrapCompressed().packets.filterByTag(ae.packet.literalData);if(1!==i.length)throw new Error("Can only verify message with one literal data packet.");return gu(e.packets,i,t,r,!0,n)}unwrapCompressed(){const e=this.packets.filterByTag(ae.packet.compressedData);return e.length?new pu(e[0].packets):this}async appendSignature(e,t=se){await this.packets.read(Z.isUint8Array(e)?e:(await pe(e)).data,fu,t)}write(){return this.packets.write()}armor(e=se){return ye(ae.armor.message,this.write(),null,null,null,e)}}async function yu(e,t,r=null,n=[],i=new Date,a=[],s=[],o=!1,c=se){const u=new rc,l=null===e.text?ae.signature.binary:ae.signature.text;if(await Promise.all(t.map((async(t,r)=>{const u=a[r];if(!t.isPrivate())throw new Error("Need private key for signing");const h=await t.getSigningKey(n[r],i,u,c);return Fc(e,t,h.keyPacket,{signatureType:l},i,u,s,o,c)}))).then((e=>{u.push(...e)})),r){const e=r.packets.filterByTag(ae.packet.signature);u.push(...e)}return u}async function gu(e,t,r,n=new Date,i=!1,a=se){return Promise.all(e.filter((function(e){return["text","binary"].includes(ae.read(ae.signature,e.signatureType))})).map((async function(e){return async function(e,t,r,n=new Date,i=!1,a=se){let s,o;for(const t of r){const r=t.getKeys(e.issuerKeyID);if(r.length>0){s=t,o=r[0];break}}const c=e instanceof ec?e.correspondingSig:e,u={keyID:e.issuerKeyID,verified:(async()=>{if(!o)throw new Error(`Could not find signing key with key ID ${e.issuerKeyID.toHex()}`);await e.verify(o.keyPacket,e.signatureType,t[0],n,i,a);const r=await c;if(o.getCreationTime()>r.created)throw new Error("Key is newer than the signature");try{await s.getSigningKey(o.getKeyID(),r.created,void 0,a)}catch(e){if(!a.allowInsecureVerificationWithReformattedKeys||!e.message.match(/Signature creation time is in the future/))throw e;await s.getSigningKey(o.getKeyID(),n,void 0,a)}return!0})(),signature:(async()=>{const e=await c,t=new rc;return e&&t.push(e),new Dc(t)})()};return u.signature.catch((()=>{})),u.verified.catch((()=>{})),u}(e,t,r,n,i,a)})))}async function mu({armoredMessage:e,binaryMessage:t,config:r,...n}){r={...se,...r};let i=e||t;if(!i)throw new Error("readMessage: must pass options object containing `armoredMessage` or `binaryMessage`");if(e&&!Z.isString(e)&&!Z.isStream(e))throw new Error("readMessage: options.armoredMessage must be a string or stream");if(t&&!Z.isUint8Array(t)&&!Z.isStream(t))throw new Error("readMessage: options.binaryMessage must be a Uint8Array or stream");const a=Object.keys(n);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);const s=Z.isStream(i);if(s&&(await C(),i=M(i)),e){const{type:e,data:t}=await pe(i,r);if(e!==ae.armor.message)throw new Error("Armored text not of type message");i=t}const o=await rc.fromBinary(i,hu,r),c=new pu(o);return c.fromStream=s,c}async function bu({text:e,binary:t,filename:r,date:n=new Date,format:i=(void 0!==e?"utf8":"binary"),...a}){let s=void 0!==e?e:t;if(void 0===s)throw new Error("createMessage: must pass options object containing `text` or `binary`");if(e&&!Z.isString(e)&&!Z.isStream(e))throw new Error("createMessage: options.text must be a string or stream");if(t&&!Z.isUint8Array(t)&&!Z.isStream(t))throw new Error("createMessage: options.binary must be a Uint8Array or stream");const o=Object.keys(a);if(o.length>0)throw new Error(`Unknown option: ${o.join(", ")}`);const c=Z.isStream(s);c&&(await C(),s=M(s));const u=new Jo(n);void 0!==e?u.setText(s,ae.write(ae.literal,i)):u.setBytes(s,ae.write(ae.literal,i)),void 0!==r&&u.setFilename(r);const l=new rc;l.push(u);const h=new pu(l);return h.fromStream=c,h}const wu=Z.constructAllowedPackets([Xo]);class vu{constructor(e,t){if(this.text=Z.removeTrailingSpaces(e).replace(/\r?\n/g,"\r\n"),t&&!(t instanceof Dc))throw new Error("Invalid signature input");this.signature=t||new Dc(new rc)}getSigningKeyIDs(){const e=[];return this.signature.packets.forEach((function(t){e.push(t.issuerKeyID)})),e}async sign(e,t=null,r=[],n=new Date,i=[],a=[],s=se){const o=new Jo;o.setText(this.text);const c=new Dc(await yu(o,e,t,r,n,i,a,!0,s));return new vu(this.text,c)}verify(e,t=new Date,r=se){const n=this.signature.packets,i=new Jo;return i.setText(this.text),gu(n,[i],e,t,!0,r)}getText(){return this.text.replace(/\r\n/g,"\n")}armor(e=se){let t=this.signature.packets.map((function(e){return ae.read(ae.hash,e.hashAlgorithm).toUpperCase()}));t=t.filter((function(e,t,r){return r.indexOf(e)===t}));const r={hash:t.join(),text:this.text,data:this.signature.packets.write()};return ye(ae.armor.signed,r,void 0,void 0,void 0,e)}}async function ku({cleartextMessage:e,config:t,...r}){if(t={...se,...t},!e)throw new Error("readCleartextMessage: must pass options object containing `cleartextMessage`");if(!Z.isString(e))throw new Error("readCleartextMessage: options.cleartextMessage must be a string");const n=Object.keys(r);if(n.length>0)throw new Error(`Unknown option: ${n.join(", ")}`);const i=await pe(e);if(i.type!==ae.armor.signed)throw new Error("No cleartext signed message.");const a=await rc.fromBinary(i.data,wu,t);!function(e,t){const r=function(e){const r=e=>t=>e.hashAlgorithm===t;for(let n=0;n0)throw new Error(`Unknown option: ${r.join(", ")}`);return new vu(e)}async function _u({userIDs:e=[],passphrase:t,type:r="ecc",rsaBits:n=4096,curve:i="curve25519",keyExpirationTime:a=0,date:s=new Date,subkeys:o=[{}],format:c="armored",config:u,...l}){Lu(u={...se,...u}),e=qu(e);const h=Object.keys(l);if(h.length>0)throw new Error(`Unknown option: ${h.join(", ")}`);if(0===e.length)throw new Error("UserIDs are required for key generation");if("rsa"===r&&nWc(e.subkeys[r],e)));let r=[Rc(e,t)];r=r.concat(e.subkeys.map((e=>Uc(e,t))));const n=await Promise.all(r),i=await su(n[0],n.slice(1),e,t),a=await i.getRevocationCertificate(e.date,t);return i.revocationSignatures=[],{key:i,revocationCertificate:a}}(d,u);return e.getKeys().forEach((({keyPacket:e})=>Jc(e,u))),{privateKey:ju(e,c,u),publicKey:ju(e.toPublic(),c,u),revocationCertificate:t}}catch(e){throw Z.wrapError("Error generating keypair",e)}}async function Su({privateKey:e,userIDs:t=[],passphrase:r,keyExpirationTime:n=0,date:i,format:a="armored",config:s,...o}){Lu(s={...se,...s}),t=qu(t);const c=Object.keys(o);if(c.length>0)throw new Error(`Unknown option: ${c.join(", ")}`);if(0===t.length)throw new Error("UserIDs are required for key reformat");const u={privateKey:e,userIDs:t,passphrase:r,keyExpirationTime:n,date:i};try{const{key:e,revocationCertificate:t}=await async function(e,t){e=o(e);const{privateKey:r}=e;if(!r.isPrivate())throw new Error("Cannot reformat a public key");if(r.keyPacket.isDummy())throw new Error("Cannot reformat a gnu-dummy primary key");if(!r.getKeys().every((({keyPacket:e})=>e.isDecrypted())))throw new Error("Key is not decrypted");const n=r.keyPacket;e.subkeys||(e.subkeys=await Promise.all(r.subkeys.map((async e=>{const r=e.keyPacket,i={key:n,bind:r},a=await Kc(e.bindingSignatures,n,ae.signature.subkeyBinding,i,null,t).catch((()=>({})));return{sign:a.keyFlags&&a.keyFlags[0]&ae.keyFlags.signData}}))));const i=r.subkeys.map((e=>e.keyPacket));if(e.subkeys.length!==i.length)throw new Error("Number of subkey options does not match number of subkeys");e.subkeys=e.subkeys.map((t=>o(t,e)));const a=await su(n,i,e,t),s=await a.getRevocationCertificate(e.date,t);return a.revocationSignatures=[],{key:a,revocationCertificate:s};function o(e,t={}){return e.keyExpirationTime=e.keyExpirationTime||t.keyExpirationTime,e.passphrase=Z.isString(e.passphrase)?e.passphrase:t.passphrase,e.date=e.date||t.date,e}}(u,s);return{privateKey:ju(e,a,s),publicKey:ju(e.toPublic(),a,s),revocationCertificate:t}}catch(e){throw Z.wrapError("Error reformatting keypair",e)}}async function Eu({key:e,revocationCertificate:t,reasonForRevocation:r,date:n=new Date,format:i="armored",config:a,...s}){Lu(a={...se,...a});const o=Object.keys(s);if(o.length>0)throw new Error(`Unknown option: ${o.join(", ")}`);try{const s=t?await e.applyRevocationCertificate(t,n,a):await e.revoke(r,n,a);return s.isPrivate()?{privateKey:ju(s,i,a),publicKey:ju(s.toPublic(),i,a)}:{privateKey:null,publicKey:ju(s,i,a)}}catch(e){throw Z.wrapError("Error revoking key",e)}}async function xu({privateKey:e,passphrase:t,config:r,...n}){Lu(r={...se,...r});const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);if(!e.isPrivate())throw new Error("Cannot decrypt a public key");const a=e.clone(!0),s=Z.isArray(t)?t:[t];try{return await Promise.all(a.getKeys().map((e=>Z.anyPromise(s.map((t=>e.keyPacket.decrypt(t))))))),await a.validate(r),a}catch(e){throw a.clearPrivateParams(),Z.wrapError("Error decrypting private key",e)}}async function Pu({privateKey:e,passphrase:t,config:r,...n}){Lu(r={...se,...r});const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);if(!e.isPrivate())throw new Error("Cannot encrypt a public key");const a=e.clone(!0),s=a.getKeys(),o=Z.isArray(t)?t:new Array(s.length).fill(t);if(o.length!==s.length)throw new Error("Invalid number of passphrases given for key encryption");try{return await Promise.all(s.map((async(e,t)=>{const{keyPacket:n}=e;await n.encrypt(o[t],r),n.clearPrivateParams()}))),a}catch(e){throw a.clearPrivateParams(),Z.wrapError("Error encrypting private key",e)}}async function Cu({message:e,encryptionKeys:t,signingKeys:r,passwords:n,sessionKey:i,format:a="armored",signature:s=null,wildcard:o=!1,signingKeyIDs:c=[],encryptionKeyIDs:u=[],date:l=new Date,signingUserIDs:h=[],encryptionUserIDs:d=[],signatureNotations:f=[],config:p,...y}){if(Lu(p={...se,...p}),Ru(e),Ou(a),t=qu(t),r=qu(r),n=qu(n),c=qu(c),u=qu(u),h=qu(h),d=qu(d),f=qu(f),y.detached)throw new Error("The `detached` option has been removed from openpgp.encrypt, separately call openpgp.sign instead. Don't forget to remove the `privateKeys` option as well.");if(y.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.encrypt, pass `encryptionKeys` instead");if(y.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.encrypt, pass `signingKeys` instead");if(void 0!==y.armor)throw new Error("The `armor` option has been removed from openpgp.encrypt, pass `format` instead.");const g=Object.keys(y);if(g.length>0)throw new Error(`Unknown option: ${g.join(", ")}`);r||(r=[]);const m=e.fromStream;try{if((r.length||s)&&(e=await e.sign(r,s,c,l,h,f,p)),e=e.compress(await qc("compression",t,l,d,p),p),e=await e.encrypt(t,n,i,o,u,l,d,p),"object"===a)return e;const y="armored"===a;return Fu(y?e.armor(p):e.write(),m,y?"utf8":"binary")}catch(e){throw Z.wrapError("Error encrypting message",e)}}async function Tu({message:e,decryptionKeys:t,passwords:r,sessionKeys:n,verificationKeys:i,expectSigned:a=!1,format:s="utf8",signature:o=null,date:c=new Date,config:u,...l}){if(Lu(u={...se,...u}),Ru(e),i=qu(i),t=qu(t),r=qu(r),n=qu(n),l.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.decrypt, pass `decryptionKeys` instead");if(l.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.decrypt, pass `verificationKeys` instead");const h=Object.keys(l);if(h.length>0)throw new Error(`Unknown option: ${h.join(", ")}`);try{const l=await e.decrypt(t,r,n,c,u);i||(i=[]);const h={};if(h.signatures=o?await l.verifyDetached(o,i,c,u):await l.verify(i,c,u),h.data="binary"===s?l.getLiteralData():l.getText(),h.filename=l.getFilename(),zu(h,e),a){if(0===i.length)throw new Error("Verification keys are required to verify message signatures");if(0===h.signatures.length)throw new Error("Message is not signed");h.data=D([h.data,G((async()=>{await Z.anyPromise(h.signatures.map((e=>e.verified)))}))])}return h.data=await Fu(h.data,e.fromStream,s),h}catch(e){throw Z.wrapError("Error decrypting message",e)}}async function Mu({message:e,signingKeys:t,format:r="armored",detached:n=!1,signingKeyIDs:i=[],date:a=new Date,signingUserIDs:s=[],signatureNotations:o=[],config:c,...u}){if(Lu(c={...se,...c}),Ku(e),Ou(r),t=qu(t),i=qu(i),s=qu(s),o=qu(o),u.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.sign, pass `signingKeys` instead");if(void 0!==u.armor)throw new Error("The `armor` option has been removed from openpgp.sign, pass `format` instead.");const l=Object.keys(u);if(l.length>0)throw new Error(`Unknown option: ${l.join(", ")}`);if(e instanceof vu&&"binary"===r)throw new Error("Cannot return signed cleartext message in binary format");if(e instanceof vu&&n)throw new Error("Cannot detach-sign a cleartext message");if(!t||0===t.length)throw new Error("No signing keys provided");try{let u;if(u=n?await e.signDetached(t,void 0,i,a,s,o,c):await e.sign(t,void 0,i,a,s,o,c),"object"===r)return u;const l="armored"===r;return u=l?u.armor(c):u.write(),n&&(u=L(e.packets.write(),(async(e,t)=>{await Promise.all([R(u,t),W(e).catch((()=>{}))])}))),Fu(u,e.fromStream,l?"utf8":"binary")}catch(e){throw Z.wrapError("Error signing message",e)}}async function Iu({message:e,verificationKeys:t,expectSigned:r=!1,format:n="utf8",signature:i=null,date:a=new Date,config:s,...o}){if(Lu(s={...se,...s}),Ku(e),t=qu(t),o.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.verify, pass `verificationKeys` instead");const c=Object.keys(o);if(c.length>0)throw new Error(`Unknown option: ${c.join(", ")}`);if(e instanceof vu&&"binary"===n)throw new Error("Can't return cleartext message data as binary");if(e instanceof vu&&i)throw new Error("Can't verify detached cleartext signature");try{const o={};if(o.signatures=i?await e.verifyDetached(i,t,a,s):await e.verify(t,a,s),o.data="binary"===n?e.getLiteralData():e.getText(),e.fromStream&&zu(o,e),r){if(0===o.signatures.length)throw new Error("Message is not signed");o.data=D([o.data,G((async()=>{await Z.anyPromise(o.signatures.map((e=>e.verified)))}))])}return o.data=await Fu(o.data,e.fromStream,n),o}catch(e){throw Z.wrapError("Error verifying signed message",e)}}async function Du({encryptionKeys:e,date:t=new Date,encryptionUserIDs:r=[],config:n,...i}){if(Lu(n={...se,...n}),e=qu(e),r=qu(r),i.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.generateSessionKey, pass `encryptionKeys` instead");const a=Object.keys(i);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);try{return await pu.generateSessionKey(e,t,r,n)}catch(e){throw Z.wrapError("Error generating session key",e)}}async function Bu({data:e,algorithm:t,aeadAlgorithm:r,encryptionKeys:n,passwords:i,format:a="armored",wildcard:s=!1,encryptionKeyIDs:o=[],date:c=new Date,encryptionUserIDs:u=[],config:l,...h}){if(Lu(l={...se,...l}),function(e,t){if(!Z.isUint8Array(e))throw new Error("Parameter [data] must be of type Uint8Array")}(e),function(e,t){if(!Z.isString(e))throw new Error("Parameter [algorithm] must be of type String")}(t),Ou(a),n=qu(n),i=qu(i),o=qu(o),u=qu(u),h.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.encryptSessionKey, pass `encryptionKeys` instead");const d=Object.keys(h);if(d.length>0)throw new Error(`Unknown option: ${d.join(", ")}`);if(!(n&&0!==n.length||i&&0!==i.length))throw new Error("No encryption keys or passwords provided.");try{return ju(await pu.encryptSessionKey(e,t,r,n,i,s,o,c,u,l),a,l)}catch(e){throw Z.wrapError("Error encrypting session key",e)}}async function Uu({message:e,decryptionKeys:t,passwords:r,date:n=new Date,config:i,...a}){if(Lu(i={...se,...i}),Ru(e),t=qu(t),r=qu(r),a.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.decryptSessionKeys, pass `decryptionKeys` instead");const s=Object.keys(a);if(s.length>0)throw new Error(`Unknown option: ${s.join(", ")}`);try{return await e.decryptSessionKeys(t,r,n,i)}catch(e){throw Z.wrapError("Error decrypting session keys",e)}}function Ru(e){if(!(e instanceof pu))throw new Error("Parameter [message] needs to be of type Message")}function Ku(e){if(!(e instanceof vu||e instanceof pu))throw new Error("Parameter [message] needs to be of type Message or CleartextMessage")}function Ou(e){if("armored"!==e&&"binary"!==e&&"object"!==e)throw new Error(`Unsupported format ${e}`)}const Nu=Object.keys(se).length;function Lu(e){const t=Object.keys(e);if(t.length!==Nu)for(const e of t)if(void 0===se[e])throw new Error(`Unknown config property: ${e}`)}function qu(e){return e&&!Z.isArray(e)&&(e=[e]),e}async function Fu(e,t,r="utf8"){const n=Z.isStream(e);return"array"===n?W(e):"node"===t?(e=w(e),"binary"!==r&&e.setEncoding(r),e):"web"===t&&"ponyfill"===n?S(e):e}function zu(e,t){e.data=L(t.packets.stream,(async(t,r)=>{await R(e.data,r,{preventClose:!0});const n=U(r);try{await W(t,(e=>e)),await n.close()}catch(e){await n.abort(e)}}))}function ju(e,t,r){switch(t){case"object":return e;case"armored":return e.armor(r);case"binary":return e.write();default:throw new Error(`Unsupported format ${t}`)}}const Hu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol:e=>`Symbol(${e})`;function Wu(){}const Vu="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0;function Gu(e){return"object"==typeof e&&null!==e||"function"==typeof e}const $u=Wu,Ju=Promise,Zu=Promise.prototype.then,Yu=Promise.resolve.bind(Ju),Xu=Promise.reject.bind(Ju);function Qu(e){return new Ju(e)}function el(e){return Yu(e)}function tl(e){return Xu(e)}function rl(e,t,r){return Zu.call(e,t,r)}function nl(e,t,r){rl(rl(e,t,r),void 0,$u)}function il(e,t){nl(e,t)}function al(e,t){nl(e,void 0,t)}function sl(e,t,r){return rl(e,t,r)}function ol(e){rl(e,void 0,$u)}const cl=(()=>{const e=Vu&&Vu.queueMicrotask;if("function"==typeof e)return e;const t=el(void 0);return e=>rl(t,e)})();function ul(e,t,r){if("function"!=typeof e)throw new TypeError("Argument is not a function");return Function.prototype.apply.call(e,t,r)}function ll(e,t,r){try{return el(ul(e,t,r))}catch(e){return tl(e)}}class hl{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(e){const t=this._back;let r=t;16383===t._elements.length&&(r={_elements:[],_next:void 0}),t._elements.push(e),r!==t&&(this._back=r,t._next=r),++this._size}shift(){const e=this._front;let t=e;const r=this._cursor;let n=r+1;const i=e._elements,a=i[r];return 16384===n&&(t=e._next,n=0),--this._size,this._cursor=n,e!==t&&(this._front=t),i[r]=void 0,a}forEach(e){let t=this._cursor,r=this._front,n=r._elements;for(;!(t===n.length&&void 0===r._next||t===n.length&&(r=r._next,n=r._elements,t=0,0===n.length));)e(n[t]),++t}peek(){const e=this._front,t=this._cursor;return e._elements[t]}}function dl(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?gl(e):"closed"===t._state?function(e){gl(e),wl(e)}(e):ml(e,t._storedError)}function fl(e,t){return $d(e._ownerReadableStream,t)}function pl(e){"readable"===e._ownerReadableStream._state?bl(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(e,t){ml(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness"))}(e),e._ownerReadableStream._reader=void 0,e._ownerReadableStream=void 0}function yl(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function gl(e){e._closedPromise=Qu(((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r}))}function ml(e,t){gl(e),bl(e,t)}function bl(e,t){void 0!==e._closedPromise_reject&&(ol(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}function wl(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}const vl=Hu("[[AbortSteps]]"),kl=Hu("[[ErrorSteps]]"),Al=Hu("[[CancelSteps]]"),_l=Hu("[[PullSteps]]"),Sl=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},El=Math.trunc||function(e){return e<0?Math.ceil(e):Math.floor(e)};function xl(e,t){if(void 0!==e&&"object"!=typeof(r=e)&&"function"!=typeof r)throw new TypeError(`${t} is not an object.`);var r}function Pl(e,t){if("function"!=typeof e)throw new TypeError(`${t} is not a function.`)}function Cl(e,t){if(!function(e){return"object"==typeof e&&null!==e||"function"==typeof e}(e))throw new TypeError(`${t} is not an object.`)}function Tl(e,t,r){if(void 0===e)throw new TypeError(`Parameter ${t} is required in '${r}'.`)}function Ml(e,t,r){if(void 0===e)throw new TypeError(`${t} is required in '${r}'.`)}function Il(e){return Number(e)}function Dl(e){return 0===e?0:e}function Bl(e,t){const r=Number.MAX_SAFE_INTEGER;let n=Number(e);if(n=Dl(n),!Sl(n))throw new TypeError(`${t} is not a finite number`);if(n=function(e){return Dl(El(e))}(n),n<0||n>r)throw new TypeError(`${t} is outside the accepted range of 0 to ${r}, inclusive`);return Sl(n)&&0!==n?n:0}function Ul(e,t){if(!Vd(e))throw new TypeError(`${t} is not a ReadableStream.`)}function Rl(e){return new ql(e)}function Kl(e,t){e._reader._readRequests.push(t)}function Ol(e,t,r){const n=e._reader._readRequests.shift();r?n._closeSteps():n._chunkSteps(t)}function Nl(e){return e._reader._readRequests.length}function Ll(e){const t=e._reader;return void 0!==t&&!!Fl(t)}class ql{constructor(e){if(Tl(e,1,"ReadableStreamDefaultReader"),Ul(e,"First parameter"),Gd(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");dl(this,e),this._readRequests=new hl}get closed(){return Fl(this)?this._closedPromise:tl(jl("closed"))}cancel(e=void 0){return Fl(this)?void 0===this._ownerReadableStream?tl(yl("cancel")):fl(this,e):tl(jl("cancel"))}read(){if(!Fl(this))return tl(jl("read"));if(void 0===this._ownerReadableStream)return tl(yl("read from"));let e,t;const r=Qu(((r,n)=>{e=r,t=n}));return zl(this,{_chunkSteps:t=>e({value:t,done:!1}),_closeSteps:()=>e({value:void 0,done:!0}),_errorSteps:e=>t(e)}),r}releaseLock(){if(!Fl(this))throw jl("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");pl(this)}}}function Fl(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")}function zl(e,t){const r=e._ownerReadableStream;r._disturbed=!0,"closed"===r._state?t._closeSteps():"errored"===r._state?t._errorSteps(r._storedError):r._readableStreamController[_l](t)}function jl(e){return new TypeError(`ReadableStreamDefaultReader.prototype.${e} can only be used on a ReadableStreamDefaultReader`)}let Hl;Object.defineProperties(ql.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(ql.prototype,Hu.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0}),"symbol"==typeof Hu.asyncIterator&&(Hl={[Hu.asyncIterator](){return this}},Object.defineProperty(Hl,Hu.asyncIterator,{enumerable:!1}));class Wl{constructor(e,t){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=e,this._preventCancel=t}next(){const e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?sl(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(e){const t=()=>this._returnSteps(e);return this._ongoingPromise?sl(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const e=this._reader;if(void 0===e._ownerReadableStream)return tl(yl("iterate"));let t,r;const n=Qu(((e,n)=>{t=e,r=n}));return zl(e,{_chunkSteps:e=>{this._ongoingPromise=void 0,cl((()=>t({value:e,done:!1})))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,pl(e),t({value:void 0,done:!0})},_errorSteps:t=>{this._ongoingPromise=void 0,this._isFinished=!0,pl(e),r(t)}}),n}_returnSteps(e){if(this._isFinished)return Promise.resolve({value:e,done:!0});this._isFinished=!0;const t=this._reader;if(void 0===t._ownerReadableStream)return tl(yl("finish iterating"));if(!this._preventCancel){const r=fl(t,e);return pl(t),sl(r,(()=>({value:e,done:!0})))}return pl(t),el({value:e,done:!0})}}const Vl={next(){return Gl(this)?this._asyncIteratorImpl.next():tl($l("next"))},return(e){return Gl(this)?this._asyncIteratorImpl.return(e):tl($l("return"))}};function Gl(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_asyncIteratorImpl")}function $l(e){return new TypeError(`ReadableStreamAsyncIterator.${e} can only be used on a ReadableSteamAsyncIterator`)}void 0!==Hl&&Object.setPrototypeOf(Vl,Hl);const Jl=Number.isNaN||function(e){return e!=e};function Zl(e){return!!function(e){return"number"==typeof e&&(!Jl(e)&&!(e<0))}(e)&&e!==1/0}function Yl(e){const t=e._queue.shift();return e._queueTotalSize-=t.size,e._queueTotalSize<0&&(e._queueTotalSize=0),t.value}function Xl(e,t,r){if(!Zl(r=Number(r)))throw new RangeError("Size must be a finite, non-NaN, non-negative number.");e._queue.push({value:t,size:r}),e._queueTotalSize+=r}function Ql(e){e._queue=new hl,e._queueTotalSize=0}function eh(e){return e.slice()}class th{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!ih(this))throw wh("view");return this._view}respond(e){if(!ih(this))throw wh("respond");if(Tl(e,1,"respond"),e=Bl(e,"First parameter"),void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");this._view.buffer,function(e,t){if(!Zl(t=Number(t)))throw new RangeError("bytesWritten must be a finite");ph(e,t)}(this._associatedReadableByteStreamController,e)}respondWithNewView(e){if(!ih(this))throw wh("respondWithNewView");if(Tl(e,1,"respondWithNewView"),!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");!function(e,t){const r=e._pendingPullIntos.peek();if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.byteLength!==t.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");r.buffer=t.buffer,ph(e,t.byteLength)}(this._associatedReadableByteStreamController,e)}}Object.defineProperties(th.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(th.prototype,Hu.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class rh{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!nh(this))throw vh("byobRequest");if(null===this._byobRequest&&this._pendingPullIntos.length>0){const e=this._pendingPullIntos.peek(),t=new Uint8Array(e.buffer,e.byteOffset+e.bytesFilled,e.byteLength-e.bytesFilled),r=Object.create(th.prototype);!function(e,t,r){e._associatedReadableByteStreamController=t,e._view=r}(r,this,t),this._byobRequest=r}return this._byobRequest}get desiredSize(){if(!nh(this))throw vh("desiredSize");return bh(this)}close(){if(!nh(this))throw vh("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be closed`);!function(e){const t=e._controlledReadableByteStream;if(!e._closeRequested&&"readable"===t._state)if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0&&e._pendingPullIntos.peek().bytesFilled>0){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");throw mh(e,t),t}gh(e),Jd(t)}}(this)}enqueue(e){if(!nh(this))throw vh("enqueue");if(Tl(e,1,"enqueue"),!ArrayBuffer.isView(e))throw new TypeError("chunk must be an array buffer view");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");const t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError(`The stream (in ${t} state) is not in the readable state and cannot be enqueued to`);!function(e,t){const r=e._controlledReadableByteStream;if(e._closeRequested||"readable"!==r._state)return;const n=t.buffer,i=t.byteOffset,a=t.byteLength,s=n;Ll(r)?0===Nl(r)?ch(e,s,i,a):Ol(r,new Uint8Array(s,i,a),!1):_h(r)?(ch(e,s,i,a),fh(e)):ch(e,s,i,a),ah(e)}(this,e)}error(e=void 0){if(!nh(this))throw vh("error");mh(this,e)}[Al](e){this._pendingPullIntos.length>0&&(this._pendingPullIntos.peek().bytesFilled=0),Ql(this);const t=this._cancelAlgorithm(e);return gh(this),t}[_l](e){const t=this._controlledReadableByteStream;if(this._queueTotalSize>0){const t=this._queue.shift();this._queueTotalSize-=t.byteLength,hh(this);const r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength);return void e._chunkSteps(r)}const r=this._autoAllocateChunkSize;if(void 0!==r){let t;try{t=new ArrayBuffer(r)}catch(t){return void e._errorSteps(t)}const n={buffer:t,byteOffset:0,byteLength:r,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(n)}Kl(t,e),ah(this)}}function nh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")}function ih(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")}function ah(e){const t=function(e){const t=e._controlledReadableByteStream;if("readable"!==t._state)return!1;if(e._closeRequested)return!1;if(!e._started)return!1;if(Ll(t)&&Nl(t)>0)return!0;if(_h(t)&&Ah(t)>0)return!0;return bh(e)>0}(e);t&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,nl(e._pullAlgorithm(),(()=>{e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,ah(e))}),(t=>{mh(e,t)}))))}function sh(e,t){let r=!1;"closed"===e._state&&(r=!0);const n=oh(t);"default"===t.readerType?Ol(e,n,r):function(e,t,r){const n=e._reader._readIntoRequests.shift();r?n._closeSteps(t):n._chunkSteps(t)}(e,n,r)}function oh(e){const t=e.bytesFilled,r=e.elementSize;return new e.viewConstructor(e.buffer,e.byteOffset,t/r)}function ch(e,t,r,n){e._queue.push({buffer:t,byteOffset:r,byteLength:n}),e._queueTotalSize+=n}function uh(e,t){const r=t.elementSize,n=t.bytesFilled-t.bytesFilled%r,i=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),a=t.bytesFilled+i,s=a-a%r;let o=i,c=!1;s>n&&(o=s-t.bytesFilled,c=!0);const u=e._queue;for(;o>0;){const r=u.peek(),n=Math.min(o,r.byteLength),i=t.byteOffset+t.bytesFilled;l=t.buffer,h=i,d=r.buffer,f=r.byteOffset,p=n,new Uint8Array(l).set(new Uint8Array(d,f,p),h),r.byteLength===n?u.shift():(r.byteOffset+=n,r.byteLength-=n),e._queueTotalSize-=n,lh(e,n,t),o-=n}var l,h,d,f,p;return c}function lh(e,t,r){dh(e),r.bytesFilled+=t}function hh(e){0===e._queueTotalSize&&e._closeRequested?(gh(e),Jd(e._controlledReadableByteStream)):ah(e)}function dh(e){null!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=null,e._byobRequest=null)}function fh(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;const t=e._pendingPullIntos.peek();uh(e,t)&&(yh(e),sh(e._controlledReadableByteStream,t))}}function ph(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream");!function(e,t){t.buffer=t.buffer;const r=e._controlledReadableByteStream;if(_h(r))for(;Ah(r)>0;)sh(r,yh(e))}(e,r)}else!function(e,t,r){if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range");if(lh(e,t,r),r.bytesFilled0){const t=r.byteOffset+r.bytesFilled,i=r.buffer.slice(t-n,t);ch(e,i,0,i.byteLength)}r.buffer=r.buffer,r.bytesFilled-=n,sh(e._controlledReadableByteStream,r),fh(e)}(e,t,r);ah(e)}function yh(e){const t=e._pendingPullIntos.shift();return dh(e),t}function gh(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0}function mh(e,t){const r=e._controlledReadableByteStream;"readable"===r._state&&(function(e){dh(e),e._pendingPullIntos=new hl}(e),Ql(e),gh(e),Zd(r,t))}function bh(e){const t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function wh(e){return new TypeError(`ReadableStreamBYOBRequest.prototype.${e} can only be used on a ReadableStreamBYOBRequest`)}function vh(e){return new TypeError(`ReadableByteStreamController.prototype.${e} can only be used on a ReadableByteStreamController`)}function kh(e,t){e._reader._readIntoRequests.push(t)}function Ah(e){return e._reader._readIntoRequests.length}function _h(e){const t=e._reader;return void 0!==t&&!!Eh(t)}Object.defineProperties(rh.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(rh.prototype,Hu.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class Sh{constructor(e){if(Tl(e,1,"ReadableStreamBYOBReader"),Ul(e,"First parameter"),Gd(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!nh(e._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");dl(this,e),this._readIntoRequests=new hl}get closed(){return Eh(this)?this._closedPromise:tl(xh("closed"))}cancel(e=void 0){return Eh(this)?void 0===this._ownerReadableStream?tl(yl("cancel")):fl(this,e):tl(xh("cancel"))}read(e){if(!Eh(this))return tl(xh("read"));if(!ArrayBuffer.isView(e))return tl(new TypeError("view must be an array buffer view"));if(0===e.byteLength)return tl(new TypeError("view must have non-zero byteLength"));if(0===e.buffer.byteLength)return tl(new TypeError("view's buffer must have non-zero byteLength"));if(void 0===this._ownerReadableStream)return tl(yl("read from"));let t,r;const n=Qu(((e,n)=>{t=e,r=n}));return function(e,t,r){const n=e._ownerReadableStream;n._disturbed=!0,"errored"===n._state?r._errorSteps(n._storedError):function(e,t,r){const n=e._controlledReadableByteStream;let i=1;t.constructor!==DataView&&(i=t.constructor.BYTES_PER_ELEMENT);const a=t.constructor,s={buffer:t.buffer,byteOffset:t.byteOffset,byteLength:t.byteLength,bytesFilled:0,elementSize:i,viewConstructor:a,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(s),void kh(n,r);if("closed"!==n._state){if(e._queueTotalSize>0){if(uh(e,s)){const t=oh(s);return hh(e),void r._chunkSteps(t)}if(e._closeRequested){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");return mh(e,t),void r._errorSteps(t)}}e._pendingPullIntos.push(s),kh(n,r),ah(e)}else{const e=new a(s.buffer,s.byteOffset,0);r._closeSteps(e)}}(n._readableStreamController,t,r)}(this,e,{_chunkSteps:e=>t({value:e,done:!1}),_closeSteps:e=>t({value:e,done:!0}),_errorSteps:e=>r(e)}),n}releaseLock(){if(!Eh(this))throw xh("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readIntoRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");pl(this)}}}function Eh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")}function xh(e){return new TypeError(`ReadableStreamBYOBReader.prototype.${e} can only be used on a ReadableStreamBYOBReader`)}function Ph(e,t){const{highWaterMark:r}=e;if(void 0===r)return t;if(Jl(r)||r<0)throw new RangeError("Invalid highWaterMark");return r}function Ch(e){const{size:t}=e;return t||(()=>1)}function Th(e,t){xl(e,t);const r=null==e?void 0:e.highWaterMark,n=null==e?void 0:e.size;return{highWaterMark:void 0===r?void 0:Il(r),size:void 0===n?void 0:Mh(n,`${t} has member 'size' that`)}}function Mh(e,t){return Pl(e,t),t=>Il(e(t))}function Ih(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function Dh(e,t,r){return Pl(e,r),()=>ll(e,t,[])}function Bh(e,t,r){return Pl(e,r),r=>ul(e,t,[r])}function Uh(e,t,r){return Pl(e,r),(r,n)=>ll(e,t,[r,n])}function Rh(e,t){if(!Lh(e))throw new TypeError(`${t} is not a WritableStream.`)}Object.defineProperties(Sh.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Sh.prototype,Hu.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});class Kh{constructor(e={},t={}){void 0===e?e=null:Cl(e,"First parameter");const r=Th(t,"Second parameter"),n=function(e,t){xl(e,t);const r=null==e?void 0:e.abort,n=null==e?void 0:e.close,i=null==e?void 0:e.start,a=null==e?void 0:e.type,s=null==e?void 0:e.write;return{abort:void 0===r?void 0:Ih(r,e,`${t} has member 'abort' that`),close:void 0===n?void 0:Dh(n,e,`${t} has member 'close' that`),start:void 0===i?void 0:Bh(i,e,`${t} has member 'start' that`),write:void 0===s?void 0:Uh(s,e,`${t} has member 'write' that`),type:a}}(e,"First parameter");if(Nh(this),void 0!==n.type)throw new RangeError("Invalid type is specified");const i=Ch(r);!function(e,t,r,n){const i=Object.create(rd.prototype);let a=()=>{},s=()=>el(void 0),o=()=>el(void 0),c=()=>el(void 0);void 0!==t.start&&(a=()=>t.start(i)),void 0!==t.write&&(s=e=>t.write(e,i)),void 0!==t.close&&(o=()=>t.close()),void 0!==t.abort&&(c=e=>t.abort(e)),nd(e,i,a,s,o,c,r,n)}(this,n,Ph(r,1),i)}get locked(){if(!Lh(this))throw ld("locked");return qh(this)}abort(e=void 0){return Lh(this)?qh(this)?tl(new TypeError("Cannot abort a stream that already has a writer")):Fh(this,e):tl(ld("abort"))}close(){return Lh(this)?qh(this)?tl(new TypeError("Cannot close a stream that already has a writer")):Vh(this)?tl(new TypeError("Cannot close an already-closing stream")):zh(this):tl(ld("close"))}getWriter(){if(!Lh(this))throw ld("getWriter");return Oh(this)}}function Oh(e){return new Jh(e)}function Nh(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=new hl,e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function Lh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")}function qh(e){return void 0!==e._writer}function Fh(e,t){const r=e._state;if("closed"===r||"errored"===r)return el(void 0);if(void 0!==e._pendingAbortRequest)return e._pendingAbortRequest._promise;let n=!1;"erroring"===r&&(n=!0,t=void 0);const i=Qu(((r,i)=>{e._pendingAbortRequest={_promise:void 0,_resolve:r,_reject:i,_reason:t,_wasAlreadyErroring:n}}));return e._pendingAbortRequest._promise=i,n||Hh(e,t),i}function zh(e){const t=e._state;if("closed"===t||"errored"===t)return tl(new TypeError(`The stream (in ${t} state) is not in the writable state and cannot be closed`));const r=Qu(((t,r)=>{const n={_resolve:t,_reject:r};e._closeRequest=n})),n=e._writer;var i;return void 0!==n&&e._backpressure&&"writable"===t&&kd(n),Xl(i=e._writableStreamController,td,0),sd(i),r}function jh(e,t){"writable"!==e._state?Wh(e):Hh(e,t)}function Hh(e,t){const r=e._writableStreamController;e._state="erroring",e._storedError=t;const n=e._writer;void 0!==n&&Xh(n,t),!function(e){return void 0!==e._inFlightWriteRequest||void 0!==e._inFlightCloseRequest}(e)&&r._started&&Wh(e)}function Wh(e){e._state="errored",e._writableStreamController[kl]();const t=e._storedError;if(e._writeRequests.forEach((e=>{e._reject(t)})),e._writeRequests=new hl,void 0===e._pendingAbortRequest)return void Gh(e);const r=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,r._wasAlreadyErroring)return r._reject(t),void Gh(e);nl(e._writableStreamController[vl](r._reason),(()=>{r._resolve(),Gh(e)}),(t=>{r._reject(t),Gh(e)}))}function Vh(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function Gh(e){void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);const t=e._writer;void 0!==t&&yd(t,e._storedError)}function $h(e,t){const r=e._writer;void 0!==r&&t!==e._backpressure&&(t?function(e){md(e)}(r):kd(r)),e._backpressure=t}Object.defineProperties(Kh.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Kh.prototype,Hu.toStringTag,{value:"WritableStream",configurable:!0});class Jh{constructor(e){if(Tl(e,1,"WritableStreamDefaultWriter"),Rh(e,"First parameter"),qh(e))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=e,e._writer=this;const t=e._state;if("writable"===t)!Vh(e)&&e._backpressure?md(this):wd(this),fd(this);else if("erroring"===t)bd(this,e._storedError),fd(this);else if("closed"===t)wd(this),fd(this),gd(this);else{const t=e._storedError;bd(this,t),pd(this,t)}}get closed(){return Zh(this)?this._closedPromise:tl(hd("closed"))}get desiredSize(){if(!Zh(this))throw hd("desiredSize");if(void 0===this._ownerWritableStream)throw dd("desiredSize");return function(e){const t=e._ownerWritableStream,r=t._state;return"errored"===r||"erroring"===r?null:"closed"===r?0:ad(t._writableStreamController)}(this)}get ready(){return Zh(this)?this._readyPromise:tl(hd("ready"))}abort(e=void 0){return Zh(this)?void 0===this._ownerWritableStream?tl(dd("abort")):function(e,t){return Fh(e._ownerWritableStream,t)}(this,e):tl(hd("abort"))}close(){if(!Zh(this))return tl(hd("close"));const e=this._ownerWritableStream;return void 0===e?tl(dd("close")):Vh(e)?tl(new TypeError("Cannot close an already-closing stream")):Yh(this)}releaseLock(){if(!Zh(this))throw hd("releaseLock");void 0!==this._ownerWritableStream&&Qh(this)}write(e=void 0){return Zh(this)?void 0===this._ownerWritableStream?tl(dd("write to")):ed(this,e):tl(hd("write"))}}function Zh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")}function Yh(e){return zh(e._ownerWritableStream)}function Xh(e,t){"pending"===e._readyPromiseState?vd(e,t):function(e,t){bd(e,t)}(e,t)}function Qh(e){const t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");Xh(e,r),function(e,t){"pending"===e._closedPromiseState?yd(e,t):function(e,t){pd(e,t)}(e,t)}(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function ed(e,t){const r=e._ownerWritableStream,n=r._writableStreamController,i=function(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return od(e,t),1}}(n,t);if(r!==e._ownerWritableStream)return tl(dd("write to"));const a=r._state;if("errored"===a)return tl(r._storedError);if(Vh(r)||"closed"===a)return tl(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===a)return tl(r._storedError);const s=function(e){return Qu(((t,r)=>{const n={_resolve:t,_reject:r};e._writeRequests.push(n)}))}(r);return function(e,t,r){try{Xl(e,t,r)}catch(t){return void od(e,t)}const n=e._controlledWritableStream;Vh(n)||"writable"!==n._state||$h(n,cd(e)),sd(e)}(n,t,i),s}Object.defineProperties(Jh.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Jh.prototype,Hu.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});const td={};class rd{constructor(){throw new TypeError("Illegal constructor")}error(e=void 0){if(!Gu(t=this)||!Object.prototype.hasOwnProperty.call(t,"_controlledWritableStream"))throw new TypeError("WritableStreamDefaultController.prototype.error can only be used on a WritableStreamDefaultController");var t;"writable"===this._controlledWritableStream._state&&ud(this,e)}[vl](e){const t=this._abortAlgorithm(e);return id(this),t}[kl](){Ql(this)}}function nd(e,t,r,n,i,a,s,o){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,Ql(t),t._started=!1,t._strategySizeAlgorithm=o,t._strategyHWM=s,t._writeAlgorithm=n,t._closeAlgorithm=i,t._abortAlgorithm=a;const c=cd(t);$h(e,c),nl(el(r()),(()=>{t._started=!0,sd(t)}),(r=>{t._started=!0,jh(e,r)}))}function id(e){e._writeAlgorithm=void 0,e._closeAlgorithm=void 0,e._abortAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function ad(e){return e._strategyHWM-e._queueTotalSize}function sd(e){const t=e._controlledWritableStream;if(!e._started)return;if(void 0!==t._inFlightWriteRequest)return;if("erroring"===t._state)return void Wh(t);if(0===e._queue.length)return;const r=e._queue.peek().value;r===td?function(e){const t=e._controlledWritableStream;(function(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0})(t),Yl(e);const r=e._closeAlgorithm();id(e),nl(r,(()=>{!function(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";const t=e._writer;void 0!==t&&gd(t)}(t)}),(e=>{!function(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),jh(e,t)}(t,e)}))}(e):function(e,t){const r=e._controlledWritableStream;!function(e){e._inFlightWriteRequest=e._writeRequests.shift()}(r);nl(e._writeAlgorithm(t),(()=>{!function(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}(r);const t=r._state;if(Yl(e),!Vh(r)&&"writable"===t){const t=cd(e);$h(r,t)}sd(e)}),(t=>{"writable"===r._state&&id(e),function(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,jh(e,t)}(r,t)}))}(e,r)}function od(e,t){"writable"===e._controlledWritableStream._state&&ud(e,t)}function cd(e){return ad(e)<=0}function ud(e,t){const r=e._controlledWritableStream;id(e),Hh(r,t)}function ld(e){return new TypeError(`WritableStream.prototype.${e} can only be used on a WritableStream`)}function hd(e){return new TypeError(`WritableStreamDefaultWriter.prototype.${e} can only be used on a WritableStreamDefaultWriter`)}function dd(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function fd(e){e._closedPromise=Qu(((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"}))}function pd(e,t){fd(e),yd(e,t)}function yd(e,t){void 0!==e._closedPromise_reject&&(ol(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected")}function gd(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved")}function md(e){e._readyPromise=Qu(((t,r)=>{e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}function bd(e,t){md(e),vd(e,t)}function wd(e){md(e),kd(e)}function vd(e,t){void 0!==e._readyPromise_reject&&(ol(e._readyPromise),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected")}function kd(e){void 0!==e._readyPromise_resolve&&(e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled")}Object.defineProperties(rd.prototype,{error:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(rd.prototype,Hu.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});const Ad="undefined"!=typeof DOMException?DOMException:void 0,_d=function(e){if("function"!=typeof e&&"object"!=typeof e)return!1;try{return new e,!0}catch(e){return!1}}(Ad)?Ad:function(){const e=function(e,t){this.message=e||"",this.name=t||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return e.prototype=Object.create(Error.prototype),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,configurable:!0}),e}();function Sd(e,t,r,n,i,a){const s=Rl(e),o=Oh(t);e._disturbed=!0;let c=!1,u=el(void 0);return Qu(((l,h)=>{let d;if(void 0!==a){if(d=()=>{const r=new _d("Aborted","AbortError"),a=[];n||a.push((()=>"writable"===t._state?Fh(t,r):el(void 0))),i||a.push((()=>"readable"===e._state?$d(e,r):el(void 0))),y((()=>Promise.all(a.map((e=>e())))),!0,r)},a.aborted)return void d();a.addEventListener("abort",d)}if(p(e,s._closedPromise,(e=>{n?g(!0,e):y((()=>Fh(t,e)),!0,e)})),p(t,o._closedPromise,(t=>{i?g(!0,t):y((()=>$d(e,t)),!0,t)})),function(e,t,r){"closed"===e._state?r():il(t,r)}(e,s._closedPromise,(()=>{r?g():y((()=>function(e){const t=e._ownerWritableStream,r=t._state;return Vh(t)||"closed"===r?el(void 0):"errored"===r?tl(t._storedError):Yh(e)}(o)))})),Vh(t)||"closed"===t._state){const t=new TypeError("the destination writable stream closed before all data could be piped to it");i?g(!0,t):y((()=>$d(e,t)),!0,t)}function f(){const e=u;return rl(u,(()=>e!==u?f():void 0))}function p(e,t,r){"errored"===e._state?r(e._storedError):al(t,r)}function y(e,r,n){function i(){nl(e(),(()=>m(r,n)),(e=>m(!0,e)))}c||(c=!0,"writable"!==t._state||Vh(t)?i():il(f(),i))}function g(e,r){c||(c=!0,"writable"!==t._state||Vh(t)?m(e,r):il(f(),(()=>m(e,r))))}function m(e,t){Qh(o),pl(s),void 0!==a&&a.removeEventListener("abort",d),e?h(t):l(void 0)}ol(Qu(((e,t)=>{!function r(n){n?e():rl(c?el(!0):rl(o._readyPromise,(()=>Qu(((e,t)=>{zl(s,{_chunkSteps:t=>{u=rl(ed(o,t),void 0,Wu),e(!1)},_closeSteps:()=>e(!0),_errorSteps:t})})))),r,t)}(!1)})))}))}class Ed{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!xd(this))throw Kd("desiredSize");return Bd(this)}close(){if(!xd(this))throw Kd("close");if(!Ud(this))throw new TypeError("The stream is not in a state that permits close");Md(this)}enqueue(e=void 0){if(!xd(this))throw Kd("enqueue");if(!Ud(this))throw new TypeError("The stream is not in a state that permits enqueue");return Id(this,e)}error(e=void 0){if(!xd(this))throw Kd("error");Dd(this,e)}[Al](e){Ql(this);const t=this._cancelAlgorithm(e);return Td(this),t}[_l](e){const t=this._controlledReadableStream;if(this._queue.length>0){const r=Yl(this);this._closeRequested&&0===this._queue.length?(Td(this),Jd(t)):Pd(this),e._chunkSteps(r)}else Kl(t,e),Pd(this)}}function xd(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")}function Pd(e){Cd(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,nl(e._pullAlgorithm(),(()=>{e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,Pd(e))}),(t=>{Dd(e,t)}))))}function Cd(e){const t=e._controlledReadableStream;return!!Ud(e)&&(!!e._started&&(!!(Gd(t)&&Nl(t)>0)||Bd(e)>0))}function Td(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function Md(e){if(!Ud(e))return;const t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&(Td(e),Jd(t))}function Id(e,t){if(!Ud(e))return;const r=e._controlledReadableStream;if(Gd(r)&&Nl(r)>0)Ol(r,t,!1);else{let r;try{r=e._strategySizeAlgorithm(t)}catch(t){throw Dd(e,t),t}try{Xl(e,t,r)}catch(t){throw Dd(e,t),t}}Pd(e)}function Dd(e,t){const r=e._controlledReadableStream;"readable"===r._state&&(Ql(e),Td(e),Zd(r,t))}function Bd(e){const t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Ud(e){const t=e._controlledReadableStream._state;return!e._closeRequested&&"readable"===t}function Rd(e,t,r,n,i,a,s){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,Ql(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=s,t._strategyHWM=a,t._pullAlgorithm=n,t._cancelAlgorithm=i,e._readableStreamController=t,nl(el(r()),(()=>{t._started=!0,Pd(t)}),(e=>{Dd(t,e)}))}function Kd(e){return new TypeError(`ReadableStreamDefaultController.prototype.${e} can only be used on a ReadableStreamDefaultController`)}function Od(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function Nd(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function Ld(e,t,r){return Pl(e,r),r=>ul(e,t,[r])}function qd(e,t){if("bytes"!=(e=`${e}`))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamType`);return e}function Fd(e,t){if("byob"!=(e=`${e}`))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamReaderMode`);return e}function zd(e,t){xl(e,t);const r=null==e?void 0:e.preventAbort,n=null==e?void 0:e.preventCancel,i=null==e?void 0:e.preventClose,a=null==e?void 0:e.signal;return void 0!==a&&function(e,t){if(!function(e){if("object"!=typeof e||null===e)return!1;try{return"boolean"==typeof e.aborted}catch(e){return!1}}(e))throw new TypeError(`${t} is not an AbortSignal.`)}(a,`${t} has member 'signal' that`),{preventAbort:Boolean(r),preventCancel:Boolean(n),preventClose:Boolean(i),signal:a}}Object.defineProperties(Ed.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Ed.prototype,Hu.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class jd{constructor(e={},t={}){void 0===e?e=null:Cl(e,"First parameter");const r=Th(t,"Second parameter"),n=function(e,t){xl(e,t);const r=e,n=null==r?void 0:r.autoAllocateChunkSize,i=null==r?void 0:r.cancel,a=null==r?void 0:r.pull,s=null==r?void 0:r.start,o=null==r?void 0:r.type;return{autoAllocateChunkSize:void 0===n?void 0:Bl(n,`${t} has member 'autoAllocateChunkSize' that`),cancel:void 0===i?void 0:Od(i,r,`${t} has member 'cancel' that`),pull:void 0===a?void 0:Nd(a,r,`${t} has member 'pull' that`),start:void 0===s?void 0:Ld(s,r,`${t} has member 'start' that`),type:void 0===o?void 0:qd(o,`${t} has member 'type' that`)}}(e,"First parameter");if(Wd(this),"bytes"===n.type){if(void 0!==r.size)throw new RangeError("The strategy for a byte stream cannot have a size function");!function(e,t,r){const n=Object.create(rh.prototype);let i=()=>{},a=()=>el(void 0),s=()=>el(void 0);void 0!==t.start&&(i=()=>t.start(n)),void 0!==t.pull&&(a=()=>t.pull(n)),void 0!==t.cancel&&(s=e=>t.cancel(e));const o=t.autoAllocateChunkSize;if(0===o)throw new TypeError("autoAllocateChunkSize must be greater than 0");!function(e,t,r,n,i,a,s){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,t._byobRequest=null,t._queue=t._queueTotalSize=void 0,Ql(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=a,t._pullAlgorithm=n,t._cancelAlgorithm=i,t._autoAllocateChunkSize=s,t._pendingPullIntos=new hl,e._readableStreamController=t,nl(el(r()),(()=>{t._started=!0,ah(t)}),(e=>{mh(t,e)}))}(e,n,i,a,s,r,o)}(this,n,Ph(r,0))}else{const e=Ch(r);!function(e,t,r,n){const i=Object.create(Ed.prototype);let a=()=>{},s=()=>el(void 0),o=()=>el(void 0);void 0!==t.start&&(a=()=>t.start(i)),void 0!==t.pull&&(s=()=>t.pull(i)),void 0!==t.cancel&&(o=e=>t.cancel(e)),Rd(e,i,a,s,o,r,n)}(this,n,Ph(r,1),e)}}get locked(){if(!Vd(this))throw Yd("locked");return Gd(this)}cancel(e=void 0){return Vd(this)?Gd(this)?tl(new TypeError("Cannot cancel a stream that already has a reader")):$d(this,e):tl(Yd("cancel"))}getReader(e=void 0){if(!Vd(this))throw Yd("getReader");const t=function(e,t){xl(e,t);const r=null==e?void 0:e.mode;return{mode:void 0===r?void 0:Fd(r,`${t} has member 'mode' that`)}}(e,"First parameter");return void 0===t.mode?Rl(this):function(e){return new Sh(e)}(this)}pipeThrough(e,t={}){if(!Vd(this))throw Yd("pipeThrough");Tl(e,1,"pipeThrough");const r=function(e,t){xl(e,t);const r=null==e?void 0:e.readable;Ml(r,"readable","ReadableWritablePair"),Ul(r,`${t} has member 'readable' that`);const n=null==e?void 0:e.writable;return Ml(n,"writable","ReadableWritablePair"),Rh(n,`${t} has member 'writable' that`),{readable:r,writable:n}}(e,"First parameter"),n=zd(t,"Second parameter");if(Gd(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(qh(r.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return ol(Sd(this,r.writable,n.preventClose,n.preventAbort,n.preventCancel,n.signal)),r.readable}pipeTo(e,t={}){if(!Vd(this))return tl(Yd("pipeTo"));if(void 0===e)return tl("Parameter 1 is required in 'pipeTo'.");if(!Lh(e))return tl(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let r;try{r=zd(t,"Second parameter")}catch(e){return tl(e)}return Gd(this)?tl(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):qh(e)?tl(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):Sd(this,e,r.preventClose,r.preventAbort,r.preventCancel,r.signal)}tee(){if(!Vd(this))throw Yd("tee");const e=function(e,t){const r=Rl(e);let n,i,a,s,o,c=!1,u=!1,l=!1;const h=Qu((e=>{o=e}));function d(){return c||(c=!0,zl(r,{_chunkSteps:e=>{cl((()=>{c=!1;const t=e,r=e;u||Id(a._readableStreamController,t),l||Id(s._readableStreamController,r)}))},_closeSteps:()=>{c=!1,u||Md(a._readableStreamController),l||Md(s._readableStreamController),u&&l||o(void 0)},_errorSteps:()=>{c=!1}})),el(void 0)}function f(){}return a=Hd(f,d,(function(t){if(u=!0,n=t,l){const t=eh([n,i]),r=$d(e,t);o(r)}return h})),s=Hd(f,d,(function(t){if(l=!0,i=t,u){const t=eh([n,i]),r=$d(e,t);o(r)}return h})),al(r._closedPromise,(e=>{Dd(a._readableStreamController,e),Dd(s._readableStreamController,e),u&&l||o(void 0)})),[a,s]}(this);return eh(e)}values(e=void 0){if(!Vd(this))throw Yd("values");return function(e,t){const r=Rl(e),n=new Wl(r,t),i=Object.create(Vl);return i._asyncIteratorImpl=n,i}(this,function(e,t){xl(e,"First parameter");const r=null==e?void 0:e.preventCancel;return{preventCancel:Boolean(r)}}(e).preventCancel)}}function Hd(e,t,r,n=1,i=(()=>1)){const a=Object.create(jd.prototype);return Wd(a),Rd(a,Object.create(Ed.prototype),e,t,r,n,i),a}function Wd(e){e._state="readable",e._reader=void 0,e._storedError=void 0,e._disturbed=!1}function Vd(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readableStreamController")}function Gd(e){return void 0!==e._reader}function $d(e,t){return e._disturbed=!0,"closed"===e._state?el(void 0):"errored"===e._state?tl(e._storedError):(Jd(e),sl(e._readableStreamController[Al](t),Wu))}function Jd(e){e._state="closed";const t=e._reader;void 0!==t&&(wl(t),Fl(t)&&(t._readRequests.forEach((e=>{e._closeSteps()})),t._readRequests=new hl))}function Zd(e,t){e._state="errored",e._storedError=t;const r=e._reader;void 0!==r&&(bl(r,t),Fl(r)?(r._readRequests.forEach((e=>{e._errorSteps(t)})),r._readRequests=new hl):(r._readIntoRequests.forEach((e=>{e._errorSteps(t)})),r._readIntoRequests=new hl))}function Yd(e){return new TypeError(`ReadableStream.prototype.${e} can only be used on a ReadableStream`)}function Xd(e,t){xl(e,t);const r=null==e?void 0:e.highWaterMark;return Ml(r,"highWaterMark","QueuingStrategyInit"),{highWaterMark:Il(r)}}Object.defineProperties(jd.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(jd.prototype,Hu.toStringTag,{value:"ReadableStream",configurable:!0}),"symbol"==typeof Hu.asyncIterator&&Object.defineProperty(jd.prototype,Hu.asyncIterator,{value:jd.prototype.values,writable:!0,configurable:!0});const Qd=function(e){return e.byteLength};class ef{constructor(e){Tl(e,1,"ByteLengthQueuingStrategy"),e=Xd(e,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!rf(this))throw tf("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!rf(this))throw tf("size");return Qd}}function tf(e){return new TypeError(`ByteLengthQueuingStrategy.prototype.${e} can only be used on a ByteLengthQueuingStrategy`)}function rf(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_byteLengthQueuingStrategyHighWaterMark")}Object.defineProperties(ef.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(ef.prototype,Hu.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});const nf=function(){return 1};class af{constructor(e){Tl(e,1,"CountQueuingStrategy"),e=Xd(e,"First parameter"),this._countQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!of(this))throw sf("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!of(this))throw sf("size");return nf}}function sf(e){return new TypeError(`CountQueuingStrategy.prototype.${e} can only be used on a CountQueuingStrategy`)}function of(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_countQueuingStrategyHighWaterMark")}function cf(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function uf(e,t,r){return Pl(e,r),r=>ul(e,t,[r])}function lf(e,t,r){return Pl(e,r),(r,n)=>ll(e,t,[r,n])}Object.defineProperties(af.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(af.prototype,Hu.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class hf{constructor(e={},t={},r={}){void 0===e&&(e=null);const n=Th(t,"Second parameter"),i=Th(r,"Third parameter"),a=function(e,t){xl(e,t);const r=null==e?void 0:e.flush,n=null==e?void 0:e.readableType,i=null==e?void 0:e.start,a=null==e?void 0:e.transform,s=null==e?void 0:e.writableType;return{flush:void 0===r?void 0:cf(r,e,`${t} has member 'flush' that`),readableType:n,start:void 0===i?void 0:uf(i,e,`${t} has member 'start' that`),transform:void 0===a?void 0:lf(a,e,`${t} has member 'transform' that`),writableType:s}}(e,"First parameter");if(void 0!==a.readableType)throw new RangeError("Invalid readableType specified");if(void 0!==a.writableType)throw new RangeError("Invalid writableType specified");const s=Ph(i,0),o=Ch(i),c=Ph(n,1),u=Ch(n);let l;!function(e,t,r,n,i,a){function s(){return t}e._writable=function(e,t,r,n,i=1,a=(()=>1)){const s=Object.create(Kh.prototype);return Nh(s),nd(s,Object.create(rd.prototype),e,t,r,n,i,a),s}(s,(function(t){return function(e,t){const r=e._transformStreamController;return e._backpressure?sl(e._backpressureChangePromise,(()=>{const n=e._writable;if("erroring"===n._state)throw n._storedError;return vf(r,t)})):vf(r,t)}(e,t)}),(function(){return function(e){const t=e._readable,r=e._transformStreamController,n=r._flushAlgorithm();return bf(r),sl(n,(()=>{if("errored"===t._state)throw t._storedError;Md(t._readableStreamController)}),(r=>{throw ff(e,r),t._storedError}))}(e)}),(function(t){return function(e,t){return ff(e,t),el(void 0)}(e,t)}),r,n),e._readable=Hd(s,(function(){return function(e){return yf(e,!1),e._backpressureChangePromise}(e)}),(function(t){return pf(e,t),el(void 0)}),i,a),e._backpressure=void 0,e._backpressureChangePromise=void 0,e._backpressureChangePromise_resolve=void 0,yf(e,!0),e._transformStreamController=void 0}(this,Qu((e=>{l=e})),c,u,s,o),function(e,t){const r=Object.create(gf.prototype);let n=e=>{try{return wf(r,e),el(void 0)}catch(e){return tl(e)}},i=()=>el(void 0);void 0!==t.transform&&(n=e=>t.transform(e,r)),void 0!==t.flush&&(i=()=>t.flush(r)),function(e,t,r,n){t._controlledTransformStream=e,e._transformStreamController=t,t._transformAlgorithm=r,t._flushAlgorithm=n}(e,r,n,i)}(this,a),void 0!==a.start?l(a.start(this._transformStreamController)):l(void 0)}get readable(){if(!df(this))throw Af("readable");return this._readable}get writable(){if(!df(this))throw Af("writable");return this._writable}}function df(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_transformStreamController")}function ff(e,t){Dd(e._readable._readableStreamController,t),pf(e,t)}function pf(e,t){bf(e._transformStreamController),od(e._writable._writableStreamController,t),e._backpressure&&yf(e,!1)}function yf(e,t){void 0!==e._backpressureChangePromise&&e._backpressureChangePromise_resolve(),e._backpressureChangePromise=Qu((t=>{e._backpressureChangePromise_resolve=t})),e._backpressure=t}Object.defineProperties(hf.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(hf.prototype,Hu.toStringTag,{value:"TransformStream",configurable:!0});class gf{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!mf(this))throw kf("desiredSize");return Bd(this._controlledTransformStream._readable._readableStreamController)}enqueue(e=void 0){if(!mf(this))throw kf("enqueue");wf(this,e)}error(e=void 0){if(!mf(this))throw kf("error");var t;t=e,ff(this._controlledTransformStream,t)}terminate(){if(!mf(this))throw kf("terminate");!function(e){const t=e._controlledTransformStream;Md(t._readable._readableStreamController);pf(t,new TypeError("TransformStream terminated"))}(this)}}function mf(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledTransformStream")}function bf(e){e._transformAlgorithm=void 0,e._flushAlgorithm=void 0}function wf(e,t){const r=e._controlledTransformStream,n=r._readable._readableStreamController;if(!Ud(n))throw new TypeError("Readable side is not in a state that permits enqueue");try{Id(n,t)}catch(e){throw pf(r,e),r._readable._storedError}const i=function(e){return!Cd(e)}(n);i!==r._backpressure&&yf(r,!0)}function vf(e,t){return sl(e._transformAlgorithm(t),void 0,(t=>{throw ff(e._controlledTransformStream,t),t}))}function kf(e){return new TypeError(`TransformStreamDefaultController.prototype.${e} can only be used on a TransformStreamDefaultController`)}function Af(e){return new TypeError(`TransformStream.prototype.${e} can only be used on a TransformStream`)}Object.defineProperties(gf.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(gf.prototype,Hu.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var _f=Object.freeze({__proto__:null,ByteLengthQueuingStrategy:ef,CountQueuingStrategy:af,ReadableByteStreamController:rh,ReadableStream:jd,ReadableStreamBYOBReader:Sh,ReadableStreamBYOBRequest:th,ReadableStreamDefaultController:Ed,ReadableStreamDefaultReader:ql,TransformStream:hf,TransformStreamDefaultController:gf,WritableStream:Kh,WritableStreamDefaultController:rd,WritableStreamDefaultWriter:Jh}),Sf=function(e,t){return Sf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},Sf(e,t)};function Ef(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}Sf(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function xf(e){if(!e)throw new TypeError("Assertion failed")}function Pf(){}function Cf(e){return"object"==typeof e&&null!==e||"function"==typeof e}function Tf(e){if("function"!=typeof e)return!1;var t=!1;try{new e({start:function(){t=!0}})}catch(e){}return t}function Mf(e){return!!Cf(e)&&"function"==typeof e.getReader}function If(e){return!!Cf(e)&&"function"==typeof e.getWriter}function Df(e){return!!Cf(e)&&!!Mf(e.readable)&&!!If(e.writable)}function Bf(e){try{return e.getReader({mode:"byob"}).releaseLock(),!0}catch(e){return!1}}function Uf(e,t){var r=(void 0===t?{}:t).type;return xf(Mf(e)),xf(!1===e.locked),"bytes"===(r=Rf(r))?new Lf(e):new Of(e)}function Rf(e){var t=String(e);if("bytes"===t)return t;if(void 0===e)return e;throw new RangeError("Invalid type is specified")}var Kf=function(){function e(e){this._underlyingReader=void 0,this._readerMode=void 0,this._readableStreamController=void 0,this._pendingRead=void 0,this._underlyingStream=e,this._attachDefaultReader()}return e.prototype.start=function(e){this._readableStreamController=e},e.prototype.cancel=function(e){return xf(void 0!==this._underlyingReader),this._underlyingReader.cancel(e)},e.prototype._attachDefaultReader=function(){if("default"!==this._readerMode){this._detachReader();var e=this._underlyingStream.getReader();this._readerMode="default",this._attachReader(e)}},e.prototype._attachReader=function(e){var t=this;xf(void 0===this._underlyingReader),this._underlyingReader=e;var r=this._underlyingReader.closed;r&&r.then((function(){return t._finishPendingRead()})).then((function(){e===t._underlyingReader&&t._readableStreamController.close()}),(function(r){e===t._underlyingReader&&t._readableStreamController.error(r)})).catch(Pf)},e.prototype._detachReader=function(){void 0!==this._underlyingReader&&(this._underlyingReader.releaseLock(),this._underlyingReader=void 0,this._readerMode=void 0)},e.prototype._pullWithDefaultReader=function(){var e=this;this._attachDefaultReader();var t=this._underlyingReader.read().then((function(t){var r=e._readableStreamController;t.done?e._tryClose():r.enqueue(t.value)}));return this._setPendingRead(t),t},e.prototype._tryClose=function(){try{this._readableStreamController.close()}catch(e){}},e.prototype._setPendingRead=function(e){var t,r=this,n=function(){r._pendingRead===t&&(r._pendingRead=void 0)};this._pendingRead=t=e.then(n,n)},e.prototype._finishPendingRead=function(){var e=this;if(this._pendingRead){var t=function(){return e._finishPendingRead()};return this._pendingRead.then(t,t)}},e}(),Of=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Ef(t,e),t.prototype.pull=function(){return this._pullWithDefaultReader()},t}(Kf);function Nf(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}var Lf=function(e){function t(t){var r=this,n=Bf(t);return(r=e.call(this,t)||this)._supportsByob=n,r}return Ef(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return"bytes"},enumerable:!1,configurable:!0}),t.prototype._attachByobReader=function(){if("byob"!==this._readerMode){xf(this._supportsByob),this._detachReader();var e=this._underlyingStream.getReader({mode:"byob"});this._readerMode="byob",this._attachReader(e)}},t.prototype.pull=function(){if(this._supportsByob){var e=this._readableStreamController.byobRequest;if(e)return this._pullWithByobRequest(e)}return this._pullWithDefaultReader()},t.prototype._pullWithByobRequest=function(e){var t=this;this._attachByobReader();var r=new Uint8Array(e.view.byteLength),n=this._underlyingReader.read(r).then((function(r){var n,i,a;t._readableStreamController,r.done?(t._tryClose(),e.respond(0)):(n=r.value,i=e.view,a=Nf(n),Nf(i).set(a,0),e.respond(r.value.byteLength))}));return this._setPendingRead(n),n},t}(Kf);function qf(e){xf(If(e)),xf(!1===e.locked);var t=e.getWriter();return new Ff(t)}var Ff=function(){function e(e){var t=this;this._writableStreamController=void 0,this._pendingWrite=void 0,this._state="writable",this._storedError=void 0,this._underlyingWriter=e,this._errorPromise=new Promise((function(e,r){t._errorPromiseReject=r})),this._errorPromise.catch(Pf)}return e.prototype.start=function(e){var t=this;this._writableStreamController=e,this._underlyingWriter.closed.then((function(){t._state="closed"})).catch((function(e){return t._finishErroring(e)}))},e.prototype.write=function(e){var t=this,r=this._underlyingWriter;if(null===r.desiredSize)return r.ready;var n=r.write(e);n.catch((function(e){return t._finishErroring(e)})),r.ready.catch((function(e){return t._startErroring(e)}));var i=Promise.race([n,this._errorPromise]);return this._setPendingWrite(i),i},e.prototype.close=function(){var e=this;return void 0===this._pendingWrite?this._underlyingWriter.close():this._finishPendingWrite().then((function(){return e.close()}))},e.prototype.abort=function(e){if("errored"!==this._state)return this._underlyingWriter.abort(e)},e.prototype._setPendingWrite=function(e){var t,r=this,n=function(){r._pendingWrite===t&&(r._pendingWrite=void 0)};this._pendingWrite=t=e.then(n,n)},e.prototype._finishPendingWrite=function(){var e=this;if(void 0===this._pendingWrite)return Promise.resolve();var t=function(){return e._finishPendingWrite()};return this._pendingWrite.then(t,t)},e.prototype._startErroring=function(e){var t=this;if("writable"===this._state){this._state="erroring",this._storedError=e;var r=function(){return t._finishErroring(e)};void 0===this._pendingWrite?r():this._finishPendingWrite().then(r,r),this._writableStreamController.error(e)}},e.prototype._finishErroring=function(e){"writable"===this._state&&this._startErroring(e),"erroring"===this._state&&(this._state="errored",this._errorPromiseReject(this._storedError))},e}();function zf(e){xf(Df(e));var t=e.readable,r=e.writable;xf(!1===t.locked),xf(!1===r.locked);var n,i=t.getReader();try{n=r.getWriter()}catch(e){throw i.releaseLock(),e}return new jf(i,n)}var jf=function(){function e(e,t){var r=this;this._transformStreamController=void 0,this._onRead=function(e){if(!e.done)return r._transformStreamController.enqueue(e.value),r._reader.read().then(r._onRead)},this._onError=function(e){r._flushReject(e),r._transformStreamController.error(e),r._reader.cancel(e).catch(Pf),r._writer.abort(e).catch(Pf)},this._onTerminate=function(){r._flushResolve(),r._transformStreamController.terminate();var e=new TypeError("TransformStream terminated");r._writer.abort(e).catch(Pf)},this._reader=e,this._writer=t,this._flushPromise=new Promise((function(e,t){r._flushResolve=e,r._flushReject=t}))}return e.prototype.start=function(e){this._transformStreamController=e,this._reader.read().then(this._onRead).then(this._onTerminate,this._onError);var t=this._reader.closed;t&&t.then(this._onTerminate,this._onError)},e.prototype.transform=function(e){return this._writer.write(e)},e.prototype.flush=function(){var e=this;return this._writer.close().then((function(){return e._flushPromise}))},e}(),Hf=Object.freeze({__proto__:null,createReadableStreamWrapper:function(e){xf(function(e){return!!Tf(e)&&!!Mf(new e)}(e));var t=function(e){try{return new e({type:"bytes"}),!0}catch(e){return!1}}(e);return function(r,n){var i=(void 0===n?{}:n).type;if("bytes"!==(i=Rf(i))||t||(i=void 0),r.constructor===e&&("bytes"!==i||Bf(r)))return r;if("bytes"===i){var a=Uf(r,{type:i});return new e(a)}return a=Uf(r),new e(a)}},createTransformStreamWrapper:function(e){return xf(function(e){return!!Tf(e)&&!!Df(new e)}(e)),function(t){if(t.constructor===e)return t;var r=zf(t);return new e(r)}},createWrappingReadableSource:Uf,createWrappingTransformer:zf,createWrappingWritableSink:qf,createWritableStreamWrapper:function(e){return xf(function(e){return!!Tf(e)&&!!If(new e)}(e)),function(t){if(t.constructor===e)return t;var r=qf(t);return new e(r)}}}),Wf=ct((function(e){!function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function n(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function i(e,t,r){if(i.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"==typeof e?e.exports=i:t.BN=i,i.BN=i,i.wordSize=26;try{a=void 0}catch(e){}function s(e,t,r){for(var n=0,i=Math.min(e.length,r),a=t;a=49&&s<=54?s-49+10:s>=17&&s<=22?s-17+10:15&s}return n}function o(e,t,r,n){for(var i=0,a=Math.min(e.length,r),s=t;s=49?o-49+10:o>=17?o-17+10:o}return i}i.isBN=function(e){return e instanceof i||null!==e&&"object"==typeof e&&e.constructor.wordSize===i.wordSize&&Array.isArray(e.words)},i.max=function(e,t){return e.cmp(t)>0?e:t},i.min=function(e,t){return e.cmp(t)<0?e:t},i.prototype._init=function(e,t,n){if("number"==typeof e)return this._initNumber(e,t,n);if("object"==typeof e)return this._initArray(e,t,n);"hex"===t&&(t=16),r(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&i++,16===t?this._parseHex(e,i):this._parseBase(e,t,i),"-"===e[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),t,n)},i.prototype._initNumber=function(e,t,n){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},i.prototype._initArray=function(e,t,n){if(r("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)s=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[a]|=s<>>26-o&67108863,(o+=24)>=26&&(o-=26,a++);else if("le"===n)for(i=0,a=0;i>>26-o&67108863,(o+=24)>=26&&(o-=26,a++);return this.strip()},i.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=6)i=s(e,r,r+6),this.words[n]|=i<>>26-a&4194303,(a+=24)>=26&&(a-=26,n++);r+6!==t&&(i=s(e,t,r+6),this.words[n]|=i<>>26-a&4194303),this.strip()},i.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var a=e.length-r,s=a%n,c=Math.min(a,a-s)+r,u=0,l=r;l1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],u=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],a=0|t.words[0],s=i*a,o=67108863&s,c=s/67108864|0;r.words[0]=o;for(var u=1;u>>26,h=67108863&c,d=Math.min(u,t.length-1),f=Math.max(0,u-e.length+1);f<=d;f++){var p=u-f|0;l+=(s=(i=0|e.words[p])*(a=0|t.words[f])+h)/67108864|0,h=67108863&s}r.words[u]=0|h,c=0|l}return 0!==c?r.words[u]=0|c:r.length--,r.strip()}i.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var i=0,a=0,s=0;s>>24-i&16777215)||s!==this.length-1?c[6-h.length]+h+n:h+n,(i+=2)>=26&&(i-=26,s--)}for(0!==a&&(n=a.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var d=u[e],f=l[e];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var y=p.modn(f).toString(e);n=(p=p.idivn(f)).isZero()?y+n:c[d-y.length]+y+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(e,t){return r(void 0!==a),this.toArrayLike(a,e,t)},i.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},i.prototype.toArrayLike=function(e,t,n){var i=this.byteLength(),a=n||Math.max(1,i);r(i<=a,"byte array longer than desired length"),r(a>0,"Requested array length <= 0"),this.strip();var s,o,c="le"===t,u=new e(a),l=this.clone();if(c){for(o=0;!l.isZero();o++)s=l.andln(255),l.iushrn(8),u[o]=s;for(;o=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},i.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},i.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},i.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},i.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},i.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},i.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},i.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},i.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},i.prototype.notn=function(e){return this.clone().inotn(e)},i.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var n=e/26|0,i=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},i.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var a=0,s=0;s>26,this.words[s]=67108863&t;for(;0!==a&&s>26,this.words[s]=67108863&t;if(0===a&&s>>13,f=0|s[1],p=8191&f,y=f>>>13,g=0|s[2],m=8191&g,b=g>>>13,w=0|s[3],v=8191&w,k=w>>>13,A=0|s[4],_=8191&A,S=A>>>13,E=0|s[5],x=8191&E,P=E>>>13,C=0|s[6],T=8191&C,M=C>>>13,I=0|s[7],D=8191&I,B=I>>>13,U=0|s[8],R=8191&U,K=U>>>13,O=0|s[9],N=8191&O,L=O>>>13,q=0|o[0],F=8191&q,z=q>>>13,j=0|o[1],H=8191&j,W=j>>>13,V=0|o[2],G=8191&V,$=V>>>13,J=0|o[3],Z=8191&J,Y=J>>>13,X=0|o[4],Q=8191&X,ee=X>>>13,te=0|o[5],re=8191&te,ne=te>>>13,ie=0|o[6],ae=8191&ie,se=ie>>>13,oe=0|o[7],ce=8191&oe,ue=oe>>>13,le=0|o[8],he=8191&le,de=le>>>13,fe=0|o[9],pe=8191&fe,ye=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(u+(n=Math.imul(h,F))|0)+((8191&(i=(i=Math.imul(h,z))+Math.imul(d,F)|0))<<13)|0;u=((a=Math.imul(d,z))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,z))+Math.imul(y,F)|0,a=Math.imul(y,z);var me=(u+(n=n+Math.imul(h,H)|0)|0)+((8191&(i=(i=i+Math.imul(h,W)|0)+Math.imul(d,H)|0))<<13)|0;u=((a=a+Math.imul(d,W)|0)+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(m,F),i=(i=Math.imul(m,z))+Math.imul(b,F)|0,a=Math.imul(b,z),n=n+Math.imul(p,H)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(y,H)|0,a=a+Math.imul(y,W)|0;var be=(u+(n=n+Math.imul(h,G)|0)|0)+((8191&(i=(i=i+Math.imul(h,$)|0)+Math.imul(d,G)|0))<<13)|0;u=((a=a+Math.imul(d,$)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,z))+Math.imul(k,F)|0,a=Math.imul(k,z),n=n+Math.imul(m,H)|0,i=(i=i+Math.imul(m,W)|0)+Math.imul(b,H)|0,a=a+Math.imul(b,W)|0,n=n+Math.imul(p,G)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(y,G)|0,a=a+Math.imul(y,$)|0;var we=(u+(n=n+Math.imul(h,Z)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(d,Z)|0))<<13)|0;u=((a=a+Math.imul(d,Y)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(_,F),i=(i=Math.imul(_,z))+Math.imul(S,F)|0,a=Math.imul(S,z),n=n+Math.imul(v,H)|0,i=(i=i+Math.imul(v,W)|0)+Math.imul(k,H)|0,a=a+Math.imul(k,W)|0,n=n+Math.imul(m,G)|0,i=(i=i+Math.imul(m,$)|0)+Math.imul(b,G)|0,a=a+Math.imul(b,$)|0,n=n+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(y,Z)|0,a=a+Math.imul(y,Y)|0;var ve=(u+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,ee)|0)+Math.imul(d,Q)|0))<<13)|0;u=((a=a+Math.imul(d,ee)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(x,F),i=(i=Math.imul(x,z))+Math.imul(P,F)|0,a=Math.imul(P,z),n=n+Math.imul(_,H)|0,i=(i=i+Math.imul(_,W)|0)+Math.imul(S,H)|0,a=a+Math.imul(S,W)|0,n=n+Math.imul(v,G)|0,i=(i=i+Math.imul(v,$)|0)+Math.imul(k,G)|0,a=a+Math.imul(k,$)|0,n=n+Math.imul(m,Z)|0,i=(i=i+Math.imul(m,Y)|0)+Math.imul(b,Z)|0,a=a+Math.imul(b,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,ee)|0;var ke=(u+(n=n+Math.imul(h,re)|0)|0)+((8191&(i=(i=i+Math.imul(h,ne)|0)+Math.imul(d,re)|0))<<13)|0;u=((a=a+Math.imul(d,ne)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,z))+Math.imul(M,F)|0,a=Math.imul(M,z),n=n+Math.imul(x,H)|0,i=(i=i+Math.imul(x,W)|0)+Math.imul(P,H)|0,a=a+Math.imul(P,W)|0,n=n+Math.imul(_,G)|0,i=(i=i+Math.imul(_,$)|0)+Math.imul(S,G)|0,a=a+Math.imul(S,$)|0,n=n+Math.imul(v,Z)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(k,Z)|0,a=a+Math.imul(k,Y)|0,n=n+Math.imul(m,Q)|0,i=(i=i+Math.imul(m,ee)|0)+Math.imul(b,Q)|0,a=a+Math.imul(b,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(y,re)|0,a=a+Math.imul(y,ne)|0;var Ae=(u+(n=n+Math.imul(h,ae)|0)|0)+((8191&(i=(i=i+Math.imul(h,se)|0)+Math.imul(d,ae)|0))<<13)|0;u=((a=a+Math.imul(d,se)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(D,F),i=(i=Math.imul(D,z))+Math.imul(B,F)|0,a=Math.imul(B,z),n=n+Math.imul(T,H)|0,i=(i=i+Math.imul(T,W)|0)+Math.imul(M,H)|0,a=a+Math.imul(M,W)|0,n=n+Math.imul(x,G)|0,i=(i=i+Math.imul(x,$)|0)+Math.imul(P,G)|0,a=a+Math.imul(P,$)|0,n=n+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Y)|0)+Math.imul(S,Z)|0,a=a+Math.imul(S,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(k,Q)|0,a=a+Math.imul(k,ee)|0,n=n+Math.imul(m,re)|0,i=(i=i+Math.imul(m,ne)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ne)|0,n=n+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,se)|0)+Math.imul(y,ae)|0,a=a+Math.imul(y,se)|0;var _e=(u+(n=n+Math.imul(h,ce)|0)|0)+((8191&(i=(i=i+Math.imul(h,ue)|0)+Math.imul(d,ce)|0))<<13)|0;u=((a=a+Math.imul(d,ue)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,z))+Math.imul(K,F)|0,a=Math.imul(K,z),n=n+Math.imul(D,H)|0,i=(i=i+Math.imul(D,W)|0)+Math.imul(B,H)|0,a=a+Math.imul(B,W)|0,n=n+Math.imul(T,G)|0,i=(i=i+Math.imul(T,$)|0)+Math.imul(M,G)|0,a=a+Math.imul(M,$)|0,n=n+Math.imul(x,Z)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(P,Z)|0,a=a+Math.imul(P,Y)|0,n=n+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,ee)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(k,re)|0,a=a+Math.imul(k,ne)|0,n=n+Math.imul(m,ae)|0,i=(i=i+Math.imul(m,se)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,se)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(y,ce)|0,a=a+Math.imul(y,ue)|0;var Se=(u+(n=n+Math.imul(h,he)|0)|0)+((8191&(i=(i=i+Math.imul(h,de)|0)+Math.imul(d,he)|0))<<13)|0;u=((a=a+Math.imul(d,de)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(N,F),i=(i=Math.imul(N,z))+Math.imul(L,F)|0,a=Math.imul(L,z),n=n+Math.imul(R,H)|0,i=(i=i+Math.imul(R,W)|0)+Math.imul(K,H)|0,a=a+Math.imul(K,W)|0,n=n+Math.imul(D,G)|0,i=(i=i+Math.imul(D,$)|0)+Math.imul(B,G)|0,a=a+Math.imul(B,$)|0,n=n+Math.imul(T,Z)|0,i=(i=i+Math.imul(T,Y)|0)+Math.imul(M,Z)|0,a=a+Math.imul(M,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,ee)|0)+Math.imul(P,Q)|0,a=a+Math.imul(P,ee)|0,n=n+Math.imul(_,re)|0,i=(i=i+Math.imul(_,ne)|0)+Math.imul(S,re)|0,a=a+Math.imul(S,ne)|0,n=n+Math.imul(v,ae)|0,i=(i=i+Math.imul(v,se)|0)+Math.imul(k,ae)|0,a=a+Math.imul(k,se)|0,n=n+Math.imul(m,ce)|0,i=(i=i+Math.imul(m,ue)|0)+Math.imul(b,ce)|0,a=a+Math.imul(b,ue)|0,n=n+Math.imul(p,he)|0,i=(i=i+Math.imul(p,de)|0)+Math.imul(y,he)|0,a=a+Math.imul(y,de)|0;var Ee=(u+(n=n+Math.imul(h,pe)|0)|0)+((8191&(i=(i=i+Math.imul(h,ye)|0)+Math.imul(d,pe)|0))<<13)|0;u=((a=a+Math.imul(d,ye)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(N,H),i=(i=Math.imul(N,W))+Math.imul(L,H)|0,a=Math.imul(L,W),n=n+Math.imul(R,G)|0,i=(i=i+Math.imul(R,$)|0)+Math.imul(K,G)|0,a=a+Math.imul(K,$)|0,n=n+Math.imul(D,Z)|0,i=(i=i+Math.imul(D,Y)|0)+Math.imul(B,Z)|0,a=a+Math.imul(B,Y)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(M,Q)|0,a=a+Math.imul(M,ee)|0,n=n+Math.imul(x,re)|0,i=(i=i+Math.imul(x,ne)|0)+Math.imul(P,re)|0,a=a+Math.imul(P,ne)|0,n=n+Math.imul(_,ae)|0,i=(i=i+Math.imul(_,se)|0)+Math.imul(S,ae)|0,a=a+Math.imul(S,se)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,ue)|0)+Math.imul(k,ce)|0,a=a+Math.imul(k,ue)|0,n=n+Math.imul(m,he)|0,i=(i=i+Math.imul(m,de)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,de)|0;var xe=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ye)|0)+Math.imul(y,pe)|0))<<13)|0;u=((a=a+Math.imul(y,ye)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(N,G),i=(i=Math.imul(N,$))+Math.imul(L,G)|0,a=Math.imul(L,$),n=n+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(K,Z)|0,a=a+Math.imul(K,Y)|0,n=n+Math.imul(D,Q)|0,i=(i=i+Math.imul(D,ee)|0)+Math.imul(B,Q)|0,a=a+Math.imul(B,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(M,re)|0,a=a+Math.imul(M,ne)|0,n=n+Math.imul(x,ae)|0,i=(i=i+Math.imul(x,se)|0)+Math.imul(P,ae)|0,a=a+Math.imul(P,se)|0,n=n+Math.imul(_,ce)|0,i=(i=i+Math.imul(_,ue)|0)+Math.imul(S,ce)|0,a=a+Math.imul(S,ue)|0,n=n+Math.imul(v,he)|0,i=(i=i+Math.imul(v,de)|0)+Math.imul(k,he)|0,a=a+Math.imul(k,de)|0;var Pe=(u+(n=n+Math.imul(m,pe)|0)|0)+((8191&(i=(i=i+Math.imul(m,ye)|0)+Math.imul(b,pe)|0))<<13)|0;u=((a=a+Math.imul(b,ye)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(N,Z),i=(i=Math.imul(N,Y))+Math.imul(L,Z)|0,a=Math.imul(L,Y),n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(K,Q)|0,a=a+Math.imul(K,ee)|0,n=n+Math.imul(D,re)|0,i=(i=i+Math.imul(D,ne)|0)+Math.imul(B,re)|0,a=a+Math.imul(B,ne)|0,n=n+Math.imul(T,ae)|0,i=(i=i+Math.imul(T,se)|0)+Math.imul(M,ae)|0,a=a+Math.imul(M,se)|0,n=n+Math.imul(x,ce)|0,i=(i=i+Math.imul(x,ue)|0)+Math.imul(P,ce)|0,a=a+Math.imul(P,ue)|0,n=n+Math.imul(_,he)|0,i=(i=i+Math.imul(_,de)|0)+Math.imul(S,he)|0,a=a+Math.imul(S,de)|0;var Ce=(u+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,ye)|0)+Math.imul(k,pe)|0))<<13)|0;u=((a=a+Math.imul(k,ye)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(N,Q),i=(i=Math.imul(N,ee))+Math.imul(L,Q)|0,a=Math.imul(L,ee),n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(K,re)|0,a=a+Math.imul(K,ne)|0,n=n+Math.imul(D,ae)|0,i=(i=i+Math.imul(D,se)|0)+Math.imul(B,ae)|0,a=a+Math.imul(B,se)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,ue)|0)+Math.imul(M,ce)|0,a=a+Math.imul(M,ue)|0,n=n+Math.imul(x,he)|0,i=(i=i+Math.imul(x,de)|0)+Math.imul(P,he)|0,a=a+Math.imul(P,de)|0;var Te=(u+(n=n+Math.imul(_,pe)|0)|0)+((8191&(i=(i=i+Math.imul(_,ye)|0)+Math.imul(S,pe)|0))<<13)|0;u=((a=a+Math.imul(S,ye)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(N,re),i=(i=Math.imul(N,ne))+Math.imul(L,re)|0,a=Math.imul(L,ne),n=n+Math.imul(R,ae)|0,i=(i=i+Math.imul(R,se)|0)+Math.imul(K,ae)|0,a=a+Math.imul(K,se)|0,n=n+Math.imul(D,ce)|0,i=(i=i+Math.imul(D,ue)|0)+Math.imul(B,ce)|0,a=a+Math.imul(B,ue)|0,n=n+Math.imul(T,he)|0,i=(i=i+Math.imul(T,de)|0)+Math.imul(M,he)|0,a=a+Math.imul(M,de)|0;var Me=(u+(n=n+Math.imul(x,pe)|0)|0)+((8191&(i=(i=i+Math.imul(x,ye)|0)+Math.imul(P,pe)|0))<<13)|0;u=((a=a+Math.imul(P,ye)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(N,ae),i=(i=Math.imul(N,se))+Math.imul(L,ae)|0,a=Math.imul(L,se),n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(K,ce)|0,a=a+Math.imul(K,ue)|0,n=n+Math.imul(D,he)|0,i=(i=i+Math.imul(D,de)|0)+Math.imul(B,he)|0,a=a+Math.imul(B,de)|0;var Ie=(u+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,ye)|0)+Math.imul(M,pe)|0))<<13)|0;u=((a=a+Math.imul(M,ye)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,n=Math.imul(N,ce),i=(i=Math.imul(N,ue))+Math.imul(L,ce)|0,a=Math.imul(L,ue),n=n+Math.imul(R,he)|0,i=(i=i+Math.imul(R,de)|0)+Math.imul(K,he)|0,a=a+Math.imul(K,de)|0;var De=(u+(n=n+Math.imul(D,pe)|0)|0)+((8191&(i=(i=i+Math.imul(D,ye)|0)+Math.imul(B,pe)|0))<<13)|0;u=((a=a+Math.imul(B,ye)|0)+(i>>>13)|0)+(De>>>26)|0,De&=67108863,n=Math.imul(N,he),i=(i=Math.imul(N,de))+Math.imul(L,he)|0,a=Math.imul(L,de);var Be=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,ye)|0)+Math.imul(K,pe)|0))<<13)|0;u=((a=a+Math.imul(K,ye)|0)+(i>>>13)|0)+(Be>>>26)|0,Be&=67108863;var Ue=(u+(n=Math.imul(N,pe))|0)+((8191&(i=(i=Math.imul(N,ye))+Math.imul(L,pe)|0))<<13)|0;return u=((a=Math.imul(L,ye))+(i>>>13)|0)+(Ue>>>26)|0,Ue&=67108863,c[0]=ge,c[1]=me,c[2]=be,c[3]=we,c[4]=ve,c[5]=ke,c[6]=Ae,c[7]=_e,c[8]=Se,c[9]=Ee,c[10]=xe,c[11]=Pe,c[12]=Ce,c[13]=Te,c[14]=Me,c[15]=Ie,c[16]=De,c[17]=Be,c[18]=Ue,0!==u&&(c[19]=u,r.length++),r};function f(e,t,r){return(new p).mulp(e,t,r)}function p(e,t){this.x=e,this.y=t}Math.imul||(d=h),i.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?d(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,s&=67108863}r.words[a]=o,n=s,s=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,e,t):f(this,e,t),r},p.prototype.makeRBT=function(e){for(var t=new Array(e),r=i.prototype._countBits(e)-1,n=0;n>=1;return n},p.prototype.permute=function(e,t,r,n,i,a){for(var s=0;s>>=1)i++;return 1<>>=13,n[2*s+1]=8191&a,a>>>=13;for(s=2*t;s>=26,t+=i/67108864|0,t+=a>>>26,this.words[n]=67108863&a}return 0!==t&&(this.words[n]=t,this.length++),this},i.prototype.muln=function(e){return this.clone().imuln(e)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new i(1);for(var r=this,n=0;n=0);var t,n=e%26,i=(e-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(t=0;t>>26-n}s&&(this.words[t]=s,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var a=e%26,s=Math.min((e-a)/26,this.length),o=67108863^67108863>>>a<s)for(this.length-=s,u=0;u=0&&(0!==l||u>=i);u--){var h=0|this.words[u];this.words[u]=l<<26-a|h>>>a,l=h&o}return c&&0!==l&&(c.words[c.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(e,t,n){return r(0===this.negative),this.iushrn(e,t,n)},i.prototype.shln=function(e){return this.clone().ishln(e)},i.prototype.ushln=function(e){return this.clone().iushln(e)},i.prototype.shrn=function(e){return this.clone().ishrn(e)},i.prototype.ushrn=function(e){return this.clone().iushrn(e)},i.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,i=1<=0);var t=e%26,n=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},i.prototype.isubn=function(e){if(r("number"==typeof e),r(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+n]=67108863&a}for(;i>26,this.words[i+n]=67108863&a;if(0===o)return this.strip();for(r(-1===o),o=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},i.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),a=e,s=0|a.words[a.length-1];0!=(r=26-this._countBits(s))&&(a=a.ushln(r),n.iushln(r),s=0|a.words[a.length-1]);var o,c=n.length-a.length;if("mod"!==t){(o=new i(null)).length=c+1,o.words=new Array(o.length);for(var u=0;u=0;h--){var d=67108864*(0|n.words[a.length+h])+(0|n.words[a.length+h-1]);for(d=Math.min(d/s|0,67108863),n._ishlnsubmul(a,d,h);0!==n.negative;)d--,n.negative=0,n._ishlnsubmul(a,1,h),n.isZero()||(n.negative^=1);o&&(o.words[h]=d)}return o&&o.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:o||null,mod:n}},i.prototype.divmod=function(e,t,n){return r(!e.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===e.negative?(o=this.neg().divmod(e,t),"mod"!==t&&(a=o.div.neg()),"div"!==t&&(s=o.mod.neg(),n&&0!==s.negative&&s.iadd(e)),{div:a,mod:s}):0===this.negative&&0!==e.negative?(o=this.divmod(e.neg(),t),"mod"!==t&&(a=o.div.neg()),{div:a,mod:o.mod}):0!=(this.negative&e.negative)?(o=this.neg().divmod(e.neg(),t),"div"!==t&&(s=o.mod.neg(),n&&0!==s.negative&&s.isub(e)),{div:o.div,mod:s}):e.length>this.length||this.cmp(e)<0?{div:new i(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new i(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new i(this.modn(e.words[0]))}:this._wordDiv(e,t);var a,s,o},i.prototype.div=function(e){return this.divmod(e,"div",!1).div},i.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},i.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},i.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},i.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,n=0,i=this.length-1;i>=0;i--)n=(t*n+(0|this.words[i]))%e;return n},i.prototype.idivn=function(e){r(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*t;this.words[n]=i/e|0,t=i%e}return this.strip()},i.prototype.divn=function(e){return this.clone().idivn(e)},i.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var a=new i(1),s=new i(0),o=new i(0),c=new i(1),u=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++u;for(var l=n.clone(),h=t.clone();!t.isZero();){for(var d=0,f=1;0==(t.words[0]&f)&&d<26;++d,f<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(a.isOdd()||s.isOdd())&&(a.iadd(l),s.isub(h)),a.iushrn(1),s.iushrn(1);for(var p=0,y=1;0==(n.words[0]&y)&&p<26;++p,y<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(o.isOdd()||c.isOdd())&&(o.iadd(l),c.isub(h)),o.iushrn(1),c.iushrn(1);t.cmp(n)>=0?(t.isub(n),a.isub(o),s.isub(c)):(n.isub(t),o.isub(a),c.isub(s))}return{a:o,b:c,gcd:n.iushln(u)}},i.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var a,s=new i(1),o=new i(0),c=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var u=0,l=1;0==(t.words[0]&l)&&u<26;++u,l<<=1);if(u>0)for(t.iushrn(u);u-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);for(var h=0,d=1;0==(n.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(n.iushrn(h);h-- >0;)o.isOdd()&&o.iadd(c),o.iushrn(1);t.cmp(n)>=0?(t.isub(n),s.isub(o)):(n.isub(t),o.isub(s))}return(a=0===t.cmpn(1)?s:o).cmpn(0)<0&&a.iadd(e),a},i.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var a=t;t=r,r=a}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},i.prototype.invm=function(e){return this.egcd(e).a.umod(e)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(e){return this.words[0]&e},i.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,n=(e-t)/26,i=1<>>26,o&=67108863,this.words[s]=o}return 0!==a&&(this.words[s]=a,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),r(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},i.prototype.gtn=function(e){return 1===this.cmpn(e)},i.prototype.gt=function(e){return 1===this.cmp(e)},i.prototype.gten=function(e){return this.cmpn(e)>=0},i.prototype.gte=function(e){return this.cmp(e)>=0},i.prototype.ltn=function(e){return-1===this.cmpn(e)},i.prototype.lt=function(e){return-1===this.cmp(e)},i.prototype.lten=function(e){return this.cmpn(e)<=0},i.prototype.lte=function(e){return this.cmp(e)<=0},i.prototype.eqn=function(e){return 0===this.cmpn(e)},i.prototype.eq=function(e){return 0===this.cmp(e)},i.red=function(e){return new k(e)},i.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},i.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(e){return this.red=e,this},i.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},i.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},i.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},i.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},i.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},i.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},i.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},i.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},i.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var y={k256:null,p224:null,p192:null,p25519:null};function g(e,t){this.name=e,this.p=new i(t,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function m(){g.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){g.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){g.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function v(){g.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"==typeof e){var t=i._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function A(e){k.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}g.prototype._tmp=function(){var e=new i(null);return e.words=new Array(Math.ceil(this.n/13)),e},g.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):r.strip(),r},g.prototype.split=function(e,t){e.iushrn(this.n,0,t)},g.prototype.imulK=function(e){return e.imul(this.k)},n(m,g),m.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,a=s}a>>>=22,e.words[i-10]=a,0===a&&e.length>10?e.length-=10:e.length-=9},m.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},i._prime=function(e){if(y[e])return y[e];var t;if("k256"===e)t=new m;else if("p224"===e)t=new b;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new v}return y[e]=t,t},k.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){r(0==(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var n=this.m.add(new i(1)).iushrn(2);return this.pow(e,n)}for(var a=this.m.subn(1),s=0;!a.isZero()&&0===a.andln(1);)s++,a.iushrn(1);r(!a.isZero());var o=new i(1).toRed(this),c=o.redNeg(),u=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);0!==this.pow(l,u).cmp(c);)l.redIAdd(c);for(var h=this.pow(l,a),d=this.pow(e,a.addn(1).iushrn(1)),f=this.pow(e,a),p=s;0!==f.cmp(o);){for(var y=f,g=0;0!==y.cmp(o);g++)y=y.redSqr();r(g=0;n--){for(var u=t.words[n],l=c-1;l>=0;l--){var h=u>>l&1;a!==r[0]&&(a=this.sqr(a)),0!==h||0!==s?(s<<=1,s|=h,(4==++o||0===n&&0===l)&&(a=this.mul(a,r[s]),o=0,s=0)):o=0}c=26}return a},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},i.mont=function(e){return new A(e)},n(A,k),A.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},A.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},A.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},A.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new i(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),s=a;return a.cmp(this.m)>=0?s=a.isub(this.m):a.cmpn(0)<0&&(s=a.iadd(this.m)),s._forceRed(this)},A.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,ot)})),Vf=Object.freeze({__proto__:null,default:Wf,__moduleExports:Wf});class Gf{constructor(e){if(void 0===e)throw new Error("Invalid BigInteger input");this.value=new Wf(e)}clone(){const e=new Gf(null);return this.value.copy(e.value),e}iinc(){return this.value.iadd(new Wf(1)),this}inc(){return this.clone().iinc()}idec(){return this.value.isub(new Wf(1)),this}dec(){return this.clone().idec()}iadd(e){return this.value.iadd(e.value),this}add(e){return this.clone().iadd(e)}isub(e){return this.value.isub(e.value),this}sub(e){return this.clone().isub(e)}imul(e){return this.value.imul(e.value),this}mul(e){return this.clone().imul(e)}imod(e){return this.value=this.value.umod(e.value),this}mod(e){return this.clone().imod(e)}modExp(e,t){const r=t.isEven()?Wf.red(t.value):Wf.mont(t.value),n=this.clone();return n.value=n.value.toRed(r).redPow(e.value).fromRed(),n}modInv(e){if(!this.gcd(e).isOne())throw new Error("Inverse does not exist");return new Gf(this.value.invm(e.value))}gcd(e){return new Gf(this.value.gcd(e.value))}ileftShift(e){return this.value.ishln(e.value.toNumber()),this}leftShift(e){return this.clone().ileftShift(e)}irightShift(e){return this.value.ishrn(e.value.toNumber()),this}rightShift(e){return this.clone().irightShift(e)}equal(e){return this.value.eq(e.value)}lt(e){return this.value.lt(e.value)}lte(e){return this.value.lte(e.value)}gt(e){return this.value.gt(e.value)}gte(e){return this.value.gte(e.value)}isZero(){return this.value.isZero()}isOne(){return this.value.eq(new Wf(1))}isNegative(){return this.value.isNeg()}isEven(){return this.value.isEven()}abs(){const e=this.clone();return e.value=e.value.abs(),e}toString(){return this.value.toString()}toNumber(){return this.value.toNumber()}getBit(e){return this.value.testn(e)?1:0}bitLength(){return this.value.bitLength()}byteLength(){return this.value.byteLength()}toUint8Array(e="be",t){return this.value.toArrayLike(Uint8Array,e,t)}}var $f,Jf=Object.freeze({__proto__:null,default:Gf}),Zf=ct((function(e,t){var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,s=255&i;a?r.push(a,s):r.push(s)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}})),Yf=ct((function(e,t){var r=t;r.assert=at,r.toArray=Zf.toArray,r.zero2=Zf.zero2,r.toHex=Zf.toHex,r.encode=Zf.encode,r.getNAF=function(e,t){for(var r=[],n=1<=0;){var a;if(i.isOdd()){var s=i.andln(n-1);a=s>(n>>1)-1?(n>>1)-s:s,i.isubn(a)}else a=0;r.push(a);for(var o=0!==i.cmpn(0)&&0===i.andln(n-1)?t+1:1,c=1;c0||t.cmpn(-i)>0;){var a,s,o,c=e.andln(3)+n&3,u=t.andln(3)+i&3;3===c&&(c=-1),3===u&&(u=-1),a=0==(1&c)?0:3!=(o=e.andln(7)+n&7)&&5!==o||2!==u?c:-c,r[0].push(a),s=0==(1&u)?0:3!=(o=t.andln(7)+i&7)&&5!==o||2!==c?u:-u,r[1].push(s),2*n===a+1&&(n=1-n),2*i===s+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return r},r.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new Wf(e,"hex","le")}})),Xf=function(e){return $f||($f=new Qf(null)),$f.generate(e)};function Qf(e){this.rand=e}var ep=Qf;if(Qf.prototype.generate=function(e){return this._rand(e)},Qf.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var sp=ap;function op(e,t){this.curve=e,this.type=t,this.precomputed=null}ap.prototype.point=function(){throw new Error("Not implemented")},ap.prototype.validate=function(){throw new Error("Not implemented")},ap.prototype._fixedNafMul=function(e,t){ip(e.precomputed);var r=e._getDoubles(),n=rp(t,1),i=(1<=s;t--)o=(o<<1)+n[t];a.push(o)}for(var c=this.jpoint(null,null,null),u=this.jpoint(null,null,null),l=i;l>0;l--){for(s=0;s=0;o--){for(t=0;o>=0&&0===a[o];o--)t++;if(o>=0&&t++,s=s.dblp(t),o<0)break;var c=a[o];ip(0!==c),s="affine"===e.type?c>0?s.mixedAdd(i[c-1>>1]):s.mixedAdd(i[-c-1>>1].neg()):c>0?s.add(i[c-1>>1]):s.add(i[-c-1>>1].neg())}return"affine"===e.type?s.toP():s},ap.prototype._wnafMulAdd=function(e,t,r,n,i){for(var a=this._wnafT1,s=this._wnafT2,o=this._wnafT3,c=0,u=0;u=1;u-=2){var h=u-1,d=u;if(1===a[h]&&1===a[d]){var f=[t[h],null,null,t[d]];0===t[h].y.cmp(t[d].y)?(f[1]=t[h].add(t[d]),f[2]=t[h].toJ().mixedAdd(t[d].neg())):0===t[h].y.cmp(t[d].y.redNeg())?(f[1]=t[h].toJ().mixedAdd(t[d]),f[2]=t[h].add(t[d].neg())):(f[1]=t[h].toJ().mixedAdd(t[d]),f[2]=t[h].toJ().mixedAdd(t[d].neg()));var p=[-3,-1,-5,-7,0,7,5,1,3],y=np(r[h],r[d]);c=Math.max(y[0].length,c),o[h]=new Array(c),o[d]=new Array(c);for(var g=0;g=0;u--){for(var k=0;u>=0;){var A=!0;for(g=0;g=0&&k++,w=w.dblp(k),u<0)break;for(g=0;g0?_=s[g][S-1>>1]:S<0&&(_=s[g][-S-1>>1].neg()),w="affine"===_.type?w.mixedAdd(_):w.add(_))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},op.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(a=t,s=r),n.negative&&(n=n.neg(),i=i.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:i},{a,b:s}]},up.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),s=i.mul(r.a),o=a.mul(n.a),c=i.mul(r.b),u=a.mul(n.b);return{k1:e.sub(s).sub(o),k2:c.add(u).neg()}},up.prototype.pointFromX=function(e,t){(e=new Wf(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var i=n.fromRed().isOdd();return(t&&!i||!t&&i)&&(n=n.redNeg()),this.point(e,n)},up.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},up.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,a=0;a":""},hp.prototype.isInfinity=function(){return this.inf},hp.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},hp.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),a=i.redSqr().redISub(this.x.redAdd(this.x)),s=i.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,s)},hp.prototype.getX=function(){return this.x.fromRed()},hp.prototype.getY=function(){return this.y.fromRed()},hp.prototype.mul=function(e){return e=new Wf(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},hp.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},hp.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},hp.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},hp.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},hp.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},lt(dp,sp.BasePoint),up.prototype.jpoint=function(e,t,r){return new dp(this,e,t,r)},dp.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},dp.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},dp.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),s=e.y.redMul(r.redMul(this.z)),o=n.redSub(i),c=a.redSub(s);if(0===o.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=o.redSqr(),l=u.redMul(o),h=n.redMul(u),d=c.redSqr().redIAdd(l).redISub(h).redISub(h),f=c.redMul(h.redISub(d)).redISub(a.redMul(l)),p=this.z.redMul(e.z).redMul(o);return this.curve.jpoint(d,f,p)},dp.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,a=e.y.redMul(t).redMul(this.z),s=r.redSub(n),o=i.redSub(a);if(0===s.cmpn(0))return 0!==o.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),u=c.redMul(s),l=r.redMul(c),h=o.redSqr().redIAdd(u).redISub(l).redISub(l),d=o.redMul(l.redISub(h)).redISub(i.redMul(u)),f=this.z.redMul(s);return this.curve.jpoint(h,d,f)},dp.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},dp.prototype.inspect=function(){return this.isInfinity()?"":""},dp.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},lt(fp,sp);var pp=fp;function yp(e,t,r){sp.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new Wf(t,16),this.z=new Wf(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}fp.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},lt(yp,sp.BasePoint),fp.prototype.decodePoint=function(e,t){if(33===(e=Yf.toArray(e,t)).length&&64===e[0]&&(e=e.slice(1,33).reverse()),32!==e.length)throw new Error("Unknown point compression format");return this.point(e,1)},fp.prototype.point=function(e,t){return new yp(this,e,t)},fp.prototype.pointFromJSON=function(e){return yp.fromJSON(this,e)},yp.prototype.precompute=function(){},yp.prototype._encode=function(e){var t=this.curve.p.byteLength();return e?[64].concat(this.getX().toArray("le",t)):this.getX().toArray("be",t)},yp.fromJSON=function(e,t){return new yp(e,t[0],t[1]||e.one)},yp.prototype.inspect=function(){return this.isInfinity()?"":""},yp.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},yp.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},yp.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},yp.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(r),s=i.redMul(n),o=t.z.redMul(a.redAdd(s).redSqr()),c=t.x.redMul(a.redISub(s).redSqr());return this.curve.point(o,c)},yp.prototype.mul=function(e){for(var t=(e=new Wf(e,16)).clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var a=i.length-1;a>=0;a--)0===i[a]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},yp.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},yp.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},yp.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},yp.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},yp.prototype.getX=function(){return this.normalize(),this.x.fromRed()};var gp=Yf.assert;function mp(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,sp.call(this,"edwards",e),this.a=new Wf(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new Wf(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new Wf(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),gp(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}lt(mp,sp);var bp=mp;function wp(e,t,r,n,i){sp.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new Wf(t,16),this.y=new Wf(r,16),this.z=n?new Wf(n,16):this.curve.one,this.t=i&&new Wf(i,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}mp.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},mp.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},mp.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},mp.prototype.pointFromX=function(e,t){(e=new Wf(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),i=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(i.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var o=s.fromRed().isOdd();return(t&&!o||!t&&o)&&(s=s.redNeg()),this.point(e,s)},mp.prototype.pointFromY=function(e,t){(e=new Wf(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),i=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(i.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},mp.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},lt(wp,sp.BasePoint),mp.prototype.pointFromJSON=function(e){return wp.fromJSON(this,e)},mp.prototype.point=function(e,t,r,n){return new wp(this,e,t,r,n)},wp.fromJSON=function(e,t){return new wp(e,t[0],t[1],t[2])},wp.prototype.inspect=function(){return this.isInfinity()?"":""},wp.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},wp.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=n.redAdd(t),s=a.redSub(r),o=n.redSub(t),c=i.redMul(s),u=a.redMul(o),l=i.redMul(o),h=s.redMul(a);return this.curve.point(c,u,h,l)},wp.prototype._projDbl=function(){var e,t,r,n=this.x.redAdd(this.y).redSqr(),i=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var s=(u=this.curve._mulA(i)).redAdd(a);if(this.zOne)e=n.redSub(i).redSub(a).redMul(s.redSub(this.curve.two)),t=s.redMul(u.redSub(a)),r=s.redSqr().redSub(s).redSub(s);else{var o=this.z.redSqr(),c=s.redSub(o).redISub(o);e=n.redSub(i).redISub(a).redMul(c),t=s.redMul(u.redSub(a)),r=s.redMul(c)}}else{var u=i.redAdd(a);o=this.curve._mulC(this.z).redSqr(),c=u.redSub(o).redSub(o),e=this.curve._mulC(n.redISub(u)).redMul(c),t=this.curve._mulC(u).redMul(i.redISub(a)),r=u.redMul(c)}return this.curve.point(e,t,r)},wp.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},wp.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),s=i.redSub(n),o=i.redAdd(n),c=r.redAdd(t),u=a.redMul(s),l=o.redMul(c),h=a.redMul(c),d=s.redMul(o);return this.curve.point(u,l,d,h)},wp.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),a=this.x.redMul(e.x),s=this.y.redMul(e.y),o=this.curve.d.redMul(a).redMul(s),c=i.redSub(o),u=i.redAdd(o),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(s),h=n.redMul(c).redMul(l);return this.curve.twisted?(t=n.redMul(u).redMul(s.redSub(this.curve._mulA(a))),r=c.redMul(u)):(t=n.redMul(u).redMul(s.redSub(a)),r=this.curve._mulC(c).redMul(u)),this.curve.point(h,t,r)},wp.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},wp.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},wp.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},wp.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},wp.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},wp.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},wp.prototype.getX=function(){return this.normalize(),this.x.fromRed()},wp.prototype.getY=function(){return this.normalize(),this.y.fromRed()},wp.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},wp.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},wp.prototype.toP=wp.prototype.normalize,wp.prototype.mixedAdd=wp.prototype.add;var vp=ct((function(e,t){var r=t;r.base=sp,r.short=lp,r.mont=pp,r.edwards=bp})),kp=pt.rotl32,Ap=pt.sum32,_p=pt.sum32_5,Sp=At,Ep=mt.BlockHash,xp=[1518500249,1859775393,2400959708,3395469782];function Pp(){if(!(this instanceof Pp))return new Pp;Ep.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}pt.inherits(Pp,Ep);var Cp=Pp;Pp.blockSize=512,Pp.outSize=160,Pp.hmacStrength=80,Pp.padLength=64,Pp.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;nthis.blockSize&&(e=(new this.Hash).update(e).digest()),at(e.length<=this.blockSize);for(var t=e.length;t=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}var Kp=Rp;Rp.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},Rp.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=Zf.toArray(r,n||"hex"),this._update(r));for(var i=[];i.length"};var qp=Yf.assert;function Fp(e,t){if(e instanceof Fp)return e;this._importDER(e,t)||(qp(e.r&&e.s,"Signature without r or s"),this.r=new Wf(e.r,16),this.s=new Wf(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var zp=Fp;function jp(){this.place=0}function Hp(e,t){var r=e[t.place++];if(!(128&r))return r;for(var n=15&r,i=0,a=0,s=t.place;a>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}Fp.prototype._importDER=function(e,t){e=Yf.toArray(e,t);var r=new jp;if(48!==e[r.place++])return!1;if(Hp(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var n=Hp(e,r),i=e.slice(r.place,n+r.place);if(r.place+=n,2!==e[r.place++])return!1;var a=Hp(e,r);if(e.length!==a+r.place)return!1;var s=e.slice(r.place,a+r.place);return 0===i[0]&&128&i[1]&&(i=i.slice(1)),0===s[0]&&128&s[1]&&(s=s.slice(1)),this.r=new Wf(i),this.s=new Wf(s),this.recoveryParam=null,!0},Fp.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=Wp(t),r=Wp(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];Vp(n,t.length),(n=n.concat(t)).push(2),Vp(n,r.length);var i=n.concat(r),a=[48];return Vp(a,i.length),a=a.concat(i),Yf.encode(a,e)};var Gp=Yf.assert;function $p(e){if(!(this instanceof $p))return new $p(e);"string"==typeof e&&(Gp(Up.hasOwnProperty(e),"Unknown curve "+e),e=Up[e]),e instanceof Up.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var Jp=$p;$p.prototype.keyPair=function(e){return new Lp(this,e)},$p.prototype.keyFromPrivate=function(e,t){return Lp.fromPrivate(this,e,t)},$p.prototype.keyFromPublic=function(e,t){return Lp.fromPublic(this,e,t)},$p.prototype.genKeyPair=function(e){e||(e={});var t=new Kp({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||Xf(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()});if("mont"===this.curve.type){var r=new Wf(t.generate(32));return this.keyFromPrivate(r)}for(var n=this.n.byteLength(),i=this.n.sub(new Wf(2));;)if(!((r=new Wf(t.generate(n))).cmp(i)>0))return r.iaddn(1),this.keyFromPrivate(r)},$p.prototype._truncateToN=function(e,t,r){var n=(r=r||8*e.byteLength())-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},$p.prototype.truncateMsg=function(e){var t;return e instanceof Uint8Array?(t=8*e.byteLength,e=this._truncateToN(new Wf(e,16),!1,t)):"string"==typeof e?(t=4*e.length,e=this._truncateToN(new Wf(e,16),!1,t)):e=this._truncateToN(new Wf(e,16)),e},$p.prototype.sign=function(e,t,r,n){"object"==typeof r&&(n=r,r=null),n||(n={}),t=this.keyFromPrivate(t,r),e=this.truncateMsg(e);for(var i=this.n.byteLength(),a=t.getPrivate().toArray("be",i),s=e.toArray("be",i),o=new Kp({hash:this.hash,entropy:a,nonce:s,pers:n.pers,persEnc:n.persEnc||"utf8"}),c=this.n.sub(new Wf(1)),u=0;;u++){var l=n.k?n.k(u):new Wf(o.generate(this.n.byteLength()));if(!((l=this._truncateToN(l,!0)).cmpn(1)<=0||l.cmp(c)>=0)){var h=this.g.mul(l);if(!h.isInfinity()){var d=h.getX(),f=d.umod(this.n);if(0!==f.cmpn(0)){var p=l.invm(this.n).mul(f.mul(t.getPrivate()).iadd(e));if(0!==(p=p.umod(this.n)).cmpn(0)){var y=(h.getY().isOdd()?1:0)|(0!==d.cmp(f)?2:0);return n.canonical&&p.cmp(this.nh)>0&&(p=this.n.sub(p),y^=1),new zp({r:f,s:p,recoveryParam:y})}}}}}},$p.prototype.verify=function(e,t,r,n){return r=this.keyFromPublic(r,n),t=new zp(t,"hex"),this._verify(this.truncateMsg(e),t,r)||this._verify(this._truncateToN(new Wf(e,16)),t,r)},$p.prototype._verify=function(e,t,r){var n=t.r,i=t.s;if(n.cmpn(1)<0||n.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var a,s=i.invm(this.n),o=s.mul(e).umod(this.n),c=s.mul(n).umod(this.n);return this.curve._maxwellTrick?!(a=this.g.jmulAdd(o,r.getPublic(),c)).isInfinity()&&a.eqXToP(n):!(a=this.g.mulAdd(o,r.getPublic(),c)).isInfinity()&&0===a.getX().umod(this.n).cmp(n)},$p.prototype.recoverPubKey=function(e,t,r,n){Gp((3&r)===r,"The recovery param is more than two bits"),t=new zp(t,n);var i=this.n,a=new Wf(e),s=t.r,o=t.s,c=1&r,u=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&u)throw new Error("Unable to find sencond key candinate");s=u?this.curve.pointFromX(s.add(this.curve.n),c):this.curve.pointFromX(s,c);var l=t.r.invm(i),h=i.sub(a).mul(l).umod(i),d=o.mul(l).umod(i);return this.g.mulAdd(h,s,d)},$p.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new zp(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var a;try{a=this.recoverPubKey(e,t,i)}catch(e){continue}if(a.eq(r))return i}throw new Error("Unable to find valid recovery factor")};var Zp=Yf.assert,Yp=Yf.parseBytes,Xp=Yf.cachedProperty;function Qp(e,t){if(this.eddsa=e,t.hasOwnProperty("secret")&&(this._secret=Yp(t.secret)),e.isPoint(t.pub))this._pub=t.pub;else if(this._pubBytes=Yp(t.pub),this._pubBytes&&33===this._pubBytes.length&&64===this._pubBytes[0]&&(this._pubBytes=this._pubBytes.slice(1,33)),this._pubBytes&&32!==this._pubBytes.length)throw new Error("Unknown point compression format")}Qp.fromPublic=function(e,t){return t instanceof Qp?t:new Qp(e,{pub:t})},Qp.fromSecret=function(e,t){return t instanceof Qp?t:new Qp(e,{secret:t})},Qp.prototype.secret=function(){return this._secret},Xp(Qp,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),Xp(Qp,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),Xp(Qp,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),Xp(Qp,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),Xp(Qp,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),Xp(Qp,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),Qp.prototype.sign=function(e){return Zp(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},Qp.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},Qp.prototype.getSecret=function(e){return Zp(this._secret,"KeyPair is public only"),Yf.encode(this.secret(),e)},Qp.prototype.getPublic=function(e,t){return Yf.encode((t?[64]:[]).concat(this.pubBytes()),e)};var ey=Qp,ty=Yf.assert,ry=Yf.cachedProperty,ny=Yf.parseBytes;function iy(e,t){this.eddsa=e,"object"!=typeof t&&(t=ny(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),ty(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof Wf&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}ry(iy,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),ry(iy,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),ry(iy,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),ry(iy,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),iy.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},iy.prototype.toHex=function(){return Yf.encode(this.toBytes(),"hex").toUpperCase()};var ay=iy,sy=Yf.assert,oy=Yf.parseBytes;function cy(e){if(sy("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof cy))return new cy(e);e=Up[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=Dp.sha512}var uy=cy;cy.prototype.sign=function(e,t){e=oy(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),a=this.encodePoint(i),s=this.hashInt(a,r.pubBytes(),e).mul(r.priv()),o=n.add(s).umod(this.curve.n);return this.makeSignature({R:i,S:o,Rencoded:a})},cy.prototype.verify=function(e,t,r){e=oy(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(a)},cy.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";e.exports={i8:"2.0.0"}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{"use strict";var e=n;Object.defineProperty(e,"__esModule",{value:!0});const t=r(1769),i=r(8267);r.g.handleRequestFromHost=async(e,r,n)=>{const a=new t.Endpoints;try{const t=a[e];return t?t(r,[n]).then((e=>e)).catch((e=>(0,i.fmtErr)(e))):(0,i.fmtErr)(new Error(`Unknown endpoint: ${e}`))}catch(e){return(0,i.fmtErr)(e)}}})(),module.exports=n})();; +(()=>{var e={3830:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Att=void 0;const n=r(4769);class i{static attachmentsPattern=/^(((cryptup|flowcrypt)-backup-[a-z0-9]+\.(key|asc))|(.+\.pgp)|(.+\.gpg)|(.+\.asc)|(noname)|(message)|(PGPMIME version identification)|())$/gm;length=NaN;type;name;url;id;msgId;inline;cid;contentDescription;bytes;treatAsValue;constructor({data:e,type:t,name:r,length:n,url:i,inline:a,id:s,msgId:o,treatAs:c,cid:u,contentDescription:l}){if(void 0===e&&void 0===i&&void 0===s)throw new Error("Att: one of data|url|id has to be set");if(s&&!o)throw new Error("Att: if id is set, msgId must be set too");e?(this.bytes=e,this.length=e.length):this.length=Number(n),this.name=r||"",this.type=t||"application/octet-stream",this.url=i||void 0,this.inline=!!a,this.id=s||void 0,this.msgId=o||void 0,this.treatAsValue=c||void 0,this.cid=u||void 0,this.contentDescription=l||void 0}static keyinfoAsPubkeyAtt=e=>new i({data:n.Buf.fromUtfStr(e.public),type:"application/pgp-keys",name:`0x${e.longid}.asc`});hasData=()=>this.bytes instanceof Uint8Array;setData=e=>{if(this.hasData())throw new Error("Att bytes already set");this.bytes=e};getData=()=>{if(this.bytes instanceof n.Buf)return this.bytes;if(this.bytes instanceof Uint8Array)return new n.Buf(this.bytes);throw new Error("Att has no data set")};treatAs=()=>this.treatAsValue?this.treatAsValue:["PGPexch.htm.pgp","PGPMIME version identification","Version.txt","PGPMIME Versions Identification"].includes(this.name)?"hidden":"signature.asc"===this.name||"application/pgp-signature"===this.type?"signature":this.name||this.type.startsWith("image/")?"msg.asc"===this.name&&this.length<100&&"application/pgp-encrypted"===this.type?"hidden":["message","msg.asc","message.asc","encrypted.asc","encrypted.eml.pgp","Message.pgp"].includes(this.name)?"encryptedMsg":this.name.match(/(\.pgp$)|(\.gpg$)|(\.[a-zA-Z0-9]{3,4}\.asc$)/g)?"encryptedFile":this.name.match(/(cryptup|flowcrypt)-backup-[a-z0-9]+\.(key|asc)$/g)?"privateKey":this.name.match(/^(0|0x)?[A-F0-9]{8}([A-F0-9]{8})?.*\.asc$/g)||this.name.toLowerCase().includes("public")&&this.name.match(/[A-F0-9]{8}.*\.asc$/g)||this.name.match(/\.asc$/)&&this.hasData()&&n.Buf.with(this.getData().subarray(0,100)).toUtfStr().includes("-----BEGIN PGP PUBLIC KEY BLOCK-----")?"publicKey":this.name.match(/\.asc$/)&&this.length<1e5&&!this.inline?"encryptedMsg":"plainFile":this.length<100?"hidden":"encryptedMsg"}t.Att=i},4769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Buf=void 0;const n=r(1106);class i extends Uint8Array{static concat=e=>{const t=new Uint8Array(e.reduce(((e,t)=>e+t.length),0));let r=0;for(const n of e)t.set(n,r),r+=n.length;return i.fromUint8(t)};static with=e=>e instanceof i?e:e instanceof Uint8Array?i.fromUint8(e):i.fromUtfStr(e);static fromUint8=e=>new i(e);static fromRawBytesStr=e=>{const t=e.length,r=new i(t);for(let n=0;n{let t;const r=e.length;let n;const a=[];for(let i=0;i55295&&t<57344){if(!n){if(t>56319){a.push(239,191,189);continue}if(i+1===r){a.push(239,191,189);continue}n=t;continue}if(t<56320){a.push(239,191,189),n=t;continue}t=65536+(n-55296<<10|t-56320)}else n&&a.push(239,191,189);if(n=void 0,t<128)a.push(t);else if(t<2048)a.push(t>>6|192,63&t|128);else if(t<65536)a.push(t>>12|224,t>>6&63|128,63&t|128);else{if(!(t<1114112))throw new Error("Invalid code point");a.push(t>>18|240,t>>12&63|128,t>>6&63|128,63&t|128)}}return new i(a)};static fromBase64Str=e=>i.fromRawBytesStr((0,n.base64decode)(e));static fromBase64UrlStr=e=>i.fromBase64Str(e.replace(/-/g,"+").replace(/_/g,"/"));toString=(e="inform")=>this.toUtfStr(e);toUtfStr=(e="inform")=>{const t=this.length;let r=0,n="";const i=new Array(t);for(let a=0;a{const e=this.length,t=[];for(let r=0;r(0,n.base64encode)(this.toRawBytesStr());toBase64UrlStr=()=>this.toBase64Str().replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}t.Buf=i},4115:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Value=t.Str=void 0;const n=r(1106);class i{static extractErrorMessage=e=>{if("object"==typeof e&&void 0!==e.message)return"string"==typeof e.message?e.message:JSON.stringify(e)};static parseEmail=(e,t="VALIDATE")=>{let r,n;if(e.includes("<")&&e.includes(">")){const t=e.indexOf("<"),i=e.indexOf(">");r=e.substr(t+1,t-i-1).replace(/["']/g,"").trim().toLowerCase(),n=e.substr(0,e.indexOf("<")).replace(/["']/g,"").trim()}else r=e.replace(/["']/g,"").trim().toLowerCase();return"VALIDATE"!==t||i.isEmailValid(r)||(r=void 0),{email:r,name:n,full:e}};static prettyPrint=e=>"object"==typeof e?JSON.stringify(e,void 0,2).replace(/ /g," ").replace(/\n/g,"
"):String(e);static normalizeSpaces=e=>e.replace(RegExp(String.fromCharCode(160),"g"),String.fromCharCode(32));static normalizeDashes=e=>e.replace(/^—–|—–$/gm,"-----");static normalize=e=>i.normalizeSpaces(i.normalizeDashes(e));static isEmailValid=e=>-1===e.indexOf(" ")&&/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e);static monthName=e=>["January","February","March","April","May","June","July","August","September","October","November","December"][e];static sloppyRandom=(e=5)=>{let t="";for(let r=0;re.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");static asEscapedHtml=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">").replace(/\//g,"/").replace(/\n/g,"
");static htmlAttrDecode=e=>{try{return JSON.parse(i.base64urlUtfDecode(e))}catch(e){return}};static capitalize=e=>e.trim().split(" ").map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join(" ");static pluralize=(e,t,r="s")=>`${e} ${t}${e>1?r:""}`;static toUtcTimestamp=(e,t=!1)=>t?String(Date.parse(e)):Date.parse(e);static datetimeToDate=e=>e.substring(0,10).replace(/"/g,""").replace(/'/g,"'").replace(/e.toISOString().replace(/T/," ").replace(/:[^:]+$/,"");static base64urlUtfDecode=e=>void 0===e?e:decodeURIComponent(String(Array.prototype.map.call((0,n.base64decode)(e.replace(/-/g,"+").replace(/_/g,"/")),(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2))).join("")))}t.Str=i;class a{static arr={unique:e=>{const t=[];for(const r of e)t.includes(r)||t.push(r);return t},contains:(e,t)=>Boolean(e&&"function"==typeof e.indexOf&&-1!==e.indexOf(t)),sum:e=>e.reduce(((e,t)=>e+t),0),average:e=>a.arr.sum(e)/e.length};static obj={keyByValue:(e,t)=>{for(const r of Object.keys(e))if(e[r]===t)return r}}}t.Value=a},2853:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GMAIL_RECOVERY_EMAIL_SUBJECTS=t.BACKEND_API_HOST=t.GOOGLE_CONTACTS_API_HOST=t.GOOGLE_OAUTH_SCREEN_HOST=t.GOOGLE_API_HOST=t.VERSION=void 0,t.VERSION=APP_VERSION,t.GOOGLE_API_HOST="[BUILD_REPLACEABLE_GOOGLE_API_HOST]",t.GOOGLE_OAUTH_SCREEN_HOST="[BUILD_REPLACEABLE_GOOGLE_OAUTH_SCREEN_HOST]",t.GOOGLE_CONTACTS_API_HOST="[BUILD_REPLACEABLE_GOOGLE_CONTACTS_API_HOST]",t.BACKEND_API_HOST="[BUILD_REPLACEABLE_BACKEND_API_HOST]",t.GMAIL_RECOVERY_EMAIL_SUBJECTS=["Your FlowCrypt Backup","Your CryptUp Backup","All you need to know about CryptUP (contains a backup)","CryptUP Account Backup"]},7596:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Mime=void 0;const n=r(4115),i=r(8078),a=r(3830),s=r(4769),o=r(6240),c=r(504),u=r(4313),l=r(9357),h=r(1106),d=(0,i.requireMimeParser)(),f=(0,i.requireMimeBuilder)(),p=(0,i.requireIso88592)();class y{static processDecoded=e=>{const t=[];if(e.text){const r=u.MsgBlockParser.detectBlocks(n.Str.normalize(e.text)).blocks;r.find((e=>"encryptedMsg"===e.type||"signedMsg"===e.type||"publicKey"===e.type||"privateKey"===e.type))?t.push(...r):e.html?t.push(c.MsgBlock.fromContent("plainHtml",e.html)):t.push(...r)}else e.html&&t.push(c.MsgBlock.fromContent("plainHtml",e.html));for(const r of e.atts){const n=r.treatAs();if("encryptedMsg"===n){const e=l.PgpArmor.clip(r.getData().toUtfStr());e&&t.push(c.MsgBlock.fromContent("encryptedMsg",e))}else"signature"===n?e.signature=e.signature||r.getData().toUtfStr():"publicKey"===n||"privateKey"===n?t.push(...u.MsgBlockParser.detectBlocks(r.getData().toUtfStr()).blocks):"encryptedFile"===n?t.push(c.MsgBlock.fromAtt("encryptedAtt","",{name:r.name,type:r.type,length:r.getData().length,data:r.getData()})):"plainFile"===n&&t.push(c.MsgBlock.fromAtt("plainAtt","",{name:r.name,type:r.type,length:r.getData().length,data:r.getData(),inline:r.inline,cid:r.cid}))}if(e.signature){for(const r of t)"plainText"===r.type?(r.type="signedMsg",r.signature=e.signature):"plainHtml"===r.type&&(r.type="signedHtml",r.signature=e.signature);t.find((e=>"plainText"===e.type||"plainHtml"===e.type||"signedMsg"===e.type||"signedHtml"===e.type))||t.push(new c.MsgBlock("signedMsg","",!0,e.signature))}return{headers:e.headers,blocks:t,from:e.from,to:e.to,rawSignedContent:e.rawSignedContent}};static process=async e=>{const t=await y.decode(e);return y.processDecoded(t)};static isPlainImgAtt=e=>"plainAtt"===e.type&&e.attMeta&&e.attMeta.type&&["image/jpeg","image/jpg","image/bmp","image/png","image/svg+xml"].includes(e.attMeta.type);static replyHeaders=e=>{const t=String(e.headers["message-id"]||"");return{"in-reply-to":t,references:String(e.headers["in-reply-to"]||"")+" "+t}};static resemblesMsg=e=>{const t=new s.Buf(e.slice(0,1e3)).toUtfStr().toLowerCase(),r=t.match(/content-type: +[0-9a-z\-\/]+/);return!!r&&(!!(t.match(/content-transfer-encoding: +[0-9a-z\-\/]+/)||t.match(/content-disposition: +[0-9a-z\-\/]+/)||t.match(/; boundary=/)||t.match(/; charset=/))||Boolean(0===r.index&&t.match(/boundary=/)))};static decode=async e=>{const t={atts:[],headers:{},subject:void 0,text:void 0,html:void 0,signature:void 0,from:void 0,to:[],cc:[],bcc:[]},r=new d,n={};return r.onbody=e=>{const t=String(e.path.join("."));void 0===n[t]&&(n[t]=e)},await new Promise(((i,a)=>{try{r.onend=()=>{try{for(const e of Object.keys(r.node.headers))t.headers[e]=r.node.headers[e][0].value;t.rawSignedContent=y.retrieveRawSignedContent([r.node]);for(const e of Object.values(n))"application/pgp-signature"===y.getNodeType(e)?t.signature=e.rawContent:"text/html"!==y.getNodeType(e)||y.getNodeFilename(e)?"text/plain"!==y.getNodeType(e)||y.getNodeFilename(e)&&!y.isNodeInline(e)?"text/rfc822-headers"===y.getNodeType(e)?e._parentNode&&e._parentNode.headers.subject&&(t.subject=e._parentNode.headers.subject[0].value):t.atts.push(y.getNodeAsAtt(e)):t.text=(t.text?`${t.text}\n\n`:"")+y.getNodeContentAsUtfStr(e):t.html=(t.html||"")+y.getNodeContentAsUtfStr(e);const e=y.headerGetAddress(t,["from","to","cc","bcc"]);t.subject=String(t.subject||t.headers.subject||""),Object.assign(t,e),i(t)}catch(e){a(e)}},r.write(e),r.end()}catch(e){o.Catch.reportErr(e),i(t)}}))};static encode=async(e,t,r=[],n)=>{const i=new f("pgpMimeEncrypted"!==n?"multipart/mixed":'multipart/encrypted; protocol="application/pgp-encrypted";',{includeBccInHeader:!0});for(const e of Object.keys(t))i.addHeader(e,t[e]);if(Object.keys(e).length){let t;if(1===Object.keys(e).length)t=y.newContentNode(f,Object.keys(e)[0],e[Object.keys(e)[0]]||"");else{t=new f("multipart/alternative");for(const r of Object.keys(e))t.appendChild(y.newContentNode(f,r,e[r]??""))}i.appendChild(t)}for(const e of r)i.appendChild(y.createAttNode(e));return i.build()};static subjectWithoutPrefixes=e=>e.replace(/^((Re|Fwd): ?)+/g,"").trim();static encodePgpMimeSigned=async(e,t,r=[],i)=>{const o=`SIG_PLACEHOLDER_${n.Str.sloppyRandom(10)}`,c=new f('multipart/signed; protocol="application/pgp-signature";',{includeBccInHeader:!0});for(const e of Object.keys(t))c.addHeader(e,t[e]);const u=new f("multipart/alternative");for(const t of Object.keys(e))u.appendChild(y.newContentNode(f,t,e[t]??""));const l=new f("multipart/mixed");l.appendChild(u);for(const e of r)l.appendChild(y.createAttNode(e));const h=new a.Att({data:s.Buf.fromUtfStr(o),type:"application/pgp-signature",name:"signature.asc"}),d=y.createAttNode(h);c.appendChild(l),c.appendChild(d);const p=c.build(),{rawSignedContent:g}=await y.decode(s.Buf.fromUtfStr(p));if(!g)throw console.log(`mimeStrWithPlaceholderSig(placeholder:${o}):\n${p}`),new Error("Could not find raw signed content immediately after mime-encoding a signed message");const m=await i(g),b=p.replace(s.Buf.fromUtfStr(o).toBase64Str(),s.Buf.fromUtfStr(m).toBase64Str());if(b===p)throw console.log(`pgpMimeSigned(placeholder:${o}):\n${b}`),new Error("Replaced sigPlaceholder with realSignature but mime stayed the same");return b};static headerGetAddress=(e,t)=>{const r={to:[],cc:[],bcc:[]};let i;const a=e=>"string"==typeof e?[e].map((e=>n.Str.parseEmail(e).email)).filter((e=>!!e)):e.map((e=>e.address));for(const o of t){const t=e.headers[o];t&&("from"===o?(s=t,i=n.Str.parseEmail((Array.isArray(s)?(s[0]||{}).address:String(s||""))||"").email):r[o]=[...r[o],...a(t)])}var s;return{...r,from:i}};static retrieveRawSignedContent=e=>{for(const t of e){if(!t._childNodes||!t._childNodes.length)continue;const e="signed"===t._isMultipart,r="mixed"===t._isMultipart&&2===t._childNodes.length&&"application/pgp-signature"===y.getNodeType(t._childNodes[1]);if(e||r){let e=t._childNodes[0].raw.replace(/\r?\n/g,"\r\n");return/--$/.test(e)&&(e+="\r\n"),e}return y.retrieveRawSignedContent(t._childNodes)}};static createAttNode=e=>{const t=`${e.type}; name="${e.name}"`,r=`f_${n.Str.sloppyRandom(30)}@flowcrypt`,i={};return e.contentDescription&&(i["Content-Description"]=e.contentDescription),i["Content-Disposition"]=e.inline?"inline":"attachment",i["X-Attachment-Id"]=r,i["Content-ID"]=`<${r}>`,i["Content-Transfer-Encoding"]="base64",new f(t,{filename:e.name}).setHeader(i).setContent(e.getData())};static getNodeType=(e,t="value")=>{if(e.headers["content-type"]&&e.headers["content-type"][0])return e.headers["content-type"][0][t]};static getNodeContentId=e=>{if(e.headers["content-id"]&&e.headers["content-id"][0])return e.headers["content-id"][0].value};static getNodeFilename=e=>{if(e.headers["content-disposition"]&&e.headers["content-disposition"][0]){const t=e.headers["content-disposition"][0];if(t.params&&t.params.filename)return String(t.params.filename)}if(e.headers["content-type"]&&e.headers["content-type"][0]){const t=e.headers["content-type"][0];if(t.params&&t.params.name)return String(t.params.name)}};static isNodeInline=e=>{const t=e.headers["content-disposition"];return t&&t[0]&&"inline"===t[0].value};static fromEqualSignNotationAsBuf=e=>s.Buf.fromRawBytesStr(e.replace(/(=[A-F0-9]{2})+/g,(e=>{const t=e.replace(/^=/,"").split("=").map((e=>parseInt(e,16)));return new s.Buf(t).toRawBytesStr()})));static getNodeAsAtt=e=>new a.Att({name:y.getNodeFilename(e),type:y.getNodeType(e),data:"quoted-printable"===e.contentTransferEncoding.value?y.fromEqualSignNotationAsBuf(e.rawContent??""):e.content,cid:y.getNodeContentId(e)});static getNodeContentAsUtfStr=e=>{if(e.charset&&p.labels.includes(e.charset))return p.decode(e.rawContent??"");let t;return t="utf-8"===e.charset&&"base64"===e.contentTransferEncoding.value?s.Buf.fromUint8(e.content):"utf-8"===e.charset&&"quoted-printable"===e.contentTransferEncoding.value?y.fromEqualSignNotationAsBuf(e.rawContent??""):s.Buf.fromRawBytesStr(e.rawContent??""),"ISO-2022-JP"===e.charset?.toUpperCase()||"utf-8"===e.charset&&y.getNodeType(e,"initial")?.includes("ISO-2022-JP")?(0,h.iso2022jpToUtf)(t):t.toUtfStr()};static newContentNode=(e,t,r)=>{const n=new e(t).setContent(r);return"text/plain"===t&&n.addHeader("Content-Transfer-Encoding","quoted-printable"),n}}t.Mime=y},559:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mnemonic=void 0;const r=["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"];t.mnemonic=e=>{if(!e)return;const t=(11,e.split("").map((e=>((e,t)=>{let r=e+"";for(;r.length<4;)r="0"+r;return r})(parseInt(e,16).toString(2)))).join("").match(new RegExp(".{1,11}","g")));return(t?.map((e=>parseInt(e,2)))??[]).map((e=>r[e].toUpperCase())).join(" ")}},4313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MsgBlockParser=void 0;const n=r(504),i=r(9307),a=r(4769),s=r(6240),o=r(7596),c=r(9357),u=r(5335),l=r(5308),h=r(4115);class d{static ARMOR_HEADER_MAX_LENGTH=50;static detectBlocks=e=>{const t=[],r=h.Str.normalize(e);let n=0;for(;;){const e=d.detectBlockNext(r,n);if(e.found&&t.push(...e.found),void 0===e.continueAt)return{blocks:t,normalized:r};if(e.continueAt<=n)return s.Catch.report(`PgpArmordetect_blocks likely infinite loop: r.continue_at(${e.continueAt}) <= start_at(${n})`),{blocks:t,normalized:r};n=e.continueAt}};static fmtDecryptedAsSanitizedHtmlBlocks=async(e,t)=>{const r=[];let s=!1;if(!o.Mime.resemblesMsg(e)){let i=a.Buf.fromUint8(e).toUtfStr();i=l.PgpMsg.extractFcAtts(i,r),i=l.PgpMsg.stripFcTeplyToken(i);const o=[];i=l.PgpMsg.stripPublicKeys(i,o);const c=n.MsgBlock.fromContent("decryptedHtml",h.Str.asEscapedHtml(i));return c.verifyRes=t,r.push(c),await d.pushArmoredPubkeysToBlocks(o,r),{blocks:r,subject:void 0,isRichText:s}}const c=await o.Mime.decode(e);if(void 0!==c.html){const e=n.MsgBlock.fromContent("decryptedHtml",i.Xss.htmlSanitizeKeepBasicTags(c.html));e.verifyRes=t,r.push(e),s=!0}else if(void 0!==c.text){const e=n.MsgBlock.fromContent("decryptedHtml",h.Str.asEscapedHtml(c.text));e.verifyRes=t,r.push(e)}else n.MsgBlock.fromContent("decryptedHtml",h.Str.asEscapedHtml(a.Buf.with(e).toUtfStr())).verifyRes=t,r.push();for(const e of c.atts)if("publicKey"===e.treatAs())await d.pushArmoredPubkeysToBlocks([e.getData().toUtfStr()],r);else{const i=n.MsgBlock.fromAtt("decryptedAtt","",{name:e.name,data:e.getData(),length:e.length,type:e.type});i.verifyRes=t,r.push(i)}return{blocks:r,subject:c.subject,isRichText:s}};static detectBlockNext=(e,t)=>{const r={found:[]},i=e.indexOf(c.PgpArmor.headers("null").begin,t);if(-1!==i){const a=e.substring(i,i+d.ARMOR_HEADER_MAX_LENGTH);for(const s of Object.keys(c.PgpArmor.ARMOR_HEADER_DICT)){const o=s,u=c.PgpArmor.ARMOR_HEADER_DICT[o];if(u.replace){const s=a.indexOf(u.begin);if(0===s||"encryptedMsgLink"===o&&s>=0&&s<15){if(i>t){const a=e.substring(t,i).trim();a&&r.found.push(n.MsgBlock.fromContent("plainText",a))}let a=-1,s=0;if("string"==typeof u.end)a=e.indexOf(u.end,i+u.begin.length),s=u.end.length;else{const t=e.substring(i).match(u.end);t&&(a=t.index?i+t.index:-1,s=t[0].length)}if(-1!==a){if("encryptedMsgLink"!==o)r.found.push(n.MsgBlock.fromContent(o,e.substring(i,a+s).trim()));else{const t=e.substring(i,a+s).trim(),c=t.match(/[a-zA-Z0-9]{10}$/);c?r.found.push(n.MsgBlock.fromContent(o,c[0])):r.found.push(n.MsgBlock.fromContent("plainText",t))}r.continueAt=a+s}else r.found.push(n.MsgBlock.fromContent(o,e.substring(i),!0));break}}}}if(e&&!r.found.length){const i=e.substring(t).trim();i&&r.found.push(n.MsgBlock.fromContent("plainText",i))}return r};static pushArmoredPubkeysToBlocks=async(e,t)=>{for(const r of e){const{keys:e}=await u.PgpKey.parse(r);for(const r of e)t.push(n.MsgBlock.fromKeyDetails("publicKey",r.public,r))}}}t.MsgBlockParser=d},504:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MsgBlock=void 0;class r{type;content;complete;signature;keyDetails;attMeta;decryptErr;verifyRes;constructor(e,t,r,n,i,a,s,o){this.type=e,this.content=t,this.complete=r,this.signature=n,this.keyDetails=i,this.attMeta=a,this.decryptErr=s,this.verifyRes=o}static fromContent=(e,t,n=!1)=>new r(e,t,!n);static fromKeyDetails=(e,t,n)=>new r(e,t,!0,void 0,n);static fromAtt=(e,t,n)=>new r(e,t,!0,void 0,void 0,n)}t.MsgBlock=r},9357:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpArmor=void 0;const n=r(4769),i=r(4115),a=r(8618);class s{static ARMOR_HEADER_DICT={null:{begin:"-----BEGIN",end:"-----END",replace:!1},publicKey:{begin:"-----BEGIN PGP PUBLIC KEY BLOCK-----",end:"-----END PGP PUBLIC KEY BLOCK-----",replace:!0},privateKey:{begin:"-----BEGIN PGP PRIVATE KEY BLOCK-----",end:"-----END PGP PRIVATE KEY BLOCK-----",replace:!0},signedMsg:{begin:"-----BEGIN PGP SIGNED MESSAGE-----",middle:"-----BEGIN PGP SIGNATURE-----",end:"-----END PGP SIGNATURE-----",replace:!0},signature:{begin:"-----BEGIN PGP SIGNATURE-----",end:"-----END PGP SIGNATURE-----",replace:!1},encryptedMsg:{begin:"-----BEGIN PGP MESSAGE-----",end:"-----END PGP MESSAGE-----",replace:!0},encryptedMsgLink:{begin:"This message is encrypted: Open Message",end:/https:(\/|/){2}(cryptup\.org|flowcrypt\.com)(\/|/)[a-zA-Z0-9]{10}(\n|$)/,replace:!0}};static clip=e=>{if(e?.includes(s.ARMOR_HEADER_DICT.null.begin)&&e.includes(String(s.ARMOR_HEADER_DICT.null.end))){const t=e.match(/(-----BEGIN PGP (MESSAGE|SIGNED MESSAGE|SIGNATURE|PUBLIC KEY BLOCK)-----[^]+-----END PGP (MESSAGE|SIGNATURE|PUBLIC KEY BLOCK)-----)/gm);return t&&t.length?t[0]:void 0}};static headers=(e,t="string")=>{const r=s.ARMOR_HEADER_DICT[e];return{begin:"string"==typeof r.begin&&"re"===t?r.begin.replace(/ /g,"\\s"):r.begin,end:"string"==typeof r.end&&"re"===t?r.end.replace(/ /g,"\\s"):r.end,replace:r.replace}};static normalize=(e,t)=>{if(e=i.Str.normalize(e).replace(/\n /g,"\n"),["encryptedMsg","publicKey","privateKey","key"].includes(t)){const t=(e=e.replace(/\r?\n/g,"\n").trim()).match(/\n\n/g),r=e.match(/\n\n\n/g),n=e.match(/\n\n\n\n/g),i=e.match(/\n\n\n\n\n\n/g);r&&i&&r.length>1&&1===i.length?e=e.replace(/\n\n\n/g,"\n"):t&&n&&t.length>1&&1===n.length&&(e=e.replace(/\n\n/g,"\n"))}const r=e.split("\n"),n=s.headers("key"===t?"null":t);if(r.length>5&&r[0].includes(n.begin)&&r[r.length-1].includes(String(n.end))&&!r.includes(""))for(let t=1;t<5;t++)if(!r[t].match(/^[a-zA-Z0-9\-_. ]+: .+$/)){if(r[t].match(/^[a-zA-Z0-9\/+]{32,77}$/)){e=`${r.slice(0,t).join("\n")}\n\n${r.slice(t).join("\n")}`;break}break}return e};static cryptoMsgPrepareForDecrypt=async e=>{if(!e.length)throw new Error("Encrypted message could not be parsed because no data was provided");const t=new n.Buf(e.slice(0,100)).toUtfStr("ignore"),r=t.includes(s.headers("encryptedMsg").begin),i=t.includes(s.headers("signedMsg").begin),o=r||i;if(i)return{isArmored:o,isCleartext:!0,message:await(0,a.readCleartextMessage)({cleartextMessage:new n.Buf(e).toUtfStr()})};if(r)return{isArmored:o,isCleartext:!1,message:await(0,a.readMessage)({armoredMessage:new n.Buf(e).toUtfStr()})};if(e instanceof Uint8Array)return{isArmored:o,isCleartext:!1,message:await(0,a.readMessage)({binaryMessage:e})};throw new Error("Message does not have armor headers")}}t.PgpArmor=s},5335:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpKey=void 0;const n=r(6240),i=r(9357),a=r(7620),s=r(559),o=r(1106),c=r(8618),u=r(505),l=r(8078),h=r(4115);class d{static create=async(e,t,r)=>{const n=await(0,c.generateKey)({userIDs:e,passphrase:r,format:"armored",curve:"curve25519"===t?"curve25519":void 0,rsaBits:"curve25519"===t?void 0:"rsa2048"===t?2048:4096});return{public:n.publicKey,private:n.privateKey,revCert:n.revocationCertificate}};static read=async e=>{const t=a.Store.armoredKeyCacheGet(e);if(t)return t;const r=await(0,c.readKey)({armoredKey:e});return r?.isPrivate()&&a.Store.armoredKeyCacheSet(e,r),r};static isPacketPrivate=e=>e instanceof c.SecretKeyPacket||e instanceof c.SecretSubkeyPacket;static validateAllDecryptedPackets=async e=>{for(const t of e.toPacketList().filter(d.isPacketPrivate))t.isDecrypted()&&await t.validate()};static decrypt=async(e,t,r,n)=>{if(!e.isPrivate())throw new Error("Nothing to decrypt in a public key");const i=e.getKeys(r).map((e=>e.keyPacket)).filter(d.isPacketPrivate);if(!i.length)throw new Error(`No private key packets selected of${e.getKeys().map((e=>e.keyPacket)).filter(d.isPacketPrivate).length} prv packets available`);for(const e of i){if(e.isDecrypted()){if("OK-IF-ALREADY-DECRYPTED"===n)continue;throw new Error("Decryption failed - key packet was already decrypted")}try{await e.decrypt(t),await e.validate()}catch(e){if(e instanceof Error&&e.message.toLowerCase().includes("passphrase"))return!1;throw e}}return!0};static encrypt=async(e,t)=>{if(!t||"undefined"===t||"null"===t)throw new Error(`Encryption passphrase should not be empty:${typeof t}:${t}`);const r=e.getKeys().map((e=>e.keyPacket)).filter(d.isPacketPrivate),n=r.filter((e=>!e.isDecrypted())).length;if(!r.length)throw new Error("No private key packets in key to encrypt. Is this a private key?");if(n)throw new Error(`Cannot encrypt a key that has ${n} of ${r.length} private packets still encrypted`);await(0,c.encryptKey)({privateKey:e,passphrase:t})};static normalize=async e=>{try{let t=[];if(e=i.PgpArmor.normalize(e,"key"),RegExp(i.PgpArmor.headers("publicKey","re").begin).test(e))t=await(0,c.readKeys)({armoredKeys:e});else if(RegExp(i.PgpArmor.headers("privateKey","re").begin).test(e))t=await(0,c.readKeys)({armoredKeys:e});else if(RegExp(i.PgpArmor.headers("encryptedMsg","re").begin).test(e)){const r=await(0,c.readMessage)({armoredMessage:e});t=[new c.PublicKey(r.packets)]}for(const e of t)for(const t of e.users)await d.validateAllDecryptedPackets(e),t.otherCertifications=[];return{normalized:t.map((e=>e.armor())).join("\n"),keys:t}}catch(e){return n.Catch.reportErr(e),{normalized:"",keys:[],error:h.Str.extractErrorMessage(e)}}};static fingerprint=async e=>{if(e)if("string"==typeof e)try{return await d.fingerprint(await d.read(e))}catch(e){return e instanceof Error&&"openpgp is not defined"===e.message&&n.Catch.reportErr(e),void console.error(e)}else{if(!e.keyPacket.getFingerprintBytes())return;try{return e.keyPacket.getFingerprint().toUpperCase()}catch(e){return void console.error(e)}}};static longid=async e=>{if(e)return"string"==typeof e&&8===e.length?(0,o.strToHex)(e).toUpperCase():"string"==typeof e&&40===e.length?e.substr(-16):"string"==typeof e&&49===e.length?e.replace(/ /g,"").substr(-16):await d.longid(await d.fingerprint(e))};static longids=async e=>{const t=[];for(const r of e){const e=await d.longid(r.bytes);e&&t.push(e)}return t};static usable=async(e,t)=>{if(!await d.fingerprint(e))return!1;const r=await(0,c.readKey)({armoredKey:e});return!!r&&(!!await d.keyIsUsable(r,t)||await d.usableButExpired(r,t))};static expired=async e=>{if(!e)return!1;const t=await e.getExpirationTime();if(t===1/0||!t)return!1;if(t instanceof Date)return Date.now()>t.getTime();throw new Error(`Got unexpected value for expiration: ${t}`)};static usableButExpired=async(e,t)=>{if(!e)return!1;if(await d.keyIsUsable(e,t))return!1;const r=await d.dateBeforeExpiration(e);return void 0!==r&&d.keyIsUsable(e,t,r)};static dateBeforeExpiration=async e=>{const t="string"==typeof e?await d.read(e):e,r=await(0,o.getKeyExpirationTimeForCapabilities)(t,"encrypt");if(r instanceof Date&&r.getTime(){const{normalized:t,keys:r,error:n}=await d.normalize(e);return{original:e,normalized:t,keys:await Promise.all(r.map(d.details)),error:n}};static details=async e=>{const t=e.getKeys(),r=e.keyPacket.getAlgorithmInfo(),n={algorithm:r.algorithm,algorithmId:c.enums.publicKey[r.algorithm]};r.bits&&Object.assign(n,{bits:r.bits}),r.curve&&Object.assign(n,{curve:r.curve});const i=e.keyPacket.created.getTime()/1e3,a=await(0,o.getKeyExpirationTimeForCapabilities)(e,"encrypt"),l=a!==1/0&&a?a.getTime()/1e3:void 0,h=await d.lastSig(e)/1e3,f=[];for(const e of t){const t=e.getFingerprint().toUpperCase();if(t){const e=await d.longid(t);if(e){const r=e.substr(-8);f.push({fingerprint:t,longid:e,shortid:r,keywords:(0,s.mnemonic)(e)??""})}}}const p=e.toPublic().armor(),y={public:p,users:e.getUserIDs(),ids:f,algo:n,created:i,expiration:l,lastModified:h,revoked:e.revocationSignatures.length>0,usableForEncryption:await d.usable(p,"encrypt"),usableForSigning:await d.usable(p,"sign")};return e.isPrivate()&&Object.assign(y,{private:e.armor(),isFullyDecrypted:(0,u.isFullyDecrypted)(e),isFullyEncrypted:(0,u.isFullyEncrypted)(e)}),y};static lastSig=async e=>{const t=[];for(const r of e.users){const n={userID:r.userID,userAttribute:r.userAttribute,key:e};for(const i of r.selfCertifications)try{await i.verify(e.keyPacket,c.enums.signature.certGeneric,n),t.push(i)}catch(e){console.log(`PgpKey.lastSig: Skipping self-certification signature because it is invalid: ${String(e)}`)}}for(const r of e.subkeys)try{const e=await r.verify();t.push(e)}catch(e){console.log(`PgpKey.lastSig: Skipping subkey ${r.getKeyID().toHex()} because there is no valid binding signature: ${String(e)}`)}if(t.length>0)return Math.max(...t.map((e=>e.created?e.created.getTime():0)));throw new Error("No valid signature found in key")};static revoke=async e=>{await e.isRevoked()||(e=(await(0,c.revokeKey)({key:e,format:"object"})).privateKey);const t=await e.getRevocationCertificate();if(t){if("string"==typeof t)return{key:e,revocationCertificate:t};{const r=await(0,l.requireStreamReadToEnd)();return{key:e,revocationCertificate:await r(t)}}}};static keyIsUsable=async(e,t,r)=>Boolean(await n.Catch.undefinedOnException("encrypt"===t?e.getEncryptionKey(void 0,r):e.getSigningKey(void 0,r)))}t.PgpKey=d},5308:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpMsg=t.FormatError=t.DecryptErrTypes=void 0;const n=r(5335),i=r(504),a=r(4115),s=r(4769),o=r(6240),c=r(4313),u=r(9357),l=r(7620),h=r(8618),d=r(505),f=r(8078);var p;!function(e){e.keyMismatch="key_mismatch",e.usePassword="use_password",e.wrongPwd="wrong_password",e.noMdc="no_mdc",e.badMdc="bad_mdc",e.needPassphrase="need_passphrase",e.format="format",e.other="other"}(p||(t.DecryptErrTypes=p={}));class y extends Error{data;constructor(e,t){super(e),this.data=t}}t.FormatError=y;class g{static type=async({data:e})=>{if(!e||!e.length)return;const t=e[0];if(128==(128&t)){let e=0;if(e=192==(192&t)?63&t:(60&t)/4,Object.values(h.enums.packet).includes(e)){const t=h.enums.packet;return{armored:!1,type:[t.symEncryptedIntegrityProtectedData,t.modificationDetectionCode,t.aeadEncryptedData,t.symmetricallyEncryptedData,t.compressedData].includes(e)?"encryptedMsg":"publicKey"}}}const{blocks:r}=c.MsgBlockParser.detectBlocks(new s.Buf(e.slice(0,50)).toUtfStr().trim());return 1===r.length&&!1===r[0].complete&&["encryptedMsg","privateKey","publicKey","signedMsg"].includes(r[0].type)?{armored:!0,type:r[0].type}:void 0};static sign=async(e,t,r=!1)=>{const n=await(0,h.createCleartextMessage)({text:t});return await(0,h.sign)({message:n,signingKeys:e,detached:r,format:"armored"})};static verify=async(e,t)=>{const r={match:null};try{const i=Array.isArray(e)?e:await e.verify(t);for(const e of i)r.signer||(r.signer=await n.PgpKey.longid(e.keyID.bytes)),r.match=(!0===r.match||null===r.match)&&await e.verified}catch(e){r.match=null,e instanceof Error&&"Can only verify message with one literal data packet."===e.message?r.error="FlowCrypt is not equipped to verify this message (err 101)":(r.error=e.message,o.Catch.reportErr(e))}return r};static verifyDetached=async({plaintext:e,sigText:t,verificationPubkeys:r})=>{const n=await(0,h.createMessage)({text:s.Buf.fromUint8(e).toUtfStr()});await n.appendSignature(s.Buf.fromUint8(t).toUtfStr());const i=await g.getSortedKeys([],n);if(r)for(const e of r){const t=await(0,h.readKeys)({armoredKeys:e});i.forVerification.push(...t)}return await g.verify(n,i.forVerification)};static decrypt=async({kisWithPp:e,encryptedData:t,msgPwd:r,verificationPubkeys:n})=>{let i;const a={message:[],matching:[],chosen:[],needPassphrase:[]};try{i=await u.PgpArmor.cryptoMsgPrepareForDecrypt(t)}catch(e){return{success:!1,error:{type:p.format,message:String(e)},longids:a}}const o=await g.getSortedKeys(e,i.message,n);a.message=o.encryptedFor,a.matching=o.prvForDecrypt.map((e=>e.longid)),a.chosen=o.prvForDecryptDecrypted.map((e=>e.longid)),a.needPassphrase=o.prvForDecryptWithoutPassphrases.map((e=>e.longid));const c=!i.isCleartext;if(!c){const e=await g.verify(i.message,o.forVerification),t=await(0,f.requireStreamReadToEnd)(),r=await t(i.message.getText()??"");return{success:!0,content:s.Buf.fromUtfStr(r),isEncrypted:c,signature:e}}if(!o.prvMatching.length&&!r)return{success:!1,error:{type:p.keyMismatch,message:"Missing appropriate key"},message:i.message,longids:a,isEncrypted:c};if(!o.prvForDecryptDecrypted.length&&!r)return{success:!1,error:{type:p.needPassphrase,message:"Missing pass phrase"},message:i.message,longids:a,isEncrypted:c};try{const e=i.message.packets,t=e.filterByTag(h.enums.packet.symEncryptedSessionKey).length>0,u=e.filterByTag(h.enums.packet.publicKeyEncryptedSessionKey).length>0;if(t&&!u&&!r)return{success:!1,error:{type:p.usePassword,message:"Use message password"},longids:a,isEncrypted:c};const l=r?[r]:void 0,d=o.prvForDecryptDecrypted.map((e=>e.decrypted)),y=await i.message.decrypt(d,l);await g.cryptoMsgGetSignedBy(y,o),await g.populateKeysForVerification(o,n);const m=o.signedBy.length?await y.verify(o.forVerification):void 0,b=await(0,f.requireStreamReadToEnd)(),w=new s.Buf(await b(y.getLiteralData())),v=m?await g.verify(m,[]):void 0;if(!i.isCleartext&&i.message.packets.filterByTag(h.enums.packet.symmetricallyEncryptedData).length){const e="Security threat!\n\nMessage is missing integrity checks (MDC). The sender should update their outdated software and resend.";return{success:!1,content:w,error:{type:p.noMdc,message:e},message:i.message,longids:a,isEncrypted:c}}return{success:!0,content:w,isEncrypted:c,filename:y.getFilename()||void 0,signature:v}}catch(e){return{success:!1,error:g.cryptoMsgDecryptCategorizeErr(e,r),message:i.message,longids:a,isEncrypted:c}}};static encrypt=async({pubkeys:e,signingPrv:t,pwd:r,data:n,filename:i,armor:a,date:s})=>{if(!e&&!r)throw new Error("no-pubkeys-no-challenge");const o=await(0,h.createMessage)({binary:n,filename:i,date:s}),c=[];for(const t of e){const e=await(0,h.readKeys)({armoredKeys:t});c.push(...e)}const u={message:o,date:s,encryptionKeys:c,passwords:r?[r]:void 0,signingKeys:t&&t.isPrivate()?t:void 0};return a||Object.assign(u,{format:"binary"}),await(0,h.encrypt)(u)};static extractFcAtts=(e,t)=>(e.includes('class="cryptup_file"')&&(e=e.replace(/[^<]+<\/a>\n?/gm,((e,r,n)=>{const s=a.Str.htmlAttrDecode(String(n));return g.isFcAttLinkData(s)&&t.push(i.MsgBlock.fromAtt("encryptedAttLink","",{type:s.type,name:s.name,length:s.size,url:String(r)})),""}))),e);static stripFcTeplyToken=e=>e.replace(/]+class="cryptup_reply"[^>]+><\/div>/,"");static stripPublicKeys=(e,t)=>{let{blocks:r,normalized:n}=c.MsgBlockParser.detectBlocks(e);for(const e of r)if("publicKey"===e.type){const r=e.content.toString();t.push(r),n=n.replace(r,"")}return n};static isFcAttLinkData=e=>e&&"object"==typeof e&&void 0!==e.name&&void 0!==e.size&&void 0!==e.type;static cryptoMsgGetSignedBy=async(e,t)=>{t.signedBy=a.Value.arr.unique(await n.PgpKey.longids(e.getSigningKeyIDs?e.getSigningKeyIDs():[]))};static populateKeysForVerification=async(e,t)=>{if(void 0!==t){e.forVerification=[];for(const r of t){const t=await(0,h.readKeys)({armoredKeys:r});e.forVerification.push(...t)}}};static getSortedKeys=async(e,t,r)=>{const i={forVerification:[],encryptedFor:[],signedBy:[],prvMatching:[],prvForDecrypt:[],prvForDecryptDecrypted:[],prvForDecryptWithoutPassphrases:[]},a=t instanceof h.Message?t.getEncryptionKeyIDs():[];if(i.encryptedFor=await n.PgpKey.longids(a),await g.cryptoMsgGetSignedBy(t,i),await g.populateKeysForVerification(i,r),i.encryptedFor.length){for(const t of e){t.parsed=await n.PgpKey.read(t.private);for(const e of await Promise.all(t.parsed.getKeyIDs().map((({bytes:e})=>n.PgpKey.longid(e)))))if(i.encryptedFor.includes(e)){i.prvMatching.push(t);break}}i.prvForDecrypt=i.prvMatching}else i.prvForDecrypt=[];for(const e of i.prvForDecrypt){if(!e.parsed||!e.passphrase)continue;const t=g.matchingKeyids(e.parsed,a),r=l.Store.decryptedKeyCacheGet(e.longid);r&&g.isKeyDecryptedFor(r,t)?(e.decrypted=r,i.prvForDecryptDecrypted.push(e)):g.isKeyDecryptedFor(e.parsed,t)||!0===await g.decryptKeyFor(e.parsed,e.passphrase,t)?(l.Store.decryptedKeyCacheSet(e.parsed),e.decrypted=e.parsed,i.prvForDecryptDecrypted.push(e)):i.prvForDecryptWithoutPassphrases.push(e)}return i};static matchingKeyids=(e,t)=>{const r=(t||[]).map((e=>e.bytes));return e.getKeyIDs().filter((e=>r.includes(e.bytes)))};static decryptKeyFor=async(e,t,r)=>{if(!r.length)return await n.PgpKey.decrypt(e,t,void 0,"OK-IF-ALREADY-DECRYPTED");for(const i of r)if(!await n.PgpKey.decrypt(e,t,i,"OK-IF-ALREADY-DECRYPTED"))return!1;return!0};static isKeyDecryptedFor=(e,t)=>!!(0,d.isFullyDecrypted)(e)||!(0,d.isFullyEncrypted)(e)&&!!t.length&&t.filter((t=>(0,d.isPacketDecrypted)(e,t))).length===t.length;static cryptoMsgDecryptCategorizeErr=(e,t)=>{const r=String(e).replace("Error: ","").replace("Error decrypting message: ","");return["Cannot read property 'isDecrypted' of null","privateKeyPacket is null","TypeprivateKeyPacket is null","Session key decryption failed.","Invalid session key for decryption."].includes(r)&&!t?{type:p.keyMismatch,message:r}:t&&["Invalid enum value.","CFB decrypt: invalid key","Session key decryption failed."].includes(r)?{type:p.wrongPwd,message:r}:"Decryption failed due to missing MDC in combination with modern cipher."===r||"Decryption failed due to missing MDC."===r?{type:p.noMdc,message:r}:"Decryption error"===r?{type:p.format,message:r}:"Modification detected."===r?{type:p.badMdc,message:"Security threat - opening this message is dangerous because it was modified in transit."}:{type:p.other,message:r}}}t.PgpMsg=g},3338:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PgpPwd=void 0;class r{static CRACK_GUESSES_PER_SECOND=8e7;static CRACK_TIME_WORDS_PWD=[{match:"millenni",word:"perfect",bar:100,color:"green",pass:!0},{match:"centu",word:"perfect",bar:95,color:"green",pass:!0},{match:"year",word:"great",bar:80,color:"orange",pass:!0},{match:"month",word:"good",bar:70,color:"darkorange",pass:!0},{match:"week",word:"good",bar:30,color:"darkred",pass:!0},{match:"day",word:"reasonable",bar:40,color:"darkorange",pass:!0},{match:"hour",word:"bare minimum",bar:20,color:"darkred",pass:!0},{match:"minute",word:"poor",bar:15,color:"red",pass:!1},{match:"",word:"weak",bar:10,color:"red",pass:!1}];static CRACK_TIME_WORDS_PASS_PHRASE=[{match:"millenni",word:"perfect",bar:100,color:"green",pass:!0},{match:"centu",word:"great",bar:80,color:"green",pass:!0},{match:"year",word:"good",bar:60,color:"orange",pass:!0},{match:"month",word:"reasonable",bar:40,color:"darkorange",pass:!0},{match:"week",word:"poor",bar:30,color:"darkred",pass:!1},{match:"day",word:"poor",bar:20,color:"darkred",pass:!1},{match:"",word:"weak",bar:10,color:"red",pass:!1}];static estimateStrength=(e,t="passphrase")=>{const n=e/r.CRACK_GUESSES_PER_SECOND;for(const e of"pwd"===t?r.CRACK_TIME_WORDS_PWD:r.CRACK_TIME_WORDS_PASS_PHRASE){const t=r.readableCrackTime(n);if(t.includes(e.match))return{word:e,seconds:Math.round(n),time:t}}throw Error("(thrown) estimate_strength: got to end without any result")};static weakWords=()=>["crypt","up","cryptup","flow","flowcrypt","encryption","pgp","email","set","backup","passphrase","best","pass","phrases","are","long","and","have","several","words","in","them","Best pass phrases are long","have several words","in them","bestpassphrasesarelong","haveseveralwords","inthem","Loss of this pass phrase","cannot be recovered","Note it down","on a paper","lossofthispassphrase","cannotberecovered","noteitdown","onapaper","setpassword","set password","set pass word","setpassphrase","set pass phrase","set passphrase"];static readableCrackTime=e=>{const t=e=>e>1?"s":"";e=Math.round(e);const r=Math.round(e/31104e8);if(r)return 1===r?"a millennium":"millennia";const n=Math.round(e/31104e5);if(n)return 1===n?"a century":"centuries";const i=Math.round(e/31104e3);if(i)return i+" year"+t(i);const a=Math.round(e/2592e3);if(a)return a+" month"+t(a);const s=Math.round(e/604800);if(s)return s+" week"+t(s);const o=Math.round(e/86400);if(o)return o+" day"+t(o);const c=Math.round(e/3600);if(c)return c+" hour"+t(c);const u=Math.round(e/60);if(u)return u+" minute"+t(u);const l=e%60;return l?l+" second"+t(l):"less than a second"}}t.PgpPwd=r},505:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPacketDecrypted=t.isFullyEncrypted=t.isFullyDecrypted=void 0;const n=r(5335),i=r(2853),a=r(8618);a.config.versionString=`FlowCrypt ${i.VERSION} Gmail Encryption`,a.config.commentString="Seamlessly send and receive encrypted email",a.config.allowUnauthenticatedMessages=!0,a.config.allowUnauthenticatedStream=!0;const s=e=>{if(!e.isPrivate())throw new Error("Cannot check encryption status of secret keys in a Public Key");const t=e.getKeys().map((e=>e.keyPacket)).filter(n.PgpKey.isPacketPrivate);if(!t.length)throw new Error("This key has no private packets. Is it a Private Key?");const r=t.filter((e=>!e.isDummy()));if(!r.length)throw new Error("This key only has a gnu-dummy private packet, with no actual secret keys.");return r};t.isFullyDecrypted=e=>s(e).every((e=>!0===e.isDecrypted())),t.isFullyEncrypted=e=>s(e).every((e=>!1===e.isDecrypted())),t.isPacketDecrypted=(e,t)=>{if(!e.isPrivate())throw new Error("Cannot check packet encryption status of secret key in a Public Key");if(!t)throw new Error("No KeyID provided to isPacketDecrypted");const[r]=e.getKeys(t);if(!r)throw new Error("KeyID not found in Private Key");return!0===r.keyPacket.isDecrypted()}},1769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getSigningPrv=t.Endpoints=void 0;const n=r(8267),i=r(5308),a=r(5335),s=r(7596),o=r(3830),c=r(4769),u=r(4313),l=r(3338),h=r(7620),d=r(4115),f=r(2853),p=r(8383),y=r(9307),g=r(8618);t.Endpoints=class{version=async()=>(0,n.fmtRes)({app_version:f.VERSION});setClientConfiguration=async e=>{const{shouldHideArmorMeta:t}=p.ValidateInput.setClientConfiguration(e);return g.config.showVersion=!t,g.config.showComment=!t,(0,n.fmtRes)({})};generateKey=async e=>{h.Store.keyCacheWipe();const{passphrase:t,userIds:r,variant:i}=p.ValidateInput.generateKey(e);if(t.length<12)throw new Error("Pass phrase length seems way too low! Pass phrase strength should be properly checked before encrypting a key.");const s=await a.PgpKey.create(r,i,t);return(0,n.fmtRes)({key:await a.PgpKey.details(await a.PgpKey.read(s.private))})};composeEmail=async e=>{const r=p.ValidateInput.composeEmail(e),a={to:r.to,from:r.from,subject:r.subject,cc:r.cc,bcc:r.bcc};if(r.replyToMsgId&&(a["in-reply-to"]=r.replyToMsgId,a.references=[r.inReplyTo,r.replyToMsgId].filter((e=>!!e)).join(" ")),"plain"===r.format){const e=(r.atts||[]).map((({name:e,type:t,base64:r})=>new o.Att({name:e,type:t,data:c.Buf.fromBase64Str(r)}))),t={"text/plain":r.text};return r.html&&(t["text/html"]=r.html),(0,n.fmtRes)({},c.Buf.fromUtfStr(await s.Mime.encode(t,a,e)))}if("encryptInline"===r.format){const e=[];for(const t of r.atts||[]){const n=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,data:c.Buf.fromBase64Str(t.base64),filename:t.name,armor:!1});e.push(new o.Att({name:`${t.name}.pgp`,type:"application/pgp-encrypted",data:n}))}const u=await(0,t.getSigningPrv)(r),l=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,signingPrv:u,data:c.Buf.fromUtfStr(r.text),armor:!0});return(0,n.fmtRes)({},c.Buf.fromUtfStr(await s.Mime.encode({"text/plain":l},a,e)))}throw new Error(`Unknown format: ${r.format}`)};encryptMsg=async(e,t)=>{const r=p.ValidateInput.encryptMsg(e),a=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,pwd:r.msgPwd,data:c.Buf.concat(t),armor:!0});return(0,n.fmtRes)({},c.Buf.fromUtfStr(a))};encryptFile=async(e,t)=>{const r=p.ValidateInput.encryptFile(e),a=await i.PgpMsg.encrypt({pubkeys:r.pubKeys,data:c.Buf.concat(t),filename:r.name,armor:!1});return(0,n.fmtRes)({},a)};parseDecryptMsg=async(e,t)=>{const{keys:r,msgPwd:o,isMime:l,verificationPubkeys:h}=p.ValidateInput.parseDecryptMsg(e),f=[];let g,m;if(l){const{blocks:e,rawSignedContent:r,headers:n}=await s.Mime.process(c.Buf.concat(t));m=String(n.subject),g=r,f.push(...e)}else{const{blocks:e}=u.MsgBlockParser.detectBlocks(c.Buf.concat(t).toString());f.push(...e)}const b=[];for(const e of f)if("signedMsg"!==e.type&&"signedHtml"!==e.type||!e.signature)if("encryptedMsg"===e.type||"signedMsg"===e.type){const t=await i.PgpMsg.decrypt({kisWithPp:r,msgPwd:o,encryptedData:c.Buf.with(e.content),verificationPubkeys:h});if(t.success)if(t.isEncrypted){const e=await u.MsgBlockParser.fmtDecryptedAsSanitizedHtmlBlocks(t.content,t.signature);b.push(...e.blocks),m=e.subject||m}else b.push({type:"verifiedMsg",content:d.Str.asEscapedHtml(t.content.toUtfStr()),complete:!0,verifyRes:t.signature});else delete t.message,b.push({type:"decryptErr",content:t.error.type===i.DecryptErrTypes.noMdc?t.content?.toUtfStr()??"":e.content.toString(),decryptErr:t,complete:!0})}else if("encryptedAtt"===e.type&&e.attMeta&&/^(0x)?[A-Fa-f0-9]{16,40}\.asc\.pgp$/.test(e.attMeta.name||"")){const t=await i.PgpMsg.decrypt({kisWithPp:r,msgPwd:o,encryptedData:c.Buf.with(e.attMeta.data||""),verificationPubkeys:h});t.content?b.push({type:"publicKey",content:t.content.toString(),complete:!0}):b.push(e)}else b.push(e);else{const t=await i.PgpMsg.verifyDetached({sigText:c.Buf.fromUtfStr(e.signature),plaintext:c.Buf.with(g||e.content),verificationPubkeys:h});"signedHtml"===e.type?b.push({type:"verifiedMsg",content:y.Xss.htmlSanitizeKeepBasicTags(e.content.toString()),verifyRes:t,complete:!0}):b.push({type:"verifiedMsg",content:d.Str.asEscapedHtml(e.content.toString()),verifyRes:t,complete:!0})}const w=[],v=[];let k="plain";for(const e of b)if(e.content instanceof c.Buf?e.content=(0,n.isContentBlock)(e.type)?e.content.toUtfStr():e.content.toRawBytesStr():e.attMeta&&e.attMeta.data instanceof Uint8Array&&(e.attMeta.data=c.Buf.fromUint8(e.attMeta.data).toBase64Str()),e.decryptErr?.content instanceof c.Buf&&(e.decryptErr.content=e.decryptErr.content.toUtfStr()),"decryptedHtml"!==e.type&&"decryptedText"!==e.type&&"decryptedAtt"!==e.type||(k="encrypted"),"publicKey"===e.type)if(e.keyDetails)v.push(e);else{const{keys:t}=await a.PgpKey.normalize(e.content);if(t.length)for(const e of t)v.push({type:"publicKey",content:e.armor(),complete:!0,keyDetails:await a.PgpKey.details(e)});else v.push({type:"decryptErr",content:e.content,complete:!0,decryptErr:{success:!1,error:{type:i.DecryptErrTypes.format,message:"Badly formatted public key"},longids:{message:[],matching:[],chosen:[],needPassphrase:[]}}})}else(0,n.isContentBlock)(e.type)||s.Mime.isPlainImgAtt(e)?w.push(e):v.push(e);const{contentBlock:A,text:_}=(0,n.fmtContentBlock)(w);v.unshift(A);const S=c.Buf.fromUtfStr(v.map((e=>JSON.stringify(e,((e,t)=>"content"===e&&t.length>1e5?"":t)))).join("\n")),E={text:_,replyType:k};return m&&Object.assign(E,{subject:m}),(0,n.fmtRes)(E,S)};parseAttachmentType=async e=>{const{atts:t}=p.ValidateInput.parseAttachmentType(e),r=t.map((e=>{const t=new o.Att(e);return{id:t.id,treatAs:t.treatAs()}}));return(0,n.fmtRes)({atts:r})};decryptFile=async(e,t,r)=>{const{keys:a,msgPwd:s}=p.ValidateInput.decryptFile(e),o=await i.PgpMsg.decrypt({kisWithPp:a,encryptedData:c.Buf.concat(t),msgPwd:s,verificationPubkeys:r});return o.success?(0,n.fmtRes)({decryptSuccess:{name:o.filename||""}},o.content):(delete o.message,delete o.content,(0,n.fmtRes)({decryptErr:o}))};zxcvbnStrengthBar=async e=>{const t=p.ValidateInput.zxcvbnStrengthBar(e);if("passphrase"===t.purpose){if("number"==typeof t.guesses)return(0,n.fmtRes)(l.PgpPwd.estimateStrength(t.guesses));if("string"==typeof t.value){if("function"!=typeof window.zxcvbn)throw new Error("window.zxcvbn missing in js");const e=window.zxcvbn(t.value,l.PgpPwd.weakWords()).guesses;return(0,n.fmtRes)(l.PgpPwd.estimateStrength(e))}throw new Error("Unexpected format: guesses is not a number, value is not a string")}throw new Error(`Unknown purpose: ${t.purpose}`)};parseKeys=async(e,t)=>{const r=[],s=c.Buf.concat(t),o=await i.PgpMsg.type({data:s});if(!o)return(0,n.fmtRes)({format:"unknown",keyDetails:r});if(o.armored){const{blocks:e}=u.MsgBlockParser.detectBlocks(s.toString());for(const t of e){const{keys:e}=await a.PgpKey.parse(t.content.toString());r.push(...e)}for(const e of r)(0,n.removeUndefinedValues)(e);return(0,n.fmtRes)({format:"armored",keyDetails:r})}const l=await(0,g.readKeys)({binaryKeys:s});for(const e of l)r.push(await a.PgpKey.details(e));for(const e of r)(0,n.removeUndefinedValues)(e);return(0,n.fmtRes)({format:"binary",keyDetails:r})};isEmailValid=async e=>{const{email:t}=p.ValidateInput.isEmailValid(e);return(0,n.fmtRes)({valid:d.Str.isEmailValid(t)})};decryptKey=async e=>{h.Store.keyCacheWipe();const{armored:t,passphrases:r}=p.ValidateInput.decryptKey(e);if(1!==r.length)throw new Error(`decryptKey: Can only accept exactly 1 pass phrase for decrypt, received: ${r.length}`);const i=await(0,p.readArmoredKeyOrThrow)(t);return await a.PgpKey.decrypt(i,r[0])?(0,n.fmtRes)({decryptedKey:i.armor()}):(0,n.fmtRes)({decryptedKey:void 0})};encryptKey=async e=>{h.Store.keyCacheWipe();const{armored:t,passphrase:r}=p.ValidateInput.encryptKey(e),i=await(0,p.readArmoredKeyOrThrow)(t);if(!r||r.length<12)throw new Error("Pass phrase length seems way too low! Pass phrase strength should be properly checked before encrypting a key.");const a=await(0,g.encryptKey)({privateKey:i,passphrase:r});return(0,n.fmtRes)({encryptedKey:a.armor()})};verifyKey=async e=>{const{armored:t}=p.ValidateInput.verifyKey(e),r=await(0,g.readKey)({armoredKey:t});return await r.verifyPrimaryKey(),(0,n.fmtRes)({})};keyCacheWipe=async()=>(h.Store.keyCacheWipe(),(0,n.fmtRes)({}))},t.getSigningPrv=async e=>{if(!e.signingPrv)return;const t=await(0,p.readArmoredKeyOrThrow)(e.signingPrv.private);if(await a.PgpKey.decrypt(t,e.signingPrv.passphrase||""))return t;throw new Error("Fail to decrypt signing key")}},8267:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeUndefinedValues=t.fmtErr=t.fmtRes=t.fmtContentBlock=t.stripHtmlRootTags=t.isContentBlock=void 0;const n=r(504),i=r(7596),a=r(4115),s=r(9307);t.isContentBlock=e=>"plainText"===e||"decryptedText"===e||"plainHtml"===e||"decryptedHtml"===e||"signedMsg"===e||"verifiedMsg"===e;const o=(e,t)=>{let r;return r="green"===t?"border: 1px solid #f0f0f0;border-left: 8px solid #31A217;border-right: none;' +\n 'background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAABaCAMAAAAPdrEwAAAAh1BMVEXw8PD////w8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PD7MuHIAAAALXRSTlMAAAECBAcICw4QEhUZIyYqMTtGTV5kdn2Ii5mfoKOqrbG0uL6/xcnM0NTX2t1l7cN4AAAB0UlEQVR4Ae3Y3Y4SQRCG4bdHweFHRBTBH1FRFLXv//qsA8kmvbMdXhh2Q0KfknpSCQc130c67s22+e9+v/+d84fxkSPH0m/+5P9vN7vRV0vPfx7or1NB23e99KAHuoXOOc6moQsBwNN1Q9g4Wdh1uq3MA7Qn0+2ylAt7WbWpyT+Wo8roKH6v2QhZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2ghZ2gjZ2AUNOLmwgQdogEJ2dnF3UJdU3WjqO/u96aYtVd/7jqvIyu76G5se6GaY7tNNcy5d7se7eWVnDz87fMkuVuS8epF6f9NPObPY5re9y4N1/vya9Gr3se2bfvl9M0mkyZdv077p+a/3z4Meby5Br4NWiV51BaiUqfLro9I3WiR61RVcffwfXI7u5zZ20EOA82Uu8x3SlrSwXQuBSvSqK0AletUVoBK96gpIwlZy0MJWctDCVnLQwlZy0MJWctDCVnLQwlZy0MJWctDCVnLQwlZy0MJWctDCVnLQwlZy0MJWckIletUVIJJxITN6wtZd2EI+0NquyIJOnUpFVvRpcwmV6FVXgEr0qitAJXrVFaASveoKUIledQWoRK+6AlSiV13BP+/VVbky7Xq1AAAAAElFTkSuQmCC);":"red"===t?"border: 1px solid #f0f0f0;border-left: 8px solid #d14836;border-right: none;":"plain"===t?"border: none;":"border: 1px solid #f0f0f0;border-left: 8px solid #989898;border-right: none;",`
${s.Xss.htmlSanitizeKeepBasicTags(e)}
\x3c!-- next MsgBlock --\x3e\n`};t.stripHtmlRootTags=e=>(e=(e=(e=e.replace(/<\/?html[^>]*>/g,"")).replace(/]*>.*<\/head>/g,"")).replace(/<\/?body[^>]*>/g,"")).trim();const c=(e,t)=>e.replace(/src="cid:([^"]+)"/g,((e,r)=>{const n=t[r];if(n){const e=`src="data:${n.attMeta?.type};base64,${n.attMeta?.data}"`;return delete t[r],e}return e}));t.fmtContentBlock=e=>{const r=[],u=[],l=e.filter((e=>!i.Mime.isPlainImgAtt(e))),h=[],d={};for(const t of e.filter((e=>i.Mime.isPlainImgAtt(e))))t.attMeta?.cid?d[t.attMeta.cid.replace(/>$/,"").replace(/^0&&y!==l.length&&(f.partial=!0));for(const e of h.concat(Object.values(d))){const t=`${e.attMeta?.name||"(unnamed image)"} - ${e.attMeta?.length??0}kb`,n=`${s.Xss.escape(t)} `;r.push(o(n,"plain")),u.push(`[image: ${t}]\n`)}const g=n.MsgBlock.fromContent("plainHtml",`\n \n \n \n \n \n ${r.join("")}\n `);return g.verifyRes=f,{contentBlock:g,text:u.join("").trim()}},t.fmtRes=(e,t)=>({json:e,data:t||new Uint8Array(0)}),t.fmtErr=e=>(0,t.fmtRes)({error:{message:String(e),stack:e&&"object"==typeof e&&e.stack||""}}),t.removeUndefinedValues=e=>{for(const t in e)void 0===e[t]&&delete e[t]}},8383:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readArmoredKeyOrThrow=t.ValidateInput=void 0;const n=r(8618);t.ValidateInput=class{static setClientConfiguration=e=>{if(i(e)&&a(e,"shouldHideArmorMeta","boolean?"))return e;throw new Error("Wrong request structure for NodeRequest.setClientConfiguration")};static generateKey=e=>{if(i(e)&&a(e,"userIds","Userid[]")&&e.userIds.length&&a(e,"passphrase","string")&&["rsa2048","rsa4096","curve25519"].includes(e.variant))return e;throw new Error("Wrong request structure for NodeRequest.generateKey")};static encryptMsg=e=>{if(i(e)&&a(e,"pubKeys","string[]")&&a(e,"msgPwd","string?"))return e;throw new Error("Wrong request structure for NodeRequest.encryptMsg")};static composeEmail=e=>{if(!(i(e)&&a(e,"text","string")&&a(e,"html","string?")&&a(e,"from","string")&&a(e,"subject","string")&&a(e,"to","string[]")&&a(e,"cc","string[]")&&a(e,"bcc","string[]")))throw new Error("Wrong request structure for NodeRequest.composeEmail, need: text,from,subject,to,cc,bcc,atts (can use empty arr for cc/bcc, and can skip atts)");if(!a(e,"atts","ComposeAttachment[]?"))throw new Error("Wrong atts structure for NodeRequest.composeEmail, need: {name, type, base64}");if(a(e,"pubKeys","string[]")&&a(e,"signingPrv","PrvKeyInfo?")&&e.pubKeys.length&&("encryptInline"===e.format||"encryptPgpmime"===e.format))return e;if(!e.pubKeys&&"plain"===e.format)return e;throw new Error("Wrong choice of pubKeys and format. Either pubKeys:[..]+format:encryptInline OR format:plain allowed")};static parseDecryptMsg=e=>{if(i(e)&&a(e,"keys","PrvKeyInfo[]")&&a(e,"msgPwd","string?")&&a(e,"isMime","boolean?")&&a(e,"verificationPubkeys","string[]?"))return e;throw new Error("Wrong request structure for NodeRequest.parseDecryptMsg")};static encryptFile=e=>{if(i(e)&&a(e,"pubKeys","string[]")&&a(e,"name","string"))return e;throw new Error("Wrong request structure for NodeRequest.encryptFile")};static parseAttachmentType=e=>{if(i(e)&&a(e,"atts","Attachment[]"))return e;throw new Error("Wrong request structure for NodeRequest.parseAttachmentType")};static decryptFile=e=>{if(i(e)&&a(e,"keys","PrvKeyInfo[]")&&a(e,"msgPwd","string?"))return e;throw new Error("Wrong request structure for NodeRequest.decryptFile")};static zxcvbnStrengthBar=e=>{if(i(e)&&a(e,"guesses","number")&&a(e,"purpose","string")&&"passphrase"===e.purpose)return e;if(i(e)&&a(e,"value","string")&&a(e,"purpose","string")&&"passphrase"===e.purpose)return e;throw new Error("Wrong request structure for NodeRequest.zxcvbnStrengthBar")};static isEmailValid=e=>{if(i(e)&&a(e,"email","string"))return e;throw new Error("Wrong request structure for NodeRequest.isEmailValid")};static decryptKey=e=>{if(i(e)&&a(e,"armored","string")&&a(e,"passphrases","string[]"))return e;throw new Error("Wrong request structure for NodeRequest.decryptKey")};static encryptKey=e=>{if(i(e)&&a(e,"armored","string")&&a(e,"passphrase","string"))return e;throw new Error("Wrong request structure for NodeRequest.encryptKey")};static verifyKey=e=>{if(i(e)&&a(e,"armored","string"))return e;throw new Error("Wrong request structure for NodeRequest.verifyKey")}};const i=e=>!!e&&"object"==typeof e,a=(e,t,r)=>{if(!i(e))return!1;const n=e[t];return"number"===r||"string"===r?typeof n===r:"boolean?"===r?"boolean"==typeof n||void 0===n:"string?"===r?null===n?(e[t]=void 0,!0):"string"==typeof n||void 0===n:"ComposeAttachment[]?"===r?void 0===n||Array.isArray(n)&&n.filter((e=>a(e,"name","string")&&a(e,"type","string")&&a(e,"base64","string"))).length===n.length:"Attachment[]"===r?Array.isArray(n)&&n.filter((e=>a(e,"id","string")&&a(e,"msgId","string")&&a(e,"name","string")&&a(e,"type","string?"))).length===n.length:"string[]"===r?Array.isArray(n)&&n.filter((e=>"string"==typeof e)).length===n.length:"string[]?"===r?void 0===n||Array.isArray(n)&&n.filter((e=>"string"==typeof e)).length===n.length:"PrvKeyInfo?"===r?null===n?(e[t]=void 0,!0):void 0===n||a(n,"private","string")&&a(n,"longid","string")&&a(n,"passphrase","string?"):"PrvKeyInfo[]"===r?Array.isArray(n)&&n.filter((e=>a(e,"private","string")&&a(e,"longid","string")&&a(e,"passphrase","string?"))).length===n.length:"Userid[]"===r?Array.isArray(n)&&n.filter((e=>a(e,"name","string")&&a(e,"email","string"))).length===n.length:"object"===r&&i(n)};t.readArmoredKeyOrThrow=async e=>{const t=await(0,n.readKey)({armoredKey:e});if(!t)throw new Error("No key found");return t}},6240:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Catch=void 0,t.Catch=class{static reportErr=e=>{console.error(e)};static report=(e,t)=>{console.error(e,t)};static undefinedOnException=async e=>{try{return await e}catch(e){return}}}},8078:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.requireIso88592=t.requireMimeBuilder=t.requireMimeParser=t.requireStreamReadToEnd=void 0,t.requireStreamReadToEnd=async()=>"not node"===(globalThis.process?.release?.name||"not node")?(await Promise.resolve().then((()=>r(9691)))).readToEnd:r(17).readToEnd,t.requireMimeParser=()=>r.g["emailjs-mime-parser"],t.requireMimeBuilder=()=>r.g["emailjs-mime-builder"],t.requireIso88592=()=>r.g.iso88592},7620:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Store=void 0;const n=r(1106);let i,a={};class s{static decryptedKeyCacheSet=e=>{s.keyCacheRenewExpiry(),a[(e=>(0,n.strToHex)(e.getKeyID().bytes).toUpperCase())(e)]=e};static decryptedKeyCacheGet=e=>(s.keyCacheRenewExpiry(),a[e]);static armoredKeyCacheSet=(e,t)=>{s.keyCacheRenewExpiry(),a[e]=t};static armoredKeyCacheGet=e=>(s.keyCacheRenewExpiry(),a[e]);static keyCacheWipe=()=>{a={}};static keyCacheRenewExpiry=()=>{i&&clearTimeout(i),i=setTimeout(s.keyCacheWipe,12e4)}}t.Store=s},1106:(e,t,r)=>{"use strict";var n=r(5456);Object.defineProperty(t,"__esModule",{value:!0}),t.getKeyExpirationTimeForCapabilities=t.strToHex=t.iso2022jpToUtf=t.base64decode=t.base64encode=void 0;const i=r(8764);t.base64encode=e=>i.Buffer.from(e,"binary").toString("base64"),t.base64decode=e=>i.Buffer.from(e,"base64").toString("binary"),t.iso2022jpToUtf=e=>n.convert(e,{to:"UTF8",from:"JIS",type:"string"}),t.strToHex=e=>{if(null===e)return"";const t=[],r=e.length;let n,i=0;for(;i{let t=null;for(const r of e)(null===t||null!==r&&r>t)&&(t=r);return t},s=e=>{const t=a(e.bindingSignatures.map((e=>e.created)));return e.bindingSignatures.filter((e=>e.created===t))[0].getExpirationTime()};t.getKeyExpirationTimeForCapabilities=async(e,t,r,n)=>{const i=await e.getPrimaryUser(void 0,n,void 0);if(!i)throw new Error("Could not find primary user");const o=await e.getExpirationTime(n);if(!o)return null;const c=a(i.user.selfCertifications.map((e=>e.created))),u=i.user.selfCertifications.filter((e=>e.created===c))[0].getExpirationTime();let l=o{}))||await e.getEncryptionKey(r,null,n).catch((()=>{}));if(!t)return null;const i="bindingSignatures"in t?s(t):await t.getExpirationTime(n)??0;i{}))||await e.getSigningKey(r,null,n).catch((()=>{}));if(!t)return null;const i="bindingSignatures"in t?s(t):await t.getExpirationTime(n)??0;i{"use strict";var n=r(1036);Object.defineProperty(t,"__esModule",{value:!0}),t.Xss=void 0;const i=r(4115);class a{static ALLOWED_BASIC_TAGS=["p","div","br","u","i","em","b","ol","ul","pre","li","table","thead","tbody","tfoot","tr","td","th","img","h1","h2","h3","h4","h5","h6","hr","address","blockquote","dl","fieldset","a","font","strong","strike","code"];static ALLOWED_ATTRS={a:["href","name","target"],img:["src","width","height","alt"],font:["size","color","face"],span:["color"],div:["color"],p:["color"],em:["style"],td:["width","height"],hr:["color","height"]};static ALLOWED_SCHEMES=["data","http","https","mailto"];static htmlSanitizeKeepBasicTags=e=>{const t=`IMG_ICON_${i.Str.sloppyRandom()}`;let r=!1,s=n(e,{allowedTags:a.ALLOWED_BASIC_TAGS,allowedAttributes:a.ALLOWED_ATTRS,allowedSchemes:a.ALLOWED_SCHEMES,transformTags:{img:(e,n)=>{const i=(n.src||"").substring(0,10);return i.startsWith("data:")?{tagName:"img",attribs:{src:n.src,alt:n.alt||""}}:i.startsWith("http://")||i.startsWith("https://")?(r=!0,{tagName:"a",attribs:{href:String(n.src),target:"_blank"},text:t}):{tagName:"img",attribs:{alt:n.alt,title:n.title},text:"[img]"}},"*":(e,t)=>(t.width&&"1"!==t.width&&"img"!==e&&delete t.width,t.height&&"1"!==t.height&&"img"!==e&&delete t.width,{tagName:e,attribs:t})},exclusiveFilter:({tag:e,attribs:t})=>"1"===t.width||"1"===t.height&&"hr"!==e});return r&&(s=`[remote content blocked for your privacy]

${s}`,s=n(s,{allowedTags:a.ALLOWED_BASIC_TAGS,allowedAttributes:a.ALLOWED_ATTRS,allowedSchemes:a.ALLOWED_SCHEMES})),s=s.replace(new RegExp(t,"g"),'[img]'),s};static htmlSanitizeAndStripAllTags=(e,t)=>{let r=a.htmlSanitizeKeepBasicTags(e);const s=i.Str.sloppyRandom(5),o=`CU_BR_${s}`,c=`CU_BS_${s}`,u=`CU_BE_${s}`;r=r.replace(/]*>/gi,o),r=r.replace(/\n/g,""),r=r.replace(/<\/(p|h1|h2|h3|h4|h5|h6|ol|ul|pre|address|blockquote|dl|div|fieldset|form|hr|table)[^>]*>/gi,u),r=r.replace(/<(p|h1|h2|h3|h4|h5|h6|ol|ul|pre|address|blockquote|dl|div|fieldset|form|hr|table)[^>]*>/gi,c),r=r.replace(RegExp(`(${c})+`,"g"),c).replace(RegExp(`(${u})+`,"g"),u),r=r.split(o+u+c).join(o).split(u+c).join(o).split(o+u).join(o);let l=r.split(o).join("\n").split(c).filter((e=>!!e)).join("\n").split(u).filter((e=>!!e)).join("\n");return l=l.replace(/\n{2,}/g,"\n\n"),l=n(l,{allowedTags:["img","span"],allowedAttributes:{img:["src"]},allowedSchemes:a.ALLOWED_SCHEMES,transformTags:{img:(e,t)=>({tagName:"span",attribs:{},text:`[image: ${t.alt||t.title||"no name"}]`})}}),l=n(l,{allowedTags:[]}),l=l.trim(),"\n"!==t&&(l=l.replace(/\n/g,t)),l};static escape=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">").replace(/\//g,"/");static escapeTextAsRenderableHtml=e=>a.escape(e).replace(/\n/g,"
\n").replace(/^ +/gm,(e=>e.replace(/ /g," "))).replace(/^\t+/gm,(e=>e.replace(/\t/g," "))).replace(/\n/g,"");static htmlUnescape=e=>e.replace(///g,"/").replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/ /g," ").replace(/&/g,"&")}t.Xss=a},9691:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ArrayStream:()=>o,cancel:()=>q,clone:()=>R,concat:()=>E,concatStream:()=>x,concatUint8Array:()=>p,fromAsync:()=>F,getReader:()=>P,getWriter:()=>C,isArrayStream:()=>c,isStream:()=>d,isUint8Array:()=>f,nodeToWeb:()=>m,parse:()=>U,passiveClone:()=>K,pipe:()=>T,readToEnd:()=>L,slice:()=>N,toStream:()=>_,transform:()=>D,transformPair:()=>B,transformRaw:()=>M,webToNode:()=>b});const n=Symbol("doneWritingPromise"),i=Symbol("doneWritingResolve"),a=Symbol("doneWritingReject"),s=Symbol("readingIndex");class o extends Array{constructor(){super(),this[n]=new Promise(((e,t)=>{this[i]=e,this[a]=t})),this[n].catch((()=>{}))}}function c(e){return e&&e.getReader&&Array.isArray(e)}function u(e){if(!c(e)){const t=e.getWriter(),r=t.releaseLock;return t.releaseLock=()=>{t.closed.catch((function(){})),r.call(t)},t}this.stream=e}o.prototype.getReader=function(){return void 0===this[s]&&(this[s]=0),{read:async()=>(await this[n],this[s]===this.length?{value:void 0,done:!0}:{value:this[this[s]++],done:!1})}},o.prototype.readToEnd=async function(e){await this[n];const t=e(this.slice(this[s]));return this.length=0,t},o.prototype.clone=function(){const e=new o;return e[n]=this[n].then((()=>{e.push(...this)})),e},u.prototype.write=async function(e){this.stream.push(e)},u.prototype.close=async function(){this.stream[i]()},u.prototype.abort=async function(e){return this.stream[a](e),e},u.prototype.releaseLock=function(){};const l="object"==typeof globalThis.process&&"object"==typeof globalThis.process.versions,h=l&&r(6845).Readable;function d(e){return c(e)?"array":globalThis.ReadableStream&&globalThis.ReadableStream.prototype.isPrototypeOf(e)?"web":h&&h.prototype.isPrototypeOf(e)?"node":!(!e||!e.getReader)&&"web-like"}function f(e){return Uint8Array.prototype.isPrototypeOf(e)}function p(e){if(1===e.length)return e[0];let t=0;for(let r=0;r{t||(y.isBuffer(n)&&(n=new Uint8Array(n.buffer,n.byteOffset,n.byteLength)),r.enqueue(n),e.pause())})),e.on("end",(()=>{t||r.close()})),e.on("error",(e=>r.error(e)))},pull(){e.resume()},cancel(r){t=!0,e.destroy(r)}})};class e extends g{constructor(e,t){super(t),this._reader=P(e)}async _read(e){try{for(;;){const{done:e,value:t}=await this._reader.read();if(e){this.push(null);break}if(!this.push(t)||this._cancelling){this._reading=!1;break}}}catch(e){this.emit("error",e)}}_destroy(e){this._reader.cancel(e)}}b=function(t,r){return new e(t,r)}}const w=new WeakSet,v=Symbol("externalBuffer");function k(e){if(this.stream=e,e[v]&&(this[v]=e[v].slice()),c(e)){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{},void(this._cancel=()=>{})}let t=d(e);if("node"===t&&(e=m(e)),t){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{t.closed.catch((function(){})),t.releaseLock()},void(this._cancel=t.cancel.bind(t))}let r=!1;this._read=async()=>r||w.has(e)?{value:void 0,done:!0}:(r=!0,{value:e,done:!1}),this._releaseLock=()=>{if(r)try{w.add(e)}catch(e){}}}k.prototype.read=async function(){return this[v]&&this[v].length?{done:!1,value:this[v].shift()}:this._read()},k.prototype.releaseLock=function(){this[v]&&(this.stream[v]=this[v]),this._releaseLock()},k.prototype.cancel=function(e){return this._cancel(e)},k.prototype.readLine=async function(){let e,t=[];for(;!e;){let{done:r,value:n}=await this.read();if(n+="",r)return t.length?E(t):void 0;const i=n.indexOf("\n")+1;i&&(e=E(t.concat(n.substr(0,i))),t=[]),i!==n.length&&t.push(n.substr(i))}return this.unshift(...t),e},k.prototype.readByte=async function(){const{done:e,value:t}=await this.read();if(e)return;const r=t[0];return this.unshift(N(t,1)),r},k.prototype.readBytes=async function(e){const t=[];let r=0;for(;;){const{done:n,value:i}=await this.read();if(n)return t.length?E(t):void 0;if(t.push(i),r+=i.length,r>=e){const r=E(t);return this.unshift(N(r,e)),N(r,0,e)}}},k.prototype.peekBytes=async function(e){const t=await this.readBytes(e);return this.unshift(t),t},k.prototype.unshift=function(...e){this[v]||(this[v]=[]),1===e.length&&f(e[0])&&this[v].length&&e[0].length&&this[v][0].byteOffset>=e[0].length?this[v][0]=new Uint8Array(this[v][0].buffer,this[v][0].byteOffset-e[0].length,this[v][0].byteLength+e[0].length):this[v].unshift(...e.filter((e=>e&&e.length)))},k.prototype.readToEnd=async function(e=E){const t=[];for(;;){const{done:e,value:r}=await this.read();if(e)break;t.push(r)}return e(t)};const A=l&&r(7921).Buffer;function _(e){let t=d(e);return"node"===t?m(e):t?e:new ReadableStream({start(t){t.enqueue(e),t.close()}})}function S(e){if(d(e))return e;const t=new o;return(async()=>{const r=C(t);await r.write(e),await r.close()})(),t}function E(e){return e.some((e=>d(e)&&!c(e)))?x(e):e.some((e=>c(e)))?function(e){const t=new o;let r=Promise.resolve();return e.forEach(((n,i)=>(r=r.then((()=>T(n,t,{preventClose:i!==e.length-1}))),r))),t}(e):"string"==typeof e[0]?e.join(""):A&&A.isBuffer(e[0])?A.concat(e):p(e)}function x(e){e=e.map(_);const t=I((async function(e){await Promise.all(n.map((t=>q(t,e))))}));let r=Promise.resolve();const n=e.map(((n,i)=>B(n,((n,a)=>(r=r.then((()=>T(n,t.writable,{preventClose:i!==e.length-1}))),r)))));return t.readable}function P(e){return new k(e)}function C(e){return new u(e)}async function T(e,t,{preventClose:r=!1,preventAbort:n=!1,preventCancel:i=!1}={}){if(d(e)&&!c(e)){e=_(e);try{if(e[v]){const r=C(t);for(let t=0;t{t=e})),t=null)},close:r.close.bind(r),abort:r.error.bind(r)})}}function D(e,t=(()=>{}),r=(()=>{})){if(c(e)){const n=new o;return(async()=>{const i=C(n);try{const n=await L(e),a=t(n),s=r();let o;o=void 0!==a&&void 0!==s?E([a,s]):void 0!==a?a:s,await i.write(o),await i.close()}catch(e){await i.abort(e)}})(),n}if(d(e))return M(e,{async transform(e,r){try{const n=await t(e);void 0!==n&&r.enqueue(n)}catch(e){r.error(e)}},async flush(e){try{const t=await r();void 0!==t&&e.enqueue(t)}catch(t){e.error(t)}}});const n=t(e),i=r();return void 0!==n&&void 0!==i?E([n,i]):void 0!==n?n:i}function B(e,t){if(d(e)&&!c(e)){let r;const n=new TransformStream({start(e){r=e}}),i=T(e,n.writable),a=I((async function(e){r.error(e),await i,await new Promise(setTimeout)}));return t(n.readable,a.writable),a.readable}e=S(e);const r=new o;return t(e,r),r}function U(e,t){let r;const n=B(e,((e,i)=>{const a=P(e);a.remainder=()=>(a.releaseLock(),T(e,i),n),r=t(a)}));return r}function R(e){if(c(e))return e.clone();if(d(e)){const t=function(e){if(c(e))throw new Error("ArrayStream cannot be tee()d, use clone() instead");if(d(e)){const t=_(e).tee();return t[0][v]=t[1][v]=e[v],t}return[N(e),N(e)]}(e);return O(e,t[0]),t[1]}return N(e)}function K(e){return c(e)?R(e):d(e)?new ReadableStream({start(t){const r=B(e,(async(e,r)=>{const n=P(e),i=C(r);try{for(;;){await i.ready;const{done:e,value:r}=await n.read();if(e){try{t.close()}catch(e){}return void await i.close()}try{t.enqueue(r)}catch(e){}await i.write(r)}}catch(e){t.error(e),await i.abort(e)}}));O(e,r)}}):N(e)}function O(e,t){Object.entries(Object.getOwnPropertyDescriptors(e.constructor.prototype)).forEach((([r,n])=>{"constructor"!==r&&(n.value?n.value=n.value.bind(t):n.get=n.get.bind(t),Object.defineProperty(e,r,n))}))}function N(e,t=0,r=1/0){if(c(e))throw new Error("Not implemented");if(d(e)){if(t>=0&&r>=0){let n=0;return M(e,{transform(e,i){n=t&&i.enqueue(N(e,Math.max(t-n,0),r-n)),n+=e.length):i.terminate()}})}if(t<0&&(r<0||r===1/0)){let n=[];return D(e,(e=>{e.length>=-t?n=[e]:n.push(e)}),(()=>N(E(n),t,r)))}if(0===t&&r<0){let n;return D(e,(e=>{const i=n?E([n,e]):e;if(i.length>=-r)return n=N(i,r),N(i,t,r);n=i}))}return console.warn(`stream.slice(input, ${t}, ${r}) not implemented efficiently.`),F((async()=>N(await L(e),t,r)))}return e[v]&&(e=E(e[v].concat([e]))),!f(e)||A&&A.isBuffer(e)?e.slice(t,r):(r===1/0&&(r=e.length),e.subarray(t,r))}async function L(e,t=E){return c(e)?e.readToEnd(t):d(e)?P(e).readToEnd(t):e}async function q(e,t){if(d(e)){if(e.cancel)return e.cancel(t);if(e.destroy)return e.destroy(t),await new Promise(setTimeout),t}}function F(e){const t=new o;return(async()=>{const r=C(t);try{await r.write(await e()),await r.close()}catch(e){await r.abort(e)}})(),t}},9742:(e,t)=>{"use strict";t.byteLength=function(e){var t=o(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=o(e),s=a[0],c=a[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,s,c)),l=0,h=c>0?s-4:s;for(r=0;r>16&255,u[l++]=t>>8&255,u[l++]=255&t;return 2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[l++]=255&t),1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],s=16383,o=0,u=n-i;ou?u:o+s));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0;s<64;++s)r[s]=a[s],n[a.charCodeAt(s)]=s;function o(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,a,s=[],o=t;o>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return s.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},8764:(e,t,r)=>{"use strict";const n=r(9742),i=r(645),a="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const s=2147483647;function o(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return h(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|y(e,t);let n=o(r);const i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(J(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return d(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(J(e,ArrayBuffer)||e&&J(e.buffer,ArrayBuffer))return f(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(J(e,SharedArrayBuffer)||e&&J(e.buffer,SharedArrayBuffer)))return f(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=o(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||Z(e.length)?o(0):d(e):"Buffer"===e.type&&Array.isArray(e.data)?d(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function l(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function h(e){return l(e),o(e<0?0:0|p(e))}function d(e){const t=e.length<0?0:0|p(e.length),r=o(t);for(let n=0;n=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||J(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return V(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return G(e).length;default:if(i)return n?-1:V(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return M(this,t,r);case"utf8":case"utf-8":return x(this,t,r);case"ascii":return C(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function m(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function b(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Z(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:w(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):w(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function w(e,t,r,n,i){let a,s=1,o=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,o/=2,c/=2,r/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){let n=-1;for(a=r;ao&&(r=o-c),a=r;a>=0;a--){let r=!0;for(let n=0;ni&&(n=i):n=i;const a=t.length;let s;for(n>a/2&&(n=a/2),s=0;s>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function x(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+s<=r){let r,n,o,c;switch(s){case 1:t<128&&(a=t);break;case 2:r=e[i+1],128==(192&r)&&(c=(31&t)<<6|63&r,c>127&&(a=c));break;case 3:r=e[i+1],n=e[i+2],128==(192&r)&&128==(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:r=e[i+1],n=e[i+2],o=e[i+3],128==(192&r)&&128==(192&n)&&128==(192&o)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&o,c>65535&&c<1114112&&(a=c))}}null===a?(a=65533,s=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),i+=s}return function(e){const t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(J(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let a=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(t>>>=0);const o=Math.min(a,s),u=this.slice(n,i),l=e.slice(t,r);for(let e=0;e>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return v(this,e,t,r);case"utf8":case"utf-8":return k(this,e,t,r);case"ascii":case"latin1":case"binary":return A(this,e,t,r);case"base64":return _(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const P=4096;function C(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let n=t;nr)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,r,n,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function U(e,t,r,n,i){z(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s>>=8,e[r++]=s,s>>=8,e[r++]=s,s>>=8,e[r++]=s,r}function R(e,t,r,n,i){z(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s>>=8,e[r+2]=s,s>>=8,e[r+1]=s,s>>=8,e[r]=s,r+8}function K(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function O(e,t,r,n,a){return t=+t,r>>>=0,a||K(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function N(e,t,r,n,a){return t=+t,r>>>=0,a||K(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||D(e,t,this.length);let n=this[e],i=1,a=0;for(;++a>>=0,t>>>=0,r||D(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||D(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||D(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||D(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||D(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||D(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=X((function(e){j(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||D(e,t,this.length);let n=this[e],i=1,a=0;for(;++a=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||D(e,t,this.length);let n=t,i=1,a=this[e+--n];for(;n>0&&(i*=256);)a+=this[e+--n]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return e>>>=0,t||D(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||D(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||D(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||D(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||D(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=X((function(e){j(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||D(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||D(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||D(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||D(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);let i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||B(this,e,t,r,Math.pow(2,8*r)-1,0);let i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=X((function(e,t=0){return U(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=X((function(e,t=0){return R(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);B(this,e,t,r,n-1,-n)}let i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);B(this,e,t,r,n-1,-n)}let i=r-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=X((function(e,t=0){return U(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=X((function(e,t=0){return R(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return O(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return O(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return N(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return N(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function z(e,t,r,n,i,a){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(a+1)}${n}`:`>= -(2${n} ** ${8*(a+1)-1}${n}) and < 2 ** ${8*(a+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new L.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){j(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||H(t,e.length-(r+1))}(n,i,a)}function j(e,t){if("number"!=typeof e)throw new L.ERR_INVALID_ARG_TYPE(t,"number",e)}function H(e,t,r){if(Math.floor(e)!==e)throw j(e,r),new L.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new L.ERR_BUFFER_OUT_OF_BOUNDS;throw new L.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}q("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),q("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),q("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=F(String(r)):"bigint"==typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=F(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const W=/[^+/0-9A-Za-z-_]/g;function V(e,t){let r;t=t||1/0;const n=e.length;let i=null;const a=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function G(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(W,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function $(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function J(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Z(e){return e!=e}const Y=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function X(e){return"undefined"==typeof BigInt?Q:e}function Q(){throw new Error("BigInt not supported")}},9996:e=>{"use strict";var t=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)},r="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?o((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function i(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function s(e,t){try{return t in e}catch(e){return!1}}function o(e,r,c){(c=c||{}).arrayMerge=c.arrayMerge||i,c.isMergeableObject=c.isMergeableObject||t,c.cloneUnlessOtherwiseSpecified=n;var u=Array.isArray(r);return u===Array.isArray(e)?u?c.arrayMerge(e,r,c):function(e,t,r){var i={};return r.isMergeableObject(e)&&a(e).forEach((function(t){i[t]=n(e[t],r)})),a(t).forEach((function(a){(function(e,t){return s(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,a)||(s(e,a)&&r.isMergeableObject(t[a])?i[a]=function(e,t){if(!t.customMerge)return o;var r=t.customMerge(e);return"function"==typeof r?r:o}(a,r)(e[a],t[a],r):i[a]=n(t[a],r))})),i}(e,r,c):n(r,c)}o.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return o(e,r,t)}),{})};var c=o;e.exports=c},7837:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.attributeNames=t.elementNames=void 0,t.elementNames=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((function(e){return[e.toLowerCase(),e]}))),t.attributeNames=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((function(e){return[e.toLowerCase(),e]})))},7220:function(e,t,r){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r");case o.Comment:return"\x3c!--".concat(e.data,"--\x3e");case o.CDATA:return function(e){return"")}(e);case o.Script:case o.Style:case o.Tag:return function(e,t){var r;"foreign"===t.xmlMode&&(e.name=null!==(r=u.elementNames.get(e.name))&&void 0!==r?r:e.name,e.parent&&y.has(e.parent.name)&&(t=n(n({},t),{xmlMode:!1}))),!t.xmlMode&&g.has(e.name)&&(t=n(n({},t),{xmlMode:"foreign"}));var i="<".concat(e.name),a=function(e,t){var r;if(e){var n=!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)?h:t.xmlMode||"utf8"!==t.encodeEntities?c.encodeXML:c.escapeAttribute;return Object.keys(e).map((function(r){var i,a,s=null!==(i=e[r])&&void 0!==i?i:"";return"foreign"===t.xmlMode&&(r=null!==(a=u.attributeNames.get(r))&&void 0!==a?a:r),t.emptyAttrs||t.xmlMode||""!==s?"".concat(r,'="').concat(n(s),'"'):r})).join(" ")}}(e.attribs,t);return a&&(i+=" ".concat(a)),0===e.children.length&&(t.xmlMode?!1!==t.selfClosingTags:t.selfClosingTags&&d.has(e.name))?(t.xmlMode||(i+=" "),i+="/>"):(i+=">",e.children.length>0&&(i+=f(e.children,t)),!t.xmlMode&&d.has(e.name)||(i+=""))),i}(e,t);case o.Text:return function(e,t){var r,n=e.data||"";return!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)||!t.xmlMode&&e.parent&&l.has(e.parent.name)||(n=t.xmlMode||"utf8"!==t.encodeEntities?(0,c.encodeXML)(n):(0,c.escapeText)(n)),n}(e,t)}}t.render=f,t.default=f;var y=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),g=new Set(["svg","math"])},9960:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(r=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===r.Tag||e.type===r.Script||e.type===r.Style},t.Root=r.Root,t.Text=r.Text,t.Directive=r.Directive,t.Comment=r.Comment,t.Script=r.Script,t.Style=r.Style,t.Tag=r.Tag,t.CDATA=r.CDATA,t.Doctype=r.Doctype},7915:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var a=r(9960),s=r(7790);i(r(7790),t);var o={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},c=function(){function e(e,t,r){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(r=t,t=o),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:o,this.elementCB=null!=r?r:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new s.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var r=this.options.xmlMode?a.ElementType.Tag:void 0,n=new s.Element(e,t,void 0,r);this.addNode(n),this.tagStack.push(n)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===a.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var r=new s.Text(e);this.addNode(r),this.lastNode=r}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===a.ElementType.Comment)this.lastNode.data+=e;else{var t=new s.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new s.Text(""),t=new s.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var r=new s.ProcessingInstruction(e,t);this.addNode(r)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],r=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),r&&(e.prev=r,r.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=c,t.default=c},7790:function(e,t,r){"use strict";var n,i=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(o);t.NodeWithChildren=d;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.CDATA,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(d);t.CDATA=f;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=s.ElementType.Root,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(d);t.Document=p;var y=function(e){function t(t,r,n,i){void 0===n&&(n=[]),void 0===i&&(i="script"===t?s.ElementType.Script:"style"===t?s.ElementType.Style:s.ElementType.Tag);var a=e.call(this,n)||this;return a.name=t,a.attribs=r,a.type=i,a}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var r,n;return{name:t,value:e.attribs[t],namespace:null===(r=e["x-attribsNamespace"])||void 0===r?void 0:r[t],prefix:null===(n=e["x-attribsPrefix"])||void 0===n?void 0:n[t]}}))},enumerable:!1,configurable:!0}),t}(d);function g(e){return(0,s.isTag)(e)}function m(e){return e.type===s.ElementType.CDATA}function b(e){return e.type===s.ElementType.Text}function w(e){return e.type===s.ElementType.Comment}function v(e){return e.type===s.ElementType.Directive}function k(e){return e.type===s.ElementType.Root}function A(e,t){var r;if(void 0===t&&(t=!1),b(e))r=new u(e.data);else if(w(e))r=new l(e.data);else if(g(e)){var n=t?_(e.children):[],i=new y(e.name,a({},e.attribs),n);n.forEach((function(e){return e.parent=i})),null!=e.namespace&&(i.namespace=e.namespace),e["x-attribsNamespace"]&&(i["x-attribsNamespace"]=a({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(i["x-attribsPrefix"]=a({},e["x-attribsPrefix"])),r=i}else if(m(e)){n=t?_(e.children):[];var s=new f(n);n.forEach((function(e){return e.parent=s})),r=s}else if(k(e)){n=t?_(e.children):[];var o=new p(n);n.forEach((function(e){return e.parent=o})),e["x-mode"]&&(o["x-mode"]=e["x-mode"]),r=o}else{if(!v(e))throw new Error("Not implemented yet: ".concat(e.type));var c=new h(e.name,e.data);null!=e["x-name"]&&(c["x-name"]=e["x-name"],c["x-publicId"]=e["x-publicId"],c["x-systemId"]=e["x-systemId"]),r=c}return r.startIndex=e.startIndex,r.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function _(e){for(var t=e.map((function(e){return A(e,!0)})),r=1;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFeed=void 0;var n=r(3346),i=r(3905);t.getFeed=function(e){var t=c(h,e);return t?"feed"===t.name?function(e){var t,r=e.children,n={type:"atom",items:(0,i.getElementsByTagName)("entry",r).map((function(e){var t,r=e.children,n={media:o(r)};l(n,"id","id",r),l(n,"title","title",r);var i=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;i&&(n.link=i);var a=u("summary",r)||u("content",r);a&&(n.description=a);var s=u("updated",r);return s&&(n.pubDate=new Date(s)),n}))};l(n,"id","id",r),l(n,"title","title",r);var a=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;a&&(n.link=a),l(n,"description","subtitle",r);var s=u("updated",r);return s&&(n.updated=new Date(s)),l(n,"author","email",r,!0),n}(t):function(e){var t,r,n=null!==(r=null===(t=c("channel",e.children))||void 0===t?void 0:t.children)&&void 0!==r?r:[],a={type:e.name.substr(0,3),id:"",items:(0,i.getElementsByTagName)("item",e.children).map((function(e){var t=e.children,r={media:o(t)};l(r,"id","guid",t),l(r,"title","title",t),l(r,"link","link",t),l(r,"description","description",t);var n=u("pubDate",t)||u("dc:date",t);return n&&(r.pubDate=new Date(n)),r}))};l(a,"title","title",n),l(a,"link","link",n),l(a,"description","description",n);var s=u("lastBuildDate",n);return s&&(a.updated=new Date(s)),l(a,"author","managingEditor",n,!0),a}(t):null};var a=["url","type","lang"],s=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function o(e){return(0,i.getElementsByTagName)("media:content",e).map((function(e){for(var t=e.attribs,r={medium:t.medium,isDefault:!!t.isDefault},n=0,i=a;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.uniqueSort=t.compareDocumentPosition=t.DocumentPosition=t.removeSubsets=void 0;var n,i=r(7915);function a(e,t){var r=[],a=[];if(e===t)return 0;for(var s=(0,i.hasChildren)(e)?e:e.parent;s;)r.unshift(s),s=s.parent;for(s=(0,i.hasChildren)(t)?t:t.parent;s;)a.unshift(s),s=s.parent;for(var o=Math.min(r.length,a.length),c=0;cl.indexOf(d)?u===t?n.FOLLOWING|n.CONTAINED_BY:n.FOLLOWING:u===e?n.PRECEDING|n.CONTAINS:n.PRECEDING}t.removeSubsets=function(e){for(var t=e.length;--t>=0;){var r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0)e.splice(t,1);else for(var n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e},function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"}(n=t.DocumentPosition||(t.DocumentPosition={})),t.compareDocumentPosition=a,t.uniqueSort=function(e){return(e=e.filter((function(e,t,r){return!r.includes(e,t+1)}))).sort((function(e,t){var r=a(e,t);return r&n.PRECEDING?-1:r&n.FOLLOWING?1:0})),e}},9432:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=t.isDocument=t.isComment=t.isText=t.isCDATA=t.isTag=void 0,i(r(3346),t),i(r(5010),t),i(r(6765),t),i(r(8043),t),i(r(3905),t),i(r(4975),t),i(r(6996),t);var a=r(7915);Object.defineProperty(t,"isTag",{enumerable:!0,get:function(){return a.isTag}}),Object.defineProperty(t,"isCDATA",{enumerable:!0,get:function(){return a.isCDATA}}),Object.defineProperty(t,"isText",{enumerable:!0,get:function(){return a.isText}}),Object.defineProperty(t,"isComment",{enumerable:!0,get:function(){return a.isComment}}),Object.defineProperty(t,"isDocument",{enumerable:!0,get:function(){return a.isDocument}}),Object.defineProperty(t,"hasChildren",{enumerable:!0,get:function(){return a.hasChildren}})},3905:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getElementsByTagType=t.getElementsByTagName=t.getElementById=t.getElements=t.testElement=void 0;var n=r(7915),i=r(8043),a={tag_name:function(e){return"function"==typeof e?function(t){return(0,n.isTag)(t)&&e(t.name)}:"*"===e?n.isTag:function(t){return(0,n.isTag)(t)&&t.name===e}},tag_type:function(e){return"function"==typeof e?function(t){return e(t.type)}:function(t){return t.type===e}},tag_contains:function(e){return"function"==typeof e?function(t){return(0,n.isText)(t)&&e(t.data)}:function(t){return(0,n.isText)(t)&&t.data===e}}};function s(e,t){return"function"==typeof t?function(r){return(0,n.isTag)(r)&&t(r.attribs[e])}:function(r){return(0,n.isTag)(r)&&r.attribs[e]===t}}function o(e,t){return function(r){return e(r)||t(r)}}function c(e){var t=Object.keys(e).map((function(t){var r=e[t];return Object.prototype.hasOwnProperty.call(a,t)?a[t](r):s(t,r)}));return 0===t.length?null:t.reduce(o)}t.testElement=function(e,t){var r=c(e);return!r||r(t)},t.getElements=function(e,t,r,n){void 0===n&&(n=1/0);var a=c(e);return a?(0,i.filter)(a,t,r,n):[]},t.getElementById=function(e,t,r){return void 0===r&&(r=!0),Array.isArray(t)||(t=[t]),(0,i.findOne)(s("id",e),t,r)},t.getElementsByTagName=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_name(e),t,r,n)},t.getElementsByTagType=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_type(e),t,r,n)}},6765:(e,t)=>{"use strict";function r(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){var t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}Object.defineProperty(t,"__esModule",{value:!0}),t.prepend=t.prependChild=t.append=t.appendChild=t.replaceElement=t.removeElement=void 0,t.removeElement=r,t.replaceElement=function(e,t){var r=t.prev=e.prev;r&&(r.next=t);var n=t.next=e.next;n&&(n.prev=t);var i=t.parent=e.parent;if(i){var a=i.children;a[a.lastIndexOf(e)]=t,e.parent=null}},t.appendChild=function(e,t){if(r(t),t.next=null,t.parent=e,e.children.push(t)>1){var n=e.children[e.children.length-2];n.next=t,t.prev=n}else t.prev=null},t.append=function(e,t){r(t);var n=e.parent,i=e.next;if(t.next=i,t.prev=e,e.next=t,t.parent=n,i){if(i.prev=t,n){var a=n.children;a.splice(a.lastIndexOf(i),0,t)}}else n&&n.children.push(t)},t.prependChild=function(e,t){if(r(t),t.parent=e,t.prev=null,1!==e.children.unshift(t)){var n=e.children[1];n.prev=t,t.next=n}else t.next=null},t.prepend=function(e,t){r(t);var n=e.parent;if(n){var i=n.children;i.splice(i.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=n,t.prev=e.prev,t.next=e,e.prev=t}},8043:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findAll=t.existsOne=t.findOne=t.findOneChild=t.find=t.filter=void 0;var n=r(7915);function i(e,t,r,i){for(var a=[],s=[t],o=[0];;)if(o[0]>=s[0].length){if(1===o.length)return a;s.shift(),o.shift()}else{var c=s[0][o[0]++];if(e(c)&&(a.push(c),--i<=0))return a;r&&(0,n.hasChildren)(c)&&c.children.length>0&&(o.unshift(0),s.unshift(c.children))}}t.filter=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),i(e,Array.isArray(t)?t:[t],r,n)},t.find=i,t.findOneChild=function(e,t){return t.find(e)},t.findOne=function e(t,r,i){void 0===i&&(i=!0);for(var a=null,s=0;s0&&(a=e(t,o.children,!0)))}return a},t.existsOne=function e(t,r){return r.some((function(r){return(0,n.isTag)(r)&&(t(r)||e(t,r.children))}))},t.findAll=function(e,t){for(var r=[],i=[t],a=[0];;)if(a[0]>=i[0].length){if(1===i.length)return r;i.shift(),a.shift()}else{var s=i[0][a[0]++];(0,n.isTag)(s)&&(e(s)&&r.push(s),s.children.length>0&&(a.unshift(0),i.unshift(s.children)))}}},3346:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.innerText=t.textContent=t.getText=t.getInnerHTML=t.getOuterHTML=void 0;var i=r(7915),a=n(r(7220)),s=r(9960);function o(e,t){return(0,a.default)(e,t)}t.getOuterHTML=o,t.getInnerHTML=function(e,t){return(0,i.hasChildren)(e)?e.children.map((function(e){return o(e,t)})).join(""):""},t.getText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.isTag)(t)?"br"===t.name?"\n":e(t.children):(0,i.isCDATA)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.textContent=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&!(0,i.isComment)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.innerText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&(t.type===s.ElementType.Tag||(0,i.isCDATA)(t))?e(t.children):(0,i.isText)(t)?t.data:""}},5010:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.prevElementSibling=t.nextElementSibling=t.getName=t.hasAttrib=t.getAttributeValue=t.getSiblings=t.getParent=t.getChildren=void 0;var n=r(7915);function i(e){return(0,n.hasChildren)(e)?e.children:[]}function a(e){return e.parent||null}t.getChildren=i,t.getParent=a,t.getSiblings=function(e){var t=a(e);if(null!=t)return i(t);for(var r=[e],n=e.prev,s=e.next;null!=n;)r.unshift(n),n=n.prev;for(;null!=s;)r.push(s),s=s.next;return r},t.getAttributeValue=function(e,t){var r;return null===(r=e.attribs)||void 0===r?void 0:r[t]},t.hasAttrib=function(e,t){return null!=e.attribs&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&null!=e.attribs[t]},t.getName=function(e){return e.name},t.nextElementSibling=function(e){for(var t=e.next;null!==t&&!(0,n.isTag)(t);)t=t.next;return t},t.prevElementSibling=function(e){for(var t=e.prev;null!==t&&!(0,n.isTag)(t);)t=t.prev;return t}},5046:(e,t,r)=>{var n=r(6128),i=r(3611);t.FALLBACK_CHARACTER=63;var a=t.HAS_TYPED="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array,s=!1,o=!1;try{"a"===String.fromCharCode.apply(null,[97])&&(s=!0)}catch(e){}if(a)try{"a"===String.fromCharCode.apply(null,new Uint8Array([97]))&&(o=!0)}catch(e){}t.CAN_CHARCODE_APPLY=s,t.CAN_CHARCODE_APPLY_TYPED=o,t.APPLY_BUFFER_SIZE=65533,t.APPLY_BUFFER_SIZE_OK=null;var c=t.EncodingNames={UTF32:{order:0},UTF32BE:{alias:["UCS4"]},UTF32LE:null,UTF16:{order:1},UTF16BE:{alias:["UCS2"]},UTF16LE:null,BINARY:{order:2},ASCII:{order:3,alias:["ISO646","CP367"]},JIS:{order:4,alias:["ISO2022JP"]},UTF8:{order:5},EUCJP:{order:6},SJIS:{order:7,alias:["CP932","MSKANJI","WINDOWS31J"]},UNICODE:{order:8}},u={};t.EncodingAliases=u,t.EncodingOrders=function(){for(var e,t,r,i,a=u,s=n.objectKeys(c),o=[],l=0,h=s.length;l95&&(i.JIS_TO_UTF8_TABLE[t]=0|e);for(i.JISX0212_TO_UTF8_TABLE={},s=(r=n.objectKeys(i.UTF8_TO_JISX0212_TABLE)).length,a=0;a{var n=r(5046),i=r(6128),a=r(7464),s=r(3611);function o(e){n.init_JIS_TO_UTF8_TABLE();for(var t,r,i,a,o,c,u,l=[],h=0,d=e&&e.length;h=161&&t<=223?(a=188|(i=t-64)>>6&3,o=128|63&i,l[l.length]=239,l[l.length]=255&a,l[l.length]=255&o):t>=128?(r=t<<1,(i=e[++h])<159?(r-=r<319?225:97,i-=i>126?32:31):(r-=r<319?224:96,i-=126),c=((r&=255)<<8)+i,void 0===(u=s.JIS_TO_UTF8_TABLE[c])?l[l.length]=n.FALLBACK_CHARACTER:u<65535?(l[l.length]=u>>8&255,l[l.length]=255&u):(l[l.length]=u>>16&255,l[l.length]=u>>8&255,l[l.length]=255&u)):l[l.length]=255&e[h];return l}function c(e){n.init_JIS_TO_UTF8_TABLE();for(var t,r,i,a,o,c,u=[],l=0,h=e&&e.length;l>6&3,a=128|63&r,u[u.length]=239,u[u.length]=255&i,u[u.length]=255&a):143===t?(o=(e[++l]-128<<8)+(e[++l]-128),void 0===(c=s.JISX0212_TO_UTF8_TABLE[o])?u[u.length]=n.FALLBACK_CHARACTER:c<65535?(u[u.length]=c>>8&255,u[u.length]=255&c):(u[u.length]=c>>16&255,u[u.length]=c>>8&255,u[u.length]=255&c)):t>=128?(o=(t-128<<8)+(e[++l]-128),void 0===(c=s.JIS_TO_UTF8_TABLE[o])?u[u.length]=n.FALLBACK_CHARACTER:c<65535?(u[u.length]=c>>8&255,u[u.length]=255&c):(u[u.length]=c>>16&255,u[u.length]=c>>8&255,u[u.length]=255&c)):u[u.length]=255&e[l];return u}function u(e){n.init_JIS_TO_UTF8_TABLE();for(var t,r,i,a,o,c=[],u=0,l=0,h=e&&e.length;l>8&255,c[c.length]=255&o):(c[c.length]=o>>16&255,c[c.length]=o>>8&255,c[c.length]=255&o)):2===u?(r=188|(t=e[l]+64)>>6&3,i=128|63&t,c[c.length]=239,c[c.length]=255&r,c[c.length]=255&i):3===u?(a=(e[l]<<8)+e[++l],void 0===(o=s.JISX0212_TO_UTF8_TABLE[a])?c[c.length]=n.FALLBACK_CHARACTER:o<65535?(c[c.length]=o>>8&255,c[c.length]=255&o):(c[c.length]=o>>16&255,c[c.length]=o>>8&255,c[c.length]=255&o)):c[c.length]=255&e[l]}return c}function l(e,t){for(var r,i,a,o,c,u,l=[],h=0,d=e&&e.length,f=t&&t.fallback;h=128?(r<=223?(o=[r,e[h+1]],c=(r<<8)+e[++h]):r<=239?(o=[r,e[h+1],e[h+2]],c=(r<<16)+(e[++h]<<8)+(255&e[++h])):(o=[r,e[h+1],e[h+2],e[h+3]],c=(r<<24)+(e[++h]<<16)+(e[++h]<<8)+(255&e[++h])),null==(u=s.UTF8_TO_JIS_TABLE[c])?f?C(l,o,f):l[l.length]=n.FALLBACK_CHARACTER:u<255?l[l.length]=u+128:(u>65536&&(u-=65536),a=255&u,1&(i=u>>8)?((i>>=1)<47?i+=113:i-=79,a+=a>95?32:31):((i>>=1)<=47?i+=112:i-=80,a+=126),l[l.length]=255&i,l[l.length]=255&a)):l[l.length]=255&e[h];return l}function h(e,t){for(var r,i,a,o,c=[],u=0,l=e&&e.length,h=t&&t.fallback;u=128?(r<=223?(i=[r,e[u+1]],a=(r<<8)+e[++u]):r<=239?(i=[r,e[u+1],e[u+2]],a=(r<<16)+(e[++u]<<8)+(255&e[++u])):(i=[r,e[u+1],e[u+2],e[u+3]],a=(r<<24)+(e[++u]<<16)+(e[++u]<<8)+(255&e[++u])),null==(o=s.UTF8_TO_JIS_TABLE[a])?null==(o=s.UTF8_TO_JISX0212_TABLE[a])?h?C(c,i,h):c[c.length]=n.FALLBACK_CHARACTER:(c[c.length]=143,c[c.length]=(o>>8)-128&255,c[c.length]=(255&o)-128&255):(o>65536&&(o-=65536),o<255?(c[c.length]=142,c[c.length]=o-128&255):(c[c.length]=(o>>8)-128&255,c[c.length]=(255&o)-128&255))):c[c.length]=255&e[u];return c}function d(e,t){for(var r,i,a,o,c=[],u=0,l=e&&e.length,h=0,d=t&&t.fallback,f=[27,40,66,27,36,66,27,40,73,27,36,40,68];h>8&255,c[c.length]=255&o):(o>65536&&(o-=65536),o<255?(2!==u&&(u=2,c[c.length]=f[6],c[c.length]=f[7],c[c.length]=f[8]),c[c.length]=255&o):(1!==u&&(u=1,c[c.length]=f[3],c[c.length]=f[4],c[c.length]=f[5]),c[c.length]=o>>8&255,c[c.length]=255&o)));return 0!==u&&(c[c.length]=f[0],c[c.length]=f[1],c[c.length]=f[2]),c}function f(e){for(var t,r,n=[],i=0,a=e&&e.length;i=55296&&t<=56319&&i+1=56320&&r<=57343&&(t=1024*(t-55296)+r-56320+65536,i++),t<128?n[n.length]=t:t<2048?(n[n.length]=192|t>>6&31,n[n.length]=128|63&t):t<65536?(n[n.length]=224|t>>12&15,n[n.length]=128|t>>6&63,n[n.length]=128|63&t):t<2097152&&(n[n.length]=240|t>>18&15,n[n.length]=128|t>>12&63,n[n.length]=128|t>>6&63,n[n.length]=128|63&t);return n}function p(e,t){for(var r,n,i,a=[],s=0,o=e&&e.length,c=t&&t.ignoreSurrogatePair;s>4)>=0&&r<=7?i=n:12===r||13===r?i=(31&n)<<6|63&e[s++]:14===r?i=(15&n)<<12|(63&e[s++])<<6|63&e[s++]:15===r&&(i=(7&n)<<18|(63&e[s++])<<12|(63&e[s++])<<6|63&e[s++]),i<=65535||c?a[a.length]=i:(i-=65536,a[a.length]=55296+(i>>10),a[a.length]=i%1024+56320);return a}function y(e,t){var r;if(t&&t.bom){var n,a,s=t.bom;i.isString(s)||(s="BE"),"B"===s.charAt(0).toUpperCase()?(n=[254,255],a=g(e)):(n=[255,254],a=m(e)),(r=[])[0]=n[0],r[1]=n[1];for(var o=0,c=a.length;o>8&255,r[r.length]=255&t);return r}function m(e){for(var t,r=[],n=0,i=e&&e.length;n>8&255);return r}function b(e){var t,r,n=[],i=0,a=e&&e.length;for(a>=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(i=2);i=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(i=2);i=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(i=2);i>=1)<47?t+=113:t-=79,r+=r>95?32:31):((t>>=1)<=47?t+=112:t-=80,r+=126),i[i.length]=255&t,i[i.length]=255&r):i[i.length]=2===a?e[s]+128&255:3===a?n.FALLBACK_CHARACTER:255&e[s]}return i},t.JISToEUCJP=function(e){for(var t=[],r=0,n=e&&e.length,i=0;i=161&&t<=223?(2!==i&&(i=2,n[n.length]=o[6],n[n.length]=o[7],n[n.length]=o[8]),n[n.length]=t-128&255):t>=128?(1!==i&&(i=1,n[n.length]=o[3],n[n.length]=o[4],n[n.length]=o[5]),t<<=1,(r=e[++s])<159?(t-=t<319?225:97,r-=r>126?32:31):(t-=t<319?224:96,r-=126),n[n.length]=255&t,n[n.length]=255&r):(0!==i&&(i=0,n[n.length]=o[0],n[n.length]=o[1],n[n.length]=o[2]),n[n.length]=255&t);return 0!==i&&(n[n.length]=o[0],n[n.length]=o[1],n[n.length]=o[2]),n},t.SJISToEUCJP=function(e){for(var t,r,n=[],i=e&&e.length,a=0;a=161&&t<=223?(n[n.length]=142,n[n.length]=t):t>=129?(t<<=1,(r=e[++a])<159?(t-=t<319?97:225,r+=r>126?96:97):(t-=t<319?96:224,r+=2),n[n.length]=255&t,n[n.length]=255&r):n[n.length]=255&t;return n},t.EUCJPToJIS=function(e){for(var t,r=[],n=0,i=e&&e.length,a=0,s=[27,40,66,27,36,66,27,40,73,27,36,40,68];a142?(1!==n&&(n=1,r[r.length]=s[3],r[r.length]=s[4],r[r.length]=s[5]),r[r.length]=t-128&255,r[r.length]=e[++a]-128&255):(0!==n&&(n=0,r[r.length]=s[0],r[r.length]=s[1],r[r.length]=s[2]),r[r.length]=255&t);return 0!==n&&(r[r.length]=s[0],r[r.length]=s[1],r[r.length]=s[2]),r},t.EUCJPToSJIS=function(e){for(var t,r,i=[],a=e&&e.length,s=0;s142?(r=e[++s],1&t?(t>>=1,t+=t<111?49:113,r-=r>223?96:97):(t>>=1,t+=t<=111?48:112,r-=2),i[i.length]=255&t,i[i.length]=255&r):i[i.length]=142===t?255&e[++s]:255&t;return i},t.SJISToUTF8=o,t.EUCJPToUTF8=c,t.JISToUTF8=u,t.UTF8ToSJIS=l,t.UTF8ToEUCJP=h,t.UTF8ToJIS=d,t.UNICODEToUTF8=f,t.UTF8ToUNICODE=p,t.UNICODEToUTF16=y,t.UNICODEToUTF16BE=g,t.UNICODEToUTF16LE=m,t.UTF16BEToUNICODE=b,t.UTF16LEToUNICODE=w,t.UTF16ToUNICODE=v,t.UTF16ToUTF16BE=function(e){for(var t,r,n=[],i=0,s=e&&e.length,o=!1,c=!0;i=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(l=2),r&&(c[0]=r[0],c[1]=r[1]);l=2&&(254===e[0]&&255===e[1]||255===e[0]&&254===e[1])&&(l=2),r&&(c[0]=r[0],c[1]=r[1]);l{t.isBINARY=function(e){for(var t,r=0,n=e&&e.length;r255)return!1;if(t>=0&&t<=7||255===t)return!0}return!1},t.isASCII=function(e){for(var t,r=0,n=e&&e.length;r255||t>=128&&t<=255||27===t)return!1;return!0},t.isJIS=function(e){for(var t,r,n,i=0,a=e&&e.length;i255||t>=128&&t<=255)return!1;if(27===t){if(i+2>=a)return!1;if(r=e[i+1],n=e[i+2],36===r){if(40===n||64===n||66===n)return!0}else{if(38===r&&64===n)return!0;if(40===r&&(66===n||73===n||74===n))return!0}}}return!1},t.isEUCJP=function(e){for(var t,r=0,n=e&&e.length;r255||t<142)return!1;if(142===t){if(r+1>=n)return!1;if((t=e[++r])<161||223=n)return!1;if((t=e[++r])<162||237=n)return!1;if((t=e[++r])<161||254128;)if(e[r++]>255)return!1;for(;r239||r+1>=n)return!1;if((t=e[++r])<64||127===t||t>252)return!1}return!0},t.isUTF8=function(e){for(var t,r=0,n=e&&e.length;r255)return!1;if(!(9===t||10===t||13===t||t>=32&&t<=126))if(t>=194&&t<=223){if(r+1>=n||e[r+1]<128||e[r+1]>191)return!1;r++}else if(224===t){if(r+2>=n||e[r+1]<160||e[r+1]>191||e[r+2]<128||e[r+2]>191)return!1;r+=2}else if(t>=225&&t<=236||238===t||239===t){if(r+2>=n||e[r+1]<128||e[r+1]>191||e[r+2]<128||e[r+2]>191)return!1;r+=2}else if(237===t){if(r+2>=n||e[r+1]<128||e[r+1]>159||e[r+2]<128||e[r+2]>191)return!1;r+=2}else if(240===t){if(r+3>=n||e[r+1]<144||e[r+1]>191||e[r+2]<128||e[r+2]>191||e[r+3]<128||e[r+3]>191)return!1;r+=3}else if(t>=241&&t<=243){if(r+3>=n||e[r+1]<128||e[r+1]>191||e[r+2]<128||e[r+2]>191||e[r+3]<128||e[r+3]>191)return!1;r+=3}else{if(244!==t)return!1;if(r+3>=n||e[r+1]<128||e[r+1]>143||e[r+2]<128||e[r+2]>191||e[r+3]<128||e[r+3]>191)return!1;r+=3}}return!0},t.isUTF16=function(e){var t,r,n,i,a=0,s=e&&e.length,o=null;if(s<2){if(e[0]>255)return!1}else{if(t=e[0],r=e[1],255===t&&254===r)return!0;if(254===t&&255===r)return!0;for(;a255)return!1}if(null===o)return!1;if(void 0!==(n=e[o+1])&&n>0&&n<128)return!0;if(void 0!==(i=e[o-1])&&i>0&&i<128)return!0}return!1},t.isUTF16BE=function(e){var t,r,n=0,i=e&&e.length,a=null;if(i<2){if(e[0]>255)return!1}else{if(t=e[0],r=e[1],254===t&&255===r)return!0;for(;n255)return!1}if(null===a)return!1;if(a%2==0)return!0}return!1},t.isUTF16LE=function(e){var t,r,n=0,i=e&&e.length,a=null;if(i<2){if(e[0]>255)return!1}else{if(t=e[0],r=e[1],255===t&&254===r)return!0;for(;n255)return!1}if(null===a)return!1;if(a%2!=0)return!0}return!1},t.isUTF32=function(e){var t,r,n,i,a,s,o=0,c=e&&e.length,u=null;if(c<4){for(;o255)return!1}else{if(t=e[0],r=e[1],n=e[2],i=e[3],0===t&&0===r&&254===n&&255===i)return!0;if(255===t&&254===r&&0===n&&0===i)return!0;for(;o255)return!1}if(null===u)return!1;if(void 0!==(a=e[u+3])&&a>0&&a<=127)return 0===e[u+2]&&0===e[u+1];if(void 0!==(s=e[u-1])&&s>0&&s<=127)return 0===e[u+1]&&0===e[u+2]}return!1},t.isUNICODE=function(e){for(var t,r=0,n=e&&e.length;r1114111)return!1;return!0}},3611:(e,t,r)=>{t.UTF8_TO_JIS_TABLE=r(5557),t.UTF8_TO_JISX0212_TABLE=r(5594),t.JIS_TO_UTF8_TABLE=r(6732),t.JISX0212_TO_UTF8_TABLE=r(2126)},5456:(e,t,r)=>{var n=r(5046),i=r(6128),a=r(7464),s=r(9555),o=r(4557),c=r(7726).i8,u=Object.prototype.hasOwnProperty,l={version:c,orders:n.EncodingOrders,detect:function(e,t){if(null==e||0===e.length)return!1;i.isObject(t)&&!i.isArray(t)&&(t=t.encoding),i.isString(e)&&(e=i.stringToBuffer(e)),null==t?t=l.orders:i.isString(t)&&(t="AUTO"===(t=t.toUpperCase())?l.orders:~t.indexOf(",")?t.split(/\s*,\s*/):[t]);for(var r,n,s,o=t.length,c=0;c255)return encodeURIComponent(i.codeToString_fast(e));t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||33===t||t>=39&&t<=42||45===t||46===t||95===t||126===t?n[n.length]=t:(n[n.length]=37,t<16?(n[n.length]=48,n[n.length]=r[t]):(n[n.length]=r[t>>4&15],n[n.length]=r[15&t]))}return i.codeToString_fast(n)},urlDecode:function(e){for(var t,r=[],n=0,i=e&&e.length;n=65281&&r<=65374&&(r-=65248),n[n.length]=r;return t?i.codeToString_fast(n):n},toZenkakuCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));for(var r,n=[],a=e&&e.length,s=0;s=33&&r<=126&&(r+=65248),n[n.length]=r;return t?i.codeToString_fast(n):n},toHiraganaCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));for(var r,n=[],a=e&&e.length,s=0;s=12449&&r<=12534?r-=96:12535===r?(n[n.length]=12431,r=12443):12538===r&&(n[n.length]=12434,r=12443),n[n.length]=r;return t?i.codeToString_fast(n):n},toKatakanaCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));for(var r,n=[],a=e&&e.length,s=0;s=12353&&r<=12438&&((12431===r||12434===r)&&s=12289&&r<=12540&&void 0!==(a=o.HANKANA_TABLE[r])?s[s.length]=a:12532===r||12535===r||12538===r?(s[s.length]=o.HANKANA_SONANTS[r],s[s.length]=65438):r>=12459&&r<=12489?(s[s.length]=o.HANKANA_TABLE[r-1],s[s.length]=65438):r>=12495&&r<=12509?(n=r%3,s[s.length]=o.HANKANA_TABLE[r-n],s[s.length]=o.HANKANA_MARKS[n-1]):s[s.length]=r;return t?i.codeToString_fast(s):s},toZenkanaCase:function(e){var t=!1;i.isString(e)&&(t=!0,e=i.stringToBuffer(e));var r,n,a,s=[],c=e&&e.length,u=0;for(u=0;u65376&&r<65440&&(n=o.ZENKANA_TABLE[r-65377],u+165397&&r<65413||r>65417&&r<65423)?(n++,u++):65439===a&&r>65417&&r<65423&&(n+=2,u++)),r=n),s[s.length]=r;return t?i.codeToString_fast(s):s},toHankakuSpace:function(e){if(i.isString(e))return e.replace(/\u3000/g," ");for(var t,r=[],n=e&&e.length,a=0;a{e.exports=null},2126:e=>{e.exports=null},4557:(e,t)=>{t.HANKANA_TABLE={12289:65380,12290:65377,12300:65378,12301:65379,12443:65438,12444:65439,12449:65383,12450:65393,12451:65384,12452:65394,12453:65385,12454:65395,12455:65386,12456:65396,12457:65387,12458:65397,12459:65398,12461:65399,12463:65400,12465:65401,12467:65402,12469:65403,12471:65404,12473:65405,12475:65406,12477:65407,12479:65408,12481:65409,12483:65391,12484:65410,12486:65411,12488:65412,12490:65413,12491:65414,12492:65415,12493:65416,12494:65417,12495:65418,12498:65419,12501:65420,12504:65421,12507:65422,12510:65423,12511:65424,12512:65425,12513:65426,12514:65427,12515:65388,12516:65428,12517:65389,12518:65429,12519:65390,12520:65430,12521:65431,12522:65432,12523:65433,12524:65434,12525:65435,12527:65436,12530:65382,12531:65437,12539:65381,12540:65392},t.HANKANA_SONANTS={12532:65395,12535:65436,12538:65382},t.HANKANA_MARKS=[65438,65439],t.ZENKANA_TABLE=[12290,12300,12301,12289,12539,12530,12449,12451,12453,12455,12457,12515,12517,12519,12483,12540,12450,12452,12454,12456,12458,12459,12461,12463,12465,12467,12469,12471,12473,12475,12477,12479,12481,12484,12486,12488,12490,12491,12492,12493,12494,12495,12498,12501,12504,12507,12510,12511,12512,12513,12514,12516,12518,12520,12521,12522,12523,12524,12525,12527,12531,12443,12444]},5557:e=>{e.exports={15711649:33,15711650:34,15711651:35,15711652:36,15711653:37,15711654:38,15711655:39,15711656:40,15711657:41,15711658:42,15711659:43,15711660:44,15711661:45,15711662:46,15711663:47,15711664:48,15711665:49,15711666:50,15711667:51,15711668:52,15711669:53,15711670:54,15711671:55,15711672:56,15711673:57,15711674:58,15711675:59,15711676:60,15711677:61,15711678:62,15711679:63,15711872:64,15711873:65,15711874:66,15711875:67,15711876:68,15711877:69,15711878:70,15711879:71,15711880:72,15711881:73,15711882:74,15711883:75,15711884:76,15711885:77,15711886:78,15711887:79,15711888:80,15711889:81,15711890:82,15711891:83,15711892:84,15711893:85,15711894:86,15711895:87,15711896:88,15711897:89,15711898:90,15711899:91,15711900:92,15711901:93,15711902:94,15711903:95,14848416:11553,14848417:11554,14848418:11555,14848419:11556,14848420:11557,14848421:11558,14848422:11559,14848423:11560,14848424:11561,14848425:11562,14848426:11563,14848427:11564,14848428:11565,14848429:11566,14848430:11567,14848431:11568,14848432:11569,14848433:11570,14848434:11571,14848435:11572,14845344:11573,14845345:11574,14845346:11575,14845347:11576,14845348:11577,14845349:11578,14845350:11579,14845351:11580,14845352:11581,14845353:11582,14912905:11584,14912660:11585,14912674:11586,14912909:11587,14912664:11588,14912679:11589,14912643:11590,14912694:11591,14912913:11592,14912919:11593,14912653:11594,14912678:11595,14912675:11596,14912683:11597,14912906:11598,14912699:11599,14913180:11600,14913181:11601,14913182:11602,14913166:11603,14913167:11604,14913412:11605,14913185:11606,14912955:11615,14909597:11616,14909599:11617,14845078:11618,14913421:11619,14845089:11620,14912164:11621,14912165:11622,14912166:11623,14912167:11624,14912168:11625,14911665:11626,14911666:11627,14911673:11628,14912958:11629,14912957:11630,14912956:11631,14846126:11635,14846097:11636,14846111:11640,14846655:11641,14909568:8481,14909569:8482,14909570:8483,15711372:8484,15711374:8485,14910395:8486,15711386:8487,15711387:8488,15711391:8489,15711361:8490,14910107:8491,14910108:8492,49844:8493,15711616:8494,49832:8495,15711422:8496,15712163:8497,15711423:8498,14910397:8499,14910398:8500,14910109:8501,14910110:8502,14909571:8503,14990237:8504,14909573:8505,14909574:8506,14909575:8507,14910396:8508,14844053:8509,14844048:8510,15711375:8511,15711420:8512,15711646:8513,14844054:8514,15711644:8515,14844070:8516,14844069:8517,14844056:8518,14844057:8519,14844060:8520,14844061:8521,15711368:8522,15711369:8523,14909588:8524,14909589:8525,15711419:8526,15711421:8527,15711643:8528,15711645:8529,14909576:8530,14909577:8531,14909578:8532,14909579:8533,14909580:8534,14909581:8535,14909582:8536,14909583:8537,14909584:8538,14909585:8539,15711371:8540,15711373:8541,49841:8542,50071:8543,50103:8544,15711389:8545,14846368:8546,15711388:8547,15711390:8548,14846374:8549,14846375:8550,14846110:8551,14846132:8552,14850434:8553,14850432:8554,49840:8555,14844082:8556,14844083:8557,14845059:8558,15712165:8559,15711364:8560,15712160:8561,15712161:8562,15711365:8563,15711363:8564,15711366:8565,15711370:8566,15711392:8567,49831:8568,14850182:8569,14850181:8570,14849931:8571,14849935:8572,14849934:8573,14849927:8574,14849926:8737,14849697:8738,14849696:8739,14849715:8740,14849714:8741,14849725:8742,14849724:8743,14844091:8744,14909586:8745,14845586:8746,14845584:8747,14845585:8748,14845587:8749,14909587:8750,14846088:8762,14846091:8763,14846598:8764,14846599:8765,14846594:8766,14846595:8767,14846122:8768,14846121:8769,14846119:8778,14846120:8779,49836:8780,14845842:8781,14845844:8782,14846080:8783,14846083:8784,14846112:8796,14846629:8797,14847122:8798,14846082:8799,14846087:8800,14846369:8801,14846354:8802,14846378:8803,14846379:8804,14846106:8805,14846141:8806,14846109:8807,14846133:8808,14846123:8809,14846124:8810,14845099:8818,14844080:8819,14850479:8820,14850477:8821,14850474:8822,14844064:8823,14844065:8824,49846:8825,14849967:8830,15711376:9008,15711377:9009,15711378:9010,15711379:9011,15711380:9012,15711381:9013,15711382:9014,15711383:9015,15711384:9016,15711385:9017,15711393:9025,15711394:9026,15711395:9027,15711396:9028,15711397:9029,15711398:9030,15711399:9031,15711400:9032,15711401:9033,15711402:9034,15711403:9035,15711404:9036,15711405:9037,15711406:9038,15711407:9039,15711408:9040,15711409:9041,15711410:9042,15711411:9043,15711412:9044,15711413:9045,15711414:9046,15711415:9047,15711416:9048,15711417:9049,15711418:9050,15711617:9057,15711618:9058,15711619:9059,15711620:9060,15711621:9061,15711622:9062,15711623:9063,15711624:9064,15711625:9065,15711626:9066,15711627:9067,15711628:9068,15711629:9069,15711630:9070,15711631:9071,15711632:9072,15711633:9073,15711634:9074,15711635:9075,15711636:9076,15711637:9077,15711638:9078,15711639:9079,15711640:9080,15711641:9081,15711642:9082,14909825:9249,14909826:9250,14909827:9251,14909828:9252,14909829:9253,14909830:9254,14909831:9255,14909832:9256,14909833:9257,14909834:9258,14909835:9259,14909836:9260,14909837:9261,14909838:9262,14909839:9263,14909840:9264,14909841:9265,14909842:9266,14909843:9267,14909844:9268,14909845:9269,14909846:9270,14909847:9271,14909848:9272,14909849:9273,14909850:9274,14909851:9275,14909852:9276,14909853:9277,14909854:9278,14909855:9279,14909856:9280,14909857:9281,14909858:9282,14909859:9283,14909860:9284,14909861:9285,14909862:9286,14909863:9287,14909864:9288,14909865:9289,14909866:9290,14909867:9291,14909868:9292,14909869:9293,14909870:9294,14909871:9295,14909872:9296,14909873:9297,14909874:9298,14909875:9299,14909876:9300,14909877:9301,14909878:9302,14909879:9303,14909880:9304,14909881:9305,14909882:9306,14909883:9307,14909884:9308,14909885:9309,14909886:9310,14909887:9311,14910080:9312,14910081:9313,14910082:9314,14910083:9315,14910084:9316,14910085:9317,14910086:9318,14910087:9319,14910088:9320,14910089:9321,14910090:9322,14910091:9323,14910092:9324,14910093:9325,14910094:9326,14910095:9327,14910096:9328,14910097:9329,14910098:9330,14910099:9331,14910113:9505,14910114:9506,14910115:9507,14910116:9508,14910117:9509,14910118:9510,14910119:9511,14910120:9512,14910121:9513,14910122:9514,14910123:9515,14910124:9516,14910125:9517,14910126:9518,14910127:9519,14910128:9520,14910129:9521,14910130:9522,14910131:9523,14910132:9524,14910133:9525,14910134:9526,14910135:9527,14910136:9528,14910137:9529,14910138:9530,14910139:9531,14910140:9532,14910141:9533,14910142:9534,14910143:9535,14910336:9536,14910337:9537,14910338:9538,14910339:9539,14910340:9540,14910341:9541,14910342:9542,14910343:9543,14910344:9544,14910345:9545,14910346:9546,14910347:9547,14910348:9548,14910349:9549,14910350:9550,14910351:9551,14910352:9552,14910353:9553,14910354:9554,14910355:9555,14910356:9556,14910357:9557,14910358:9558,14910359:9559,14910360:9560,14910361:9561,14910362:9562,14910363:9563,14910364:9564,14910365:9565,14910366:9566,14910367:9567,14910368:9568,14910369:9569,14910370:9570,14910371:9571,14910372:9572,14910373:9573,14910374:9574,14910375:9575,14910376:9576,14910377:9577,14910378:9578,14910379:9579,14910380:9580,14910381:9581,14910382:9582,14910383:9583,14910384:9584,14910385:9585,14910386:9586,14910387:9587,14910388:9588,14910389:9589,14910390:9590,52881:9761,52882:9762,52883:9763,52884:9764,52885:9765,52886:9766,52887:9767,52888:9768,52889:9769,52890:9770,52891:9771,52892:9772,52893:9773,52894:9774,52895:9775,52896:9776,52897:9777,52899:9778,52900:9779,52901:9780,52902:9781,52903:9782,52904:9783,52905:9784,52913:9793,52914:9794,52915:9795,52916:9796,52917:9797,52918:9798,52919:9799,52920:9800,52921:9801,52922:9802,52923:9803,52924:9804,52925:9805,52926:9806,52927:9807,53120:9808,53121:9809,53123:9810,53124:9811,53125:9812,53126:9813,53127:9814,53128:9815,53129:9816,53392:10017,53393:10018,53394:10019,53395:10020,53396:10021,53397:10022,53377:10023,53398:10024,53399:10025,53400:10026,53401:10027,53402:10028,53403:10029,53404:10030,53405:10031,53406:10032,53407:10033,53408:10034,53409:10035,53410:10036,53411:10037,53412:10038,53413:10039,53414:10040,53415:10041,53416:10042,53417:10043,53418:10044,53419:10045,53420:10046,53421:10047,53422:10048,53423:10049,53424:10065,53425:10066,53426:10067,53427:10068,53428:10069,53429:10070,53649:10071,53430:10072,53431:10073,53432:10074,53433:10075,53434:10076,53435:10077,53436:10078,53437:10079,53438:10080,53439:10081,53632:10082,53633:10083,53634:10084,53635:10085,53636:10086,53637:10087,53638:10088,53639:10089,53640:10090,53641:10091,53642:10092,53643:10093,53644:10094,53645:10095,53646:10096,53647:10097,14849152:10273,14849154:10274,14849164:10275,14849168:10276,14849176:10277,14849172:10278,14849180:10279,14849196:10280,14849188:10281,14849204:10282,14849212:10283,14849153:10284,14849155:10285,14849167:10286,14849171:10287,14849179:10288,14849175:10289,14849187:10290,14849203:10291,14849195:10292,14849211:10293,14849419:10294,14849184:10295,14849199:10296,14849192:10297,14849207:10298,14849215:10299,14849181:10300,14849200:10301,14849189:10302,14849208:10303,14849410:10304,14989980:12321,15045782:12322,15050883:12323,15308991:12324,15045504:12325,15107227:12326,15109288:12327,15050678:12328,15302818:12329,15241653:12330,15240348:12331,15182224:12332,15106730:12333,15110049:12334,15120549:12335,15112109:12336,15241638:12337,15239846:12338,15314869:12339,15114899:12340,15047847:12341,15111841:12342,15108529:12343,15052443:12344,15050640:12345,15243707:12346,15311796:12347,15185314:12348,15185598:12349,15314574:12350,15108246:12351,15184543:12352,15246007:12353,15052425:12354,15055541:12355,15109257:12356,15112855:12357,15114632:12358,15308679:12359,15310477:12360,15113615:12361,14990245:12362,14990474:12363,14990733:12364,14991005:12365,15040905:12366,15047602:12367,15049911:12368,15050644:12369,15050881:12370,15052937:12371,15106975:12372,15107215:12373,15107504:12374,15112339:12375,15115397:12376,15172282:12377,15177103:12378,15177136:12379,15181755:12380,15185581:12381,15185839:12382,15238019:12383,15241358:12384,15245731:12385,15248514:12386,15303061:12387,15303098:12388,15043771:12389,14989973:12390,14989989:12391,15048607:12392,15237810:12393,15303553:12394,15180719:12395,14989440:12396,15049649:12397,15121058:12398,15302840:12399,15182002:12400,15240360:12401,15239819:12402,15315119:12403,15041921:12404,15044016:12405,15045309:12406,15045537:12407,15047584:12408,15050683:12409,15056021:12410,15311794:12411,15120299:12412,15238052:12413,15242413:12414,15309218:12577,15309232:12578,15309472:12579,15310779:12580,15044747:12581,15044531:12582,15052423:12583,15172495:12584,15187645:12585,15253378:12586,15309736:12587,15044015:12588,15316380:12589,15182522:12590,14989457:12591,15180435:12592,15239100:12593,15120550:12594,15046808:12595,15045764:12596,15117469:12597,15242394:12598,15315131:12599,15050661:12600,15044265:12601,15119782:12602,15176604:12603,15308431:12604,15047042:12605,14989969:12606,15303051:12607,15309746:12608,15240591:12609,15312012:12610,15044513:12611,15046326:12612,15051952:12613,15056305:12614,15112352:12615,15113139:12616,15114372:12617,15118520:12618,15119283:12619,15119529:12620,15176091:12621,15178632:12622,15182222:12623,15311028:12624,15240113:12625,15245723:12626,15247776:12627,15305645:12628,15120050:12629,15177387:12630,15178634:12631,15312773:12632,15106726:12633,15248513:12634,15251082:12635,15308466:12636,15115918:12637,15044269:12638,15042182:12639,15047826:12640,15048880:12641,15050116:12642,15052468:12643,15055798:12644,15106216:12645,15109801:12646,15110068:12647,15119039:12648,15121556:12649,15172238:12650,15172756:12651,15173017:12652,15173525:12653,15174847:12654,15186049:12655,15239606:12656,15240081:12657,15242903:12658,15303072:12659,15305115:12660,15316123:12661,15049129:12662,15111868:12663,15118746:12664,15176869:12665,15042489:12666,15049902:12667,15050149:12668,15056512:12669,15056796:12670,15108796:12833,15112122:12834,15116458:12835,15117479:12836,15118004:12837,15175307:12838,15187841:12839,15246742:12840,15316140:12841,15316110:12842,15317892:12843,15053473:12844,15118998:12845,15240635:12846,15041668:12847,15053195:12848,15107766:12849,15239046:12850,15114678:12851,15174049:12852,14989721:12853,14991290:12854,15044024:12855,15106473:12856,15120553:12857,15182223:12858,15310771:12859,14989451:12860,15043734:12861,14990254:12862,14990741:12863,14990525:12864,14991009:12865,14990771:12866,15043232:12867,15044527:12868,15046793:12869,15049871:12870,15051649:12871,15052470:12872,15052705:12873,15181713:12874,15112839:12875,15113884:12876,15113910:12877,15117708:12878,15119027:12879,15172011:12880,15175554:12881,15181453:12882,15181502:12883,15182012:12884,15183495:12885,15239857:12886,15240091:12887,15240324:12888,15240631:12889,15241135:12890,15241107:12891,15244710:12892,15248050:12893,15046825:12894,15250088:12895,15253414:12896,15303054:12897,15309982:12898,15243914:12899,14991236:12900,15053736:12901,15108241:12902,15174041:12903,15176891:12904,15239077:12905,15239869:12906,15244222:12907,15250304:12908,15309701:12909,15312019:12910,15312789:12911,14990219:12912,14990490:12913,15247267:12914,15047582:12915,15049098:12916,15049610:12917,15055803:12918,15056811:12919,15106218:12920,15106708:12921,15106466:12922,15107984:12923,15108242:12924,15109008:12925,15111353:12926,15314305:13089,15112614:13090,15114928:13091,15119799:13092,15172016:13093,15177100:13094,15178374:13095,15185333:13096,15239845:13097,15245241:13098,15308427:13099,15309454:13100,15250077:13101,15042481:13102,15043262:13103,15049878:13104,15045299:13105,15052467:13106,15053974:13107,15107496:13108,15115906:13109,15120047:13110,15180429:13111,15242123:13112,15245719:13113,15247794:13114,15306407:13115,15313592:13116,15119788:13117,15312552:13118,15244185:13119,15048355:13120,15114175:13121,15244174:13122,15304846:13123,15043203:13124,15047303:13125,15044740:13126,15055763:13127,15109025:13128,15110841:13129,15114428:13130,15114424:13131,15118011:13132,15175090:13133,15180474:13134,15182251:13135,15247002:13136,15247250:13137,15250859:13138,15252611:13139,15303597:13140,15308451:13141,15309460:13142,15310249:13143,15052198:13144,15053491:13145,15115709:13146,15311245:13147,15311246:13148,15109787:13149,15183008:13150,15116459:13151,15116735:13152,15114934:13153,15315085:13154,15121823:13155,15042994:13156,15046301:13157,15106480:13158,15109036:13159,15119547:13160,15120519:13161,15121297:13162,15241627:13163,15246480:13164,15252868:13165,14989460:13166,15315129:13167,15044534:13168,15115419:13169,15116474:13170,15310468:13171,15114410:13172,15041948:13173,15182723:13174,15241906:13175,15304604:13176,15306380:13177,15047067:13178,15316136:13179,15114402:13180,15240325:13181,15241393:13182,15184549:13345,15042696:13346,15240069:13347,15176614:13348,14989758:13349,14990979:13350,15042208:13351,15052690:13352,15042698:13353,15043480:13354,15043495:13355,15054779:13356,15046298:13357,15048874:13358,15050662:13359,15052428:13360,15052440:13361,15052699:13362,15055282:13363,15055289:13364,15106723:13365,15107231:13366,15107491:13367,15107774:13368,15110043:13369,15111586:13370,15114129:13371,15114643:13372,15115194:13373,15117502:13374,15117715:13375,15118743:13376,15121570:13377,15122071:13378,15121797:13379,15176368:13380,15176856:13381,15178659:13382,15178891:13383,15182783:13384,15183521:13385,15184033:13386,15185833:13387,15187126:13388,15187888:13389,15237789:13390,15239590:13391,15240862:13392,15247027:13393,15248268:13394,15250091:13395,15303300:13396,15307153:13397,15308435:13398,15308433:13399,15308450:13400,15309221:13401,15310739:13402,15312040:13403,15239320:13404,14989496:13405,15044779:13406,15053496:13407,15054732:13408,15175337:13409,15178124:13410,15178940:13411,15053481:13412,15187883:13413,15250571:13414,15309697:13415,15310993:13416,15311252:13417,15311256:13418,14990465:13419,14990478:13420,15044017:13421,15046300:13422,15047080:13423,15048634:13424,15050119:13425,15051913:13426,15052676:13427,15053456:13428,15054988:13429,15055294:13430,15056780:13431,15110062:13432,15113402:13433,15112087:13434,15112098:13435,15113375:13436,15115147:13437,15115140:13438,15116703:13601,15055024:13602,15118213:13603,15118487:13604,15118781:13605,15177151:13606,15181192:13607,15052195:13608,15181952:13609,15185024:13610,15056573:13611,15246991:13612,15247512:13613,15250100:13614,15250871:13615,15252364:13616,15252637:13617,15311778:13618,15313038:13619,15314108:13620,14989952:13621,15040957:13622,15041664:13623,15050387:13624,15052444:13625,15108271:13626,15108736:13627,15111084:13628,15117498:13629,15174304:13630,15177361:13631,15181191:13632,15187625:13633,15245243:13634,15248060:13635,15248816:13636,15109804:13637,15241098:13638,15310496:13639,15044745:13640,15044739:13641,15046315:13642,15114644:13643,15116696:13644,15247792:13645,15179943:13646,15113653:13647,15317901:13648,15044020:13649,15052450:13650,15238298:13651,15243664:13652,15302790:13653,14989464:13654,14989701:13655,14990215:13656,14990481:13657,15044490:13658,15044792:13659,15052462:13660,15056019:13661,15106213:13662,15111569:13663,15113405:13664,15118722:13665,15118770:13666,15119267:13667,15172024:13668,15175811:13669,15182262:13670,15182510:13671,15182984:13672,15185050:13673,15184830:13674,15185318:13675,15112103:13676,15174043:13677,15044283:13678,15053189:13679,15054760:13680,15109010:13681,15109024:13682,15109273:13683,15120544:13684,15243674:13685,15247537:13686,15251357:13687,15305656:13688,15121537:13689,15181478:13690,15314330:13691,14989992:13692,14989995:13693,14989996:13694,14991003:13857,14991008:13858,15041425:13859,15041927:13860,15182774:13861,15041969:13862,15042486:13863,15043988:13864,15043745:13865,15044031:13866,15044523:13867,15046316:13868,15049347:13869,15053729:13870,15056055:13871,15056266:13872,15106223:13873,15106448:13874,15106477:13875,15109279:13876,15111577:13877,15116683:13878,15119233:13879,15174530:13880,15174573:13881,15179695:13882,15238072:13883,15238277:13884,15239304:13885,15242638:13886,15303607:13887,15306657:13888,15310783:13889,15312279:13890,15313306:13891,14990256:13892,15042461:13893,15052973:13894,15112833:13895,15115693:13896,15053184:13897,15113138:13898,15115701:13899,15175305:13900,15114640:13901,15184513:13902,15041413:13903,15043492:13904,15048071:13905,15054782:13906,15305894:13907,15111844:13908,15117475:13909,15117501:13910,15175860:13911,15181441:13912,15181501:13913,15183243:13914,15185802:13915,15239865:13916,15241100:13917,15245759:13918,15246751:13919,15248569:13920,15253393:13921,15304593:13922,15044767:13923,15305344:13924,14989725:13925,15040694:13926,15044517:13927,15043770:13928,15174551:13929,15175318:13930,15179689:13931,15240102:13932,15252143:13933,15312774:13934,15312776:13935,15312786:13936,15041975:13937,15107226:13938,15243678:13939,15046320:13940,15182266:13941,15040950:13942,15052691:13943,15303047:13944,15309445:13945,14989490:13946,15117211:13947,15304615:13948,15053201:13949,15053192:13950,15109784:14113,15182495:14114,15118995:14115,15310260:14116,15252897:14117,15182506:14118,15173258:14119,15309448:14120,15184514:14121,15114391:14122,15186352:14123,15114641:14124,15306156:14125,15043506:14126,15044763:14127,15242923:14128,15247507:14129,15187620:14130,15252365:14131,15303585:14132,15044006:14133,15245960:14134,15181185:14135,14991234:14136,15041214:14137,15042705:14138,15041924:14139,15046035:14140,15047853:14141,15175594:14142,15048331:14143,15050129:14144,15056290:14145,15056516:14146,15106485:14147,15107510:14148,15107495:14149,15107753:14150,15109810:14151,15110330:14152,15111596:14153,15112623:14154,15114626:14155,15120531:14156,15177126:14157,15182013:14158,15184827:14159,15185292:14160,15185561:14161,15186315:14162,15187371:14163,15240334:14164,15240586:14165,15244173:14166,15247496:14167,15247779:14168,15248806:14169,15252413:14170,15311002:14171,15316623:14172,15239864:14173,15253390:14174,15314856:14175,15043207:14176,15108255:14177,15110787:14178,15122304:14179,15309465:14180,15114625:14181,15041169:14182,15117472:14183,15118778:14184,15121812:14185,15182260:14186,15185296:14187,15245696:14188,15247523:14189,15113352:14190,14990262:14191,15040697:14192,15040678:14193,15040933:14194,15041980:14195,15042744:14196,15042979:14197,15046311:14198,15047823:14199,15048837:14200,15051660:14201,15055802:14202,15107762:14203,15108024:14204,15109043:14205,15109554:14206,15115420:14369,15116457:14370,15174077:14371,15174316:14372,15174830:14373,15179924:14374,15180207:14375,15185337:14376,15178892:14377,15237801:14378,15246987:14379,15248537:14380,15250338:14381,15252370:14382,15303075:14383,15306165:14384,15309242:14385,15311253:14386,15313043:14387,15317432:14388,15041923:14389,15044255:14390,15044275:14391,15055291:14392,15056038:14393,15120539:14394,15121040:14395,15175300:14396,15175614:14397,15185283:14398,15239351:14399,15247488:14400,15248314:14401,15309200:14402,14989710:14403,15040651:14404,15044516:14405,15045052:14406,15047610:14407,15050641:14408,15052196:14409,15054769:14410,15055531:14411,15056039:14412,15108280:14413,15111557:14414,15113903:14415,15120790:14416,15174544:14417,15184778:14418,15246004:14419,15237793:14420,15238049:14421,15241136:14422,15243662:14423,15248007:14424,15251368:14425,15304887:14426,15309703:14427,15311271:14428,15318163:14429,14989972:14430,14989970:14431,14990477:14432,15043976:14433,15045001:14434,15044798:14435,15050927:14436,15056524:14437,15056545:14438,15106719:14439,15114919:14440,15116942:14441,15176090:14442,15180417:14443,15248030:14444,15248036:14445,15248823:14446,15304336:14447,14989726:14448,15314825:14449,14989988:14450,14990780:14451,14991023:14452,15040665:14453,15040662:14454,15041929:14455,15041964:14456,15043231:14457,15043257:14458,15043518:14459,15044250:14460,15044515:14461,15044753:14462,15044750:14625,15046281:14626,15048081:14627,15048354:14628,15050173:14629,15052180:14630,15052189:14631,15052431:14632,15054757:14633,15054759:14634,15054775:14635,15055288:14636,15055491:14637,15055514:14638,15055543:14639,15056024:14640,15106450:14641,15107468:14642,15108759:14643,15109016:14644,15109799:14645,15111355:14646,15112322:14647,15112579:14648,15113140:14649,15113645:14650,15114401:14651,15114903:14652,15116171:14653,15118751:14654,15119530:14655,15119785:14656,15120559:14657,15121053:14658,15176882:14659,15178375:14660,15180204:14661,15182015:14662,15184800:14663,15185029:14664,15185048:14665,15185310:14666,15185585:14667,15237269:14668,15237251:14669,15237807:14670,15237809:14671,15238548:14672,15238799:14673,15239338:14674,15240594:14675,15245708:14676,15245729:14677,15248539:14678,15250082:14679,15250364:14680,15303562:14681,15304117:14682,15305137:14683,15179967:14684,15305660:14685,15308452:14686,15309197:14687,15310981:14688,15312537:14689,15313816:14690,15316155:14691,15042971:14692,15043243:14693,15044535:14694,15044744:14695,15049621:14696,15109047:14697,15122336:14698,15249834:14699,15252895:14700,15317689:14701,15041931:14702,15042747:14703,15045002:14704,15047613:14705,15182208:14706,15304119:14707,15316384:14708,15317906:14709,15175044:14710,15121545:14711,15238576:14712,15176849:14713,15056829:14714,15106970:14715,15313576:14716,15174555:14717,15253180:14718,15117732:14881,15310979:14882,14990218:14883,15047600:14884,15048100:14885,15049406:14886,15051162:14887,15106472:14888,15107975:14889,15112335:14890,15112326:14891,15114425:14892,15114929:14893,15120311:14894,15177621:14895,15185082:14896,15239598:14897,15314306:14898,14989979:14899,14990736:14900,15044489:14901,15045766:14902,15054255:14903,15054758:14904,15054766:14905,15114171:14906,15119001:14907,15176115:14908,15179906:14909,15247760:14910,15306390:14911,15246239:14912,15048080:14913,15055527:14914,15109291:14915,15041205:14916,15041196:14917,15042189:14918,15113344:14919,15045513:14920,15049118:14921,15050427:14922,15052464:14923,15056297:14924,15108493:14925,15109793:14926,15114429:14927,15117747:14928,15120520:14929,15172029:14930,15304583:14931,15174272:14932,15179925:14933,15179942:14934,15181229:14935,15111822:14936,15185072:14937,15241116:14938,15246209:14939,15252617:14940,15309467:14941,15042980:14942,15047848:14943,15113616:14944,15187370:14945,15250081:14946,15042228:14947,15048066:14948,15308970:14949,15048890:14950,15115914:14951,15237812:14952,15045298:14953,15053966:14954,15048636:14955,15180437:14956,15316922:14957,14990748:14958,15042954:14959,15045259:14960,15110334:14961,15112360:14962,15113364:14963,15114165:14964,15182468:14965,15183254:14966,15185058:14967,15305903:14968,15114652:14969,15314605:14970,15183033:14971,15043737:14972,15042186:14973,15042743:14974,15052703:15137,15109046:15138,15110830:15139,15111078:15140,15113389:15141,15118010:15142,15242921:15143,15309713:15144,15178384:15145,15314838:15146,15109516:15147,15305862:15148,15314603:15149,15178431:15150,15112594:15151,14989449:15152,15041176:15153,15044482:15154,15053233:15155,15106984:15156,15110802:15157,15111587:15158,15114655:15159,15173542:15160,15175562:15161,15176867:15162,15183511:15163,15186562:15164,15243925:15165,15249027:15166,15250331:15167,15304120:15168,15312016:15169,15111852:15170,15112875:15171,15117963:15172,14990229:15173,14990228:15174,14990522:15175,14990783:15176,15042746:15177,15044536:15178,15044530:15179,15046563:15180,15047579:15181,15049643:15182,15050635:15183,15050633:15184,15050687:15185,15052176:15186,15053197:15187,15054978:15188,15055019:15189,15056791:15190,15106205:15191,15109255:15192,15111343:15193,15052188:15194,15111855:15195,15111869:15196,15112104:15197,15113885:15198,15117730:15199,15117755:15200,15118479:15201,15175045:15202,15181193:15203,15181697:15204,15184824:15205,15185049:15206,15185067:15207,15237794:15208,15238274:15209,15239091:15210,15246998:15211,15247774:15212,15247785:15213,15247782:15214,15248012:15215,15248302:15216,15250311:15217,15250332:15218,15309708:15219,15311804:15220,15117743:15221,14989963:15222,14990524:15223,14990989:15224,15041936:15225,15052183:15226,15052730:15227,15107464:15228,15109249:15229,15112578:15230,15117473:15393,15121291:15394,15119035:15395,15173822:15396,15176381:15397,15177620:15398,15180673:15399,15180986:15400,15237260:15401,15237299:15402,15239082:15403,15241876:15404,15253150:15405,15118736:15406,15317439:15407,15056015:15408,15248792:15409,15316139:15410,15182778:15411,15252408:15412,15052429:15413,15309739:15414,14989443:15415,15044529:15416,15048631:15417,15049905:15418,15051657:15419,15052452:15420,15106697:15421,15120831:15422,15121542:15423,15177406:15424,15250346:15425,15052447:15426,15242368:15427,15183776:15428,15040946:15429,15114164:15430,15239837:15431,15053217:15432,15242634:15433,15186078:15434,15239310:15435,15042201:15436,15052932:15437,15109544:15438,15250854:15439,15111836:15440,15173038:15441,15180990:15442,15185047:15443,15237253:15444,15248541:15445,15252362:15446,15303086:15447,15244167:15448,15303338:15449,15040671:15450,15043514:15451,15052986:15452,15113619:15453,15172028:15454,15173813:15455,15304076:15456,15304584:15457,15305899:15458,15240101:15459,15052674:15460,15056049:15461,15107001:15462,14989499:15463,15044502:15464,15052424:15465,15108491:15466,15113393:15467,15117962:15468,15174569:15469,15175584:15470,15181998:15471,15238571:15472,15251107:15473,15304082:15474,15312534:15475,15041682:15476,15044503:15477,15045034:15478,15052735:15479,15109768:15480,15116473:15481,15185580:15482,15309952:15483,15047578:15484,15044494:15485,15045032:15486,15052439:15649,15052977:15650,15054750:15651,14991278:15652,15107201:15653,15109054:15654,15119538:15655,15181696:15656,15181707:15657,15185282:15658,15186317:15659,15187858:15660,15239085:15661,15239327:15662,15241872:15663,15245702:15664,15246770:15665,15249040:15666,15251892:15667,15252655:15668,15302833:15669,15304075:15670,15304108:15671,15309702:15672,15304348:15673,14990208:15674,14990735:15675,15041925:15676,15043969:15677,15056531:15678,15108238:15679,15114132:15680,15118721:15681,15120523:15682,15175075:15683,15186086:15684,15304589:15685,15305347:15686,15044500:15687,15049881:15688,15052479:15689,15120273:15690,15181213:15691,15186094:15692,15184539:15693,15049150:15694,15173279:15695,15042490:15696,15245715:15697,15253424:15698,14991242:15699,15053755:15700,15112357:15701,15179436:15702,15182755:15703,15239324:15704,15312831:15705,15042438:15706,15056554:15707,15112108:15708,15115695:15709,15117961:15710,15120307:15711,15121046:15712,15121828:15713,15178686:15714,15185044:15715,15054753:15716,15303093:15717,15304327:15718,15310982:15719,15042470:15720,15042717:15721,15108480:15722,15112849:15723,15113113:15724,15120538:15725,15055542:15726,15185810:15727,15187378:15728,15113144:15729,15242927:15730,15243191:15731,15248312:15732,15043241:15733,15044505:15734,15050163:15735,15055503:15736,15056528:15737,15106453:15738,15305636:15739,15309220:15740,15041207:15741,15041695:15742,15043485:15905,15043744:15906,15043975:15907,15044524:15908,15045544:15909,15046022:15910,15045809:15911,15046807:15912,15050152:15913,15050430:15914,15050940:15915,15052469:15916,15052934:15917,15052943:15918,15052945:15919,15052954:15920,15055492:15921,15055498:15922,15055776:15923,15056304:15924,15108543:15925,15108740:15926,15109019:15927,15109772:15928,15109559:15929,15112327:15930,15112332:15931,15112365:15932,15112630:15933,15113662:15934,15114914:15935,15116447:15936,15116469:15937,15119036:15938,15120008:15939,15120521:15940,15120792:15941,15172796:15942,15172774:15943,15173031:15944,15177607:15945,15178881:15946,15180189:15947,15180929:15948,15181221:15949,15181744:15950,15182752:15951,15182993:15952,15184551:15953,15185081:15954,15237782:15955,15241110:15956,15241867:15957,15242633:15958,15245725:15959,15246259:15960,15247519:15961,15247548:15962,15247764:15963,15247795:15964,15249825:15965,15250334:15966,15304356:15967,15305126:15968,15306174:15969,15306904:15970,15309468:15971,15310488:15972,14989450:15973,14989448:15974,14989470:15975,14989719:15976,15042199:15977,15042992:15978,15048590:15979,15048884:15980,15049612:15981,15051938:15982,15055032:15983,15106949:15984,15111102:15985,15113633:15986,15113622:15987,15119748:15988,15174326:15989,15177139:15990,15182243:15991,15241912:15992,15248818:15993,15304376:15994,15305888:15995,15046833:15996,15048628:15997,15311806:15998,15109037:16161,15115405:16162,15117974:16163,15173549:16164,15186324:16165,15237559:16166,15239602:16167,15247270:16168,15311775:16169,15244693:16170,15253169:16171,15052987:16172,14990520:16173,14991265:16174,14991029:16175,15045767:16176,15050912:16177,15052701:16178,15052713:16179,15056771:16180,15107470:16181,15109295:16182,15111856:16183,15112587:16184,15115182:16185,15115931:16186,15119800:16187,15120305:16188,15176883:16189,15177401:16190,15178911:16191,15181214:16192,15181734:16193,15185075:16194,15239075:16195,15239855:16196,15242922:16197,15247018:16198,15247546:16199,15252139:16200,15253147:16201,15302834:16202,15304605:16203,15309959:16204,14990010:16205,14990209:16206,15042691:16207,15049141:16208,15049644:16209,15052939:16210,15176858:16211,15052989:16212,15238542:16213,15247498:16214,15253381:16215,15309219:16216,15310253:16217,15183013:16218,15248271:16219,15310984:16220,15304098:16221,15047603:16222,15044264:16223,15302807:16224,15044793:16225,15048322:16226,15055013:16227,15109800:16228,15118516:16229,15172234:16230,15179169:16231,15184523:16232,15187872:16233,15245744:16234,15303042:16235,15304084:16236,15305872:16237,15305880:16238,15309455:16239,15176094:16240,15313796:16241,15053959:16242,15054249:16243,15111600:16244,15113890:16245,15251112:16246,15309723:16247,15109550:16248,15113609:16249,15115417:16250,15241093:16251,15310999:16252,15309696:16253,15246270:16254,15122052:16417,15110586:16418,15052728:16419,14989462:16420,15171756:16421,15177117:16422,15112367:16423,15042436:16424,15042742:16425,15043490:16426,15050643:16427,15056513:16428,15106215:16429,15108240:16430,15111359:16431,15111604:16432,15112351:16433,15112628:16434,15115186:16435,15114390:16436,15117731:16437,15120517:16438,15174066:16439,15176863:16440,15178651:16441,15184574:16442,15237526:16443,15049648:16444,15246269:16445,15246783:16446,15248032:16447,15248019:16448,15248267:16449,15302813:16450,15304338:16451,15310226:16452,15310233:16453,15111817:16454,15181966:16455,15238278:16456,15309499:16457,15055021:16458,15106972:16459,15108250:16460,15111845:16461,15112340:16462,15113872:16463,15179699:16464,15182221:16465,15184269:16466,15186110:16467,15238282:16468,15250092:16469,15250852:16470,15251361:16471,15251871:16472,15180457:16473,15042695:16474,15109017:16475,15109797:16476,15110530:16477,15108760:16478,15247533:16479,15182467:16480,15183744:16481,15248044:16482,15309738:16483,15185334:16484,15239308:16485,15244681:16486,14990233:16487,15041928:16488,15043971:16489,15044e3:16490,15052451:16491,15052930:16492,15052950:16493,15054749:16494,15108262:16495,15108487:16496,15110832:16497,15114387:16498,15114420:16499,15119241:16500,15119749:16501,15119511:16502,15114131:16503,15121820:16504,15173006:16505,15173053:16506,15112075:16507,15182271:16508,15183533:16509,15185818:16510,15186314:16673,15187624:16674,15238586:16675,15239323:16676,15239353:16677,15242918:16678,15247790:16679,15250318:16680,15251381:16681,15303096:16682,15303095:16683,15305389:16684,15305361:16685,15308419:16686,15314606:16687,15042957:16688,15046276:16689,15121592:16690,15172790:16691,15041960:16692,15181445:16693,15186325:16694,15238835:16695,15184782:16696,15047052:16697,15049105:16698,15053480:16699,15109802:16700,15113150:16701,15113149:16702,15115674:16703,15174553:16704,15177359:16705,15177358:16706,15180942:16707,15181206:16708,15181727:16709,15184535:16710,15185056:16711,15185284:16712,15243399:16713,15247540:16714,15308987:16715,15303073:16716,15318176:16717,15041447:16718,15042997:16719,15044492:16720,15044514:16721,15040649:16722,15046314:16723,15049646:16724,15050127:16725,15173821:16726,15052427:16727,15053220:16728,15043741:16729,15106979:16730,15106995:16731,15109532:16732,15109763:16733,15109311:16734,15109819:16735,15111053:16736,15112105:16737,15113145:16738,15054755:16739,15116173:16740,15116221:16741,15121557:16742,15173541:16743,14989961:16744,15177641:16745,15178680:16746,15182483:16747,15184799:16748,15185807:16749,15185564:16750,15237537:16751,15240585:16752,15240600:16753,15241644:16754,15241916:16755,15243195:16756,15246213:16757,15250864:16758,15302785:16759,15303085:16760,15306391:16761,15309980:16762,15313042:16763,15041423:16764,15049367:16765,15107726:16766,15239059:16929,15242421:16930,15250568:16931,15302816:16932,14991235:16933,15040948:16934,15042951:16935,15044019:16936,15106479:16937,15109513:16938,15113631:16939,15120556:16940,15251123:16941,15302815:16942,14991255:16943,15053214:16944,15250314:16945,15112079:16946,15185562:16947,15043986:16948,15245974:16949,15041974:16950,15110019:16951,15052184:16952,15052203:16953,15052938:16954,15110285:16955,15113617:16956,15303068:16957,14990230:16958,15049882:16959,15049898:16960,15118768:16961,15247761:16962,15045822:16963,15048853:16964,15050405:16965,15106992:16966,15108499:16967,15114113:16968,15239349:16969,15115669:16970,15309184:16971,15312772:16972,15313064:16973,14990739:16974,15048838:16975,15052734:16976,15237264:16977,15053489:16978,15055023:16979,15056517:16980,15106208:16981,15107467:16982,15108276:16983,15113151:16984,15119280:16985,15121310:16986,15238030:16987,15238591:16988,15240084:16989,15245963:16990,15250104:16991,15302784:16992,15302830:16993,15309450:16994,15317915:16995,15314843:16996,14990243:16997,15044528:16998,15049895:16999,15183020:17e3,15304333:17001,15311244:17002,15316921:17003,15121309:17004,15171751:17005,15043987:17006,15046020:17007,15052421:17008,15108504:17009,15108766:17010,15109011:17011,15119010:17012,15122351:17013,15175842:17014,15247511:17015,15306936:17016,15122305:17017,15248318:17018,15240376:17019,15042471:17020,15244216:17021,15044522:17022,15044521:17185,14990726:17186,15303060:17187,15253168:17188,15050154:17189,15238321:17190,15054781:17191,15182762:17192,15253183:17193,15115162:17194,15249591:17195,15174584:17196,15315336:17197,15116477:17198,15248048:17199,14989497:17200,15043992:17201,15046790:17202,15048102:17203,15108997:17204,15109794:17205,15112102:17206,15117710:17207,15120289:17208,15120795:17209,15172269:17210,15179693:17211,15182767:17212,15183530:17213,15185595:17214,15237309:17215,15238022:17216,15244171:17217,15248021:17218,15306139:17219,15047587:17220,15049607:17221,15056062:17222,15111853:17223,15112854:17224,15116928:17225,15118005:17226,15176887:17227,15248263:17228,15040676:17229,15179685:17230,15047856:17231,15056027:17232,15106469:17233,15112634:17234,15118752:17235,15177652:17236,15181978:17237,15187374:17238,15239092:17239,15244440:17240,15303045:17241,15312563:17242,15183753:17243,15177116:17244,15182777:17245,15183249:17246,15242116:17247,15302800:17248,15181737:17249,15182482:17250,15240374:17251,15051681:17252,15179136:17253,14989485:17254,14990258:17255,15052441:17256,15056800:17257,15108797:17258,15112380:17259,15114161:17260,15119272:17261,15243691:17262,15245751:17263,15247547:17264,15304078:17265,15305651:17266,15312784:17267,15116439:17268,15171750:17269,15174826:17270,15240103:17271,15241623:17272,15250095:17273,14989441:17274,15041926:17275,15042443:17276,15046283:17277,15052725:17278,15054998:17441,15055027:17442,15055489:17443,15056020:17444,15056053:17445,15056299:17446,15056564:17447,15108018:17448,15109265:17449,15112866:17450,15113373:17451,15121838:17452,15174034:17453,15176890:17454,15178938:17455,15237556:17456,15238329:17457,15238584:17458,15244726:17459,15248063:17460,15248284:17461,15251077:17462,15251379:17463,15305370:17464,15308215:17465,15310978:17466,15315877:17467,15043461:17468,15109527:17469,15178676:17470,15113365:17471,15118984:17472,15175565:17473,15250307:17474,15306414:17475,15309235:17476,15119525:17477,15049372:17478,15115406:17479,15116172:17480,15253437:17481,15306394:17482,15177627:17483,15302810:17484,15049114:17485,15114370:17486,15109812:17487,15116219:17488,14990723:17489,15121580:17490,15114136:17491,15253179:17492,15242406:17493,15185588:17494,15306132:17495,15115455:17496,15121840:17497,15048106:17498,15049655:17499,15051948:17500,15185068:17501,15173802:17502,15044746:17503,15304611:17504,15316660:17505,14989997:17506,14990734:17507,15040924:17508,15040949:17509,15042947:17510,15250078:17511,15045e3:17512,15048868:17513,15052442:17514,15055005:17515,15055509:17516,15055533:17517,15055799:17518,15056031:17519,15106700:17520,15108789:17521,15109306:17522,15110032:17523,15114927:17524,15118720:17525,15180423:17526,15181454:17527,15181963:17528,15185824:17529,15239559:17530,15247490:17531,15248294:17532,15251844:17533,15302803:17534,15303352:17697,15303853:17698,15304600:17699,15318158:17700,15119269:17701,15110552:17702,15111074:17703,15111605:17704,15121332:17705,15178372:17706,15183003:17707,15303081:17708,15306641:17709,15121082:17710,15045554:17711,15056569:17712,15110820:17713,15252877:17714,15253421:17715,15305092:17716,15041976:17717,15049131:17718,15049897:17719,15053205:17720,15055511:17721,15120315:17722,15186575:17723,15176860:17724,15250108:17725,15252386:17726,15311259:17727,15172281:17728,14990493:17729,15118015:17730,15122097:17731,15176880:17732,15309755:17733,15041934:17734,15044752:17735,15048885:17736,15049111:17737,15050412:17738,15053216:17739,15056530:17740,15111831:17741,15113628:17742,15120545:17743,15178171:17744,15241119:17745,15250349:17746,15302804:17747,15303613:17748,15306125:17749,15179941:17750,15179962:17751,15043242:17752,15055526:17753,15047839:17754,15050164:17755,15106194:17756,15040658:17757,15041946:17758,15042220:17759,15042445:17760,15042688:17761,15045776:17762,15049108:17763,15049112:17764,15050135:17765,15052437:17766,15053750:17767,15054475:17768,15106748:17769,15108757:17770,15110317:17771,15113649:17772,15114627:17773,15114940:17774,15115167:17775,15178647:17776,15120280:17777,15120815:17778,15120027:17779,15172015:17780,15173512:17781,15056275:17782,15177624:17783,15181239:17784,15183241:17785,15183252:17786,15183250:17787,15184790:17788,15185329:17789,15042736:17790,15241635:17953,15242665:17954,15243172:17955,15247502:17956,15248516:17957,15249798:17958,15251599:17959,15302787:17960,15302799:17961,15306905:17962,15309238:17963,15311021:17964,15313072:17965,15308696:17966,15041421:17967,15043477:17968,15044748:17969,15048834:17970,15052942:17971,15107751:17972,15110814:17973,15119518:17974,15179443:17975,15182757:17976,15238068:17977,15241348:17978,15303059:17979,15305349:17980,15053728:17981,15316103:17982,15043775:17983,15056535:17984,15056563:17985,15120028:17986,15174073:17987,15179171:17988,15181503:17989,15183780:17990,15118226:17991,15174572:17992,15248045:17993,15114371:17994,15116705:17995,15042488:17996,15182465:17997,15115444:17998,15053194:17999,15315894:18e3,15240107:18001,15052677:18002,15304073:18003,15171742:18004,15047096:18005,15053231:18006,15106951:18007,15111590:18008,15118988:18009,15249818:18010,15303041:18011,15310995:18012,15045009:18013,15113095:18014,15304845:18015,15050120:18016,15303331:18017,15042181:18018,14989709:18019,15042474:18020,15242905:18021,15248526:18022,15171992:18023,15109562:18024,15306123:18025,15115682:18026,15312564:18027,15186052:18028,15177143:18029,15043991:18030,15115680:18031,15252383:18032,15309731:18033,15118749:18034,14989964:18035,15052988:18036,15056016:18037,15253417:18038,15043714:18039,15250321:18040,15237769:18041,15243705:18042,15055807:18043,15112101:18044,14989747:18045,15041957:18046,15050370:18209,15052991:18210,15310766:18211,14990267:18212,15050378:18213,15056781:18214,15248013:18215,15122337:18216,15181488:18217,15181218:18218,15052711:18219,15241649:18220,15174827:18221,15173297:18222,15055284:18223,15056821:18224,15109563:18225,15110810:18226,15173507:18227,15184536:18228,14989699:18229,15055804:18230,14989707:18231,15048604:18232,15047330:18233,15106729:18234,15122307:18235,15185037:18236,15238077:18237,15238323:18238,15238847:18239,15253170:18240,15246999:18241,15243940:18242,15054772:18243,15108746:18244,15110829:18245,15246983:18246,15113655:18247,15119266:18248,15119550:18249,15175862:18250,15179956:18251,15051142:18252,15187381:18253,15239853:18254,15312556:18255,14991283:18256,15055747:18257,15109021:18258,15109778:18259,15111575:18260,15113647:18261,15178627:18262,15174028:18263,15238028:18264,15237818:18265,15252649:18266,15304077:18267,15040653:18268,15048633:18269,15051410:18270,15114885:18271,15115699:18272,15173028:18273,15174589:18274,15250103:18275,15049650:18276,15250336:18277,15309226:18278,15302809:18279,15244735:18280,15181732:18281,15179687:18282,15241385:18283,14990511:18284,15042981:18285,15043994:18286,15109005:18287,15114127:18288,15119242:18289,15178173:18290,15183508:18291,15184533:18292,15239350:18293,15242884:18294,15253419:18295,15113117:18296,15121568:18297,15173766:18298,15186075:18299,15240875:18300,15312769:18301,15317670:18302,15042493:18465,15183537:18466,15180210:18467,15183544:18468,15237767:18469,15183240:18470,15117224:18471,15055265:18472,15237772:18473,15177105:18474,15177120:18475,15041963:18476,15305122:18477,15121036:18478,15178170:18479,15304343:18480,15313834:18481,14990480:18482,15187376:18483,15108764:18484,15183247:18485,15308453:18486,15315881:18487,15047098:18488,15049113:18489,15244196:18490,15309500:18491,14990516:18492,15042724:18493,15043978:18494,15044493:18495,15044507:18496,15054982:18497,15110316:18498,15111825:18499,15113663:18500,15118526:18501,15118734:18502,15174024:18503,15174319:18504,15175597:18505,15177108:18506,15186305:18507,15239340:18508,15243177:18509,15250089:18510,15183748:18511,15304582:18512,15173033:18513,15310994:18514,15311791:18515,15109309:18516,15112617:18517,15177130:18518,15178660:18519,15180688:18520,15242627:18521,15244206:18522,15043754:18523,15043985:18524,15044774:18525,15050371:18526,15055495:18527,15056316:18528,15106738:18529,15108489:18530,15108537:18531,15108779:18532,15111824:18533,15118228:18534,15119244:18535,15177394:18536,15178414:18537,15180433:18538,15181720:18539,15185803:18540,15187383:18541,15237797:18542,15245995:18543,15248057:18544,15250107:18545,15303103:18546,15310238:18547,15311771:18548,15116427:18549,15184056:18550,15041177:18551,15052990:18552,15056558:18553,15113863:18554,15118232:18555,15175861:18556,15178889:18557,15187598:18558,15318203:18721,15114122:18722,15181975:18723,15043769:18724,15177355:18725,15313837:18726,15056294:18727,15238813:18728,15241137:18729,15237784:18730,15056060:18731,15056773:18732,15177122:18733,15183238:18734,15302844:18735,15114663:18736,15050667:18737,15051419:18738,15185040:18739,15178174:18740,15248556:18741,14991285:18742,15056298:18743,15116441:18744,15118519:18745,15121538:18746,15176610:18747,15181224:18748,15245736:18749,15247765:18750,15249849:18751,15055775:18752,15110031:18753,15177605:18754,15181714:18755,15240087:18756,15305896:18757,15305650:18758,15241884:18759,15244205:18760,15315117:18761,15045505:18762,15056300:18763,15111820:18764,15119772:18765,15171733:18766,15250087:18767,15250323:18768,15311035:18769,15111567:18770,15176630:18771,14989453:18772,14990232:18773,15048608:18774,15049899:18775,15051174:18776,15052684:18777,15042216:18778,15054979:18779,15055516:18780,15106198:18781,15108534:18782,15111607:18783,15111847:18784,15112622:18785,15119790:18786,15173814:18787,15183014:18788,15238544:18789,15238810:18790,15239833:18791,15248796:18792,15250080:18793,15250342:18794,15250868:18795,15308956:18796,15309188:18797,14991022:18798,15110827:18799,15117734:18800,15239326:18801,15241633:18802,15242666:18803,15303592:18804,15052929:18805,15115667:18806,15311528:18807,15241658:18808,15242647:18809,14990479:18810,15042991:18811,15056553:18812,15055237:18813,15113357:18814,15181455:18977,15238585:18978,15246471:18979,15246982:18980,15120309:18981,15056023:18982,15108501:18983,15119032:18984,14990223:18985,15174057:18986,15314578:18987,15042694:18988,15044795:18989,15047092:18990,15049395:18991,15107748:18992,15108526:18993,15172762:18994,15050158:18995,15184521:18996,15184798:18997,15185051:18998,15309744:18999,15111815:19e3,15237534:19001,14989465:19002,14990773:19003,15041973:19004,15049088:19005,15055267:19006,15055283:19007,15056010:19008,15114116:19009,14989478:19010,15242429:19011,15308425:19012,15309211:19013,15184307:19014,15310977:19015,15041467:19016,15049601:19017,15178134:19018,15180455:19019,15042725:19020,15179429:19021,15242385:19022,15183494:19023,15040911:19024,15049865:19025,15174023:19026,15183751:19027,15185832:19028,15253178:19029,15253396:19030,15303053:19031,14991039:19032,15043465:19033,15050921:19034,15056001:19035,15310509:19036,14991261:19037,15239319:19038,15305642:19039,15047811:19040,15109525:19041,15117737:19042,15176875:19043,15246236:19044,15252628:19045,15182210:19046,15043487:19047,15049363:19048,15107477:19049,15108234:19050,15112878:19051,15118221:19052,15184063:19053,15241129:19054,15040675:19055,14991288:19056,15043717:19057,15044998:19058,15048881:19059,15050121:19060,15052445:19061,15053744:19062,15053743:19063,15053993:19064,15055510:19065,15108785:19066,15109543:19067,15111358:19068,15111865:19069,15113355:19070,15119253:19233,15119265:19234,15172537:19235,15179954:19236,15186091:19237,15238046:19238,15239859:19239,15241356:19240,15242156:19241,15244418:19242,15246482:19243,15247530:19244,15249802:19245,15303334:19246,15305618:19247,15311805:19248,15315891:19249,15316396:19250,14989711:19251,14989985:19252,15041165:19253,15042966:19254,15048074:19255,15050408:19256,15055037:19257,15056792:19258,15056793:19259,15108287:19260,15112884:19261,15113371:19262,15114128:19263,15115154:19264,15042194:19265,15185057:19266,15237802:19267,15238824:19268,15248512:19269,15250060:19270,15250111:19271,15305150:19272,15308978:19273,15044768:19274,15311020:19275,15043735:19276,15041429:19277,15043996:19278,15049384:19279,15110834:19280,15113396:19281,15174055:19282,15179174:19283,15182214:19284,15304614:19285,15043459:19286,15119009:19287,15117958:19288,15048832:19289,15055244:19290,15050132:19291,15113388:19292,15187899:19293,15042465:19294,15178630:19295,15110569:19296,15180712:19297,15314324:19298,15317691:19299,15048587:19300,15050425:19301,15112359:19302,15113882:19303,15118222:19304,15045545:19305,15116185:19306,15055253:19307,15238812:19308,15113877:19309,15314602:19310,15114174:19311,15315346:19312,15114653:19313,14989990:19314,14991267:19315,15044488:19316,15108793:19317,15113387:19318,15119019:19319,15253380:19320,14991021:19321,15186349:19322,15317695:19323,14989447:19324,15107490:19325,15121024:19326,15121579:19489,15242387:19490,15045043:19491,15113386:19492,15314309:19493,15054771:19494,15183509:19495,15053484:19496,15052678:19497,15244444:19498,15120778:19499,15242129:19500,15181972:19501,15238280:19502,15050393:19503,15184525:19504,15118481:19505,15178912:19506,15043481:19507,15049890:19508,15172769:19509,15174047:19510,15179675:19511,15309991:19512,15316385:19513,15115403:19514,15051199:19515,15050904:19516,15042213:19517,15044749:19518,15045053:19519,15112334:19520,15178655:19521,15253431:19522,15305368:19523,15315892:19524,15050666:19525,15174045:19526,15121285:19527,15041933:19528,15115145:19529,15185599:19530,15185836:19531,15310242:19532,15317690:19533,15110584:19534,15116449:19535,15240322:19536,15050372:19537,15052191:19538,15118235:19539,15174811:19540,15178674:19541,15185586:19542,15237271:19543,15241881:19544,15041714:19545,15113384:19546,15317913:19547,15178670:19548,15113634:19549,15043519:19550,15312005:19551,15052964:19552,15108283:19553,15184318:19554,15250096:19555,15046031:19556,15106742:19557,15185035:19558,15308416:19559,15043713:19560,14989727:19561,15042230:19562,15049884:19563,15173818:19564,15237302:19565,15304590:19566,15056037:19567,15179682:19568,15044228:19569,15056313:19570,15185028:19571,15242924:19572,15247539:19573,15252109:19574,15310230:19575,15114163:19576,15242926:19577,15307155:19578,15107209:19579,15107208:19580,15119033:19581,15178130:19582,15248301:19745,15252664:19746,15045807:19747,14990737:19748,15041706:19749,15043463:19750,15044491:19751,15052453:19752,15055293:19753,15106720:19754,15107714:19755,15110038:19756,15113353:19757,15114138:19758,15120807:19759,15120012:19760,15174838:19761,15174839:19762,15176881:19763,15181200:19764,15246229:19765,15248024:19766,15303050:19767,15303313:19768,15303605:19769,15309700:19770,15244941:19771,15049877:19772,14989960:19773,14990745:19774,14989454:19775,15248009:19776,15252671:19777,15310992:19778,15041197:19779,15055292:19780,15050390:19781,15052473:19782,15055544:19783,15110042:19784,15110074:19785,15111041:19786,15113116:19787,15115658:19788,15116184:19789,15119499:19790,15121078:19791,15173268:19792,15176872:19793,15182511:19794,15187594:19795,15237248:19796,15241609:19797,15242121:19798,15246977:19799,15248545:19800,15251594:19801,15303077:19802,15309245:19803,15312010:19804,15107518:19805,15108753:19806,15117490:19807,15118979:19808,15119796:19809,15187852:19810,15187900:19811,15120256:19812,15187589:19813,15244986:19814,15246264:19815,15113637:19816,15240881:19817,15311036:19818,15309751:19819,15119515:19820,15185313:19821,15241405:19822,15304106:19823,14989745:19824,15044021:19825,15054224:19826,15117444:19827,15122347:19828,15243149:19829,15243437:19830,15247015:19831,15042729:19832,15044751:19833,15053221:19834,15113614:19835,15114920:19836,15175814:19837,15176323:19838,15177634:20001,15246223:20002,15246241:20003,15304588:20004,15309730:20005,15309240:20006,15056523:20007,15175303:20008,15182731:20009,15241614:20010,15109792:20011,15177125:20012,15043209:20013,15119745:20014,15121052:20015,15175817:20016,15177113:20017,15180203:20018,15184530:20019,15309446:20020,15182748:20021,15318669:20022,14991030:20023,15107502:20024,15112069:20025,15243676:20026,14989958:20027,14989998:20028,15041434:20029,14989473:20030,15042444:20031,15052718:20032,15111833:20033,15114881:20034,15120060:20035,15174815:20036,15178114:20037,15179437:20038,15181980:20039,15184807:20040,15239599:20041,15248274:20042,15303100:20043,15304591:20044,15309237:20045,15311e3:20046,15043227:20047,15185809:20048,15040683:20049,15044248:20050,15113879:20051,15120267:20052,15173520:20053,15175859:20054,15239080:20055,15252650:20056,15309475:20057,15315351:20058,15317663:20059,15176096:20060,15049089:20061,15120025:20062,15185071:20063,15311262:20064,14990244:20065,14990518:20066,14990987:20067,15042231:20068,15043249:20069,15054522:20070,15106204:20071,15175346:20072,15180988:20073,15240083:20074,15304884:20075,15309495:20076,15309750:20077,15309962:20078,15317655:20079,15318434:20080,15112870:20081,15117748:20082,15042711:20083,15043235:20084,15172488:20085,15246210:20086,15055753:20087,15106443:20088,15107728:20089,15121571:20090,15173001:20091,15184062:20092,15185844:20093,15237551:20094,15242158:20257,15302819:20258,15305900:20259,15044994:20260,15314351:20261,15117203:20262,15172233:20263,15250306:20264,15251375:20265,15310002:20266,15043252:20267,15051137:20268,15055754:20269,15056004:20270,15113367:20271,15115708:20272,15115924:20273,15119786:20274,15121551:20275,15174050:20276,15174588:20277,15183789:20278,15237249:20279,15237566:20280,15244683:20281,15303566:20282,15041965:20283,15317651:20284,15181444:20285,15237771:20286,15305906:20287,15248278:20288,15040685:20289,15045260:20290,15247793:20291,15117738:20292,15250308:20293,15238279:20294,15106961:20295,15113888:20296,15316914:20297,14989977:20298,14989976:20299,15315088:20300,15247787:20301,15243137:20302,15242664:20303,15115392:20304,15120830:20305,15180439:20306,15238549:20307,15056012:20513,14989456:20514,14989461:20515,14989482:20516,14989489:20517,14989494:20518,14989500:20519,14989503:20520,14989698:20521,14989718:20522,14989720:20523,14989954:20524,14989957:20525,15249835:20526,14989962:20527,15239314:20528,15056013:20529,14989966:20530,14989982:20531,14989983:20532,14989984:20533,14989986:20534,1499e4:20535,14990003:20536,14990006:20537,14990222:20538,14990221:20539,14990212:20540,14990214:20541,14990210:20542,14990231:20543,14990238:20544,14990253:20545,14990239:20546,14990263:20547,14990473:20548,14990746:20549,14990512:20550,14990747:20551,14990749:20552,14990743:20553,14990727:20554,14990774:20555,14990984:20556,14990991:20557,14991e3:20558,14990779:20559,14990761:20560,14990768:20561,14990993:20562,14990767:20563,14990982:20564,14990998:20565,15041688:20566,14991252:20567,14991263:20568,14991246:20569,14991256:20570,14991259:20571,14991249:20572,14991258:20573,14991248:20574,14991268:20575,14991269:20576,15040666:20577,15040680:20578,15040660:20579,15040682:20580,15040677:20581,15040645:20582,14990492:20583,14991286:20584,15040673:20585,15040681:20586,15040684:20587,14991294:20588,14991279:20589,15040657:20590,15040646:20591,15040899:20592,15040903:20593,15113347:20594,15040917:20595,15040912:20596,15040904:20597,15040922:20598,15040918:20599,15040940:20600,15040952:20601,15041152:20602,15041178:20603,15041157:20604,15041204:20605,15041202:20606,15041417:20769,15041418:20770,15041203:20771,15041410:20772,15041430:20773,15041438:20774,15041445:20775,15041453:20776,15041443:20777,15041454:20778,15041465:20779,15041461:20780,15041673:20781,15041665:20782,15041666:20783,15041686:20784,15041685:20785,15041684:20786,15041690:20787,15041697:20788,15041722:20789,15041719:20790,15041724:20791,15041723:20792,15041727:20793,15041920:20794,15041938:20795,15041932:20796,15041940:20797,15041954:20798,15182776:20799,15041961:20800,15041962:20801,15041966:20802,15042176:20803,15042178:20804,15047576:20805,15042188:20806,15042185:20807,15042191:20808,15042193:20809,15042195:20810,15042197:20811,15042198:20812,15042212:20813,15042214:20814,15042210:20815,15042217:20816,15042218:20817,15042219:20818,15042227:20819,15042225:20820,15042226:20821,15042224:20822,15042229:20823,15042237:20824,15042437:20825,15042441:20826,15042459:20827,15042464:20828,15243669:20829,15042473:20830,15042477:20831,15042480:20832,15042485:20833,15042494:20834,15042692:20835,15042699:20836,15042708:20837,15042702:20838,15042727:20839,15042730:20840,15042734:20841,15042739:20842,15042745:20843,15042959:20844,15042948:20845,15042955:20846,15042956:20847,15042974:20848,15042964:20849,15042986:20850,15042996:20851,15042985:20852,15042995:20853,15043007:20854,15043005:20855,15043213:20856,15043220:20857,15043218:20858,15042993:20859,15043208:20860,15043217:20861,15253160:20862,15253159:21025,15043244:21026,15043245:21027,15043260:21028,15043253:21029,15043457:21030,15043469:21031,15043479:21032,15043486:21033,15043491:21034,15043494:21035,15311789:21036,15043488:21037,15043507:21038,15043509:21039,15043512:21040,15043513:21041,15043718:21042,15043720:21043,15176888:21044,15043725:21045,15043728:21046,15043727:21047,15043733:21048,15043738:21049,15043747:21050,15043759:21051,15043761:21052,15043763:21053,15043768:21054,15043968:21055,15043974:21056,15043973:21057,14989463:21058,15043977:21059,15043981:21060,15042454:21061,15043998:21062,15044009:21063,15044014:21064,15049880:21065,15044027:21066,15044023:21067,15044226:21068,15044246:21069,15044256:21070,15044262:21071,15044261:21072,15044270:21073,15044272:21074,15044278:21075,15044483:21076,15184018:21077,15309721:21078,15044511:21079,15113148:21080,15173550:21081,15044526:21082,15044520:21083,15044525:21084,15044538:21085,15044737:21086,15044797:21087,15044992:21088,15044780:21089,15044781:21090,15044796:21091,15044782:21092,15044790:21093,15044777:21094,15044765:21095,15045006:21096,15045263:21097,15045045:21098,15045262:21099,15045023:21100,15045041:21101,15045047:21102,15045040:21103,15045266:21104,15045051:21105,15045248:21106,15045046:21107,15045252:21108,15045264:21109,15045254:21110,15045511:21111,15045282:21112,15045304:21113,15045285:21114,15045292:21115,15045508:21116,15045512:21117,15045288:21118,15045291:21281,15045506:21282,15045284:21283,15045310:21284,15045308:21285,15045528:21286,15045541:21287,15045542:21288,15045775:21289,15045780:21290,15045565:21291,15045550:21292,15045549:21293,15045562:21294,15045538:21295,15045817:21296,15046016:21297,15046051:21298,15046028:21299,15045806:21300,15046044:21301,15046021:21302,15046038:21303,15046039:21304,15045816:21305,15045811:21306,15046045:21307,15046297:21308,15046272:21309,15045295:21310,15046282:21311,15046303:21312,15046075:21313,15046078:21314,15046296:21315,15046302:21316,15046318:21317,15046076:21318,15046275:21319,15046313:21320,15046279:21321,15046312:21322,15046554:21323,15046533:21324,15046559:21325,15046532:21326,15046556:21327,15046564:21328,15046548:21329,15046804:21330,15046583:21331,15046806:21332,15046590:21333,15046589:21334,15046811:21335,15046585:21336,15047054:21337,15047056:21338,15173535:21339,15046836:21340,15046838:21341,15046834:21342,15046840:21343,15047083:21344,15047076:21345,15046831:21346,15047084:21347,15047082:21348,15047302:21349,15047296:21350,15047306:21351,15047328:21352,15047316:21353,15047311:21354,15047333:21355,15047342:21356,15047350:21357,15047348:21358,15047554:21359,15047356:21360,15047553:21361,15047555:21362,15047552:21363,15047560:21364,15047566:21365,15047569:21366,15047571:21367,15047575:21368,15047598:21369,15047609:21370,15047808:21371,15047615:21372,15047812:21373,15047817:21374,15047816:21537,15047819:21538,15047821:21539,15047827:21540,15047832:21541,15047830:21542,15046535:21543,15047836:21544,15047846:21545,15047863:21546,15047864:21547,15048078:21548,15047867:21549,15048064:21550,15048079:21551,15048105:21552,15048576:21553,15048328:21554,15048097:21555,15048127:21556,15048329:21557,15048339:21558,15048352:21559,15048371:21560,15048356:21561,15048362:21562,15048368:21563,15048579:21564,15048582:21565,15048596:21566,15048594:21567,15048595:21568,15048842:21569,15048598:21570,15048611:21571,15048843:21572,15048857:21573,15048861:21574,15049138:21575,15048865:21576,15049122:21577,15049099:21578,15049136:21579,15118208:21580,15049106:21581,15048893:21582,15049145:21583,15049349:21584,15049401:21585,15049375:21586,15049387:21587,15049402:21588,15049630:21589,15049403:21590,15049400:21591,15049390:21592,15049605:21593,15049619:21594,15049617:21595,15049623:21596,15049625:21597,15049624:21598,15049637:21599,15049628:21600,15049636:21601,15049631:21602,15049647:21603,15049658:21604,15049657:21605,15049659:21606,15049660:21607,15049661:21608,15049858:21609,15049866:21610,15049872:21611,15049883:21612,15114918:21613,15049893:21614,15049900:21615,15049901:21616,15049906:21617,15049912:21618,15049918:21619,15182738:21620,15050133:21621,15050128:21622,15050126:21623,15050138:21624,15050136:21625,15050146:21626,15050144:21627,15050151:21628,15050156:21629,15050153:21630,15050168:21793,15050369:21794,15050397:21795,14990750:21796,14991019:21797,15050403:21798,15050418:21799,15050630:21800,15050664:21801,15050652:21802,15050381:21803,15050649:21804,15050650:21805,15050917:21806,15050911:21807,15050897:21808,15050908:21809,15050889:21810,15050906:21811,15051136:21812,15051180:21813,15051145:21814,15050933:21815,15050934:21816,15051170:21817,15051178:21818,15051418:21819,15051452:21820,15051454:21821,15051659:21822,15051650:21823,15051453:21824,15051683:21825,15051671:21826,15051686:21827,15051689:21828,15051670:21829,15051706:21830,15051707:21831,15051916:21832,15051915:21833,15051926:21834,15051954:21835,15051664:21836,15051946:21837,15051958:21838,15051966:21839,15052163:21840,15052165:21841,15052160:21842,15052177:21843,15052181:21844,15052186:21845,15052187:21846,15052197:21847,15052201:21848,15052208:21849,15052211:21850,15052213:21851,15052216:21852,15111816:21853,15052218:21854,15052416:21855,15052419:21856,15052454:21857,15052472:21858,15052675:21859,15052679:21860,15052681:21861,15052692:21862,15052688:21863,15052708:21864,15052710:21865,15052706:21866,15052702:21867,15052709:21868,15052715:21869,15052720:21870,15052726:21871,15052723:21872,15052933:21873,15052935:21874,15052936:21875,15052941:21876,15052947:21877,15052960:21878,15052962:21879,15052968:21880,15052984:21881,15052985:21882,15053185:21883,15053190:21884,15053198:21885,15053203:21886,15053200:22049,15053199:22050,15052209:22051,15053228:22052,15053230:22053,14989730:22054,15053238:22055,15053241:22056,15053452:22057,15053457:22058,15053460:22059,15050395:22060,15053483:22061,15053499:22062,15053494:22063,15053500:22064,15053495:22065,15053701:22066,15053502:22067,15053703:22068,15053721:22069,15053737:22070,15053757:22071,15053754:22072,15053741:22073,15054476:22074,15053738:22075,15053963:22076,15053973:22077,15053975:22078,15054236:22079,15053983:22080,15053979:22081,15053969:22082,15053972:22083,15053986:22084,15053978:22085,15053977:22086,15053976:22087,15054220:22088,15054226:22089,15054222:22090,15054219:22091,15054252:22092,15054259:22093,15054262:22094,15054471:22095,15054468:22096,15054466:22097,15054498:22098,15054493:22099,15054508:22100,15054510:22101,15054525:22102,15054480:22103,15054519:22104,15054524:22105,15054729:22106,15054733:22107,15054739:22108,15054738:22109,15054742:22110,15054747:22111,15054763:22112,15054770:22113,15054773:22114,15054987:22115,15055002:22116,15055001:22117,15054993:22118,15055003:22119,15055030:22120,15055031:22121,15055236:22122,15055235:22123,15055232:22124,15055246:22125,15055255:22126,15055252:22127,15055263:22128,15055266:22129,15055268:22130,15055239:22131,15055285:22132,15055286:22133,15055290:22134,15317692:22135,15055295:22136,15055520:22137,15055745:22138,15055746:22139,15055752:22140,15055760:22141,15055759:22142,15055766:22305,15055779:22306,15055773:22307,15055770:22308,15055771:22309,15055778:22310,15055777:22311,15055784:22312,15055785:22313,15055788:22314,15055793:22315,15055795:22316,15055792:22317,15055796:22318,15055800:22319,15055806:22320,15056003:22321,15056009:22322,15056285:22323,15056284:22324,15056011:22325,15056017:22326,15056022:22327,15056041:22328,15056045:22329,15056056:22330,15056257:22331,15056264:22332,15056268:22333,15056270:22334,15056047:22335,15056273:22336,15056278:22337,15056279:22338,15056281:22339,15056289:22340,15056301:22341,15056307:22342,15056311:22343,15056515:22344,15056514:22345,15056319:22346,15056522:22347,15056520:22348,15056529:22349,15056519:22350,15056542:22351,15056537:22352,15056536:22353,15056544:22354,15056552:22355,15056557:22356,15056572:22357,15056790:22358,15056827:22359,15056804:22360,15056824:22361,15056817:22362,15056797:22363,15106739:22364,15056831:22365,15106209:22366,15106464:22367,15106201:22368,15106192:22369,15106217:22370,15106190:22371,15106225:22372,15106203:22373,15106197:22374,15106219:22375,15106214:22376,15106191:22377,15106234:22378,15106458:22379,15106433:22380,15106474:22381,15106487:22382,15106463:22383,15106442:22384,15106438:22385,15106445:22386,15106467:22387,15106435:22388,15106468:22389,15106434:22390,15106476:22391,15106475:22392,15106457:22393,15106689:22394,15106701:22395,15106983:22396,15106691:22397,15106714:22398,15106692:22561,15106715:22562,15106710:22563,15106711:22564,15106706:22565,15106727:22566,15106699:22567,15106977:22568,15106744:22569,15106976:22570,15106963:22571,15106740:22572,15056816:22573,15106749:22574,15106950:22575,15106741:22576,15106968:22577,15107469:22578,15107221:22579,15107206:22580,15106998:22581,15106999:22582,15107200:22583,15106996:22584,15107002:22585,15107203:22586,15107233:22587,15107003:22588,15106993:22589,15107213:22590,15107214:22591,15107463:22592,15107262:22593,15107240:22594,15107239:22595,15107466:22596,15107263:22597,15107260:22598,15107244:22599,15107252:22600,15107261:22601,15107458:22602,15107460:22603,15107507:22604,15107511:22605,15107480:22606,15107481:22607,15107482:22608,15107499:22609,15107508:22610,15107503:22611,15107493:22612,15107505:22613,15107487:22614,15107485:22615,15107475:22616,15107509:22617,15107737:22618,15107734:22619,15107719:22620,15107756:22621,15107732:22622,15107738:22623,15107722:22624,15107729:22625,15107755:22626,15107758:22627,15107980:22628,15107978:22629,15107977:22630,15108023:22631,15107976:22632,15107971:22633,15107974:22634,15107770:22635,15107979:22636,15187385:22637,15107981:22638,15108006:22639,15108003:22640,15108022:22641,15108026:22642,15108020:22643,15108031:22644,15108029:22645,15108028:22646,15108030:22647,15108224:22648,15108232:22649,15108233:22650,15108237:22651,15108236:22652,15108244:22653,15108251:22654,15108254:22817,15108257:22818,15108266:22819,15108270:22820,15108272:22821,15108274:22822,15108275:22823,15108481:22824,15108494:22825,15108510:22826,15108515:22827,15108507:22828,15108512:22829,15108520:22830,15108540:22831,15108738:22832,15108745:22833,15108542:22834,15108754:22835,15108755:22836,15108758:22837,15109012:22838,15108739:22839,15108756:22840,15109015:22841,15109009:22842,15108795:22843,15109007:22844,15109055:22845,15108998:22846,15111060:22847,15109e3:22848,15109020:22849,15109004:22850,15109002:22851,15108994:22852,15108999:22853,15108763:22854,15109001:22855,15109260:22856,15109038:22857,15109041:22858,15109287:22859,15109250:22860,15109256:22861,15109039:22862,15109045:22863,15109520:22864,15109310:22865,15109517:22866,15110300:22867,15109519:22868,15109782:22869,15109774:22870,15109760:22871,15109803:22872,15109558:22873,15109795:22874,15109775:22875,15109769:22876,15109791:22877,15109813:22878,15109547:22879,15109545:22880,15109822:22881,15110057:22882,15110016:22883,15110022:22884,15110051:22885,15110025:22886,15110034:22887,15110070:22888,15110020:22889,15110294:22890,15110324:22891,15110278:22892,15110291:22893,15110310:22894,15110326:22895,15111325:22896,15110295:22897,15110312:22898,15110287:22899,15110567:22900,15110575:22901,15110582:22902,15110542:22903,15111338:22904,15110805:22905,15110803:22906,15110821:22907,15110825:22908,15110792:22909,15110844:22910,15111066:23073,15111058:23074,15111045:23075,15111047:23076,15110843:23077,15111064:23078,15111042:23079,15111089:23080,15111079:23081,15239305:23082,15111072:23083,15111073:23084,15108780:23085,15111075:23086,15111087:23087,15111340:23088,15111094:23089,15111092:23090,15111090:23091,15111098:23092,15111296:23093,15111101:23094,15111320:23095,15111324:23096,15111301:23097,15111332:23098,15111331:23099,15111339:23100,15111348:23101,15111349:23102,15111351:23103,15111350:23104,15111352:23105,15177099:23106,15111560:23107,15111574:23108,15111573:23109,15111565:23110,15111576:23111,15111582:23112,15111581:23113,15111602:23114,15111608:23115,15111810:23116,15111811:23117,15249034:23118,15111835:23119,15111839:23120,15111851:23121,15111863:23122,15112067:23123,15112070:23124,15112065:23125,15112068:23126,15112076:23127,15112082:23128,15112091:23129,15112089:23130,15112096:23131,15112097:23132,15112113:23133,15113650:23134,15112330:23135,15112323:23136,15112123:23137,15113651:23138,15112373:23139,15112374:23140,15112372:23141,15112348:23142,15112591:23143,15112580:23144,15112585:23145,15112577:23146,15112606:23147,15112605:23148,15112612:23149,15112615:23150,15112616:23151,15112607:23152,15112610:23153,15112624:23154,15112835:23155,15112840:23156,15112846:23157,15112841:23158,15112836:23159,15112856:23160,15112861:23161,15113089:23162,15112889:23163,15113097:23164,15112894:23165,15112892:23166,15113092:23329,15112888:23330,15113110:23331,15113114:23332,15113120:23333,15112383:23334,15113126:23335,15113129:23336,15113136:23337,15113141:23338,15113143:23339,15113359:23340,15113366:23341,15113374:23342,15113382:23343,15113383:23344,15310008:23345,15113390:23346,15113407:23347,15113398:23348,15113601:23349,15113400:23350,15113399:23351,15113606:23352,15113630:23353,15113632:23354,15113625:23355,15113635:23356,15113636:23357,15113865:23358,15113648:23359,15113897:23360,15113660:23361,15113642:23362,15113868:23363,15113867:23364,15113894:23365,15113889:23366,15113861:23367,15113911:23368,15114159:23369,15113908:23370,15114156:23371,15113907:23372,15114153:23373,15113912:23374,15114148:23375,15114142:23376,15114141:23377,15114146:23378,15114158:23379,15113913:23380,15114126:23381,15114118:23382,15114151:23383,15116956:23384,15114398:23385,15114630:23386,15114409:23387,15114624:23388,15114637:23389,15114418:23390,15114638:23391,15114931:23392,15114411:23393,15114649:23394,15114659:23395,15114679:23396,15114687:23397,15114911:23398,15114895:23399,15114925:23400,15114900:23401,15114909:23402,15114907:23403,15114883:23404,15116974:23405,15114937:23406,15114676:23407,15114933:23408,15114912:23409,15114938:23410,15115407:23411,15114893:23412,15114686:23413,15115393:23414,15115146:23415,15115400:23416,15115160:23417,15115426:23418,15115430:23419,15115169:23420,15115404:23421,15115149:23422,15115156:23585,15115175:23586,15115157:23587,15115446:23588,15115410:23589,15115396:23590,15115159:23591,15115171:23592,15115429:23593,15115193:23594,15115168:23595,15115183:23596,15115432:23597,15115434:23598,15115418:23599,15115427:23600,15115425:23601,15115142:23602,15115705:23603,15115703:23604,15115676:23605,15115704:23606,15115691:23607,15115668:23608,15115710:23609,15115694:23610,15115449:23611,15115700:23612,15115453:23613,15115673:23614,15115440:23615,15115681:23616,15115678:23617,15115677:23618,15115905:23619,15115690:23620,15115954:23621,15115950:23622,15116176:23623,15115967:23624,15116161:23625,15116179:23626,15115966:23627,15116174:23628,15052712:23629,15116170:23630,15116189:23631,15115963:23632,15116163:23633,15115943:23634,15116462:23635,15115921:23636,15115936:23637,15115932:23638,15115925:23639,15115956:23640,15116190:23641,15116200:23642,15116418:23643,15116443:23644,15116223:23645,15117450:23646,15116217:23647,15116210:23648,15116199:23649,15116421:23650,15115953:23651,15116446:23652,15116205:23653,15116436:23654,15116203:23655,15116426:23656,15116434:23657,15117185:23658,15116451:23659,15116435:23660,15116676:23661,15116428:23662,15116722:23663,15116470:23664,15116728:23665,15116679:23666,15116706:23667,15116697:23668,15116710:23669,15116680:23670,15116472:23671,15116450:23672,15116944:23673,15116941:23674,15116960:23675,15116932:23676,15116962:23677,15116963:23678,15116951:23841,15243415:23842,15116987:23843,15117187:23844,15117186:23845,15116984:23846,15116979:23847,15116972:23848,15117214:23849,15117201:23850,15117215:23851,15116970:23852,15117210:23853,15117226:23854,15117243:23855,15117445:23856,15243414:23857,15117242:23858,15117458:23859,15117462:23860,15314097:23861,15117471:23862,15117496:23863,15117495:23864,15178652:23865,15117497:23866,15311790:23867,15117703:23868,15117699:23869,15117705:23870,15117712:23871,15117721:23872,15117716:23873,15117723:23874,15117727:23875,15117729:23876,15117752:23877,15117753:23878,15117759:23879,15117952:23880,15117956:23881,15117955:23882,15117965:23883,15117976:23884,15117973:23885,15117982:23886,15117988:23887,15117994:23888,15117995:23889,15117999:23890,15118002:23891,15118001:23892,15118003:23893,15118007:23894,15118012:23895,15118214:23896,15118219:23897,15118227:23898,15118239:23899,15118252:23900,15118251:23901,15118259:23902,15118255:23903,15317694:23904,15118472:23905,15118483:23906,15118484:23907,15118491:23908,15118500:23909,15118499:23910,15118750:23911,15118741:23912,15118754:23913,15118762:23914,15118978:23915,15118989:23916,15119002:23917,15118977:23918,15119003:23919,15118782:23920,15118760:23921,15118771:23922,15118994:23923,15118992:23924,15119236:23925,15119281:23926,15119251:23927,15119037:23928,15119255:23929,15119237:23930,15119261:23931,15119022:23932,15119025:23933,15119038:23934,15119034:24097,15119259:24098,15119279:24099,15119257:24100,15119274:24101,15119519:24102,15245709:24103,15119542:24104,15119531:24105,15119549:24106,15119544:24107,15119513:24108,15119541:24109,15119539:24110,15119506:24111,15119500:24112,15119779:24113,15120019:24114,15119780:24115,15119770:24116,15119801:24117,15119769:24118,15120014:24119,15120021:24120,15122340:24121,15120005:24122,15120313:24123,15120533:24124,15120522:24125,15120053:24126,15120263:24127,15120294:24128,15120056:24129,15120262:24130,15120300:24131,15120286:24132,15120268:24133,15120296:24134,15120274:24135,15120261:24136,15120314:24137,15120281:24138,15120292:24139,15120277:24140,15120298:24141,15120302:24142,15120557:24143,15120814:24144,15120558:24145,15120537:24146,15120818:24147,15120799:24148,15120574:24149,15120547:24150,15120811:24151,15120555:24152,15120822:24153,15120781:24154,15120543:24155,15120771:24156,15120570:24157,15120782:24158,15120548:24159,15121343:24160,15120541:24161,15120568:24162,15121026:24163,15121066:24164,15121048:24165,15121289:24166,15121079:24167,15121299:24168,15121085:24169,15121071:24170,15121284:24171,15121074:24172,15121300:24173,15121301:24174,15121039:24175,15121061:24176,15121282:24177,15121055:24178,15121793:24179,15121553:24180,15171980:24181,15121324:24182,15121336:24183,15121342:24184,15121599:24185,15121330:24186,15121585:24187,15121327:24188,15121586:24189,15121292:24190,15121598:24353,15121555:24354,15121335:24355,15122054:24356,15121850:24357,15121848:24358,15122049:24359,15122048:24360,15121839:24361,15121819:24362,15122355:24363,15121837:24364,15122050:24365,15121852:24366,15121816:24367,15122062:24368,15122065:24369,15122306:24370,15121830:24371,15122099:24372,15122083:24373,15122081:24374,15122084:24375,15122105:24376,15122310:24377,15122090:24378,15122335:24379,15122325:24380,15122348:24381,15122324:24382,15122328:24383,15122353:24384,15122350:24385,15122331:24386,15171721:24387,15171723:24388,15122362:24389,15171729:24390,15171713:24391,15171727:24392,15122366:24393,15171739:24394,15171738:24395,15121844:24396,15171741:24397,15171736:24398,15171743:24399,15171760:24400,15171774:24401,15171762:24402,15171985:24403,15172003:24404,15172249:24405,15172242:24406,15172271:24407,15172529:24408,15172268:24409,15172280:24410,15172275:24411,15172270:24412,15172511:24413,15172491:24414,15172509:24415,15172505:24416,15172745:24417,15172541:24418,15172764:24419,15172761:24420,15173029:24421,15173013:24422,15173256:24423,15173030:24424,15173026:24425,15173004:24426,15173014:24427,15173036:24428,15173263:24429,15173563:24430,15173252:24431,15173269:24432,15173288:24433,15173292:24434,15173527:24435,15173305:24436,15173310:24437,15173522:24438,15173513:24439,15173524:24440,15173518:24441,15173536:24442,15173548:24443,15173543:24444,15173557:24445,15173564:24446,15173561:24609,15173567:24610,15173773:24611,15173776:24612,15173787:24613,15173800:24614,15173805:24615,15173804:24616,15173808:24617,15173810:24618,15173819:24619,15173820:24620,15173823:24621,15174016:24622,15174022:24623,15174027:24624,15174040:24625,15174068:24626,15174078:24627,15174274:24628,15174273:24629,15174279:24630,15174290:24631,15174294:24632,15174306:24633,15174311:24634,15174329:24635,15174322:24636,15174531:24637,15174534:24638,15174532:24639,15174542:24640,15174546:24641,15174562:24642,15174560:24643,15174561:24644,15174585:24645,15174583:24646,15040655:24647,15174807:24648,15174794:24649,15174812:24650,15174806:24651,15174813:24652,15174836:24653,15174831:24654,15174825:24655,15174821:24656,15174846:24657,15175054:24658,15175055:24659,15317912:24660,15175063:24661,15175082:24662,15175080:24663,15175088:24664,15175096:24665,15175093:24666,15175099:24667,15175098:24668,15175560:24669,15175347:24670,15175566:24671,15175355:24672,15175552:24673,15175589:24674,15175598:24675,15175582:24676,15176354:24677,15175813:24678,15176111:24679,15175845:24680,15175608:24681,15175858:24682,15175866:24683,15176085:24684,15175871:24685,15176095:24686,15176089:24687,15176065:24688,15176092:24689,15176105:24690,15176112:24691,15176099:24692,15176106:24693,15176118:24694,15176126:24695,15176331:24696,15176350:24697,15176359:24698,15176586:24699,15176591:24700,15176596:24701,15175601:24702,15176608:24865,15176611:24866,15176615:24867,15176617:24868,15176622:24869,15176626:24870,15176624:24871,15176625:24872,15176632:24873,15176631:24874,15176836:24875,15176835:24876,15176837:24877,15176844:24878,15176846:24879,15176845:24880,15176853:24881,15176851:24882,15176862:24883,15176870:24884,15176876:24885,15176892:24886,15177092:24887,15177101:24888,15177098:24889,15177097:24890,15177115:24891,15177094:24892,15177114:24893,15177129:24894,15177124:24895,15177127:24896,15177131:24897,15177133:24898,15177144:24899,15177142:24900,15177350:24901,15177351:24902,15177140:24903,15177354:24904,15177353:24905,15177346:24906,15177364:24907,15177370:24908,15177373:24909,15177381:24910,15177379:24911,15177602:24912,15177395:24913,15177603:24914,15177397:24915,15177405:24916,15177400:24917,15177404:24918,15177393:24919,15177613:24920,15177610:24921,15177618:24922,15177625:24923,15177635:24924,15177630:24925,15177662:24926,15177663:24927,15177660:24928,15177857:24929,15177648:24930,15177658:24931,15177650:24932,15177651:24933,15177867:24934,15177869:24935,15177865:24936,15177887:24937,15177895:24938,15177888:24939,15177889:24940,15177890:24941,15177892:24942,15177908:24943,15177904:24944,15177915:24945,15178119:24946,15178120:24947,15178118:24948,15178140:24949,15178136:24950,15178145:24951,15178146:24952,15178152:24953,15178153:24954,15178154:24955,15178151:24956,15178156:24957,15178160:24958,15178162:25121,15178166:25122,15178168:25123,15178172:25124,15178368:25125,15178371:25126,15178376:25127,15178379:25128,15178382:25129,15178390:25130,15178387:25131,15178393:25132,15178394:25133,15178416:25134,15178420:25135,15178424:25136,15178425:25137,15178426:25138,15178626:25139,15178637:25140,15178646:25141,15178642:25142,15178654:25143,15178657:25144,15178661:25145,15178663:25146,15178666:25147,15243439:25148,15178683:25149,15178888:25150,15178887:25151,15178884:25152,15178921:25153,15178916:25154,15178910:25155,15178917:25156,15178918:25157,15178907:25158,15178935:25159,15178936:25160,15179143:25161,15179162:25162,15179176:25163,15179179:25164,15179163:25165,15179173:25166,15179199:25167,15179198:25168,15179193:25169,15179406:25170,15179403:25171,15179409:25172,15179424:25173,15179422:25174,15179440:25175,15179446:25176,15179449:25177,15179455:25178,15179452:25179,15179453:25180,15179451:25181,15179655:25182,15179661:25183,15179671:25184,15179674:25185,15179676:25186,15179683:25187,15179694:25188,15179708:25189,15179916:25190,15179922:25191,15180966:25192,15179936:25193,15180970:25194,15180165:25195,15180430:25196,15180212:25197,15180422:25198,15180220:25199,15180442:25200,15180428:25201,15180451:25202,15180469:25203,15180458:25204,15180463:25205,15180689:25206,15180678:25207,15180683:25208,15180692:25209,15180478:25210,15180476:25211,15180677:25212,15180682:25213,15180716:25214,15180711:25377,15180698:25378,15180733:25379,15180724:25380,15180935:25381,15180946:25382,15180945:25383,15180953:25384,15180972:25385,15180971:25386,15181184:25387,15181216:25388,15181207:25389,15181215:25390,15181210:25391,15181205:25392,15181203:25393,15181242:25394,15181247:25395,15181450:25396,15181469:25397,15181479:25398,15318411:25399,15181482:25400,15181486:25401,15181491:25402,15181497:25403,15181498:25404,15181705:25405,15181717:25406,15181735:25407,15181740:25408,15181729:25409,15181731:25410,15181960:25411,15181965:25412,15181976:25413,15181977:25414,15181984:25415,15181983:25416,15181440:25417,15182001:25418,15182011:25419,15182014:25420,15182007:25421,15182211:25422,15182231:25423,15182217:25424,15182241:25425,15182242:25426,15182249:25427,15318685:25428,15182256:25429,15182265:25430,15182269:25431,15182472:25432,15182487:25433,15182485:25434,15182488:25435,15182486:25436,15182505:25437,15182728:25438,15182512:25439,15182518:25440,15182725:25441,15182724:25442,15182527:25443,15303299:25444,15182727:25445,15182730:25446,15182733:25447,15182735:25448,15182741:25449,15182739:25450,15182745:25451,15182746:25452,15182749:25453,15182753:25454,15182754:25455,15182758:25456,15182765:25457,15182768:25458,15182978:25459,15182991:25460,15182986:25461,15182982:25462,15183027:25463,15183e3:25464,15183001:25465,15183006:25466,15183029:25467,15183016:25468,15183030:25469,15183248:25470,15183290:25633,15182980:25634,15183245:25635,15182987:25636,15183244:25637,15183237:25638,15183285:25639,15183269:25640,15183284:25641,15183271:25642,15183280:25643,15183281:25644,15183276:25645,15183278:25646,15183517:25647,15183512:25648,15183519:25649,15183501:25650,15183516:25651,15183514:25652,15183499:25653,15183506:25654,15183503:25655,15183261:25656,15183513:25657,15183755:25658,15183745:25659,15183756:25660,15183759:25661,15183540:25662,15183750:25663,15183773:25664,15183785:25665,15184017:25666,15184020:25667,15183782:25668,15183781:25669,15184288:25670,15184e3:25671,15184007:25672,15184019:25673,15183795:25674,15183799:25675,15184023:25676,15184013:25677,15183798:25678,15184035:25679,15184039:25680,15184042:25681,15184031:25682,15184055:25683,15184043:25684,15184061:25685,15184268:25686,15184259:25687,15184276:25688,15184271:25689,15184256:25690,15184272:25691,15184280:25692,15184287:25693,15184292:25694,15184278:25695,15184293:25696,15184300:25697,15184309:25698,15184515:25699,15184528:25700,15184548:25701,15184557:25702,15184546:25703,15184555:25704,15184545:25705,15184552:25706,15184563:25707,15184562:25708,15184561:25709,15184558:25710,15184569:25711,15184573:25712,15184768:25713,15184773:25714,15184770:25715,15184792:25716,15184786:25717,15184796:25718,15184802:25719,15314107:25720,15184815:25721,15184818:25722,15184820:25723,15184822:25724,15184826:25725,15185030:25726,15185026:25889,15185052:25890,15185045:25891,15185034:25892,15185285:25893,15185291:25894,15185070:25895,15185074:25896,15185087:25897,15185077:25898,15185286:25899,15185331:25900,15185302:25901,15185294:25902,15185330:25903,15185320:25904,15185326:25905,15185295:25906,15185315:25907,15185555:25908,15185545:25909,15185307:25910,15185551:25911,15185341:25912,15185563:25913,15185594:25914,15185582:25915,15185571:25916,15185589:25917,15185799:25918,15185597:25919,15185579:25920,15186109:25921,15185570:25922,15185583:25923,15185820:25924,15185592:25925,15185567:25926,15185584:25927,15185816:25928,15185821:25929,15185828:25930,15185822:25931,15185851:25932,15185842:25933,15185825:25934,15186053:25935,15186058:25936,15186083:25937,15186081:25938,15186066:25939,15186097:25940,15186079:25941,15186057:25942,15186059:25943,15186082:25944,15186310:25945,15186342:25946,15186107:25947,15186101:25948,15186105:25949,15186307:25950,15186103:25951,15186098:25952,15186106:25953,15186343:25954,15186333:25955,15186326:25956,15186334:25957,15186329:25958,15186330:25959,15186361:25960,15186346:25961,15186345:25962,15186364:25963,15186363:25964,15186563:25965,15185813:25966,15186365:25967,15253166:25968,15186367:25969,15186568:25970,15186569:25971,15186572:25972,15186578:25973,15186576:25974,15186579:25975,15186580:25976,15186582:25977,15186574:25978,15186587:25979,15186588:25980,15187128:25981,15187130:25982,15187333:26145,15187340:26146,15187341:26147,15187342:26148,15187344:26149,15187345:26150,15187349:26151,15187348:26152,15187352:26153,15187359:26154,15187360:26155,15187368:26156,15187369:26157,15187367:26158,15187384:26159,15187586:26160,15187590:26161,15187587:26162,15187592:26163,15187591:26164,15187596:26165,15187604:26166,15187614:26167,15187613:26168,15187610:26169,15187619:26170,15187631:26171,15187634:26172,15187641:26173,15187630:26174,15187638:26175,15187640:26176,15248817:26177,15187845:26178,15187846:26179,15187850:26180,15187861:26181,15187860:26182,15187873:26183,15187878:26184,15187881:26185,15187891:26186,15187897:26187,15311772:26188,15237254:26189,15237252:26190,15237259:26191,15237266:26192,15237272:26193,15237273:26194,15237276:26195,15237281:26196,15237288:26197,15237311:26198,15237307:26199,15237514:26200,15237510:26201,15237522:26202,15237528:26203,15237530:26204,15237535:26205,15237538:26206,15237544:26207,15237555:26208,15237554:26209,15237552:26210,15237558:26211,15237561:26212,15237565:26213,15237567:26214,15237764:26215,15237766:26216,15237765:26217,15237787:26218,15237779:26219,15237786:26220,15237805:26221,15042192:26222,15237804:26223,15238043:26224,15238053:26225,15238041:26226,15238045:26227,15238020:26228,15238042:26229,15238038:26230,15238281:26231,15238063:26232,15238065:26233,15238299:26234,15238313:26235,15238307:26236,15238319:26237,15238539:26238,15309451:26401,15238534:26402,15238334:26403,15238547:26404,15238545:26405,15238076:26406,15238577:26407,15238574:26408,15238565:26409,15238566:26410,15238580:26411,15238787:26412,15238792:26413,15238794:26414,15238784:26415,15238786:26416,15238816:26417,15238805:26418,15238820:26419,15238819:26420,15238559:26421,15238803:26422,15238825:26423,15238832:26424,15238837:26425,15238846:26426,15238840:26427,15238845:26428,15239040:26429,15239042:26430,15238842:26431,15239049:26432,15239053:26433,15239057:26434,15239065:26435,15239064:26436,15239048:26437,15239066:26438,15239071:26439,15239072:26440,15239079:26441,15239098:26442,15239099:26443,15239102:26444,15239297:26445,15239298:26446,15239301:26447,15239303:26448,15239306:26449,15239309:26450,15239312:26451,15239318:26452,15239337:26453,15239339:26454,15239352:26455,15239347:26456,15239552:26457,15239577:26458,15239576:26459,15239581:26460,15239578:26461,15239583:26462,15239588:26463,15239586:26464,15239592:26465,15239594:26466,15239595:26467,15239342:26468,15239601:26469,15239607:26470,15239608:26471,15239614:26472,15239821:26473,15239826:26474,15239851:26475,15239839:26476,15239867:26477,15239852:26478,15240097:26479,15240099:26480,15240095:26481,15240082:26482,15240116:26483,15240115:26484,15240122:26485,15240851:26486,15240323:26487,15240123:26488,15240121:26489,15240094:26490,15240326:26491,15240092:26492,15240329:26493,15240089:26494,15240373:26657,15240372:26658,15240342:26659,15240370:26660,15240369:26661,15240576:26662,15240377:26663,15240592:26664,15240581:26665,15240367:26666,15240363:26667,15240343:26668,15240344:26669,15240837:26670,15240858:26671,15240874:26672,15240863:26673,15240866:26674,15240854:26675,15240355:26676,15240846:26677,15240839:26678,15240842:26679,15240636:26680,15240885:26681,15240627:26682,15240629:26683,15240864:26684,15240841:26685,15240872:26686,15241140:26687,15241363:26688,15241131:26689,15241102:26690,15241149:26691,15241347:26692,15241112:26693,15241355:26694,15241089:26695,15241143:26696,15241351:26697,15241120:26698,15241138:26699,15241357:26700,15241378:26701,15241376:26702,15240893:26703,15241400:26704,15242374:26705,15241147:26706,15241645:26707,15241386:26708,15241404:26709,15242650:26710,15241860:26711,15241655:26712,15241643:26713,15241901:26714,15241646:26715,15241858:26716,15241641:26717,15241606:26718,15241388:26719,15241647:26720,15241657:26721,15241397:26722,15242122:26723,15241634:26724,15241913:26725,15241919:26726,15241887:26727,15242137:26728,15242125:26729,15241915:26730,15242138:26731,15242128:26732,15242113:26733,15242118:26734,15242134:26735,15241889:26736,15242401:26737,15242175:26738,15242164:26739,15242391:26740,15242392:26741,15242412:26742,15242399:26743,15242389:26744,15242388:26745,15242172:26746,15242624:26747,15242659:26748,15242648:26749,15242632:26750,15242625:26913,15243394:26914,15242635:26915,15242645:26916,15242880:26917,15242916:26918,15242888:26919,15242897:26920,15242890:26921,15242920:26922,15242669:26923,15242900:26924,15242907:26925,15243178:26926,15242887:26927,15242908:26928,15242679:26929,15242686:26930,15242896:26931,15243145:26932,15242938:26933,15243151:26934,15242937:26935,15243152:26936,15243157:26937,15243165:26938,15243173:26939,15243164:26940,15243193:26941,15243402:26942,15243411:26943,15243403:26944,15243198:26945,15243194:26946,15243398:26947,15243426:26948,15243418:26949,15243440:26950,15243455:26951,15243661:26952,14989717:26953,15243668:26954,15243679:26955,15243687:26956,15243697:26957,15243923:26958,15243939:26959,15243945:26960,15243946:26961,15243915:26962,15243916:26963,15243958:26964,15243951:26965,15244164:26966,15244166:26967,15243952:26968,15244169:26969,15245475:26970,15243947:26971,15244180:26972,15244190:26973,15244201:26974,15244204:26975,15244191:26976,15244187:26977,15244207:26978,15244434:26979,15244422:26980,15244424:26981,15244416:26982,15244419:26983,15244219:26984,15244433:26985,15244425:26986,15244429:26987,15244217:26988,15244426:26989,15244468:26990,15244479:26991,15244471:26992,15244475:26993,15244453:26994,15244457:26995,15244442:26996,15244704:26997,15244703:26998,15244728:26999,15244684:27e3,15244686:27001,15244724:27002,15244695:27003,15244712:27004,15244718:27005,15244697:27006,15244691:27169,15244707:27170,15244714:27171,15245445:27172,15244962:27173,15244959:27174,15244930:27175,15244975:27176,15245195:27177,15244989:27178,15245184:27179,15245200:27180,15309718:27181,15244971:27182,15245188:27183,15244979:27184,15245191:27185,15245190:27186,15244987:27187,15245231:27188,15245234:27189,15245216:27190,15245455:27191,15245453:27192,15245246:27193,15245238:27194,15245239:27195,15245454:27196,15245202:27197,15245457:27198,15245462:27199,15245461:27200,15245474:27201,15245473:27202,15245489:27203,15245494:27204,15245497:27205,15245479:27206,15245499:27207,15245700:27208,15245698:27209,15245714:27210,15245721:27211,15245726:27212,15245730:27213,15245739:27214,15245953:27215,15245758:27216,15245982:27217,15245749:27218,15245757:27219,15246005:27220,15245746:27221,15245954:27222,15245975:27223,15245970:27224,15245998:27225,15245977:27226,15245986:27227,15245965:27228,15245988:27229,15246e3:27230,15246015:27231,15246001:27232,15246211:27233,15246212:27234,15246228:27235,15246232:27236,15246233:27237,15246237:27238,15246265:27239,15246466:27240,15246268:27241,15246260:27242,15246248:27243,15246258:27244,15246468:27245,15246476:27246,15246474:27247,15246483:27248,15246723:27249,15246494:27250,15246501:27251,15246506:27252,15246507:27253,15246721:27254,15246724:27255,15246523:27256,15246518:27257,15246520:27258,15246732:27259,15246493:27260,15246752:27261,15246750:27262,15246758:27425,15246756:27426,15246765:27427,15246762:27428,15246767:27429,15246772:27430,15246775:27431,15246782:27432,15246979:27433,15246984:27434,15246986:27435,15246995:27436,15247e3:27437,15247009:27438,15247017:27439,15247014:27440,15247020:27441,15247023:27442,15247026:27443,15247034:27444,15247037:27445,15247039:27446,15247232:27447,15247258:27448,15247260:27449,15247261:27450,15247271:27451,15247284:27452,15247288:27453,15247491:27454,15247510:27455,15247504:27456,15247500:27457,15247515:27458,15247517:27459,15247525:27460,15247542:27461,15247745:27462,15247771:27463,15247762:27464,15247750:27465,15247752:27466,15247804:27467,15247789:27468,15247788:27469,15247778:27470,15248005:27471,15248002:27472,15248004:27473,15248040:27474,15248033:27475,15248017:27476,15248037:27477,15248038:27478,15248026:27479,15248035:27480,15248260:27481,15248269:27482,15248258:27483,15248282:27484,15248299:27485,15248307:27486,15248295:27487,15248292:27488,15248305:27489,15248532:27490,15248288:27491,15248290:27492,15248311:27493,15248286:27494,15248283:27495,15248524:27496,15248519:27497,15248538:27498,15248289:27499,15248534:27500,15248528:27501,15248535:27502,15248544:27503,15248563:27504,15310507:27505,15248550:27506,15248555:27507,15248574:27508,15248552:27509,15248769:27510,15248780:27511,15248783:27512,15248782:27513,15248777:27514,15248790:27515,15248795:27516,15248794:27517,15248811:27518,15248799:27681,15248812:27682,15248815:27683,15248820:27684,15248829:27685,15249024:27686,15249036:27687,15249038:27688,15249042:27689,15249043:27690,15249046:27691,15249049:27692,15249050:27693,15249594:27694,15249793:27695,15249599:27696,15249800:27697,15249804:27698,15249806:27699,15249808:27700,15249813:27701,15249826:27702,15249836:27703,15249848:27704,15249850:27705,15250050:27706,15250057:27707,15250053:27708,15250058:27709,15250061:27710,15250062:27711,15250068:27712,15249852:27713,15250072:27714,15108253:27715,15250093:27716,15250090:27717,15250109:27718,15250098:27719,15250099:27720,15250094:27721,15250102:27722,15250312:27723,15250305:27724,15250340:27725,15250339:27726,15250330:27727,15250365:27728,15250362:27729,15250363:27730,15250564:27731,15250565:27732,15250570:27733,15250567:27734,15250575:27735,15250573:27736,15250576:27737,15318414:27738,15250579:27739,15250317:27740,15250580:27741,15250582:27742,15250855:27743,15250861:27744,15250865:27745,15250867:27746,15251073:27747,15251097:27748,15251330:27749,15251134:27750,15251130:27751,15251343:27752,15251354:27753,15251350:27754,15251340:27755,15251355:27756,15251339:27757,15251370:27758,15251371:27759,15251359:27760,15251363:27761,15251388:27762,15251592:27763,15251593:27764,15251391:27765,15251613:27766,15251614:27767,15251600:27768,15251615:27769,15251842:27770,15251637:27771,15251632:27772,15251636:27773,15251850:27774,15251847:27937,15251849:27938,15251852:27939,15251856:27940,15251848:27941,15251865:27942,15251876:27943,15251872:27944,15251626:27945,15251875:27946,15251861:27947,15251894:27948,15251890:27949,15251900:27950,15252097:27951,15252103:27952,15252101:27953,15252100:27954,15252107:27955,15252106:27956,15252115:27957,15252113:27958,15252116:27959,15252121:27960,15252138:27961,15252129:27962,15252140:27963,15252144:27964,15252358:27965,15252145:27966,15252158:27967,15252357:27968,15252360:27969,15252363:27970,15252379:27971,15252387:27972,15252412:27973,15252411:27974,15252395:27975,15252414:27976,15252618:27977,15252613:27978,15252629:27979,15252626:27980,15252633:27981,15252627:27982,15252636:27983,15252639:27984,15252635:27985,15252620:27986,15252646:27987,15252659:27988,15252667:27989,15252665:27990,15252869:27991,15252866:27992,15252670:27993,15252876:27994,15252873:27995,15252870:27996,15252878:27997,15252887:27998,15252892:27999,15252898:28e3,15252899:28001,15252900:28002,15253148:28003,15253151:28004,15253155:28005,15253165:28006,15253167:28007,15253175:28008,15253402:28009,15253413:28010,15253410:28011,15253418:28012,15253423:28013,15303303:28014,15253428:28015,15302789:28016,15253433:28017,15253434:28018,15302801:28019,15302805:28020,15302817:28021,15302797:28022,15302814:28023,15302806:28024,15302795:28025,15302823:28026,15302838:28027,15302837:28028,15302841:28029,15253432:28030,15303055:28193,15303056:28194,15303057:28195,15303058:28196,15302798:28197,15303049:28198,15302846:28199,15303062:28200,15303064:28201,15303070:28202,15303080:28203,15303087:28204,15303094:28205,15309480:28206,15303090:28207,15303298:28208,15303101:28209,15303297:28210,15303296:28211,15303306:28212,15303305:28213,15303311:28214,15303336:28215,15303343:28216,15303345:28217,15303349:28218,15303586:28219,15303588:28220,15108488:28221,15303579:28222,15303810:28223,15303826:28224,15303833:28225,15303858:28226,15303856:28227,15304074:28228,15304086:28229,15304088:28230,15304099:28231,15304101:28232,15304105:28233,15304115:28234,15304114:28235,15304331:28236,15304329:28237,15304322:28238,15304354:28239,15304363:28240,15304367:28241,15304362:28242,15304373:28243,15304372:28244,15304378:28245,15304576:28246,15304577:28247,15304585:28248,15304587:28249,15304592:28250,15304598:28251,15304607:28252,15304609:28253,15304603:28254,15304636:28255,15304629:28256,15304630:28257,15304862:28258,15304639:28259,15304852:28260,15304876:28261,15304853:28262,15304849:28263,15305118:28264,15305111:28265,15305093:28266,15305097:28267,15305124:28268,15305096:28269,15305365:28270,15304895:28271,15305099:28272,15305104:28273,15305372:28274,15305366:28275,15305363:28276,15305371:28277,15305114:28278,15305615:28279,15305401:28280,15305399:28281,15305641:28282,15305871:28283,15305658:28284,15306116:28285,15305902:28286,15305881:28449,15305890:28450,15305882:28451,15305891:28452,15305914:28453,15305909:28454,15305915:28455,15306140:28456,15306144:28457,15306172:28458,15306158:28459,15306134:28460,15306416:28461,15306412:28462,15306413:28463,15306388:28464,15306425:28465,15306646:28466,15306647:28467,15306664:28468,15306661:28469,15306648:28470,15306627:28471,15306653:28472,15306640:28473,15306632:28474,15306660:28475,15306906:28476,15306900:28477,15306899:28478,15306883:28479,15306887:28480,15306896:28481,15306934:28482,15306923:28483,15306933:28484,15306913:28485,15306938:28486,15307137:28487,15307154:28488,15307140:28489,15307163:28490,15307168:28491,15307170:28492,15307166:28493,15307178:28494,15304873:28495,15307184:28496,15307189:28497,15307191:28498,15307197:28499,15307162:28500,15307196:28501,15307198:28502,15307393:28503,15307199:28504,15308418:28505,15308423:28506,15308426:28507,15308436:28508,15308438:28509,15308440:28510,15308441:28511,15308448:28512,15308456:28513,15308455:28514,15308461:28515,15308476:28516,15308475:28517,15308473:28518,15308478:28519,15308682:28520,15122358:28521,15308675:28522,15308685:28523,15308684:28524,15308693:28525,15308692:28526,15308694:28527,15308700:28528,15308705:28529,15308709:28530,15308706:28531,15308961:28532,15308968:28533,15308974:28534,15308975:28535,15309186:28536,15309196:28537,15309199:28538,15309195:28539,15309239:28540,15309212:28541,15309214:28542,15309213:28705,15309215:28706,15309222:28707,15309234:28708,15309228:28709,15309453:28710,15309464:28711,15309461:28712,15309463:28713,15309482:28714,15309479:28715,15309489:28716,15309490:28717,15309488:28718,15309492:28719,15309494:28720,15309496:28721,15309497:28722,15309710:28723,15309707:28724,15309705:28725,15309709:28726,15246733:28727,15309724:28728,15309965:28729,15309717:28730,15309753:28731,15309956:28732,15309958:28733,15309960:28734,15309971:28735,15309966:28736,15309969:28737,15309967:28738,15309974:28739,15309977:28740,15309988:28741,15309994:28742,1531e4:28743,15310009:28744,15310013:28745,15310014:28746,15310212:28747,15310214:28748,15310216:28749,15310210:28750,15310217:28751,15310236:28752,15310240:28753,15310244:28754,15310246:28755,15310248:28756,15043474:28757,15310251:28758,15310257:28759,15310265:28760,15310469:28761,15310268:28762,15310465:28763,15310266:28764,15310470:28765,15310475:28766,15310479:28767,15310480:28768,15310492:28769,15310504:28770,15310502:28771,15310499:28772,15310515:28773,15310516:28774,15310723:28775,15310726:28776,15310728:28777,15310731:28778,15310748:28779,15310765:28780,15318415:28781,15310770:28782,15182751:28783,15310774:28784,15310773:28785,15310991:28786,15310988:28787,15311032:28788,15311012:28789,15311009:28790,15311031:28791,15311037:28792,15311238:28793,15311247:28794,15311243:28795,15311275:28796,15311279:28797,15311280:28798,15311281:28961,15311284:28962,15311283:28963,15311530:28964,15311535:28965,15311537:28966,15311542:28967,15311748:28968,15311747:28969,15311750:28970,15311785:28971,15311787:28972,15312003:28973,15312009:28974,15312018:28975,15312020:28976,15312024:28977,15312033:28978,15312029:28979,15312030:28980,15312036:28981,15312032:28982,15312044:28983,15312046:28984,15312061:28985,15312062:28986,15312258:28987,15312265:28988,15312261:28989,15312272:28990,15312267:28991,15312273:28992,15312274:28993,15312268:28994,15312277:28995,15312535:28996,15312536:28997,15312549:28998,15312557:28999,15312558:29e3,15312572:29001,15312799:29002,15312795:29003,15312797:29004,15312792:29005,15312785:29006,15312813:29007,15312814:29008,15312817:29009,15312818:29010,15312827:29011,15312824:29012,15313025:29013,15313039:29014,15313029:29015,15312802:29016,15313049:29017,15313067:29018,15313079:29019,15313285:29020,15313282:29021,15313280:29022,15313283:29023,15313086:29024,15313301:29025,15313293:29026,15313307:29027,15313303:29028,15313311:29029,15313314:29030,15313317:29031,15313316:29032,15313321:29033,15313323:29034,15313322:29035,15313581:29036,15313584:29037,15313596:29038,15313792:29039,15313807:29040,15313809:29041,15313811:29042,15313812:29043,15313822:29044,15313823:29045,15313826:29046,15313827:29047,15313830:29048,15313839:29049,15313835:29050,15313838:29051,15313844:29052,15313841:29053,15313847:29054,15313851:29217,15314054:29218,15314072:29219,15314074:29220,15314079:29221,15314082:29222,15314083:29223,15314085:29224,15314087:29225,15314088:29226,15314089:29227,15314090:29228,15314094:29229,15314095:29230,15314098:29231,15314308:29232,15314307:29233,15314319:29234,15314317:29235,15314318:29236,15314321:29237,15314328:29238,15314356:29239,15314579:29240,15314563:29241,15314577:29242,15314582:29243,15314583:29244,15314591:29245,15314592:29246,15314600:29247,15314612:29248,15314816:29249,15314826:29250,15314617:29251,15314822:29252,15314831:29253,15314833:29254,15314834:29255,15314851:29256,15314850:29257,15314852:29258,15314836:29259,15314849:29260,15315130:29261,15314866:29262,15314865:29263,15314864:29264,15315093:29265,15315092:29266,15315081:29267,15315091:29268,15315084:29269,15315078:29270,15315080:29271,15315090:29272,15315082:29273,15315076:29274,15315118:29275,15315099:29276,15315109:29277,15315108:29278,15315105:29279,15315120:29280,15315335:29281,15315122:29282,15315334:29283,15315134:29284,15315354:29285,15315360:29286,15315367:29287,15315382:29288,15315384:29289,15315879:29290,15315884:29291,15315888:29292,15316105:29293,15316104:29294,15315883:29295,15316099:29296,15316102:29297,15316138:29298,15316134:29299,15316655:29300,15316131:29301,15316127:29302,15316356:29303,15316117:29304,15316114:29305,15316353:29306,15316159:29307,15316158:29308,15316358:29309,15316360:29310,15316381:29473,15316382:29474,15316388:29475,15316369:29476,15316368:29477,15316377:29478,15316402:29479,15316617:29480,15316615:29481,15316651:29482,15316399:29483,15316410:29484,15316634:29485,15316644:29486,15316649:29487,15316658:29488,15316868:29489,15316865:29490,15316667:29491,15316664:29492,15316666:29493,15316870:29494,15316879:29495,15316866:29496,15316889:29497,15316883:29498,15316920:29499,15316902:29500,15316909:29501,15316911:29502,15316925:29503,15317146:29504,15317147:29505,15317150:29506,15317429:29507,15317433:29508,15317437:29509,15317633:29510,15317640:29511,15317643:29512,15317644:29513,15317650:29514,15317653:29515,15317649:29516,15317661:29517,15317669:29518,15317673:29519,15317688:29520,15317674:29521,15317677:29522,15310241:29523,15317900:29524,15317902:29525,15317903:29526,15317904:29527,15317908:29528,15317916:29529,15317918:29530,15317917:29531,15317920:29532,15317925:29533,15317928:29534,15317935:29535,15317940:29536,15317942:29537,15317943:29538,15317945:29539,15317947:29540,15317948:29541,15317949:29542,15318151:29543,15318152:29544,15178423:29545,15318165:29546,15318177:29547,15318188:29548,15318206:29549,15318410:29550,15318418:29551,15318420:29552,15318435:29553,15318431:29554,15318432:29555,15318433:29556,15318438:29557,15318439:29558,15318444:29559,15318442:29560,15318455:29561,15318450:29562,15318454:29563,15318677:29564,15318684:29565,15318688:29566,15048879:29729,15116167:29730,15303065:29731,15176100:29732,15042460:29733,15173273:29734,15186570:31009,15246492:31010,15306120:31011,15305352:31012,15242140:31013,14991241:31014,15172283:31015,15112369:31016,15115144:31017,15305657:31018,15113147:31019,15056261:31020,14989480:31021,14990241:31022,14990268:31023,14990464:31024,14990467:31025,14990521:31026,14990742:31027,14990994:31028,14990986:31029,14991002:31030,14990996:31031,14991245:31032,15040896:31033,15040674:31034,14991295:31035,15040670:31036,15040902:31037,15040944:31038,15040898:31039,15041172:31040,15041460:31041,15041432:31042,15041930:31043,15041956:31044,15042205:31045,15042238:31046,15042476:31047,15042709:31048,15043228:31049,15043238:31050,15043456:31051,15043483:31052,15043712:31053,15043719:31054,15043748:31055,15044018:31056,15044243:31057,15044274:31058,15044509:31059,15706254:31060,15045276:31061,15045258:31062,15045289:31063,15045567:31064,15046278:31065,15048089:31066,15048101:31067,15048364:31068,15048584:31069,15048583:31070,15706255:31071,15706256:31072,15049374:31073,15049394:31074,15049867:31075,15050131:31076,15050139:31077,15050141:31078,15050147:31079,15050404:31080,15050426:31081,15052182:31082,15052672:31083,15176879:31084,15052696:31085,15052716:31086,15052958:31087,15053478:31088,15053498:31089,15053749:31090,15053991:31091,15054227:31092,15706257:31093,15054210:31094,15054253:31095,15054520:31096,15054521:31097,15054736:31098,15056033:31099,15056052:31100,15056295:31101,15056567:31102,15056798:31265,15106461:31266,15106693:31267,15106698:31268,15106974:31269,15106965:31270,15107232:31271,15106994:31272,15107217:31273,15107255:31274,15107248:31275,15107736:31276,15108243:31277,15108774:31278,15110069:31279,15110560:31280,15110813:31281,15111054:31282,15111566:31283,15112320:31284,15112341:31285,15112379:31286,15112329:31287,15112366:31288,15112350:31289,15112356:31290,15112613:31291,15112599:31292,15112601:31293,15706258:31294,15112627:31295,15112857:31296,15112864:31297,15112882:31298,15112895:31299,15113146:31300,15113358:31301,15705257:31302,15113638:31303,15113915:31304,15114642:31305,15114112:31306,15114369:31307,15114628:31308,15115151:31309,15706259:31310,15115688:31311,15706260:31312,15115928:31313,15116194:31314,15116464:31315,15116715:31316,15116678:31317,15116723:31318,15116734:31319,15117218:31320,15117220:31321,15118230:31322,15118527:31323,15118748:31324,15118982:31325,15118767:31326,15119258:31327,15119492:31328,15120007:31329,15119791:31330,15120022:31331,15120044:31332,15120271:31333,15120312:31334,15120306:31335,15120316:31336,15120569:31337,15120796:31338,15120551:31339,15120572:31340,15121087:31341,15122056:31342,15122101:31343,15122357:31344,15171717:31345,15171719:31346,15171752:31347,15172229:31348,15172267:31349,15172751:31350,15172740:31351,15173020:31352,15172998:31353,15172999:31354,15706261:31355,15173505:31356,15173566:31357,15174321:31358,15174334:31521,15174820:31522,15706262:31523,15175095:31524,15175357:31525,15175561:31526,15175574:31527,15175587:31528,15175570:31529,15175815:31530,15175605:31531,15175846:31532,15175850:31533,15175849:31534,15175854:31535,15176098:31536,15176329:31537,15176351:31538,15176833:31539,15177135:31540,15178370:31541,15178396:31542,15178398:31543,15178395:31544,15178406:31545,15706263:31546,15179142:31547,15043247:31548,15179937:31549,15180174:31550,15180196:31551,15180218:31552,15180976:31553,15706264:31554,15706265:31555,15706266:31556,15181460:31557,15706267:31558,15181467:31559,15182737:31560,15182759:31561,15706268:31562,15182763:31563,15183518:31564,15706269:31565,15185288:31566,15185308:31567,15185591:31568,15185568:31569,15185814:31570,15186322:31571,15187335:31572,15187617:31573,15706270:31574,15240321:31575,15240610:31576,15240639:31577,15241095:31578,15241142:31579,15241608:31580,15241908:31581,15242643:31582,15242649:31583,15242667:31584,15706271:31585,15242928:31586,15706272:31587,15706273:31588,15245447:31589,15246261:31590,15247506:31591,15247543:31592,15247801:31593,15248039:31594,15248062:31595,15248287:31596,15706274:31597,15248310:31598,15248787:31599,15248831:31600,15250352:31601,15250356:31602,15250578:31603,15250870:31604,15706275:31605,15252367:31606,15706276:31607,15706277:31608,15303079:31609,15303582:31610,15706278:31611,15303829:31612,15303847:31613,15304602:31614,15304599:31777,15304606:31778,15304621:31779,15304622:31780,15304612:31781,15304613:31782,15304838:31783,15304848:31784,15304842:31785,15304890:31786,15305088:31787,15304892:31788,15305102:31789,15305113:31790,15305105:31791,15304889:31792,15305127:31793,15305383:31794,15305143:31795,15305144:31796,15305639:31797,15305623:31798,15305625:31799,15305616:31800,15706279:31801,15305621:31802,15305632:31803,15305619:31804,15305893:31805,15305889:31806,15305659:31807,15706280:31808,15305886:31809,15305663:31810,15305885:31811,15305858:31812,15306160:31813,15306135:31814,15306404:31815,15306630:31816,15306654:31817,15306680:31818,15306929:31819,15307141:31820,15307144:31821,15308434:31822,15706012:31823,15706281:31824,15309469:31825,15309487:31826,15310003:31827,15310011:31828,15310211:31829,15310221:31830,15310223:31831,15310225:31832,15310229:31833,15311255:31834,15311269:31835,15706282:31836,15706283:31837,15312039:31838,15706284:31839,15312542:31840,15313294:31841,15313817:31842,15313820:31843,15314357:31844,15314354:31845,15314575:31846,15314609:31847,15314619:31848,15315072:31849,15316400:31850,15316395:31851,15706285:31852,15317145:31853,15317905:31854,14845360:31857,14845361:31858,14845362:31859,14845363:31860,14845364:31861,14845365:31862,14845366:31863,14845367:31864,14845368:31865,14845369:31866,15712164:31868,15711367:31869,15711362:31870,14846117:8514,15712162:8780,14846098:74077}},5594:e=>{e.exports={52120:8751,52103:8752,49848:8753,52121:8754,52125:8755,49839:8756,52123:8757,52122:8758,126:8759,52868:8760,52869:8761,49825:8770,49830:8771,49855:8772,49850:8811,49834:8812,49833:8813,49838:8814,14845090:8815,49828:8816,14845078:8817,52870:9825,52872:9826,52873:9827,52874:9828,52906:9829,52876:9831,52878:9833,52907:9834,52879:9836,52908:9841,52909:9842,52910:9843,52911:9844,53130:9845,52880:9846,53132:9847,53122:9848,53133:9849,53131:9850,52912:9851,53134:9852,53378:10050,53379:10051,53380:10052,53381:10053,53382:10054,53383:10055,53384:10056,53385:10057,53386:10058,53387:10059,53388:10060,53390:10061,53391:10062,53650:10098,53651:10099,53652:10100,53653:10101,53654:10102,53655:10103,53656:10104,53657:10105,53658:10106,53659:10107,53660:10108,53662:10109,53663:10110,50054:10529,50320:10530,50342:10532,50354:10534,50561:10536,50367:10537,50570:10539,50072:10540,50578:10541,50598:10543,50078:10544,50086:10561,50321:10562,50096:10563,50343:10564,50353:10565,50355:10566,50360:10567,50562:10568,50560:10569,50569:10570,50571:10571,50104:10572,50579:10573,50079:10574,50599:10575,50110:10576,50049:10785,50048:10786,50052:10787,50050:10788,50306:10789,51085:10790,50304:10791,50308:10792,50053:10793,50051:10794,50310:10795,50312:10796,50316:10797,50055:10798,50314:10799,50318:10800,50057:10801,50056:10802,50059:10803,50058:10804,50330:10805,50326:10806,50322:10807,50328:10808,50332:10810,50334:10811,50338:10812,50336:10813,50340:10814,50061:10815,50060:10816,50063:10817,50062:10818,51087:10819,50352:10820,50346:10821,50350:10822,50344:10823,50356:10824,50358:10825,50361:10826,50365:10827,50363:10828,50563:10829,50567:10830,50565:10831,50065:10832,50067:10833,50066:10834,50070:10835,50068:10836,51089:10837,50576:10838,50572:10839,50069:10840,50580:10841,50584:10842,50582:10843,50586:10844,50588:10845,50592:10846,50590:10847,50596:10848,50594:10849,50074:10850,50073:10851,50076:10852,50075:10853,50604:10854,51091:10855,50608:10856,50602:10857,50610:10858,50606:10859,50600:10860,51095:10861,51099:10862,51097:10863,51093:10864,50612:10865,50077:10866,50616:10867,50614:10868,50617:10869,50621:10870,50619:10871,50081:11041,50080:11042,50084:11043,50082:11044,50307:11045,51086:11046,50305:11047,50309:11048,50085:11049,50083:11050,50311:11051,50313:11052,50317:11053,50087:11054,50315:11055,50319:11056,50089:11057,50088:11058,50091:11059,50090:11060,50331:11061,50327:11062,50323:11063,50329:11064,51125:11065,50333:11066,50335:11067,50337:11069,50341:11070,50093:11071,50092:11072,50095:11073,50094:11074,51088:11075,50347:11077,50351:11078,50345:11079,50357:11080,50359:11081,50362:11082,50366:11083,50364:11084,50564:11085,50568:11086,50566:11087,50097:11088,50099:11089,50098:11090,50102:11091,50100:11092,51090:11093,50577:11094,50573:11095,50101:11096,50581:11097,50585:11098,50583:11099,50587:11100,50589:11101,50593:11102,50591:11103,50597:11104,50595:11105,50106:11106,50105:11107,50108:11108,50107:11109,50605:11110,51092:11111,50609:11112,50603:11113,50611:11114,50607:11115,50601:11116,51096:11117,51100:11118,51098:11119,51094:11120,50613:11121,50109:11122,50111:11123,50615:11124,50618:11125,50622:11126,50620:11127,14989442:12321,14989444:12322,14989445:12323,14989452:12324,14989458:12325,14989471:12326,14989475:12327,14989476:12328,14989480:12329,14989483:12330,14989486:12331,14989487:12332,14989488:12333,14989493:12334,14989696:12335,14989697:12336,14989700:12337,14989703:12338,14989713:12339,14989722:12340,14989724:12341,14989731:12342,14989736:12343,14989737:12344,14989748:12345,14989749:12346,14989753:12347,14989759:12348,14989965:12349,14989974:12350,14989975:12351,14989981:12352,14989999:12353,14990009:12354,14990211:12355,14990224:12356,14990234:12357,14990235:12358,14990240:12359,14990241:12360,14990242:12361,14990248:12362,14990255:12363,14990257:12364,14990259:12365,14990261:12366,14990269:12367,14990270:12368,14990271:12369,14990464:12370,14990466:12371,14990467:12372,14990472:12373,14990475:12374,14990476:12375,14990482:12376,14990485:12377,14990486:12378,14990487:12379,14990489:12380,14990510:12381,14990513:12382,14990752:12383,14990515:12384,14990517:12385,14990519:12386,14990521:12387,14990523:12388,14990526:12389,14990720:12390,14990722:12391,14990728:12392,14990729:12393,14990731:12394,14990732:12395,14990738:12396,14990740:12397,14990742:12398,14990744:12399,14990751:12400,14990755:12401,14990762:12402,14990764:12403,14990766:12404,14990769:12405,14990775:12406,14990776:12407,14990777:12408,14990778:12409,14990781:12410,14990782:12411,14990977:12412,14990978:12413,14990980:12414,14990981:12577,14990985:12578,14990986:12579,14990988:12580,14990990:12581,14990992:12582,14990994:12583,14990995:12584,14990996:12585,14990999:12586,14991001:12587,14991002:12588,14991006:12589,14991007:12590,14991026:12591,14991031:12592,14991033:12593,14991035:12594,14991036:12595,14991037:12596,14991038:12597,14991232:12598,14991233:12599,14991237:12600,14991238:12601,14991240:12602,14991241:12603,14991243:12604,14991244:12605,14991245:12606,14991247:12607,14991250:12608,14991260:12609,14991264:12610,14991266:12611,14991280:12612,14991282:12613,14991292:12614,14991293:12615,14991295:12616,15040640:12617,15040641:12618,15040644:12619,15040647:12620,15040650:12621,15040652:12622,15040654:12623,15040656:12624,15040659:12625,15040663:12626,15040664:12627,15040667:12628,15040668:12629,15040669:12630,15040670:12631,15040674:12632,15040679:12633,15040686:12634,15040688:12635,15040690:12636,15040691:12637,15040693:12638,15040896:12639,15040897:12640,15040898:12641,15040901:12642,15040902:12643,15040906:12644,15040908:12645,15040910:12646,15040913:12647,15040914:12648,15040915:12649,15040919:12650,15040921:12651,15040927:12652,15040928:12653,15040930:12654,15040931:12655,15040934:12656,15040935:12657,15040938:12658,15040941:12659,15040944:12660,15040945:12661,15040699:12662,15041153:12663,15041155:12664,15041156:12665,15041158:12666,15041162:12667,15041166:12668,15041167:12669,15041168:12670,15041170:12833,15041171:12834,15041172:12835,15041174:12836,15041179:12837,15041180:12838,15041182:12839,15041183:12840,15041184:12841,15041185:12842,15041186:12843,15041194:12844,15041199:12845,15041200:12846,15041209:12847,15041210:12848,15041213:12849,15041408:12850,15041411:12851,15041412:12852,15041415:12853,15041420:12854,15041422:12855,15041424:12856,15041427:12857,15041428:12858,15041432:12859,15041436:12860,15041437:12861,15041439:12862,15041442:12863,15041444:12864,15041446:12865,15041448:12866,15041449:12867,15041455:12868,15041457:12869,15041462:12870,15041466:12871,15041470:12872,15041667:12873,15041670:12874,15041671:12875,15041672:12876,15041675:12877,15041676:12878,15041677:12879,15041678:12880,15041458:12881,15041680:12882,15041687:12883,15041689:12884,15041691:12885,15041692:12886,15041693:12887,15041694:12888,15041699:12889,15041703:12890,15041704:12891,15041708:12892,15041709:12893,15041711:12894,15041713:12895,15041715:12896,15041716:12897,15041717:12898,15041720:12899,15041721:12900,15041922:12901,15041930:12902,15041935:12903,15041939:12904,15041941:12905,15041943:12906,15041944:12907,15041951:12908,15041956:12909,15041958:12910,15041982:12911,15042179:12912,15042180:12913,15042187:12914,15042190:12915,15042200:12916,15042205:12917,15042209:12918,15042211:12919,15042221:12920,15042232:12921,15042234:12922,15042236:12923,15042238:12924,15042239:12925,15042434:12926,15042440:13089,15042447:13090,15042449:13091,15042450:13092,15042451:13093,15042453:13094,15042456:13095,15042462:13096,15042466:13097,15042469:13098,15042478:13099,15042482:13100,15042483:13101,15042484:13102,15042487:13103,15042689:13104,15042690:13105,15042693:13106,15042706:13107,15042707:13108,15042709:13109,15042710:13110,15042712:13111,15042722:13112,15042728:13113,15042737:13114,15042738:13115,15042741:13116,15042748:13117,15042949:13118,15042953:13119,15042965:13120,15042967:13121,15042968:13122,15042970:13123,15042972:13124,15042975:13125,15042976:13126,15042977:13127,15042982:13128,15042990:13129,15042999:13130,15043e3:13131,15043001:13132,15043200:13133,15043202:13134,15043205:13135,15043210:13136,15043212:13137,15043219:13138,15043221:13139,15043222:13140,15043223:13141,15043224:13142,15043226:13143,15043228:13144,15043236:13145,15043237:13146,15043238:13147,15043239:13148,15043247:13149,15043248:13150,15043254:13151,15043255:13152,15043256:13153,15043258:13154,15043259:13155,15043261:13156,15043456:13157,15043460:13158,15043462:13159,15043464:13160,15043468:13161,15043471:13162,15043473:13163,15043476:13164,15043478:13165,15043483:13166,15043484:13167,15043489:13168,15043493:13169,15043496:13170,15043497:13171,15043498:13172,15043500:13173,15043504:13174,15043505:13175,15043508:13176,15043510:13177,15043511:13178,15043712:13179,15043715:13180,15043722:13181,15043723:13182,15043724:13345,15043729:13346,15043731:13347,15043736:13348,15043739:13349,15043740:13350,15043742:13351,15043743:13352,15043749:13353,15043751:13354,15043752:13355,15043753:13356,15043755:13357,15043756:13358,15043757:13359,15043760:13360,15043762:13361,15043765:13362,15043772:13363,15043773:13364,15043774:13365,15043970:13366,15043980:13367,15043979:13368,15043993:13369,15043995:13370,15044001:13371,15044003:13372,15044005:13373,15044012:13374,15044013:13375,15044018:13376,15044025:13377,15044030:13378,15044227:13379,15044231:13380,15044232:13381,15044238:13382,15044243:13383,15044244:13384,15044249:13385,15044253:13386,15044257:13387,15044260:13388,15044266:13389,15044267:13390,15044271:13391,15044274:13392,15044276:13393,15044277:13394,15044279:13395,15044280:13396,15044282:13397,15044285:13398,15044480:13399,15044485:13400,15044495:13401,15044498:13402,15044499:13403,15044501:13404,15044506:13405,15044509:13406,15044510:13407,15044512:13408,15044518:13409,15044519:13410,15044533:13411,15044738:13412,15044755:13413,15044762:13414,15044769:13415,15044775:13416,15044776:13417,15044778:13418,15044783:13419,15044785:13420,15044788:13421,15044789:13422,15044995:13423,15044996:13424,15044999:13425,15045005:13426,15045007:13427,15045022:13428,15045026:13429,15045028:13430,15045030:13431,15045031:13432,15045033:13433,15045035:13434,15045037:13435,15045038:13436,15045044:13437,15045055:13438,15045249:13601,15045251:13602,15045253:13603,15045256:13604,15045257:13605,15045261:13606,15045265:13607,15045269:13608,15045270:13609,15045276:13610,15045279:13611,15045281:13612,15045286:13613,15045287:13614,15045289:13615,15045290:13616,15045293:13617,15045294:13618,15045297:13619,15045303:13620,15045305:13621,15045306:13622,15045307:13623,15045311:13624,15045510:13625,15045514:13626,15045517:13627,15045518:13628,15045536:13629,15045546:13630,15045548:13631,15045551:13632,15045558:13633,15045564:13634,15045566:13635,15045567:13636,15045760:13637,15045761:13638,15045765:13639,15045768:13640,15045769:13641,15045772:13642,15045773:13643,15045774:13644,15045781:13645,15045802:13646,15045803:13647,15045810:13648,15045813:13649,15045814:13650,15045819:13651,15045820:13652,15045821:13653,15046017:13654,15046023:13655,15046025:13656,15046026:13657,15046029:13658,15046032:13659,15046033:13660,15046040:13661,15046042:13662,15046043:13663,15046046:13664,15046048:13665,15046049:13666,15046052:13667,15046054:13668,15046079:13669,15046273:13670,15046274:13671,15046278:13672,15046280:13673,15046286:13674,15046287:13675,15046289:13676,15046290:13677,15046291:13678,15046292:13679,15046295:13680,15046307:13681,15046308:13682,15046317:13683,15046322:13684,15046335:13685,15046529:13686,15046531:13687,15046534:13688,15046537:13689,15046539:13690,15046540:13691,15046542:13692,15046545:13693,15046546:13694,15046547:13857,15046551:13858,15046552:13859,15046555:13860,15046558:13861,15046562:13862,15046569:13863,15046582:13864,15046591:13865,15046789:13866,15046792:13867,15046794:13868,15046797:13869,15046798:13870,15046799:13871,15046800:13872,15046801:13873,15046802:13874,15046809:13875,15046828:13876,15046832:13877,15046835:13878,15046837:13879,15046839:13880,15046841:13881,15046843:13882,15046844:13883,15046845:13884,15046847:13885,15047040:13886,15047041:13887,15047043:13888,15047044:13889,15047046:13890,15047049:13891,15047051:13892,15047053:13893,15047055:13894,15047060:13895,15047070:13896,15047072:13897,15047073:13898,15047074:13899,15047075:13900,15047078:13901,15047081:13902,15047085:13903,15047087:13904,15047089:13905,15047090:13906,15047093:13907,15047300:13908,15047301:13909,15047304:13910,15047307:13911,15047308:13912,15047317:13913,15047321:13914,15047322:13915,15047325:13916,15047326:13917,15047327:13918,15047334:13919,15047335:13920,15047336:13921,15047337:13922,15047339:13923,15047340:13924,15047341:13925,15047345:13926,15047347:13927,15047351:13928,15047358:13929,15047557:13930,15047561:13931,15047562:13932,15047563:13933,15047567:13934,15047568:13935,15047564:13936,15047565:13937,15047577:13938,15047580:13939,15047581:13940,15047583:13941,15047585:13942,15047588:13943,15047589:13944,15047590:13945,15047591:13946,15047592:13947,15047601:13948,15047595:13949,15047597:13950,15047606:14113,15047607:14114,15047809:14115,15047810:14116,15047815:14117,15047818:14118,15047820:14119,15047825:14120,15047829:14121,15047834:14122,15047835:14123,15047837:14124,15047840:14125,15047842:14126,15047843:14127,15047844:14128,15047845:14129,15047849:14130,15047850:14131,15047852:14132,15047854:14133,15047855:14134,15047859:14135,15047860:14136,15047869:14137,15047870:14138,15047871:14139,15048069:14140,15048070:14141,15048076:14142,15048077:14143,15048082:14144,15048098:14145,15048101:14146,15048103:14147,15048104:14148,15048107:14149,15048109:14150,15048110:14151,15048111:14152,15048112:14153,15048113:14154,15048115:14155,15048116:14156,15048117:14157,15048119:14158,15048121:14159,15048122:14160,15048123:14161,15048124:14162,15048126:14163,15048321:14164,15048323:14165,15048332:14166,15048340:14167,15048343:14168,15048345:14169,15048346:14170,15048348:14171,15048349:14172,15048350:14173,15048351:14174,15048353:14175,15048341:14176,15048359:14177,15048360:14178,15048361:14179,15048364:14180,15048376:14181,15048381:14182,15048583:14183,15048584:14184,15048588:14185,15048591:14186,15048597:14187,15048605:14188,15048606:14189,15048612:14190,15048614:14191,15048615:14192,15048617:14193,15048621:14194,15048624:14195,15048629:14196,15048630:14197,15048632:14198,15048637:14199,15048638:14200,15048639:14201,15048835:14202,15048836:14203,15048840:14204,15048841:14205,15048609:14206,15048844:14369,15048845:14370,15048859:14371,15048862:14372,15048863:14373,15048864:14374,15048870:14375,15048871:14376,15048877:14377,15048882:14378,15048889:14379,15048895:14380,15049097:14381,15049100:14382,15049101:14383,15049103:14384,15049104:14385,15049109:14386,15049119:14387,15049121:14388,15049124:14389,15049127:14390,15049128:14391,15049144:14392,15049148:14393,15049151:14394,15049344:14395,15049345:14396,15049351:14397,15049352:14398,15049353:14399,15049354:14400,15049356:14401,15049357:14402,15049359:14403,15049360:14404,15049364:14405,15049366:14406,15049373:14407,15049376:14408,15049377:14409,15049378:14410,15049382:14411,15049385:14412,15049393:14413,15049394:14414,15049604:14415,15049404:14416,15049602:14417,15049608:14418,15049613:14419,15049614:14420,15049616:14421,15049618:14422,15049620:14423,15049622:14424,15049626:14425,15049629:14426,15049633:14427,15049634:14428,15049641:14429,15049651:14430,15049861:14431,15049862:14432,15049867:14433,15049868:14434,15049874:14435,15049875:14436,15049876:14437,15243649:14438,15049885:14439,15049889:14440,15049891:14441,15049892:14442,15049896:14443,15049903:14444,15049904:14445,15049907:14446,15049909:14447,15049910:14448,15049919:14449,15050115:14450,15050118:14451,15050130:14452,15050131:14453,15050137:14454,15050139:14455,15050141:14456,15050142:14457,15050143:14458,15050145:14459,15050147:14460,15050155:14461,15050157:14462,15050159:14625,15050162:14626,15050165:14627,15050166:14628,15050169:14629,15050171:14630,15050172:14631,15050379:14632,15050380:14633,15050382:14634,15050386:14635,15050389:14636,15050391:14637,15050399:14638,15050404:14639,15050407:14640,15050413:14641,15050414:14642,15050415:14643,15050416:14644,15050419:14645,15050423:14646,15050426:14647,15050428:14648,15050625:14649,15050627:14650,15050628:14651,15050632:14652,15050634:14653,15050637:14654,15050642:14655,15050653:14656,15050654:14657,15050655:14658,15050659:14659,15050660:14660,15050663:14661,15050670:14662,15050671:14663,15050673:14664,15050674:14665,15050676:14666,15050679:14667,15050880:14668,15050884:14669,15050892:14670,15050893:14671,15050894:14672,15050898:14673,15050899:14674,15050910:14675,15050915:14676,15050916:14677,15050919:14678,15050920:14679,15050922:14680,15050925:14681,15050928:14682,15051140:14683,15051141:14684,15051143:14685,15051144:14686,15051148:14687,15051152:14688,15051157:14689,15051166:14690,15051171:14691,15051173:14692,15051175:14693,15051181:14694,15051191:14695,15051194:14696,15051195:14697,15051198:14698,15051403:14699,15051408:14700,15051411:14701,15051414:14702,15051417:14703,15051420:14704,15051422:14705,15051423:14706,15051424:14707,15051426:14708,15051431:14709,15051436:14710,15051441:14711,15051442:14712,15051443:14713,15051445:14714,15051448:14715,15051450:14716,15051451:14717,15051455:14718,15051652:14881,15051654:14882,15051656:14883,15051663:14884,15051674:14885,15051676:14886,15051680:14887,15051685:14888,15051690:14889,15051694:14890,15051701:14891,15051702:14892,15051709:14893,15051904:14894,15051905:14895,15051912:14896,15051927:14897,15051956:14898,15051929:14899,15051931:14900,15051933:14901,15051937:14902,15051941:14903,15051949:14904,15051960:14905,15052161:14906,15052171:14907,15052172:14908,15052178:14909,15052182:14910,15052190:14911,15052200:14912,15052206:14913,15052207:14914,15052220:14915,15052221:14916,15052222:14917,15052223:14918,15052417:14919,15052420:14920,15052422:14921,15052426:14922,15052430:14923,15052432:14924,15052433:14925,15052435:14926,15052436:14927,15052438:14928,15052456:14929,15052457:14930,15052460:14931,15052461:14932,15052463:14933,15052465:14934,15052466:14935,15052471:14936,15052474:14937,15052476:14938,15052672:14939,15052673:14940,15052685:14941,15052687:14942,15052694:14943,15052695:14944,15052696:14945,15052697:14946,15052698:14947,15052704:14948,15052719:14949,15052721:14950,15052724:14951,15052733:14952,15052940:14953,15052951:14954,15052958:14955,15052959:14956,15052963:14957,15052966:14958,15052969:14959,15052971:14960,15052972:14961,15052974:14962,15052976:14963,15052978:14964,15052981:14965,15052982:14966,15053209:14967,15053210:14968,15053212:14969,15053218:14970,15053219:14971,15053223:14972,15053224:14973,15053225:14974,15053229:15137,15053232:15138,15053236:15139,15053237:15140,15053242:15141,15053243:15142,15053244:15143,15053245:15144,15053447:15145,15053448:15146,15053450:15147,15053455:15148,15053458:15149,15053469:15150,15053471:15151,15053472:15152,15053474:15153,15053475:15154,15053478:15155,15053482:15156,15053490:15157,15053492:15158,15053493:15159,15053498:15160,15053705:15161,15053707:15162,15053714:15163,15053725:15164,15053719:15165,15053742:15166,15053745:15167,15053746:15168,15053748:15169,15053953:15170,15053958:15171,15053965:15172,15053970:15173,15053995:15174,15053987:15175,15053988:15176,15053990:15177,15053991:15178,15054001:15179,15054004:15180,15054009:15181,15054013:15182,15054015:15183,15054210:15184,15054211:15185,15054214:15186,15054216:15187,15054229:15188,15054225:15189,15054233:15190,15054218:15191,15054239:15192,15054240:15193,15054241:15194,15054242:15195,15054244:15196,15054250:15197,15054253:15198,15054256:15199,15054265:15200,15054266:15201,15054270:15202,15054271:15203,15054465:15204,15054467:15205,15054472:15206,15054474:15207,15054482:15208,15054483:15209,15054484:15210,15054485:15211,15054489:15212,15054491:15213,15054495:15214,15054496:15215,15054503:15216,15054507:15217,15054512:15218,15054516:15219,15054520:15220,15054521:15221,15054723:15222,15054727:15223,15054731:15224,15054736:15225,15054734:15226,15054744:15227,15054745:15228,15054752:15229,15054756:15230,15054761:15393,15054776:15394,15054777:15395,15054976:15396,15054983:15397,15054989:15398,15054994:15399,15054996:15400,15054997:15401,15055e3:15402,15055007:15403,15055008:15404,15055022:15405,15055016:15406,15055026:15407,15055029:15408,15055038:15409,15055243:15410,15055248:15411,15055241:15412,15055249:15413,15055254:15414,15055256:15415,15055259:15416,15055260:15417,15055262:15418,15055272:15419,15055274:15420,15055275:15421,15055276:15422,15055277:15423,15055278:15424,15055280:15425,15055488:15426,15055499:15427,15055502:15428,15055522:15429,15055524:15430,15055525:15431,15055528:15432,15055530:15433,15055532:15434,15055537:15435,15055539:15436,15055549:15437,15055550:15438,15055551:15439,15055750:15440,15055756:15441,15055755:15442,15055758:15443,15055761:15444,15055762:15445,15055764:15446,15055765:15447,15055772:15448,15055774:15449,15055781:15450,15055787:15451,15056002:15452,15056006:15453,15056007:15454,15056008:15455,15056014:15456,15056025:15457,15056028:15458,15056029:15459,15056033:15460,15056034:15461,15056035:15462,15056036:15463,15056040:15464,15056043:15465,15056044:15466,15056046:15467,15056048:15468,15056052:15469,15056054:15470,15056059:15471,15056061:15472,15056063:15473,15056256:15474,15056260:15475,15056261:15476,15056263:15477,15056269:15478,15056272:15479,15056276:15480,15056280:15481,15056283:15482,15056288:15483,15056291:15484,15056292:15485,15056295:15486,15056303:15649,15056306:15650,15056308:15651,15056309:15652,15056312:15653,15056314:15654,15056317:15655,15056318:15656,15056521:15657,15056525:15658,15056527:15659,15056534:15660,15056540:15661,15056541:15662,15056546:15663,15056551:15664,15056555:15665,15056548:15666,15056556:15667,15056559:15668,15056560:15669,15056561:15670,15056568:15671,15056772:15672,15056775:15673,15056776:15674,15056777:15675,15056779:15676,15056784:15677,15056785:15678,15056786:15679,15056787:15680,15056788:15681,15056798:15682,15056801:15683,15056802:15684,15056808:15685,15056809:15686,15056810:15687,15056812:15688,15056813:15689,15056814:15690,15056815:15691,15056818:15692,15056819:15693,15056822:15694,15056826:15695,15056828:15696,15106183:15697,15106186:15698,15106189:15699,15106195:15700,15106196:15701,15106199:15702,15106200:15703,15106202:15704,15106207:15705,15106212:15706,15106221:15707,15106227:15708,15106229:15709,15106432:15710,15106439:15711,15106440:15712,15106441:15713,15106444:15714,15106449:15715,15106452:15716,15106454:15717,15106455:15718,15106461:15719,15106465:15720,15106471:15721,15106481:15722,15106494:15723,15106495:15724,15106690:15725,15106694:15726,15106696:15727,15106698:15728,15106702:15729,15106705:15730,15106707:15731,15106709:15732,15106712:15733,15106717:15734,15106718:15735,15106722:15736,15106724:15737,15106725:15738,15106728:15739,15106736:15740,15106737:15741,15106743:15742,15106747:15905,15106750:15906,15106946:15907,15106948:15908,15106952:15909,15106953:15910,15106954:15911,15106955:15912,15106958:15913,15106959:15914,15106964:15915,15106965:15916,15106969:15917,15106971:15918,15106973:15919,15106974:15920,15106978:15921,15106981:15922,15106994:15923,15106997:15924,15107e3:15925,15107004:15926,15107005:15927,15107202:15928,15107207:15929,15107210:15930,15107212:15931,15107216:15932,15107217:15933,15107218:15934,15107219:15935,15107220:15936,15107222:15937,15107223:15938,15107225:15939,15107228:15940,15107230:15941,15107234:15942,15107242:15943,15107243:15944,15107248:15945,15107249:15946,15107253:15947,15107254:15948,15107255:15949,15107257:15950,15107457:15951,15107461:15952,15107462:15953,15107465:15954,15107486:15955,15107488:15956,15107500:15957,15107506:15958,15107512:15959,15107515:15960,15107516:15961,15107519:15962,15107712:15963,15107713:15964,15107715:15965,15107716:15966,15107723:15967,15107725:15968,15107730:15969,15107731:15970,15107735:15971,15107736:15972,15107740:15973,15107741:15974,15107743:15975,15107744:15976,15107749:15977,15107752:15978,15107754:15979,15107757:15980,15107768:15981,15107769:15982,15107772:15983,15107968:15984,15107969:15985,15107970:15986,15107982:15987,15107983:15988,15107989:15989,15107996:15990,15107997:15991,15107998:15992,15107999:15993,15108001:15994,15108002:15995,15108007:15996,15108009:15997,15108005:15998,15108012:16161,15108013:16162,15108015:16163,15108225:16164,15108227:16165,15108228:16166,15108231:16167,15108243:16168,15108245:16169,15108252:16170,15108256:16171,15108258:16172,15108259:16173,15108263:16174,15108265:16175,15108267:16176,15108281:16177,15108285:16178,15108482:16179,15108483:16180,15108484:16181,15108486:16182,15108492:16183,15108496:16184,15108497:16185,15108498:16186,15108500:16187,15108502:16188,15108506:16189,15108508:16190,15108516:16191,15108525:16192,15108527:16193,15108531:16194,15108538:16195,15108541:16196,15108749:16197,15108750:16198,15108751:16199,15108752:16200,15108774:16201,15108776:16202,15108787:16203,15108790:16204,15108791:16205,15108794:16206,15108798:16207,15108799:16208,15108996:16209,15109006:16210,15109013:16211,15109014:16212,15109018:16213,15109034:16214,15109042:16215,15109044:16216,15109052:16217,15109053:16218,15109251:16219,15109252:16220,15109258:16221,15109259:16222,15109261:16223,15109264:16224,15109267:16225,15109270:16226,15109272:16227,15109289:16228,15109290:16229,15109293:16230,15109301:16231,15109302:16232,15109305:16233,15109308:16234,15109505:16235,15109506:16236,15109507:16237,15109508:16238,15109510:16239,15109514:16240,15109515:16241,15109518:16242,15109522:16243,15109523:16244,15109524:16245,15109528:16246,15109531:16247,15109541:16248,15109542:16249,15109548:16250,15109549:16251,15109553:16252,15109556:16253,15109557:16254,15109560:16417,15109564:16418,15109565:16419,15109567:16420,15109762:16421,15109764:16422,15109767:16423,15109770:16424,15109776:16425,15109780:16426,15109781:16427,15109785:16428,15109786:16429,15109790:16430,15109796:16431,15109798:16432,15109805:16433,15109806:16434,15109807:16435,15109821:16436,15110017:16437,15110021:16438,15110024:16439,15110030:16440,15110033:16441,15110035:16442,15110036:16443,15110037:16444,15110044:16445,15110048:16446,15110053:16447,15110058:16448,15110060:16449,15110066:16450,15110067:16451,15110069:16452,15110072:16453,15110073:16454,15110281:16455,15110282:16456,15110288:16457,15110290:16458,15110292:16459,15110296:16460,15110302:16461,15110304:16462,15110306:16463,15110308:16464,15110309:16465,15110313:16466,15110314:16467,15110319:16468,15110320:16469,15110325:16470,15110333:16471,15110335:16472,15110539:16473,15110543:16474,15110545:16475,15110546:16476,15110547:16477,15110548:16478,15110554:16479,15110555:16480,15110556:16481,15110557:16482,15110559:16483,15110560:16484,15110561:16485,15110563:16486,15110573:16487,15110579:16488,15110580:16489,15110587:16490,15110589:16491,15110789:16492,15110791:16493,15110799:16494,15110800:16495,15110801:16496,15110808:16497,15110809:16498,15110811:16499,15110813:16500,15110815:16501,15110817:16502,15110819:16503,15110822:16504,15110824:16505,15110828:16506,15110835:16507,15110845:16508,15110846:16509,15110847:16510,15111044:16673,15111049:16674,15111050:16675,15111051:16676,15111052:16677,15111054:16678,15111056:16679,15111057:16680,15111061:16681,15111063:16682,15111076:16683,15111077:16684,15111081:16685,15111082:16686,15111085:16687,15111088:16688,15111093:16689,15111095:16690,15111099:16691,15111103:16692,15111297:16693,15111300:16694,15111304:16695,15111305:16696,15111306:16697,15111311:16698,15111315:16699,15111316:16700,15111318:16701,15111321:16702,15111323:16703,15111326:16704,15111327:16705,15111330:16706,15111334:16707,15111337:16708,15111342:16709,15111345:16710,15111354:16711,15111356:16712,15111357:16713,15111555:16714,15111559:16715,15111561:16716,15111568:16717,15111570:16718,15111572:16719,15111583:16720,15111584:16721,15111591:16722,15111595:16723,15111610:16724,15111613:16725,15111809:16726,15111813:16727,15111818:16728,15111826:16729,15111829:16730,15111832:16731,15111837:16732,15111840:16733,15111843:16734,15111846:16735,15111854:16736,15111858:16737,15111859:16738,15111860:16739,15111871:16740,15112066:16741,15112072:16742,15112073:16743,15112078:16744,15112080:16745,15112084:16746,15112086:16747,15112088:16748,15112095:16749,15112112:16750,15112114:16751,15112116:16752,15112117:16753,15112121:16754,15112126:16755,15112127:16756,15112320:16757,15112324:16758,15112328:16759,15112329:16760,15112333:16761,15112337:16762,15112338:16763,15112341:16764,15112342:16765,15112349:16766,15112350:16929,15112353:16930,15112354:16931,15112355:16932,15112356:16933,15112358:16934,15112361:16935,15112362:16936,15112363:16937,15112364:16938,15112366:16939,15112368:16940,15112369:16941,15112371:16942,15112377:16943,15112375:16944,15112576:16945,15112581:16946,15112582:16947,15112586:16948,15112588:16949,15112593:16950,15112590:16951,15112599:16952,15112600:16953,15112601:16954,15112603:16955,15112604:16956,15112608:16957,15112609:16958,15113147:16959,15112618:16960,15112619:16961,15112620:16962,15112638:16963,15112627:16964,15112629:16965,15112639:16966,15112631:16967,15112632:16968,15112633:16969,15112635:16970,15112832:16971,15112636:16972,15112843:16973,15112844:16974,15112845:16975,15112848:16976,15112850:16977,15112857:16978,15112858:16979,15112859:16980,15112860:16981,15112863:16982,15112864:16983,15112868:16984,15112877:16985,15112881:16986,15112882:16987,15112885:16988,15112891:16989,15112895:16990,15113088:16991,15113090:16992,15113091:16993,15113096:16994,15113100:16995,15113102:16996,15113103:16997,15113108:16998,15113115:16999,15113119:17e3,15113128:17001,15113131:17002,15113132:17003,15113134:17004,15113146:17005,15113349:17006,15113351:17007,15113358:17008,15113363:17009,15113369:17010,15113372:17011,15113376:17012,15113378:17013,15113395:17014,15113406:17015,15113605:17016,15113607:17017,15113608:17018,15113612:17019,15113620:17020,15113621:17021,15113629:17022,15113638:17185,15113644:17186,15113646:17187,15113652:17188,15113654:17189,15113659:17190,15113857:17191,15113860:17192,15113870:17193,15113871:17194,15113873:17195,15113875:17196,15113878:17197,15113880:17198,15113881:17199,15113883:17200,15113904:17201,15113905:17202,15113906:17203,15113909:17204,15113915:17205,15113916:17206,15113917:17207,15114169:17208,15114112:17209,15114114:17210,15114115:17211,15114117:17212,15114120:17213,15114121:17214,15114130:17215,15114135:17216,15114137:17217,15114140:17218,15114145:17219,15114150:17220,15114160:17221,15114162:17222,15114166:17223,15114167:17224,15114642:17225,15114388:17226,15114393:17227,15114397:17228,15114399:17229,15114408:17230,15114407:17231,15114412:17232,15114413:17233,15114415:17234,15114416:17235,15114417:17236,15114419:17237,15114427:17238,15114431:17239,15114628:17240,15114629:17241,15114634:17242,15114636:17243,15114645:17244,15114647:17245,15114648:17246,15114651:17247,15114667:17248,15114670:17249,15114671:17250,15114672:17251,15114673:17252,15114674:17253,15114677:17254,15114681:17255,15114682:17256,15114683:17257,15114684:17258,15114882:17259,15114884:17260,15114886:17261,15114888:17262,15114902:17263,15114904:17264,15114906:17265,15114908:17266,15114913:17267,15114915:17268,15114917:17269,15114921:17270,15114922:17271,15114926:17272,15114930:17273,15114939:17274,15115141:17275,15115144:17276,15115148:17277,15115151:17278,15115152:17441,15115153:17442,15115155:17443,15115158:17444,15115161:17445,15115164:17446,15115165:17447,15115173:17448,15115176:17449,15115178:17450,15115179:17451,15115180:17452,15115181:17453,15115184:17454,15115185:17455,15115189:17456,15115190:17457,15115195:17458,15115196:17459,15115197:17460,15115398:17461,15115401:17462,15115402:17463,15115408:17464,15115409:17465,15115411:17466,15115414:17467,15115415:17468,15115441:17469,15115443:17470,15115445:17471,15115448:17472,15115451:17473,15115650:17474,15115653:17475,15115657:17476,15115662:17477,15115671:17478,15115675:17479,15115683:17480,15115684:17481,15115685:17482,15115686:17483,15115688:17484,15115689:17485,15115692:17486,15115696:17487,15115697:17488,15115698:17489,15115706:17490,15115707:17491,15115711:17492,15115904:17493,15115917:17494,15115922:17495,15115926:17496,15115928:17497,15115937:17498,15115941:17499,15115942:17500,15115944:17501,15115947:17502,15115949:17503,15115951:17504,15115959:17505,15115960:17506,15115962:17507,15115964:17508,15116165:17509,15116168:17510,15116177:17511,15116182:17512,15116183:17513,15116194:17514,15116197:17515,15116206:17516,15116207:17517,15116209:17518,15116211:17519,15116213:17520,15116222:17521,15116416:17522,15116417:17523,15116419:17524,15116431:17525,15116433:17526,15116437:17527,15116442:17528,15116445:17529,15116448:17530,15116452:17531,15116456:17532,15116464:17533,15116466:17534,15116468:17697,15116471:17698,15116475:17699,15116478:17700,15116479:17701,15116677:17702,15116678:17703,15116681:17704,15116682:17705,15116686:17706,15116688:17707,15116689:17708,15116690:17709,15116693:17710,15116694:17711,15116699:17712,15116708:17713,15116711:17714,15116714:17715,15116721:17716,15116723:17717,15116734:17718,15116929:17719,15116931:17720,15116934:17721,15116935:17722,15116937:17723,15116939:17724,15116945:17725,15116955:17726,15116957:17727,15116958:17728,15116959:17729,15116965:17730,15116971:17731,15116975:17732,15116976:17733,15116977:17734,15116980:17735,15116989:17736,15116990:17737,15116991:17738,15117190:17739,15117193:17740,15117192:17741,15117196:17742,15117200:17743,15117204:17744,15117205:17745,15117206:17746,15117212:17747,15117213:17748,15117220:17749,15117223:17750,15117228:17751,15117232:17752,15117233:17753,15117234:17754,15117244:17755,15117245:17756,15117442:17757,15117443:17758,15117446:17759,15117447:17760,15117449:17761,15117455:17762,15117456:17763,15117457:17764,15117463:17765,15117467:17766,15117470:17767,15117476:17768,15117480:17769,15117483:17770,15117484:17771,15117487:17772,15117493:17773,15117494:17774,15117499:17775,15117503:17776,15117702:17777,15117706:17778,15117709:17779,15117714:17780,15117718:17781,15117720:17782,15117725:17783,15117728:17784,15117735:17785,15117739:17786,15117742:17787,15117744:17788,15117749:17789,15117757:17790,15117758:17953,15117954:17954,15117957:17955,15117975:17956,15117979:17957,15117983:17958,15117984:17959,15117986:17960,15117987:17961,15117992:17962,15117993:17963,15117996:17964,15117997:17965,15117998:17966,15118e3:17967,15118008:17968,15118009:17969,15118013:17970,15118014:17971,15118211:17972,15118212:17973,15118217:17974,15118220:17975,15118230:17976,15118234:17977,15118241:17978,15118243:17979,15118246:17980,15118247:17981,15118254:17982,15118257:17983,15118263:17984,15118265:17985,15118271:17986,15118466:17987,15118468:17988,15118469:17989,15118473:17990,15118477:17991,15118478:17992,15118480:17993,15118482:17994,15118489:17995,15118495:17996,15118502:17997,15118503:17998,15118504:17999,15118508:18e3,15118510:18001,15118515:18002,15118517:18003,15118518:18004,15118522:18005,15118523:18006,15118527:18007,15118730:18008,15118731:18009,15118733:18010,15118735:18011,15118738:18012,15118740:18013,15118745:18014,15118747:18015,15118748:18016,15118763:18017,15118765:18018,15118767:18019,15118772:18020,15118774:18021,15118776:18022,15118777:18023,15118779:18024,15118981:18025,15118982:18026,15118983:18027,15118985:18028,15118996:18029,15118997:18030,15118999:18031,15119e3:18032,15119004:18033,15119007:18034,15119024:18035,15119026:18036,15119028:18037,15119234:18038,15119238:18039,15119245:18040,15119247:18041,15119248:18042,15119249:18043,15119250:18044,15119252:18045,15119254:18046,15119258:18209,15119260:18210,15119264:18211,15119271:18212,15119273:18213,15119275:18214,15119276:18215,15119278:18216,15119282:18217,15119284:18218,15119492:18219,15119495:18220,15119498:18221,15119502:18222,15119503:18223,15119505:18224,15119507:18225,15119514:18226,15119526:18227,15119527:18228,15119528:18229,15118759:18230,15119534:18231,15119535:18232,15119537:18233,15119545:18234,15119548:18235,15119551:18236,15119767:18237,15119774:18238,15119775:18239,15119777:18240,15119781:18241,15119783:18242,15119791:18243,15119792:18244,15119804:18245,15120002:18246,15120007:18247,15120017:18248,15120018:18249,15120020:18250,15120022:18251,15120023:18252,15120024:18253,15120042:18254,15120044:18255,15120052:18256,15120055:18257,15120057:18258,15120061:18259,15120063:18260,15120260:18261,15120264:18262,15120266:18263,15120270:18264,15120271:18265,15120278:18266,15120283:18267,15120285:18268,15120287:18269,15120288:18270,15120290:18271,15120293:18272,15120297:18273,15120303:18274,15120304:18275,15120308:18276,15120310:18277,15120316:18278,15120512:18279,15120516:18280,15120542:18281,15120546:18282,15120551:18283,15120562:18284,15120566:18285,15120569:18286,15120571:18287,15120572:18288,15120772:18289,15120773:18290,15120776:18291,15120777:18292,15120779:18293,15120783:18294,15120785:18295,15120786:18296,15120787:18297,15120788:18298,15120791:18299,15120796:18300,15120797:18301,15120798:18302,15120802:18465,15120803:18466,15120808:18467,15120819:18468,15120827:18469,15120829:18470,15121037:18471,15121043:18472,15121049:18473,15121056:18474,15121063:18475,15121069:18476,15121070:18477,15121073:18478,15121075:18479,15121083:18480,15121087:18481,15121280:18482,15121281:18483,15121283:18484,15121287:18485,15121288:18486,15121290:18487,15121293:18488,15121294:18489,15121295:18490,15121323:18491,15121325:18492,15121326:18493,15121337:18494,15121339:18495,15121341:18496,15121540:18497,15121544:18498,15121546:18499,15121548:18500,15121549:18501,15121558:18502,15121560:18503,15121562:18504,15121563:18505,15121574:18506,15121577:18507,15121578:18508,15121583:18509,15121584:18510,15121587:18511,15121590:18512,15121595:18513,15121596:18514,15121581:18515,15121807:18516,15121809:18517,15121810:18518,15121811:18519,15121815:18520,15121817:18521,15121818:18522,15121821:18523,15121822:18524,15121825:18525,15121826:18526,15121832:18527,15121836:18528,15121853:18529,15121854:18530,15122051:18531,15122055:18532,15122056:18533,15122059:18534,15122060:18535,15122061:18536,15122064:18537,15122066:18538,15122067:18539,15122068:18540,15122070:18541,15122074:18542,15122079:18543,15122080:18544,15122085:18545,15122086:18546,15122087:18547,15122088:18548,15122094:18549,15122095:18550,15122096:18551,15122101:18552,15122102:18553,15122108:18554,15122309:18555,15122311:18556,15122312:18557,15122314:18558,15122330:18721,15122334:18722,15122344:18723,15122345:18724,15122352:18725,15122357:18726,15122361:18727,15122364:18728,15122365:18729,15171712:18730,15171717:18731,15171718:18732,15171719:18733,15171725:18734,15171735:18735,15171744:18736,15171747:18737,15171759:18738,15171764:18739,15171767:18740,15171769:18741,15171772:18742,15171971:18743,15171972:18744,15171976:18745,15171977:18746,15171978:18747,15171979:18748,15171988:18749,15171989:18750,15171997:18751,15171998:18752,15171982:18753,15172004:18754,15172005:18755,15172012:18756,15172014:18757,15172021:18758,15172022:18759,15172030:18760,15172225:18761,15172229:18762,15172230:18763,15172244:18764,15172245:18765,15172246:18766,15172247:18767,15172248:18768,15172251:18769,15172260:18770,15172267:18771,15172272:18772,15172273:18773,15172276:18774,15172279:18775,15172490:18776,15172497:18777,15172499:18778,15172500:18779,15172501:18780,15172502:18781,15172504:18782,15172508:18783,15172516:18784,15172538:18785,15172739:18786,15172740:18787,15172741:18788,15172742:18789,15172743:18790,15172747:18791,15172748:18792,15172751:18793,15172766:18794,15172768:18795,15172779:18796,15172781:18797,15172783:18798,15172784:18799,15172785:18800,15172792:18801,15172993:18802,15172997:18803,15172998:18804,15172999:18805,15173002:18806,15173003:18807,15173008:18808,15173010:18809,15173015:18810,15173018:18811,15173020:18812,15173022:18813,15173024:18814,15173032:18977,15173049:18978,15173248:18979,15173253:18980,15173255:18981,15173260:18982,15173266:18983,15173274:18984,15173275:18985,15173280:18986,15173282:18987,15173295:18988,15173296:18989,15173298:18990,15173299:18991,15173306:18992,15173311:18993,15173504:18994,15173505:18995,15173508:18996,15173515:18997,15173516:18998,15173523:18999,15173526:19e3,15173529:19001,15173530:19002,15173532:19003,15173560:19004,15173566:19005,15173760:19006,15173767:19007,15173768:19008,15173769:19009,15173779:19010,15173783:19011,15173786:19012,15173789:19013,15173791:19014,15173796:19015,15173803:19016,15173807:19017,15173812:19018,15173816:19019,15173817:19020,15174017:19021,15174018:19022,15174019:19023,15174021:19024,15174030:19025,15174031:19026,15174032:19027,15174035:19028,15174037:19029,15174038:19030,15174042:19031,15174044:19032,15174046:19033,15174048:19034,15174051:19035,15174056:19036,15174059:19037,15174062:19038,15174063:19039,15174065:19040,15174071:19041,15174072:19042,15174075:19043,15174076:19044,15174079:19045,15174276:19046,15174281:19047,15174285:19048,15174286:19049,15174291:19050,15174299:19051,15174312:19052,15174317:19053,15174318:19054,15174321:19055,15174324:19056,15174334:19057,15174529:19058,15174535:19059,15174537:19060,15174540:19061,15174549:19062,15174550:19063,15174552:19064,15174559:19065,15174565:19066,15174579:19067,15174580:19068,15174586:19069,15174587:19070,15174590:19233,15174786:19234,15174788:19235,15174789:19236,15174791:19237,15174795:19238,15174797:19239,15174802:19240,15174803:19241,15174808:19242,15174809:19243,15174814:19244,15174818:19245,15174820:19246,15174823:19247,15174824:19248,15174828:19249,15174833:19250,15174834:19251,15174837:19252,15174842:19253,15174843:19254,15174845:19255,15175043:19256,15175053:19257,15175056:19258,15175058:19259,15175062:19260,15175064:19261,15175069:19262,15175070:19263,15175071:19264,15175072:19265,15175078:19266,15175079:19267,15175081:19268,15175083:19269,15175084:19270,15175086:19271,15175087:19272,15175089:19273,15175095:19274,15175097:19275,15175100:19276,15175296:19277,15175297:19278,15175299:19279,15175301:19280,15175302:19281,15175310:19282,15175312:19283,15175315:19284,15175317:19285,15175319:19286,15175320:19287,15175324:19288,15175326:19289,15175327:19290,15175328:19291,15175330:19292,15175333:19293,15175334:19294,15175338:19295,15175339:19296,15175341:19297,15175349:19298,15175351:19299,15175353:19300,15175356:19301,15175357:19302,15175359:19303,15175557:19304,15175558:19305,15175561:19306,15175563:19307,15175564:19308,15175567:19309,15175570:19310,15175571:19311,15175574:19312,15175577:19313,15175581:19314,15175585:19315,15175587:19316,15175590:19317,15175591:19318,15175593:19319,15175604:19320,15175605:19321,15175607:19322,15175609:19323,15175610:19324,15175611:19325,15175613:19326,15175615:19489,15175808:19490,15175809:19491,15175812:19492,15175815:19493,15175818:19494,15175825:19495,15175834:19496,15175835:19497,15175844:19498,15175846:19499,15175848:19500,15175849:19501,15175850:19502,15175851:19503,15175852:19504,15175853:19505,15175854:19506,15175855:19507,15175856:19508,15175857:19509,15175865:19510,15176064:19511,15176067:19512,15176068:19513,15176070:19514,15176071:19515,15176075:19516,15176077:19517,15176081:19518,15176082:19519,15176087:19520,15176093:19521,15176098:19522,15176102:19523,15176103:19524,15176104:19525,15176107:19526,15176109:19527,15176110:19528,15176113:19529,15176114:19530,15176320:19531,15176321:19532,15176325:19533,15176326:19534,15176327:19535,15176329:19536,15176335:19537,15176336:19538,15176337:19539,15176338:19540,15176344:19541,15176345:19542,15176346:19543,15176348:19544,15176351:19545,15176352:19546,15176353:19547,15176355:19548,15176358:19549,15176360:19550,15176361:19551,15176362:19552,15176363:19553,15176366:19554,15176367:19555,15176369:19556,15176370:19557,15176373:19558,15176377:19559,15176379:19560,15176383:19561,15176584:19562,15176585:19563,15176588:19564,15176592:19565,15176595:19566,15176600:19567,15176602:19568,15176603:19569,15176606:19570,15176607:19571,15176612:19572,15176616:19573,15176618:19574,15176619:19575,15176623:19576,15176628:19577,15176634:19578,15176635:19579,15176636:19580,15176639:19581,15176838:19582,15176850:19745,15176854:19746,15176855:19747,15176864:19748,15176865:19749,15176868:19750,15176871:19751,15176873:19752,15176874:19753,15176879:19754,15176886:19755,15176889:19756,15176893:19757,15176894:19758,15176895:19759,15177088:19760,15177091:19761,15177095:19762,15177096:19763,15177102:19764,15177104:19765,15177106:19766,15177111:19767,15177118:19768,15177119:19769,15177121:19770,15177135:19771,15177137:19772,15177145:19773,15177146:19774,15177147:19775,15177148:19776,15177149:19777,15177150:19778,15177345:19779,15177349:19780,15177360:19781,15177362:19782,15177363:19783,15177365:19784,15177369:19785,15177372:19786,15177378:19787,15177380:19788,15177396:19789,15177402:19790,15177407:19791,15177600:19792,15177601:19793,15177604:19794,15177606:19795,15177612:19796,15177614:19797,15177615:19798,15177623:19799,15177628:19800,15177631:19801,15177632:19802,15177633:19803,15177636:19804,15177639:19805,15177644:19806,15177646:19807,15177647:19808,15177649:19809,15177657:19810,15177856:19811,15177858:19812,15177859:19813,15177860:19814,15177863:19815,15177864:19816,15177866:19817,15177868:19818,15177871:19819,15177874:19820,15177875:19821,15177877:19822,15177878:19823,15177881:19824,15177883:19825,15177884:19826,15177885:19827,15177886:19828,15177891:19829,15177893:19830,15177894:19831,15177897:19832,15177901:19833,15177906:19834,15177907:19835,15177909:19836,15177912:19837,15177913:19838,15177914:20001,15177916:20002,15178122:20003,15178112:20004,15178113:20005,15178115:20006,15178116:20007,15178117:20008,15178121:20009,15178123:20010,15178133:20011,15178137:20012,15178143:20013,15178148:20014,15178149:20015,15178157:20016,15178158:20017,15178159:20018,15178161:20019,15178164:20020,15178369:20021,15178373:20022,15178380:20023,15178381:20024,15178389:20025,15178395:20026,15178396:20027,15178397:20028,15178399:20029,15178400:20030,15178402:20031,15178403:20032,15178404:20033,15178405:20034,15178406:20035,15178407:20036,15178408:20037,15178410:20038,15178413:20039,15178429:20040,15178625:20041,15178629:20042,15178633:20043,15178635:20044,15178636:20045,15178638:20046,15178644:20047,15178649:20048,15178656:20049,15178662:20050,15178664:20051,15178668:20052,15178672:20053,15178673:20054,15178678:20055,15178681:20056,15178684:20057,15178880:20058,15178886:20059,15178890:20060,15178894:20061,15178898:20062,15178900:20063,15178901:20064,15178903:20065,15178905:20066,15178906:20067,15178908:20068,15178914:20069,15178920:20070,15178925:20071,15178926:20072,15178927:20073,15178932:20074,15178933:20075,15178934:20076,15178937:20077,15178941:20078,15178942:20079,15179138:20080,15179141:20081,15179142:20082,15179146:20083,15179149:20084,15179150:20085,15179151:20086,15179154:20087,15179158:20088,15179159:20089,15179164:20090,15179166:20091,15179167:20092,15179168:20093,15179170:20094,15179172:20257,15179175:20258,15179178:20259,15179180:20260,15179184:20261,15179186:20262,15179187:20263,15179188:20264,15179194:20265,15179197:20266,15179392:20267,15179396:20268,15179404:20269,15179405:20270,15179412:20271,15179413:20272,15179414:20273,15179418:20274,15179423:20275,15179426:20276,15179431:20277,15179434:20278,15179438:20279,15179439:20280,15179441:20281,15179445:20282,15179454:20283,15179651:20284,15179657:20285,15179665:20286,15179666:20287,15179669:20288,15179673:20289,15179678:20290,15179679:20291,15179680:20292,15179684:20293,15179686:20294,15179690:20295,15179692:20296,15179696:20297,15179697:20298,15179700:20299,15179704:20300,15179707:20301,15179909:20302,15179910:20303,15179913:20304,15179917:20305,15179918:20306,15179921:20307,15179933:20308,15179937:20309,15179938:20310,15179939:20311,15179949:20312,15179950:20313,15179952:20314,15179957:20315,15179959:20316,15180163:20317,15180164:20318,15180167:20319,15180168:20320,15180172:20321,15180174:20322,15180178:20323,15180188:20324,15180190:20325,15180192:20326,15180193:20327,15180195:20328,15180196:20329,15180200:20330,15180202:20331,15180206:20332,15180218:20333,15180222:20334,15180426:20335,15180431:20336,15180436:20337,15180440:20338,15180449:20339,15180445:20340,15180446:20341,15180447:20342,15180452:20343,15180456:20344,15180460:20345,15180461:20346,15180464:20347,15180465:20348,15180466:20349,15180467:20350,15180475:20513,15180477:20514,15180479:20515,15180679:20516,15180680:20517,15180681:20518,15180684:20519,15180686:20520,15180690:20521,15180691:20522,15180693:20523,15180694:20524,15180708:20525,15180699:20526,15180703:20527,15180704:20528,15180705:20529,15180710:20530,15180714:20531,15180722:20532,15180723:20533,15180928:20534,15180726:20535,15180727:20536,15180730:20537,15180731:20538,15180735:20539,15180934:20540,15180940:20541,15180944:20542,15180954:20543,15180956:20544,15180958:20545,15180959:20546,15180960:20547,15180965:20548,15180967:20549,15180969:20550,15180973:20551,15180977:20552,15180980:20553,15180981:20554,15180987:20555,15180989:20556,15180991:20557,15181188:20558,15181189:20559,15181190:20560,15181194:20561,15181195:20562,15181199:20563,15181201:20564,15181204:20565,15181208:20566,15181211:20567,15181212:20568,15181223:20569,15181225:20570,15181227:20571,15181234:20572,15181241:20573,15181243:20574,15181244:20575,15181246:20576,15181451:20577,15181452:20578,15181457:20579,15181459:20580,15181460:20581,15181461:20582,15181462:20583,15181464:20584,15181467:20585,15181468:20586,15181473:20587,15181480:20588,15181481:20589,15181483:20590,15181487:20591,15181489:20592,15181492:20593,15181496:20594,15181499:20595,15181698:20596,15181700:20597,15181703:20598,15181704:20599,15181706:20600,15181711:20601,15181716:20602,15181718:20603,15181722:20604,15181725:20605,15181726:20606,15181728:20769,15181730:20770,15181733:20771,15181738:20772,15181739:20773,15181741:20774,15181745:20775,15181752:20776,15181756:20777,15181954:20778,15181955:20779,15181959:20780,15181961:20781,15181962:20782,15181964:20783,15181969:20784,15181973:20785,15181979:20786,15181982:20787,15181985:20788,15181991:20789,15181995:20790,15181997:20791,15181999:20792,15182e3:20793,15182004:20794,15182005:20795,15182008:20796,15182009:20797,15182010:20798,15182212:20799,15182213:20800,15182215:20801,15182216:20802,15182220:20803,15182229:20804,15182230:20805,15182233:20806,15182236:20807,15182237:20808,15182239:20809,15182240:20810,15182245:20811,15182247:20812,15182250:20813,15182253:20814,15182261:20815,15182264:20816,15182270:20817,15182464:20818,15182466:20819,15182469:20820,15182470:20821,15182474:20822,15182475:20823,15182480:20824,15182481:20825,15182484:20826,15182494:20827,15182496:20828,15182499:20829,15182508:20830,15182515:20831,15182517:20832,15182521:20833,15182523:20834,15182524:20835,15182726:20836,15182729:20837,15182732:20838,15182734:20839,15182737:20840,15182747:20841,15182760:20842,15182761:20843,15182763:20844,15182764:20845,15182769:20846,15182772:20847,15182779:20848,15182781:20849,15182782:20850,15182983:20851,15182996:20852,15183007:20853,15183011:20854,15183015:20855,15183017:20856,15183018:20857,15183019:20858,15183021:20859,15183022:20860,15183023:20861,15183024:20862,15183025:21025,15183028:21026,15183037:21027,15183039:21028,15183232:21029,15183233:21030,15183239:21031,15183246:21032,15183253:21033,15183264:21034,15183268:21035,15183270:21036,15183273:21037,15183274:21038,15183277:21039,15183279:21040,15183282:21041,15183283:21042,15183287:21043,15183492:21044,15183497:21045,15183502:21046,15183504:21047,15183505:21048,15183510:21049,15183515:21050,15183518:21051,15183520:21052,15183525:21053,15183532:21054,15183535:21055,15183536:21056,15183538:21057,15183541:21058,15183542:21059,15183546:21060,15183547:21061,15183548:21062,15183549:21063,15183746:21064,15183749:21065,15183752:21066,15183754:21067,15183764:21068,15183766:21069,15183767:21070,15183769:21071,15183770:21072,15183771:21073,15183784:21074,15183786:21075,15183794:21076,15183796:21077,15183797:21078,15183800:21079,15183801:21080,15183802:21081,15183804:21082,15183806:21083,15184001:21084,15184002:21085,15184003:21086,15184004:21087,15184006:21088,15184009:21089,15184011:21090,15184012:21091,15184014:21092,15184015:21093,15184025:21094,15184027:21095,15184032:21096,15184037:21097,15184038:21098,15184040:21099,15184044:21100,15184049:21101,15184051:21102,15184052:21103,15184054:21104,15184057:21105,15184058:21106,15184262:21107,15184266:21108,15184277:21109,15184273:21110,15184274:21111,15184275:21112,15184281:21113,15184282:21114,15184283:21115,15184284:21116,15184285:21117,15184286:21118,15184289:21281,15184291:21282,15184295:21283,15184297:21284,15184301:21285,15184302:21286,15184304:21287,15184306:21288,15184313:21289,15184316:21290,15184317:21291,15184518:21292,15184519:21293,15184527:21294,15184532:21295,15184542:21296,15184544:21297,15184550:21298,15184560:21299,15184566:21300,15184567:21301,15184570:21302,15184571:21303,15184572:21304,15184575:21305,15184772:21306,15184775:21307,15184776:21308,15184777:21309,15184781:21310,15184783:21311,15184787:21312,15184788:21313,15184789:21314,15184791:21315,15184793:21316,15184794:21317,15184797:21318,15184806:21319,15184809:21320,15184811:21321,15184821:21322,15185027:21323,15185031:21324,15185032:21325,15185033:21326,15185039:21327,15185041:21328,15185042:21329,15185043:21330,15185046:21331,15185053:21332,15185054:21333,15185059:21334,15185062:21335,15185066:21336,15185069:21337,15185073:21338,15185084:21339,15185085:21340,15185086:21341,15185280:21342,15185281:21343,15185287:21344,15185288:21345,15185293:21346,15185297:21347,15185299:21348,15185303:21349,15185305:21350,15185306:21351,15185308:21352,15185309:21353,15185317:21354,15185319:21355,15185322:21356,15185328:21357,15185336:21358,15185338:21359,15185339:21360,15185343:21361,15185537:21362,15185538:21363,15185539:21364,15185541:21365,15185542:21366,15185544:21367,15185547:21368,15185548:21369,15185549:21370,15185553:21371,15185558:21372,15185559:21373,15185565:21374,15185566:21537,15185574:21538,15185575:21539,15185578:21540,15185587:21541,15185590:21542,15185591:21543,15185593:21544,15185794:21545,15185795:21546,15185796:21547,15185797:21548,15185798:21549,15185804:21550,15185805:21551,15185806:21552,15185815:21553,15185817:21554,15186048:21555,15185826:21556,15185829:21557,15185830:21558,15185834:21559,15185835:21560,15185837:21561,15185841:21562,15185845:21563,15185846:21564,15185849:21565,15185850:21566,15186056:21567,15186064:21568,15186065:21569,15186069:21570,15186071:21571,15186076:21572,15186077:21573,15186080:21574,15186087:21575,15186088:21576,15186092:21577,15186093:21578,15186095:21579,15186099:21580,15186102:21581,15186111:21582,15186308:21583,15186309:21584,15186311:21585,15186318:21586,15186320:21587,15186322:21588,15186328:21589,15186335:21590,15186337:21591,15186338:21592,15186341:21593,15186347:21594,15186350:21595,15186351:21596,15186355:21597,15186360:21598,15186366:21599,15186561:21600,15186566:21601,15186567:21602,15186570:21603,15186573:21604,15186577:21605,15186581:21606,15186584:21607,15186586:21608,15186589:21609,15186590:21610,15187132:21611,15187131:21612,15187133:21613,15187134:21614,15187135:21615,15187331:21616,15187332:21617,15187335:21618,15187343:21619,15187346:21620,15187347:21621,15187355:21622,15187356:21623,15187357:21624,15187361:21625,15187363:21626,15187364:21627,15187365:21628,15187366:21629,15187373:21630,15187377:21793,15187389:21794,15187390:21795,15187391:21796,15187584:21797,15187595:21798,15187597:21799,15187599:21800,15187600:21801,15187601:21802,15187606:21803,15187607:21804,15187612:21805,15187617:21806,15187618:21807,15187622:21808,15187626:21809,15187629:21810,15187636:21811,15187644:21812,15187647:21813,15187840:21814,15187843:21815,15187848:21816,15187854:21817,15187855:21818,15187867:21819,15187871:21820,15187875:21821,15187877:21822,15187880:21823,15187884:21824,15187886:21825,15187887:21826,15187890:21827,15187898:21828,15187901:21829,15187902:21830,15187903:21831,15237255:21832,15237256:21833,15237258:21834,15237261:21835,15237262:21836,15237263:21837,15237265:21838,15237267:21839,15237268:21840,15237270:21841,15237277:21842,15237278:21843,15237279:21844,15237280:21845,15237284:21846,15237286:21847,15237292:21848,15237294:21849,15237296:21850,15237300:21851,15237301:21852,15237303:21853,15237305:21854,15237306:21855,15237308:21856,15237310:21857,15237504:21858,15237508:21859,15237536:21860,15237540:21861,15237542:21862,15237549:21863,15237553:21864,15237557:21865,15237761:21866,15237768:21867,15237774:21868,15237788:21869,15237790:21870,15237798:21871,15237799:21872,15237803:21873,15237816:21874,15237817:21875,15238024:21876,15238029:21877,15238031:21878,15238034:21879,15238036:21880,15238037:21881,15238039:21882,15238040:21883,15238048:21884,15238061:21885,15238062:21886,15238064:22049,15238066:22050,15238067:22051,15238070:22052,15238073:22053,15238074:22054,15238078:22055,15238275:22056,15238283:22057,15238294:22058,15238295:22059,15238296:22060,15238300:22061,15238302:22062,15238304:22063,15238308:22064,15238311:22065,15238316:22066,15238320:22067,15238325:22068,15238330:22069,15238332:22070,15238533:22071,15238535:22072,15238538:22073,15238540:22074,15238546:22075,15238551:22076,15238560:22077,15238561:22078,15238567:22079,15238568:22080,15238569:22081,15238573:22082,15238575:22083,15238583:22084,15238785:22085,15238800:22086,15238788:22087,15238789:22088,15238790:22089,15238795:22090,15238798:22091,15238806:22092,15238808:22093,15238811:22094,15238814:22095,15238818:22096,15238830:22097,15238834:22098,15238836:22099,15238843:22100,15239051:22101,15239043:22102,15239045:22103,15239050:22104,15239054:22105,15239055:22106,15239061:22107,15239063:22108,15239067:22109,15239069:22110,15239070:22111,15239073:22112,15239076:22113,15239083:22114,15239084:22115,15239088:22116,15239089:22117,15239090:22118,15239093:22119,15239094:22120,15239096:22121,15239097:22122,15239101:22123,15239103:22124,15239296:22125,15239299:22126,15239311:22127,15239315:22128,15239316:22129,15239321:22130,15239322:22131,15239325:22132,15239329:22133,15239330:22134,15239336:22135,15239346:22136,15239348:22137,15239354:22138,15239555:22139,15239556:22140,15239557:22141,15239558:22142,15239563:22305,15239566:22306,15239567:22307,15239569:22308,15239574:22309,15239580:22310,15239584:22311,15239587:22312,15239591:22313,15239597:22314,15239604:22315,15239611:22316,15239613:22317,15239615:22318,15239808:22319,15239809:22320,15239811:22321,15239812:22322,15239815:22323,15239817:22324,15239818:22325,15239822:22326,15239825:22327,15239828:22328,15239830:22329,15239832:22330,15239834:22331,15239835:22332,15239840:22333,15239841:22334,15239843:22335,15239844:22336,15239847:22337,15239848:22338,15239849:22339,15239850:22340,15239854:22341,15239856:22342,15239858:22343,15239860:22344,15239863:22345,15239866:22346,15239868:22347,15239870:22348,15239871:22349,15240070:22350,15240080:22351,15240085:22352,15240090:22353,15240096:22354,15240098:22355,15240100:22356,15240104:22357,15240106:22358,15240109:22359,15240111:22360,15240118:22361,15240119:22362,15240125:22363,15240126:22364,15240320:22365,15240321:22366,15240327:22367,15240328:22368,15240330:22369,15240331:22370,15240596:22371,15240347:22372,15240349:22373,15240350:22374,15240351:22375,15240353:22376,15240354:22377,15240364:22378,15240365:22379,15240366:22380,15240368:22381,15240371:22382,15240375:22383,15240378:22384,15240380:22385,15240381:22386,15240578:22387,15240579:22388,15240580:22389,15240583:22390,15240589:22391,15240590:22392,15240593:22393,15240597:22394,15240598:22395,15240599:22396,15240624:22397,15240632:22398,15240637:22561,15240639:22562,15240832:22563,15240834:22564,15240836:22565,15240838:22566,15240845:22567,15240850:22568,15240852:22569,15240853:22570,15240856:22571,15240857:22572,15240859:22573,15240860:22574,15240861:22575,15240870:22576,15240871:22577,15240873:22578,15240876:22579,15240894:22580,15240895:22581,15241088:22582,15241095:22583,15241097:22584,15241103:22585,15241104:22586,15241105:22587,15241108:22588,15241117:22589,15240595:22590,15241128:22591,15241130:22592,15241142:22593,15241144:22594,15241145:22595,15241148:22596,15241345:22597,15241350:22598,15241354:22599,15241359:22600,15241361:22601,15241365:22602,15241369:22603,15240877:22604,15241391:22605,15241401:22606,15241605:22607,15241607:22608,15241608:22609,15241610:22610,15241613:22611,15241615:22612,15241617:22613,15241618:22614,15241622:22615,15241624:22616,15241625:22617,15241626:22618,15241628:22619,15241632:22620,15241636:22621,15241637:22622,15241639:22623,15241642:22624,15241648:22625,15241651:22626,15241652:22627,15241654:22628,15241656:22629,15241660:22630,15241661:22631,15241857:22632,15241861:22633,15241874:22634,15241875:22635,15241877:22636,15241886:22637,15241894:22638,15241896:22639,15241897:22640,15241898:22641,15241903:22642,15241905:22643,15241908:22644,15241914:22645,15241917:22646,15241918:22647,15242112:22648,15242114:22649,15242119:22650,15242120:22651,15242124:22652,15242127:22653,15242131:22654,15242140:22817,15242151:22818,15242154:22819,15242159:22820,15242160:22821,15242161:22822,15242162:22823,15242167:22824,15242418:22825,15242170:22826,15242171:22827,15242173:22828,15242370:22829,15242371:22830,15242375:22831,15242380:22832,15242382:22833,15242384:22834,15242396:22835,15242398:22836,15242402:22837,15242403:22838,15242404:22839,15242405:22840,15242407:22841,15242410:22842,15242411:22843,15242415:22844,15242419:22845,15242420:22846,15242422:22847,15242431:22848,15242630:22849,15242639:22850,15242640:22851,15242641:22852,15242642:22853,15242643:22854,15242646:22855,15242649:22856,15242652:22857,15242653:22858,15242654:22859,15242655:22860,15242656:22861,15242657:22862,15242658:22863,15242660:22864,15242667:22865,15242671:22866,15242681:22867,15242682:22868,15242683:22869,15242685:22870,15242687:22871,15242881:22872,15242885:22873,15242886:22874,15242889:22875,15242891:22876,15242892:22877,15242895:22878,15242899:22879,15242904:22880,15242909:22881,15242911:22882,15242912:22883,15242914:22884,15242917:22885,15242919:22886,15242932:22887,15242934:22888,15242935:22889,15242936:22890,15242940:22891,15242941:22892,15242942:22893,15242943:22894,15243138:22895,15243143:22896,15243146:22897,15243147:22898,15243150:22899,15242925:22900,15243160:22901,15243162:22902,15243167:22903,15243168:22904,15243174:22905,15243176:22906,15243181:22907,15243187:22908,15243190:22909,15243196:22910,15243199:23073,15243392:23074,15243396:23075,15243397:23076,15243405:23077,15243406:23078,15243408:23079,15243409:23080,15243410:23081,15243416:23082,15243417:23083,15243419:23084,15243422:23085,15243425:23086,15243431:23087,15243433:23088,15243446:23089,15243448:23090,15243450:23091,15243452:23092,15243453:23093,15243648:23094,15243650:23095,15243654:23096,15243666:23097,15243667:23098,15243670:23099,15243671:23100,15243672:23101,15243673:23102,15243677:23103,15243680:23104,15243681:23105,15243682:23106,15243683:23107,15243684:23108,15243689:23109,15243692:23110,15243695:23111,15243701:23112,15243702:23113,15243703:23114,15243706:23115,15243917:23116,15243921:23117,15243926:23118,15243928:23119,15243930:23120,15243932:23121,15243937:23122,15243942:23123,15243943:23124,15243944:23125,15243949:23126,15243953:23127,15243955:23128,15243956:23129,15243957:23130,15243959:23131,15243960:23132,15243961:23133,15243967:23134,15244160:23135,15244161:23136,15244163:23137,15244165:23138,15244177:23139,15244178:23140,15244181:23141,15244183:23142,15244186:23143,15244188:23144,15244192:23145,15244195:23146,15244197:23147,15244199:23148,15243912:23149,15244218:23150,15244220:23151,15244221:23152,15244420:23153,15244421:23154,15244423:23155,15244427:23156,15244430:23157,15244431:23158,15244432:23159,15244435:23160,15244436:23161,15244441:23162,15244446:23163,15244447:23164,15244449:23165,15244451:23166,15244456:23329,15244462:23330,15244463:23331,15244465:23332,15244466:23333,15244473:23334,15244474:23335,15244476:23336,15244477:23337,15244478:23338,15244672:23339,15244675:23340,15244677:23341,15244685:23342,15244696:23343,15244701:23344,15244705:23345,15244708:23346,15244709:23347,15244719:23348,15244721:23349,15244722:23350,15244731:23351,15244931:23352,15244932:23353,15244933:23354,15244934:23355,15244935:23356,15244936:23357,15244937:23358,15244939:23359,15244940:23360,15244944:23361,15244947:23362,15244949:23363,15244951:23364,15244952:23365,15244953:23366,15244958:23367,15244960:23368,15244963:23369,15244967:23370,15244972:23371,15244973:23372,15244974:23373,15244977:23374,15244981:23375,15244990:23376,15244991:23377,15245185:23378,15245192:23379,15245193:23380,15245194:23381,15245198:23382,15245205:23383,15245206:23384,15245209:23385,15245210:23386,15245212:23387,15245215:23388,15245218:23389,15245219:23390,15245220:23391,15245226:23392,15245227:23393,15245229:23394,15245233:23395,15245235:23396,15245240:23397,15245242:23398,15245247:23399,15245441:23400,15245443:23401,15245446:23402,15245449:23403,15245450:23404,15245451:23405,15245456:23406,15245465:23407,15245458:23408,15245459:23409,15245460:23410,15245464:23411,15245466:23412,15245467:23413,15245468:23414,15245470:23415,15245471:23416,15245480:23417,15245485:23418,15245486:23419,15245488:23420,15245490:23421,15245493:23422,15245498:23585,15245500:23586,15245697:23587,15245699:23588,15245701:23589,15245704:23590,15245705:23591,15245706:23592,15245707:23593,15245710:23594,15245713:23595,15245717:23596,15245718:23597,15245720:23598,15245722:23599,15245724:23600,15245727:23601,15245728:23602,15245732:23603,15245737:23604,15245745:23605,15245753:23606,15245755:23607,15245952:23608,15245976:23609,15245978:23610,15245979:23611,15245980:23612,15245983:23613,15245984:23614,15245992:23615,15245994:23616,15246010:23617,15246013:23618,15246014:23619,15246208:23620,15246218:23621,15246219:23622,15246220:23623,15246221:23624,15246222:23625,15246225:23626,15246226:23627,15246227:23628,15246235:23629,15246238:23630,15246247:23631,15246255:23632,15246256:23633,15246257:23634,15246261:23635,15246263:23636,15246465:23637,15246470:23638,15246477:23639,15246478:23640,15246479:23641,15246485:23642,15246486:23643,15246488:23644,15246489:23645,15246490:23646,15246492:23647,15246496:23648,15246502:23649,15246503:23650,15246504:23651,15246512:23652,15246513:23653,15246514:23654,15246517:23655,15246521:23656,15246522:23657,15246526:23658,15246720:23659,15246722:23660,15246725:23661,15246726:23662,15246729:23663,15246735:23664,15246738:23665,15246743:23666,15246746:23667,15246747:23668,15246748:23669,15246753:23670,15246754:23671,15246755:23672,15246763:23673,15246766:23674,15246768:23675,15246771:23676,15246773:23677,15246778:23678,15246779:23841,15246780:23842,15246781:23843,15246985:23844,15246989:23845,15246992:23846,15246996:23847,15246997:23848,15247003:23849,15247004:23850,15247007:23851,15247008:23852,15247013:23853,15247024:23854,15247028:23855,15247029:23856,15247030:23857,15247031:23858,15247036:23859,15247252:23860,15247253:23861,15247254:23862,15247255:23863,15247256:23864,15247269:23865,15247273:23866,15247275:23867,15247277:23868,15247281:23869,15247283:23870,15247286:23871,15247289:23872,15247293:23873,15247295:23874,15247492:23875,15247493:23876,15247495:23877,15247503:23878,15247505:23879,15247506:23880,15247508:23881,15247509:23882,15247518:23883,15247520:23884,15247522:23885,15247524:23886,15247526:23887,15247531:23888,15247532:23889,15247535:23890,15247541:23891,15247543:23892,15247549:23893,15247550:23894,15247744:23895,15247747:23896,15247749:23897,15247751:23898,15247753:23899,15247757:23900,15247758:23901,15247763:23902,15247766:23903,15247767:23904,15247768:23905,15247772:23906,15247773:23907,15247777:23908,15247781:23909,15247783:23910,15247797:23911,15247798:23912,15247799:23913,15247801:23914,15247802:23915,15247803:23916,15247806:23917,15247807:23918,15248e3:23919,15248003:23920,15248006:23921,15248011:23922,15248015:23923,15248016:23924,15248018:23925,15248022:23926,15248023:23927,15248025:23928,15248031:23929,15248039:23930,15248041:23931,15248046:23932,15248047:23933,15248051:23934,15248054:24097,15248055:24098,15248059:24099,15248062:24100,15248259:24101,15248262:24102,15248264:24103,15248265:24104,15248266:24105,15248273:24106,15248275:24107,15248276:24108,15248277:24109,15248279:24110,15248285:24111,15248287:24112,15248300:24113,15248304:24114,15248308:24115,15248309:24116,15248310:24117,15248316:24118,15248319:24119,15248517:24120,15248518:24121,15248523:24122,15248529:24123,15248540:24124,15248542:24125,15248543:24126,15248522:24127,15248557:24128,15248560:24129,15248567:24130,15248572:24131,15248770:24132,15248771:24133,15248772:24134,15248773:24135,15248774:24136,15248776:24137,15248786:24138,15248787:24139,15248788:24140,15248793:24141,15248781:24142,15248798:24143,15248803:24144,15248813:24145,15248822:24146,15248824:24147,15248825:24148,15248828:24149,15248830:24150,15249025:24151,15249028:24152,15249029:24153,15249035:24154,15249037:24155,15249039:24156,15249044:24157,15249045:24158,15249052:24159,15249054:24160,15249055:24161,15249592:24162,15249593:24163,15249597:24164,15249598:24165,15249797:24166,15249799:24167,15249801:24168,15249803:24169,15249807:24170,15249809:24171,15249811:24172,15249812:24173,15249815:24174,15249816:24175,15249819:24176,15249821:24177,15249817:24178,15249827:24179,15249828:24180,15249830:24181,15249832:24182,15249833:24183,15249837:24184,15249843:24185,15249845:24186,15249846:24187,15249851:24188,15249854:24189,15250054:24190,15250055:24353,15250059:24354,15250064:24355,15250066:24356,15250067:24357,15250073:24358,15250075:24359,15250076:24360,15250084:24361,15250105:24362,15250106:24363,15250309:24364,15250310:24365,15250313:24366,15250315:24367,15250319:24368,15250326:24369,15250325:24370,15250329:24371,15250333:24372,15250337:24373,15250344:24374,15250348:24375,15250351:24376,15250352:24377,15250354:24378,15250357:24379,15250359:24380,15250360:24381,15250366:24382,15250367:24383,15250561:24384,15250563:24385,15250569:24386,15250578:24387,15250583:24388,15250587:24389,15250853:24390,15250857:24391,15250860:24392,15250862:24393,15250879:24394,15251074:24395,15251076:24396,15251080:24397,15251085:24398,15251088:24399,15251089:24400,15251093:24401,15251102:24402,15251103:24403,15251104:24404,15251110:24405,15251115:24406,15251116:24407,15251119:24408,15251122:24409,15251125:24410,15251127:24411,15251129:24412,15251131:24413,15251328:24414,15251333:24415,15251334:24416,15251335:24417,15251336:24418,15251338:24419,15251342:24420,15251345:24421,15251348:24422,15251349:24423,15251351:24424,15251353:24425,15251364:24426,15251365:24427,15251367:24428,15251372:24429,15251376:24430,15251132:24431,15251377:24432,15251378:24433,15251380:24434,15251389:24435,15251585:24436,15251588:24437,15251589:24438,15251590:24439,15251595:24440,15251601:24441,15251604:24442,15251606:24443,15251616:24444,15251617:24445,15251618:24446,15251619:24609,15251622:24610,15251623:24611,15251633:24612,15251635:24613,15251638:24614,15251639:24615,15251640:24616,15251641:24617,15251645:24618,15251840:24619,15251841:24620,15251851:24621,15251853:24622,15251854:24623,15251855:24624,15251860:24625,15251867:24626,15251868:24627,15251869:24628,15251870:24629,15251873:24630,15251874:24631,15251881:24632,15251884:24633,15251885:24634,15251887:24635,15251888:24636,15251889:24637,15251897:24638,15251898:24639,15251899:24640,15252098:24641,15252099:24642,15252105:24643,15252112:24644,15252114:24645,15252117:24646,15252122:24647,15252123:24648,15252125:24649,15252126:24650,15252130:24651,15252135:24652,15252137:24653,15252141:24654,15252142:24655,15252147:24656,15252149:24657,15252154:24658,15252155:24659,15252352:24660,15252353:24661,15252355:24662,15252356:24663,15252359:24664,15252367:24665,15252369:24666,15252372:24667,15252380:24668,15252392:24669,15252398:24670,15252400:24671,15252401:24672,15252407:24673,15252409:24674,15252410:24675,15252397:24676,15252608:24677,15252610:24678,15252615:24679,15252616:24680,15252623:24681,15252624:24682,15252630:24683,15252631:24684,15252632:24685,15252638:24686,15252640:24687,15252641:24688,15252643:24689,15252645:24690,15252647:24691,15252648:24692,15252652:24693,15252653:24694,15252654:24695,15252660:24696,15252661:24697,15252662:24698,15252663:24699,15252666:24700,15252864:24701,15252865:24702,15252867:24865,15252871:24866,15252879:24867,15252881:24868,15252882:24869,15252883:24870,15252884:24871,15252885:24872,15252888:24873,15252893:24874,15252894:24875,15252901:24876,15253149:24877,15253152:24878,15253153:24879,15253156:24880,15253157:24881,15253158:24882,15253173:24883,15253174:24884,15253176:24885,15253182:24886,15253376:24887,15253377:24888,15253382:24889,15253386:24890,15253387:24891,15253389:24892,15253392:24893,15253394:24894,15253395:24895,15253397:24896,15253408:24897,15253411:24898,15253412:24899,15253416:24900,15253422:24901,15253425:24902,15253429:24903,15253430:24904,15253435:24905,15253438:24906,15302786:24907,15302788:24908,15302792:24909,15302796:24910,15302808:24911,15302811:24912,15302824:24913,15302825:24914,15302831:24915,15302826:24916,15302828:24917,15302829:24918,15302835:24919,15302836:24920,15302839:24921,15302847:24922,15303043:24923,15303044:24924,15303052:24925,15303067:24926,15303069:24927,15303074:24928,15303078:24929,15303079:24930,15303084:24931,15303088:24932,15303092:24933,15303097:24934,15303301:24935,15303304:24936,15303307:24937,15303308:24938,15303310:24939,15303312:24940,15303317:24941,15303319:24942,15303320:24943,15303321:24944,15303323:24945,15303328:24946,15303329:24947,15303330:24948,15303333:24949,15303344:24950,15303346:24951,15303347:24952,15303348:24953,15303350:24954,15303357:24955,15303564:24956,15303358:24957,15303555:24958,15303556:25121,15303557:25122,15303559:25123,15303560:25124,15303573:25125,15303575:25126,15303576:25127,15303577:25128,15303580:25129,15303581:25130,15303583:25131,15303589:25132,15303570:25133,15303606:25134,15303595:25135,15303599:25136,15303600:25137,15303604:25138,15303614:25139,15303615:25140,15303808:25141,15303812:25142,15303813:25143,15303814:25144,15303816:25145,15303821:25146,15303824:25147,15303828:25148,15303830:25149,15303831:25150,15303832:25151,15303834:25152,15303836:25153,15303838:25154,15303840:25155,15303845:25156,15303842:25157,15303843:25158,15303847:25159,15303849:25160,15303854:25161,15303855:25162,15303857:25163,15303860:25164,15303862:25165,15303863:25166,15303865:25167,15303866:25168,15303868:25169,15303869:25170,15304067:25171,15304071:25172,15304072:25173,15304079:25174,15304083:25175,15304087:25176,15304089:25177,15304090:25178,15304091:25179,15304097:25180,15304100:25181,15304103:25182,15304109:25183,15304116:25184,15304121:25185,15304122:25186,15304123:25187,15304321:25188,15304323:25189,15304325:25190,15304326:25191,15304330:25192,15304334:25193,15304337:25194,15304339:25195,15304340:25196,15304341:25197,15304344:25198,15304350:25199,15304353:25200,15304358:25201,15304360:25202,15304364:25203,15304365:25204,15304366:25205,15304368:25206,15304369:25207,15304370:25208,15304371:25209,15304374:25210,15304379:25211,15304380:25212,15304381:25213,15304383:25214,15304578:25377,15304579:25378,15304581:25379,15304595:25380,15304596:25381,15304599:25382,15304601:25383,15304602:25384,15304606:25385,15304612:25386,15304613:25387,15304617:25388,15304618:25389,15304620:25390,15304621:25391,15304622:25392,15304623:25393,15304624:25394,15304625:25395,15304631:25396,15304633:25397,15304635:25398,15304637:25399,15304832:25400,15304833:25401,15304836:25402,15304837:25403,15304838:25404,15304839:25405,15304841:25406,15304842:25407,15304844:25408,15304848:25409,15304850:25410,15304851:25411,15304854:25412,15304856:25413,15304860:25414,15304861:25415,15304867:25416,15304868:25417,15304869:25418,15304870:25419,15304872:25420,15304878:25421,15304879:25422,15304880:25423,15304883:25424,15304885:25425,15304886:25426,15304888:25427,15304889:25428,15304890:25429,15304892:25430,15304894:25431,15305088:25432,15305090:25433,15305091:25434,15305094:25435,15305095:25436,15305098:25437,15305101:25438,15305102:25439,15305103:25440,15305105:25441,15305112:25442,15305113:25443,15305116:25444,15305117:25445,15305120:25446,15305121:25447,15305125:25448,15305127:25449,15305128:25450,15305129:25451,15305134:25452,15305135:25453,15305136:25454,15305141:25455,15305142:25456,15305143:25457,15305144:25458,15305145:25459,15305147:25460,15305148:25461,15305149:25462,15305151:25463,15305352:25464,15305353:25465,15305354:25466,15305357:25467,15305358:25468,15305362:25469,15305367:25470,15305369:25633,15305375:25634,15305376:25635,15305380:25636,15305381:25637,15305383:25638,15305384:25639,15305387:25640,15305391:25641,15305394:25642,15305398:25643,15305400:25644,15305402:25645,15305403:25646,15305404:25647,15305405:25648,15305407:25649,15305600:25650,15305601:25651,15305602:25652,15305603:25653,15305605:25654,15305606:25655,15305607:25656,15305608:25657,15305611:25658,15305612:25659,15305613:25660,15305614:25661,15305616:25662,15305619:25663,15305621:25664,15305623:25665,15305624:25666,15305625:25667,15305628:25668,15305629:25669,15305631:25670,15305632:25671,15305633:25672,15305635:25673,15305637:25674,15305639:25675,15305640:25676,15305644:25677,15305646:25678,15305648:25679,15305657:25680,15305659:25681,15305663:25682,15305856:25683,15305858:25684,15305864:25685,15305869:25686,15305873:25687,15305876:25688,15305877:25689,15305884:25690,15305885:25691,15305886:25692,15305887:25693,15305889:25694,15305892:25695,15305893:25696,15305895:25697,15305897:25698,15305898:25699,15305907:25700,15305908:25701,15305910:25702,15305911:25703,15306119:25704,15306120:25705,15306121:25706,15306128:25707,15306129:25708,15306130:25709,15306133:25710,15306135:25711,15306136:25712,15306138:25713,15306142:25714,15306148:25715,15306149:25716,15306151:25717,15306153:25718,15306154:25719,15306157:25720,15306159:25721,15306160:25722,15306161:25723,15306163:25724,15306164:25725,15306166:25726,15306170:25889,15306173:25890,15306175:25891,15306368:25892,15306369:25893,15306370:25894,15306376:25895,15306378:25896,15306379:25897,15306381:25898,15306383:25899,15306386:25900,15306389:25901,15306392:25902,15306395:25903,15306398:25904,15306401:25905,15306403:25906,15306404:25907,15306406:25908,15306408:25909,15306411:25910,15306420:25911,15306421:25912,15306422:25913,15306426:25914,15306409:25915,15306625:25916,15306628:25917,15306629:25918,15306630:25919,15306631:25920,15306633:25921,15306634:25922,15306635:25923,15306636:25924,15306637:25925,15306643:25926,15306649:25927,15306652:25928,15306654:25929,15306655:25930,15306658:25931,15306662:25932,15306663:25933,15306681:25934,15306679:25935,15306680:25936,15306682:25937,15306683:25938,15306685:25939,15306881:25940,15306882:25941,15306884:25942,15306888:25943,15306889:25944,15306893:25945,15306894:25946,15306895:25947,15306901:25948,15306902:25949,15306903:25950,15306911:25951,15306926:25952,15306927:25953,15306929:25954,15306930:25955,15306931:25956,15306932:25957,15306939:25958,15306943:25959,15306941:25960,15307139:25961,15307141:25962,15307144:25963,15307146:25964,15307148:25965,15307157:25966,15307161:25967,15307164:25968,15307167:25969,15307169:25970,15307171:25971,15307176:25972,15307179:25973,15307181:25974,15307182:25975,15307183:25976,15307185:25977,15307186:25978,15307396:25979,15307395:25980,15308216:25981,15308217:25982,15308222:26145,15308420:26146,15308424:26147,15308428:26148,15308429:26149,15308430:26150,15308445:26151,15308446:26152,15308447:26153,15308449:26154,15308454:26155,15308457:26156,15308459:26157,15308460:26158,15308468:26159,15308470:26160,15308474:26161,15308477:26162,15308479:26163,15308678:26164,15308680:26165,15308681:26166,15308683:26167,15308688:26168,15308689:26169,15308690:26170,15308691:26171,15308697:26172,15308698:26173,15308701:26174,15308702:26175,15308703:26176,15308704:26177,15308708:26178,15308710:26179,15308957:26180,15308958:26181,15308962:26182,15308964:26183,15308965:26184,15308966:26185,15308972:26186,15308977:26187,15308979:26188,15308983:26189,15308984:26190,15308985:26191,15308986:26192,15308988:26193,15308989:26194,15309185:26195,15309202:26196,15309204:26197,15309206:26198,15309207:26199,15309208:26200,15309217:26201,15309230:26202,15309236:26203,15309243:26204,15309244:26205,15309246:26206,15309247:26207,15309441:26208,15309442:26209,15309443:26210,15309444:26211,15309449:26212,15309457:26213,15309462:26214,15309466:26215,15309469:26216,15309471:26217,15309476:26218,15309477:26219,15309478:26220,15309481:26221,15309486:26222,15309487:26223,15309491:26224,15309498:26225,15309706:26226,15309714:26227,15054514:26228,15309720:26229,15309722:26230,15309725:26231,15309726:26232,15309727:26233,15309737:26234,15309743:26235,15309745:26236,15309754:26237,15309954:26238,15309955:26401,15309957:26402,15309961:26403,15309978:26404,15309979:26405,15309981:26406,15309985:26407,15309986:26408,15309987:26409,15309992:26410,15310001:26411,15310003:26412,15310209:26413,15310211:26414,15310218:26415,15310222:26416,15310223:26417,15310229:26418,15310231:26419,15310232:26420,15310234:26421,15310235:26422,15310243:26423,15310247:26424,15310250:26425,15310254:26426,15310259:26427,15310262:26428,15310263:26429,15310264:26430,15310267:26431,15310269:26432,15310271:26433,15310464:26434,15310473:26435,15310485:26436,15310486:26437,15310487:26438,15310489:26439,15310490:26440,15310494:26441,15310495:26442,15310498:26443,15310508:26444,15310510:26445,15310513:26446,15310514:26447,15310517:26448,15310518:26449,15310520:26450,15310521:26451,15310522:26452,15310524:26453,15310526:26454,15310527:26455,15310721:26456,15310724:26457,15310725:26458,15310727:26459,15310729:26460,15310730:26461,15310732:26462,15310733:26463,15310734:26464,15310736:26465,15310737:26466,15310740:26467,15310743:26468,15310744:26469,15310745:26470,15310749:26471,15310750:26472,15310752:26473,15310747:26474,15310753:26475,15310756:26476,15310767:26477,15310769:26478,15310772:26479,15310775:26480,15310776:26481,15310778:26482,15310983:26483,15310986:26484,15311001:26485,15310989:26486,15310990:26487,15310996:26488,15310998:26489,15311004:26490,15311006:26491,15311008:26492,15311011:26493,15311014:26494,15311019:26657,15311022:26658,15311023:26659,15311024:26660,15311026:26661,15311027:26662,15311029:26663,15311013:26664,15311038:26665,15311236:26666,15311239:26667,15311242:26668,15311249:26669,15311250:26670,15311251:26671,15311254:26672,15311255:26673,15311257:26674,15311258:26675,15311266:26676,15311267:26677,15311269:26678,15311270:26679,15311274:26680,15311276:26681,15311531:26682,15311533:26683,15311534:26684,15311536:26685,15311540:26686,15311543:26687,15311544:26688,15311546:26689,15311547:26690,15311551:26691,15311746:26692,15311749:26693,15311752:26694,15311756:26695,15311777:26696,15311779:26697,15311781:26698,15311782:26699,15311783:26700,15311786:26701,15311795:26702,15311798:26703,15312002:26704,15312007:26705,15312008:26706,15312017:26707,15312021:26708,15312022:26709,15312023:26710,15312026:26711,15312027:26712,15312028:26713,15312031:26714,15312034:26715,15312038:26716,15312039:26717,15312043:26718,15312049:26719,15312050:26720,15312051:26721,15312052:26722,15312053:26723,15312057:26724,15312058:26725,15312059:26726,15312060:26727,15312256:26728,15312257:26729,15312262:26730,15312263:26731,15312264:26732,15312269:26733,15312270:26734,15312276:26735,15312280:26736,15312281:26737,15312283:26738,15312284:26739,15312286:26740,15312287:26741,15312288:26742,15312539:26743,15312541:26744,15312543:26745,15312550:26746,15312560:26747,15312561:26748,15312562:26749,15312565:26750,15312569:26913,15312570:26914,15312573:26915,15312575:26916,15312771:26917,15312777:26918,15312787:26919,15312788:26920,15312793:26921,15312794:26922,15312796:26923,15312798:26924,15312807:26925,15312810:26926,15312811:26927,15312812:26928,15312816:26929,15312820:26930,15312821:26931,15312825:26932,15312829:26933,15312830:26934,15313026:26935,15313027:26936,15313028:26937,15313035:26938,15313036:26939,15313040:26940,15313041:26941,15313046:26942,15313054:26943,15313056:26944,15313058:26945,15313059:26946,15313060:26947,15313063:26948,15313069:26949,15313070:26950,15313075:26951,15313077:26952,15313078:26953,15313080:26954,15313287:26955,15313281:26956,15313284:26957,15313290:26958,15313291:26959,15313292:26960,15313294:26961,15313297:26962,15313300:26963,15313302:26964,15313309:26965,15313578:26966,15313580:26967,15313582:26968,15313583:26969,15313586:26970,15313588:26971,15313589:26972,15313590:26973,15313593:26974,15313595:26975,15313598:26976,15313599:26977,15313793:26978,15313795:26979,15313798:26980,15313800:26981,15313806:26982,15313808:26983,15313810:26984,15313813:26985,15313814:26986,15313815:26987,15313819:26988,15313820:26989,15313824:26990,15313828:26991,15313829:26992,15313831:26993,15313833:26994,15313836:26995,15313842:26996,15313843:26997,15313845:26998,15313849:26999,15313850:27e3,15313853:27001,15313855:27002,15314048:27003,15314049:27004,15314050:27005,15314051:27006,15314052:27169,15314053:27170,15314056:27171,15314057:27172,15314059:27173,15314060:27174,15314061:27175,15314062:27176,15314064:27177,15314066:27178,15314070:27179,15314073:27180,15314075:27181,15314076:27182,15314080:27183,15314086:27184,15314091:27185,15314093:27186,15314099:27187,15314100:27188,15314101:27189,15314103:27190,15314105:27191,15314106:27192,15314109:27193,15314312:27194,15314315:27195,15314316:27196,15314325:27197,15314326:27198,15314327:27199,15314331:27200,15314334:27201,15314337:27202,15314339:27203,15314341:27204,15314342:27205,15314344:27206,15314346:27207,15314347:27208,15314348:27209,15314349:27210,15314350:27211,15314355:27212,15314357:27213,15314359:27214,15314360:27215,15314361:27216,15314367:27217,15314560:27218,15314564:27219,15314565:27220,15314566:27221,15314567:27222,15314569:27223,15314570:27224,15314571:27225,15314573:27226,15314575:27227,15314576:27228,15314580:27229,15314586:27230,15314589:27231,15314590:27232,15314598:27233,15314599:27234,15314601:27235,15314604:27236,15314608:27237,15314609:27238,15314610:27239,15314615:27240,15314616:27241,15314619:27242,15314620:27243,15314622:27244,15314623:27245,15314817:27246,15314823:27247,15314824:27248,15314830:27249,15314832:27250,15314839:27251,15314840:27252,15314845:27253,15314847:27254,15314853:27255,15314855:27256,15314858:27257,15314859:27258,15314863:27259,15314867:27260,15314871:27261,15314872:27262,15314873:27425,15314874:27426,15314877:27427,15314879:27428,15315072:27429,15315074:27430,15315083:27431,15315087:27432,15315089:27433,15315094:27434,15315096:27435,15315097:27436,15315098:27437,15315100:27438,15315102:27439,15315106:27440,15315107:27441,15315110:27442,15315111:27443,15315112:27444,15315113:27445,15315114:27446,15315121:27447,15315125:27448,15315126:27449,15315127:27450,15315133:27451,15315329:27452,15315331:27453,15315332:27454,15315333:27455,15315337:27456,15315338:27457,15315342:27458,15315343:27459,15315344:27460,15315347:27461,15315348:27462,15315350:27463,15315352:27464,15315355:27465,15315357:27466,15315358:27467,15315359:27468,15315363:27469,15315369:27470,15315370:27471,15315356:27472,15315371:27473,15315368:27474,15315374:27475,15315376:27476,15315378:27477,15315381:27478,15315383:27479,15315387:27480,15315878:27481,15315890:27482,15315895:27483,15315897:27484,15316107:27485,15316098:27486,15316113:27487,15316119:27488,15316120:27489,15316124:27490,15316125:27491,15316126:27492,15316143:27493,15316144:27494,15316146:27495,15316147:27496,15316148:27497,15316154:27498,15316156:27499,15316357:27500,15316157:27501,15316354:27502,15316355:27503,15316359:27504,15316362:27505,15316371:27506,15316372:27507,15316383:27508,15316387:27509,15316386:27510,15316389:27511,15316393:27512,15316394:27513,15316395:27514,15316400:27515,15316406:27516,15316407:27517,15316411:27518,15316412:27681,15316414:27682,15316611:27683,15316612:27684,15316614:27685,15316618:27686,15316621:27687,15316622:27688,15316626:27689,15316627:27690,15316629:27691,15316630:27692,15316631:27693,15316632:27694,15316641:27695,15316650:27696,15316652:27697,15316654:27698,15316657:27699,15316661:27700,15316665:27701,15316668:27702,15316671:27703,15316867:27704,15316871:27705,15316873:27706,15316874:27707,15316884:27708,15316885:27709,15316886:27710,15316887:27711,15316890:27712,15316894:27713,15316895:27714,15316896:27715,15316901:27716,15316903:27717,15316905:27718,15316907:27719,15316910:27720,15316912:27721,15316915:27722,15316916:27723,15316926:27724,15317130:27725,15317122:27726,15317127:27727,15317134:27728,15317136:27729,15317137:27730,15317138:27731,15317141:27732,15317142:27733,15317145:27734,15317148:27735,15317149:27736,15317434:27737,15317435:27738,15317436:27739,15317632:27740,15317634:27741,15317635:27742,15317636:27743,15317637:27744,15317639:27745,15317646:27746,15317647:27747,15317654:27748,15317656:27749,15317659:27750,15317662:27751,15317668:27752,15317672:27753,15317676:27754,15317678:27755,15317679:27756,15317680:27757,15317683:27758,15317684:27759,15317685:27760,15317894:27761,15317896:27762,15317899:27763,15317909:27764,15317919:27765,15317924:27766,15317927:27767,15317932:27768,15317933:27769,15317934:27770,15317936:27771,15317937:27772,15317938:27773,15317941:27774,15317944:27937,15317951:27938,15318146:27939,15318147:27940,15318153:27941,15318159:27942,15318160:27943,15318161:27944,15318162:27945,15318164:27946,15318166:27947,15318167:27948,15318169:27949,15318170:27950,15318171:27951,15318175:27952,15318178:27953,15318182:27954,15318186:27955,15318187:27956,15318191:27957,15318193:27958,15318194:27959,15318196:27960,15318199:27961,15318201:27962,15318202:27963,15318204:27964,15318205:27965,15318207:27966,15318401:27967,15318403:27968,15318404:27969,15318405:27970,15318406:27971,15318407:27972,15318419:27973,15318421:27974,15318422:27975,15318423:27976,15318424:27977,15318426:27978,15318429:27979,15318430:27980,15318440:27981,15318441:27982,15318445:27983,15318446:27984,15318447:27985,15318448:27986,15318449:27987,15318451:27988,15318453:27989,15318458:27990,15318461:27991,15318671:27992,15318672:27993,15318673:27994,15318674:27995,15318676:27996,15318678:27997,15318679:27998,15318686:27999,15318689:28e3,15318690:28001,15318691:28002,15318693:28003,14909596:8513}},6128:(e,t,r)=>{var n=r(5046),i=String.fromCharCode,a=Array.prototype.slice,s=Object.prototype.toString,o=Object.prototype.hasOwnProperty,c=Array.isArray,u=Object.keys;function l(e){return c?c(e):"[object Array]"===s.call(e)}function h(e){if(u)return u(e);var t=[];for(var r in e)o.call(e,r)&&(t[t.length]=r);return t}function d(e,t){if(n.HAS_TYPED)switch(e){case 8:return new Uint8Array(t);case 16:return new Uint16Array(t)}return new Array(t)}function f(e){if(n.CAN_CHARCODE_APPLY&&n.CAN_CHARCODE_APPLY_TYPED){var t=e&&e.length;if(tn.APPLY_BUFFER_SIZE&&(n.APPLY_BUFFER_SIZE_OK=!0),r}catch(e){n.APPLY_BUFFER_SIZE_OK=!1}}return p(e)}function p(e){for(var t,r="",a=e&&e.length,s=0;sn.APPLY_BUFFER_SIZE&&(n.APPLY_BUFFER_SIZE_OK=!0);continue}catch(e){n.APPLY_BUFFER_SIZE_OK=!1}return y(e)}r+=i.apply(null,t)}return r}function y(e){for(var t="",r=e&&e.length,n=0;n>2],t[t.length]=g[(3&i)<<4],t[t.length]=b,t[t.length]=b;break}if(a=e[r++],r==n){t[t.length]=g[i>>2],t[t.length]=g[(3&i)<<4|(240&a)>>4],t[t.length]=g[(15&a)<<2],t[t.length]=b;break}s=e[r++],t[t.length]=g[i>>2],t[t.length]=g[(3&i)<<4|(240&a)>>4],t[t.length]=g[(15&a)<<2|(192&s)>>6],t[t.length]=g[63&s]}return f(t)},t.base64decode=function(e){var t,r,n,i,a,s,o;for(s=e&&e.length,a=0,o=[];a>4;do{if(61==(n=255&e.charCodeAt(a++)))return o;n=m[n]}while(a>2;do{if(61==(i=255&e.charCodeAt(a++)))return o;i=m[i]}while(a=l.ZERO&&e<=l.NINE}Object.defineProperty(t,"replaceCodePoint",{enumerable:!0,get:function(){return p.replaceCodePoint}}),Object.defineProperty(t,"fromCodePoint",{enumerable:!0,get:function(){return p.fromCodePoint}}),function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(l||(l={})),function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}(h=t.BinTrieFlags||(t.BinTrieFlags={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(d||(d={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(f=t.DecodingMode||(t.DecodingMode={}));var g=function(){function e(e,t,r){this.decodeTree=e,this.emitCodePoint=t,this.errors=r,this.state=d.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=f.Strict}return e.prototype.startEntity=function(e){this.decodeMode=e,this.state=d.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1},e.prototype.write=function(e,t){switch(this.state){case d.EntityStart:return e.charCodeAt(t)===l.NUM?(this.state=d.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=d.NamedEntity,this.stateNamedEntity(e,t));case d.NumericStart:return this.stateNumericStart(e,t);case d.NumericDecimal:return this.stateNumericDecimal(e,t);case d.NumericHex:return this.stateNumericHex(e,t);case d.NamedEntity:return this.stateNamedEntity(e,t)}},e.prototype.stateNumericStart=function(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===l.LOWER_X?(this.state=d.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=d.NumericDecimal,this.stateNumericDecimal(e,t))},e.prototype.addToNumericResult=function(e,t,r,n){if(t!==r){var i=r-t;this.result=this.result*Math.pow(n,i)+parseInt(e.substr(t,i),n),this.consumed+=i}},e.prototype.stateNumericHex=function(e,t){for(var r,n=t;t=l.UPPER_A&&r<=l.UPPER_F||r>=l.LOWER_A&&r<=l.LOWER_F)))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(i,3);t+=1}return this.addToNumericResult(e,n,t,16),-1},e.prototype.stateNumericDecimal=function(e,t){for(var r=t;t>14;t=l.UPPER_A&&e<=l.UPPER_Z||e>=l.LOWER_A&&e<=l.LOWER_Z||y(e)}(s)))?0:this.emitNotTerminatedNamedEntity();if(0!=(i=((n=r[this.treeIndex])&h.VALUE_LENGTH)>>14)){if(a===l.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==f.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}var s;return-1},e.prototype.emitNotTerminatedNamedEntity=function(){var e,t=this.result,r=(this.decodeTree[t]&h.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed},e.prototype.emitNamedEntityData=function(e,t,r){var n=this.decodeTree;return this.emitCodePoint(1===t?n[e]&~h.VALUE_LENGTH:n[e+1],r),3===t&&this.emitCodePoint(n[e+2],r),r},e.prototype.end=function(){var e;switch(this.state){case d.NamedEntity:return 0===this.result||this.decodeMode===f.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case d.NumericDecimal:return this.emitNumericEntity(0,2);case d.NumericHex:return this.emitNumericEntity(0,3);case d.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case d.EntityStart:return 0}},e}();function m(e){var t="",r=new g(e,(function(e){return t+=(0,u.fromCodePoint)(e)}));return function(e,n){for(var i=0,a=0;(a=e.indexOf("&",a))>=0;){t+=e.slice(i,a),r.startEntity(n);var s=r.write(e,a+1);if(s<0){i=a+r.end();break}i=a+s,a=0===s?i+1:i}var o=t+e.slice(i);return t="",o}}function b(e,t,r,n){var i=(t&h.BRANCH_LENGTH)>>7,a=t&h.JUMP_TABLE;if(0===i)return 0!==a&&n===a?r:-1;if(a){var s=n-a;return s<0||s>=i?-1:e[r+s]-1}for(var o=r,c=o+i-1;o<=c;){var u=o+c>>>1,l=e[u];if(ln))return e[u+i];c=u-1}}return-1}t.EntityDecoder=g,t.determineBranch=b;var w=m(o.default),v=m(c.default);t.decodeHTML=function(e,t){return void 0===t&&(t=f.Legacy),w(e,t)},t.decodeHTMLAttribute=function(e){return w(e,f.Attribute)},t.decodeHTMLStrict=function(e){return w(e,f.Strict)},t.decodeXML=function(e){return v(e,f.Strict)}},26:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.replaceCodePoint=t.fromCodePoint=void 0;var n=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function i(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=n.get(e))&&void 0!==t?t:e}t.fromCodePoint=null!==(r=String.fromCodePoint)&&void 0!==r?r:function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+String.fromCharCode(e)},t.replaceCodePoint=i,t.default=function(e){return(0,t.fromCodePoint)(i(e))}},7322:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.encodeNonAsciiHTML=t.encodeHTML=void 0;var i=n(r(4021)),a=r(4625),s=/[\t\n!-,./:-@[-`\f{-}$\x80-\uFFFF]/g;function o(e,t){for(var r,n="",s=0;null!==(r=e.exec(t));){var o=r.index;n+=t.substring(s,o);var c=t.charCodeAt(o),u=i.default.get(c);if("object"==typeof u){if(o+1{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.getCodePoint=t.xmlReplacer=void 0,t.xmlReplacer=/["&'<>$\x80-\uFFFF]/g;var r=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]);function n(e){for(var n,i="",a=0;null!==(n=t.xmlReplacer.exec(e));){var s=n.index,o=e.charCodeAt(s),c=r.get(o);void 0!==c?(i+=e.substring(a,s)+c,a=s+1):(i+="".concat(e.substring(a,s),"&#x").concat((0,t.getCodePoint)(e,s).toString(16),";"),a=t.xmlReplacer.lastIndex+=Number(55296==(64512&o)))}return i+e.substr(a)}function i(e,t){return function(r){for(var n,i=0,a="";n=e.exec(r);)i!==n.index&&(a+=r.substring(i,n.index)),a+=t.get(n[0].charCodeAt(0)),i=n.index+1;return a+r.substring(i)}}t.getCodePoint=null!=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){return 55296==(64512&e.charCodeAt(t))?1024*(e.charCodeAt(t)-55296)+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t)},t.encodeXML=n,t.escape=n,t.escapeUTF8=i(/[&<>'"]/g,r),t.escapeAttribute=i(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),t.escapeText=i(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))},3704:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(e){return e.charCodeAt(0)})))},2060:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(e){return e.charCodeAt(0)})))},4021:(e,t)=>{"use strict";function r(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLAttribute=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.DecodingMode=t.EntityDecoder=t.encodeHTML5=t.encodeHTML4=t.encodeNonAsciiHTML=t.encodeHTML=t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.encode=t.decodeStrict=t.decode=t.EncodingMode=t.EntityLevel=void 0;var n,i,a=r(4076),s=r(7322),o=r(4625);function c(e,t){if(void 0===t&&(t=n.XML),("number"==typeof t?t:t.level)===n.HTML){var r="object"==typeof t?t.mode:void 0;return(0,a.decodeHTML)(e,r)}return(0,a.decodeXML)(e)}!function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"}(n=t.EntityLevel||(t.EntityLevel={})),function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"}(i=t.EncodingMode||(t.EncodingMode={})),t.decode=c,t.decodeStrict=function(e,t){var r;void 0===t&&(t=n.XML);var i="number"==typeof t?{level:t}:t;return null!==(r=i.mode)&&void 0!==r||(i.mode=a.DecodingMode.Strict),c(e,i)},t.encode=function(e,t){void 0===t&&(t=n.XML);var r="number"==typeof t?{level:t}:t;return r.mode===i.UTF8?(0,o.escapeUTF8)(e):r.mode===i.Attribute?(0,o.escapeAttribute)(e):r.mode===i.Text?(0,o.escapeText)(e):r.level===n.HTML?r.mode===i.ASCII?(0,s.encodeNonAsciiHTML)(e):(0,s.encodeHTML)(e):(0,o.encodeXML)(e)};var u=r(4625);Object.defineProperty(t,"encodeXML",{enumerable:!0,get:function(){return u.encodeXML}}),Object.defineProperty(t,"escape",{enumerable:!0,get:function(){return u.escape}}),Object.defineProperty(t,"escapeUTF8",{enumerable:!0,get:function(){return u.escapeUTF8}}),Object.defineProperty(t,"escapeAttribute",{enumerable:!0,get:function(){return u.escapeAttribute}}),Object.defineProperty(t,"escapeText",{enumerable:!0,get:function(){return u.escapeText}});var l=r(7322);Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return l.encodeNonAsciiHTML}}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:function(){return l.encodeHTML}});var h=r(4076);Object.defineProperty(t,"EntityDecoder",{enumerable:!0,get:function(){return h.EntityDecoder}}),Object.defineProperty(t,"DecodingMode",{enumerable:!0,get:function(){return h.DecodingMode}}),Object.defineProperty(t,"decodeXML",{enumerable:!0,get:function(){return h.decodeXML}}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:function(){return h.decodeHTML}}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:function(){return h.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTMLAttribute",{enumerable:!0,get:function(){return h.decodeHTMLAttribute}}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:function(){return h.decodeHTML}}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:function(){return h.decodeHTML}}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:function(){return h.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:function(){return h.decodeHTMLStrict}}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:function(){return h.decodeXML}})},763:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;var s=a(r(9889)),o=r(4076),c=new Set(["input","option","optgroup","select","button","datalist","textarea"]),u=new Set(["p"]),l=new Set(["thead","tbody"]),h=new Set(["dd","dt"]),d=new Set(["rt","rp"]),f=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",u],["h1",u],["h2",u],["h3",u],["h4",u],["h5",u],["h6",u],["select",c],["input",c],["output",c],["button",c],["datalist",c],["textarea",c],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",h],["dt",h],["address",u],["article",u],["aside",u],["blockquote",u],["details",u],["div",u],["dl",u],["fieldset",u],["figcaption",u],["figure",u],["footer",u],["form",u],["header",u],["hr",u],["main",u],["nav",u],["ol",u],["pre",u],["section",u],["table",u],["ul",u],["rt",d],["rp",d],["tbody",l],["tfoot",l]]),p=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),y=new Set(["math","svg"]),g=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),m=/\s|\//,b=function(){function e(e,t){var r,n,i,a,o;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.lowerCaseTagNames=null!==(r=t.lowerCaseTags)&&void 0!==r?r:!t.xmlMode,this.lowerCaseAttributeNames=null!==(n=t.lowerCaseAttributeNames)&&void 0!==n?n:!t.xmlMode,this.tokenizer=new(null!==(i=t.Tokenizer)&&void 0!==i?i:s.default)(this.options,this),null===(o=(a=this.cbs).onparserinit)||void 0===o||o.call(a,this)}return e.prototype.ontext=function(e,t){var r,n,i=this.getSlice(e,t);this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,i),this.startIndex=t},e.prototype.ontextentity=function(e){var t,r,n=this.tokenizer.getSectionStart();this.endIndex=n-1,null===(r=(t=this.cbs).ontext)||void 0===r||r.call(t,(0,o.fromCodePoint)(e)),this.startIndex=n},e.prototype.isVoidElement=function(e){return!this.options.xmlMode&&p.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);this.lowerCaseTagNames&&(r=r.toLowerCase()),this.emitOpenTag(r)},e.prototype.emitOpenTag=function(e){var t,r,n,i;this.openTagStart=this.startIndex,this.tagname=e;var a=!this.options.xmlMode&&f.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){var s=this.stack.pop();null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,s,!0)}this.isVoidElement(e)||(this.stack.push(e),y.has(e)?this.foreignContext.push(!0):g.has(e)&&this.foreignContext.push(!1)),null===(i=(n=this.cbs).onopentagname)||void 0===i||i.call(n,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,r;this.startIndex=this.openTagStart,this.attribs&&(null===(r=(t=this.cbs).onopentag)||void 0===r||r.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){var r,n,i,a,s,o;this.endIndex=t;var c=this.getSlice(e,t);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(y.has(c)||g.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))this.options.xmlMode||"br"!==c||(null===(n=(r=this.cbs).onopentagname)||void 0===n||n.call(r,"br"),null===(a=(i=this.cbs).onopentag)||void 0===a||a.call(i,"br",{},!0),null===(o=(s=this.cbs).onclosetag)||void 0===o||o.call(s,"br",!1));else{var u=this.stack.lastIndexOf(c);if(-1!==u)if(this.cbs.onclosetag)for(var l=this.stack.length-u;l--;)this.cbs.onclosetag(this.stack.pop(),0!==l);else this.stack.length=u;else this.options.xmlMode||"p"!==c||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,r,n=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===n&&(null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,n,!e),this.stack.pop())},e.prototype.onattribname=function(e,t){this.startIndex=e;var r=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?r.toLowerCase():r},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,o.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var r,n;this.endIndex=t,null===(n=(r=this.cbs).onattribute)||void 0===n||n.call(r,this.attribname,this.attribvalue,e===s.QuoteType.Double?'"':e===s.QuoteType.Single?"'":e===s.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(m),r=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(r=r.toLowerCase()),r},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("!".concat(n),"!".concat(r))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("?".concat(n),"?".concat(r))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,r){var n,i,a,s;this.endIndex=t,null===(i=(n=this.cbs).oncomment)||void 0===i||i.call(n,this.getSlice(e,t-r)),null===(s=(a=this.cbs).oncommentend)||void 0===s||s.call(a),this.startIndex=t+1},e.prototype.oncdata=function(e,t,r){var n,i,a,s,o,c,u,l,h,d;this.endIndex=t;var f=this.getSlice(e,t-r);this.options.xmlMode||this.options.recognizeCDATA?(null===(i=(n=this.cbs).oncdatastart)||void 0===i||i.call(n),null===(s=(a=this.cbs).ontext)||void 0===s||s.call(a,f),null===(c=(o=this.cbs).oncdataend)||void 0===c||c.call(o)):(null===(l=(u=this.cbs).oncomment)||void 0===l||l.call(u,"[CDATA[".concat(f,"]]")),null===(d=(h=this.cbs).oncommentend)||void 0===d||d.call(h)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var r=this.stack.length;r>0;this.cbs.onclosetag(this.stack[--r],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)},e.prototype.reset=function(){var e,t,r,n;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(n=(r=this.cbs).onparserinit)||void 0===n||n.call(r,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1},e.prototype.parseComplete=function(e){this.reset(),this.end(e)},e.prototype.getSlice=function(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();for(var r=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),r+=this.buffers[0].slice(0,t-this.bufferOffset);return r},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))},e.prototype.end=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuoteType=void 0;var n,i,a,s=r(4076);function o(e){return e===n.Space||e===n.NewLine||e===n.Tab||e===n.FormFeed||e===n.CarriageReturn}function c(e){return e===n.Slash||e===n.Gt||o(e)}function u(e){return e>=n.Zero&&e<=n.Nine}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(n||(n={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"}(i||(i={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(a=t.QuoteType||(t.QuoteType={}));var l={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},h=function(){function e(e,t){var r=e.xmlMode,n=void 0!==r&&r,a=e.decodeEntities,o=void 0===a||a;this.cbs=t,this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=n,this.decodeEntities=o,this.entityTrie=n?s.xmlDecodeTree:s.htmlDecodeTree}return e.prototype.reset=function(){this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=i.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===n.Amp&&(this.state=i.BeforeEntity)},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?c(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=i.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===n.Gt||o(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=n.LowerA&&e<=n.LowerZ||e>=n.UpperA&&e<=n.UpperZ}(e)},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=i.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===n.ExclamationMark)this.state=i.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===n.Questionmark)this.state=i.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==l.TitleEnd[2]?this.state=this.xmlMode||t!==l.ScriptEnd[2]?i.InTagName:i.BeforeSpecialS:this.startSpecial(l.TitleEnd,3)}else e===n.Slash?this.state=i.BeforeClosingTagName:(this.state=i.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){c(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){o(e)||(e===n.Gt?this.state=i.Text:(this.state=this.isTagStartChar(e)?i.InClosingTagName:i.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===n.Gt||o(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===n.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=i.InSpecialTag,this.sequenceIndex=0):this.state=i.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===n.Slash?this.state=i.InSelfClosingTag:o(e)||(this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===n.Gt?(this.cbs.onselfclosingtag(this.index),this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1,this.isSpecial=!1):o(e)||(this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===n.Eq||c(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===n.Eq?this.state=i.BeforeAttributeValue:e===n.Slash||e===n.Gt?(this.cbs.onattribend(a.NoValue,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):o(e)||(this.cbs.onattribend(a.NoValue,this.index),this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===n.DoubleQuote?(this.state=i.InAttributeValueDq,this.sectionStart=this.index+1):e===n.SingleQuote?(this.state=i.InAttributeValueSq,this.sectionStart=this.index+1):o(e)||(this.sectionStart=this.index,this.state=i.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===n.DoubleQuote?a.Double:a.Single,this.index),this.state=i.BeforeAttributeName):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,n.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,n.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){o(e)||e===n.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(a.Unquoted,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateBeforeDeclaration=function(e){e===n.OpeningSquareBracket?(this.state=i.CDATASequence,this.sequenceIndex=0):this.state=e===n.Dash?i.BeforeComment:i.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===n.Dash?(this.state=i.InCommentLike,this.currentSequence=l.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=i.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===l.ScriptEnd[3]?this.startSpecial(l.ScriptEnd,4):t===l.StyleEnd[3]?this.startSpecial(l.StyleEnd,4):(this.state=i.InTagName,this.stateInTagName(e))},e.prototype.stateBeforeEntity=function(e){this.entityExcess=1,this.entityResult=0,e===n.Number?this.state=i.BeforeNumericEntity:e===n.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=i.InNamedEntity,this.stateInNamedEntity(e))},e.prototype.stateInNamedEntity=function(e){if(this.entityExcess+=1,this.trieIndex=(0,s.determineBranch)(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0)return this.emitNamedEntity(),void this.index--;this.trieCurrent=this.entityTrie[this.trieIndex];var t=this.trieCurrent&s.BinTrieFlags.VALUE_LENGTH;if(t){var r=(t>>14)-1;if(this.allowLegacyEntity()||e===n.Semi){var i=this.index-this.entityExcess+1;i>this.sectionStart&&this.emitPartial(this.sectionStart,i),this.entityResult=this.trieIndex,this.trieIndex+=r,this.entityExcess=0,this.sectionStart=this.index+1,0===r&&this.emitNamedEntity()}else this.trieIndex+=r}},e.prototype.emitNamedEntity=function(){if(this.state=this.baseState,0!==this.entityResult)switch((this.entityTrie[this.entityResult]&s.BinTrieFlags.VALUE_LENGTH)>>14){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~s.BinTrieFlags.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}},e.prototype.stateBeforeNumericEntity=function(e){(32|e)===n.LowerX?(this.entityExcess++,this.state=i.InHexEntity):(this.state=i.InNumericEntity,this.stateInNumericEntity(e))},e.prototype.emitNumericEntity=function(e){var t=this.index-this.entityExcess-1;t+2+Number(this.state===i.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint((0,s.replaceCodePoint)(this.entityResult))),this.state=this.baseState},e.prototype.stateInNumericEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=10*this.entityResult+(e-n.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.stateInHexEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=16*this.entityResult+(e-n.Zero),this.entityExcess++):function(e){return e>=n.UpperA&&e<=n.UpperF||e>=n.LowerA&&e<=n.LowerF}(e)?(this.entityResult=16*this.entityResult+((32|e)-n.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.allowLegacyEntity=function(){return!this.xmlMode&&(this.baseState===i.Text||this.baseState===i.InSpecialTag)},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===i.Text||this.state===i.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==i.InAttributeValueDq&&this.state!==i.InAttributeValueSq&&this.state!==i.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index{t.read=function(e,t,r,n,i){var a,s,o=8*i-n-1,c=(1<>1,l=-7,h=r?i-1:0,d=r?-1:1,f=e[t+h];for(h+=d,a=f&(1<<-l)-1,f>>=-l,l+=o;l>0;a=256*a+e[t+h],h+=d,l-=8);for(s=a&(1<<-l)-1,a>>=-l,l+=n;l>0;s=256*s+e[t+h],h+=d,l-=8);if(0===a)a=1-u;else{if(a===c)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,n),a-=u}return(f?-1:1)*s*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var s,o,c,u=8*a-i-1,l=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:a-1,p=n?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,s=l):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),(t+=s+h>=1?d/c:d*Math.pow(2,1-h))*c>=2&&(s++,c/=2),s+h>=l?(o=0,s=l):s+h>=1?(o=(t*c-1)*Math.pow(2,i),s+=h):(o=t*Math.pow(2,h-1)*Math.pow(2,i),s=0));i>=8;e[r+f]=255&o,f+=p,o/=256,i-=8);for(s=s<0;e[r+f]=255&s,f+=p,s/=256,u-=8);e[r+f-p]|=128*y}},6057:(e,t)=>{"use strict";function r(e){return"[object Object]"===Object.prototype.toString.call(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.isPlainObject=function(e){var t,n;return!1!==r(e)&&(void 0===(t=e.constructor)||!1!==r(n=t.prototype)&&!1!==n.hasOwnProperty("isPrototypeOf"))}},9430:function(e,t){var r,n;void 0===(n="function"==typeof(r=function(){return function(e){function t(e){return" "===e||"\t"===e||"\n"===e||"\f"===e||"\r"===e}function r(t){var r,n=t.exec(e.substring(y));if(n)return r=n[0],y+=r.length,r}for(var n,i,a,s,o,c=e.length,u=/^[ \t\n\r\u000c]+/,l=/^[, \t\n\r\u000c]+/,h=/^[^ \t\n\r\u000c]+/,d=/[,]+$/,f=/^\d+$/,p=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,y=0,g=[];;){if(r(l),y>=c)return g;n=r(h),i=[],","===n.slice(-1)?(n=n.replace(d,""),b()):m()}function m(){for(r(u),a="",s="in descriptor";;){if(o=e.charAt(y),"in descriptor"===s)if(t(o))a&&(i.push(a),a="",s="after descriptor");else{if(","===o)return y+=1,a&&i.push(a),void b();if("("===o)a+=o,s="in parens";else{if(""===o)return a&&i.push(a),void b();a+=o}}else if("in parens"===s)if(")"===o)a+=o,s="in descriptor";else{if(""===o)return i.push(a),void b();a+=o}else if("after descriptor"===s)if(t(o));else{if(""===o)return void b();s="in descriptor",y-=1}y+=1}}function b(){var t,r,a,s,o,c,u,l,h,d=!1,y={};for(s=0;s{var t=String,r=function(){return{isColorSupported:!1,reset:t,bold:t,dim:t,italic:t,underline:t,inverse:t,hidden:t,strikethrough:t,black:t,red:t,green:t,yellow:t,blue:t,magenta:t,cyan:t,white:t,gray:t,bgBlack:t,bgRed:t,bgGreen:t,bgYellow:t,bgBlue:t,bgMagenta:t,bgCyan:t,bgWhite:t}};e.exports=r(),e.exports.createColors=r},1353:(e,t,r)=>{"use strict";let n=r(1019);class i extends n{constructor(e){super(e),this.type="atrule"}append(...e){return this.proxyOf.nodes||(this.nodes=[]),super.append(...e)}prepend(...e){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...e)}}e.exports=i,i.default=i,n.registerAtRule(i)},9932:(e,t,r)=>{"use strict";let n=r(5631);class i extends n{constructor(e){super(e),this.type="comment"}}e.exports=i,i.default=i},1019:(e,t,r)=>{"use strict";let n,i,a,s,{isClean:o,my:c}=r(5513),u=r(4258),l=r(9932),h=r(5631);function d(e){return e.map((e=>(e.nodes&&(e.nodes=d(e.nodes)),delete e.source,e)))}function f(e){if(e[o]=!1,e.proxyOf.nodes)for(let t of e.proxyOf.nodes)f(t)}class p extends h{push(e){return e.parent=this,this.proxyOf.nodes.push(e),this}each(e){if(!this.proxyOf.nodes)return;let t,r,n=this.getIterator();for(;this.indexes[n]{let n;try{n=e(t,r)}catch(e){throw t.addToError(e)}return!1!==n&&t.walk&&(n=t.walk(e)),n}))}walkDecls(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("decl"===r.type&&e.test(r.prop))return t(r,n)})):this.walk(((r,n)=>{if("decl"===r.type&&r.prop===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("decl"===e.type)return t(e,r)})))}walkRules(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("rule"===r.type&&e.test(r.selector))return t(r,n)})):this.walk(((r,n)=>{if("rule"===r.type&&r.selector===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("rule"===e.type)return t(e,r)})))}walkAtRules(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("atrule"===r.type&&e.test(r.name))return t(r,n)})):this.walk(((r,n)=>{if("atrule"===r.type&&r.name===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("atrule"===e.type)return t(e,r)})))}walkComments(e){return this.walk(((t,r)=>{if("comment"===t.type)return e(t,r)}))}append(...e){for(let t of e){let e=this.normalize(t,this.last);for(let t of e)this.proxyOf.nodes.push(t)}return this.markDirty(),this}prepend(...e){e=e.reverse();for(let t of e){let e=this.normalize(t,this.first,"prepend").reverse();for(let t of e)this.proxyOf.nodes.unshift(t);for(let t in this.indexes)this.indexes[t]=this.indexes[t]+e.length}return this.markDirty(),this}cleanRaws(e){if(super.cleanRaws(e),this.nodes)for(let t of this.nodes)t.cleanRaws(e)}insertBefore(e,t){let r,n=this.index(e),i=0===n&&"prepend",a=this.normalize(t,this.proxyOf.nodes[n],i).reverse();n=this.index(e);for(let e of a)this.proxyOf.nodes.splice(n,0,e);for(let e in this.indexes)r=this.indexes[e],n<=r&&(this.indexes[e]=r+a.length);return this.markDirty(),this}insertAfter(e,t){let r,n=this.index(e),i=this.normalize(t,this.proxyOf.nodes[n]).reverse();n=this.index(e);for(let e of i)this.proxyOf.nodes.splice(n+1,0,e);for(let e in this.indexes)r=this.indexes[e],n=e&&(this.indexes[r]=t-1);return this.markDirty(),this}removeAll(){for(let e of this.proxyOf.nodes)e.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}replaceValues(e,t,r){return r||(r=t,t={}),this.walkDecls((n=>{t.props&&!t.props.includes(n.prop)||t.fast&&!n.value.includes(t.fast)||(n.value=n.value.replace(e,r))})),this.markDirty(),this}every(e){return this.nodes.every(e)}some(e){return this.nodes.some(e)}index(e){return"number"==typeof e?e:(e.proxyOf&&(e=e.proxyOf),this.proxyOf.nodes.indexOf(e))}get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}normalize(e,t){if("string"==typeof e)e=d(n(e).nodes);else if(Array.isArray(e)){e=e.slice(0);for(let t of e)t.parent&&t.parent.removeChild(t,"ignore")}else if("root"===e.type&&"document"!==this.type){e=e.nodes.slice(0);for(let t of e)t.parent&&t.parent.removeChild(t,"ignore")}else if(e.type)e=[e];else if(e.prop){if(void 0===e.value)throw new Error("Value field is missed in node creation");"string"!=typeof e.value&&(e.value=String(e.value)),e=[new u(e)]}else if(e.selector)e=[new i(e)];else if(e.name)e=[new a(e)];else{if(!e.text)throw new Error("Unknown node type in node creation");e=[new l(e)]}return e.map((e=>(e[c]||p.rebuild(e),(e=e.proxyOf).parent&&e.parent.removeChild(e),e[o]&&f(e),void 0===e.raws.before&&t&&void 0!==t.raws.before&&(e.raws.before=t.raws.before.replace(/\S/g,"")),e.parent=this.proxyOf,e)))}getProxyProcessor(){return{set:(e,t,r)=>(e[t]===r||(e[t]=r,"name"!==t&&"params"!==t&&"selector"!==t||e.markDirty()),!0),get:(e,t)=>"proxyOf"===t?e:e[t]?"each"===t||"string"==typeof t&&t.startsWith("walk")?(...r)=>e[t](...r.map((e=>"function"==typeof e?(t,r)=>e(t.toProxy(),r):e))):"every"===t||"some"===t?r=>e[t](((e,...t)=>r(e.toProxy(),...t))):"root"===t?()=>e.root().toProxy():"nodes"===t?e.nodes.map((e=>e.toProxy())):"first"===t||"last"===t?e[t].toProxy():e[t]:e[t]}}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let e=this.lastEach;return this.indexes[e]=0,e}}p.registerParse=e=>{n=e},p.registerRule=e=>{i=e},p.registerAtRule=e=>{a=e},p.registerRoot=e=>{s=e},e.exports=p,p.default=p,p.rebuild=e=>{"atrule"===e.type?Object.setPrototypeOf(e,a.prototype):"rule"===e.type?Object.setPrototypeOf(e,i.prototype):"decl"===e.type?Object.setPrototypeOf(e,u.prototype):"comment"===e.type?Object.setPrototypeOf(e,l.prototype):"root"===e.type&&Object.setPrototypeOf(e,s.prototype),e[c]=!0,e.nodes&&e.nodes.forEach((e=>{p.rebuild(e)}))}},2671:(e,t,r)=>{"use strict";let n=r(4241),i=r(2868);class a extends Error{constructor(e,t,r,n,i,s){super(e),this.name="CssSyntaxError",this.reason=e,i&&(this.file=i),n&&(this.source=n),s&&(this.plugin=s),void 0!==t&&void 0!==r&&("number"==typeof t?(this.line=t,this.column=r):(this.line=t.line,this.column=t.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,a)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"",void 0!==this.line&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(e){if(!this.source)return"";let t=this.source;null==e&&(e=n.isColorSupported),i&&e&&(t=i(t));let r,a,s=t.split(/\r?\n/),o=Math.max(this.line-3,0),c=Math.min(this.line+2,s.length),u=String(c).length;if(e){let{bold:e,red:t,gray:i}=n.createColors(!0);r=r=>e(t(r)),a=e=>i(e)}else r=a=e=>e;return s.slice(o,c).map(((e,t)=>{let n=o+1+t,i=" "+(" "+n).slice(-u)+" | ";if(n===this.line){let t=a(i.replace(/\d/g," "))+e.slice(0,this.column-1).replace(/[^\t]/g," ");return r(">")+a(i)+e+"\n "+t+r("^")}return" "+a(i)+e})).join("\n")}toString(){let e=this.showSourceCode();return e&&(e="\n\n"+e+"\n"),this.name+": "+this.message+e}}e.exports=a,a.default=a},4258:(e,t,r)=>{"use strict";let n=r(5631);class i extends n{constructor(e){e&&void 0!==e.value&&"string"!=typeof e.value&&(e={...e,value:String(e.value)}),super(e),this.type="decl"}get variable(){return this.prop.startsWith("--")||"$"===this.prop[0]}}e.exports=i,i.default=i},6461:(e,t,r)=>{"use strict";let n,i,a=r(1019);class s extends a{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new n(new i,this,e).stringify()}}s.registerLazyResult=e=>{n=e},s.registerProcessor=e=>{i=e},e.exports=s,s.default=s},250:(e,t,r)=>{"use strict";let n=r(4258),i=r(7981),a=r(9932),s=r(1353),o=r(5995),c=r(1025),u=r(1675);function l(e,t){if(Array.isArray(e))return e.map((e=>l(e)));let{inputs:r,...h}=e;if(r){t=[];for(let e of r){let r={...e,__proto__:o.prototype};r.map&&(r.map={...r.map,__proto__:i.prototype}),t.push(r)}}if(h.nodes&&(h.nodes=e.nodes.map((e=>l(e,t)))),h.source){let{inputId:e,...r}=h.source;h.source=r,null!=e&&(h.source.input=t[e])}if("root"===h.type)return new c(h);if("decl"===h.type)return new n(h);if("rule"===h.type)return new u(h);if("comment"===h.type)return new a(h);if("atrule"===h.type)return new s(h);throw new Error("Unknown node type: "+e.type)}e.exports=l,l.default=l},5995:(e,t,r)=>{"use strict";let{SourceMapConsumer:n,SourceMapGenerator:i}=r(209),{fileURLToPath:a,pathToFileURL:s}=r(7414),{resolve:o,isAbsolute:c}=r(9830),{nanoid:u}=r(2961),l=r(2868),h=r(2671),d=r(7981),f=Symbol("fromOffsetCache"),p=Boolean(n&&i),y=Boolean(o&&c);class g{constructor(e,t={}){if(null==e||"object"==typeof e&&!e.toString)throw new Error(`PostCSS received ${e} instead of CSS string`);if(this.css=e.toString(),"\ufeff"===this.css[0]||"￾"===this.css[0]?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!y||/^\w+:\/\//.test(t.from)||c(t.from)?this.file=t.from:this.file=o(t.from)),y&&p){let e=new d(this.css,t);if(e.text){this.map=e;let t=e.consumer().file;!this.file&&t&&(this.file=this.mapResolve(t))}}this.file||(this.id=""),this.map&&(this.map.file=this.from)}fromOffset(e){let t,r;if(this[f])r=this[f];else{let e=this.css.split("\n");r=new Array(e.length);let t=0;for(let n=0,i=e.length;n=t)n=r.length-1;else{let t,i=r.length-2;for(;n>1),e=r[t+1])){n=t;break}n=t+1}}return{line:n+1,col:e-r[n]+1}}error(e,t,r,n={}){let i,a,o;if(t&&"object"==typeof t){let e=t,n=r;if("number"==typeof e.offset){let n=this.fromOffset(e.offset);t=n.line,r=n.col}else t=e.line,r=e.column;if("number"==typeof n.offset){let e=this.fromOffset(n.offset);a=e.line,o=e.col}else a=n.line,o=n.column}else if(!r){let e=this.fromOffset(t);t=e.line,r=e.col}let c=this.origin(t,r,a,o);return i=c?new h(e,void 0===c.endLine?c.line:{line:c.line,column:c.column},void 0===c.endLine?c.column:{line:c.endLine,column:c.endColumn},c.source,c.file,n.plugin):new h(e,void 0===a?t:{line:t,column:r},void 0===a?r:{line:a,column:o},this.css,this.file,n.plugin),i.input={line:t,column:r,endLine:a,endColumn:o,source:this.css},this.file&&(s&&(i.input.url=s(this.file).toString()),i.input.file=this.file),i}origin(e,t,r,n){if(!this.map)return!1;let i,o,u=this.map.consumer(),l=u.originalPositionFor({line:e,column:t});if(!l.source)return!1;"number"==typeof r&&(i=u.originalPositionFor({line:r,column:n})),o=c(l.source)?s(l.source):new URL(l.source,this.map.consumer().sourceRoot||s(this.map.mapFile));let h={url:o.toString(),line:l.line,column:l.column,endLine:i&&i.line,endColumn:i&&i.column};if("file:"===o.protocol){if(!a)throw new Error("file: protocol is not available in this PostCSS build");h.file=a(o)}let d=u.sourceContentFor(l.source);return d&&(h.source=d),h}mapResolve(e){return/^\w+:\/\//.test(e)?e:o(this.map.consumer().sourceRoot||this.map.root||".",e)}get from(){return this.file||this.id}toJSON(){let e={};for(let t of["hasBOM","css","file","id"])null!=this[t]&&(e[t]=this[t]);return this.map&&(e.map={...this.map},e.map.consumerCache&&(e.map.consumerCache=void 0)),e}}e.exports=g,g.default=g,l&&l.registerInput&&l.registerInput(g)},1939:(e,t,r)=>{"use strict";let{isClean:n,my:i}=r(5513),a=r(8505),s=r(7088),o=r(1019),c=r(6461),u=(r(2448),r(3632)),l=r(6939),h=r(1025);const d={document:"Document",root:"Root",atrule:"AtRule",rule:"Rule",decl:"Declaration",comment:"Comment"},f={postcssPlugin:!0,prepare:!0,Once:!0,Document:!0,Root:!0,Declaration:!0,Rule:!0,AtRule:!0,Comment:!0,DeclarationExit:!0,RuleExit:!0,AtRuleExit:!0,CommentExit:!0,RootExit:!0,DocumentExit:!0,OnceExit:!0},p={postcssPlugin:!0,prepare:!0,Once:!0},y=0;function g(e){return"object"==typeof e&&"function"==typeof e.then}function m(e){let t=!1,r=d[e.type];return"decl"===e.type?t=e.prop.toLowerCase():"atrule"===e.type&&(t=e.name.toLowerCase()),t&&e.append?[r,r+"-"+t,y,r+"Exit",r+"Exit-"+t]:t?[r,r+"-"+t,r+"Exit",r+"Exit-"+t]:e.append?[r,y,r+"Exit"]:[r,r+"Exit"]}function b(e){let t;return t="document"===e.type?["Document",y,"DocumentExit"]:"root"===e.type?["Root",y,"RootExit"]:m(e),{node:e,events:t,eventIndex:0,visitors:[],visitorIndex:0,iterator:0}}function w(e){return e[n]=!1,e.nodes&&e.nodes.forEach((e=>w(e))),e}let v={};class k{constructor(e,t,r){let n;if(this.stringified=!1,this.processed=!1,"object"!=typeof t||null===t||"root"!==t.type&&"document"!==t.type)if(t instanceof k||t instanceof u)n=w(t.root),t.map&&(void 0===r.map&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=t.map);else{let e=l;r.syntax&&(e=r.syntax.parse),r.parser&&(e=r.parser),e.parse&&(e=e.parse);try{n=e(t,r)}catch(e){this.processed=!0,this.error=e}n&&!n[i]&&o.rebuild(n)}else n=w(t);this.result=new u(e,n,r),this.helpers={...v,result:this.result,postcss:v},this.plugins=this.processor.plugins.map((e=>"object"==typeof e&&e.prepare?{...e,...e.prepare(this.result)}:e))}get[Symbol.toStringTag](){return"LazyResult"}get processor(){return this.result.processor}get opts(){return this.result.opts}get css(){return this.stringify().css}get content(){return this.stringify().content}get map(){return this.stringify().map}get root(){return this.sync().root}get messages(){return this.sync().messages}warnings(){return this.sync().warnings()}toString(){return this.css}then(e,t){return this.async().then(e,t)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let e of this.plugins)if(g(this.runOnRoot(e)))throw this.getAsyncError();if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[n];)e[n]=!0,this.walkSync(e);if(this.listeners.OnceExit)if("document"===e.type)for(let t of e.nodes)this.visitSync(this.listeners.OnceExit,t);else this.visitSync(this.listeners.OnceExit,e)}return this.result}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let e=this.result.opts,t=s;e.syntax&&(t=e.syntax.stringify),e.stringifier&&(t=e.stringifier),t.stringify&&(t=t.stringify);let r=new a(t,this.result.root,this.result.opts).generate();return this.result.css=r[0],this.result.map=r[1],this.result}walkSync(e){e[n]=!0;let t=m(e);for(let r of t)if(r===y)e.nodes&&e.each((e=>{e[n]||this.walkSync(e)}));else{let t=this.listeners[r];if(t&&this.visitSync(t,e.toProxy()))return}}visitSync(e,t){for(let[r,n]of e){let e;this.result.lastPlugin=r;try{e=n(t,this.helpers)}catch(e){throw this.handleError(e,t.proxyOf)}if("root"!==t.type&&"document"!==t.type&&!t.parent)return!0;if(g(e))throw this.getAsyncError()}}runOnRoot(e){this.result.lastPlugin=e;try{if("object"==typeof e&&e.Once){if("document"===this.result.root.type){let t=this.result.root.nodes.map((t=>e.Once(t,this.helpers)));return g(t[0])?Promise.all(t):t}return e.Once(this.result.root,this.helpers)}if("function"==typeof e)return e(this.result.root,this.result)}catch(e){throw this.handleError(e)}}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(e,t){let r=this.result.lastPlugin;try{t&&t.addToError(e),this.error=e,"CssSyntaxError"!==e.name||e.plugin?r.postcssVersion:(e.plugin=r.postcssPlugin,e.setMessage())}catch(e){console&&console.error&&console.error(e)}return e}async runAsync(){this.plugin=0;for(let e=0;e0;){let e=this.visitTick(t);if(g(e))try{await e}catch(e){let r=t[t.length-1].node;throw this.handleError(e,r)}}}if(this.listeners.OnceExit)for(let[t,r]of this.listeners.OnceExit){this.result.lastPlugin=t;try{if("document"===e.type){let t=e.nodes.map((e=>r(e,this.helpers)));await Promise.all(t)}else await r(e,this.helpers)}catch(e){throw this.handleError(e)}}}return this.processed=!0,this.stringify()}prepareVisitors(){this.listeners={};let e=(e,t,r)=>{this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push([e,r])};for(let t of this.plugins)if("object"==typeof t)for(let r in t){if(!f[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${t.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!p[r])if("object"==typeof t[r])for(let n in t[r])e(t,"*"===n?r:r+"-"+n.toLowerCase(),t[r][n]);else"function"==typeof t[r]&&e(t,r,t[r])}this.hasListener=Object.keys(this.listeners).length>0}visitTick(e){let t=e[e.length-1],{node:r,visitors:i}=t;if("root"!==r.type&&"document"!==r.type&&!r.parent)return void e.pop();if(i.length>0&&t.visitorIndex{v=e},e.exports=k,k.default=k,h.registerLazyResult(k),c.registerLazyResult(k)},4715:e=>{"use strict";let t={split(e,t,r){let n=[],i="",a=!1,s=0,o=!1,c="",u=!1;for(let r of e)u?u=!1:"\\"===r?u=!0:o?r===c&&(o=!1):'"'===r||"'"===r?(o=!0,c=r):"("===r?s+=1:")"===r?s>0&&(s-=1):0===s&&t.includes(r)&&(a=!0),a?(""!==i&&n.push(i.trim()),i="",a=!1):i+=r;return(r||""!==i)&&n.push(i.trim()),n},space:e=>t.split(e,[" ","\n","\t"]),comma:e=>t.split(e,[","],!0)};e.exports=t,t.default=t},8505:(e,t,r)=>{"use strict";let{SourceMapConsumer:n,SourceMapGenerator:i}=r(209),{dirname:a,resolve:s,relative:o,sep:c}=r(9830),{pathToFileURL:u}=r(7414),l=r(5995),h=Boolean(n&&i),d=Boolean(a&&s&&o&&c);e.exports=class{constructor(e,t,r,n){this.stringify=e,this.mapOpts=r.map||{},this.root=t,this.opts=r,this.css=n,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute}isMap(){return void 0!==this.opts.map?!!this.opts.map:this.previous().length>0}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk((e=>{if(e.source&&e.source.input.map){let t=e.source.input.map;this.previousMaps.includes(t)||this.previousMaps.push(t)}}));else{let e=new l(this.css,this.opts);e.map&&this.previousMaps.push(e.map)}return this.previousMaps}isInline(){if(void 0!==this.mapOpts.inline)return this.mapOpts.inline;let e=this.mapOpts.annotation;return(void 0===e||!0===e)&&(!this.previous().length||this.previous().some((e=>e.inline)))}isSourcesContent(){return void 0!==this.mapOpts.sourcesContent?this.mapOpts.sourcesContent:!this.previous().length||this.previous().some((e=>e.withContent()))}clearAnnotation(){if(!1!==this.mapOpts.annotation)if(this.root){let e;for(let t=this.root.nodes.length-1;t>=0;t--)e=this.root.nodes[t],"comment"===e.type&&0===e.text.indexOf("# sourceMappingURL=")&&this.root.removeChild(t)}else this.css&&(this.css=this.css.replace(/(\n)?\/\*#[\S\s]*?\*\/$/gm,""))}setSourcesContent(){let e={};if(this.root)this.root.walk((t=>{if(t.source){let r=t.source.input.from;if(r&&!e[r]){e[r]=!0;let n=this.usesFileUrls?this.toFileUrl(r):this.toUrl(this.path(r));this.map.setSourceContent(n,t.source.input.css)}}}));else if(this.css){let e=this.opts.from?this.toUrl(this.path(this.opts.from)):"";this.map.setSourceContent(e,this.css)}}applyPrevMaps(){for(let e of this.previous()){let t,r=this.toUrl(this.path(e.file)),i=e.root||a(e.file);!1===this.mapOpts.sourcesContent?(t=new n(e.text),t.sourcesContent&&(t.sourcesContent=t.sourcesContent.map((()=>null)))):t=e.consumer(),this.map.applySourceMap(t,r,this.toUrl(this.path(i)))}}isAnnotation(){return!!this.isInline()||(void 0!==this.mapOpts.annotation?this.mapOpts.annotation:!this.previous().length||this.previous().some((e=>e.annotation)))}toBase64(e){return Buffer?Buffer.from(e).toString("base64"):window.btoa(unescape(encodeURIComponent(e)))}addAnnotation(){let e;e=this.isInline()?"data:application/json;base64,"+this.toBase64(this.map.toString()):"string"==typeof this.mapOpts.annotation?this.mapOpts.annotation:"function"==typeof this.mapOpts.annotation?this.mapOpts.annotation(this.opts.to,this.root):this.outputFile()+".map";let t="\n";this.css.includes("\r\n")&&(t="\r\n"),this.css+=t+"/*# sourceMappingURL="+e+" */"}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}generateMap(){if(this.root)this.generateString();else if(1===this.previous().length){let e=this.previous()[0].consumer();e.file=this.outputFile(),this.map=i.fromSourceMap(e)}else this.map=new i({file:this.outputFile()}),this.map.addMapping({source:this.opts.from?this.toUrl(this.path(this.opts.from)):"",generated:{line:1,column:0},original:{line:1,column:0}});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]}path(e){if(0===e.indexOf("<"))return e;if(/^\w+:\/\//.test(e))return e;if(this.mapOpts.absolute)return e;let t=this.opts.to?a(this.opts.to):".";return"string"==typeof this.mapOpts.annotation&&(t=a(s(t,this.mapOpts.annotation))),o(t,e)}toUrl(e){return"\\"===c&&(e=e.replace(/\\/g,"/")),encodeURI(e).replace(/[#?]/g,encodeURIComponent)}toFileUrl(e){if(u)return u(e).toString();throw new Error("`map.absolute` option is not available in this PostCSS build")}sourcePath(e){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(e.source.input.from):this.toUrl(this.path(e.source.input.from))}generateString(){this.css="",this.map=new i({file:this.outputFile()});let e,t,r=1,n=1,a="",s={source:"",generated:{line:0,column:0},original:{line:0,column:0}};this.stringify(this.root,((i,o,c)=>{if(this.css+=i,o&&"end"!==c&&(s.generated.line=r,s.generated.column=n-1,o.source&&o.source.start?(s.source=this.sourcePath(o),s.original.line=o.source.start.line,s.original.column=o.source.start.column-1,this.map.addMapping(s)):(s.source=a,s.original.line=1,s.original.column=0,this.map.addMapping(s))),e=i.match(/\n/g),e?(r+=e.length,t=i.lastIndexOf("\n"),n=i.length-t):n+=i.length,o&&"start"!==c){let e=o.parent||{raws:{}};("decl"===o.type||"atrule"===o.type&&!o.nodes)&&o===e.last&&!e.raws.semicolon||(o.source&&o.source.end?(s.source=this.sourcePath(o),s.original.line=o.source.end.line,s.original.column=o.source.end.column-1,s.generated.line=r,s.generated.column=n-2,this.map.addMapping(s)):(s.source=a,s.original.line=1,s.original.column=0,s.generated.line=r,s.generated.column=n-1,this.map.addMapping(s)))}}))}generate(){if(this.clearAnnotation(),d&&h&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,(t=>{e+=t})),[e]}}}},7647:(e,t,r)=>{"use strict";let n=r(8505),i=r(7088),a=(r(2448),r(6939));const s=r(3632);class o{constructor(e,t,r){let a;t=t.toString(),this.stringified=!1,this._processor=e,this._css=t,this._opts=r,this._map=void 0;let o=i;this.result=new s(this._processor,a,this._opts),this.result.css=t;let c=this;Object.defineProperty(this.result,"root",{get:()=>c.root});let u=new n(o,a,this._opts,t);if(u.isMap()){let[e,t]=u.generate();e&&(this.result.css=e),t&&(this.result.map=t)}}get[Symbol.toStringTag](){return"NoWorkResult"}get processor(){return this.result.processor}get opts(){return this.result.opts}get css(){return this.result.css}get content(){return this.result.css}get map(){return this.result.map}get root(){if(this._root)return this._root;let e,t=a;try{e=t(this._css,this._opts)}catch(e){this.error=e}if(this.error)throw this.error;return this._root=e,e}get messages(){return[]}warnings(){return[]}toString(){return this._css}then(e,t){return this.async().then(e,t)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}sync(){if(this.error)throw this.error;return this.result}}e.exports=o,o.default=o},5631:(e,t,r)=>{"use strict";let{isClean:n,my:i}=r(5513),a=r(2671),s=r(1062),o=r(7088);function c(e,t){let r=new e.constructor;for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue;if("proxyCache"===n)continue;let i=e[n],a=typeof i;"parent"===n&&"object"===a?t&&(r[n]=t):"source"===n?r[n]=i:Array.isArray(i)?r[n]=i.map((e=>c(e,r))):("object"===a&&null!==i&&(i=c(i)),r[n]=i)}return r}class u{constructor(e={}){this.raws={},this[n]=!1,this[i]=!0;for(let t in e)if("nodes"===t){this.nodes=[];for(let r of e[t])"function"==typeof r.clone?this.append(r.clone()):this.append(r)}else this[t]=e[t]}error(e,t={}){if(this.source){let{start:r,end:n}=this.rangeBy(t);return this.source.input.error(e,{line:r.line,column:r.column},{line:n.line,column:n.column},t)}return new a(e)}warn(e,t,r){let n={node:this};for(let e in r)n[e]=r[e];return e.warn(t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}toString(e=o){e.stringify&&(e=e.stringify);let t="";return e(this,(e=>{t+=e})),t}assign(e={}){for(let t in e)this[t]=e[t];return this}clone(e={}){let t=c(this);for(let r in e)t[r]=e[r];return t}cloneBefore(e={}){let t=this.clone(e);return this.parent.insertBefore(this,t),t}cloneAfter(e={}){let t=this.clone(e);return this.parent.insertAfter(this,t),t}replaceWith(...e){if(this.parent){let t=this,r=!1;for(let n of e)n===this?r=!0:r?(this.parent.insertAfter(t,n),t=n):this.parent.insertBefore(t,n);r||this.remove()}return this}next(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e+1]}prev(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e-1]}before(e){return this.parent.insertBefore(this,e),this}after(e){return this.parent.insertAfter(this,e),this}root(){let e=this;for(;e.parent&&"document"!==e.parent.type;)e=e.parent;return e}raw(e,t){return(new s).raw(this,e,t)}cleanRaws(e){delete this.raws.before,delete this.raws.after,e||delete this.raws.between}toJSON(e,t){let r={},n=null==t;t=t||new Map;let i=0;for(let e in this){if(!Object.prototype.hasOwnProperty.call(this,e))continue;if("parent"===e||"proxyCache"===e)continue;let n=this[e];if(Array.isArray(n))r[e]=n.map((e=>"object"==typeof e&&e.toJSON?e.toJSON(null,t):e));else if("object"==typeof n&&n.toJSON)r[e]=n.toJSON(null,t);else if("source"===e){let a=t.get(n.input);null==a&&(a=i,t.set(n.input,i),i++),r[e]={inputId:a,start:n.start,end:n.end}}else r[e]=n}return n&&(r.inputs=[...t.keys()].map((e=>e.toJSON()))),r}positionInside(e){let t=this.toString(),r=this.source.start.column,n=this.source.start.line;for(let i=0;i(e[t]===r||(e[t]=r,"prop"!==t&&"value"!==t&&"name"!==t&&"params"!==t&&"important"!==t&&"text"!==t||e.markDirty()),!0),get:(e,t)=>"proxyOf"===t?e:"root"===t?()=>e.root().toProxy():e[t]}}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}addToError(e){if(e.postcssNode=this,e.stack&&this.source&&/\n\s{4}at /.test(e.stack)){let t=this.source;e.stack=e.stack.replace(/\n\s{4}at /,`$&${t.input.from}:${t.start.line}:${t.start.column}$&`)}return e}markDirty(){if(this[n]){this[n]=!1;let e=this;for(;e=e.parent;)e[n]=!1}}get proxyOf(){return this}}e.exports=u,u.default=u},6939:(e,t,r)=>{"use strict";let n=r(1019),i=r(8867),a=r(5995);function s(e,t){let r=new a(e,t),n=new i(r);try{n.parse()}catch(e){throw e}return n.root}e.exports=s,s.default=s,n.registerParse(s)},8867:(e,t,r)=>{"use strict";let n=r(4258),i=r(3852),a=r(9932),s=r(1353),o=r(1025),c=r(1675);const u={empty:!0,space:!0};e.exports=class{constructor(e){this.input=e,this.root=new o,this.current=this.root,this.spaces="",this.semicolon=!1,this.customProperty=!1,this.createTokenizer(),this.root.source={input:e,start:{offset:0,line:1,column:1}}}createTokenizer(){this.tokenizer=i(this.input)}parse(){let e;for(;!this.tokenizer.endOfFile();)switch(e=this.tokenizer.nextToken(),e[0]){case"space":this.spaces+=e[1];break;case";":this.freeSemicolon(e);break;case"}":this.end(e);break;case"comment":this.comment(e);break;case"at-word":this.atrule(e);break;case"{":this.emptyRule(e);break;default:this.other(e)}this.endFile()}comment(e){let t=new a;this.init(t,e[2]),t.source.end=this.getPosition(e[3]||e[2]);let r=e[1].slice(2,-2);if(/^\s*$/.test(r))t.text="",t.raws.left=r,t.raws.right="";else{let e=r.match(/^(\s*)([^]*\S)(\s*)$/);t.text=e[2],t.raws.left=e[1],t.raws.right=e[3]}}emptyRule(e){let t=new c;this.init(t,e[2]),t.selector="",t.raws.between="",this.current=t}other(e){let t=!1,r=null,n=!1,i=null,a=[],s=e[1].startsWith("--"),o=[],c=e;for(;c;){if(r=c[0],o.push(c),"("===r||"["===r)i||(i=c),a.push("("===r?")":"]");else if(s&&n&&"{"===r)i||(i=c),a.push("}");else if(0===a.length){if(";"===r){if(n)return void this.decl(o,s);break}if("{"===r)return void this.rule(o);if("}"===r){this.tokenizer.back(o.pop()),t=!0;break}":"===r&&(n=!0)}else r===a[a.length-1]&&(a.pop(),0===a.length&&(i=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(t=!0),a.length>0&&this.unclosedBracket(i),t&&n){if(!s)for(;o.length&&(c=o[o.length-1][0],"space"===c||"comment"===c);)this.tokenizer.back(o.pop());this.decl(o,s)}else this.unknownWord(o)}rule(e){e.pop();let t=new c;this.init(t,e[0][2]),t.raws.between=this.spacesAndCommentsFromEnd(e),this.raw(t,"selector",e),this.current=t}decl(e,t){let r=new n;this.init(r,e[0][2]);let i,a=e[e.length-1];for(";"===a[0]&&(this.semicolon=!0,e.pop()),r.source.end=this.getPosition(a[3]||a[2]||function(e){for(let t=e.length-1;t>=0;t--){let r=e[t],n=r[3]||r[2];if(n)return n}}(e));"word"!==e[0][0];)1===e.length&&this.unknownWord(e),r.raws.before+=e.shift()[1];for(r.source.start=this.getPosition(e[0][2]),r.prop="";e.length;){let t=e[0][0];if(":"===t||"space"===t||"comment"===t)break;r.prop+=e.shift()[1]}for(r.raws.between="";e.length;){if(i=e.shift(),":"===i[0]){r.raws.between+=i[1];break}"word"===i[0]&&/\w/.test(i[1])&&this.unknownWord([i]),r.raws.between+=i[1]}"_"!==r.prop[0]&&"*"!==r.prop[0]||(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let s,o=[];for(;e.length&&(s=e[0][0],"space"===s||"comment"===s);)o.push(e.shift());this.precheckMissedSemicolon(e);for(let t=e.length-1;t>=0;t--){if(i=e[t],"!important"===i[1].toLowerCase()){r.important=!0;let n=this.stringFrom(e,t);n=this.spacesFromEnd(e)+n," !important"!==n&&(r.raws.important=n);break}if("important"===i[1].toLowerCase()){let n=e.slice(0),i="";for(let e=t;e>0;e--){let t=n[e][0];if(0===i.trim().indexOf("!")&&"space"!==t)break;i=n.pop()[1]+i}0===i.trim().indexOf("!")&&(r.important=!0,r.raws.important=i,e=n)}if("space"!==i[0]&&"comment"!==i[0])break}e.some((e=>"space"!==e[0]&&"comment"!==e[0]))&&(r.raws.between+=o.map((e=>e[1])).join(""),o=[]),this.raw(r,"value",o.concat(e),t),r.value.includes(":")&&!t&&this.checkMissedSemicolon(e)}atrule(e){let t,r,n,i=new s;i.name=e[1].slice(1),""===i.name&&this.unnamedAtrule(i,e),this.init(i,e[2]);let a=!1,o=!1,c=[],u=[];for(;!this.tokenizer.endOfFile();){if(t=(e=this.tokenizer.nextToken())[0],"("===t||"["===t?u.push("("===t?")":"]"):"{"===t&&u.length>0?u.push("}"):t===u[u.length-1]&&u.pop(),0===u.length){if(";"===t){i.source.end=this.getPosition(e[2]),this.semicolon=!0;break}if("{"===t){o=!0;break}if("}"===t){if(c.length>0){for(n=c.length-1,r=c[n];r&&"space"===r[0];)r=c[--n];r&&(i.source.end=this.getPosition(r[3]||r[2]))}this.end(e);break}c.push(e)}else c.push(e);if(this.tokenizer.endOfFile()){a=!0;break}}i.raws.between=this.spacesAndCommentsFromEnd(c),c.length?(i.raws.afterName=this.spacesAndCommentsFromStart(c),this.raw(i,"params",c),a&&(e=c[c.length-1],i.source.end=this.getPosition(e[3]||e[2]),this.spaces=i.raws.between,i.raws.between="")):(i.raws.afterName="",i.params=""),o&&(i.nodes=[],this.current=i)}end(e){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(e[2]),this.current=this.current.parent):this.unexpectedClose(e)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces}freeSemicolon(e){if(this.spaces+=e[1],this.current.nodes){let e=this.current.nodes[this.current.nodes.length-1];e&&"rule"===e.type&&!e.raws.ownSemicolon&&(e.raws.ownSemicolon=this.spaces,this.spaces="")}}getPosition(e){let t=this.input.fromOffset(e);return{offset:e,line:t.line,column:t.col}}init(e,t){this.current.push(e),e.source={start:this.getPosition(t),input:this.input},e.raws.before=this.spaces,this.spaces="","comment"!==e.type&&(this.semicolon=!1)}raw(e,t,r,n){let i,a,s,o,c=r.length,l="",h=!0;for(let e=0;ee+t[1]),"");e.raws[t]={value:l,raw:n}}e[t]=l}spacesAndCommentsFromEnd(e){let t,r="";for(;e.length&&(t=e[e.length-1][0],"space"===t||"comment"===t);)r=e.pop()[1]+r;return r}spacesAndCommentsFromStart(e){let t,r="";for(;e.length&&(t=e[0][0],"space"===t||"comment"===t);)r+=e.shift()[1];return r}spacesFromEnd(e){let t,r="";for(;e.length&&(t=e[e.length-1][0],"space"===t);)r=e.pop()[1]+r;return r}stringFrom(e,t){let r="";for(let n=t;n=0&&(r=e[i],"space"===r[0]||(n+=1,2!==n));i--);throw this.input.error("Missed semicolon","word"===r[0]?r[3]+1:r[2])}}},20:(e,t,r)=>{"use strict";let n=r(2671),i=r(4258),a=r(1939),s=r(1019),o=r(1723),c=r(7088),u=r(250),l=r(6461),h=r(1728),d=r(9932),f=r(1353),p=r(3632),y=r(5995),g=r(6939),m=r(4715),b=r(1675),w=r(1025),v=r(5631);function k(...e){return 1===e.length&&Array.isArray(e[0])&&(e=e[0]),new o(e)}k.plugin=function(e,t){let r,n=!1;function i(...r){console&&console.warn&&!n&&(n=!0,console.warn(e+": postcss.plugin was deprecated. Migration guide:\nhttps://evilmartians.com/chronicles/postcss-8-plugin-migration"),process.env.LANG&&process.env.LANG.startsWith("cn")&&console.warn(e+": 里面 postcss.plugin 被弃用. 迁移指南:\nhttps://www.w3ctech.com/topic/2226"));let i=t(...r);return i.postcssPlugin=e,i.postcssVersion=(new o).version,i}return Object.defineProperty(i,"postcss",{get:()=>(r||(r=i()),r)}),i.process=function(e,t,r){return k([i(r)]).process(e,t)},i},k.stringify=c,k.parse=g,k.fromJSON=u,k.list=m,k.comment=e=>new d(e),k.atRule=e=>new f(e),k.decl=e=>new i(e),k.rule=e=>new b(e),k.root=e=>new w(e),k.document=e=>new l(e),k.CssSyntaxError=n,k.Declaration=i,k.Container=s,k.Processor=o,k.Document=l,k.Comment=d,k.Warning=h,k.AtRule=f,k.Result=p,k.Input=y,k.Rule=b,k.Root=w,k.Node=v,a.registerPostcss(k),e.exports=k,k.default=k},7981:(e,t,r)=>{"use strict";let{SourceMapConsumer:n,SourceMapGenerator:i}=r(209),{existsSync:a,readFileSync:s}=r(4777),{dirname:o,join:c}=r(9830);class u{constructor(e,t){if(!1===t.map)return;this.loadAnnotation(e),this.inline=this.startWith(this.annotation,"data:");let r=t.map?t.map.prev:void 0,n=this.loadMap(t.from,r);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=o(this.mapFile)),n&&(this.text=n)}consumer(){return this.consumerCache||(this.consumerCache=new n(this.text)),this.consumerCache}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}startWith(e,t){return!!e&&e.substr(0,t.length)===t}getAnnotationURL(e){return e.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}loadAnnotation(e){let t=e.match(/\/\*\s*# sourceMappingURL=/gm);if(!t)return;let r=e.lastIndexOf(t.pop()),n=e.indexOf("*/",r);r>-1&&n>-1&&(this.annotation=this.getAnnotationURL(e.substring(r,n)))}decodeInline(e){if(/^data:application\/json;charset=utf-?8,/.test(e)||/^data:application\/json,/.test(e))return decodeURIComponent(e.substr(RegExp.lastMatch.length));if(/^data:application\/json;charset=utf-?8;base64,/.test(e)||/^data:application\/json;base64,/.test(e))return t=e.substr(RegExp.lastMatch.length),Buffer?Buffer.from(t,"base64").toString():window.atob(t);var t;let r=e.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+r)}loadFile(e){if(this.root=o(e),a(e))return this.mapFile=e,s(e,"utf-8").toString().trim()}loadMap(e,t){if(!1===t)return!1;if(t){if("string"==typeof t)return t;if("function"!=typeof t){if(t instanceof n)return i.fromSourceMap(t).toString();if(t instanceof i)return t.toString();if(this.isMap(t))return JSON.stringify(t);throw new Error("Unsupported previous source map format: "+t.toString())}{let r=t(e);if(r){let e=this.loadFile(r);if(!e)throw new Error("Unable to load previous source map: "+r.toString());return e}}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let t=this.annotation;return e&&(t=c(o(e),t)),this.loadFile(t)}}}isMap(e){return"object"==typeof e&&("string"==typeof e.mappings||"string"==typeof e._mappings||Array.isArray(e.sections))}}e.exports=u,u.default=u},1723:(e,t,r)=>{"use strict";let n=r(7647),i=r(1939),a=r(6461),s=r(1025);class o{constructor(e=[]){this.version="8.4.24",this.plugins=this.normalize(e)}use(e){return this.plugins=this.plugins.concat(this.normalize([e])),this}process(e,t={}){return 0===this.plugins.length&&void 0===t.parser&&void 0===t.stringifier&&void 0===t.syntax?new n(this,e,t):new i(this,e,t)}normalize(e){let t=[];for(let r of e)if(!0===r.postcss?r=r():r.postcss&&(r=r.postcss),"object"==typeof r&&Array.isArray(r.plugins))t=t.concat(r.plugins);else if("object"==typeof r&&r.postcssPlugin)t.push(r);else if("function"==typeof r)t.push(r);else if("object"!=typeof r||!r.parse&&!r.stringify)throw new Error(r+" is not a PostCSS plugin");return t}}e.exports=o,o.default=o,s.registerProcessor(o),a.registerProcessor(o)},3632:(e,t,r)=>{"use strict";let n=r(1728);class i{constructor(e,t,r){this.processor=e,this.messages=[],this.root=t,this.opts=r,this.css=void 0,this.map=void 0}toString(){return this.css}warn(e,t={}){t.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(t.plugin=this.lastPlugin.postcssPlugin);let r=new n(e,t);return this.messages.push(r),r}warnings(){return this.messages.filter((e=>"warning"===e.type))}get content(){return this.css}}e.exports=i,i.default=i},1025:(e,t,r)=>{"use strict";let n,i,a=r(1019);class s extends a{constructor(e){super(e),this.type="root",this.nodes||(this.nodes=[])}removeChild(e,t){let r=this.index(e);return!t&&0===r&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[r].raws.before),super.removeChild(e)}normalize(e,t,r){let n=super.normalize(e);if(t)if("prepend"===r)this.nodes.length>1?t.raws.before=this.nodes[1].raws.before:delete t.raws.before;else if(this.first!==t)for(let e of n)e.raws.before=t.raws.before;return n}toResult(e={}){return new n(new i,this,e).stringify()}}s.registerLazyResult=e=>{n=e},s.registerProcessor=e=>{i=e},e.exports=s,s.default=s,a.registerRoot(s)},1675:(e,t,r)=>{"use strict";let n=r(1019),i=r(4715);class a extends n{constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}get selectors(){return i.comma(this.selector)}set selectors(e){let t=this.selector?this.selector.match(/,\s*/):null,r=t?t[0]:","+this.raw("between","beforeOpen");this.selector=e.join(r)}}e.exports=a,a.default=a,n.registerRule(a)},1062:e=>{"use strict";const t={colon:": ",indent:" ",beforeDecl:"\n",beforeRule:"\n",beforeOpen:" ",beforeClose:"\n",beforeComment:"\n",after:"\n",emptyBody:"",commentLeft:" ",commentRight:" ",semicolon:!1};class r{constructor(e){this.builder=e}stringify(e,t){if(!this[e.type])throw new Error("Unknown AST node type "+e.type+". Maybe you need to change PostCSS stringifier.");this[e.type](e,t)}document(e){this.body(e)}root(e){this.body(e),e.raws.after&&this.builder(e.raws.after)}comment(e){let t=this.raw(e,"left","commentLeft"),r=this.raw(e,"right","commentRight");this.builder("/*"+t+e.text+r+"*/",e)}decl(e,t){let r=this.raw(e,"between","colon"),n=e.prop+r+this.rawValue(e,"value");e.important&&(n+=e.raws.important||" !important"),t&&(n+=";"),this.builder(n,e)}rule(e){this.block(e,this.rawValue(e,"selector")),e.raws.ownSemicolon&&this.builder(e.raws.ownSemicolon,e,"end")}atrule(e,t){let r="@"+e.name,n=e.params?this.rawValue(e,"params"):"";if(void 0!==e.raws.afterName?r+=e.raws.afterName:n&&(r+=" "),e.nodes)this.block(e,r+n);else{let i=(e.raws.between||"")+(t?";":"");this.builder(r+n+i,e)}}body(e){let t=e.nodes.length-1;for(;t>0&&"comment"===e.nodes[t].type;)t-=1;let r=this.raw(e,"semicolon");for(let n=0;n{if(i=e.raws[r],void 0!==i)return!1}))}var o;return void 0===i&&(i=t[n]),s.rawCache[n]=i,i}rawSemicolon(e){let t;return e.walk((e=>{if(e.nodes&&e.nodes.length&&"decl"===e.last.type&&(t=e.raws.semicolon,void 0!==t))return!1})),t}rawEmptyBody(e){let t;return e.walk((e=>{if(e.nodes&&0===e.nodes.length&&(t=e.raws.after,void 0!==t))return!1})),t}rawIndent(e){if(e.raws.indent)return e.raws.indent;let t;return e.walk((r=>{let n=r.parent;if(n&&n!==e&&n.parent&&n.parent===e&&void 0!==r.raws.before){let e=r.raws.before.split("\n");return t=e[e.length-1],t=t.replace(/\S/g,""),!1}})),t}rawBeforeComment(e,t){let r;return e.walkComments((e=>{if(void 0!==e.raws.before)return r=e.raws.before,r.includes("\n")&&(r=r.replace(/[^\n]+$/,"")),!1})),void 0===r?r=this.raw(t,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeDecl(e,t){let r;return e.walkDecls((e=>{if(void 0!==e.raws.before)return r=e.raws.before,r.includes("\n")&&(r=r.replace(/[^\n]+$/,"")),!1})),void 0===r?r=this.raw(t,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeRule(e){let t;return e.walk((r=>{if(r.nodes&&(r.parent!==e||e.first!==r)&&void 0!==r.raws.before)return t=r.raws.before,t.includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1})),t&&(t=t.replace(/\S/g,"")),t}rawBeforeClose(e){let t;return e.walk((e=>{if(e.nodes&&e.nodes.length>0&&void 0!==e.raws.after)return t=e.raws.after,t.includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1})),t&&(t=t.replace(/\S/g,"")),t}rawBeforeOpen(e){let t;return e.walk((e=>{if("decl"!==e.type&&(t=e.raws.between,void 0!==t))return!1})),t}rawColon(e){let t;return e.walkDecls((e=>{if(void 0!==e.raws.between)return t=e.raws.between.replace(/[^\s:]/g,""),!1})),t}beforeAfter(e,t){let r;r="decl"===e.type?this.raw(e,null,"beforeDecl"):"comment"===e.type?this.raw(e,null,"beforeComment"):"before"===t?this.raw(e,null,"beforeRule"):this.raw(e,null,"beforeClose");let n=e.parent,i=0;for(;n&&"root"!==n.type;)i+=1,n=n.parent;if(r.includes("\n")){let t=this.raw(e,null,"indent");if(t.length)for(let e=0;e{"use strict";let n=r(1062);function i(e,t){new n(t).stringify(e)}e.exports=i,i.default=i},5513:e=>{"use strict";e.exports.isClean=Symbol("isClean"),e.exports.my=Symbol("my")},3852:e=>{"use strict";const t="'".charCodeAt(0),r='"'.charCodeAt(0),n="\\".charCodeAt(0),i="/".charCodeAt(0),a="\n".charCodeAt(0),s=" ".charCodeAt(0),o="\f".charCodeAt(0),c="\t".charCodeAt(0),u="\r".charCodeAt(0),l="[".charCodeAt(0),h="]".charCodeAt(0),d="(".charCodeAt(0),f=")".charCodeAt(0),p="{".charCodeAt(0),y="}".charCodeAt(0),g=";".charCodeAt(0),m="*".charCodeAt(0),b=":".charCodeAt(0),w="@".charCodeAt(0),v=/[\t\n\f\r "#'()/;[\\\]{}]/g,k=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,A=/.[\n"'(/\\]/,_=/[\da-f]/i;e.exports=function(e,S={}){let E,x,P,C,T,M,I,D,B,U,R=e.css.valueOf(),K=S.ignoreErrors,O=R.length,N=0,L=[],q=[];function F(t){throw e.error("Unclosed "+t,N)}return{back:function(e){q.push(e)},nextToken:function(e){if(q.length)return q.pop();if(N>=O)return;let S=!!e&&e.ignoreUnclosed;switch(E=R.charCodeAt(N),E){case a:case s:case c:case u:case o:x=N;do{x+=1,E=R.charCodeAt(x)}while(E===s||E===a||E===c||E===u||E===o);U=["space",R.slice(N,x)],N=x-1;break;case l:case h:case p:case y:case b:case g:case f:{let e=String.fromCharCode(E);U=[e,e,N];break}case d:if(D=L.length?L.pop()[1]:"",B=R.charCodeAt(N+1),"url"===D&&B!==t&&B!==r&&B!==s&&B!==a&&B!==c&&B!==o&&B!==u){x=N;do{if(M=!1,x=R.indexOf(")",x+1),-1===x){if(K||S){x=N;break}F("bracket")}for(I=x;R.charCodeAt(I-1)===n;)I-=1,M=!M}while(M);U=["brackets",R.slice(N,x+1),N,x],N=x}else x=R.indexOf(")",N+1),C=R.slice(N,x+1),-1===x||A.test(C)?U=["(","(",N]:(U=["brackets",C,N,x],N=x);break;case t:case r:P=E===t?"'":'"',x=N;do{if(M=!1,x=R.indexOf(P,x+1),-1===x){if(K||S){x=N+1;break}F("string")}for(I=x;R.charCodeAt(I-1)===n;)I-=1,M=!M}while(M);U=["string",R.slice(N,x+1),N,x],N=x;break;case w:v.lastIndex=N+1,v.test(R),x=0===v.lastIndex?R.length-1:v.lastIndex-2,U=["at-word",R.slice(N,x+1),N,x],N=x;break;case n:for(x=N,T=!0;R.charCodeAt(x+1)===n;)x+=1,T=!T;if(E=R.charCodeAt(x+1),T&&E!==i&&E!==s&&E!==a&&E!==c&&E!==u&&E!==o&&(x+=1,_.test(R.charAt(x)))){for(;_.test(R.charAt(x+1));)x+=1;R.charCodeAt(x+1)===s&&(x+=1)}U=["word",R.slice(N,x+1),N,x],N=x;break;default:E===i&&R.charCodeAt(N+1)===m?(x=R.indexOf("*/",N+2)+1,0===x&&(K||S?x=R.length:F("comment")),U=["comment",R.slice(N,x+1),N,x],N=x):(k.lastIndex=N+1,k.test(R),x=0===k.lastIndex?R.length-1:k.lastIndex-2,U=["word",R.slice(N,x+1),N,x],L.push(U),N=x)}return N++,U},endOfFile:function(){return 0===q.length&&N>=O},position:function(){return N}}}},2448:e=>{"use strict";let t={};e.exports=function(e){t[e]||(t[e]=!0,"undefined"!=typeof console&&console.warn&&console.warn(e))}},1728:e=>{"use strict";class t{constructor(e,t={}){if(this.type="warning",this.text=e,t.node&&t.node.source){let e=t.node.rangeBy(t);this.line=e.start.line,this.column=e.start.column,this.endLine=e.end.line,this.endColumn=e.end.column}for(let e in t)this[e]=t[e]}toString(){return this.node?this.node.error(this.text,{plugin:this.plugin,index:this.index,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}}e.exports=t,t.default=t},1036:(e,t,r)=>{const n=r(3719),i=r(2997),{isPlainObject:a}=r(6057),s=r(9996),o=r(9430),{parse:c}=r(20),u=["img","audio","video","picture","svg","object","map","iframe","embed"],l=["script","style"];function h(e,t){e&&Object.keys(e).forEach((function(r){t(e[r],r)}))}function d(e,t){return{}.hasOwnProperty.call(e,t)}function f(e,t){const r=[];return h(e,(function(e){t(e)&&r.push(e)})),r}e.exports=y;const p=/^[^\0\t\n\f\r /<=>]+$/;function y(e,t,r){if(null==e)return"";"number"==typeof e&&(e=e.toString());let m="",b="";function w(e,t){const r=this;this.tag=e,this.attribs=t||{},this.tagPosition=m.length,this.text="",this.mediaChildren=[],this.updateParentNodeText=function(){M.length&&(M[M.length-1].text+=r.text)},this.updateParentNodeMediaChildren=function(){M.length&&u.includes(this.tag)&&M[M.length-1].mediaChildren.push(this.tag)}}(t=Object.assign({},y.defaults,t)).parser=Object.assign({},g,t.parser);const v=function(e){return!1===t.allowedTags||(t.allowedTags||[]).indexOf(e)>-1};l.forEach((function(e){v(e)&&!t.allowVulnerableTags&&console.warn(`\n\n⚠️ Your \`allowedTags\` option includes, \`${e}\`, which is inherently\nvulnerable to XSS attacks. Please remove it from \`allowedTags\`.\nOr, to disable this warning, add the \`allowVulnerableTags\` option\nand ensure you are accounting for this risk.\n\n`)}));const k=t.nonTextTags||["script","style","textarea","option"];let A,_;t.allowedAttributes&&(A={},_={},h(t.allowedAttributes,(function(e,t){A[t]=[];const r=[];e.forEach((function(e){"string"==typeof e&&e.indexOf("*")>=0?r.push(i(e).replace(/\\\*/g,".*")):A[t].push(e)})),r.length&&(_[t]=new RegExp("^("+r.join("|")+")$"))})));const S={},E={},x={};h(t.allowedClasses,(function(e,t){A&&(d(A,t)||(A[t]=[]),A[t].push("class")),S[t]=[],x[t]=[];const r=[];e.forEach((function(e){"string"==typeof e&&e.indexOf("*")>=0?r.push(i(e).replace(/\\\*/g,".*")):e instanceof RegExp?x[t].push(e):S[t].push(e)})),r.length&&(E[t]=new RegExp("^("+r.join("|")+")$"))}));const P={};let C,T,M,I,D,B,U;h(t.transformTags,(function(e,t){let r;"function"==typeof e?r=e:"string"==typeof e&&(r=y.simpleTransform(e)),"*"===t?C=r:P[t]=r}));let R=!1;O();const K=new n.Parser({onopentag:function(e,r){if(t.enforceHtmlBoundary&&"html"===e&&O(),B)return void U++;const n=new w(e,r);M.push(n);let i=!1;const u=!!n.text;let l;if(d(P,e)&&(l=P[e](e,r),n.attribs=r=l.attribs,void 0!==l.text&&(n.innerText=l.text),e!==l.tagName&&(n.name=e=l.tagName,D[T]=l.tagName)),C&&(l=C(e,r),n.attribs=r=l.attribs,e!==l.tagName&&(n.name=e=l.tagName,D[T]=l.tagName)),(!v(e)||"recursiveEscape"===t.disallowedTagsMode&&!function(e){for(const t in e)if(d(e,t))return!1;return!0}(I)||null!=t.nestingLimit&&T>=t.nestingLimit)&&(i=!0,I[T]=!0,"discard"===t.disallowedTagsMode&&-1!==k.indexOf(e)&&(B=!0,U=1),I[T]=!0),T++,i){if("discard"===t.disallowedTagsMode)return;b=m,m=""}m+="<"+e,"script"===e&&(t.allowedScriptHostnames||t.allowedScriptDomains)&&(n.innerText=""),(!A||d(A,e)||A["*"])&&h(r,(function(r,i){if(!p.test(i))return void delete n.attribs[i];let u=!1;if(!A||d(A,e)&&-1!==A[e].indexOf(i)||A["*"]&&-1!==A["*"].indexOf(i)||d(_,e)&&_[e].test(i)||_["*"]&&_["*"].test(i))u=!0;else if(A&&A[e])for(const t of A[e])if(a(t)&&t.name&&t.name===i){u=!0;let e="";if(!0===t.multiple){const n=r.split(" ");for(const r of n)-1!==t.values.indexOf(r)&&(""===e?e=r:e+=" "+r)}else t.values.indexOf(r)>=0&&(e=r);r=e}if(u){if(-1!==t.allowedSchemesAppliedToAttributes.indexOf(i)&&L(e,r))return void delete n.attribs[i];if("script"===e&&"src"===i){let e=!0;try{const n=q(r);if(t.allowedScriptHostnames||t.allowedScriptDomains){const r=(t.allowedScriptHostnames||[]).find((function(e){return e===n.url.hostname})),i=(t.allowedScriptDomains||[]).find((function(e){return n.url.hostname===e||n.url.hostname.endsWith(`.${e}`)}));e=r||i}}catch(t){e=!1}if(!e)return void delete n.attribs[i]}if("iframe"===e&&"src"===i){let e=!0;try{const n=q(r);if(n.isRelativeUrl)e=d(t,"allowIframeRelativeUrls")?t.allowIframeRelativeUrls:!t.allowedIframeHostnames&&!t.allowedIframeDomains;else if(t.allowedIframeHostnames||t.allowedIframeDomains){const r=(t.allowedIframeHostnames||[]).find((function(e){return e===n.url.hostname})),i=(t.allowedIframeDomains||[]).find((function(e){return n.url.hostname===e||n.url.hostname.endsWith(`.${e}`)}));e=r||i}}catch(t){e=!1}if(!e)return void delete n.attribs[i]}if("srcset"===i)try{let e=o(r);if(e.forEach((function(e){L("srcset",e.url)&&(e.evil=!0)})),e=f(e,(function(e){return!e.evil})),!e.length)return void delete n.attribs[i];r=f(e,(function(e){return!e.evil})).map((function(e){if(!e.url)throw new Error("URL missing");return e.url+(e.w?` ${e.w}w`:"")+(e.h?` ${e.h}h`:"")+(e.d?` ${e.d}x`:"")})).join(", "),n.attribs[i]=r}catch(e){return void delete n.attribs[i]}if("class"===i){const t=S[e],a=S["*"],o=E[e],c=x[e],u=[o,E["*"]].concat(c).filter((function(e){return e}));if(!(l=r,h=t&&a?s(t,a):t||a,y=u,r=h?(l=l.split(/\s+/)).filter((function(e){return-1!==h.indexOf(e)||y.some((function(t){return t.test(e)}))})).join(" "):l).length)return void delete n.attribs[i]}if("style"===i)if(t.parseStyleAttributes)try{if(r=function(e){return e.nodes[0].nodes.reduce((function(e,t){return e.push(`${t.prop}:${t.value}${t.important?" !important":""}`),e}),[]).join(";")}(function(e,t){if(!t)return e;const r=e.nodes[0];let n;return n=t[r.selector]&&t["*"]?s(t[r.selector],t["*"]):t[r.selector]||t["*"],n&&(e.nodes[0].nodes=r.nodes.reduce(function(e){return function(t,r){return d(e,r.prop)&&e[r.prop].some((function(e){return e.test(r.value)}))&&t.push(r),t}}(n),[])),e}(c(e+" {"+r+"}"),t.allowedStyles)),0===r.length)return void delete n.attribs[i]}catch(t){return console.warn('Failed to parse "'+e+" {"+r+"}\", If you're running this in a browser, we recommend to disable style parsing: options.parseStyleAttributes: false, since this only works in a node environment due to a postcss dependency, More info: https://github.com/apostrophecms/sanitize-html/issues/547"),void delete n.attribs[i]}else if(t.allowedStyles)throw new Error("allowedStyles option cannot be used together with parseStyleAttributes: false.");m+=" "+i,r&&r.length&&(m+='="'+N(r,!0)+'"')}else delete n.attribs[i];var l,h,y})),-1!==t.selfClosing.indexOf(e)?m+=" />":(m+=">",!n.innerText||u||t.textFilter||(m+=N(n.innerText),R=!0)),i&&(m=b+N(m),b="")},ontext:function(e){if(B)return;const r=M[M.length-1];let n;if(r&&(n=r.tag,e=void 0!==r.innerText?r.innerText:e),"discard"!==t.disallowedTagsMode||"script"!==n&&"style"!==n){const r=N(e,!1);t.textFilter&&!R?m+=t.textFilter(r,n):R||(m+=r)}else m+=e;M.length&&(M[M.length-1].text+=e)},onclosetag:function(e,r){if(B){if(U--,U)return;B=!1}const n=M.pop();if(!n)return;if(n.tag!==e)return void M.push(n);B=!!t.enforceHtmlBoundary&&"html"===e,T--;const i=I[T];if(i){if(delete I[T],"discard"===t.disallowedTagsMode)return void n.updateParentNodeText();b=m,m=""}D[T]&&(e=D[T],delete D[T]),t.exclusiveFilter&&t.exclusiveFilter(n)?m=m.substr(0,n.tagPosition):(n.updateParentNodeMediaChildren(),n.updateParentNodeText(),-1!==t.selfClosing.indexOf(e)||r&&!v(e)&&["escape","recursiveEscape"].indexOf(t.disallowedTagsMode)>=0?i&&(m=b,b=""):(m+="",i&&(m=b+N(m),b=""),R=!1))}},t.parser);return K.write(e),K.end(),m;function O(){m="",T=0,M=[],I={},D={},B=!1,U=0}function N(e,r){return"string"!=typeof e&&(e+=""),t.parser.decodeEntities&&(e=e.replace(/&/g,"&").replace(//g,">"),r&&(e=e.replace(/"/g,"""))),e=e.replace(/&(?![a-zA-Z0-9#]{1,20};)/g,"&").replace(//g,">"),r&&(e=e.replace(/"/g,""")),e}function L(e,r){for(r=r.replace(/[\x00-\x20]+/g,"");;){const e=r.indexOf("\x3c!--");if(-1===e)break;const t=r.indexOf("--\x3e",e+4);if(-1===t)break;r=r.substring(0,e)+r.substring(t+3)}const n=r.match(/^([a-zA-Z][a-zA-Z0-9.\-+]*):/);if(!n)return!!r.match(/^[/\\]{2}/)&&!t.allowProtocolRelative;const i=n[1].toLowerCase();return d(t.allowedSchemesByTag,e)?-1===t.allowedSchemesByTag[e].indexOf(i):!t.allowedSchemes||-1===t.allowedSchemes.indexOf(i)}function q(e){if((e=e.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/,"$1//")).startsWith("relative:"))throw new Error("relative: exploit attempt");let t="relative://relative-site";for(let e=0;e<100;e++)t+=`/${e}`;const r=new URL(e,t);return{isRelativeUrl:r&&"relative-site"===r.hostname&&"relative:"===r.protocol,url:r}}}const g={decodeEntities:!0};y.defaults={allowedTags:["address","article","aside","footer","header","h1","h2","h3","h4","h5","h6","hgroup","main","nav","section","blockquote","dd","div","dl","dt","figcaption","figure","hr","li","main","ol","p","pre","ul","a","abbr","b","bdi","bdo","br","cite","code","data","dfn","em","i","kbd","mark","q","rb","rp","rt","rtc","ruby","s","samp","small","span","strong","sub","sup","time","u","var","wbr","caption","col","colgroup","table","tbody","td","tfoot","th","thead","tr"],disallowedTagsMode:"discard",allowedAttributes:{a:["href","name","target"],img:["src","srcset","alt","title","width","height","loading"]},selfClosing:["img","br","hr","area","base","basefont","input","link","meta"],allowedSchemes:["http","https","ftp","mailto","tel"],allowedSchemesByTag:{},allowedSchemesAppliedToAttributes:["href","src","cite"],allowProtocolRelative:!0,enforceHtmlBoundary:!1,parseStyleAttributes:!0},y.simpleTransform=function(e,t,r){return r=void 0===r||r,t=t||{},function(n,i){let a;if(r)for(a in t)i[a]=t[a];else i=t;return{tagName:e,attribs:i}}}},2997:e=>{"use strict";e.exports=e=>{if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}},17:e=>{"use strict";e.exports=require("../../bundles/raw/web-stream-tools")},7921:()=>{},6845:()=>{},2868:()=>{},4777:()=>{},9830:()=>{},209:()=>{},7414:()=>{},2961:e=>{e.exports={nanoid:(e=21)=>{let t="",r=e;for(;r--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t},customAlphabet:(e,t=21)=>(r=t)=>{let n="",i=r;for(;i--;)n+=e[Math.random()*e.length|0];return n}}},8618:(e,t,r)=>{"use strict";r.r(t),r.d(t,{AEADEncryptedDataPacket:()=>yc,CleartextMessage:()=>vu,CompressedDataPacket:()=>ic,LiteralDataPacket:()=>Jo,MarkerPacket:()=>Ac,Message:()=>pu,OnePassSignaturePacket:()=>ec,PacketList:()=>rc,PrivateKey:()=>nu,PublicKey:()=>ru,PublicKeyEncryptedSessionKeyPacket:()=>gc,PublicKeyPacket:()=>wc,PublicSubkeyPacket:()=>_c,SecretKeyPacket:()=>Ec,SecretSubkeyPacket:()=>Tc,Signature:()=>Dc,SignaturePacket:()=>Xo,Subkey:()=>Yc,SymEncryptedIntegrityProtectedDataPacket:()=>fc,SymEncryptedSessionKeyPacket:()=>bc,SymmetricallyEncryptedDataPacket:()=>kc,TrustPacket:()=>Mc,UnparseablePacket:()=>bi,UserAttributePacket:()=>Sc,UserIDPacket:()=>Cc,armor:()=>ye,config:()=>se,createCleartextMessage:()=>Au,createMessage:()=>bu,decrypt:()=>Tu,decryptKey:()=>xu,decryptSessionKeys:()=>Uu,encrypt:()=>Cu,encryptKey:()=>Pu,encryptSessionKey:()=>Bu,enums:()=>ae,generateKey:()=>_u,generateSessionKey:()=>Du,readCleartextMessage:()=>ku,readKey:()=>ou,readKeys:()=>uu,readMessage:()=>mu,readPrivateKey:()=>cu,readPrivateKeys:()=>lu,readSignature:()=>Bc,reformatKey:()=>Su,revokeKey:()=>Eu,sign:()=>Mu,unarmor:()=>pe,verify:()=>Iu});const n="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},i=Symbol("doneWritingPromise"),a=Symbol("doneWritingResolve"),s=Symbol("doneWritingReject"),o=Symbol("readingIndex");class c extends Array{constructor(){super(),this[i]=new Promise(((e,t)=>{this[a]=e,this[s]=t})),this[i].catch((()=>{}))}}function u(e){return e&&e.getReader&&Array.isArray(e)}function l(e){if(!u(e)){const t=e.getWriter(),r=t.releaseLock;return t.releaseLock=()=>{t.closed.catch((function(){})),r.call(t)},t}this.stream=e}c.prototype.getReader=function(){return void 0===this[o]&&(this[o]=0),{read:async()=>(await this[i],this[o]===this.length?{value:void 0,done:!0}:{value:this[this[o]++],done:!1})}},c.prototype.readToEnd=async function(e){await this[i];const t=e(this.slice(this[o]));return this.length=0,t},c.prototype.clone=function(){const e=new c;return e[i]=this[i].then((()=>{e.push(...this)})),e},l.prototype.write=async function(e){this.stream.push(e)},l.prototype.close=async function(){this.stream[a]()},l.prototype.abort=async function(e){return this.stream[s](e),e},l.prototype.releaseLock=function(){};const h="object"==typeof n.process&&"object"==typeof n.process.versions,d=h&&void 0;function f(e){return u(e)?"array":n.ReadableStream&&n.ReadableStream.prototype.isPrototypeOf(e)?"web":E&&E.prototype.isPrototypeOf(e)?"ponyfill":d&&d.prototype.isPrototypeOf(e)?"node":!(!e||!e.getReader)&&"web-like"}function p(e){return Uint8Array.prototype.isPrototypeOf(e)}function y(e){if(1===e.length)return e[0];let t=0;for(let r=0;r{t||(g.isBuffer(n)&&(n=new Uint8Array(n.buffer,n.byteOffset,n.byteLength)),r.enqueue(n),e.pause())})),e.on("end",(()=>{t||r.close()})),e.on("error",(e=>r.error(e)))},pull(){e.resume()},cancel(r){t=!0,e.destroy(r)}})};class e extends m{constructor(e,t){super(t),this._reader=B(e)}async _read(e){try{for(;;){const{done:e,value:t}=await this._reader.read();if(e){this.push(null);break}if(!this.push(t)||this._cancelling){this._reading=!1;break}}}catch(e){this.emit("error",e)}}_destroy(e){this._reader.cancel(e)}}w=function(t,r){return new e(t,r)}}const v=new WeakSet,k=Symbol("externalBuffer");function A(e){if(this.stream=e,e[k]&&(this[k]=e[k].slice()),u(e)){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{},void(this._cancel=()=>{})}let t=f(e);if("node"===t&&(e=b(e)),t){const t=e.getReader();return this._read=t.read.bind(t),this._releaseLock=()=>{t.closed.catch((function(){})),t.releaseLock()},void(this._cancel=t.cancel.bind(t))}let r=!1;this._read=async()=>r||v.has(e)?{value:void 0,done:!0}:(r=!0,{value:e,done:!1}),this._releaseLock=()=>{if(r)try{v.add(e)}catch(e){}}}A.prototype.read=async function(){return this[k]&&this[k].length?{done:!1,value:this[k].shift()}:this._read()},A.prototype.releaseLock=function(){this[k]&&(this.stream[k]=this[k]),this._releaseLock()},A.prototype.cancel=function(e){return this._cancel(e)},A.prototype.readLine=async function(){let e,t=[];for(;!e;){let{done:r,value:n}=await this.read();if(n+="",r)return t.length?D(t):void 0;const i=n.indexOf("\n")+1;i&&(e=D(t.concat(n.substr(0,i))),t=[]),i!==n.length&&t.push(n.substr(i))}return this.unshift(...t),e},A.prototype.readByte=async function(){const{done:e,value:t}=await this.read();if(e)return;const r=t[0];return this.unshift(H(t,1)),r},A.prototype.readBytes=async function(e){const t=[];let r=0;for(;;){const{done:n,value:i}=await this.read();if(n)return t.length?D(t):void 0;if(t.push(i),r+=i.length,r>=e){const r=D(t);return this.unshift(H(r,e)),H(r,0,e)}}},A.prototype.peekBytes=async function(e){const t=await this.readBytes(e);return this.unshift(t),t},A.prototype.unshift=function(...e){this[k]||(this[k]=[]),1===e.length&&p(e[0])&&this[k].length&&e[0].length&&this[k][0].byteOffset>=e[0].length?this[k][0]=new Uint8Array(this[k][0].buffer,this[k][0].byteOffset-e[0].length,this[k][0].byteLength+e[0].length):this[k].unshift(...e.filter((e=>e&&e.length)))},A.prototype.readToEnd=async function(e=D){const t=[];for(;;){const{done:e,value:r}=await this.read();if(e)break;t.push(r)}return e(t)};let _,S,{ReadableStream:E,WritableStream:x,TransformStream:P}=n;async function C(){if(P)return;const[e,t]=await Promise.all([Promise.resolve().then((function(){return _f})),Promise.resolve().then((function(){return Hf}))]);({ReadableStream:E,WritableStream:x,TransformStream:P}=e);const{createReadableStreamWrapper:r}=t;n.ReadableStream&&E!==n.ReadableStream&&(_=r(E),S=r(n.ReadableStream))}const T=h&&void 0;function M(e){let t=f(e);return"node"===t?b(e):"web"===t&&_?_(e):t?e:new E({start(t){t.enqueue(e),t.close()}})}function I(e){if(f(e))return e;const t=new c;return(async()=>{const r=U(t);await r.write(e),await r.close()})(),t}function D(e){return e.some((e=>f(e)&&!u(e)))?function(e){e=e.map(M);const t=O((async function(e){await Promise.all(n.map((t=>V(t,e))))}));let r=Promise.resolve();const n=e.map(((n,i)=>L(n,((n,a)=>(r=r.then((()=>R(n,t.writable,{preventClose:i!==e.length-1}))),r)))));return t.readable}(e):e.some((e=>u(e)))?function(e){const t=new c;let r=Promise.resolve();return e.forEach(((n,i)=>(r=r.then((()=>R(n,t,{preventClose:i!==e.length-1}))),r))),t}(e):"string"==typeof e[0]?e.join(""):T&&T.isBuffer(e[0])?T.concat(e):y(e)}function B(e){return new A(e)}function U(e){return new l(e)}async function R(e,t,{preventClose:r=!1,preventAbort:n=!1,preventCancel:i=!1}={}){if(f(e)&&!u(e)){e=M(e);try{if(e[k]){const r=U(t);for(let t=0;t{t=e})),t=null)},close:r.close.bind(r),abort:r.error.bind(r)})}}function N(e,t=(()=>{}),r=(()=>{})){if(u(e)){const n=new c;return(async()=>{const i=U(n);try{const n=await W(e),a=t(n),s=r();let o;o=void 0!==a&&void 0!==s?D([a,s]):void 0!==a?a:s,await i.write(o),await i.close()}catch(e){await i.abort(e)}})(),n}if(f(e))return K(e,{async transform(e,r){try{const n=await t(e);void 0!==n&&r.enqueue(n)}catch(e){r.error(e)}},async flush(e){try{const t=await r();void 0!==t&&e.enqueue(t)}catch(t){e.error(t)}}});const n=t(e),i=r();return void 0!==n&&void 0!==i?D([n,i]):void 0!==n?n:i}function L(e,t){if(f(e)&&!u(e)){let r;const n=new P({start(e){r=e}}),i=R(e,n.writable),a=O((async function(e){r.error(e),await i,await new Promise(setTimeout)}));return t(n.readable,a.writable),a.readable}e=I(e);const r=new c;return t(e,r),r}function q(e,t){let r;const n=L(e,((e,i)=>{const a=B(e);a.remainder=()=>(a.releaseLock(),R(e,i),n),r=t(a)}));return r}function F(e){if(u(e))return e.clone();if(f(e)){const t=function(e){if(u(e))throw new Error("ArrayStream cannot be tee()d, use clone() instead");if(f(e)){const t=M(e).tee();return t[0][k]=t[1][k]=e[k],t}return[H(e),H(e)]}(e);return j(e,t[0]),t[1]}return H(e)}function z(e){return u(e)?F(e):f(e)?new E({start(t){const r=L(e,(async(e,r)=>{const n=B(e),i=U(r);try{for(;;){await i.ready;const{done:e,value:r}=await n.read();if(e){try{t.close()}catch(e){}return void await i.close()}try{t.enqueue(r)}catch(e){}await i.write(r)}}catch(e){t.error(e),await i.abort(e)}}));j(e,r)}}):H(e)}function j(e,t){Object.entries(Object.getOwnPropertyDescriptors(e.constructor.prototype)).forEach((([r,n])=>{"constructor"!==r&&(n.value?n.value=n.value.bind(t):n.get=n.get.bind(t),Object.defineProperty(e,r,n))}))}function H(e,t=0,r=1/0){if(u(e))throw new Error("Not implemented");if(f(e)){if(t>=0&&r>=0){let n=0;return K(e,{transform(e,i){n=t&&i.enqueue(H(e,Math.max(t-n,0),r-n)),n+=e.length):i.terminate()}})}if(t<0&&(r<0||r===1/0)){let n=[];return N(e,(e=>{e.length>=-t?n=[e]:n.push(e)}),(()=>H(D(n),t,r)))}if(0===t&&r<0){let n;return N(e,(e=>{const i=n?D([n,e]):e;if(i.length>=-r)return n=H(i,r),H(i,t,r);n=i}))}return console.warn(`stream.slice(input, ${t}, ${r}) not implemented efficiently.`),G((async()=>H(await W(e),t,r)))}return e[k]&&(e=D(e[k].concat([e]))),!p(e)||T&&T.isBuffer(e)?e.slice(t,r):(r===1/0&&(r=e.length),e.subarray(t,r))}async function W(e,t=D){return u(e)?e.readToEnd(t):f(e)?B(e).readToEnd(t):e}async function V(e,t){if(f(e)){if(e.cancel)return e.cancel(t);if(e.destroy)return e.destroy(t),await new Promise(setTimeout),t}}function G(e){const t=new c;return(async()=>{const r=U(t);try{await r.write(await e()),await r.close()}catch(e){await r.abort(e)}})(),t}class ${constructor(e){if(void 0===e)throw new Error("Invalid BigInteger input");if(e instanceof Uint8Array){const t=e,r=new Array(t.length);for(let e=0;eBigInt(0);){const e=r&BigInt(1);r>>=BigInt(1);const a=i*n%t.value;i=e?a:i,n=n*n%t.value}return new $(i)}modInv(e){const{gcd:t,x:r}=this._egcd(e);if(!t.isOne())throw new Error("Inverse does not exist");return r.add(e).mod(e)}_egcd(e){let t=BigInt(0),r=BigInt(1),n=BigInt(1),i=BigInt(0),a=this.value;for(e=e.value;e!==BigInt(0);){const s=a/e;let o=t;t=n-s*t,n=o,o=r,r=i-s*r,i=o,o=e,e=a%e,a=o}return{x:new $(n),y:new $(i),gcd:new $(a)}}gcd(e){let t=this.value;for(e=e.value;e!==BigInt(0);){const r=e;e=t%e,t=r}return new $(t)}ileftShift(e){return this.value<<=e.value,this}leftShift(e){return this.clone().ileftShift(e)}irightShift(e){return this.value>>=e.value,this}rightShift(e){return this.clone().irightShift(e)}equal(e){return this.value===e.value}lt(e){return this.valuee.value}gte(e){return this.value>=e.value}isZero(){return this.value===BigInt(0)}isOne(){return this.value===BigInt(1)}isNegative(){return this.valueNumber.MAX_SAFE_INTEGER)throw new Error("Number can only safely store up to 53 bits");return e}getBit(e){return(this.value>>BigInt(e)&BigInt(1))===BigInt(0)?0:1}bitLength(){const e=new $(0),t=new $(1),r=new $(-1),n=this.isNegative()?r:e;let i=1;const a=this.clone();for(;!a.irightShift(t).equal(n);)i++;return i}byteLength(){const e=new $(0),t=new $(-1),r=this.isNegative()?t:e,n=new $(8);let i=1;const a=this.clone();for(;!a.irightShift(n).equal(r);)i++;return i}toUint8Array(e="be",t){let r=this.value.toString(16);r.length%2==1&&(r="0"+r);const n=r.length/2,i=new Uint8Array(t||n),a=t?t-n:0;let s=0;for(;s{try{return!1}catch(e){}return!1})(),Z={isString:function(e){return"string"==typeof e||e instanceof String},isArray:function(e){return e instanceof Array},isUint8Array:p,isStream:f,readNumber:function(e){let t=0;for(let r=0;r>8*(t-n-1)&255;return r},readDate:function(e){const t=Z.readNumber(e);return new Date(1e3*t)},writeDate:function(e){const t=Math.floor(e.getTime()/1e3);return Z.writeNumber(t,4)},normalizeDate:function(e=Date.now()){return null===e||e===1/0?e:new Date(1e3*Math.floor(+e/1e3))},readMPI:function(e){const t=7+(e[0]<<8|e[1])>>>3;return e.subarray(2,2+t)},leftPad(e,t){const r=new Uint8Array(t),n=t-e.length;return r.set(e,n),r},uint8ArrayToMPI:function(e){const t=Z.uint8ArrayBitLength(e);if(0===t)throw new Error("Zero MPI");const r=e.subarray(e.length-Math.ceil(t/8)),n=new Uint8Array([(65280&t)>>8,255&t]);return Z.concatUint8Array([n,r])},uint8ArrayBitLength:function(e){let t;for(t=0;t>1);for(let r=0;r>1;r++)t[r]=parseInt(e.substr(r<<1,2),16);return t},uint8ArrayToHex:function(e){const t=[],r=e.length;let n,i=0;for(;i{if(!Z.isString(e))throw new Error("stringToUint8Array: Data must be in the form of a string");const t=new Uint8Array(e.length);for(let r=0;rr("",!0)))},decodeUTF8:function(e){const t=new TextDecoder("utf-8");function r(e,r=!1){return t.decode(e,{stream:!r})}return N(e,r,(()=>r(new Uint8Array,!0)))},concat:D,concatUint8Array:y,equalsUint8Array:function(e,t){if(!Z.isUint8Array(e)||!Z.isUint8Array(t))throw new Error("Data must be in the form of a Uint8Array");if(e.length!==t.length)return!1;for(let r=0;r>>16;return 0!==r&&(e=r,t+=16),r=e>>8,0!==r&&(e=r,t+=8),r=e>>4,0!==r&&(e=r,t+=4),r=e>>2,0!==r&&(e=r,t+=2),r=e>>1,0!==r&&(e=r,t+=1),t},double:function(e){const t=new Uint8Array(e.length),r=e.length-1;for(let n=0;n>7;return t[r]=e[r]<<1^135*(e[0]>>7),t},shiftRight:function(e,t){if(t)for(let r=e.length-1;r>=0;r--)e[r]>>=t,r>0&&(e[r]|=e[r-1]<<8-t);return e},getWebCrypto:function(){return void 0!==n&&n.crypto&&n.crypto.subtle},getBigInteger:async function(){if("undefined"!=typeof BigInt)return $;{const{default:e}=await Promise.resolve().then((function(){return Jf}));return e}},getNodeCrypto:function(){},getNodeZlib:function(){},getNodeBuffer:function(){return{}.Buffer},getHardwareConcurrency:function(){return"undefined"!=typeof navigator?navigator.hardwareConcurrency||1:(void 0).cpus().length},isEmailAddress:function(e){return!!Z.isString(e)&&/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+([a-zA-Z]{2,}[0-9]*|xn--[a-zA-Z\-0-9]+)))$/.test(e)},canonicalizeEOL:function(e){let t=!1;return N(e,(e=>{let r;t&&(e=Z.concatUint8Array([new Uint8Array([13]),e])),13===e[e.length-1]?(t=!0,e=e.subarray(0,-1)):t=!1;const n=[];for(let t=0;r=e.indexOf(10,t)+1,r;t=r)13!==e[r-2]&&n.push(r);if(!n.length)return e;const i=new Uint8Array(e.length+n.length);let a=0;for(let t=0;tt?new Uint8Array([13]):void 0))},nativeEOL:function(e){let t=!1;return N(e,(e=>{let r;13===(e=t&&10!==e[0]?Z.concatUint8Array([new Uint8Array([13]),e]):new Uint8Array(e))[e.length-1]?(t=!0,e=e.subarray(0,-1)):t=!1;let n=0;for(let t=0;t!==e.length;t=r){r=e.indexOf(13,t)+1,r||(r=e.length);const i=r-(10===e[r]?1:0);t&&e.copyWithin(n,t,i),n+=i-t}return e.subarray(0,n)}),(()=>t?new Uint8Array([13]):void 0))},removeTrailingSpaces:function(e){return e.split("\n").map((e=>{let t=e.length-1;for(;t>=0&&(" "===e[t]||"\t"===e[t]||"\r"===e[t]);t--);return e.substr(0,t+1)})).join("\n")},wrapError:function(e,t){if(!t)return new Error(e);try{t.message=e+": "+t.message}catch(e){}return t},constructAllowedPackets:function(e){const t={};return e.forEach((e=>{if(!e.tag)throw new Error("Invalid input: expected a packet class");t[e.tag]=e})),t},anyPromise:function(e){return new Promise((async(t,r)=>{let n;await Promise.all(e.map((async e=>{try{t(await e)}catch(e){n=e}}))),r(n)}))},selectUint8Array:function(e,t,r){const n=Math.max(t.length,r.length),i=new Uint8Array(n);let a=0;for(let n=0;n{t=Z.concatUint8Array([t,e]);const r=[],n=Math.floor(t.length/45),i=45*n,a=X(t.subarray(0,i));for(let e=0;et.length?X(t)+"\n":""))}function te(e){let t="";return N(e,(e=>{t+=e;let r=0;const n=[" ","\t","\r","\n"];for(let e=0;e0&&(i-r)%4!=0;i--)n.includes(t[i])&&r--;const a=Q(t.substr(0,i));return t=t.substr(i),a}),(()=>Q(t)))}function re(e){return te(e.replace(/-/g,"+").replace(/_/g,"/"))}function ne(e,t){let r=ee(e).replace(/[\r\n]/g,"");return t&&(r=r.replace(/[+]/g,"-").replace(/[/]/g,"_").replace(/[=]/g,"")),r}Y?(X=e=>Y.from(e).toString("base64"),Q=e=>{const t=Y.from(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}):(X=e=>btoa(Z.uint8ArrayToString(e)),Q=e=>Z.stringToUint8Array(atob(e)));const ie=Symbol("byValue");var ae={curve:{p256:"p256","P-256":"p256",secp256r1:"p256",prime256v1:"p256","1.2.840.10045.3.1.7":"p256","2a8648ce3d030107":"p256","2A8648CE3D030107":"p256",p384:"p384","P-384":"p384",secp384r1:"p384","1.3.132.0.34":"p384","2b81040022":"p384","2B81040022":"p384",p521:"p521","P-521":"p521",secp521r1:"p521","1.3.132.0.35":"p521","2b81040023":"p521","2B81040023":"p521",secp256k1:"secp256k1","1.3.132.0.10":"secp256k1","2b8104000a":"secp256k1","2B8104000A":"secp256k1",ED25519:"ed25519",ed25519:"ed25519",Ed25519:"ed25519","1.3.6.1.4.1.11591.15.1":"ed25519","2b06010401da470f01":"ed25519","2B06010401DA470F01":"ed25519",X25519:"curve25519",cv25519:"curve25519",curve25519:"curve25519",Curve25519:"curve25519","1.3.6.1.4.1.3029.1.5.1":"curve25519","2b060104019755010501":"curve25519","2B060104019755010501":"curve25519",brainpoolP256r1:"brainpoolP256r1","1.3.36.3.3.2.8.1.1.7":"brainpoolP256r1","2b2403030208010107":"brainpoolP256r1","2B2403030208010107":"brainpoolP256r1",brainpoolP384r1:"brainpoolP384r1","1.3.36.3.3.2.8.1.1.11":"brainpoolP384r1","2b240303020801010b":"brainpoolP384r1","2B240303020801010B":"brainpoolP384r1",brainpoolP512r1:"brainpoolP512r1","1.3.36.3.3.2.8.1.1.13":"brainpoolP512r1","2b240303020801010d":"brainpoolP512r1","2B240303020801010D":"brainpoolP512r1"},s2k:{simple:0,salted:1,iterated:3,gnu:101},publicKey:{rsaEncryptSign:1,rsaEncrypt:2,rsaSign:3,elgamal:16,dsa:17,ecdh:18,ecdsa:19,eddsa:22,aedh:23,aedsa:24},symmetric:{plaintext:0,idea:1,tripledes:2,cast5:3,blowfish:4,aes128:7,aes192:8,aes256:9,twofish:10},compression:{uncompressed:0,zip:1,zlib:2,bzip2:3},hash:{md5:1,sha1:2,ripemd:3,sha256:8,sha384:9,sha512:10,sha224:11},webHash:{"SHA-1":2,"SHA-256":8,"SHA-384":9,"SHA-512":10},aead:{eax:1,ocb:2,experimentalGCM:100},packet:{publicKeyEncryptedSessionKey:1,signature:2,symEncryptedSessionKey:3,onePassSignature:4,secretKey:5,publicKey:6,secretSubkey:7,compressedData:8,symmetricallyEncryptedData:9,marker:10,literalData:11,trust:12,userID:13,publicSubkey:14,userAttribute:17,symEncryptedIntegrityProtectedData:18,modificationDetectionCode:19,aeadEncryptedData:20},literal:{binary:"b".charCodeAt(),text:"t".charCodeAt(),utf8:"u".charCodeAt(),mime:"m".charCodeAt()},signature:{binary:0,text:1,standalone:2,certGeneric:16,certPersona:17,certCasual:18,certPositive:19,certRevocation:48,subkeyBinding:24,keyBinding:25,key:31,keyRevocation:32,subkeyRevocation:40,timestamp:64,thirdParty:80},signatureSubpacket:{signatureCreationTime:2,signatureExpirationTime:3,exportableCertification:4,trustSignature:5,regularExpression:6,revocable:7,keyExpirationTime:9,placeholderBackwardsCompatibility:10,preferredSymmetricAlgorithms:11,revocationKey:12,issuer:16,notationData:20,preferredHashAlgorithms:21,preferredCompressionAlgorithms:22,keyServerPreferences:23,preferredKeyServer:24,primaryUserID:25,policyURI:26,keyFlags:27,signersUserID:28,reasonForRevocation:29,features:30,signatureTarget:31,embeddedSignature:32,issuerFingerprint:33,preferredAEADAlgorithms:34},keyFlags:{certifyKeys:1,signData:2,encryptCommunication:4,encryptStorage:8,splitPrivateKey:16,authentication:32,sharedPrivateKey:128},armor:{multipartSection:0,multipartLast:1,signed:2,message:3,publicKey:4,privateKey:5,signature:6},reasonForRevocation:{noReason:0,keySuperseded:1,keyCompromised:2,keyRetired:3,userIDInvalid:32},features:{modificationDetection:1,aead:2,v5Keys:4},write:function(e,t){if("number"==typeof t&&(t=this.read(e,t)),void 0!==e[t])return e[t];throw new Error("Invalid enum value.")},read:function(e,t){if(e[ie]||(e[ie]=[],Object.entries(e).forEach((([t,r])=>{e[ie][r]=t}))),void 0!==e[ie][t])return e[ie][t];throw new Error("Invalid enum value.")}},se={preferredHashAlgorithm:ae.hash.sha256,preferredSymmetricAlgorithm:ae.symmetric.aes256,preferredCompressionAlgorithm:ae.compression.uncompressed,deflateLevel:6,aeadProtect:!1,preferredAEADAlgorithm:ae.aead.eax,aeadChunkSizeByte:12,v5Keys:!1,s2kIterationCountByte:224,allowUnauthenticatedMessages:!1,allowUnauthenticatedStream:!1,checksumRequired:!1,minRSABits:2047,passwordCollisionCheck:!1,revocationsExpire:!1,allowInsecureDecryptionWithSigningKeys:!1,allowInsecureVerificationWithReformattedKeys:!1,constantTimePKCS1Decryption:!1,constantTimePKCS1DecryptionSupportedSymmetricAlgorithms:new Set([ae.symmetric.aes128,ae.symmetric.aes192,ae.symmetric.aes256]),minBytesForWebCrypto:1e3,ignoreUnsupportedPackets:!0,ignoreMalformedPackets:!1,additionalAllowedPackets:[],showVersion:!1,showComment:!1,versionString:"OpenPGP.js 5.9.0",commentString:"https://openpgpjs.org",maxUserIDLength:5120,knownNotations:[],useIndutnyElliptic:!0,rejectHashAlgorithms:new Set([ae.hash.md5,ae.hash.ripemd]),rejectMessageHashAlgorithms:new Set([ae.hash.md5,ae.hash.ripemd,ae.hash.sha1]),rejectPublicKeyAlgorithms:new Set([ae.publicKey.elgamal,ae.publicKey.dsa]),rejectCurves:new Set([ae.curve.secp256k1])};function oe(e){const t=e.match(/^-----BEGIN PGP (MESSAGE, PART \d+\/\d+|MESSAGE, PART \d+|SIGNED MESSAGE|MESSAGE|PUBLIC KEY BLOCK|PRIVATE KEY BLOCK|SIGNATURE)-----$/m);if(!t)throw new Error("Unknown ASCII armor type");return/MESSAGE, PART \d+\/\d+/.test(t[1])?ae.armor.multipartSection:/MESSAGE, PART \d+/.test(t[1])?ae.armor.multipartLast:/SIGNED MESSAGE/.test(t[1])?ae.armor.signed:/MESSAGE/.test(t[1])?ae.armor.message:/PUBLIC KEY BLOCK/.test(t[1])?ae.armor.publicKey:/PRIVATE KEY BLOCK/.test(t[1])?ae.armor.privateKey:/SIGNATURE/.test(t[1])?ae.armor.signature:void 0}function ce(e,t){let r="";return t.showVersion&&(r+="Version: "+t.versionString+"\n"),t.showComment&&(r+="Comment: "+t.commentString+"\n"),e&&(r+="Comment: "+e+"\n"),r+="\n",r}function ue(e){return ee(function(e){let t=13501623;return N(e,(e=>{const r=he?Math.floor(e.length/4):0,n=new Uint32Array(e.buffer,e.byteOffset,r);for(let e=0;e>24&255]^le[1][t>>16&255]^le[2][t>>8&255]^le[3][t>>0&255];for(let n=4*r;n>8^le[0][255&t^e[n]]}),(()=>new Uint8Array([t,t>>8,t>>16])))}(e))}const le=[new Array(255),new Array(255),new Array(255),new Array(255)];for(let e=0;e<=255;e++){let t=e<<16;for(let e=0;e<8;e++)t=t<<1^(0!=(8388608&t)?8801531:0);le[0][e]=(16711680&t)>>16|65280&t|(255&t)<<16}for(let e=0;e<=255;e++)le[1][e]=le[0][e]>>8^le[0][255&le[0][e]];for(let e=0;e<=255;e++)le[2][e]=le[1][e]>>8^le[0][255&le[1][e]];for(let e=0;e<=255;e++)le[3][e]=le[2][e]>>8^le[0][255&le[2][e]];const he=function(){const e=new ArrayBuffer(2);return new DataView(e).setInt16(0,255,!0),255===new Int16Array(e)[0]}();function de(e){for(let t=0;t=0&&n!==e.length-1&&(t=e.slice(0,n),r=e.slice(n+1).substr(0,4)),{body:t,checksum:r}}function pe(e,t=se){return new Promise((async(r,n)=>{try{const i=/^-----[^-]+-----$/m,a=/^[ \f\r\t\u00a0\u2000-\u200a\u202f\u205f\u3000]*$/;let s;const o=[];let c,u,l,h=o,d=[],f=te(L(e,(async(e,t)=>{const p=B(e);try{for(;;){let e=await p.readLine();if(void 0===e)throw new Error("Misformed armored text");if(e=Z.removeTrailingSpaces(e.replace(/[\r\n]/g,"")),s)if(c)u||2!==s||(i.test(e)?(d=d.join("\r\n"),u=!0,de(h),h=[],c=!1):d.push(e.replace(/^- /,"")));else if(i.test(e)&&n(new Error("Mandatory blank line missing between armor headers and armor data")),a.test(e)){if(de(h),c=!0,u||2!==s){r({text:d,data:f,headers:o,type:s});break}}else h.push(e);else i.test(e)&&(s=oe(e))}}catch(e){return void n(e)}const y=U(t);try{for(;;){await y.ready;const{done:e,value:t}=await p.read();if(e)throw new Error("Misformed armored text");const r=t+"";if(-1!==r.indexOf("=")||-1!==r.indexOf("-")){let e=await p.readToEnd();e.length||(e=""),e=r+e,e=Z.removeTrailingSpaces(e.replace(/\r/g,""));const t=e.split(i);if(1===t.length)throw new Error("Misformed armored text");const n=fe(t[0].slice(0,-1));l=n.checksum,await y.write(n.body);break}await y.write(r)}await y.ready,await y.close()}catch(e){await y.abort(e)}})));f=L(f,(async(e,r)=>{const n=W(ue(z(e)));n.catch((()=>{})),await R(e,r,{preventClose:!0});const i=U(r);try{const e=(await n).replace("\n","");if(l!==e&&(l||t.checksumRequired))throw new Error("Ascii armor integrity check failed");await i.ready,await i.close()}catch(e){await i.abort(e)}}))}catch(e){n(e)}})).then((async e=>(u(e.data)&&(e.data=await W(e.data)),e)))}function ye(e,t,r,n,i,a=se){let s,o;e===ae.armor.signed&&(s=t.text,o=t.hash,t=t.data);const c=z(t),u=[];switch(e){case ae.armor.multipartSection:u.push("-----BEGIN PGP MESSAGE, PART "+r+"/"+n+"-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP MESSAGE, PART "+r+"/"+n+"-----\n");break;case ae.armor.multipartLast:u.push("-----BEGIN PGP MESSAGE, PART "+r+"-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP MESSAGE, PART "+r+"-----\n");break;case ae.armor.signed:u.push("-----BEGIN PGP SIGNED MESSAGE-----\n"),u.push("Hash: "+o+"\n\n"),u.push(s.replace(/^-/gm,"- -")),u.push("\n-----BEGIN PGP SIGNATURE-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP SIGNATURE-----\n");break;case ae.armor.message:u.push("-----BEGIN PGP MESSAGE-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP MESSAGE-----\n");break;case ae.armor.publicKey:u.push("-----BEGIN PGP PUBLIC KEY BLOCK-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP PUBLIC KEY BLOCK-----\n");break;case ae.armor.privateKey:u.push("-----BEGIN PGP PRIVATE KEY BLOCK-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP PRIVATE KEY BLOCK-----\n");break;case ae.armor.signature:u.push("-----BEGIN PGP SIGNATURE-----\n"),u.push(ce(i,a)),u.push(ee(t)),u.push("=",ue(c)),u.push("-----END PGP SIGNATURE-----\n")}return Z.concat(u)}class ge{constructor(){this.bytes=""}read(e){this.bytes=Z.uint8ArrayToString(e.subarray(0,8))}write(){return Z.stringToUint8Array(this.bytes)}toHex(){return Z.uint8ArrayToHex(Z.stringToUint8Array(this.bytes))}equals(e,t=!1){return t&&(e.isWildcard()||this.isWildcard())||this.bytes===e.bytes}isNull(){return""===this.bytes}isWildcard(){return/^0+$/.test(this.toHex())}static mapToHex(e){return e.toHex()}static fromID(e){const t=new ge;return t.read(Z.hexToUint8Array(e)),t}static wildcard(){const e=new ge;return e.read(new Uint8Array(8)),e}}var me=function(){var e,t,r=!1;function n(r,n){var i=e[(t[r]+t[n])%255];return 0!==r&&0!==n||(i=0),i}var i,a,s,o,c=!1;var u=function(u,l){c||function(){function u(r){var n,i,a;for(i=a=function(r){var n=e[255-t[r]];return 0===r&&(n=0),n}(r),n=0;n<4;n++)a^=i=255&(i<<1|i>>>7);return 99^a}r||function(){e=[],t=[];var n,i,a=1;for(n=0;n<255;n++)e[n]=a,i=128&a,a<<=1,a&=255,128===i&&(a^=27),a^=e[n],t[e[n]]=n;e[255]=e[0],t[0]=0,r=!0}(),i=[],a=[],s=[[],[],[],[]],o=[[],[],[],[]];for(var l=0;l<256;l++){var h=u(l);i[l]=h,a[h]=l,s[0][l]=n(2,h)<<24|h<<16|h<<8|n(3,h),o[0][h]=n(14,l)<<24|n(9,l)<<16|n(13,l)<<8|n(11,l);for(var d=1;d<4;d++)s[d][l]=s[d-1][l]>>>8|s[d-1][l]<<24,o[d][h]=o[d-1][h]>>>8|o[d-1][h]<<24}c=!0}();var h=new Uint32Array(l);h.set(i,512),h.set(a,768);for(var d=0;d<4;d++)h.set(s[d],4096+1024*d>>2),h.set(o[d],8192+1024*d>>2);var f=function(e,t,r){"use asm";var n=0,i=0,a=0,s=0,o=0,c=0,u=0,l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0;var S=new e.Uint32Array(r),E=new e.Uint8Array(r);function x(e,t,r,o,c,u,l,h){e=e|0;t=t|0;r=r|0;o=o|0;c=c|0;u=u|0;l=l|0;h=h|0;var d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0;d=r|0x400,f=r|0x800,p=r|0xc00;c=c^S[(e|0)>>2],u=u^S[(e|4)>>2],l=l^S[(e|8)>>2],h=h^S[(e|12)>>2];for(w=16;(w|0)<=o<<4;w=w+16|0){y=S[(r|c>>22&1020)>>2]^S[(d|u>>14&1020)>>2]^S[(f|l>>6&1020)>>2]^S[(p|h<<2&1020)>>2]^S[(e|w|0)>>2],g=S[(r|u>>22&1020)>>2]^S[(d|l>>14&1020)>>2]^S[(f|h>>6&1020)>>2]^S[(p|c<<2&1020)>>2]^S[(e|w|4)>>2],m=S[(r|l>>22&1020)>>2]^S[(d|h>>14&1020)>>2]^S[(f|c>>6&1020)>>2]^S[(p|u<<2&1020)>>2]^S[(e|w|8)>>2],b=S[(r|h>>22&1020)>>2]^S[(d|c>>14&1020)>>2]^S[(f|u>>6&1020)>>2]^S[(p|l<<2&1020)>>2]^S[(e|w|12)>>2];c=y,u=g,l=m,h=b}n=S[(t|c>>22&1020)>>2]<<24^S[(t|u>>14&1020)>>2]<<16^S[(t|l>>6&1020)>>2]<<8^S[(t|h<<2&1020)>>2]^S[(e|w|0)>>2],i=S[(t|u>>22&1020)>>2]<<24^S[(t|l>>14&1020)>>2]<<16^S[(t|h>>6&1020)>>2]<<8^S[(t|c<<2&1020)>>2]^S[(e|w|4)>>2],a=S[(t|l>>22&1020)>>2]<<24^S[(t|h>>14&1020)>>2]<<16^S[(t|c>>6&1020)>>2]<<8^S[(t|u<<2&1020)>>2]^S[(e|w|8)>>2],s=S[(t|h>>22&1020)>>2]<<24^S[(t|c>>14&1020)>>2]<<16^S[(t|u>>6&1020)>>2]<<8^S[(t|l<<2&1020)>>2]^S[(e|w|12)>>2]}function P(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;x(0x0000,0x0800,0x1000,_,e,t,r,n)}function C(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var a=0;x(0x0400,0x0c00,0x2000,_,e,n,r,t);a=i,i=s,s=a}function T(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o^e,c^t,u^r,l^h);o=n,c=i,u=a,l=s}function M(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;var d=0;x(0x0400,0x0c00,0x2000,_,e,h,r,t);d=i,i=s,s=d;n=n^o,i=i^c,a=a^u,s=s^l;o=e,c=t,u=r,l=h}function I(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o,c,u,l);o=n=n^e,c=i=i^t,u=a=a^r,l=s=s^h}function D(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o,c,u,l);n=n^e,i=i^t,a=a^r,s=s^h;o=e,c=t,u=r,l=h}function B(e,t,r,h){e=e|0;t=t|0;r=r|0;h=h|0;x(0x0000,0x0800,0x1000,_,o,c,u,l);o=n,c=i,u=a,l=s;n=n^e,i=i^t,a=a^r,s=s^h}function U(e,t,r,o){e=e|0;t=t|0;r=r|0;o=o|0;x(0x0000,0x0800,0x1000,_,h,d,f,p);p=~b&p|b&p+1;f=~m&f|m&f+((p|0)==0);d=~g&d|g&d+((f|0)==0);h=~y&h|y&h+((d|0)==0);n=n^e;i=i^t;a=a^r;s=s^o}function R(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;var i=0,a=0,s=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0;e=e^o,t=t^c,r=r^u,n=n^l;i=w|0,a=v|0,s=k|0,h=A|0;for(;(g|0)<128;g=g+1|0){if(i>>>31){d=d^e,f=f^t,p=p^r,y=y^n}i=i<<1|a>>>31,a=a<<1|s>>>31,s=s<<1|h>>>31,h=h<<1;m=n&1;n=n>>>1|r<<31,r=r>>>1|t<<31,t=t>>>1|e<<31,e=e>>>1;if(m)e=e^0xe1000000}o=d,c=f,u=p,l=y}function K(e){e=e|0;_=e}function O(e,t,r,o){e=e|0;t=t|0;r=r|0;o=o|0;n=e,i=t,a=r,s=o}function N(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;o=e,c=t,u=r,l=n}function L(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;h=e,d=t,f=r,p=n}function q(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;y=e,g=t,m=r,b=n}function F(e,t,r,n){e=e|0;t=t|0;r=r|0;n=n|0;p=~b&p|b&n,f=~m&f|m&r,d=~g&d|g&t,h=~y&h|y&e}function z(e){e=e|0;if(e&15)return-1;E[e|0]=n>>>24,E[e|1]=n>>>16&255,E[e|2]=n>>>8&255,E[e|3]=n&255,E[e|4]=i>>>24,E[e|5]=i>>>16&255,E[e|6]=i>>>8&255,E[e|7]=i&255,E[e|8]=a>>>24,E[e|9]=a>>>16&255,E[e|10]=a>>>8&255,E[e|11]=a&255,E[e|12]=s>>>24,E[e|13]=s>>>16&255,E[e|14]=s>>>8&255,E[e|15]=s&255;return 16}function j(e){e=e|0;if(e&15)return-1;E[e|0]=o>>>24,E[e|1]=o>>>16&255,E[e|2]=o>>>8&255,E[e|3]=o&255,E[e|4]=c>>>24,E[e|5]=c>>>16&255,E[e|6]=c>>>8&255,E[e|7]=c&255,E[e|8]=u>>>24,E[e|9]=u>>>16&255,E[e|10]=u>>>8&255,E[e|11]=u&255,E[e|12]=l>>>24,E[e|13]=l>>>16&255,E[e|14]=l>>>8&255,E[e|15]=l&255;return 16}function H(){P(0,0,0,0);w=n,v=i,k=a,A=s}function W(e,t,r){e=e|0;t=t|0;r=r|0;var o=0;if(t&15)return-1;while((r|0)>=16){G[e&7](E[t|0]<<24|E[t|1]<<16|E[t|2]<<8|E[t|3],E[t|4]<<24|E[t|5]<<16|E[t|6]<<8|E[t|7],E[t|8]<<24|E[t|9]<<16|E[t|10]<<8|E[t|11],E[t|12]<<24|E[t|13]<<16|E[t|14]<<8|E[t|15]);E[t|0]=n>>>24,E[t|1]=n>>>16&255,E[t|2]=n>>>8&255,E[t|3]=n&255,E[t|4]=i>>>24,E[t|5]=i>>>16&255,E[t|6]=i>>>8&255,E[t|7]=i&255,E[t|8]=a>>>24,E[t|9]=a>>>16&255,E[t|10]=a>>>8&255,E[t|11]=a&255,E[t|12]=s>>>24,E[t|13]=s>>>16&255,E[t|14]=s>>>8&255,E[t|15]=s&255;o=o+16|0,t=t+16|0,r=r-16|0}return o|0}function V(e,t,r){e=e|0;t=t|0;r=r|0;var n=0;if(t&15)return-1;while((r|0)>=16){$[e&1](E[t|0]<<24|E[t|1]<<16|E[t|2]<<8|E[t|3],E[t|4]<<24|E[t|5]<<16|E[t|6]<<8|E[t|7],E[t|8]<<24|E[t|9]<<16|E[t|10]<<8|E[t|11],E[t|12]<<24|E[t|13]<<16|E[t|14]<<8|E[t|15]);n=n+16|0,t=t+16|0,r=r-16|0}return n|0}var G=[P,C,T,M,I,D,B,U];var $=[T,R];return{set_rounds:K,set_state:O,set_iv:N,set_nonce:L,set_mask:q,set_counter:F,get_state:z,get_iv:j,gcm_init:H,cipher:W,mac:V}}({Uint8Array,Uint32Array},0,l);return f.set_key=function(e,t,r,n,a,s,c,u,l){var d=h.subarray(0,60),p=h.subarray(256,316);d.set([t,r,n,a,s,c,u,l]);for(var y=e,g=1;y<4*e+28;y++){var m=d[y-1];(y%e==0||8===e&&y%e==4)&&(m=i[m>>>24]<<24^i[m>>>16&255]<<16^i[m>>>8&255]<<8^i[255&m]),y%e==0&&(m=m<<8^m>>>24^g<<24,g=g<<1^(128&g?27:0)),d[y]=d[y-e]^m}for(var b=0;b=y-4?m:o[0][i[m>>>24]]^o[1][i[m>>>16&255]]^o[2][i[m>>>8&255]]^o[3][i[255&m]];f.set_rounds(e+5)},f};return u.ENC={ECB:0,CBC:2,CFB:4,OFB:6,CTR:7},u.DEC={ECB:1,CBC:3,CFB:5,OFB:6,CTR:7},u.MAC={CBC:0,GCM:1},u.HEAP_DATA=16384,u}();function be(e){return e instanceof Uint8Array}function we(e,t){const r=e?e.byteLength:t||65536;if(4095&r||r<=0)throw new Error("heap size must be a positive integer and a multiple of 4096");return e||new Uint8Array(new ArrayBuffer(r))}function ve(e,t,r,n,i){const a=e.length-t,s=ae+t.length),0),r=new Uint8Array(t);let n=0;for(let t=0;t>2,i.getUint32(0),i.getUint32(4),i.getUint32(8),i.getUint32(12),n>16?i.getUint32(16):0,n>16?i.getUint32(20):0,n>24?i.getUint32(24):0,n>24?i.getUint32(28):0),void 0!==t){if(16!==t.length)throw new _e("illegal iv size");let e=new DataView(t.buffer,t.byteOffset,t.byteLength);r.set_iv(e.getUint32(0),e.getUint32(4),e.getUint32(8),e.getUint32(12))}else r.set_iv(0,0,0,0)}AES_Encrypt_process(e){if(!be(e))throw new TypeError("data isn't of expected type");let{heap:t,asm:r}=this.acquire_asm(),n=me.ENC[this.mode],i=me.HEAP_DATA,a=this.pos,s=this.len,o=0,c=e.length||0,u=0,l=0,h=new Uint8Array(s+c&-16);for(;c>0;)l=ve(t,a+s,e,o,c),s+=l,o+=l,c-=l,l=r.cipher(n,i+a,s),l&&h.set(t.subarray(a,a+l),u),u+=l,l0;)d=ve(t,a+s,e,o,c),s+=d,o+=d,c-=d,d=r.cipher(n,i+a,s-(c?0:h)),d&&f.set(t.subarray(a,a+d),u),u+=d,d0){if(a%16){if(this.hasOwnProperty("padding"))throw new _e("data length must be a multiple of the block size");a+=16-a%16}if(t.cipher(r,n+i,a),this.hasOwnProperty("padding")&&this.padding){let t=e[i+s-1];if(t<1||t>16||t>s)throw new Se("bad padding");let r=0;for(let n=t;n>1;n--)r|=t^e[i+s-n];if(r)throw new Se("bad padding");s-=t}}const o=new Uint8Array(s);return s>0&&o.set(e.subarray(i,i+s)),this.pos=0,this.len=0,this.release_asm(),o}}class Ce{static encrypt(e,t,r=!1){return new Ce(t,r).encrypt(e)}static decrypt(e,t,r=!1){return new Ce(t,r).decrypt(e)}constructor(e,t=!1,r){this.aes=r||new Pe(e,void 0,t,"ECB")}encrypt(e){return ke(this.aes.AES_Encrypt_process(e),this.aes.AES_Encrypt_finish())}decrypt(e){return ke(this.aes.AES_Decrypt_process(e),this.aes.AES_Decrypt_finish())}}function Te(e){const t=function(e){const t=new Ce(e);this.encrypt=function(e){return t.encrypt(e)},this.decrypt=function(e){return t.decrypt(e)}};return t.blockSize=t.prototype.blockSize=16,t.keySize=t.prototype.keySize=e/8,t}function Me(e,t,r,n,i,a){const s=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],o=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],c=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],u=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],l=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],h=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],d=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],f=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];let p,y,g,m,b,w,v,k,A,_,S,E,x,P,C=0,T=t.length;const M=32===e.length?3:9;k=3===M?r?[0,32,2]:[30,-2,-2]:r?[0,32,2,62,30,-2,64,96,2]:[94,62,-2,32,64,2,30,-2,-2],r&&(t=function(e,t){const r=8-e.length%8;let n;if(2===t&&r<8)n=" ".charCodeAt(0);else if(1===t)n=r;else{if(t||!(r<8)){if(8===r)return e;throw new Error("des: invalid padding")}n=0}const i=new Uint8Array(e.length+r);for(let t=0;t>>4^v),v^=g,w^=g<<4,g=65535&(w>>>16^v),v^=g,w^=g<<16,g=858993459&(v>>>2^w),w^=g,v^=g<<2,g=16711935&(v>>>8^w),w^=g,v^=g<<8,g=1431655765&(w>>>1^v),v^=g,w^=g<<1,w=w<<1|w>>>31,v=v<<1|v>>>31,y=0;y>>4|v<<28)^e[p+1],g=w,w=v,v=g^(o[m>>>24&63]|u[m>>>16&63]|h[m>>>8&63]|f[63&m]|s[b>>>24&63]|c[b>>>16&63]|l[b>>>8&63]|d[63&b]);g=w,w=v,v=g}w=w>>>1|w<<31,v=v>>>1|v<<31,g=1431655765&(w>>>1^v),v^=g,w^=g<<1,g=16711935&(v>>>8^w),w^=g,v^=g<<8,g=858993459&(v>>>2^w),w^=g,v^=g<<2,g=65535&(w>>>16^v),v^=g,w^=g<<16,g=252645135&(w>>>4^v),v^=g,w^=g<<4,1===n&&(r?(A=w,S=v):(w^=_,v^=E)),I[D++]=w>>>24,I[D++]=w>>>16&255,I[D++]=w>>>8&255,I[D++]=255&w,I[D++]=v>>>24,I[D++]=v>>>16&255,I[D++]=v>>>8&255,I[D++]=255&v}return r||(I=function(e,t){let r,n=null;if(2===t)r=" ".charCodeAt(0);else if(1===t)n=e[e.length-1];else{if(t)throw new Error("des: invalid padding");r=0}if(!n){for(n=1;e[e.length-n]===r;)n++;n--}return e.subarray(0,e.length-n)}(I,a)),I}function Ie(e){const t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],a=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],o=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],u=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],l=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],h=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],f=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],p=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],y=e.length>8?3:1,g=new Array(32*y),m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0];let b,w,v,k=0,A=0;for(let _=0;_>>4^_),_^=v,y^=v<<4,v=65535&(_>>>-16^y),y^=v,_^=v<<-16,v=858993459&(y>>>2^_),_^=v,y^=v<<2,v=65535&(_>>>-16^y),y^=v,_^=v<<-16,v=1431655765&(y>>>1^_),_^=v,y^=v<<1,v=16711935&(_>>>8^y),y^=v,_^=v<<8,v=1431655765&(y>>>1^_),_^=v,y^=v<<1,v=y<<8|_>>>20&240,y=_<<24|_<<8&16711680|_>>>8&65280|_>>>24&240,_=v;for(let e=0;e>>26,_=_<<2|_>>>26):(y=y<<1|y>>>27,_=_<<1|_>>>27),y&=-15,_&=-15,b=t[y>>>28]|r[y>>>24&15]|n[y>>>20&15]|i[y>>>16&15]|a[y>>>12&15]|s[y>>>8&15]|o[y>>>4&15],w=c[_>>>28]|u[_>>>24&15]|l[_>>>20&15]|h[_>>>16&15]|d[_>>>12&15]|f[_>>>8&15]|p[_>>>4&15],v=65535&(w>>>16^b),g[A++]=b^v,g[A++]=w^v<<16}return g}function De(e){this.key=[];for(let t=0;t<3;t++)this.key.push(new Uint8Array(e.subarray(8*t,8*t+8)));this.encrypt=function(e){return Me(Ie(this.key[2]),Me(Ie(this.key[1]),Me(Ie(this.key[0]),e,!0,0,null,null),!1,0,null,null),!0,0,null,null)}}function Be(){this.BlockSize=8,this.KeySize=16,this.setKey=function(e){if(this.masking=new Array(16),this.rotate=new Array(16),this.reset(),e.length!==this.KeySize)throw new Error("CAST-128: keys must be 16 bytes");return this.keySchedule(e),!0},this.reset=function(){for(let e=0;e<16;e++)this.masking[e]=0,this.rotate[e]=0},this.getBlockSize=function(){return this.BlockSize},this.encrypt=function(e){const t=new Array(e.length);for(let a=0;a>>24&255,t[a+1]=c>>>16&255,t[a+2]=c>>>8&255,t[a+3]=255&c,t[a+4]=o>>>24&255,t[a+5]=o>>>16&255,t[a+6]=o>>>8&255,t[a+7]=255&o}return t},this.decrypt=function(e){const t=new Array(e.length);for(let a=0;a>>24&255,t[a+1]=c>>>16&255,t[a+2]=c>>>8&255,t[a+3]=255&c,t[a+4]=o>>>24&255,t[a+5]=o>>16&255,t[a+6]=o>>8&255,t[a+7]=255&o}return t};const e=new Array(4);e[0]=new Array(4),e[0][0]=[4,0,13,15,12,14,8],e[0][1]=[5,2,16,18,17,19,10],e[0][2]=[6,3,23,22,21,20,9],e[0][3]=[7,1,26,25,27,24,11],e[1]=new Array(4),e[1][0]=[0,6,21,23,20,22,16],e[1][1]=[1,4,0,2,1,3,18],e[1][2]=[2,5,7,6,5,4,17],e[1][3]=[3,7,10,9,11,8,19],e[2]=new Array(4),e[2][0]=[4,0,13,15,12,14,8],e[2][1]=[5,2,16,18,17,19,10],e[2][2]=[6,3,23,22,21,20,9],e[2][3]=[7,1,26,25,27,24,11],e[3]=new Array(4),e[3][0]=[0,6,21,23,20,22,16],e[3][1]=[1,4,0,2,1,3,18],e[3][2]=[2,5,7,6,5,4,17],e[3][3]=[3,7,10,9,11,8,19];const t=new Array(4);function r(e,t,r){const n=t+e,i=n<>>32-r;return(a[0][i>>>24]^a[1][i>>>16&255])-a[2][i>>>8&255]+a[3][255&i]}function n(e,t,r){const n=t^e,i=n<>>32-r;return a[0][i>>>24]-a[1][i>>>16&255]+a[2][i>>>8&255]^a[3][255&i]}function i(e,t,r){const n=t-e,i=n<>>32-r;return(a[0][i>>>24]+a[1][i>>>16&255]^a[2][i>>>8&255])-a[3][255&i]}t[0]=new Array(4),t[0][0]=[24,25,23,22,18],t[0][1]=[26,27,21,20,22],t[0][2]=[28,29,19,18,25],t[0][3]=[30,31,17,16,28],t[1]=new Array(4),t[1][0]=[3,2,12,13,8],t[1][1]=[1,0,14,15,13],t[1][2]=[7,6,8,9,3],t[1][3]=[5,4,10,11,7],t[2]=new Array(4),t[2][0]=[19,18,28,29,25],t[2][1]=[17,16,30,31,28],t[2][2]=[23,22,24,25,18],t[2][3]=[21,20,26,27,22],t[3]=new Array(4),t[3][0]=[8,9,7,6,3],t[3][1]=[10,11,5,4,7],t[3][2]=[12,13,3,2,8],t[3][3]=[14,15,1,0,13],this.keySchedule=function(r){const n=new Array(8),i=new Array(32);let s;for(let e=0;e<4;e++)s=4*e,n[e]=r[s]<<24|r[s+1]<<16|r[s+2]<<8|r[s+3];const o=[6,7,4,5];let c,u=0;for(let r=0;r<2;r++)for(let r=0;r<4;r++){for(s=0;s<4;s++){const t=e[r][s];c=n[t[1]],c^=a[4][n[t[2]>>>2]>>>24-8*(3&t[2])&255],c^=a[5][n[t[3]>>>2]>>>24-8*(3&t[3])&255],c^=a[6][n[t[4]>>>2]>>>24-8*(3&t[4])&255],c^=a[7][n[t[5]>>>2]>>>24-8*(3&t[5])&255],c^=a[o[s]][n[t[6]>>>2]>>>24-8*(3&t[6])&255],n[t[0]]=c}for(s=0;s<4;s++){const e=t[r][s];c=a[4][n[e[0]>>>2]>>>24-8*(3&e[0])&255],c^=a[5][n[e[1]>>>2]>>>24-8*(3&e[1])&255],c^=a[6][n[e[2]>>>2]>>>24-8*(3&e[2])&255],c^=a[7][n[e[3]>>>2]>>>24-8*(3&e[3])&255],c^=a[4+s][n[e[4]>>>2]>>>24-8*(3&e[4])&255],i[u]=c,u++}}for(let e=0;e<16;e++)this.masking[e]=i[e],this.rotate[e]=31&i[16+e]};const a=new Array(8);a[0]=[821772500,2678128395,1810681135,1059425402,505495343,2617265619,1610868032,3483355465,3218386727,2294005173,3791863952,2563806837,1852023008,365126098,3269944861,584384398,677919599,3229601881,4280515016,2002735330,1136869587,3744433750,2289869850,2731719981,2714362070,879511577,1639411079,575934255,717107937,2857637483,576097850,2731753936,1725645e3,2810460463,5111599,767152862,2543075244,1251459544,1383482551,3052681127,3089939183,3612463449,1878520045,1510570527,2189125840,2431448366,582008916,3163445557,1265446783,1354458274,3529918736,3202711853,3073581712,3912963487,3029263377,1275016285,4249207360,2905708351,3304509486,1442611557,3585198765,2712415662,2731849581,3248163920,2283946226,208555832,2766454743,1331405426,1447828783,3315356441,3108627284,2957404670,2981538698,3339933917,1669711173,286233437,1465092821,1782121619,3862771680,710211251,980974943,1651941557,430374111,2051154026,704238805,4128970897,3144820574,2857402727,948965521,3333752299,2227686284,718756367,2269778983,2731643755,718440111,2857816721,3616097120,1113355533,2478022182,410092745,1811985197,1944238868,2696854588,1415722873,1682284203,1060277122,1998114690,1503841958,82706478,2315155686,1068173648,845149890,2167947013,1768146376,1993038550,3566826697,3390574031,940016341,3355073782,2328040721,904371731,1205506512,4094660742,2816623006,825647681,85914773,2857843460,1249926541,1417871568,3287612,3211054559,3126306446,1975924523,1353700161,2814456437,2438597621,1800716203,722146342,2873936343,1151126914,4160483941,2877670899,458611604,2866078500,3483680063,770352098,2652916994,3367839148,3940505011,3585973912,3809620402,718646636,2504206814,2914927912,3631288169,2857486607,2860018678,575749918,2857478043,718488780,2069512688,3548183469,453416197,1106044049,3032691430,52586708,3378514636,3459808877,3211506028,1785789304,218356169,3571399134,3759170522,1194783844,1523787992,3007827094,1975193539,2555452411,1341901877,3045838698,3776907964,3217423946,2802510864,2889438986,1057244207,1636348243,3761863214,1462225785,2632663439,481089165,718503062,24497053,3332243209,3344655856,3655024856,3960371065,1195698900,2971415156,3710176158,2115785917,4027663609,3525578417,2524296189,2745972565,3564906415,1372086093,1452307862,2780501478,1476592880,3389271281,18495466,2378148571,901398090,891748256,3279637769,3157290713,2560960102,1447622437,4284372637,216884176,2086908623,1879786977,3588903153,2242455666,2938092967,3559082096,2810645491,758861177,1121993112,215018983,642190776,4169236812,1196255959,2081185372,3508738393,941322904,4124243163,2877523539,1848581667,2205260958,3180453958,2589345134,3694731276,550028657,2519456284,3789985535,2973870856,2093648313,443148163,46942275,2734146937,1117713533,1115362972,1523183689,3717140224,1551984063],a[1]=[522195092,4010518363,1776537470,960447360,4267822970,4005896314,1435016340,1929119313,2913464185,1310552629,3579470798,3724818106,2579771631,1594623892,417127293,2715217907,2696228731,1508390405,3994398868,3925858569,3695444102,4019471449,3129199795,3770928635,3520741761,990456497,4187484609,2783367035,21106139,3840405339,631373633,3783325702,532942976,396095098,3548038825,4267192484,2564721535,2011709262,2039648873,620404603,3776170075,2898526339,3612357925,4159332703,1645490516,223693667,1567101217,3362177881,1029951347,3470931136,3570957959,1550265121,119497089,972513919,907948164,3840628539,1613718692,3594177948,465323573,2659255085,654439692,2575596212,2699288441,3127702412,277098644,624404830,4100943870,2717858591,546110314,2403699828,3655377447,1321679412,4236791657,1045293279,4010672264,895050893,2319792268,494945126,1914543101,2777056443,3894764339,2219737618,311263384,4275257268,3458730721,669096869,3584475730,3835122877,3319158237,3949359204,2005142349,2713102337,2228954793,3769984788,569394103,3855636576,1425027204,108000370,2736431443,3671869269,3043122623,1750473702,2211081108,762237499,3972989403,2798899386,3061857628,2943854345,867476300,964413654,1591880597,1594774276,2179821409,552026980,3026064248,3726140315,2283577634,3110545105,2152310760,582474363,1582640421,1383256631,2043843868,3322775884,1217180674,463797851,2763038571,480777679,2718707717,2289164131,3118346187,214354409,200212307,3810608407,3025414197,2674075964,3997296425,1847405948,1342460550,510035443,4080271814,815934613,833030224,1620250387,1945732119,2703661145,3966000196,1388869545,3456054182,2687178561,2092620194,562037615,1356438536,3409922145,3261847397,1688467115,2150901366,631725691,3840332284,549916902,3455104640,394546491,837744717,2114462948,751520235,2221554606,2415360136,3999097078,2063029875,803036379,2702586305,821456707,3019566164,360699898,4018502092,3511869016,3677355358,2402471449,812317050,49299192,2570164949,3259169295,2816732080,3331213574,3101303564,2156015656,3705598920,3546263921,143268808,3200304480,1638124008,3165189453,3341807610,578956953,2193977524,3638120073,2333881532,807278310,658237817,2969561766,1641658566,11683945,3086995007,148645947,1138423386,4158756760,1981396783,2401016740,3699783584,380097457,2680394679,2803068651,3334260286,441530178,4016580796,1375954390,761952171,891809099,2183123478,157052462,3683840763,1592404427,341349109,2438483839,1417898363,644327628,2233032776,2353769706,2201510100,220455161,1815641738,182899273,2995019788,3627381533,3702638151,2890684138,1052606899,588164016,1681439879,4038439418,2405343923,4229449282,167996282,1336969661,1688053129,2739224926,1543734051,1046297529,1138201970,2121126012,115334942,1819067631,1902159161,1941945968,2206692869,1159982321],a[2]=[2381300288,637164959,3952098751,3893414151,1197506559,916448331,2350892612,2932787856,3199334847,4009478890,3905886544,1373570990,2450425862,4037870920,3778841987,2456817877,286293407,124026297,3001279700,1028597854,3115296800,4208886496,2691114635,2188540206,1430237888,1218109995,3572471700,308166588,570424558,2187009021,2455094765,307733056,1310360322,3135275007,1384269543,2388071438,863238079,2359263624,2801553128,3380786597,2831162807,1470087780,1728663345,4072488799,1090516929,532123132,2389430977,1132193179,2578464191,3051079243,1670234342,1434557849,2711078940,1241591150,3314043432,3435360113,3091448339,1812415473,2198440252,267246943,796911696,3619716990,38830015,1526438404,2806502096,374413614,2943401790,1489179520,1603809326,1920779204,168801282,260042626,2358705581,1563175598,2397674057,1356499128,2217211040,514611088,2037363785,2186468373,4022173083,2792511869,2913485016,1173701892,4200428547,3896427269,1334932762,2455136706,602925377,2835607854,1613172210,41346230,2499634548,2457437618,2188827595,41386358,4172255629,1313404830,2405527007,3801973774,2217704835,873260488,2528884354,2478092616,4012915883,2555359016,2006953883,2463913485,575479328,2218240648,2099895446,660001756,2341502190,3038761536,3888151779,3848713377,3286851934,1022894237,1620365795,3449594689,1551255054,15374395,3570825345,4249311020,4151111129,3181912732,310226346,1133119310,530038928,136043402,2476768958,3107506709,2544909567,1036173560,2367337196,1681395281,1758231547,3641649032,306774401,1575354324,3716085866,1990386196,3114533736,2455606671,1262092282,3124342505,2768229131,4210529083,1833535011,423410938,660763973,2187129978,1639812e3,3508421329,3467445492,310289298,272797111,2188552562,2456863912,310240523,677093832,1013118031,901835429,3892695601,1116285435,3036471170,1337354835,243122523,520626091,277223598,4244441197,4194248841,1766575121,594173102,316590669,742362309,3536858622,4176435350,3838792410,2501204839,1229605004,3115755532,1552908988,2312334149,979407927,3959474601,1148277331,176638793,3614686272,2083809052,40992502,1340822838,2731552767,3535757508,3560899520,1354035053,122129617,7215240,2732932949,3118912700,2718203926,2539075635,3609230695,3725561661,1928887091,2882293555,1988674909,2063640240,2491088897,1459647954,4189817080,2302804382,1113892351,2237858528,1927010603,4002880361,1856122846,1594404395,2944033133,3855189863,3474975698,1643104450,4054590833,3431086530,1730235576,2984608721,3084664418,2131803598,4178205752,267404349,1617849798,1616132681,1462223176,736725533,2327058232,551665188,2945899023,1749386277,2575514597,1611482493,674206544,2201269090,3642560800,728599968,1680547377,2620414464,1388111496,453204106,4156223445,1094905244,2754698257,2201108165,3757000246,2704524545,3922940700,3996465027],a[3]=[2645754912,532081118,2814278639,3530793624,1246723035,1689095255,2236679235,4194438865,2116582143,3859789411,157234593,2045505824,4245003587,1687664561,4083425123,605965023,672431967,1336064205,3376611392,214114848,4258466608,3232053071,489488601,605322005,3998028058,264917351,1912574028,756637694,436560991,202637054,135989450,85393697,2152923392,3896401662,2895836408,2145855233,3535335007,115294817,3147733898,1922296357,3464822751,4117858305,1037454084,2725193275,2127856640,1417604070,1148013728,1827919605,642362335,2929772533,909348033,1346338451,3547799649,297154785,1917849091,4161712827,2883604526,3968694238,1469521537,3780077382,3375584256,1763717519,136166297,4290970789,1295325189,2134727907,2798151366,1566297257,3672928234,2677174161,2672173615,965822077,2780786062,289653839,1133871874,3491843819,35685304,1068898316,418943774,672553190,642281022,2346158704,1954014401,3037126780,4079815205,2030668546,3840588673,672283427,1776201016,359975446,3750173538,555499703,2769985273,1324923,69110472,152125443,3176785106,3822147285,1340634837,798073664,1434183902,15393959,216384236,1303690150,3881221631,3711134124,3960975413,106373927,2578434224,1455997841,1801814300,1578393881,1854262133,3188178946,3258078583,2302670060,1539295533,3505142565,3078625975,2372746020,549938159,3278284284,2620926080,181285381,2865321098,3970029511,68876850,488006234,1728155692,2608167508,836007927,2435231793,919367643,3339422534,3655756360,1457871481,40520939,1380155135,797931188,234455205,2255801827,3990488299,397000196,739833055,3077865373,2871719860,4022553888,772369276,390177364,3853951029,557662966,740064294,1640166671,1699928825,3535942136,622006121,3625353122,68743880,1742502,219489963,1664179233,1577743084,1236991741,410585305,2366487942,823226535,1050371084,3426619607,3586839478,212779912,4147118561,1819446015,1911218849,530248558,3486241071,3252585495,2886188651,3410272728,2342195030,20547779,2982490058,3032363469,3631753222,312714466,1870521650,1493008054,3491686656,615382978,4103671749,2534517445,1932181,2196105170,278426614,6369430,3274544417,2913018367,697336853,2143000447,2946413531,701099306,1558357093,2805003052,3500818408,2321334417,3567135975,216290473,3591032198,23009561,1996984579,3735042806,2024298078,3739440863,569400510,2339758983,3016033873,3097871343,3639523026,3844324983,3256173865,795471839,2951117563,4101031090,4091603803,3603732598,971261452,534414648,428311343,3389027175,2844869880,694888862,1227866773,2456207019,3043454569,2614353370,3749578031,3676663836,459166190,4132644070,1794958188,51825668,2252611902,3084671440,2036672799,3436641603,1099053433,2469121526,3059204941,1323291266,2061838604,1018778475,2233344254,2553501054,334295216,3556750194,1065731521,183467730],a[4]=[2127105028,745436345,2601412319,2788391185,3093987327,500390133,1155374404,389092991,150729210,3891597772,3523549952,1935325696,716645080,946045387,2901812282,1774124410,3869435775,4039581901,3293136918,3438657920,948246080,363898952,3867875531,1286266623,1598556673,68334250,630723836,1104211938,1312863373,613332731,2377784574,1101634306,441780740,3129959883,1917973735,2510624549,3238456535,2544211978,3308894634,1299840618,4076074851,1756332096,3977027158,297047435,3790297736,2265573040,3621810518,1311375015,1667687725,47300608,3299642885,2474112369,201668394,1468347890,576830978,3594690761,3742605952,1958042578,1747032512,3558991340,1408974056,3366841779,682131401,1033214337,1545599232,4265137049,206503691,103024618,2855227313,1337551222,2428998917,2963842932,4015366655,3852247746,2796956967,3865723491,3747938335,247794022,3755824572,702416469,2434691994,397379957,851939612,2314769512,218229120,1380406772,62274761,214451378,3170103466,2276210409,3845813286,28563499,446592073,1693330814,3453727194,29968656,3093872512,220656637,2470637031,77972100,1667708854,1358280214,4064765667,2395616961,325977563,4277240721,4220025399,3605526484,3355147721,811859167,3069544926,3962126810,652502677,3075892249,4132761541,3498924215,1217549313,3250244479,3858715919,3053989961,1538642152,2279026266,2875879137,574252750,3324769229,2651358713,1758150215,141295887,2719868960,3515574750,4093007735,4194485238,1082055363,3417560400,395511885,2966884026,179534037,3646028556,3738688086,1092926436,2496269142,257381841,3772900718,1636087230,1477059743,2499234752,3811018894,2675660129,3285975680,90732309,1684827095,1150307763,1723134115,3237045386,1769919919,1240018934,815675215,750138730,2239792499,1234303040,1995484674,138143821,675421338,1145607174,1936608440,3238603024,2345230278,2105974004,323969391,779555213,3004902369,2861610098,1017501463,2098600890,2628620304,2940611490,2682542546,1171473753,3656571411,3687208071,4091869518,393037935,159126506,1662887367,1147106178,391545844,3452332695,1891500680,3016609650,1851642611,546529401,1167818917,3194020571,2848076033,3953471836,575554290,475796850,4134673196,450035699,2351251534,844027695,1080539133,86184846,1554234488,3692025454,1972511363,2018339607,1491841390,1141460869,1061690759,4244549243,2008416118,2351104703,2868147542,1598468138,722020353,1027143159,212344630,1387219594,1725294528,3745187956,2500153616,458938280,4129215917,1828119673,544571780,3503225445,2297937496,1241802790,267843827,2694610800,1397140384,1558801448,3782667683,1806446719,929573330,2234912681,400817706,616011623,4121520928,3603768725,1761550015,1968522284,4053731006,4192232858,4005120285,872482584,3140537016,3894607381,2287405443,1963876937,3663887957,1584857e3,2975024454,1833426440,4025083860],a[5]=[4143615901,749497569,1285769319,3795025788,2514159847,23610292,3974978748,844452780,3214870880,3751928557,2213566365,1676510905,448177848,3730751033,4086298418,2307502392,871450977,3222878141,4110862042,3831651966,2735270553,1310974780,2043402188,1218528103,2736035353,4274605013,2702448458,3936360550,2693061421,162023535,2827510090,687910808,23484817,3784910947,3371371616,779677500,3503626546,3473927188,4157212626,3500679282,4248902014,2466621104,3899384794,1958663117,925738300,1283408968,3669349440,1840910019,137959847,2679828185,1239142320,1315376211,1547541505,1690155329,739140458,3128809933,3933172616,3876308834,905091803,1548541325,4040461708,3095483362,144808038,451078856,676114313,2861728291,2469707347,993665471,373509091,2599041286,4025009006,4170239449,2149739950,3275793571,3749616649,2794760199,1534877388,572371878,2590613551,1753320020,3467782511,1405125690,4270405205,633333386,3026356924,3475123903,632057672,2846462855,1404951397,3882875879,3915906424,195638627,2385783745,3902872553,1233155085,3355999740,2380578713,2702246304,2144565621,3663341248,3894384975,2502479241,4248018925,3094885567,1594115437,572884632,3385116731,767645374,1331858858,1475698373,3793881790,3532746431,1321687957,619889600,1121017241,3440213920,2070816767,2833025776,1933951238,4095615791,890643334,3874130214,859025556,360630002,925594799,1764062180,3920222280,4078305929,979562269,2810700344,4087740022,1949714515,546639971,1165388173,3069891591,1495988560,922170659,1291546247,2107952832,1813327274,3406010024,3306028637,4241950635,153207855,2313154747,1608695416,1150242611,1967526857,721801357,1220138373,3691287617,3356069787,2112743302,3281662835,1111556101,1778980689,250857638,2298507990,673216130,2846488510,3207751581,3562756981,3008625920,3417367384,2198807050,529510932,3547516680,3426503187,2364944742,102533054,2294910856,1617093527,1204784762,3066581635,1019391227,1069574518,1317995090,1691889997,3661132003,510022745,3238594800,1362108837,1817929911,2184153760,805817662,1953603311,3699844737,120799444,2118332377,207536705,2282301548,4120041617,145305846,2508124933,3086745533,3261524335,1877257368,2977164480,3160454186,2503252186,4221677074,759945014,254147243,2767453419,3801518371,629083197,2471014217,907280572,3900796746,940896768,2751021123,2625262786,3161476951,3661752313,3260732218,1425318020,2977912069,1496677566,3988592072,2140652971,3126511541,3069632175,977771578,1392695845,1698528874,1411812681,1369733098,1343739227,3620887944,1142123638,67414216,3102056737,3088749194,1626167401,2546293654,3941374235,697522451,33404913,143560186,2595682037,994885535,1247667115,3859094837,2699155541,3547024625,4114935275,2968073508,3199963069,2732024527,1237921620,951448369,1898488916,1211705605,2790989240,2233243581,3598044975],a[6]=[2246066201,858518887,1714274303,3485882003,713916271,2879113490,3730835617,539548191,36158695,1298409750,419087104,1358007170,749914897,2989680476,1261868530,2995193822,2690628854,3443622377,3780124940,3796824509,2976433025,4259637129,1551479e3,512490819,1296650241,951993153,2436689437,2460458047,144139966,3136204276,310820559,3068840729,643875328,1969602020,1680088954,2185813161,3283332454,672358534,198762408,896343282,276269502,3014846926,84060815,197145886,376173866,3943890818,3813173521,3545068822,1316698879,1598252827,2633424951,1233235075,859989710,2358460855,3503838400,3409603720,1203513385,1193654839,2792018475,2060853022,207403770,1144516871,3068631394,1121114134,177607304,3785736302,326409831,1929119770,2983279095,4183308101,3474579288,3200513878,3228482096,119610148,1170376745,3378393471,3163473169,951863017,3337026068,3135789130,2907618374,1183797387,2015970143,4045674555,2182986399,2952138740,3928772205,384012900,2454997643,10178499,2879818989,2596892536,111523738,2995089006,451689641,3196290696,235406569,1441906262,3890558523,3013735005,4158569349,1644036924,376726067,1006849064,3664579700,2041234796,1021632941,1374734338,2566452058,371631263,4007144233,490221539,206551450,3140638584,1053219195,1853335209,3412429660,3562156231,735133835,1623211703,3104214392,2738312436,4096837757,3366392578,3110964274,3956598718,3196820781,2038037254,3877786376,2339753847,300912036,3766732888,2372630639,1516443558,4200396704,1574567987,4069441456,4122592016,2699739776,146372218,2748961456,2043888151,35287437,2596680554,655490400,1132482787,110692520,1031794116,2188192751,1324057718,1217253157,919197030,686247489,3261139658,1028237775,3135486431,3059715558,2460921700,986174950,2661811465,4062904701,2752986992,3709736643,367056889,1353824391,731860949,1650113154,1778481506,784341916,357075625,3608602432,1074092588,2480052770,3811426202,92751289,877911070,3600361838,1231880047,480201094,3756190983,3094495953,434011822,87971354,363687820,1717726236,1901380172,3926403882,2481662265,400339184,1490350766,2661455099,1389319756,2558787174,784598401,1983468483,30828846,3550527752,2716276238,3841122214,1765724805,1955612312,1277890269,1333098070,1564029816,2704417615,1026694237,3287671188,1260819201,3349086767,1016692350,1582273796,1073413053,1995943182,694588404,1025494639,3323872702,3551898420,4146854327,453260480,1316140391,1435673405,3038941953,3486689407,1622062951,403978347,817677117,950059133,4246079218,3278066075,1486738320,1417279718,481875527,2549965225,3933690356,760697757,1452955855,3897451437,1177426808,1702951038,4085348628,2447005172,1084371187,3516436277,3068336338,1073369276,1027665953,3284188590,1230553676,1368340146,2226246512,267243139,2274220762,4070734279,2497715176,2423353163,2504755875],a[7]=[3793104909,3151888380,2817252029,895778965,2005530807,3871412763,237245952,86829237,296341424,3851759377,3974600970,2475086196,709006108,1994621201,2972577594,937287164,3734691505,168608556,3189338153,2225080640,3139713551,3033610191,3025041904,77524477,185966941,1208824168,2344345178,1721625922,3354191921,1066374631,1927223579,1971335949,2483503697,1551748602,2881383779,2856329572,3003241482,48746954,1398218158,2050065058,313056748,4255789917,393167848,1912293076,940740642,3465845460,3091687853,2522601570,2197016661,1727764327,364383054,492521376,1291706479,3264136376,1474851438,1685747964,2575719748,1619776915,1814040067,970743798,1561002147,2925768690,2123093554,1880132620,3151188041,697884420,2550985770,2607674513,2659114323,110200136,1489731079,997519150,1378877361,3527870668,478029773,2766872923,1022481122,431258168,1112503832,897933369,2635587303,669726182,3383752315,918222264,163866573,3246985393,3776823163,114105080,1903216136,761148244,3571337562,1690750982,3166750252,1037045171,1888456500,2010454850,642736655,616092351,365016990,1185228132,4174898510,1043824992,2023083429,2241598885,3863320456,3279669087,3674716684,108438443,2132974366,830746235,606445527,4173263986,2204105912,1844756978,2532684181,4245352700,2969441100,3796921661,1335562986,4061524517,2720232303,2679424040,634407289,885462008,3294724487,3933892248,2094100220,339117932,4048830727,3202280980,1458155303,2689246273,1022871705,2464987878,3714515309,353796843,2822958815,4256850100,4052777845,551748367,618185374,3778635579,4020649912,1904685140,3069366075,2670879810,3407193292,2954511620,4058283405,2219449317,3135758300,1120655984,3447565834,1474845562,3577699062,550456716,3466908712,2043752612,881257467,869518812,2005220179,938474677,3305539448,3850417126,1315485940,3318264702,226533026,965733244,321539988,1136104718,804158748,573969341,3708209826,937399083,3290727049,2901666755,1461057207,4013193437,4066861423,3242773476,2421326174,1581322155,3028952165,786071460,3900391652,3918438532,1485433313,4023619836,3708277595,3678951060,953673138,1467089153,1930354364,1533292819,2492563023,1346121658,1685000834,1965281866,3765933717,4190206607,2052792609,3515332758,690371149,3125873887,2180283551,2903598061,3933952357,436236910,289419410,14314871,1242357089,2904507907,1616633776,2666382180,585885352,3471299210,2699507360,1432659641,277164553,3354103607,770115018,2303809295,3741942315,3177781868,2853364978,2269453327,3774259834,987383833,1290892879,225909803,1741533526,890078084,1496906255,1111072499,916028167,243534141,1252605537,2204162171,531204876,290011180,3916834213,102027703,237315147,209093447,1486785922,220223953,2758195998,4175039106,82940208,3127791296,2569425252,518464269,1353887104,3941492737,2377294467,3935040926]}function Ue(e){this.cast5=new Be,this.cast5.setKey(e),this.encrypt=function(e){return this.cast5.encrypt(e)}}De.keySize=De.prototype.keySize=24,De.blockSize=De.prototype.blockSize=8,Ue.blockSize=Ue.prototype.blockSize=8,Ue.keySize=Ue.prototype.keySize=16;const Re=4294967295;function Ke(e,t){return(e<>>32-t)&Re}function Oe(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24}function Ne(e,t,r){e.splice(t,4,255&r,r>>>8&255,r>>>16&255,r>>>24&255)}function Le(e,t){return e>>>8*t&255}function qe(e){this.tf=function(){let e=null,t=null,r=-1,n=[],i=[[],[],[],[]];function a(e){return i[0][Le(e,0)]^i[1][Le(e,1)]^i[2][Le(e,2)]^i[3][Le(e,3)]}function s(e){return i[0][Le(e,3)]^i[1][Le(e,0)]^i[2][Le(e,1)]^i[3][Le(e,2)]}function o(e,t){let r=a(t[0]),i=s(t[1]);t[2]=Ke(t[2]^r+i+n[4*e+8]&Re,31),t[3]=Ke(t[3],1)^r+2*i+n[4*e+9]&Re,r=a(t[2]),i=s(t[3]),t[0]=Ke(t[0]^r+i+n[4*e+10]&Re,31),t[1]=Ke(t[1],1)^r+2*i+n[4*e+11]&Re}function c(e,t){let r=a(t[0]),i=s(t[1]);t[2]=Ke(t[2],1)^r+i+n[4*e+10]&Re,t[3]=Ke(t[3]^r+2*i+n[4*e+11]&Re,31),r=a(t[2]),i=s(t[3]),t[0]=Ke(t[0],1)^r+i+n[4*e+8]&Re,t[1]=Ke(t[1]^r+2*i+n[4*e+9]&Re,31)}return{name:"twofish",blocksize:16,open:function(t){let r,a,s,o,c;e=t;const u=[],l=[],h=[];let d;const f=[];let p,y,g;const m=[[8,1,7,13,6,15,3,2,0,11,5,9,14,12,10,4],[2,8,11,13,15,7,6,14,3,1,9,4,0,10,12,5]],b=[[14,12,11,8,1,2,3,5,15,4,10,6,7,0,9,13],[1,14,2,11,4,12,3,7,6,13,10,5,15,9,0,8]],w=[[11,10,5,14,6,13,9,0,12,8,15,3,2,4,7,1],[4,12,7,5,1,6,9,10,0,14,13,8,2,11,3,15]],v=[[13,7,15,4,1,2,6,14,9,11,3,0,8,5,12,10],[11,9,5,1,12,3,13,14,6,4,7,15,2,0,8,10]],k=[0,8,1,9,2,10,3,11,4,12,5,13,6,14,7,15],A=[0,9,2,11,4,13,6,15,8,1,10,3,12,5,14,7],_=[[],[]],S=[[],[],[],[]];function E(e){return e^e>>2^[0,90,180,238][3&e]}function x(e){return e^e>>1^e>>2^[0,238,180,90][3&e]}function P(e,t){let r,n,i;for(r=0;r<8;r++)n=t>>>24,t=t<<8&Re|e>>>24,e=e<<8&Re,i=n<<1,128&n&&(i^=333),t^=n^i<<16,i^=n>>>1,1&n&&(i^=166),t^=i<<24|i<<8;return t}function C(e,t){const r=t>>4,n=15&t,i=m[e][r^n],a=b[e][k[n]^A[r]];return v[e][k[a]^A[i]]<<4|w[e][i^a]}function T(e,t){let r=Le(e,0),n=Le(e,1),i=Le(e,2),a=Le(e,3);switch(d){case 4:r=_[1][r]^Le(t[3],0),n=_[0][n]^Le(t[3],1),i=_[0][i]^Le(t[3],2),a=_[1][a]^Le(t[3],3);case 3:r=_[1][r]^Le(t[2],0),n=_[1][n]^Le(t[2],1),i=_[0][i]^Le(t[2],2),a=_[0][a]^Le(t[2],3);case 2:r=_[0][_[0][r]^Le(t[1],0)]^Le(t[0],0),n=_[0][_[1][n]^Le(t[1],1)]^Le(t[0],1),i=_[1][_[0][i]^Le(t[1],2)]^Le(t[0],2),a=_[1][_[1][a]^Le(t[1],3)]^Le(t[0],3)}return S[0][r]^S[1][n]^S[2][i]^S[3][a]}for(e=e.slice(0,32),r=e.length;16!==r&&24!==r&&32!==r;)e[r++]=0;for(r=0;r>2]=Oe(e,r);for(r=0;r<256;r++)_[0][r]=C(0,r),_[1][r]=C(1,r);for(r=0;r<256;r++)p=_[1][r],y=E(p),g=x(p),S[0][r]=p+(y<<8)+(g<<16)+(g<<24),S[2][r]=y+(g<<8)+(p<<16)+(g<<24),p=_[0][r],y=E(p),g=x(p),S[1][r]=g+(g<<8)+(y<<16)+(p<<24),S[3][r]=y+(p<<8)+(g<<16)+(y<<24);for(d=h.length/2,r=0;r=0;e--)c(e,a);Ne(t,r,a[2]^n[0]),Ne(t,r+4,a[3]^n[1]),Ne(t,r+8,a[0]^n[2]),Ne(t,r+12,a[1]^n[3]),r+=16},finalize:function(){return t}}}(),this.tf.open(Array.from(e),0),this.encrypt=function(e){return this.tf.encrypt(Array.from(e),0)}}function Fe(){}function ze(e){this.bf=new Fe,this.bf.init(e),this.encrypt=function(e){return this.bf.encryptBlock(e)}}qe.keySize=qe.prototype.keySize=32,qe.blockSize=qe.prototype.blockSize=16,Fe.prototype.BLOCKSIZE=8,Fe.prototype.SBOXES=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]],Fe.prototype.PARRAY=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],Fe.prototype.NN=16,Fe.prototype._clean=function(e){return e<0&&(e=2147483648+(2147483647&e)),e},Fe.prototype._F=function(e){let t;const r=255&e,n=255&(e>>>=8),i=255&(e>>>=8),a=255&(e>>>=8);return t=this.sboxes[0][a]+this.sboxes[1][i],t^=this.sboxes[2][n],t+=this.sboxes[3][r],t},Fe.prototype._encryptBlock=function(e){let t,r=e[0],n=e[1];for(t=0;t>>24-8*t&255,i[t+n]=r[1]>>>24-8*t&255;return i},Fe.prototype._decryptBlock=function(e){let t,r=e[0],n=e[1];for(t=this.NN+1;t>1;--t){r^=this.parray[t],n=this._F(r)^n;const e=r;r=n,n=e}r^=this.parray[1],n^=this.parray[0],e[0]=this._clean(n),e[1]=this._clean(r)},Fe.prototype.init=function(e){let t,r=0;for(this.parray=[],t=0;t=e.length&&(r=0);this.parray[t]=this.PARRAY[t]^n}for(this.sboxes=[],t=0;t<4;++t)for(this.sboxes[t]=[],r=0;r<256;++r)this.sboxes[t][r]=this.SBOXES[t][r];const n=[0,0];for(t=0;t>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=t+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=r+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=c+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=u+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=l+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=h+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=d+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=f+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=p+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=y+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=g+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=m+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=b+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=w+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;P=v+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=b^f^r^e;C=x<<1|x>>>31;P=C+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=w^p^c^t;T=x<<1|x>>>31;P=T+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=v^y^u^r;M=x<<1|x>>>31;P=M+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=C^g^l^c;I=x<<1|x>>>31;P=I+(k<<5|k>>>27)+E+(A&_|~A&S)+0x5a827999|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=T^m^h^u;D=x<<1|x>>>31;P=D+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=M^b^d^l;B=x<<1|x>>>31;P=B+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=I^w^f^h;U=x<<1|x>>>31;P=U+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=D^v^p^d;R=x<<1|x>>>31;P=R+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=B^C^y^f;K=x<<1|x>>>31;P=K+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=U^T^g^p;O=x<<1|x>>>31;P=O+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=R^M^m^y;N=x<<1|x>>>31;P=N+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=K^I^b^g;L=x<<1|x>>>31;P=L+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=O^D^w^m;q=x<<1|x>>>31;P=q+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=N^B^v^b;F=x<<1|x>>>31;P=F+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=L^U^C^w;z=x<<1|x>>>31;P=z+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=q^R^T^v;j=x<<1|x>>>31;P=j+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=F^K^M^C;H=x<<1|x>>>31;P=H+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=z^O^I^T;W=x<<1|x>>>31;P=W+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=j^N^D^M;V=x<<1|x>>>31;P=V+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=H^L^B^I;G=x<<1|x>>>31;P=G+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=W^q^U^D;$=x<<1|x>>>31;P=$+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=V^F^R^B;J=x<<1|x>>>31;P=J+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=G^z^K^U;Z=x<<1|x>>>31;P=Z+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=$^j^O^R;Y=x<<1|x>>>31;P=Y+(k<<5|k>>>27)+E+(A^_^S)+0x6ed9eba1|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=J^H^N^K;X=x<<1|x>>>31;P=X+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Z^W^L^O;Q=x<<1|x>>>31;P=Q+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Y^V^q^N;ee=x<<1|x>>>31;P=ee+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=X^G^F^L;te=x<<1|x>>>31;P=te+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Q^$^z^q;re=x<<1|x>>>31;P=re+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ee^J^j^F;ne=x<<1|x>>>31;P=ne+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=te^Z^H^z;ie=x<<1|x>>>31;P=ie+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=re^Y^W^j;ae=x<<1|x>>>31;P=ae+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ne^X^V^H;se=x<<1|x>>>31;P=se+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ie^Q^G^W;oe=x<<1|x>>>31;P=oe+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ae^ee^$^V;ce=x<<1|x>>>31;P=ce+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=se^te^J^G;ue=x<<1|x>>>31;P=ue+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=oe^re^Z^$;le=x<<1|x>>>31;P=le+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ce^ne^Y^J;he=x<<1|x>>>31;P=he+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ue^ie^X^Z;de=x<<1|x>>>31;P=de+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=le^ae^Q^Y;fe=x<<1|x>>>31;P=fe+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=he^se^ee^X;pe=x<<1|x>>>31;P=pe+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=de^oe^te^Q;ye=x<<1|x>>>31;P=ye+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=fe^ce^re^ee;ge=x<<1|x>>>31;P=ge+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=pe^ue^ne^te;me=x<<1|x>>>31;P=me+(k<<5|k>>>27)+E+(A&_|A&S|_&S)-0x70e44324|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ye^le^ie^re;be=x<<1|x>>>31;P=be+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ge^he^ae^ne;we=x<<1|x>>>31;P=we+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=me^de^se^ie;ve=x<<1|x>>>31;P=ve+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=be^fe^oe^ae;ke=x<<1|x>>>31;P=ke+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=we^pe^ce^se;Ae=x<<1|x>>>31;P=Ae+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ve^ye^ue^oe;_e=x<<1|x>>>31;P=_e+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=ke^ge^le^ce;Se=x<<1|x>>>31;P=Se+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ae^me^he^ue;Ee=x<<1|x>>>31;P=Ee+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=_e^be^de^le;xe=x<<1|x>>>31;P=xe+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Se^we^fe^he;Pe=x<<1|x>>>31;P=Pe+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ee^ve^pe^de;Ce=x<<1|x>>>31;P=Ce+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=xe^ke^ye^fe;Te=x<<1|x>>>31;P=Te+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Pe^Ae^ge^pe;Me=x<<1|x>>>31;P=Me+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ce^_e^me^ye;Ie=x<<1|x>>>31;P=Ie+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Te^Se^be^ge;De=x<<1|x>>>31;P=De+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Me^Ee^we^me;Be=x<<1|x>>>31;P=Be+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ie^xe^ve^be;Ue=x<<1|x>>>31;P=Ue+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=De^Pe^ke^we;Re=x<<1|x>>>31;P=Re+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Be^Ce^Ae^ve;Ke=x<<1|x>>>31;P=Ke+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;x=Ue^Te^_e^ke;Oe=x<<1|x>>>31;P=Oe+(k<<5|k>>>27)+E+(A^_^S)-0x359d3e2a|0;E=S;S=_;_=A<<30|A>>>2;A=k;k=P;n=n+k|0;i=i+A|0;a=a+_|0;s=s+S|0;o=o+E|0}function A(e){e=e|0;k(v[e|0]<<24|v[e|1]<<16|v[e|2]<<8|v[e|3],v[e|4]<<24|v[e|5]<<16|v[e|6]<<8|v[e|7],v[e|8]<<24|v[e|9]<<16|v[e|10]<<8|v[e|11],v[e|12]<<24|v[e|13]<<16|v[e|14]<<8|v[e|15],v[e|16]<<24|v[e|17]<<16|v[e|18]<<8|v[e|19],v[e|20]<<24|v[e|21]<<16|v[e|22]<<8|v[e|23],v[e|24]<<24|v[e|25]<<16|v[e|26]<<8|v[e|27],v[e|28]<<24|v[e|29]<<16|v[e|30]<<8|v[e|31],v[e|32]<<24|v[e|33]<<16|v[e|34]<<8|v[e|35],v[e|36]<<24|v[e|37]<<16|v[e|38]<<8|v[e|39],v[e|40]<<24|v[e|41]<<16|v[e|42]<<8|v[e|43],v[e|44]<<24|v[e|45]<<16|v[e|46]<<8|v[e|47],v[e|48]<<24|v[e|49]<<16|v[e|50]<<8|v[e|51],v[e|52]<<24|v[e|53]<<16|v[e|54]<<8|v[e|55],v[e|56]<<24|v[e|57]<<16|v[e|58]<<8|v[e|59],v[e|60]<<24|v[e|61]<<16|v[e|62]<<8|v[e|63])}function _(e){e=e|0;v[e|0]=n>>>24;v[e|1]=n>>>16&255;v[e|2]=n>>>8&255;v[e|3]=n&255;v[e|4]=i>>>24;v[e|5]=i>>>16&255;v[e|6]=i>>>8&255;v[e|7]=i&255;v[e|8]=a>>>24;v[e|9]=a>>>16&255;v[e|10]=a>>>8&255;v[e|11]=a&255;v[e|12]=s>>>24;v[e|13]=s>>>16&255;v[e|14]=s>>>8&255;v[e|15]=s&255;v[e|16]=o>>>24;v[e|17]=o>>>16&255;v[e|18]=o>>>8&255;v[e|19]=o&255}function S(){n=0x67452301;i=0xefcdab89;a=0x98badcfe;s=0x10325476;o=0xc3d2e1f0;c=u=0}function E(e,t,r,l,h,d,f){e=e|0;t=t|0;r=r|0;l=l|0;h=h|0;d=d|0;f=f|0;n=e;i=t;a=r;s=l;o=h;c=d;u=f}function x(e,t){e=e|0;t=t|0;var r=0;if(e&63)return-1;while((t|0)>=64){A(e);e=e+64|0;t=t-64|0;r=r+64|0}c=c+r|0;if(c>>>0>>0)u=u+1|0;return r|0}function P(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;if(e&63)return-1;if(~r)if(r&31)return-1;if((t|0)>=64){n=x(e,t)|0;if((n|0)==-1)return-1;e=e+n|0;t=t-n|0}n=n+t|0;c=c+t|0;if(c>>>0>>0)u=u+1|0;v[e|t]=0x80;if((t|0)>=56){for(i=t+1|0;(i|0)<64;i=i+1|0)v[e|i]=0x00;A(e);t=0;v[e|0]=0}for(i=t+1|0;(i|0)<59;i=i+1|0)v[e|i]=0;v[e|56]=u>>>21&255;v[e|57]=u>>>13&255;v[e|58]=u>>>5&255;v[e|59]=u<<3&255|c>>>29;v[e|60]=c>>>21&255;v[e|61]=c>>>13&255;v[e|62]=c>>>5&255;v[e|63]=c<<3&255;A(e);if(~r)_(r);return n|0}function C(){n=l;i=h;a=d;s=f;o=p;c=64;u=0}function T(){n=y;i=g;a=m;s=b;o=w;c=64;u=0}function M(e,t,r,v,A,_,E,x,P,C,T,M,I,D,B,U){e=e|0;t=t|0;r=r|0;v=v|0;A=A|0;_=_|0;E=E|0;x=x|0;P=P|0;C=C|0;T=T|0;M=M|0;I=I|0;D=D|0;B=B|0;U=U|0;S();k(e^0x5c5c5c5c,t^0x5c5c5c5c,r^0x5c5c5c5c,v^0x5c5c5c5c,A^0x5c5c5c5c,_^0x5c5c5c5c,E^0x5c5c5c5c,x^0x5c5c5c5c,P^0x5c5c5c5c,C^0x5c5c5c5c,T^0x5c5c5c5c,M^0x5c5c5c5c,I^0x5c5c5c5c,D^0x5c5c5c5c,B^0x5c5c5c5c,U^0x5c5c5c5c);y=n;g=i;m=a;b=s;w=o;S();k(e^0x36363636,t^0x36363636,r^0x36363636,v^0x36363636,A^0x36363636,_^0x36363636,E^0x36363636,x^0x36363636,P^0x36363636,C^0x36363636,T^0x36363636,M^0x36363636,I^0x36363636,D^0x36363636,B^0x36363636,U^0x36363636);l=n;h=i;d=a;f=s;p=o;c=64;u=0}function I(e,t,r){e=e|0;t=t|0;r=r|0;var c=0,u=0,l=0,h=0,d=0,f=0;if(e&63)return-1;if(~r)if(r&31)return-1;f=P(e,t,-1)|0;c=n,u=i,l=a,h=s,d=o;T();k(c,u,l,h,d,0x80000000,0,0,0,0,0,0,0,0,0,672);if(~r)_(r);return f|0}function D(e,t,r,c,u){e=e|0;t=t|0;r=r|0;c=c|0;u=u|0;var l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0;if(e&63)return-1;if(~u)if(u&31)return-1;v[e+t|0]=r>>>24;v[e+t+1|0]=r>>>16&255;v[e+t+2|0]=r>>>8&255;v[e+t+3|0]=r&255;I(e,t+4|0,-1)|0;l=y=n,h=g=i,d=m=a,f=b=s,p=w=o;c=c-1|0;while((c|0)>0){C();k(y,g,m,b,w,0x80000000,0,0,0,0,0,0,0,0,0,672);y=n,g=i,m=a,b=s,w=o;T();k(y,g,m,b,w,0x80000000,0,0,0,0,0,0,0,0,0,672);y=n,g=i,m=a,b=s,w=o;l=l^n;h=h^i;d=d^a;f=f^s;p=p^o;c=c-1|0}n=l;i=h;a=d;s=f;o=p;if(~u)_(u);return 0}return{reset:S,init:E,process:x,finish:P,hmac_reset:C,hmac_init:M,hmac_finish:I,pbkdf2_generate_block:D}};class Xe{constructor(){this.pos=0,this.len=0}reset(){const{asm:e}=this.acquire_asm();return this.result=null,this.pos=0,this.len=0,e.reset(),this}process(e){if(null!==this.result)throw new Ae("state must be reset before processing new data");const{asm:t,heap:r}=this.acquire_asm();let n=this.pos,i=this.len,a=0,s=e.length,o=0;for(;s>0;)o=ve(r,n+i,e,a,s),i+=o,a+=o,s-=o,o=t.process(n,i),n+=o,i-=o,i||(n=0);return this.pos=n,this.len=i,this}finish(){if(null!==this.result)throw new Ae("state must be reset before processing new data");const{asm:e,heap:t}=this.acquire_asm();return e.finish(this.pos,this.len,0),this.result=new Uint8Array(this.HASH_SIZE),this.result.set(t.subarray(0,this.HASH_SIZE)),this.pos=0,this.len=0,this.release_asm(),this}}const Qe=[],et=[];class tt extends Xe{constructor(){super(),this.NAME="sha1",this.BLOCK_SIZE=64,this.HASH_SIZE=20,this.acquire_asm()}acquire_asm(){return void 0!==this.heap&&void 0!==this.asm||(this.heap=Qe.pop()||we(),this.asm=et.pop()||Ye({Uint8Array},0,this.heap.buffer),this.reset()),{heap:this.heap,asm:this.asm}}release_asm(){void 0!==this.heap&&void 0!==this.asm&&(Qe.push(this.heap),et.push(this.asm)),this.heap=void 0,this.asm=void 0}static bytes(e){return(new tt).process(e).finish().result}}tt.NAME="sha1",tt.heap_pool=[],tt.asm_pool=[],tt.asm_function=Ye;const rt=[],nt=[];class it extends Xe{constructor(){super(),this.NAME="sha256",this.BLOCK_SIZE=64,this.HASH_SIZE=32,this.acquire_asm()}acquire_asm(){return void 0!==this.heap&&void 0!==this.asm||(this.heap=rt.pop()||we(),this.asm=nt.pop()||function(e,t,r){"use asm";var n=0,i=0,a=0,s=0,o=0,c=0,u=0,l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0,S=0,E=0,x=0,P=0,C=0,T=new e.Uint8Array(r);function M(e,t,r,h,d,f,p,y,g,m,b,w,v,k,A,_){e=e|0;t=t|0;r=r|0;h=h|0;d=d|0;f=f|0;p=p|0;y=y|0;g=g|0;m=m|0;b=b|0;w=w|0;v=v|0;k=k|0;A=A|0;_=_|0;var S=0,E=0,x=0,P=0,C=0,T=0,M=0,I=0;S=n;E=i;x=a;P=s;C=o;T=c;M=u;I=l;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x428a2f98|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x71374491|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0xb5c0fbcf|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0xe9b5dba5|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x3956c25b|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x59f111f1|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x923f82a4|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0xab1c5ed5|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0xd807aa98|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x12835b01|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x243185be|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x550c7dc3|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x72be5d74|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x80deb1fe|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x9bdc06a7|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0xc19bf174|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;e=(t>>>7^t>>>18^t>>>3^t<<25^t<<14)+(A>>>17^A>>>19^A>>>10^A<<15^A<<13)+e+m|0;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0xe49b69c1|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;t=(r>>>7^r>>>18^r>>>3^r<<25^r<<14)+(_>>>17^_>>>19^_>>>10^_<<15^_<<13)+t+b|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0xefbe4786|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;r=(h>>>7^h>>>18^h>>>3^h<<25^h<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+r+w|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x0fc19dc6|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;h=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(t>>>17^t>>>19^t>>>10^t<<15^t<<13)+h+v|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x240ca1cc|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;d=(f>>>7^f>>>18^f>>>3^f<<25^f<<14)+(r>>>17^r>>>19^r>>>10^r<<15^r<<13)+d+k|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x2de92c6f|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;f=(p>>>7^p>>>18^p>>>3^p<<25^p<<14)+(h>>>17^h>>>19^h>>>10^h<<15^h<<13)+f+A|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x4a7484aa|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;p=(y>>>7^y>>>18^y>>>3^y<<25^y<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+p+_|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x5cb0a9dc|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;y=(g>>>7^g>>>18^g>>>3^g<<25^g<<14)+(f>>>17^f>>>19^f>>>10^f<<15^f<<13)+y+e|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x76f988da|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;g=(m>>>7^m>>>18^m>>>3^m<<25^m<<14)+(p>>>17^p>>>19^p>>>10^p<<15^p<<13)+g+t|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x983e5152|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;m=(b>>>7^b>>>18^b>>>3^b<<25^b<<14)+(y>>>17^y>>>19^y>>>10^y<<15^y<<13)+m+r|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0xa831c66d|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;b=(w>>>7^w>>>18^w>>>3^w<<25^w<<14)+(g>>>17^g>>>19^g>>>10^g<<15^g<<13)+b+h|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0xb00327c8|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;w=(v>>>7^v>>>18^v>>>3^v<<25^v<<14)+(m>>>17^m>>>19^m>>>10^m<<15^m<<13)+w+d|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0xbf597fc7|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;v=(k>>>7^k>>>18^k>>>3^k<<25^k<<14)+(b>>>17^b>>>19^b>>>10^b<<15^b<<13)+v+f|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0xc6e00bf3|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;k=(A>>>7^A>>>18^A>>>3^A<<25^A<<14)+(w>>>17^w>>>19^w>>>10^w<<15^w<<13)+k+p|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0xd5a79147|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;A=(_>>>7^_>>>18^_>>>3^_<<25^_<<14)+(v>>>17^v>>>19^v>>>10^v<<15^v<<13)+A+y|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x06ca6351|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;_=(e>>>7^e>>>18^e>>>3^e<<25^e<<14)+(k>>>17^k>>>19^k>>>10^k<<15^k<<13)+_+g|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x14292967|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;e=(t>>>7^t>>>18^t>>>3^t<<25^t<<14)+(A>>>17^A>>>19^A>>>10^A<<15^A<<13)+e+m|0;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x27b70a85|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;t=(r>>>7^r>>>18^r>>>3^r<<25^r<<14)+(_>>>17^_>>>19^_>>>10^_<<15^_<<13)+t+b|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x2e1b2138|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;r=(h>>>7^h>>>18^h>>>3^h<<25^h<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+r+w|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x4d2c6dfc|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;h=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(t>>>17^t>>>19^t>>>10^t<<15^t<<13)+h+v|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x53380d13|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;d=(f>>>7^f>>>18^f>>>3^f<<25^f<<14)+(r>>>17^r>>>19^r>>>10^r<<15^r<<13)+d+k|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x650a7354|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;f=(p>>>7^p>>>18^p>>>3^p<<25^p<<14)+(h>>>17^h>>>19^h>>>10^h<<15^h<<13)+f+A|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x766a0abb|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;p=(y>>>7^y>>>18^y>>>3^y<<25^y<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+p+_|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x81c2c92e|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;y=(g>>>7^g>>>18^g>>>3^g<<25^g<<14)+(f>>>17^f>>>19^f>>>10^f<<15^f<<13)+y+e|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x92722c85|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;g=(m>>>7^m>>>18^m>>>3^m<<25^m<<14)+(p>>>17^p>>>19^p>>>10^p<<15^p<<13)+g+t|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0xa2bfe8a1|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;m=(b>>>7^b>>>18^b>>>3^b<<25^b<<14)+(y>>>17^y>>>19^y>>>10^y<<15^y<<13)+m+r|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0xa81a664b|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;b=(w>>>7^w>>>18^w>>>3^w<<25^w<<14)+(g>>>17^g>>>19^g>>>10^g<<15^g<<13)+b+h|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0xc24b8b70|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;w=(v>>>7^v>>>18^v>>>3^v<<25^v<<14)+(m>>>17^m>>>19^m>>>10^m<<15^m<<13)+w+d|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0xc76c51a3|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;v=(k>>>7^k>>>18^k>>>3^k<<25^k<<14)+(b>>>17^b>>>19^b>>>10^b<<15^b<<13)+v+f|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0xd192e819|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;k=(A>>>7^A>>>18^A>>>3^A<<25^A<<14)+(w>>>17^w>>>19^w>>>10^w<<15^w<<13)+k+p|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0xd6990624|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;A=(_>>>7^_>>>18^_>>>3^_<<25^_<<14)+(v>>>17^v>>>19^v>>>10^v<<15^v<<13)+A+y|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0xf40e3585|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;_=(e>>>7^e>>>18^e>>>3^e<<25^e<<14)+(k>>>17^k>>>19^k>>>10^k<<15^k<<13)+_+g|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x106aa070|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;e=(t>>>7^t>>>18^t>>>3^t<<25^t<<14)+(A>>>17^A>>>19^A>>>10^A<<15^A<<13)+e+m|0;I=e+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x19a4c116|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;t=(r>>>7^r>>>18^r>>>3^r<<25^r<<14)+(_>>>17^_>>>19^_>>>10^_<<15^_<<13)+t+b|0;M=t+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x1e376c08|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;r=(h>>>7^h>>>18^h>>>3^h<<25^h<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+r+w|0;T=r+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x2748774c|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;h=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(t>>>17^t>>>19^t>>>10^t<<15^t<<13)+h+v|0;C=h+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x34b0bcb5|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;d=(f>>>7^f>>>18^f>>>3^f<<25^f<<14)+(r>>>17^r>>>19^r>>>10^r<<15^r<<13)+d+k|0;P=d+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x391c0cb3|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;f=(p>>>7^p>>>18^p>>>3^p<<25^p<<14)+(h>>>17^h>>>19^h>>>10^h<<15^h<<13)+f+A|0;x=f+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0x4ed8aa4a|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;p=(y>>>7^y>>>18^y>>>3^y<<25^y<<14)+(d>>>17^d>>>19^d>>>10^d<<15^d<<13)+p+_|0;E=p+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0x5b9cca4f|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;y=(g>>>7^g>>>18^g>>>3^g<<25^g<<14)+(f>>>17^f>>>19^f>>>10^f<<15^f<<13)+y+e|0;S=y+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0x682e6ff3|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;g=(m>>>7^m>>>18^m>>>3^m<<25^m<<14)+(p>>>17^p>>>19^p>>>10^p<<15^p<<13)+g+t|0;I=g+I+(C>>>6^C>>>11^C>>>25^C<<26^C<<21^C<<7)+(M^C&(T^M))+0x748f82ee|0;P=P+I|0;I=I+(S&E^x&(S^E))+(S>>>2^S>>>13^S>>>22^S<<30^S<<19^S<<10)|0;m=(b>>>7^b>>>18^b>>>3^b<<25^b<<14)+(y>>>17^y>>>19^y>>>10^y<<15^y<<13)+m+r|0;M=m+M+(P>>>6^P>>>11^P>>>25^P<<26^P<<21^P<<7)+(T^P&(C^T))+0x78a5636f|0;x=x+M|0;M=M+(I&S^E&(I^S))+(I>>>2^I>>>13^I>>>22^I<<30^I<<19^I<<10)|0;b=(w>>>7^w>>>18^w>>>3^w<<25^w<<14)+(g>>>17^g>>>19^g>>>10^g<<15^g<<13)+b+h|0;T=b+T+(x>>>6^x>>>11^x>>>25^x<<26^x<<21^x<<7)+(C^x&(P^C))+0x84c87814|0;E=E+T|0;T=T+(M&I^S&(M^I))+(M>>>2^M>>>13^M>>>22^M<<30^M<<19^M<<10)|0;w=(v>>>7^v>>>18^v>>>3^v<<25^v<<14)+(m>>>17^m>>>19^m>>>10^m<<15^m<<13)+w+d|0;C=w+C+(E>>>6^E>>>11^E>>>25^E<<26^E<<21^E<<7)+(P^E&(x^P))+0x8cc70208|0;S=S+C|0;C=C+(T&M^I&(T^M))+(T>>>2^T>>>13^T>>>22^T<<30^T<<19^T<<10)|0;v=(k>>>7^k>>>18^k>>>3^k<<25^k<<14)+(b>>>17^b>>>19^b>>>10^b<<15^b<<13)+v+f|0;P=v+P+(S>>>6^S>>>11^S>>>25^S<<26^S<<21^S<<7)+(x^S&(E^x))+0x90befffa|0;I=I+P|0;P=P+(C&T^M&(C^T))+(C>>>2^C>>>13^C>>>22^C<<30^C<<19^C<<10)|0;k=(A>>>7^A>>>18^A>>>3^A<<25^A<<14)+(w>>>17^w>>>19^w>>>10^w<<15^w<<13)+k+p|0;x=k+x+(I>>>6^I>>>11^I>>>25^I<<26^I<<21^I<<7)+(E^I&(S^E))+0xa4506ceb|0;M=M+x|0;x=x+(P&C^T&(P^C))+(P>>>2^P>>>13^P>>>22^P<<30^P<<19^P<<10)|0;A=(_>>>7^_>>>18^_>>>3^_<<25^_<<14)+(v>>>17^v>>>19^v>>>10^v<<15^v<<13)+A+y|0;E=A+E+(M>>>6^M>>>11^M>>>25^M<<26^M<<21^M<<7)+(S^M&(I^S))+0xbef9a3f7|0;T=T+E|0;E=E+(x&P^C&(x^P))+(x>>>2^x>>>13^x>>>22^x<<30^x<<19^x<<10)|0;_=(e>>>7^e>>>18^e>>>3^e<<25^e<<14)+(k>>>17^k>>>19^k>>>10^k<<15^k<<13)+_+g|0;S=_+S+(T>>>6^T>>>11^T>>>25^T<<26^T<<21^T<<7)+(I^T&(M^I))+0xc67178f2|0;C=C+S|0;S=S+(E&x^P&(E^x))+(E>>>2^E>>>13^E>>>22^E<<30^E<<19^E<<10)|0;n=n+S|0;i=i+E|0;a=a+x|0;s=s+P|0;o=o+C|0;c=c+T|0;u=u+M|0;l=l+I|0}function I(e){e=e|0;M(T[e|0]<<24|T[e|1]<<16|T[e|2]<<8|T[e|3],T[e|4]<<24|T[e|5]<<16|T[e|6]<<8|T[e|7],T[e|8]<<24|T[e|9]<<16|T[e|10]<<8|T[e|11],T[e|12]<<24|T[e|13]<<16|T[e|14]<<8|T[e|15],T[e|16]<<24|T[e|17]<<16|T[e|18]<<8|T[e|19],T[e|20]<<24|T[e|21]<<16|T[e|22]<<8|T[e|23],T[e|24]<<24|T[e|25]<<16|T[e|26]<<8|T[e|27],T[e|28]<<24|T[e|29]<<16|T[e|30]<<8|T[e|31],T[e|32]<<24|T[e|33]<<16|T[e|34]<<8|T[e|35],T[e|36]<<24|T[e|37]<<16|T[e|38]<<8|T[e|39],T[e|40]<<24|T[e|41]<<16|T[e|42]<<8|T[e|43],T[e|44]<<24|T[e|45]<<16|T[e|46]<<8|T[e|47],T[e|48]<<24|T[e|49]<<16|T[e|50]<<8|T[e|51],T[e|52]<<24|T[e|53]<<16|T[e|54]<<8|T[e|55],T[e|56]<<24|T[e|57]<<16|T[e|58]<<8|T[e|59],T[e|60]<<24|T[e|61]<<16|T[e|62]<<8|T[e|63])}function D(e){e=e|0;T[e|0]=n>>>24;T[e|1]=n>>>16&255;T[e|2]=n>>>8&255;T[e|3]=n&255;T[e|4]=i>>>24;T[e|5]=i>>>16&255;T[e|6]=i>>>8&255;T[e|7]=i&255;T[e|8]=a>>>24;T[e|9]=a>>>16&255;T[e|10]=a>>>8&255;T[e|11]=a&255;T[e|12]=s>>>24;T[e|13]=s>>>16&255;T[e|14]=s>>>8&255;T[e|15]=s&255;T[e|16]=o>>>24;T[e|17]=o>>>16&255;T[e|18]=o>>>8&255;T[e|19]=o&255;T[e|20]=c>>>24;T[e|21]=c>>>16&255;T[e|22]=c>>>8&255;T[e|23]=c&255;T[e|24]=u>>>24;T[e|25]=u>>>16&255;T[e|26]=u>>>8&255;T[e|27]=u&255;T[e|28]=l>>>24;T[e|29]=l>>>16&255;T[e|30]=l>>>8&255;T[e|31]=l&255}function B(){n=0x6a09e667;i=0xbb67ae85;a=0x3c6ef372;s=0xa54ff53a;o=0x510e527f;c=0x9b05688c;u=0x1f83d9ab;l=0x5be0cd19;h=d=0}function U(e,t,r,f,p,y,g,m,b,w){e=e|0;t=t|0;r=r|0;f=f|0;p=p|0;y=y|0;g=g|0;m=m|0;b=b|0;w=w|0;n=e;i=t;a=r;s=f;o=p;c=y;u=g;l=m;h=b;d=w}function R(e,t){e=e|0;t=t|0;var r=0;if(e&63)return-1;while((t|0)>=64){I(e);e=e+64|0;t=t-64|0;r=r+64|0}h=h+r|0;if(h>>>0>>0)d=d+1|0;return r|0}function K(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,i=0;if(e&63)return-1;if(~r)if(r&31)return-1;if((t|0)>=64){n=R(e,t)|0;if((n|0)==-1)return-1;e=e+n|0;t=t-n|0}n=n+t|0;h=h+t|0;if(h>>>0>>0)d=d+1|0;T[e|t]=0x80;if((t|0)>=56){for(i=t+1|0;(i|0)<64;i=i+1|0)T[e|i]=0x00;I(e);t=0;T[e|0]=0}for(i=t+1|0;(i|0)<59;i=i+1|0)T[e|i]=0;T[e|56]=d>>>21&255;T[e|57]=d>>>13&255;T[e|58]=d>>>5&255;T[e|59]=d<<3&255|h>>>29;T[e|60]=h>>>21&255;T[e|61]=h>>>13&255;T[e|62]=h>>>5&255;T[e|63]=h<<3&255;I(e);if(~r)D(r);return n|0}function O(){n=f;i=p;a=y;s=g;o=m;c=b;u=w;l=v;h=64;d=0}function N(){n=k;i=A;a=_;s=S;o=E;c=x;u=P;l=C;h=64;d=0}function L(e,t,r,T,I,D,U,R,K,O,N,L,q,F,z,j){e=e|0;t=t|0;r=r|0;T=T|0;I=I|0;D=D|0;U=U|0;R=R|0;K=K|0;O=O|0;N=N|0;L=L|0;q=q|0;F=F|0;z=z|0;j=j|0;B();M(e^0x5c5c5c5c,t^0x5c5c5c5c,r^0x5c5c5c5c,T^0x5c5c5c5c,I^0x5c5c5c5c,D^0x5c5c5c5c,U^0x5c5c5c5c,R^0x5c5c5c5c,K^0x5c5c5c5c,O^0x5c5c5c5c,N^0x5c5c5c5c,L^0x5c5c5c5c,q^0x5c5c5c5c,F^0x5c5c5c5c,z^0x5c5c5c5c,j^0x5c5c5c5c);k=n;A=i;_=a;S=s;E=o;x=c;P=u;C=l;B();M(e^0x36363636,t^0x36363636,r^0x36363636,T^0x36363636,I^0x36363636,D^0x36363636,U^0x36363636,R^0x36363636,K^0x36363636,O^0x36363636,N^0x36363636,L^0x36363636,q^0x36363636,F^0x36363636,z^0x36363636,j^0x36363636);f=n;p=i;y=a;g=s;m=o;b=c;w=u;v=l;h=64;d=0}function q(e,t,r){e=e|0;t=t|0;r=r|0;var h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0;if(e&63)return-1;if(~r)if(r&31)return-1;w=K(e,t,-1)|0;h=n,d=i,f=a,p=s,y=o,g=c,m=u,b=l;N();M(h,d,f,p,y,g,m,b,0x80000000,0,0,0,0,0,0,768);if(~r)D(r);return w|0}function F(e,t,r,h,d){e=e|0;t=t|0;r=r|0;h=h|0;d=d|0;var f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0,S=0,E=0,x=0,P=0,C=0;if(e&63)return-1;if(~d)if(d&31)return-1;T[e+t|0]=r>>>24;T[e+t+1|0]=r>>>16&255;T[e+t+2|0]=r>>>8&255;T[e+t+3|0]=r&255;q(e,t+4|0,-1)|0;f=k=n,p=A=i,y=_=a,g=S=s,m=E=o,b=x=c,w=P=u,v=C=l;h=h-1|0;while((h|0)>0){O();M(k,A,_,S,E,x,P,C,0x80000000,0,0,0,0,0,0,768);k=n,A=i,_=a,S=s,E=o,x=c,P=u,C=l;N();M(k,A,_,S,E,x,P,C,0x80000000,0,0,0,0,0,0,768);k=n,A=i,_=a,S=s,E=o,x=c,P=u,C=l;f=f^n;p=p^i;y=y^a;g=g^s;m=m^o;b=b^c;w=w^u;v=v^l;h=h-1|0}n=f;i=p;a=y;s=g;o=m;c=b;u=w;l=v;if(~d)D(d);return 0}return{reset:B,init:U,process:R,finish:K,hmac_reset:O,hmac_init:L,hmac_finish:q,pbkdf2_generate_block:F}}({Uint8Array},0,this.heap.buffer),this.reset()),{heap:this.heap,asm:this.asm}}release_asm(){void 0!==this.heap&&void 0!==this.asm&&(rt.push(this.heap),nt.push(this.asm)),this.heap=void 0,this.asm=void 0}static bytes(e){return(new it).process(e).finish().result}}it.NAME="sha256";var at=st;function st(e,t){if(!e)throw new Error(t||"Assertion failed")}st.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)};var ot=void 0!==n?n:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ct(e,t){return e(t={exports:{}},t.exports),t.exports}function ut(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var lt=ct((function(e){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}));function ht(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function dt(e){return 1===e.length?"0"+e:e}function ft(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}var pt={inherits:lt,toArray:function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),n=0;n>8,s=255&i;a?r.push(a,s):r.push(s)}else for(n=0;n>>0}return a},split32:function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=a>>>16&255,r[i+2]=a>>>8&255,r[i+3]=255&a):(r[i+3]=a>>>24,r[i+2]=a>>>16&255,r[i+1]=a>>>8&255,r[i]=255&a)}return r},rotr32:function(e,t){return e>>>t|e<<32-t},rotl32:function(e,t){return e<>>32-t},sum32:function(e,t){return e+t>>>0},sum32_3:function(e,t,r){return e+t+r>>>0},sum32_4:function(e,t,r,n){return e+t+r+n>>>0},sum32_5:function(e,t,r,n,i){return e+t+r+n+i>>>0},sum64:function(e,t,r,n){var i=e[t],a=n+e[t+1]>>>0,s=(a>>0,e[t+1]=a},sum64_hi:function(e,t,r,n){return(t+n>>>0>>0},sum64_lo:function(e,t,r,n){return t+n>>>0},sum64_4_hi:function(e,t,r,n,i,a,s,o){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},sum64_4_lo:function(e,t,r,n,i,a,s,o){return t+n+a+o>>>0},sum64_5_hi:function(e,t,r,n,i,a,s,o,c,u){var l=0,h=t;return l+=(h=h+n>>>0)>>0)>>0)>>0)>>0},sum64_5_lo:function(e,t,r,n,i,a,s,o,c,u){return t+n+a+o+u>>>0},rotr64_hi:function(e,t,r){return(t<<32-r|e>>>r)>>>0},rotr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0},shr64_hi:function(e,t,r){return e>>>r},shr64_lo:function(e,t,r){return(e<<32-r|t>>>r)>>>0}};function yt(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}var gt=yt;yt.prototype.update=function(e,t){if(e=pt.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=pt.join32(e,0,e.length-r,this.endian);for(var n=0;n>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,a=8;a>>3},Ct=function(e){return bt(e,17)^bt(e,19)^e>>>10},Tt=pt.sum32,Mt=pt.sum32_4,It=pt.sum32_5,Dt=_t,Bt=St,Ut=Et,Rt=xt,Kt=Pt,Ot=Ct,Nt=mt.BlockHash,Lt=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function qt(){if(!(this instanceof qt))return new qt;Nt.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=Lt,this.W=new Array(64)}pt.inherits(qt,Nt);var Ft=qt;function zt(){if(!(this instanceof zt))return new zt;Ft.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}qt.blockSize=512,qt.outSize=256,qt.hmacStrength=192,qt.padLength=64,qt.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n>>32-i,r)}function Kr(e,t,r,n,i,a,s){return Rr(t&r|~t&n,e,t,i,a,s)}function Or(e,t,r,n,i,a,s){return Rr(t&n|r&~n,e,t,i,a,s)}function Nr(e,t,r,n,i,a,s){return Rr(t^r^n,e,t,i,a,s)}function Lr(e,t,r,n,i,a,s){return Rr(r^(t|~n),e,t,i,a,s)}function qr(e){const t=[];let r;for(r=0;r<64;r+=4)t[r>>2]=e.charCodeAt(r)+(e.charCodeAt(r+1)<<8)+(e.charCodeAt(r+2)<<16)+(e.charCodeAt(r+3)<<24);return t}const Fr="0123456789abcdef".split("");function zr(e){let t="",r=0;for(;r<4;r++)t+=Fr[e>>8*r+4&15]+Fr[e>>8*r&15];return t}function jr(e,t){return e+t&4294967295}const Hr=Z.getWebCrypto(),Wr=Z.getNodeCrypto(),Vr=Wr&&Wr.getHashes();function Gr(e){if(Wr&&Vr.includes(e))return async function(t){const r=Wr.createHash(e);return N(t,(e=>{r.update(e)}),(()=>new Uint8Array(r.digest())))}}function $r(e,t){return async function(r,n=se){if(u(r)&&(r=await W(r)),!Z.isStream(r)&&Hr&&t&&r.length>=n.minBytesForWebCrypto)return new Uint8Array(await Hr.digest(t,r));const i=e();return N(r,(e=>{i.update(e)}),(()=>new Uint8Array(i.digest())))}}function Jr(e,t){return async function(r,n=se){if(u(r)&&(r=await W(r)),Z.isStream(r)){const t=new e;return N(r,(e=>{t.process(e)}),(()=>t.finish().result))}return Hr&&t&&r.length>=n.minBytesForWebCrypto?new Uint8Array(await Hr.digest(t,r)):e.bytes(r)}}const Zr={md5:Gr("md5")||async function(e){const t=function(e){const t=e.length,r=[1732584193,-271733879,-1732584194,271733878];let n;for(n=64;n<=e.length;n+=64)Ur(r,qr(e.substring(n-64,n)));e=e.substring(n-64);const i=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(n=0;n>2]|=e.charCodeAt(n)<<(n%4<<3);if(i[n>>2]|=128<<(n%4<<3),n>55)for(Ur(r,i),n=0;n<16;n++)i[n]=0;return i[14]=8*t,Ur(r,i),r}(Z.uint8ArrayToString(e));return Z.hexToUint8Array(function(e){for(let t=0;tnew Uint8Array(a.update(e))))}(e,t,r,n);if("aes"===a.substr(0,3))return function(e,t,r,n,i){if(Z.getWebCrypto()&&24!==t.length&&!Z.isStream(r)&&r.length>=3e3*i.minBytesForWebCrypto)return async function(e,t,r,n){const i="AES-CBC",a=await en.importKey("raw",t,{name:i},!1,["encrypt"]),{blockSize:s}=Qr(e),o=Z.concatUint8Array([new Uint8Array(s),r]),c=new Uint8Array(await en.encrypt({name:i,iv:n},a,o)).subarray(0,r.length);return function(e,t){for(let r=0;ra.aes.AES_Encrypt_process(e)),(()=>a.aes.AES_Encrypt_finish()))}(e,t,r,n,i);const s=new(Qr(e))(t),o=s.blockSize,c=n.slice();let u=new Uint8Array;const l=e=>{e&&(u=Z.concatUint8Array([u,e]));const t=new Uint8Array(u.length);let r,n=0;for(;e?u.length>=o:u.length;){const e=s.encrypt(c);for(r=0;rnew Uint8Array(a.update(e))))}(e,t,r,n);if("aes"===i.substr(0,3))return function(e,t,r,n){if(Z.isStream(r)){const e=new Xr(t,n);return N(r,(t=>e.aes.AES_Decrypt_process(t)),(()=>e.aes.AES_Decrypt_finish()))}return Xr.decrypt(r,t,n)}(0,t,r,n);const a=new(Qr(e))(t),s=a.blockSize;let o=n,c=new Uint8Array;const u=e=>{e&&(c=Z.concatUint8Array([c,e]));const t=new Uint8Array(c.length);let r,n=0;for(;e?c.length>=s:c.length;){const e=a.encrypt(o);for(o=c,r=0;r48)throw new _e("illegal counter size");let e=Math.pow(2,r)-1;n.set_mask(0,0,e/4294967296|0,0|e)}else r=48,n.set_mask(0,0,65535,4294967295);if(void 0===e)throw new Error("nonce is required");{let t=e.length;if(!t||t>16)throw new _e("illegal nonce size");let r=new DataView(new ArrayBuffer(16));new Uint8Array(r.buffer).set(e),n.set_nonce(r.getUint32(0),r.getUint32(4),r.getUint32(8),r.getUint32(12))}if(void 0!==t){if(t<0||t>=Math.pow(2,r))throw new _e("illegal counter value");n.set_counter(0,0,t/4294967296|0,0|t)}}}class on{static encrypt(e,t,r=!0,n){return new on(t,n,r).encrypt(e)}static decrypt(e,t,r=!0,n){return new on(t,n,r).decrypt(e)}constructor(e,t,r=!0,n){this.aes=n||new Pe(e,t,r,"CBC")}encrypt(e){return ke(this.aes.AES_Encrypt_process(e),this.aes.AES_Encrypt_finish())}decrypt(e){return ke(this.aes.AES_Decrypt_process(e),this.aes.AES_Decrypt_finish())}}const cn=Z.getWebCrypto(),un=Z.getNodeCrypto(),ln=16;function hn(e,t){const r=e.length-ln;for(let n=0;n>3),17+(u>>3)),8-(7&u)).subarray(1),f=new Uint8Array(En),p=new Uint8Array(t.length+16);let y,g=0;for(y=0;y16)throw new _e("illegal tagSize value");const o=t.length||0,c=new Uint8Array(16);12!==o?(this._gcm_mac_process(t),s[0]=0,s[1]=0,s[2]=0,s[3]=0,s[4]=0,s[5]=0,s[6]=0,s[7]=0,s[8]=0,s[9]=0,s[10]=0,s[11]=o>>>29,s[12]=o>>>21&255,s[13]=o>>>13&255,s[14]=o>>>5&255,s[15]=o<<3&255,a.mac(me.MAC.GCM,me.HEAP_DATA,16),a.get_iv(me.HEAP_DATA),a.set_iv(0,0,0,0),c.set(s.subarray(0,16))):(c.set(t),c[15]=1);const u=new DataView(c.buffer);if(this.gamma0=u.getUint32(12),a.set_nonce(u.getUint32(0),u.getUint32(4),u.getUint32(8),0),a.set_mask(0,0,0,4294967295),void 0!==r){if(r.length>Dn)throw new _e("illegal adata length");r.length?(this.adata=r,this._gcm_mac_process(r)):this.adata=void 0}else this.adata=void 0;if(this.counter<1||this.counter>4294967295)throw new RangeError("counter must be a positive 32-bit integer");a.set_counter(0,0,0,this.gamma0+this.counter|0)}static encrypt(e,t,r,n,i){return new Bn(t,r,n,i).encrypt(e)}static decrypt(e,t,r,n,i){return new Bn(t,r,n,i).decrypt(e)}encrypt(e){return this.AES_GCM_encrypt(e)}decrypt(e){return this.AES_GCM_decrypt(e)}AES_GCM_Encrypt_process(e){let t=0,r=e.length||0,{asm:n,heap:i}=this.aes.acquire_asm(),a=this.counter,s=this.aes.pos,o=this.aes.len,c=0,u=o+r&-16,l=0;if((a-1<<4)+o+r>Dn)throw new RangeError("counter overflow");const h=new Uint8Array(u);for(;r>0;)l=ve(i,s+o,e,t,r),o+=l,t+=l,r-=l,l=n.cipher(me.ENC.CTR,me.HEAP_DATA+s,o),l=n.mac(me.MAC.GCM,me.HEAP_DATA+s,l),l&&h.set(i.subarray(s,s+l),c),a+=l>>>4,c+=l,l>>29,t[4]=u>>>21,t[5]=u>>>13&255,t[6]=u>>>5&255,t[7]=u<<3&255,t[8]=t[9]=t[10]=0,t[11]=l>>>29,t[12]=l>>>21&255,t[13]=l>>>13&255,t[14]=l>>>5&255,t[15]=l<<3&255,e.mac(me.MAC.GCM,me.HEAP_DATA,16),e.get_iv(me.HEAP_DATA),e.set_counter(0,0,0,this.gamma0),e.cipher(me.ENC.CTR,me.HEAP_DATA,16),o.set(t.subarray(0,n),s),this.counter=1,this.aes.pos=0,this.aes.len=0,o}AES_GCM_Decrypt_process(e){let t=0,r=e.length||0,{asm:n,heap:i}=this.aes.acquire_asm(),a=this.counter,s=this.tagSize,o=this.aes.pos,c=this.aes.len,u=0,l=c+r>s?c+r-s&-16:0,h=c+r-l,d=0;if((a-1<<4)+c+r>Dn)throw new RangeError("counter overflow");const f=new Uint8Array(l);for(;r>h;)d=ve(i,o+c,e,t,r-h),c+=d,t+=d,r-=d,d=n.mac(me.MAC.GCM,me.HEAP_DATA+o,d),d=n.cipher(me.DEC.CTR,me.HEAP_DATA+o,d),d&&f.set(i.subarray(o,o+d),u),a+=d>>>4,u+=d,o=0,c=0;return r>0&&(c+=ve(i,0,e,t,r)),this.counter=a,this.aes.pos=o,this.aes.len=c,f}AES_GCM_Decrypt_finish(){let{asm:e,heap:t}=this.aes.acquire_asm(),r=this.tagSize,n=this.adata,i=this.counter,a=this.aes.pos,s=this.aes.len,o=s-r;if(s>>29,t[4]=h>>>21,t[5]=h>>>13&255,t[6]=h>>>5&255,t[7]=h<<3&255,t[8]=t[9]=t[10]=0,t[11]=d>>>29,t[12]=d>>>21&255,t[13]=d>>>13&255,t[14]=d>>>5&255,t[15]=d<<3&255,e.mac(me.MAC.GCM,me.HEAP_DATA,16),e.get_iv(me.HEAP_DATA),e.set_counter(0,0,0,this.gamma0),e.cipher(me.ENC.CTR,me.HEAP_DATA,16);let f=0;for(let e=0;e0;){for(a=ve(r,0,e,n,i),n+=a,i-=a;15&a;)r[a++]=0;t.mac(me.MAC.GCM,me.HEAP_DATA,a)}}}const Un=Z.getWebCrypto(),Rn=Z.getNodeCrypto(),Kn=Z.getNodeBuffer(),On="AES-GCM";async function Nn(e,t){if(e!==ae.symmetric.aes128&&e!==ae.symmetric.aes192&&e!==ae.symmetric.aes256)throw new Error("GCM mode supports only AES cipher");if(Z.getWebCrypto()&&24!==t.length){const e=await Un.importKey("raw",t,{name:On},!1,["encrypt","decrypt"]);return{encrypt:async function(r,n,i=new Uint8Array){if(!r.length)return Bn.encrypt(r,t,n,i);const a=await Un.encrypt({name:On,iv:n,additionalData:i,tagLength:128},e,r);return new Uint8Array(a)},decrypt:async function(r,n,i=new Uint8Array){if(16===r.length)return Bn.decrypt(r,t,n,i);const a=await Un.decrypt({name:On,iv:n,additionalData:i,tagLength:128},e,r);return new Uint8Array(a)}}}return Z.getNodeCrypto()?{encrypt:async function(e,r,n=new Uint8Array){const i=new Rn.createCipheriv("aes-"+8*t.length+"-gcm",t,r);i.setAAD(n);const a=Kn.concat([i.update(e),i.final(),i.getAuthTag()]);return new Uint8Array(a)},decrypt:async function(e,r,n=new Uint8Array){const i=new Rn.createDecipheriv("aes-"+8*t.length+"-gcm",t,r);i.setAAD(n),i.setAuthTag(e.slice(e.length-16,e.length));const a=Kn.concat([i.update(e.slice(0,e.length-16)),i.final()]);return new Uint8Array(a)}}:{encrypt:async function(e,r,n){return Bn.encrypt(e,t,r,n)},decrypt:async function(e,r,n){return Bn.decrypt(e,t,r,n)}}}Nn.getNonce=function(e,t){const r=e.slice();for(let e=0;e>>8)-1}(e,t,r,n)}function f(e,t){var r;for(r=0;r<16;r++)e[r]=0|t[r]}function p(e){var t,r,n=1;for(t=0;t<16;t++)r=e[t]+n+65535,n=Math.floor(r/65536),e[t]=r-65536*n;e[0]+=n-1+37*(n-1)}function y(e,t,r){for(var n,i=~(r-1),a=0;a<16;a++)n=i&(e[a]^t[a]),e[a]^=n,t[a]^=n}function g(e,r){var n,i,a,s=t(),o=t();for(n=0;n<16;n++)o[n]=r[n];for(p(o),p(o),p(o),i=0;i<2;i++){for(s[0]=o[0]-65517,n=1;n<15;n++)s[n]=o[n]-65535-(s[n-1]>>16&1),s[n-1]&=65535;s[15]=o[15]-32767-(s[14]>>16&1),a=s[15]>>16&1,s[14]&=65535,y(o,s,1-a)}for(n=0;n<16;n++)e[2*n]=255&o[n],e[2*n+1]=o[n]>>8}function m(e,t){var r=new Uint8Array(32),n=new Uint8Array(32);return g(r,e),g(n,t),d(r,0,n,0)}function b(e){var t=new Uint8Array(32);return g(t,e),1&t[0]}function w(e,t){var r;for(r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}function v(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function k(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function A(e,t,r){var n,i,a=0,s=0,o=0,c=0,u=0,l=0,h=0,d=0,f=0,p=0,y=0,g=0,m=0,b=0,w=0,v=0,k=0,A=0,_=0,S=0,E=0,x=0,P=0,C=0,T=0,M=0,I=0,D=0,B=0,U=0,R=0,K=r[0],O=r[1],N=r[2],L=r[3],q=r[4],F=r[5],z=r[6],j=r[7],H=r[8],W=r[9],V=r[10],G=r[11],$=r[12],J=r[13],Z=r[14],Y=r[15];a+=(n=t[0])*K,s+=n*O,o+=n*N,c+=n*L,u+=n*q,l+=n*F,h+=n*z,d+=n*j,f+=n*H,p+=n*W,y+=n*V,g+=n*G,m+=n*$,b+=n*J,w+=n*Z,v+=n*Y,s+=(n=t[1])*K,o+=n*O,c+=n*N,u+=n*L,l+=n*q,h+=n*F,d+=n*z,f+=n*j,p+=n*H,y+=n*W,g+=n*V,m+=n*G,b+=n*$,w+=n*J,v+=n*Z,k+=n*Y,o+=(n=t[2])*K,c+=n*O,u+=n*N,l+=n*L,h+=n*q,d+=n*F,f+=n*z,p+=n*j,y+=n*H,g+=n*W,m+=n*V,b+=n*G,w+=n*$,v+=n*J,k+=n*Z,A+=n*Y,c+=(n=t[3])*K,u+=n*O,l+=n*N,h+=n*L,d+=n*q,f+=n*F,p+=n*z,y+=n*j,g+=n*H,m+=n*W,b+=n*V,w+=n*G,v+=n*$,k+=n*J,A+=n*Z,_+=n*Y,u+=(n=t[4])*K,l+=n*O,h+=n*N,d+=n*L,f+=n*q,p+=n*F,y+=n*z,g+=n*j,m+=n*H,b+=n*W,w+=n*V,v+=n*G,k+=n*$,A+=n*J,_+=n*Z,S+=n*Y,l+=(n=t[5])*K,h+=n*O,d+=n*N,f+=n*L,p+=n*q,y+=n*F,g+=n*z,m+=n*j,b+=n*H,w+=n*W,v+=n*V,k+=n*G,A+=n*$,_+=n*J,S+=n*Z,E+=n*Y,h+=(n=t[6])*K,d+=n*O,f+=n*N,p+=n*L,y+=n*q,g+=n*F,m+=n*z,b+=n*j,w+=n*H,v+=n*W,k+=n*V,A+=n*G,_+=n*$,S+=n*J,E+=n*Z,x+=n*Y,d+=(n=t[7])*K,f+=n*O,p+=n*N,y+=n*L,g+=n*q,m+=n*F,b+=n*z,w+=n*j,v+=n*H,k+=n*W,A+=n*V,_+=n*G,S+=n*$,E+=n*J,x+=n*Z,P+=n*Y,f+=(n=t[8])*K,p+=n*O,y+=n*N,g+=n*L,m+=n*q,b+=n*F,w+=n*z,v+=n*j,k+=n*H,A+=n*W,_+=n*V,S+=n*G,E+=n*$,x+=n*J,P+=n*Z,C+=n*Y,p+=(n=t[9])*K,y+=n*O,g+=n*N,m+=n*L,b+=n*q,w+=n*F,v+=n*z,k+=n*j,A+=n*H,_+=n*W,S+=n*V,E+=n*G,x+=n*$,P+=n*J,C+=n*Z,T+=n*Y,y+=(n=t[10])*K,g+=n*O,m+=n*N,b+=n*L,w+=n*q,v+=n*F,k+=n*z,A+=n*j,_+=n*H,S+=n*W,E+=n*V,x+=n*G,P+=n*$,C+=n*J,T+=n*Z,M+=n*Y,g+=(n=t[11])*K,m+=n*O,b+=n*N,w+=n*L,v+=n*q,k+=n*F,A+=n*z,_+=n*j,S+=n*H,E+=n*W,x+=n*V,P+=n*G,C+=n*$,T+=n*J,M+=n*Z,I+=n*Y,m+=(n=t[12])*K,b+=n*O,w+=n*N,v+=n*L,k+=n*q,A+=n*F,_+=n*z,S+=n*j,E+=n*H,x+=n*W,P+=n*V,C+=n*G,T+=n*$,M+=n*J,I+=n*Z,D+=n*Y,b+=(n=t[13])*K,w+=n*O,v+=n*N,k+=n*L,A+=n*q,_+=n*F,S+=n*z,E+=n*j,x+=n*H,P+=n*W,C+=n*V,T+=n*G,M+=n*$,I+=n*J,D+=n*Z,B+=n*Y,w+=(n=t[14])*K,v+=n*O,k+=n*N,A+=n*L,_+=n*q,S+=n*F,E+=n*z,x+=n*j,P+=n*H,C+=n*W,T+=n*V,M+=n*G,I+=n*$,D+=n*J,B+=n*Z,U+=n*Y,v+=(n=t[15])*K,s+=38*(A+=n*N),o+=38*(_+=n*L),c+=38*(S+=n*q),u+=38*(E+=n*F),l+=38*(x+=n*z),h+=38*(P+=n*j),d+=38*(C+=n*H),f+=38*(T+=n*W),p+=38*(M+=n*V),y+=38*(I+=n*G),g+=38*(D+=n*$),m+=38*(B+=n*J),b+=38*(U+=n*Z),w+=38*(R+=n*Y),a=(n=(a+=38*(k+=n*O))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=(a+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),a+=i-1+37*(i-1),e[0]=a,e[1]=s,e[2]=o,e[3]=c,e[4]=u,e[5]=l,e[6]=h,e[7]=d,e[8]=f,e[9]=p,e[10]=y,e[11]=g,e[12]=m,e[13]=b,e[14]=w,e[15]=v}function _(e,t){A(e,t,t)}function S(e,r){var n,i=t();for(n=0;n<16;n++)i[n]=r[n];for(n=253;n>=0;n--)_(i,i),2!==n&&4!==n&&A(i,i,r);for(n=0;n<16;n++)e[n]=i[n]}function E(e,r,n){var i,a,o=new Uint8Array(32),c=new Float64Array(80),u=t(),l=t(),h=t(),d=t(),f=t(),p=t();for(a=0;a<31;a++)o[a]=r[a];for(o[31]=127&r[31]|64,o[0]&=248,w(c,n),a=0;a<16;a++)l[a]=c[a],d[a]=u[a]=h[a]=0;for(u[0]=d[0]=1,a=254;a>=0;--a)y(u,l,i=o[a>>>3]>>>(7&a)&1),y(h,d,i),v(f,u,h),k(u,u,h),v(h,l,d),k(l,l,d),_(d,f),_(p,u),A(u,h,u),A(h,l,f),v(f,u,h),k(u,u,h),_(l,u),k(h,d,p),A(u,h,s),v(u,u,d),A(h,h,u),A(u,d,p),A(d,l,c),_(l,f),y(u,l,i),y(h,d,i);for(a=0;a<16;a++)c[a+16]=u[a],c[a+32]=h[a],c[a+48]=l[a],c[a+64]=d[a];var m=c.subarray(32),b=c.subarray(16);return S(m,m),A(b,b,m),g(e,b),0}function x(e,t){return E(e,t,n)}function P(e,r){var n=t(),i=t(),a=t(),s=t(),o=t(),u=t(),l=t(),h=t(),d=t();k(n,e[1],e[0]),k(d,r[1],r[0]),A(n,n,d),v(i,e[0],e[1]),v(d,r[0],r[1]),A(i,i,d),A(a,e[3],r[3]),A(a,a,c),A(s,e[2],r[2]),v(s,s,s),k(o,i,n),k(u,s,a),v(l,s,a),v(h,i,n),A(e[0],o,u),A(e[1],h,l),A(e[2],l,u),A(e[3],o,h)}function C(e,t,r){var n;for(n=0;n<4;n++)y(e[n],t[n],r)}function T(e,r){var n=t(),i=t(),a=t();S(a,r[2]),A(n,r[0],a),A(i,r[1],a),g(e,i),e[31]^=b(n)<<7}function M(e,t,r){var n,s;for(f(e[0],i),f(e[1],a),f(e[2],a),f(e[3],i),s=255;s>=0;--s)C(e,t,n=r[s/8|0]>>(7&s)&1),P(t,e),P(e,e),C(e,t,n)}function I(e,r){var n=[t(),t(),t(),t()];f(n[0],u),f(n[1],l),f(n[2],a),A(n[3],u,l),M(e,n,r)}function D(n,i,a){var s,o,c=[t(),t(),t(),t()];for(a||r(i,32),(s=e.hash(i.subarray(0,32)))[0]&=248,s[31]&=127,s[31]|=64,I(c,s),T(n,c),o=0;o<32;o++)i[o+32]=n[o];return 0}var B=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function U(e,t){var r,n,i,a;for(n=63;n>=32;--n){for(r=0,i=n-32,a=n-12;i>4)*B[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*B[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function R(e){var t,r=new Float64Array(64);for(t=0;t<64;t++)r[t]=e[t];for(t=0;t<64;t++)e[t]=0;U(e,r)}var K=64;function O(){for(var e=0;e=0;n--)_(i,i),1!==n&&A(i,i,r);for(n=0;n<16;n++)e[n]=i[n]}(n,n),A(n,n,c),A(n,n,u),A(n,n,u),A(e[0],n,u),_(s,e[0]),A(s,s,u),m(s,c)&&A(e[0],e[0],h),_(s,e[0]),A(s,s,u),m(s,c)?-1:(b(e[0])===r[31]>>7&&k(e[0],i,e[0]),A(e[3],e[0],e[1]),0)}(g,c))return-1;for(u=0;u=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return D(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(O(e),64!==e.length)throw new Error("bad secret key size");for(var t=new Uint8Array(32),r=0;re&&(c.imod(a.leftShift(i)).iadd(a),u=c.mod(s).toNumber())}while(!await Vn(c,t,r));return c}async function Vn(e,t,r){return!(t&&!e.dec().gcd(t).isOne()||!await async function(e){const t=await Z.getBigInteger();return Gn.every((r=>0!==e.mod(new t(r))))}(e)||!await async function(e,t){const r=await Z.getBigInteger();return(t=t||new r(2)).modExp(e.dec(),e).isOne()}(e)||!await async function(e,t,r){const n=await Z.getBigInteger(),i=e.bitLength();t||(t=Math.max(1,i/48|0));const a=e.dec();let s=0;for(;!a.getBit(s);)s++;const o=e.rightShift(new n(s));for(;t>0;t--){let t,r=(await jn(new n(2),a)).modExp(o,e);if(!r.isOne()&&!r.equal(a)){for(t=1;tt-11)throw new Error("Message too long");const n=function(e){const t=new Uint8Array(e);let r=0;for(;r=8&!n;if(t)return Z.selectUint8Array(s,a,t);if(s)return a;throw new Error("Decryption error")}async function Yn(e,t,r){let n;if(t.length!==Yr.getHashByteLength(e))throw new Error("Invalid hash length");const i=new Uint8Array($n[e].length);for(n=0;n<$n[e].length;n++)i[n]=$n[e][n];const a=i.length+t.length;if(r{ei.generateKeyPair("rsa",r,((r,n,i)=>{r?t(r):e(ri.decode(i,"der"))}))}));return{n:n.modulus.toArrayLike(Uint8Array),e:n.publicExponent.toArrayLike(Uint8Array),d:n.privateExponent.toArrayLike(Uint8Array),p:n.prime2.toArrayLike(Uint8Array),q:n.prime1.toArrayLike(Uint8Array),u:n.coefficient.toArrayLike(Uint8Array)}}let r,n,i;do{n=await Wn(e-(e>>1),t,40),r=await Wn(e>>1,t,40),i=r.mul(n)}while(i.bitLength()!==e);const a=r.dec().imul(n.dec());return n.lt(r)&&([r,n]=[n,r]),{n:i.toUint8Array(),e:t.toUint8Array(),d:t.modInv(a).toUint8Array(),p:r.toUint8Array(),q:n.toUint8Array(),u:r.modInv(n).toUint8Array()}},validateParams:async function(e,t,r,n,i,a){const s=await Z.getBigInteger();if(e=new s(e),n=new s(n),i=new s(i),!n.mul(i).equal(e))return!1;const o=new s(2);if(a=new s(a),!n.mul(a).mod(i).isOne())return!1;t=new s(t),r=new s(r);const c=new s(Math.floor(e.bitLength()/3)),u=await jn(o,o.leftShift(c)),l=u.mul(r).mul(t);return!(!l.mod(n.dec()).equal(u)||!l.mod(i.dec()).equal(u))}}),ai=Object.freeze({__proto__:null,encrypt:async function(e,t,r,n){const i=await Z.getBigInteger();t=new i(t),r=new i(r),n=new i(n);const a=new i(Jn(e,t.byteLength())),s=await jn(new i(1),t.dec());return{c1:r.modExp(s,t).toUint8Array(),c2:n.modExp(s,t).imul(a).imod(t).toUint8Array()}},decrypt:async function(e,t,r,n,i){const a=await Z.getBigInteger();return e=new a(e),t=new a(t),r=new a(r),n=new a(n),Zn(e.modExp(n,r).modInv(r).imul(t).imod(r).toUint8Array("be",r.byteLength()),i)},validateParams:async function(e,t,r,n){const i=await Z.getBigInteger();e=new i(e),t=new i(t),r=new i(r);const a=new i(1);if(t.lte(a)||t.gte(e))return!1;const s=new i(e.bitLength()),o=new i(1023);if(s.lt(o))return!1;if(!t.modExp(e.dec(),e).isOne())return!1;let c=t;const u=new i(1),l=new i(2).leftShift(new i(17));for(;u.lt(l);){if(c=c.mul(t).imod(e),c.isOne())return!1;u.iinc()}n=new i(n);const h=new i(2),d=await jn(h.leftShift(s.dec()),h.leftShift(s)),f=e.dec().imul(d).iadd(n);return!!r.equal(t.modExp(f,e))}});class si{constructor(e){if(e instanceof si)this.oid=e.oid;else if(Z.isArray(e)||Z.isUint8Array(e)){if(6===(e=new Uint8Array(e))[0]){if(e[1]!==e.length-2)throw new Error("Length mismatch in DER encoded oid");e=e.subarray(2)}this.oid=e}else this.oid=""}read(e){if(e.length>=1){const t=e[0];if(e.length>=1+t)return this.oid=e.subarray(1,1+t),1+this.oid.length}throw new Error("Invalid oid")}write(){return Z.concatUint8Array([new Uint8Array([this.oid.length]),this.oid])}toHex(){return Z.uint8ArrayToHex(this.oid)}getName(){const e=this.toHex();if(ae.curve[e])return ae.write(ae.curve,e);throw new Error("Unknown curve object identifier.")}}function oi(e,t){return e.keyPair({priv:t})}function ci(e,t){const r=e.keyPair({pub:t});if(!0!==r.validate().result)throw new Error("Invalid elliptic public key");return r}async function ui(e){if(!se.useIndutnyElliptic)throw new Error("This curve is only supported in the full build of OpenPGP.js");const{default:t}=await Promise.resolve().then((function(){return hy}));return new t.ec(e)}function li(e){let t,r=0;const n=e[0];return n<192?([r]=e,t=1):n<255?(r=(e[0]-192<<8)+e[1]+192,t=2):255===n&&(r=Z.readNumber(e.subarray(1,5)),t=5),{len:r,offset:t}}function hi(e){return e<192?new Uint8Array([e]):e>191&&e<8384?new Uint8Array([192+(e-192>>8),e-192&255]):Z.concatUint8Array([new Uint8Array([255]),Z.writeNumber(e,4)])}function di(e){if(e<0||e>30)throw new Error("Partial Length power must be between 1 and 30");return new Uint8Array([224+e])}function fi(e){return new Uint8Array([192|e])}function pi(e,t){return Z.concatUint8Array([fi(e),hi(t)])}function yi(e){return[ae.packet.literalData,ae.packet.compressedData,ae.packet.symmetricallyEncryptedData,ae.packet.symEncryptedIntegrityProtectedData,ae.packet.aeadEncryptedData].includes(e)}async function gi(e,t){const r=B(e);let n,i;try{const a=await r.peekBytes(2);if(!a||a.length<2||0==(128&a[0]))throw new Error("Error during parsing. This message / key probably does not conform to a valid OpenPGP format.");const s=await r.readByte();let o,u,l=-1,h=-1;h=0,0!=(64&s)&&(h=1),h?l=63&s:(l=(63&s)>>2,u=3&s);const d=yi(l);let f,p=null;if(d){if("array"===Z.isStream(e)){const e=new c;n=U(e),p=e}else{const e=new P;n=U(e.writable),p=e.readable}i=t({tag:l,packet:p})}else p=[];do{if(h){const e=await r.readByte();if(f=!1,e<192)o=e;else if(e>=192&&e<224)o=(e-192<<8)+await r.readByte()+192;else if(e>223&&e<255){if(o=1<<(31&e),f=!0,!d)throw new TypeError("This packet type does not support partial lengths.")}else o=await r.readByte()<<24|await r.readByte()<<16|await r.readByte()<<8|await r.readByte()}else switch(u){case 0:o=await r.readByte();break;case 1:o=await r.readByte()<<8|await r.readByte();break;case 2:o=await r.readByte()<<24|await r.readByte()<<16|await r.readByte()<<8|await r.readByte();break;default:o=1/0}if(o>0){let e=0;for(;;){n&&await n.ready;const{done:t,value:i}=await r.read();if(t){if(o===1/0)break;throw new Error("Unexpected end of packet")}const a=o===1/0?i:i.subarray(0,o-e);if(n?await n.write(a):p.push(a),e+=i.length,e>=o){r.unshift(i.subarray(o-e+i.length));break}}}}while(f);const y=await r.peekBytes(d?1/0:2);return n?(await n.ready,await n.close()):(p=Z.concatUint8Array(p),await t({tag:l,packet:p})),!y||!y.length}catch(e){if(n)return await n.abort(e),!0;throw e}finally{n&&await i,r.releaseLock()}}class mi extends Error{constructor(...e){super(...e),Error.captureStackTrace&&Error.captureStackTrace(this,mi),this.name="UnsupportedError"}}class bi{constructor(e,t){this.tag=e,this.rawContent=t}write(){return this.rawContent}}const wi=Z.getWebCrypto(),vi=Z.getNodeCrypto(),ki={p256:"P-256",p384:"P-384",p521:"P-521"},Ai=vi?vi.getCurves():[],_i=vi?{secp256k1:Ai.includes("secp256k1")?"secp256k1":void 0,p256:Ai.includes("prime256v1")?"prime256v1":void 0,p384:Ai.includes("secp384r1")?"secp384r1":void 0,p521:Ai.includes("secp521r1")?"secp521r1":void 0,ed25519:Ai.includes("ED25519")?"ED25519":void 0,curve25519:Ai.includes("X25519")?"X25519":void 0,brainpoolP256r1:Ai.includes("brainpoolP256r1")?"brainpoolP256r1":void 0,brainpoolP384r1:Ai.includes("brainpoolP384r1")?"brainpoolP384r1":void 0,brainpoolP512r1:Ai.includes("brainpoolP512r1")?"brainpoolP512r1":void 0}:{},Si={p256:{oid:[6,8,42,134,72,206,61,3,1,7],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:_i.p256,web:ki.p256,payloadSize:32,sharedSize:256},p384:{oid:[6,5,43,129,4,0,34],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha384,cipher:ae.symmetric.aes192,node:_i.p384,web:ki.p384,payloadSize:48,sharedSize:384},p521:{oid:[6,5,43,129,4,0,35],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha512,cipher:ae.symmetric.aes256,node:_i.p521,web:ki.p521,payloadSize:66,sharedSize:528},secp256k1:{oid:[6,5,43,129,4,0,10],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:_i.secp256k1,payloadSize:32},ed25519:{oid:[6,9,43,6,1,4,1,218,71,15,1],keyType:ae.publicKey.eddsa,hash:ae.hash.sha512,node:!1,payloadSize:32},curve25519:{oid:[6,10,43,6,1,4,1,151,85,1,5,1],keyType:ae.publicKey.ecdh,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:!1,payloadSize:32},brainpoolP256r1:{oid:[6,9,43,36,3,3,2,8,1,1,7],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha256,cipher:ae.symmetric.aes128,node:_i.brainpoolP256r1,payloadSize:32},brainpoolP384r1:{oid:[6,9,43,36,3,3,2,8,1,1,11],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha384,cipher:ae.symmetric.aes192,node:_i.brainpoolP384r1,payloadSize:48},brainpoolP512r1:{oid:[6,9,43,36,3,3,2,8,1,1,13],keyType:ae.publicKey.ecdsa,hash:ae.hash.sha512,cipher:ae.symmetric.aes256,node:_i.brainpoolP512r1,payloadSize:64}};class Ei{constructor(e,t){try{(Z.isArray(e)||Z.isUint8Array(e))&&(e=new si(e)),e instanceof si&&(e=e.getName()),this.name=ae.write(ae.curve,e)}catch(e){throw new mi("Unknown curve")}t=t||Si[this.name],this.keyType=t.keyType,this.oid=t.oid,this.hash=t.hash,this.cipher=t.cipher,this.node=t.node&&Si[this.name],this.web=t.web&&Si[this.name],this.payloadSize=t.payloadSize,this.web&&Z.getWebCrypto()?this.type="web":this.node&&Z.getNodeCrypto()?this.type="node":"curve25519"===this.name?this.type="curve25519":"ed25519"===this.name&&(this.type="ed25519")}async genKeyPair(){let e;switch(this.type){case"web":try{return await async function(e){const t=await wi.generateKey({name:"ECDSA",namedCurve:ki[e]},!0,["sign","verify"]),r=await wi.exportKey("jwk",t.privateKey);return{publicKey:Pi(await wi.exportKey("jwk",t.publicKey)),privateKey:re(r.d)}}(this.name)}catch(e){Z.printDebugError("Browser did not support generating ec key "+e.message);break}case"node":return async function(e){const t=vi.createECDH(_i[e]);return await t.generateKeys(),{publicKey:new Uint8Array(t.getPublicKey()),privateKey:new Uint8Array(t.getPrivateKey())}}(this.name);case"curve25519":{const t=zn(32);t[0]=127&t[0]|64,t[31]&=248;const r=t.slice().reverse();return e=qn.box.keyPair.fromSecretKey(r),{publicKey:Z.concatUint8Array([new Uint8Array([64]),e.publicKey]),privateKey:t}}case"ed25519":{const e=zn(32),t=qn.sign.keyPair.fromSeed(e);return{publicKey:Z.concatUint8Array([new Uint8Array([64]),t.publicKey]),privateKey:e}}}const t=await ui(this.name);return e=await t.genKeyPair({entropy:Z.uint8ArrayToString(zn(32))}),{publicKey:new Uint8Array(e.getPublic("array",!1)),privateKey:e.getPrivate().toArrayLike(Uint8Array)}}}async function xi(e,t,r,n){const i={p256:!0,p384:!0,p521:!0,secp256k1:!0,curve25519:e===ae.publicKey.ecdh,brainpoolP256r1:!0,brainpoolP384r1:!0,brainpoolP512r1:!0},a=t.getName();if(!i[a])return!1;if("curve25519"===a){n=n.slice().reverse();const{publicKey:e}=qn.box.keyPair.fromSecretKey(n);r=new Uint8Array(r);const t=new Uint8Array([64,...e]);return!!Z.equalsUint8Array(t,r)}const s=await ui(a);try{r=ci(s,r).getPublic()}catch(e){return!1}return!!oi(s,n).getPublic().eq(r)}function Pi(e){const t=re(e.x),r=re(e.y),n=new Uint8Array(t.length+r.length+1);return n[0]=4,n.set(t,1),n.set(r,t.length+1),n}function Ci(e,t,r){const n=e,i=r.slice(1,n+1),a=r.slice(n+1,2*n+1);return{kty:"EC",crv:t,x:ne(i,!0),y:ne(a,!0),ext:!0}}function Ti(e,t,r,n){const i=Ci(e,t,r);return i.d=ne(n,!0),i}const Mi=Z.getWebCrypto(),Ii=Z.getNodeCrypto();async function Di(e,t,r,n,i,a){const s=new Ei(e);if(r&&!Z.isStream(r)){const e={publicKey:n,privateKey:i};switch(s.type){case"web":try{return await async function(e,t,r,n){const i=e.payloadSize,a=Ti(e.payloadSize,ki[e.name],n.publicKey,n.privateKey),s=await Mi.importKey("jwk",a,{name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,e.hash)}},!1,["sign"]),o=new Uint8Array(await Mi.sign({name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,t)}},s,r));return{r:o.slice(0,i),s:o.slice(i,i<<1)}}(s,t,r,e)}catch(e){if("p521"!==s.name&&("DataError"===e.name||"OperationError"===e.name))throw e;Z.printDebugError("Browser did not support signing: "+e.message)}break;case"node":{const n=await async function(e,t,r,n){const i=Ii.createSign(ae.read(ae.hash,t));i.write(r),i.end();const a=Ki.encode({version:1,parameters:e.oid,privateKey:Array.from(n.privateKey),publicKey:{unused:0,data:Array.from(n.publicKey)}},"pem",{label:"EC PRIVATE KEY"});return Ri.decode(i.sign(a),"der")}(s,t,r,e);return{r:n.r.toArrayLike(Uint8Array),s:n.s.toArrayLike(Uint8Array)}}}}return async function(e,t,r){const n=oi(await ui(e.name),r).sign(t);return{r:n.r.toArrayLike(Uint8Array),s:n.s.toArrayLike(Uint8Array)}}(s,a,i)}async function Bi(e,t,r,n,i,a){const s=new Ei(e);if(n&&!Z.isStream(n))switch(s.type){case"web":try{return await async function(e,t,{r,s:n},i,a){const s=Ci(e.payloadSize,ki[e.name],a),o=await Mi.importKey("jwk",s,{name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,e.hash)}},!1,["verify"]),c=Z.concatUint8Array([r,n]).buffer;return Mi.verify({name:"ECDSA",namedCurve:ki[e.name],hash:{name:ae.read(ae.webHash,t)}},o,c,i)}(s,t,r,n,i)}catch(e){if("p521"!==s.name&&("DataError"===e.name||"OperationError"===e.name))throw e;Z.printDebugError("Browser did not support verifying: "+e.message)}break;case"node":return async function(e,t,{r,s:n},i,a){const{default:s}=await Promise.resolve().then((function(){return Vf})),o=Ii.createVerify(ae.read(ae.hash,t));o.write(i),o.end();const c=Ni.encode({algorithm:{algorithm:[1,2,840,10045,2,1],parameters:e.oid},subjectPublicKey:{unused:0,data:Array.from(a)}},"pem",{label:"PUBLIC KEY"}),u=Ri.encode({r:new s(r),s:new s(n)},"der");try{return o.verify(c,u)}catch(e){return!1}}(s,t,r,n,i)}return async function(e,t,r,n){return ci(await ui(e.name),n).verify(r,t)}(s,r,void 0===t?n:a,i)}const Ui=void 0,Ri=Ii?Ui.define("ECDSASignature",(function(){this.seq().obj(this.key("r").int(),this.key("s").int())})):void 0,Ki=Ii?Ui.define("ECPrivateKey",(function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").explicit(0).optional().any(),this.key("publicKey").explicit(1).optional().bitstr())})):void 0,Oi=Ii?Ui.define("AlgorithmIdentifier",(function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional().any())})):void 0,Ni=Ii?Ui.define("SubjectPublicKeyInfo",(function(){this.seq().obj(this.key("algorithm").use(Oi),this.key("subjectPublicKey").bitstr())})):void 0;var Li=Object.freeze({__proto__:null,sign:Di,verify:Bi,validateParams:async function(e,t,r){const n=new Ei(e);if(n.keyType!==ae.publicKey.ecdsa)return!1;switch(n.type){case"web":case"node":{const n=zn(8),i=ae.hash.sha256,a=await Yr.digest(i,n);try{const s=await Di(e,i,n,t,r,a);return await Bi(e,i,s,n,t,a)}catch(e){return!1}}default:return xi(ae.publicKey.ecdsa,e,t,r)}}});qn.hash=e=>new Uint8Array(ir().update(e).digest());var qi=Object.freeze({__proto__:null,sign:async function(e,t,r,n,i,a){if(Yr.getHashByteLength(t)=0;--e)for(let t=o-1;t>=0;--t)c[1]=o*e+(t+1),u[0]=a[0]^c[0],u[1]=a[1]^c[1],u[2]=s[2*t],u[3]=s[2*t+1],u=ji(r.decrypt(Hi(u))),a=u.subarray(0,2),s[2*t]=u[2],s[2*t+1]=u[3];if(a[0]===n[0]&&a[1]===n[1])return Hi(s);throw new Error("Key Data Integrity failed")}function ji(e){const{length:t}=e,r=function(e){if(Z.isString(e)){const{length:t}=e,r=new ArrayBuffer(t),n=new Uint8Array(r);for(let r=0;r0){const r=e[t-1];if(r>=1){const n=e.subarray(t-r),i=new Uint8Array(r).fill(r);if(Z.equalsUint8Array(n,i))return e.subarray(0,t-r)}}throw new Error("Invalid padding")}var $i=Object.freeze({__proto__:null,encode:Vi,decode:Gi});const Ji=Z.getWebCrypto(),Zi=Z.getNodeCrypto();function Yi(e,t,r,n){return Z.concatUint8Array([t.write(),new Uint8Array([e]),r.write(),Z.stringToUint8Array("Anonymous Sender "),n.subarray(0,20)])}async function Xi(e,t,r,n,i=!1,a=!1){let s;if(i){for(s=0;s=0&&0===t[s];s--);t=t.subarray(0,s+1)}return(await Yr.digest(e,Z.concatUint8Array([new Uint8Array([0,0,0,1]),t,n]))).subarray(0,r)}async function Qi(e,t,r,n){if(n.length!==e.payloadSize){const t=new Uint8Array(e.payloadSize);t.set(n,e.payloadSize-n.length),n=t}switch(e.type){case"curve25519":{const e=n.slice().reverse();return{secretKey:e,sharedKey:qn.scalarMult(e,t.subarray(1))}}case"web":if(e.web&&Z.getWebCrypto())try{return await async function(e,t,r,n){const i=Ti(e.payloadSize,e.web.web,r,n);let a=Ji.importKey("jwk",i,{name:"ECDH",namedCurve:e.web.web},!0,["deriveKey","deriveBits"]);const s=Ci(e.payloadSize,e.web.web,t);let o=Ji.importKey("jwk",s,{name:"ECDH",namedCurve:e.web.web},!0,[]);[a,o]=await Promise.all([a,o]);let c=Ji.deriveBits({name:"ECDH",namedCurve:e.web.web,public:o},a,e.web.sharedSize),u=Ji.exportKey("jwk",a);[c,u]=await Promise.all([c,u]);const l=new Uint8Array(c);return{secretKey:re(u.d),sharedKey:l}}(e,t,r,n)}catch(e){Z.printDebugError(e)}break;case"node":return async function(e,t,r){const n=Zi.createECDH(e.node.node);n.setPrivateKey(r);const i=new Uint8Array(n.computeSecret(t));return{secretKey:new Uint8Array(n.getPrivateKey()),sharedKey:i}}(e,t,n)}return async function(e,t,r){const n=await ui(e.name);t=ci(n,t),r=oi(n,r);const i=new Uint8Array(r.getPrivate()),a=r.derive(t.getPublic()),s=n.curve.p.byteLength();return{secretKey:i,sharedKey:a.toArrayLike(Uint8Array,"be",s)}}(e,t,n)}var ea=Object.freeze({__proto__:null,validateParams:async function(e,t,r){return xi(ae.publicKey.ecdh,e,t,r)},encrypt:async function(e,t,r,n,i){const a=Vi(r),s=new Ei(e),{publicKey:o,sharedKey:c}=await async function(e,t){switch(e.type){case"curve25519":{const r=zn(32),{secretKey:n,sharedKey:i}=await Qi(e,t,null,r);let{publicKey:a}=qn.box.keyPair.fromSecretKey(n);return a=Z.concatUint8Array([new Uint8Array([64]),a]),{publicKey:a,sharedKey:i}}case"web":if(e.web&&Z.getWebCrypto())try{return await async function(e,t){const r=Ci(e.payloadSize,e.web.web,t);let n=Ji.generateKey({name:"ECDH",namedCurve:e.web.web},!0,["deriveKey","deriveBits"]),i=Ji.importKey("jwk",r,{name:"ECDH",namedCurve:e.web.web},!1,[]);[n,i]=await Promise.all([n,i]);let a=Ji.deriveBits({name:"ECDH",namedCurve:e.web.web,public:i},n.privateKey,e.web.sharedSize),s=Ji.exportKey("jwk",n.publicKey);[a,s]=await Promise.all([a,s]);const o=new Uint8Array(a);return{publicKey:new Uint8Array(Pi(s)),sharedKey:o}}(e,t)}catch(e){Z.printDebugError(e)}break;case"node":return async function(e,t){const r=Zi.createECDH(e.node.node);r.generateKeys();const n=new Uint8Array(r.computeSecret(t));return{publicKey:new Uint8Array(r.getPublicKey()),sharedKey:n}}(e,t)}return async function(e,t){const r=await ui(e.name),n=await e.genKeyPair();t=ci(r,t);const i=oi(r,n.privateKey),a=n.publicKey,s=i.derive(t.getPublic()),o=r.curve.p.byteLength();return{publicKey:a,sharedKey:s.toArrayLike(Uint8Array,"be",o)}}(e,t)}(s,n),u=Yi(ae.publicKey.ecdh,e,t,i),{keySize:l}=Qr(t.cipher);return{publicKey:o,wrappedKey:Fi(await Xi(t.hash,c,l,u),a)}},decrypt:async function(e,t,r,n,i,a,s){const o=new Ei(e),{sharedKey:c}=await Qi(o,r,i,a),u=Yi(ae.publicKey.ecdh,e,t,s),{keySize:l}=Qr(t.cipher);let h;for(let e=0;e<3;e++)try{return Gi(zi(await Xi(t.hash,c,l,u,1===e,2===e),n))}catch(e){h=e}throw h}}),ta=Object.freeze({__proto__:null,Curve:Ei,ecdh:ea,ecdsa:Li,eddsa:qi,generate:async function(e){const t=await Z.getBigInteger();e=new Ei(e);const r=await e.genKeyPair(),n=new t(r.publicKey).toUint8Array(),i=new t(r.privateKey).toUint8Array("be",e.payloadSize);return{oid:e.oid,Q:n,secret:i,hash:e.hash,cipher:e.cipher}},getPreferredHashAlgo:function(e){return Si[ae.write(ae.curve,e.toHex())].hash}}),ra=Object.freeze({__proto__:null,sign:async function(e,t,r,n,i,a){const s=await Z.getBigInteger(),o=new s(1);let c,u,l,h;n=new s(n),i=new s(i),r=new s(r),a=new s(a),r=r.mod(n),a=a.mod(i);const d=new s(t.subarray(0,i.byteLength())).mod(i);for(;;){if(c=await jn(o,i),u=r.modExp(c,n).imod(i),u.isZero())continue;const e=a.mul(u).imod(i);if(h=d.add(e).imod(i),l=c.modInv(i).imul(h).imod(i),!l.isZero())break}return{r:u.toUint8Array("be",i.byteLength()),s:l.toUint8Array("be",i.byteLength())}},verify:async function(e,t,r,n,i,a,s,o){const c=await Z.getBigInteger(),u=new c(0);if(t=new c(t),r=new c(r),a=new c(a),s=new c(s),i=new c(i),o=new c(o),t.lte(u)||t.gte(s)||r.lte(u)||r.gte(s))return Z.printDebug("invalid DSA Signature"),!1;const l=new c(n.subarray(0,s.byteLength())).imod(s),h=r.modInv(s);if(h.isZero())return Z.printDebug("invalid DSA Signature"),!1;i=i.mod(a),o=o.mod(a);const d=l.mul(h).imod(s),f=t.mul(h).imod(s),p=i.modExp(d,a),y=o.modExp(f,a);return p.mul(y).imod(a).imod(s).equal(t)},validateParams:async function(e,t,r,n,i){const a=await Z.getBigInteger();e=new a(e),t=new a(t),r=new a(r),n=new a(n);const s=new a(1);if(r.lte(s)||r.gte(e))return!1;if(!e.dec().mod(t).isZero())return!1;if(!r.modExp(t,e).isOne())return!1;const o=new a(t.bitLength()),c=new a(150);if(o.lt(c)||!await Vn(t,null,32))return!1;i=new a(i);const u=new a(2),l=await jn(u.leftShift(o.dec()),u.leftShift(o)),h=t.mul(l).add(i);return!!n.equal(r.modExp(h,e))}}),na={rsa:ii,elgamal:ai,elliptic:ta,dsa:ra,nacl:qn},ia=Object.freeze({__proto__:null,parseSignatureParams:function(e,t){let r=0;switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaSign:return{s:Z.readMPI(t.subarray(r))};case ae.publicKey.dsa:case ae.publicKey.ecdsa:{const e=Z.readMPI(t.subarray(r));return r+=e.length+2,{r:e,s:Z.readMPI(t.subarray(r))}}case ae.publicKey.eddsa:{let e=Z.readMPI(t.subarray(r));r+=e.length+2,e=Z.leftPad(e,32);let n=Z.readMPI(t.subarray(r));return n=Z.leftPad(n,32),{r:e,s:n}}default:throw new mi("Unknown signature algorithm.")}},verify:async function(e,t,r,n,i,a){switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaSign:{const{n:e,e:s}=n,o=Z.leftPad(r.s,e.length);return na.rsa.verify(t,i,o,e,s,a)}case ae.publicKey.dsa:{const{g:e,p:i,q:s,y:o}=n,{r:c,s:u}=r;return na.dsa.verify(t,c,u,a,e,i,s,o)}case ae.publicKey.ecdsa:{const{oid:e,Q:s}=n,o=new na.elliptic.Curve(e).payloadSize,c=Z.leftPad(r.r,o),u=Z.leftPad(r.s,o);return na.elliptic.ecdsa.verify(e,t,{r:c,s:u},i,s,a)}case ae.publicKey.eddsa:{const{oid:e,Q:s}=n;return na.elliptic.eddsa.verify(e,t,r,i,s,a)}default:throw new Error("Unknown signature algorithm.")}},sign:async function(e,t,r,n,i,a){if(!r||!n)throw new Error("Missing key parameters");switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaSign:{const{n:e,e:s}=r,{d:o,p:c,q:u,u:l}=n;return{s:await na.rsa.sign(t,i,e,s,o,c,u,l,a)}}case ae.publicKey.dsa:{const{g:e,p:i,q:s}=r,{x:o}=n;return na.dsa.sign(t,a,e,i,s,o)}case ae.publicKey.elgamal:throw new Error("Signing with Elgamal is not defined in the OpenPGP standard.");case ae.publicKey.ecdsa:{const{oid:e,Q:s}=r,{d:o}=n;return na.elliptic.ecdsa.sign(e,t,i,s,o,a)}case ae.publicKey.eddsa:{const{oid:e,Q:s}=r,{seed:o}=n;return na.elliptic.eddsa.sign(e,t,i,s,o,a)}default:throw new Error("Unknown signature algorithm.")}}});class aa{constructor(e){e=void 0===e?new Uint8Array([]):Z.isString(e)?Z.stringToUint8Array(e):new Uint8Array(e),this.data=e}read(e){if(e.length>=1){const t=e[0];if(e.length>=1+t)return this.data=e.subarray(1,1+t),1+this.data.length}throw new Error("Invalid symmetric key")}write(){return Z.concatUint8Array([new Uint8Array([this.data.length]),this.data])}}class sa{constructor(e){if(e){const{hash:t,cipher:r}=e;this.hash=t,this.cipher=r}else this.hash=null,this.cipher=null}read(e){if(e.length<4||3!==e[0]||1!==e[1])throw new Error("Cannot read KDFParams");return this.hash=e[2],this.cipher=e[3],4}write(){return new Uint8Array([3,1,this.hash,this.cipher])}}function oa(e){try{e.getName()}catch(e){throw new mi("Unknown curve OID")}}var ca=Object.freeze({__proto__:null,publicKeyEncrypt:async function(e,t,r,n){switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:{const{n:e,e:n}=t;return{c:await na.rsa.encrypt(r,e,n)}}case ae.publicKey.elgamal:{const{p:e,g:n,y:i}=t;return na.elgamal.encrypt(r,e,n,i)}case ae.publicKey.ecdh:{const{oid:e,Q:i,kdfParams:a}=t,{publicKey:s,wrappedKey:o}=await na.elliptic.ecdh.encrypt(e,a,r,i,n);return{V:s,C:new aa(o)}}default:return[]}},publicKeyDecrypt:async function(e,t,r,n,i,a){switch(e){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaEncrypt:{const{c:e}=n,{n:i,e:s}=t,{d:o,p:c,q:u,u:l}=r;return na.rsa.decrypt(e,i,s,o,c,u,l,a)}case ae.publicKey.elgamal:{const{c1:e,c2:i}=n,s=t.p,o=r.x;return na.elgamal.decrypt(e,i,s,o,a)}case ae.publicKey.ecdh:{const{oid:e,Q:a,kdfParams:s}=t,{d:o}=r,{V:c,C:u}=n;return na.elliptic.ecdh.decrypt(e,s,c,u.data,a,o,i)}default:throw new Error("Unknown public key encryption algorithm.")}},parsePublicKeyParams:function(e,t){let r=0;switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=Z.readMPI(t.subarray(r));return r+=n.length+2,{read:r,publicParams:{n:e,e:n}}}case ae.publicKey.dsa:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=Z.readMPI(t.subarray(r));r+=n.length+2;const i=Z.readMPI(t.subarray(r));r+=i.length+2;const a=Z.readMPI(t.subarray(r));return r+=a.length+2,{read:r,publicParams:{p:e,q:n,g:i,y:a}}}case ae.publicKey.elgamal:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=Z.readMPI(t.subarray(r));r+=n.length+2;const i=Z.readMPI(t.subarray(r));return r+=i.length+2,{read:r,publicParams:{p:e,g:n,y:i}}}case ae.publicKey.ecdsa:{const e=new si;r+=e.read(t),oa(e);const n=Z.readMPI(t.subarray(r));return r+=n.length+2,{read:r,publicParams:{oid:e,Q:n}}}case ae.publicKey.eddsa:{const e=new si;r+=e.read(t),oa(e);let n=Z.readMPI(t.subarray(r));return r+=n.length+2,n=Z.leftPad(n,33),{read:r,publicParams:{oid:e,Q:n}}}case ae.publicKey.ecdh:{const e=new si;r+=e.read(t),oa(e);const n=Z.readMPI(t.subarray(r));r+=n.length+2;const i=new sa;return r+=i.read(t.subarray(r)),{read:r,publicParams:{oid:e,Q:n,kdfParams:i}}}default:throw new mi("Unknown public key encryption algorithm.")}},parsePrivateKeyParams:function(e,t,r){let n=0;switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:{const e=Z.readMPI(t.subarray(n));n+=e.length+2;const r=Z.readMPI(t.subarray(n));n+=r.length+2;const i=Z.readMPI(t.subarray(n));n+=i.length+2;const a=Z.readMPI(t.subarray(n));return n+=a.length+2,{read:n,privateParams:{d:e,p:r,q:i,u:a}}}case ae.publicKey.dsa:case ae.publicKey.elgamal:{const e=Z.readMPI(t.subarray(n));return n+=e.length+2,{read:n,privateParams:{x:e}}}case ae.publicKey.ecdsa:case ae.publicKey.ecdh:{const e=new Ei(r.oid);let i=Z.readMPI(t.subarray(n));return n+=i.length+2,i=Z.leftPad(i,e.payloadSize),{read:n,privateParams:{d:i}}}case ae.publicKey.eddsa:{const e=new Ei(r.oid);let i=Z.readMPI(t.subarray(n));return n+=i.length+2,i=Z.leftPad(i,e.payloadSize),{read:n,privateParams:{seed:i}}}default:throw new mi("Unknown public key encryption algorithm.")}},parseEncSessionKeyParams:function(e,t){let r=0;switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:return{c:Z.readMPI(t.subarray(r))};case ae.publicKey.elgamal:{const e=Z.readMPI(t.subarray(r));return r+=e.length+2,{c1:e,c2:Z.readMPI(t.subarray(r))}}case ae.publicKey.ecdh:{const e=Z.readMPI(t.subarray(r));r+=e.length+2;const n=new aa;return n.read(t.subarray(r)),{V:e,C:n}}default:throw new mi("Unknown public key encryption algorithm.")}},serializeParams:function(e,t){const r=Object.keys(t).map((e=>{const r=t[e];return Z.isUint8Array(r)?Z.uint8ArrayToMPI(r):r.write()}));return Z.concatUint8Array(r)},generateParams:function(e,t,r){switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:return na.rsa.generate(t,65537).then((({n:e,e:t,d:r,p:n,q:i,u:a})=>({privateParams:{d:r,p:n,q:i,u:a},publicParams:{n:e,e:t}})));case ae.publicKey.ecdsa:return na.elliptic.generate(r).then((({oid:e,Q:t,secret:r})=>({privateParams:{d:r},publicParams:{oid:new si(e),Q:t}})));case ae.publicKey.eddsa:return na.elliptic.generate(r).then((({oid:e,Q:t,secret:r})=>({privateParams:{seed:r},publicParams:{oid:new si(e),Q:t}})));case ae.publicKey.ecdh:return na.elliptic.generate(r).then((({oid:e,Q:t,secret:r,hash:n,cipher:i})=>({privateParams:{d:r},publicParams:{oid:new si(e),Q:t,kdfParams:new sa({hash:n,cipher:i})}})));case ae.publicKey.dsa:case ae.publicKey.elgamal:throw new Error("Unsupported algorithm for key generation.");default:throw new Error("Unknown public key algorithm.")}},validateParams:async function(e,t,r){if(!t||!r)throw new Error("Missing key parameters");switch(e){case ae.publicKey.rsaEncrypt:case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:{const{n:e,e:n}=t,{d:i,p:a,q:s,u:o}=r;return na.rsa.validateParams(e,n,i,a,s,o)}case ae.publicKey.dsa:{const{p:e,q:n,g:i,y:a}=t,{x:s}=r;return na.dsa.validateParams(e,n,i,a,s)}case ae.publicKey.elgamal:{const{p:e,g:n,y:i}=t,{x:a}=r;return na.elgamal.validateParams(e,n,i,a)}case ae.publicKey.ecdsa:case ae.publicKey.ecdh:{const n=na.elliptic[ae.read(ae.publicKey,e)],{oid:i,Q:a}=t,{d:s}=r;return n.validateParams(i,a,s)}case ae.publicKey.eddsa:{const{oid:e,Q:n}=t,{seed:i}=r;return na.elliptic.eddsa.validateParams(e,n,i)}default:throw new Error("Unknown public key algorithm.")}},getPrefixRandom:async function(e){const{blockSize:t}=Qr(e),r=await zn(t),n=new Uint8Array([r[r.length-2],r[r.length-1]]);return Z.concat([r,n])},generateSessionKey:function(e){const{keySize:t}=Qr(e);return zn(t)},getAEADMode:function(e){const t=ae.read(ae.aead,e);return Ln[t]},getCipher:Qr});const ua={cipher:Ze,hash:Yr,mode:Ln,publicKey:na,signature:ia,random:Hn,pkcs1:Xn,pkcs5:$i,aesKW:Wi};Object.assign(ua,ca);var la="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function ha(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)}const da={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(let a=0;a=0;)e[t]=0}const xa=0,Pa=1,Ca=2,Ta=29,Ma=256,Ia=Ma+1+Ta,Da=30,Ba=19,Ua=2*Ia+1,Ra=15,Ka=16,Oa=7,Na=256,La=16,qa=17,Fa=18,za=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ja=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ha=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Wa=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Va=new Array(2*(Ia+2));Ea(Va);const Ga=new Array(2*Da);Ea(Ga);const $a=new Array(512);Ea($a);const Ja=new Array(256);Ea(Ja);const Za=new Array(Ta);Ea(Za);const Ya=new Array(Da);function Xa(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}let Qa,es,ts;function rs(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function ns(e){return e<256?$a[e]:$a[256+(e>>>7)]}function is(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function as(e,t,r){e.bi_valid>Ka-r?(e.bi_buf|=t<>Ka-e.bi_valid,e.bi_valid+=r-Ka):(e.bi_buf|=t<>>=1,r<<=1}while(--t>0);return r>>>1}function cs(e,t,r){const n=new Array(Ra+1);let i,a,s=0;for(i=1;i<=Ra;i++)n[i]=s=s+r[i-1]<<1;for(a=0;a<=t;a++){const t=e[2*a+1];0!==t&&(e[2*a]=os(n[t]++,t))}}function us(e){let t;for(t=0;t8?is(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function hs(e,t,r,n){const i=2*t,a=2*r;return e[i]>1;s>=1;s--)ds(e,r,s);c=a;do{s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ds(e,r,1),o=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=o,r[2*c]=r[2*s]+r[2*o],e.depth[c]=(e.depth[s]>=e.depth[o]?e.depth[s]:e.depth[o])+1,r[2*s+1]=r[2*o+1]=c,e.heap[1]=c++,ds(e,r,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){const r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,a=t.stat_desc.has_stree,s=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,c=t.stat_desc.max_length;let u,l,h,d,f,p,y=0;for(d=0;d<=Ra;d++)e.bl_count[d]=0;for(r[2*e.heap[e.heap_max]+1]=0,u=e.heap_max+1;uc&&(d=c,y++),r[2*l+1]=d,l>n||(e.bl_count[d]++,f=0,l>=o&&(f=s[l-o]),p=r[2*l],e.opt_len+=p*(d+f),a&&(e.static_len+=p*(i[2*l+1]+f)));if(0!==y){do{for(d=c-1;0===e.bl_count[d];)d--;e.bl_count[d]--,e.bl_count[d+1]+=2,e.bl_count[c]--,y-=2}while(y>0);for(d=c;0!==d;d--)for(l=e.bl_count[d];0!==l;)h=e.heap[--u],h>n||(r[2*h+1]!==d&&(e.opt_len+=(d-r[2*h+1])*r[2*h],r[2*h+1]=d),l--)}}(e,t),cs(r,u,e.bl_count)}function ys(e,t,r){let n,i,a=-1,s=t[1],o=0,c=7,u=4;for(0===s&&(c=138,u=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=s,s=t[2*(n+1)+1],++o>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(Ja[r]+Ma+1)]++,e.dyn_dtree[2*ns(t)]++),e.last_lit===e.lit_bufsize-1}function vs(e,t,r,n){let i=65535&e|0,a=e>>>16&65535|0,s=0;for(;0!==r;){s=r>2e3?2e3:r,r-=s;do{i=i+t[n++]|0,a=a+i|0}while(--s);i%=65521,a%=65521}return i|a<<16|0}const ks=function(){let e;const t=[];for(let r=0;r<256;r++){e=r;for(let t=0;t<8;t++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();function As(e,t,r,n){const i=ks,a=n+r;e^=-1;for(let r=n;r>>8^i[255&(e^t[r])];return-1^e}var _s={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};const Ss=3,Es=258,xs=Es+Ss+1,Ps=103,Cs=113,Ts=666;function Ms(e,t){return e.msg=_s[t],t}function Is(e){return(e<<1)-(e>4?9:0)}function Ds(e){let t=e.length;for(;--t>=0;)e[t]=0}function Bs(e){const t=e.state;let r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(ba(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function Us(e,t){(function(e,t,r,n){let i,a,s=0;e.level>0?(e.strm.data_type===Sa&&(e.strm.data_type=function(e){let t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return Aa;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return _a;for(t=32;t=3&&0===e.bl_tree[2*Wa[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a<=i&&(i=a)):i=a=r+5,r+4<=i&&-1!==t?bs(e,t,r,n):e.strategy===ka||a===i?(as(e,(Pa<<1)+(n?1:0),3),fs(e,Va,Ga)):(as(e,(Ca<<1)+(n?1:0),3),function(e,t,r,n){let i;for(as(e,t-257,5),as(e,r-1,5),as(e,n-4,4),i=0;i=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Bs(e.strm)}function Rs(e,t){e.pending_buf[e.pending++]=t}function Ks(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function Os(e,t,r,n){let i=e.avail_in;return i>n&&(i=n),0===i?0:(e.avail_in-=i,ba(t,e.input,e.next_in,i,r),1===e.state.wrap?e.adler=vs(e.adler,t,i,r):2===e.state.wrap&&(e.adler=As(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)}function Ns(e,t){let r,n,i=e.max_chain_length,a=e.strstart,s=e.prev_length,o=e.nice_match;const c=e.strstart>e.w_size-xs?e.strstart-(e.w_size-xs):0,u=e.window,l=e.w_mask,h=e.prev,d=e.strstart+Es;let f=u[a+s-1],p=u[a+s];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(r=t,u[r+s]===p&&u[r+s-1]===f&&u[r]===u[a]&&u[++r]===u[a+1]){a+=2,r++;do{}while(u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&as){if(e.match_start=t,s=n,n>=o)break;f=u[a+s-1],p=u[a+s]}}}while((t=h[t&l])>c&&0!=--i);return s<=e.lookahead?s:e.lookahead}function Ls(e){const t=e.w_size;let r,n,i,a,s;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-xs)){ba(e.window,e.window,t,t,0),e.match_start-=t,e.strstart-=t,e.block_start-=t,n=e.hash_size,r=n;do{i=e.head[--r],e.head[r]=i>=t?i-t:0}while(--n);n=t,r=n;do{i=e.prev[--r],e.prev[r]=i>=t?i-t:0}while(--n);a+=t}if(0===e.strm.avail_in)break;if(n=Os(e.strm,e.window,e.strstart+e.lookahead,a),e.lookahead+=n,e.lookahead+e.insert>=Ss)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<=Ss&&(e.ins_h=(e.ins_h<=Ss)if(n=ws(e,e.strstart-e.match_start,e.match_length-Ss),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=Ss){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=Ss&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=Ss-1)),e.prev_length>=Ss&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-Ss,n=ws(e,e.strstart-1-e.prev_match,e.prev_length-Ss),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(Ls(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;const n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,Us(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-xs&&(Us(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Us(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(Us(e,!1),e.strm.avail_out),1)})),new zs(4,4,8,4,qs),new zs(4,5,16,8,qs),new zs(4,6,32,32,qs),new zs(4,4,16,16,Fs),new zs(8,16,32,32,Fs),new zs(8,16,128,128,Fs),new zs(8,32,128,256,Fs),new zs(32,128,258,1024,Fs),new zs(32,258,258,4096,Fs)];class Hs{constructor(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new ya(1146),this.dyn_dtree=new ya(122),this.bl_tree=new ya(78),Ds(this.dyn_ltree),Ds(this.dyn_dtree),Ds(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new ya(16),this.heap=new ya(573),Ds(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ya(573),Ds(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}}function Ws(e){const t=function(e){let t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=Sa,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:Cs,e.adler=2===t.wrap?0:1,t.last_flush=0,function(e){ms||(function(){let e,t,r,n,i;const a=new Array(Ra+1);for(r=0,n=0;n>=7;n5||t<0)return e?Ms(e,va):va;if(n=e.state,!e.output||!e.input&&0!==e.avail_in||n.status===Ts&&4!==t)return Ms(e,0===e.avail_out?-5:va);if(n.strm=e,r=n.last_flush,n.last_flush=t,42===n.status)if(2===n.wrap)e.adler=0,Rs(n,31),Rs(n,139),Rs(n,8),n.gzhead?(Rs(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),Rs(n,255&n.gzhead.time),Rs(n,n.gzhead.time>>8&255),Rs(n,n.gzhead.time>>16&255),Rs(n,n.gzhead.time>>24&255),Rs(n,9===n.level?2:n.strategy>=2||n.level<2?4:0),Rs(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(Rs(n,255&n.gzhead.extra.length),Rs(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=As(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(Rs(n,0),Rs(n,0),Rs(n,0),Rs(n,0),Rs(n,0),Rs(n,9===n.level?2:n.strategy>=2||n.level<2?4:0),Rs(n,3),n.status=Cs);else{let t=8+(n.w_bits-8<<4)<<8,r=-1;r=n.strategy>=2||n.level<2?0:n.level<6?1:6===n.level?2:3,t|=r<<6,0!==n.strstart&&(t|=32),t+=31-t%31,n.status=Cs,Ks(n,t),0!==n.strstart&&(Ks(n,e.adler>>>16),Ks(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),Bs(e),i=n.pending,n.pending!==n.pending_buf_size));)Rs(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),Bs(e),i=n.pending,n.pending===n.pending_buf_size)){a=1;break}a=n.gzindexi&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),0===a&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),Bs(e),i=n.pending,n.pending===n.pending_buf_size)){a=1;break}a=n.gzindexi&&(e.adler=As(e.adler,n.pending_buf,n.pending-i,i)),0===a&&(n.status=Ps)}else n.status=Ps;if(n.status===Ps&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&Bs(e),n.pending+2<=n.pending_buf_size&&(Rs(n,255&e.adler),Rs(n,e.adler>>8&255),e.adler=0,n.status=Cs)):n.status=Cs),0!==n.pending){if(Bs(e),0===e.avail_out)return n.last_flush=-1,wa}else if(0===e.avail_in&&Is(t)<=Is(r)&&4!==t)return Ms(e,-5);if(n.status===Ts&&0!==e.avail_in)return Ms(e,-5);if(0!==e.avail_in||0!==n.lookahead||0!==t&&n.status!==Ts){var s=2===n.strategy?function(e,t){let r;for(;;){if(0===e.lookahead&&(Ls(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,r=ws(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Us(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Us(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Us(e,!1),0===e.strm.avail_out)?1:2}(n,t):3===n.strategy?function(e,t){let r,n,i,a;const s=e.window;for(;;){if(e.lookahead<=Es){if(Ls(e),e.lookahead<=Es&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=Ss&&e.strstart>0&&(i=e.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){a=e.strstart+Es;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=Ss?(r=ws(e,1,e.match_length-Ss),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=ws(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Us(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Us(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Us(e,!1),0===e.strm.avail_out)?1:2}(n,t):js[n.level].func(n,t);if(3!==s&&4!==s||(n.status=Ts),1===s||3===s)return 0===e.avail_out&&(n.last_flush=-1),wa;if(2===s&&(1===t?function(e){as(e,Pa<<1,3),ss(e,Na,Va),function(e){16===e.bi_valid?(is(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}(n):5!==t&&(bs(n,0,0,!1),3===t&&(Ds(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),Bs(e),0===e.avail_out))return n.last_flush=-1,wa}return 4!==t?wa:n.wrap<=0?1:(2===n.wrap?(Rs(n,255&e.adler),Rs(n,e.adler>>8&255),Rs(n,e.adler>>16&255),Rs(n,e.adler>>24&255),Rs(n,255&e.total_in),Rs(n,e.total_in>>8&255),Rs(n,e.total_in>>16&255),Rs(n,e.total_in>>24&255)):(Ks(n,e.adler>>>16),Ks(n,65535&e.adler)),Bs(e),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?wa:1)}try{String.fromCharCode.apply(null,[0])}catch(e){}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){}const Gs=new pa(256);for(let e=0;e<256;e++)Gs[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;function $s(e){let t,r,n,i,a=0;const s=e.length;for(n=0;n>>6,o[i++]=128|63&t):t<65536?(o[i++]=224|t>>>12,o[i++]=128|t>>>6&63,o[i++]=128|63&t):(o[i++]=240|t>>>18,o[i++]=128|t>>>12&63,o[i++]=128|t>>>6&63,o[i++]=128|63&t);return o}Gs[254]=Gs[254]=1;class Js{constructor(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}}class Zs{constructor(e){this.options={level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,...e||{}};const t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Js,this.strm.avail_out=0;var r,n,i=function(e,t,r,n,i,a){if(!e)return va;let s=1;if(-1===t&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>9||8!==r||n<8||n>15||t<0||t>9||a<0||a>ka)return Ms(e,va);8===n&&(n=9);const o=new Hs;return e.state=o,o.strm=e,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<=r.w_size&&(0===a&&(Ds(r.head),r.strstart=0,r.block_start=0,r.insert=0),u=new pa(r.w_size),ba(u,t,l-r.w_size,r.w_size,0),t=u,l=r.w_size),s=e.avail_in,o=e.next_in,c=e.input,e.avail_in=l,e.next_in=0,e.input=t,Ls(r);r.lookahead>=Ss;){n=r.strstart,i=r.lookahead-(Ss-1);do{r.ins_h=(r.ins_h<0||0===r.avail_out)&&1!==i);return 4===a?(i=function(e){let t;return e&&e.state?(t=e.state.status,42!==t&&69!==t&&73!==t&&91!==t&&t!==Ps&&t!==Cs&&t!==Ts?Ms(e,va):(e.state=null,t===Cs?Ms(e,-3):wa)):va}(this.strm),this.onEnd(i),this.ended=!0,i===wa):2!==a||(this.onEnd(wa),r.avail_out=0,!0)}onData(e){this.chunks.push(e)}onEnd(e){e===wa&&(this.result=ma(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg}}const Ys=30,Xs=12;function Qs(e,t){let r,n,i,a,s,o,c,u,l,h;const d=e.state;r=e.next_in;const f=e.input,p=r+(e.avail_in-5);n=e.next_out;const y=e.output,g=n-(t-e.avail_out),m=n+(e.avail_out-257),b=d.dmax,w=d.wsize,v=d.whave,k=d.wnext,A=d.window;i=d.hold,a=d.bits;const _=d.lencode,S=d.distcode,E=(1<>>24,i>>>=o,a-=o,o=s>>>16&255,0===o)y[n++]=65535&s;else{if(!(16&o)){if(0==(64&o)){s=_[(65535&s)+(i&(1<>>=o,a-=o),a<15&&(i+=f[r++]<>>24,i>>>=o,a-=o,o=s>>>16&255,!(16&o)){if(0==(64&o)){s=S[(65535&s)+(i&(1<b){e.msg="invalid distance too far back",d.mode=Ys;break e}if(i>>>=o,a-=o,o=n-g,u>o){if(o=u-o,o>v&&d.sane){e.msg="invalid distance too far back",d.mode=Ys;break e}if(l=0,h=A,0===k){if(l+=w-o,o2;)y[n++]=h[l++],y[n++]=h[l++],y[n++]=h[l++],c-=3;c&&(y[n++]=h[l++],c>1&&(y[n++]=h[l++]))}else{l=n-u;do{y[n++]=y[l++],y[n++]=y[l++],y[n++]=y[l++],c-=3}while(c>2);c&&(y[n++]=y[l++],c>1&&(y[n++]=y[l++]))}break}}break}}while(r>3,r-=c,a-=c<<3,i&=(1<=1&&0===x[m];m--);if(b>m&&(b=m),0===m)return i[a++]=20971520,i[a++]=20971520,o.bits=1,0;for(g=1;g0&&(e===no||1!==m))return-1;for(P[1]=0,p=1;pto||e===ao&&A>ro)return 1;for(;;){C=p-v,s[y]f?(T=I[D+s[y]],M=S[E+s[y]]):(T=96,M=0),u=1<>v)+l]=C<<24|T<<16|M|0}while(0!==l);for(u=1<>=1;if(0!==u?(_&=u-1,_+=u):_=0,y++,0==--x[p]){if(p===m)break;p=t[r+s[y]]}if(p>b&&(_&B)!==h){for(0===v&&(v=b),d+=g,w=p-v,k=1<to||e===ao&&A>ro)return 1;h=_&B,i[h]=b<<24|w<<16|d-a|0}}return 0!==_&&(i[d+_]=p-v<<24|64<<16|0),o.bits=b,0}const ho=1,fo=2,po=1,yo=12,go=30,mo=852,bo=592;function wo(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}class vo{constructor(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new ya(320),this.work=new ya(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}}function ko(e,t){let r,n;return e?(n=new vo,e.state=n,n.window=null,r=function(e,t){let r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?va:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,function(e){let t;return e&&e.state?(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,function(e){let t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=po,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new ga(mo),t.distcode=t.distdyn=new ga(bo),t.sane=1,t.back=-1,wa):va}(e)):va}(e))):va}(e,t),r!==wa&&(e.state=null),r):va}let Ao,_o,So=!0;function Eo(e){if(So){let t;for(Ao=new ga(512),_o=new ga(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(lo(ho,e.lens,0,288,Ao,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;lo(fo,e.lens,0,32,_o,0,e.work,{bits:5}),So=!1}e.lencode=Ao,e.lenbits=9,e.distcode=_o,e.distbits=5}function xo(e,t,r,n){let i;const a=e.state;return null===a.window&&(a.wsize=1<=a.wsize?(ba(a.window,t,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i=a.wsize-a.wnext,i>n&&(i=n),ba(a.window,t,r-n,i,a.wnext),(n-=i)?(ba(a.window,t,r-n,n,0),a.wnext=n,a.whave=a.wsize):(a.wnext+=i,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=As(r.check,P,2,0),u=0,l=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg="incorrect header check",r.mode=go;break}if(8!=(15&u)){e.msg="unknown compression method",r.mode=go;break}if(u>>>=4,l-=4,A=8+(15&u),0===r.wbits)r.wbits=A;else if(A>r.wbits){e.msg="invalid window size",r.mode=go;break}r.dmax=1<>8&1),512&r.flags&&(P[0]=255&u,P[1]=u>>>8&255,r.check=As(r.check,P,2,0)),u=0,l=0,r.mode=3;case 3:for(;l<32;){if(0===o)break e;o--,u+=n[a++]<>>8&255,P[2]=u>>>16&255,P[3]=u>>>24&255,r.check=As(r.check,P,4,0)),u=0,l=0,r.mode=4;case 4:for(;l<16;){if(0===o)break e;o--,u+=n[a++]<>8),512&r.flags&&(P[0]=255&u,P[1]=u>>>8&255,r.check=As(r.check,P,2,0)),u=0,l=0,r.mode=5;case 5:if(1024&r.flags){for(;l<16;){if(0===o)break e;o--,u+=n[a++]<>>8&255,r.check=As(r.check,P,2,0)),u=0,l=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(f=r.length,f>o&&(f=o),f&&(r.head&&(A=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),ba(r.head.extra,n,a,f,A)),512&r.flags&&(r.check=As(r.check,n,f,a)),o-=f,a+=f,r.length-=f),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===o)break e;f=0;do{A=n[a+f++],r.head&&A&&r.length<65536&&(r.head.name+=String.fromCharCode(A))}while(A&&f>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=yo;break;case 10:for(;l<32;){if(0===o)break e;o--,u+=n[a++]<>>=7&l,l-=7&l,r.mode=27;break}for(;l<3;){if(0===o)break e;o--,u+=n[a++]<>>=1,l-=1,3&u){case 0:r.mode=14;break;case 1:if(Eo(r),r.mode=20,6===t){u>>>=2,l-=2;break e}break;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=go}u>>>=2,l-=2;break;case 14:for(u>>>=7&l,l-=7&l;l<32;){if(0===o)break e;o--,u+=n[a++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=go;break}if(r.length=65535&u,u=0,l=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(f=r.length,f){if(f>o&&(f=o),f>c&&(f=c),0===f)break e;ba(i,n,a,f,s),o-=f,a+=f,c-=f,s+=f,r.length-=f;break}r.mode=yo;break;case 17:for(;l<14;){if(0===o)break e;o--,u+=n[a++]<>>=5,l-=5,r.ndist=1+(31&u),u>>>=5,l-=5,r.ncode=4+(15&u),u>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=go;break}r.have=0,r.mode=18;case 18:for(;r.have>>=3,l-=3}for(;r.have<19;)r.lens[C[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},_=lo(0,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,_){e.msg="invalid code lengths set",r.mode=go;break}r.have=0,r.mode=19;case 19:for(;r.have>>24,m=x>>>16&255,b=65535&x,!(g<=l);){if(0===o)break e;o--,u+=n[a++]<>>=g,l-=g,r.lens[r.have++]=b;else{if(16===b){for(E=g+2;l>>=g,l-=g,0===r.have){e.msg="invalid bit length repeat",r.mode=go;break}A=r.lens[r.have-1],f=3+(3&u),u>>>=2,l-=2}else if(17===b){for(E=g+3;l>>=g,l-=g,A=0,f=3+(7&u),u>>>=3,l-=3}else{for(E=g+7;l>>=g,l-=g,A=0,f=11+(127&u),u>>>=7,l-=7}if(r.have+f>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=go;break}for(;f--;)r.lens[r.have++]=A}}if(r.mode===go)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=go;break}if(r.lenbits=9,S={bits:r.lenbits},_=lo(ho,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,_){e.msg="invalid literal/lengths set",r.mode=go;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},_=lo(fo,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,_){e.msg="invalid distances set",r.mode=go;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(o>=6&&c>=258){e.next_out=s,e.avail_out=c,e.next_in=a,e.avail_in=o,r.hold=u,r.bits=l,Qs(e,d),s=e.next_out,i=e.output,c=e.avail_out,a=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,r.mode===yo&&(r.back=-1);break}for(r.back=0;x=r.lencode[u&(1<>>24,m=x>>>16&255,b=65535&x,!(g<=l);){if(0===o)break e;o--,u+=n[a++]<>w)],g=x>>>24,m=x>>>16&255,b=65535&x,!(w+g<=l);){if(0===o)break e;o--,u+=n[a++]<>>=w,l-=w,r.back+=w}if(u>>>=g,l-=g,r.back+=g,r.length=b,0===m){r.mode=26;break}if(32&m){r.back=-1,r.mode=yo;break}if(64&m){e.msg="invalid literal/length code",r.mode=go;break}r.extra=15&m,r.mode=22;case 22:if(r.extra){for(E=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;x=r.distcode[u&(1<>>24,m=x>>>16&255,b=65535&x,!(g<=l);){if(0===o)break e;o--,u+=n[a++]<>w)],g=x>>>24,m=x>>>16&255,b=65535&x,!(w+g<=l);){if(0===o)break e;o--,u+=n[a++]<>>=w,l-=w,r.back+=w}if(u>>>=g,l-=g,r.back+=g,64&m){e.msg="invalid distance code",r.mode=go;break}r.offset=b,r.extra=15&m,r.mode=24;case 24:if(r.extra){for(E=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=go;break}r.mode=25;case 25:if(0===c)break e;if(f=d-c,r.offset>f){if(f=r.offset-f,f>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=go;break}f>r.wnext?(f-=r.wnext,p=r.wsize-f):p=r.wnext-f,f>r.length&&(f=r.length),y=r.window}else y=i,p=s-r.offset,f=r.length;f>c&&(f=c),c-=f,r.length-=f;do{i[s++]=y[p++]}while(--f);0===r.length&&(r.mode=21);break;case 26:if(0===c)break e;i[s++]=r.length,c--,r.mode=21;break;case 27:if(r.wrap){for(;l<32;){if(0===o)break e;o--,u|=n[a++]<=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Js,this.strm.avail_out=0;let r=ko(this.strm,t.windowBits);if(r!==wa)throw new Error(_s[r]);if(this.header=new To,function(e,t){let r;e&&e.state&&(r=e.state,0==(2&r.wrap)||(r.head=t,t.done=!1))}(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=$s(t.dictionary):t.dictionary instanceof ArrayBuffer&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Co(this.strm,t.dictionary),r!==wa)))throw new Error(_s[r])}push(e,t){const{strm:r,options:{chunkSize:n,dictionary:i}}=this;let a,s,o=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?4:0,"string"==typeof e?r.input=function(e){const t=new pa(e.length);for(let r=0,n=t.length;r0||0===r.avail_out)&&1!==a);return 1===a&&(s=4),4===s?(a=function(e){if(!e||!e.state)return va;const t=e.state;return t.window&&(t.window=null),e.state=null,wa}(this.strm),this.onEnd(a),this.ended=!0,a===wa):2!==s||(this.onEnd(wa),r.avail_out=0,!0)}onData(e){this.chunks.push(e)}onEnd(e){e===wa&&(this.result=ma(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg}}var Io=[0,1,3,7,15,31,63,127,255],Do=function(e){this.stream=e,this.bitOffset=0,this.curByte=0,this.hasByte=!1};Do.prototype._ensureByte=function(){this.hasByte||(this.curByte=this.stream.readByte(),this.hasByte=!0)},Do.prototype.read=function(e){for(var t=0;e>0;){this._ensureByte();var r=8-this.bitOffset;if(e>=r)t<<=r,t|=Io[r]&this.curByte,this.hasByte=!1,this.bitOffset=0,e-=r;else{t<<=e;var n=r-e;t|=(this.curByte&Io[e]<>n,this.bitOffset+=e,e=0}}return t},Do.prototype.seek=function(e){var t=e%8,r=(e-t)/8;this.bitOffset=t,this.stream.seek(r),this.hasByte=!1},Do.prototype.pi=function(){var e,t=new Uint8Array(6);for(e=0;e("00"+e.toString(16)).slice(-2))).join("")}(t)};var Bo=Do,Uo=function(){};Uo.prototype.readByte=function(){throw new Error("abstract method readByte() not implemented")},Uo.prototype.read=function(e,t,r){for(var n=0;n>>0},this.updateCRC=function(t){e=e<<8^Ro[255&(e>>>24^t)]},this.updateCRCRun=function(t,r){for(;r-- >0;)e=e<<8^Ro[255&(e>>>24^t)]}}),No=function(e,t){var r,n=e[t];for(r=t;r>0;r--)e[r]=e[r-1];return e[0]=n,n},Lo=-2,qo=-3,Fo=-4,zo=-5,jo=-6,Ho=-7,Wo={"-1":"Bad file checksum"};Wo[Lo]="Not bzip data",Wo[qo]="Unexpected input EOF",Wo[Fo]="Unexpected output EOF",Wo[zo]="Data error",Wo[jo]="Out of memory",Wo[Ho]="Obsolete (pre 0.9.5) bzip format not supported.";var Vo=function(e,t){var r=Wo[e]||"unknown error";t&&(r+=": "+t);var n=new TypeError(r);throw n.errorCode=e,n},Go=function(e,t){this.writePos=this.writeCurrent=this.writeCount=0,this._start_bunzip(e,t)};Go.prototype._init_block=function(){return this._get_next_block()?(this.blockCRC=new Oo,!0):(this.writeCount=-1,!1)},Go.prototype._start_bunzip=function(e,t){var r=new Uint8Array(4);4===e.read(r,0,4)&&"BZh"===String.fromCharCode(r[0],r[1],r[2])||Vo(Lo,"bad magic");var n=r[3]-48;(n<1||n>9)&&Vo(Lo,"level out of range"),this.reader=new Bo(e),this.dbufSize=1e5*n,this.nextoutput=0,this.outputStream=t,this.streamCRC=0},Go.prototype._get_next_block=function(){var e,t,r,n=this.reader,i=n.pi();if("177245385090"===i)return!1;"314159265359"!==i&&Vo(Lo),this.targetBlockCRC=n.read(32)>>>0,this.streamCRC=(this.targetBlockCRC^(this.streamCRC<<1|this.streamCRC>>>31))>>>0,n.read(1)&&Vo(Ho);var a=n.read(24);a>this.dbufSize&&Vo(zo,"initial position out of bounds");var s=n.read(16),o=new Uint8Array(256),c=0;for(e=0;e<16;e++)if(s&1<<15-e){var u=16*e;for(r=n.read(16),t=0;t<16;t++)r&1<<15-t&&(o[c++]=u+t)}var l=n.read(3);(l<2||l>6)&&Vo(zo);var h=n.read(15);0===h&&Vo(zo);var d=new Uint8Array(256);for(e=0;e=l&&Vo(zo);f[e]=No(d,t)}var p,y=c+2,g=[];for(t=0;t20)&&Vo(zo),n.read(1);)n.read(1)?s--:s++;w[e]=s}for(m=b=w[0],e=1;eb?b=w[e]:w[e]=h&&Vo(zo),p=g[f[x++]]),e=p.minLen,t=n.read(e);e>p.maxLen&&Vo(zo),!(t<=p.limit[e]);e++)t=t<<1|n.read(1);((t-=p.base[e])<0||t>=258)&&Vo(zo);var C=p.permute[t];if(0!==C&&1!==C){if(S)for(S=0,E+s>this.dbufSize&&Vo(zo),A[_=o[d[0]]]+=s;s--;)P[E++]=_;if(C>c)break;E>=this.dbufSize&&Vo(zo),A[_=o[_=No(d,e=C-1)]]++,P[E++]=_}else S||(S=1,s=0),s+=0===C?S:2*S,S<<=1}for((a<0||a>=E)&&Vo(zo),t=0,e=0;e<256;e++)r=t+A[e],A[e]=t,t=r;for(e=0;e>=8,I=-1),this.writePos=T,this.writeCurrent=M,this.writeCount=E,this.writeRun=I,!0},Go.prototype._read_bunzip=function(e,t){var r,n,i;if(this.writeCount<0)return 0;var a=this.dbuf,s=this.writePos,o=this.writeCurrent,c=this.writeCount;this.outputsize;for(var u=this.writeRun;c;){for(c--,n=o,o=255&(s=a[s]),s>>=8,3==u++?(r=o,i=n,o=-1):(r=1,i=o),this.blockCRC.updateCRCRun(i,r);r--;)this.outputStream.writeByte(i),this.nextoutput++;o!=n&&(u=0)}return this.writeCount=c,this.blockCRC.getCRC()!==this.targetBlockCRC&&Vo(zo,"Bad block CRC (got "+this.blockCRC.getCRC().toString(16)+" expected "+this.targetBlockCRC.toString(16)+")"),this.nextoutput};var $o=function(e,t,r){for(var n=function(e){if("readByte"in e)return e;var t=new Ko;return t.pos=0,t.readByte=function(){return e[this.pos++]},t.seek=function(e){this.pos=e},t.eof=function(){return this.pos>=e.length},t}(e),i=function(e){var t=new Ko,r=!0;if(e)if("number"==typeof e)t.buffer=new Uint8Array(e),r=!1;else{if("writeByte"in e)return e;t.buffer=e,r=!1}else t.buffer=new Uint8Array(16384);return t.pos=0,t.writeByte=function(e){if(r&&this.pos>=this.buffer.length){var t=new Uint8Array(2*this.buffer.length);t.set(this.buffer),this.buffer=t}this.buffer[this.pos++]=e},t.getBuffer=function(){if(this.pos!==this.buffer.length){if(!r)throw new TypeError("outputsize does not match decoded input");var e=new Uint8Array(this.pos);e.set(this.buffer.subarray(0,this.pos)),this.buffer=e}return this.buffer},t._coerced=!0,t}(t),a=new Go(n,i);!("eof"in n)||!n.eof();)if(a._init_block())a._read_bunzip();else{var s=a.reader.read(32)>>>0;if(s!==a.streamCRC&&Vo(zo,"Bad stream CRC (got "+a.streamCRC.toString(16)+" expected "+s.toString(16)+")"),!r||!("eof"in n)||n.eof())break;a._start_bunzip(n,i)}if("getBuffer"in i)return i.getBuffer()};class Jo{static get tag(){return ae.packet.literalData}constructor(e=new Date){this.format=ae.literal.utf8,this.date=Z.normalizeDate(e),this.text=null,this.data=null,this.filename=""}setText(e,t=ae.literal.utf8){this.format=t,this.text=e,this.data=null}getText(e=!1){return(null===this.text||Z.isStream(this.text))&&(this.text=Z.decodeUTF8(Z.nativeEOL(this.getBytes(e)))),this.text}setBytes(e,t){this.format=t,this.data=e,this.text=null}getBytes(e=!1){return null===this.data&&(this.data=Z.canonicalizeEOL(Z.encodeUTF8(this.text))),e?z(this.data):this.data}setFilename(e){this.filename=e}getFilename(){return this.filename}async read(e){await q(e,(async e=>{const t=await e.readByte(),r=await e.readByte();this.filename=Z.decodeUTF8(await e.readBytes(r)),this.date=Z.readDate(await e.readBytes(4));let n=e.remainder();u(n)&&(n=await W(n)),this.setBytes(n,t)}))}writeHeader(){const e=Z.encodeUTF8(this.filename),t=new Uint8Array([e.length]),r=new Uint8Array([this.format]),n=Z.writeDate(this.date);return Z.concatUint8Array([r,t,e,n])}write(){const e=this.writeHeader(),t=this.getBytes();return Z.concat([e,t])}}const Zo=Symbol("verified"),Yo=new Set([ae.signatureSubpacket.issuer,ae.signatureSubpacket.issuerFingerprint,ae.signatureSubpacket.embeddedSignature]);class Xo{static get tag(){return ae.packet.signature}constructor(){this.version=null,this.signatureType=null,this.hashAlgorithm=null,this.publicKeyAlgorithm=null,this.signatureData=null,this.unhashedSubpackets=[],this.signedHashValue=null,this.created=null,this.signatureExpirationTime=null,this.signatureNeverExpires=!0,this.exportable=null,this.trustLevel=null,this.trustAmount=null,this.regularExpression=null,this.revocable=null,this.keyExpirationTime=null,this.keyNeverExpires=null,this.preferredSymmetricAlgorithms=null,this.revocationKeyClass=null,this.revocationKeyAlgorithm=null,this.revocationKeyFingerprint=null,this.issuerKeyID=new ge,this.rawNotations=[],this.notations={},this.preferredHashAlgorithms=null,this.preferredCompressionAlgorithms=null,this.keyServerPreferences=null,this.preferredKeyServer=null,this.isPrimaryUserID=null,this.policyURI=null,this.keyFlags=null,this.signersUserID=null,this.reasonForRevocationFlag=null,this.reasonForRevocationString=null,this.features=null,this.signatureTargetPublicKeyAlgorithm=null,this.signatureTargetHashAlgorithm=null,this.signatureTargetHash=null,this.embeddedSignature=null,this.issuerKeyVersion=null,this.issuerFingerprint=null,this.preferredAEADAlgorithms=null,this.revoked=null,this[Zo]=null}read(e){let t=0;if(this.version=e[t++],4!==this.version&&5!==this.version)throw new mi(`Version ${this.version} of the signature packet is unsupported.`);if(this.signatureType=e[t++],this.publicKeyAlgorithm=e[t++],this.hashAlgorithm=e[t++],t+=this.readSubPackets(e.subarray(t,e.length),!0),!this.created)throw new Error("Missing signature creation time subpacket.");this.signatureData=e.subarray(0,t),t+=this.readSubPackets(e.subarray(t,e.length),!1),this.signedHashValue=e.subarray(t,t+2),t+=2,this.params=ua.signature.parseSignatureParams(this.publicKeyAlgorithm,e.subarray(t,e.length))}writeParams(){return this.params instanceof Promise?G((async()=>ua.serializeParams(this.publicKeyAlgorithm,await this.params))):ua.serializeParams(this.publicKeyAlgorithm,this.params)}write(){const e=[];return e.push(this.signatureData),e.push(this.writeUnhashedSubPackets()),e.push(this.signedHashValue),e.push(this.writeParams()),Z.concat(e)}async sign(e,t,r=new Date,n=!1){5===e.version?this.version=5:this.version=4;const i=[new Uint8Array([this.version,this.signatureType,this.publicKeyAlgorithm,this.hashAlgorithm])];this.created=Z.normalizeDate(r),this.issuerKeyVersion=e.version,this.issuerFingerprint=e.getFingerprintBytes(),this.issuerKeyID=e.getKeyID(),i.push(this.writeHashedSubPackets()),this.unhashedSubpackets=[],this.signatureData=Z.concat(i);const a=this.toHash(this.signatureType,t,n),s=await this.hash(this.signatureType,t,a,n);this.signedHashValue=H(F(s),0,2);const o=async()=>ua.signature.sign(this.publicKeyAlgorithm,this.hashAlgorithm,e.publicParams,e.privateParams,a,await W(s));Z.isStream(s)?this.params=o():(this.params=await o(),this[Zo]=!0)}writeHashedSubPackets(){const e=ae.signatureSubpacket,t=[];let r;if(null===this.created)throw new Error("Missing signature creation time");t.push(Qo(e.signatureCreationTime,!0,Z.writeDate(this.created))),null!==this.signatureExpirationTime&&t.push(Qo(e.signatureExpirationTime,!0,Z.writeNumber(this.signatureExpirationTime,4))),null!==this.exportable&&t.push(Qo(e.exportableCertification,!0,new Uint8Array([this.exportable?1:0]))),null!==this.trustLevel&&(r=new Uint8Array([this.trustLevel,this.trustAmount]),t.push(Qo(e.trustSignature,!0,r))),null!==this.regularExpression&&t.push(Qo(e.regularExpression,!0,this.regularExpression)),null!==this.revocable&&t.push(Qo(e.revocable,!0,new Uint8Array([this.revocable?1:0]))),null!==this.keyExpirationTime&&t.push(Qo(e.keyExpirationTime,!0,Z.writeNumber(this.keyExpirationTime,4))),null!==this.preferredSymmetricAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredSymmetricAlgorithms)),t.push(Qo(e.preferredSymmetricAlgorithms,!1,r))),null!==this.revocationKeyClass&&(r=new Uint8Array([this.revocationKeyClass,this.revocationKeyAlgorithm]),r=Z.concat([r,this.revocationKeyFingerprint]),t.push(Qo(e.revocationKey,!1,r))),this.issuerKeyID.isNull()||5===this.issuerKeyVersion||t.push(Qo(e.issuer,!0,this.issuerKeyID.write())),this.rawNotations.forEach((({name:n,value:i,humanReadable:a,critical:s})=>{r=[new Uint8Array([a?128:0,0,0,0])];const o=Z.encodeUTF8(n);r.push(Z.writeNumber(o.length,2)),r.push(Z.writeNumber(i.length,2)),r.push(o),r.push(i),r=Z.concat(r),t.push(Qo(e.notationData,s,r))})),null!==this.preferredHashAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredHashAlgorithms)),t.push(Qo(e.preferredHashAlgorithms,!1,r))),null!==this.preferredCompressionAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredCompressionAlgorithms)),t.push(Qo(e.preferredCompressionAlgorithms,!1,r))),null!==this.keyServerPreferences&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.keyServerPreferences)),t.push(Qo(e.keyServerPreferences,!1,r))),null!==this.preferredKeyServer&&t.push(Qo(e.preferredKeyServer,!1,Z.encodeUTF8(this.preferredKeyServer))),null!==this.isPrimaryUserID&&t.push(Qo(e.primaryUserID,!1,new Uint8Array([this.isPrimaryUserID?1:0]))),null!==this.policyURI&&t.push(Qo(e.policyURI,!1,Z.encodeUTF8(this.policyURI))),null!==this.keyFlags&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.keyFlags)),t.push(Qo(e.keyFlags,!0,r))),null!==this.signersUserID&&t.push(Qo(e.signersUserID,!1,Z.encodeUTF8(this.signersUserID))),null!==this.reasonForRevocationFlag&&(r=Z.stringToUint8Array(String.fromCharCode(this.reasonForRevocationFlag)+this.reasonForRevocationString),t.push(Qo(e.reasonForRevocation,!0,r))),null!==this.features&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.features)),t.push(Qo(e.features,!1,r))),null!==this.signatureTargetPublicKeyAlgorithm&&(r=[new Uint8Array([this.signatureTargetPublicKeyAlgorithm,this.signatureTargetHashAlgorithm])],r.push(Z.stringToUint8Array(this.signatureTargetHash)),r=Z.concat(r),t.push(Qo(e.signatureTarget,!0,r))),null!==this.embeddedSignature&&t.push(Qo(e.embeddedSignature,!0,this.embeddedSignature.write())),null!==this.issuerFingerprint&&(r=[new Uint8Array([this.issuerKeyVersion]),this.issuerFingerprint],r=Z.concat(r),t.push(Qo(e.issuerFingerprint,5===this.version,r))),null!==this.preferredAEADAlgorithms&&(r=Z.stringToUint8Array(Z.uint8ArrayToString(this.preferredAEADAlgorithms)),t.push(Qo(e.preferredAEADAlgorithms,!1,r)));const n=Z.concat(t),i=Z.writeNumber(n.length,2);return Z.concat([i,n])}writeUnhashedSubPackets(){const e=[];this.unhashedSubpackets.forEach((t=>{e.push(hi(t.length)),e.push(t)}));const t=Z.concat(e),r=Z.writeNumber(t.length,2);return Z.concat([r,t])}readSubPacket(e,t=!0){let r=0;const n=!!(128&e[r]),i=127&e[r];if(t||(this.unhashedSubpackets.push(e.subarray(r,e.length)),Yo.has(i)))switch(r++,i){case ae.signatureSubpacket.signatureCreationTime:this.created=Z.readDate(e.subarray(r,e.length));break;case ae.signatureSubpacket.signatureExpirationTime:{const t=Z.readNumber(e.subarray(r,e.length));this.signatureNeverExpires=0===t,this.signatureExpirationTime=t;break}case ae.signatureSubpacket.exportableCertification:this.exportable=1===e[r++];break;case ae.signatureSubpacket.trustSignature:this.trustLevel=e[r++],this.trustAmount=e[r++];break;case ae.signatureSubpacket.regularExpression:this.regularExpression=e[r];break;case ae.signatureSubpacket.revocable:this.revocable=1===e[r++];break;case ae.signatureSubpacket.keyExpirationTime:{const t=Z.readNumber(e.subarray(r,e.length));this.keyExpirationTime=t,this.keyNeverExpires=0===t;break}case ae.signatureSubpacket.preferredSymmetricAlgorithms:this.preferredSymmetricAlgorithms=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.revocationKey:this.revocationKeyClass=e[r++],this.revocationKeyAlgorithm=e[r++],this.revocationKeyFingerprint=e.subarray(r,r+20);break;case ae.signatureSubpacket.issuer:this.issuerKeyID.read(e.subarray(r,e.length));break;case ae.signatureSubpacket.notationData:{const t=!!(128&e[r]);r+=4;const i=Z.readNumber(e.subarray(r,r+2));r+=2;const a=Z.readNumber(e.subarray(r,r+2));r+=2;const s=Z.decodeUTF8(e.subarray(r,r+i)),o=e.subarray(r+i,r+i+a);this.rawNotations.push({name:s,humanReadable:t,value:o,critical:n}),t&&(this.notations[s]=Z.decodeUTF8(o));break}case ae.signatureSubpacket.preferredHashAlgorithms:this.preferredHashAlgorithms=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.preferredCompressionAlgorithms:this.preferredCompressionAlgorithms=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.keyServerPreferences:this.keyServerPreferences=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.preferredKeyServer:this.preferredKeyServer=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.primaryUserID:this.isPrimaryUserID=0!==e[r++];break;case ae.signatureSubpacket.policyURI:this.policyURI=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.keyFlags:this.keyFlags=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.signersUserID:this.signersUserID=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.reasonForRevocation:this.reasonForRevocationFlag=e[r++],this.reasonForRevocationString=Z.decodeUTF8(e.subarray(r,e.length));break;case ae.signatureSubpacket.features:this.features=[...e.subarray(r,e.length)];break;case ae.signatureSubpacket.signatureTarget:{this.signatureTargetPublicKeyAlgorithm=e[r++],this.signatureTargetHashAlgorithm=e[r++];const t=ua.getHashByteLength(this.signatureTargetHashAlgorithm);this.signatureTargetHash=Z.uint8ArrayToString(e.subarray(r,r+t));break}case ae.signatureSubpacket.embeddedSignature:this.embeddedSignature=new Xo,this.embeddedSignature.read(e.subarray(r,e.length));break;case ae.signatureSubpacket.issuerFingerprint:this.issuerKeyVersion=e[r++],this.issuerFingerprint=e.subarray(r,e.length),5===this.issuerKeyVersion?this.issuerKeyID.read(this.issuerFingerprint):this.issuerKeyID.read(this.issuerFingerprint.subarray(-8));break;case ae.signatureSubpacket.preferredAEADAlgorithms:this.preferredAEADAlgorithms=[...e.subarray(r,e.length)];break;default:{const e=new Error(`Unknown signature subpacket type ${i}`);if(n)throw e;Z.printDebug(e)}}}readSubPackets(e,t=!0,r){const n=Z.readNumber(e.subarray(0,2));let i=2;for(;i<2+n;){const n=li(e.subarray(i,e.length));i+=n.offset,this.readSubPacket(e.subarray(i,i+n.len),t,r),i+=n.len}return i}toSign(e,t){const r=ae.signature;switch(e){case r.binary:return null!==t.text?Z.encodeUTF8(t.getText(!0)):t.getBytes(!0);case r.text:{const e=t.getBytes(!0);return Z.canonicalizeEOL(e)}case r.standalone:return new Uint8Array(0);case r.certGeneric:case r.certPersona:case r.certCasual:case r.certPositive:case r.certRevocation:{let e,n;if(t.userID)n=180,e=t.userID;else{if(!t.userAttribute)throw new Error("Either a userID or userAttribute packet needs to be supplied for certification.");n=209,e=t.userAttribute}const i=e.write();return Z.concat([this.toSign(r.key,t),new Uint8Array([n]),Z.writeNumber(i.length,4),i])}case r.subkeyBinding:case r.subkeyRevocation:case r.keyBinding:return Z.concat([this.toSign(r.key,t),this.toSign(r.key,{key:t.bind})]);case r.key:if(void 0===t.key)throw new Error("Key packet is required for this signature.");return t.key.writeForHash(this.version);case r.keyRevocation:return this.toSign(r.key,t);case r.timestamp:return new Uint8Array(0);case r.thirdParty:throw new Error("Not implemented");default:throw new Error("Unknown signature type.")}}calculateTrailer(e,t){let r=0;return N(F(this.signatureData),(e=>{r+=e.length}),(()=>{const n=[];return 5!==this.version||this.signatureType!==ae.signature.binary&&this.signatureType!==ae.signature.text||(t?n.push(new Uint8Array(6)):n.push(e.writeHeader())),n.push(new Uint8Array([this.version,255])),5===this.version&&n.push(new Uint8Array(4)),n.push(Z.writeNumber(r,4)),Z.concat(n)}))}toHash(e,t,r=!1){const n=this.toSign(e,t);return Z.concat([n,this.signatureData,this.calculateTrailer(t,r)])}async hash(e,t,r,n=!1){return r||(r=this.toHash(e,t,n)),ua.hash.digest(this.hashAlgorithm,r)}async verify(e,t,r,n=new Date,i=!1,a=se){if(!this.issuerKeyID.equals(e.getKeyID()))throw new Error("Signature was not issued by the given public key");if(this.publicKeyAlgorithm!==e.algorithm)throw new Error("Public key algorithm used to sign signature does not match issuer key algorithm.");const s=t===ae.signature.binary||t===ae.signature.text;if(!this[Zo]||s){let n,a;if(this.hashed?a=await this.hashed:(n=this.toHash(t,r,i),a=await this.hash(t,r,n)),a=await W(a),this.signedHashValue[0]!==a[0]||this.signedHashValue[1]!==a[1])throw new Error("Signed digest did not match");if(this.params=await this.params,this[Zo]=await ua.signature.verify(this.publicKeyAlgorithm,this.hashAlgorithm,this.params,e.publicParams,n,a),!this[Zo])throw new Error("Signature verification failed")}const o=Z.normalizeDate(n);if(o&&this.created>o)throw new Error("Signature creation time is in the future");if(o&&o>=this.getExpirationTime())throw new Error("Signature is expired");if(a.rejectHashAlgorithms.has(this.hashAlgorithm))throw new Error("Insecure hash algorithm: "+ae.read(ae.hash,this.hashAlgorithm).toUpperCase());if(a.rejectMessageHashAlgorithms.has(this.hashAlgorithm)&&[ae.signature.binary,ae.signature.text].includes(this.signatureType))throw new Error("Insecure message hash algorithm: "+ae.read(ae.hash,this.hashAlgorithm).toUpperCase());if(this.rawNotations.forEach((({name:e,critical:t})=>{if(t&&a.knownNotations.indexOf(e)<0)throw new Error(`Unknown critical notation: ${e}`)})),null!==this.revocationKeyClass)throw new Error("This key is intended to be revoked with an authorized key, which OpenPGP.js does not support.")}isExpired(e=new Date){const t=Z.normalizeDate(e);return null!==t&&!(this.created<=t&&tXo.prototype.calculateTrailer.apply(await this.correspondingSig,e)))}async verify(){const e=await this.correspondingSig;if(!e||e.constructor.tag!==ae.packet.signature)throw new Error("Corresponding signature packet missing");if(e.signatureType!==this.signatureType||e.hashAlgorithm!==this.hashAlgorithm||e.publicKeyAlgorithm!==this.publicKeyAlgorithm||!e.issuerKeyID.equals(this.issuerKeyID))throw new Error("Corresponding signature packet does not match one-pass signature packet");return e.hashed=this.hashed,e.verify.apply(e,arguments)}}function tc(e,t){if(!t[e]){let t;try{t=ae.read(ae.packet,e)}catch(t){throw new mi(`Unknown packet type with tag: ${e}`)}throw new Error(`Packet not allowed in this context: ${t}`)}return new t[e]}ec.prototype.hash=Xo.prototype.hash,ec.prototype.toHash=Xo.prototype.toHash,ec.prototype.toSign=Xo.prototype.toSign;class rc extends Array{static async fromBinary(e,t,r=se){const n=new rc;return await n.read(e,t,r),n}async read(e,t,r=se){r.additionalAllowedPackets.length&&(t={...t,...Z.constructAllowedPackets(r.additionalAllowedPackets)}),this.stream=L(e,(async(e,n)=>{const i=U(n);try{for(;;)if(await i.ready,await gi(e,(async e=>{try{if(e.tag===ae.packet.marker||e.tag===ae.packet.trust)return;const n=tc(e.tag,t);n.packets=new rc,n.fromStream=Z.isStream(e.packet),await n.read(e.packet,r),await i.write(n)}catch(t){const n=!r.ignoreUnsupportedPackets&&t instanceof mi,a=!(r.ignoreMalformedPackets||t instanceof mi);if(n||a||yi(e.tag))await i.abort(t);else{const t=new bi(e.tag,e.packet);await i.write(t)}Z.printDebugError(t)}})))return await i.ready,void await i.close()}catch(e){await i.abort(e)}}));const n=B(this.stream);for(;;){const{done:e,value:t}=await n.read();if(e?this.stream=null:this.push(t),e||yi(t.constructor.tag))break}n.releaseLock()}write(){const e=[];for(let t=0;t{if(t.push(e),i+=e.length,i>=a){const e=Math.min(Math.log(i)/Math.LN2|0,30),r=2**e,n=Z.concat([di(e)].concat(t));return t=[n.subarray(1+r)],i=t[0].length,n.subarray(0,1+r)}}),(()=>Z.concat([hi(i)].concat(t)))))}else{if(Z.isStream(n)){let t=0;e.push(N(F(n),(e=>{t+=e.length}),(()=>pi(r,t))))}else e.push(pi(r,n.length));e.push(n)}}return Z.concat(e)}filterByTag(...e){const t=new rc,r=e=>t=>e===t;for(let n=0;nt.constructor.tag===e))}indexOfTag(...e){const t=[],r=this,n=e=>t=>e===t;for(let i=0;i{this.algorithm=await e.readByte(),this.compressed=e.remainder(),await this.decompress(t)}))}write(){return null===this.compressed&&this.compress(),Z.concat([new Uint8Array([this.algorithm]),this.compressed])}async decompress(e=se){const t=ae.read(ae.compression,this.algorithm),r=hc[t];if(!r)throw new Error(`${t} decompression not supported`);this.packets=await rc.fromBinary(r(this.compressed),nc,e)}compress(){const e=ae.read(ae.compression,this.algorithm),t=lc[e];if(!t)throw new Error(`${e} compression not supported`);this.compressed=t(this.packets.write(),this.deflateLevel)}}const ac=Z.getNodeZlib();function sc(e){return e}function oc(e,t,r={}){return function(n){return!Z.isStream(n)||u(n)?G((()=>W(n).then((t=>new Promise(((n,i)=>{e(t,r,((e,t)=>{if(e)return i(e);n(t)}))})))))):b(w(n).pipe(t(r)))}}function cc(e,t={}){return function(r){const n=new e(t);return N(r,(e=>{if(e.length)return n.push(e,2),n.result}),(()=>{if(e===Zs)return n.push([],4),n.result}))}}function uc(e){return function(t){return G((async()=>e(await W(t))))}}const lc=ac?{zip:(e,t)=>oc(ac.deflateRaw,ac.createDeflateRaw,{level:t})(e),zlib:(e,t)=>oc(ac.deflate,ac.createDeflate,{level:t})(e)}:{zip:(e,t)=>cc(Zs,{raw:!0,level:t})(e),zlib:(e,t)=>cc(Zs,{level:t})(e)},hc=ac?{uncompressed:sc,zip:oc(ac.inflateRaw,ac.createInflateRaw),zlib:oc(ac.inflate,ac.createInflate),bzip2:uc($o)}:{uncompressed:sc,zip:cc(Mo,{raw:!0}),zlib:cc(Mo),bzip2:uc($o)},dc=Z.constructAllowedPackets([Jo,ic,ec,Xo]);class fc{static get tag(){return ae.packet.symEncryptedIntegrityProtectedData}constructor(){this.version=1,this.encrypted=null,this.packets=null}async read(e){await q(e,(async e=>{const t=await e.readByte();if(1!==t)throw new mi(`Version ${t} of the SEIP packet is unsupported.`);this.encrypted=e.remainder()}))}write(){return Z.concat([new Uint8Array([1]),this.encrypted])}async encrypt(e,t,r=se){const{blockSize:n}=ua.getCipher(e);let i=this.packets.write();u(i)&&(i=await W(i));const a=await ua.getPrefixRandom(e),s=new Uint8Array([211,20]),o=Z.concat([a,i,s]),c=await ua.hash.sha1(z(o)),l=Z.concat([o,c]);return this.encrypted=await ua.mode.cfb.encrypt(e,t,l,new Uint8Array(n),r),!0}async decrypt(e,t,r=se){const{blockSize:n}=ua.getCipher(e);let i=F(this.encrypted);u(i)&&(i=await W(i));const a=await ua.mode.cfb.decrypt(e,t,i,new Uint8Array(n)),s=H(z(a),-20),o=H(a,0,-20),c=Promise.all([W(await ua.hash.sha1(z(o))),W(s)]).then((([e,t])=>{if(!Z.equalsUint8Array(e,t))throw new Error("Modification detected.");return new Uint8Array})),l=H(o,n+2);let h=H(l,0,-2);return h=D([h,G((()=>c))]),Z.isStream(i)&&r.allowUnauthenticatedStream||(h=await W(h)),this.packets=await rc.fromBinary(h,dc,r),!0}}const pc=Z.constructAllowedPackets([Jo,ic,ec,Xo]);class yc{static get tag(){return ae.packet.aeadEncryptedData}constructor(){this.version=1,this.cipherAlgorithm=null,this.aeadAlgorithm=ae.aead.eax,this.chunkSizeByte=null,this.iv=null,this.encrypted=null,this.packets=null}async read(e){await q(e,(async e=>{const t=await e.readByte();if(1!==t)throw new mi(`Version ${t} of the AEAD-encrypted data packet is not supported.`);this.cipherAlgorithm=await e.readByte(),this.aeadAlgorithm=await e.readByte(),this.chunkSizeByte=await e.readByte();const r=ua.getAEADMode(this.aeadAlgorithm);this.iv=await e.readBytes(r.ivLength),this.encrypted=e.remainder()}))}write(){return Z.concat([new Uint8Array([this.version,this.cipherAlgorithm,this.aeadAlgorithm,this.chunkSizeByte]),this.iv,this.encrypted])}async decrypt(e,t,r=se){this.packets=await rc.fromBinary(await this.crypt("decrypt",t,F(this.encrypted)),pc,r)}async encrypt(e,t,r=se){this.cipherAlgorithm=e;const{ivLength:n}=ua.getAEADMode(this.aeadAlgorithm);this.iv=ua.random.getRandomBytes(n),this.chunkSizeByte=r.aeadChunkSizeByte;const i=this.packets.write();this.encrypted=await this.crypt("encrypt",t,i)}async crypt(e,t,r){const n=ua.getAEADMode(this.aeadAlgorithm),i=await n(this.cipherAlgorithm,t),a="decrypt"===e?n.tagLength:0,s="encrypt"===e?n.tagLength:0,o=2**(this.chunkSizeByte+6)+a,c=new ArrayBuffer(21),u=new Uint8Array(c,0,13),l=new Uint8Array(c),h=new DataView(c),d=new Uint8Array(c,5,8);u.set([192|yc.tag,this.version,this.cipherAlgorithm,this.aeadAlgorithm,this.chunkSizeByte],0);let f=0,p=Promise.resolve(),y=0,g=0;const m=this.iv;return L(r,(async(t,r)=>{if("array"!==Z.isStream(t)){const e=new P({},{highWaterMark:Z.getHardwareConcurrency()*2**(this.chunkSizeByte+6),size:e=>e.length});R(e.readable,r),r=e.writable}const c=B(t),b=U(r);try{for(;;){let t=await c.readBytes(o+a)||new Uint8Array;const r=t.subarray(t.length-a);let w,v;if(t=t.subarray(0,t.length-a),!f||t.length?(c.unshift(r),w=i[e](t,n.getNonce(m,d),u),g+=t.length-a+s):(h.setInt32(17,y),w=i[e](r,n.getNonce(m,d),l),g+=s,v=!0),y+=t.length-a,p=p.then((()=>w)).then((async e=>{await b.ready,await b.write(e),g-=e.length})).catch((e=>b.abort(e))),(v||g>b.desiredSize)&&await p,v){await b.close();break}h.setInt32(9,++f)}}catch(e){await b.abort(e)}}))}}class gc{static get tag(){return ae.packet.publicKeyEncryptedSessionKey}constructor(){this.version=3,this.publicKeyID=new ge,this.publicKeyAlgorithm=null,this.sessionKey=null,this.sessionKeyAlgorithm=null,this.encrypted={}}read(e){if(this.version=e[0],3!==this.version)throw new mi(`Version ${this.version} of the PKESK packet is unsupported.`);this.publicKeyID.read(e.subarray(1,e.length)),this.publicKeyAlgorithm=e[9],this.encrypted=ua.parseEncSessionKeyParams(this.publicKeyAlgorithm,e.subarray(10))}write(){const e=[new Uint8Array([this.version]),this.publicKeyID.write(),new Uint8Array([this.publicKeyAlgorithm]),ua.serializeParams(this.publicKeyAlgorithm,this.encrypted)];return Z.concatUint8Array(e)}async encrypt(e){const t=Z.concatUint8Array([new Uint8Array([ae.write(ae.symmetric,this.sessionKeyAlgorithm)]),this.sessionKey,Z.writeChecksum(this.sessionKey)]),r=ae.write(ae.publicKey,this.publicKeyAlgorithm);this.encrypted=await ua.publicKeyEncrypt(r,e.publicParams,t,e.getFingerprintBytes())}async decrypt(e,t){if(this.publicKeyAlgorithm!==e.algorithm)throw new Error("Decryption error");const r=t?Z.concatUint8Array([new Uint8Array([t.sessionKeyAlgorithm]),t.sessionKey,Z.writeChecksum(t.sessionKey)]):null,n=await ua.publicKeyDecrypt(this.publicKeyAlgorithm,e.publicParams,e.privateParams,this.encrypted,e.getFingerprintBytes(),r),i=n[0],a=n.subarray(1,n.length-2),s=n.subarray(n.length-2),o=Z.writeChecksum(a),c=o[0]===s[0]&o[1]===s[1];if(t){const e=c&i===t.sessionKeyAlgorithm&a.length===t.sessionKey.length;this.sessionKeyAlgorithm=Z.selectUint8(e,i,t.sessionKeyAlgorithm),this.sessionKey=Z.selectUint8Array(e,a,t.sessionKey)}else{if(!c||!ae.read(ae.symmetric,i))throw new Error("Decryption error");this.sessionKey=a,this.sessionKeyAlgorithm=i}}}class mc{constructor(e=se){this.algorithm=ae.hash.sha256,this.type="iterated",this.c=e.s2kIterationCountByte,this.salt=null}getCount(){return 16+(15&this.c)<<6+(this.c>>4)}read(e){let t=0;switch(this.type=ae.read(ae.s2k,e[t++]),this.algorithm=e[t++],this.type){case"simple":break;case"salted":this.salt=e.subarray(t,t+8),t+=8;break;case"iterated":this.salt=e.subarray(t,t+8),t+=8,this.c=e[t++];break;case"gnu":if("GNU"!==Z.uint8ArrayToString(e.subarray(t,t+3)))throw new Error("Unknown s2k type.");if(t+=3,1001!==1e3+e[t++])throw new Error("Unknown s2k gnu protection mode.");this.type="gnu-dummy";break;default:throw new Error("Unknown s2k type.")}return t}write(){if("gnu-dummy"===this.type)return new Uint8Array([101,0,...Z.stringToUint8Array("GNU"),1]);const e=[new Uint8Array([ae.write(ae.s2k,this.type),this.algorithm])];switch(this.type){case"simple":break;case"salted":e.push(this.salt);break;case"iterated":e.push(this.salt),e.push(new Uint8Array([this.c]));break;case"gnu":throw new Error("GNU s2k type not supported.");default:throw new Error("Unknown s2k type.")}return Z.concatUint8Array(e)}async produceKey(e,t){e=Z.encodeUTF8(e);const r=[];let n=0,i=0;for(;n{this.privateParams[e].fill(0),delete this.privateParams[e]})),this.privateParams=null,this.isEncrypted=!0)}}async function xc(e,t,r){const{keySize:n}=ua.getCipher(r);return e.produceKey(t,n)}var Pc=ct((function(e){!function(t){function r(e){function t(){return _e0&&(t.semantic=" "),t}}function g(e,t){return function(){var n,a,o,u,l;for(u=r(),n=s("star"),o=0,l=void 0===t?0:t;null!==(a=e());)o+=1,c(n,a);return o>=l?n:(i(u),null)}}function m(e){return e.charCodeAt(0)>=128}function b(){return o("cr",l("\r")())}function w(){return o("crlf",h(b,A)())}function v(){return o("dquote",l('"')())}function k(){return o("htab",l("\t")())}function A(){return o("lf",l("\n")())}function _(){return o("sp",l(" ")())}function S(){return o("vchar",u((function(t){var r=t.charCodeAt(0),n=33<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n})))}function E(){return o("wsp",d(_,k)())}function x(){var e=o("quoted-pair",d(h(l("\\"),d(S,E)),ne)());return null===e?null:(e.semantic=e.semantic[1],e)}function P(){return o("fws",d(ae,h(f(h(g(E),p(w))),g(E,1)))())}function C(){return o("ctext",d((function(){return u((function(t){var r=t.charCodeAt(0),n=33<=r&&r<=39||42<=r&&r<=91||93<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n}))}),te)())}function T(){return o("ccontent",d(C,x,M)())}function M(){return o("comment",h(l("("),g(h(f(P),T)),f(P),l(")"))())}function I(){return o("cfws",d(h(g(h(f(P),M),1),f(P)),P)())}function D(){return o("atext",u((function(t){var r="a"<=t&&t<="z"||"A"<=t&&t<="Z"||"0"<=t&&t<="9"||["!","#","$","%","&","'","*","+","-","/","=","?","^","_","`","{","|","}","~"].indexOf(t)>=0;return e.rfc6532&&(r=r||m(t)),r})))}function B(){return o("atom",h(y(f(I)),g(D,1),y(f(I)))())}function U(){var e,t;return null===(e=o("dot-atom-text",g(D,1)()))||null!==(t=g(h(l("."),g(D,1)))())&&c(e,t),e}function R(){return o("dot-atom",h(p(f(I)),U,p(f(I)))())}function K(){return o("qtext",d((function(){return u((function(t){var r=t.charCodeAt(0),n=33===r||35<=r&&r<=91||93<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n}))}),re)())}function O(){return o("qcontent",d(K,x)())}function N(){return o("quoted-string",h(p(f(I)),p(v),g(h(f(y(P)),O)),f(p(P)),p(v),p(f(I)))())}function L(){return o("word",d(B,N)())}function q(){return o("address",d(F,H)())}function F(){return o("mailbox",d(z,Q)())}function z(){return o("name-addr",h(f(W),j)())}function j(){return o("angle-addr",d(h(p(f(I)),l("<"),Q,l(">"),p(f(I))),se)())}function H(){return o("group",h(W,l(":"),f($),l(";"),p(f(I)))())}function W(){return o("display-name",(null!==(e=o("phrase",d(ie,g(L,1))()))&&(e.semantic=function(e){return e.replace(/([ \t]|\r\n)+/g," ").replace(/^\s*/,"").replace(/\s*$/,"")}(e.semantic)),e));var e}function V(){return o("mailbox-list",d(h(F,g(h(l(","),F))),ue)())}function G(){return o("address-list",d(h(q,g(h(l(","),q))),le)())}function $(){return o("group-list",d(V,p(I),he)())}function J(){return o("local-part",d(de,R,N)())}function Z(){return o("dtext",d((function(){return u((function(t){var r=t.charCodeAt(0),n=33<=r&&r<=90||94<=r&&r<=126;return e.rfc6532&&(n=n||m(t)),n}))}),pe)())}function Y(){return o("domain-literal",h(p(f(I)),l("["),g(h(f(P),Z)),f(P),l("]"),p(f(I)))())}function X(){return o("domain",(t=d(fe,R,Y)(),e.rejectTLD&&t&&t.semantic&&t.semantic.indexOf(".")<0?null:(t&&(t.semantic=t.semantic.replace(/\s+/g,"")),t)));var t}function Q(){return o("addr-spec",h(J,l("@"),X)())}function ee(){return e.strict?null:o("obs-NO-WS-CTL",u((function(e){var t=e.charCodeAt(0);return 1<=t&&t<=8||11===t||12===t||14<=t&&t<=31||127===t})))}function te(){return e.strict?null:o("obs-ctext",ee())}function re(){return e.strict?null:o("obs-qtext",ee())}function ne(){return e.strict?null:o("obs-qp",h(l("\\"),d(l("\0"),ee,A,b))())}function ie(){return e.strict?null:e.atInDisplayName?o("obs-phrase",h(L,g(d(L,l("."),l("@"),y(I))))()):o("obs-phrase",h(L,g(d(L,l("."),y(I))))())}function ae(){return e.strict?null:o("obs-FWS",g(h(p(f(w)),E),1)())}function se(){return e.strict?null:o("obs-angle-addr",h(p(f(I)),l("<"),oe,Q,l(">"),p(f(I)))())}function oe(){return e.strict?null:o("obs-route",h(ce,l(":"))())}function ce(){return e.strict?null:o("obs-domain-list",h(g(d(p(I),l(","))),l("@"),X,g(h(l(","),p(f(I)),f(h(l("@"),X)))))())}function ue(){return e.strict?null:o("obs-mbox-list",h(g(h(p(f(I)),l(","))),F,g(h(l(","),f(h(F,p(I))))))())}function le(){return e.strict?null:o("obs-addr-list",h(g(h(p(f(I)),l(","))),q,g(h(l(","),f(h(q,p(I))))))())}function he(){return e.strict?null:o("obs-group-list",h(g(h(p(f(I)),l(",")),1),p(f(I)))())}function de(){return e.strict?null:o("obs-local-part",h(L,g(h(l("."),L)))())}function fe(){return e.strict?null:o("obs-domain",h(B,g(h(l("."),B)))())}function pe(){return e.strict?null:o("obs-dtext",d(ee,x)())}function ye(e,t){var r,n,i;if(null==t)return null;for(n=[t];n.length>0;){if((i=n.pop()).name===e)return i;for(r=i.children.length-1;r>=0;r-=1)n.push(i.children[r])}return null}function ge(e,t){var r,n,i,a,s;if(null==t)return null;for(n=[t],a=[],s={},r=0;r0;)if((i=n.pop()).name in s)a.push(i);else for(r=i.children.length-1;r>=0;r-=1)n.push(i.children[r]);return a}function me(t){var r,n,i,a,s;if(null===t)return null;for(r=[],n=ge(["group","mailbox"],t),i=0;i1?null:t.addresses&&t.addresses[0]:null}(s):e.simple?s&&s.addresses:s}function be(e){var t,r=ye("display-name",e),n=[],i=ge(["mailbox"],e);for(t=0;t0;)for("cfws"===(i=n.pop()).name&&a.push(i),r=i.children.length-1;r>=0;r-=1)n.push(i.children[r]);return a}(0,e),i=ge(["comment"],e),a=ye("local-part",r),s=ye("domain",r);return{node:e,parts:{name:t,address:r,local:a,domain:s,comments:n},type:e.name,name:ve(t),address:ve(r),local:ve(a),domain:ve(s),comments:ke(i),groupName:ve(e.groupName)}}function ve(e){return null!=e?e.semantic:null}function ke(e){var t="";if(e)for(var r=0;r`),t.userID=r.join(" "),t}read(e,t=se){const r=Z.decodeUTF8(e);if(r.length>t.maxUserIDLength)throw new Error("User ID string is too long");try{const{name:e,address:t,comments:n}=Pc.parseOneAddress({input:r,atInDisplayName:!0});this.comment=n.replace(/^\(|\)$/g,""),this.name=e,this.email=t}catch(e){}this.userID=r}write(){return Z.encodeUTF8(this.userID)}equals(e){return e&&e.userID===this.userID}}class Tc extends Ec{static get tag(){return ae.packet.secretSubkey}constructor(e=new Date,t=se){super(e,t)}}class Mc{static get tag(){return ae.packet.trust}read(){throw new mi("Trust packets are not supported")}write(){throw new mi("Trust packets are not supported")}}const Ic=Z.constructAllowedPackets([Xo]);class Dc{constructor(e){this.packets=e||new rc}write(){return this.packets.write()}armor(e=se){return ye(ae.armor.signature,this.write(),void 0,void 0,void 0,e)}getSigningKeyIDs(){return this.packets.map((e=>e.issuerKeyID))}}async function Bc({armoredSignature:e,binarySignature:t,config:r,...n}){r={...se,...r};let i=e||t;if(!i)throw new Error("readSignature: must pass options object containing `armoredSignature` or `binarySignature`");if(e&&!Z.isString(e))throw new Error("readSignature: options.armoredSignature must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readSignature: options.binarySignature must be a Uint8Array");const a=Object.keys(n);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);if(e){const{type:e,data:t}=await pe(i,r);if(e!==ae.armor.signature)throw new Error("Armored text not of type signature");i=t}const s=await rc.fromBinary(i,Ic,r);return new Dc(s)}async function Uc(e,t){const r=new Tc(e.date,t);return r.packets=null,r.algorithm=ae.write(ae.publicKey,e.algorithm),await r.generate(e.rsaBits,e.curve),await r.computeFingerprintAndKeyID(),r}async function Rc(e,t){const r=new Ec(e.date,t);return r.packets=null,r.algorithm=ae.write(ae.publicKey,e.algorithm),await r.generate(e.rsaBits,e.curve,e.config),await r.computeFingerprintAndKeyID(),r}async function Kc(e,t,r,n,i=new Date,a){let s,o;for(let c=e.length-1;c>=0;c--)try{(!s||e[c].created>=s.created)&&(await e[c].verify(t,r,n,i,void 0,a),s=e[c])}catch(e){o=e}if(!s)throw Z.wrapError(`Could not find valid ${ae.read(ae.signature,r)} signature in key ${t.getKeyID().toHex()}`.replace("certGeneric ","self-").replace(/([a-z])([A-Z])/g,((e,t,r)=>t+" "+r.toLowerCase())),o);return s}function Oc(e,t,r=new Date){const n=Z.normalizeDate(r);if(null!==n){const r=Hc(e,t);return!(e.created<=n&&n0&&(a.keyExpirationTime=r.keyExpirationTime,a.keyNeverExpires=!1),await a.sign(t,i,r.date),a}async function Lc(e,t,r=new Date,n={},i){let a=i.preferredHashAlgorithm,s=a;if(e){const t=await e.getPrimaryUser(r,n,i);t.selfCertification.preferredHashAlgorithms&&([s]=t.selfCertification.preferredHashAlgorithms,a=ua.hash.getHashByteLength(a)<=ua.hash.getHashByteLength(s)?s:a)}switch(Object.getPrototypeOf(t)){case Ec.prototype:case wc.prototype:case Tc.prototype:case _c.prototype:switch(t.algorithm){case ae.publicKey.ecdh:case ae.publicKey.ecdsa:case ae.publicKey.eddsa:s=ua.publicKey.elliptic.getPreferredHashAlgo(t.publicParams.oid)}}return ua.hash.getHashByteLength(a)<=ua.hash.getHashByteLength(s)?s:a}async function qc(e,t=[],r=new Date,n=[],i=se){const a={symmetric:ae.symmetric.aes128,aead:ae.aead.eax,compression:ae.compression.uncompressed}[e],s={symmetric:i.preferredSymmetricAlgorithm,aead:i.preferredAEADAlgorithm,compression:i.preferredCompressionAlgorithm}[e],o={symmetric:"preferredSymmetricAlgorithms",aead:"preferredAEADAlgorithms",compression:"preferredCompressionAlgorithms"}[e],c=await Promise.all(t.map((async function(e,t){const a=(await e.getPrimaryUser(r,n[t],i)).selfCertification[o];return!!a&&a.indexOf(s)>=0})));return c.every(Boolean)?s:a}async function Fc(e,t,r,n,i,a,s=[],o=!1,c){if(r.isDummy())throw new Error("Cannot sign with a gnu-dummy key.");if(!r.isDecrypted())throw new Error("Signing key is not decrypted.");const u=new Xo;return Object.assign(u,n),u.publicKeyAlgorithm=r.algorithm,u.hashAlgorithm=await Lc(t,r,i,a,c),u.rawNotations=s,await u.sign(r,e,i,o),u}async function zc(e,t,r,n=new Date,i){(e=e[r])&&(t[r].length?await Promise.all(e.map((async function(e){e.isExpired(n)||i&&!await i(e)||t[r].some((function(t){return Z.equalsUint8Array(t.writeParams(),e.writeParams())}))||t[r].push(e)}))):t[r]=e)}async function jc(e,t,r,n,i,a,s=new Date,o){a=a||e;const c=[];return await Promise.all(n.map((async function(e){try{i&&!e.issuerKeyID.equals(i.issuerKeyID)||(await e.verify(a,t,r,o.revocationsExpire?s:null,!1,o),c.push(e.issuerKeyID))}catch(e){}}))),i?(i.revoked=!!c.some((e=>e.equals(i.issuerKeyID)))||i.revoked||!1,i.revoked):c.length>0}function Hc(e,t){let r;return!1===t.keyNeverExpires&&(r=e.created.getTime()+1e3*t.keyExpirationTime),r?new Date(r):1/0}function Wc(e,t={}){switch(e.type=e.type||t.type,e.curve=e.curve||t.curve,e.rsaBits=e.rsaBits||t.rsaBits,e.keyExpirationTime=void 0!==e.keyExpirationTime?e.keyExpirationTime:t.keyExpirationTime,e.passphrase=Z.isString(e.passphrase)?e.passphrase:t.passphrase,e.date=e.date||t.date,e.sign=e.sign||!1,e.type){case"ecc":try{e.curve=ae.write(ae.curve,e.curve)}catch(e){throw new Error("Unknown curve")}e.curve!==ae.curve.ed25519&&e.curve!==ae.curve.curve25519||(e.curve=e.sign?ae.curve.ed25519:ae.curve.curve25519),e.sign?e.algorithm=e.curve===ae.curve.ed25519?ae.publicKey.eddsa:ae.publicKey.ecdsa:e.algorithm=ae.publicKey.ecdh;break;case"rsa":e.algorithm=ae.publicKey.rsaEncryptSign;break;default:throw new Error(`Unsupported key type ${e.type}`)}return e}function Vc(e,t){const r=e.algorithm;return r!==ae.publicKey.rsaEncrypt&&r!==ae.publicKey.elgamal&&r!==ae.publicKey.ecdh&&(!t.keyFlags||0!=(t.keyFlags[0]&ae.keyFlags.signData))}function Gc(e,t){const r=e.algorithm;return r!==ae.publicKey.dsa&&r!==ae.publicKey.rsaSign&&r!==ae.publicKey.ecdsa&&r!==ae.publicKey.eddsa&&(!t.keyFlags||0!=(t.keyFlags[0]&ae.keyFlags.encryptCommunication)||0!=(t.keyFlags[0]&ae.keyFlags.encryptStorage))}function $c(e,t){return!!t.allowInsecureDecryptionWithSigningKeys||!e.keyFlags||0!=(e.keyFlags[0]&ae.keyFlags.encryptCommunication)||0!=(e.keyFlags[0]&ae.keyFlags.encryptStorage)}function Jc(e,t){const r=ae.write(ae.publicKey,e.algorithm),n=e.getAlgorithmInfo();if(t.rejectPublicKeyAlgorithms.has(r))throw new Error(`${n.algorithm} keys are considered too weak.`);switch(r){case ae.publicKey.rsaEncryptSign:case ae.publicKey.rsaSign:case ae.publicKey.rsaEncrypt:if(n.bitse.getKeys(o).length>0));return 0===c.length?null:(await Promise.all(c.map((async t=>{const a=await t.getSigningKey(o,e.created,void 0,n);if(e.revoked||await i.isRevoked(e,a.keyPacket,r,n))throw new Error("User certificate is revoked");try{await e.verify(a.keyPacket,ae.signature.certGeneric,s,r,void 0,n)}catch(e){throw Z.wrapError("User certificate is invalid",e)}}))),!0)}async verifyAllCertifications(e,t=new Date,r){const n=this,i=this.selfCertifications.concat(this.otherCertifications);return Promise.all(i.map((async i=>({keyID:i.issuerKeyID,valid:await n.verifyCertificate(i,e,t,r).catch((()=>!1))}))))}async verify(e=new Date,t){if(!this.selfCertifications.length)throw new Error("No self-certifications found");const r=this,n=this.mainKey.keyPacket,i={userID:this.userID,userAttribute:this.userAttribute,key:n};let a;for(let s=this.selfCertifications.length-1;s>=0;s--)try{const a=this.selfCertifications[s];if(a.revoked||await r.isRevoked(a,void 0,e,t))throw new Error("Self-certification is revoked");try{await a.verify(n,ae.signature.certGeneric,i,e,void 0,t)}catch(e){throw Z.wrapError("Self-certification is invalid",e)}return!0}catch(e){a=e}throw a}async update(e,t,r){const n=this.mainKey.keyPacket,i={userID:this.userID,userAttribute:this.userAttribute,key:n};await zc(e,this,"selfCertifications",t,(async function(e){try{return await e.verify(n,ae.signature.certGeneric,i,t,!1,r),!0}catch(e){return!1}})),await zc(e,this,"otherCertifications",t),await zc(e,this,"revocationSignatures",t,(function(e){return jc(n,ae.signature.certRevocation,i,[e],void 0,void 0,t,r)}))}async revoke(e,{flag:t=ae.reasonForRevocation.noReason,string:r=""}={},n=new Date,i=se){const a={userID:this.userID,userAttribute:this.userAttribute,key:e},s=new Zc(a.userID||a.userAttribute,this.mainKey);return s.revocationSignatures.push(await Fc(a,null,e,{signatureType:ae.signature.certRevocation,reasonForRevocationFlag:ae.write(ae.reasonForRevocation,t),reasonForRevocationString:r},n,void 0,void 0,!1,i)),await s.update(this),s}}class Yc{constructor(e,t){this.keyPacket=e,this.bindingSignatures=[],this.revocationSignatures=[],this.mainKey=t}toPacketList(){const e=new rc;return e.push(this.keyPacket),e.push(...this.revocationSignatures),e.push(...this.bindingSignatures),e}clone(){const e=new Yc(this.keyPacket,this.mainKey);return e.bindingSignatures=[...this.bindingSignatures],e.revocationSignatures=[...this.revocationSignatures],e}async isRevoked(e,t,r=new Date,n=se){const i=this.mainKey.keyPacket;return jc(i,ae.signature.subkeyRevocation,{key:i,bind:this.keyPacket},this.revocationSignatures,e,t,r,n)}async verify(e=new Date,t=se){const r=this.mainKey.keyPacket,n={key:r,bind:this.keyPacket},i=await Kc(this.bindingSignatures,r,ae.signature.subkeyBinding,n,e,t);if(i.revoked||await this.isRevoked(i,null,e,t))throw new Error("Subkey is revoked");if(Oc(this.keyPacket,i,e))throw new Error("Subkey is expired");return i}async getExpirationTime(e=new Date,t=se){const r=this.mainKey.keyPacket,n={key:r,bind:this.keyPacket};let i;try{i=await Kc(this.bindingSignatures,r,ae.signature.subkeyBinding,n,e,t)}catch(e){return null}const a=Hc(this.keyPacket,i),s=i.getExpirationTime();return ai.bindingSignatures[t].created&&(i.bindingSignatures[t]=e),!1;try{return await e.verify(n,ae.signature.subkeyBinding,a,t,void 0,r),!0}catch(e){return!1}})),await zc(e,this,"revocationSignatures",t,(function(e){return jc(n,ae.signature.subkeyRevocation,a,[e],void 0,void 0,t,r)}))}async revoke(e,{flag:t=ae.reasonForRevocation.noReason,string:r=""}={},n=new Date,i=se){const a={key:e,bind:this.keyPacket},s=new Yc(this.keyPacket,this.mainKey);return s.revocationSignatures.push(await Fc(a,null,e,{signatureType:ae.signature.subkeyRevocation,reasonForRevocationFlag:ae.write(ae.reasonForRevocation,t),reasonForRevocationString:r},n,void 0,void 0,!1,i)),await s.update(this),s}hasSameFingerprintAs(e){return this.keyPacket.hasSameFingerprintAs(e.keyPacket||e)}}["getKeyID","getFingerprint","getAlgorithmInfo","getCreationTime","isDecrypted"].forEach((e=>{Yc.prototype[e]=function(){return this.keyPacket[e]()}}));const Xc=Z.constructAllowedPackets([Xo]),Qc=new Set([ae.packet.publicKey,ae.packet.privateKey]),eu=new Set([ae.packet.publicKey,ae.packet.privateKey,ae.packet.publicSubkey,ae.packet.privateSubkey]);class tu{packetListToStructure(e,t=new Set){let r,n,i,a;for(const s of e){if(s instanceof bi){eu.has(s.tag)&&!a&&(a=Qc.has(s.tag)?Qc:eu);continue}const e=s.constructor.tag;if(a){if(!a.has(e))continue;a=null}if(t.has(e))throw new Error(`Unexpected packet type: ${e}`);switch(e){case ae.packet.publicKey:case ae.packet.secretKey:if(this.keyPacket)throw new Error("Key block contains multiple keys");if(this.keyPacket=s,n=this.getKeyID(),!n)throw new Error("Missing Key ID");break;case ae.packet.userID:case ae.packet.userAttribute:r=new Zc(s,this),this.users.push(r);break;case ae.packet.publicSubkey:case ae.packet.secretSubkey:r=null,i=new Yc(s,this),this.subkeys.push(i);break;case ae.packet.signature:switch(s.signatureType){case ae.signature.certGeneric:case ae.signature.certPersona:case ae.signature.certCasual:case ae.signature.certPositive:if(!r){Z.printDebug("Dropping certification signatures without preceding user packet");continue}s.issuerKeyID.equals(n)?r.selfCertifications.push(s):r.otherCertifications.push(s);break;case ae.signature.certRevocation:r?r.revocationSignatures.push(s):this.directSignatures.push(s);break;case ae.signature.key:this.directSignatures.push(s);break;case ae.signature.subkeyBinding:if(!i){Z.printDebug("Dropping subkey binding signature without preceding subkey packet");continue}i.bindingSignatures.push(s);break;case ae.signature.keyRevocation:this.revocationSignatures.push(s);break;case ae.signature.subkeyRevocation:if(!i){Z.printDebug("Dropping subkey revocation signature without preceding subkey packet");continue}i.revocationSignatures.push(s)}}}}toPacketList(){const e=new rc;return e.push(this.keyPacket),e.push(...this.revocationSignatures),e.push(...this.directSignatures),this.users.map((t=>e.push(...t.toPacketList()))),this.subkeys.map((t=>e.push(...t.toPacketList()))),e}clone(e=!1){const t=new this.constructor(this.toPacketList());return e&&t.getKeys().forEach((e=>{if(e.keyPacket=Object.create(Object.getPrototypeOf(e.keyPacket),Object.getOwnPropertyDescriptors(e.keyPacket)),!e.keyPacket.isDecrypted())return;const t={};Object.keys(e.keyPacket.privateParams).forEach((r=>{t[r]=new Uint8Array(e.keyPacket.privateParams[r])})),e.keyPacket.privateParams=t})),t}getSubkeys(e=null){return this.subkeys.filter((t=>!e||t.getKeyID().equals(e,!0)))}getKeys(e=null){const t=[];return e&&!this.getKeyID().equals(e,!0)||t.push(this),t.concat(this.getSubkeys(e))}getKeyIDs(){return this.getKeys().map((e=>e.getKeyID()))}getUserIDs(){return this.users.map((e=>e.userID?e.userID.userID:null)).filter((e=>null!==e))}write(){return this.toPacketList().write()}async getSigningKey(e=null,t=new Date,r={},n=se){await this.verifyPrimaryKey(t,r,n);const i=this.keyPacket,a=this.subkeys.slice().sort(((e,t)=>t.keyPacket.created-e.keyPacket.created));let s;for(const r of a)if(!e||r.getKeyID().equals(e))try{await r.verify(t,n);const e={key:i,bind:r.keyPacket},a=await Kc(r.bindingSignatures,i,ae.signature.subkeyBinding,e,t,n);if(!Vc(r.keyPacket,a))continue;if(!a.embeddedSignature)throw new Error("Missing embedded signature");return await Kc([a.embeddedSignature],r.keyPacket,ae.signature.keyBinding,e,t,n),Jc(r.keyPacket,n),r}catch(e){s=e}try{const a=await this.getPrimaryUser(t,r,n);if((!e||i.getKeyID().equals(e))&&Vc(i,a.selfCertification))return Jc(i,n),this}catch(e){s=e}throw Z.wrapError("Could not find valid signing key packet in key "+this.getKeyID().toHex(),s)}async getEncryptionKey(e,t=new Date,r={},n=se){await this.verifyPrimaryKey(t,r,n);const i=this.keyPacket,a=this.subkeys.slice().sort(((e,t)=>t.keyPacket.created-e.keyPacket.created));let s;for(const r of a)if(!e||r.getKeyID().equals(e))try{await r.verify(t,n);const e={key:i,bind:r.keyPacket},a=await Kc(r.bindingSignatures,i,ae.signature.subkeyBinding,e,t,n);if(Gc(r.keyPacket,a))return Jc(r.keyPacket,n),r}catch(e){s=e}try{const a=await this.getPrimaryUser(t,r,n);if((!e||i.getKeyID().equals(e))&&Gc(i,a.selfCertification))return Jc(i,n),this}catch(e){s=e}throw Z.wrapError("Could not find valid encryption key packet in key "+this.getKeyID().toHex(),s)}async isRevoked(e,t,r=new Date,n=se){return jc(this.keyPacket,ae.signature.keyRevocation,{key:this.keyPacket},this.revocationSignatures,e,t,r,n)}async verifyPrimaryKey(e=new Date,t={},r=se){const n=this.keyPacket;if(await this.isRevoked(null,null,e,r))throw new Error("Primary key is revoked");const{selfCertification:i}=await this.getPrimaryUser(e,t,r);if(Oc(n,i,e))throw new Error("Primary key is expired");const a=await Kc(this.directSignatures,n,ae.signature.key,{key:n},e,r).catch((()=>{}));if(a&&Oc(n,a,e))throw new Error("Primary key is expired")}async getExpirationTime(e,t=se){let r;try{const{selfCertification:n}=await this.getPrimaryUser(null,e,t),i=Hc(this.keyPacket,n),a=n.getExpirationTime(),s=await Kc(this.directSignatures,this.keyPacket,ae.signature.key,{key:this.keyPacket},null,t).catch((()=>{}));if(s){const e=Hc(this.keyPacket,s);r=Math.min(i,a,e)}else r=ie.subkeys.some((e=>t.hasSameFingerprintAs(e))))))throw new Error("Cannot update public key with private key if subkeys mismatch");return e.update(this,r)}const n=this.clone();return await zc(e,n,"revocationSignatures",t,(i=>jc(n.keyPacket,ae.signature.keyRevocation,n,[i],null,e.keyPacket,t,r))),await zc(e,n,"directSignatures",t),await Promise.all(e.users.map((async e=>{const i=n.users.filter((t=>e.userID&&e.userID.equals(t.userID)||e.userAttribute&&e.userAttribute.equals(t.userAttribute)));if(i.length>0)await Promise.all(i.map((n=>n.update(e,t,r))));else{const t=e.clone();t.mainKey=n,n.users.push(t)}}))),await Promise.all(e.subkeys.map((async e=>{const i=n.subkeys.filter((t=>t.hasSameFingerprintAs(e)));if(i.length>0)await Promise.all(i.map((n=>n.update(e,t,r))));else{const t=e.clone();t.mainKey=n,n.subkeys.push(t)}}))),n}async getRevocationCertificate(e=new Date,t=se){const r={key:this.keyPacket},n=await Kc(this.revocationSignatures,this.keyPacket,ae.signature.keyRevocation,r,e,t),i=new rc;return i.push(n),ye(ae.armor.publicKey,i.write(),null,null,"This is a revocation certificate")}async applyRevocationCertificate(e,t=new Date,r=se){const n=await pe(e,r),i=(await rc.fromBinary(n.data,Xc,r)).findPacket(ae.packet.signature);if(!i||i.signatureType!==ae.signature.keyRevocation)throw new Error("Could not find revocation signature packet");if(!i.issuerKeyID.equals(this.getKeyID()))throw new Error("Revocation signature does not match key");try{await i.verify(this.keyPacket,ae.signature.keyRevocation,{key:this.keyPacket},t,void 0,r)}catch(e){throw Z.wrapError("Could not verify revocation signature",e)}const a=this.clone();return a.revocationSignatures.push(i),a}async signPrimaryUser(e,t,r,n=se){const{index:i,user:a}=await this.getPrimaryUser(t,r,n),s=await a.certify(e,t,n),o=this.clone();return o.users[i]=s,o}async signAllUsers(e,t=new Date,r=se){const n=this.clone();return n.users=await Promise.all(this.users.map((function(n){return n.certify(e,t,r)}))),n}async verifyPrimaryUser(e,t=new Date,r,n=se){const i=this.keyPacket,{user:a}=await this.getPrimaryUser(t,r,n);return e?await a.verifyAllCertifications(e,t,n):[{keyID:i.getKeyID(),valid:await a.verify(t,n).catch((()=>!1))}]}async verifyAllUsers(e,t=new Date,r=se){const n=this.keyPacket,i=[];return await Promise.all(this.users.map((async a=>{const s=e?await a.verifyAllCertifications(e,t,r):[{keyID:n.getKeyID(),valid:await a.verify(t,r).catch((()=>!1))}];i.push(...s.map((e=>({userID:a.userID?a.userID.userID:null,userAttribute:a.userAttribute,keyID:e.keyID,valid:e.valid}))))}))),i}}["getKeyID","getFingerprint","getAlgorithmInfo","getCreationTime","hasSameFingerprintAs"].forEach((e=>{tu.prototype[e]=Yc.prototype[e]}));class ru extends tu{constructor(e){if(super(),this.keyPacket=null,this.revocationSignatures=[],this.directSignatures=[],this.users=[],this.subkeys=[],e&&(this.packetListToStructure(e,new Set([ae.packet.secretKey,ae.packet.secretSubkey])),!this.keyPacket))throw new Error("Invalid key: missing public-key packet")}isPrivate(){return!1}toPublic(){return this}armor(e=se){return ye(ae.armor.publicKey,this.toPacketList().write(),void 0,void 0,void 0,e)}}class nu extends ru{constructor(e){if(super(),this.packetListToStructure(e,new Set([ae.packet.publicKey,ae.packet.publicSubkey])),!this.keyPacket)throw new Error("Invalid key: missing private-key packet")}isPrivate(){return!0}toPublic(){const e=new rc,t=this.toPacketList();for(const r of t)switch(r.constructor.tag){case ae.packet.secretKey:{const t=wc.fromSecretKeyPacket(r);e.push(t);break}case ae.packet.secretSubkey:{const t=_c.fromSecretSubkeyPacket(r);e.push(t);break}default:e.push(r)}return new ru(e)}armor(e=se){return ye(ae.armor.privateKey,this.toPacketList().write(),void 0,void 0,void 0,e)}async getDecryptionKeys(e,t=new Date,r={},n=se){const i=this.keyPacket,a=[];for(let r=0;re.isDecrypted()))}async validate(e=se){if(!this.isPrivate())throw new Error("Cannot validate a public key");let t;if(this.keyPacket.isDummy()){const r=await this.getSigningKey(null,null,void 0,{...e,rejectPublicKeyAlgorithms:new Set,minRSABits:0});r&&!r.keyPacket.isDummy()&&(t=r.keyPacket)}else t=this.keyPacket;if(t)return t.validate();{const e=this.getKeys(),t=e.map((e=>e.keyPacket.isDummy())).every(Boolean);if(t)throw new Error("Cannot validate an all-gnu-dummy key");return Promise.all(e.map((async e=>e.keyPacket.validate())))}}clearPrivateParams(){this.getKeys().forEach((({keyPacket:e})=>{e.isDecrypted()&&e.clearPrivateParams()}))}async revoke({flag:e=ae.reasonForRevocation.noReason,string:t=""}={},r=new Date,n=se){if(!this.isPrivate())throw new Error("Need private key for revoking");const i={key:this.keyPacket},a=this.clone();return a.revocationSignatures.push(await Fc(i,null,this.keyPacket,{signatureType:ae.signature.keyRevocation,reasonForRevocationFlag:ae.write(ae.reasonForRevocation,e),reasonForRevocationString:t},r,void 0,void 0,void 0,n)),a}async addSubkey(e={}){const t={...se,...e.config};if(e.passphrase)throw new Error("Subkey could not be encrypted here, please encrypt whole key");if(e.rsaBitse!==t))]}const s=Cc.fromObject(t),o={};o.userID=s,o.key=e;const c=new Xo;return c.signatureType=ae.signature.certGeneric,c.publicKeyAlgorithm=e.algorithm,c.hashAlgorithm=await Lc(null,e,void 0,void 0,n),c.keyFlags=[ae.keyFlags.certifyKeys|ae.keyFlags.signData],c.preferredSymmetricAlgorithms=a([ae.symmetric.aes256,ae.symmetric.aes128,ae.symmetric.aes192],n.preferredSymmetricAlgorithm),n.aeadProtect&&(c.preferredAEADAlgorithms=a([ae.aead.eax,ae.aead.ocb],n.preferredAEADAlgorithm)),c.preferredHashAlgorithms=a([ae.hash.sha256,ae.hash.sha512],n.preferredHashAlgorithm),c.preferredCompressionAlgorithms=a([ae.compression.zlib,ae.compression.zip,ae.compression.uncompressed],n.preferredCompressionAlgorithm),0===i&&(c.isPrimaryUserID=!0),c.features=[0],c.features[0]|=ae.features.modificationDetection,n.aeadProtect&&(c.features[0]|=ae.features.aead),n.v5Keys&&(c.features[0]|=ae.features.v5Keys),r.keyExpirationTime>0&&(c.keyExpirationTime=r.keyExpirationTime,c.keyNeverExpires=!1),await c.sign(e,o,r.date),{userIDPacket:s,signaturePacket:c}}))).then((e=>{e.forEach((({userIDPacket:e,signaturePacket:t})=>{i.push(e),i.push(t)}))})),await Promise.all(t.map((async function(t,i){const a=r.subkeys[i];return{secretSubkeyPacket:t,subkeySignaturePacket:await Nc(t,e,a,n)}}))).then((e=>{e.forEach((({secretSubkeyPacket:e,subkeySignaturePacket:t})=>{i.push(e),i.push(t)}))}));const a={key:e};return i.push(await Fc(a,null,e,{signatureType:ae.signature.keyRevocation,reasonForRevocationFlag:ae.reasonForRevocation.noReason,reasonForRevocationString:""},r.date,void 0,void 0,void 0,n)),r.passphrase&&e.clearPrivateParams(),await Promise.all(t.map((async function(e,t){r.subkeys[t].passphrase&&e.clearPrivateParams()}))),new nu(i)}async function ou({armoredKey:e,binaryKey:t,config:r,...n}){if(r={...se,...r},!e&&!t)throw new Error("readKey: must pass options object containing `armoredKey` or `binaryKey`");if(e&&!Z.isString(e))throw new Error("readKey: options.armoredKey must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readKey: options.binaryKey must be a Uint8Array");const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);let a;if(e){const{type:t,data:n}=await pe(e,r);if(t!==ae.armor.publicKey&&t!==ae.armor.privateKey)throw new Error("Armored text not of type key");a=n}else a=t;return au(await rc.fromBinary(a,iu,r))}async function cu({armoredKey:e,binaryKey:t,config:r,...n}){if(r={...se,...r},!e&&!t)throw new Error("readPrivateKey: must pass options object containing `armoredKey` or `binaryKey`");if(e&&!Z.isString(e))throw new Error("readPrivateKey: options.armoredKey must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readPrivateKey: options.binaryKey must be a Uint8Array");const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);let a;if(e){const{type:t,data:n}=await pe(e,r);if(t!==ae.armor.privateKey)throw new Error("Armored text not of type private key");a=n}else a=t;const s=await rc.fromBinary(a,iu,r);return new nu(s)}async function uu({armoredKeys:e,binaryKeys:t,config:r,...n}){r={...se,...r};let i=e||t;if(!i)throw new Error("readKeys: must pass options object containing `armoredKeys` or `binaryKeys`");if(e&&!Z.isString(e))throw new Error("readKeys: options.armoredKeys must be a string");if(t&&!Z.isUint8Array(t))throw new Error("readKeys: options.binaryKeys must be a Uint8Array");const a=Object.keys(n);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);if(e){const{type:t,data:n}=await pe(e,r);if(t!==ae.armor.publicKey&&t!==ae.armor.privateKey)throw new Error("Armored text not of type key");i=n}const s=[],o=await rc.fromBinary(i,iu,r),c=o.indexOfTag(ae.packet.publicKey,ae.packet.secretKey);if(0===c.length)throw new Error("No key packet found");for(let e=0;e0?t.map((e=>e.issuerKeyID)):e.packets.filterByTag(ae.packet.signature).map((e=>e.issuerKeyID))}async decrypt(e,t,r,n=new Date,i=se){const a=r||await this.decryptSessionKeys(e,t,n,i),s=this.packets.filterByTag(ae.packet.symmetricallyEncryptedData,ae.packet.symEncryptedIntegrityProtectedData,ae.packet.aeadEncryptedData);if(0===s.length)throw new Error("No encrypted data found");const o=s[0];let c=null;const u=Promise.all(a.map((async({algorithm:e,data:t})=>{if(!Z.isUint8Array(t)||!Z.isString(e))throw new Error("Invalid session key for decryption.");try{const r=ae.write(ae.symmetric,e);await o.decrypt(r,t,i)}catch(e){Z.printDebugError(e),c=e}})));if(V(o.encrypted),o.encrypted=null,await u,!o.packets||!o.packets.length)throw c||new Error("Decryption failed.");const l=new pu(o.packets);return o.packets=new rc,l}async decryptSessionKeys(e,t,r=new Date,n=se){let i,a=[];if(t){const e=this.packets.filterByTag(ae.packet.symEncryptedSessionKey);if(0===e.length)throw new Error("No symmetrically encrypted session key packet found.");await Promise.all(t.map((async function(t,r){let i;i=r?await rc.fromBinary(e.write(),du,n):e,await Promise.all(i.map((async function(e){try{await e.decrypt(t),a.push(e)}catch(e){Z.printDebugError(e)}})))})))}else{if(!e)throw new Error("No key or password specified.");{const t=this.packets.filterByTag(ae.packet.publicKeyEncryptedSessionKey);if(0===t.length)throw new Error("No public key encrypted session key packet found.");await Promise.all(t.map((async function(t){await Promise.all(e.map((async function(e){let s=[ae.symmetric.aes256,ae.symmetric.aes128,ae.symmetric.tripledes,ae.symmetric.cast5];try{const t=await e.getPrimaryUser(r,void 0,n);t.selfCertification.preferredSymmetricAlgorithms&&(s=s.concat(t.selfCertification.preferredSymmetricAlgorithms))}catch(e){}const o=(await e.getDecryptionKeys(t.publicKeyID,null,void 0,n)).map((e=>e.keyPacket));await Promise.all(o.map((async function(e){if(e&&!e.isDummy()){if(!e.isDecrypted())throw new Error("Decryption key is not decrypted.");if(!n.constantTimePKCS1Decryption||t.publicKeyAlgorithm!==ae.publicKey.rsaEncrypt&&t.publicKeyAlgorithm!==ae.publicKey.rsaEncryptSign&&t.publicKeyAlgorithm!==ae.publicKey.rsaSign&&t.publicKeyAlgorithm!==ae.publicKey.elgamal)try{if(await t.decrypt(e),!s.includes(ae.write(ae.symmetric,t.sessionKeyAlgorithm)))throw new Error("A non-preferred symmetric algorithm was used.");a.push(t)}catch(e){Z.printDebugError(e),i=e}else{const r=t.write();await Promise.all(Array.from(n.constantTimePKCS1DecryptionSupportedSymmetricAlgorithms).map((async t=>{const n=new gc;n.read(r);const s={sessionKeyAlgorithm:t,sessionKey:ua.generateSessionKey(t)};try{await n.decrypt(e,s),a.push(n)}catch(e){Z.printDebugError(e),i=e}})))}}})))}))),V(t.encrypted),t.encrypted=null})))}}if(a.length>0){if(a.length>1){const e=new Set;a=a.filter((t=>{const r=t.sessionKeyAlgorithm+Z.uint8ArrayToString(t.sessionKey);return!e.has(r)&&(e.add(r),!0)}))}return a.map((e=>({data:e.sessionKey,algorithm:ae.read(ae.symmetric,e.sessionKeyAlgorithm)})))}throw i||new Error("Session key decryption failed.")}getLiteralData(){const e=this.unwrapCompressed().packets.findPacket(ae.packet.literalData);return e&&e.getBytes()||null}getFilename(){const e=this.unwrapCompressed().packets.findPacket(ae.packet.literalData);return e&&e.getFilename()||null}getText(){const e=this.unwrapCompressed().packets.findPacket(ae.packet.literalData);return e?e.getText():null}static async generateSessionKey(e=[],t=new Date,r=[],n=se){const i=await qc("symmetric",e,t,r,n),a=ae.read(ae.symmetric,i),s=n.aeadProtect&&await async function(e,t=new Date,r=[],n=se){let i=!0;return await Promise.all(e.map((async function(e,a){const s=await e.getPrimaryUser(t,r[a],n);s.selfCertification.features&&s.selfCertification.features[0]&ae.features.aead||(i=!1)}))),i}(e,t,r,n)?ae.read(ae.aead,await qc("aead",e,t,r,n)):void 0;return{data:ua.generateSessionKey(i),algorithm:a,aeadAlgorithm:s}}async encrypt(e,t,r,n=!1,i=[],a=new Date,s=[],o=se){if(r){if(!Z.isUint8Array(r.data)||!Z.isString(r.algorithm))throw new Error("Invalid session key for encryption.")}else if(e&&e.length)r=await pu.generateSessionKey(e,a,s,o);else{if(!t||!t.length)throw new Error("No keys, passwords, or session key provided.");r=await pu.generateSessionKey(void 0,void 0,void 0,o)}const{data:c,algorithm:u,aeadAlgorithm:l}=r,h=await pu.encryptSessionKey(c,u,l,e,t,n,i,a,s,o);let d;l?(d=new yc,d.aeadAlgorithm=ae.write(ae.aead,l)):d=new fc,d.packets=this.packets;const f=ae.write(ae.symmetric,u);return await d.encrypt(f,c,o),h.packets.push(d),d.packets=new rc,h}static async encryptSessionKey(e,t,r,n,i,a=!1,s=[],o=new Date,c=[],u=se){const l=new rc,h=ae.write(ae.symmetric,t),d=r&&ae.write(ae.aead,r);if(n){const t=await Promise.all(n.map((async function(t,r){const n=await t.getEncryptionKey(s[r],o,c,u),i=new gc;return i.publicKeyID=a?ge.wildcard():n.getKeyID(),i.publicKeyAlgorithm=n.keyPacket.algorithm,i.sessionKey=e,i.sessionKeyAlgorithm=h,await i.encrypt(n.keyPacket),delete i.sessionKey,i})));l.push(...t)}if(i){const t=async function(e,t){try{return await e.decrypt(t),1}catch(e){return 0}},r=(e,t)=>e+t,n=async function(e,a,s,o){const c=new bc(u);return c.sessionKey=e,c.sessionKeyAlgorithm=a,s&&(c.aeadAlgorithm=s),await c.encrypt(o,u),u.passwordCollisionCheck&&1!==(await Promise.all(i.map((e=>t(c,e))))).reduce(r)?n(e,a,o):(delete c.sessionKey,c)},a=await Promise.all(i.map((t=>n(e,h,d,t))));l.push(...a)}return new pu(l)}async sign(e=[],t=null,r=[],n=new Date,i=[],a=[],s=se){const o=new rc,c=this.packets.findPacket(ae.packet.literalData);if(!c)throw new Error("No literal data packet to sign.");let u,l;const h=null===c.text?ae.signature.binary:ae.signature.text;if(t)for(l=t.packets.filterByTag(ae.packet.signature),u=l.length-1;u>=0;u--){const t=l[u],r=new ec;r.signatureType=t.signatureType,r.hashAlgorithm=t.hashAlgorithm,r.publicKeyAlgorithm=t.publicKeyAlgorithm,r.issuerKeyID=t.issuerKeyID,e.length||0!==u||(r.flags=1),o.push(r)}return await Promise.all(Array.from(e).reverse().map((async function(t,a){if(!t.isPrivate())throw new Error("Need private key for signing");const o=r[e.length-1-a],c=await t.getSigningKey(o,n,i,s),u=new ec;return u.signatureType=h,u.hashAlgorithm=await Lc(t,c.keyPacket,n,i,s),u.publicKeyAlgorithm=c.keyPacket.algorithm,u.issuerKeyID=c.getKeyID(),a===e.length-1&&(u.flags=1),u}))).then((e=>{e.forEach((e=>o.push(e)))})),o.push(c),o.push(...await yu(c,e,t,r,n,i,a,!1,s)),new pu(o)}compress(e,t=se){if(e===ae.compression.uncompressed)return this;const r=new ic(t);r.algorithm=e,r.packets=this.packets;const n=new rc;return n.push(r),new pu(n)}async signDetached(e=[],t=null,r=[],n=new Date,i=[],a=[],s=se){const o=this.packets.findPacket(ae.packet.literalData);if(!o)throw new Error("No literal data packet to sign.");return new Dc(await yu(o,e,t,r,n,i,a,!0,s))}async verify(e,t=new Date,r=se){const n=this.unwrapCompressed(),i=n.packets.filterByTag(ae.packet.literalData);if(1!==i.length)throw new Error("Can only verify message with one literal data packet.");u(n.packets.stream)&&n.packets.push(...await W(n.packets.stream,(e=>e||[])));const a=n.packets.filterByTag(ae.packet.onePassSignature).reverse(),s=n.packets.filterByTag(ae.packet.signature);return a.length&&!s.length&&Z.isStream(n.packets.stream)&&!u(n.packets.stream)?(await Promise.all(a.map((async e=>{e.correspondingSig=new Promise(((t,r)=>{e.correspondingSigResolve=t,e.correspondingSigReject=r})),e.signatureData=G((async()=>(await e.correspondingSig).signatureData)),e.hashed=W(await e.hash(e.signatureType,i[0],void 0,!1)),e.hashed.catch((()=>{}))}))),n.packets.stream=L(n.packets.stream,(async(e,t)=>{const r=B(e),n=U(t);try{for(let e=0;e{t.correspondingSigReject(e)})),await n.abort(e)}})),gu(a,i,e,t,!1,r)):gu(s,i,e,t,!1,r)}verifyDetached(e,t,r=new Date,n=se){const i=this.unwrapCompressed().packets.filterByTag(ae.packet.literalData);if(1!==i.length)throw new Error("Can only verify message with one literal data packet.");return gu(e.packets,i,t,r,!0,n)}unwrapCompressed(){const e=this.packets.filterByTag(ae.packet.compressedData);return e.length?new pu(e[0].packets):this}async appendSignature(e,t=se){await this.packets.read(Z.isUint8Array(e)?e:(await pe(e)).data,fu,t)}write(){return this.packets.write()}armor(e=se){return ye(ae.armor.message,this.write(),null,null,null,e)}}async function yu(e,t,r=null,n=[],i=new Date,a=[],s=[],o=!1,c=se){const u=new rc,l=null===e.text?ae.signature.binary:ae.signature.text;if(await Promise.all(t.map((async(t,r)=>{const u=a[r];if(!t.isPrivate())throw new Error("Need private key for signing");const h=await t.getSigningKey(n[r],i,u,c);return Fc(e,t,h.keyPacket,{signatureType:l},i,u,s,o,c)}))).then((e=>{u.push(...e)})),r){const e=r.packets.filterByTag(ae.packet.signature);u.push(...e)}return u}async function gu(e,t,r,n=new Date,i=!1,a=se){return Promise.all(e.filter((function(e){return["text","binary"].includes(ae.read(ae.signature,e.signatureType))})).map((async function(e){return async function(e,t,r,n=new Date,i=!1,a=se){let s,o;for(const t of r){const r=t.getKeys(e.issuerKeyID);if(r.length>0){s=t,o=r[0];break}}const c=e instanceof ec?e.correspondingSig:e,u={keyID:e.issuerKeyID,verified:(async()=>{if(!o)throw new Error(`Could not find signing key with key ID ${e.issuerKeyID.toHex()}`);await e.verify(o.keyPacket,e.signatureType,t[0],n,i,a);const r=await c;if(o.getCreationTime()>r.created)throw new Error("Key is newer than the signature");try{await s.getSigningKey(o.getKeyID(),r.created,void 0,a)}catch(e){if(!a.allowInsecureVerificationWithReformattedKeys||!e.message.match(/Signature creation time is in the future/))throw e;await s.getSigningKey(o.getKeyID(),n,void 0,a)}return!0})(),signature:(async()=>{const e=await c,t=new rc;return e&&t.push(e),new Dc(t)})()};return u.signature.catch((()=>{})),u.verified.catch((()=>{})),u}(e,t,r,n,i,a)})))}async function mu({armoredMessage:e,binaryMessage:t,config:r,...n}){r={...se,...r};let i=e||t;if(!i)throw new Error("readMessage: must pass options object containing `armoredMessage` or `binaryMessage`");if(e&&!Z.isString(e)&&!Z.isStream(e))throw new Error("readMessage: options.armoredMessage must be a string or stream");if(t&&!Z.isUint8Array(t)&&!Z.isStream(t))throw new Error("readMessage: options.binaryMessage must be a Uint8Array or stream");const a=Object.keys(n);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);const s=Z.isStream(i);if(s&&(await C(),i=M(i)),e){const{type:e,data:t}=await pe(i,r);if(e!==ae.armor.message)throw new Error("Armored text not of type message");i=t}const o=await rc.fromBinary(i,hu,r),c=new pu(o);return c.fromStream=s,c}async function bu({text:e,binary:t,filename:r,date:n=new Date,format:i=(void 0!==e?"utf8":"binary"),...a}){let s=void 0!==e?e:t;if(void 0===s)throw new Error("createMessage: must pass options object containing `text` or `binary`");if(e&&!Z.isString(e)&&!Z.isStream(e))throw new Error("createMessage: options.text must be a string or stream");if(t&&!Z.isUint8Array(t)&&!Z.isStream(t))throw new Error("createMessage: options.binary must be a Uint8Array or stream");const o=Object.keys(a);if(o.length>0)throw new Error(`Unknown option: ${o.join(", ")}`);const c=Z.isStream(s);c&&(await C(),s=M(s));const u=new Jo(n);void 0!==e?u.setText(s,ae.write(ae.literal,i)):u.setBytes(s,ae.write(ae.literal,i)),void 0!==r&&u.setFilename(r);const l=new rc;l.push(u);const h=new pu(l);return h.fromStream=c,h}const wu=Z.constructAllowedPackets([Xo]);class vu{constructor(e,t){if(this.text=Z.removeTrailingSpaces(e).replace(/\r?\n/g,"\r\n"),t&&!(t instanceof Dc))throw new Error("Invalid signature input");this.signature=t||new Dc(new rc)}getSigningKeyIDs(){const e=[];return this.signature.packets.forEach((function(t){e.push(t.issuerKeyID)})),e}async sign(e,t=null,r=[],n=new Date,i=[],a=[],s=se){const o=new Jo;o.setText(this.text);const c=new Dc(await yu(o,e,t,r,n,i,a,!0,s));return new vu(this.text,c)}verify(e,t=new Date,r=se){const n=this.signature.packets,i=new Jo;return i.setText(this.text),gu(n,[i],e,t,!0,r)}getText(){return this.text.replace(/\r\n/g,"\n")}armor(e=se){let t=this.signature.packets.map((function(e){return ae.read(ae.hash,e.hashAlgorithm).toUpperCase()}));t=t.filter((function(e,t,r){return r.indexOf(e)===t}));const r={hash:t.join(),text:this.text,data:this.signature.packets.write()};return ye(ae.armor.signed,r,void 0,void 0,void 0,e)}}async function ku({cleartextMessage:e,config:t,...r}){if(t={...se,...t},!e)throw new Error("readCleartextMessage: must pass options object containing `cleartextMessage`");if(!Z.isString(e))throw new Error("readCleartextMessage: options.cleartextMessage must be a string");const n=Object.keys(r);if(n.length>0)throw new Error(`Unknown option: ${n.join(", ")}`);const i=await pe(e);if(i.type!==ae.armor.signed)throw new Error("No cleartext signed message.");const a=await rc.fromBinary(i.data,wu,t);!function(e,t){const r=function(e){const r=e=>t=>e.hashAlgorithm===t;for(let n=0;n0)throw new Error(`Unknown option: ${r.join(", ")}`);return new vu(e)}async function _u({userIDs:e=[],passphrase:t,type:r="ecc",rsaBits:n=4096,curve:i="curve25519",keyExpirationTime:a=0,date:s=new Date,subkeys:o=[{}],format:c="armored",config:u,...l}){Lu(u={...se,...u}),e=qu(e);const h=Object.keys(l);if(h.length>0)throw new Error(`Unknown option: ${h.join(", ")}`);if(0===e.length)throw new Error("UserIDs are required for key generation");if("rsa"===r&&nWc(e.subkeys[r],e)));let r=[Rc(e,t)];r=r.concat(e.subkeys.map((e=>Uc(e,t))));const n=await Promise.all(r),i=await su(n[0],n.slice(1),e,t),a=await i.getRevocationCertificate(e.date,t);return i.revocationSignatures=[],{key:i,revocationCertificate:a}}(d,u);return e.getKeys().forEach((({keyPacket:e})=>Jc(e,u))),{privateKey:ju(e,c,u),publicKey:ju(e.toPublic(),c,u),revocationCertificate:t}}catch(e){throw Z.wrapError("Error generating keypair",e)}}async function Su({privateKey:e,userIDs:t=[],passphrase:r,keyExpirationTime:n=0,date:i,format:a="armored",config:s,...o}){Lu(s={...se,...s}),t=qu(t);const c=Object.keys(o);if(c.length>0)throw new Error(`Unknown option: ${c.join(", ")}`);if(0===t.length)throw new Error("UserIDs are required for key reformat");const u={privateKey:e,userIDs:t,passphrase:r,keyExpirationTime:n,date:i};try{const{key:e,revocationCertificate:t}=await async function(e,t){e=o(e);const{privateKey:r}=e;if(!r.isPrivate())throw new Error("Cannot reformat a public key");if(r.keyPacket.isDummy())throw new Error("Cannot reformat a gnu-dummy primary key");if(!r.getKeys().every((({keyPacket:e})=>e.isDecrypted())))throw new Error("Key is not decrypted");const n=r.keyPacket;e.subkeys||(e.subkeys=await Promise.all(r.subkeys.map((async e=>{const r=e.keyPacket,i={key:n,bind:r},a=await Kc(e.bindingSignatures,n,ae.signature.subkeyBinding,i,null,t).catch((()=>({})));return{sign:a.keyFlags&&a.keyFlags[0]&ae.keyFlags.signData}}))));const i=r.subkeys.map((e=>e.keyPacket));if(e.subkeys.length!==i.length)throw new Error("Number of subkey options does not match number of subkeys");e.subkeys=e.subkeys.map((t=>o(t,e)));const a=await su(n,i,e,t),s=await a.getRevocationCertificate(e.date,t);return a.revocationSignatures=[],{key:a,revocationCertificate:s};function o(e,t={}){return e.keyExpirationTime=e.keyExpirationTime||t.keyExpirationTime,e.passphrase=Z.isString(e.passphrase)?e.passphrase:t.passphrase,e.date=e.date||t.date,e}}(u,s);return{privateKey:ju(e,a,s),publicKey:ju(e.toPublic(),a,s),revocationCertificate:t}}catch(e){throw Z.wrapError("Error reformatting keypair",e)}}async function Eu({key:e,revocationCertificate:t,reasonForRevocation:r,date:n=new Date,format:i="armored",config:a,...s}){Lu(a={...se,...a});const o=Object.keys(s);if(o.length>0)throw new Error(`Unknown option: ${o.join(", ")}`);try{const s=t?await e.applyRevocationCertificate(t,n,a):await e.revoke(r,n,a);return s.isPrivate()?{privateKey:ju(s,i,a),publicKey:ju(s.toPublic(),i,a)}:{privateKey:null,publicKey:ju(s,i,a)}}catch(e){throw Z.wrapError("Error revoking key",e)}}async function xu({privateKey:e,passphrase:t,config:r,...n}){Lu(r={...se,...r});const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);if(!e.isPrivate())throw new Error("Cannot decrypt a public key");const a=e.clone(!0),s=Z.isArray(t)?t:[t];try{return await Promise.all(a.getKeys().map((e=>Z.anyPromise(s.map((t=>e.keyPacket.decrypt(t))))))),await a.validate(r),a}catch(e){throw a.clearPrivateParams(),Z.wrapError("Error decrypting private key",e)}}async function Pu({privateKey:e,passphrase:t,config:r,...n}){Lu(r={...se,...r});const i=Object.keys(n);if(i.length>0)throw new Error(`Unknown option: ${i.join(", ")}`);if(!e.isPrivate())throw new Error("Cannot encrypt a public key");const a=e.clone(!0),s=a.getKeys(),o=Z.isArray(t)?t:new Array(s.length).fill(t);if(o.length!==s.length)throw new Error("Invalid number of passphrases given for key encryption");try{return await Promise.all(s.map((async(e,t)=>{const{keyPacket:n}=e;await n.encrypt(o[t],r),n.clearPrivateParams()}))),a}catch(e){throw a.clearPrivateParams(),Z.wrapError("Error encrypting private key",e)}}async function Cu({message:e,encryptionKeys:t,signingKeys:r,passwords:n,sessionKey:i,format:a="armored",signature:s=null,wildcard:o=!1,signingKeyIDs:c=[],encryptionKeyIDs:u=[],date:l=new Date,signingUserIDs:h=[],encryptionUserIDs:d=[],signatureNotations:f=[],config:p,...y}){if(Lu(p={...se,...p}),Ru(e),Ou(a),t=qu(t),r=qu(r),n=qu(n),c=qu(c),u=qu(u),h=qu(h),d=qu(d),f=qu(f),y.detached)throw new Error("The `detached` option has been removed from openpgp.encrypt, separately call openpgp.sign instead. Don't forget to remove the `privateKeys` option as well.");if(y.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.encrypt, pass `encryptionKeys` instead");if(y.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.encrypt, pass `signingKeys` instead");if(void 0!==y.armor)throw new Error("The `armor` option has been removed from openpgp.encrypt, pass `format` instead.");const g=Object.keys(y);if(g.length>0)throw new Error(`Unknown option: ${g.join(", ")}`);r||(r=[]);const m=e.fromStream;try{if((r.length||s)&&(e=await e.sign(r,s,c,l,h,f,p)),e=e.compress(await qc("compression",t,l,d,p),p),e=await e.encrypt(t,n,i,o,u,l,d,p),"object"===a)return e;const y="armored"===a;return Fu(y?e.armor(p):e.write(),m,y?"utf8":"binary")}catch(e){throw Z.wrapError("Error encrypting message",e)}}async function Tu({message:e,decryptionKeys:t,passwords:r,sessionKeys:n,verificationKeys:i,expectSigned:a=!1,format:s="utf8",signature:o=null,date:c=new Date,config:u,...l}){if(Lu(u={...se,...u}),Ru(e),i=qu(i),t=qu(t),r=qu(r),n=qu(n),l.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.decrypt, pass `decryptionKeys` instead");if(l.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.decrypt, pass `verificationKeys` instead");const h=Object.keys(l);if(h.length>0)throw new Error(`Unknown option: ${h.join(", ")}`);try{const l=await e.decrypt(t,r,n,c,u);i||(i=[]);const h={};if(h.signatures=o?await l.verifyDetached(o,i,c,u):await l.verify(i,c,u),h.data="binary"===s?l.getLiteralData():l.getText(),h.filename=l.getFilename(),zu(h,e),a){if(0===i.length)throw new Error("Verification keys are required to verify message signatures");if(0===h.signatures.length)throw new Error("Message is not signed");h.data=D([h.data,G((async()=>{await Z.anyPromise(h.signatures.map((e=>e.verified)))}))])}return h.data=await Fu(h.data,e.fromStream,s),h}catch(e){throw Z.wrapError("Error decrypting message",e)}}async function Mu({message:e,signingKeys:t,format:r="armored",detached:n=!1,signingKeyIDs:i=[],date:a=new Date,signingUserIDs:s=[],signatureNotations:o=[],config:c,...u}){if(Lu(c={...se,...c}),Ku(e),Ou(r),t=qu(t),i=qu(i),s=qu(s),o=qu(o),u.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.sign, pass `signingKeys` instead");if(void 0!==u.armor)throw new Error("The `armor` option has been removed from openpgp.sign, pass `format` instead.");const l=Object.keys(u);if(l.length>0)throw new Error(`Unknown option: ${l.join(", ")}`);if(e instanceof vu&&"binary"===r)throw new Error("Cannot return signed cleartext message in binary format");if(e instanceof vu&&n)throw new Error("Cannot detach-sign a cleartext message");if(!t||0===t.length)throw new Error("No signing keys provided");try{let u;if(u=n?await e.signDetached(t,void 0,i,a,s,o,c):await e.sign(t,void 0,i,a,s,o,c),"object"===r)return u;const l="armored"===r;return u=l?u.armor(c):u.write(),n&&(u=L(e.packets.write(),(async(e,t)=>{await Promise.all([R(u,t),W(e).catch((()=>{}))])}))),Fu(u,e.fromStream,l?"utf8":"binary")}catch(e){throw Z.wrapError("Error signing message",e)}}async function Iu({message:e,verificationKeys:t,expectSigned:r=!1,format:n="utf8",signature:i=null,date:a=new Date,config:s,...o}){if(Lu(s={...se,...s}),Ku(e),t=qu(t),o.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.verify, pass `verificationKeys` instead");const c=Object.keys(o);if(c.length>0)throw new Error(`Unknown option: ${c.join(", ")}`);if(e instanceof vu&&"binary"===n)throw new Error("Can't return cleartext message data as binary");if(e instanceof vu&&i)throw new Error("Can't verify detached cleartext signature");try{const o={};if(o.signatures=i?await e.verifyDetached(i,t,a,s):await e.verify(t,a,s),o.data="binary"===n?e.getLiteralData():e.getText(),e.fromStream&&zu(o,e),r){if(0===o.signatures.length)throw new Error("Message is not signed");o.data=D([o.data,G((async()=>{await Z.anyPromise(o.signatures.map((e=>e.verified)))}))])}return o.data=await Fu(o.data,e.fromStream,n),o}catch(e){throw Z.wrapError("Error verifying signed message",e)}}async function Du({encryptionKeys:e,date:t=new Date,encryptionUserIDs:r=[],config:n,...i}){if(Lu(n={...se,...n}),e=qu(e),r=qu(r),i.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.generateSessionKey, pass `encryptionKeys` instead");const a=Object.keys(i);if(a.length>0)throw new Error(`Unknown option: ${a.join(", ")}`);try{return await pu.generateSessionKey(e,t,r,n)}catch(e){throw Z.wrapError("Error generating session key",e)}}async function Bu({data:e,algorithm:t,aeadAlgorithm:r,encryptionKeys:n,passwords:i,format:a="armored",wildcard:s=!1,encryptionKeyIDs:o=[],date:c=new Date,encryptionUserIDs:u=[],config:l,...h}){if(Lu(l={...se,...l}),function(e,t){if(!Z.isUint8Array(e))throw new Error("Parameter [data] must be of type Uint8Array")}(e),function(e,t){if(!Z.isString(e))throw new Error("Parameter [algorithm] must be of type String")}(t),Ou(a),n=qu(n),i=qu(i),o=qu(o),u=qu(u),h.publicKeys)throw new Error("The `publicKeys` option has been removed from openpgp.encryptSessionKey, pass `encryptionKeys` instead");const d=Object.keys(h);if(d.length>0)throw new Error(`Unknown option: ${d.join(", ")}`);if(!(n&&0!==n.length||i&&0!==i.length))throw new Error("No encryption keys or passwords provided.");try{return ju(await pu.encryptSessionKey(e,t,r,n,i,s,o,c,u,l),a,l)}catch(e){throw Z.wrapError("Error encrypting session key",e)}}async function Uu({message:e,decryptionKeys:t,passwords:r,date:n=new Date,config:i,...a}){if(Lu(i={...se,...i}),Ru(e),t=qu(t),r=qu(r),a.privateKeys)throw new Error("The `privateKeys` option has been removed from openpgp.decryptSessionKeys, pass `decryptionKeys` instead");const s=Object.keys(a);if(s.length>0)throw new Error(`Unknown option: ${s.join(", ")}`);try{return await e.decryptSessionKeys(t,r,n,i)}catch(e){throw Z.wrapError("Error decrypting session keys",e)}}function Ru(e){if(!(e instanceof pu))throw new Error("Parameter [message] needs to be of type Message")}function Ku(e){if(!(e instanceof vu||e instanceof pu))throw new Error("Parameter [message] needs to be of type Message or CleartextMessage")}function Ou(e){if("armored"!==e&&"binary"!==e&&"object"!==e)throw new Error(`Unsupported format ${e}`)}const Nu=Object.keys(se).length;function Lu(e){const t=Object.keys(e);if(t.length!==Nu)for(const e of t)if(void 0===se[e])throw new Error(`Unknown config property: ${e}`)}function qu(e){return e&&!Z.isArray(e)&&(e=[e]),e}async function Fu(e,t,r="utf8"){const n=Z.isStream(e);return"array"===n?W(e):"node"===t?(e=w(e),"binary"!==r&&e.setEncoding(r),e):"web"===t&&"ponyfill"===n?S(e):e}function zu(e,t){e.data=L(t.packets.stream,(async(t,r)=>{await R(e.data,r,{preventClose:!0});const n=U(r);try{await W(t,(e=>e)),await n.close()}catch(e){await n.abort(e)}}))}function ju(e,t,r){switch(t){case"object":return e;case"armored":return e.armor(r);case"binary":return e.write();default:throw new Error(`Unsupported format ${t}`)}}const Hu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol:e=>`Symbol(${e})`;function Wu(){}const Vu="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0;function Gu(e){return"object"==typeof e&&null!==e||"function"==typeof e}const $u=Wu,Ju=Promise,Zu=Promise.prototype.then,Yu=Promise.resolve.bind(Ju),Xu=Promise.reject.bind(Ju);function Qu(e){return new Ju(e)}function el(e){return Yu(e)}function tl(e){return Xu(e)}function rl(e,t,r){return Zu.call(e,t,r)}function nl(e,t,r){rl(rl(e,t,r),void 0,$u)}function il(e,t){nl(e,t)}function al(e,t){nl(e,void 0,t)}function sl(e,t,r){return rl(e,t,r)}function ol(e){rl(e,void 0,$u)}const cl=(()=>{const e=Vu&&Vu.queueMicrotask;if("function"==typeof e)return e;const t=el(void 0);return e=>rl(t,e)})();function ul(e,t,r){if("function"!=typeof e)throw new TypeError("Argument is not a function");return Function.prototype.apply.call(e,t,r)}function ll(e,t,r){try{return el(ul(e,t,r))}catch(e){return tl(e)}}class hl{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(e){const t=this._back;let r=t;16383===t._elements.length&&(r={_elements:[],_next:void 0}),t._elements.push(e),r!==t&&(this._back=r,t._next=r),++this._size}shift(){const e=this._front;let t=e;const r=this._cursor;let n=r+1;const i=e._elements,a=i[r];return 16384===n&&(t=e._next,n=0),--this._size,this._cursor=n,e!==t&&(this._front=t),i[r]=void 0,a}forEach(e){let t=this._cursor,r=this._front,n=r._elements;for(;!(t===n.length&&void 0===r._next||t===n.length&&(r=r._next,n=r._elements,t=0,0===n.length));)e(n[t]),++t}peek(){const e=this._front,t=this._cursor;return e._elements[t]}}function dl(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?gl(e):"closed"===t._state?function(e){gl(e),wl(e)}(e):ml(e,t._storedError)}function fl(e,t){return $d(e._ownerReadableStream,t)}function pl(e){"readable"===e._ownerReadableStream._state?bl(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(e,t){ml(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness"))}(e),e._ownerReadableStream._reader=void 0,e._ownerReadableStream=void 0}function yl(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function gl(e){e._closedPromise=Qu(((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r}))}function ml(e,t){gl(e),bl(e,t)}function bl(e,t){void 0!==e._closedPromise_reject&&(ol(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}function wl(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}const vl=Hu("[[AbortSteps]]"),kl=Hu("[[ErrorSteps]]"),Al=Hu("[[CancelSteps]]"),_l=Hu("[[PullSteps]]"),Sl=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},El=Math.trunc||function(e){return e<0?Math.ceil(e):Math.floor(e)};function xl(e,t){if(void 0!==e&&"object"!=typeof(r=e)&&"function"!=typeof r)throw new TypeError(`${t} is not an object.`);var r}function Pl(e,t){if("function"!=typeof e)throw new TypeError(`${t} is not a function.`)}function Cl(e,t){if(!function(e){return"object"==typeof e&&null!==e||"function"==typeof e}(e))throw new TypeError(`${t} is not an object.`)}function Tl(e,t,r){if(void 0===e)throw new TypeError(`Parameter ${t} is required in '${r}'.`)}function Ml(e,t,r){if(void 0===e)throw new TypeError(`${t} is required in '${r}'.`)}function Il(e){return Number(e)}function Dl(e){return 0===e?0:e}function Bl(e,t){const r=Number.MAX_SAFE_INTEGER;let n=Number(e);if(n=Dl(n),!Sl(n))throw new TypeError(`${t} is not a finite number`);if(n=function(e){return Dl(El(e))}(n),n<0||n>r)throw new TypeError(`${t} is outside the accepted range of 0 to ${r}, inclusive`);return Sl(n)&&0!==n?n:0}function Ul(e,t){if(!Vd(e))throw new TypeError(`${t} is not a ReadableStream.`)}function Rl(e){return new ql(e)}function Kl(e,t){e._reader._readRequests.push(t)}function Ol(e,t,r){const n=e._reader._readRequests.shift();r?n._closeSteps():n._chunkSteps(t)}function Nl(e){return e._reader._readRequests.length}function Ll(e){const t=e._reader;return void 0!==t&&!!Fl(t)}class ql{constructor(e){if(Tl(e,1,"ReadableStreamDefaultReader"),Ul(e,"First parameter"),Gd(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");dl(this,e),this._readRequests=new hl}get closed(){return Fl(this)?this._closedPromise:tl(jl("closed"))}cancel(e=void 0){return Fl(this)?void 0===this._ownerReadableStream?tl(yl("cancel")):fl(this,e):tl(jl("cancel"))}read(){if(!Fl(this))return tl(jl("read"));if(void 0===this._ownerReadableStream)return tl(yl("read from"));let e,t;const r=Qu(((r,n)=>{e=r,t=n}));return zl(this,{_chunkSteps:t=>e({value:t,done:!1}),_closeSteps:()=>e({value:void 0,done:!0}),_errorSteps:e=>t(e)}),r}releaseLock(){if(!Fl(this))throw jl("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");pl(this)}}}function Fl(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")}function zl(e,t){const r=e._ownerReadableStream;r._disturbed=!0,"closed"===r._state?t._closeSteps():"errored"===r._state?t._errorSteps(r._storedError):r._readableStreamController[_l](t)}function jl(e){return new TypeError(`ReadableStreamDefaultReader.prototype.${e} can only be used on a ReadableStreamDefaultReader`)}let Hl;Object.defineProperties(ql.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(ql.prototype,Hu.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0}),"symbol"==typeof Hu.asyncIterator&&(Hl={[Hu.asyncIterator](){return this}},Object.defineProperty(Hl,Hu.asyncIterator,{enumerable:!1}));class Wl{constructor(e,t){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=e,this._preventCancel=t}next(){const e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?sl(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(e){const t=()=>this._returnSteps(e);return this._ongoingPromise?sl(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const e=this._reader;if(void 0===e._ownerReadableStream)return tl(yl("iterate"));let t,r;const n=Qu(((e,n)=>{t=e,r=n}));return zl(e,{_chunkSteps:e=>{this._ongoingPromise=void 0,cl((()=>t({value:e,done:!1})))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,pl(e),t({value:void 0,done:!0})},_errorSteps:t=>{this._ongoingPromise=void 0,this._isFinished=!0,pl(e),r(t)}}),n}_returnSteps(e){if(this._isFinished)return Promise.resolve({value:e,done:!0});this._isFinished=!0;const t=this._reader;if(void 0===t._ownerReadableStream)return tl(yl("finish iterating"));if(!this._preventCancel){const r=fl(t,e);return pl(t),sl(r,(()=>({value:e,done:!0})))}return pl(t),el({value:e,done:!0})}}const Vl={next(){return Gl(this)?this._asyncIteratorImpl.next():tl($l("next"))},return(e){return Gl(this)?this._asyncIteratorImpl.return(e):tl($l("return"))}};function Gl(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_asyncIteratorImpl")}function $l(e){return new TypeError(`ReadableStreamAsyncIterator.${e} can only be used on a ReadableSteamAsyncIterator`)}void 0!==Hl&&Object.setPrototypeOf(Vl,Hl);const Jl=Number.isNaN||function(e){return e!=e};function Zl(e){return!!function(e){return"number"==typeof e&&(!Jl(e)&&!(e<0))}(e)&&e!==1/0}function Yl(e){const t=e._queue.shift();return e._queueTotalSize-=t.size,e._queueTotalSize<0&&(e._queueTotalSize=0),t.value}function Xl(e,t,r){if(!Zl(r=Number(r)))throw new RangeError("Size must be a finite, non-NaN, non-negative number.");e._queue.push({value:t,size:r}),e._queueTotalSize+=r}function Ql(e){e._queue=new hl,e._queueTotalSize=0}function eh(e){return e.slice()}class th{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!ih(this))throw wh("view");return this._view}respond(e){if(!ih(this))throw wh("respond");if(Tl(e,1,"respond"),e=Bl(e,"First parameter"),void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");this._view.buffer,function(e,t){if(!Zl(t=Number(t)))throw new RangeError("bytesWritten must be a finite");ph(e,t)}(this._associatedReadableByteStreamController,e)}respondWithNewView(e){if(!ih(this))throw wh("respondWithNewView");if(Tl(e,1,"respondWithNewView"),!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");!function(e,t){const r=e._pendingPullIntos.peek();if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.byteLength!==t.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");r.buffer=t.buffer,ph(e,t.byteLength)}(this._associatedReadableByteStreamController,e)}}Object.defineProperties(th.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(th.prototype,Hu.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class rh{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!nh(this))throw vh("byobRequest");if(null===this._byobRequest&&this._pendingPullIntos.length>0){const e=this._pendingPullIntos.peek(),t=new Uint8Array(e.buffer,e.byteOffset+e.bytesFilled,e.byteLength-e.bytesFilled),r=Object.create(th.prototype);!function(e,t,r){e._associatedReadableByteStreamController=t,e._view=r}(r,this,t),this._byobRequest=r}return this._byobRequest}get desiredSize(){if(!nh(this))throw vh("desiredSize");return bh(this)}close(){if(!nh(this))throw vh("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be closed`);!function(e){const t=e._controlledReadableByteStream;if(!e._closeRequested&&"readable"===t._state)if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0&&e._pendingPullIntos.peek().bytesFilled>0){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");throw mh(e,t),t}gh(e),Jd(t)}}(this)}enqueue(e){if(!nh(this))throw vh("enqueue");if(Tl(e,1,"enqueue"),!ArrayBuffer.isView(e))throw new TypeError("chunk must be an array buffer view");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");const t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError(`The stream (in ${t} state) is not in the readable state and cannot be enqueued to`);!function(e,t){const r=e._controlledReadableByteStream;if(e._closeRequested||"readable"!==r._state)return;const n=t.buffer,i=t.byteOffset,a=t.byteLength,s=n;Ll(r)?0===Nl(r)?ch(e,s,i,a):Ol(r,new Uint8Array(s,i,a),!1):_h(r)?(ch(e,s,i,a),fh(e)):ch(e,s,i,a),ah(e)}(this,e)}error(e=void 0){if(!nh(this))throw vh("error");mh(this,e)}[Al](e){this._pendingPullIntos.length>0&&(this._pendingPullIntos.peek().bytesFilled=0),Ql(this);const t=this._cancelAlgorithm(e);return gh(this),t}[_l](e){const t=this._controlledReadableByteStream;if(this._queueTotalSize>0){const t=this._queue.shift();this._queueTotalSize-=t.byteLength,hh(this);const r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength);return void e._chunkSteps(r)}const r=this._autoAllocateChunkSize;if(void 0!==r){let t;try{t=new ArrayBuffer(r)}catch(t){return void e._errorSteps(t)}const n={buffer:t,byteOffset:0,byteLength:r,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(n)}Kl(t,e),ah(this)}}function nh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")}function ih(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")}function ah(e){const t=function(e){const t=e._controlledReadableByteStream;if("readable"!==t._state)return!1;if(e._closeRequested)return!1;if(!e._started)return!1;if(Ll(t)&&Nl(t)>0)return!0;if(_h(t)&&Ah(t)>0)return!0;return bh(e)>0}(e);t&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,nl(e._pullAlgorithm(),(()=>{e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,ah(e))}),(t=>{mh(e,t)}))))}function sh(e,t){let r=!1;"closed"===e._state&&(r=!0);const n=oh(t);"default"===t.readerType?Ol(e,n,r):function(e,t,r){const n=e._reader._readIntoRequests.shift();r?n._closeSteps(t):n._chunkSteps(t)}(e,n,r)}function oh(e){const t=e.bytesFilled,r=e.elementSize;return new e.viewConstructor(e.buffer,e.byteOffset,t/r)}function ch(e,t,r,n){e._queue.push({buffer:t,byteOffset:r,byteLength:n}),e._queueTotalSize+=n}function uh(e,t){const r=t.elementSize,n=t.bytesFilled-t.bytesFilled%r,i=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),a=t.bytesFilled+i,s=a-a%r;let o=i,c=!1;s>n&&(o=s-t.bytesFilled,c=!0);const u=e._queue;for(;o>0;){const r=u.peek(),n=Math.min(o,r.byteLength),i=t.byteOffset+t.bytesFilled;l=t.buffer,h=i,d=r.buffer,f=r.byteOffset,p=n,new Uint8Array(l).set(new Uint8Array(d,f,p),h),r.byteLength===n?u.shift():(r.byteOffset+=n,r.byteLength-=n),e._queueTotalSize-=n,lh(e,n,t),o-=n}var l,h,d,f,p;return c}function lh(e,t,r){dh(e),r.bytesFilled+=t}function hh(e){0===e._queueTotalSize&&e._closeRequested?(gh(e),Jd(e._controlledReadableByteStream)):ah(e)}function dh(e){null!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=null,e._byobRequest=null)}function fh(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;const t=e._pendingPullIntos.peek();uh(e,t)&&(yh(e),sh(e._controlledReadableByteStream,t))}}function ph(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream");!function(e,t){t.buffer=t.buffer;const r=e._controlledReadableByteStream;if(_h(r))for(;Ah(r)>0;)sh(r,yh(e))}(e,r)}else!function(e,t,r){if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range");if(lh(e,t,r),r.bytesFilled0){const t=r.byteOffset+r.bytesFilled,i=r.buffer.slice(t-n,t);ch(e,i,0,i.byteLength)}r.buffer=r.buffer,r.bytesFilled-=n,sh(e._controlledReadableByteStream,r),fh(e)}(e,t,r);ah(e)}function yh(e){const t=e._pendingPullIntos.shift();return dh(e),t}function gh(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0}function mh(e,t){const r=e._controlledReadableByteStream;"readable"===r._state&&(function(e){dh(e),e._pendingPullIntos=new hl}(e),Ql(e),gh(e),Zd(r,t))}function bh(e){const t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function wh(e){return new TypeError(`ReadableStreamBYOBRequest.prototype.${e} can only be used on a ReadableStreamBYOBRequest`)}function vh(e){return new TypeError(`ReadableByteStreamController.prototype.${e} can only be used on a ReadableByteStreamController`)}function kh(e,t){e._reader._readIntoRequests.push(t)}function Ah(e){return e._reader._readIntoRequests.length}function _h(e){const t=e._reader;return void 0!==t&&!!Eh(t)}Object.defineProperties(rh.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(rh.prototype,Hu.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class Sh{constructor(e){if(Tl(e,1,"ReadableStreamBYOBReader"),Ul(e,"First parameter"),Gd(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!nh(e._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");dl(this,e),this._readIntoRequests=new hl}get closed(){return Eh(this)?this._closedPromise:tl(xh("closed"))}cancel(e=void 0){return Eh(this)?void 0===this._ownerReadableStream?tl(yl("cancel")):fl(this,e):tl(xh("cancel"))}read(e){if(!Eh(this))return tl(xh("read"));if(!ArrayBuffer.isView(e))return tl(new TypeError("view must be an array buffer view"));if(0===e.byteLength)return tl(new TypeError("view must have non-zero byteLength"));if(0===e.buffer.byteLength)return tl(new TypeError("view's buffer must have non-zero byteLength"));if(void 0===this._ownerReadableStream)return tl(yl("read from"));let t,r;const n=Qu(((e,n)=>{t=e,r=n}));return function(e,t,r){const n=e._ownerReadableStream;n._disturbed=!0,"errored"===n._state?r._errorSteps(n._storedError):function(e,t,r){const n=e._controlledReadableByteStream;let i=1;t.constructor!==DataView&&(i=t.constructor.BYTES_PER_ELEMENT);const a=t.constructor,s={buffer:t.buffer,byteOffset:t.byteOffset,byteLength:t.byteLength,bytesFilled:0,elementSize:i,viewConstructor:a,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(s),void kh(n,r);if("closed"!==n._state){if(e._queueTotalSize>0){if(uh(e,s)){const t=oh(s);return hh(e),void r._chunkSteps(t)}if(e._closeRequested){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");return mh(e,t),void r._errorSteps(t)}}e._pendingPullIntos.push(s),kh(n,r),ah(e)}else{const e=new a(s.buffer,s.byteOffset,0);r._closeSteps(e)}}(n._readableStreamController,t,r)}(this,e,{_chunkSteps:e=>t({value:e,done:!1}),_closeSteps:e=>t({value:e,done:!0}),_errorSteps:e=>r(e)}),n}releaseLock(){if(!Eh(this))throw xh("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readIntoRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");pl(this)}}}function Eh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")}function xh(e){return new TypeError(`ReadableStreamBYOBReader.prototype.${e} can only be used on a ReadableStreamBYOBReader`)}function Ph(e,t){const{highWaterMark:r}=e;if(void 0===r)return t;if(Jl(r)||r<0)throw new RangeError("Invalid highWaterMark");return r}function Ch(e){const{size:t}=e;return t||(()=>1)}function Th(e,t){xl(e,t);const r=null==e?void 0:e.highWaterMark,n=null==e?void 0:e.size;return{highWaterMark:void 0===r?void 0:Il(r),size:void 0===n?void 0:Mh(n,`${t} has member 'size' that`)}}function Mh(e,t){return Pl(e,t),t=>Il(e(t))}function Ih(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function Dh(e,t,r){return Pl(e,r),()=>ll(e,t,[])}function Bh(e,t,r){return Pl(e,r),r=>ul(e,t,[r])}function Uh(e,t,r){return Pl(e,r),(r,n)=>ll(e,t,[r,n])}function Rh(e,t){if(!Lh(e))throw new TypeError(`${t} is not a WritableStream.`)}Object.defineProperties(Sh.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Sh.prototype,Hu.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});class Kh{constructor(e={},t={}){void 0===e?e=null:Cl(e,"First parameter");const r=Th(t,"Second parameter"),n=function(e,t){xl(e,t);const r=null==e?void 0:e.abort,n=null==e?void 0:e.close,i=null==e?void 0:e.start,a=null==e?void 0:e.type,s=null==e?void 0:e.write;return{abort:void 0===r?void 0:Ih(r,e,`${t} has member 'abort' that`),close:void 0===n?void 0:Dh(n,e,`${t} has member 'close' that`),start:void 0===i?void 0:Bh(i,e,`${t} has member 'start' that`),write:void 0===s?void 0:Uh(s,e,`${t} has member 'write' that`),type:a}}(e,"First parameter");if(Nh(this),void 0!==n.type)throw new RangeError("Invalid type is specified");const i=Ch(r);!function(e,t,r,n){const i=Object.create(rd.prototype);let a=()=>{},s=()=>el(void 0),o=()=>el(void 0),c=()=>el(void 0);void 0!==t.start&&(a=()=>t.start(i)),void 0!==t.write&&(s=e=>t.write(e,i)),void 0!==t.close&&(o=()=>t.close()),void 0!==t.abort&&(c=e=>t.abort(e)),nd(e,i,a,s,o,c,r,n)}(this,n,Ph(r,1),i)}get locked(){if(!Lh(this))throw ld("locked");return qh(this)}abort(e=void 0){return Lh(this)?qh(this)?tl(new TypeError("Cannot abort a stream that already has a writer")):Fh(this,e):tl(ld("abort"))}close(){return Lh(this)?qh(this)?tl(new TypeError("Cannot close a stream that already has a writer")):Vh(this)?tl(new TypeError("Cannot close an already-closing stream")):zh(this):tl(ld("close"))}getWriter(){if(!Lh(this))throw ld("getWriter");return Oh(this)}}function Oh(e){return new Jh(e)}function Nh(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=new hl,e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function Lh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")}function qh(e){return void 0!==e._writer}function Fh(e,t){const r=e._state;if("closed"===r||"errored"===r)return el(void 0);if(void 0!==e._pendingAbortRequest)return e._pendingAbortRequest._promise;let n=!1;"erroring"===r&&(n=!0,t=void 0);const i=Qu(((r,i)=>{e._pendingAbortRequest={_promise:void 0,_resolve:r,_reject:i,_reason:t,_wasAlreadyErroring:n}}));return e._pendingAbortRequest._promise=i,n||Hh(e,t),i}function zh(e){const t=e._state;if("closed"===t||"errored"===t)return tl(new TypeError(`The stream (in ${t} state) is not in the writable state and cannot be closed`));const r=Qu(((t,r)=>{const n={_resolve:t,_reject:r};e._closeRequest=n})),n=e._writer;var i;return void 0!==n&&e._backpressure&&"writable"===t&&kd(n),Xl(i=e._writableStreamController,td,0),sd(i),r}function jh(e,t){"writable"!==e._state?Wh(e):Hh(e,t)}function Hh(e,t){const r=e._writableStreamController;e._state="erroring",e._storedError=t;const n=e._writer;void 0!==n&&Xh(n,t),!function(e){return void 0!==e._inFlightWriteRequest||void 0!==e._inFlightCloseRequest}(e)&&r._started&&Wh(e)}function Wh(e){e._state="errored",e._writableStreamController[kl]();const t=e._storedError;if(e._writeRequests.forEach((e=>{e._reject(t)})),e._writeRequests=new hl,void 0===e._pendingAbortRequest)return void Gh(e);const r=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,r._wasAlreadyErroring)return r._reject(t),void Gh(e);nl(e._writableStreamController[vl](r._reason),(()=>{r._resolve(),Gh(e)}),(t=>{r._reject(t),Gh(e)}))}function Vh(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function Gh(e){void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);const t=e._writer;void 0!==t&&yd(t,e._storedError)}function $h(e,t){const r=e._writer;void 0!==r&&t!==e._backpressure&&(t?function(e){md(e)}(r):kd(r)),e._backpressure=t}Object.defineProperties(Kh.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Kh.prototype,Hu.toStringTag,{value:"WritableStream",configurable:!0});class Jh{constructor(e){if(Tl(e,1,"WritableStreamDefaultWriter"),Rh(e,"First parameter"),qh(e))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=e,e._writer=this;const t=e._state;if("writable"===t)!Vh(e)&&e._backpressure?md(this):wd(this),fd(this);else if("erroring"===t)bd(this,e._storedError),fd(this);else if("closed"===t)wd(this),fd(this),gd(this);else{const t=e._storedError;bd(this,t),pd(this,t)}}get closed(){return Zh(this)?this._closedPromise:tl(hd("closed"))}get desiredSize(){if(!Zh(this))throw hd("desiredSize");if(void 0===this._ownerWritableStream)throw dd("desiredSize");return function(e){const t=e._ownerWritableStream,r=t._state;return"errored"===r||"erroring"===r?null:"closed"===r?0:ad(t._writableStreamController)}(this)}get ready(){return Zh(this)?this._readyPromise:tl(hd("ready"))}abort(e=void 0){return Zh(this)?void 0===this._ownerWritableStream?tl(dd("abort")):function(e,t){return Fh(e._ownerWritableStream,t)}(this,e):tl(hd("abort"))}close(){if(!Zh(this))return tl(hd("close"));const e=this._ownerWritableStream;return void 0===e?tl(dd("close")):Vh(e)?tl(new TypeError("Cannot close an already-closing stream")):Yh(this)}releaseLock(){if(!Zh(this))throw hd("releaseLock");void 0!==this._ownerWritableStream&&Qh(this)}write(e=void 0){return Zh(this)?void 0===this._ownerWritableStream?tl(dd("write to")):ed(this,e):tl(hd("write"))}}function Zh(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")}function Yh(e){return zh(e._ownerWritableStream)}function Xh(e,t){"pending"===e._readyPromiseState?vd(e,t):function(e,t){bd(e,t)}(e,t)}function Qh(e){const t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");Xh(e,r),function(e,t){"pending"===e._closedPromiseState?yd(e,t):function(e,t){pd(e,t)}(e,t)}(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function ed(e,t){const r=e._ownerWritableStream,n=r._writableStreamController,i=function(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return od(e,t),1}}(n,t);if(r!==e._ownerWritableStream)return tl(dd("write to"));const a=r._state;if("errored"===a)return tl(r._storedError);if(Vh(r)||"closed"===a)return tl(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===a)return tl(r._storedError);const s=function(e){return Qu(((t,r)=>{const n={_resolve:t,_reject:r};e._writeRequests.push(n)}))}(r);return function(e,t,r){try{Xl(e,t,r)}catch(t){return void od(e,t)}const n=e._controlledWritableStream;Vh(n)||"writable"!==n._state||$h(n,cd(e)),sd(e)}(n,t,i),s}Object.defineProperties(Jh.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Jh.prototype,Hu.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});const td={};class rd{constructor(){throw new TypeError("Illegal constructor")}error(e=void 0){if(!Gu(t=this)||!Object.prototype.hasOwnProperty.call(t,"_controlledWritableStream"))throw new TypeError("WritableStreamDefaultController.prototype.error can only be used on a WritableStreamDefaultController");var t;"writable"===this._controlledWritableStream._state&&ud(this,e)}[vl](e){const t=this._abortAlgorithm(e);return id(this),t}[kl](){Ql(this)}}function nd(e,t,r,n,i,a,s,o){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,Ql(t),t._started=!1,t._strategySizeAlgorithm=o,t._strategyHWM=s,t._writeAlgorithm=n,t._closeAlgorithm=i,t._abortAlgorithm=a;const c=cd(t);$h(e,c),nl(el(r()),(()=>{t._started=!0,sd(t)}),(r=>{t._started=!0,jh(e,r)}))}function id(e){e._writeAlgorithm=void 0,e._closeAlgorithm=void 0,e._abortAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function ad(e){return e._strategyHWM-e._queueTotalSize}function sd(e){const t=e._controlledWritableStream;if(!e._started)return;if(void 0!==t._inFlightWriteRequest)return;if("erroring"===t._state)return void Wh(t);if(0===e._queue.length)return;const r=e._queue.peek().value;r===td?function(e){const t=e._controlledWritableStream;(function(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0})(t),Yl(e);const r=e._closeAlgorithm();id(e),nl(r,(()=>{!function(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";const t=e._writer;void 0!==t&&gd(t)}(t)}),(e=>{!function(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),jh(e,t)}(t,e)}))}(e):function(e,t){const r=e._controlledWritableStream;!function(e){e._inFlightWriteRequest=e._writeRequests.shift()}(r);nl(e._writeAlgorithm(t),(()=>{!function(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}(r);const t=r._state;if(Yl(e),!Vh(r)&&"writable"===t){const t=cd(e);$h(r,t)}sd(e)}),(t=>{"writable"===r._state&&id(e),function(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,jh(e,t)}(r,t)}))}(e,r)}function od(e,t){"writable"===e._controlledWritableStream._state&&ud(e,t)}function cd(e){return ad(e)<=0}function ud(e,t){const r=e._controlledWritableStream;id(e),Hh(r,t)}function ld(e){return new TypeError(`WritableStream.prototype.${e} can only be used on a WritableStream`)}function hd(e){return new TypeError(`WritableStreamDefaultWriter.prototype.${e} can only be used on a WritableStreamDefaultWriter`)}function dd(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function fd(e){e._closedPromise=Qu(((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"}))}function pd(e,t){fd(e),yd(e,t)}function yd(e,t){void 0!==e._closedPromise_reject&&(ol(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected")}function gd(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved")}function md(e){e._readyPromise=Qu(((t,r)=>{e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}function bd(e,t){md(e),vd(e,t)}function wd(e){md(e),kd(e)}function vd(e,t){void 0!==e._readyPromise_reject&&(ol(e._readyPromise),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected")}function kd(e){void 0!==e._readyPromise_resolve&&(e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled")}Object.defineProperties(rd.prototype,{error:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(rd.prototype,Hu.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});const Ad="undefined"!=typeof DOMException?DOMException:void 0,_d=function(e){if("function"!=typeof e&&"object"!=typeof e)return!1;try{return new e,!0}catch(e){return!1}}(Ad)?Ad:function(){const e=function(e,t){this.message=e||"",this.name=t||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return e.prototype=Object.create(Error.prototype),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,configurable:!0}),e}();function Sd(e,t,r,n,i,a){const s=Rl(e),o=Oh(t);e._disturbed=!0;let c=!1,u=el(void 0);return Qu(((l,h)=>{let d;if(void 0!==a){if(d=()=>{const r=new _d("Aborted","AbortError"),a=[];n||a.push((()=>"writable"===t._state?Fh(t,r):el(void 0))),i||a.push((()=>"readable"===e._state?$d(e,r):el(void 0))),y((()=>Promise.all(a.map((e=>e())))),!0,r)},a.aborted)return void d();a.addEventListener("abort",d)}if(p(e,s._closedPromise,(e=>{n?g(!0,e):y((()=>Fh(t,e)),!0,e)})),p(t,o._closedPromise,(t=>{i?g(!0,t):y((()=>$d(e,t)),!0,t)})),function(e,t,r){"closed"===e._state?r():il(t,r)}(e,s._closedPromise,(()=>{r?g():y((()=>function(e){const t=e._ownerWritableStream,r=t._state;return Vh(t)||"closed"===r?el(void 0):"errored"===r?tl(t._storedError):Yh(e)}(o)))})),Vh(t)||"closed"===t._state){const t=new TypeError("the destination writable stream closed before all data could be piped to it");i?g(!0,t):y((()=>$d(e,t)),!0,t)}function f(){const e=u;return rl(u,(()=>e!==u?f():void 0))}function p(e,t,r){"errored"===e._state?r(e._storedError):al(t,r)}function y(e,r,n){function i(){nl(e(),(()=>m(r,n)),(e=>m(!0,e)))}c||(c=!0,"writable"!==t._state||Vh(t)?i():il(f(),i))}function g(e,r){c||(c=!0,"writable"!==t._state||Vh(t)?m(e,r):il(f(),(()=>m(e,r))))}function m(e,t){Qh(o),pl(s),void 0!==a&&a.removeEventListener("abort",d),e?h(t):l(void 0)}ol(Qu(((e,t)=>{!function r(n){n?e():rl(c?el(!0):rl(o._readyPromise,(()=>Qu(((e,t)=>{zl(s,{_chunkSteps:t=>{u=rl(ed(o,t),void 0,Wu),e(!1)},_closeSteps:()=>e(!0),_errorSteps:t})})))),r,t)}(!1)})))}))}class Ed{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!xd(this))throw Kd("desiredSize");return Bd(this)}close(){if(!xd(this))throw Kd("close");if(!Ud(this))throw new TypeError("The stream is not in a state that permits close");Md(this)}enqueue(e=void 0){if(!xd(this))throw Kd("enqueue");if(!Ud(this))throw new TypeError("The stream is not in a state that permits enqueue");return Id(this,e)}error(e=void 0){if(!xd(this))throw Kd("error");Dd(this,e)}[Al](e){Ql(this);const t=this._cancelAlgorithm(e);return Td(this),t}[_l](e){const t=this._controlledReadableStream;if(this._queue.length>0){const r=Yl(this);this._closeRequested&&0===this._queue.length?(Td(this),Jd(t)):Pd(this),e._chunkSteps(r)}else Kl(t,e),Pd(this)}}function xd(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")}function Pd(e){Cd(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,nl(e._pullAlgorithm(),(()=>{e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,Pd(e))}),(t=>{Dd(e,t)}))))}function Cd(e){const t=e._controlledReadableStream;return!!Ud(e)&&(!!e._started&&(!!(Gd(t)&&Nl(t)>0)||Bd(e)>0))}function Td(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function Md(e){if(!Ud(e))return;const t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&(Td(e),Jd(t))}function Id(e,t){if(!Ud(e))return;const r=e._controlledReadableStream;if(Gd(r)&&Nl(r)>0)Ol(r,t,!1);else{let r;try{r=e._strategySizeAlgorithm(t)}catch(t){throw Dd(e,t),t}try{Xl(e,t,r)}catch(t){throw Dd(e,t),t}}Pd(e)}function Dd(e,t){const r=e._controlledReadableStream;"readable"===r._state&&(Ql(e),Td(e),Zd(r,t))}function Bd(e){const t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Ud(e){const t=e._controlledReadableStream._state;return!e._closeRequested&&"readable"===t}function Rd(e,t,r,n,i,a,s){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,Ql(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=s,t._strategyHWM=a,t._pullAlgorithm=n,t._cancelAlgorithm=i,e._readableStreamController=t,nl(el(r()),(()=>{t._started=!0,Pd(t)}),(e=>{Dd(t,e)}))}function Kd(e){return new TypeError(`ReadableStreamDefaultController.prototype.${e} can only be used on a ReadableStreamDefaultController`)}function Od(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function Nd(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function Ld(e,t,r){return Pl(e,r),r=>ul(e,t,[r])}function qd(e,t){if("bytes"!=(e=`${e}`))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamType`);return e}function Fd(e,t){if("byob"!=(e=`${e}`))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamReaderMode`);return e}function zd(e,t){xl(e,t);const r=null==e?void 0:e.preventAbort,n=null==e?void 0:e.preventCancel,i=null==e?void 0:e.preventClose,a=null==e?void 0:e.signal;return void 0!==a&&function(e,t){if(!function(e){if("object"!=typeof e||null===e)return!1;try{return"boolean"==typeof e.aborted}catch(e){return!1}}(e))throw new TypeError(`${t} is not an AbortSignal.`)}(a,`${t} has member 'signal' that`),{preventAbort:Boolean(r),preventCancel:Boolean(n),preventClose:Boolean(i),signal:a}}Object.defineProperties(Ed.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(Ed.prototype,Hu.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class jd{constructor(e={},t={}){void 0===e?e=null:Cl(e,"First parameter");const r=Th(t,"Second parameter"),n=function(e,t){xl(e,t);const r=e,n=null==r?void 0:r.autoAllocateChunkSize,i=null==r?void 0:r.cancel,a=null==r?void 0:r.pull,s=null==r?void 0:r.start,o=null==r?void 0:r.type;return{autoAllocateChunkSize:void 0===n?void 0:Bl(n,`${t} has member 'autoAllocateChunkSize' that`),cancel:void 0===i?void 0:Od(i,r,`${t} has member 'cancel' that`),pull:void 0===a?void 0:Nd(a,r,`${t} has member 'pull' that`),start:void 0===s?void 0:Ld(s,r,`${t} has member 'start' that`),type:void 0===o?void 0:qd(o,`${t} has member 'type' that`)}}(e,"First parameter");if(Wd(this),"bytes"===n.type){if(void 0!==r.size)throw new RangeError("The strategy for a byte stream cannot have a size function");!function(e,t,r){const n=Object.create(rh.prototype);let i=()=>{},a=()=>el(void 0),s=()=>el(void 0);void 0!==t.start&&(i=()=>t.start(n)),void 0!==t.pull&&(a=()=>t.pull(n)),void 0!==t.cancel&&(s=e=>t.cancel(e));const o=t.autoAllocateChunkSize;if(0===o)throw new TypeError("autoAllocateChunkSize must be greater than 0");!function(e,t,r,n,i,a,s){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,t._byobRequest=null,t._queue=t._queueTotalSize=void 0,Ql(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=a,t._pullAlgorithm=n,t._cancelAlgorithm=i,t._autoAllocateChunkSize=s,t._pendingPullIntos=new hl,e._readableStreamController=t,nl(el(r()),(()=>{t._started=!0,ah(t)}),(e=>{mh(t,e)}))}(e,n,i,a,s,r,o)}(this,n,Ph(r,0))}else{const e=Ch(r);!function(e,t,r,n){const i=Object.create(Ed.prototype);let a=()=>{},s=()=>el(void 0),o=()=>el(void 0);void 0!==t.start&&(a=()=>t.start(i)),void 0!==t.pull&&(s=()=>t.pull(i)),void 0!==t.cancel&&(o=e=>t.cancel(e)),Rd(e,i,a,s,o,r,n)}(this,n,Ph(r,1),e)}}get locked(){if(!Vd(this))throw Yd("locked");return Gd(this)}cancel(e=void 0){return Vd(this)?Gd(this)?tl(new TypeError("Cannot cancel a stream that already has a reader")):$d(this,e):tl(Yd("cancel"))}getReader(e=void 0){if(!Vd(this))throw Yd("getReader");const t=function(e,t){xl(e,t);const r=null==e?void 0:e.mode;return{mode:void 0===r?void 0:Fd(r,`${t} has member 'mode' that`)}}(e,"First parameter");return void 0===t.mode?Rl(this):function(e){return new Sh(e)}(this)}pipeThrough(e,t={}){if(!Vd(this))throw Yd("pipeThrough");Tl(e,1,"pipeThrough");const r=function(e,t){xl(e,t);const r=null==e?void 0:e.readable;Ml(r,"readable","ReadableWritablePair"),Ul(r,`${t} has member 'readable' that`);const n=null==e?void 0:e.writable;return Ml(n,"writable","ReadableWritablePair"),Rh(n,`${t} has member 'writable' that`),{readable:r,writable:n}}(e,"First parameter"),n=zd(t,"Second parameter");if(Gd(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(qh(r.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return ol(Sd(this,r.writable,n.preventClose,n.preventAbort,n.preventCancel,n.signal)),r.readable}pipeTo(e,t={}){if(!Vd(this))return tl(Yd("pipeTo"));if(void 0===e)return tl("Parameter 1 is required in 'pipeTo'.");if(!Lh(e))return tl(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let r;try{r=zd(t,"Second parameter")}catch(e){return tl(e)}return Gd(this)?tl(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):qh(e)?tl(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):Sd(this,e,r.preventClose,r.preventAbort,r.preventCancel,r.signal)}tee(){if(!Vd(this))throw Yd("tee");const e=function(e,t){const r=Rl(e);let n,i,a,s,o,c=!1,u=!1,l=!1;const h=Qu((e=>{o=e}));function d(){return c||(c=!0,zl(r,{_chunkSteps:e=>{cl((()=>{c=!1;const t=e,r=e;u||Id(a._readableStreamController,t),l||Id(s._readableStreamController,r)}))},_closeSteps:()=>{c=!1,u||Md(a._readableStreamController),l||Md(s._readableStreamController),u&&l||o(void 0)},_errorSteps:()=>{c=!1}})),el(void 0)}function f(){}return a=Hd(f,d,(function(t){if(u=!0,n=t,l){const t=eh([n,i]),r=$d(e,t);o(r)}return h})),s=Hd(f,d,(function(t){if(l=!0,i=t,u){const t=eh([n,i]),r=$d(e,t);o(r)}return h})),al(r._closedPromise,(e=>{Dd(a._readableStreamController,e),Dd(s._readableStreamController,e),u&&l||o(void 0)})),[a,s]}(this);return eh(e)}values(e=void 0){if(!Vd(this))throw Yd("values");return function(e,t){const r=Rl(e),n=new Wl(r,t),i=Object.create(Vl);return i._asyncIteratorImpl=n,i}(this,function(e,t){xl(e,"First parameter");const r=null==e?void 0:e.preventCancel;return{preventCancel:Boolean(r)}}(e).preventCancel)}}function Hd(e,t,r,n=1,i=(()=>1)){const a=Object.create(jd.prototype);return Wd(a),Rd(a,Object.create(Ed.prototype),e,t,r,n,i),a}function Wd(e){e._state="readable",e._reader=void 0,e._storedError=void 0,e._disturbed=!1}function Vd(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readableStreamController")}function Gd(e){return void 0!==e._reader}function $d(e,t){return e._disturbed=!0,"closed"===e._state?el(void 0):"errored"===e._state?tl(e._storedError):(Jd(e),sl(e._readableStreamController[Al](t),Wu))}function Jd(e){e._state="closed";const t=e._reader;void 0!==t&&(wl(t),Fl(t)&&(t._readRequests.forEach((e=>{e._closeSteps()})),t._readRequests=new hl))}function Zd(e,t){e._state="errored",e._storedError=t;const r=e._reader;void 0!==r&&(bl(r,t),Fl(r)?(r._readRequests.forEach((e=>{e._errorSteps(t)})),r._readRequests=new hl):(r._readIntoRequests.forEach((e=>{e._errorSteps(t)})),r._readIntoRequests=new hl))}function Yd(e){return new TypeError(`ReadableStream.prototype.${e} can only be used on a ReadableStream`)}function Xd(e,t){xl(e,t);const r=null==e?void 0:e.highWaterMark;return Ml(r,"highWaterMark","QueuingStrategyInit"),{highWaterMark:Il(r)}}Object.defineProperties(jd.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(jd.prototype,Hu.toStringTag,{value:"ReadableStream",configurable:!0}),"symbol"==typeof Hu.asyncIterator&&Object.defineProperty(jd.prototype,Hu.asyncIterator,{value:jd.prototype.values,writable:!0,configurable:!0});const Qd=function(e){return e.byteLength};class ef{constructor(e){Tl(e,1,"ByteLengthQueuingStrategy"),e=Xd(e,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!rf(this))throw tf("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!rf(this))throw tf("size");return Qd}}function tf(e){return new TypeError(`ByteLengthQueuingStrategy.prototype.${e} can only be used on a ByteLengthQueuingStrategy`)}function rf(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_byteLengthQueuingStrategyHighWaterMark")}Object.defineProperties(ef.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(ef.prototype,Hu.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});const nf=function(){return 1};class af{constructor(e){Tl(e,1,"CountQueuingStrategy"),e=Xd(e,"First parameter"),this._countQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!of(this))throw sf("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!of(this))throw sf("size");return nf}}function sf(e){return new TypeError(`CountQueuingStrategy.prototype.${e} can only be used on a CountQueuingStrategy`)}function of(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_countQueuingStrategyHighWaterMark")}function cf(e,t,r){return Pl(e,r),r=>ll(e,t,[r])}function uf(e,t,r){return Pl(e,r),r=>ul(e,t,[r])}function lf(e,t,r){return Pl(e,r),(r,n)=>ll(e,t,[r,n])}Object.defineProperties(af.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(af.prototype,Hu.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class hf{constructor(e={},t={},r={}){void 0===e&&(e=null);const n=Th(t,"Second parameter"),i=Th(r,"Third parameter"),a=function(e,t){xl(e,t);const r=null==e?void 0:e.flush,n=null==e?void 0:e.readableType,i=null==e?void 0:e.start,a=null==e?void 0:e.transform,s=null==e?void 0:e.writableType;return{flush:void 0===r?void 0:cf(r,e,`${t} has member 'flush' that`),readableType:n,start:void 0===i?void 0:uf(i,e,`${t} has member 'start' that`),transform:void 0===a?void 0:lf(a,e,`${t} has member 'transform' that`),writableType:s}}(e,"First parameter");if(void 0!==a.readableType)throw new RangeError("Invalid readableType specified");if(void 0!==a.writableType)throw new RangeError("Invalid writableType specified");const s=Ph(i,0),o=Ch(i),c=Ph(n,1),u=Ch(n);let l;!function(e,t,r,n,i,a){function s(){return t}e._writable=function(e,t,r,n,i=1,a=(()=>1)){const s=Object.create(Kh.prototype);return Nh(s),nd(s,Object.create(rd.prototype),e,t,r,n,i,a),s}(s,(function(t){return function(e,t){const r=e._transformStreamController;return e._backpressure?sl(e._backpressureChangePromise,(()=>{const n=e._writable;if("erroring"===n._state)throw n._storedError;return vf(r,t)})):vf(r,t)}(e,t)}),(function(){return function(e){const t=e._readable,r=e._transformStreamController,n=r._flushAlgorithm();return bf(r),sl(n,(()=>{if("errored"===t._state)throw t._storedError;Md(t._readableStreamController)}),(r=>{throw ff(e,r),t._storedError}))}(e)}),(function(t){return function(e,t){return ff(e,t),el(void 0)}(e,t)}),r,n),e._readable=Hd(s,(function(){return function(e){return yf(e,!1),e._backpressureChangePromise}(e)}),(function(t){return pf(e,t),el(void 0)}),i,a),e._backpressure=void 0,e._backpressureChangePromise=void 0,e._backpressureChangePromise_resolve=void 0,yf(e,!0),e._transformStreamController=void 0}(this,Qu((e=>{l=e})),c,u,s,o),function(e,t){const r=Object.create(gf.prototype);let n=e=>{try{return wf(r,e),el(void 0)}catch(e){return tl(e)}},i=()=>el(void 0);void 0!==t.transform&&(n=e=>t.transform(e,r)),void 0!==t.flush&&(i=()=>t.flush(r)),function(e,t,r,n){t._controlledTransformStream=e,e._transformStreamController=t,t._transformAlgorithm=r,t._flushAlgorithm=n}(e,r,n,i)}(this,a),void 0!==a.start?l(a.start(this._transformStreamController)):l(void 0)}get readable(){if(!df(this))throw Af("readable");return this._readable}get writable(){if(!df(this))throw Af("writable");return this._writable}}function df(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_transformStreamController")}function ff(e,t){Dd(e._readable._readableStreamController,t),pf(e,t)}function pf(e,t){bf(e._transformStreamController),od(e._writable._writableStreamController,t),e._backpressure&&yf(e,!1)}function yf(e,t){void 0!==e._backpressureChangePromise&&e._backpressureChangePromise_resolve(),e._backpressureChangePromise=Qu((t=>{e._backpressureChangePromise_resolve=t})),e._backpressure=t}Object.defineProperties(hf.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(hf.prototype,Hu.toStringTag,{value:"TransformStream",configurable:!0});class gf{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!mf(this))throw kf("desiredSize");return Bd(this._controlledTransformStream._readable._readableStreamController)}enqueue(e=void 0){if(!mf(this))throw kf("enqueue");wf(this,e)}error(e=void 0){if(!mf(this))throw kf("error");var t;t=e,ff(this._controlledTransformStream,t)}terminate(){if(!mf(this))throw kf("terminate");!function(e){const t=e._controlledTransformStream;Md(t._readable._readableStreamController);pf(t,new TypeError("TransformStream terminated"))}(this)}}function mf(e){return!!Gu(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledTransformStream")}function bf(e){e._transformAlgorithm=void 0,e._flushAlgorithm=void 0}function wf(e,t){const r=e._controlledTransformStream,n=r._readable._readableStreamController;if(!Ud(n))throw new TypeError("Readable side is not in a state that permits enqueue");try{Id(n,t)}catch(e){throw pf(r,e),r._readable._storedError}const i=function(e){return!Cd(e)}(n);i!==r._backpressure&&yf(r,!0)}function vf(e,t){return sl(e._transformAlgorithm(t),void 0,(t=>{throw ff(e._controlledTransformStream,t),t}))}function kf(e){return new TypeError(`TransformStreamDefaultController.prototype.${e} can only be used on a TransformStreamDefaultController`)}function Af(e){return new TypeError(`TransformStream.prototype.${e} can only be used on a TransformStream`)}Object.defineProperties(gf.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),"symbol"==typeof Hu.toStringTag&&Object.defineProperty(gf.prototype,Hu.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var _f=Object.freeze({__proto__:null,ByteLengthQueuingStrategy:ef,CountQueuingStrategy:af,ReadableByteStreamController:rh,ReadableStream:jd,ReadableStreamBYOBReader:Sh,ReadableStreamBYOBRequest:th,ReadableStreamDefaultController:Ed,ReadableStreamDefaultReader:ql,TransformStream:hf,TransformStreamDefaultController:gf,WritableStream:Kh,WritableStreamDefaultController:rd,WritableStreamDefaultWriter:Jh}),Sf=function(e,t){return Sf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},Sf(e,t)};function Ef(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}Sf(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function xf(e){if(!e)throw new TypeError("Assertion failed")}function Pf(){}function Cf(e){return"object"==typeof e&&null!==e||"function"==typeof e}function Tf(e){if("function"!=typeof e)return!1;var t=!1;try{new e({start:function(){t=!0}})}catch(e){}return t}function Mf(e){return!!Cf(e)&&"function"==typeof e.getReader}function If(e){return!!Cf(e)&&"function"==typeof e.getWriter}function Df(e){return!!Cf(e)&&!!Mf(e.readable)&&!!If(e.writable)}function Bf(e){try{return e.getReader({mode:"byob"}).releaseLock(),!0}catch(e){return!1}}function Uf(e,t){var r=(void 0===t?{}:t).type;return xf(Mf(e)),xf(!1===e.locked),"bytes"===(r=Rf(r))?new Lf(e):new Of(e)}function Rf(e){var t=String(e);if("bytes"===t)return t;if(void 0===e)return e;throw new RangeError("Invalid type is specified")}var Kf=function(){function e(e){this._underlyingReader=void 0,this._readerMode=void 0,this._readableStreamController=void 0,this._pendingRead=void 0,this._underlyingStream=e,this._attachDefaultReader()}return e.prototype.start=function(e){this._readableStreamController=e},e.prototype.cancel=function(e){return xf(void 0!==this._underlyingReader),this._underlyingReader.cancel(e)},e.prototype._attachDefaultReader=function(){if("default"!==this._readerMode){this._detachReader();var e=this._underlyingStream.getReader();this._readerMode="default",this._attachReader(e)}},e.prototype._attachReader=function(e){var t=this;xf(void 0===this._underlyingReader),this._underlyingReader=e;var r=this._underlyingReader.closed;r&&r.then((function(){return t._finishPendingRead()})).then((function(){e===t._underlyingReader&&t._readableStreamController.close()}),(function(r){e===t._underlyingReader&&t._readableStreamController.error(r)})).catch(Pf)},e.prototype._detachReader=function(){void 0!==this._underlyingReader&&(this._underlyingReader.releaseLock(),this._underlyingReader=void 0,this._readerMode=void 0)},e.prototype._pullWithDefaultReader=function(){var e=this;this._attachDefaultReader();var t=this._underlyingReader.read().then((function(t){var r=e._readableStreamController;t.done?e._tryClose():r.enqueue(t.value)}));return this._setPendingRead(t),t},e.prototype._tryClose=function(){try{this._readableStreamController.close()}catch(e){}},e.prototype._setPendingRead=function(e){var t,r=this,n=function(){r._pendingRead===t&&(r._pendingRead=void 0)};this._pendingRead=t=e.then(n,n)},e.prototype._finishPendingRead=function(){var e=this;if(this._pendingRead){var t=function(){return e._finishPendingRead()};return this._pendingRead.then(t,t)}},e}(),Of=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Ef(t,e),t.prototype.pull=function(){return this._pullWithDefaultReader()},t}(Kf);function Nf(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}var Lf=function(e){function t(t){var r=this,n=Bf(t);return(r=e.call(this,t)||this)._supportsByob=n,r}return Ef(t,e),Object.defineProperty(t.prototype,"type",{get:function(){return"bytes"},enumerable:!1,configurable:!0}),t.prototype._attachByobReader=function(){if("byob"!==this._readerMode){xf(this._supportsByob),this._detachReader();var e=this._underlyingStream.getReader({mode:"byob"});this._readerMode="byob",this._attachReader(e)}},t.prototype.pull=function(){if(this._supportsByob){var e=this._readableStreamController.byobRequest;if(e)return this._pullWithByobRequest(e)}return this._pullWithDefaultReader()},t.prototype._pullWithByobRequest=function(e){var t=this;this._attachByobReader();var r=new Uint8Array(e.view.byteLength),n=this._underlyingReader.read(r).then((function(r){var n,i,a;t._readableStreamController,r.done?(t._tryClose(),e.respond(0)):(n=r.value,i=e.view,a=Nf(n),Nf(i).set(a,0),e.respond(r.value.byteLength))}));return this._setPendingRead(n),n},t}(Kf);function qf(e){xf(If(e)),xf(!1===e.locked);var t=e.getWriter();return new Ff(t)}var Ff=function(){function e(e){var t=this;this._writableStreamController=void 0,this._pendingWrite=void 0,this._state="writable",this._storedError=void 0,this._underlyingWriter=e,this._errorPromise=new Promise((function(e,r){t._errorPromiseReject=r})),this._errorPromise.catch(Pf)}return e.prototype.start=function(e){var t=this;this._writableStreamController=e,this._underlyingWriter.closed.then((function(){t._state="closed"})).catch((function(e){return t._finishErroring(e)}))},e.prototype.write=function(e){var t=this,r=this._underlyingWriter;if(null===r.desiredSize)return r.ready;var n=r.write(e);n.catch((function(e){return t._finishErroring(e)})),r.ready.catch((function(e){return t._startErroring(e)}));var i=Promise.race([n,this._errorPromise]);return this._setPendingWrite(i),i},e.prototype.close=function(){var e=this;return void 0===this._pendingWrite?this._underlyingWriter.close():this._finishPendingWrite().then((function(){return e.close()}))},e.prototype.abort=function(e){if("errored"!==this._state)return this._underlyingWriter.abort(e)},e.prototype._setPendingWrite=function(e){var t,r=this,n=function(){r._pendingWrite===t&&(r._pendingWrite=void 0)};this._pendingWrite=t=e.then(n,n)},e.prototype._finishPendingWrite=function(){var e=this;if(void 0===this._pendingWrite)return Promise.resolve();var t=function(){return e._finishPendingWrite()};return this._pendingWrite.then(t,t)},e.prototype._startErroring=function(e){var t=this;if("writable"===this._state){this._state="erroring",this._storedError=e;var r=function(){return t._finishErroring(e)};void 0===this._pendingWrite?r():this._finishPendingWrite().then(r,r),this._writableStreamController.error(e)}},e.prototype._finishErroring=function(e){"writable"===this._state&&this._startErroring(e),"erroring"===this._state&&(this._state="errored",this._errorPromiseReject(this._storedError))},e}();function zf(e){xf(Df(e));var t=e.readable,r=e.writable;xf(!1===t.locked),xf(!1===r.locked);var n,i=t.getReader();try{n=r.getWriter()}catch(e){throw i.releaseLock(),e}return new jf(i,n)}var jf=function(){function e(e,t){var r=this;this._transformStreamController=void 0,this._onRead=function(e){if(!e.done)return r._transformStreamController.enqueue(e.value),r._reader.read().then(r._onRead)},this._onError=function(e){r._flushReject(e),r._transformStreamController.error(e),r._reader.cancel(e).catch(Pf),r._writer.abort(e).catch(Pf)},this._onTerminate=function(){r._flushResolve(),r._transformStreamController.terminate();var e=new TypeError("TransformStream terminated");r._writer.abort(e).catch(Pf)},this._reader=e,this._writer=t,this._flushPromise=new Promise((function(e,t){r._flushResolve=e,r._flushReject=t}))}return e.prototype.start=function(e){this._transformStreamController=e,this._reader.read().then(this._onRead).then(this._onTerminate,this._onError);var t=this._reader.closed;t&&t.then(this._onTerminate,this._onError)},e.prototype.transform=function(e){return this._writer.write(e)},e.prototype.flush=function(){var e=this;return this._writer.close().then((function(){return e._flushPromise}))},e}(),Hf=Object.freeze({__proto__:null,createReadableStreamWrapper:function(e){xf(function(e){return!!Tf(e)&&!!Mf(new e)}(e));var t=function(e){try{return new e({type:"bytes"}),!0}catch(e){return!1}}(e);return function(r,n){var i=(void 0===n?{}:n).type;if("bytes"!==(i=Rf(i))||t||(i=void 0),r.constructor===e&&("bytes"!==i||Bf(r)))return r;if("bytes"===i){var a=Uf(r,{type:i});return new e(a)}return a=Uf(r),new e(a)}},createTransformStreamWrapper:function(e){return xf(function(e){return!!Tf(e)&&!!Df(new e)}(e)),function(t){if(t.constructor===e)return t;var r=zf(t);return new e(r)}},createWrappingReadableSource:Uf,createWrappingTransformer:zf,createWrappingWritableSink:qf,createWritableStreamWrapper:function(e){return xf(function(e){return!!Tf(e)&&!!If(new e)}(e)),function(t){if(t.constructor===e)return t;var r=qf(t);return new e(r)}}}),Wf=ct((function(e){!function(e,t){function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function n(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function i(e,t,r){if(i.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"==typeof e?e.exports=i:t.BN=i,i.BN=i,i.wordSize=26;try{a=void 0}catch(e){}function s(e,t,r){for(var n=0,i=Math.min(e.length,r),a=t;a=49&&s<=54?s-49+10:s>=17&&s<=22?s-17+10:15&s}return n}function o(e,t,r,n){for(var i=0,a=Math.min(e.length,r),s=t;s=49?o-49+10:o>=17?o-17+10:o}return i}i.isBN=function(e){return e instanceof i||null!==e&&"object"==typeof e&&e.constructor.wordSize===i.wordSize&&Array.isArray(e.words)},i.max=function(e,t){return e.cmp(t)>0?e:t},i.min=function(e,t){return e.cmp(t)<0?e:t},i.prototype._init=function(e,t,n){if("number"==typeof e)return this._initNumber(e,t,n);if("object"==typeof e)return this._initArray(e,t,n);"hex"===t&&(t=16),r(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&i++,16===t?this._parseHex(e,i):this._parseBase(e,t,i),"-"===e[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),t,n)},i.prototype._initNumber=function(e,t,n){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},i.prototype._initArray=function(e,t,n){if(r("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)s=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[a]|=s<>>26-o&67108863,(o+=24)>=26&&(o-=26,a++);else if("le"===n)for(i=0,a=0;i>>26-o&67108863,(o+=24)>=26&&(o-=26,a++);return this.strip()},i.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r=t;r-=6)i=s(e,r,r+6),this.words[n]|=i<>>26-a&4194303,(a+=24)>=26&&(a-=26,n++);r+6!==t&&(i=s(e,t,r+6),this.words[n]|=i<>>26-a&4194303),this.strip()},i.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var a=e.length-r,s=a%n,c=Math.min(a,a-s)+r,u=0,l=r;l1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],u=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],a=0|t.words[0],s=i*a,o=67108863&s,c=s/67108864|0;r.words[0]=o;for(var u=1;u>>26,h=67108863&c,d=Math.min(u,t.length-1),f=Math.max(0,u-e.length+1);f<=d;f++){var p=u-f|0;l+=(s=(i=0|e.words[p])*(a=0|t.words[f])+h)/67108864|0,h=67108863&s}r.words[u]=0|h,c=0|l}return 0!==c?r.words[u]=0|c:r.length--,r.strip()}i.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var i=0,a=0,s=0;s>>24-i&16777215)||s!==this.length-1?c[6-h.length]+h+n:h+n,(i+=2)>=26&&(i-=26,s--)}for(0!==a&&(n=a.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var d=u[e],f=l[e];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var y=p.modn(f).toString(e);n=(p=p.idivn(f)).isZero()?y+n:c[d-y.length]+y+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(e,t){return r(void 0!==a),this.toArrayLike(a,e,t)},i.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},i.prototype.toArrayLike=function(e,t,n){var i=this.byteLength(),a=n||Math.max(1,i);r(i<=a,"byte array longer than desired length"),r(a>0,"Requested array length <= 0"),this.strip();var s,o,c="le"===t,u=new e(a),l=this.clone();if(c){for(o=0;!l.isZero();o++)s=l.andln(255),l.iushrn(8),u[o]=s;for(;o=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},i.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},i.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},i.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},i.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},i.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},i.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},i.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},i.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},i.prototype.notn=function(e){return this.clone().inotn(e)},i.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var n=e/26|0,i=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ae.length?this.clone().iadd(e):e.clone().iadd(this)},i.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var a=0,s=0;s>26,this.words[s]=67108863&t;for(;0!==a&&s>26,this.words[s]=67108863&t;if(0===a&&s>>13,f=0|s[1],p=8191&f,y=f>>>13,g=0|s[2],m=8191&g,b=g>>>13,w=0|s[3],v=8191&w,k=w>>>13,A=0|s[4],_=8191&A,S=A>>>13,E=0|s[5],x=8191&E,P=E>>>13,C=0|s[6],T=8191&C,M=C>>>13,I=0|s[7],D=8191&I,B=I>>>13,U=0|s[8],R=8191&U,K=U>>>13,O=0|s[9],N=8191&O,L=O>>>13,q=0|o[0],F=8191&q,z=q>>>13,j=0|o[1],H=8191&j,W=j>>>13,V=0|o[2],G=8191&V,$=V>>>13,J=0|o[3],Z=8191&J,Y=J>>>13,X=0|o[4],Q=8191&X,ee=X>>>13,te=0|o[5],re=8191&te,ne=te>>>13,ie=0|o[6],ae=8191&ie,se=ie>>>13,oe=0|o[7],ce=8191&oe,ue=oe>>>13,le=0|o[8],he=8191&le,de=le>>>13,fe=0|o[9],pe=8191&fe,ye=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(u+(n=Math.imul(h,F))|0)+((8191&(i=(i=Math.imul(h,z))+Math.imul(d,F)|0))<<13)|0;u=((a=Math.imul(d,z))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,z))+Math.imul(y,F)|0,a=Math.imul(y,z);var me=(u+(n=n+Math.imul(h,H)|0)|0)+((8191&(i=(i=i+Math.imul(h,W)|0)+Math.imul(d,H)|0))<<13)|0;u=((a=a+Math.imul(d,W)|0)+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(m,F),i=(i=Math.imul(m,z))+Math.imul(b,F)|0,a=Math.imul(b,z),n=n+Math.imul(p,H)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(y,H)|0,a=a+Math.imul(y,W)|0;var be=(u+(n=n+Math.imul(h,G)|0)|0)+((8191&(i=(i=i+Math.imul(h,$)|0)+Math.imul(d,G)|0))<<13)|0;u=((a=a+Math.imul(d,$)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,z))+Math.imul(k,F)|0,a=Math.imul(k,z),n=n+Math.imul(m,H)|0,i=(i=i+Math.imul(m,W)|0)+Math.imul(b,H)|0,a=a+Math.imul(b,W)|0,n=n+Math.imul(p,G)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(y,G)|0,a=a+Math.imul(y,$)|0;var we=(u+(n=n+Math.imul(h,Z)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(d,Z)|0))<<13)|0;u=((a=a+Math.imul(d,Y)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(_,F),i=(i=Math.imul(_,z))+Math.imul(S,F)|0,a=Math.imul(S,z),n=n+Math.imul(v,H)|0,i=(i=i+Math.imul(v,W)|0)+Math.imul(k,H)|0,a=a+Math.imul(k,W)|0,n=n+Math.imul(m,G)|0,i=(i=i+Math.imul(m,$)|0)+Math.imul(b,G)|0,a=a+Math.imul(b,$)|0,n=n+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(y,Z)|0,a=a+Math.imul(y,Y)|0;var ve=(u+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,ee)|0)+Math.imul(d,Q)|0))<<13)|0;u=((a=a+Math.imul(d,ee)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(x,F),i=(i=Math.imul(x,z))+Math.imul(P,F)|0,a=Math.imul(P,z),n=n+Math.imul(_,H)|0,i=(i=i+Math.imul(_,W)|0)+Math.imul(S,H)|0,a=a+Math.imul(S,W)|0,n=n+Math.imul(v,G)|0,i=(i=i+Math.imul(v,$)|0)+Math.imul(k,G)|0,a=a+Math.imul(k,$)|0,n=n+Math.imul(m,Z)|0,i=(i=i+Math.imul(m,Y)|0)+Math.imul(b,Z)|0,a=a+Math.imul(b,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,ee)|0;var ke=(u+(n=n+Math.imul(h,re)|0)|0)+((8191&(i=(i=i+Math.imul(h,ne)|0)+Math.imul(d,re)|0))<<13)|0;u=((a=a+Math.imul(d,ne)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,z))+Math.imul(M,F)|0,a=Math.imul(M,z),n=n+Math.imul(x,H)|0,i=(i=i+Math.imul(x,W)|0)+Math.imul(P,H)|0,a=a+Math.imul(P,W)|0,n=n+Math.imul(_,G)|0,i=(i=i+Math.imul(_,$)|0)+Math.imul(S,G)|0,a=a+Math.imul(S,$)|0,n=n+Math.imul(v,Z)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(k,Z)|0,a=a+Math.imul(k,Y)|0,n=n+Math.imul(m,Q)|0,i=(i=i+Math.imul(m,ee)|0)+Math.imul(b,Q)|0,a=a+Math.imul(b,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(y,re)|0,a=a+Math.imul(y,ne)|0;var Ae=(u+(n=n+Math.imul(h,ae)|0)|0)+((8191&(i=(i=i+Math.imul(h,se)|0)+Math.imul(d,ae)|0))<<13)|0;u=((a=a+Math.imul(d,se)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(D,F),i=(i=Math.imul(D,z))+Math.imul(B,F)|0,a=Math.imul(B,z),n=n+Math.imul(T,H)|0,i=(i=i+Math.imul(T,W)|0)+Math.imul(M,H)|0,a=a+Math.imul(M,W)|0,n=n+Math.imul(x,G)|0,i=(i=i+Math.imul(x,$)|0)+Math.imul(P,G)|0,a=a+Math.imul(P,$)|0,n=n+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Y)|0)+Math.imul(S,Z)|0,a=a+Math.imul(S,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(k,Q)|0,a=a+Math.imul(k,ee)|0,n=n+Math.imul(m,re)|0,i=(i=i+Math.imul(m,ne)|0)+Math.imul(b,re)|0,a=a+Math.imul(b,ne)|0,n=n+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,se)|0)+Math.imul(y,ae)|0,a=a+Math.imul(y,se)|0;var _e=(u+(n=n+Math.imul(h,ce)|0)|0)+((8191&(i=(i=i+Math.imul(h,ue)|0)+Math.imul(d,ce)|0))<<13)|0;u=((a=a+Math.imul(d,ue)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,z))+Math.imul(K,F)|0,a=Math.imul(K,z),n=n+Math.imul(D,H)|0,i=(i=i+Math.imul(D,W)|0)+Math.imul(B,H)|0,a=a+Math.imul(B,W)|0,n=n+Math.imul(T,G)|0,i=(i=i+Math.imul(T,$)|0)+Math.imul(M,G)|0,a=a+Math.imul(M,$)|0,n=n+Math.imul(x,Z)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(P,Z)|0,a=a+Math.imul(P,Y)|0,n=n+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,ee)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(k,re)|0,a=a+Math.imul(k,ne)|0,n=n+Math.imul(m,ae)|0,i=(i=i+Math.imul(m,se)|0)+Math.imul(b,ae)|0,a=a+Math.imul(b,se)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(y,ce)|0,a=a+Math.imul(y,ue)|0;var Se=(u+(n=n+Math.imul(h,he)|0)|0)+((8191&(i=(i=i+Math.imul(h,de)|0)+Math.imul(d,he)|0))<<13)|0;u=((a=a+Math.imul(d,de)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(N,F),i=(i=Math.imul(N,z))+Math.imul(L,F)|0,a=Math.imul(L,z),n=n+Math.imul(R,H)|0,i=(i=i+Math.imul(R,W)|0)+Math.imul(K,H)|0,a=a+Math.imul(K,W)|0,n=n+Math.imul(D,G)|0,i=(i=i+Math.imul(D,$)|0)+Math.imul(B,G)|0,a=a+Math.imul(B,$)|0,n=n+Math.imul(T,Z)|0,i=(i=i+Math.imul(T,Y)|0)+Math.imul(M,Z)|0,a=a+Math.imul(M,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,ee)|0)+Math.imul(P,Q)|0,a=a+Math.imul(P,ee)|0,n=n+Math.imul(_,re)|0,i=(i=i+Math.imul(_,ne)|0)+Math.imul(S,re)|0,a=a+Math.imul(S,ne)|0,n=n+Math.imul(v,ae)|0,i=(i=i+Math.imul(v,se)|0)+Math.imul(k,ae)|0,a=a+Math.imul(k,se)|0,n=n+Math.imul(m,ce)|0,i=(i=i+Math.imul(m,ue)|0)+Math.imul(b,ce)|0,a=a+Math.imul(b,ue)|0,n=n+Math.imul(p,he)|0,i=(i=i+Math.imul(p,de)|0)+Math.imul(y,he)|0,a=a+Math.imul(y,de)|0;var Ee=(u+(n=n+Math.imul(h,pe)|0)|0)+((8191&(i=(i=i+Math.imul(h,ye)|0)+Math.imul(d,pe)|0))<<13)|0;u=((a=a+Math.imul(d,ye)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(N,H),i=(i=Math.imul(N,W))+Math.imul(L,H)|0,a=Math.imul(L,W),n=n+Math.imul(R,G)|0,i=(i=i+Math.imul(R,$)|0)+Math.imul(K,G)|0,a=a+Math.imul(K,$)|0,n=n+Math.imul(D,Z)|0,i=(i=i+Math.imul(D,Y)|0)+Math.imul(B,Z)|0,a=a+Math.imul(B,Y)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(M,Q)|0,a=a+Math.imul(M,ee)|0,n=n+Math.imul(x,re)|0,i=(i=i+Math.imul(x,ne)|0)+Math.imul(P,re)|0,a=a+Math.imul(P,ne)|0,n=n+Math.imul(_,ae)|0,i=(i=i+Math.imul(_,se)|0)+Math.imul(S,ae)|0,a=a+Math.imul(S,se)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,ue)|0)+Math.imul(k,ce)|0,a=a+Math.imul(k,ue)|0,n=n+Math.imul(m,he)|0,i=(i=i+Math.imul(m,de)|0)+Math.imul(b,he)|0,a=a+Math.imul(b,de)|0;var xe=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ye)|0)+Math.imul(y,pe)|0))<<13)|0;u=((a=a+Math.imul(y,ye)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(N,G),i=(i=Math.imul(N,$))+Math.imul(L,G)|0,a=Math.imul(L,$),n=n+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(K,Z)|0,a=a+Math.imul(K,Y)|0,n=n+Math.imul(D,Q)|0,i=(i=i+Math.imul(D,ee)|0)+Math.imul(B,Q)|0,a=a+Math.imul(B,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(M,re)|0,a=a+Math.imul(M,ne)|0,n=n+Math.imul(x,ae)|0,i=(i=i+Math.imul(x,se)|0)+Math.imul(P,ae)|0,a=a+Math.imul(P,se)|0,n=n+Math.imul(_,ce)|0,i=(i=i+Math.imul(_,ue)|0)+Math.imul(S,ce)|0,a=a+Math.imul(S,ue)|0,n=n+Math.imul(v,he)|0,i=(i=i+Math.imul(v,de)|0)+Math.imul(k,he)|0,a=a+Math.imul(k,de)|0;var Pe=(u+(n=n+Math.imul(m,pe)|0)|0)+((8191&(i=(i=i+Math.imul(m,ye)|0)+Math.imul(b,pe)|0))<<13)|0;u=((a=a+Math.imul(b,ye)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(N,Z),i=(i=Math.imul(N,Y))+Math.imul(L,Z)|0,a=Math.imul(L,Y),n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(K,Q)|0,a=a+Math.imul(K,ee)|0,n=n+Math.imul(D,re)|0,i=(i=i+Math.imul(D,ne)|0)+Math.imul(B,re)|0,a=a+Math.imul(B,ne)|0,n=n+Math.imul(T,ae)|0,i=(i=i+Math.imul(T,se)|0)+Math.imul(M,ae)|0,a=a+Math.imul(M,se)|0,n=n+Math.imul(x,ce)|0,i=(i=i+Math.imul(x,ue)|0)+Math.imul(P,ce)|0,a=a+Math.imul(P,ue)|0,n=n+Math.imul(_,he)|0,i=(i=i+Math.imul(_,de)|0)+Math.imul(S,he)|0,a=a+Math.imul(S,de)|0;var Ce=(u+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,ye)|0)+Math.imul(k,pe)|0))<<13)|0;u=((a=a+Math.imul(k,ye)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(N,Q),i=(i=Math.imul(N,ee))+Math.imul(L,Q)|0,a=Math.imul(L,ee),n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(K,re)|0,a=a+Math.imul(K,ne)|0,n=n+Math.imul(D,ae)|0,i=(i=i+Math.imul(D,se)|0)+Math.imul(B,ae)|0,a=a+Math.imul(B,se)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,ue)|0)+Math.imul(M,ce)|0,a=a+Math.imul(M,ue)|0,n=n+Math.imul(x,he)|0,i=(i=i+Math.imul(x,de)|0)+Math.imul(P,he)|0,a=a+Math.imul(P,de)|0;var Te=(u+(n=n+Math.imul(_,pe)|0)|0)+((8191&(i=(i=i+Math.imul(_,ye)|0)+Math.imul(S,pe)|0))<<13)|0;u=((a=a+Math.imul(S,ye)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(N,re),i=(i=Math.imul(N,ne))+Math.imul(L,re)|0,a=Math.imul(L,ne),n=n+Math.imul(R,ae)|0,i=(i=i+Math.imul(R,se)|0)+Math.imul(K,ae)|0,a=a+Math.imul(K,se)|0,n=n+Math.imul(D,ce)|0,i=(i=i+Math.imul(D,ue)|0)+Math.imul(B,ce)|0,a=a+Math.imul(B,ue)|0,n=n+Math.imul(T,he)|0,i=(i=i+Math.imul(T,de)|0)+Math.imul(M,he)|0,a=a+Math.imul(M,de)|0;var Me=(u+(n=n+Math.imul(x,pe)|0)|0)+((8191&(i=(i=i+Math.imul(x,ye)|0)+Math.imul(P,pe)|0))<<13)|0;u=((a=a+Math.imul(P,ye)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,n=Math.imul(N,ae),i=(i=Math.imul(N,se))+Math.imul(L,ae)|0,a=Math.imul(L,se),n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(K,ce)|0,a=a+Math.imul(K,ue)|0,n=n+Math.imul(D,he)|0,i=(i=i+Math.imul(D,de)|0)+Math.imul(B,he)|0,a=a+Math.imul(B,de)|0;var Ie=(u+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,ye)|0)+Math.imul(M,pe)|0))<<13)|0;u=((a=a+Math.imul(M,ye)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,n=Math.imul(N,ce),i=(i=Math.imul(N,ue))+Math.imul(L,ce)|0,a=Math.imul(L,ue),n=n+Math.imul(R,he)|0,i=(i=i+Math.imul(R,de)|0)+Math.imul(K,he)|0,a=a+Math.imul(K,de)|0;var De=(u+(n=n+Math.imul(D,pe)|0)|0)+((8191&(i=(i=i+Math.imul(D,ye)|0)+Math.imul(B,pe)|0))<<13)|0;u=((a=a+Math.imul(B,ye)|0)+(i>>>13)|0)+(De>>>26)|0,De&=67108863,n=Math.imul(N,he),i=(i=Math.imul(N,de))+Math.imul(L,he)|0,a=Math.imul(L,de);var Be=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,ye)|0)+Math.imul(K,pe)|0))<<13)|0;u=((a=a+Math.imul(K,ye)|0)+(i>>>13)|0)+(Be>>>26)|0,Be&=67108863;var Ue=(u+(n=Math.imul(N,pe))|0)+((8191&(i=(i=Math.imul(N,ye))+Math.imul(L,pe)|0))<<13)|0;return u=((a=Math.imul(L,ye))+(i>>>13)|0)+(Ue>>>26)|0,Ue&=67108863,c[0]=ge,c[1]=me,c[2]=be,c[3]=we,c[4]=ve,c[5]=ke,c[6]=Ae,c[7]=_e,c[8]=Se,c[9]=Ee,c[10]=xe,c[11]=Pe,c[12]=Ce,c[13]=Te,c[14]=Me,c[15]=Ie,c[16]=De,c[17]=Be,c[18]=Ue,0!==u&&(c[19]=u,r.length++),r};function f(e,t,r){return(new p).mulp(e,t,r)}function p(e,t){this.x=e,this.y=t}Math.imul||(d=h),i.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?d(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,a=0;a>>26)|0)>>>26,s&=67108863}r.words[a]=o,n=s,s=i}return 0!==n?r.words[a]=n:r.length--,r.strip()}(this,e,t):f(this,e,t),r},p.prototype.makeRBT=function(e){for(var t=new Array(e),r=i.prototype._countBits(e)-1,n=0;n>=1;return n},p.prototype.permute=function(e,t,r,n,i,a){for(var s=0;s>>=1)i++;return 1<>>=13,n[2*s+1]=8191&a,a>>>=13;for(s=2*t;s>=26,t+=i/67108864|0,t+=a>>>26,this.words[n]=67108863&a}return 0!==t&&(this.words[n]=t,this.length++),this},i.prototype.muln=function(e){return this.clone().imuln(e)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new i(1);for(var r=this,n=0;n=0);var t,n=e%26,i=(e-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(t=0;t>>26-n}s&&(this.words[t]=s,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var a=e%26,s=Math.min((e-a)/26,this.length),o=67108863^67108863>>>a<s)for(this.length-=s,u=0;u=0&&(0!==l||u>=i);u--){var h=0|this.words[u];this.words[u]=l<<26-a|h>>>a,l=h&o}return c&&0!==l&&(c.words[c.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(e,t,n){return r(0===this.negative),this.iushrn(e,t,n)},i.prototype.shln=function(e){return this.clone().ishln(e)},i.prototype.ushln=function(e){return this.clone().iushln(e)},i.prototype.shrn=function(e){return this.clone().ishrn(e)},i.prototype.ushrn=function(e){return this.clone().iushrn(e)},i.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,i=1<=0);var t=e%26,n=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},i.prototype.isubn=function(e){if(r("number"==typeof e),r(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+n]=67108863&a}for(;i>26,this.words[i+n]=67108863&a;if(0===o)return this.strip();for(r(-1===o),o=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},i.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),a=e,s=0|a.words[a.length-1];0!=(r=26-this._countBits(s))&&(a=a.ushln(r),n.iushln(r),s=0|a.words[a.length-1]);var o,c=n.length-a.length;if("mod"!==t){(o=new i(null)).length=c+1,o.words=new Array(o.length);for(var u=0;u=0;h--){var d=67108864*(0|n.words[a.length+h])+(0|n.words[a.length+h-1]);for(d=Math.min(d/s|0,67108863),n._ishlnsubmul(a,d,h);0!==n.negative;)d--,n.negative=0,n._ishlnsubmul(a,1,h),n.isZero()||(n.negative^=1);o&&(o.words[h]=d)}return o&&o.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:o||null,mod:n}},i.prototype.divmod=function(e,t,n){return r(!e.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===e.negative?(o=this.neg().divmod(e,t),"mod"!==t&&(a=o.div.neg()),"div"!==t&&(s=o.mod.neg(),n&&0!==s.negative&&s.iadd(e)),{div:a,mod:s}):0===this.negative&&0!==e.negative?(o=this.divmod(e.neg(),t),"mod"!==t&&(a=o.div.neg()),{div:a,mod:o.mod}):0!=(this.negative&e.negative)?(o=this.neg().divmod(e.neg(),t),"div"!==t&&(s=o.mod.neg(),n&&0!==s.negative&&s.isub(e)),{div:o.div,mod:s}):e.length>this.length||this.cmp(e)<0?{div:new i(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new i(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new i(this.modn(e.words[0]))}:this._wordDiv(e,t);var a,s,o},i.prototype.div=function(e){return this.divmod(e,"div",!1).div},i.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},i.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},i.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},i.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,n=0,i=this.length-1;i>=0;i--)n=(t*n+(0|this.words[i]))%e;return n},i.prototype.idivn=function(e){r(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*t;this.words[n]=i/e|0,t=i%e}return this.strip()},i.prototype.divn=function(e){return this.clone().idivn(e)},i.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var a=new i(1),s=new i(0),o=new i(0),c=new i(1),u=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++u;for(var l=n.clone(),h=t.clone();!t.isZero();){for(var d=0,f=1;0==(t.words[0]&f)&&d<26;++d,f<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(a.isOdd()||s.isOdd())&&(a.iadd(l),s.isub(h)),a.iushrn(1),s.iushrn(1);for(var p=0,y=1;0==(n.words[0]&y)&&p<26;++p,y<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(o.isOdd()||c.isOdd())&&(o.iadd(l),c.isub(h)),o.iushrn(1),c.iushrn(1);t.cmp(n)>=0?(t.isub(n),a.isub(o),s.isub(c)):(n.isub(t),o.isub(a),c.isub(s))}return{a:o,b:c,gcd:n.iushln(u)}},i.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var a,s=new i(1),o=new i(0),c=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var u=0,l=1;0==(t.words[0]&l)&&u<26;++u,l<<=1);if(u>0)for(t.iushrn(u);u-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);for(var h=0,d=1;0==(n.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(n.iushrn(h);h-- >0;)o.isOdd()&&o.iadd(c),o.iushrn(1);t.cmp(n)>=0?(t.isub(n),s.isub(o)):(n.isub(t),o.isub(s))}return(a=0===t.cmpn(1)?s:o).cmpn(0)<0&&a.iadd(e),a},i.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var a=t;t=r,r=a}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},i.prototype.invm=function(e){return this.egcd(e).a.umod(e)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(e){return this.words[0]&e},i.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,n=(e-t)/26,i=1<>>26,o&=67108863,this.words[s]=o}return 0!==a&&(this.words[s]=a,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),r(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},i.prototype.gtn=function(e){return 1===this.cmpn(e)},i.prototype.gt=function(e){return 1===this.cmp(e)},i.prototype.gten=function(e){return this.cmpn(e)>=0},i.prototype.gte=function(e){return this.cmp(e)>=0},i.prototype.ltn=function(e){return-1===this.cmpn(e)},i.prototype.lt=function(e){return-1===this.cmp(e)},i.prototype.lten=function(e){return this.cmpn(e)<=0},i.prototype.lte=function(e){return this.cmp(e)<=0},i.prototype.eqn=function(e){return 0===this.cmpn(e)},i.prototype.eq=function(e){return 0===this.cmp(e)},i.red=function(e){return new k(e)},i.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},i.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(e){return this.red=e,this},i.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},i.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},i.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},i.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},i.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},i.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},i.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},i.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},i.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var y={k256:null,p224:null,p192:null,p25519:null};function g(e,t){this.name=e,this.p=new i(t,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function m(){g.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){g.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){g.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function v(){g.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"==typeof e){var t=i._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function A(e){k.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}g.prototype._tmp=function(){var e=new i(null);return e.words=new Array(Math.ceil(this.n/13)),e},g.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):r.strip(),r},g.prototype.split=function(e,t){e.iushrn(this.n,0,t)},g.prototype.imulK=function(e){return e.imul(this.k)},n(m,g),m.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,a=s}a>>>=22,e.words[i-10]=a,0===a&&e.length>10?e.length-=10:e.length-=9},m.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},i._prime=function(e){if(y[e])return y[e];var t;if("k256"===e)t=new m;else if("p224"===e)t=new b;else if("p192"===e)t=new w;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new v}return y[e]=t,t},k.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){r(0==(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var n=this.m.add(new i(1)).iushrn(2);return this.pow(e,n)}for(var a=this.m.subn(1),s=0;!a.isZero()&&0===a.andln(1);)s++,a.iushrn(1);r(!a.isZero());var o=new i(1).toRed(this),c=o.redNeg(),u=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);0!==this.pow(l,u).cmp(c);)l.redIAdd(c);for(var h=this.pow(l,a),d=this.pow(e,a.addn(1).iushrn(1)),f=this.pow(e,a),p=s;0!==f.cmp(o);){for(var y=f,g=0;0!==y.cmp(o);g++)y=y.redSqr();r(g=0;n--){for(var u=t.words[n],l=c-1;l>=0;l--){var h=u>>l&1;a!==r[0]&&(a=this.sqr(a)),0!==h||0!==s?(s<<=1,s|=h,(4==++o||0===n&&0===l)&&(a=this.mul(a,r[s]),o=0,s=0)):o=0}c=26}return a},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},i.mont=function(e){return new A(e)},n(A,k),A.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},A.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},A.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},A.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new i(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),s=a;return a.cmp(this.m)>=0?s=a.isub(this.m):a.cmpn(0)<0&&(s=a.iadd(this.m)),s._forceRed(this)},A.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,ot)})),Vf=Object.freeze({__proto__:null,default:Wf,__moduleExports:Wf});class Gf{constructor(e){if(void 0===e)throw new Error("Invalid BigInteger input");this.value=new Wf(e)}clone(){const e=new Gf(null);return this.value.copy(e.value),e}iinc(){return this.value.iadd(new Wf(1)),this}inc(){return this.clone().iinc()}idec(){return this.value.isub(new Wf(1)),this}dec(){return this.clone().idec()}iadd(e){return this.value.iadd(e.value),this}add(e){return this.clone().iadd(e)}isub(e){return this.value.isub(e.value),this}sub(e){return this.clone().isub(e)}imul(e){return this.value.imul(e.value),this}mul(e){return this.clone().imul(e)}imod(e){return this.value=this.value.umod(e.value),this}mod(e){return this.clone().imod(e)}modExp(e,t){const r=t.isEven()?Wf.red(t.value):Wf.mont(t.value),n=this.clone();return n.value=n.value.toRed(r).redPow(e.value).fromRed(),n}modInv(e){if(!this.gcd(e).isOne())throw new Error("Inverse does not exist");return new Gf(this.value.invm(e.value))}gcd(e){return new Gf(this.value.gcd(e.value))}ileftShift(e){return this.value.ishln(e.value.toNumber()),this}leftShift(e){return this.clone().ileftShift(e)}irightShift(e){return this.value.ishrn(e.value.toNumber()),this}rightShift(e){return this.clone().irightShift(e)}equal(e){return this.value.eq(e.value)}lt(e){return this.value.lt(e.value)}lte(e){return this.value.lte(e.value)}gt(e){return this.value.gt(e.value)}gte(e){return this.value.gte(e.value)}isZero(){return this.value.isZero()}isOne(){return this.value.eq(new Wf(1))}isNegative(){return this.value.isNeg()}isEven(){return this.value.isEven()}abs(){const e=this.clone();return e.value=e.value.abs(),e}toString(){return this.value.toString()}toNumber(){return this.value.toNumber()}getBit(e){return this.value.testn(e)?1:0}bitLength(){return this.value.bitLength()}byteLength(){return this.value.byteLength()}toUint8Array(e="be",t){return this.value.toArrayLike(Uint8Array,e,t)}}var $f,Jf=Object.freeze({__proto__:null,default:Gf}),Zf=ct((function(e,t){var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,s=255&i;a?r.push(a,s):r.push(s)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}})),Yf=ct((function(e,t){var r=t;r.assert=at,r.toArray=Zf.toArray,r.zero2=Zf.zero2,r.toHex=Zf.toHex,r.encode=Zf.encode,r.getNAF=function(e,t){for(var r=[],n=1<=0;){var a;if(i.isOdd()){var s=i.andln(n-1);a=s>(n>>1)-1?(n>>1)-s:s,i.isubn(a)}else a=0;r.push(a);for(var o=0!==i.cmpn(0)&&0===i.andln(n-1)?t+1:1,c=1;c0||t.cmpn(-i)>0;){var a,s,o,c=e.andln(3)+n&3,u=t.andln(3)+i&3;3===c&&(c=-1),3===u&&(u=-1),a=0==(1&c)?0:3!=(o=e.andln(7)+n&7)&&5!==o||2!==u?c:-c,r[0].push(a),s=0==(1&u)?0:3!=(o=t.andln(7)+i&7)&&5!==o||2!==c?u:-u,r[1].push(s),2*n===a+1&&(n=1-n),2*i===s+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return r},r.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new Wf(e,"hex","le")}})),Xf=function(e){return $f||($f=new Qf(null)),$f.generate(e)};function Qf(e){this.rand=e}var ep=Qf;if(Qf.prototype.generate=function(e){return this._rand(e)},Qf.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var sp=ap;function op(e,t){this.curve=e,this.type=t,this.precomputed=null}ap.prototype.point=function(){throw new Error("Not implemented")},ap.prototype.validate=function(){throw new Error("Not implemented")},ap.prototype._fixedNafMul=function(e,t){ip(e.precomputed);var r=e._getDoubles(),n=rp(t,1),i=(1<=s;t--)o=(o<<1)+n[t];a.push(o)}for(var c=this.jpoint(null,null,null),u=this.jpoint(null,null,null),l=i;l>0;l--){for(s=0;s=0;o--){for(t=0;o>=0&&0===a[o];o--)t++;if(o>=0&&t++,s=s.dblp(t),o<0)break;var c=a[o];ip(0!==c),s="affine"===e.type?c>0?s.mixedAdd(i[c-1>>1]):s.mixedAdd(i[-c-1>>1].neg()):c>0?s.add(i[c-1>>1]):s.add(i[-c-1>>1].neg())}return"affine"===e.type?s.toP():s},ap.prototype._wnafMulAdd=function(e,t,r,n,i){for(var a=this._wnafT1,s=this._wnafT2,o=this._wnafT3,c=0,u=0;u=1;u-=2){var h=u-1,d=u;if(1===a[h]&&1===a[d]){var f=[t[h],null,null,t[d]];0===t[h].y.cmp(t[d].y)?(f[1]=t[h].add(t[d]),f[2]=t[h].toJ().mixedAdd(t[d].neg())):0===t[h].y.cmp(t[d].y.redNeg())?(f[1]=t[h].toJ().mixedAdd(t[d]),f[2]=t[h].add(t[d].neg())):(f[1]=t[h].toJ().mixedAdd(t[d]),f[2]=t[h].toJ().mixedAdd(t[d].neg()));var p=[-3,-1,-5,-7,0,7,5,1,3],y=np(r[h],r[d]);c=Math.max(y[0].length,c),o[h]=new Array(c),o[d]=new Array(c);for(var g=0;g=0;u--){for(var k=0;u>=0;){var A=!0;for(g=0;g=0&&k++,w=w.dblp(k),u<0)break;for(g=0;g0?_=s[g][S-1>>1]:S<0&&(_=s[g][-S-1>>1].neg()),w="affine"===_.type?w.mixedAdd(_):w.add(_))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},op.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(a=t,s=r),n.negative&&(n=n.neg(),i=i.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:i},{a,b:s}]},up.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),a=r.b.neg().mul(e).divRound(this.n),s=i.mul(r.a),o=a.mul(n.a),c=i.mul(r.b),u=a.mul(n.b);return{k1:e.sub(s).sub(o),k2:c.add(u).neg()}},up.prototype.pointFromX=function(e,t){(e=new Wf(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var i=n.fromRed().isOdd();return(t&&!i||!t&&i)&&(n=n.redNeg()),this.point(e,n)},up.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},up.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,a=0;a":""},hp.prototype.isInfinity=function(){return this.inf},hp.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},hp.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),a=i.redSqr().redISub(this.x.redAdd(this.x)),s=i.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,s)},hp.prototype.getX=function(){return this.x.fromRed()},hp.prototype.getY=function(){return this.y.fromRed()},hp.prototype.mul=function(e){return e=new Wf(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},hp.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},hp.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},hp.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},hp.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},hp.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},lt(dp,sp.BasePoint),up.prototype.jpoint=function(e,t,r){return new dp(this,e,t,r)},dp.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},dp.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},dp.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),a=this.y.redMul(t.redMul(e.z)),s=e.y.redMul(r.redMul(this.z)),o=n.redSub(i),c=a.redSub(s);if(0===o.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=o.redSqr(),l=u.redMul(o),h=n.redMul(u),d=c.redSqr().redIAdd(l).redISub(h).redISub(h),f=c.redMul(h.redISub(d)).redISub(a.redMul(l)),p=this.z.redMul(e.z).redMul(o);return this.curve.jpoint(d,f,p)},dp.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,a=e.y.redMul(t).redMul(this.z),s=r.redSub(n),o=i.redSub(a);if(0===s.cmpn(0))return 0!==o.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),u=c.redMul(s),l=r.redMul(c),h=o.redSqr().redIAdd(u).redISub(l).redISub(l),d=o.redMul(l.redISub(h)).redISub(i.redMul(u)),f=this.z.redMul(s);return this.curve.jpoint(h,d,f)},dp.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,r=0;r=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},dp.prototype.inspect=function(){return this.isInfinity()?"":""},dp.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},lt(fp,sp);var pp=fp;function yp(e,t,r){sp.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new Wf(t,16),this.z=new Wf(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}fp.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},lt(yp,sp.BasePoint),fp.prototype.decodePoint=function(e,t){if(33===(e=Yf.toArray(e,t)).length&&64===e[0]&&(e=e.slice(1,33).reverse()),32!==e.length)throw new Error("Unknown point compression format");return this.point(e,1)},fp.prototype.point=function(e,t){return new yp(this,e,t)},fp.prototype.pointFromJSON=function(e){return yp.fromJSON(this,e)},yp.prototype.precompute=function(){},yp.prototype._encode=function(e){var t=this.curve.p.byteLength();return e?[64].concat(this.getX().toArray("le",t)):this.getX().toArray("be",t)},yp.fromJSON=function(e,t){return new yp(e,t[0],t[1]||e.one)},yp.prototype.inspect=function(){return this.isInfinity()?"":""},yp.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},yp.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},yp.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},yp.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(r),s=i.redMul(n),o=t.z.redMul(a.redAdd(s).redSqr()),c=t.x.redMul(a.redISub(s).redSqr());return this.curve.point(o,c)},yp.prototype.mul=function(e){for(var t=(e=new Wf(e,16)).clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var a=i.length-1;a>=0;a--)0===i[a]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},yp.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},yp.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},yp.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},yp.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},yp.prototype.getX=function(){return this.normalize(),this.x.fromRed()};var gp=Yf.assert;function mp(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,sp.call(this,"edwards",e),this.a=new Wf(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new Wf(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new Wf(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),gp(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}lt(mp,sp);var bp=mp;function wp(e,t,r,n,i){sp.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new Wf(t,16),this.y=new Wf(r,16),this.z=n?new Wf(n,16):this.curve.one,this.t=i&&new Wf(i,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}mp.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},mp.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},mp.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},mp.prototype.pointFromX=function(e,t){(e=new Wf(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),i=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(i.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var o=s.fromRed().isOdd();return(t&&!o||!t&&o)&&(s=s.redNeg()),this.point(e,s)},mp.prototype.pointFromY=function(e,t){(e=new Wf(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),i=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(i.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},mp.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},lt(wp,sp.BasePoint),mp.prototype.pointFromJSON=function(e){return wp.fromJSON(this,e)},mp.prototype.point=function(e,t,r,n){return new wp(this,e,t,r,n)},wp.fromJSON=function(e,t){return new wp(e,t[0],t[1],t[2])},wp.prototype.inspect=function(){return this.isInfinity()?"":""},wp.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},wp.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=n.redAdd(t),s=a.redSub(r),o=n.redSub(t),c=i.redMul(s),u=a.redMul(o),l=i.redMul(o),h=s.redMul(a);return this.curve.point(c,u,h,l)},wp.prototype._projDbl=function(){var e,t,r,n=this.x.redAdd(this.y).redSqr(),i=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var s=(u=this.curve._mulA(i)).redAdd(a);if(this.zOne)e=n.redSub(i).redSub(a).redMul(s.redSub(this.curve.two)),t=s.redMul(u.redSub(a)),r=s.redSqr().redSub(s).redSub(s);else{var o=this.z.redSqr(),c=s.redSub(o).redISub(o);e=n.redSub(i).redISub(a).redMul(c),t=s.redMul(u.redSub(a)),r=s.redMul(c)}}else{var u=i.redAdd(a);o=this.curve._mulC(this.z).redSqr(),c=u.redSub(o).redSub(o),e=this.curve._mulC(n.redISub(u)).redMul(c),t=this.curve._mulC(u).redMul(i.redISub(a)),r=u.redMul(c)}return this.curve.point(e,t,r)},wp.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},wp.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),a=r.redSub(t),s=i.redSub(n),o=i.redAdd(n),c=r.redAdd(t),u=a.redMul(s),l=o.redMul(c),h=a.redMul(c),d=s.redMul(o);return this.curve.point(u,l,d,h)},wp.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),a=this.x.redMul(e.x),s=this.y.redMul(e.y),o=this.curve.d.redMul(a).redMul(s),c=i.redSub(o),u=i.redAdd(o),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(s),h=n.redMul(c).redMul(l);return this.curve.twisted?(t=n.redMul(u).redMul(s.redSub(this.curve._mulA(a))),r=c.redMul(u)):(t=n.redMul(u).redMul(s.redSub(a)),r=this.curve._mulC(c).redMul(u)),this.curve.point(h,t,r)},wp.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},wp.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},wp.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},wp.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},wp.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},wp.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},wp.prototype.getX=function(){return this.normalize(),this.x.fromRed()},wp.prototype.getY=function(){return this.normalize(),this.y.fromRed()},wp.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},wp.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},wp.prototype.toP=wp.prototype.normalize,wp.prototype.mixedAdd=wp.prototype.add;var vp=ct((function(e,t){var r=t;r.base=sp,r.short=lp,r.mont=pp,r.edwards=bp})),kp=pt.rotl32,Ap=pt.sum32,_p=pt.sum32_5,Sp=At,Ep=mt.BlockHash,xp=[1518500249,1859775393,2400959708,3395469782];function Pp(){if(!(this instanceof Pp))return new Pp;Ep.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}pt.inherits(Pp,Ep);var Cp=Pp;Pp.blockSize=512,Pp.outSize=160,Pp.hmacStrength=80,Pp.padLength=64,Pp.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;nthis.blockSize&&(e=(new this.Hash).update(e).digest()),at(e.length<=this.blockSize);for(var t=e.length;t=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}var Kp=Rp;Rp.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},Rp.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=Zf.toArray(r,n||"hex"),this._update(r));for(var i=[];i.length"};var qp=Yf.assert;function Fp(e,t){if(e instanceof Fp)return e;this._importDER(e,t)||(qp(e.r&&e.s,"Signature without r or s"),this.r=new Wf(e.r,16),this.s=new Wf(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var zp=Fp;function jp(){this.place=0}function Hp(e,t){var r=e[t.place++];if(!(128&r))return r;for(var n=15&r,i=0,a=0,s=t.place;a>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}Fp.prototype._importDER=function(e,t){e=Yf.toArray(e,t);var r=new jp;if(48!==e[r.place++])return!1;if(Hp(e,r)+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var n=Hp(e,r),i=e.slice(r.place,n+r.place);if(r.place+=n,2!==e[r.place++])return!1;var a=Hp(e,r);if(e.length!==a+r.place)return!1;var s=e.slice(r.place,a+r.place);return 0===i[0]&&128&i[1]&&(i=i.slice(1)),0===s[0]&&128&s[1]&&(s=s.slice(1)),this.r=new Wf(i),this.s=new Wf(s),this.recoveryParam=null,!0},Fp.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=Wp(t),r=Wp(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];Vp(n,t.length),(n=n.concat(t)).push(2),Vp(n,r.length);var i=n.concat(r),a=[48];return Vp(a,i.length),a=a.concat(i),Yf.encode(a,e)};var Gp=Yf.assert;function $p(e){if(!(this instanceof $p))return new $p(e);"string"==typeof e&&(Gp(Up.hasOwnProperty(e),"Unknown curve "+e),e=Up[e]),e instanceof Up.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var Jp=$p;$p.prototype.keyPair=function(e){return new Lp(this,e)},$p.prototype.keyFromPrivate=function(e,t){return Lp.fromPrivate(this,e,t)},$p.prototype.keyFromPublic=function(e,t){return Lp.fromPublic(this,e,t)},$p.prototype.genKeyPair=function(e){e||(e={});var t=new Kp({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||Xf(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()});if("mont"===this.curve.type){var r=new Wf(t.generate(32));return this.keyFromPrivate(r)}for(var n=this.n.byteLength(),i=this.n.sub(new Wf(2));;)if(!((r=new Wf(t.generate(n))).cmp(i)>0))return r.iaddn(1),this.keyFromPrivate(r)},$p.prototype._truncateToN=function(e,t,r){var n=(r=r||8*e.byteLength())-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},$p.prototype.truncateMsg=function(e){var t;return e instanceof Uint8Array?(t=8*e.byteLength,e=this._truncateToN(new Wf(e,16),!1,t)):"string"==typeof e?(t=4*e.length,e=this._truncateToN(new Wf(e,16),!1,t)):e=this._truncateToN(new Wf(e,16)),e},$p.prototype.sign=function(e,t,r,n){"object"==typeof r&&(n=r,r=null),n||(n={}),t=this.keyFromPrivate(t,r),e=this.truncateMsg(e);for(var i=this.n.byteLength(),a=t.getPrivate().toArray("be",i),s=e.toArray("be",i),o=new Kp({hash:this.hash,entropy:a,nonce:s,pers:n.pers,persEnc:n.persEnc||"utf8"}),c=this.n.sub(new Wf(1)),u=0;;u++){var l=n.k?n.k(u):new Wf(o.generate(this.n.byteLength()));if(!((l=this._truncateToN(l,!0)).cmpn(1)<=0||l.cmp(c)>=0)){var h=this.g.mul(l);if(!h.isInfinity()){var d=h.getX(),f=d.umod(this.n);if(0!==f.cmpn(0)){var p=l.invm(this.n).mul(f.mul(t.getPrivate()).iadd(e));if(0!==(p=p.umod(this.n)).cmpn(0)){var y=(h.getY().isOdd()?1:0)|(0!==d.cmp(f)?2:0);return n.canonical&&p.cmp(this.nh)>0&&(p=this.n.sub(p),y^=1),new zp({r:f,s:p,recoveryParam:y})}}}}}},$p.prototype.verify=function(e,t,r,n){return r=this.keyFromPublic(r,n),t=new zp(t,"hex"),this._verify(this.truncateMsg(e),t,r)||this._verify(this._truncateToN(new Wf(e,16)),t,r)},$p.prototype._verify=function(e,t,r){var n=t.r,i=t.s;if(n.cmpn(1)<0||n.cmp(this.n)>=0)return!1;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;var a,s=i.invm(this.n),o=s.mul(e).umod(this.n),c=s.mul(n).umod(this.n);return this.curve._maxwellTrick?!(a=this.g.jmulAdd(o,r.getPublic(),c)).isInfinity()&&a.eqXToP(n):!(a=this.g.mulAdd(o,r.getPublic(),c)).isInfinity()&&0===a.getX().umod(this.n).cmp(n)},$p.prototype.recoverPubKey=function(e,t,r,n){Gp((3&r)===r,"The recovery param is more than two bits"),t=new zp(t,n);var i=this.n,a=new Wf(e),s=t.r,o=t.s,c=1&r,u=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&u)throw new Error("Unable to find sencond key candinate");s=u?this.curve.pointFromX(s.add(this.curve.n),c):this.curve.pointFromX(s,c);var l=t.r.invm(i),h=i.sub(a).mul(l).umod(i),d=o.mul(l).umod(i);return this.g.mulAdd(h,s,d)},$p.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new zp(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var a;try{a=this.recoverPubKey(e,t,i)}catch(e){continue}if(a.eq(r))return i}throw new Error("Unable to find valid recovery factor")};var Zp=Yf.assert,Yp=Yf.parseBytes,Xp=Yf.cachedProperty;function Qp(e,t){if(this.eddsa=e,t.hasOwnProperty("secret")&&(this._secret=Yp(t.secret)),e.isPoint(t.pub))this._pub=t.pub;else if(this._pubBytes=Yp(t.pub),this._pubBytes&&33===this._pubBytes.length&&64===this._pubBytes[0]&&(this._pubBytes=this._pubBytes.slice(1,33)),this._pubBytes&&32!==this._pubBytes.length)throw new Error("Unknown point compression format")}Qp.fromPublic=function(e,t){return t instanceof Qp?t:new Qp(e,{pub:t})},Qp.fromSecret=function(e,t){return t instanceof Qp?t:new Qp(e,{secret:t})},Qp.prototype.secret=function(){return this._secret},Xp(Qp,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),Xp(Qp,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),Xp(Qp,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),Xp(Qp,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),Xp(Qp,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),Xp(Qp,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),Qp.prototype.sign=function(e){return Zp(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},Qp.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},Qp.prototype.getSecret=function(e){return Zp(this._secret,"KeyPair is public only"),Yf.encode(this.secret(),e)},Qp.prototype.getPublic=function(e,t){return Yf.encode((t?[64]:[]).concat(this.pubBytes()),e)};var ey=Qp,ty=Yf.assert,ry=Yf.cachedProperty,ny=Yf.parseBytes;function iy(e,t){this.eddsa=e,"object"!=typeof t&&(t=ny(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),ty(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof Wf&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}ry(iy,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),ry(iy,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),ry(iy,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),ry(iy,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),iy.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},iy.prototype.toHex=function(){return Yf.encode(this.toBytes(),"hex").toUpperCase()};var ay=iy,sy=Yf.assert,oy=Yf.parseBytes;function cy(e){if(sy("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof cy))return new cy(e);e=Up[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=Dp.sha512}var uy=cy;cy.prototype.sign=function(e,t){e=oy(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),a=this.encodePoint(i),s=this.hashInt(a,r.pubBytes(),e).mul(r.priv()),o=n.add(s).umod(this.curve.n);return this.makeSignature({R:i,S:o,Rencoded:a})},cy.prototype.verify=function(e,t,r){e=oy(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(a)},cy.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";e.exports={i8:"2.0.0"}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{"use strict";var e=n;Object.defineProperty(e,"__esModule",{value:!0});const t=r(1769),i=r(8267);r.g.handleRequestFromHost=async(e,r,n)=>{const a=new t.Endpoints;try{const t=a[e];return t?t(r,[n]).then((e=>e)).catch((e=>(0,i.fmtErr)(e))):(0,i.fmtErr)(new Error(`Unknown endpoint: ${e}`))}catch(e){return(0,i.fmtErr)(e)}}})(),module.exports=n})();; /* entrypoint-bare ends here */ } catch(e) { diff --git a/FlowCryptAppTests/Functionality/Mail Provider/GmailServiceTest.swift b/FlowCryptAppTests/Functionality/Mail Provider/GmailServiceTest.swift index 162751b6a..ff5b3cf1d 100644 --- a/FlowCryptAppTests/Functionality/Mail Provider/GmailServiceTest.swift +++ b/FlowCryptAppTests/Functionality/Mail Provider/GmailServiceTest.swift @@ -14,31 +14,25 @@ class GmailServiceTest: XCTestCase { var sut: GmailService! var authManager: GoogleAuthManagerMock! - var backupSearchQueryProvider: GmailBackupSearchQueryProviderMock! override func setUp() { authManager = GoogleAuthManagerMock() - backupSearchQueryProvider = GmailBackupSearchQueryProviderMock() sut = GmailService( currentUserEmail: "user@example.test", - googleAuthManager: authManager, - backupSearchQueryProvider: backupSearchQueryProvider + googleAuthManager: authManager ) } - func testSearchBackupsWhenErrorInQuery() async { - backupSearchQueryProvider.makeBackupQueryResult = .failure(MockError()) - - do { - _ = try await sut.searchBackups(for: "james.bond@gmail.com") - } catch { - switch error as? GmailApiError { - case let .missingBackupQuery(underliningError): - XCTAssertTrue(underliningError is MockError) - default: - XCTFail() - } - } + func testMakeBackupQuery() async { + let backupQuery = sut.makeBackupQuery(acctEmail: "james.bond@gmail.com") + let expectedQuery = + "from:james.bond@gmail.com to:james.bond@gmail.com " + + "subject:\"Your FlowCrypt Backup\" OR " + + "subject:\"Your CryptUp Backup\" OR " + + "subject:\"All you need to know about CryptUP (contains a backup)\" OR " + + "subject:\"CryptUP Account Backup\" " + + "-is:spam" + XCTAssertEqual(backupQuery, expectedQuery) } } @@ -53,10 +47,3 @@ class GoogleAuthManagerMock: GoogleAuthManagerType { return [] } } - -class GmailBackupSearchQueryProviderMock: GmailBackupSearchQueryProviderType { - var makeBackupQueryResult: Result = .success("query") - func makeBackupQuery(for email: String) throws -> String { - try makeBackupQueryResult.get() - } -} diff --git a/appium/api-mocks/core/const.ts b/appium/api-mocks/core/const.ts index ef7d1c169..20ceeed71 100644 --- a/appium/api-mocks/core/const.ts +++ b/appium/api-mocks/core/const.ts @@ -24,13 +24,3 @@ export const GMAIL_RECOVERY_EMAIL_SUBJECTS = [ 'All you need to know about CryptUP (contains a backup)', 'CryptUP Account Backup', ]; - -export const gmailBackupSearchQuery = (acctEmail: string) => { - return [ - 'from:' + acctEmail, - 'to:' + acctEmail, - '(subject:"' + GMAIL_RECOVERY_EMAIL_SUBJECTS.join('" OR subject: "') + '")', - '-is:spam', - '-is:trash', - ].join(' '); -};