UNPKG

@polkadot-labs/schnorrkel-wasm

Version:

JavaScript WebAssembly (WASM) wrapper for the schnorrkel Rust crate

524 lines (451 loc) 201 kB
let imports = {}; imports['__wbindgen_placeholder__'] = imports; let wasm; const { TextDecoder, TextEncoder } = globalThis; const heap = new Array(128).fill(undefined); heap.push(undefined, null, true, false); function getObject(idx) { return heap[idx]; } let heap_next = heap.length; function dropObject(idx) { if (idx < 132) return; heap[idx] = heap_next; heap_next = idx; } function takeObject(idx) { const ret = getObject(idx); dropObject(idx); return ret; } let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }); cachedTextDecoder.decode(); let cachedUint8Memory0 = null; function getUint8Memory0() { if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) { cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); } return cachedUint8Memory0; } function getStringFromWasm0(ptr, len) { ptr = ptr >>> 0; return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); } function addHeapObject(obj) { if (heap_next === heap.length) heap.push(heap.length + 1); const idx = heap_next; heap_next = heap[idx]; heap[idx] = obj; return idx; } /** */ export const init = imports.init = function() { wasm.init(); }; let WASM_VECTOR_LEN = 0; function passArray8ToWasm0(arg, malloc) { const ptr = malloc(arg.length * 1, 1) >>> 0; getUint8Memory0().set(arg, ptr / 1); WASM_VECTOR_LEN = arg.length; return ptr; } let cachedInt32Memory0 = null; function getInt32Memory0() { if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) { cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); } return cachedInt32Memory0; } function getArrayU8FromWasm0(ptr, len) { ptr = ptr >>> 0; return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len); } /** * @param {Uint8Array} pubkey * @param {Uint8Array} secret * @param {Uint8Array} msg * @returns {Uint8Array} */ export const sr25519_sign = imports.sr25519_sign = function(pubkey, secret, msg) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(pubkey, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passArray8ToWasm0(secret, wasm.__wbindgen_malloc); const len1 = WASM_VECTOR_LEN; const ptr2 = passArray8ToWasm0(msg, wasm.__wbindgen_malloc); const len2 = WASM_VECTOR_LEN; wasm.sr25519_sign(retptr, ptr0, len0, ptr1, len1, ptr2, len2); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v4 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v4; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} pubkey * @param {Uint8Array} msg * @param {Uint8Array} signature * @returns {boolean} */ export const sr25519_verify = imports.sr25519_verify = function(pubkey, msg, signature) { const ptr0 = passArray8ToWasm0(pubkey, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passArray8ToWasm0(msg, wasm.__wbindgen_malloc); const len1 = WASM_VECTOR_LEN; const ptr2 = passArray8ToWasm0(signature, wasm.__wbindgen_malloc); const len2 = WASM_VECTOR_LEN; const ret = wasm.sr25519_verify(ptr0, len0, ptr1, len1, ptr2, len2); return ret !== 0; }; /** * @param {Uint8Array} secret * @returns {Uint8Array} */ export const sr25519_pubkey = imports.sr25519_pubkey = function(secret) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(secret, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; wasm.sr25519_pubkey(retptr, ptr0, len0); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v2 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v2; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} seed * @returns {Uint8Array} */ export const sr25519_keypair_from_seed = imports.sr25519_keypair_from_seed = function(seed) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(seed, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; wasm.sr25519_keypair_from_seed(retptr, ptr0, len0); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v2 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v2; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} seed * @returns {Uint8Array} */ export const sr25519_secret_from_seed = imports.sr25519_secret_from_seed = function(seed) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(seed, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; wasm.sr25519_secret_from_seed(retptr, ptr0, len0); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v2 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v2; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} seed * @param {Uint8Array} cc * @returns {Uint8Array} */ export const sr25519_derive_seed_hard = imports.sr25519_derive_seed_hard = function(seed, cc) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(seed, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passArray8ToWasm0(cc, wasm.__wbindgen_malloc); const len1 = WASM_VECTOR_LEN; wasm.sr25519_derive_seed_hard(retptr, ptr0, len0, ptr1, len1); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v3 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v3; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} keypair * @param {Uint8Array} cc * @returns {Uint8Array} */ export const sr25519_derive_keypair_hard = imports.sr25519_derive_keypair_hard = function(keypair, cc) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(keypair, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passArray8ToWasm0(cc, wasm.__wbindgen_malloc); const len1 = WASM_VECTOR_LEN; wasm.sr25519_derive_keypair_hard(retptr, ptr0, len0, ptr1, len1); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v3 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v3; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} keypair * @param {Uint8Array} cc * @returns {Uint8Array} */ export const sr25519_derive_keypair_soft = imports.sr25519_derive_keypair_soft = function(keypair, cc) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(keypair, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passArray8ToWasm0(cc, wasm.__wbindgen_malloc); const len1 = WASM_VECTOR_LEN; wasm.sr25519_derive_keypair_soft(retptr, ptr0, len0, ptr1, len1); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v3 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v3; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; /** * @param {Uint8Array} pubkey * @param {Uint8Array} cc * @returns {Uint8Array} */ export const sr25519_derive_public_soft = imports.sr25519_derive_public_soft = function(pubkey, cc) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); const ptr0 = passArray8ToWasm0(pubkey, wasm.__wbindgen_malloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passArray8ToWasm0(cc, wasm.__wbindgen_malloc); const len1 = WASM_VECTOR_LEN; wasm.sr25519_derive_public_soft(retptr, ptr0, len0, ptr1, len1); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; var v3 = getArrayU8FromWasm0(r0, r1).slice(); wasm.__wbindgen_free(r0, r1 * 1, 1); return v3; } finally { wasm.__wbindgen_add_to_stack_pointer(16); } }; let cachedTextEncoder = new TextEncoder('utf-8'); const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' ? function (arg, view) { return cachedTextEncoder.encodeInto(arg, view); } : function (arg, view) { const buf = cachedTextEncoder.encode(arg); view.set(buf); return { read: arg.length, written: buf.length }; }); function passStringToWasm0(arg, malloc, realloc) { if (realloc === undefined) { const buf = cachedTextEncoder.encode(arg); const ptr = malloc(buf.length, 1) >>> 0; getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); WASM_VECTOR_LEN = buf.length; return ptr; } let len = arg.length; let ptr = malloc(len, 1) >>> 0; const mem = getUint8Memory0(); let offset = 0; for (; offset < len; offset++) { const code = arg.charCodeAt(offset); if (code > 0x7F) break; mem[ptr + offset] = code; } if (offset !== len) { if (offset !== 0) { arg = arg.slice(offset); } ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; const view = getUint8Memory0().subarray(ptr + offset, ptr + len); const ret = encodeString(arg, view); offset += ret.written; } WASM_VECTOR_LEN = offset; return ptr; } function handleError(f, args) { try { return f.apply(this, args); } catch (e) { wasm.__wbindgen_exn_store(addHeapObject(e)); } } export const __wbg_new_abda76e883ba8a5f = imports.__wbg_new_abda76e883ba8a5f = function() { const ret = new Error(); return addHeapObject(ret); }; export const __wbg_stack_658279fe44541cf6 = imports.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) { const ret = getObject(arg1).stack; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; export const __wbg_error_f851667af71bcfc6 = imports.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) { let deferred0_0; let deferred0_1; try { deferred0_0 = arg0; deferred0_1 = arg1; console.error(getStringFromWasm0(arg0, arg1)); } finally { wasm.__wbindgen_free(deferred0_0, deferred0_1, 1); } }; export const __wbindgen_object_drop_ref = imports.__wbindgen_object_drop_ref = function(arg0) { takeObject(arg0); }; export const __wbg_crypto_58f13aa23ffcb166 = imports.__wbg_crypto_58f13aa23ffcb166 = function(arg0) { const ret = getObject(arg0).crypto; return addHeapObject(ret); }; export const __wbindgen_is_object = imports.__wbindgen_is_object = function(arg0) { const val = getObject(arg0); const ret = typeof(val) === 'object' && val !== null; return ret; }; export const __wbg_process_5b786e71d465a513 = imports.__wbg_process_5b786e71d465a513 = function(arg0) { const ret = getObject(arg0).process; return addHeapObject(ret); }; export const __wbg_versions_c2ab80650590b6a2 = imports.__wbg_versions_c2ab80650590b6a2 = function(arg0) { const ret = getObject(arg0).versions; return addHeapObject(ret); }; export const __wbg_node_523d7bd03ef69fba = imports.__wbg_node_523d7bd03ef69fba = function(arg0) { const ret = getObject(arg0).node; return addHeapObject(ret); }; export const __wbindgen_is_string = imports.__wbindgen_is_string = function(arg0) { const ret = typeof(getObject(arg0)) === 'string'; return ret; }; export const __wbg_require_2784e593a4674877 = imports.__wbg_require_2784e593a4674877 = function() { return handleError(function () { const ret = module.require; return addHeapObject(ret); }, arguments) }; export const __wbindgen_string_new = imports.__wbindgen_string_new = function(arg0, arg1) { const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); }; export const __wbg_msCrypto_abcb1295e768d1f2 = imports.__wbg_msCrypto_abcb1295e768d1f2 = function(arg0) { const ret = getObject(arg0).msCrypto; return addHeapObject(ret); }; export const __wbg_getRandomValues_504510b5564925af = imports.__wbg_getRandomValues_504510b5564925af = function() { return handleError(function (arg0, arg1) { getObject(arg0).getRandomValues(getObject(arg1)); }, arguments) }; export const __wbg_randomFillSync_a0d98aa11c81fe89 = imports.__wbg_randomFillSync_a0d98aa11c81fe89 = function() { return handleError(function (arg0, arg1) { getObject(arg0).randomFillSync(takeObject(arg1)); }, arguments) }; export const __wbindgen_is_function = imports.__wbindgen_is_function = function(arg0) { const ret = typeof(getObject(arg0)) === 'function'; return ret; }; export const __wbg_newnoargs_c62ea9419c21fbac = imports.__wbg_newnoargs_c62ea9419c21fbac = function(arg0, arg1) { const ret = new Function(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; export const __wbg_call_90c26b09837aba1c = imports.__wbg_call_90c26b09837aba1c = function() { return handleError(function (arg0, arg1) { const ret = getObject(arg0).call(getObject(arg1)); return addHeapObject(ret); }, arguments) }; export const __wbg_self_f0e34d89f33b99fd = imports.__wbg_self_f0e34d89f33b99fd = function() { return handleError(function () { const ret = self.self; return addHeapObject(ret); }, arguments) }; export const __wbg_window_d3b084224f4774d7 = imports.__wbg_window_d3b084224f4774d7 = function() { return handleError(function () { const ret = window.window; return addHeapObject(ret); }, arguments) }; export const __wbg_globalThis_9caa27ff917c6860 = imports.__wbg_globalThis_9caa27ff917c6860 = function() { return handleError(function () { const ret = globalThis.globalThis; return addHeapObject(ret); }, arguments) }; export const __wbg_global_35dfdd59a4da3e74 = imports.__wbg_global_35dfdd59a4da3e74 = function() { return handleError(function () { const ret = global.global; return addHeapObject(ret); }, arguments) }; export const __wbindgen_is_undefined = imports.__wbindgen_is_undefined = function(arg0) { const ret = getObject(arg0) === undefined; return ret; }; export const __wbg_call_5da1969d7cd31ccd = imports.__wbg_call_5da1969d7cd31ccd = function() { return handleError(function (arg0, arg1, arg2) { const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }, arguments) }; export const __wbg_buffer_a448f833075b71ba = imports.__wbg_buffer_a448f833075b71ba = function(arg0) { const ret = getObject(arg0).buffer; return addHeapObject(ret); }; export const __wbg_newwithbyteoffsetandlength_d0482f893617af71 = imports.__wbg_newwithbyteoffsetandlength_d0482f893617af71 = function(arg0, arg1, arg2) { const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; export const __wbg_new_8f67e318f15d7254 = imports.__wbg_new_8f67e318f15d7254 = function(arg0) { const ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }; export const __wbg_set_2357bf09366ee480 = imports.__wbg_set_2357bf09366ee480 = function(arg0, arg1, arg2) { getObject(arg0).set(getObject(arg1), arg2 >>> 0); }; export const __wbg_newwithlength_6c2df9e2f3028c43 = imports.__wbg_newwithlength_6c2df9e2f3028c43 = function(arg0) { const ret = new Uint8Array(arg0 >>> 0); return addHeapObject(ret); }; export const __wbg_subarray_2e940e41c0f5a1d9 = imports.__wbg_subarray_2e940e41c0f5a1d9 = function(arg0, arg1, arg2) { const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; export const __wbindgen_object_clone_ref = imports.__wbindgen_object_clone_ref = function(arg0) { const ret = getObject(arg0); return addHeapObject(ret); }; export const __wbindgen_throw = imports.__wbindgen_throw = function(arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }; export const __wbindgen_memory = imports.__wbindgen_memory = function() { const ret = wasm.memory; return addHeapObject(ret); }; var __toBinary = /* @__PURE__ */ (() => { var table = new Uint8Array(128); for (var i = 0; i < 64; i++) table[i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i * 4 - 205] = i; return (base64) => { var n = base64.length, bytes = new Uint8Array((n - (base64[n - 1] == "=") - (base64[n - 2] == "=")) * 3 / 4 | 0); for (var i2 = 0, j = 0; i2 < n; ) { var c0 = table[base64.charCodeAt(i2++)], c1 = table[base64.charCodeAt(i2++)]; var c2 = table[base64.charCodeAt(i2++)], c3 = table[base64.charCodeAt(i2++)]; bytes[j++] = c0 << 2 | c1 >> 4; bytes[j++] = c1 << 4 | c2 >> 2; bytes[j++] = c2 << 6 | c3; } return bytes; }; })(); const bytes = __toBinary("AGFzbQEAAAABqQEXYAJ/fwF/YAJ/fwBgA39/fwF/YAN/f38AYAF/AX9gAX8AYAV/f39/fwBgAAF/YAR/f39/AGAFf39/f38Bf2AGf39/f39/AX9gBH9/f38Bf2AGf39/f39/AGAAAGAHf39/f39/fwF/YAd/f39/f39/AGAIf39/f39/f38AYAV/f3x/fwBgBH98f38AYAV/f35/fwBgBH9+f38AYAV/f31/fwBgBH99f38AAr0OIRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193YmdfbmV3X2FiZGE3NmU4ODNiYThhNWYABxhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18cX193Ymdfc3RhY2tfNjU4Mjc5ZmU0NDU0MWNmNgABGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxxfX3diZ19lcnJvcl9mODUxNjY3YWY3MWJjZmM2AAEYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2NyeXB0b181OGYxM2FhMjNmZmNiMTY2AAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFF9fd2JpbmRnZW5faXNfb2JqZWN0AAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHl9fd2JnX3Byb2Nlc3NfNWI3ODZlNzFkNDY1YTUxMwAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx9fX3diZ192ZXJzaW9uc19jMmFiODA2NTA1OTBiNmEyAAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JnX25vZGVfNTIzZDdiZDAzZWY2OWZiYQAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxRfX3diaW5kZ2VuX2lzX3N0cmluZwAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx5fX3diZ19yZXF1aXJlXzI3ODRlNTkzYTQ2NzQ4NzcABxhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18VX193YmluZGdlbl9zdHJpbmdfbmV3AAAYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fH19fd2JnX21zQ3J5cHRvX2FiY2IxMjk1ZTc2OGQxZjIABBhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18mX193YmdfZ2V0UmFuZG9tVmFsdWVzXzUwNDUxMGI1NTY0OTI1YWYAARhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18lX193YmdfcmFuZG9tRmlsbFN5bmNfYTBkOThhYTExYzgxZmU4OQABGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxZfX3diaW5kZ2VuX2lzX2Z1bmN0aW9uAAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fIF9fd2JnX25ld25vYXJnc19jNjJlYTk0MTljMjFmYmFjAAAYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JnX2NhbGxfOTBjMjZiMDk4MzdhYmExYwAAGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxtfX3diZ19zZWxmX2YwZTM0ZDg5ZjMzYjk5ZmQABxhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18dX193Ymdfd2luZG93X2QzYjA4NDIyNGY0Nzc0ZDcABxhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18hX193YmdfZ2xvYmFsVGhpc185Y2FhMjdmZjkxN2M2ODYwAAcYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2dsb2JhbF8zNWRmZGQ1OWE0ZGEzZTc0AAcYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fF19fd2JpbmRnZW5faXNfdW5kZWZpbmVkAAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JnX2NhbGxfNWRhMTk2OWQ3Y2QzMWNjZAACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx1fX3diZ19idWZmZXJfYTQ0OGY4MzMwNzViNzFiYQAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXzFfX3diZ19uZXd3aXRoYnl0ZW9mZnNldGFuZGxlbmd0aF9kMDQ4MmY4OTM2MTdhZjcxAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX25ld184ZjY3ZTMxOGYxNWQ3MjU0AAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX3NldF8yMzU3YmYwOTM2NmVlNDgwAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fJF9fd2JnX25ld3dpdGhsZW5ndGhfNmMyZGY5ZTJmMzAyOGM0MwAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx9fX3diZ19zdWJhcnJheV8yZTk0MGU0MWMwZjVhMWQ5AAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JpbmRnZW5fb2JqZWN0X2Nsb25lX3JlZgAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxBfX3diaW5kZ2VuX3Rocm93AAEYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fEV9fd2JpbmRnZW5fbWVtb3J5AAcDwAG+AQEEAwUDAwABAgoBAwIFAQIAAgMDAwEBAAMBAAMMDgEAAAEBCQMAAQEAAgEBCAEDAwMAAw8BAAADEAUBBgYGBgYBAQoDCAMGAAMDAwAAAAMGBQMAAwYBAwMGBgwDAwQBAQABBAICAA0DAQEBAwMDAAAACQEIAQUAAAsABQUDBQEBBQgABgoAABEGEwkVBQgCBAQFAwQLBAMCAAAGAAMFAQABBQEBAAEAAAMDAAMFBAAABQABAwMNAAEBAAEBBwMEBQFwAUdHBQMBABEGCQF/AUGAgMAACwf7AhEGbWVtb3J5AgAEaW5pdACHAQxzcjI1NTE5X3NpZ24AVA5zcjI1NTE5X3ZlcmlmeQBjDnNyMjU1MTlfcHVia2V5AGkZc3IyNTUxOV9rZXlwYWlyX2Zyb21fc2VlZABqGHNyMjU1MTlfc2VjcmV0X2Zyb21fc2VlZABrGHNyMjU1MTlfZGVyaXZlX3NlZWRfaGFyZABcG3NyMjU1MTlfZGVyaXZlX2tleXBhaXJfaGFyZABdG3NyMjU1MTlfZGVyaXZlX2tleXBhaXJfc29mdABeGnNyMjU1MTlfZGVyaXZlX3B1YmxpY19zb2Z0AF8fX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcgDOARFfX3diaW5kZ2VuX21hbGxvYwCPAQ9fX3diaW5kZ2VuX2ZyZWUAtwESX193YmluZGdlbl9yZWFsbG9jAJkBFF9fd2JpbmRnZW5fZXhuX3N0b3JlAMIBEF9fd2JpbmRnZW5fc3RhcnQAhwEJgwEBAEEBC0bcAdwB3AFSwAGRAaMBpwHPAdEBhAFG0AHSAUGQAYEBmgG0AbkBV1bbAcEBvwHbAd4BQMsBlwGY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AwAgA0HAB2pCADcDACADQbgHakIANwMAIANCADcDsAcgA0GwB2pBICABQSBBhJvAABCkAUEfIQIDQCADQbAHaiACaiIFIAQgBS0AACIEQQN2cjoAACAEQQV0IQQgAkEBayICQX9HDQALIANB6AVqIANByAdqKQMANwMAIANB4AVqIANBwAdqKQMANwMAIANB2AVqIANBuAdqKQMANwMAIAMgAykDsAc3A9AFIANBkAJqIANB0AVqEHYgAy0AsAIiAkF/c0EBcRC2AUH/AXENASADIAI6AFAgAkEBRg0CIANBADYC0AUgA0HQAGpBlZfAACADQdAFakGYl8AAEJQBAAsgAEEkNgIYIABBq5vAADYCFCAAQQc2AhAgAEGkm8AANgIMIABB4AA2AgggAEEEOgAEIABBATYCAAwCCyAAQQE2AgAgAEEDOgAEDAELIANBkgdqIgUgA0GSAmotAAA6AAAgA0HOAGoiByADQZYCai0AADoAACADQdQFaiADQa8Cai0AADoAACADIAMvAJQCOwFMIAMgAygAqwI2AtAFIAMgAy8AkAI7AZAHIAMtAJMCIQggAykAlwIhCiADKQCfAiELIAMoAKcCIQkgA0HoAGoiBkIANwMAIANB4ABqIgJCADcDACADQdgAaiIEQgA3AwAgA0IANwNQIANB0ABqQSAgAUEgakEgQZSbwAAQpAEgA0HtBWogBikDADcAACADQeUFaiACKQMANwAAIANB3QVqIAQpAwA3AAAgAyADKQNQNwDVBSADQdADaiIGIANB0AVqQSUQLRogA0EnaiAGQSUQLRogA0ESaiAHLQAAOgAAIANBDmogBS0AADoAACADIAk2ACMgAyALNwAbIAMgCjcAEyADIAg6AA8gAyADLwFMOwEQIAMgAy8BkAc7AQwgA0GoB2oiBUIANwMAIANBoAdqIgdCADcDACADQZgHaiIIQgA3AwAgA0IANwOQByADQZAHakEgIAFBQGtBIEG8mcAAEKQBIANByAdqIAUpAwA3AwAgA0HAB2ogBykDADcDACADQbgHaiAIKQMANwMAIAMgAykDkAc3A7AHIAYgA0GwB2oQVSADQdQDaiEBIAMoAtADQQFxRQRAIANB0AVqIgIgAUHAARAtGiADQZACaiIBIAJBwAEQLRogA0HQAGoiAiABQcABEC0aIANBkARqIAJBwAEQLRogA0HQA2oiASADQQxqQcAAEC0aIABBBGogAUGAAhAtGiAAQQA2AgAMAQsgBCABQQhqKQIAIgo3AwAgAiABQRBqKQIAIgs3AwAgAyABKQIAIgw3A1AgAEEUaiALNwIAIABBDGogCjcCACAAIAw3AgQgAEEBNgIAIANBDGoQnAEgA0EsahCcAQsgA0HQB2okAAvGBgEIfwJAAkAgASAAQQNqQXxxIgMgAGsiCEkNACABIAhrIgZBBEkNACAGQQNxIQdBACEBAkAgACADRiIJDQACQCAAIANrIgVBfEsEQEEAIQMMAQtBACEDA0AgASAAIANqIgIsAABBv39KaiACQQFqLAAAQb9/SmogAkECaiwAAEG/f0pqIAJBA2osAABBv39KaiEBIANBBGoiAw0ACwsgCQ0AIAAgA2ohAgNAIAEgAiwAAEG/f0pqIQEgAkEBaiECIAVBAWoiBQ0ACwsgACAIaiEAAkAgB0UNACAAIAZBfHFqIgMsAABBv39KIQQgB0EBRg0AIAQgAywAAUG/f0pqIQQgB0ECRg0AIAQgAywAAkG/f0pqIQQLIAZBAnYhBSABIARqIQQDQCAAIQMgBUUNAkHAASAFIAVBwAFPGyIGQQNxIQcgBkECdCEAQQAhAiAFQQRPBEAgAyAAQfAHcWohCCADIQEDQCACIAEoAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWogASgCBCICQX9zQQd2IAJBBnZyQYGChAhxaiABKAIIIgJBf3NBB3YgAkEGdnJBgYKECHFqIAEoAgwiAkF/c0EHdiACQQZ2ckGBgoQIcWohAiABQRBqIgEgCEcNAAsLIAUgBmshBSAAIANqIQAgAkEIdkH/gfwHcSACQf+B/AdxakGBgARsQRB2IARqIQQgB0UNAAsCfyADIAZB/AFxQQJ0aiIAKAIAIgFBf3NBB3YgAUEGdnJBgYKECHEiASAHQQFGDQAaIAEgACgCBCIBQX9zQQd2IAFBBnZyQYGChAhxaiIBIAdBAkYNABogACgCCCIAQX9zQQd2IABBBnZyQYGChAhxIAFqCyIBQQh2Qf+BHHEgAUH/gfwHcWpBgYAEbEEQdiAEag8LIAFFBEBBAA8LIAFBA3EhAwJAIAFBBEkEQAwBCyABQXxxIQUDQCAEIAAgAmoiASwAAEG/f0pqIAFBAWosAABBv39KaiABQQJqLAAAQb9/SmogAUEDaiwAAEG/f0pqIQQgBSACQQRqIgJHDQALCyADRQ0AIAAgAmohAQNAIAQgASwAAEG/f0pqIQQgAUEBaiEBIANBAWsiAw0ACwsgBAvLBAEMfyMAQYAFayICJAAgAiABQSgQLSICQShqIAFBKGoiBUEoEC0aIAJBsARqIAFB0ABqIgpBKBAtGgNAIAJBsARqIANqIgQgBCgCACACQShqIANqKAIAajYCACADQQRqIgNBKEcNAAsgAkHgA2oiBCACQbAEaiIDQSgQLRogAyAKQSgQLRogAyAFEEsgAkGIBGoiBSADQSgQLRogAkHQAGoiBiAEIAUQJSACQfgAaiIHIAIgAkEoaiIIECUgAyAHEC8gBSADEEggBCAGIAUQJSADIAQQNiACQaABaiIJIAJBtARqQSgQLRogAkHIAWoiCyAJIAYQJSACQfABaiIGIAkgBxAlIAMgBiABQfgAaiIBECUgAkGYAmoiByALIAMQJSACQcACaiIJIAZBKBAtGiACQegCaiIGIAJBsJnCABAlIAJBkANqIgwgCEGwmcIAECUgAkG4A2oiDSALQdiZwgAQJSADIAEgBxAlIAUgAxArIAIgDCACLQCIBEEBcRC2ASIBEFEgCCAGIAEQUSAJIA0gARBRIAQgAiAHECUgAyAEECsgAi0AsARBAXEQtgEhASADIAhBKBAtGiADEFogAkGIBGogAkGwBGpBKBAtGiAIIAUgARBRIAJBsARqIApBKBAtGiADIAgQSyACQYgEaiACQbAEakEoEC0aIAQgCSAFECUgAyAEECsgAi0AsARBAXEQtgEhASADIARBKBAtGiADEFogAkGIBGogAkGwBGpBKBAtGiAEIAUgARBRIAAgBBArIAJBgAVqJAALqQUBBn8CQCAAKAIAIgggACgCCCIEQQFxcgRAAkAgBEEBcUUNACABIAJqIQcCQCAAKAIMIgZFBEAgASEEDAELIAEhBANAIAQiAyAHRg0CAn8gA0EBaiADLAAAIgRBAE4NABogA0ECaiAEQWBJDQAaIANBA2ogBEFwSQ0AGiADQQRqCyIEIANrIAVqIQUgBkEBayIGDQALCyAEIAdGDQAgBCwAABogBSACAn8CQCAFRQ0AIAIgBU0EQCACIAVGDQFBAAwCCyABIAVqLAAAQUBODQBBAAwBCyABCyIDGyECIAMgASADGyEBCyAIRQ0BIAAoAgQhBwJAIAJBEE8EQCABIAIQJyEDDAELIAJFBEBBACEDDAELIAJBA3EhBgJAIAJBBEkEQEEAIQNBACEFDAELIAJBDHEhCEEAIQNBACEFA0AgAyABIAVqIgQsAABBv39KaiAEQQFqLAAAQb9/SmogBEECaiwAAEG/f0pqIARBA2osAABBv39KaiEDIAggBUEEaiIFRw0ACwsgBkUNACABIAVqIQQDQCADIAQsAABBv39KaiEDIARBAWohBCAGQQFrIgYNAAsLAkAgAyAHSQRAIAcgA2shBEEAIQMCQAJAAkAgAC0AIEEBaw4CAAECCyAEIQNBACEEDAELIARBAXYhAyAEQQFqQQF2IQQLIANBAWohAyAAKAIQIQYgACgCGCEFIAAoAhQhAANAIANBAWsiA0UNAiAAIAYgBSgCEBEAAEUNAAtBAQ8LDAILIAAgASACIAUoAgwRAgAEQEEBDwtBACEDA0AgAyAERgRAQQAPCyADQQFqIQMgACAGIAUoAhARAABFDQALIANBAWsgBEkPCyAAKAIUIAEgAiAAKAIYKAIMEQIADwsgACgCFCABIAIgACgCGCgCDBECAAvqBQEHfwJ/IAFFBEAgACgCHCEIQS0hCiAFQQFqDAELQStBgIDEACAAKAIcIghBAXEiARshCiABIAVqCyEHAkAgCEEEcUUEQEEAIQIMAQsCQCADQRBPBEAgAiADECchAQwBCyADRQRAQQAhAQwBCyADQQNxIQkCQCADQQRJBEBBACEBDAELIANBDHEhDEEAIQEDQCABIAIgBmoiCywAAEG/f0pqIAtBAWosAABBv39KaiALQQJqLAAAQb9/SmogC0EDaiwAAEG/f0pqIQEgDCAGQQRqIgZHDQALCyAJRQ0AIAIgBmohBgNAIAEgBiwAAEG/f0pqIQEgBkEBaiEGIAlBAWsiCQ0ACwsgASAHaiEHCyAAKAIARQRAIAAoAhQiASAAKAIYIgAgCiACIAMQkgEEQEEBDwsgASAEIAUgACgCDBECAA8LAkACQAJAIAcgACgCBCIGTwRAIAAoAhQiASAAKAIYIgAgCiACIAMQkgFFDQFBAQ8LIAhBCHFFDQEgACgCECELIABBMDYCECAALQAgIQxBASEBIABBAToAICAAKAIUIgggACgCGCIJIAogAiADEJIBDQIgBiAHa0EBaiEBAkADQCABQQFrIgFFDQEgCEEwIAkoAhARAABFDQALQQEPCyAIIAQgBSAJKAIMEQIABEBBAQ8LIAAgDDoAICAAIAs2AhBBAA8LIAEgBCAFIAAoAgwRAgAhAQwBCyAGIAdrIQcCQAJAAkAgAC0AICIBQQFrDgMAAQACCyAHIQFBACEHDAELIAdBAXYhASAHQQFqQQF2IQcLIAFBAWohASAAKAIQIQggACgCGCEGIAAoAhQhAAJAA0AgAUEBayIBRQ0BIAAgCCAGKAIQEQAARQ0AC0EBDwtBASEBIAAgBiAKIAIgAxCSAQ0AIAAgBCAFIAYoAgwRAgANAEEAIQEDQCABIAdGBEBBAA8LIAFBAWohASAAIAggBigCEBEAAEUNAAsgAUEBayAHSQ8LIAEL3gUBCn8jAEGAAWsiAiQAIAIgATUCJDcDeCACIAE1AiA3A3AgAiABNQIcNwNoIAIgATUCGDcDYCACIAE1AhQ3A1ggAiABNQIQNwNQIAIgATUCDDcDSCACIAE1Agg3A0AgAiABNQIENwM4IAIgATUCADcDMCACQQhqIAJBMGoQSCAAIAIoAiwiBSACKAIoIgYgAigCJCIHIAIoAiAiCCACKAIcIgQgAigCGCIJIAIoAhQiCiACKAIQIgsgAigCDCIDIAIoAggiAUETakEadmpBGXZqQRp2akEZdmpBGnZqQRl2akEadmpBGXZqQRp2akEZdkETbCABaiIBOgAAIAAgAUEQdjoAAiAAIAFBCHY6AAEgACADIAFBGnZqIgNBDnY6AAUgACADQQZ2OgAEIAAgAUEYdkEDcSADQQJ0cjoAAyAAIAsgA0EZdmoiAUENdjoACCAAIAFBBXY6AAcgACABQQN0IANBgICADnFBFnZyOgAGIAAgCiABQRp2aiIDQQt2OgALIAAgA0EDdjoACiAAIANBBXQgAUGAgIAfcUEVdnI6AAkgACAJIANBGXZqIgFBEnY6AA8gACABQQp2OgAOIAAgAUECdjoADSAAIAQgAUEadmoiBDoAECAAIAFBBnQgA0GAgOAPcUETdnI6AAwgACAEQRB2OgASIAAgBEEIdjoAESAAIAggBEEZdmoiAUEPdjoAFSAAIAFBB3Y6ABQgACAEQRh2QQFxIAFBAXRyOgATIAAgByABQRp2aiIDQQ12OgAYIAAgA0EFdjoAFyAAIANBA3QgAUGAgIAccUEXdnI6ABYgACAGIANBGXZqIgFBDHY6ABsgACABQQR2OgAaIAAgAUEEdCADQYCAgA9xQRV2cjoAGSAAIAUgAUEadmoiA0EKdjoAHiAAIANBAnY6AB0gACADQYCA8A9xQRJ2OgAfIAAgA0EGdCABQYCAwB9xQRR2cjoAHCACQYABaiQAC74LAQV/IwBBIGsiBCQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEOKAYBAQEBAQEBAQIEAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEIAQEBAQcACyABQdwARg0ECyACQQFxRSABQYAGSXINBwJ/AkBBEUEAIAFBr7AETxsiAiACQQhyIgMgAUELdCICIANBAnRBiIXDAGooAgBBC3RJGyIDIANBBHIiAyADQQJ0QYiFwwBqKAIAQQt0IAJLGyIDIANBAnIiAyADQQJ0QYiFwwBqKAIAQQt0IAJLGyIDIANBAWoiAyADQQJ0QYiFwwBqKAIAQQt0IAJLGyIDIANBAWoiAyADQQJ0QYiFwwBqKAIAQQt0IAJLGyIDQQJ0QYiFwwBqKAIAQQt0IgUgAkYgAiAFS2ogA2oiA0EhTQRAIANBAnRBiIXDAGoiBigCAEEVdiECQe8FIQUCfwJAIANBIUYNACAGKAIEQRV2IQUgAw0AQQAMAQsgA0ECdEGEhcMAaigCAEH///8AcQshAwJAIAUgAkF/c2pFDQAgASADayEHQe8FIAIgAkHvBU0bIQYgBUEBayEDQQAhBQNAIAIgBkYNAyAFIAJBkIbDAGotAABqIgUgB0sNASADIAJBAWoiAkcNAAsgAyECCyACQQFxDAILIANBIkHMg8MAEH0ACyAGQe8FQdyDwwAQfQALRQ0HIARBADoACiAEQQA7AQggBCABQRR2QY/wwgBqLQAAOgALIAQgAUEEdkEPcUGP8MIAai0AADoADyAEIAFBCHZBD3FBj/DCAGotAAA6AA4gBCABQQx2QQ9xQY/wwgBqLQAAOgANIAQgAUEQdkEPcUGP8MIAai0AADoADCABQQFyZ0ECdiICIARBCGoiA2oiBUH7ADoAACAFQQFrQfUAOgAAIAMgAkECayICakHcADoAACAEQRBqIgMgAUEPcUGP8MIAai0AADoAACAAQQo6AAsgACACOgAKIAAgBCkCCDcCACAEQf0AOgARIABBCGogAy8BADsBAAwJCyAAQYAEOwEKIABCADcBAiAAQdzoATsBAAwICyAAQYAEOwEKIABCADcBAiAAQdzkATsBAAwHCyAAQYAEOwEKIABCADcBAiAAQdzcATsBAAwGCyAAQYAEOwEKIABCADcBAiAAQdy4ATsBAAwFCyAAQYAEOwEKIABCADcBAiAAQdzgADsBAAwECyACQYACcUUNASAAQYAEOwEKIABCADcBAiAAQdzOADsBAAwDCyACQYCABHENAQsCf0EAIAFBIEkNABpBASABQf8ASQ0AGiABQYCABE8EQCABQeD//wBxQeDNCkcgAUH+//8AcUGe8ApHcSABQcDuCmtBeklxIAFBsJ0La0FySXEgAUHw1wtrQXFJcSABQYDwC2tB3mxJcSABQYCADGtBnnRJcSABQdCmDGtBe0lxIAFBgII4a0GwxVRJcSABQfCDOElxIAFBgIAITw0BGiABQYD4wgBBLEHY+MIAQdABQaj6wgBB5gMQPgwBCyABQY7+wgBBKEHe/sIAQaICQYCBwwBBqQIQPgtFBEAgBEEAOgAWIARBADsBFCAEIAFBFHZBj/DCAGotAAA6ABcgBCABQQR2QQ9xQY/wwgBqLQAAOgAbIAQgAUEIdkEPcUGP8MIAai0AADoAGiAEIAFBDHZBD3FBj/DCAGotAAA6ABkgBCABQRB2QQ9xQY/wwgBqLQAAOgAYIAFBAXJnQQJ2IgIgBEEUaiIDaiIFQfsAOgAAIAVBAWtB9QA6AAAgAyACQQJrIgJqQdwAOgAAIARBHGoiAyABQQ9xQY/wwgBqLQAAOgAAIABBCjoACyAAIAI6AAogACAEKQIUNwIAIARB/QA6AB0gAEEIaiADLwEAOwEADAILIAAgATYCBCAAQYABOgAADAELIABBgAQ7AQogAEIANwECIABB3MQAOwEACyAEQSBqJAALjAUBCH8CQCACQRBJBEAgACEDDAELAkAgAEEAIABrQQNxIgZqIgUgAE0NACAAIQMgASEEIAYEQCAGIQcDQCADIAQtAAA6AAAgBEEBaiEEIANBAWohAyAHQQFrIgcNAAsLIAZBAWtBB0kNAANAIAMgBC0AADoAACADQQFqIARBAWotAAA6AAAgA0ECaiAEQQJqLQAAOgAAIANBA2ogBEEDai0AADoAACADQQRqIARBBGotAAA6AAAgA0EFaiAEQQVqLQAAOgAAIANBBmogBEEGai0AADoAACADQQdqIARBB2otAAA6AAAgBEEIaiEEIANBCGoiAyAFRw0ACwsgBSACIAZrIgdBfHEiCGohAwJAIAEgBmoiBEEDcUUEQCADIAVNDQEgBCEBA0AgBSABKAIANgIAIAFBBGohASAFQQRqIgUgA0kNAAsMAQsgAyAFTQ0AIARBA3QiAkEYcSEGIARBfHEiCUEEaiEBQQAgAmtBGHEhCiAJKAIAIQIDQCAFIAIgBnYgASgCACICIAp0cjYCACABQQRqIQEgBUEEaiIFIANJDQALCyAHQQNxIQIgBCAIaiEBCwJAIAMgAiADaiIGTw0AIAJBB3EiBARAA0AgAyABLQAAOgAAIAFBAWohASADQQFqIQMgBEEBayIEDQALCyACQQFrQQdJDQADQCADIAEtAAA6AAAgA0EBaiABQQFqLQAAOgAAIANBAmogAUECai0AADoAACADQQNqIAFBA2otAAA6AAAgA0EEaiABQQRqLQAAOgAAIANBBWogAUEFai0AADoAACADQQZqIAFBBmotAAA6AAAgA0EHaiABQQdqLQAAOgAAIAFBCGohASADQQhqIgMgBkcNAAsLIAAL/gUBBX8gAEEIayIBIABBBGsoAgAiA0F4cSIAaiECAkACQCADQQFxDQAgA0ECcUUNASABKAIAIgMgAGohACABIANrIgFB+I/DACgCAEYEQCACKAIEQQNxQQNHDQFB8I/DACAANgIAIAIgAigCBEF+cTYCBCABIABBAXI2AgQgAiAANgIADwsgASADED8LAkACQAJAAkACQCACKAIEIgNBAnFFBEAgAkH8j8MAKAIARg0CIAJB+I/DACgCAEYNAyACIANBeHEiAhA/IAEgACACaiIAQQFyNgIEIAAgAWogADYCACABQfiPwwAoAgBHDQFB8I/DACAANgIADwsgAiADQX5xNgIEIAEgAEEBcjYCBCAAIAFqIAA2AgALIABBgAJJDQIgASAAEExBACEBQZCQwwBBkJDDACgCAEEBayIANgIAIAANBEHYjcMAKAIAIgAEQANAIAFBAWoh