diff --git a/yarn-project/circuits.js/src/structs/index.ts b/yarn-project/circuits.js/src/structs/index.ts index da643b14915..0b8b87835e2 100644 --- a/yarn-project/circuits.js/src/structs/index.ts +++ b/yarn-project/circuits.js/src/structs/index.ts @@ -35,3 +35,10 @@ export * from '@aztec/foundation/eth-address'; export * from '@aztec/foundation/fields'; export * from '@aztec/foundation/aztec-address'; export { FunctionSelector } from '@aztec/foundation/abi'; + +// TODO(Kev): This is only exported so that privateKernelInit in noir-private-kernel +// does not need to manually initialize its instance. +// This is not great as we are exporting from tests. +// Its okay for now and before merging into master, we should +// remove this line. +export { makePrivateKernelInputsInit } from '../tests/factories.js'; diff --git a/yarn-project/noir-private-kernel/package.json b/yarn-project/noir-private-kernel/package.json index 5b7d8fd8c89..691a923241e 100644 --- a/yarn-project/noir-private-kernel/package.json +++ b/yarn-project/noir-private-kernel/package.json @@ -34,6 +34,7 @@ "@noir-lang/acvm_js": "^0.28.0", "@noir-lang/backend_barretenberg": "^0.7.10", "@noir-lang/noir_js": "^0.16.0", + "@noir-lang/noirc_abi": "^0.16.0", "tslib": "^2.4.0" }, "devDependencies": { diff --git a/yarn-project/noir-private-kernel/src/crates/bug-collecting-crate/tom-typechain.nr b/yarn-project/noir-private-kernel/src/crates/bug-collecting-crate/tom-typechain.nr deleted file mode 100644 index fbbbc5e5d19..00000000000 --- a/yarn-project/noir-private-kernel/src/crates/bug-collecting-crate/tom-typechain.nr +++ /dev/null @@ -1 +0,0 @@ -// missing typechain similar to aztec contract to ts stuff? \ No newline at end of file diff --git a/yarn-project/noir-private-kernel/src/crates/bug-collecting-crate/typechain-type-alias.nr b/yarn-project/noir-private-kernel/src/crates/bug-collecting-crate/typechain-type-alias.nr new file mode 100644 index 00000000000..c2d2c3fa624 --- /dev/null +++ b/yarn-project/noir-private-kernel/src/crates/bug-collecting-crate/typechain-type-alias.nr @@ -0,0 +1,83 @@ +The typescript binding generator has a bug when we use type aliases because +the abi says that they have the same struct path. + +For example: + + + +struct Generic { + x : [Field; N] +} + +struct Concrete { + gen2 : Generic<2>, + gen4 : Generic<4>, + +} + +fn main(input: Concrete) -> pub Field { + 0 +} + + +The following code will generate the json: + +{"hash":17271335012890464242,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"Concrete","fields":[{"name":"gen2","type":{"kind":"struct","path":"Generic","fields":[{"name":"x","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"gen4","type":{"kind":"struct","path":"Generic","fields":[{"name":"x","type":{"kind":"array","length":4,"type":{"kind":"field"}}}]}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6]},"return_type":{"kind":"field"},"return_witnesses":[7]},"bytecode":"H4sIAAAAAAAA/6WPSwqAMAxE69/jJE3SJjuvYrG9/xEsqFDQnQ8egVmEmdU517k3T7bdlyAw5+gzEu7gLakASwqKiqJyeCXKyhotWQRDpoxFjApcLM0v+MncdOyrQ3WsTtX5Y8PSZCeMnX6J8AAAAA=="} + +And subsequently generate this typescript file: + +export type FixedLengthArray = L extends 0 ? never[]: T[] & { length: L } + +export type Field = string; + +export interface Generic { + x: FixedLengthArray; +} + + + +export interface Concrete { + gen2: Generic; + gen4: Generic; +} + +export interface ReturnType { + value: Field; +} + +export interface InputType { + input: Concrete; +} + +---- + +The important thing to notice is that there is one Generic and it gets instantiated with +the length of the first parameter. + +We can go two ways with this, either we end up with something like: + +export interface Generic { + x: FixedLengthArray; +} + +export interface Concrete { + gen2: Generic<2>; + gen4: Generic<4>; +} + +or we do something like: + +export interface Generic2 { + x: FixedLengthArray; +} +export interface Generic4 { + x: FixedLengthArray; +} + +export interface Concrete { + gen2: Generic2; + gen4: Generic4; +} + +First seems to have better devex and less copy pasting but requires more complicated code. +Perhaps this can be aided by the compiler, if we save this information before monomorphization diff --git a/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/membership_witness.nr b/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/membership_witness.nr index b75c313f34a..57027ea4b22 100644 --- a/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/membership_witness.nr +++ b/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/membership_witness.nr @@ -1,4 +1,8 @@ use crate::utils::arrays::is_empty_field; +use dep::aztec::constants_gen::{ + CONTRACT_TREE_HEIGHT, + FUNCTION_TREE_HEIGHT, +}; struct MembershipWitness { leaf_index : Field, @@ -10,3 +14,17 @@ impl MembershipWitness { is_empty_field([self.leaf_index]) && is_empty_field(self.sibling_path) } } + +// TODO(Kev): Instead of doing `MembershipWitness` we are forced +// to do this new struct because the typescript bindings generator +// does not have logic to monomorphize these properly. See the file named +// `typechain-type-alias` in the folder `bug-collecting-crate` +struct FunctionLeafMembershipWitness{ + leaf_index : Field, + sibling_path : [Field; FUNCTION_TREE_HEIGHT] +} + +struct ContractLeafMembershipWitness{ + leaf_index : Field, + sibling_path : [Field; CONTRACT_TREE_HEIGHT] +} diff --git a/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/private_kernel/private_call_data.nr b/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/private_kernel/private_call_data.nr index b57e1ddc278..f2cd3f22985 100644 --- a/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/private_kernel/private_call_data.nr +++ b/yarn-project/noir-private-kernel/src/crates/private-kernel-lib/src/abis/private_kernel/private_call_data.nr @@ -10,7 +10,7 @@ use dep::aztec::constants_gen::{ PRIVATE_DATA_TREE_HEIGHT }; use crate::abis::call_stack_item::PrivateCallStackItem; -use crate::abis::membership_witness::MembershipWitness; +use crate::abis::membership_witness::{ContractLeafMembershipWitness,FunctionLeafMembershipWitness}; type ReadRequestMembershipWitnessPrivateData = ReadRequestMembershipWitness; @@ -22,8 +22,8 @@ struct PrivateCallData { proof : Proof, vk : VerificationKey, - function_leaf_membership_witness : MembershipWitness, - contract_leaf_membership_witness : MembershipWitness, + function_leaf_membership_witness : FunctionLeafMembershipWitness, + contract_leaf_membership_witness : ContractLeafMembershipWitness, read_request_membership_witnesses : [ReadRequestMembershipWitnessPrivateData; MAX_READ_REQUESTS_PER_CALL], diff --git a/yarn-project/noir-private-kernel/src/index.test.ts b/yarn-project/noir-private-kernel/src/index.test.ts index 94cfe7bbe37..24229824499 100644 --- a/yarn-project/noir-private-kernel/src/index.test.ts +++ b/yarn-project/noir-private-kernel/src/index.test.ts @@ -1,8 +1,7 @@ +import { makePrivateKernelInputsInit } from '@aztec/circuits.js'; import { DebugLogger, createDebugLogger } from '@aztec/foundation/log'; -import { WitnessMap, executeCircuit } from '@noir-lang/acvm_js'; - -import { PrivateKernelInitArtifact } from './index.js'; +import { executeInit } from './index.js'; describe('Private kernel', () => { let logger: DebugLogger; @@ -10,19 +9,11 @@ describe('Private kernel', () => { logger = createDebugLogger('noir-private-kernel'); }); - it('Executes private kernel init circuit with all zeroes', async () => { + it('Executes private kernel init circuit with abi all zeroes (does not crash)', async () => { logger('Initialized Noir instance with private kernel init circuit'); - const decodedBytecode = Buffer.from(PrivateKernelInitArtifact.bytecode, 'base64'); - const numWitnesses = 1811; // The number of input witnesses in the private kernel init circuit - const initialWitness: WitnessMap = new Map(); - for (let i = 1; i <= numWitnesses; i++) { - initialWitness.set(i, '0x00'); - } - - const _witnessMap = await executeCircuit(decodedBytecode, initialWitness, () => { - throw Error('unexpected oracle during execution'); - }); + const kernelInputs = makePrivateKernelInputsInit(); + const _kernelOutputs = await executeInit(kernelInputs); logger('Executed private kernel init circuit with all zeroes'); }); diff --git a/yarn-project/noir-private-kernel/src/index.ts b/yarn-project/noir-private-kernel/src/index.ts index 4551a7d4fe5..1cae4ce8acd 100644 --- a/yarn-project/noir-private-kernel/src/index.ts +++ b/yarn-project/noir-private-kernel/src/index.ts @@ -1,11 +1,29 @@ import { KernelCircuitPublicInputs, PrivateKernelInputsInit } from '@aztec/circuits.js'; import { NoirCompiledCircuit } from '@aztec/noir-compiler'; +import { executeCircuit } from '@noir-lang/acvm_js'; +import { abiDecode, abiEncode } from '@noir-lang/noirc_abi'; + import PrivateKernelInitJson from './target/private_kernel_init.json' assert { type: 'json' }; import PrivateKernelInnerJson from './target/private_kernel_inner.json' assert { type: 'json' }; import PrivateKernelOrderingJson from './target/private_kernel_ordering.json' assert { type: 'json' }; -import { mapPrivateKernelInputsInitToNoir } from './type_conversion.js'; -import { InputType as InitInputType } from './types/private_kernel_init_types.js'; +import { mapKernelCircuitPublicInputsFromNoir, mapPrivateKernelInputsInitToNoir } from './type_conversion.js'; +import { InputType as InitInputType, ReturnType } from './types/private_kernel_init_types.js'; + +// TODO(Tom): This should be exported from noirc_abi +/** + * The decoded inputs from the circuit. + */ +export type DecodedInputs = { + /** + * The inputs to the circuit + */ + inputs: Record; + /** + * The return value of the circuit + */ + return_value: any; +}; export const PrivateKernelInitArtifact = PrivateKernelInitJson as NoirCompiledCircuit; @@ -18,10 +36,40 @@ export const PrivateKernelOrderingArtifact = PrivateKernelOrderingJson as NoirCo * @param privateKernelInputsInit - The private kernel inputs. * @returns The public inputs. */ -export function executeInit(privateKernelInputsInit: PrivateKernelInputsInit): Promise { - const _params: InitInputType = { +export async function executeInit( + privateKernelInputsInit: PrivateKernelInputsInit, +): Promise { + const params: InitInputType = { input: mapPrivateKernelInputsInitToNoir(privateKernelInputsInit), }; - throw new Error('Not implemented'); + const returnType = await executePrivateKernelInitWithACVM(params); + + return mapKernelCircuitPublicInputsFromNoir(returnType); +} + +/** + * Executes the init private kernel with the given inputs using the acvm. + * + * Note: we export this for now, so that we can run tests on it. + * We will make this private and just use `executeInit`. + */ +async function executePrivateKernelInitWithACVM(input: InitInputType): Promise { + const initialWitnessMap = abiEncode(PrivateKernelInitArtifact.abi, input, null); + + // Execute the circuit on those initial witness values + // + // Decode the bytecode from base64 since the acvm does not know about base64 encoding + const decodedBytecode = Buffer.from(PrivateKernelInitArtifact.bytecode, 'base64'); + // + // Execute the circuit + const _witnessMap = await executeCircuit(decodedBytecode, initialWitnessMap, () => { + throw Error('unexpected oracle during execution'); + }); + + // Decode the witness map into two fields, the return values and the inputs + const decodedInputs: DecodedInputs = abiDecode(PrivateKernelInitArtifact.abi, _witnessMap); + + // Cast the inputs as the return type + return decodedInputs.return_value as ReturnType; } diff --git a/yarn-project/noir-private-kernel/src/scripts/generate_ts_from_abi.ts b/yarn-project/noir-private-kernel/src/scripts/generate_ts_from_abi.ts index 10ee7ec4163..817026e61c9 100644 --- a/yarn-project/noir-private-kernel/src/scripts/generate_ts_from_abi.ts +++ b/yarn-project/noir-private-kernel/src/scripts/generate_ts_from_abi.ts @@ -65,7 +65,7 @@ function abiTypeToTs(type: ABIType): string { case 'boolean': return `boolean`; case 'array': - return `${abiTypeToTs(type.type)}[]`; + return `FixedLengthArray<${abiTypeToTs(type.type)}, ${type.length}>`; case 'struct': return getLastComponentOfPath(type.path); case 'field': @@ -162,13 +162,11 @@ function generateTsInterface(abiObj: NoirFunctionAbi): string { // if (abiObj.return_type != null) { result += generateStructInterfaces(abiObj.return_type, outputStructs); - result += `export interface ReturnType {\n`; - result += ` value: ${abiTypeToTs(abiObj.return_type)};\n`; - result += `}\n\n`; + result += `export type ReturnType = ${abiTypeToTs(abiObj.return_type)};\n`; } // Generating Input type - result += 'export interface InputType {\n'; + result += '\nexport interface InputType {\n'; for (const param of abiObj.parameters) { result += ` ${param.name}: ${abiTypeToTs(param.type)};\n`; } @@ -180,7 +178,17 @@ function generateTsInterface(abiObj: NoirFunctionAbi): string { primitiveTypeAliases += `\nexport type ${value.aliasName} = ${value.tsType};`; } - return `/* Autogenerated file, do not edit! */\n\n/* eslint-disable */\n` + primitiveTypeAliases + '\n' + result; + const fixedLengthArray = + '\nexport type FixedLengthArray = L extends 0 ? never[]: T[] & { length: L }'; + + return ( + `/* Autogenerated file, do not edit! */\n\n/* eslint-disable */\n` + + fixedLengthArray + + '\n' + + primitiveTypeAliases + + '\n' + + result + ); } const circuits = ['private_kernel_init', 'private_kernel_inner', 'private_kernel_ordering']; diff --git a/yarn-project/noir-private-kernel/src/target/private_kernel_init.json b/yarn-project/noir-private-kernel/src/target/private_kernel_init.json index 7e8a079451c..8b447ae8b42 100644 --- a/yarn-project/noir-private-kernel/src/target/private_kernel_init.json +++ b/yarn-project/noir-private-kernel/src/target/private_kernel_init.json @@ -1 +1 @@ -{"hash":745745691367689726,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"PrivateKernelInputsInit","fields":[{"name":"tx_request","type":{"kind":"struct","path":"private_kernel_lib::transaction::request::TxRequest","fields":[{"name":"origin","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}},{"name":"private_call","type":{"kind":"struct","path":"private_kernel_lib::abis::private_kernel::private_call_data::PrivateCallData","fields":[{"name":"call_stack_item","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}},{"name":"private_call_stack_preimages","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"function_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::MembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":4,"type":{"kind":"field"}}}]}},{"name":"contract_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::MembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":16,"type":{"kind":"field"}}}]}},{"name":"read_request_membership_witnesses","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"private_kernel_lib::abis::read_request_membership_witness::ReadRequestMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"is_transient","type":{"kind":"boolean"}},{"name":"hint_to_commitment","type":{"kind":"field"}}]}}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"acir_hash","type":{"kind":"field"}}]}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811]},"return_type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]},"return_witnesses":[2303,2304,2305,2306,2307,2308,2309,2310,2311,2312,2313,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2342,2343,2344,2345,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,2416,2417,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2438,2439,2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2501,2502,2503,2504,2505,2506,2507,2508,2509,2510,2511,2512,2513,2514,2515,2516,2517,2518,2519,2520,2521,2522,2523,2524,2525,2526,2527,2528,2529,2530,2531,2532,2533,2534,2535,2536,2537,2538,2539,2540,2541,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2592,2593,2594,2595,2596,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641,2642,2643,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2665,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793]},"bytecode":"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"} \ No newline at end of file +{"hash":6837390586146021675,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"PrivateKernelInputsInit","fields":[{"name":"tx_request","type":{"kind":"struct","path":"private_kernel_lib::transaction::request::TxRequest","fields":[{"name":"origin","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}},{"name":"private_call","type":{"kind":"struct","path":"private_kernel_lib::abis::private_kernel::private_call_data::PrivateCallData","fields":[{"name":"call_stack_item","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}},{"name":"private_call_stack_preimages","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"function_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::FunctionLeafMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":4,"type":{"kind":"field"}}}]}},{"name":"contract_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::ContractLeafMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":16,"type":{"kind":"field"}}}]}},{"name":"read_request_membership_witnesses","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"private_kernel_lib::abis::read_request_membership_witness::ReadRequestMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"is_transient","type":{"kind":"boolean"}},{"name":"hint_to_commitment","type":{"kind":"field"}}]}}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"acir_hash","type":{"kind":"field"}}]}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811]},"return_type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]},"return_witnesses":[2303,2304,2305,2306,2307,2308,2309,2310,2311,2312,2313,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2342,2343,2344,2345,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,2416,2417,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2438,2439,2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2501,2502,2503,2504,2505,2506,2507,2508,2509,2510,2511,2512,2513,2514,2515,2516,2517,2518,2519,2520,2521,2522,2523,2524,2525,2526,2527,2528,2529,2530,2531,2532,2533,2534,2535,2536,2537,2538,2539,2540,2541,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2592,2593,2594,2595,2596,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641,2642,2643,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2665,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793]},"bytecode":"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"} \ No newline at end of file diff --git a/yarn-project/noir-private-kernel/src/target/private_kernel_inner.json b/yarn-project/noir-private-kernel/src/target/private_kernel_inner.json index f35ac6eadc3..85d22609296 100644 --- a/yarn-project/noir-private-kernel/src/target/private_kernel_inner.json +++ b/yarn-project/noir-private-kernel/src/target/private_kernel_inner.json @@ -1 +1 @@ -{"hash":12953600260222662004,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"PrivateKernelInputsInner","fields":[{"name":"previous_kernel","type":{"kind":"struct","path":"private_kernel_lib::abis::previous_kernel_data::PreviousKernelData","fields":[{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"vk_index","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"vk_path","type":{"kind":"array","length":3,"type":{"kind":"field"}}}]}},{"name":"private_call","type":{"kind":"struct","path":"private_kernel_lib::abis::private_kernel::private_call_data::PrivateCallData","fields":[{"name":"call_stack_item","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}},{"name":"private_call_stack_preimages","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"function_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::MembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":4,"type":{"kind":"field"}}}]}},{"name":"contract_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::MembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":16,"type":{"kind":"field"}}}]}},{"name":"read_request_membership_witnesses","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"private_kernel_lib::abis::read_request_membership_witness::ReadRequestMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"is_transient","type":{"kind":"boolean"}},{"name":"hint_to_commitment","type":{"kind":"field"}}]}}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"acir_hash","type":{"kind":"field"}}]}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,2180,2181,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252,2253,2254,2255,2256,2257,2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284,2285,2286,2287,2288,2289]},"return_type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]},"return_witnesses":[2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2853,2854,2855,2856,2857,2858,2859,2860,2861,2862,2863,2864,2865,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891,2892,2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908,2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926,2927,2928,2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2990,2991,2992,2993,2994,2995,2996,2997,2998,2999,3000,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023,3024,3025,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3090,3091,3092,3093,3094,3095,3096,3097,3098,3099,3100,3101,3102,3103,3104,3105,3106,3107,3108,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3134,3135,3136,3137,3138,3139,3140,3141,3142,3143,3144,3145,3146,3147,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163,3164,3165,3166,3167,3168,3169,3170,3171,3172,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3197,3198,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3221,3222,3223,3224,3225,3226,3227,3228,3229,3230,3231,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3251,3252,3253,3254,3255,3256,3257,3258,3259,3260,3261,3262,3263,3264,3265,3266,3267,3268,3269,3270,3271]},"bytecode":"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"} \ No newline at end of file +{"hash":8785628717758862095,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"PrivateKernelInputsInner","fields":[{"name":"previous_kernel","type":{"kind":"struct","path":"private_kernel_lib::abis::previous_kernel_data::PreviousKernelData","fields":[{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"vk_index","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"vk_path","type":{"kind":"array","length":3,"type":{"kind":"field"}}}]}},{"name":"private_call","type":{"kind":"struct","path":"private_kernel_lib::abis::private_kernel::private_call_data::PrivateCallData","fields":[{"name":"call_stack_item","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}},{"name":"private_call_stack_preimages","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::PrivateCallStackItem","fields":[{"name":"inner","type":{"kind":"struct","path":"private_kernel_lib::abis::call_stack_item::CallStackItem","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"private_kernel_lib::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_delegate_call","type":{"kind":"boolean"}},{"name":"is_static_call","type":{"kind":"boolean"}},{"name":"is_contract_deployment","type":{"kind":"boolean"}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"read_requests","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":16,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"is_execution_request","type":{"kind":"boolean"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}}]}}]}}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"function_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::FunctionLeafMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":4,"type":{"kind":"field"}}}]}},{"name":"contract_leaf_membership_witness","type":{"kind":"struct","path":"private_kernel_lib::abis::membership_witness::ContractLeafMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":16,"type":{"kind":"field"}}}]}},{"name":"read_request_membership_witnesses","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"private_kernel_lib::abis::read_request_membership_witness::ReadRequestMembershipWitness","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"sibling_path","type":{"kind":"array","length":32,"type":{"kind":"field"}}},{"name":"is_transient","type":{"kind":"boolean"}},{"name":"hint_to_commitment","type":{"kind":"field"}}]}}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"acir_hash","type":{"kind":"field"}}]}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,2180,2181,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252,2253,2254,2255,2256,2257,2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284,2285,2286,2287,2288,2289]},"return_type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]},"return_witnesses":[2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2853,2854,2855,2856,2857,2858,2859,2860,2861,2862,2863,2864,2865,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891,2892,2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908,2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926,2927,2928,2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2990,2991,2992,2993,2994,2995,2996,2997,2998,2999,3000,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023,3024,3025,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3090,3091,3092,3093,3094,3095,3096,3097,3098,3099,3100,3101,3102,3103,3104,3105,3106,3107,3108,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3134,3135,3136,3137,3138,3139,3140,3141,3142,3143,3144,3145,3146,3147,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163,3164,3165,3166,3167,3168,3169,3170,3171,3172,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3197,3198,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3221,3222,3223,3224,3225,3226,3227,3228,3229,3230,3231,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3251,3252,3253,3254,3255,3256,3257,3258,3259,3260,3261,3262,3263,3264,3265,3266,3267,3268,3269,3270,3271]},"bytecode":"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"} \ No newline at end of file diff --git a/yarn-project/noir-private-kernel/src/target/private_kernel_ordering.json b/yarn-project/noir-private-kernel/src/target/private_kernel_ordering.json index cc1c60cf200..afa8af81097 100644 --- a/yarn-project/noir-private-kernel/src/target/private_kernel_ordering.json +++ b/yarn-project/noir-private-kernel/src/target/private_kernel_ordering.json @@ -1 +1 @@ -{"hash":13536476221418772380,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"PrivateKernelInputsOrdering","fields":[{"name":"previous_kernel","type":{"kind":"struct","path":"private_kernel_lib::abis::previous_kernel_data::PreviousKernelData","fields":[{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"vk_index","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"vk_path","type":{"kind":"array","length":3,"type":{"kind":"field"}}}]}},{"name":"read_commitment_hints","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"nullifier_commitment_hints","type":{"kind":"array","length":64,"type":{"kind":"field"}}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687]},"return_type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs_final::KernelCircuitPublicInputsFinal","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::final_accumulated_data::FinalAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]},"return_witnesses":[971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253]},"bytecode":"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"} \ No newline at end of file +{"hash":16198569643244541993,"backend":"acvm-backend-barretenberg","abi":{"parameters":[{"name":"input","type":{"kind":"struct","path":"PrivateKernelInputsOrdering","fields":[{"name":"previous_kernel","type":{"kind":"struct","path":"private_kernel_lib::abis::previous_kernel_data::PreviousKernelData","fields":[{"name":"public_inputs","type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs::KernelCircuitPublicInputs","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_accumulated_data::CombinedAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"read_requests","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}},{"name":"public_data_update_requests","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_update_request::PublicDataUpdateRequest","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"old_value","type":{"kind":"field"}},{"name":"new_value","type":{"kind":"field"}}]}}},{"name":"public_data_reads","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"private_kernel_lib::abis::public_data_read::PublicDataRead","fields":[{"name":"leaf_index","type":{"kind":"field"}},{"name":"value","type":{"kind":"field"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]}},{"name":"proof","type":{"kind":"struct","path":"private_kernel_lib::mocked::Proof","fields":[]}},{"name":"vk","type":{"kind":"struct","path":"private_kernel_lib::mocked::VerificationKey","fields":[]}},{"name":"vk_index","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"vk_path","type":{"kind":"array","length":3,"type":{"kind":"field"}}}]}},{"name":"read_commitment_hints","type":{"kind":"array","length":128,"type":{"kind":"field"}}},{"name":"nullifier_commitment_hints","type":{"kind":"array","length":64,"type":{"kind":"field"}}}]},"visibility":"private"}],"param_witnesses":{"input":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687]},"return_type":{"kind":"struct","path":"private_kernel_lib::abis::kernel_circuit_public_inputs_final::KernelCircuitPublicInputsFinal","fields":[{"name":"end","type":{"kind":"struct","path":"private_kernel_lib::abis::final_accumulated_data::FinalAccumulatedData","fields":[{"name":"aggregation_object","type":{"kind":"struct","path":"private_kernel_lib::mocked::AggregationObject","fields":[]}},{"name":"new_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"new_nullifiers","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"nullified_commitments","type":{"kind":"array","length":64,"type":{"kind":"field"}}},{"name":"private_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"public_call_stack","type":{"kind":"array","length":8,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"unencrypted_logs_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"new_contracts","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"private_kernel_lib::abis::new_contract_data::NewContractData","fields":[{"name":"contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::Address","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_tree_root","type":{"kind":"field"}}]}}},{"name":"optionally_revealed_data","type":{"kind":"array","length":4,"type":{"kind":"struct","path":"private_kernel_lib::abis::optionally_revealed_data::OptionallyRevealedData","fields":[{"name":"call_stack_item_hash","type":{"kind":"field"}},{"name":"function_data","type":{"kind":"struct","path":"private_kernel_lib::abis::function_data::FunctionData","fields":[{"name":"selector","type":{"kind":"struct","path":"private_kernel_lib::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"is_internal","type":{"kind":"boolean"}},{"name":"is_private","type":{"kind":"boolean"}},{"name":"is_constructor","type":{"kind":"boolean"}}]}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"pay_fee_from_l1","type":{"kind":"boolean"}},{"name":"pay_fee_from_public_l2","type":{"kind":"boolean"}},{"name":"called_from_l1","type":{"kind":"boolean"}},{"name":"called_from_public_l2","type":{"kind":"boolean"}}]}}}]}},{"name":"constants","type":{"kind":"struct","path":"private_kernel_lib::abis::combined_constant_data::CombinedConstantData","fields":[{"name":"block_data","type":{"kind":"struct","path":"private_kernel_lib::abis::historical_block_data::HistoricalBlockData","fields":[{"name":"blocks_tree_root","type":{"kind":"field"}},{"name":"block","type":{"kind":"struct","path":"private_kernel_lib::block::Block","fields":[{"name":"private_data_tree_root","type":{"kind":"field"}},{"name":"nullifier_tree_root","type":{"kind":"field"}},{"name":"contract_tree_root","type":{"kind":"field"}},{"name":"l1_to_l2_data_tree_root","type":{"kind":"field"}},{"name":"public_data_tree_root","type":{"kind":"field"}},{"name":"global_variables_hash","type":{"kind":"field"}}]}},{"name":"private_kernel_vk_tree_root","type":{"kind":"field"}}]}},{"name":"tx_context","type":{"kind":"struct","path":"private_kernel_lib::transaction::context::TxContext","fields":[{"name":"is_fee_payment_tx","type":{"kind":"boolean"}},{"name":"is_rebate_payment_tx","type":{"kind":"boolean"}},{"name":"is_contract_deployment_tx","type":{"kind":"boolean"}},{"name":"contract_deployment_data","type":{"kind":"struct","path":"private_kernel_lib::contrakt::deployment_data::ContractDeploymentData","fields":[{"name":"deployer_public_key","type":{"kind":"struct","path":"private_kernel_lib::point::Point","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"constructor_vk_hash","type":{"kind":"field"}},{"name":"function_tree_root","type":{"kind":"field"}},{"name":"contract_address_salt","type":{"kind":"field"}},{"name":"portal_contract_address","type":{"kind":"struct","path":"private_kernel_lib::address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}}]}},{"name":"is_private","type":{"kind":"boolean"}}]},"return_witnesses":[971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253]},"bytecode":"H4sIAAAAAAAA/9XdY5Be6dqG4di2bXanu5Pu2Lbt7ti2bdu2bdu2bTv5zufbmdq73r/73j+urjpqsipVk+ucqalJ3l7rWU9CBQtWK0Sw//8KDvfDOvwg2X9c1w3+rx//c13P47q+x3Ujj+vGHteBHtdBHtdNPX79Zh4/39zjuoXHdWuP6zYe1209rtt5XHfw+PU7evx8J4/rzh7X3Tyuu3tc9/C47ulx3dvj1+/j8fN9Pa77eVwP9Lge5HE92ON6iMf1XY/rex7X9z2uX3hcv/y7/z+/gv/9a/6/f/Xxyu7rG5gjW6C3j3cDr2wBDf39vHz9Gmb39/b39vP3a5zN38cn0N/XP0dAw4AcXgHevj6B3kF+AT5BXv/6Whvi338vr//y63+5c53IzvUiOzeI7NwosnOTyM7NIju3iOzcKrJzm8jO7SI7d4js3Cmyc5fIzt0iO/eI7NwrsnOfyM79IjsPiOw8KLLzkMjOwyI7j4jsPCqy85jIzuMiO0+I7DwpsvOUyM7TIjvPiOw8K7LznMjO8yI7L4jsvCiy85LIzssiO6+I7LwqsvOayM7rIjtviOy8KbLzlsjO2yI774jsvCuy857IzvsiOx+I7HwosvORyM7HIjufiOx8KrLzmcjO5yI7X4jsfCmy85XIztciO9+I7HwrsvOdyM73Ijs/iOz8KLLzk8jOzyI7v4js/Cqy85vIzu8iO3+I7PwpsvOXyM7fIjv/iOwMFlJjZ3CRnSFEdoYU2RlKZGdokZ1hRHaGFdkZTmRneJGdEUR2RhTZGUlkZ2SRnVFEdkYV2RlNZGd0kZ0xRHbGFNkZS2RnbJGdcUR2xhXZGU9kZ3yRnQlEdiYU2ZlIZGdikZ1JRHYmFdmZTGRncpGdKUR2phTZmUpkZ2qRnWlEdqYV2ZlOZGd6kZ0ZRHZmFNmZSWRnZpGdWUR2ZhXZ6SWy01tkZzaRnT4iO31FdvqJ7MwusjOHyE5/kZ0BIjtziuzMJbIzt8jOPCI784rszCeyM7/IzgIiOwuK7CwksrOwyM4iIjuLiuwsJrKzuMjOEiI7S4rsLCWys7TIzjIiO8uK7CwnsrO8yM4KIjsriuysJLKzssjOKiI7q4rsrCays7rIzhoiO2uK7KwlsrO2yM46IjvriuysJ7KzvsjOBiI7G4rsbCSys7HIzkCRnUEiO5uI7GwqsrOZyM7mIjtbiOxsKbKzlcjO1iI724jsbCuys53IzvYiOzuI7OwosrOTyM7OIju7iOzsKrKzm8jO7iI7e4js7Cmys5fIzt4iO/uI7OwrsrOfyM7+IjsHiOwcKLJzkMjOwSI7h4jsHCqyc5jIzuEiO0eI7BwpsnOUyM7RIjvHiOwcK7JznMjO8SI7J4jsnCiyc5LIzskiO6eI7JwqsnOayM7pIjtniOycKbJzlsjO2SI754jsnCuyc57IzvkiOxeI7FwosnORyM7FIjuXiOxcKrJzmcjO5SI7V4jsXCmyc5XIztUiO9eI7FwrsnOdyM71Ijs3iOzcKLJzk8jOzSI7t4js3Cqyc5vIzu0iO3eI7NwpsnOXyM7dIjv3iOzcK7Jzn8jO/SI7D4jsPCiy85DIzsMiO4+I7DwqsvOYyM7j/6OdITx2ev13X95rQ9g1nxBpXmfYfFKkeb1h8ymR5g2GzadFmjcaNp8Rad5k2HxWpHmzYfM5keYths3nRZq3GjZfEGneZth8UaR5u2HzJZHmHYbNl0Wadxo2XxFp3mXYfFWkebdh8zWR5j2GzddFmvcaNt8Qad5n2HxTpHm/YfMtkeYDhs23RZoPGjbfEWk+ZNh8V6T5sGHzPZHmI4bN90Wajxo2PxBpPmbY/FCk+bhh8yOR5hOGzY9Fmk8aNj8RaT5l2PxUpPm0YfMzkeYzhs3PRZrPGja/EGk+Z9j8UqT5vGHzK5HmC4bNr0WaLxo2vxFpvmTY/Fak+bJh8zuR5iuGze9Fmq8aNn8Qab5m2PxRpPm6YfMnkeYbhs2fRZpvGjZ/EWm+Zdj8VaT5tmHzN5HmO4bN30Wa7xo2/xBpvmfY/FOk+b5h8y+R5geGzb9Fmh8aNv8RaX5k2BwslEbzY8Pm4CLNTwybQ4g0PzVsDinS/MywOZRI83PD5tAizS8Mm8OINL80bA4r0vzKsDmcSPNrw+bwIs1vDJsjiDS/NWyOKNL8zrA5kkjze8PmyCLNHwybo4g0fzRsjirS/MmwOZpI82fD5ugizV8Mm2OINH81bI4p0vzNsDmWSPN3w+bYIs0/DJvjiDT/NGyOK9L8y7A5nkjzb8Pm+CLNfwybE4g0Bwtp15xQpDm4YXMikeYQhs2JRZpDGjYnEWkOZdicVKQ5tGFzMpHmMIbNyUWawxo2pxBpDmfYnFKkObxhcyqR5giGzalFmiMaNqcRaY5k2JxWpDmyYXM6keYohs3pRZqjGjZnEGmOZticUaQ5umFzJpHmGIbNmUWaYxo2ZxFpjmXYnFWkObZhs5dIcxzDZm+R5riGzdlEmuMZNvuINMc3bPYVaU5g2Own0pzQsDm7SHMiw+YcIs2JDZv9RZqTGDYHiDQnNWzOKdKczLA5l0hzcsPm3CLNKQyb84g0pzRszivSnMqwOZ9Ic2rD5vwizWkMmwuINKc1bC4o0pzOsLmQSHN6w+bCIs0ZDJuLiDRnNGwuKtKcybC5mEhzZsPm4iLNWQybS4g0ZzVsLinS7GXYXEqk2duwubRIczbD5jIizT6GzWVFmn0Nm8uJNPsZNpcXac5u2FxBpDmHYXNFkWZ/w+ZKIs0Bhs2VRZpzGjZXEWnOZdhcVaQ5t2FzNZHmPIbN1UWa8xo21xBpzmfYXFOkOb9hcy2R5gKGzbVFmgsaNtcRaS5k2FxXpLmwYXM9keYihs31RZqLGjY3EGkuZtjcUKS5uGFzI5HmEobNjUWaSxo2B4o0lzJsDhJpLm3Y3ESkuYxhc1OR5rKGzc1EmssZNjcXaS5v2NxCpLmCYXNLkeaKhs2tRJorGTa3FmmubNjcRqS5imFzW5HmqobN7USaqxk2txdprm7Y3EGkuYZhc0eR5pqGzZ1EmmsZNncWaa5t2NxFpLmOYXNXkea6hs3dRJrrGTZ3F2mub9jcQ6S5gWFzT5HmhobNvUSaGxk29xZpbmzY3EekOdCwua9Ic5Bhcz+R5iaGzf1FmpsaNg8QaW5m2DxQpLm5YfMgkeYWhs2DRZpbGjYPEWluZdg8VKS5tWHzMJHmNobNw0Wa2xo2jxBpbmfYPFKkub1h8yiR5g6GzaNFmjsaNo8Rae5k2DxWpLmzYfM4keYuhs3jRZq7GjZPEGnuZtg8UaS5u2HzJJHmHobNk0Waexo2TxFp7mXYPFWkubdh8zSR5j6GzdNFmvsaNs8Qae5n2DxTpLm/YfMskeYBhs2zRZoHGjbPEWkeZNg8V6R5sGHzPJHmIYbN80Wahxo2LxBpHmbYvFCkebhh8yKR5hGGzYtFmkcaNi8RaR5l2LxUpHm0YfMykeYxhs3LRZrHGjavEGkeZ9i8UqR5vGHzKpHmCYbNq0WaJxo2rxFpnmTYvFakebJh8zqR5imGzetFmqcaNm8QaZ5m2LxRpHm6YfMmkeYZhs2bRZpnGjZvEWmeZdi8VaR5tmHzNpHmOYbN20Wa5xo27xBpnmfYvFOkeb5h8y6R5gWGzbtFmhcaNu8RaV5k2LxXpHmxYfM+keYlhs37RZqXGjYfEGleZth8UKR5uWHzIZHmFYbNh0WaVxo2HxFpXmXYfFSkebVh8zGR5jWGzcdFmtcaNp8QaV5n2HxSpHm9YfMpkeYNhs2nRZo3GjafEWneZNh8VqR5s2HzOZHmLYbN50Watxo2XxBp3mbYfFGkebth8yWR5h2GzZdFmncaNl8Rad5l2HxVpHm3YfM1keY9hs3XRZr3GjbfEGneZ9h8U6R5v2HzLZHmA4bNt0WaDxo23xFpPmTYfFek+bBh8z2R5iOGzfdFmo8aNj8QaT5m2PxQpPm4YfMjw+Y1f0OD/21mZjD+9sFCIwzCIhzCIwIiIhIiIwqiIhqiIwZiIhZiIw7iIh7iIwESIhESIwmSIhmSIwVSIhVSIw3SIh3SIwMyIhMyIwuyun8G8EY2988WvvBDduSAPwKQE7mQG3mQF/n+/jsugIIohMIogqIohuIogZIohdIog7Ioh/KogIqohMqogqqohuqogZqohdqog7qoh/pogIZohMYIRBCaoCmaoTlaoCVaoTXaoC3aoT06oCM6oTO6oCu6oTt6oCd6oTf6oC/6oT8GYCAGYTCGYCiGYThGYCRGYTTGYCzGYTwmYCImYTKmYCqmYTpmYCZmYTbmYC7mYT4WYCEWYTGWYCmWYTlWYCVWYTXWYC3WYT02YCM2YTO2YCu2YTt2YCd2YTf2YC/2YT8O4CAO4TCO4CiO4ThO4CRO4TTO4CzO4Twu4CIu4TKu4Cqu4Tpu4CZu4Tbu4C7u4T4e4CEe4TGe4Cme4Tle4CVe4TXe4C3e4T0+4CM+4TO+4Cu+4Tt+4Cd+4Tf+wP3HHxwhEBKhEBphEBbhEB4REBGREBlREBXREB0xEBOxEBtxEBfxEB8JkBCJkBhJkBTJkBwpkBKpkBppkBbpkB4ZkBGZkBlZkBVe8EY2+MAXfsiOHPBHAHIiF3IjD/IiH/KjAAqiEAqjCIqiGIqjBEqiFEqjDMqiHMqjAiqiEiqjCqqiGqqjBmqiFmqjDuqiHuqjARqiERojEEFogqZohuZogZZohdZog7Zoh/bogI7ohM7ogq7ohu7ogZ7ohd7og77oh/4YgIEYhMEYgqEYhuEYgZEYhdEYg7EYh/GYgImYhMmYgqmYhumYgZmYhdmYg7mYh/lYgIVYhMVYgqVYhuVYgZVYhdVYg7VYh/XYgI3YhM3Ygq3Yhu3YgZ3Yhd3Yg73Yh/04gIM4hMM4gqM4huM4gZM4hdM4g7M4h/O4gIu4hMu4gqu4huu4gZu4hdu4g7u4h/t4gId4hMd4gqd4hud4gZd4hdd4g7d4h/f4gI/4hM/4gq/4hu/4gZ/4hd/4A/c//uAIgZAIhdAIg7AIh/CIgIiIhMiIgqiIhuiIgZiIhdiIg7iIh/hIgIRIhMRIgqRIhuRIgZRIhdRIg7RIh/TIgIzIhMzIgqzwgjeywQe+8EN25IA/ApATuZAbeZAX+ZAfBVAQhVAYRVAUxVAcJVASpVAaZVAW5VAeFVARlVAZVVAV1VAdNVATtVAbdVAX9VAfDdAQjdAYgQhCEzRFMzRHC7REK7RGG7RFO7RHB3REJ3RGF3RFN3RHD/REL/RGH/RFP/THAAzEIAzGEAzFMAzHCIzEKIzGGIzFOIzHBEzEJEzGFEzFNEzHDMzELMzGHMzFPMzHAizEIizGEizFMizHCqzEKqzGP79/dV/u/y3u6wS/iT2JUziNMziLcziPC7iIS7iMK7iKa7iOG7iJW7iNO7iLe7iPB3iIR3iMJ3iKZ3iOF3iJV3iNN3iLd3iPD/iIT/iML/iKb/iOH/iJX/iNP39/Ux4cIRASoRAaYRAW4RAeERARkRAZURAV0RAdMRATsRAbcRAX8RAfCZAQiZAYSZAUyZAcKZASqZAaaZAW6ZAeGZARmZAZWZAVXvBGNvjAF37IjhzwRwByIhdyIw/yIp/78w4KoCAKoTCKoCiKoThKoCRKoTTKoCzKoTwqoCIqoTKqoCqqoTpqoCZqoTbqoC7qoT4aoCEaoTECEYQmaIpmaI4WaIlWaA33nnj33nT3HnH3Xm33nmn33mX3HmL3Xl73nlr33lb3HlP3Xk/3nkv33kf3HkT3XkD3njz33jj3HjX3XjH3ni333in3Hib3XiL3nh733hr3Hhf3XhP3ng/33gv3Hgj3XgT3ngB3br47R96dq+7OGXfnbrtzqN25zO6cYndurzvH1p3r6s45ded+unMw3bmQ7pxEd26gO0fPnSvnzllz5465c7jcuVTunCZ3bpE7x8eda+POeXHnnrhzQNy5GO6cCHdugjtHwD1X754zd89du+eQ3XO57jlV99yme47RPdfnnnNzz32556Dcc0HuORn33Ih7jsI9V+Dus3f3nbv7sN19ye4+XXffqruP093X6O7zc/e9ufvA3H1R7j4hd9+Mu4/E3Vfh7jNw33d334d235d136d037dz38dy39dx3+dwn/u7z8Hd58Luc1L3uaH7HM19ruQ+Z3GfO7g/h//z9X/M6FdHGNkBAA=="} \ No newline at end of file diff --git a/yarn-project/noir-private-kernel/src/type_conversion.ts b/yarn-project/noir-private-kernel/src/type_conversion.ts index a39edc315d9..9373e925459 100644 --- a/yarn-project/noir-private-kernel/src/type_conversion.ts +++ b/yarn-project/noir-private-kernel/src/type_conversion.ts @@ -42,11 +42,13 @@ import { CombinedAccumulatedData as CombinedAccumulatedDataNoir, CombinedConstantData as CombinedConstantDataNoir, ContractDeploymentData as ContractDeploymentDataNoir, + ContractLeafMembershipWitness as ContractLeafMembershipWitnessNoir, + FixedLengthArray, FunctionData as FunctionDataNoir, + FunctionLeafMembershipWitness as FunctionLeafMembershipWitnessNoir, FunctionSelector as FunctionSelectorNoir, HistoricalBlockData as HistoricalBlockDataNoir, KernelCircuitPublicInputs as KernelCircuitPublicInputsNoir, - MembershipWitness as MembershipWitnessNoir, NewContractData as NewContractDataNoir, Address as NoirAztecAddress, EthAddress as NoirEthAddress, @@ -335,16 +337,28 @@ export function mapPrivateCircuitPublicInputsToNoir( return { call_context: mapCallContextToNoir(privateCircuitPublicInputs.callContext), args_hash: mapFieldToNoir(privateCircuitPublicInputs.argsHash), - return_values: privateCircuitPublicInputs.returnValues.map(mapFieldToNoir), - read_requests: privateCircuitPublicInputs.readRequests.map(mapFieldToNoir), - new_commitments: privateCircuitPublicInputs.newCommitments.map(mapFieldToNoir), - new_nullifiers: privateCircuitPublicInputs.newNullifiers.map(mapFieldToNoir), - nullified_commitments: privateCircuitPublicInputs.nullifiedCommitments.map(mapFieldToNoir), - private_call_stack: privateCircuitPublicInputs.privateCallStack.map(mapFieldToNoir), - public_call_stack: privateCircuitPublicInputs.publicCallStack.map(mapFieldToNoir), - new_l2_to_l1_msgs: privateCircuitPublicInputs.newL2ToL1Msgs.map(mapFieldToNoir), - encrypted_logs_hash: privateCircuitPublicInputs.encryptedLogsHash.map(mapFieldToNoir), - unencrypted_logs_hash: privateCircuitPublicInputs.unencryptedLogsHash.map(mapFieldToNoir), + return_values: privateCircuitPublicInputs.returnValues.map(mapFieldToNoir) as FixedLengthArray, + read_requests: privateCircuitPublicInputs.readRequests.map(mapFieldToNoir) as FixedLengthArray, + new_commitments: privateCircuitPublicInputs.newCommitments.map(mapFieldToNoir) as FixedLengthArray, + new_nullifiers: privateCircuitPublicInputs.newNullifiers.map(mapFieldToNoir) as FixedLengthArray, + nullified_commitments: privateCircuitPublicInputs.nullifiedCommitments.map(mapFieldToNoir) as FixedLengthArray< + NoirField, + 16 + >, + private_call_stack: privateCircuitPublicInputs.privateCallStack.map(mapFieldToNoir) as FixedLengthArray< + NoirField, + 4 + >, + public_call_stack: privateCircuitPublicInputs.publicCallStack.map(mapFieldToNoir) as FixedLengthArray, + new_l2_to_l1_msgs: privateCircuitPublicInputs.newL2ToL1Msgs.map(mapFieldToNoir) as FixedLengthArray, + encrypted_logs_hash: privateCircuitPublicInputs.encryptedLogsHash.map(mapFieldToNoir) as FixedLengthArray< + NoirField, + 2 + >, + unencrypted_logs_hash: privateCircuitPublicInputs.unencryptedLogsHash.map(mapFieldToNoir) as FixedLengthArray< + NoirField, + 2 + >, encrypted_log_preimages_length: mapFieldToNoir(privateCircuitPublicInputs.encryptedLogPreimagesLength), unencrypted_log_preimages_length: mapFieldToNoir(privateCircuitPublicInputs.unencryptedLogPreimagesLength), historical_block_data: mapHistoricalBlockDataToNoir(privateCircuitPublicInputs.historicBlockData), @@ -371,16 +385,30 @@ export function mapPrivateCallStackItemToNoir(privateCallStackItem: PrivateCallS } /** - * Maps a membership witness to a noir membership witness. + * Maps a function leaf membership witness to a noir function leaf membership witness. * @param membershipWitness - The membership witness. - * @returns The noir membership witness. + * @returns The noir function leaf membership witness. */ -export function mapMembershipWitnessToNoir( - membershipWitness: MembershipWitness, -): MembershipWitnessNoir { +function mapFunctionLeafMembershipWitnessToNoir( + membershipWitness: MembershipWitness<4>, +): FunctionLeafMembershipWitnessNoir { return { leaf_index: membershipWitness.leafIndex.toString(), - sibling_path: membershipWitness.siblingPath.map(mapFieldToNoir), + sibling_path: membershipWitness.siblingPath.map(mapFieldToNoir) as FixedLengthArray, + }; +} + +/** + * Maps a contract leaf membership witness to a noir contract leaf membership witness. + * @param membershipWitness - The membership witness. + * @returns The noir contract leaf membership witness. + */ +function mapContractLeafMembershipWitnessToNoir( + membershipWitness: MembershipWitness<16>, +): ContractLeafMembershipWitnessNoir { + return { + leaf_index: membershipWitness.leafIndex.toString(), + sibling_path: membershipWitness.siblingPath.map(mapFieldToNoir) as FixedLengthArray, }; } @@ -394,7 +422,7 @@ export function mapReadRequestMembershipWitnessToNoir( ): ReadRequestMembershipWitnessNoir { return { leaf_index: mapFieldToNoir(readRequestMembershipWitness.leafIndex), - sibling_path: readRequestMembershipWitness.siblingPath.map(mapFieldToNoir), + sibling_path: readRequestMembershipWitness.siblingPath.map(mapFieldToNoir) as FixedLengthArray, is_transient: readRequestMembershipWitness.isTransient, hint_to_commitment: mapFieldToNoir(readRequestMembershipWitness.hintToCommitment), }; @@ -408,14 +436,20 @@ export function mapReadRequestMembershipWitnessToNoir( export function mapPrivateCallDataToNoir(privateCallData: PrivateCallData): PrivateCallDataNoir { return { call_stack_item: mapPrivateCallStackItemToNoir(privateCallData.callStackItem), - private_call_stack_preimages: privateCallData.privateCallStackPreimages.map(mapPrivateCallStackItemToNoir), + private_call_stack_preimages: privateCallData.privateCallStackPreimages.map( + mapPrivateCallStackItemToNoir, + ) as FixedLengthArray, proof: {}, vk: {}, - function_leaf_membership_witness: mapMembershipWitnessToNoir(privateCallData.functionLeafMembershipWitness), - contract_leaf_membership_witness: mapMembershipWitnessToNoir(privateCallData.contractLeafMembershipWitness), + function_leaf_membership_witness: mapFunctionLeafMembershipWitnessToNoir( + privateCallData.functionLeafMembershipWitness, + ), + contract_leaf_membership_witness: mapContractLeafMembershipWitnessToNoir( + privateCallData.contractLeafMembershipWitness, + ), read_request_membership_witnesses: privateCallData.readRequestMembershipWitnesses.map( mapReadRequestMembershipWitnessToNoir, - ), + ) as FixedLengthArray, //TODO this seems like the wrong type in circuits.js portal_contract_address: mapEthAddressToNoir(EthAddress.fromField(privateCallData.portalContractAddress)), acir_hash: mapFieldToNoir(privateCallData.acirHash), diff --git a/yarn-project/noir-private-kernel/src/types/private_kernel_init_types.ts b/yarn-project/noir-private-kernel/src/types/private_kernel_init_types.ts index 51b7873dc8b..100d69769d9 100644 --- a/yarn-project/noir-private-kernel/src/types/private_kernel_init_types.ts +++ b/yarn-project/noir-private-kernel/src/types/private_kernel_init_types.ts @@ -2,6 +2,8 @@ /* eslint-disable */ +export type FixedLengthArray = L extends 0 ? never[]: T[] & { length: L } + export type Field = string; export type u32 = string; @@ -9,15 +11,18 @@ export interface Address { inner: Field; } + export interface Point { x: Field; y: Field; } + export interface EthAddress { inner: Field; } + export interface ContractDeploymentData { deployer_public_key: Point; constructor_vk_hash: Field; @@ -26,6 +31,7 @@ export interface ContractDeploymentData { portal_contract_address: EthAddress; } + export interface TxContext { is_fee_payment_tx: boolean; is_rebate_payment_tx: boolean; @@ -35,10 +41,12 @@ export interface TxContext { version: Field; } + export interface FunctionSelector { inner: u32; } + export interface FunctionData { selector: FunctionSelector; is_internal: boolean; @@ -46,6 +54,7 @@ export interface FunctionData { is_constructor: boolean; } + export interface TxRequest { origin: Address; args_hash: Field; @@ -53,6 +62,12 @@ export interface TxRequest { function_data: FunctionData; } + + + + + + export interface CallContext { msg_sender: Address; storage_contract_address: Address; @@ -63,6 +78,7 @@ export interface CallContext { is_contract_deployment: boolean; } + export interface Block { private_data_tree_root: Field; nullifier_tree_root: Field; @@ -72,25 +88,28 @@ export interface Block { global_variables_hash: Field; } + export interface HistoricalBlockData { blocks_tree_root: Field; block: Block; private_kernel_vk_tree_root: Field; } + + export interface PrivateCircuitPublicInputs { call_context: CallContext; args_hash: Field; - return_values: Field[]; - read_requests: Field[]; - new_commitments: Field[]; - new_nullifiers: Field[]; - nullified_commitments: Field[]; - private_call_stack: Field[]; - public_call_stack: Field[]; - new_l2_to_l1_msgs: Field[]; - encrypted_logs_hash: Field[]; - unencrypted_logs_hash: Field[]; + return_values: FixedLengthArray; + read_requests: FixedLengthArray; + new_commitments: FixedLengthArray; + new_nullifiers: FixedLengthArray; + nullified_commitments: FixedLengthArray; + private_call_stack: FixedLengthArray; + public_call_stack: FixedLengthArray; + new_l2_to_l1_msgs: FixedLengthArray; + encrypted_logs_hash: FixedLengthArray; + unencrypted_logs_hash: FixedLengthArray; encrypted_log_preimages_length: Field; unencrypted_log_preimages_length: Field; historical_block_data: HistoricalBlockData; @@ -99,6 +118,8 @@ export interface PrivateCircuitPublicInputs { version: Field; } + + export interface CallStackItem { contract_address: Address; public_inputs: PrivateCircuitPublicInputs; @@ -106,44 +127,65 @@ export interface CallStackItem { function_data: FunctionData; } + export interface PrivateCallStackItem { inner: CallStackItem; } -export interface Proof {} -export interface VerificationKey {} +export interface Proof { +} + + +export interface VerificationKey { +} + -export interface MembershipWitness { +export interface FunctionLeafMembershipWitness { leaf_index: Field; - sibling_path: Field[]; + sibling_path: FixedLengthArray; } + +export interface ContractLeafMembershipWitness { + leaf_index: Field; + sibling_path: FixedLengthArray; +} + + export interface ReadRequestMembershipWitness { leaf_index: Field; - sibling_path: Field[]; + sibling_path: FixedLengthArray; is_transient: boolean; hint_to_commitment: Field; } + + export interface PrivateCallData { call_stack_item: PrivateCallStackItem; - private_call_stack_preimages: PrivateCallStackItem[]; + private_call_stack_preimages: FixedLengthArray; proof: Proof; vk: VerificationKey; - function_leaf_membership_witness: MembershipWitness; - contract_leaf_membership_witness: MembershipWitness; - read_request_membership_witnesses: ReadRequestMembershipWitness[]; + function_leaf_membership_witness: FunctionLeafMembershipWitness; + contract_leaf_membership_witness: ContractLeafMembershipWitness; + read_request_membership_witnesses: FixedLengthArray; portal_contract_address: EthAddress; acir_hash: Field; } + export interface PrivateKernelInputsInit { tx_request: TxRequest; private_call: PrivateCallData; } -export interface AggregationObject {} + +export interface AggregationObject { +} + + + export interface NewContractData { contract_address: Address; @@ -151,6 +193,9 @@ export interface NewContractData { function_tree_root: Field; } + + + export interface OptionallyRevealedData { call_stack_item_hash: Field; function_data: FunctionData; @@ -162,51 +207,56 @@ export interface OptionallyRevealedData { called_from_public_l2: boolean; } + export interface PublicDataUpdateRequest { leaf_index: Field; old_value: Field; new_value: Field; } + export interface PublicDataRead { leaf_index: Field; value: Field; } + export interface CombinedAccumulatedData { aggregation_object: AggregationObject; - read_requests: Field[]; - new_commitments: Field[]; - new_nullifiers: Field[]; - nullified_commitments: Field[]; - private_call_stack: Field[]; - public_call_stack: Field[]; - new_l2_to_l1_msgs: Field[]; - encrypted_logs_hash: Field[]; - unencrypted_logs_hash: Field[]; + read_requests: FixedLengthArray; + new_commitments: FixedLengthArray; + new_nullifiers: FixedLengthArray; + nullified_commitments: FixedLengthArray; + private_call_stack: FixedLengthArray; + public_call_stack: FixedLengthArray; + new_l2_to_l1_msgs: FixedLengthArray; + encrypted_logs_hash: FixedLengthArray; + unencrypted_logs_hash: FixedLengthArray; encrypted_log_preimages_length: Field; unencrypted_log_preimages_length: Field; - new_contracts: NewContractData[]; - optionally_revealed_data: OptionallyRevealedData[]; - public_data_update_requests: PublicDataUpdateRequest[]; - public_data_reads: PublicDataRead[]; + new_contracts: FixedLengthArray; + optionally_revealed_data: FixedLengthArray; + public_data_update_requests: FixedLengthArray; + public_data_reads: FixedLengthArray; } + + + export interface CombinedConstantData { block_data: HistoricalBlockData; tx_context: TxContext; } + export interface KernelCircuitPublicInputs { end: CombinedAccumulatedData; constants: CombinedConstantData; is_private: boolean; } -export interface ReturnType { - value: KernelCircuitPublicInputs; -} +export type ReturnType = KernelCircuitPublicInputs; export interface InputType { input: PrivateKernelInputsInit; -} +} \ No newline at end of file diff --git a/yarn-project/noir-private-kernel/src/types/private_kernel_inner_types.ts b/yarn-project/noir-private-kernel/src/types/private_kernel_inner_types.ts index 6004aca216e..c6ecb5eec2f 100644 --- a/yarn-project/noir-private-kernel/src/types/private_kernel_inner_types.ts +++ b/yarn-project/noir-private-kernel/src/types/private_kernel_inner_types.ts @@ -2,6 +2,8 @@ /* eslint-disable */ +export type FixedLengthArray = L extends 0 ? never[]: T[] & { length: L } + export type Field = string; export type u32 = string; @@ -67,21 +69,21 @@ export interface PublicDataRead { export interface CombinedAccumulatedData { aggregation_object: AggregationObject; - read_requests: Field[]; - new_commitments: Field[]; - new_nullifiers: Field[]; - nullified_commitments: Field[]; - private_call_stack: Field[]; - public_call_stack: Field[]; - new_l2_to_l1_msgs: Field[]; - encrypted_logs_hash: Field[]; - unencrypted_logs_hash: Field[]; + read_requests: FixedLengthArray; + new_commitments: FixedLengthArray; + new_nullifiers: FixedLengthArray; + nullified_commitments: FixedLengthArray; + private_call_stack: FixedLengthArray; + public_call_stack: FixedLengthArray; + new_l2_to_l1_msgs: FixedLengthArray; + encrypted_logs_hash: FixedLengthArray; + unencrypted_logs_hash: FixedLengthArray; encrypted_log_preimages_length: Field; unencrypted_log_preimages_length: Field; - new_contracts: NewContractData[]; - optionally_revealed_data: OptionallyRevealedData[]; - public_data_update_requests: PublicDataUpdateRequest[]; - public_data_reads: PublicDataRead[]; + new_contracts: FixedLengthArray; + optionally_revealed_data: FixedLengthArray; + public_data_update_requests: FixedLengthArray; + public_data_reads: FixedLengthArray; } @@ -154,7 +156,7 @@ export interface PreviousKernelData { proof: Proof; vk: VerificationKey; vk_index: u32; - vk_path: Field[]; + vk_path: FixedLengthArray; } @@ -179,16 +181,16 @@ export interface CallContext { export interface PrivateCircuitPublicInputs { call_context: CallContext; args_hash: Field; - return_values: Field[]; - read_requests: Field[]; - new_commitments: Field[]; - new_nullifiers: Field[]; - nullified_commitments: Field[]; - private_call_stack: Field[]; - public_call_stack: Field[]; - new_l2_to_l1_msgs: Field[]; - encrypted_logs_hash: Field[]; - unencrypted_logs_hash: Field[]; + return_values: FixedLengthArray; + read_requests: FixedLengthArray; + new_commitments: FixedLengthArray; + new_nullifiers: FixedLengthArray; + nullified_commitments: FixedLengthArray; + private_call_stack: FixedLengthArray; + public_call_stack: FixedLengthArray; + new_l2_to_l1_msgs: FixedLengthArray; + encrypted_logs_hash: FixedLengthArray; + unencrypted_logs_hash: FixedLengthArray; encrypted_log_preimages_length: Field; unencrypted_log_preimages_length: Field; historical_block_data: HistoricalBlockData; @@ -214,16 +216,21 @@ export interface PrivateCallStackItem { -export interface MembershipWitness { +export interface FunctionLeafMembershipWitness { leaf_index: Field; - sibling_path: Field[]; + sibling_path: FixedLengthArray; } +export interface ContractLeafMembershipWitness { + leaf_index: Field; + sibling_path: FixedLengthArray; +} + export interface ReadRequestMembershipWitness { leaf_index: Field; - sibling_path: Field[]; + sibling_path: FixedLengthArray; is_transient: boolean; hint_to_commitment: Field; } @@ -232,12 +239,12 @@ export interface ReadRequestMembershipWitness { export interface PrivateCallData { call_stack_item: PrivateCallStackItem; - private_call_stack_preimages: PrivateCallStackItem[]; + private_call_stack_preimages: FixedLengthArray; proof: Proof; vk: VerificationKey; - function_leaf_membership_witness: MembershipWitness; - contract_leaf_membership_witness: MembershipWitness; - read_request_membership_witnesses: ReadRequestMembershipWitness[]; + function_leaf_membership_witness: FunctionLeafMembershipWitness; + contract_leaf_membership_witness: ContractLeafMembershipWitness; + read_request_membership_witnesses: FixedLengthArray; portal_contract_address: EthAddress; acir_hash: Field; } @@ -249,9 +256,7 @@ export interface PrivateKernelInputsInner { } -export interface ReturnType { - value: KernelCircuitPublicInputs; -} +export type ReturnType = KernelCircuitPublicInputs; export interface InputType { input: PrivateKernelInputsInner; diff --git a/yarn-project/noir-private-kernel/src/types/private_kernel_ordering_types.ts b/yarn-project/noir-private-kernel/src/types/private_kernel_ordering_types.ts index 63709356d9a..7540d4defcd 100644 --- a/yarn-project/noir-private-kernel/src/types/private_kernel_ordering_types.ts +++ b/yarn-project/noir-private-kernel/src/types/private_kernel_ordering_types.ts @@ -2,6 +2,8 @@ /* eslint-disable */ +export type FixedLengthArray = L extends 0 ? never[]: T[] & { length: L } + export type Field = string; export type u32 = string; @@ -67,21 +69,21 @@ export interface PublicDataRead { export interface CombinedAccumulatedData { aggregation_object: AggregationObject; - read_requests: Field[]; - new_commitments: Field[]; - new_nullifiers: Field[]; - nullified_commitments: Field[]; - private_call_stack: Field[]; - public_call_stack: Field[]; - new_l2_to_l1_msgs: Field[]; - encrypted_logs_hash: Field[]; - unencrypted_logs_hash: Field[]; + read_requests: FixedLengthArray; + new_commitments: FixedLengthArray; + new_nullifiers: FixedLengthArray; + nullified_commitments: FixedLengthArray; + private_call_stack: FixedLengthArray; + public_call_stack: FixedLengthArray; + new_l2_to_l1_msgs: FixedLengthArray; + encrypted_logs_hash: FixedLengthArray; + unencrypted_logs_hash: FixedLengthArray; encrypted_log_preimages_length: Field; unencrypted_log_preimages_length: Field; - new_contracts: NewContractData[]; - optionally_revealed_data: OptionallyRevealedData[]; - public_data_update_requests: PublicDataUpdateRequest[]; - public_data_reads: PublicDataRead[]; + new_contracts: FixedLengthArray; + optionally_revealed_data: FixedLengthArray; + public_data_update_requests: FixedLengthArray; + public_data_reads: FixedLengthArray; } @@ -154,32 +156,32 @@ export interface PreviousKernelData { proof: Proof; vk: VerificationKey; vk_index: u32; - vk_path: Field[]; + vk_path: FixedLengthArray; } export interface PrivateKernelInputsOrdering { previous_kernel: PreviousKernelData; - read_commitment_hints: Field[]; - nullifier_commitment_hints: Field[]; + read_commitment_hints: FixedLengthArray; + nullifier_commitment_hints: FixedLengthArray; } export interface FinalAccumulatedData { aggregation_object: AggregationObject; - new_commitments: Field[]; - new_nullifiers: Field[]; - nullified_commitments: Field[]; - private_call_stack: Field[]; - public_call_stack: Field[]; - new_l2_to_l1_msgs: Field[]; - encrypted_logs_hash: Field[]; - unencrypted_logs_hash: Field[]; + new_commitments: FixedLengthArray; + new_nullifiers: FixedLengthArray; + nullified_commitments: FixedLengthArray; + private_call_stack: FixedLengthArray; + public_call_stack: FixedLengthArray; + new_l2_to_l1_msgs: FixedLengthArray; + encrypted_logs_hash: FixedLengthArray; + unencrypted_logs_hash: FixedLengthArray; encrypted_log_preimages_length: Field; unencrypted_log_preimages_length: Field; - new_contracts: NewContractData[]; - optionally_revealed_data: OptionallyRevealedData[]; + new_contracts: FixedLengthArray; + optionally_revealed_data: FixedLengthArray; } @@ -190,9 +192,7 @@ export interface KernelCircuitPublicInputsFinal { is_private: boolean; } -export interface ReturnType { - value: KernelCircuitPublicInputsFinal; -} +export type ReturnType = KernelCircuitPublicInputsFinal; export interface InputType { input: PrivateKernelInputsOrdering; diff --git a/yarn-project/yarn.lock b/yarn-project/yarn.lock index 7f20a96c3a4..c67ac61c1ff 100644 --- a/yarn-project/yarn.lock +++ b/yarn-project/yarn.lock @@ -626,6 +626,7 @@ __metadata: "@noir-lang/acvm_js": ^0.28.0 "@noir-lang/backend_barretenberg": ^0.7.10 "@noir-lang/noir_js": ^0.16.0 + "@noir-lang/noirc_abi": ^0.16.0 "@rushstack/eslint-patch": ^1.1.4 "@types/jest": ^29.5.0 "@types/node": ^18.7.23 @@ -3510,7 +3511,7 @@ __metadata: languageName: node linkType: hard -"@noir-lang/noirc_abi@npm:0.16.0": +"@noir-lang/noirc_abi@npm:0.16.0, @noir-lang/noirc_abi@npm:^0.16.0": version: 0.16.0 resolution: "@noir-lang/noirc_abi@npm:0.16.0" checksum: 41308bbf64b8b895bea00a8534eb7a6aad6872f6b4dfab653194e273ae51fed93001e99c1eaf8a6aa6d791c3b1a7d09ea9730db4da1be6a172b37dbf6fa1b077