@provablehq/wasm 0.9.11 → 0.9.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sources":["tmp/index.js","tmp/aleo_wasm_custom.js"],"sourcesContent":["function spawnWorker(url, module, memory, address) {\n return new Promise((resolve) => {\n const worker = new Worker(url, {\n type: \"module\",\n });\n\n worker.addEventListener(\"message\", (event) => {\n // This is needed in Node to wait one extra tick, so that way\n // the Worker can fully initialize before we return.\n setTimeout(() => {\n resolve(worker);\n\n // When running in Node, this allows the process to exit\n // even though the Worker is still running.\n if (worker.unref) {\n worker.unref();\n }\n }, 0);\n }, {\n capture: true,\n once: true,\n });\n\n worker.postMessage({\n module,\n memory,\n address,\n });\n });\n }\n\nlet wasm;\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); }\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.buffer !== wasm.memory.buffer) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().slice(ptr, ptr + len));\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_export_1(addHeapObject(e));\n }\n}\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n};\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer !== wasm.memory.buffer) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nconst CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(state => {\n wasm.__wbindgen_export_5.get(state.dtor)(state.a, state.b);\n});\n\nfunction makeMutClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n const a = state.a;\n state.a = 0;\n try {\n return f(a, state.b, ...args);\n } finally {\n if (--state.cnt === 0) {\n wasm.__wbindgen_export_5.get(state.dtor)(a, state.b);\n CLOSURE_DTORS.unregister(state);\n } else {\n state.a = a;\n }\n }\n };\n real.original = state;\n CLOSURE_DTORS.register(real, state, state);\n return real;\n}\n\nfunction _assertClass(instance, klass) {\n if (!(instance instanceof klass)) {\n throw new Error(`expected instance of ${klass.name}`);\n }\n}\n/**\n * @param {number} receiver\n */\nfunction runRayonThread(receiver) {\n wasm.runRayonThread(receiver);\n}\n\n/**\n * @param {URL} url\n * @param {number} num_threads\n * @returns {Promise<void>}\n */\nfunction initThreadPool(url, num_threads) {\n const ret = wasm.initThreadPool(addHeapObject(url), num_threads);\n return takeObject(ret);\n}\n\nlet stack_pointer = 128;\n\nfunction addBorrowedObject(obj) {\n if (stack_pointer == 1) throw new Error('out of js stack');\n heap[--stack_pointer] = obj;\n return stack_pointer;\n}\n\nfunction passArray8ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 1, 1) >>> 0;\n getUint8ArrayMemory0().set(arg, ptr / 1);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n/**\n * Verify an execution. Executions with multiple transitions must have the program source code and\n * verifying keys of imported functions supplied from outside to correctly verify. Also, this does\n * not verify that the state root of the execution is included in the Aleo Network ledger.\n *\n * @param {Execution} execution The function execution to verify\n * @param {VerifyingKey} verifying_key The verifying key for the function\n * @param {Program} program The program that the function execution belongs to\n * @param {String} function_id The name of the function that was executed\n * @param {Object} imports The imports for the program in the form of { \"program_id.aleo\":\"source code\", ... }\n * @param {Object} import_verifying_keys The verifying keys for the imports in the form of { \"program_id.aleo\": [[\"function, \"verifying_key\"], ...], ...}\n * @returns {boolean} True if the execution is valid, false otherwise\n * @param {Execution} execution\n * @param {VerifyingKey} verifying_key\n * @param {Program} program\n * @param {string} function_id\n * @param {object | null | undefined} imports\n * @param {object | null | undefined} imported_verifying_keys\n * @param {number} block_height\n * @returns {boolean}\n */\nfunction verifyFunctionExecution(execution, verifying_key, program, function_id, imports, imported_verifying_keys, block_height) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(execution, Execution);\n _assertClass(verifying_key, VerifyingKey);\n _assertClass(program, Program);\n const ptr0 = passStringToWasm0(function_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.verifyFunctionExecution(retptr, execution.__wbg_ptr, verifying_key.__wbg_ptr, program.__wbg_ptr, ptr0, len0, isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(imported_verifying_keys) ? 0 : addHeapObject(imported_verifying_keys), block_height);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return r0 !== 0;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n}\n\n/**\n * Set test consensus version heights for testing.\n *\n * @param {string | undefined} heights The block heights at which each consensus version applies. This input should be a simple csv list of block heights and there should be one number for each consensus version. If left undefined, the default test heights will be applied.\n *\n * @example\n * import { getOrInitConsensusVersionHeights } from @provablehq/sdk;\n *\n * Set the consensus version heights.\n * getOrInitConsensusVersionTestHeights(\"0,1,2,3,4,5,6,7,8,9\");\n * @param {string | null} [heights]\n * @returns {Array<any>}\n */\nfunction getOrInitConsensusVersionTestHeights(heights) {\n var ptr0 = isLikeNone(heights) ? 0 : passStringToWasm0(heights, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len0 = WASM_VECTOR_LEN;\n const ret = wasm.getOrInitConsensusVersionTestHeights(ptr0, len0);\n return takeObject(ret);\n}\n\nfunction passArrayJsValueToWasm0(array, malloc) {\n const ptr = malloc(array.length * 4, 4) >>> 0;\n const mem = getDataViewMemory0();\n for (let i = 0; i < array.length; i++) {\n mem.setUint32(ptr + 4 * i, addHeapObject(array[i]), true);\n }\n WASM_VECTOR_LEN = array.length;\n return ptr;\n}\n\nfunction getArrayJsValueFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n const mem = getDataViewMemory0();\n const result = [];\n for (let i = ptr; i < ptr + 4 * len; i += 4) {\n result.push(takeObject(mem.getUint32(i, true)));\n }\n return result;\n}\nfunction __wbg_adapter_40(arg0, arg1, arg2) {\n wasm.__wbindgen_export_6(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wbg_adapter_870(arg0, arg1, arg2, arg3) {\n wasm.__wbindgen_export_7(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));\n}\n\nconst __wbindgen_enum_RequestCredentials = [\"omit\", \"same-origin\", \"include\"];\n\nconst __wbindgen_enum_RequestMode = [\"same-origin\", \"no-cors\", \"cors\", \"navigate\"];\n\nconst AddressFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_address_free(ptr >>> 0, 1));\n/**\n * Public address of an Aleo account\n */\nclass Address {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Address.prototype);\n obj.__wbg_ptr = ptr;\n AddressFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n AddressFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_address_free(ptr, 0);\n }\n /**\n * Get an address object from a group.\n *\n * @param {Group} group The group object.\n *\n * @returns {Address} The address object.\n * @param {Group} group\n * @returns {Address}\n */\n static fromGroup(group) {\n _assertClass(group, Group);\n var ptr0 = group.__destroy_into_raw();\n const ret = wasm.address_fromGroup(ptr0);\n return Address.__wrap(ret);\n }\n /**\n * Get the left endian boolean array representation of the bits of the address.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.address_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get an address object from an array of fields.\n *\n * @param {Array} fields An array of fields.\n *\n * @returns {Plaintext} The address object.\n * @param {Array<any>} fields\n * @returns {Address}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create an aleo address object from a string representation of an address\n *\n * @param {string} address String representation of an addressm\n * @returns {Address} Address\n * @param {string} address\n * @returns {Address}\n */\n static from_string(address) {\n const ptr0 = passStringToWasm0(address, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.address_from_string(ptr0, len0);\n return Address.__wrap(ret);\n }\n /**\n * Get the left endian byte array representation of the address.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get an address from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A left endian boolean array representing the bits of the address.\n *\n * @returns {Address} The address object.\n * @param {Array<any>} bits\n * @returns {Address}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the plaintext representation of the address.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.address_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get an address from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the address.\n *\n * @returns {Address} The address object.\n * @param {Uint8Array} bytes\n * @returns {Address}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Derive an Aleo address from a view key\n *\n * @param {ViewKey} view_key The view key to derive the address from\n * @returns {Address} Address corresponding to the view key\n * @param {ViewKey} view_key\n * @returns {Address}\n */\n static from_view_key(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.address_from_view_key(view_key.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Derive an Aleo address from a compute key.\n *\n * @param {ComputeKey} compute_key The compute key to derive the address from\n * @param {ComputeKey} compute_key\n * @returns {Address}\n */\n static from_compute_key(compute_key) {\n _assertClass(compute_key, ComputeKey);\n const ret = wasm.address_from_compute_key(compute_key.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Derive an Aleo address from a private key\n *\n * @param {PrivateKey} private_key The private key to derive the address from\n * @returns {Address} Address corresponding to the private key\n * @param {PrivateKey} private_key\n * @returns {Address}\n */\n static from_private_key(private_key) {\n _assertClass(private_key, PrivateKey);\n const ret = wasm.address_from_private_key(private_key.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Verify a signature for a message signed by the address\n *\n * @param {Uint8Array} Byte array representing a message signed by the address\n * @returns {boolean} Boolean representing whether or not the signature is valid\n * @param {Uint8Array} message\n * @param {Signature} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n _assertClass(signature, Signature);\n const ret = wasm.address_verify(this.__wbg_ptr, ptr0, len0, signature.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the group representation of the address object.\n * @returns {Group}\n */\n toGroup() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the field array representation of the address.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of an Aleo address object\n *\n * @param {Address} Address\n * @returns {string} String representation of the address\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst AuthorizationFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_authorization_free(ptr >>> 0, 1));\n/**\n * Authorization object containing the authorization for a transaction.\n */\nclass Authorization {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Authorization.prototype);\n obj.__wbg_ptr = ptr;\n AuthorizationFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n AuthorizationFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_authorization_free(ptr, 0);\n }\n /**\n * Reconstructs an Authorization object from its string representation.\n *\n * @param {String} authorization The string representation of the Authorization.\n * @param {string} authorization\n * @returns {Authorization}\n */\n static fromString(authorization) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(authorization, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.authorization_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Authorization.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the left-endian byte representation of the Authorization.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transitions in an Authorization.\n *\n * @returns {Array<Transition>} Array of transition objects\n * @returns {Array<any>}\n */\n transitions() {\n const ret = wasm.authorization_transitions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates an authorization object from a left-endian byte representation of an Authorization.\n *\n * @param {Uint8Array} bytes Left-endian bytes representing the Authorization.\n * @param {Uint8Array} bytes\n * @returns {Authorization}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Authorization.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the function name.\n *\n * @returns {string} The function name.\n * @returns {string}\n */\n functionName() {\n let deferred2_0;\n let deferred2_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_functionName(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n var ptr1 = r0;\n var len1 = r1;\n if (r3) {\n ptr1 = 0; len1 = 0;\n throw takeObject(r2);\n }\n deferred2_0 = ptr1;\n deferred2_1 = len1;\n return getStringFromWasm0(ptr1, len1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);\n }\n }\n /**\n * Returns `true` if the Authorization is for `credits.aleo/fee_public`.\n * @returns {boolean}\n */\n isFeePublic() {\n const ret = wasm.authorization_isFeePublic(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns `true` if the Authorization is for `credits.aleo/fee_private`.\n * @returns {boolean}\n */\n isFeePrivate() {\n const ret = wasm.authorization_isFeePrivate(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the execution ID for the Authorization.\n *\n * @returns {Field} The execution ID for the Authorization, call toString() after this result to get the string representation.\n * @returns {Field}\n */\n toExecutionId() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_toExecutionId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Insert a transition into the Authorization.\n *\n * @param {Transition} transition The transition object to insert into the Authorization.\n * @param {Transition} transition\n */\n insertTransition(transition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition, Transition);\n var ptr0 = transition.__destroy_into_raw();\n wasm.authorization_insertTransition(retptr, this.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the number of `Request`s in the Authorization.\n * @returns {number}\n */\n len() {\n const ret = wasm.authorization_len(this.__wbg_ptr);\n return ret >>> 0;\n }\n /**\n * Create a new authorization from a request object.\n *\n * @param {ExecutionRequest} request The ExecutionRequest to build the authorization from.\n * @param {ExecutionRequest} request\n * @returns {Authorization}\n */\n static new(request) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(request, ExecutionRequest);\n var ptr0 = request.__destroy_into_raw();\n wasm.authorization_new(retptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Authorization.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Check if an Authorization object is the same as another.\n *\n * @param {Authorization} other The Authorization object to determine equality with.\n * @param {Authorization} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Authorization);\n const ret = wasm.authorization_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Return `true` if the Authorization is empty.\n * @returns {boolean}\n */\n isEmpty() {\n const ret = wasm.authorization_isEmpty(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns `true` if the Authorization is for `credits.aleo/split`.\n * @returns {boolean}\n */\n isSplit() {\n const ret = wasm.authorization_isSplit(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns a new and independent replica of the Authorization.\n * @returns {Authorization}\n */\n replicate() {\n const ret = wasm.authorization_replicate(this.__wbg_ptr);\n return Authorization.__wrap(ret);\n }\n /**\n * Returns the string representation of the Authorization.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst BHP1024Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp1024_free(ptr >>> 0, 1));\n\nclass BHP1024 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP1024.prototype);\n obj.__wbg_ptr = ptr;\n BHP1024Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP1024Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp1024_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 1024 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp1024_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 1024 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp1024_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 1024 bits.\n */\n constructor() {\n const ret = wasm.bhp1024_new();\n this.__wbg_ptr = ret >>> 0;\n BHP1024Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 1024 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp1024_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 1024 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP1024}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp1024_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP1024.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 1024 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp1024_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BHP256Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp256_free(ptr >>> 0, 1));\n\nclass BHP256 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP256.prototype);\n obj.__wbg_ptr = ptr;\n BHP256Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP256Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp256_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 256 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp256_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 256 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp256_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 256 bits.\n */\n constructor() {\n const ret = wasm.bhp256_new();\n this.__wbg_ptr = ret >>> 0;\n BHP256Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 256 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp256_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 256 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP256}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp256_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP256.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 256 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp256_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BHP512Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp512_free(ptr >>> 0, 1));\n\nclass BHP512 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP512.prototype);\n obj.__wbg_ptr = ptr;\n BHP512Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP512Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp512_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 512 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp512_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 512 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp512_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 512 bits.\n */\n constructor() {\n const ret = wasm.bhp512_new();\n this.__wbg_ptr = ret >>> 0;\n BHP512Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 512 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp512_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 512 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP512}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp512_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP512.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 512 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp512_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BHP768Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp768_free(ptr >>> 0, 1));\n\nclass BHP768 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP768.prototype);\n obj.__wbg_ptr = ptr;\n BHP768Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP768Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp768_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 768 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp768_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 768 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp768_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 768 bits.\n */\n constructor() {\n const ret = wasm.bhp768_new();\n this.__wbg_ptr = ret >>> 0;\n BHP768Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 768 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp768_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 768 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP768}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp768_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP768.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 768 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp768_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BooleanFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_boolean_free(ptr >>> 0, 1));\n/**\n * Boolean element.\n */\nclass Boolean {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Boolean.prototype);\n obj.__wbg_ptr = ptr;\n BooleanFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BooleanFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_boolean_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the boolean element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.boolean_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a boolean object from a string representation (\"true\"/\"false\").\n * @param {string} boolean\n * @returns {Boolean}\n */\n static fromString(boolean) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(boolean, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.boolean_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Boolean.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the boolean element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a boolean element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Boolean}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Boolean.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext from the boolean element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.boolean_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a boolean element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Boolean}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Boolean.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Logical OR.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n or(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_or(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical AND.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n and(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_and(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Creates a Boolean from a native JS bool.\n * @param {boolean} value\n */\n constructor(value) {\n const ret = wasm.boolean_new(value);\n this.__wbg_ptr = ret >>> 0;\n BooleanFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Logical NOR.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n nor(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_nor(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical NOT.\n * @returns {Boolean}\n */\n not() {\n const ret = wasm.boolean_not(this.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical XOR.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n xor(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_xor(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical NAND.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n nand(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_nand(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Clone the boolean element.\n * @returns {Boolean}\n */\n clone() {\n const ret = wasm.boolean_clone(this.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Check if one boolean element equals another.\n * @param {Boolean} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random boolean element.\n * @returns {Boolean}\n */\n static random() {\n const ret = wasm.boolean_random();\n return Boolean.__wrap(ret);\n }\n /**\n * Returns the string representation of the boolean element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst CiphertextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_ciphertext_free(ptr >>> 0, 1));\n/**\n * SnarkVM Ciphertext object. A Ciphertext represents an symmetrically encrypted plaintext. This\n * object provides decryption methods to recover the plaintext from the ciphertext (given the\n * api consumer has the proper decryption materials).\n */\nclass Ciphertext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Ciphertext.prototype);\n obj.__wbg_ptr = ptr;\n CiphertextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n CiphertextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_ciphertext_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the bits of the ciphertext.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.ciphertext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a ciphertext object from an array of fields.\n *\n * @param {Array} fields An array of fields.\n *\n * @returns {Ciphertext} The ciphertext object.\n * @param {Array<any>} fields\n * @returns {Ciphertext}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Deserialize a Ciphertext string into a Ciphertext object.\n *\n * @param {string} ciphertext A string representation of the ciphertext.\n *\n * @returns {Ciphertext} The Ciphertext object.\n * @param {string} ciphertext\n * @returns {Ciphertext}\n */\n static fromString(ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(ciphertext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.ciphertext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the left endian byte array representation of the ciphertext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a ciphertext object from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A left endian boolean array representing the bits of the ciphertext.\n *\n * @returns {Ciphertext} The ciphertext object.\n * @param {Array<any>} bits\n * @returns {Ciphertext}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Deserialize a left endian byte array into a Ciphertext.\n *\n * @param {Uint8Array} bytes The byte array representing the Ciphertext.\n *\n * @returns {Ciphertext} The Ciphertext object.\n * @param {Uint8Array} bytes\n * @returns {Ciphertext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a ciphertext into plaintext using the given ciphertext view key.\n *\n * @param {Field} transition_view_key The transition view key that was used to encrypt the ciphertext.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {Field} transition_view_key\n * @returns {Plaintext}\n */\n decryptSymmetric(transition_view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition_view_key, Field);\n var ptr0 = transition_view_key.__destroy_into_raw();\n wasm.ciphertext_decryptSymmetric(retptr, this.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt a ciphertext using the view key of the transition signer, transition public key, and\n * (program, function, index) tuple.\n *\n * @param {ViewKey} view_key The view key of the transition signer.\n * @param {Group} transition_public_key The transition public key used to encrypt the ciphertext.\n * @param {string} program The program ID associated with the ciphertext.\n * @param {string} function_name The name of the function associated with the encrypted inputs and outputs.\n * @param {u16} index The index of the input or output parameter that was encrypted.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {ViewKey} view_key\n * @param {Group} transition_public_key\n * @param {string} program\n * @param {string} function_name\n * @param {number} index\n * @returns {Plaintext}\n */\n decryptWithTransitionInfo(view_key, transition_public_key, program, function_name, index) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n var ptr0 = view_key.__destroy_into_raw();\n _assertClass(transition_public_key, Group);\n var ptr1 = transition_public_key.__destroy_into_raw();\n const ptr2 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n const ptr3 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len3 = WASM_VECTOR_LEN;\n wasm.ciphertext_decryptWithTransitionInfo(retptr, this.__wbg_ptr, ptr0, ptr1, ptr2, len2, ptr3, len3, index);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt a ciphertext using the transition view key and a (program, function, index) tuple.\n *\n * @param {Field} transition_view_key The transition view key that was used to encrypt the ciphertext.\n * @param {string} program The program ID associated with the ciphertext.\n * @param {string} function_name The name of the function associated with the encrypted inputs and outputs.\n * @param {u16} index The index of the input or output parameter that was encrypted.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {Field} transition_view_key\n * @param {string} program\n * @param {string} function_name\n * @param {number} index\n * @returns {Plaintext}\n */\n decryptWithTransitionViewKey(transition_view_key, program, function_name, index) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition_view_key, Field);\n var ptr0 = transition_view_key.__destroy_into_raw();\n const ptr1 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n wasm.ciphertext_decryptWithTransitionViewKey(retptr, this.__wbg_ptr, ptr0, ptr1, len1, ptr2, len2, index);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt the ciphertext using the given view key.\n *\n * @param {ViewKey} viewKey The view key of the account that encrypted the ciphertext.\n * @param {Group} nonce The nonce used to encrypt the ciphertext.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {ViewKey} view_key\n * @param {Group} nonce\n * @returns {Plaintext}\n */\n decrypt(view_key, nonce) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n var ptr0 = view_key.__destroy_into_raw();\n _assertClass(nonce, Group);\n var ptr1 = nonce.__destroy_into_raw();\n wasm.ciphertext_decrypt(retptr, this.__wbg_ptr, ptr0, ptr1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Serialize a Ciphertext object into a byte array.\n *\n * @returns {Uint8Array} The serialized Ciphertext.\n * @returns {Uint8Array}\n */\n toBytes() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the field array representation of the ciphertext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Serialize a Ciphertext into a js string.\n *\n * @returns {string} The serialized Ciphertext.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ComputeKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_computekey_free(ptr >>> 0, 1));\n\nclass ComputeKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ComputeKey.prototype);\n obj.__wbg_ptr = ptr;\n ComputeKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ComputeKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_computekey_free(ptr, 0);\n }\n /**\n * Create a new compute key from a private key.\n *\n * @param {PrivateKey} private_key Private key\n *\n * @returns {ComputeKey} Compute key\n * @param {PrivateKey} private_key\n * @returns {ComputeKey}\n */\n static from_private_key(private_key) {\n _assertClass(private_key, PrivateKey);\n const ret = wasm.computekey_from_private_key(private_key.__wbg_ptr);\n return ComputeKey.__wrap(ret);\n }\n /**\n * Get the pr_tag of the compute key.\n *\n * @returns {Group} pr_tag\n * @returns {Group}\n */\n pk_sig() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the pr_sig of the compute key.\n *\n * @returns {Group} pr_sig\n * @returns {Group}\n */\n pr_sig() {\n const ret = wasm.computekey_pr_sig(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the sk_prf of the compute key.\n *\n * @returns {Scalar} sk_prf\n * @returns {Scalar}\n */\n sk_prf() {\n const ret = wasm.computekey_sk_prf(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the address from the compute key.\n *\n * @returns {Address}\n * @returns {Address}\n */\n address() {\n const ret = wasm.address_from_compute_key(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n}\n\nconst EncryptionToolkitFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_encryptiontoolkit_free(ptr >>> 0, 1));\n/**\n * EncryptionToolkit provides a set of functions for encrypting, decrypting, and generating individual view keys for records, transitions, and ciphertexts.\n */\nclass EncryptionToolkit {\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n EncryptionToolkitFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_encryptiontoolkit_free(ptr, 0);\n }\n /**\n * Generates a transition view key from the view key and the transition public key.\n *\n * @param {ViewKey} view_key The view key of the account that generated the transition.\n * @param {Group} tpk The transition public key.\n *\n * @returns {Field} The transition view key.\n * @param {ViewKey} view_key\n * @param {Group} tpk\n * @returns {Field}\n */\n static generateTvk(view_key, tpk) {\n _assertClass(view_key, ViewKey);\n _assertClass(tpk, Group);\n const ret = wasm.encryptiontoolkit_generateTvk(view_key.__wbg_ptr, tpk.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Decrypt the sender ciphertext associated with a record.\n *\n * @param {ViewKey} view_key View key associated with the record.\n * @param {RecordPlaintext} record Record plaintext associated with a sender.\n * @param {Field} sender_ciphertext Sender ciphertext associated with the record.\n *\n * @returns {Address} address of the sender.\n * @param {ViewKey} view_key\n * @param {RecordPlaintext} record\n * @param {Field} sender_ciphertext\n * @returns {Address}\n */\n static decryptSender(view_key, record, sender_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n _assertClass(record, RecordPlaintext);\n _assertClass(sender_ciphertext, Field);\n wasm.encryptiontoolkit_decryptSender(retptr, view_key.__wbg_ptr, record.__wbg_ptr, sender_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Checks if a record ciphertext is owned by the given view key.\n *\n * @param {ViewKey} view_key View key of the owner of the records.\n * @param {Vec<RecordCiphertext>} records The record ciphertexts for which to check ownership.\n *\n * @returns {Vec<RecordCiphertext>} The record ciphertexts that are owned by the view key.\n * @param {ViewKey} view_key\n * @param {RecordCiphertext[]} records\n * @returns {RecordCiphertext[]}\n */\n static checkOwnedRecords(view_key, records) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n const ptr0 = passArrayJsValueToWasm0(records, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.encryptiontoolkit_checkOwnedRecords(retptr, view_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v2 = getArrayJsValueFromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a set of record ciphertexts in parallel and stores successful decryptions.\n *\n * @param {ViewKey} view_key The view key of the owner of the records.\n * @param {Vec<RecordCiphertext>} records The record ciphertexts to decrypt.\n *\n * @returns {vec<RecordPlaintext>} The decrypted record plaintexts.\n * @param {ViewKey} view_key\n * @param {RecordCiphertext[]} records\n * @returns {RecordPlaintext[]}\n */\n static decryptOwnedRecords(view_key, records) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n const ptr0 = passArrayJsValueToWasm0(records, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.encryptiontoolkit_decryptOwnedRecords(retptr, view_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v2 = getArrayJsValueFromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt the sender ciphertext associated with the record with the record view key.\n *\n * @param {Field} record_view_key Record view key associated with the record.\n * @param {Field} sender_ciphertext Sender ciphertext associated with the record.\n *\n * @return {Address} the address of the sender.\n * @param {Field} record_view_key\n * @param {Field} sender_ciphertext\n * @returns {Address}\n */\n static decryptSenderWithRvk(record_view_key, sender_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(record_view_key, Field);\n _assertClass(sender_ciphertext, Field);\n wasm.encryptiontoolkit_decryptSenderWithRvk(retptr, record_view_key.__wbg_ptr, sender_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates a record view key from the view key. This can be later be used to decrypt a\n *\n * @param {ViewKey} view_key The view key of the owner of the record.\n * @param {RecordCiphertext} record_ciphertext The record ciphertext used to derive the record view key.\n *\n * @returns {Field} The record view key.\n * @param {ViewKey} view_key\n * @param {RecordCiphertext} record_ciphertext\n * @returns {Field}\n */\n static generateRecordViewKey(view_key, record_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n _assertClass(record_ciphertext, RecordCiphertext);\n wasm.encryptiontoolkit_generateRecordViewKey(retptr, view_key.__wbg_ptr, record_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a transition using the transition view key. The ciphertext inputs and outputs\n * can only be decrypted if the transition view key was generated by the transaction signer.\n *\n * @param {Transition} transition The transition to decrypt.\n * @param {Field} transition_vk The transition view key.\n *\n * @returns {Transition} The decrypted transition.\n * @param {Transition} transition\n * @param {Field} transition_vk\n * @returns {Transition}\n */\n static decryptTransitionWithVk(transition, transition_vk) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition, Transition);\n _assertClass(transition_vk, Field);\n wasm.encryptiontoolkit_decryptTransitionWithVk(retptr, transition.__wbg_ptr, transition_vk.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a record ciphertext using the record view key. Decryption only succeeds\n * if the record view key was generated from the view key of the record owner.\n *\n * @param {Field} record_vk The record view key.\n * @param {RecordCiphertext} record_ciphertext The record ciphertext to decrypt.\n *\n * @returns {RecordPlaintext} The decrypted record plaintext.\n * @param {Field} record_vk\n * @param {RecordCiphertext} record_ciphertext\n * @returns {RecordPlaintext}\n */\n static decryptRecordWithRVk(record_vk, record_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(record_vk, Field);\n _assertClass(record_ciphertext, RecordCiphertext);\n wasm.encryptiontoolkit_decryptRecordWithRVk(retptr, record_vk.__wbg_ptr, record_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst ExecutionFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_execution_free(ptr >>> 0, 1));\n/**\n * Execution of an Aleo program.\n */\nclass Execution {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Execution.prototype);\n obj.__wbg_ptr = ptr;\n ExecutionFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ExecutionFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_execution_free(ptr, 0);\n }\n /**\n * Creates an execution object from a string representation of an execution.\n *\n * @returns {Execution | Error} The wasm representation of an execution object.\n * @param {string} execution\n * @returns {Execution}\n */\n static fromString(execution) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(execution, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.execution_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Execution.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the transitions present in the execution.\n *\n * @returns Array<Transition> the array of transitions present in the execution.\n * @returns {Array<any>}\n */\n transitions() {\n const ret = wasm.execution_transitions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the global state root of the execution.\n *\n * @returns {Execution | Error} The global state root used in the execution.\n * @returns {string}\n */\n globalStateRoot() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.execution_globalStateRoot(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the proof of the execution.\n *\n * @returns {string} The execution proof.\n * @returns {string}\n */\n proof() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.execution_proof(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the string representation of the execution.\n *\n * @returns {string} The string representation of the execution.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.execution_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ExecutionRequestFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_executionrequest_free(ptr >>> 0, 1));\n\nclass ExecutionRequest {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ExecutionRequest.prototype);\n obj.__wbg_ptr = ptr;\n ExecutionRequestFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ExecutionRequestFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_executionrequest_free(ptr, 0);\n }\n /**\n * Returns the network ID.\n * @returns {number}\n */\n network_id() {\n const ret = wasm.executionrequest_network_id(this.__wbg_ptr);\n return ret;\n }\n /**\n * Returns the program ID.\n * @returns {string}\n */\n program_id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_program_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Builds a request object from a string representation of a request.\n *\n * @param {string} request String representation of the request.\n * @param {string} request\n * @returns {ExecutionRequest}\n */\n static fromString(request) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(request, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.executionrequest_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ExecutionRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the bytes representation of the request.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates an request object from a bytes representation of an request.\n * @param {Uint8Array} bytes\n * @returns {ExecutionRequest}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ExecutionRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the function name.\n * @returns {string}\n */\n function_name() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_function_name(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the signer commitment `scm`.\n * @returns {Field}\n */\n scm() {\n const ret = wasm.executionrequest_scm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the transition commitment `tcm`.\n * @returns {Field}\n */\n tcm() {\n const ret = wasm.executionrequest_tcm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the transition view key `tvk`.\n * @returns {Field}\n */\n tvk() {\n const ret = wasm.executionrequest_tvk(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Create a new request by signing over a program ID and set of inputs.\n *\n * @param {PrivateKey} private_key The private key of the signer.\n * @param {string} program_id The id of the program to create the signature for.\n * @param {string} function_name The function name to create the signature for.\n * @param {string[]} inputs The inputs to the function.\n * @param {string[]} input_types The input types of the function.\n * @param {Field | undefined} root_tvk The tvk of the function at the top of the call graph. This is undefined if this request is built for the top-level call or if there is only one function in the call graph.\n * @param {boolean} is_root Flag to indicate if this is the top level function in the call graph.\n * @param {PrivateKey} private_key\n * @param {string} program_id\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {Array<any>} input_types\n * @param {Field | null | undefined} root_tvk\n * @param {Field | null | undefined} program_checksum\n * @param {boolean} is_root\n * @returns {ExecutionRequest}\n */\n static sign(private_key, program_id, function_name, inputs, input_types, root_tvk, program_checksum, is_root) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n var ptr0 = private_key.__destroy_into_raw();\n const ptr1 = passStringToWasm0(program_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n let ptr3 = 0;\n if (!isLikeNone(root_tvk)) {\n _assertClass(root_tvk, Field);\n ptr3 = root_tvk.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(program_checksum)) {\n _assertClass(program_checksum, Field);\n ptr4 = program_checksum.__destroy_into_raw();\n }\n wasm.executionrequest_sign(retptr, ptr0, ptr1, len1, ptr2, len2, addHeapObject(inputs), addHeapObject(input_types), ptr3, ptr4, is_root);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ExecutionRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the function inputs as an array of strings.\n * @returns {Array<any>}\n */\n inputs() {\n const ret = wasm.executionrequest_inputs(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the request signer.\n * @returns {Address}\n */\n signer() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Returns the tag secret key `sk_tag`.\n * @returns {Field}\n */\n sk_tag() {\n const ret = wasm.executionrequest_sk_tag(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the transition public key `tpk`.\n * @returns {Group}\n */\n to_tpk() {\n const ret = wasm.executionrequest_to_tpk(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Verify the input types within a request.\n *\n * @param {string[]} The input_types within the request.\n * @param {boolean} Flag to indicate whether this request is the first function in the call graph.\n * @param {Array<any>} input_types\n * @param {boolean} is_root\n * @param {Field | null} [program_checksum]\n * @returns {boolean}\n */\n verify(input_types, is_root, program_checksum) {\n let ptr0 = 0;\n if (!isLikeNone(program_checksum)) {\n _assertClass(program_checksum, Field);\n ptr0 = program_checksum.__destroy_into_raw();\n }\n const ret = wasm.executionrequest_verify(this.__wbg_ptr, addHeapObject(input_types), is_root, ptr0);\n return ret !== 0;\n }\n /**\n * Returns the input IDs for the transition.\n * @returns {Array<any>}\n */\n input_ids() {\n const ret = wasm.executionrequest_input_ids(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the signature for the transition.\n * @returns {Signature}\n */\n signature() {\n const ret = wasm.executionrequest_signature(this.__wbg_ptr);\n return Signature.__wrap(ret);\n }\n /**\n * Returns the request as a string.\n *\n * @returns {string} String representation of the request.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ExecutionResponseFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_executionresponse_free(ptr >>> 0, 1));\n/**\n * Webassembly Representation of an Aleo function execution response\n *\n * This object is returned by the execution of an Aleo function off-chain. It provides methods for\n * retrieving the outputs of the function execution.\n */\nclass ExecutionResponse {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ExecutionResponse.prototype);\n obj.__wbg_ptr = ptr;\n ExecutionResponseFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ExecutionResponseFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_executionresponse_free(ptr, 0);\n }\n /**\n * Get the outputs of the executed function\n *\n * @returns {Array} Array of strings representing the outputs of the function\n * @returns {Array<any>}\n */\n getOutputs() {\n const ret = wasm.executionresponse_getOutputs(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the program\n * @returns {Program}\n */\n getProgram() {\n const ret = wasm.executionresponse_getProgram(this.__wbg_ptr);\n return Program.__wrap(ret);\n }\n /**\n * Returns the execution object if present, null if otherwise.\n *\n * @returns {Execution | undefined} The execution object if present, null if otherwise\n * @returns {Execution | undefined}\n */\n getExecution() {\n const ret = wasm.executionresponse_getExecution(this.__wbg_ptr);\n return ret === 0 ? undefined : Execution.__wrap(ret);\n }\n /**\n * Returns the function identifier\n * @returns {string}\n */\n getFunctionId() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionresponse_getFunctionId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the proving_key if the proving key was cached in the Execution response.\n * Note the proving key is removed from the response object after the first call to this\n * function. Subsequent calls will return null.\n *\n * @returns {ProvingKey | undefined} The proving key\n * @returns {ProvingKey | undefined}\n */\n getProvingKey() {\n const ret = wasm.executionresponse_getProvingKey(this.__wbg_ptr);\n return ret === 0 ? undefined : ProvingKey.__wrap(ret);\n }\n /**\n * Returns the verifying_key associated with the program\n *\n * @returns {VerifyingKey} The verifying key\n * @returns {VerifyingKey}\n */\n getVerifyingKey() {\n const ret = wasm.executionresponse_getVerifyingKey(this.__wbg_ptr);\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the program keys if present\n * @returns {KeyPair}\n */\n getKeys() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionresponse_getKeys(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return KeyPair.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst FieldFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_field_free(ptr >>> 0, 1));\n/**\n * Field element.\n */\nclass Field {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Field.prototype);\n obj.__wbg_ptr = ptr;\n FieldFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n static __unwrap(jsValue) {\n if (!(jsValue instanceof Field)) {\n return 0;\n }\n return jsValue.__destroy_into_raw();\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n FieldFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_field_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the field element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.field_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a field object from a string representation of a field element.\n * @param {string} field\n * @returns {Field}\n */\n static fromString(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(field, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.field_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the field element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a field element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Field}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext from the field element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.field_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a field element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Field}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Initializes a new field as a domain separator.\n * @param {string} domain\n * @returns {Field}\n */\n static newDomainSeparator(domain) {\n const ptr0 = passStringToWasm0(domain, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.field_newDomainSeparator(ptr0, len0);\n return Field.__wrap(ret);\n }\n /**\n * Add two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n add(other) {\n _assertClass(other, Field);\n const ret = wasm.field_add(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the multiplicative identity of the field.\n * @returns {Field}\n */\n static one() {\n const ret = wasm.field_one();\n return Field.__wrap(ret);\n }\n /**\n * Power of a field element.\n * @param {Field} other\n * @returns {Field}\n */\n pow(other) {\n _assertClass(other, Field);\n const ret = wasm.field_pow(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the additive identity element of the field.\n * @returns {Field}\n */\n static zero() {\n const ret = wasm.field_zero();\n return Field.__wrap(ret);\n }\n /**\n * Clone the field element.\n * @returns {Field}\n */\n clone() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Divide two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n divide(other) {\n _assertClass(other, Field);\n const ret = wasm.field_divide(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Double the field element.\n * @returns {Field}\n */\n double() {\n const ret = wasm.field_double(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Check if one field element equals another.\n * @param {Field} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Field);\n const ret = wasm.field_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random field element.\n * @returns {Field}\n */\n static random() {\n const ret = wasm.field_random();\n return Field.__wrap(ret);\n }\n /**\n * Invert the field element.\n * @returns {Field}\n */\n inverse() {\n const ret = wasm.field_inverse(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Multiply two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n multiply(other) {\n _assertClass(other, Field);\n const ret = wasm.field_multiply(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Subtract two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n subtract(other) {\n _assertClass(other, Field);\n const ret = wasm.field_subtract(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the string representation of the field element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst GraphKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_graphkey_free(ptr >>> 0, 1));\n\nclass GraphKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(GraphKey.prototype);\n obj.__wbg_ptr = ptr;\n GraphKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n GraphKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_graphkey_free(ptr, 0);\n }\n /**\n * Create a new graph key from a string representation of a graph key\n *\n * @param {string} graph_key String representation of a graph key\n * @returns {GraphKey} Graph key\n * @param {string} graph_key\n * @returns {GraphKey}\n */\n static from_string(graph_key) {\n const ptr0 = passStringToWasm0(graph_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.graphkey_from_string(ptr0, len0);\n return GraphKey.__wrap(ret);\n }\n /**\n * Create a new graph key from a view key.\n *\n * @param {ViewKey} view_key View key\n * @returns {GraphKey} Graph key\n * @param {ViewKey} view_key\n * @returns {GraphKey}\n */\n static from_view_key(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.graphkey_from_view_key(view_key.__wbg_ptr);\n return GraphKey.__wrap(ret);\n }\n /**\n * Get the sk_tag of the graph key. Used to determine ownership of records.\n * @returns {Field}\n */\n sk_tag() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get a string representation of a graph key\n *\n * @returns {string} String representation of a graph key\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.graphkey_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst GroupFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_group_free(ptr >>> 0, 1));\n/**\n * Elliptic curve element.\n */\nclass Group {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Group.prototype);\n obj.__wbg_ptr = ptr;\n GroupFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n GroupFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_group_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the group element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.address_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a group object from a string representation of a group element.\n * @param {string} group\n * @returns {Group}\n */\n static fromString(group) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(group, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.group_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the group element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a group element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Group}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext element from a group element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.group_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a group element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Group}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Multiply a group element by a scalar element.\n * @param {Scalar} scalar\n * @returns {Group}\n */\n scalarMultiply(scalar) {\n _assertClass(scalar, Scalar);\n const ret = wasm.group_scalarMultiply(this.__wbg_ptr, scalar.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the x-coordinate of the group element.\n * @returns {Field}\n */\n toXCoordinate() {\n const ret = wasm.group_toXCoordinate(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Add two group elements.\n * @param {Group} other\n * @returns {Group}\n */\n add(other) {\n _assertClass(other, Group);\n const ret = wasm.group_add(this.__wbg_ptr, other.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the group identity element under the group operation (i.e. the point at infinity.)\n * @returns {Group}\n */\n static zero() {\n const ret = wasm.group_zero();\n return Group.__wrap(ret);\n }\n /**\n * Clone the group element.\n * @returns {Group}\n */\n clone() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Double the group element.\n * @returns {Group}\n */\n double() {\n const ret = wasm.group_double(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Check if one group element equals another.\n * @param {Group} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Group);\n const ret = wasm.group_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random group element.\n * @returns {Group}\n */\n static random() {\n const ret = wasm.group_random();\n return Group.__wrap(ret);\n }\n /**\n * Get the inverse of the group element. This is the reflection of the point about the axis\n * of symmetry i.e. (x,y) -> (x, -y).\n * @returns {Group}\n */\n inverse() {\n const ret = wasm.group_inverse(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Subtract two group elements (equivalently: add the inverse of an element).\n * @param {Group} other\n * @returns {Group}\n */\n subtract(other) {\n _assertClass(other, Group);\n const ret = wasm.group_subtract(this.__wbg_ptr, other.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the generator of the group.\n * @returns {Group}\n */\n static generator() {\n const ret = wasm.group_generator();\n return Group.__wrap(ret);\n }\n /**\n * Get the field array representation of the group.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the string representation of the group element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I128Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i128_free(ptr >>> 0, 1));\n\nclass I128 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I128.prototype);\n obj.__wbg_ptr = ptr;\n I128Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I128Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i128_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I128}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i128_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i128_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I128}\n */\n absChecked() {\n const ret = wasm.i128_absChecked(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I128}\n */\n absWrapped() {\n const ret = wasm.i128_absWrapped(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I128} other\n * @returns {I128}\n */\n addWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I128} other\n * @returns {I128}\n */\n divWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I128}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I128}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i128_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I128} other\n * @returns {I128}\n */\n mulWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I128} other\n * @returns {I128}\n */\n remWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I128} other\n * @returns {I128}\n */\n subWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I128}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i128_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I128}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I128}\n */\n neg() {\n const ret = wasm.i128_neg(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I128} other\n * @returns {I128}\n */\n rem(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I128}\n */\n clone() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I128} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I128}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i128_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I128}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i128_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I128}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i128_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i128_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I16Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i16_free(ptr >>> 0, 1));\n\nclass I16 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I16.prototype);\n obj.__wbg_ptr = ptr;\n I16Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I16Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i16_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I16}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i16_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i16_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I16}\n */\n absChecked() {\n const ret = wasm.i16_absChecked(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I16}\n */\n absWrapped() {\n const ret = wasm.i16_absWrapped(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I16} other\n * @returns {I16}\n */\n addWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I16} other\n * @returns {I16}\n */\n divWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I16}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I16}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i16_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I16} other\n * @returns {I16}\n */\n mulWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I16} other\n * @returns {I16}\n */\n remWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I16} other\n * @returns {I16}\n */\n subWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I16}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i16_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I16}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I16}\n */\n neg() {\n const ret = wasm.i16_neg(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I16} other\n * @returns {I16}\n */\n rem(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I16}\n */\n clone() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I16} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I16}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i16_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I16}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i16_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I16}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i16_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i16_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I32Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i32_free(ptr >>> 0, 1));\n\nclass I32 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I32.prototype);\n obj.__wbg_ptr = ptr;\n I32Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I32Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i32_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I32}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i32_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i32_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I32}\n */\n absChecked() {\n const ret = wasm.i32_absChecked(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I32}\n */\n absWrapped() {\n const ret = wasm.i32_absWrapped(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I32} other\n * @returns {I32}\n */\n addWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I32} other\n * @returns {I32}\n */\n divWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I32}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I32}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i32_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I32} other\n * @returns {I32}\n */\n mulWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I32} other\n * @returns {I32}\n */\n remWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I32} other\n * @returns {I32}\n */\n subWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I32}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i32_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I32}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I32}\n */\n neg() {\n const ret = wasm.i32_neg(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I32} other\n * @returns {I32}\n */\n rem(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I32}\n */\n clone() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I32} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I32}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i32_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I32}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i32_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I32}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i32_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i32_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I64Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i64_free(ptr >>> 0, 1));\n\nclass I64 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I64.prototype);\n obj.__wbg_ptr = ptr;\n I64Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I64Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i64_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I64}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i64_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i64_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I64}\n */\n absChecked() {\n const ret = wasm.i64_absChecked(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I64}\n */\n absWrapped() {\n const ret = wasm.i64_absWrapped(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I64} other\n * @returns {I64}\n */\n addWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I64} other\n * @returns {I64}\n */\n divWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I64}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I64}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i64_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I64} other\n * @returns {I64}\n */\n mulWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I64} other\n * @returns {I64}\n */\n remWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I64} other\n * @returns {I64}\n */\n subWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I64}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i64_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I64}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I64}\n */\n neg() {\n const ret = wasm.i64_neg(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I64} other\n * @returns {I64}\n */\n rem(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I64}\n */\n clone() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I64} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I64}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i64_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I64}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i64_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I64}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i64_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i64_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I8Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i8_free(ptr >>> 0, 1));\n\nclass I8 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I8.prototype);\n obj.__wbg_ptr = ptr;\n I8Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I8Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i8_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I8}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i8_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i8_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I8}\n */\n absChecked() {\n const ret = wasm.i8_absChecked(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I8}\n */\n absWrapped() {\n const ret = wasm.i8_absWrapped(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I8} other\n * @returns {I8}\n */\n addWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I8} other\n * @returns {I8}\n */\n divWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I8}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I8}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i8_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I8} other\n * @returns {I8}\n */\n mulWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I8} other\n * @returns {I8}\n */\n remWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I8} other\n * @returns {I8}\n */\n subWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I8}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i8_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I8}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I8}\n */\n neg() {\n const ret = wasm.i8_neg(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I8} other\n * @returns {I8}\n */\n rem(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I8}\n */\n clone() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I8} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I8}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i8_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I8}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i8_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I8}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i8_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i8_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst KeyPairFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_keypair_free(ptr >>> 0, 1));\n/**\n * Key pair object containing both the function proving and verifying keys\n */\nclass KeyPair {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(KeyPair.prototype);\n obj.__wbg_ptr = ptr;\n KeyPairFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n KeyPairFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_keypair_free(ptr, 0);\n }\n /**\n * Get the proving key. This method will remove the proving key from the key pair\n *\n * @returns {ProvingKey}\n * @returns {ProvingKey}\n */\n provingKey() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.keypair_provingKey(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the verifying key. This method will remove the verifying key from the key pair\n *\n * @returns {VerifyingKey}\n * @returns {VerifyingKey}\n */\n verifyingKey() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.keypair_verifyingKey(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return VerifyingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create new key pair from proving and verifying keys\n *\n * @param {ProvingKey} proving_key Proving key corresponding to a function in an Aleo program\n * @param {VerifyingKey} verifying_key Verifying key corresponding to a function in an Aleo program\n * @returns {KeyPair} Key pair object containing both the function proving and verifying keys\n * @param {ProvingKey} proving_key\n * @param {VerifyingKey} verifying_key\n */\n constructor(proving_key, verifying_key) {\n _assertClass(proving_key, ProvingKey);\n var ptr0 = proving_key.__destroy_into_raw();\n _assertClass(verifying_key, VerifyingKey);\n var ptr1 = verifying_key.__destroy_into_raw();\n const ret = wasm.keypair_new(ptr0, ptr1);\n this.__wbg_ptr = ret >>> 0;\n KeyPairFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n}\n\nconst MetadataFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_metadata_free(ptr >>> 0, 1));\n\nclass Metadata {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Metadata.prototype);\n obj.__wbg_ptr = ptr;\n MetadataFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n MetadataFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_metadata_free(ptr, 0);\n }\n /**\n * @returns {string}\n */\n get name() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_name(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set name(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_name(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get locator() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_locator(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set locator(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_locator(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get prover() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_prover(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set prover(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_prover(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get verifier() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_verifier(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set verifier(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_verifier(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get verifyingKey() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_verifyingKey(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set verifyingKey(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_verifyingKey(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {Metadata}\n */\n static fee_public() {\n const ret = wasm.metadata_fee_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static bond_public() {\n const ret = wasm.metadata_bond_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static fee_private() {\n const ret = wasm.metadata_fee_private();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static unbond_public() {\n const ret = wasm.metadata_unbond_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static bond_validator() {\n const ret = wasm.metadata_bond_validator();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_public() {\n const ret = wasm.metadata_transfer_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_private() {\n const ret = wasm.metadata_transfer_private();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static claim_unbond_public() {\n const ret = wasm.metadata_claim_unbond_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static set_validator_state() {\n const ret = wasm.metadata_set_validator_state();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_public_as_signer() {\n const ret = wasm.metadata_transfer_public_as_signer();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_private_to_public() {\n const ret = wasm.metadata_transfer_private_to_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_public_to_private() {\n const ret = wasm.metadata_transfer_public_to_private();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static join() {\n const ret = wasm.metadata_join();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static split() {\n const ret = wasm.metadata_split();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {string}\n */\n static baseUrl() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.metadata_baseUrl(retptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @returns {Metadata}\n */\n static inclusion() {\n const ret = wasm.metadata_inclusion();\n return Metadata.__wrap(ret);\n }\n}\n\nconst OfflineQueryFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_offlinequery_free(ptr >>> 0, 1));\n/**\n * An offline query object used to insert the global state root and state paths needed to create\n * a valid inclusion proof offline.\n */\nclass OfflineQuery {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(OfflineQuery.prototype);\n obj.__wbg_ptr = ptr;\n OfflineQueryFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n OfflineQueryFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_offlinequery_free(ptr, 0);\n }\n /**\n * Create an offline query object from a json string representation.\n *\n * @param {string} JSON string representation of the offline query object.\n * @param {string} s\n * @returns {OfflineQuery}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.offlinequery_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return OfflineQuery.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Add a new state path to the offline query object.\n *\n * @param {string} commitment: The commitment corresponding to a record input.\n * @param {string} state_path: The state path corresponding to the commitment.\n * @param {string} commitment\n * @param {string} state_path\n */\n addStatePath(commitment, state_path) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(commitment, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(state_path, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n wasm.offlinequery_addStatePath(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Add a new block height to the offline query object.\n *\n * @param {u32} block_height The block height to add.\n * @param {number} block_height\n */\n addBlockHeight(block_height) {\n wasm.offlinequery_addBlockHeight(this.__wbg_ptr, block_height);\n }\n /**\n * Creates a new offline query object. The state root is required to be passed in as a string\n *\n * @param {u32} block_height The block height.\n * @param {string} state_root The state root of the current network.\n *\n * @returns {OfflineQuery} The newly created offline query object.\n * @param {number} block_height\n * @param {string} state_root\n */\n constructor(block_height, state_root) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(state_root, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.offlinequery_new(retptr, block_height, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n this.__wbg_ptr = r0 >>> 0;\n OfflineQueryFinalization.register(this, this.__wbg_ptr, this);\n return this;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a json string representation of the offline query object.\n *\n * @returns {string} JSON string representation of the offline query object.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.offlinequery_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst Pedersen128Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_pedersen128_free(ptr >>> 0, 1));\n\nclass Pedersen128 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Pedersen128.prototype);\n obj.__wbg_ptr = ptr;\n Pedersen128Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Pedersen128Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_pedersen128_free(ptr, 0);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen128_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen hasher for a given (up to) 128-bit input.\n */\n constructor() {\n const ret = wasm.pedersen128_new();\n this.__wbg_ptr = ret >>> 0;\n Pedersen128Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Pedersen hash for a given (up to) 128-bit input.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.pedersen128_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen hasher for a given (up to) 128-bit input with a custom domain separator.\n * @param {string} domain_separator\n * @returns {Pedersen128}\n */\n static setup(domain_separator) {\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.pedersen128_setup(ptr0, len0);\n return Pedersen128.__wrap(ret);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen128_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst Pedersen64Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_pedersen64_free(ptr >>> 0, 1));\n\nclass Pedersen64 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Pedersen64.prototype);\n obj.__wbg_ptr = ptr;\n Pedersen64Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Pedersen64Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_pedersen64_free(ptr, 0);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen64_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen hasher for a given (up to) 64-bit input.\n */\n constructor() {\n const ret = wasm.pedersen64_new();\n this.__wbg_ptr = ret >>> 0;\n Pedersen64Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Pedersen hash for a given (up to) 64-bit input.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.pedersen64_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen64 hasher for a given (up to) 64-bit input with a custom domain separator.\n * @param {string} domain_separator\n * @returns {Pedersen64}\n */\n static setup(domain_separator) {\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.pedersen64_setup(ptr0, len0);\n return Pedersen64.__wrap(ret);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen64_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst PlaintextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_plaintext_free(ptr >>> 0, 1));\n/**\n * SnarkVM Plaintext object. Plaintext is a fundamental monadic type used to represent Aleo\n * primitive types (boolean, field, group, i8, i16, i32, i64, i128, u8, u16, u32, u64, u128,\n * scalar, and signature), struct types, and array types.\n *\n * In the context of a web or NodeJS application, this type is useful for turning an Aleo type into\n * a JS value, object, or array that might be necessary for performing computations within the\n * application.\n *\n * @example\n * // Get the bond state of an existing address.\n * const bondState = await fetch(https://api.explorer.provable.com/v1/mainnet/program/credits.aleo/mapping/bond_state/aleo12zlythl7htjdtjjjz3ahdj4vl6wk3zuzm37s80l86qpx8fyx95fqnxcn2f);\n * // Convert the bond state to a Plaintext object.\n * const bondStatePlaintext = Plaintext.fromString(bond_state);\n * // Convert the Plaintext object to a JS object.\n * const bondStateObject = bond_state_plaintext.toObject();\n * // Check if the bond state matches the expected object.\n * const expectedObject = { validator: \"aleo12zlythl7htjdtjjjz3ahdj4vl6wk3zuzm37s80l86qpx8fyx95fqnxcn2f\", microcredits: 100000000u64 };\n * assert( JSON.stringify(bondStateObject) === JSON.stringify(expectedObject) );\n */\nclass Plaintext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Plaintext.prototype);\n obj.__wbg_ptr = ptr;\n PlaintextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n PlaintextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_plaintext_free(ptr, 0);\n }\n /**\n * Get the little endian boolean array representation of the bits of the plaintext.\n *\n * @returns {Array} The little endian boolean array representation of the bits of the plaintext.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.plaintext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a plaintext object from an array of fields.\n *\n * @param {Array} fields An array of fields.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {Array<any>} fields\n * @returns {Plaintext}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates a plaintext object from a string representation of a plaintext.\n *\n * @param {string} plaintext The string representation of the plaintext.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {string} plaintext\n * @returns {Plaintext}\n */\n static fromString(plaintext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(plaintext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.plaintext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the little endian byte array representation of the plaintext.\n *\n * @returns {Uint8Array} The little endian byte array representation of the plaintext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a plaintext object from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A little endian boolean array representing the bits plaintext.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {Array<any>} bits\n * @returns {Plaintext}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a plaintext object from a series of bytes.\n *\n * @param {Uint8Array} bytes A little endian byte array representing the plaintext.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {Uint8Array} bytes\n * @returns {Plaintext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the raw field array representation of the plaintext.\n *\n * @returns {Array} The raw field array representation of the plaintext.\n * @returns {Array<any>}\n */\n toFieldsRaw() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toFieldsRaw(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Gives the type of the plaintext.\n *\n * @returns {string} The type of the plaintext.\n * @returns {string}\n */\n plaintextType() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_plaintextType(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the raw big endian boolean array representation of the bits of the plaintext.\n *\n * @returns {Array} The raw big endian boolean array representation of the bits of the plaintext.\n * @returns {Array<any>}\n */\n toBitsRawBe() {\n const ret = wasm.plaintext_toBitsRawBe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the raw little endian boolean array representation of the bits of the plaintext.\n *\n * @returns {Array} The raw little endian boolean array representation of the bits of the plaintext.\n * @returns {Array<any>}\n */\n toBitsRawLe() {\n const ret = wasm.plaintext_toBitsRawLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the raw big endian byte array representation of the plaintext.\n *\n * @returns {Uint8Array} The raw big endian byte array representation of the plaintext.\n * @returns {Uint8Array}\n */\n toBytesRawBe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toBytesRawBe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the raw little endian byte array representation of the plaintext.\n *\n * @returns {Uint8Array} The raw little endian byte array representation of the plaintext.\n * @returns {Uint8Array}\n */\n toBytesRawLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toBytesRawLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt a plaintext with a transition view key.\n *\n * @param {Field} transition_view_key The transition view key of the transition\n * associated with the plaintext.\n *\n * @returns {Ciphertext} The encrypted ciphertext.\n * @param {Field} transition_view_key\n * @returns {Ciphertext}\n */\n encryptSymmetric(transition_view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition_view_key, Field);\n wasm.plaintext_encryptSymmetric(retptr, this.__wbg_ptr, transition_view_key.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Find plaintext member if the plaintext is a struct. Returns `null` if the plaintext is not\n * a struct or the member does not exist.\n *\n * @param {string} name The name of the plaintext member to find.\n *\n * @returns {Plaintext} The plaintext member.\n * @param {string} name\n * @returns {Plaintext}\n */\n find(name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.plaintext_find(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt a plaintext with an address and randomizer.\n *\n * @param {Address} address The address to encrypt the plaintext for.\n * @param {Scalar} randomizer The randomizer to use for encryption.\n *\n * @returns {Ciphertext} The encrypted ciphertext.\n * @param {Address} address\n * @param {Scalar} randomizer\n * @returns {Ciphertext}\n */\n encrypt(address, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(address, Address);\n _assertClass(randomizer, Scalar);\n wasm.plaintext_encrypt(retptr, this.__wbg_ptr, address.__wbg_ptr, randomizer.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the field array representation of the plaintext.\n *\n * @returns {Array} The field array representation of the plaintext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Attempt to convert the plaintext to a JS object.\n *\n * @returns {Object} The JS object representation of the plaintext.\n * @returns {any}\n */\n toObject() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toObject(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the string representation of the plaintext.\n *\n * @returns {string} The string representation of the plaintext.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst Poseidon2Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_poseidon2_free(ptr >>> 0, 1));\n\nclass Poseidon2 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Poseidon2.prototype);\n obj.__wbg_ptr = ptr;\n Poseidon2Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Poseidon2Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_poseidon2_free(ptr, 0);\n }\n /**\n * Returns the Poseidon hash with an input rate of 2 on the affine curve.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the Poseidon hash with an input rate of 2 on the scalar field.\n * @param {Array<any>} input\n * @returns {Scalar}\n */\n hashToScalar(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hashToScalar(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 2.\n */\n constructor() {\n const ret = wasm.poseidon2_new();\n this.__wbg_ptr = ret >>> 0;\n Poseidon2Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Poseidon hash with an input rate of 2.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 2 and a custom domain separator.\n * @param {string} domain_separator\n * @returns {Poseidon2}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.poseidon2_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Poseidon2.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the extended Poseidon hash with an input rate of 2.\n * @param {Array<any>} input\n * @param {number} num_outputs\n * @returns {Array<any>}\n */\n hashMany(input, num_outputs) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hashMany(retptr, this.__wbg_ptr, addHeapObject(input), num_outputs);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst Poseidon4Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_poseidon4_free(ptr >>> 0, 1));\n\nclass Poseidon4 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Poseidon4.prototype);\n obj.__wbg_ptr = ptr;\n Poseidon4Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Poseidon4Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_poseidon4_free(ptr, 0);\n }\n /**\n * Returns the Poseidon hash with an input rate of 4 on the affine curve.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the Poseidon hash with an input rate of 4 on the scalar field.\n * @param {Array<any>} input\n * @returns {Scalar}\n */\n hashToScalar(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hashToScalar(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 4.\n */\n constructor() {\n const ret = wasm.poseidon4_new();\n this.__wbg_ptr = ret >>> 0;\n Poseidon4Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Poseidon hash with an input rate of 4.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 4 and a custom domain separator.\n * @param {string} domain_separator\n * @returns {Poseidon4}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.poseidon4_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Poseidon4.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the extended Poseidon hash with an input rate of 4.\n * @param {Array<any>} input\n * @param {number} num_outputs\n * @returns {Array<any>}\n */\n hashMany(input, num_outputs) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hashMany(retptr, this.__wbg_ptr, addHeapObject(input), num_outputs);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst Poseidon8Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_poseidon8_free(ptr >>> 0, 1));\n\nclass Poseidon8 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Poseidon8.prototype);\n obj.__wbg_ptr = ptr;\n Poseidon8Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Poseidon8Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_poseidon8_free(ptr, 0);\n }\n /**\n * Returns the Poseidon hash with an input rate of 8 on the affine curve.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the Poseidon hash with an input rate of 8 on the scalar field.\n * @param {Array<any>} input\n * @returns {Scalar}\n */\n hashToScalar(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hashToScalar(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 8.\n */\n constructor() {\n const ret = wasm.poseidon8_new();\n this.__wbg_ptr = ret >>> 0;\n Poseidon8Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Poseidon hash with an input rate of 8.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 8 and a custom domain separator.\n * @param {string} domain_separator\n * @returns {Poseidon8}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.poseidon8_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Poseidon8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the extended Poseidon hash with an input rate of 8.\n * @param {Array<any>} input\n * @param {number} num_outputs\n * @returns {Array<any>}\n */\n hashMany(input, num_outputs) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hashMany(retptr, this.__wbg_ptr, addHeapObject(input), num_outputs);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst PrivateKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_privatekey_free(ptr >>> 0, 1));\n/**\n * Private key of an Aleo account\n */\nclass PrivateKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(PrivateKey.prototype);\n obj.__wbg_ptr = ptr;\n PrivateKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n PrivateKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_privatekey_free(ptr, 0);\n }\n /**\n * Sign an instance of a valid Aleo data type or record.\n *\n * @param {String} message The string representation of the Aleo datatype or record to sign.\n * @returns {Signature} Signature of the message.\n * @param {string} message\n * @returns {Signature}\n */\n signValue(message) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_signValue(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the address corresponding to the private key\n *\n * @returns {Address}\n * @returns {Address}\n */\n to_address() {\n const ret = wasm.privatekey_to_address(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Get a private key from a string representation of a private key\n *\n * @param {string} seed String representation of a private key\n * @returns {PrivateKey}\n * @param {string} private_key\n * @returns {PrivateKey}\n */\n static from_string(private_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(private_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_from_string(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the view key corresponding to the private key\n *\n * @returns {ViewKey}\n * @returns {ViewKey}\n */\n to_view_key() {\n const ret = wasm.privatekey_to_view_key(this.__wbg_ptr);\n return ViewKey.__wrap(ret);\n }\n /**\n * Get a new randomly generated private key ciphertext using a secret. The secret is sensitive\n * and will be needed to decrypt the private key later, so it should be stored securely\n *\n * @param {string} secret Secret used to encrypt the private key\n * @returns {PrivateKeyCiphertext} Ciphertext representation of the private key\n * @param {string} secret\n * @returns {PrivateKeyCiphertext}\n */\n static newEncrypted(secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_newEncrypted(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt an existing private key with a secret. The secret is sensitive and will be needed to\n * decrypt the private key later, so it should be stored securely\n *\n * @param {string} secret Secret used to encrypt the private key\n * @returns {PrivateKeyCiphertext} Ciphertext representation of the private key\n * @param {string} secret\n * @returns {PrivateKeyCiphertext}\n */\n toCiphertext(secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_toCiphertext(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a private key from a series of unchecked bytes\n *\n * @param {Uint8Array} seed Unchecked 32 byte long Uint8Array acting as the seed for the private key\n * @returns {PrivateKey}\n * @param {Uint8Array} seed\n * @returns {PrivateKey}\n */\n static from_seed_unchecked(seed) {\n const ptr0 = passArray8ToWasm0(seed, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.privatekey_from_seed_unchecked(ptr0, len0);\n return PrivateKey.__wrap(ret);\n }\n /**\n * Get private key from a private key ciphertext and secret originally used to encrypt it\n *\n * @param {PrivateKeyCiphertext} ciphertext Ciphertext representation of the private key\n * @param {string} secret Secret originally used to encrypt the private key\n * @returns {PrivateKey} Private key\n * @param {PrivateKeyCiphertext} ciphertext\n * @param {string} secret\n * @returns {PrivateKey}\n */\n static fromPrivateKeyCiphertext(ciphertext, secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(ciphertext, PrivateKeyCiphertext);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_fromPrivateKeyCiphertext(retptr, ciphertext.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Generate a new private key using a cryptographically secure random number generator\n *\n * @returns {PrivateKey}\n */\n constructor() {\n const ret = wasm.privatekey_new();\n this.__wbg_ptr = ret >>> 0;\n PrivateKeyFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Sign a message with the private key\n *\n * @param {Uint8Array} Byte array representing a message signed by the address\n * @returns {Signature} Signature generated by signing the message with the address\n * @param {Uint8Array} message\n * @returns {Signature}\n */\n sign(message) {\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.privatekey_sign(this.__wbg_ptr, ptr0, len0);\n return Signature.__wrap(ret);\n }\n /**\n * Get a string representation of the private key. This function should be used very carefully\n * as it exposes the private key plaintext\n *\n * @returns {string} String representation of a private key\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.privatekey_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst PrivateKeyCiphertextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_privatekeyciphertext_free(ptr >>> 0, 1));\n/**\n * Private Key in ciphertext form\n */\nclass PrivateKeyCiphertext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(PrivateKeyCiphertext.prototype);\n obj.__wbg_ptr = ptr;\n PrivateKeyCiphertextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n PrivateKeyCiphertextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_privatekeyciphertext_free(ptr, 0);\n }\n /**\n * Creates a PrivateKeyCiphertext from a string\n *\n * @param {string} ciphertext Ciphertext string\n * @returns {PrivateKeyCiphertext} Private key ciphertext\n * @param {string} ciphertext\n * @returns {PrivateKeyCiphertext}\n */\n static fromString(ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(ciphertext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekeyciphertext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt a private key using a secret string. The secret is sensitive and will be needed to\n * decrypt the private key later, so it should be stored securely\n *\n * @param {PrivateKey} private_key Private key to encrypt\n * @param {string} secret Secret to encrypt the private key with\n * @returns {PrivateKeyCiphertext} Private key ciphertext\n * @param {PrivateKey} private_key\n * @param {string} secret\n * @returns {PrivateKeyCiphertext}\n */\n static encryptPrivateKey(private_key, secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_toCiphertext(retptr, private_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a private ciphertext using a secret string. This must be the same secret used to\n * encrypt the private key\n *\n * @param {string} secret Secret used to encrypt the private key\n * @returns {PrivateKey} Private key\n * @param {string} secret\n * @returns {PrivateKey}\n */\n decryptToPrivateKey(secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekeyciphertext_decryptToPrivateKey(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the ciphertext string\n *\n * @returns {string} Ciphertext string\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ProgramFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_program_free(ptr >>> 0, 1));\n/**\n * Webassembly Representation of an Aleo program\n */\nclass Program {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Program.prototype);\n obj.__wbg_ptr = ptr;\n ProgramFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProgramFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_program_free(ptr, 0);\n }\n /**\n * Create a program from a program string\n *\n * @param {string} program Aleo program source code\n * @returns {Program} Program object\n * @param {string} program\n * @returns {Program}\n */\n static fromString(program) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Program.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get program_imports\n *\n * @returns {Array} The program imports\n *\n * @example\n *\n * const DOUBLE_TEST = \"import multiply_test.aleo;\n *\n * program double_test.aleo;\n *\n * function double_it:\n * input r0 as u32.private;\n * call multiply_test.aleo/multiply 2u32 r0 into r1;\n * output r1 as u32.private;\";\n *\n * const expected_imports = [\n * \"multiply_test.aleo\"\n * ];\n *\n * const program = aleo_wasm.Program.fromString(DOUBLE_TEST_PROGRAM);\n * const imports = program.getImports();\n * console.log(imports === expected_imports); // Output should be \"true\"\n * @returns {Array<any>}\n */\n getImports() {\n const ret = wasm.program_getImports(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a the list of a program's mappings and the names/types of their keys and values.\n *\n * @returns {Array} - An array of objects representing the mappings in the program\n * @example\n * const expected_mappings = [\n * {\n * name: \"account\",\n * key_name: \"owner\",\n * key_type: \"address\",\n * value_name: \"microcredits\",\n * value_type: \"u64\"\n * }\n * ]\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const credits_mappings = credits_program.getMappings();\n * console.log(credits_mappings === expected_mappings); // Output should be \"true\"\n * @returns {Array<any>}\n */\n getMappings() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_getMappings(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Determine if a function is present in the program\n *\n * @param {string} functionName Name of the function to check for\n * @returns {boolean} True if the program is valid, false otherwise\n * @param {string} function_name\n * @returns {boolean}\n */\n hasFunction(function_name) {\n const ptr0 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.program_hasFunction(this.__wbg_ptr, ptr0, len0);\n return ret !== 0;\n }\n /**\n * Get javascript array of functions names in the program\n *\n * @returns {Array} Array of all function names present in the program\n *\n * @example\n * const expected_functions = [\n * \"mint\",\n * \"transfer_private\",\n * \"transfer_private_to_public\",\n * \"transfer_public\",\n * \"transfer_public_to_private\",\n * \"join\",\n * \"split\",\n * \"fee\"\n * ]\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const credits_functions = credits_program.getFunctions();\n * console.log(credits_functions === expected_functions); // Output should be \"true\"\n * @returns {Array<any>}\n */\n getFunctions() {\n const ret = wasm.program_getFunctions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a javascript object representation of a program record and its types\n *\n * @param {string} record_name Name of the record to get members for\n * @returns {Object} Object containing the record name, type, and members\n *\n * @example\n *\n * const expected_record = {\n * type: \"record\",\n * record: \"Credits\",\n * members: [\n * {\n * name: \"owner\",\n * type: \"address\",\n * visibility: \"private\"\n * },\n * {\n * name: \"microcredits\",\n * type: \"u64\",\n * visibility: \"private\"\n * }\n * ];\n * };\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const credits_record = credits_program.getRecordMembers(\"Credits\");\n * console.log(credits_record === expected_record); // Output should be \"true\"\n * @param {string} record_name\n * @returns {object}\n */\n getRecordMembers(record_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(record_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_getRecordMembers(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a javascript object representation of a program struct and its types\n *\n * @param {string} struct_name Name of the struct to get members for\n * @returns {Array} Array containing the struct members\n *\n * @example\n *\n * const STRUCT_PROGRAM = \"program token_issue.aleo;\n *\n * struct token_metadata:\n * network as u32;\n * version as u32;\n *\n * struct token:\n * token_id as u32;\n * metadata as token_metadata;\n *\n * function no_op:\n * input r0 as u64;\n * output r0 as u64;\"\n *\n * const expected_struct_members = [\n * {\n * name: \"token_id\",\n * type: \"u32\",\n * },\n * {\n * name: \"metadata\",\n * type: \"struct\",\n * struct_id: \"token_metadata\",\n * members: [\n * {\n * name: \"network\",\n * type: \"u32\",\n * }\n * {\n * name: \"version\",\n * type: \"u32\",\n * }\n * ]\n * }\n * ];\n *\n * const program = aleo_wasm.Program.fromString(STRUCT_PROGRAM);\n * const struct_members = program.getStructMembers(\"token\");\n * console.log(struct_members === expected_struct_members); // Output should be \"true\"\n * @param {string} struct_name\n * @returns {Array<any>}\n */\n getStructMembers(struct_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(struct_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_getStructMembers(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the credits.aleo program\n *\n * @returns {Program} The credits.aleo program\n * @returns {Program}\n */\n static getCreditsProgram() {\n const ret = wasm.program_getCreditsProgram();\n return Program.__wrap(ret);\n }\n /**\n * Get a javascript object representation of the function inputs and types. This can be used\n * to generate a web form to capture user inputs for an execution of a function.\n *\n * @param {string} function_name Name of the function to get inputs for\n * @returns {Array} Array of function inputs\n *\n * @example\n * const expected_inputs = [\n * {\n * type:\"record\",\n * visibility:\"private\",\n * record:\"credits\",\n * members:[\n * {\n * name:\"microcredits\",\n * type:\"u64\",\n * visibility:\"private\"\n * }\n * ],\n * register:\"r0\"\n * },\n * {\n * type:\"address\",\n * visibility:\"private\",\n * register:\"r1\"\n * },\n * {\n * type:\"u64\",\n * visibility:\"private\",\n * register:\"r2\"\n * }\n * ];\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const transfer_function_inputs = credits_program.getFunctionInputs(\"transfer_private\");\n * console.log(transfer_function_inputs === expected_inputs); // Output should be \"true\"\n * @param {string} function_name\n * @returns {Array<any>}\n */\n getFunctionInputs(function_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_getFunctionInputs(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the id of the program\n *\n * @returns {string} The id of the program\n * @returns {string}\n */\n id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get a unique address of the program\n *\n * @returns {Address} The address of the program\n * @returns {Address}\n */\n address() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_address(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Determine equality with another program\n *\n * @param {Program} other The other program to compare\n * @returns {boolean} True if the programs are equal, false otherwise\n * @param {Program} other\n * @returns {boolean}\n */\n isEqual(other) {\n _assertClass(other, Program);\n const ret = wasm.program_isEqual(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get a string representation of the program\n *\n * @returns {string} String containing the program source code\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ProgramManagerFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_programmanager_free(ptr >>> 0, 1));\n\nclass ProgramManager {\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProgramManagerFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_programmanager_free(ptr, 0);\n }\n /**\n * Synthesize proving and verifying keys for a program\n *\n * @param {string} program The program source code of the program to synthesize keys for\n * @param {string} function_id The function to synthesize keys for\n * @param {Array} inputs The inputs to the function\n * @param {Object | undefined} imports The imports for the program\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_id\n * @param {Array<any>} inputs\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {Promise<KeyPair>}\n */\n static synthesizeKeyPair(private_key, program, function_id, inputs, imports, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_synthesizeKeyPair(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * @param {ProvingKey} proving_key\n */\n static loadInclusionProver(proving_key) {\n _assertClass(proving_key, ProvingKey);\n var ptr0 = proving_key.__destroy_into_raw();\n wasm.programmanager_loadInclusionProver(ptr0);\n }\n /**\n * Create a `ProvingRequest` object. This object creates authorizations for the top level\n * function and associated fee function. This object can be sent directly to a remote prover\n * OR used to extract both execution and fee authorizations.\n *\n * @param private_key The private key of the signer.\n * @param program The program source code containing the function to authorize.\n * @param function_name The function to authorize.\n * @param inputs A javascript array of inputs to the function.\n * @param base_fee_credits The base fee to be paid for the authorization\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param imports The imports to the program in the format {\"programname.aleo\":\"aleo instructions source code\"}.\n * @param url The url of the Aleo network node to send the transaction to\n * @param broadcast (optional) Flag to indicate if the transaction should be broadcast\n * @returns {Authorization}\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {number} base_fee_credits\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null | undefined} fee_record\n * @param {object | null | undefined} imports\n * @param {boolean} broadcast\n * @param {boolean} unchecked\n * @param {number | null} [edition]\n * @returns {Promise<ProvingRequest>}\n */\n static buildProvingRequest(private_key, program, function_name, inputs, base_fee_credits, priority_fee_credits, fee_record, imports, broadcast, unchecked, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr2 = fee_record.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildProvingRequest(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), base_fee_credits, priority_fee_credits, ptr2, isLikeNone(imports) ? 0 : addHeapObject(imports), broadcast, unchecked, isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Join two records together to create a new record with an amount of credits equal to the sum\n * of the credits of the two original records\n *\n * @param private_key The private key of the sender\n * @param record_1 The first record to combine\n * @param record_2 The second record to combine\n * @param priority_fee_credits The opptional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * @param join_proving_key (optional) Provide a proving key to use for the join function\n * @param join_verifying_key (optional) Provide a verifying key to use for the join function\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @returns {Transaction} Transaction object\n * @param {PrivateKey} private_key\n * @param {RecordPlaintext} record_1\n * @param {RecordPlaintext} record_2\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {ProvingKey | null} [join_proving_key]\n * @param {VerifyingKey | null} [join_verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildJoinTransaction(private_key, record_1, record_2, priority_fee_credits, fee_record, url, join_proving_key, join_verifying_key, fee_proving_key, fee_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n _assertClass(record_1, RecordPlaintext);\n var ptr0 = record_1.__destroy_into_raw();\n _assertClass(record_2, RecordPlaintext);\n var ptr1 = record_2.__destroy_into_raw();\n let ptr2 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr2 = fee_record.__destroy_into_raw();\n }\n var ptr3 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len3 = WASM_VECTOR_LEN;\n let ptr4 = 0;\n if (!isLikeNone(join_proving_key)) {\n _assertClass(join_proving_key, ProvingKey);\n ptr4 = join_proving_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(join_verifying_key)) {\n _assertClass(join_verifying_key, VerifyingKey);\n ptr5 = join_verifying_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr6 = fee_proving_key.__destroy_into_raw();\n }\n let ptr7 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr7 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr8 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr8 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildJoinTransaction(private_key.__wbg_ptr, ptr0, ptr1, priority_fee_credits, ptr2, ptr3, len3, ptr4, ptr5, ptr6, ptr7, ptr8);\n return takeObject(ret);\n }\n /**\n * Split an Aleo credits record into two separate records. This function does not require a fee.\n *\n * @param private_key The private key of the sender\n * @param split_amount The amount of the credit split. This amount will be subtracted from the\n * value of the record and two new records will be created with the split amount and the remainder\n * @param amount_record The record to split\n * @param url The url of the Aleo network node to send the transaction to\n * @param split_proving_key (optional) Provide a proving key to use for the split function\n * @param split_verifying_key (optional) Provide a verifying key to use for the split function\n * @returns {Transaction} Transaction object\n * @param {PrivateKey} private_key\n * @param {number} split_amount\n * @param {RecordPlaintext} amount_record\n * @param {string | null} [url]\n * @param {ProvingKey | null} [split_proving_key]\n * @param {VerifyingKey | null} [split_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildSplitTransaction(private_key, split_amount, amount_record, url, split_proving_key, split_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n _assertClass(amount_record, RecordPlaintext);\n var ptr0 = amount_record.__destroy_into_raw();\n var ptr1 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(split_proving_key)) {\n _assertClass(split_proving_key, ProvingKey);\n ptr2 = split_proving_key.__destroy_into_raw();\n }\n let ptr3 = 0;\n if (!isLikeNone(split_verifying_key)) {\n _assertClass(split_verifying_key, VerifyingKey);\n ptr3 = split_verifying_key.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr4 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildSplitTransaction(private_key.__wbg_ptr, split_amount, ptr0, ptr1, len1, ptr2, ptr3, ptr4);\n return takeObject(ret);\n }\n /**\n * Estimate the component of the deployment cost which comes from the fee for the program name.\n * Note that this cost does not represent the entire cost of deployment. It is additional to\n * the cost of the size (in bytes) of the deployment.\n *\n * Disclaimer: Fee estimation is experimental and may not represent a correct estimate on any current or future network\n *\n * @param name The name of the program to be deployed\n * @returns {u64}\n * @param {string} name\n * @returns {bigint}\n */\n static estimateProgramNameCost(name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateProgramNameCost(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Estimate the fee for a program deployment\n *\n * Disclaimer: Fee estimation is experimental and may not represent a correct estimate on any current or future network\n *\n * @param program The source code of the program being deployed\n * @param imports (optional) Provide a list of imports to use for the deployment fee estimation\n * in the form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @returns {u64}\n * @param {string} program\n * @param {object | null} [imports]\n * @returns {Promise<bigint>}\n */\n static estimateDeploymentFee(program, imports) {\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_estimateDeploymentFee(ptr0, len0, isLikeNone(imports) ? 0 : addHeapObject(imports));\n return takeObject(ret);\n }\n /**\n * Deploy an Aleo program\n *\n * @param private_key The private key of the sender\n * @param program The source code of the program being deployed\n * @param imports A javascript object holding the source code of any imported programs in the\n * form \\{\"program_name1\": \"program_source_code\", \"program_name2\": \"program_source_code\", ..\\}.\n * Note that all imported programs must be deployed on chain before the main program in order\n * for the deployment to succeed\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * @param imports (optional) Provide a list of imports to use for the program deployment in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @returns {Transaction}\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {object | null} [imports]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildDeploymentTransaction(private_key, program, priority_fee_credits, fee_record, url, imports, fee_proving_key, fee_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n let ptr1 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr1 = fee_record.__destroy_into_raw();\n }\n var ptr2 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len2 = WASM_VECTOR_LEN;\n let ptr3 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr3 = fee_proving_key.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr4 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr5 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildDeploymentTransaction(private_key.__wbg_ptr, ptr0, len0, priority_fee_credits, ptr1, ptr2, len2, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr3, ptr4, ptr5);\n return takeObject(ret);\n }\n /**\n * Estimate the finalize fee component for executing a function. This fee is additional to the\n * size of the execution of the program in bytes. If the function does not have a finalize\n * step, then the finalize fee is 0.\n *\n * Disclaimer: Fee estimation is experimental and may not represent a correct estimate on any current or future network\n *\n * @param program The program containing the function to estimate the finalize fee for\n * @param function The function to estimate the finalize fee for\n * @returns {u64} Fee in microcredits\n * @param {string} program\n * @param {string} _function\n * @returns {bigint}\n */\n static estimateFinalizeFee(program, _function) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateFinalizeFee(retptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Execute an authorization.\n *\n * @param authorization The authorization to execute.\n * @param fee_authorization The fee authorization to execute.\n * @param program The program authorized to be executed.\n * @param imports The imports of the program being executed.\n * @param url The url to get the inclusion proving information from.\n * @param offline_query Optional offline query object if building a Transaction offline.\n * @param {Authorization} authorization\n * @param {Authorization | null | undefined} fee_authorization\n * @param {string} program\n * @param {ProvingKey | null} [proving_key]\n * @param {VerifyingKey | null} [verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {object | null} [imports]\n * @param {string | null} [url]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static executeAuthorization(authorization, fee_authorization, program, proving_key, verifying_key, fee_proving_key, fee_verifying_key, imports, url, offline_query) {\n _assertClass(authorization, Authorization);\n var ptr0 = authorization.__destroy_into_raw();\n let ptr1 = 0;\n if (!isLikeNone(fee_authorization)) {\n _assertClass(fee_authorization, Authorization);\n ptr1 = fee_authorization.__destroy_into_raw();\n }\n const ptr2 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n let ptr3 = 0;\n if (!isLikeNone(proving_key)) {\n _assertClass(proving_key, ProvingKey);\n ptr3 = proving_key.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(verifying_key)) {\n _assertClass(verifying_key, VerifyingKey);\n ptr4 = verifying_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr5 = fee_proving_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr6 = fee_verifying_key.__destroy_into_raw();\n }\n var ptr7 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len7 = WASM_VECTOR_LEN;\n let ptr8 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr8 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_executeAuthorization(ptr0, ptr1, ptr2, len2, ptr3, ptr4, ptr5, ptr6, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr7, len7, ptr8);\n return takeObject(ret);\n }\n /**\n * Estimate Fee for Aleo function execution. Note if \"cache\" is set to true, the proving and\n * verifying keys will be stored in the ProgramManager's memory and used for subsequent\n * program executions.\n *\n * @param program The source code of the program to estimate the execution fee for.\n * @param function The name of the function to estimate the execution fee for.\n * @param imports (optional) Provide a list of imports to use for the fee estimation in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param edition {\n * @returns {u64} Fee in microcredits\n * @param {string} program\n * @param {string} _function\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {bigint}\n */\n static estimateExecutionFee(program, _function, imports, edition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateExecutionFee(retptr, ptr0, len0, ptr1, len1, isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Execute an arbitrary function locally\n *\n * @param {PrivateKey} private_key The private key of the sender\n * @param {string} program The source code of the program being executed\n * @param {string} function The name of the function to execute\n * @param {Array} inputs A javascript array of inputs to the function\n * @param {boolean} prove_execution If true, the execution will be proven and an execution object\n * containing the proof and the encrypted inputs and outputs needed to verify the proof offline\n * will be returned.\n * @param {boolean} cache Cache the proving and verifying keys in the Execution response.\n * If this is set to 'true' the keys synthesized will be stored in the Execution Response\n * and the `ProvingKey` and `VerifyingKey` can be retrieved from the response via the `.getKeys()`\n * method.\n * @param {Object | undefined} imports (optional) Provide a list of imports to use for the function execution in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param {ProvingKey | undefined} proving_key (optional) Provide a verifying key to use for the function execution\n * @param {VerifyingKey | undefined} verifying_key (optional) Provide a verifying key to use for the function execution\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} _function\n * @param {Array<any>} inputs\n * @param {boolean} prove_execution\n * @param {boolean} cache\n * @param {object | null} [imports]\n * @param {ProvingKey | null} [proving_key]\n * @param {VerifyingKey | null} [verifying_key]\n * @param {string | null} [url]\n * @param {OfflineQuery | null} [offline_query]\n * @param {number | null} [edition]\n * @returns {Promise<ExecutionResponse>}\n */\n static executeFunctionOffline(private_key, program, _function, inputs, prove_execution, cache, imports, proving_key, verifying_key, url, offline_query, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(proving_key)) {\n _assertClass(proving_key, ProvingKey);\n ptr2 = proving_key.__destroy_into_raw();\n }\n let ptr3 = 0;\n if (!isLikeNone(verifying_key)) {\n _assertClass(verifying_key, VerifyingKey);\n ptr3 = verifying_key.__destroy_into_raw();\n }\n var ptr4 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len4 = WASM_VECTOR_LEN;\n let ptr5 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr5 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_executeFunctionOffline(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), prove_execution, cache, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr2, ptr3, ptr4, len4, ptr5, isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Estimate Fee for an Authorization.\n *\n * @param authorization Authorization to estimate the fee for.\n * @param program The program the Authorization is for.\n * @param imports Provide a list of imports to use for the fee estimation in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param offline_query The offline query object used to insert the global state root and state paths needed to create\n * a valid inclusion proof offline.\n * @param edition: Optional edition to estimate the fee for.\n * @returns {u64} Fee in microcredits\n * @param {Authorization} authorization\n * @param {string} program\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {bigint}\n */\n static estimateFeeForAuthorization(authorization, program, imports, edition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(authorization, Authorization);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateFeeForAuthorization(retptr, authorization.__wbg_ptr, ptr0, len0, isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Execute Aleo function and create an Aleo execution transaction\n *\n * @param private_key The private key of the sender\n * @param program The source code of the program being executed\n * @param function The name of the function to execute\n * @param inputs A javascript array of inputs to the function\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * If this is set to 'true' the keys synthesized (or passed in as optional parameters via the\n * `proving_key` and `verifying_key` arguments) will be stored in the ProgramManager's memory\n * and used for subsequent transactions. If this is set to 'false' the proving and verifying\n * keys will be deallocated from memory after the transaction is executed.\n * @param imports (optional) Provide a list of imports to use for the function execution in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param proving_key (optional) Provide a verifying key to use for the function execution\n * @param verifying_key (optional) Provide a verifying key to use for the function execution\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @param offline_query An offline query object to use if building a transaction without an internet connection.\n * @param edition The edition of the program to execute. Defaults to the latest found on the network, or 1 if the program does not exist on the network.\n * @returns {Transaction}\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} _function\n * @param {Array<any>} inputs\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {object | null} [imports]\n * @param {ProvingKey | null} [proving_key]\n * @param {VerifyingKey | null} [verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @param {number | null} [edition]\n * @returns {Promise<Transaction>}\n */\n static buildExecutionTransaction(private_key, program, _function, inputs, priority_fee_credits, fee_record, url, imports, proving_key, verifying_key, fee_proving_key, fee_verifying_key, offline_query, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr2 = fee_record.__destroy_into_raw();\n }\n var ptr3 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len3 = WASM_VECTOR_LEN;\n let ptr4 = 0;\n if (!isLikeNone(proving_key)) {\n _assertClass(proving_key, ProvingKey);\n ptr4 = proving_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(verifying_key)) {\n _assertClass(verifying_key, VerifyingKey);\n ptr5 = verifying_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr6 = fee_proving_key.__destroy_into_raw();\n }\n let ptr7 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr7 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr8 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr8 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildExecutionTransaction(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), priority_fee_credits, ptr2, ptr3, len3, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr4, ptr5, ptr6, ptr7, ptr8, isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Send credits from one Aleo account to another\n *\n * @param private_key The private key of the sender\n * @param amount_credits The amount of credits to send\n * @param recipient The recipient of the transaction\n * @param transfer_type The type of the transfer (options: \"private\", \"public\", \"private_to_public\", \"public_to_private\")\n * @param amount_record The record to fund the amount from\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * @param transfer_verifying_key (optional) Provide a verifying key to use for the transfer\n * function\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @returns {Transaction}\n * @param {PrivateKey} private_key\n * @param {number} amount_credits\n * @param {string} recipient\n * @param {string} transfer_type\n * @param {RecordPlaintext | null | undefined} amount_record\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {ProvingKey | null} [transfer_proving_key]\n * @param {VerifyingKey | null} [transfer_verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildTransferTransaction(private_key, amount_credits, recipient, transfer_type, amount_record, priority_fee_credits, fee_record, url, transfer_proving_key, transfer_verifying_key, fee_proving_key, fee_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(recipient, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(transfer_type, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(amount_record)) {\n _assertClass(amount_record, RecordPlaintext);\n ptr2 = amount_record.__destroy_into_raw();\n }\n let ptr3 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr3 = fee_record.__destroy_into_raw();\n }\n var ptr4 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len4 = WASM_VECTOR_LEN;\n let ptr5 = 0;\n if (!isLikeNone(transfer_proving_key)) {\n _assertClass(transfer_proving_key, ProvingKey);\n ptr5 = transfer_proving_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(transfer_verifying_key)) {\n _assertClass(transfer_verifying_key, VerifyingKey);\n ptr6 = transfer_verifying_key.__destroy_into_raw();\n }\n let ptr7 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr7 = fee_proving_key.__destroy_into_raw();\n }\n let ptr8 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr8 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr9 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr9 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildTransferTransaction(private_key.__wbg_ptr, amount_credits, ptr0, len0, ptr1, len1, ptr2, priority_fee_credits, ptr3, ptr4, len4, ptr5, ptr6, ptr7, ptr8, ptr9);\n return takeObject(ret);\n }\n /**\n * Create an `Authorization` for `credits.aleo/fee_public` or `credits.aleo/fee_private`.\n * This object requires an associated execution or deployment ID. This can be gained from\n * any previously created authorization by calling (authorization.toExecutionId()).\n *\n * @param private_key The private key of the signer.\n * @param deployment_or_execution_id The id of the deployment or execution to authorize the fee program for.\n * @param base_fee_credits The base fee to be paid for the authorization\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @returns {Authorization}\n * @param {PrivateKey} private_key\n * @param {string} deployment_or_execution_id\n * @param {number} base_fee_credits\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @returns {Promise<Authorization>}\n */\n static authorizeFee(private_key, deployment_or_execution_id, base_fee_credits, priority_fee_credits, fee_record) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(deployment_or_execution_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n let ptr1 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr1 = fee_record.__destroy_into_raw();\n }\n const ret = wasm.programmanager_authorizeFee(private_key.__wbg_ptr, ptr0, len0, base_fee_credits, priority_fee_credits, ptr1);\n return takeObject(ret);\n }\n /**\n * Create an execution `Authorization` without generating a circuit. Use this function when\n * fast delegated proving is needed.\n *\n * @param private_key The private key of the signer.\n * @param program The program source code containing the function to authorize.\n * @param function_name The function to authorize.\n * @param inputs A javascript array of inputs to the function.\n * @param imports The imports to the program in the format {\"programname.aleo\":\"aleo instructions source code\"}.\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {Promise<Authorization>}\n */\n static buildAuthorizationUnchecked(private_key, program, function_name, inputs, imports, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_buildAuthorizationUnchecked(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Create an execution `Authorization` for a given program:function tuple with specified inputs.\n *\n * @param private_key The private key of the signer.\n * @param program The program source code containing the function to authorize.\n * @param function_name The function to authorize.\n * @param inputs A javascript array of inputs to the function.\n * @param imports The imports to the program in the format {\"programname.aleo\":\"aleo instructions source code\"}.\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {Promise<Authorization>}\n */\n static authorize(private_key, program, function_name, inputs, imports, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_authorize(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n}\n\nconst ProvingKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_provingkey_free(ptr >>> 0, 1));\n/**\n * Proving key for a function within an Aleo program\n */\nclass ProvingKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ProvingKey.prototype);\n obj.__wbg_ptr = ptr;\n ProvingKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProvingKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_provingkey_free(ptr, 0);\n }\n /**\n * Construct a new proving key from a byte array\n *\n * @param {Uint8Array} bytes Byte array representation of a proving key\n * @returns {ProvingKey}\n * @param {Uint8Array} bytes\n * @returns {ProvingKey}\n */\n static fromBytes(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.provingkey_fromBytes(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a proving key from string\n *\n * @param {string} String representation of the proving key\n * @param {string} string\n * @returns {ProvingKey}\n */\n static fromString(string) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(string, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.provingkey_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a copy of the proving key\n *\n * @returns {ProvingKey} A copy of the proving key\n * @returns {ProvingKey}\n */\n copy() {\n const ret = wasm.provingkey_copy(this.__wbg_ptr);\n return ProvingKey.__wrap(ret);\n }\n /**\n * Return the checksum of the proving key\n *\n * @returns {string} Checksum of the proving key\n * @returns {string}\n */\n checksum() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingkey_checksum(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Return the byte representation of a proving key\n *\n * @returns {Uint8Array} Byte array representation of a proving key\n * @returns {Uint8Array}\n */\n toBytes() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingkey_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v1 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 1, 1);\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of the proving key\n *\n * @returns {string} String representation of the proving key\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingkey_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Verify if the proving key is for the join function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"join_proving_key.bin\");\n * provingKey.isJoinProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the join function, false if otherwise\n * @returns {boolean}\n */\n isJoinProver() {\n const ret = wasm.provingkey_isJoinProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the split function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"split_proving_key.bin\");\n * provingKey.isSplitProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the split function, false if otherwise\n * @returns {boolean}\n */\n isSplitProver() {\n const ret = wasm.provingkey_isSplitProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the inclusion function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"inclusion_proving_key.bin\");\n * provingKey.isInclusionProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the inclusion function, false if otherwise\n * @returns {boolean}\n */\n isInclusionProver() {\n const ret = wasm.provingkey_isInclusionProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the fee_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"fee_public_proving_key.bin\");\n * provingKey.isFeePublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the fee_public function, false if otherwise\n * @returns {boolean}\n */\n isFeePublicProver() {\n const ret = wasm.provingkey_isFeePublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the bond_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"bond_public_proving_key.bin\");\n * provingKey.isBondPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the bond_public function, false if otherwise\n * @returns {boolean}\n */\n isBondPublicProver() {\n const ret = wasm.provingkey_isBondPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the fee_private function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"fee_private_proving_key.bin\");\n * provingKey.isFeePrivateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the fee_private function, false if otherwise\n * @returns {boolean}\n */\n isFeePrivateProver() {\n const ret = wasm.provingkey_isFeePrivateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the unbond_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"unbond_public.bin\");\n * provingKey.isUnbondPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the unbond_public_prover function, false if otherwise\n * @returns {boolean}\n */\n isUnbondPublicProver() {\n const ret = wasm.provingkey_isUnbondPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the bond_validator function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"bond_validator_proving_key.bin\");\n * provingKey.isBondPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the bond_validator function, false if otherwise\n * @returns {boolean}\n */\n isBondValidatorProver() {\n const ret = wasm.provingkey_isBondValidatorProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_public_proving_key.bin\");\n * provingKey.isTransferPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_public function, false if otherwise\n * @returns {boolean}\n */\n isTransferPublicProver() {\n const ret = wasm.provingkey_isTransferPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_private function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_private_proving_key.bin\");\n * provingKey.isTransferPrivateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_private function, false if otherwise\n * @returns {boolean}\n */\n isTransferPrivateProver() {\n const ret = wasm.provingkey_isTransferPrivateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the claim_unbond function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"claim_unbond_proving_key.bin\");\n * provingKey.isClaimUnbondProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the claim_unbond function, false if otherwise\n * @returns {boolean}\n */\n isClaimUnbondPublicProver() {\n const ret = wasm.provingkey_isClaimUnbondPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the set_validator_state function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"set_validator_set_proving_key.bin\");\n * provingKey.isSetValidatorStateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the set_validator_state function, false if otherwise\n * @returns {boolean}\n */\n isSetValidatorStateProver() {\n const ret = wasm.provingkey_isSetValidatorStateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_public_as_signer function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_public_as_signer_proving_key.bin\");\n * provingKey.isTransferPublicAsSignerProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_public function, false if otherwise\n * @returns {boolean}\n */\n isTransferPublicAsSignerProver() {\n const ret = wasm.provingkey_isTransferPublicAsSignerProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_private_to_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_private_to_public_proving_key.bin\");\n * provingKey.isTransferPrivateToPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_private_to_public function, false if otherwise\n * @returns {boolean}\n */\n isTransferPrivateToPublicProver() {\n const ret = wasm.provingkey_isTransferPrivateToPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_public_to_private function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_public_to_private_proving_key.bin\");\n * provingKey.isTransferPublicToPrivateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_public_to_private function, false if otherwise\n * @returns {boolean}\n */\n isTransferPublicToPrivateProver() {\n const ret = wasm.provingkey_isTransferPublicToPrivateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n}\n\nconst ProvingRequestFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_provingrequest_free(ptr >>> 0, 1));\n/**\n * Represents a proving request to a prover.\n */\nclass ProvingRequest {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ProvingRequest.prototype);\n obj.__wbg_ptr = ptr;\n ProvingRequestFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProvingRequestFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_provingrequest_free(ptr, 0);\n }\n /**\n * Creates a ProvingRequest from a string representation.\n *\n * @param {Uint8Array} request String representation of the ProvingRequest.\n * @param {string} request\n * @returns {ProvingRequest}\n */\n static fromString(request) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(request, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.provingrequest_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates a left-endian byte representation of the ProvingRequest.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingrequest_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the Authorization of the main function in the ProvingRequest.\n * @returns {Authorization}\n */\n authorization() {\n const ret = wasm.provingrequest_authorization(this.__wbg_ptr);\n return Authorization.__wrap(ret);\n }\n /**\n * Creates a ProvingRequest from a left-endian byte representation of the ProvingRequest.\n *\n * @param {Uint8Array} bytes Left-endian bytes representing the proving request.\n * @param {Uint8Array} bytes\n * @returns {ProvingRequest}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingrequest_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the fee Authorization in the ProvingRequest.\n * @returns {Authorization | undefined}\n */\n feeAuthorization() {\n const ret = wasm.provingrequest_feeAuthorization(this.__wbg_ptr);\n return ret === 0 ? undefined : Authorization.__wrap(ret);\n }\n /**\n * Creates a new ProvingRequest from a function Authorization and an optional fee Authorization.\n *\n * @param {Authorization} authorization An Authorization for a function.\n * @param {Authorization} fee_authorization The authorization for the `credits.aleo/fee_public` or `credits.aleo/fee_private` function that pays the fee for the execution of the main function.\n * @param {boolean} broadcast Flag that indicates whether the remote proving service should attempt to submit the transaction on the caller's behalf.\n * @param {Authorization} authorization\n * @param {Authorization | null | undefined} fee_authorization\n * @param {boolean} broadcast\n * @returns {ProvingRequest}\n */\n static new(authorization, fee_authorization, broadcast) {\n _assertClass(authorization, Authorization);\n var ptr0 = authorization.__destroy_into_raw();\n let ptr1 = 0;\n if (!isLikeNone(fee_authorization)) {\n _assertClass(fee_authorization, Authorization);\n ptr1 = fee_authorization.__destroy_into_raw();\n }\n const ret = wasm.provingrequest_new(ptr0, ptr1, broadcast);\n return ProvingRequest.__wrap(ret);\n }\n /**\n * Check if a ProvingRequest is the same as another ProvingRequest.\n * @param {ProvingRequest} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, ProvingRequest);\n const ret = wasm.provingrequest_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the broadcast flag set in the ProvingRequest.\n * @returns {boolean}\n */\n broadcast() {\n const ret = wasm.provingrequest_broadcast(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Creates a string representation of the ProvingRequest.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingrequest_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst RecordCiphertextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_recordciphertext_free(ptr >>> 0, 1));\n/**\n * Encrypted Aleo record\n */\nclass RecordCiphertext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(RecordCiphertext.prototype);\n obj.__wbg_ptr = ptr;\n RecordCiphertextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n static __unwrap(jsValue) {\n if (!(jsValue instanceof RecordCiphertext)) {\n return 0;\n }\n return jsValue.__destroy_into_raw();\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n RecordCiphertextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_recordciphertext_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the record ciphertext bits.\n *\n * returns {Array} Left endian boolean array representation of the bits of the record ciphertext.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.recordciphertext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Create a record ciphertext from a string\n *\n * @param {string} record String representation of a record ciphertext\n * @returns {RecordCiphertext} Record ciphertext\n * @param {string} record\n * @returns {RecordCiphertext}\n */\n static fromString(record) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(record, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.recordciphertext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the left endian byte array representation of the record ciphertext.\n *\n * @returns {Uint8Array} Left endian byte array representation of the record ciphertext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a record ciphertext object from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the record ciphertext.\n *\n * @returns {RecordCiphertext}\n * @param {Uint8Array} bytes\n * @returns {RecordCiphertext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Generate the record view key. The record view key can only decrypt record if the\n * supplied view key belongs to the record owner.\n *\n * @param {ViewKey} view_key View key used to generate the record view key\n *\n * @returns {Group} record view key\n * @param {ViewKey} view_key\n * @returns {Field}\n */\n recordViewKey(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.recordciphertext_recordViewKey(this.__wbg_ptr, view_key.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Decrypt the record ciphertext into plaintext using a record view key.\n *\n * @param {Field} record_vk Record view key used to decrypt the record.\n *\n * @returns {RecordPlaintext}\n * @param {Field} record_vk\n * @returns {RecordPlaintext}\n */\n decryptWithRecordViewKey(record_vk) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(record_vk, Field);\n var ptr0 = record_vk.__destroy_into_raw();\n wasm.recordciphertext_decryptWithRecordViewKey(retptr, this.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the tag of the record using the graph key.\n *\n * @param {GraphKey} graph key of the account associatd with the record.\n * @param {Field} commitment of the record.\n *\n * @returns {Field} tag of the record.\n * @param {GraphKey} graph_key\n * @param {Field} commitment\n * @returns {Field}\n */\n static tag(graph_key, commitment) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(graph_key, GraphKey);\n _assertClass(commitment, Field);\n var ptr0 = commitment.__destroy_into_raw();\n wasm.recordciphertext_tag(retptr, graph_key.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Clone the RecordCiphertext WASM object.\n *\n * @returns {RecordCiphertext} A clone of the RecordCiphertext WASM object.\n * @returns {RecordCiphertext}\n */\n clone() {\n const ret = wasm.recordciphertext_clone(this.__wbg_ptr);\n return RecordCiphertext.__wrap(ret);\n }\n /**\n * Get the record nonce.\n *\n * @returns {Group} The record nonce.\n * @returns {Group}\n */\n nonce() {\n const ret = wasm.recordciphertext_nonce(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Decrypt the record ciphertext into plaintext using the view key. The record will only\n * decrypt if the record was encrypted by the account corresponding to the view key\n *\n * @param {ViewKey} view_key View key used to decrypt the ciphertext\n * @returns {RecordPlaintext} Record plaintext object\n * @param {ViewKey} view_key\n * @returns {RecordPlaintext}\n */\n decrypt(view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n wasm.recordciphertext_decrypt(retptr, this.__wbg_ptr, view_key.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Determines if the account corresponding to the view key is the owner of the record\n *\n * @param {ViewKey} view_key View key used to decrypt the ciphertext\n * @returns {boolean}\n * @param {ViewKey} view_key\n * @returns {boolean}\n */\n isOwner(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.recordciphertext_isOwner(this.__wbg_ptr, view_key.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the field array representation of the record ciphertext.\n *\n * @returns {Array} Field array representation of the record ciphertext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Return the string representation of the record ciphertext\n *\n * @returns {string} String representation of the record ciphertext\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst RecordPlaintextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_recordplaintext_free(ptr >>> 0, 1));\n/**\n * Plaintext representation of an Aleo record\n */\nclass RecordPlaintext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(RecordPlaintext.prototype);\n obj.__wbg_ptr = ptr;\n RecordPlaintextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n RecordPlaintextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_recordplaintext_free(ptr, 0);\n }\n /**\n * @param {string} program_id\n * @param {string} record_name\n * @param {string} record_view_key\n * @returns {Field}\n */\n commitment(program_id, record_name, record_view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(record_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(record_view_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n wasm.recordplaintext_commitment(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the record entry matching a key.\n *\n * @param {string} input The key to retrieve the value in the record data field.\n *\n * @returns {Plaintext} The plaintext value corresponding to the key.\n * @param {string} input\n * @returns {Plaintext}\n */\n getMember(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.recordplaintext_getMember(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the left endian boolean array representation of the record plaintext bits.\n *\n * @returns {Array} Boolean array representation of the record plaintext bits.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.recordplaintext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Return a record plaintext from a string.\n *\n * @param {string} record String representation of a plaintext representation of an Aleo record.\n *\n * @returns {RecordPlaintext} Record plaintext\n * @param {string} record\n * @returns {RecordPlaintext}\n */\n static fromString(record) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(record, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.recordplaintext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the left endian byte array representation of the record plaintext.\n *\n * @returns {Uint8Array} Byte array representation of the record plaintext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the amount of microcredits in the record\n *\n * @returns {u64} Amount of microcredits in the record\n * @returns {bigint}\n */\n microcredits() {\n const ret = wasm.recordplaintext_microcredits(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Get a representation of a record as a javascript object for usage in client side\n * computations. Note that this is not a reversible operation and exists for the convenience\n * of discovering and using properties of the record.\n *\n * The conversion guide is as follows:\n * - u8, u16, u32, i8, i16 i32 --> Number\n * - u64, u128, i64, i128 --> BigInt\n * - Address, Field, Group, Scalar --> String.\n *\n * Address, Field, Group, and Scalar will all be converted to their bech32 string\n * representation. These string representations can be converted back to their respective wasm\n * types using the fromString method on the Address, Field, Group, and Scalar objects in this\n * library.\n *\n * @example\n * # Create a wasm record from a record string.\n * let record_plaintext_wasm = RecordPlainext.from_string(\"{\n * owner: aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48.private,\n * metadata: {\n * player1: aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48.private,\n * player2: aleo1dreuxnmg9cny8ee9v2u0wr4v4affnwm09u2pytfwz0f2en2shgqsdsfjn6.private,\n * nonce: 660310649780728486489183263981322848354071976582883879926426319832534836534field.private\n * },\n * id: 1953278585719525811355617404139099418855053112960441725284031425961000152405field.private,\n * positions: 50794271u64.private,\n * attempts: 0u64.private,\n * hits: 0u64.private,\n * _nonce: 5668100912391182624073500093436664635767788874314097667746354181784048204413group.public\n * }\");\n *\n * let expected_object = {\n * owner: \"aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48\",\n * metadata: {\n * player1: \"aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48\",\n * player2: \"aleo1dreuxnmg9cny8ee9v2u0wr4v4affnwm09u2pytfwz0f2en2shgqsdsfjn6\",\n * nonce: \"660310649780728486489183263981322848354071976582883879926426319832534836534field\"\n * },\n * id: \"1953278585719525811355617404139099418855053112960441725284031425961000152405field\",\n * positions: 50794271,\n * attempts: 0,\n * hits: 0,\n * _nonce: \"5668100912391182624073500093436664635767788874314097667746354181784048204413group\"\n * };\n *\n * # Create the expected object\n * let record_plaintext_object = record_plaintext_wasm.to_js_object();\n * assert(JSON.stringify(record_plaintext_object) == JSON.stringify(expected_object));\n *\n * @returns {Object} Javascript object representation of the record\n * @returns {object}\n */\n toJsObject() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toJsObject(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a record plaintext object from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the record plaintext.\n *\n * @returns {RecordPlaintext} The record plaintext.\n * @param {Uint8Array} bytes\n * @returns {RecordPlaintext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt the sender ciphertext associated with the record.\n *\n * @param {ViewKey} view_key View key associated with the record.\n * @param {Field} sender_ciphertext Sender ciphertext associated with the record.\n *\n * @returns {Address} address of the sender.\n * @param {ViewKey} view_key\n * @param {Field} sender_ciphertext\n * @returns {Address}\n */\n decryptSender(view_key, sender_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n _assertClass(sender_ciphertext, Field);\n wasm.recordplaintext_decryptSender(retptr, this.__wbg_ptr, view_key.__wbg_ptr, sender_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Generate the record view key. The record view key can only decrypt the record if the\n * supplied view key belongs to the record owner.\n *\n * @param {ViewKey} view_key View key used to generate the record view key\n *\n * @returns {Group} record view key\n * @param {ViewKey} view_key\n * @returns {Field}\n */\n recordViewKey(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.recordplaintext_recordViewKey(this.__wbg_ptr, view_key.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Attempt to get the serial number of a record to determine whether or not is has been spent\n *\n * @param {PrivateKey} private_key Private key of the account that owns the record\n * @param {string} program_id Program ID of the program that the record is associated with\n * @param {string} record_name Name of the record\n * @param {string} record_view_key The string representation of the record view key.\n *\n * @returns {string} Serial number of the record\n * @param {PrivateKey} private_key\n * @param {string} program_id\n * @param {string} record_name\n * @param {string} record_view_key\n * @returns {string}\n */\n serialNumberString(private_key, program_id, record_name, record_view_key) {\n let deferred5_0;\n let deferred5_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(record_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(record_view_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n wasm.recordplaintext_serialNumberString(retptr, this.__wbg_ptr, private_key.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n var ptr4 = r0;\n var len4 = r1;\n if (r3) {\n ptr4 = 0; len4 = 0;\n throw takeObject(r2);\n }\n deferred5_0 = ptr4;\n deferred5_1 = len4;\n return getStringFromWasm0(ptr4, len4);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred5_0, deferred5_1, 1);\n }\n }\n /**\n * Get the tag of the record using the graph key.\n * @param {GraphKey} graph_key\n * @param {Field} commitment\n * @returns {Field}\n */\n tag(graph_key, commitment) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(graph_key, GraphKey);\n _assertClass(commitment, Field);\n var ptr0 = commitment.__destroy_into_raw();\n wasm.recordplaintext_tag(retptr, this.__wbg_ptr, graph_key.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Clone the RecordPlaintext WASM object.\n *\n * @returns {RecordPlaintext} A clone of the RecordPlaintext WASM object.\n * @returns {RecordPlaintext}\n */\n clone() {\n const ret = wasm.recordplaintext_clone(this.__wbg_ptr);\n return RecordPlaintext.__wrap(ret);\n }\n /**\n * Returns the nonce of the record. This can be used to uniquely identify a record.\n *\n * @returns {string} Nonce of the record\n * @returns {string}\n */\n nonce() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_nonce(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the owner of the record.\n *\n * @returns {Address} Address of the owner of the record.\n * @returns {Address}\n */\n owner() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_owner(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the field array representation of the record plaintext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the record plaintext string\n *\n * @returns {string} String representation of the record plaintext\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ScalarFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_scalar_free(ptr >>> 0, 1));\n/**\n * Scalar field element.\n */\nclass Scalar {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Scalar.prototype);\n obj.__wbg_ptr = ptr;\n ScalarFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ScalarFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_scalar_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the scalar element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.scalar_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a scalar object from a string representation of a scalar element.\n * @param {string} group\n * @returns {Scalar}\n */\n static fromString(group) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(group, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.scalar_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the scalar element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a scalar element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Scalar}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext element from a scalar element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.scalar_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a scalar element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Scalar}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Add two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n add(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_add(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the multiplicative identity of the scalar field.\n * @returns {Scalar}\n */\n static one() {\n const ret = wasm.scalar_one();\n return Scalar.__wrap(ret);\n }\n /**\n * Power of a scalar element.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n pow(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_pow(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the additive identity of the scalar field.\n * @returns {Scalar}\n */\n static zero() {\n const ret = wasm.field_zero();\n return Scalar.__wrap(ret);\n }\n /**\n * Clone the scalar element.\n * @returns {Scalar}\n */\n clone() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Divide two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n divide(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_divide(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Double the scalar element.\n * @returns {Scalar}\n */\n double() {\n const ret = wasm.scalar_double(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Check if one scalar element equals another.\n * @param {Scalar} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Scalar);\n const ret = wasm.field_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random scalar element.\n * @returns {Scalar}\n */\n static random() {\n const ret = wasm.scalar_random();\n return Scalar.__wrap(ret);\n }\n /**\n * Invert the scalar element.\n * @returns {Scalar}\n */\n inverse() {\n const ret = wasm.scalar_inverse(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Multiply two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n multiply(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_multiply(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Subtract two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n subtract(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_subtract(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Cast the scalar element to a field element.\n * @returns {Field}\n */\n toField() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toField(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the string representation of the scalar element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst SignatureFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_signature_free(ptr >>> 0, 1));\n/**\n * Cryptographic signature of a message signed by an Aleo account\n */\nclass Signature {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Signature.prototype);\n obj.__wbg_ptr = ptr;\n SignatureFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n SignatureFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_signature_free(ptr, 0);\n }\n /**\n * Sign an instance of a valid Aleo data type or record.\n *\n * @param {PrivateKey} private_key The private key used to sign the message.\n * @param {String} message The string representation of the Aleo datatype or record to sign.\n * @returns {Signature} Signature of the message.\n * @param {PrivateKey} private_key\n * @param {string} message\n * @returns {Signature}\n */\n static signValue(private_key, message) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.signature_signValue(retptr, private_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get an address from a signature.\n *\n * @returns {Address} Address object\n * @returns {Address}\n */\n to_address() {\n const ret = wasm.signature_to_address(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Get the left endian boolean array representation of the bits of the signature.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.signature_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a signature from a string representation of a signature\n *\n * @param {string} signature String representation of a signature\n * @returns {Signature} Signature\n * @param {string} signature\n * @returns {Signature}\n */\n static from_string(signature) {\n const ptr0 = passStringToWasm0(signature, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.signature_from_string(ptr0, len0);\n return Signature.__wrap(ret);\n }\n /**\n * Get the left endian byte array representation of the signature.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a signature from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A left endian boolean array representing the bits of the signature.\n *\n * @returns {Signature} The signature object.\n * @param {Array<any>} bits\n * @returns {Signature}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the plaintext representation of the signature.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.signature_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Verify a signature over an Aleo datatype or record by an address.\n *\n * @param {Address} address The address used to verify the signature.\n * @param {String} message The message to verify, which must be the string representation of a valid Aleo datatype or record.\n * @returns {boolean} True if the signature is valid, false otherwise.\n * @param {Address} address\n * @param {string} message\n * @returns {boolean}\n */\n verifyValue(address, message) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(address, Address);\n const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.signature_verifyValue(retptr, this.__wbg_ptr, address.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return r0 !== 0;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a signature from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the signature.\n *\n * @returns {Signature} The signature object.\n * @param {Uint8Array} bytes\n * @returns {Signature}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Sign a message with a private key\n *\n * @param {PrivateKey} private_key The private key to sign the message with\n * @param {Uint8Array} message Byte representation of the message to sign\n * @returns {Signature} Signature of the message\n * @param {PrivateKey} private_key\n * @param {Uint8Array} message\n * @returns {Signature}\n */\n static sign(private_key, message) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.signature_sign(private_key.__wbg_ptr, ptr0, len0);\n return Signature.__wrap(ret);\n }\n /**\n * Verify a signature of a message with an address\n *\n * @param {Address} address The address to verify the signature with\n * @param {Uint8Array} message Byte representation of the message to verify\n * @returns {boolean} True if the signature is valid, false otherwise\n * @param {Address} address\n * @param {Uint8Array} message\n * @returns {boolean}\n */\n verify(address, message) {\n _assertClass(address, Address);\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.signature_verify(this.__wbg_ptr, address.__wbg_ptr, ptr0, len0);\n return ret !== 0;\n }\n /**\n * Get the response of a signature.\n * @returns {Scalar}\n */\n response() {\n const ret = wasm.signature_response(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the challenge of a signature.\n * @returns {Scalar}\n */\n challenge() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the field array representation of the signature.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of a signature\n *\n * @returns {string} String representation of a signature\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst TransactionFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_transaction_free(ptr >>> 0, 1));\n/**\n * Webassembly Representation of an Aleo transaction\n *\n * This object is created when generating an on-chain function deployment or execution and is the\n * object that should be submitted to the Aleo Network in order to deploy or execute a function.\n */\nclass Transaction {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Transaction.prototype);\n obj.__wbg_ptr = ptr;\n TransactionFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n TransactionFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_transaction_free(ptr, 0);\n }\n /**\n * Returns the transaction's total fee.\n * @returns {bigint}\n */\n feeAmount() {\n const ret = wasm.transaction_feeAmount(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Returns true if the transaction is an execution transaction.\n *\n * @returns {boolean} True if the transaction is an execution transaction\n * @returns {boolean}\n */\n isExecute() {\n const ret = wasm.transaction_isExecute(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Find a record in the transaction by the record's commitment.\n * @param {Field} commitment\n * @returns {RecordCiphertext | undefined}\n */\n findRecord(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transaction_findRecord(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret === 0 ? undefined : RecordCiphertext.__wrap(ret);\n }\n /**\n * Create a transaction from a string\n *\n * @param {string} transaction String representation of a transaction\n * @returns {Transaction}\n * @param {string} transaction\n * @returns {Transaction}\n */\n static fromString(transaction) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(transaction, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.transaction_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transaction.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transaction as a Uint8Array of left endian bytes.\n *\n * @returns {Uint8Array} Uint8Array representation of the transaction\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transitions in a transaction.\n *\n * @returns {Array<Transition>} Array of transition objects\n * @returns {Array<any>}\n */\n transitions() {\n const ret = wasm.transaction_transitions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Create a transaction from a Uint8Array of left endian bytes.\n *\n * @param {Uint8Array} Uint8Array of left endian bytes encoding a Transaction.\n * @returns {Transaction}\n * @param {Uint8Array} bytes\n * @returns {Transaction}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transaction.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the record plaintext present in a transaction owned by a specific view key.\n *\n * @param {ViewKey} view_key View key used to decrypt the ciphertext\n *\n * @returns {Array<RecordPlaintext>} Array of record plaintext objects\n * @param {ViewKey} view_key\n * @returns {Array<any>}\n */\n ownedRecords(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.transaction_ownedRecords(this.__wbg_ptr, view_key.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the verifying keys in a transaction.\n *\n * @returns {Array<Object>} Array of verifying keys.\n * @returns {Array<any>}\n */\n verifyingKeys() {\n const ret = wasm.transaction_verifyingKeys(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the transaction's base fee.\n * @returns {bigint}\n */\n baseFeeAmount() {\n const ret = wasm.transaction_baseFeeAmount(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Returns the program deployed within the transaction if the transaction is a deployment\n * transaction.\n *\n * @returns {Program | undefined} The program deployed within the transaction.\n * @returns {Program | undefined}\n */\n deployedProgram() {\n const ret = wasm.transaction_deployedProgram(this.__wbg_ptr);\n return ret === 0 ? undefined : Program.__wrap(ret);\n }\n /**\n * Get the type of the transaction (will return \"deploy\" or \"execute\")\n *\n * @returns {string} Transaction type\n * @returns {string}\n */\n transactionType() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_transactionType(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns true if the transaction contains the given commitment.\n *\n * @param {boolean} True if the transaction contains the given commitment.\n * @param {Field} commitment\n * @returns {boolean}\n */\n constainsCommitment(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transaction_constainsCommitment(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the transaction's priority fee.\n *\n * returns {bigint} The transaction's priority fee.\n * @returns {bigint}\n */\n priorityFeeAmount() {\n const ret = wasm.transaction_priorityFeeAmount(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Returns true if the transaction contains the given serial number.\n *\n * @param {boolean} True if the transaction contains the given serial number.\n * @param {Field} serial_number\n * @returns {boolean}\n */\n constainsSerialNumber(serial_number) {\n _assertClass(serial_number, Field);\n const ret = wasm.transaction_constainsSerialNumber(this.__wbg_ptr, serial_number.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the id of the transaction. This is the merkle root of the transaction's inclusion proof.\n *\n * This value can be used to query the status of the transaction on the Aleo Network to see\n * if it was successful. If successful, the transaction will be included in a block and this\n * value can be used to lookup the transaction data on-chain.\n *\n * @returns {string} TransactionId\n * @returns {string}\n */\n id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns true if the transaction is a fee transaction.\n *\n * @returns {boolean} True if the transaction is a fee transaction\n * @returns {boolean}\n */\n isFee() {\n const ret = wasm.transaction_isFee(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the records present in a transaction and their commitments.\n *\n * @returns {Array<{commitment: Field, record: RecordCiphertext}>} Array of record ciphertext objects\n * @returns {Array<any>}\n */\n records() {\n const ret = wasm.transaction_records(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a summary of the transaction within a javascript object.\n *\n * If the transaction is an execution transaction, this function will return a list of the\n * transitions and their inputs and outputs.\n *\n * If the transaction is a deployment transaction, this function will return the program id and\n * a list of the functions and their verifying keys, constraint, and variable counts.\n *\n * @param {boolean} convert_to_js If true the inputs and outputs will be converted to JS objects,\n * if false the inputs and outputs will be in wasm format.\n *\n * @returns {Object} Transaction summary\n * @param {boolean} convert_to_js\n * @returns {object}\n */\n summary(convert_to_js) {\n const ret = wasm.transaction_summary(this.__wbg_ptr, convert_to_js);\n return takeObject(ret);\n }\n /**\n * Returns the execution within the transaction (if present).\n *\n * @returns {Execution | undefined} The execution within the transaction.\n * @returns {Execution | undefined}\n */\n execution() {\n const ret = wasm.transaction_execution(this.__wbg_ptr);\n return ret === 0 ? undefined : Execution.__wrap(ret);\n }\n /**\n * Returns true if the transaction is a deployment transaction.\n *\n * @returns {boolean} True if the transaction is a deployment transaction\n * @returns {boolean}\n */\n isDeploy() {\n const ret = wasm.transaction_isDeploy(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the transaction as a string. If you want to submit this transaction to the Aleo Network\n * this function will create the string that should be submitted in the `POST` data.\n *\n * @returns {string} String representation of the transaction\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst TransitionFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_transition_free(ptr >>> 0, 1));\n\nclass Transition {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Transition.prototype);\n obj.__wbg_ptr = ptr;\n TransitionFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n TransitionFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_transition_free(ptr, 0);\n }\n /**\n * Get the program ID of the transition.\n * @returns {string}\n */\n programId() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_programId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Find a record in the transition by the record's commitment.\n * @param {Field} commitment\n * @returns {RecordCiphertext | undefined}\n */\n findRecord(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transition_findRecord(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret === 0 ? undefined : RecordCiphertext.__wrap(ret);\n }\n /**\n * Create a transition from a string\n *\n * @param {string} transition String representation of a transition\n * @returns {Transition}\n * @param {string} transition\n * @returns {Transition}\n */\n static fromString(transition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(transition, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.transition_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transition as a Uint8Array of left endian bytes.\n *\n * @returns {Uint8Array} Uint8Array representation of the transition\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a transition from a Uint8Array of left endian bytes.\n *\n * @param {Uint8Array} Uint8Array of left endian bytes encoding a Transition.\n * @returns {Transition}\n * @param {Uint8Array} bytes\n * @returns {Transition}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the function name of the transition.\n * @returns {string}\n */\n functionName() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_functionName(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the record plaintext present in a transition owned by a specific view key.\n *\n * @param {ViewKey} view_key The view key of the record owner.\n *\n * @returns {Array<RecordPlaintext>} Array of record plaintext objects\n * @param {ViewKey} view_key\n * @returns {Array<any>}\n */\n ownedRecords(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.transition_ownedRecords(this.__wbg_ptr, view_key.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Decrypt the transition using the transition view key.\n *\n * @param {Field} tvk The transition view key.\n *\n * @returns {Transition} The transition with public values for inputs and outputs.\n * @param {Field} tvk\n * @returns {Transition}\n */\n decryptTransition(tvk) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(tvk, Field);\n wasm.transition_decryptTransition(retptr, this.__wbg_ptr, tvk.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns true if the transition contains the given commitment.\n *\n * @param {boolean} True if the transition contains the given commitment.\n * @param {Field} commitment\n * @returns {boolean}\n */\n containsCommitment(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transition_containsCommitment(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Check if the transition contains a serial number.\n *\n * @param {Field} serial_number The serial number to check for\n *\n * @returns {bool} True if the transition contains a serial number, false otherwise\n * @param {Field} serial_number\n * @returns {boolean}\n */\n containsSerialNumber(serial_number) {\n _assertClass(serial_number, Field);\n const ret = wasm.transition_containsSerialNumber(this.__wbg_ptr, serial_number.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the transition ID\n *\n * @returns {string} The transition ID\n * @returns {string}\n */\n id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the transition signer commitment of the transition.\n *\n * @returns {Field} Transition signer commitment\n * @returns {Field}\n */\n scm() {\n const ret = wasm.transition_scm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the transition commitment of the transition.\n *\n * @returns {Field} Transition commitment\n * @returns {Field}\n */\n tcm() {\n const ret = wasm.transition_tcm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the transition public key of the transition.\n *\n * @returns {Group} Transition public key\n * @returns {Group}\n */\n tpk() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the transition view key of the transition.\n *\n * @param {ViewKey} view_key The view key of the transition signer.\n *\n * @returns {Field} Transition view key\n * @param {ViewKey} view_key\n * @returns {Field}\n */\n tvk(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.transition_tvk(this.__wbg_ptr, view_key.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the inputs of the transition.\n *\n * @param {bool} convert_to_js If true the inputs will be converted to JS objects, if false\n * the inputs will be in wasm format.\n *\n * @returns {Array} Array of inputs\n * @param {boolean} convert_to_js\n * @returns {Array<any>}\n */\n inputs(convert_to_js) {\n const ret = wasm.transition_inputs(this.__wbg_ptr, convert_to_js);\n return takeObject(ret);\n }\n /**\n * Get the outputs of the transition.\n *\n * @param {bool} convert_to_js If true the outputs will be converted to JS objects, if false\n * the outputs will be in wasm format.\n *\n * @returns {Array} Array of outputs\n * @param {boolean} convert_to_js\n * @returns {Array<any>}\n */\n outputs(convert_to_js) {\n const ret = wasm.transition_outputs(this.__wbg_ptr, convert_to_js);\n return takeObject(ret);\n }\n /**\n * Get the records present in a transition and their commitments.\n *\n * @returns {Array<{commitment: Field, record: RecordCiphertext}>} Array of record ciphertext objects\n * @returns {Array<any>}\n */\n records() {\n const ret = wasm.transition_records(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the transition as a string. If you want to submit this transition to the Aleo Network\n * this function will create the string that should be submitted in the `POST` data.\n *\n * @returns {string} String representation of the transition\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U128Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u128_free(ptr >>> 0, 1));\n\nclass U128 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U128.prototype);\n obj.__wbg_ptr = ptr;\n U128Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U128Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u128_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U128}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i128_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.u128_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U128}\n */\n absChecked() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U128}\n */\n absWrapped() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U128} other\n * @returns {U128}\n */\n addWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U128} other\n * @returns {U128}\n */\n divWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.u128_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U128}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u128_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U128}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u128_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U128} other\n * @returns {U128}\n */\n mulWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U128} other\n * @returns {U128}\n */\n remWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.u128_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U128} other\n * @returns {U128}\n */\n subWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U128}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u128_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U128}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U128}\n */\n neg() {\n const ret = wasm.u128_neg(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U128} other\n * @returns {U128}\n */\n rem(other) {\n _assertClass(other, U128);\n const ret = wasm.u128_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U128}\n */\n clone() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U128} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U128}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u128_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U128}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u128_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U128}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u128_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.u128_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u128_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U16Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u16_free(ptr >>> 0, 1));\n\nclass U16 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U16.prototype);\n obj.__wbg_ptr = ptr;\n U16Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U16Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u16_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U16}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i16_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i16_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U16}\n */\n absChecked() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U16}\n */\n absWrapped() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U16} other\n * @returns {U16}\n */\n addWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U16} other\n * @returns {U16}\n */\n divWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.u16_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U16}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U16}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u16_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U16} other\n * @returns {U16}\n */\n mulWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U16} other\n * @returns {U16}\n */\n remWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.u16_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U16} other\n * @returns {U16}\n */\n subWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U16}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u16_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U16}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U16}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U16} other\n * @returns {U16}\n */\n rem(other) {\n _assertClass(other, U16);\n const ret = wasm.u16_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U16}\n */\n clone() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U16} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U16}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u16_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U16}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u16_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U16}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u16_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i16_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u16_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U32Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u32_free(ptr >>> 0, 1));\n\nclass U32 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U32.prototype);\n obj.__wbg_ptr = ptr;\n U32Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U32Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u32_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U32}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i32_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.u32_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U32}\n */\n absChecked() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U32}\n */\n absWrapped() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U32} other\n * @returns {U32}\n */\n addWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U32} other\n * @returns {U32}\n */\n divWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.u32_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U32}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U32}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u32_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U32} other\n * @returns {U32}\n */\n mulWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U32} other\n * @returns {U32}\n */\n remWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.u32_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U32} other\n * @returns {U32}\n */\n subWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U32}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u32_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U32}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U32}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U32} other\n * @returns {U32}\n */\n rem(other) {\n _assertClass(other, U32);\n const ret = wasm.u32_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U32}\n */\n clone() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U32} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U32}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u32_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U32}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u32_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U32}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u32_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.u32_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u32_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U64Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u64_free(ptr >>> 0, 1));\n\nclass U64 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U64.prototype);\n obj.__wbg_ptr = ptr;\n U64Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U64Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u64_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U64}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i64_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.u64_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U64}\n */\n absChecked() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U64}\n */\n absWrapped() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U64} other\n * @returns {U64}\n */\n addWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U64} other\n * @returns {U64}\n */\n divWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.u64_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U64}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U64}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u64_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U64} other\n * @returns {U64}\n */\n mulWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U64} other\n * @returns {U64}\n */\n remWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.u64_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U64} other\n * @returns {U64}\n */\n subWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U64}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u64_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U64}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U64}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U64} other\n * @returns {U64}\n */\n rem(other) {\n _assertClass(other, U64);\n const ret = wasm.u64_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U64}\n */\n clone() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U64} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U64}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u64_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U64}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u64_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U64}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u64_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.u64_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u64_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U8Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u8_free(ptr >>> 0, 1));\n\nclass U8 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U8.prototype);\n obj.__wbg_ptr = ptr;\n U8Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U8Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u8_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U8}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i8_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i8_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U8}\n */\n absChecked() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U8}\n */\n absWrapped() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U8} other\n * @returns {U8}\n */\n addWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U8} other\n * @returns {U8}\n */\n divWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.u8_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U8}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U8}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u8_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U8} other\n * @returns {U8}\n */\n mulWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U8} other\n * @returns {U8}\n */\n remWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.u8_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U8} other\n * @returns {U8}\n */\n subWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U8}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u8_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U8}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U8}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U8} other\n * @returns {U8}\n */\n rem(other) {\n _assertClass(other, U8);\n const ret = wasm.u8_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U8}\n */\n clone() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U8} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U8}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u8_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U8}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u8_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U8}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u8_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i8_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u8_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst VerifyingKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_verifyingkey_free(ptr >>> 0, 1));\n/**\n * Verifying key for a function within an Aleo program\n */\nclass VerifyingKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(VerifyingKey.prototype);\n obj.__wbg_ptr = ptr;\n VerifyingKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n VerifyingKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_verifyingkey_free(ptr, 0);\n }\n /**\n * Construct a new verifying key from a byte array\n *\n * @param {Uint8Array} bytes Byte representation of a verifying key\n * @returns {VerifyingKey}\n * @param {Uint8Array} bytes\n * @returns {VerifyingKey}\n */\n static fromBytes(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.verifyingkey_fromBytes(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return VerifyingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a verifying key from string\n *\n * @param {String} string String representation of a verifying key\n * @returns {VerifyingKey}\n * @param {string} string\n * @returns {VerifyingKey}\n */\n static fromString(string) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(string, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.verifyingkey_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return VerifyingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the number of constraints associated with the circuit\n *\n * @returns {number} The number of constraints\n * @returns {number}\n */\n numConstraints() {\n const ret = wasm.verifyingkey_numConstraints(this.__wbg_ptr);\n return ret >>> 0;\n }\n /**\n * Create a copy of the verifying key\n *\n * @returns {VerifyingKey} A copy of the verifying key\n * @returns {VerifyingKey}\n */\n copy() {\n const ret = wasm.verifyingkey_copy(this.__wbg_ptr);\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Get the checksum of the verifying key\n *\n * @returns {string} Checksum of the verifying key\n * @returns {string}\n */\n checksum() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.verifyingkey_checksum(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Create a byte array from a verifying key\n *\n * @returns {Uint8Array} Byte representation of a verifying key\n * @returns {Uint8Array}\n */\n toBytes() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.verifyingkey_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v1 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 1, 1);\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of the verifying key\n *\n * @returns {String} String representation of the verifying key\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.verifyingkey_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the verifying key for the join function\n *\n * @returns {VerifyingKey} Verifying key for the join function\n * @returns {VerifyingKey}\n */\n static joinVerifier() {\n const ret = wasm.verifyingkey_joinVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the split function\n *\n * @returns {VerifyingKey} Verifying key for the split function\n * @returns {VerifyingKey}\n */\n static splitVerifier() {\n const ret = wasm.verifyingkey_splitVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the join function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isJoinVerifier() {\n const ret = wasm.verifyingkey_isJoinVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the split function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isSplitVerifier() {\n const ret = wasm.verifyingkey_isSplitVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the inclusion function\n *\n * @returns {VerifyingKey} Verifying key for the inclusion function\n * @returns {VerifyingKey}\n */\n static inclusionVerifier() {\n const ret = wasm.verifyingkey_inclusionVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the fee_public function\n *\n * @returns {VerifyingKey} Verifying key for the fee_public function\n * @returns {VerifyingKey}\n */\n static feePublicVerifier() {\n const ret = wasm.verifyingkey_feePublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_public function\n *\n * @returns {VerifyingKey} Verifying key for the bond_public function\n * @returns {VerifyingKey}\n */\n static bondPublicVerifier() {\n const ret = wasm.verifyingkey_bondPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the fee_private function\n *\n * @returns {VerifyingKey} Verifying key for the fee_private function\n * @returns {VerifyingKey}\n */\n static feePrivateVerifier() {\n const ret = wasm.verifyingkey_feePrivateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the inclusion function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isInclusionVerifier() {\n const ret = wasm.verifyingkey_isInclusionVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the fee_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isFeePublicVerifier() {\n const ret = wasm.verifyingkey_isFeePublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the unbond_public function\n *\n * @returns {VerifyingKey} Verifying key for the unbond_public function\n * @returns {VerifyingKey}\n */\n static unbondPublicVerifier() {\n const ret = wasm.verifyingkey_unbondPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_validator function\n *\n * @returns {VerifyingKey} Verifying key for the bond_validator function\n * @returns {VerifyingKey}\n */\n static bondValidatorVerifier() {\n const ret = wasm.verifyingkey_bondValidatorVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_public function\n *\n * @returns {VerifyingKey} Verifying key for the bond_public function\n * @returns {boolean}\n */\n isBondPublicVerifier() {\n const ret = wasm.verifyingkey_isBondPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the fee_private function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isFeePrivateVerifier() {\n const ret = wasm.verifyingkey_isFeePrivateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the transfer_public function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_public function\n * @returns {VerifyingKey}\n */\n static transferPublicVerifier() {\n const ret = wasm.verifyingkey_transferPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the unbond_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isUnbondPublicVerifier() {\n const ret = wasm.verifyingkey_isUnbondPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the transfer_private function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_private function\n * @returns {VerifyingKey}\n */\n static transferPrivateVerifier() {\n const ret = wasm.verifyingkey_transferPrivateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_validator function\n *\n * @returns {VerifyingKey} Verifying key for the bond_validator function\n * @returns {boolean}\n */\n isBondValidatorVerifier() {\n const ret = wasm.verifyingkey_isBondValidatorVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the transfer_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPublicVerifier() {\n const ret = wasm.verifyingkey_isTransferPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the claim_delegator function\n *\n * @returns {VerifyingKey} Verifying key for the claim_unbond_public function\n * @returns {VerifyingKey}\n */\n static claimUnbondPublicVerifier() {\n const ret = wasm.verifyingkey_claimUnbondPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the transfer_private function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPrivateVerifier() {\n const ret = wasm.verifyingkey_isTransferPrivateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the set_validator_state function\n *\n * @returns {VerifyingKey} Verifying key for the set_validator_state function\n * @returns {VerifyingKey}\n */\n static setValidatorStateVerifier() {\n const ret = wasm.verifyingkey_setValidatorStateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the claim_delegator function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isClaimUnbondPublicVerifier() {\n const ret = wasm.verifyingkey_isClaimUnbondPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the set_validator_state function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isSetValidatorStateVerifier() {\n const ret = wasm.verifyingkey_isSetValidatorStateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the transfer_public_as_signer function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_public_as_signer function\n * @returns {VerifyingKey}\n */\n static transferPublicAsSignerVerifier() {\n const ret = wasm.verifyingkey_transferPublicAsSignerVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the transfer_private_to_public function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_private_to_public function\n * @returns {VerifyingKey}\n */\n static transferPrivateToPublicVerifier() {\n const ret = wasm.verifyingkey_transferPrivateToPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the transfer_public_to_private function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_public_to_private function\n * @returns {VerifyingKey}\n */\n static transferPublicToPrivateVerifier() {\n const ret = wasm.verifyingkey_transferPublicToPrivateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the transfer_public_as_signer function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPublicAsSignerVerifier() {\n const ret = wasm.verifyingkey_isTransferPublicAsSignerVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the transfer_private_to_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPrivateToPublicVerifier() {\n const ret = wasm.verifyingkey_isTransferPrivateToPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the transfer_public_to_private function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPublicToPrivateVerifier() {\n const ret = wasm.verifyingkey_isTransferPublicToPrivateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n}\n\nconst ViewKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_viewkey_free(ptr >>> 0, 1));\n\nclass ViewKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ViewKey.prototype);\n obj.__wbg_ptr = ptr;\n ViewKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ViewKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_viewkey_free(ptr, 0);\n }\n /**\n * Get the address corresponding to a view key\n *\n * @returns {Address} Address\n * @returns {Address}\n */\n to_address() {\n const ret = wasm.address_from_view_key(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Create a new view key from a string representation of a view key\n *\n * @param {string} view_key String representation of a view key\n * @returns {ViewKey} View key\n * @param {string} view_key\n * @returns {ViewKey}\n */\n static from_string(view_key) {\n const ptr0 = passStringToWasm0(view_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.viewkey_from_string(ptr0, len0);\n return ViewKey.__wrap(ret);\n }\n /**\n * Create a new view key from a private key\n *\n * @param {PrivateKey} private_key Private key\n * @returns {ViewKey} View key\n * @param {PrivateKey} private_key\n * @returns {ViewKey}\n */\n static from_private_key(private_key) {\n _assertClass(private_key, PrivateKey);\n const ret = wasm.viewkey_from_private_key(private_key.__wbg_ptr);\n return ViewKey.__wrap(ret);\n }\n /**\n * Decrypt a record ciphertext with a view key\n *\n * @param {string} ciphertext String representation of a record ciphertext\n * @returns {string} String representation of a record plaintext\n * @param {string} ciphertext\n * @returns {string}\n */\n decrypt(ciphertext) {\n let deferred3_0;\n let deferred3_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(ciphertext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.viewkey_decrypt(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n var ptr2 = r0;\n var len2 = r1;\n if (r3) {\n ptr2 = 0; len2 = 0;\n throw takeObject(r2);\n }\n deferred3_0 = ptr2;\n deferred3_1 = len2;\n return getStringFromWasm0(ptr2, len2);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);\n }\n }\n /**\n * Cast the view key to a field.\n * @returns {Field}\n */\n toField() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toField(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the underlying scalar of a view key.\n * @returns {Scalar}\n */\n to_scalar() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get a string representation of a view key\n *\n * @returns {string} String representation of a view key\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.viewkey_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbg_abort_775ef1d17fc65868 = function(arg0) {\n getObject(arg0).abort();\n };\n imports.wbg.__wbg_address_new = function(arg0) {\n const ret = Address.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_append_8c7dd8d641a5f01b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_arrayBuffer_d1b44c4390db422f = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).arrayBuffer();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_async_9ff6d9e405f13772 = function(arg0) {\n const ret = getObject(arg0).async;\n return ret;\n };\n imports.wbg.__wbg_authorization_new = function(arg0) {\n const ret = Authorization.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_609cc3eee51ed158 = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_call_672a4d21634d4a24 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_call_7cccdd69e0791ae2 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_ciphertext_new = function(arg0) {\n const ret = Ciphertext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_crypto_ed58b8e10a292839 = function(arg0) {\n const ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_data_432d9c3df2630942 = function(arg0) {\n const ret = getObject(arg0).data;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_done_769e5ede4b31c67b = function(arg0) {\n const ret = getObject(arg0).done;\n return ret;\n };\n imports.wbg.__wbg_error_7534b8e9a36f1ab4 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.error(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_export_2(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_executionresponse_new = function(arg0) {\n const ret = ExecutionResponse.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fetch_509096533071c657 = function(arg0, arg1) {\n const ret = getObject(arg0).fetch(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fetch_f1856afdb49415d1 = function(arg0) {\n const ret = fetch(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_field_new = function(arg0) {\n const ret = Field.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_field_unwrap = function(arg0) {\n const ret = Field.__unwrap(takeObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_getRandomValues_bcb4912f16000dc4 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).getRandomValues(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_get_67b2ba62fc30de12 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.get(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_get_b9b93047fe3cf45b = function(arg0, arg1) {\n const ret = getObject(arg0)[arg1 >>> 0];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_group_new = function(arg0) {\n const ret = Group.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_has_a5ea9117f258a0ec = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.has(getObject(arg0), getObject(arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_headers_9cb51cfd2ac780a4 = function(arg0) {\n const ret = getObject(arg0).headers;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_instanceof_Response_f2cc20d9f7dfd644 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Response;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_iterator_9a24c88df860dc65 = function() {\n const ret = Symbol.iterator;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_keypair_new = function(arg0) {\n const ret = KeyPair.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_keys_5c77a08ddc2fb8a6 = function(arg0) {\n const ret = Object.keys(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_length_a446193dc22c12f8 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_length_e2d2a49132c1b256 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_log_bf427d7de6a9bf32 = function(arg0, arg1) {\n console.log(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbg_msCrypto_0a36e2ec3a343d26 = function(arg0) {\n const ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_018dcc2d6c8c2f6a = function() { return handleError(function () {\n const ret = new Headers();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_23a2665fac83c611 = function(arg0, arg1) {\n try {\n var state0 = {a: arg0, b: arg1};\n var cb0 = (arg0, arg1) => {\n const a = state0.a;\n state0.a = 0;\n try {\n return __wbg_adapter_870(a, state0.b, arg0, arg1);\n } finally {\n state0.a = a;\n }\n };\n const ret = new Promise(cb0);\n return addHeapObject(ret);\n } finally {\n state0.a = state0.b = 0;\n }\n };\n imports.wbg.__wbg_new_405e22f390576ce2 = function() {\n const ret = new Object();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_78feb108b6472713 = function() {\n const ret = new Array();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_86231e225ca6b962 = function() { return handleError(function () {\n const ret = new XMLHttpRequest();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_8a6f238a6ece86ea = function() {\n const ret = new Error();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_a12002a7f91c75be = function(arg0) {\n const ret = new Uint8Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_b1a33e5095abf678 = function() { return handleError(function (arg0, arg1) {\n const ret = new Worker(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_e25e5aab09ff45db = function() { return handleError(function () {\n const ret = new AbortController();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_e9a4a67dbababe57 = function(arg0) {\n const ret = new Int32Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newnoargs_105ed471475aaf50 = function(arg0, arg1) {\n const ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a = function(arg0, arg1, arg2) {\n const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithlength_a381634e90c276d4 = function(arg0) {\n const ret = new Uint8Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithlength_c4c419ef0bc8a1f8 = function(arg0) {\n const ret = new Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithstrandinit_06c535e0a867c635 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_next_25feadfc0913fea9 = function(arg0) {\n const ret = getObject(arg0).next;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_next_6574e1a8a62d1055 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).next();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_node_02999533c4ea02e3 = function(arg0) {\n const ret = getObject(arg0).node;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_of_4a05197bfc89556f = function(arg0, arg1, arg2) {\n const ret = Array.of(getObject(arg0), getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_open_13a598ea50d82926 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).open(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4), arg5 !== 0);\n }, arguments) };\n imports.wbg.__wbg_overrideMimeType_36ce5eeae20aff9f = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).overrideMimeType(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_plaintext_new = function(arg0) {\n const ret = Plaintext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_postMessage_6edafa8f7b9c2f52 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).postMessage(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_process_5c1d670bc53614b8 = function(arg0) {\n const ret = getObject(arg0).process;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_provingrequest_new = function(arg0) {\n const ret = ProvingRequest.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_push_737cfc8c1432c2c6 = function(arg0, arg1) {\n const ret = getObject(arg0).push(getObject(arg1));\n return ret;\n };\n imports.wbg.__wbg_queueMicrotask_97d92b4fcc8a61c5 = function(arg0) {\n queueMicrotask(getObject(arg0));\n };\n imports.wbg.__wbg_queueMicrotask_d3219def82552485 = function(arg0) {\n const ret = getObject(arg0).queueMicrotask;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_randomFillSync_ab2cfe79ebbf2740 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).randomFillSync(takeObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_recordciphertext_new = function(arg0) {\n const ret = RecordCiphertext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_recordciphertext_unwrap = function(arg0) {\n const ret = RecordCiphertext.__unwrap(takeObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_recordplaintext_new = function(arg0) {\n const ret = RecordPlaintext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_require_79b1e9274cde3c87 = function() { return handleError(function () {\n const ret = module.require;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_resolve_4851785c9c5f573d = function(arg0) {\n const ret = Promise.resolve(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_responseText_ad050aa7f8afec9f = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg1).responseText;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n }, arguments) };\n imports.wbg.__wbg_response_49e10f8ee7f418db = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).response;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_send_40a47636ff90f64d = function() { return handleError(function (arg0) {\n getObject(arg0).send();\n }, arguments) };\n imports.wbg.__wbg_set_37837023f3d740e8 = function(arg0, arg1, arg2) {\n getObject(arg0)[arg1 >>> 0] = takeObject(arg2);\n };\n imports.wbg.__wbg_set_65595bdd868b3009 = function(arg0, arg1, arg2) {\n getObject(arg0).set(getObject(arg1), arg2 >>> 0);\n };\n imports.wbg.__wbg_set_bb8cecf6a62b9f46 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_setbody_5923b78a95eedf29 = function(arg0, arg1) {\n getObject(arg0).body = getObject(arg1);\n };\n imports.wbg.__wbg_setcredentials_c3a22f1cd105a2c6 = function(arg0, arg1) {\n getObject(arg0).credentials = __wbindgen_enum_RequestCredentials[arg1];\n };\n imports.wbg.__wbg_setheaders_834c0bdb6a8949ad = function(arg0, arg1) {\n getObject(arg0).headers = getObject(arg1);\n };\n imports.wbg.__wbg_setmethod_3c5280fe5d890842 = function(arg0, arg1, arg2) {\n getObject(arg0).method = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setmode_5dc300b865044b65 = function(arg0, arg1) {\n getObject(arg0).mode = __wbindgen_enum_RequestMode[arg1];\n };\n imports.wbg.__wbg_setonmessage_5a885b16bdc6dca6 = function(arg0, arg1) {\n getObject(arg0).onmessage = getObject(arg1);\n };\n imports.wbg.__wbg_setsignal_75b21ef3a81de905 = function(arg0, arg1) {\n getObject(arg0).signal = getObject(arg1);\n };\n imports.wbg.__wbg_signal_aaf9ad74119f20a4 = function(arg0) {\n const ret = getObject(arg0).signal;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_signature_new = function(arg0) {\n const ret = Signature.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_spawnWorker_dbf0b39172b37e8e = function(arg0, arg1, arg2, arg3) {\n const ret = spawnWorker(getObject(arg0), getObject(arg1), getObject(arg2), arg3 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_stack_0ed75d68575b0f3c = function(arg0, arg1) {\n const ret = getObject(arg1).stack;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07 = function() {\n const ret = typeof global === 'undefined' ? null : global;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0 = function() {\n const ret = typeof globalThis === 'undefined' ? null : globalThis;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819 = function() {\n const ret = typeof self === 'undefined' ? null : self;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40 = function() {\n const ret = typeof window === 'undefined' ? null : window;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_status_12bcf88a8ff51470 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).status;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_status_f6360336ca686bf0 = function(arg0) {\n const ret = getObject(arg0).status;\n return ret;\n };\n imports.wbg.__wbg_stringify_f7ed6987935b4a24 = function() { return handleError(function (arg0) {\n const ret = JSON.stringify(getObject(arg0));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_subarray_aa9065fa9dc5df96 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_44b73946d2fb3e7d = function(arg0, arg1) {\n const ret = getObject(arg0).then(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_48b406749878a531 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_transaction_new = function(arg0) {\n const ret = Transaction.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_transition_new = function(arg0) {\n const ret = Transition.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_url_ae10c34ca209681d = function(arg0, arg1) {\n const ret = getObject(arg1).url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_value_cd1ffa7b1ab794f1 = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_value_dab73d3d5d4abaaf = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_verifyingkey_new = function(arg0) {\n const ret = VerifyingKey.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_versions_c71aa1626a93e0a1 = function(arg0) {\n const ret = getObject(arg0).versions;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_waitAsync_61f0a081053dd3c2 = function(arg0, arg1, arg2) {\n const ret = Atomics.waitAsync(getObject(arg0), arg1 >>> 0, arg2);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_waitAsync_7ce6c8a047c752c3 = function() {\n const ret = Atomics.waitAsync;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_i128 = function(arg0, arg1) {\n const ret = arg0 << BigInt(64) | BigInt.asUintN(64, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_i64 = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_u128 = function(arg0, arg1) {\n const ret = BigInt.asUintN(64, arg0) << BigInt(64) | BigInt.asUintN(64, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_u64 = function(arg0) {\n const ret = BigInt.asUintN(64, arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_boolean_get = function(arg0) {\n const v = getObject(arg0);\n const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;\n return ret;\n };\n imports.wbg.__wbindgen_cb_drop = function(arg0) {\n const obj = takeObject(arg0).original;\n if (obj.cnt-- == 1) {\n obj.a = 0;\n return true;\n }\n const ret = false;\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper7380 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 548, __wbg_adapter_40);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper7385 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 548, __wbg_adapter_40);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_function = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'function';\n return ret;\n };\n imports.wbg.__wbindgen_is_object = function(arg0) {\n const val = getObject(arg0);\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbindgen_is_string = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'string';\n return ret;\n };\n imports.wbg.__wbindgen_is_undefined = function(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n };\n imports.wbg.__wbindgen_link_9579f016b4522a24 = function(arg0) {\n const val = `onmessage = function (ev) {\n let [ia, index, value] = ev.data;\n ia = new Int32Array(ia.buffer);\n let result = Atomics.wait(ia, index, value);\n postMessage(result);\n };\n `;\n const ret = typeof URL.createObjectURL === 'undefined' ? \"data:application/javascript,\" + encodeURIComponent(val) : URL.createObjectURL(new Blob([val], { type: \"text/javascript\" }));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbindgen_memory = function() {\n const ret = wasm.memory;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_module = function() {\n const ret = __wbg_init.__wbindgen_wasm_module;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_number_new = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_clone_ref = function(arg0) {\n const ret = getObject(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n };\n imports.wbg.__wbindgen_rethrow = function(arg0) {\n throw takeObject(arg0);\n };\n imports.wbg.__wbindgen_string_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbindgen_string_new = function(arg0, arg1) {\n const ret = getStringFromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, memory) {\n imports.wbg.memory = memory || new WebAssembly.Memory({initial:167,maximum:65536,shared:true});\n}\n\nfunction __wbg_finalize_init(instance, module, thread_stack_size) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedDataViewMemory0 = null;\n cachedUint8ArrayMemory0 = null;\n\n if (typeof thread_stack_size !== 'undefined' && (typeof thread_stack_size !== 'number' || thread_stack_size === 0 || thread_stack_size % 65536 !== 0)) { throw 'invalid stack size' }\n wasm.__wbindgen_start(thread_stack_size);\n return wasm;\n}\n\nfunction initSync(module, memory) {\n if (wasm !== undefined) return wasm;\n\n let thread_stack_size;\n if (typeof module !== 'undefined') {\n if (Object.getPrototypeOf(module) === Object.prototype) {\n ({module, memory, thread_stack_size} = module);\n } else {\n console.warn('using deprecated parameters for `initSync()`; pass a single object instead');\n }\n }\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports, memory);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module, thread_stack_size);\n}\n\nasync function __wbg_init(module_or_path, memory) {\n if (wasm !== undefined) return wasm;\n\n let thread_stack_size;\n if (typeof module_or_path !== 'undefined') {\n if (Object.getPrototypeOf(module_or_path) === Object.prototype) {\n ({module_or_path, memory, thread_stack_size} = module_or_path);\n } else {\n console.warn('using deprecated parameters for the initialization function; pass a single object instead');\n }\n }\n\n\n const imports = __wbg_get_imports();\n\n if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {\n module_or_path = fetch(module_or_path);\n }\n\n __wbg_init_memory(imports, memory);\n\n const { instance, module } = await __wbg_load(await module_or_path, imports);\n\n return __wbg_finalize_init(instance, module, thread_stack_size);\n}\n\nvar exports = /*#__PURE__*/Object.freeze({\n __proto__: null,\n Address: Address,\n Authorization: Authorization,\n BHP1024: BHP1024,\n BHP256: BHP256,\n BHP512: BHP512,\n BHP768: BHP768,\n Boolean: Boolean,\n Ciphertext: Ciphertext,\n ComputeKey: ComputeKey,\n EncryptionToolkit: EncryptionToolkit,\n Execution: Execution,\n ExecutionRequest: ExecutionRequest,\n ExecutionResponse: ExecutionResponse,\n Field: Field,\n GraphKey: GraphKey,\n Group: Group,\n I128: I128,\n I16: I16,\n I32: I32,\n I64: I64,\n I8: I8,\n KeyPair: KeyPair,\n Metadata: Metadata,\n OfflineQuery: OfflineQuery,\n Pedersen128: Pedersen128,\n Pedersen64: Pedersen64,\n Plaintext: Plaintext,\n Poseidon2: Poseidon2,\n Poseidon4: Poseidon4,\n Poseidon8: Poseidon8,\n PrivateKey: PrivateKey,\n PrivateKeyCiphertext: PrivateKeyCiphertext,\n Program: Program,\n ProgramManager: ProgramManager,\n ProvingKey: ProvingKey,\n ProvingRequest: ProvingRequest,\n RecordCiphertext: RecordCiphertext,\n RecordPlaintext: RecordPlaintext,\n Scalar: Scalar,\n Signature: Signature,\n Transaction: Transaction,\n Transition: Transition,\n U128: U128,\n U16: U16,\n U32: U32,\n U64: U64,\n U8: U8,\n VerifyingKey: VerifyingKey,\n ViewKey: ViewKey,\n default: __wbg_init,\n getOrInitConsensusVersionTestHeights: getOrInitConsensusVersionTestHeights,\n initSync: initSync,\n initThreadPool: initThreadPool,\n runRayonThread: runRayonThread,\n verifyFunctionExecution: verifyFunctionExecution\n});\n\nexport { ViewKey as $, Address as A, BHP1024 as B, Ciphertext as C, ProgramManager as D, EncryptionToolkit as E, Field as F, GraphKey as G, ProvingKey as H, I128 as I, ProvingRequest as J, KeyPair as K, RecordPlaintext as L, Metadata as M, Signature as N, OfflineQuery as O, Pedersen128 as P, Transition as Q, RecordCiphertext as R, Scalar as S, Transaction as T, U128 as U, U16 as V, U32 as W, U64 as X, U8 as Y, VerifyingKey as Z, __wbg_init as _, Authorization as a, initSync as a0, exports as a1, BHP256 as b, BHP512 as c, BHP768 as d, Boolean as e, ComputeKey as f, getOrInitConsensusVersionTestHeights as g, Execution as h, initThreadPool as i, ExecutionRequest as j, ExecutionResponse as k, Group as l, I16 as m, I32 as n, I64 as o, I8 as p, Pedersen64 as q, runRayonThread as r, Plaintext as s, Poseidon2 as t, Poseidon4 as u, verifyFunctionExecution as v, Poseidon8 as w, PrivateKey as x, PrivateKeyCiphertext as y, Program as z };\n//# sourceMappingURL=index.js.map\n","import { _ as __wbg_init, a1 as exports } from './index.js';\n\nconst module = new URL(\"aleo_wasm.wasm\", import.meta.url);\n\n async function init(options) {\n await __wbg_init({\n module_or_path: await options.module,\n memory: options.memory,\n });\n return exports;\n }\n\nexport { init, module };\n//# sourceMappingURL=aleo_wasm_custom.js.map\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sources":["tmp/index.js","tmp/aleo_wasm_custom.js"],"sourcesContent":["function spawnWorker(url, module, memory, address) {\n return new Promise((resolve) => {\n const worker = new Worker(url, {\n type: \"module\",\n });\n\n worker.addEventListener(\"message\", (event) => {\n // This is needed in Node to wait one extra tick, so that way\n // the Worker can fully initialize before we return.\n setTimeout(() => {\n resolve(worker);\n\n // When running in Node, this allows the process to exit\n // even though the Worker is still running.\n if (worker.unref) {\n worker.unref();\n }\n }, 0);\n }, {\n capture: true,\n once: true,\n });\n\n worker.postMessage({\n module,\n memory,\n address,\n });\n });\n }\n\nlet wasm;\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); }\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.buffer !== wasm.memory.buffer) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().slice(ptr, ptr + len));\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_export_1(addHeapObject(e));\n }\n}\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n};\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer !== wasm.memory.buffer) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nconst CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(state => {\n wasm.__wbindgen_export_5.get(state.dtor)(state.a, state.b);\n});\n\nfunction makeMutClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n const a = state.a;\n state.a = 0;\n try {\n return f(a, state.b, ...args);\n } finally {\n if (--state.cnt === 0) {\n wasm.__wbindgen_export_5.get(state.dtor)(a, state.b);\n CLOSURE_DTORS.unregister(state);\n } else {\n state.a = a;\n }\n }\n };\n real.original = state;\n CLOSURE_DTORS.register(real, state, state);\n return real;\n}\n\nfunction _assertClass(instance, klass) {\n if (!(instance instanceof klass)) {\n throw new Error(`expected instance of ${klass.name}`);\n }\n}\n/**\n * @param {number} receiver\n */\nfunction runRayonThread(receiver) {\n wasm.runRayonThread(receiver);\n}\n\n/**\n * @param {URL} url\n * @param {number} num_threads\n * @returns {Promise<void>}\n */\nfunction initThreadPool(url, num_threads) {\n const ret = wasm.initThreadPool(addHeapObject(url), num_threads);\n return takeObject(ret);\n}\n\nlet stack_pointer = 128;\n\nfunction addBorrowedObject(obj) {\n if (stack_pointer == 1) throw new Error('out of js stack');\n heap[--stack_pointer] = obj;\n return stack_pointer;\n}\n\nfunction passArray8ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 1, 1) >>> 0;\n getUint8ArrayMemory0().set(arg, ptr / 1);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n/**\n * Verify an execution. Executions with multiple transitions must have the program source code and\n * verifying keys of imported functions supplied from outside to correctly verify. Also, this does\n * not verify that the state root of the execution is included in the Aleo Network ledger.\n *\n * @param {Execution} execution The function execution to verify\n * @param {VerifyingKey} verifying_key The verifying key for the function\n * @param {Program} program The program that the function execution belongs to\n * @param {String} function_id The name of the function that was executed\n * @param {Object} imports The imports for the program in the form of { \"program_id.aleo\":\"source code\", ... }\n * @param {Object} import_verifying_keys The verifying keys for the imports in the form of { \"program_id.aleo\": [[\"function, \"verifying_key\"], ...], ...}\n * @returns {boolean} True if the execution is valid, false otherwise\n * @param {Execution} execution\n * @param {VerifyingKey} verifying_key\n * @param {Program} program\n * @param {string} function_id\n * @param {object | null | undefined} imports\n * @param {object | null | undefined} imported_verifying_keys\n * @param {number} block_height\n * @returns {boolean}\n */\nfunction verifyFunctionExecution(execution, verifying_key, program, function_id, imports, imported_verifying_keys, block_height) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(execution, Execution);\n _assertClass(verifying_key, VerifyingKey);\n _assertClass(program, Program);\n const ptr0 = passStringToWasm0(function_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.verifyFunctionExecution(retptr, execution.__wbg_ptr, verifying_key.__wbg_ptr, program.__wbg_ptr, ptr0, len0, isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(imported_verifying_keys) ? 0 : addHeapObject(imported_verifying_keys), block_height);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return r0 !== 0;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n}\n\n/**\n * Set test consensus version heights for testing.\n *\n * @param {string | undefined} heights The block heights at which each consensus version applies. This input should be a simple csv list of block heights and there should be one number for each consensus version. If left undefined, the default test heights will be applied.\n *\n * @example\n * import { getOrInitConsensusVersionHeights } from @provablehq/sdk;\n *\n * Set the consensus version heights.\n * getOrInitConsensusVersionTestHeights(\"0,1,2,3,4,5,6,7,8,9,10\");\n * @param {string | null} [heights]\n * @returns {Array<any>}\n */\nfunction getOrInitConsensusVersionTestHeights(heights) {\n var ptr0 = isLikeNone(heights) ? 0 : passStringToWasm0(heights, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len0 = WASM_VECTOR_LEN;\n const ret = wasm.getOrInitConsensusVersionTestHeights(ptr0, len0);\n return takeObject(ret);\n}\n\nfunction passArrayJsValueToWasm0(array, malloc) {\n const ptr = malloc(array.length * 4, 4) >>> 0;\n const mem = getDataViewMemory0();\n for (let i = 0; i < array.length; i++) {\n mem.setUint32(ptr + 4 * i, addHeapObject(array[i]), true);\n }\n WASM_VECTOR_LEN = array.length;\n return ptr;\n}\n\nfunction getArrayJsValueFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n const mem = getDataViewMemory0();\n const result = [];\n for (let i = ptr; i < ptr + 4 * len; i += 4) {\n result.push(takeObject(mem.getUint32(i, true)));\n }\n return result;\n}\nfunction __wbg_adapter_40(arg0, arg1, arg2) {\n wasm.__wbindgen_export_6(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wbg_adapter_870(arg0, arg1, arg2, arg3) {\n wasm.__wbindgen_export_7(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));\n}\n\nconst __wbindgen_enum_RequestCredentials = [\"omit\", \"same-origin\", \"include\"];\n\nconst __wbindgen_enum_RequestMode = [\"same-origin\", \"no-cors\", \"cors\", \"navigate\"];\n\nconst AddressFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_address_free(ptr >>> 0, 1));\n/**\n * Public address of an Aleo account\n */\nclass Address {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Address.prototype);\n obj.__wbg_ptr = ptr;\n AddressFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n AddressFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_address_free(ptr, 0);\n }\n /**\n * Get an address object from a group.\n *\n * @param {Group} group The group object.\n *\n * @returns {Address} The address object.\n * @param {Group} group\n * @returns {Address}\n */\n static fromGroup(group) {\n _assertClass(group, Group);\n var ptr0 = group.__destroy_into_raw();\n const ret = wasm.address_fromGroup(ptr0);\n return Address.__wrap(ret);\n }\n /**\n * Get the left endian boolean array representation of the bits of the address.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.address_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get an address object from an array of fields.\n *\n * @param {Array} fields An array of fields.\n *\n * @returns {Plaintext} The address object.\n * @param {Array<any>} fields\n * @returns {Address}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create an aleo address object from a string representation of an address\n *\n * @param {string} address String representation of an addressm\n * @returns {Address} Address\n * @param {string} address\n * @returns {Address}\n */\n static from_string(address) {\n const ptr0 = passStringToWasm0(address, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.address_from_string(ptr0, len0);\n return Address.__wrap(ret);\n }\n /**\n * Get the left endian byte array representation of the address.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get an address from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A left endian boolean array representing the bits of the address.\n *\n * @returns {Address} The address object.\n * @param {Array<any>} bits\n * @returns {Address}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the plaintext representation of the address.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.address_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get an address from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the address.\n *\n * @returns {Address} The address object.\n * @param {Uint8Array} bytes\n * @returns {Address}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Derive an Aleo address from a view key\n *\n * @param {ViewKey} view_key The view key to derive the address from\n * @returns {Address} Address corresponding to the view key\n * @param {ViewKey} view_key\n * @returns {Address}\n */\n static from_view_key(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.address_from_view_key(view_key.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Derive an Aleo address from a compute key.\n *\n * @param {ComputeKey} compute_key The compute key to derive the address from\n * @param {ComputeKey} compute_key\n * @returns {Address}\n */\n static from_compute_key(compute_key) {\n _assertClass(compute_key, ComputeKey);\n const ret = wasm.address_from_compute_key(compute_key.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Derive an Aleo address from a private key\n *\n * @param {PrivateKey} private_key The private key to derive the address from\n * @returns {Address} Address corresponding to the private key\n * @param {PrivateKey} private_key\n * @returns {Address}\n */\n static from_private_key(private_key) {\n _assertClass(private_key, PrivateKey);\n const ret = wasm.address_from_private_key(private_key.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Verify a signature for a message signed by the address\n *\n * @param {Uint8Array} Byte array representing a message signed by the address\n * @returns {boolean} Boolean representing whether or not the signature is valid\n * @param {Uint8Array} message\n * @param {Signature} signature\n * @returns {boolean}\n */\n verify(message, signature) {\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n _assertClass(signature, Signature);\n const ret = wasm.address_verify(this.__wbg_ptr, ptr0, len0, signature.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the group representation of the address object.\n * @returns {Group}\n */\n toGroup() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the field array representation of the address.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of an Aleo address object\n *\n * @param {Address} Address\n * @returns {string} String representation of the address\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst AuthorizationFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_authorization_free(ptr >>> 0, 1));\n/**\n * Authorization object containing the authorization for a transaction.\n */\nclass Authorization {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Authorization.prototype);\n obj.__wbg_ptr = ptr;\n AuthorizationFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n AuthorizationFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_authorization_free(ptr, 0);\n }\n /**\n * Reconstructs an Authorization object from its string representation.\n *\n * @param {String} authorization The string representation of the Authorization.\n * @param {string} authorization\n * @returns {Authorization}\n */\n static fromString(authorization) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(authorization, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.authorization_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Authorization.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the left-endian byte representation of the Authorization.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transitions in an Authorization.\n *\n * @returns {Array<Transition>} Array of transition objects\n * @returns {Array<any>}\n */\n transitions() {\n const ret = wasm.authorization_transitions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates an authorization object from a left-endian byte representation of an Authorization.\n *\n * @param {Uint8Array} bytes Left-endian bytes representing the Authorization.\n * @param {Uint8Array} bytes\n * @returns {Authorization}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Authorization.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the function name.\n *\n * @returns {string} The function name.\n * @returns {string}\n */\n functionName() {\n let deferred2_0;\n let deferred2_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_functionName(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n var ptr1 = r0;\n var len1 = r1;\n if (r3) {\n ptr1 = 0; len1 = 0;\n throw takeObject(r2);\n }\n deferred2_0 = ptr1;\n deferred2_1 = len1;\n return getStringFromWasm0(ptr1, len1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);\n }\n }\n /**\n * Returns `true` if the Authorization is for `credits.aleo/fee_public`.\n * @returns {boolean}\n */\n isFeePublic() {\n const ret = wasm.authorization_isFeePublic(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns `true` if the Authorization is for `credits.aleo/fee_private`.\n * @returns {boolean}\n */\n isFeePrivate() {\n const ret = wasm.authorization_isFeePrivate(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the execution ID for the Authorization.\n *\n * @returns {Field} The execution ID for the Authorization, call toString() after this result to get the string representation.\n * @returns {Field}\n */\n toExecutionId() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_toExecutionId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Insert a transition into the Authorization.\n *\n * @param {Transition} transition The transition object to insert into the Authorization.\n * @param {Transition} transition\n */\n insertTransition(transition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition, Transition);\n var ptr0 = transition.__destroy_into_raw();\n wasm.authorization_insertTransition(retptr, this.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the number of `Request`s in the Authorization.\n * @returns {number}\n */\n len() {\n const ret = wasm.authorization_len(this.__wbg_ptr);\n return ret >>> 0;\n }\n /**\n * Create a new authorization from a request object.\n *\n * @param {ExecutionRequest} request The ExecutionRequest to build the authorization from.\n * @param {ExecutionRequest} request\n * @returns {Authorization}\n */\n static new(request) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(request, ExecutionRequest);\n var ptr0 = request.__destroy_into_raw();\n wasm.authorization_new(retptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Authorization.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Check if an Authorization object is the same as another.\n *\n * @param {Authorization} other The Authorization object to determine equality with.\n * @param {Authorization} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Authorization);\n const ret = wasm.authorization_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Return `true` if the Authorization is empty.\n * @returns {boolean}\n */\n isEmpty() {\n const ret = wasm.authorization_isEmpty(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns `true` if the Authorization is for `credits.aleo/split`.\n * @returns {boolean}\n */\n isSplit() {\n const ret = wasm.authorization_isSplit(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns a new and independent replica of the Authorization.\n * @returns {Authorization}\n */\n replicate() {\n const ret = wasm.authorization_replicate(this.__wbg_ptr);\n return Authorization.__wrap(ret);\n }\n /**\n * Returns the string representation of the Authorization.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.authorization_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst BHP1024Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp1024_free(ptr >>> 0, 1));\n\nclass BHP1024 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP1024.prototype);\n obj.__wbg_ptr = ptr;\n BHP1024Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP1024Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp1024_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 1024 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp1024_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 1024 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp1024_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 1024 bits.\n */\n constructor() {\n const ret = wasm.bhp1024_new();\n this.__wbg_ptr = ret >>> 0;\n BHP1024Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 1024 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp1024_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 1024 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP1024}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp1024_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP1024.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 1024 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp1024_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BHP256Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp256_free(ptr >>> 0, 1));\n\nclass BHP256 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP256.prototype);\n obj.__wbg_ptr = ptr;\n BHP256Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP256Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp256_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 256 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp256_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 256 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp256_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 256 bits.\n */\n constructor() {\n const ret = wasm.bhp256_new();\n this.__wbg_ptr = ret >>> 0;\n BHP256Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 256 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp256_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 256 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP256}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp256_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP256.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 256 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp256_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BHP512Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp512_free(ptr >>> 0, 1));\n\nclass BHP512 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP512.prototype);\n obj.__wbg_ptr = ptr;\n BHP512Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP512Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp512_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 512 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp512_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 512 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp512_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 512 bits.\n */\n constructor() {\n const ret = wasm.bhp512_new();\n this.__wbg_ptr = ret >>> 0;\n BHP512Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 512 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp512_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 512 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP512}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp512_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP512.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 512 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp512_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BHP768Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_bhp768_free(ptr >>> 0, 1));\n\nclass BHP768 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(BHP768.prototype);\n obj.__wbg_ptr = ptr;\n BHP768Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BHP768Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_bhp768_free(ptr, 0);\n }\n /**\n * Returns a BHP hash with an input hasher of 768 bits.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp768_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 768 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp768_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 768 bits.\n */\n constructor() {\n const ret = wasm.bhp768_new();\n this.__wbg_ptr = ret >>> 0;\n BHP768Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the BHP hash with an input hasher of 768 bits.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.bhp768_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a BHP hasher with an input size of 768 bits with a custom domain separator.\n * @param {string} domain_separator\n * @returns {BHP768}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.bhp768_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return BHP768.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns a BHP commitment with an input hasher of 768 bits and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.bhp768_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst BooleanFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_boolean_free(ptr >>> 0, 1));\n/**\n * Boolean element.\n */\nclass Boolean {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Boolean.prototype);\n obj.__wbg_ptr = ptr;\n BooleanFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n BooleanFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_boolean_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the boolean element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.boolean_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a boolean object from a string representation (\"true\"/\"false\").\n * @param {string} boolean\n * @returns {Boolean}\n */\n static fromString(boolean) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(boolean, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.boolean_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Boolean.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the boolean element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a boolean element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Boolean}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Boolean.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext from the boolean element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.boolean_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a boolean element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Boolean}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Boolean.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Logical OR.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n or(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_or(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical AND.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n and(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_and(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Creates a Boolean from a native JS bool.\n * @param {boolean} value\n */\n constructor(value) {\n const ret = wasm.boolean_new(value);\n this.__wbg_ptr = ret >>> 0;\n BooleanFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Logical NOR.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n nor(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_nor(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical NOT.\n * @returns {Boolean}\n */\n not() {\n const ret = wasm.boolean_not(this.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical XOR.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n xor(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_xor(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Logical NAND.\n * @param {Boolean} other\n * @returns {Boolean}\n */\n nand(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_nand(this.__wbg_ptr, other.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Clone the boolean element.\n * @returns {Boolean}\n */\n clone() {\n const ret = wasm.boolean_clone(this.__wbg_ptr);\n return Boolean.__wrap(ret);\n }\n /**\n * Check if one boolean element equals another.\n * @param {Boolean} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Boolean);\n const ret = wasm.boolean_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random boolean element.\n * @returns {Boolean}\n */\n static random() {\n const ret = wasm.boolean_random();\n return Boolean.__wrap(ret);\n }\n /**\n * Returns the string representation of the boolean element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.boolean_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst CiphertextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_ciphertext_free(ptr >>> 0, 1));\n/**\n * SnarkVM Ciphertext object. A Ciphertext represents an symmetrically encrypted plaintext. This\n * object provides decryption methods to recover the plaintext from the ciphertext (given the\n * api consumer has the proper decryption materials).\n */\nclass Ciphertext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Ciphertext.prototype);\n obj.__wbg_ptr = ptr;\n CiphertextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n CiphertextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_ciphertext_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the bits of the ciphertext.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.ciphertext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a ciphertext object from an array of fields.\n *\n * @param {Array} fields An array of fields.\n *\n * @returns {Ciphertext} The ciphertext object.\n * @param {Array<any>} fields\n * @returns {Ciphertext}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Deserialize a Ciphertext string into a Ciphertext object.\n *\n * @param {string} ciphertext A string representation of the ciphertext.\n *\n * @returns {Ciphertext} The Ciphertext object.\n * @param {string} ciphertext\n * @returns {Ciphertext}\n */\n static fromString(ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(ciphertext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.ciphertext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the left endian byte array representation of the ciphertext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a ciphertext object from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A left endian boolean array representing the bits of the ciphertext.\n *\n * @returns {Ciphertext} The ciphertext object.\n * @param {Array<any>} bits\n * @returns {Ciphertext}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Deserialize a left endian byte array into a Ciphertext.\n *\n * @param {Uint8Array} bytes The byte array representing the Ciphertext.\n *\n * @returns {Ciphertext} The Ciphertext object.\n * @param {Uint8Array} bytes\n * @returns {Ciphertext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a ciphertext into plaintext using the given ciphertext view key.\n *\n * @param {Field} transition_view_key The transition view key that was used to encrypt the ciphertext.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {Field} transition_view_key\n * @returns {Plaintext}\n */\n decryptSymmetric(transition_view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition_view_key, Field);\n var ptr0 = transition_view_key.__destroy_into_raw();\n wasm.ciphertext_decryptSymmetric(retptr, this.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt a ciphertext using the view key of the transition signer, transition public key, and\n * (program, function, index) tuple.\n *\n * @param {ViewKey} view_key The view key of the transition signer.\n * @param {Group} transition_public_key The transition public key used to encrypt the ciphertext.\n * @param {string} program The program ID associated with the ciphertext.\n * @param {string} function_name The name of the function associated with the encrypted inputs and outputs.\n * @param {u16} index The index of the input or output parameter that was encrypted.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {ViewKey} view_key\n * @param {Group} transition_public_key\n * @param {string} program\n * @param {string} function_name\n * @param {number} index\n * @returns {Plaintext}\n */\n decryptWithTransitionInfo(view_key, transition_public_key, program, function_name, index) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n var ptr0 = view_key.__destroy_into_raw();\n _assertClass(transition_public_key, Group);\n var ptr1 = transition_public_key.__destroy_into_raw();\n const ptr2 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n const ptr3 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len3 = WASM_VECTOR_LEN;\n wasm.ciphertext_decryptWithTransitionInfo(retptr, this.__wbg_ptr, ptr0, ptr1, ptr2, len2, ptr3, len3, index);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt a ciphertext using the transition view key and a (program, function, index) tuple.\n *\n * @param {Field} transition_view_key The transition view key that was used to encrypt the ciphertext.\n * @param {string} program The program ID associated with the ciphertext.\n * @param {string} function_name The name of the function associated with the encrypted inputs and outputs.\n * @param {u16} index The index of the input or output parameter that was encrypted.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {Field} transition_view_key\n * @param {string} program\n * @param {string} function_name\n * @param {number} index\n * @returns {Plaintext}\n */\n decryptWithTransitionViewKey(transition_view_key, program, function_name, index) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition_view_key, Field);\n var ptr0 = transition_view_key.__destroy_into_raw();\n const ptr1 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n wasm.ciphertext_decryptWithTransitionViewKey(retptr, this.__wbg_ptr, ptr0, ptr1, len1, ptr2, len2, index);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt the ciphertext using the given view key.\n *\n * @param {ViewKey} viewKey The view key of the account that encrypted the ciphertext.\n * @param {Group} nonce The nonce used to encrypt the ciphertext.\n *\n * @returns {Plaintext} The decrypted plaintext.\n * @param {ViewKey} view_key\n * @param {Group} nonce\n * @returns {Plaintext}\n */\n decrypt(view_key, nonce) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n var ptr0 = view_key.__destroy_into_raw();\n _assertClass(nonce, Group);\n var ptr1 = nonce.__destroy_into_raw();\n wasm.ciphertext_decrypt(retptr, this.__wbg_ptr, ptr0, ptr1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Serialize a Ciphertext object into a byte array.\n *\n * @returns {Uint8Array} The serialized Ciphertext.\n * @returns {Uint8Array}\n */\n toBytes() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the field array representation of the ciphertext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Serialize a Ciphertext into a js string.\n *\n * @returns {string} The serialized Ciphertext.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ComputeKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_computekey_free(ptr >>> 0, 1));\n\nclass ComputeKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ComputeKey.prototype);\n obj.__wbg_ptr = ptr;\n ComputeKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ComputeKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_computekey_free(ptr, 0);\n }\n /**\n * Create a new compute key from a private key.\n *\n * @param {PrivateKey} private_key Private key\n *\n * @returns {ComputeKey} Compute key\n * @param {PrivateKey} private_key\n * @returns {ComputeKey}\n */\n static from_private_key(private_key) {\n _assertClass(private_key, PrivateKey);\n const ret = wasm.computekey_from_private_key(private_key.__wbg_ptr);\n return ComputeKey.__wrap(ret);\n }\n /**\n * Get the pr_tag of the compute key.\n *\n * @returns {Group} pr_tag\n * @returns {Group}\n */\n pk_sig() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the pr_sig of the compute key.\n *\n * @returns {Group} pr_sig\n * @returns {Group}\n */\n pr_sig() {\n const ret = wasm.computekey_pr_sig(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the sk_prf of the compute key.\n *\n * @returns {Scalar} sk_prf\n * @returns {Scalar}\n */\n sk_prf() {\n const ret = wasm.computekey_sk_prf(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the address from the compute key.\n *\n * @returns {Address}\n * @returns {Address}\n */\n address() {\n const ret = wasm.address_from_compute_key(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n}\n\nconst EncryptionToolkitFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_encryptiontoolkit_free(ptr >>> 0, 1));\n/**\n * EncryptionToolkit provides a set of functions for encrypting, decrypting, and generating individual view keys for records, transitions, and ciphertexts.\n */\nclass EncryptionToolkit {\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n EncryptionToolkitFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_encryptiontoolkit_free(ptr, 0);\n }\n /**\n * Generates a transition view key from the view key and the transition public key.\n *\n * @param {ViewKey} view_key The view key of the account that generated the transition.\n * @param {Group} tpk The transition public key.\n *\n * @returns {Field} The transition view key.\n * @param {ViewKey} view_key\n * @param {Group} tpk\n * @returns {Field}\n */\n static generateTvk(view_key, tpk) {\n _assertClass(view_key, ViewKey);\n _assertClass(tpk, Group);\n const ret = wasm.encryptiontoolkit_generateTvk(view_key.__wbg_ptr, tpk.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Decrypt the sender ciphertext associated with a record.\n *\n * @param {ViewKey} view_key View key associated with the record.\n * @param {RecordPlaintext} record Record plaintext associated with a sender.\n * @param {Field} sender_ciphertext Sender ciphertext associated with the record.\n *\n * @returns {Address} address of the sender.\n * @param {ViewKey} view_key\n * @param {RecordPlaintext} record\n * @param {Field} sender_ciphertext\n * @returns {Address}\n */\n static decryptSender(view_key, record, sender_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n _assertClass(record, RecordPlaintext);\n _assertClass(sender_ciphertext, Field);\n wasm.encryptiontoolkit_decryptSender(retptr, view_key.__wbg_ptr, record.__wbg_ptr, sender_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Checks if a record ciphertext is owned by the given view key.\n *\n * @param {ViewKey} view_key View key of the owner of the records.\n * @param {Vec<RecordCiphertext>} records The record ciphertexts for which to check ownership.\n *\n * @returns {Vec<RecordCiphertext>} The record ciphertexts that are owned by the view key.\n * @param {ViewKey} view_key\n * @param {RecordCiphertext[]} records\n * @returns {RecordCiphertext[]}\n */\n static checkOwnedRecords(view_key, records) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n const ptr0 = passArrayJsValueToWasm0(records, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.encryptiontoolkit_checkOwnedRecords(retptr, view_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v2 = getArrayJsValueFromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a set of record ciphertexts in parallel and stores successful decryptions.\n *\n * @param {ViewKey} view_key The view key of the owner of the records.\n * @param {Vec<RecordCiphertext>} records The record ciphertexts to decrypt.\n *\n * @returns {vec<RecordPlaintext>} The decrypted record plaintexts.\n * @param {ViewKey} view_key\n * @param {RecordCiphertext[]} records\n * @returns {RecordPlaintext[]}\n */\n static decryptOwnedRecords(view_key, records) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n const ptr0 = passArrayJsValueToWasm0(records, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.encryptiontoolkit_decryptOwnedRecords(retptr, view_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v2 = getArrayJsValueFromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt the sender ciphertext associated with the record with the record view key.\n *\n * @param {Field} record_view_key Record view key associated with the record.\n * @param {Field} sender_ciphertext Sender ciphertext associated with the record.\n *\n * @return {Address} the address of the sender.\n * @param {Field} record_view_key\n * @param {Field} sender_ciphertext\n * @returns {Address}\n */\n static decryptSenderWithRvk(record_view_key, sender_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(record_view_key, Field);\n _assertClass(sender_ciphertext, Field);\n wasm.encryptiontoolkit_decryptSenderWithRvk(retptr, record_view_key.__wbg_ptr, sender_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates a record view key from the view key. This can be later be used to decrypt a\n *\n * @param {ViewKey} view_key The view key of the owner of the record.\n * @param {RecordCiphertext} record_ciphertext The record ciphertext used to derive the record view key.\n *\n * @returns {Field} The record view key.\n * @param {ViewKey} view_key\n * @param {RecordCiphertext} record_ciphertext\n * @returns {Field}\n */\n static generateRecordViewKey(view_key, record_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n _assertClass(record_ciphertext, RecordCiphertext);\n wasm.encryptiontoolkit_generateRecordViewKey(retptr, view_key.__wbg_ptr, record_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a transition using the transition view key. The ciphertext inputs and outputs\n * can only be decrypted if the transition view key was generated by the transaction signer.\n *\n * @param {Transition} transition The transition to decrypt.\n * @param {Field} transition_vk The transition view key.\n *\n * @returns {Transition} The decrypted transition.\n * @param {Transition} transition\n * @param {Field} transition_vk\n * @returns {Transition}\n */\n static decryptTransitionWithVk(transition, transition_vk) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition, Transition);\n _assertClass(transition_vk, Field);\n wasm.encryptiontoolkit_decryptTransitionWithVk(retptr, transition.__wbg_ptr, transition_vk.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a record ciphertext using the record view key. Decryption only succeeds\n * if the record view key was generated from the view key of the record owner.\n *\n * @param {Field} record_vk The record view key.\n * @param {RecordCiphertext} record_ciphertext The record ciphertext to decrypt.\n *\n * @returns {RecordPlaintext} The decrypted record plaintext.\n * @param {Field} record_vk\n * @param {RecordCiphertext} record_ciphertext\n * @returns {RecordPlaintext}\n */\n static decryptRecordWithRVk(record_vk, record_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(record_vk, Field);\n _assertClass(record_ciphertext, RecordCiphertext);\n wasm.encryptiontoolkit_decryptRecordWithRVk(retptr, record_vk.__wbg_ptr, record_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst ExecutionFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_execution_free(ptr >>> 0, 1));\n/**\n * Execution of an Aleo program.\n */\nclass Execution {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Execution.prototype);\n obj.__wbg_ptr = ptr;\n ExecutionFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ExecutionFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_execution_free(ptr, 0);\n }\n /**\n * Creates an execution object from a string representation of an execution.\n *\n * @returns {Execution | Error} The wasm representation of an execution object.\n * @param {string} execution\n * @returns {Execution}\n */\n static fromString(execution) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(execution, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.execution_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Execution.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the transitions present in the execution.\n *\n * @returns Array<Transition> the array of transitions present in the execution.\n * @returns {Array<any>}\n */\n transitions() {\n const ret = wasm.execution_transitions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the global state root of the execution.\n *\n * @returns {Execution | Error} The global state root used in the execution.\n * @returns {string}\n */\n globalStateRoot() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.execution_globalStateRoot(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the proof of the execution.\n *\n * @returns {string} The execution proof.\n * @returns {string}\n */\n proof() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.execution_proof(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the string representation of the execution.\n *\n * @returns {string} The string representation of the execution.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.execution_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ExecutionRequestFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_executionrequest_free(ptr >>> 0, 1));\n\nclass ExecutionRequest {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ExecutionRequest.prototype);\n obj.__wbg_ptr = ptr;\n ExecutionRequestFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ExecutionRequestFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_executionrequest_free(ptr, 0);\n }\n /**\n * Returns the network ID.\n * @returns {number}\n */\n network_id() {\n const ret = wasm.executionrequest_network_id(this.__wbg_ptr);\n return ret;\n }\n /**\n * Returns the program ID.\n * @returns {string}\n */\n program_id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_program_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Builds a request object from a string representation of a request.\n *\n * @param {string} request String representation of the request.\n * @param {string} request\n * @returns {ExecutionRequest}\n */\n static fromString(request) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(request, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.executionrequest_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ExecutionRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the bytes representation of the request.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates an request object from a bytes representation of an request.\n * @param {Uint8Array} bytes\n * @returns {ExecutionRequest}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ExecutionRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the function name.\n * @returns {string}\n */\n function_name() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_function_name(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the signer commitment `scm`.\n * @returns {Field}\n */\n scm() {\n const ret = wasm.executionrequest_scm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the transition commitment `tcm`.\n * @returns {Field}\n */\n tcm() {\n const ret = wasm.executionrequest_tcm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the transition view key `tvk`.\n * @returns {Field}\n */\n tvk() {\n const ret = wasm.executionrequest_tvk(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Create a new request by signing over a program ID and set of inputs.\n *\n * @param {PrivateKey} private_key The private key of the signer.\n * @param {string} program_id The id of the program to create the signature for.\n * @param {string} function_name The function name to create the signature for.\n * @param {string[]} inputs The inputs to the function.\n * @param {string[]} input_types The input types of the function.\n * @param {Field | undefined} root_tvk The tvk of the function at the top of the call graph. This is undefined if this request is built for the top-level call or if there is only one function in the call graph.\n * @param {boolean} is_root Flag to indicate if this is the top level function in the call graph.\n * @param {PrivateKey} private_key\n * @param {string} program_id\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {Array<any>} input_types\n * @param {Field | null | undefined} root_tvk\n * @param {Field | null | undefined} program_checksum\n * @param {boolean} is_root\n * @returns {ExecutionRequest}\n */\n static sign(private_key, program_id, function_name, inputs, input_types, root_tvk, program_checksum, is_root) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n var ptr0 = private_key.__destroy_into_raw();\n const ptr1 = passStringToWasm0(program_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n let ptr3 = 0;\n if (!isLikeNone(root_tvk)) {\n _assertClass(root_tvk, Field);\n ptr3 = root_tvk.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(program_checksum)) {\n _assertClass(program_checksum, Field);\n ptr4 = program_checksum.__destroy_into_raw();\n }\n wasm.executionrequest_sign(retptr, ptr0, ptr1, len1, ptr2, len2, addHeapObject(inputs), addHeapObject(input_types), ptr3, ptr4, is_root);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ExecutionRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the function inputs as an array of strings.\n * @returns {Array<any>}\n */\n inputs() {\n const ret = wasm.executionrequest_inputs(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the request signer.\n * @returns {Address}\n */\n signer() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Returns the tag secret key `sk_tag`.\n * @returns {Field}\n */\n sk_tag() {\n const ret = wasm.executionrequest_sk_tag(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the transition public key `tpk`.\n * @returns {Group}\n */\n to_tpk() {\n const ret = wasm.executionrequest_to_tpk(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Verify the input types within a request.\n *\n * @param {string[]} The input_types within the request.\n * @param {boolean} Flag to indicate whether this request is the first function in the call graph.\n * @param {Array<any>} input_types\n * @param {boolean} is_root\n * @param {Field | null} [program_checksum]\n * @returns {boolean}\n */\n verify(input_types, is_root, program_checksum) {\n let ptr0 = 0;\n if (!isLikeNone(program_checksum)) {\n _assertClass(program_checksum, Field);\n ptr0 = program_checksum.__destroy_into_raw();\n }\n const ret = wasm.executionrequest_verify(this.__wbg_ptr, addHeapObject(input_types), is_root, ptr0);\n return ret !== 0;\n }\n /**\n * Returns the input IDs for the transition.\n * @returns {Array<any>}\n */\n input_ids() {\n const ret = wasm.executionrequest_input_ids(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the signature for the transition.\n * @returns {Signature}\n */\n signature() {\n const ret = wasm.executionrequest_signature(this.__wbg_ptr);\n return Signature.__wrap(ret);\n }\n /**\n * Returns the request as a string.\n *\n * @returns {string} String representation of the request.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionrequest_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ExecutionResponseFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_executionresponse_free(ptr >>> 0, 1));\n/**\n * Webassembly Representation of an Aleo function execution response\n *\n * This object is returned by the execution of an Aleo function off-chain. It provides methods for\n * retrieving the outputs of the function execution.\n */\nclass ExecutionResponse {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ExecutionResponse.prototype);\n obj.__wbg_ptr = ptr;\n ExecutionResponseFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ExecutionResponseFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_executionresponse_free(ptr, 0);\n }\n /**\n * Get the outputs of the executed function\n *\n * @returns {Array} Array of strings representing the outputs of the function\n * @returns {Array<any>}\n */\n getOutputs() {\n const ret = wasm.executionresponse_getOutputs(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the program\n * @returns {Program}\n */\n getProgram() {\n const ret = wasm.executionresponse_getProgram(this.__wbg_ptr);\n return Program.__wrap(ret);\n }\n /**\n * Returns the execution object if present, null if otherwise.\n *\n * @returns {Execution | undefined} The execution object if present, null if otherwise\n * @returns {Execution | undefined}\n */\n getExecution() {\n const ret = wasm.executionresponse_getExecution(this.__wbg_ptr);\n return ret === 0 ? undefined : Execution.__wrap(ret);\n }\n /**\n * Returns the function identifier\n * @returns {string}\n */\n getFunctionId() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionresponse_getFunctionId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the proving_key if the proving key was cached in the Execution response.\n * Note the proving key is removed from the response object after the first call to this\n * function. Subsequent calls will return null.\n *\n * @returns {ProvingKey | undefined} The proving key\n * @returns {ProvingKey | undefined}\n */\n getProvingKey() {\n const ret = wasm.executionresponse_getProvingKey(this.__wbg_ptr);\n return ret === 0 ? undefined : ProvingKey.__wrap(ret);\n }\n /**\n * Returns the verifying_key associated with the program\n *\n * @returns {VerifyingKey} The verifying key\n * @returns {VerifyingKey}\n */\n getVerifyingKey() {\n const ret = wasm.executionresponse_getVerifyingKey(this.__wbg_ptr);\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the program keys if present\n * @returns {KeyPair}\n */\n getKeys() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.executionresponse_getKeys(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return KeyPair.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst FieldFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_field_free(ptr >>> 0, 1));\n/**\n * Field element.\n */\nclass Field {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Field.prototype);\n obj.__wbg_ptr = ptr;\n FieldFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n static __unwrap(jsValue) {\n if (!(jsValue instanceof Field)) {\n return 0;\n }\n return jsValue.__destroy_into_raw();\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n FieldFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_field_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the field element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.field_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a field object from a string representation of a field element.\n * @param {string} field\n * @returns {Field}\n */\n static fromString(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(field, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.field_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the field element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a field element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Field}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext from the field element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.field_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a field element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Field}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Initializes a new field as a domain separator.\n * @param {string} domain\n * @returns {Field}\n */\n static newDomainSeparator(domain) {\n const ptr0 = passStringToWasm0(domain, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.field_newDomainSeparator(ptr0, len0);\n return Field.__wrap(ret);\n }\n /**\n * Add two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n add(other) {\n _assertClass(other, Field);\n const ret = wasm.field_add(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the multiplicative identity of the field.\n * @returns {Field}\n */\n static one() {\n const ret = wasm.field_one();\n return Field.__wrap(ret);\n }\n /**\n * Power of a field element.\n * @param {Field} other\n * @returns {Field}\n */\n pow(other) {\n _assertClass(other, Field);\n const ret = wasm.field_pow(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the additive identity element of the field.\n * @returns {Field}\n */\n static zero() {\n const ret = wasm.field_zero();\n return Field.__wrap(ret);\n }\n /**\n * Clone the field element.\n * @returns {Field}\n */\n clone() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Divide two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n divide(other) {\n _assertClass(other, Field);\n const ret = wasm.field_divide(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Double the field element.\n * @returns {Field}\n */\n double() {\n const ret = wasm.field_double(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Check if one field element equals another.\n * @param {Field} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Field);\n const ret = wasm.field_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random field element.\n * @returns {Field}\n */\n static random() {\n const ret = wasm.field_random();\n return Field.__wrap(ret);\n }\n /**\n * Invert the field element.\n * @returns {Field}\n */\n inverse() {\n const ret = wasm.field_inverse(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Multiply two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n multiply(other) {\n _assertClass(other, Field);\n const ret = wasm.field_multiply(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Subtract two field elements.\n * @param {Field} other\n * @returns {Field}\n */\n subtract(other) {\n _assertClass(other, Field);\n const ret = wasm.field_subtract(this.__wbg_ptr, other.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Returns the string representation of the field element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.field_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst GraphKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_graphkey_free(ptr >>> 0, 1));\n\nclass GraphKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(GraphKey.prototype);\n obj.__wbg_ptr = ptr;\n GraphKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n GraphKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_graphkey_free(ptr, 0);\n }\n /**\n * Create a new graph key from a string representation of a graph key\n *\n * @param {string} graph_key String representation of a graph key\n * @returns {GraphKey} Graph key\n * @param {string} graph_key\n * @returns {GraphKey}\n */\n static from_string(graph_key) {\n const ptr0 = passStringToWasm0(graph_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.graphkey_from_string(ptr0, len0);\n return GraphKey.__wrap(ret);\n }\n /**\n * Create a new graph key from a view key.\n *\n * @param {ViewKey} view_key View key\n * @returns {GraphKey} Graph key\n * @param {ViewKey} view_key\n * @returns {GraphKey}\n */\n static from_view_key(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.graphkey_from_view_key(view_key.__wbg_ptr);\n return GraphKey.__wrap(ret);\n }\n /**\n * Get the sk_tag of the graph key. Used to determine ownership of records.\n * @returns {Field}\n */\n sk_tag() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get a string representation of a graph key\n *\n * @returns {string} String representation of a graph key\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.graphkey_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst GroupFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_group_free(ptr >>> 0, 1));\n/**\n * Elliptic curve element.\n */\nclass Group {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Group.prototype);\n obj.__wbg_ptr = ptr;\n GroupFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n GroupFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_group_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the group element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.address_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a group object from a string representation of a group element.\n * @param {string} group\n * @returns {Group}\n */\n static fromString(group) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(group, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.group_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the group element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a group element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Group}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext element from a group element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.group_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a group element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Group}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Multiply a group element by a scalar element.\n * @param {Scalar} scalar\n * @returns {Group}\n */\n scalarMultiply(scalar) {\n _assertClass(scalar, Scalar);\n const ret = wasm.group_scalarMultiply(this.__wbg_ptr, scalar.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the x-coordinate of the group element.\n * @returns {Field}\n */\n toXCoordinate() {\n const ret = wasm.group_toXCoordinate(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Add two group elements.\n * @param {Group} other\n * @returns {Group}\n */\n add(other) {\n _assertClass(other, Group);\n const ret = wasm.group_add(this.__wbg_ptr, other.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the group identity element under the group operation (i.e. the point at infinity.)\n * @returns {Group}\n */\n static zero() {\n const ret = wasm.group_zero();\n return Group.__wrap(ret);\n }\n /**\n * Clone the group element.\n * @returns {Group}\n */\n clone() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Double the group element.\n * @returns {Group}\n */\n double() {\n const ret = wasm.group_double(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Check if one group element equals another.\n * @param {Group} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Group);\n const ret = wasm.group_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random group element.\n * @returns {Group}\n */\n static random() {\n const ret = wasm.group_random();\n return Group.__wrap(ret);\n }\n /**\n * Get the inverse of the group element. This is the reflection of the point about the axis\n * of symmetry i.e. (x,y) -> (x, -y).\n * @returns {Group}\n */\n inverse() {\n const ret = wasm.group_inverse(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Subtract two group elements (equivalently: add the inverse of an element).\n * @param {Group} other\n * @returns {Group}\n */\n subtract(other) {\n _assertClass(other, Group);\n const ret = wasm.group_subtract(this.__wbg_ptr, other.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the generator of the group.\n * @returns {Group}\n */\n static generator() {\n const ret = wasm.group_generator();\n return Group.__wrap(ret);\n }\n /**\n * Get the field array representation of the group.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.address_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the string representation of the group element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.group_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I128Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i128_free(ptr >>> 0, 1));\n\nclass I128 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I128.prototype);\n obj.__wbg_ptr = ptr;\n I128Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I128Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i128_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I128}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i128_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i128_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I128}\n */\n absChecked() {\n const ret = wasm.i128_absChecked(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I128}\n */\n absWrapped() {\n const ret = wasm.i128_absWrapped(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I128} other\n * @returns {I128}\n */\n addWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I128} other\n * @returns {I128}\n */\n divWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I128}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I128}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i128_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I128} other\n * @returns {I128}\n */\n mulWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I128} other\n * @returns {I128}\n */\n remWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I128} other\n * @returns {I128}\n */\n subWrapped(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I128}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i128_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I128}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I128}\n */\n neg() {\n const ret = wasm.i128_neg(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I128} other\n * @returns {I128}\n */\n rem(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I128}\n */\n clone() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I128} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I128);\n const ret = wasm.i128_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I128}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i128_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I128}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i128_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I128}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i128_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I128.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i128_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I16Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i16_free(ptr >>> 0, 1));\n\nclass I16 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I16.prototype);\n obj.__wbg_ptr = ptr;\n I16Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I16Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i16_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I16}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i16_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i16_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I16}\n */\n absChecked() {\n const ret = wasm.i16_absChecked(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I16}\n */\n absWrapped() {\n const ret = wasm.i16_absWrapped(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I16} other\n * @returns {I16}\n */\n addWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I16} other\n * @returns {I16}\n */\n divWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I16}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I16}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i16_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I16} other\n * @returns {I16}\n */\n mulWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I16} other\n * @returns {I16}\n */\n remWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I16} other\n * @returns {I16}\n */\n subWrapped(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I16}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i16_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I16}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I16}\n */\n neg() {\n const ret = wasm.i16_neg(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I16} other\n * @returns {I16}\n */\n rem(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I16}\n */\n clone() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I16} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I16);\n const ret = wasm.i16_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I16}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i16_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I16}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i16_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I16}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i16_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I16.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i16_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I32Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i32_free(ptr >>> 0, 1));\n\nclass I32 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I32.prototype);\n obj.__wbg_ptr = ptr;\n I32Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I32Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i32_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I32}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i32_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i32_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I32}\n */\n absChecked() {\n const ret = wasm.i32_absChecked(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I32}\n */\n absWrapped() {\n const ret = wasm.i32_absWrapped(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I32} other\n * @returns {I32}\n */\n addWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I32} other\n * @returns {I32}\n */\n divWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I32}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I32}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i32_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I32} other\n * @returns {I32}\n */\n mulWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I32} other\n * @returns {I32}\n */\n remWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I32} other\n * @returns {I32}\n */\n subWrapped(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I32}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i32_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I32}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I32}\n */\n neg() {\n const ret = wasm.i32_neg(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I32} other\n * @returns {I32}\n */\n rem(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I32}\n */\n clone() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I32} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I32);\n const ret = wasm.i32_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I32}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i32_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I32}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i32_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I32}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i32_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I32.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i32_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I64Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i64_free(ptr >>> 0, 1));\n\nclass I64 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I64.prototype);\n obj.__wbg_ptr = ptr;\n I64Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I64Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i64_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I64}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i64_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i64_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I64}\n */\n absChecked() {\n const ret = wasm.i64_absChecked(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I64}\n */\n absWrapped() {\n const ret = wasm.i64_absWrapped(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I64} other\n * @returns {I64}\n */\n addWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I64} other\n * @returns {I64}\n */\n divWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I64}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I64}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i64_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I64} other\n * @returns {I64}\n */\n mulWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I64} other\n * @returns {I64}\n */\n remWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I64} other\n * @returns {I64}\n */\n subWrapped(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I64}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i64_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I64}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I64}\n */\n neg() {\n const ret = wasm.i64_neg(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I64} other\n * @returns {I64}\n */\n rem(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I64}\n */\n clone() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I64} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I64);\n const ret = wasm.i64_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I64}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i64_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I64}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i64_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I64}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i64_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I64.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i64_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst I8Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_i8_free(ptr >>> 0, 1));\n\nclass I8 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(I8.prototype);\n obj.__wbg_ptr = ptr;\n I8Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n I8Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_i8_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {I8}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i8_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i8_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {I8}\n */\n absChecked() {\n const ret = wasm.i8_absChecked(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {I8}\n */\n absWrapped() {\n const ret = wasm.i8_absWrapped(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {I8} other\n * @returns {I8}\n */\n addWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {I8} other\n * @returns {I8}\n */\n divWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {I8}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {I8}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.i8_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {I8} other\n * @returns {I8}\n */\n mulWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {I8} other\n * @returns {I8}\n */\n remWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {I8} other\n * @returns {I8}\n */\n subWrapped(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {I8}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.i8_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {I8}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return I8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {I8}\n */\n neg() {\n const ret = wasm.i8_neg(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {I8} other\n * @returns {I8}\n */\n rem(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_rem(this.__wbg_ptr, other.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {I8}\n */\n clone() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {I8} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, I8);\n const ret = wasm.i8_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {I8}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.i8_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {I8}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.i8_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {I8}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.i8_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return I8.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i8_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst KeyPairFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_keypair_free(ptr >>> 0, 1));\n/**\n * Key pair object containing both the function proving and verifying keys\n */\nclass KeyPair {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(KeyPair.prototype);\n obj.__wbg_ptr = ptr;\n KeyPairFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n KeyPairFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_keypair_free(ptr, 0);\n }\n /**\n * Get the proving key. This method will remove the proving key from the key pair\n *\n * @returns {ProvingKey}\n * @returns {ProvingKey}\n */\n provingKey() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.keypair_provingKey(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the verifying key. This method will remove the verifying key from the key pair\n *\n * @returns {VerifyingKey}\n * @returns {VerifyingKey}\n */\n verifyingKey() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.keypair_verifyingKey(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return VerifyingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create new key pair from proving and verifying keys\n *\n * @param {ProvingKey} proving_key Proving key corresponding to a function in an Aleo program\n * @param {VerifyingKey} verifying_key Verifying key corresponding to a function in an Aleo program\n * @returns {KeyPair} Key pair object containing both the function proving and verifying keys\n * @param {ProvingKey} proving_key\n * @param {VerifyingKey} verifying_key\n */\n constructor(proving_key, verifying_key) {\n _assertClass(proving_key, ProvingKey);\n var ptr0 = proving_key.__destroy_into_raw();\n _assertClass(verifying_key, VerifyingKey);\n var ptr1 = verifying_key.__destroy_into_raw();\n const ret = wasm.keypair_new(ptr0, ptr1);\n this.__wbg_ptr = ret >>> 0;\n KeyPairFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n}\n\nconst MetadataFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_metadata_free(ptr >>> 0, 1));\n\nclass Metadata {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Metadata.prototype);\n obj.__wbg_ptr = ptr;\n MetadataFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n MetadataFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_metadata_free(ptr, 0);\n }\n /**\n * @returns {string}\n */\n get name() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_name(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set name(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_name(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get locator() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_locator(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set locator(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_locator(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get prover() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_prover(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set prover(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_prover(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get verifier() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_verifier(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set verifier(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_verifier(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {string}\n */\n get verifyingKey() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.__wbg_get_metadata_verifyingKey(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @param {string} arg0\n */\n set verifyingKey(arg0) {\n const ptr0 = passStringToWasm0(arg0, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.__wbg_set_metadata_verifyingKey(this.__wbg_ptr, ptr0, len0);\n }\n /**\n * @returns {Metadata}\n */\n static fee_public() {\n const ret = wasm.metadata_fee_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static bond_public() {\n const ret = wasm.metadata_bond_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static fee_private() {\n const ret = wasm.metadata_fee_private();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static unbond_public() {\n const ret = wasm.metadata_unbond_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static bond_validator() {\n const ret = wasm.metadata_bond_validator();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_public() {\n const ret = wasm.metadata_transfer_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_private() {\n const ret = wasm.metadata_transfer_private();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static claim_unbond_public() {\n const ret = wasm.metadata_claim_unbond_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static set_validator_state() {\n const ret = wasm.metadata_set_validator_state();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_public_as_signer() {\n const ret = wasm.metadata_transfer_public_as_signer();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_private_to_public() {\n const ret = wasm.metadata_transfer_private_to_public();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static transfer_public_to_private() {\n const ret = wasm.metadata_transfer_public_to_private();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static join() {\n const ret = wasm.metadata_join();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {Metadata}\n */\n static split() {\n const ret = wasm.metadata_split();\n return Metadata.__wrap(ret);\n }\n /**\n * @returns {string}\n */\n static baseUrl() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.metadata_baseUrl(retptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * @returns {Metadata}\n */\n static inclusion() {\n const ret = wasm.metadata_inclusion();\n return Metadata.__wrap(ret);\n }\n}\n\nconst OfflineQueryFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_offlinequery_free(ptr >>> 0, 1));\n/**\n * An offline query object used to insert the global state root and state paths needed to create\n * a valid inclusion proof offline.\n */\nclass OfflineQuery {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(OfflineQuery.prototype);\n obj.__wbg_ptr = ptr;\n OfflineQueryFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n OfflineQueryFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_offlinequery_free(ptr, 0);\n }\n /**\n * Create an offline query object from a json string representation.\n *\n * @param {string} JSON string representation of the offline query object.\n * @param {string} s\n * @returns {OfflineQuery}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.offlinequery_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return OfflineQuery.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Add a new state path to the offline query object.\n *\n * @param {string} commitment: The commitment corresponding to a record input.\n * @param {string} state_path: The state path corresponding to the commitment.\n * @param {string} commitment\n * @param {string} state_path\n */\n addStatePath(commitment, state_path) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(commitment, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(state_path, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n wasm.offlinequery_addStatePath(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Add a new block height to the offline query object.\n *\n * @param {u32} block_height The block height to add.\n * @param {number} block_height\n */\n addBlockHeight(block_height) {\n wasm.offlinequery_addBlockHeight(this.__wbg_ptr, block_height);\n }\n /**\n * Creates a new offline query object. The state root is required to be passed in as a string\n *\n * @param {u32} block_height The block height.\n * @param {string} state_root The state root of the current network.\n *\n * @returns {OfflineQuery} The newly created offline query object.\n * @param {number} block_height\n * @param {string} state_root\n */\n constructor(block_height, state_root) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(state_root, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.offlinequery_new(retptr, block_height, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n this.__wbg_ptr = r0 >>> 0;\n OfflineQueryFinalization.register(this, this.__wbg_ptr, this);\n return this;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a json string representation of the offline query object.\n *\n * @returns {string} JSON string representation of the offline query object.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.offlinequery_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst Pedersen128Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_pedersen128_free(ptr >>> 0, 1));\n\nclass Pedersen128 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Pedersen128.prototype);\n obj.__wbg_ptr = ptr;\n Pedersen128Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Pedersen128Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_pedersen128_free(ptr, 0);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen128_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen hasher for a given (up to) 128-bit input.\n */\n constructor() {\n const ret = wasm.pedersen128_new();\n this.__wbg_ptr = ret >>> 0;\n Pedersen128Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Pedersen hash for a given (up to) 128-bit input.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.pedersen128_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen hasher for a given (up to) 128-bit input with a custom domain separator.\n * @param {string} domain_separator\n * @returns {Pedersen128}\n */\n static setup(domain_separator) {\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.pedersen128_setup(ptr0, len0);\n return Pedersen128.__wrap(ret);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen128_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst Pedersen64Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_pedersen64_free(ptr >>> 0, 1));\n\nclass Pedersen64 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Pedersen64.prototype);\n obj.__wbg_ptr = ptr;\n Pedersen64Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Pedersen64Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_pedersen64_free(ptr, 0);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Group}\n */\n commitToGroup(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen64_commitToGroup(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen hasher for a given (up to) 64-bit input.\n */\n constructor() {\n const ret = wasm.pedersen64_new();\n this.__wbg_ptr = ret >>> 0;\n Pedersen64Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Pedersen hash for a given (up to) 64-bit input.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.pedersen64_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Pedersen64 hasher for a given (up to) 64-bit input with a custom domain separator.\n * @param {string} domain_separator\n * @returns {Pedersen64}\n */\n static setup(domain_separator) {\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.pedersen64_setup(ptr0, len0);\n return Pedersen64.__wrap(ret);\n }\n /**\n * Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.\n * @param {Array<any>} input\n * @param {Scalar} randomizer\n * @returns {Field}\n */\n commit(input, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(randomizer, Scalar);\n var ptr0 = randomizer.__destroy_into_raw();\n wasm.pedersen64_commit(retptr, this.__wbg_ptr, addHeapObject(input), ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst PlaintextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_plaintext_free(ptr >>> 0, 1));\n/**\n * SnarkVM Plaintext object. Plaintext is a fundamental monadic type used to represent Aleo\n * primitive types (boolean, field, group, i8, i16, i32, i64, i128, u8, u16, u32, u64, u128,\n * scalar, and signature), struct types, and array types.\n *\n * In the context of a web or NodeJS application, this type is useful for turning an Aleo type into\n * a JS value, object, or array that might be necessary for performing computations within the\n * application.\n *\n * @example\n * // Get the bond state of an existing address.\n * const bondState = await fetch(https://api.explorer.provable.com/v1/mainnet/program/credits.aleo/mapping/bond_state/aleo12zlythl7htjdtjjjz3ahdj4vl6wk3zuzm37s80l86qpx8fyx95fqnxcn2f);\n * // Convert the bond state to a Plaintext object.\n * const bondStatePlaintext = Plaintext.fromString(bond_state);\n * // Convert the Plaintext object to a JS object.\n * const bondStateObject = bond_state_plaintext.toObject();\n * // Check if the bond state matches the expected object.\n * const expectedObject = { validator: \"aleo12zlythl7htjdtjjjz3ahdj4vl6wk3zuzm37s80l86qpx8fyx95fqnxcn2f\", microcredits: 100000000u64 };\n * assert( JSON.stringify(bondStateObject) === JSON.stringify(expectedObject) );\n */\nclass Plaintext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Plaintext.prototype);\n obj.__wbg_ptr = ptr;\n PlaintextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n PlaintextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_plaintext_free(ptr, 0);\n }\n /**\n * Get the little endian boolean array representation of the bits of the plaintext.\n *\n * @returns {Array} The little endian boolean array representation of the bits of the plaintext.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.plaintext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a plaintext object from an array of fields.\n *\n * @param {Array} fields An array of fields.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {Array<any>} fields\n * @returns {Plaintext}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates a plaintext object from a string representation of a plaintext.\n *\n * @param {string} plaintext The string representation of the plaintext.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {string} plaintext\n * @returns {Plaintext}\n */\n static fromString(plaintext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(plaintext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.plaintext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the little endian byte array representation of the plaintext.\n *\n * @returns {Uint8Array} The little endian byte array representation of the plaintext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a plaintext object from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A little endian boolean array representing the bits plaintext.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {Array<any>} bits\n * @returns {Plaintext}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a plaintext object from a series of bytes.\n *\n * @param {Uint8Array} bytes A little endian byte array representing the plaintext.\n *\n * @returns {Plaintext} The plaintext object.\n * @param {Uint8Array} bytes\n * @returns {Plaintext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the raw field array representation of the plaintext.\n *\n * @returns {Array} The raw field array representation of the plaintext.\n * @returns {Array<any>}\n */\n toFieldsRaw() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toFieldsRaw(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Gives the type of the plaintext.\n *\n * @returns {string} The type of the plaintext.\n * @returns {string}\n */\n plaintextType() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_plaintextType(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the raw big endian boolean array representation of the bits of the plaintext.\n *\n * @returns {Array} The raw big endian boolean array representation of the bits of the plaintext.\n * @returns {Array<any>}\n */\n toBitsRawBe() {\n const ret = wasm.plaintext_toBitsRawBe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the raw little endian boolean array representation of the bits of the plaintext.\n *\n * @returns {Array} The raw little endian boolean array representation of the bits of the plaintext.\n * @returns {Array<any>}\n */\n toBitsRawLe() {\n const ret = wasm.plaintext_toBitsRawLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the raw big endian byte array representation of the plaintext.\n *\n * @returns {Uint8Array} The raw big endian byte array representation of the plaintext.\n * @returns {Uint8Array}\n */\n toBytesRawBe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toBytesRawBe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the raw little endian byte array representation of the plaintext.\n *\n * @returns {Uint8Array} The raw little endian byte array representation of the plaintext.\n * @returns {Uint8Array}\n */\n toBytesRawLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toBytesRawLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt a plaintext with a transition view key.\n *\n * @param {Field} transition_view_key The transition view key of the transition\n * associated with the plaintext.\n *\n * @returns {Ciphertext} The encrypted ciphertext.\n * @param {Field} transition_view_key\n * @returns {Ciphertext}\n */\n encryptSymmetric(transition_view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(transition_view_key, Field);\n wasm.plaintext_encryptSymmetric(retptr, this.__wbg_ptr, transition_view_key.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Find plaintext member if the plaintext is a struct. Returns `null` if the plaintext is not\n * a struct or the member does not exist.\n *\n * @param {string} name The name of the plaintext member to find.\n *\n * @returns {Plaintext} The plaintext member.\n * @param {string} name\n * @returns {Plaintext}\n */\n find(name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.plaintext_find(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt a plaintext with an address and randomizer.\n *\n * @param {Address} address The address to encrypt the plaintext for.\n * @param {Scalar} randomizer The randomizer to use for encryption.\n *\n * @returns {Ciphertext} The encrypted ciphertext.\n * @param {Address} address\n * @param {Scalar} randomizer\n * @returns {Ciphertext}\n */\n encrypt(address, randomizer) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(address, Address);\n _assertClass(randomizer, Scalar);\n wasm.plaintext_encrypt(retptr, this.__wbg_ptr, address.__wbg_ptr, randomizer.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Ciphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the field array representation of the plaintext.\n *\n * @returns {Array} The field array representation of the plaintext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Attempt to convert the plaintext to a JS object.\n *\n * @returns {Object} The JS object representation of the plaintext.\n * @returns {any}\n */\n toObject() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toObject(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the string representation of the plaintext.\n *\n * @returns {string} The string representation of the plaintext.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.plaintext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst Poseidon2Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_poseidon2_free(ptr >>> 0, 1));\n\nclass Poseidon2 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Poseidon2.prototype);\n obj.__wbg_ptr = ptr;\n Poseidon2Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Poseidon2Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_poseidon2_free(ptr, 0);\n }\n /**\n * Returns the Poseidon hash with an input rate of 2 on the affine curve.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the Poseidon hash with an input rate of 2 on the scalar field.\n * @param {Array<any>} input\n * @returns {Scalar}\n */\n hashToScalar(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hashToScalar(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 2.\n */\n constructor() {\n const ret = wasm.poseidon2_new();\n this.__wbg_ptr = ret >>> 0;\n Poseidon2Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Poseidon hash with an input rate of 2.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 2 and a custom domain separator.\n * @param {string} domain_separator\n * @returns {Poseidon2}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.poseidon2_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Poseidon2.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the extended Poseidon hash with an input rate of 2.\n * @param {Array<any>} input\n * @param {number} num_outputs\n * @returns {Array<any>}\n */\n hashMany(input, num_outputs) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon2_hashMany(retptr, this.__wbg_ptr, addHeapObject(input), num_outputs);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst Poseidon4Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_poseidon4_free(ptr >>> 0, 1));\n\nclass Poseidon4 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Poseidon4.prototype);\n obj.__wbg_ptr = ptr;\n Poseidon4Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Poseidon4Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_poseidon4_free(ptr, 0);\n }\n /**\n * Returns the Poseidon hash with an input rate of 4 on the affine curve.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the Poseidon hash with an input rate of 4 on the scalar field.\n * @param {Array<any>} input\n * @returns {Scalar}\n */\n hashToScalar(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hashToScalar(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 4.\n */\n constructor() {\n const ret = wasm.poseidon4_new();\n this.__wbg_ptr = ret >>> 0;\n Poseidon4Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Poseidon hash with an input rate of 4.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 4 and a custom domain separator.\n * @param {string} domain_separator\n * @returns {Poseidon4}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.poseidon4_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Poseidon4.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the extended Poseidon hash with an input rate of 4.\n * @param {Array<any>} input\n * @param {number} num_outputs\n * @returns {Array<any>}\n */\n hashMany(input, num_outputs) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon4_hashMany(retptr, this.__wbg_ptr, addHeapObject(input), num_outputs);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst Poseidon8Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_poseidon8_free(ptr >>> 0, 1));\n\nclass Poseidon8 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Poseidon8.prototype);\n obj.__wbg_ptr = ptr;\n Poseidon8Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n Poseidon8Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_poseidon8_free(ptr, 0);\n }\n /**\n * Returns the Poseidon hash with an input rate of 8 on the affine curve.\n * @param {Array<any>} input\n * @returns {Group}\n */\n hashToGroup(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hashToGroup(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Group.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the Poseidon hash with an input rate of 8 on the scalar field.\n * @param {Array<any>} input\n * @returns {Scalar}\n */\n hashToScalar(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hashToScalar(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 8.\n */\n constructor() {\n const ret = wasm.poseidon8_new();\n this.__wbg_ptr = ret >>> 0;\n Poseidon8Finalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Returns the Poseidon hash with an input rate of 8.\n * @param {Array<any>} input\n * @returns {Field}\n */\n hash(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hash(retptr, this.__wbg_ptr, addHeapObject(input));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a Poseidon hasher with an input rate of 8 and a custom domain separator.\n * @param {string} domain_separator\n * @returns {Poseidon8}\n */\n static setup(domain_separator) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(domain_separator, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.poseidon8_setup(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Poseidon8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the extended Poseidon hash with an input rate of 8.\n * @param {Array<any>} input\n * @param {number} num_outputs\n * @returns {Array<any>}\n */\n hashMany(input, num_outputs) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.poseidon8_hashMany(retptr, this.__wbg_ptr, addHeapObject(input), num_outputs);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n}\n\nconst PrivateKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_privatekey_free(ptr >>> 0, 1));\n/**\n * Private key of an Aleo account\n */\nclass PrivateKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(PrivateKey.prototype);\n obj.__wbg_ptr = ptr;\n PrivateKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n PrivateKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_privatekey_free(ptr, 0);\n }\n /**\n * Sign an instance of a valid Aleo data type or record.\n *\n * @param {String} message The string representation of the Aleo datatype or record to sign.\n * @returns {Signature} Signature of the message.\n * @param {string} message\n * @returns {Signature}\n */\n signValue(message) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_signValue(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the address corresponding to the private key\n *\n * @returns {Address}\n * @returns {Address}\n */\n to_address() {\n const ret = wasm.privatekey_to_address(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Get a private key from a string representation of a private key\n *\n * @param {string} seed String representation of a private key\n * @returns {PrivateKey}\n * @param {string} private_key\n * @returns {PrivateKey}\n */\n static from_string(private_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(private_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_from_string(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the view key corresponding to the private key\n *\n * @returns {ViewKey}\n * @returns {ViewKey}\n */\n to_view_key() {\n const ret = wasm.privatekey_to_view_key(this.__wbg_ptr);\n return ViewKey.__wrap(ret);\n }\n /**\n * Get a new randomly generated private key ciphertext using a secret. The secret is sensitive\n * and will be needed to decrypt the private key later, so it should be stored securely\n *\n * @param {string} secret Secret used to encrypt the private key\n * @returns {PrivateKeyCiphertext} Ciphertext representation of the private key\n * @param {string} secret\n * @returns {PrivateKeyCiphertext}\n */\n static newEncrypted(secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_newEncrypted(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt an existing private key with a secret. The secret is sensitive and will be needed to\n * decrypt the private key later, so it should be stored securely\n *\n * @param {string} secret Secret used to encrypt the private key\n * @returns {PrivateKeyCiphertext} Ciphertext representation of the private key\n * @param {string} secret\n * @returns {PrivateKeyCiphertext}\n */\n toCiphertext(secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_toCiphertext(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a private key from a series of unchecked bytes\n *\n * @param {Uint8Array} seed Unchecked 32 byte long Uint8Array acting as the seed for the private key\n * @returns {PrivateKey}\n * @param {Uint8Array} seed\n * @returns {PrivateKey}\n */\n static from_seed_unchecked(seed) {\n const ptr0 = passArray8ToWasm0(seed, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.privatekey_from_seed_unchecked(ptr0, len0);\n return PrivateKey.__wrap(ret);\n }\n /**\n * Get private key from a private key ciphertext and secret originally used to encrypt it\n *\n * @param {PrivateKeyCiphertext} ciphertext Ciphertext representation of the private key\n * @param {string} secret Secret originally used to encrypt the private key\n * @returns {PrivateKey} Private key\n * @param {PrivateKeyCiphertext} ciphertext\n * @param {string} secret\n * @returns {PrivateKey}\n */\n static fromPrivateKeyCiphertext(ciphertext, secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(ciphertext, PrivateKeyCiphertext);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_fromPrivateKeyCiphertext(retptr, ciphertext.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Generate a new private key using a cryptographically secure random number generator\n *\n * @returns {PrivateKey}\n */\n constructor() {\n const ret = wasm.privatekey_new();\n this.__wbg_ptr = ret >>> 0;\n PrivateKeyFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * Sign a message with the private key\n *\n * @param {Uint8Array} Byte array representing a message signed by the address\n * @returns {Signature} Signature generated by signing the message with the address\n * @param {Uint8Array} message\n * @returns {Signature}\n */\n sign(message) {\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.privatekey_sign(this.__wbg_ptr, ptr0, len0);\n return Signature.__wrap(ret);\n }\n /**\n * Get a string representation of the private key. This function should be used very carefully\n * as it exposes the private key plaintext\n *\n * @returns {string} String representation of a private key\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.privatekey_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst PrivateKeyCiphertextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_privatekeyciphertext_free(ptr >>> 0, 1));\n/**\n * Private Key in ciphertext form\n */\nclass PrivateKeyCiphertext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(PrivateKeyCiphertext.prototype);\n obj.__wbg_ptr = ptr;\n PrivateKeyCiphertextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n PrivateKeyCiphertextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_privatekeyciphertext_free(ptr, 0);\n }\n /**\n * Creates a PrivateKeyCiphertext from a string\n *\n * @param {string} ciphertext Ciphertext string\n * @returns {PrivateKeyCiphertext} Private key ciphertext\n * @param {string} ciphertext\n * @returns {PrivateKeyCiphertext}\n */\n static fromString(ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(ciphertext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekeyciphertext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encrypt a private key using a secret string. The secret is sensitive and will be needed to\n * decrypt the private key later, so it should be stored securely\n *\n * @param {PrivateKey} private_key Private key to encrypt\n * @param {string} secret Secret to encrypt the private key with\n * @returns {PrivateKeyCiphertext} Private key ciphertext\n * @param {PrivateKey} private_key\n * @param {string} secret\n * @returns {PrivateKeyCiphertext}\n */\n static encryptPrivateKey(private_key, secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekey_toCiphertext(retptr, private_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKeyCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypts a private ciphertext using a secret string. This must be the same secret used to\n * encrypt the private key\n *\n * @param {string} secret Secret used to encrypt the private key\n * @returns {PrivateKey} Private key\n * @param {string} secret\n * @returns {PrivateKey}\n */\n decryptToPrivateKey(secret) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(secret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.privatekeyciphertext_decryptToPrivateKey(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return PrivateKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the ciphertext string\n *\n * @returns {string} Ciphertext string\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.ciphertext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ProgramFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_program_free(ptr >>> 0, 1));\n/**\n * Webassembly Representation of an Aleo program\n */\nclass Program {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Program.prototype);\n obj.__wbg_ptr = ptr;\n ProgramFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProgramFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_program_free(ptr, 0);\n }\n /**\n * Create a program from a program string\n *\n * @param {string} program Aleo program source code\n * @returns {Program} Program object\n * @param {string} program\n * @returns {Program}\n */\n static fromString(program) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Program.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get program_imports\n *\n * @returns {Array} The program imports\n *\n * @example\n *\n * const DOUBLE_TEST = \"import multiply_test.aleo;\n *\n * program double_test.aleo;\n *\n * function double_it:\n * input r0 as u32.private;\n * call multiply_test.aleo/multiply 2u32 r0 into r1;\n * output r1 as u32.private;\";\n *\n * const expected_imports = [\n * \"multiply_test.aleo\"\n * ];\n *\n * const program = aleo_wasm.Program.fromString(DOUBLE_TEST_PROGRAM);\n * const imports = program.getImports();\n * console.log(imports === expected_imports); // Output should be \"true\"\n * @returns {Array<any>}\n */\n getImports() {\n const ret = wasm.program_getImports(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a the list of a program's mappings and the names/types of their keys and values.\n *\n * @returns {Array} - An array of objects representing the mappings in the program\n * @example\n * const expected_mappings = [\n * {\n * name: \"account\",\n * key_name: \"owner\",\n * key_type: \"address\",\n * value_name: \"microcredits\",\n * value_type: \"u64\"\n * }\n * ]\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const credits_mappings = credits_program.getMappings();\n * console.log(credits_mappings === expected_mappings); // Output should be \"true\"\n * @returns {Array<any>}\n */\n getMappings() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_getMappings(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Determine if a function is present in the program\n *\n * @param {string} functionName Name of the function to check for\n * @returns {boolean} True if the program is valid, false otherwise\n * @param {string} function_name\n * @returns {boolean}\n */\n hasFunction(function_name) {\n const ptr0 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.program_hasFunction(this.__wbg_ptr, ptr0, len0);\n return ret !== 0;\n }\n /**\n * Get javascript array of functions names in the program\n *\n * @returns {Array} Array of all function names present in the program\n *\n * @example\n * const expected_functions = [\n * \"mint\",\n * \"transfer_private\",\n * \"transfer_private_to_public\",\n * \"transfer_public\",\n * \"transfer_public_to_private\",\n * \"join\",\n * \"split\",\n * \"fee\"\n * ]\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const credits_functions = credits_program.getFunctions();\n * console.log(credits_functions === expected_functions); // Output should be \"true\"\n * @returns {Array<any>}\n */\n getFunctions() {\n const ret = wasm.program_getFunctions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a javascript object representation of a program record and its types\n *\n * @param {string} record_name Name of the record to get members for\n * @returns {Object} Object containing the record name, type, and members\n *\n * @example\n *\n * const expected_record = {\n * type: \"record\",\n * record: \"Credits\",\n * members: [\n * {\n * name: \"owner\",\n * type: \"address\",\n * visibility: \"private\"\n * },\n * {\n * name: \"microcredits\",\n * type: \"u64\",\n * visibility: \"private\"\n * }\n * ];\n * };\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const credits_record = credits_program.getRecordMembers(\"Credits\");\n * console.log(credits_record === expected_record); // Output should be \"true\"\n * @param {string} record_name\n * @returns {object}\n */\n getRecordMembers(record_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(record_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_getRecordMembers(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a javascript object representation of a program struct and its types\n *\n * @param {string} struct_name Name of the struct to get members for\n * @returns {Array} Array containing the struct members\n *\n * @example\n *\n * const STRUCT_PROGRAM = \"program token_issue.aleo;\n *\n * struct token_metadata:\n * network as u32;\n * version as u32;\n *\n * struct token:\n * token_id as u32;\n * metadata as token_metadata;\n *\n * function no_op:\n * input r0 as u64;\n * output r0 as u64;\"\n *\n * const expected_struct_members = [\n * {\n * name: \"token_id\",\n * type: \"u32\",\n * },\n * {\n * name: \"metadata\",\n * type: \"struct\",\n * struct_id: \"token_metadata\",\n * members: [\n * {\n * name: \"network\",\n * type: \"u32\",\n * }\n * {\n * name: \"version\",\n * type: \"u32\",\n * }\n * ]\n * }\n * ];\n *\n * const program = aleo_wasm.Program.fromString(STRUCT_PROGRAM);\n * const struct_members = program.getStructMembers(\"token\");\n * console.log(struct_members === expected_struct_members); // Output should be \"true\"\n * @param {string} struct_name\n * @returns {Array<any>}\n */\n getStructMembers(struct_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(struct_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_getStructMembers(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the credits.aleo program\n *\n * @returns {Program} The credits.aleo program\n * @returns {Program}\n */\n static getCreditsProgram() {\n const ret = wasm.program_getCreditsProgram();\n return Program.__wrap(ret);\n }\n /**\n * Get a javascript object representation of the function inputs and types. This can be used\n * to generate a web form to capture user inputs for an execution of a function.\n *\n * @param {string} function_name Name of the function to get inputs for\n * @returns {Array} Array of function inputs\n *\n * @example\n * const expected_inputs = [\n * {\n * type:\"record\",\n * visibility:\"private\",\n * record:\"credits\",\n * members:[\n * {\n * name:\"microcredits\",\n * type:\"u64\",\n * visibility:\"private\"\n * }\n * ],\n * register:\"r0\"\n * },\n * {\n * type:\"address\",\n * visibility:\"private\",\n * register:\"r1\"\n * },\n * {\n * type:\"u64\",\n * visibility:\"private\",\n * register:\"r2\"\n * }\n * ];\n *\n * const credits_program = aleo_wasm.Program.getCreditsProgram();\n * const transfer_function_inputs = credits_program.getFunctionInputs(\"transfer_private\");\n * console.log(transfer_function_inputs === expected_inputs); // Output should be \"true\"\n * @param {string} function_name\n * @returns {Array<any>}\n */\n getFunctionInputs(function_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.program_getFunctionInputs(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the id of the program\n *\n * @returns {string} The id of the program\n * @returns {string}\n */\n id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get a unique address of the program\n *\n * @returns {Address} The address of the program\n * @returns {Address}\n */\n address() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_address(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Determine equality with another program\n *\n * @param {Program} other The other program to compare\n * @returns {boolean} True if the programs are equal, false otherwise\n * @param {Program} other\n * @returns {boolean}\n */\n isEqual(other) {\n _assertClass(other, Program);\n const ret = wasm.program_isEqual(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get a string representation of the program\n *\n * @returns {string} String containing the program source code\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.program_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ProgramManagerFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_programmanager_free(ptr >>> 0, 1));\n\nclass ProgramManager {\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProgramManagerFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_programmanager_free(ptr, 0);\n }\n /**\n * Synthesize proving and verifying keys for a program\n *\n * @param {string} program The program source code of the program to synthesize keys for\n * @param {string} function_id The function to synthesize keys for\n * @param {Array} inputs The inputs to the function\n * @param {Object | undefined} imports The imports for the program\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_id\n * @param {Array<any>} inputs\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {Promise<KeyPair>}\n */\n static synthesizeKeyPair(private_key, program, function_id, inputs, imports, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_synthesizeKeyPair(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * @param {ProvingKey} proving_key\n */\n static loadInclusionProver(proving_key) {\n _assertClass(proving_key, ProvingKey);\n var ptr0 = proving_key.__destroy_into_raw();\n wasm.programmanager_loadInclusionProver(ptr0);\n }\n /**\n * Create a `ProvingRequest` object. This object creates authorizations for the top level\n * function and associated fee function. This object can be sent directly to a remote prover\n * OR used to extract both execution and fee authorizations.\n *\n * @param private_key The private key of the signer.\n * @param program The program source code containing the function to authorize.\n * @param function_name The function to authorize.\n * @param inputs A javascript array of inputs to the function.\n * @param base_fee_credits The base fee to be paid for the authorization\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param imports The imports to the program in the format {\"programname.aleo\":\"aleo instructions source code\"}.\n * @param url The url of the Aleo network node to send the transaction to\n * @param broadcast (optional) Flag to indicate if the transaction should be broadcast\n * @returns {Authorization}\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {number} base_fee_credits\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null | undefined} fee_record\n * @param {object | null | undefined} imports\n * @param {boolean} broadcast\n * @param {boolean} unchecked\n * @param {number | null} [edition]\n * @returns {Promise<ProvingRequest>}\n */\n static buildProvingRequest(private_key, program, function_name, inputs, base_fee_credits, priority_fee_credits, fee_record, imports, broadcast, unchecked, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr2 = fee_record.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildProvingRequest(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), base_fee_credits, priority_fee_credits, ptr2, isLikeNone(imports) ? 0 : addHeapObject(imports), broadcast, unchecked, isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Join two records together to create a new record with an amount of credits equal to the sum\n * of the credits of the two original records\n *\n * @param private_key The private key of the sender\n * @param record_1 The first record to combine\n * @param record_2 The second record to combine\n * @param priority_fee_credits The opptional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * @param join_proving_key (optional) Provide a proving key to use for the join function\n * @param join_verifying_key (optional) Provide a verifying key to use for the join function\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @returns {Transaction} Transaction object\n * @param {PrivateKey} private_key\n * @param {RecordPlaintext} record_1\n * @param {RecordPlaintext} record_2\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {ProvingKey | null} [join_proving_key]\n * @param {VerifyingKey | null} [join_verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildJoinTransaction(private_key, record_1, record_2, priority_fee_credits, fee_record, url, join_proving_key, join_verifying_key, fee_proving_key, fee_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n _assertClass(record_1, RecordPlaintext);\n var ptr0 = record_1.__destroy_into_raw();\n _assertClass(record_2, RecordPlaintext);\n var ptr1 = record_2.__destroy_into_raw();\n let ptr2 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr2 = fee_record.__destroy_into_raw();\n }\n var ptr3 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len3 = WASM_VECTOR_LEN;\n let ptr4 = 0;\n if (!isLikeNone(join_proving_key)) {\n _assertClass(join_proving_key, ProvingKey);\n ptr4 = join_proving_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(join_verifying_key)) {\n _assertClass(join_verifying_key, VerifyingKey);\n ptr5 = join_verifying_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr6 = fee_proving_key.__destroy_into_raw();\n }\n let ptr7 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr7 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr8 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr8 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildJoinTransaction(private_key.__wbg_ptr, ptr0, ptr1, priority_fee_credits, ptr2, ptr3, len3, ptr4, ptr5, ptr6, ptr7, ptr8);\n return takeObject(ret);\n }\n /**\n * Split an Aleo credits record into two separate records. This function does not require a fee.\n *\n * @param private_key The private key of the sender\n * @param split_amount The amount of the credit split. This amount will be subtracted from the\n * value of the record and two new records will be created with the split amount and the remainder\n * @param amount_record The record to split\n * @param url The url of the Aleo network node to send the transaction to\n * @param split_proving_key (optional) Provide a proving key to use for the split function\n * @param split_verifying_key (optional) Provide a verifying key to use for the split function\n * @returns {Transaction} Transaction object\n * @param {PrivateKey} private_key\n * @param {number} split_amount\n * @param {RecordPlaintext} amount_record\n * @param {string | null} [url]\n * @param {ProvingKey | null} [split_proving_key]\n * @param {VerifyingKey | null} [split_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildSplitTransaction(private_key, split_amount, amount_record, url, split_proving_key, split_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n _assertClass(amount_record, RecordPlaintext);\n var ptr0 = amount_record.__destroy_into_raw();\n var ptr1 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(split_proving_key)) {\n _assertClass(split_proving_key, ProvingKey);\n ptr2 = split_proving_key.__destroy_into_raw();\n }\n let ptr3 = 0;\n if (!isLikeNone(split_verifying_key)) {\n _assertClass(split_verifying_key, VerifyingKey);\n ptr3 = split_verifying_key.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr4 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildSplitTransaction(private_key.__wbg_ptr, split_amount, ptr0, ptr1, len1, ptr2, ptr3, ptr4);\n return takeObject(ret);\n }\n /**\n * Estimate the component of the deployment cost which comes from the fee for the program name.\n * Note that this cost does not represent the entire cost of deployment. It is additional to\n * the cost of the size (in bytes) of the deployment.\n *\n * Disclaimer: Fee estimation is experimental and may not represent a correct estimate on any current or future network\n *\n * @param name The name of the program to be deployed\n * @returns {u64}\n * @param {string} name\n * @returns {bigint}\n */\n static estimateProgramNameCost(name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateProgramNameCost(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Estimate the fee for a program deployment\n *\n * Disclaimer: Fee estimation is experimental and may not represent a correct estimate on any current or future network\n *\n * @param program The source code of the program being deployed\n * @param imports (optional) Provide a list of imports to use for the deployment fee estimation\n * in the form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @returns {u64}\n * @param {string} program\n * @param {object | null} [imports]\n * @returns {Promise<bigint>}\n */\n static estimateDeploymentFee(program, imports) {\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_estimateDeploymentFee(ptr0, len0, isLikeNone(imports) ? 0 : addHeapObject(imports));\n return takeObject(ret);\n }\n /**\n * Deploy an Aleo program\n *\n * @param private_key The private key of the sender\n * @param program The source code of the program being deployed\n * @param imports A javascript object holding the source code of any imported programs in the\n * form \\{\"program_name1\": \"program_source_code\", \"program_name2\": \"program_source_code\", ..\\}.\n * Note that all imported programs must be deployed on chain before the main program in order\n * for the deployment to succeed\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * @param imports (optional) Provide a list of imports to use for the program deployment in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @returns {Transaction}\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {object | null} [imports]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildDeploymentTransaction(private_key, program, priority_fee_credits, fee_record, url, imports, fee_proving_key, fee_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n let ptr1 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr1 = fee_record.__destroy_into_raw();\n }\n var ptr2 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len2 = WASM_VECTOR_LEN;\n let ptr3 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr3 = fee_proving_key.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr4 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr5 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildDeploymentTransaction(private_key.__wbg_ptr, ptr0, len0, priority_fee_credits, ptr1, ptr2, len2, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr3, ptr4, ptr5);\n return takeObject(ret);\n }\n /**\n * Estimate the finalize fee component for executing a function. This fee is additional to the\n * size of the execution of the program in bytes. If the function does not have a finalize\n * step, then the finalize fee is 0.\n *\n * Disclaimer: Fee estimation is experimental and may not represent a correct estimate on any current or future network\n *\n * @param program The program containing the function to estimate the finalize fee for\n * @param function The function to estimate the finalize fee for\n * @returns {u64} Fee in microcredits\n * @param {string} program\n * @param {string} _function\n * @returns {bigint}\n */\n static estimateFinalizeFee(program, _function) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateFinalizeFee(retptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Execute an authorization.\n *\n * @param authorization The authorization to execute.\n * @param fee_authorization The fee authorization to execute.\n * @param program The program authorized to be executed.\n * @param imports The imports of the program being executed.\n * @param url The url to get the inclusion proving information from.\n * @param offline_query Optional offline query object if building a Transaction offline.\n * @param {Authorization} authorization\n * @param {Authorization | null | undefined} fee_authorization\n * @param {string} program\n * @param {ProvingKey | null} [proving_key]\n * @param {VerifyingKey | null} [verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {object | null} [imports]\n * @param {string | null} [url]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static executeAuthorization(authorization, fee_authorization, program, proving_key, verifying_key, fee_proving_key, fee_verifying_key, imports, url, offline_query) {\n _assertClass(authorization, Authorization);\n var ptr0 = authorization.__destroy_into_raw();\n let ptr1 = 0;\n if (!isLikeNone(fee_authorization)) {\n _assertClass(fee_authorization, Authorization);\n ptr1 = fee_authorization.__destroy_into_raw();\n }\n const ptr2 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n let ptr3 = 0;\n if (!isLikeNone(proving_key)) {\n _assertClass(proving_key, ProvingKey);\n ptr3 = proving_key.__destroy_into_raw();\n }\n let ptr4 = 0;\n if (!isLikeNone(verifying_key)) {\n _assertClass(verifying_key, VerifyingKey);\n ptr4 = verifying_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr5 = fee_proving_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr6 = fee_verifying_key.__destroy_into_raw();\n }\n var ptr7 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len7 = WASM_VECTOR_LEN;\n let ptr8 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr8 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_executeAuthorization(ptr0, ptr1, ptr2, len2, ptr3, ptr4, ptr5, ptr6, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr7, len7, ptr8);\n return takeObject(ret);\n }\n /**\n * Estimate Fee for Aleo function execution. Note if \"cache\" is set to true, the proving and\n * verifying keys will be stored in the ProgramManager's memory and used for subsequent\n * program executions.\n *\n * @param program The source code of the program to estimate the execution fee for.\n * @param function The name of the function to estimate the execution fee for.\n * @param imports (optional) Provide a list of imports to use for the fee estimation in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param edition {\n * @returns {u64} Fee in microcredits\n * @param {string} program\n * @param {string} _function\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {bigint}\n */\n static estimateExecutionFee(program, _function, imports, edition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateExecutionFee(retptr, ptr0, len0, ptr1, len1, isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Execute an arbitrary function locally\n *\n * @param {PrivateKey} private_key The private key of the sender\n * @param {string} program The source code of the program being executed\n * @param {string} function The name of the function to execute\n * @param {Array} inputs A javascript array of inputs to the function\n * @param {boolean} prove_execution If true, the execution will be proven and an execution object\n * containing the proof and the encrypted inputs and outputs needed to verify the proof offline\n * will be returned.\n * @param {boolean} cache Cache the proving and verifying keys in the Execution response.\n * If this is set to 'true' the keys synthesized will be stored in the Execution Response\n * and the `ProvingKey` and `VerifyingKey` can be retrieved from the response via the `.getKeys()`\n * method.\n * @param {Object | undefined} imports (optional) Provide a list of imports to use for the function execution in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param {ProvingKey | undefined} proving_key (optional) Provide a verifying key to use for the function execution\n * @param {VerifyingKey | undefined} verifying_key (optional) Provide a verifying key to use for the function execution\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} _function\n * @param {Array<any>} inputs\n * @param {boolean} prove_execution\n * @param {boolean} cache\n * @param {object | null} [imports]\n * @param {ProvingKey | null} [proving_key]\n * @param {VerifyingKey | null} [verifying_key]\n * @param {string | null} [url]\n * @param {OfflineQuery | null} [offline_query]\n * @param {number | null} [edition]\n * @returns {Promise<ExecutionResponse>}\n */\n static executeFunctionOffline(private_key, program, _function, inputs, prove_execution, cache, imports, proving_key, verifying_key, url, offline_query, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(proving_key)) {\n _assertClass(proving_key, ProvingKey);\n ptr2 = proving_key.__destroy_into_raw();\n }\n let ptr3 = 0;\n if (!isLikeNone(verifying_key)) {\n _assertClass(verifying_key, VerifyingKey);\n ptr3 = verifying_key.__destroy_into_raw();\n }\n var ptr4 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len4 = WASM_VECTOR_LEN;\n let ptr5 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr5 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_executeFunctionOffline(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), prove_execution, cache, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr2, ptr3, ptr4, len4, ptr5, isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Estimate Fee for an Authorization.\n *\n * @param authorization Authorization to estimate the fee for.\n * @param program The program the Authorization is for.\n * @param imports Provide a list of imports to use for the fee estimation in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param offline_query The offline query object used to insert the global state root and state paths needed to create\n * a valid inclusion proof offline.\n * @param edition: Optional edition to estimate the fee for.\n * @returns {u64} Fee in microcredits\n * @param {Authorization} authorization\n * @param {string} program\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {bigint}\n */\n static estimateFeeForAuthorization(authorization, program, imports, edition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(authorization, Authorization);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.programmanager_estimateFeeForAuthorization(retptr, authorization.__wbg_ptr, ptr0, len0, isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n var r0 = getDataViewMemory0().getBigInt64(retptr + 8 * 0, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n return BigInt.asUintN(64, r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Execute Aleo function and create an Aleo execution transaction\n *\n * @param private_key The private key of the sender\n * @param program The source code of the program being executed\n * @param function The name of the function to execute\n * @param inputs A javascript array of inputs to the function\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * If this is set to 'true' the keys synthesized (or passed in as optional parameters via the\n * `proving_key` and `verifying_key` arguments) will be stored in the ProgramManager's memory\n * and used for subsequent transactions. If this is set to 'false' the proving and verifying\n * keys will be deallocated from memory after the transaction is executed.\n * @param imports (optional) Provide a list of imports to use for the function execution in the\n * form of a javascript object where the keys are a string of the program name and the values\n * are a string representing the program source code \\{ \"hello.aleo\": \"hello.aleo source code\" \\}\n * @param proving_key (optional) Provide a verifying key to use for the function execution\n * @param verifying_key (optional) Provide a verifying key to use for the function execution\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @param offline_query An offline query object to use if building a transaction without an internet connection.\n * @param edition The edition of the program to execute. Defaults to the latest found on the network, or 1 if the program does not exist on the network.\n * @returns {Transaction}\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} _function\n * @param {Array<any>} inputs\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {object | null} [imports]\n * @param {ProvingKey | null} [proving_key]\n * @param {VerifyingKey | null} [verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @param {number | null} [edition]\n * @returns {Promise<Transaction>}\n */\n static buildExecutionTransaction(private_key, program, _function, inputs, priority_fee_credits, fee_record, url, imports, proving_key, verifying_key, fee_proving_key, fee_verifying_key, offline_query, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(_function, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr2 = fee_record.__destroy_into_raw();\n }\n var ptr3 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len3 = WASM_VECTOR_LEN;\n let ptr4 = 0;\n if (!isLikeNone(proving_key)) {\n _assertClass(proving_key, ProvingKey);\n ptr4 = proving_key.__destroy_into_raw();\n }\n let ptr5 = 0;\n if (!isLikeNone(verifying_key)) {\n _assertClass(verifying_key, VerifyingKey);\n ptr5 = verifying_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr6 = fee_proving_key.__destroy_into_raw();\n }\n let ptr7 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr7 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr8 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr8 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildExecutionTransaction(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), priority_fee_credits, ptr2, ptr3, len3, isLikeNone(imports) ? 0 : addHeapObject(imports), ptr4, ptr5, ptr6, ptr7, ptr8, isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Send credits from one Aleo account to another\n *\n * @param private_key The private key of the sender\n * @param amount_credits The amount of credits to send\n * @param recipient The recipient of the transaction\n * @param transfer_type The type of the transfer (options: \"private\", \"public\", \"private_to_public\", \"public_to_private\")\n * @param amount_record The record to fund the amount from\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @param url The url of the Aleo network node to send the transaction to\n * @param transfer_verifying_key (optional) Provide a verifying key to use for the transfer\n * function\n * @param fee_proving_key (optional) Provide a proving key to use for the fee execution\n * @param fee_verifying_key (optional) Provide a verifying key to use for the fee execution\n * @returns {Transaction}\n * @param {PrivateKey} private_key\n * @param {number} amount_credits\n * @param {string} recipient\n * @param {string} transfer_type\n * @param {RecordPlaintext | null | undefined} amount_record\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @param {string | null} [url]\n * @param {ProvingKey | null} [transfer_proving_key]\n * @param {VerifyingKey | null} [transfer_verifying_key]\n * @param {ProvingKey | null} [fee_proving_key]\n * @param {VerifyingKey | null} [fee_verifying_key]\n * @param {OfflineQuery | null} [offline_query]\n * @returns {Promise<Transaction>}\n */\n static buildTransferTransaction(private_key, amount_credits, recipient, transfer_type, amount_record, priority_fee_credits, fee_record, url, transfer_proving_key, transfer_verifying_key, fee_proving_key, fee_verifying_key, offline_query) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(recipient, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(transfer_type, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n let ptr2 = 0;\n if (!isLikeNone(amount_record)) {\n _assertClass(amount_record, RecordPlaintext);\n ptr2 = amount_record.__destroy_into_raw();\n }\n let ptr3 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr3 = fee_record.__destroy_into_raw();\n }\n var ptr4 = isLikeNone(url) ? 0 : passStringToWasm0(url, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len4 = WASM_VECTOR_LEN;\n let ptr5 = 0;\n if (!isLikeNone(transfer_proving_key)) {\n _assertClass(transfer_proving_key, ProvingKey);\n ptr5 = transfer_proving_key.__destroy_into_raw();\n }\n let ptr6 = 0;\n if (!isLikeNone(transfer_verifying_key)) {\n _assertClass(transfer_verifying_key, VerifyingKey);\n ptr6 = transfer_verifying_key.__destroy_into_raw();\n }\n let ptr7 = 0;\n if (!isLikeNone(fee_proving_key)) {\n _assertClass(fee_proving_key, ProvingKey);\n ptr7 = fee_proving_key.__destroy_into_raw();\n }\n let ptr8 = 0;\n if (!isLikeNone(fee_verifying_key)) {\n _assertClass(fee_verifying_key, VerifyingKey);\n ptr8 = fee_verifying_key.__destroy_into_raw();\n }\n let ptr9 = 0;\n if (!isLikeNone(offline_query)) {\n _assertClass(offline_query, OfflineQuery);\n ptr9 = offline_query.__destroy_into_raw();\n }\n const ret = wasm.programmanager_buildTransferTransaction(private_key.__wbg_ptr, amount_credits, ptr0, len0, ptr1, len1, ptr2, priority_fee_credits, ptr3, ptr4, len4, ptr5, ptr6, ptr7, ptr8, ptr9);\n return takeObject(ret);\n }\n /**\n * Create an `Authorization` for `credits.aleo/fee_public` or `credits.aleo/fee_private`.\n * This object requires an associated execution or deployment ID. This can be gained from\n * any previously created authorization by calling (authorization.toExecutionId()).\n *\n * @param private_key The private key of the signer.\n * @param deployment_or_execution_id The id of the deployment or execution to authorize the fee program for.\n * @param base_fee_credits The base fee to be paid for the authorization\n * @param priority_fee_credits The optional priority fee to be paid for the transaction\n * @param fee_record The record to spend the fee from\n * @returns {Authorization}\n * @param {PrivateKey} private_key\n * @param {string} deployment_or_execution_id\n * @param {number} base_fee_credits\n * @param {number} priority_fee_credits\n * @param {RecordPlaintext | null} [fee_record]\n * @returns {Promise<Authorization>}\n */\n static authorizeFee(private_key, deployment_or_execution_id, base_fee_credits, priority_fee_credits, fee_record) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(deployment_or_execution_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n let ptr1 = 0;\n if (!isLikeNone(fee_record)) {\n _assertClass(fee_record, RecordPlaintext);\n ptr1 = fee_record.__destroy_into_raw();\n }\n const ret = wasm.programmanager_authorizeFee(private_key.__wbg_ptr, ptr0, len0, base_fee_credits, priority_fee_credits, ptr1);\n return takeObject(ret);\n }\n /**\n * Create an execution `Authorization` without generating a circuit. Use this function when\n * fast delegated proving is needed.\n *\n * @param private_key The private key of the signer.\n * @param program The program source code containing the function to authorize.\n * @param function_name The function to authorize.\n * @param inputs A javascript array of inputs to the function.\n * @param imports The imports to the program in the format {\"programname.aleo\":\"aleo instructions source code\"}.\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {Promise<Authorization>}\n */\n static buildAuthorizationUnchecked(private_key, program, function_name, inputs, imports, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_buildAuthorizationUnchecked(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n /**\n * Create an execution `Authorization` for a given program:function tuple with specified inputs.\n *\n * @param private_key The private key of the signer.\n * @param program The program source code containing the function to authorize.\n * @param function_name The function to authorize.\n * @param inputs A javascript array of inputs to the function.\n * @param imports The imports to the program in the format {\"programname.aleo\":\"aleo instructions source code\"}.\n * @param {PrivateKey} private_key\n * @param {string} program\n * @param {string} function_name\n * @param {Array<any>} inputs\n * @param {object | null} [imports]\n * @param {number | null} [edition]\n * @returns {Promise<Authorization>}\n */\n static authorize(private_key, program, function_name, inputs, imports, edition) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(function_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.programmanager_authorize(private_key.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(inputs), isLikeNone(imports) ? 0 : addHeapObject(imports), isLikeNone(edition) ? 0xFFFFFF : edition);\n return takeObject(ret);\n }\n}\n\nconst ProvingKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_provingkey_free(ptr >>> 0, 1));\n/**\n * Proving key for a function within an Aleo program\n */\nclass ProvingKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ProvingKey.prototype);\n obj.__wbg_ptr = ptr;\n ProvingKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProvingKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_provingkey_free(ptr, 0);\n }\n /**\n * Construct a new proving key from a byte array\n *\n * @param {Uint8Array} bytes Byte array representation of a proving key\n * @returns {ProvingKey}\n * @param {Uint8Array} bytes\n * @returns {ProvingKey}\n */\n static fromBytes(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.provingkey_fromBytes(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a proving key from string\n *\n * @param {string} String representation of the proving key\n * @param {string} string\n * @returns {ProvingKey}\n */\n static fromString(string) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(string, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.provingkey_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a copy of the proving key\n *\n * @returns {ProvingKey} A copy of the proving key\n * @returns {ProvingKey}\n */\n copy() {\n const ret = wasm.provingkey_copy(this.__wbg_ptr);\n return ProvingKey.__wrap(ret);\n }\n /**\n * Return the checksum of the proving key\n *\n * @returns {string} Checksum of the proving key\n * @returns {string}\n */\n checksum() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingkey_checksum(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Return the byte representation of a proving key\n *\n * @returns {Uint8Array} Byte array representation of a proving key\n * @returns {Uint8Array}\n */\n toBytes() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingkey_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v1 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 1, 1);\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of the proving key\n *\n * @returns {string} String representation of the proving key\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingkey_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Verify if the proving key is for the join function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"join_proving_key.bin\");\n * provingKey.isJoinProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the join function, false if otherwise\n * @returns {boolean}\n */\n isJoinProver() {\n const ret = wasm.provingkey_isJoinProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the split function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"split_proving_key.bin\");\n * provingKey.isSplitProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the split function, false if otherwise\n * @returns {boolean}\n */\n isSplitProver() {\n const ret = wasm.provingkey_isSplitProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the inclusion function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"inclusion_proving_key.bin\");\n * provingKey.isInclusionProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the inclusion function, false if otherwise\n * @returns {boolean}\n */\n isInclusionProver() {\n const ret = wasm.provingkey_isInclusionProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the fee_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"fee_public_proving_key.bin\");\n * provingKey.isFeePublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the fee_public function, false if otherwise\n * @returns {boolean}\n */\n isFeePublicProver() {\n const ret = wasm.provingkey_isFeePublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the bond_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"bond_public_proving_key.bin\");\n * provingKey.isBondPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the bond_public function, false if otherwise\n * @returns {boolean}\n */\n isBondPublicProver() {\n const ret = wasm.provingkey_isBondPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the fee_private function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"fee_private_proving_key.bin\");\n * provingKey.isFeePrivateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the fee_private function, false if otherwise\n * @returns {boolean}\n */\n isFeePrivateProver() {\n const ret = wasm.provingkey_isFeePrivateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the unbond_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"unbond_public.bin\");\n * provingKey.isUnbondPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the unbond_public_prover function, false if otherwise\n * @returns {boolean}\n */\n isUnbondPublicProver() {\n const ret = wasm.provingkey_isUnbondPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the bond_validator function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"bond_validator_proving_key.bin\");\n * provingKey.isBondPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the bond_validator function, false if otherwise\n * @returns {boolean}\n */\n isBondValidatorProver() {\n const ret = wasm.provingkey_isBondValidatorProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_public_proving_key.bin\");\n * provingKey.isTransferPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_public function, false if otherwise\n * @returns {boolean}\n */\n isTransferPublicProver() {\n const ret = wasm.provingkey_isTransferPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_private function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_private_proving_key.bin\");\n * provingKey.isTransferPrivateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_private function, false if otherwise\n * @returns {boolean}\n */\n isTransferPrivateProver() {\n const ret = wasm.provingkey_isTransferPrivateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the claim_unbond function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"claim_unbond_proving_key.bin\");\n * provingKey.isClaimUnbondProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the claim_unbond function, false if otherwise\n * @returns {boolean}\n */\n isClaimUnbondPublicProver() {\n const ret = wasm.provingkey_isClaimUnbondPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the set_validator_state function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"set_validator_set_proving_key.bin\");\n * provingKey.isSetValidatorStateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the set_validator_state function, false if otherwise\n * @returns {boolean}\n */\n isSetValidatorStateProver() {\n const ret = wasm.provingkey_isSetValidatorStateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_public_as_signer function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_public_as_signer_proving_key.bin\");\n * provingKey.isTransferPublicAsSignerProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_public function, false if otherwise\n * @returns {boolean}\n */\n isTransferPublicAsSignerProver() {\n const ret = wasm.provingkey_isTransferPublicAsSignerProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_private_to_public function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_private_to_public_proving_key.bin\");\n * provingKey.isTransferPrivateToPublicProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_private_to_public function, false if otherwise\n * @returns {boolean}\n */\n isTransferPrivateToPublicProver() {\n const ret = wasm.provingkey_isTransferPrivateToPublicProver(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verify if the proving key is for the transfer_public_to_private function\n *\n * @example\n * const provingKey = ProvingKey.fromBytes(\"transfer_public_to_private_proving_key.bin\");\n * provingKey.isTransferPublicToPrivateProver() ? console.log(\"Key verified\") : throw new Error(\"Invalid key\");\n *\n * @returns {boolean} returns true if the proving key is for the transfer_public_to_private function, false if otherwise\n * @returns {boolean}\n */\n isTransferPublicToPrivateProver() {\n const ret = wasm.provingkey_isTransferPublicToPrivateProver(this.__wbg_ptr);\n return ret !== 0;\n }\n}\n\nconst ProvingRequestFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_provingrequest_free(ptr >>> 0, 1));\n/**\n * Represents a proving request to a prover.\n */\nclass ProvingRequest {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ProvingRequest.prototype);\n obj.__wbg_ptr = ptr;\n ProvingRequestFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ProvingRequestFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_provingrequest_free(ptr, 0);\n }\n /**\n * Creates a ProvingRequest from a string representation.\n *\n * @param {Uint8Array} request String representation of the ProvingRequest.\n * @param {string} request\n * @returns {ProvingRequest}\n */\n static fromString(request) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(request, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.provingrequest_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Creates a left-endian byte representation of the ProvingRequest.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingrequest_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the Authorization of the main function in the ProvingRequest.\n * @returns {Authorization}\n */\n authorization() {\n const ret = wasm.provingrequest_authorization(this.__wbg_ptr);\n return Authorization.__wrap(ret);\n }\n /**\n * Creates a ProvingRequest from a left-endian byte representation of the ProvingRequest.\n *\n * @param {Uint8Array} bytes Left-endian bytes representing the proving request.\n * @param {Uint8Array} bytes\n * @returns {ProvingRequest}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingrequest_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return ProvingRequest.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the fee Authorization in the ProvingRequest.\n * @returns {Authorization | undefined}\n */\n feeAuthorization() {\n const ret = wasm.provingrequest_feeAuthorization(this.__wbg_ptr);\n return ret === 0 ? undefined : Authorization.__wrap(ret);\n }\n /**\n * Creates a new ProvingRequest from a function Authorization and an optional fee Authorization.\n *\n * @param {Authorization} authorization An Authorization for a function.\n * @param {Authorization} fee_authorization The authorization for the `credits.aleo/fee_public` or `credits.aleo/fee_private` function that pays the fee for the execution of the main function.\n * @param {boolean} broadcast Flag that indicates whether the remote proving service should attempt to submit the transaction on the caller's behalf.\n * @param {Authorization} authorization\n * @param {Authorization | null | undefined} fee_authorization\n * @param {boolean} broadcast\n * @returns {ProvingRequest}\n */\n static new(authorization, fee_authorization, broadcast) {\n _assertClass(authorization, Authorization);\n var ptr0 = authorization.__destroy_into_raw();\n let ptr1 = 0;\n if (!isLikeNone(fee_authorization)) {\n _assertClass(fee_authorization, Authorization);\n ptr1 = fee_authorization.__destroy_into_raw();\n }\n const ret = wasm.provingrequest_new(ptr0, ptr1, broadcast);\n return ProvingRequest.__wrap(ret);\n }\n /**\n * Check if a ProvingRequest is the same as another ProvingRequest.\n * @param {ProvingRequest} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, ProvingRequest);\n const ret = wasm.provingrequest_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the broadcast flag set in the ProvingRequest.\n * @returns {boolean}\n */\n broadcast() {\n const ret = wasm.provingrequest_broadcast(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Creates a string representation of the ProvingRequest.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.provingrequest_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst RecordCiphertextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_recordciphertext_free(ptr >>> 0, 1));\n/**\n * Encrypted Aleo record\n */\nclass RecordCiphertext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(RecordCiphertext.prototype);\n obj.__wbg_ptr = ptr;\n RecordCiphertextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n static __unwrap(jsValue) {\n if (!(jsValue instanceof RecordCiphertext)) {\n return 0;\n }\n return jsValue.__destroy_into_raw();\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n RecordCiphertextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_recordciphertext_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the record ciphertext bits.\n *\n * returns {Array} Left endian boolean array representation of the bits of the record ciphertext.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.recordciphertext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Create a record ciphertext from a string\n *\n * @param {string} record String representation of a record ciphertext\n * @returns {RecordCiphertext} Record ciphertext\n * @param {string} record\n * @returns {RecordCiphertext}\n */\n static fromString(record) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(record, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.recordciphertext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the left endian byte array representation of the record ciphertext.\n *\n * @returns {Uint8Array} Left endian byte array representation of the record ciphertext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a record ciphertext object from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the record ciphertext.\n *\n * @returns {RecordCiphertext}\n * @param {Uint8Array} bytes\n * @returns {RecordCiphertext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordCiphertext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Generate the record view key. The record view key can only decrypt record if the\n * supplied view key belongs to the record owner.\n *\n * @param {ViewKey} view_key View key used to generate the record view key\n *\n * @returns {Group} record view key\n * @param {ViewKey} view_key\n * @returns {Field}\n */\n recordViewKey(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.recordciphertext_recordViewKey(this.__wbg_ptr, view_key.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Decrypt the record ciphertext into plaintext using a record view key.\n *\n * @param {Field} record_vk Record view key used to decrypt the record.\n *\n * @returns {RecordPlaintext}\n * @param {Field} record_vk\n * @returns {RecordPlaintext}\n */\n decryptWithRecordViewKey(record_vk) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(record_vk, Field);\n var ptr0 = record_vk.__destroy_into_raw();\n wasm.recordciphertext_decryptWithRecordViewKey(retptr, this.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the tag of the record using the graph key.\n *\n * @param {GraphKey} graph key of the account associatd with the record.\n * @param {Field} commitment of the record.\n *\n * @returns {Field} tag of the record.\n * @param {GraphKey} graph_key\n * @param {Field} commitment\n * @returns {Field}\n */\n static tag(graph_key, commitment) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(graph_key, GraphKey);\n _assertClass(commitment, Field);\n var ptr0 = commitment.__destroy_into_raw();\n wasm.recordciphertext_tag(retptr, graph_key.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Clone the RecordCiphertext WASM object.\n *\n * @returns {RecordCiphertext} A clone of the RecordCiphertext WASM object.\n * @returns {RecordCiphertext}\n */\n clone() {\n const ret = wasm.recordciphertext_clone(this.__wbg_ptr);\n return RecordCiphertext.__wrap(ret);\n }\n /**\n * Get the record nonce.\n *\n * @returns {Group} The record nonce.\n * @returns {Group}\n */\n nonce() {\n const ret = wasm.recordciphertext_nonce(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Decrypt the record ciphertext into plaintext using the view key. The record will only\n * decrypt if the record was encrypted by the account corresponding to the view key\n *\n * @param {ViewKey} view_key View key used to decrypt the ciphertext\n * @returns {RecordPlaintext} Record plaintext object\n * @param {ViewKey} view_key\n * @returns {RecordPlaintext}\n */\n decrypt(view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n wasm.recordciphertext_decrypt(retptr, this.__wbg_ptr, view_key.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Determines if the account corresponding to the view key is the owner of the record\n *\n * @param {ViewKey} view_key View key used to decrypt the ciphertext\n * @returns {boolean}\n * @param {ViewKey} view_key\n * @returns {boolean}\n */\n isOwner(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.recordciphertext_isOwner(this.__wbg_ptr, view_key.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the field array representation of the record ciphertext.\n *\n * @returns {Array} Field array representation of the record ciphertext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Return the string representation of the record ciphertext\n *\n * @returns {string} String representation of the record ciphertext\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordciphertext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst RecordPlaintextFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_recordplaintext_free(ptr >>> 0, 1));\n/**\n * Plaintext representation of an Aleo record\n */\nclass RecordPlaintext {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(RecordPlaintext.prototype);\n obj.__wbg_ptr = ptr;\n RecordPlaintextFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n RecordPlaintextFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_recordplaintext_free(ptr, 0);\n }\n /**\n * @param {string} program_id\n * @param {string} record_name\n * @param {string} record_view_key\n * @returns {Field}\n */\n commitment(program_id, record_name, record_view_key) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(program_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(record_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(record_view_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n wasm.recordplaintext_commitment(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the record entry matching a key.\n *\n * @param {string} input The key to retrieve the value in the record data field.\n *\n * @returns {Plaintext} The plaintext value corresponding to the key.\n * @param {string} input\n * @returns {Plaintext}\n */\n getMember(input) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.recordplaintext_getMember(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Plaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the left endian boolean array representation of the record plaintext bits.\n *\n * @returns {Array} Boolean array representation of the record plaintext bits.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.recordplaintext_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Return a record plaintext from a string.\n *\n * @param {string} record String representation of a plaintext representation of an Aleo record.\n *\n * @returns {RecordPlaintext} Record plaintext\n * @param {string} record\n * @returns {RecordPlaintext}\n */\n static fromString(record) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(record, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.recordplaintext_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the left endian byte array representation of the record plaintext.\n *\n * @returns {Uint8Array} Byte array representation of the record plaintext.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the amount of microcredits in the record\n *\n * @returns {u64} Amount of microcredits in the record\n * @returns {bigint}\n */\n microcredits() {\n const ret = wasm.recordplaintext_microcredits(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Get a representation of a record as a javascript object for usage in client side\n * computations. Note that this is not a reversible operation and exists for the convenience\n * of discovering and using properties of the record.\n *\n * The conversion guide is as follows:\n * - u8, u16, u32, i8, i16 i32 --> Number\n * - u64, u128, i64, i128 --> BigInt\n * - Address, Field, Group, Scalar --> String.\n *\n * Address, Field, Group, and Scalar will all be converted to their bech32 string\n * representation. These string representations can be converted back to their respective wasm\n * types using the fromString method on the Address, Field, Group, and Scalar objects in this\n * library.\n *\n * @example\n * # Create a wasm record from a record string.\n * let record_plaintext_wasm = RecordPlainext.from_string(\"{\n * owner: aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48.private,\n * metadata: {\n * player1: aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48.private,\n * player2: aleo1dreuxnmg9cny8ee9v2u0wr4v4affnwm09u2pytfwz0f2en2shgqsdsfjn6.private,\n * nonce: 660310649780728486489183263981322848354071976582883879926426319832534836534field.private\n * },\n * id: 1953278585719525811355617404139099418855053112960441725284031425961000152405field.private,\n * positions: 50794271u64.private,\n * attempts: 0u64.private,\n * hits: 0u64.private,\n * _nonce: 5668100912391182624073500093436664635767788874314097667746354181784048204413group.public\n * }\");\n *\n * let expected_object = {\n * owner: \"aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48\",\n * metadata: {\n * player1: \"aleo1kh5t7m30djl0ecdn4f5vuzp7dx0tcwh7ncquqjkm4matj2p2zqpqm6at48\",\n * player2: \"aleo1dreuxnmg9cny8ee9v2u0wr4v4affnwm09u2pytfwz0f2en2shgqsdsfjn6\",\n * nonce: \"660310649780728486489183263981322848354071976582883879926426319832534836534field\"\n * },\n * id: \"1953278585719525811355617404139099418855053112960441725284031425961000152405field\",\n * positions: 50794271,\n * attempts: 0,\n * hits: 0,\n * _nonce: \"5668100912391182624073500093436664635767788874314097667746354181784048204413group\"\n * };\n *\n * # Create the expected object\n * let record_plaintext_object = record_plaintext_wasm.to_js_object();\n * assert(JSON.stringify(record_plaintext_object) == JSON.stringify(expected_object));\n *\n * @returns {Object} Javascript object representation of the record\n * @returns {object}\n */\n toJsObject() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toJsObject(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a record plaintext object from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the record plaintext.\n *\n * @returns {RecordPlaintext} The record plaintext.\n * @param {Uint8Array} bytes\n * @returns {RecordPlaintext}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return RecordPlaintext.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Decrypt the sender ciphertext associated with the record.\n *\n * @param {ViewKey} view_key View key associated with the record.\n * @param {Field} sender_ciphertext Sender ciphertext associated with the record.\n *\n * @returns {Address} address of the sender.\n * @param {ViewKey} view_key\n * @param {Field} sender_ciphertext\n * @returns {Address}\n */\n decryptSender(view_key, sender_ciphertext) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(view_key, ViewKey);\n _assertClass(sender_ciphertext, Field);\n wasm.recordplaintext_decryptSender(retptr, this.__wbg_ptr, view_key.__wbg_ptr, sender_ciphertext.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Generate the record view key. The record view key can only decrypt the record if the\n * supplied view key belongs to the record owner.\n *\n * @param {ViewKey} view_key View key used to generate the record view key\n *\n * @returns {Group} record view key\n * @param {ViewKey} view_key\n * @returns {Field}\n */\n recordViewKey(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.recordplaintext_recordViewKey(this.__wbg_ptr, view_key.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Attempt to get the serial number of a record to determine whether or not is has been spent\n *\n * @param {PrivateKey} private_key Private key of the account that owns the record\n * @param {string} program_id Program ID of the program that the record is associated with\n * @param {string} record_name Name of the record\n * @param {string} record_view_key The string representation of the record view key.\n *\n * @returns {string} Serial number of the record\n * @param {PrivateKey} private_key\n * @param {string} program_id\n * @param {string} record_name\n * @param {string} record_view_key\n * @returns {string}\n */\n serialNumberString(private_key, program_id, record_name, record_view_key) {\n let deferred5_0;\n let deferred5_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(program_id, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(record_name, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(record_view_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len2 = WASM_VECTOR_LEN;\n wasm.recordplaintext_serialNumberString(retptr, this.__wbg_ptr, private_key.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n var ptr4 = r0;\n var len4 = r1;\n if (r3) {\n ptr4 = 0; len4 = 0;\n throw takeObject(r2);\n }\n deferred5_0 = ptr4;\n deferred5_1 = len4;\n return getStringFromWasm0(ptr4, len4);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred5_0, deferred5_1, 1);\n }\n }\n /**\n * Get the tag of the record using the graph key.\n * @param {GraphKey} graph_key\n * @param {Field} commitment\n * @returns {Field}\n */\n tag(graph_key, commitment) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(graph_key, GraphKey);\n _assertClass(commitment, Field);\n var ptr0 = commitment.__destroy_into_raw();\n wasm.recordplaintext_tag(retptr, this.__wbg_ptr, graph_key.__wbg_ptr, ptr0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Clone the RecordPlaintext WASM object.\n *\n * @returns {RecordPlaintext} A clone of the RecordPlaintext WASM object.\n * @returns {RecordPlaintext}\n */\n clone() {\n const ret = wasm.recordplaintext_clone(this.__wbg_ptr);\n return RecordPlaintext.__wrap(ret);\n }\n /**\n * Returns the nonce of the record. This can be used to uniquely identify a record.\n *\n * @returns {string} Nonce of the record\n * @returns {string}\n */\n nonce() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_nonce(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the owner of the record.\n *\n * @returns {Address} Address of the owner of the record.\n * @returns {Address}\n */\n owner() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_owner(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Address.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the field array representation of the record plaintext.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the record plaintext string\n *\n * @returns {string} String representation of the record plaintext\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.recordplaintext_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst ScalarFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_scalar_free(ptr >>> 0, 1));\n/**\n * Scalar field element.\n */\nclass Scalar {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Scalar.prototype);\n obj.__wbg_ptr = ptr;\n ScalarFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ScalarFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_scalar_free(ptr, 0);\n }\n /**\n * Get the left endian boolean array representation of the scalar element.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.scalar_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Creates a scalar object from a string representation of a scalar element.\n * @param {string} group\n * @returns {Scalar}\n */\n static fromString(group) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(group, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.scalar_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Encode the scalar element as a Uint8Array of left endian bytes.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Reconstruct a scalar element from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {Scalar}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Create a plaintext element from a scalar element.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.scalar_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Create a scalar element from a Uint8Array of left endian bytes.\n * @param {Uint8Array} bytes\n * @returns {Scalar}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Scalar.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Add two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n add(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_add(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the multiplicative identity of the scalar field.\n * @returns {Scalar}\n */\n static one() {\n const ret = wasm.scalar_one();\n return Scalar.__wrap(ret);\n }\n /**\n * Power of a scalar element.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n pow(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_pow(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the additive identity of the scalar field.\n * @returns {Scalar}\n */\n static zero() {\n const ret = wasm.field_zero();\n return Scalar.__wrap(ret);\n }\n /**\n * Clone the scalar element.\n * @returns {Scalar}\n */\n clone() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Divide two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n divide(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_divide(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Double the scalar element.\n * @returns {Scalar}\n */\n double() {\n const ret = wasm.scalar_double(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Check if one scalar element equals another.\n * @param {Scalar} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, Scalar);\n const ret = wasm.field_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Generate a random scalar element.\n * @returns {Scalar}\n */\n static random() {\n const ret = wasm.scalar_random();\n return Scalar.__wrap(ret);\n }\n /**\n * Invert the scalar element.\n * @returns {Scalar}\n */\n inverse() {\n const ret = wasm.scalar_inverse(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Multiply two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n multiply(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_multiply(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Subtract two scalar elements.\n * @param {Scalar} other\n * @returns {Scalar}\n */\n subtract(other) {\n _assertClass(other, Scalar);\n const ret = wasm.scalar_subtract(this.__wbg_ptr, other.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Cast the scalar element to a field element.\n * @returns {Field}\n */\n toField() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toField(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns the string representation of the scalar element.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst SignatureFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_signature_free(ptr >>> 0, 1));\n/**\n * Cryptographic signature of a message signed by an Aleo account\n */\nclass Signature {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Signature.prototype);\n obj.__wbg_ptr = ptr;\n SignatureFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n SignatureFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_signature_free(ptr, 0);\n }\n /**\n * Sign an instance of a valid Aleo data type or record.\n *\n * @param {PrivateKey} private_key The private key used to sign the message.\n * @param {String} message The string representation of the Aleo datatype or record to sign.\n * @returns {Signature} Signature of the message.\n * @param {PrivateKey} private_key\n * @param {string} message\n * @returns {Signature}\n */\n static signValue(private_key, message) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(private_key, PrivateKey);\n const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.signature_signValue(retptr, private_key.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get an address from a signature.\n *\n * @returns {Address} Address object\n * @returns {Address}\n */\n to_address() {\n const ret = wasm.signature_to_address(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Get the left endian boolean array representation of the bits of the signature.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.signature_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a signature from a string representation of a signature\n *\n * @param {string} signature String representation of a signature\n * @returns {Signature} Signature\n * @param {string} signature\n * @returns {Signature}\n */\n static from_string(signature) {\n const ptr0 = passStringToWasm0(signature, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.signature_from_string(ptr0, len0);\n return Signature.__wrap(ret);\n }\n /**\n * Get the left endian byte array representation of the signature.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a signature from a series of bits represented as a boolean array.\n *\n * @param {Array} bits A left endian boolean array representing the bits of the signature.\n *\n * @returns {Signature} The signature object.\n * @param {Array<any>} bits\n * @returns {Signature}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_fromBitsLe(retptr, addHeapObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the plaintext representation of the signature.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.signature_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Verify a signature over an Aleo datatype or record by an address.\n *\n * @param {Address} address The address used to verify the signature.\n * @param {String} message The message to verify, which must be the string representation of a valid Aleo datatype or record.\n * @returns {boolean} True if the signature is valid, false otherwise.\n * @param {Address} address\n * @param {string} message\n * @returns {boolean}\n */\n verifyValue(address, message) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(address, Address);\n const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.signature_verifyValue(retptr, this.__wbg_ptr, address.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return r0 !== 0;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a signature from a series of bytes.\n *\n * @param {Uint8Array} bytes A left endian byte array representing the signature.\n *\n * @returns {Signature} The signature object.\n * @param {Uint8Array} bytes\n * @returns {Signature}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Signature.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Sign a message with a private key\n *\n * @param {PrivateKey} private_key The private key to sign the message with\n * @param {Uint8Array} message Byte representation of the message to sign\n * @returns {Signature} Signature of the message\n * @param {PrivateKey} private_key\n * @param {Uint8Array} message\n * @returns {Signature}\n */\n static sign(private_key, message) {\n _assertClass(private_key, PrivateKey);\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.signature_sign(private_key.__wbg_ptr, ptr0, len0);\n return Signature.__wrap(ret);\n }\n /**\n * Verify a signature of a message with an address\n *\n * @param {Address} address The address to verify the signature with\n * @param {Uint8Array} message Byte representation of the message to verify\n * @returns {boolean} True if the signature is valid, false otherwise\n * @param {Address} address\n * @param {Uint8Array} message\n * @returns {boolean}\n */\n verify(address, message) {\n _assertClass(address, Address);\n const ptr0 = passArray8ToWasm0(message, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.signature_verify(this.__wbg_ptr, address.__wbg_ptr, ptr0, len0);\n return ret !== 0;\n }\n /**\n * Get the response of a signature.\n * @returns {Scalar}\n */\n response() {\n const ret = wasm.signature_response(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the challenge of a signature.\n * @returns {Scalar}\n */\n challenge() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the field array representation of the signature.\n * @returns {Array<any>}\n */\n toFields() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_toFields(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of a signature\n *\n * @returns {string} String representation of a signature\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.signature_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst TransactionFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_transaction_free(ptr >>> 0, 1));\n/**\n * Webassembly Representation of an Aleo transaction\n *\n * This object is created when generating an on-chain function deployment or execution and is the\n * object that should be submitted to the Aleo Network in order to deploy or execute a function.\n */\nclass Transaction {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Transaction.prototype);\n obj.__wbg_ptr = ptr;\n TransactionFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n TransactionFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_transaction_free(ptr, 0);\n }\n /**\n * Returns the transaction's total fee.\n * @returns {bigint}\n */\n feeAmount() {\n const ret = wasm.transaction_feeAmount(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Returns true if the transaction is an execution transaction.\n *\n * @returns {boolean} True if the transaction is an execution transaction\n * @returns {boolean}\n */\n isExecute() {\n const ret = wasm.transaction_isExecute(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Find a record in the transaction by the record's commitment.\n * @param {Field} commitment\n * @returns {RecordCiphertext | undefined}\n */\n findRecord(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transaction_findRecord(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret === 0 ? undefined : RecordCiphertext.__wrap(ret);\n }\n /**\n * Create a transaction from a string\n *\n * @param {string} transaction String representation of a transaction\n * @returns {Transaction}\n * @param {string} transaction\n * @returns {Transaction}\n */\n static fromString(transaction) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(transaction, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.transaction_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transaction.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transaction as a Uint8Array of left endian bytes.\n *\n * @returns {Uint8Array} Uint8Array representation of the transaction\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transitions in a transaction.\n *\n * @returns {Array<Transition>} Array of transition objects\n * @returns {Array<any>}\n */\n transitions() {\n const ret = wasm.transaction_transitions(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Create a transaction from a Uint8Array of left endian bytes.\n *\n * @param {Uint8Array} Uint8Array of left endian bytes encoding a Transaction.\n * @returns {Transaction}\n * @param {Uint8Array} bytes\n * @returns {Transaction}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transaction.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the record plaintext present in a transaction owned by a specific view key.\n *\n * @param {ViewKey} view_key View key used to decrypt the ciphertext\n *\n * @returns {Array<RecordPlaintext>} Array of record plaintext objects\n * @param {ViewKey} view_key\n * @returns {Array<any>}\n */\n ownedRecords(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.transaction_ownedRecords(this.__wbg_ptr, view_key.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the verifying keys in a transaction.\n *\n * @returns {Array<Object>} Array of verifying keys.\n * @returns {Array<any>}\n */\n verifyingKeys() {\n const ret = wasm.transaction_verifyingKeys(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns the transaction's base fee.\n * @returns {bigint}\n */\n baseFeeAmount() {\n const ret = wasm.transaction_baseFeeAmount(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Returns the program deployed within the transaction if the transaction is a deployment\n * transaction.\n *\n * @returns {Program | undefined} The program deployed within the transaction.\n * @returns {Program | undefined}\n */\n deployedProgram() {\n const ret = wasm.transaction_deployedProgram(this.__wbg_ptr);\n return ret === 0 ? undefined : Program.__wrap(ret);\n }\n /**\n * Get the type of the transaction (will return \"deploy\" or \"execute\")\n *\n * @returns {string} Transaction type\n * @returns {string}\n */\n transactionType() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_transactionType(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns true if the transaction contains the given commitment.\n *\n * @param {boolean} True if the transaction contains the given commitment.\n * @param {Field} commitment\n * @returns {boolean}\n */\n constainsCommitment(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transaction_constainsCommitment(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the transaction's priority fee.\n *\n * returns {bigint} The transaction's priority fee.\n * @returns {bigint}\n */\n priorityFeeAmount() {\n const ret = wasm.transaction_priorityFeeAmount(this.__wbg_ptr);\n return BigInt.asUintN(64, ret);\n }\n /**\n * Returns true if the transaction contains the given serial number.\n *\n * @param {boolean} True if the transaction contains the given serial number.\n * @param {Field} serial_number\n * @returns {boolean}\n */\n constainsSerialNumber(serial_number) {\n _assertClass(serial_number, Field);\n const ret = wasm.transaction_constainsSerialNumber(this.__wbg_ptr, serial_number.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the id of the transaction. This is the merkle root of the transaction's inclusion proof.\n *\n * This value can be used to query the status of the transaction on the Aleo Network to see\n * if it was successful. If successful, the transaction will be included in a block and this\n * value can be used to lookup the transaction data on-chain.\n *\n * @returns {string} TransactionId\n * @returns {string}\n */\n id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns true if the transaction is a fee transaction.\n *\n * @returns {boolean} True if the transaction is a fee transaction\n * @returns {boolean}\n */\n isFee() {\n const ret = wasm.transaction_isFee(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the records present in a transaction and their commitments.\n *\n * @returns {Array<{commitment: Field, record: RecordCiphertext}>} Array of record ciphertext objects\n * @returns {Array<any>}\n */\n records() {\n const ret = wasm.transaction_records(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get a summary of the transaction within a javascript object.\n *\n * If the transaction is an execution transaction, this function will return a list of the\n * transitions and their inputs and outputs.\n *\n * If the transaction is a deployment transaction, this function will return the program id and\n * a list of the functions and their verifying keys, constraint, and variable counts.\n *\n * @param {boolean} convert_to_js If true the inputs and outputs will be converted to JS objects,\n * if false the inputs and outputs will be in wasm format.\n *\n * @returns {Object} Transaction summary\n * @param {boolean} convert_to_js\n * @returns {object}\n */\n summary(convert_to_js) {\n const ret = wasm.transaction_summary(this.__wbg_ptr, convert_to_js);\n return takeObject(ret);\n }\n /**\n * Returns the execution within the transaction (if present).\n *\n * @returns {Execution | undefined} The execution within the transaction.\n * @returns {Execution | undefined}\n */\n execution() {\n const ret = wasm.transaction_execution(this.__wbg_ptr);\n return ret === 0 ? undefined : Execution.__wrap(ret);\n }\n /**\n * Returns true if the transaction is a deployment transaction.\n *\n * @returns {boolean} True if the transaction is a deployment transaction\n * @returns {boolean}\n */\n isDeploy() {\n const ret = wasm.transaction_isDeploy(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the transaction as a string. If you want to submit this transaction to the Aleo Network\n * this function will create the string that should be submitted in the `POST` data.\n *\n * @returns {string} String representation of the transaction\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transaction_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst TransitionFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_transition_free(ptr >>> 0, 1));\n\nclass Transition {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Transition.prototype);\n obj.__wbg_ptr = ptr;\n TransitionFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n TransitionFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_transition_free(ptr, 0);\n }\n /**\n * Get the program ID of the transition.\n * @returns {string}\n */\n programId() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_programId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Find a record in the transition by the record's commitment.\n * @param {Field} commitment\n * @returns {RecordCiphertext | undefined}\n */\n findRecord(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transition_findRecord(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret === 0 ? undefined : RecordCiphertext.__wrap(ret);\n }\n /**\n * Create a transition from a string\n *\n * @param {string} transition String representation of a transition\n * @returns {Transition}\n * @param {string} transition\n * @returns {Transition}\n */\n static fromString(transition) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(transition, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.transition_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the transition as a Uint8Array of left endian bytes.\n *\n * @returns {Uint8Array} Uint8Array representation of the transition\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a transition from a Uint8Array of left endian bytes.\n *\n * @param {Uint8Array} Uint8Array of left endian bytes encoding a Transition.\n * @returns {Transition}\n * @param {Uint8Array} bytes\n * @returns {Transition}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_fromBytesLe(retptr, addHeapObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the function name of the transition.\n * @returns {string}\n */\n functionName() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_functionName(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the record plaintext present in a transition owned by a specific view key.\n *\n * @param {ViewKey} view_key The view key of the record owner.\n *\n * @returns {Array<RecordPlaintext>} Array of record plaintext objects\n * @param {ViewKey} view_key\n * @returns {Array<any>}\n */\n ownedRecords(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.transition_ownedRecords(this.__wbg_ptr, view_key.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Decrypt the transition using the transition view key.\n *\n * @param {Field} tvk The transition view key.\n *\n * @returns {Transition} The transition with public values for inputs and outputs.\n * @param {Field} tvk\n * @returns {Transition}\n */\n decryptTransition(tvk) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(tvk, Field);\n wasm.transition_decryptTransition(retptr, this.__wbg_ptr, tvk.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Transition.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Returns true if the transition contains the given commitment.\n *\n * @param {boolean} True if the transition contains the given commitment.\n * @param {Field} commitment\n * @returns {boolean}\n */\n containsCommitment(commitment) {\n _assertClass(commitment, Field);\n const ret = wasm.transition_containsCommitment(this.__wbg_ptr, commitment.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Check if the transition contains a serial number.\n *\n * @param {Field} serial_number The serial number to check for\n *\n * @returns {bool} True if the transition contains a serial number, false otherwise\n * @param {Field} serial_number\n * @returns {boolean}\n */\n containsSerialNumber(serial_number) {\n _assertClass(serial_number, Field);\n const ret = wasm.transition_containsSerialNumber(this.__wbg_ptr, serial_number.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Get the transition ID\n *\n * @returns {string} The transition ID\n * @returns {string}\n */\n id() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_id(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Get the transition signer commitment of the transition.\n *\n * @returns {Field} Transition signer commitment\n * @returns {Field}\n */\n scm() {\n const ret = wasm.transition_scm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the transition commitment of the transition.\n *\n * @returns {Field} Transition commitment\n * @returns {Field}\n */\n tcm() {\n const ret = wasm.transition_tcm(this.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the transition public key of the transition.\n *\n * @returns {Group} Transition public key\n * @returns {Group}\n */\n tpk() {\n const ret = wasm.address_toGroup(this.__wbg_ptr);\n return Group.__wrap(ret);\n }\n /**\n * Get the transition view key of the transition.\n *\n * @param {ViewKey} view_key The view key of the transition signer.\n *\n * @returns {Field} Transition view key\n * @param {ViewKey} view_key\n * @returns {Field}\n */\n tvk(view_key) {\n _assertClass(view_key, ViewKey);\n const ret = wasm.transition_tvk(this.__wbg_ptr, view_key.__wbg_ptr);\n return Field.__wrap(ret);\n }\n /**\n * Get the inputs of the transition.\n *\n * @param {bool} convert_to_js If true the inputs will be converted to JS objects, if false\n * the inputs will be in wasm format.\n *\n * @returns {Array} Array of inputs\n * @param {boolean} convert_to_js\n * @returns {Array<any>}\n */\n inputs(convert_to_js) {\n const ret = wasm.transition_inputs(this.__wbg_ptr, convert_to_js);\n return takeObject(ret);\n }\n /**\n * Get the outputs of the transition.\n *\n * @param {bool} convert_to_js If true the outputs will be converted to JS objects, if false\n * the outputs will be in wasm format.\n *\n * @returns {Array} Array of outputs\n * @param {boolean} convert_to_js\n * @returns {Array<any>}\n */\n outputs(convert_to_js) {\n const ret = wasm.transition_outputs(this.__wbg_ptr, convert_to_js);\n return takeObject(ret);\n }\n /**\n * Get the records present in a transition and their commitments.\n *\n * @returns {Array<{commitment: Field, record: RecordCiphertext}>} Array of record ciphertext objects\n * @returns {Array<any>}\n */\n records() {\n const ret = wasm.transition_records(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Get the transition as a string. If you want to submit this transition to the Aleo Network\n * this function will create the string that should be submitted in the `POST` data.\n *\n * @returns {string} String representation of the transition\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.transition_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U128Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u128_free(ptr >>> 0, 1));\n\nclass U128 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U128.prototype);\n obj.__wbg_ptr = ptr;\n U128Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U128Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u128_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U128}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i128_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.u128_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U128}\n */\n absChecked() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U128}\n */\n absWrapped() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U128} other\n * @returns {U128}\n */\n addWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U128} other\n * @returns {U128}\n */\n divWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.u128_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U128}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u128_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U128}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u128_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U128} other\n * @returns {U128}\n */\n mulWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U128} other\n * @returns {U128}\n */\n remWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.u128_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U128} other\n * @returns {U128}\n */\n subWrapped(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U128}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u128_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U128}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i128_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U128.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U128}\n */\n neg() {\n const ret = wasm.u128_neg(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U128} other\n * @returns {U128}\n */\n rem(other) {\n _assertClass(other, U128);\n const ret = wasm.u128_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U128}\n */\n clone() {\n const ret = wasm.i128_clone(this.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U128} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U128);\n const ret = wasm.i128_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U128}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u128_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U128}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u128_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U128}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u128_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U128.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.u128_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u128_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U16Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u16_free(ptr >>> 0, 1));\n\nclass U16 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U16.prototype);\n obj.__wbg_ptr = ptr;\n U16Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U16Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u16_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U16}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i16_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i16_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U16}\n */\n absChecked() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U16}\n */\n absWrapped() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U16} other\n * @returns {U16}\n */\n addWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U16} other\n * @returns {U16}\n */\n divWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.u16_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U16}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U16}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u16_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U16} other\n * @returns {U16}\n */\n mulWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U16} other\n * @returns {U16}\n */\n remWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.u16_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U16} other\n * @returns {U16}\n */\n subWrapped(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U16}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u16_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U16}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i16_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U16.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U16}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U16} other\n * @returns {U16}\n */\n rem(other) {\n _assertClass(other, U16);\n const ret = wasm.u16_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U16}\n */\n clone() {\n const ret = wasm.i16_clone(this.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U16} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U16);\n const ret = wasm.i16_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U16}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u16_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U16}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u16_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U16}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u16_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U16.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i16_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u16_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U32Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u32_free(ptr >>> 0, 1));\n\nclass U32 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U32.prototype);\n obj.__wbg_ptr = ptr;\n U32Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U32Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u32_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U32}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i32_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.u32_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U32}\n */\n absChecked() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U32}\n */\n absWrapped() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U32} other\n * @returns {U32}\n */\n addWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U32} other\n * @returns {U32}\n */\n divWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.u32_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U32}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U32}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u32_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U32} other\n * @returns {U32}\n */\n mulWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U32} other\n * @returns {U32}\n */\n remWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.u32_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U32} other\n * @returns {U32}\n */\n subWrapped(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U32}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u32_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U32}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i32_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U32.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U32}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U32} other\n * @returns {U32}\n */\n rem(other) {\n _assertClass(other, U32);\n const ret = wasm.u32_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U32}\n */\n clone() {\n const ret = wasm.i32_clone(this.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U32} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U32);\n const ret = wasm.i32_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U32}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u32_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U32}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u32_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U32}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u32_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U32.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.u32_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u32_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U64Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u64_free(ptr >>> 0, 1));\n\nclass U64 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U64.prototype);\n obj.__wbg_ptr = ptr;\n U64Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U64Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u64_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U64}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i64_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.u64_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U64}\n */\n absChecked() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U64}\n */\n absWrapped() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U64} other\n * @returns {U64}\n */\n addWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U64} other\n * @returns {U64}\n */\n divWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.u64_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U64}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U64}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u64_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U64} other\n * @returns {U64}\n */\n mulWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U64} other\n * @returns {U64}\n */\n remWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.u64_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U64} other\n * @returns {U64}\n */\n subWrapped(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U64}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u64_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U64}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i64_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U64.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U64}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U64} other\n * @returns {U64}\n */\n rem(other) {\n _assertClass(other, U64);\n const ret = wasm.u64_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U64}\n */\n clone() {\n const ret = wasm.i64_clone(this.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U64} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U64);\n const ret = wasm.i64_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U64}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u64_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U64}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u64_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U64}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u64_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U64.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.u64_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u64_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst U8Finalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_u8_free(ptr >>> 0, 1));\n\nclass U8 {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(U8.prototype);\n obj.__wbg_ptr = ptr;\n U8Finalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n U8Finalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_u8_free(ptr, 0);\n }\n /**\n * Attempt to construct the integer from a field element.\n * @param {Field} field\n * @returns {U8}\n */\n static fromField(field) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n _assertClass(field, Field);\n wasm.i8_fromField(retptr, field.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the boolean array representation of the integer.\n * @returns {Array<any>}\n */\n toBitsLe() {\n const ret = wasm.i8_toBitsLe(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Checked absolute value.\n * @returns {U8}\n */\n absChecked() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped absolute value.\n * @returns {U8}\n */\n absWrapped() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped addition with another integer.\n * @param {U8} other\n * @returns {U8}\n */\n addWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_addWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped division.\n * @param {U8} other\n * @returns {U8}\n */\n divWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.u8_divWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Atttempt to construct the integer from a list of field elements.\n * @param {Array<any>} fields\n * @returns {U8}\n */\n static fromFields(fields) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromFields(retptr, addHeapObject(fields));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a string representation.\n * @param {string} s\n * @returns {U8}\n */\n static fromString(s) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(s, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.u8_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Wrapped multiplication with another integer.\n * @param {U8} other\n * @returns {U8}\n */\n mulWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_mulWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Get the remainder from an integer division which wraps if there's an overflow.\n * @param {U8} other\n * @returns {U8}\n */\n remWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.u8_remWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Wrapped subtraction with another integer.\n * @param {U8} other\n * @returns {U8}\n */\n subWrapped(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_subWrapped(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Construct an integer from a byte array representation.\n * @returns {Uint8Array}\n */\n toBytesLe() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_toBytesLe(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Construct an integer from a boolean array representation.\n * @param {Array<any>} bits\n * @returns {U8}\n */\n static fromBitsLe(bits) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBitsLe(retptr, addBorrowedObject(bits));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Convert the integer to the Plaintext type. This must be done before hashing an integer to ensure it matches hashes with a leo/aleo program.\n * @returns {Plaintext}\n */\n toPlaintext() {\n const ret = wasm.u8_toPlaintext(this.__wbg_ptr);\n return Plaintext.__wrap(ret);\n }\n /**\n * Get the byte array representation of the integer.\n * @param {Uint8Array} bytes\n * @returns {U8}\n */\n static fromBytesLe(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.i8_fromBytesLe(retptr, addBorrowedObject(bytes));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return U8.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n heap[stack_pointer++] = undefined;\n }\n }\n /**\n * Negate the integer (e.g., 5 → -5).\n * @returns {U8}\n */\n neg() {\n const ret = wasm.u16_neg(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Get the remainder from integer division.\n * @param {U8} other\n * @returns {U8}\n */\n rem(other) {\n _assertClass(other, U8);\n const ret = wasm.u8_rem(this.__wbg_ptr, other.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Clone the integer in wasm memory.\n * @returns {U8}\n */\n clone() {\n const ret = wasm.i8_clone(this.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Check equality with another integer.\n * @param {U8} other\n * @returns {boolean}\n */\n equals(other) {\n _assertClass(other, U8);\n const ret = wasm.i8_equals(this.__wbg_ptr, other.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Exponentiate the integer with a u8 exponent.\n * @param {U8} exponent\n * @returns {U8}\n */\n powU8(exponent) {\n _assertClass(exponent, U8);\n const ret = wasm.u8_powU8(this.__wbg_ptr, exponent.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u16 exponent.\n * @param {U16} exponent\n * @returns {U8}\n */\n powU16(exponent) {\n _assertClass(exponent, U16);\n const ret = wasm.u8_powU16(this.__wbg_ptr, exponent.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Exponentiate the integer with a u32 exponent.\n * @param {U32} exponent\n * @returns {U8}\n */\n powU32(exponent) {\n _assertClass(exponent, U32);\n const ret = wasm.u8_powU32(this.__wbg_ptr, exponent.__wbg_ptr);\n return U8.__wrap(ret);\n }\n /**\n * Convert the integer to a Scalar value.\n * @returns {Scalar}\n */\n toScalar() {\n const ret = wasm.i8_toScalar(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get the string representation of the integer.\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.u8_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nconst VerifyingKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_verifyingkey_free(ptr >>> 0, 1));\n/**\n * Verifying key for a function within an Aleo program\n */\nclass VerifyingKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(VerifyingKey.prototype);\n obj.__wbg_ptr = ptr;\n VerifyingKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n VerifyingKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_verifyingkey_free(ptr, 0);\n }\n /**\n * Construct a new verifying key from a byte array\n *\n * @param {Uint8Array} bytes Byte representation of a verifying key\n * @returns {VerifyingKey}\n * @param {Uint8Array} bytes\n * @returns {VerifyingKey}\n */\n static fromBytes(bytes) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export_3);\n const len0 = WASM_VECTOR_LEN;\n wasm.verifyingkey_fromBytes(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return VerifyingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Create a verifying key from string\n *\n * @param {String} string String representation of a verifying key\n * @returns {VerifyingKey}\n * @param {string} string\n * @returns {VerifyingKey}\n */\n static fromString(string) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(string, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.verifyingkey_fromString(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return VerifyingKey.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the number of constraints associated with the circuit\n *\n * @returns {number} The number of constraints\n * @returns {number}\n */\n numConstraints() {\n const ret = wasm.verifyingkey_numConstraints(this.__wbg_ptr);\n return ret >>> 0;\n }\n /**\n * Create a copy of the verifying key\n *\n * @returns {VerifyingKey} A copy of the verifying key\n * @returns {VerifyingKey}\n */\n copy() {\n const ret = wasm.verifyingkey_copy(this.__wbg_ptr);\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Get the checksum of the verifying key\n *\n * @returns {string} Checksum of the verifying key\n * @returns {string}\n */\n checksum() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.verifyingkey_checksum(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Create a byte array from a verifying key\n *\n * @returns {Uint8Array} Byte representation of a verifying key\n * @returns {Uint8Array}\n */\n toBytes() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.verifyingkey_toBytes(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v1 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_2(r0, r1 * 1, 1);\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get a string representation of the verifying key\n *\n * @returns {String} String representation of the verifying key\n * @returns {string}\n */\n toString() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.verifyingkey_toString(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n /**\n * Returns the verifying key for the join function\n *\n * @returns {VerifyingKey} Verifying key for the join function\n * @returns {VerifyingKey}\n */\n static joinVerifier() {\n const ret = wasm.verifyingkey_joinVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the split function\n *\n * @returns {VerifyingKey} Verifying key for the split function\n * @returns {VerifyingKey}\n */\n static splitVerifier() {\n const ret = wasm.verifyingkey_splitVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the join function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isJoinVerifier() {\n const ret = wasm.verifyingkey_isJoinVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the split function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isSplitVerifier() {\n const ret = wasm.verifyingkey_isSplitVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the inclusion function\n *\n * @returns {VerifyingKey} Verifying key for the inclusion function\n * @returns {VerifyingKey}\n */\n static inclusionVerifier() {\n const ret = wasm.verifyingkey_inclusionVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the fee_public function\n *\n * @returns {VerifyingKey} Verifying key for the fee_public function\n * @returns {VerifyingKey}\n */\n static feePublicVerifier() {\n const ret = wasm.verifyingkey_feePublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_public function\n *\n * @returns {VerifyingKey} Verifying key for the bond_public function\n * @returns {VerifyingKey}\n */\n static bondPublicVerifier() {\n const ret = wasm.verifyingkey_bondPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the fee_private function\n *\n * @returns {VerifyingKey} Verifying key for the fee_private function\n * @returns {VerifyingKey}\n */\n static feePrivateVerifier() {\n const ret = wasm.verifyingkey_feePrivateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the inclusion function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isInclusionVerifier() {\n const ret = wasm.verifyingkey_isInclusionVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the fee_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isFeePublicVerifier() {\n const ret = wasm.verifyingkey_isFeePublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the unbond_public function\n *\n * @returns {VerifyingKey} Verifying key for the unbond_public function\n * @returns {VerifyingKey}\n */\n static unbondPublicVerifier() {\n const ret = wasm.verifyingkey_unbondPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_validator function\n *\n * @returns {VerifyingKey} Verifying key for the bond_validator function\n * @returns {VerifyingKey}\n */\n static bondValidatorVerifier() {\n const ret = wasm.verifyingkey_bondValidatorVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_public function\n *\n * @returns {VerifyingKey} Verifying key for the bond_public function\n * @returns {boolean}\n */\n isBondPublicVerifier() {\n const ret = wasm.verifyingkey_isBondPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the fee_private function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isFeePrivateVerifier() {\n const ret = wasm.verifyingkey_isFeePrivateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the transfer_public function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_public function\n * @returns {VerifyingKey}\n */\n static transferPublicVerifier() {\n const ret = wasm.verifyingkey_transferPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the unbond_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isUnbondPublicVerifier() {\n const ret = wasm.verifyingkey_isUnbondPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the transfer_private function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_private function\n * @returns {VerifyingKey}\n */\n static transferPrivateVerifier() {\n const ret = wasm.verifyingkey_transferPrivateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the bond_validator function\n *\n * @returns {VerifyingKey} Verifying key for the bond_validator function\n * @returns {boolean}\n */\n isBondValidatorVerifier() {\n const ret = wasm.verifyingkey_isBondValidatorVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the transfer_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPublicVerifier() {\n const ret = wasm.verifyingkey_isTransferPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the claim_delegator function\n *\n * @returns {VerifyingKey} Verifying key for the claim_unbond_public function\n * @returns {VerifyingKey}\n */\n static claimUnbondPublicVerifier() {\n const ret = wasm.verifyingkey_claimUnbondPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the transfer_private function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPrivateVerifier() {\n const ret = wasm.verifyingkey_isTransferPrivateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the set_validator_state function\n *\n * @returns {VerifyingKey} Verifying key for the set_validator_state function\n * @returns {VerifyingKey}\n */\n static setValidatorStateVerifier() {\n const ret = wasm.verifyingkey_setValidatorStateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the claim_delegator function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isClaimUnbondPublicVerifier() {\n const ret = wasm.verifyingkey_isClaimUnbondPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the set_validator_state function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isSetValidatorStateVerifier() {\n const ret = wasm.verifyingkey_isSetValidatorStateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Returns the verifying key for the transfer_public_as_signer function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_public_as_signer function\n * @returns {VerifyingKey}\n */\n static transferPublicAsSignerVerifier() {\n const ret = wasm.verifyingkey_transferPublicAsSignerVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the transfer_private_to_public function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_private_to_public function\n * @returns {VerifyingKey}\n */\n static transferPrivateToPublicVerifier() {\n const ret = wasm.verifyingkey_transferPrivateToPublicVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Returns the verifying key for the transfer_public_to_private function\n *\n * @returns {VerifyingKey} Verifying key for the transfer_public_to_private function\n * @returns {VerifyingKey}\n */\n static transferPublicToPrivateVerifier() {\n const ret = wasm.verifyingkey_transferPublicToPrivateVerifier();\n return VerifyingKey.__wrap(ret);\n }\n /**\n * Verifies the verifying key is for the transfer_public_as_signer function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPublicAsSignerVerifier() {\n const ret = wasm.verifyingkey_isTransferPublicAsSignerVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the transfer_private_to_public function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPrivateToPublicVerifier() {\n const ret = wasm.verifyingkey_isTransferPrivateToPublicVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * Verifies the verifying key is for the transfer_public_to_private function\n *\n * @returns {bool}\n * @returns {boolean}\n */\n isTransferPublicToPrivateVerifier() {\n const ret = wasm.verifyingkey_isTransferPublicToPrivateVerifier(this.__wbg_ptr);\n return ret !== 0;\n }\n}\n\nconst ViewKeyFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_viewkey_free(ptr >>> 0, 1));\n\nclass ViewKey {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(ViewKey.prototype);\n obj.__wbg_ptr = ptr;\n ViewKeyFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n ViewKeyFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_viewkey_free(ptr, 0);\n }\n /**\n * Get the address corresponding to a view key\n *\n * @returns {Address} Address\n * @returns {Address}\n */\n to_address() {\n const ret = wasm.address_from_view_key(this.__wbg_ptr);\n return Address.__wrap(ret);\n }\n /**\n * Create a new view key from a string representation of a view key\n *\n * @param {string} view_key String representation of a view key\n * @returns {ViewKey} View key\n * @param {string} view_key\n * @returns {ViewKey}\n */\n static from_string(view_key) {\n const ptr0 = passStringToWasm0(view_key, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.viewkey_from_string(ptr0, len0);\n return ViewKey.__wrap(ret);\n }\n /**\n * Create a new view key from a private key\n *\n * @param {PrivateKey} private_key Private key\n * @returns {ViewKey} View key\n * @param {PrivateKey} private_key\n * @returns {ViewKey}\n */\n static from_private_key(private_key) {\n _assertClass(private_key, PrivateKey);\n const ret = wasm.viewkey_from_private_key(private_key.__wbg_ptr);\n return ViewKey.__wrap(ret);\n }\n /**\n * Decrypt a record ciphertext with a view key\n *\n * @param {string} ciphertext String representation of a record ciphertext\n * @returns {string} String representation of a record plaintext\n * @param {string} ciphertext\n * @returns {string}\n */\n decrypt(ciphertext) {\n let deferred3_0;\n let deferred3_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(ciphertext, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len0 = WASM_VECTOR_LEN;\n wasm.viewkey_decrypt(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n var ptr2 = r0;\n var len2 = r1;\n if (r3) {\n ptr2 = 0; len2 = 0;\n throw takeObject(r2);\n }\n deferred3_0 = ptr2;\n deferred3_1 = len2;\n return getStringFromWasm0(ptr2, len2);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);\n }\n }\n /**\n * Cast the view key to a field.\n * @returns {Field}\n */\n toField() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.scalar_toField(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return Field.__wrap(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Get the underlying scalar of a view key.\n * @returns {Scalar}\n */\n to_scalar() {\n const ret = wasm.field_clone(this.__wbg_ptr);\n return Scalar.__wrap(ret);\n }\n /**\n * Get a string representation of a view key\n *\n * @returns {string} String representation of a view key\n * @returns {string}\n */\n to_string() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.viewkey_to_string(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);\n }\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbg_abort_775ef1d17fc65868 = function(arg0) {\n getObject(arg0).abort();\n };\n imports.wbg.__wbg_address_new = function(arg0) {\n const ret = Address.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_append_8c7dd8d641a5f01b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_arrayBuffer_d1b44c4390db422f = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).arrayBuffer();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_async_9ff6d9e405f13772 = function(arg0) {\n const ret = getObject(arg0).async;\n return ret;\n };\n imports.wbg.__wbg_authorization_new = function(arg0) {\n const ret = Authorization.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_609cc3eee51ed158 = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_call_672a4d21634d4a24 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_call_7cccdd69e0791ae2 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_ciphertext_new = function(arg0) {\n const ret = Ciphertext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_crypto_ed58b8e10a292839 = function(arg0) {\n const ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_data_432d9c3df2630942 = function(arg0) {\n const ret = getObject(arg0).data;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_done_769e5ede4b31c67b = function(arg0) {\n const ret = getObject(arg0).done;\n return ret;\n };\n imports.wbg.__wbg_error_7534b8e9a36f1ab4 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.error(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_export_2(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_executionresponse_new = function(arg0) {\n const ret = ExecutionResponse.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fetch_509096533071c657 = function(arg0, arg1) {\n const ret = getObject(arg0).fetch(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fetch_f1856afdb49415d1 = function(arg0) {\n const ret = fetch(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_field_new = function(arg0) {\n const ret = Field.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_field_unwrap = function(arg0) {\n const ret = Field.__unwrap(takeObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_getRandomValues_bcb4912f16000dc4 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).getRandomValues(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_get_67b2ba62fc30de12 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.get(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_get_b9b93047fe3cf45b = function(arg0, arg1) {\n const ret = getObject(arg0)[arg1 >>> 0];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_group_new = function(arg0) {\n const ret = Group.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_has_a5ea9117f258a0ec = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.has(getObject(arg0), getObject(arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_headers_9cb51cfd2ac780a4 = function(arg0) {\n const ret = getObject(arg0).headers;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_instanceof_Response_f2cc20d9f7dfd644 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Response;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_iterator_9a24c88df860dc65 = function() {\n const ret = Symbol.iterator;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_keypair_new = function(arg0) {\n const ret = KeyPair.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_keys_5c77a08ddc2fb8a6 = function(arg0) {\n const ret = Object.keys(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_length_a446193dc22c12f8 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_length_e2d2a49132c1b256 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_log_56fc8378195f90bc = function(arg0, arg1) {\n console.log(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbg_msCrypto_0a36e2ec3a343d26 = function(arg0) {\n const ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_018dcc2d6c8c2f6a = function() { return handleError(function () {\n const ret = new Headers();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_23a2665fac83c611 = function(arg0, arg1) {\n try {\n var state0 = {a: arg0, b: arg1};\n var cb0 = (arg0, arg1) => {\n const a = state0.a;\n state0.a = 0;\n try {\n return __wbg_adapter_870(a, state0.b, arg0, arg1);\n } finally {\n state0.a = a;\n }\n };\n const ret = new Promise(cb0);\n return addHeapObject(ret);\n } finally {\n state0.a = state0.b = 0;\n }\n };\n imports.wbg.__wbg_new_405e22f390576ce2 = function() {\n const ret = new Object();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_78feb108b6472713 = function() {\n const ret = new Array();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_86231e225ca6b962 = function() { return handleError(function () {\n const ret = new XMLHttpRequest();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_8a6f238a6ece86ea = function() {\n const ret = new Error();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_a12002a7f91c75be = function(arg0) {\n const ret = new Uint8Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_b1a33e5095abf678 = function() { return handleError(function (arg0, arg1) {\n const ret = new Worker(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_e25e5aab09ff45db = function() { return handleError(function () {\n const ret = new AbortController();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_e9a4a67dbababe57 = function(arg0) {\n const ret = new Int32Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newnoargs_105ed471475aaf50 = function(arg0, arg1) {\n const ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a = function(arg0, arg1, arg2) {\n const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithlength_a381634e90c276d4 = function(arg0) {\n const ret = new Uint8Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithlength_c4c419ef0bc8a1f8 = function(arg0) {\n const ret = new Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithstrandinit_06c535e0a867c635 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_next_25feadfc0913fea9 = function(arg0) {\n const ret = getObject(arg0).next;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_next_6574e1a8a62d1055 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).next();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_node_02999533c4ea02e3 = function(arg0) {\n const ret = getObject(arg0).node;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_of_4a05197bfc89556f = function(arg0, arg1, arg2) {\n const ret = Array.of(getObject(arg0), getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_open_13a598ea50d82926 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).open(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4), arg5 !== 0);\n }, arguments) };\n imports.wbg.__wbg_overrideMimeType_36ce5eeae20aff9f = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).overrideMimeType(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_plaintext_new = function(arg0) {\n const ret = Plaintext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_postMessage_6edafa8f7b9c2f52 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).postMessage(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_process_5c1d670bc53614b8 = function(arg0) {\n const ret = getObject(arg0).process;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_provingrequest_new = function(arg0) {\n const ret = ProvingRequest.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_push_737cfc8c1432c2c6 = function(arg0, arg1) {\n const ret = getObject(arg0).push(getObject(arg1));\n return ret;\n };\n imports.wbg.__wbg_queueMicrotask_97d92b4fcc8a61c5 = function(arg0) {\n queueMicrotask(getObject(arg0));\n };\n imports.wbg.__wbg_queueMicrotask_d3219def82552485 = function(arg0) {\n const ret = getObject(arg0).queueMicrotask;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_randomFillSync_ab2cfe79ebbf2740 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).randomFillSync(takeObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_recordciphertext_new = function(arg0) {\n const ret = RecordCiphertext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_recordciphertext_unwrap = function(arg0) {\n const ret = RecordCiphertext.__unwrap(takeObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_recordplaintext_new = function(arg0) {\n const ret = RecordPlaintext.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_require_79b1e9274cde3c87 = function() { return handleError(function () {\n const ret = module.require;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_resolve_4851785c9c5f573d = function(arg0) {\n const ret = Promise.resolve(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_responseText_ad050aa7f8afec9f = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg1).responseText;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n }, arguments) };\n imports.wbg.__wbg_response_49e10f8ee7f418db = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).response;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_send_40a47636ff90f64d = function() { return handleError(function (arg0) {\n getObject(arg0).send();\n }, arguments) };\n imports.wbg.__wbg_set_37837023f3d740e8 = function(arg0, arg1, arg2) {\n getObject(arg0)[arg1 >>> 0] = takeObject(arg2);\n };\n imports.wbg.__wbg_set_65595bdd868b3009 = function(arg0, arg1, arg2) {\n getObject(arg0).set(getObject(arg1), arg2 >>> 0);\n };\n imports.wbg.__wbg_set_bb8cecf6a62b9f46 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_setbody_5923b78a95eedf29 = function(arg0, arg1) {\n getObject(arg0).body = getObject(arg1);\n };\n imports.wbg.__wbg_setcredentials_c3a22f1cd105a2c6 = function(arg0, arg1) {\n getObject(arg0).credentials = __wbindgen_enum_RequestCredentials[arg1];\n };\n imports.wbg.__wbg_setheaders_834c0bdb6a8949ad = function(arg0, arg1) {\n getObject(arg0).headers = getObject(arg1);\n };\n imports.wbg.__wbg_setmethod_3c5280fe5d890842 = function(arg0, arg1, arg2) {\n getObject(arg0).method = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setmode_5dc300b865044b65 = function(arg0, arg1) {\n getObject(arg0).mode = __wbindgen_enum_RequestMode[arg1];\n };\n imports.wbg.__wbg_setonmessage_5a885b16bdc6dca6 = function(arg0, arg1) {\n getObject(arg0).onmessage = getObject(arg1);\n };\n imports.wbg.__wbg_setsignal_75b21ef3a81de905 = function(arg0, arg1) {\n getObject(arg0).signal = getObject(arg1);\n };\n imports.wbg.__wbg_signal_aaf9ad74119f20a4 = function(arg0) {\n const ret = getObject(arg0).signal;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_signature_new = function(arg0) {\n const ret = Signature.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_spawnWorker_b3b660eb297d8ef0 = function(arg0, arg1, arg2, arg3) {\n const ret = spawnWorker(getObject(arg0), getObject(arg1), getObject(arg2), arg3 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_stack_0ed75d68575b0f3c = function(arg0, arg1) {\n const ret = getObject(arg1).stack;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07 = function() {\n const ret = typeof global === 'undefined' ? null : global;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0 = function() {\n const ret = typeof globalThis === 'undefined' ? null : globalThis;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819 = function() {\n const ret = typeof self === 'undefined' ? null : self;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40 = function() {\n const ret = typeof window === 'undefined' ? null : window;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_status_12bcf88a8ff51470 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).status;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_status_f6360336ca686bf0 = function(arg0) {\n const ret = getObject(arg0).status;\n return ret;\n };\n imports.wbg.__wbg_stringify_f7ed6987935b4a24 = function() { return handleError(function (arg0) {\n const ret = JSON.stringify(getObject(arg0));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_subarray_aa9065fa9dc5df96 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_44b73946d2fb3e7d = function(arg0, arg1) {\n const ret = getObject(arg0).then(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_48b406749878a531 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_transaction_new = function(arg0) {\n const ret = Transaction.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_transition_new = function(arg0) {\n const ret = Transition.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_url_ae10c34ca209681d = function(arg0, arg1) {\n const ret = getObject(arg1).url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_value_cd1ffa7b1ab794f1 = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_value_dab73d3d5d4abaaf = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_verifyingkey_new = function(arg0) {\n const ret = VerifyingKey.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_versions_c71aa1626a93e0a1 = function(arg0) {\n const ret = getObject(arg0).versions;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_waitAsync_61f0a081053dd3c2 = function(arg0, arg1, arg2) {\n const ret = Atomics.waitAsync(getObject(arg0), arg1 >>> 0, arg2);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_waitAsync_7ce6c8a047c752c3 = function() {\n const ret = Atomics.waitAsync;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_i128 = function(arg0, arg1) {\n const ret = arg0 << BigInt(64) | BigInt.asUintN(64, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_i64 = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_u128 = function(arg0, arg1) {\n const ret = BigInt.asUintN(64, arg0) << BigInt(64) | BigInt.asUintN(64, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_bigint_from_u64 = function(arg0) {\n const ret = BigInt.asUintN(64, arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_boolean_get = function(arg0) {\n const v = getObject(arg0);\n const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;\n return ret;\n };\n imports.wbg.__wbindgen_cb_drop = function(arg0) {\n const obj = takeObject(arg0).original;\n if (obj.cnt-- == 1) {\n obj.a = 0;\n return true;\n }\n const ret = false;\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper7388 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 548, __wbg_adapter_40);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper7393 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 548, __wbg_adapter_40);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_function = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'function';\n return ret;\n };\n imports.wbg.__wbindgen_is_object = function(arg0) {\n const val = getObject(arg0);\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbindgen_is_string = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'string';\n return ret;\n };\n imports.wbg.__wbindgen_is_undefined = function(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n };\n imports.wbg.__wbindgen_link_9579f016b4522a24 = function(arg0) {\n const val = `onmessage = function (ev) {\n let [ia, index, value] = ev.data;\n ia = new Int32Array(ia.buffer);\n let result = Atomics.wait(ia, index, value);\n postMessage(result);\n };\n `;\n const ret = typeof URL.createObjectURL === 'undefined' ? \"data:application/javascript,\" + encodeURIComponent(val) : URL.createObjectURL(new Blob([val], { type: \"text/javascript\" }));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbindgen_memory = function() {\n const ret = wasm.memory;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_module = function() {\n const ret = __wbg_init.__wbindgen_wasm_module;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_number_new = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_clone_ref = function(arg0) {\n const ret = getObject(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n };\n imports.wbg.__wbindgen_rethrow = function(arg0) {\n throw takeObject(arg0);\n };\n imports.wbg.__wbindgen_string_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_3, wasm.__wbindgen_export_4);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbindgen_string_new = function(arg0, arg1) {\n const ret = getStringFromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, memory) {\n imports.wbg.memory = memory || new WebAssembly.Memory({initial:167,maximum:65536,shared:true});\n}\n\nfunction __wbg_finalize_init(instance, module, thread_stack_size) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedDataViewMemory0 = null;\n cachedUint8ArrayMemory0 = null;\n\n if (typeof thread_stack_size !== 'undefined' && (typeof thread_stack_size !== 'number' || thread_stack_size === 0 || thread_stack_size % 65536 !== 0)) { throw 'invalid stack size' }\n wasm.__wbindgen_start(thread_stack_size);\n return wasm;\n}\n\nfunction initSync(module, memory) {\n if (wasm !== undefined) return wasm;\n\n let thread_stack_size;\n if (typeof module !== 'undefined') {\n if (Object.getPrototypeOf(module) === Object.prototype) {\n ({module, memory, thread_stack_size} = module);\n } else {\n console.warn('using deprecated parameters for `initSync()`; pass a single object instead');\n }\n }\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports, memory);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module, thread_stack_size);\n}\n\nasync function __wbg_init(module_or_path, memory) {\n if (wasm !== undefined) return wasm;\n\n let thread_stack_size;\n if (typeof module_or_path !== 'undefined') {\n if (Object.getPrototypeOf(module_or_path) === Object.prototype) {\n ({module_or_path, memory, thread_stack_size} = module_or_path);\n } else {\n console.warn('using deprecated parameters for the initialization function; pass a single object instead');\n }\n }\n\n\n const imports = __wbg_get_imports();\n\n if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {\n module_or_path = fetch(module_or_path);\n }\n\n __wbg_init_memory(imports, memory);\n\n const { instance, module } = await __wbg_load(await module_or_path, imports);\n\n return __wbg_finalize_init(instance, module, thread_stack_size);\n}\n\nvar exports = /*#__PURE__*/Object.freeze({\n __proto__: null,\n Address: Address,\n Authorization: Authorization,\n BHP1024: BHP1024,\n BHP256: BHP256,\n BHP512: BHP512,\n BHP768: BHP768,\n Boolean: Boolean,\n Ciphertext: Ciphertext,\n ComputeKey: ComputeKey,\n EncryptionToolkit: EncryptionToolkit,\n Execution: Execution,\n ExecutionRequest: ExecutionRequest,\n ExecutionResponse: ExecutionResponse,\n Field: Field,\n GraphKey: GraphKey,\n Group: Group,\n I128: I128,\n I16: I16,\n I32: I32,\n I64: I64,\n I8: I8,\n KeyPair: KeyPair,\n Metadata: Metadata,\n OfflineQuery: OfflineQuery,\n Pedersen128: Pedersen128,\n Pedersen64: Pedersen64,\n Plaintext: Plaintext,\n Poseidon2: Poseidon2,\n Poseidon4: Poseidon4,\n Poseidon8: Poseidon8,\n PrivateKey: PrivateKey,\n PrivateKeyCiphertext: PrivateKeyCiphertext,\n Program: Program,\n ProgramManager: ProgramManager,\n ProvingKey: ProvingKey,\n ProvingRequest: ProvingRequest,\n RecordCiphertext: RecordCiphertext,\n RecordPlaintext: RecordPlaintext,\n Scalar: Scalar,\n Signature: Signature,\n Transaction: Transaction,\n Transition: Transition,\n U128: U128,\n U16: U16,\n U32: U32,\n U64: U64,\n U8: U8,\n VerifyingKey: VerifyingKey,\n ViewKey: ViewKey,\n default: __wbg_init,\n getOrInitConsensusVersionTestHeights: getOrInitConsensusVersionTestHeights,\n initSync: initSync,\n initThreadPool: initThreadPool,\n runRayonThread: runRayonThread,\n verifyFunctionExecution: verifyFunctionExecution\n});\n\nexport { ViewKey as $, Address as A, BHP1024 as B, Ciphertext as C, ProgramManager as D, EncryptionToolkit as E, Field as F, GraphKey as G, ProvingKey as H, I128 as I, ProvingRequest as J, KeyPair as K, RecordPlaintext as L, Metadata as M, Signature as N, OfflineQuery as O, Pedersen128 as P, Transition as Q, RecordCiphertext as R, Scalar as S, Transaction as T, U128 as U, U16 as V, U32 as W, U64 as X, U8 as Y, VerifyingKey as Z, __wbg_init as _, Authorization as a, initSync as a0, exports as a1, BHP256 as b, BHP512 as c, BHP768 as d, Boolean as e, ComputeKey as f, getOrInitConsensusVersionTestHeights as g, Execution as h, initThreadPool as i, ExecutionRequest as j, ExecutionResponse as k, Group as l, I16 as m, I32 as n, I64 as o, I8 as p, Pedersen64 as q, runRayonThread as r, Plaintext as s, Poseidon2 as t, Poseidon4 as u, verifyFunctionExecution as v, Poseidon8 as w, PrivateKey as x, PrivateKeyCiphertext as y, Program as z };\n//# sourceMappingURL=index.js.map\n","import { _ as __wbg_init, a1 as exports } from './index.js';\n\nconst module = new URL(\"aleo_wasm.wasm\", import.meta.url);\n\n async function init(options) {\n await __wbg_init({\n module_or_path: await options.module,\n memory: options.memory,\n });\n return exports;\n }\n\nexport { init, module };\n//# sourceMappingURL=aleo_wasm_custom.js.map\n"],"names":[],"mappings":"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"}