@aztec/protocol-contracts 0.30.1 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"noir_version":"0.25.0+d1ed549202e5a840845298c931418e173eb5437c","name":"ContractClassRegisterer","functions":[{"name":"broadcast_unconstrained_function","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"in_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"out_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"field"}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"private_global_variables","type":{"kind":"struct","path":"aztec::context::globals::private_global_variables::PrivateGlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]},"visibility":"private"},{"name":"contract_class_id","type":{"kind":"struct","path":"aztec::protocol_types::contract_class_id::ContractClassId","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"artifact_metadata_hash","type":{"kind":"field"},"visibility":"private"},{"name":"private_functions_artifact_tree_root","type":{"kind":"field"},"visibility":"private"},{"name":"artifact_function_tree_sibling_path","type":{"kind":"array","length":5,"type":{"kind":"field"}},"visibility":"private"},{"name":"function_data","type":{"kind":"struct","path":"events::unconstrained_function_broadcasted::UnconstrainedFunction","fields":[{"name":"selector","type":{"kind":"struct","path":"aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"metadata_hash","type":{"kind":"field"}},{"name":"bytecode","type":{"kind":"array","length":500,"type":{"kind":"field"}}}]},"visibility":"private"}],"param_witnesses":{"artifact_function_tree_sibling_path":[{"start":36,"end":41}],"artifact_metadata_hash":[{"start":34,"end":35}],"contract_class_id":[{"start":33,"end":34}],"function_data":[{"start":41,"end":543}],"inputs":[{"start":0,"end":33}],"private_functions_artifact_tree_root":[{"start":35,"end":36}]},"return_type":{"abi_type":{"kind":"struct","path":"aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash_read_requests","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_key_validation_requests","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"aztec::protocol_types::abis::nullifier_key_validation_request::NullifierKeyValidationRequest","fields":[{"name":"public_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"secret_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_private_key::GrumpkinPrivateKey","fields":[{"name":"high","type":{"kind":"field"}},{"name":"low","type":{"kind":"field"}}]}}]}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffectLinkedToNoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"note_hash","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"private_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"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_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"in_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"out_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"field"}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[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]},"bytecode":"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","debug_symbols":"1ZjdasIwGIbvJcci309+vvRWxg4650CQKtoNhnjvS7ExygKyCIOvJ23I+7Rvft+Sk9nuVv242Q1H050MouleTua474epeBz7w2g6WJj18J7u54X52GzXpiOXnn/p0MVZiYJXrYSKlFCylsj68mLAijow46wOHN2d+nVhkFS6ZpWurUrXTqVrr9J1UOlaVLqOGl0TqHStMhtJZTaSymwkldlIKrORVGYjqcxG+rdsZOLsmoWfdP1UNjr0MksdgRTfVGsiAOU2ApVGouOK2ka6vjkUrZXJNYNK16jSdTUbLUiehDZdd94nqBpN1jqbodSGh0uC8yfQQ1md4i62lra6J0vM8z1i+QSKz5RvokITJU1UdU2m+jz+GG+GKYYZc/AQY6pg2IZRG8ZtmG3DXBvm27DQgPGy/vP5YPYnjNuwek+mHSVjFMrmguAzV+9KErhyN8F1w/k/c6n01R82/dt2PZ23TZWfwyofv6Xi+L2/1Jx/AA=="},{"name":"broadcast_private_function","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"in_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"out_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"field"}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"private_global_variables","type":{"kind":"struct","path":"aztec::context::globals::private_global_variables::PrivateGlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]},"visibility":"private"},{"name":"contract_class_id","type":{"kind":"struct","path":"aztec::protocol_types::contract_class_id::ContractClassId","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"artifact_metadata_hash","type":{"kind":"field"},"visibility":"private"},{"name":"unconstrained_functions_artifact_tree_root","type":{"kind":"field"},"visibility":"private"},{"name":"private_function_tree_sibling_path","type":{"kind":"array","length":5,"type":{"kind":"field"}},"visibility":"private"},{"name":"artifact_function_tree_sibling_path","type":{"kind":"array","length":5,"type":{"kind":"field"}},"visibility":"private"},{"name":"function_data","type":{"kind":"struct","path":"events::private_function_broadcasted::PrivateFunction","fields":[{"name":"selector","type":{"kind":"struct","path":"aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"metadata_hash","type":{"kind":"field"}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"bytecode","type":{"kind":"array","length":500,"type":{"kind":"field"}}}]},"visibility":"private"}],"param_witnesses":{"artifact_function_tree_sibling_path":[{"start":41,"end":46}],"artifact_metadata_hash":[{"start":34,"end":35}],"contract_class_id":[{"start":33,"end":34}],"function_data":[{"start":46,"end":549}],"inputs":[{"start":0,"end":33}],"private_function_tree_sibling_path":[{"start":36,"end":41}],"unconstrained_functions_artifact_tree_root":[{"start":35,"end":36}]},"return_type":{"abi_type":{"kind":"struct","path":"aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash_read_requests","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_key_validation_requests","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"aztec::protocol_types::abis::nullifier_key_validation_request::NullifierKeyValidationRequest","fields":[{"name":"public_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"secret_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_private_key::GrumpkinPrivateKey","fields":[{"name":"high","type":{"kind":"field"}},{"name":"low","type":{"kind":"field"}}]}}]}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffectLinkedToNoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"note_hash","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"private_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"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_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"in_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"out_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"field"}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[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]},"bytecode":"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","debug_symbols":"1ZjdasMwDIXfxdelWJJ/5LzK2EXWdVAoaWmzwSh99zlrXK9MUObCQFeJ8fmS41j2CT6Z7W7Vj5vdcDTdyQCY7ulkjvt+mJrHsT+MprMLsx5e8/W8MG+b7dp06PP9Lx34NCuB4arlKEgRuGgRXagPtiCoIxHM6kjJ36ifFwZQpWtS6dqpdO1Vug4qXUeVrlml66TRNVqVrlVmI6rMRlSZjagyG1FlNqLKbESV2YgqsxH/LRsJqbgmpsdc00PZ6CHwLPVoufpGaYjWYhmjxTpI8CSoXcLrk2PVOv52DSpdo0rXYjZi4mKcKIYb7xMkRhMRhwI5j3eXBJU6h2DrK9hfbC1JXHGcSr0nqN8UOMyUs00UNFHYRIlfPPeX+Yf0Y5pSLJi7ixEKmG/DQhsW2zBuw1IT5m0bBg2YW8q/zHeqP2PUhslVkneUgmGsmwvYUDi5TPC6DeRbkLjwZy63PvrDpn/ZrqdTwqnzfViVQ8PcHD/3l57zFw=="},{"name":"compute_note_hash_and_nullifier","is_unconstrained":true,"custom_attributes":[],"abi":{"parameters":[{"name":"contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"nonce","type":{"kind":"field"},"visibility":"private"},{"name":"storage_slot","type":{"kind":"field"},"visibility":"private"},{"name":"note_type_id","type":{"kind":"field"},"visibility":"private"},{"name":"serialized_note","type":{"kind":"array","length":20,"type":{"kind":"field"}},"visibility":"private"}],"param_witnesses":{"contract_address":[{"start":0,"end":1}],"nonce":[{"start":1,"end":2}],"note_type_id":[{"start":3,"end":4}],"serialized_note":[{"start":4,"end":24}],"storage_slot":[{"start":2,"end":3}]},"return_type":{"abi_type":{"kind":"array","length":4,"type":{"kind":"field"}},"visibility":"public"},"return_witnesses":[24,25,26,27]},"bytecode":"H4sIAAAAAAAA/+2YzU7DMAyA0x/W/zJgsPIn9chxlXbYsQ/BC0yjErtsaC08PqLeYtXNGBfcg6VZipKmafLZSRM7ljrIY5ssXXbadKGOBd+XOp/9TwrGvmZDclpCOG0hnA4jJ7BN1LDr1B3ArtyMFwIYRwIYPQGMvgDGQABjKIAxEsAYC2BMBDCmAhgvBTCOBTBeCWC8FsB4I4BxIoDxVgDjnQDGKSOjRRhdXc7adN+mB3WI2Re63ledlFwM82IFPjsOnqm+gG9i44Pb1TnITeqQ3yZ1eMfguJ0OI3YdZnPo1+PuV8cKGbG/y2//hU/sxMg+lE32axbXIsakHnlGWwW6zHi3UtCxLZ0CMqbSc4TlKWmL7dAeuK6RHfxHXJvBH9+5xncpaTP6Rf9S8ervGTyewQxzEOsy+CCZ29nFZOO894J+Q/5+e3PuGnMSknps86zzsa6L+edhHqn+fow6UylJOSa2j/h5ioH03M9povv6Vrx7SGrYyjdslZI2CbFfOoD9LDIu9k05QM7MZ+ZTzJHq/+NYR99jbhu6UH8K2wfqeD9hVQgHpA6fpeHgHWyocJDAgeap7tAIibKJBoYLA9hs4bCBgBICNgiIIOAAh35Kxjjl5FJHGOVJ5y86f31f1/lqu2l2y1WTv22rOt9sm/yzrvKP3fpr2VTwXNXqB8Nw3LryGgAA","debug_symbols":"nZBLCoAgFEX38sYSEtnHrUSDVxkIoqIWhLj3lGgBObsfzuREUGbDII32wCPQpu2AzxG8RV0GH9AF4O3ICAi95zTRROCQSuTMaFpIgVgN1NdAQw00/oRyu9BJXJUoWsp56u2zlGu47fukBw=="},{"name":"register","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"in_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"out_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"field"}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"private_global_variables","type":{"kind":"struct","path":"aztec::context::globals::private_global_variables::PrivateGlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]},"visibility":"private"},{"name":"artifact_hash","type":{"kind":"field"},"visibility":"private"},{"name":"private_functions_root","type":{"kind":"field"},"visibility":"private"},{"name":"public_bytecode_commitment","type":{"kind":"field"},"visibility":"private"}],"param_witnesses":{"artifact_hash":[{"start":33,"end":34}],"inputs":[{"start":0,"end":33}],"private_functions_root":[{"start":34,"end":35}],"public_bytecode_commitment":[{"start":35,"end":36}]},"return_type":{"abi_type":{"kind":"struct","path":"aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"note_hash_read_requests","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_key_validation_requests","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"aztec::protocol_types::abis::nullifier_key_validation_request::NullifierKeyValidationRequest","fields":[{"name":"public_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"secret_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_private_key::GrumpkinPrivateKey","fields":[{"name":"high","type":{"kind":"field"}},{"name":"low","type":{"kind":"field"}}]}}]}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffectLinkedToNoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"note_hash","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"private_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"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_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"in_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}},{"name":"out_hash","type":{"kind":"array","length":2,"type":{"kind":"field"}}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"field"}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[15046,15047,15048,15049,15050,15051,15052,15053,15054,15055,15056,15057,15058,15059,15060,15061,15062,15063,15064,15065,15066,15067,15068,15069,15070,15071,15072,15073,15074,15075,15076,15077,15078,15079,15080,15081,15082,15083,15084,15085,15086,15087,15088,15089,15090,15091,15092,15093,15094,15095,15096,15097,15098,15099,15100,15101,15102,15103,15104,15105,15106,15107,15108,15109,15110,15111,15112,15113,15114,15115,15116,15117,15118,15119,15120,15121,15122,15123,15124,15125,15126,15127,15128,15129,15130,15131,15132,15133,15134,15135,15136,15137,15138,15139,15140,15141,15142,15143,15144,15145,15146,15147,15148,15149,15150,15151,15152,15153,15154,15155,15156,15157,15158,15159,15160,15161,15162,15163,15164,15165,15166,15167,15168,15169,15170,15171,15172,15173,15174,15175,15176,15177,15178,15179,15180,15181,15182,15183,15184,15185,15186,15187,15188,15189,15190,15191,15192,15193,15194,15195,15196,15197,15198,15199,15200,15201,15202,15203,15204,15205,15206,15207,15208,15209,15210,15211,15212,15213,15214,15215,15216,15217,15218,15219,15220,15221,15222,15223,15224,15225,15226,15227,15228,15229,15230,15231,15232,15233,15234,15235,15236,15237,15238,15239,15240,15241,15242,15243,15244,15245,15246,15247,15248,15249,15250,15251,15252,15253,15254,15255]},"bytecode":"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","debug_symbols":"1ZbdbsIwDIXfJdcIxXZ+nL7KtItuYxISKgi6SRPi3ZdC05RhVhG0SVzRqOerj13bdK9W69e6Xa6bnar2CrSqnvZqt6mb7rhr622rKj1Ti+Yt/h5m6n25WqgKbby+0IENvRIYBi17QYrASYtoXH6wBkHtiaBXewr2TP08UwAP6Rr/yzUhJdfEdKdruse1Bce91KLm7BulFLXGlKPGnCRYEtQm4PBkn7WGj67NQ7q2D+naSa4BTXID6ODMewd5ESLjE2TYTCQcjElicGHUuPYYgcUI3mKeI5iIYHiYfxPAj0vaRQh/HQHF9QzMqScQrPtZWhS3I4JzwyojnNw2lFYIOJ1D8Km0bi5Xl3x6fRRyLpj6ZC5XbIqSqzBJQRGFN1Oo5wTyCAzvKV6OZiwWtOewkKNCzhRyVu7DYeFAGO2FWKIec5PYqBMz5sswLsNCEWZ0GQZlGJZhVIDBlSH4fSd0GJVhV5pS5/8PzxdNGTlb0syRczdz8fRZb5f1y2rRfTZ3Nz+a1/QVHY/t1+Z05/AN"}],"events":[],"file_map":{"82":{"source":"use crate::{\n context::{inputs::PrivateContextInputs, interface::ContextInterface},\n key::nullifier_key::validate_nullifier_key_against_address, messaging::process_l1_to_l2_message,\n oracle::{\n arguments, call_private_function::call_private_function_internal,\n enqueue_public_function_call::enqueue_public_function_call_internal, context::get_portal_address,\n header::get_header_at, nullifier_key::{get_nullifier_key_pair, NullifierKeyPair},\n debug_log::debug_log\n}\n};\nuse dep::protocol_types::{\n abis::{\n call_context::CallContext, function_data::FunctionData, function_selector::FunctionSelector,\n nullifier_key_validation_request::NullifierKeyValidationRequest,\n private_call_stack_item::PrivateCallStackItem,\n private_circuit_public_inputs::PrivateCircuitPublicInputs,\n public_call_stack_item::PublicCallStackItem,\n public_circuit_public_inputs::PublicCircuitPublicInputs, read_request::ReadRequest,\n side_effect::{SideEffect, SideEffectLinkedToNoteHash}\n},\n address::{AztecAddress, EthAddress},\n constants::{\n MAX_NEW_NOTE_HASHES_PER_CALL, MAX_NEW_L2_TO_L1_MSGS_PER_CALL, MAX_NEW_NULLIFIERS_PER_CALL,\n MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL,\n MAX_PUBLIC_DATA_READS_PER_CALL, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL,\n MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL,\n MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL, NUM_FIELDS_PER_SHA256, RETURN_VALUES_LENGTH\n},\n contrakt::{storage_read::StorageRead, storage_update_request::StorageUpdateRequest},\n grumpkin_private_key::GrumpkinPrivateKey, hash::hash_args, header::Header,\n messaging::l2_to_l1_message::L2ToL1Message, utils::reader::Reader, traits::is_empty\n};\n\n// TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n// use dep::std::collections::vec::Vec;\n\n// When finished, one can call .finish() to convert back to the abi\nstruct PrivateContext {\n // docs:start:private-context\n inputs: PrivateContextInputs,\n side_effect_counter: u32,\n\n min_revertible_side_effect_counter: u32,\n\n args_hash : Field,\n return_values : BoundedVec<Field, RETURN_VALUES_LENGTH>,\n\n note_hash_read_requests: BoundedVec<SideEffect, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL>,\n nullifier_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL>,\n nullifier_key_validation_requests: BoundedVec<NullifierKeyValidationRequest, MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL>,\n\n new_note_hashes: BoundedVec<SideEffect, MAX_NEW_NOTE_HASHES_PER_CALL>,\n new_nullifiers: BoundedVec<SideEffectLinkedToNoteHash, MAX_NEW_NULLIFIERS_PER_CALL>,\n\n private_call_stack_hashes : BoundedVec<Field, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL>,\n public_call_stack_hashes : BoundedVec<Field, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL>,\n new_l2_to_l1_msgs : BoundedVec<L2ToL1Message, MAX_NEW_L2_TO_L1_MSGS_PER_CALL>,\n // docs:end:private-context\n\n // Header of a block whose state is used during private execution (not the block the transaction is included in).\n historical_header: Header,\n\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n // encrypted_logs_preimages: Vec<Field>,\n // unencrypted_logs_preimages: Vec<Field>,\n\n nullifier_key: Option<NullifierKeyPair>,\n}\n\nimpl ContextInterface for PrivateContext {\n fn msg_sender(self) -> AztecAddress {\n self.inputs.call_context.msg_sender\n }\n\n fn this_address(self) -> AztecAddress {\n self.inputs.call_context.storage_contract_address\n }\n\n fn this_portal_address(self) -> EthAddress {\n self.inputs.call_context.portal_contract_address\n }\n\n fn chain_id(self) -> Field {\n self.inputs.private_global_variables.chain_id\n }\n\n fn version(self) -> Field {\n self.inputs.private_global_variables.version\n }\n\n fn selector(self) -> FunctionSelector {\n self.inputs.call_context.function_selector\n }\n\n fn get_args_hash(self) -> Field {\n self.args_hash\n }\n\n // Returns the header of a block whose state is used during private execution (not the block the transaction is\n // included in).\n fn get_header(self) -> Header {\n self.historical_header\n }\n\n fn push_new_note_hash(&mut self, note_hash: Field) {\n let side_effect = SideEffect { value: note_hash, counter: self.side_effect_counter };\n self.new_note_hashes.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n fn push_new_nullifier(&mut self, nullifier: Field, nullified_commitment: Field) {\n let side_effect = SideEffectLinkedToNoteHash { value: nullifier, note_hash: nullified_commitment, counter: self.side_effect_counter };\n self.new_nullifiers.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n}\n\nimpl PrivateContext {\n pub fn new(inputs: PrivateContextInputs, args_hash: Field) -> PrivateContext {\n let side_effect_counter = inputs.start_side_effect_counter;\n let mut min_revertible_side_effect_counter = 0;\n if is_empty(inputs.call_context.msg_sender) {\n min_revertible_side_effect_counter = side_effect_counter;\n }\n PrivateContext {\n inputs,\n side_effect_counter,\n min_revertible_side_effect_counter,\n args_hash,\n return_values: BoundedVec::new(),\n note_hash_read_requests: BoundedVec::new(),\n nullifier_read_requests: BoundedVec::new(),\n nullifier_key_validation_requests: BoundedVec::new(),\n new_note_hashes: BoundedVec::new(),\n new_nullifiers: BoundedVec::new(),\n historical_header: inputs.historical_header,\n private_call_stack_hashes: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n new_l2_to_l1_msgs: BoundedVec::new(),\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n // encrypted_logs_preimages: Vec::new(),\n // unencrypted_logs_preimages: Vec::new(),\n nullifier_key: Option::none()\n }\n }\n\n // Returns the header of an arbitrary block whose block number is less than or equal to the block number\n // of historical header.\n pub fn get_header_at(self, block_number: u32) -> Header {\n get_header_at(block_number, self)\n }\n\n pub fn finish(self) -> PrivateCircuitPublicInputs {\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n let encrypted_logs_hash = [0; NUM_FIELDS_PER_SHA256];\n let unencrypted_logs_hash = [0; NUM_FIELDS_PER_SHA256];\n let encrypted_log_preimages_length = 0;\n let unencrypted_log_preimages_length = 0;\n\n let priv_circuit_pub_inputs = PrivateCircuitPublicInputs {\n call_context: self.inputs.call_context,\n args_hash: self.args_hash,\n return_values: self.return_values.storage,\n min_revertible_side_effect_counter: self.min_revertible_side_effect_counter,\n note_hash_read_requests: self.note_hash_read_requests.storage,\n nullifier_read_requests: self.nullifier_read_requests.storage,\n nullifier_key_validation_requests: self.nullifier_key_validation_requests.storage,\n new_note_hashes: self.new_note_hashes.storage,\n new_nullifiers: self.new_nullifiers.storage,\n private_call_stack_hashes: self.private_call_stack_hashes.storage,\n public_call_stack_hashes: self.public_call_stack_hashes.storage,\n new_l2_to_l1_msgs: self.new_l2_to_l1_msgs.storage,\n start_side_effect_counter: self.inputs.start_side_effect_counter,\n end_side_effect_counter: self.side_effect_counter,\n encrypted_logs_hash,\n unencrypted_logs_hash,\n encrypted_log_preimages_length,\n unencrypted_log_preimages_length,\n historical_header: self.historical_header,\n chain_id: self.inputs.private_global_variables.chain_id,\n version: self.inputs.private_global_variables.version\n };\n priv_circuit_pub_inputs\n }\n\n pub fn capture_min_revertible_side_effect_counter(&mut self) {\n self.min_revertible_side_effect_counter = self.side_effect_counter;\n }\n\n pub fn push_note_hash_read_request(&mut self, note_hash: Field) {\n let side_effect = SideEffect { value: note_hash, counter: self.side_effect_counter };\n self.note_hash_read_requests.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n pub fn push_nullifier_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.side_effect_counter };\n self.nullifier_read_requests.push(request);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n pub fn request_nullifier_secret_key(&mut self, account: AztecAddress) -> GrumpkinPrivateKey {\n let key_pair = if self.nullifier_key.is_none() {\n let key_pair = get_nullifier_key_pair(account);\n validate_nullifier_key_against_address(account, key_pair.public_key);\n let request = NullifierKeyValidationRequest { public_key: key_pair.public_key, secret_key: key_pair.secret_key };\n self.nullifier_key_validation_requests.push(request);\n self.nullifier_key = Option::some(key_pair);\n key_pair\n } else {\n let key_pair = self.nullifier_key.unwrap_unchecked();\n // If MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL is larger than 1, need to update the way the key pair is cached.\n assert(MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL == 1);\n assert(\n key_pair.account == account, \"Cannot query nullifier key for more than one account per call\"\n );\n key_pair\n };\n key_pair.secret_key\n }\n\n // docs:start:context_message_portal\n pub fn message_portal(&mut self, recipient: EthAddress, content: Field) {\n // docs:end:context_message_portal\n let message = L2ToL1Message { recipient, content };\n self.new_l2_to_l1_msgs.push(message);\n }\n\n // docs:start:context_consume_l1_to_l2_message\n // docs:start:consume_l1_to_l2_message\n pub fn consume_l1_to_l2_message(&mut self, content: Field, secret: Field, sender: EthAddress) {\n // docs:end:context_consume_l1_to_l2_message\n let nullifier = process_l1_to_l2_message(\n self.historical_header.state.l1_to_l2_message_tree.root,\n self.this_address(),\n sender,\n self.chain_id(),\n self.version(),\n content,\n secret\n );\n\n // Push nullifier (and the \"commitment\" corresponding to this can be \"empty\")\n self.push_new_nullifier(nullifier, 0)\n }\n // docs:end:consume_l1_to_l2_message\n\n pub fn accumulate_encrypted_logs<N>(&mut self, log: [Field; N]) {\n let _void1 = self.inputs;\n let _void2 = log;\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n }\n\n pub fn accumulate_unencrypted_logs<T>(&mut self, log: T) {\n let _void1 = self.inputs;\n let _void2 = log;\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n }\n\n pub fn call_private_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_private_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n pub fn static_call_private_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_private_function_with_packed_args(contract_address, function_selector, args_hash, true, false)\n }\n\n pub fn delegate_call_private_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_private_function_with_packed_args(contract_address, function_selector, args_hash, false, true)\n }\n\n pub fn call_private_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> [Field; RETURN_VALUES_LENGTH] {\n self.call_private_function_with_packed_args(contract_address, function_selector, 0, false, false)\n }\n\n pub fn static_call_private_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> [Field; RETURN_VALUES_LENGTH] {\n self.call_private_function_with_packed_args(contract_address, function_selector, 0, true, false)\n }\n\n pub fn delegate_call_private_function_no_args<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> [Field; RETURN_VALUES_LENGTH] {\n self.call_private_function_with_packed_args(contract_address, function_selector, 0, false, true)\n }\n\n pub fn call_private_function_with_packed_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n is_static_call: bool,\n is_delegate_call: bool\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n let item = call_private_function_internal(\n contract_address,\n function_selector,\n args_hash,\n self.side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n assert_eq(item.public_inputs.call_context.side_effect_counter, self.side_effect_counter);\n assert_eq(item.public_inputs.start_side_effect_counter, self.side_effect_counter);\n self.side_effect_counter = item.public_inputs.end_side_effect_counter + 1;\n\n assert(contract_address.eq(item.contract_address));\n assert(function_selector.eq(item.function_data.selector));\n\n assert(args_hash == item.public_inputs.args_hash);\n\n // Assert that the call context of the enqueued call generated by the oracle matches our request.\n assert(item.public_inputs.call_context.is_delegate_call == is_delegate_call);\n assert(item.public_inputs.call_context.is_static_call == is_static_call);\n\n if (is_delegate_call) {\n // For delegate calls, we also constrain the execution context address for the nested call to be equal to our address.\n assert(\n item.public_inputs.call_context.storage_contract_address.eq(self.inputs.call_context.storage_contract_address)\n );\n assert(item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.msg_sender));\n } else {\n // For non-delegate calls, we also constrain the execution context address for the nested call to be equal to the address we called.\n assert(item.public_inputs.call_context.storage_contract_address.eq(contract_address));\n assert(\n item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.storage_contract_address)\n );\n }\n\n self.private_call_stack_hashes.push(item.hash());\n\n item.public_inputs.return_values\n }\n\n pub fn call_public_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n pub fn static_call_public_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, true, false)\n }\n\n pub fn delegate_call_public_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) {\n let args_hash = hash_args(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, true)\n }\n\n pub fn call_public_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) {\n self.call_public_function_with_packed_args(contract_address, function_selector, 0, false, false)\n }\n\n pub fn static_call_public_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) {\n self.call_public_function_with_packed_args(contract_address, function_selector, 0, true, false)\n }\n\n pub fn delegate_call_public_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) {\n self.call_public_function_with_packed_args(contract_address, function_selector, 0, false, true)\n }\n\n pub fn call_public_function_with_packed_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n is_static_call: bool,\n is_delegate_call: bool\n ) {\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n let fields = enqueue_public_function_call_internal(\n contract_address,\n function_selector,\n args_hash,\n self.side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n let mut reader = Reader::new(fields);\n\n // Note: Not using PublicCirclePublicInputs::deserialize here, because everything below args_hash is 0 and\n // there is no more data in fields because there is only ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_SIZE fields!\n let item = PublicCallStackItem {\n contract_address: AztecAddress::from_field(reader.read()),\n function_data: reader.read_struct(FunctionData::deserialize),\n public_inputs: PublicCircuitPublicInputs {\n call_context: reader.read_struct(CallContext::deserialize),\n args_hash: reader.read(),\n return_values: [0; RETURN_VALUES_LENGTH],\n nullifier_read_requests: [ReadRequest::empty(); MAX_NULLIFIER_READ_REQUESTS_PER_CALL],\n nullifier_non_existent_read_requests: [ReadRequest::empty(); MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL],\n contract_storage_update_requests: [StorageUpdateRequest::empty(); MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL],\n contract_storage_reads: [StorageRead::empty(); MAX_PUBLIC_DATA_READS_PER_CALL],\n public_call_stack_hashes: [0; MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL],\n new_note_hashes: [SideEffect::empty(); MAX_NEW_NOTE_HASHES_PER_CALL],\n new_nullifiers: [SideEffectLinkedToNoteHash::empty(); MAX_NEW_NULLIFIERS_PER_CALL],\n new_l2_to_l1_msgs: [L2ToL1Message::empty(); MAX_NEW_L2_TO_L1_MSGS_PER_CALL],\n start_side_effect_counter: 0,\n end_side_effect_counter: 0,\n unencrypted_logs_hash: [0; NUM_FIELDS_PER_SHA256],\n unencrypted_log_preimages_length: 0,\n historical_header: Header::empty(),\n prover_address: AztecAddress::zero(),\n reverted: false\n },\n is_execution_request: true\n };\n reader.finish();\n\n assert(contract_address.eq(item.contract_address));\n assert(function_selector.eq(item.function_data.selector));\n\n assert_eq(item.public_inputs.call_context.side_effect_counter, self.side_effect_counter);\n // We increment the sideffect counter by one, to account for the call itself being a side effect.\n self.side_effect_counter = self.side_effect_counter + 1;\n\n assert(args_hash == item.public_inputs.args_hash);\n\n // Assert that the call context of the enqueued call generated by the oracle matches our request.\n assert(item.public_inputs.call_context.is_delegate_call == is_delegate_call);\n assert(item.public_inputs.call_context.is_static_call == is_static_call);\n\n if (is_delegate_call) {\n // For delegate calls, we also constrain the execution context address for the nested call to be equal to our address.\n assert(\n item.public_inputs.call_context.storage_contract_address.eq(self.inputs.call_context.storage_contract_address)\n );\n assert(item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.msg_sender));\n } else {\n // For non-delegate calls, we also constrain the execution context address for the nested call to be equal to the address we called.\n assert(item.public_inputs.call_context.storage_contract_address.eq(contract_address));\n assert(\n item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.storage_contract_address)\n );\n }\n\n self.public_call_stack_hashes.push(item.hash());\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/context/private_context.nr"},"85":{"source":"use crate::context::{PrivateContext, PublicContext};\nuse crate::oracle;\nuse dep::protocol_types::{address::AztecAddress, grumpkin_point::GrumpkinPoint};\n\npub fn emit_encrypted_log<N>(\n context: &mut PrivateContext,\n contract_address: AztecAddress,\n storage_slot: Field,\n note_type_id: Field,\n encryption_pub_key: GrumpkinPoint,\n log: [Field; N]\n) {\n let _ = oracle::logs::emit_encrypted_log(\n contract_address,\n storage_slot,\n note_type_id,\n encryption_pub_key,\n log\n );\n context.accumulate_encrypted_logs(log);\n}\n\npub fn emit_unencrypted_log<T>(context: &mut PublicContext, log: T) {\n let contract_address = context.this_address();\n let event_selector = 5; // TODO: compute actual event selector.\n let _ = oracle::logs::emit_unencrypted_log(contract_address, event_selector, log);\n // context.accumulate_unencrypted_logs(log);\n}\n\n// TODO: We might want to remove this since emitting unencrypted logs from private functions is violating privacy.\n// --> might be a better approach to force devs to make a public function call that emits the log if needed then\n// it would be less easy to accidentally leak information.\n// If we decide to keep this function around would make sense to wait for traits and then merge it with emit_unencrypted_log.\npub fn emit_unencrypted_log_from_private<T>(context: &mut PrivateContext, log: T) {\n let contract_address = context.this_address();\n let event_selector = 5; // TODO: compute actual event selector.\n let _ = oracle::logs::emit_unencrypted_log(contract_address, event_selector, log);\n // context.accumulate_unencrypted_logs(log);\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/log.nr"},"87":{"source":"use dep::protocol_types::{hash::hash_args, traits::Hash};\n\nstruct Hasher {\n fields: [Field],\n}\n\nimpl Hash for Hasher {\n fn hash(self) -> Field {\n hash_args(self.fields)\n }\n}\n\nimpl Hasher {\n pub fn new() -> Self {\n Self { fields: [] }\n }\n\n pub fn add(&mut self, field: Field) {\n self.fields = self.fields.push_back(field);\n }\n\n pub fn add_multiple<N>(&mut self, fields: [Field; N]) {\n for i in 0..N {\n self.fields = self.fields.push_back(fields[i]);\n }\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/hasher.nr"},"97":{"source":"// Utility function to console.log data in the acir simulator\n// WARNING: sometimes when using debug logs the ACVM errors with: `thrown: \"solver opcode resolution error: cannot solve opcode: expression has too many unknowns x155\"`\n\n#[oracle(debugLog)]\nfn debug_log_oracle<T, N>(_msg: T, _num_args: Field) -> Field {}\n#[oracle(debugLog)]\nfn debug_log_format_oracle<T, N>(_msg: T, _args: [Field; N], _num_args: Field) -> Field {}\n#[oracle(debugLog)]\nfn debug_log_field_oracle(_field: Field) -> Field {}\n#[oracle(debugLog)]\nfn debug_log_array_oracle<T, N>(_arbitrary_array: [T; N]) -> Field {}\n#[oracle(debugLogWithPrefix)]\nfn debug_log_array_with_prefix_oracle<S, T, N>(_prefix: S, _arbitrary_array: [T; N]) -> Field {}\n\n/// NOTE: call this with a str<N> msg of length > 1\n/// Example:\n/// `debug_log(\"blah blah this is a debug string\");`\nunconstrained pub fn debug_log<T>(msg: T) {\n assert(debug_log_oracle(msg, 0) == 0);\n}\n\n/// NOTE: call this with a str<N> msg of form\n/// \"some string with {0} and {1} ... {N}\"\n/// and an array of N field which will be formatted\n/// into the string in the simulator.\n/// Example:\n/// debug_log_format(\"get_2(slot:{0}) =>\\n\\t0:{1}\\n\\t1:{2}\", [storage_slot, note0_hash, note1_hash]);\nunconstrained pub fn debug_log_format<T, N>(msg: T, args: [Field; N]) {\n assert(debug_log_format_oracle(msg, args, args.len() as Field) == 0);\n}\n\n/// Example:\n/// `debug_log_field(my_field);`\nunconstrained pub fn debug_log_field(field: Field) {\n assert(debug_log_field_oracle(field) == 0);\n}\n\n/// Example:\n/// `debug_log_array(my_array);`\nunconstrained fn debug_log_array<T, N>(arbitrary_array: [T; N]) {\n assert(debug_log_array_oracle(arbitrary_array) == 0);\n}\n\n/// Example:\n/// `debug_log_array_with_prefix(\"Prefix\", my_array);`\nunconstrained pub fn debug_log_array_with_prefix<S, T, N>(prefix: S, arbitrary_array: [T; N]) {\n assert(debug_log_array_with_prefix_oracle(prefix, arbitrary_array) == 0);\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/debug_log.nr"},"106":{"source":"use dep::protocol_types::{address::AztecAddress, constants::NUM_FIELDS_PER_SHA256, grumpkin_point::GrumpkinPoint};\n\n// TODO: Should take encrypted data.\n#[oracle(emitEncryptedLog)]\nfn emit_encrypted_log_oracle<N>(\n _contract_address: AztecAddress,\n _storage_slot: Field,\n _note_type_id: Field,\n _encryption_pub_key: GrumpkinPoint,\n _preimage: [Field; N]\n) -> Field {}\n\nunconstrained pub fn emit_encrypted_log<N>(\n contract_address: AztecAddress,\n storage_slot: Field,\n note_type_id: Field,\n encryption_pub_key: GrumpkinPoint,\n preimage: [Field; N]\n) -> [Field; NUM_FIELDS_PER_SHA256] {\n [\n emit_encrypted_log_oracle(\n contract_address,\n storage_slot,\n note_type_id,\n encryption_pub_key,\n preimage\n ), 0\n ]\n}\n\n#[oracle(emitUnencryptedLog)]\nfn emit_unencrypted_log_oracle<T>(\n _contract_address: AztecAddress,\n _event_selector: Field,\n _message: T\n) -> Field {}\n\nunconstrained pub fn emit_unencrypted_log<T>(\n contract_address: AztecAddress,\n event_selector: Field,\n message: T\n) -> [Field; NUM_FIELDS_PER_SHA256] {\n // https://github.com/AztecProtocol/aztec-packages/issues/885\n [emit_unencrypted_log_oracle(contract_address, event_selector, message), 0]\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/logs.nr"},"148":{"source":"use crate::{\n crate::address::{eth_address::EthAddress, partial_address::PartialAddress, public_keys_hash::PublicKeysHash},\n constants::{AZTEC_ADDRESS_LENGTH, GENERATOR_INDEX__CONTRACT_ADDRESS},\n contract_class_id::ContractClassId, hash::pedersen_hash, grumpkin_point::GrumpkinPoint,\n traits::{Empty, ToField, Serialize, Deserialize}, utils\n};\n\n// Aztec address\nstruct AztecAddress {\n inner : Field\n}\n\nimpl Eq for AztecAddress {\n fn eq(self, other : Self) -> bool {\n self.to_field() == other.to_field()\n }\n}\n\nimpl Empty for AztecAddress {\n fn empty() -> Self {\n Self {\n inner : 0\n }\n }\n}\n\nimpl ToField for AztecAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn serialize(self: Self) -> [Field; AZTEC_ADDRESS_LENGTH] {\n [self.to_field()]\n }\n}\n\nimpl Deserialize<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn deserialize(fields: [Field; AZTEC_ADDRESS_LENGTH]) -> Self {\n AztecAddress::from_field(fields[0])\n }\n}\n\nimpl AztecAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute_from_public_key(\n pub_key: GrumpkinPoint,\n contract_class_id: ContractClassId,\n salt: Field,\n initialization_hash: Field,\n portal_contract_address: EthAddress,\n deployer: AztecAddress\n ) -> AztecAddress {\n AztecAddress::compute(\n PublicKeysHash::compute(pub_key),\n PartialAddress::compute(\n contract_class_id,\n salt,\n initialization_hash,\n portal_contract_address,\n deployer\n )\n )\n }\n\n pub fn compute(pub_keys_hash: PublicKeysHash, partial_address: PartialAddress) -> AztecAddress {\n AztecAddress::from_field(\n pedersen_hash(\n [pub_keys_hash.to_field(), partial_address.to_field()],\n GENERATOR_INDEX__CONTRACT_ADDRESS\n )\n )\n }\n\n pub fn is_zero(self) -> bool {\n self.inner == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n\n pub fn conditional_assign(predicate: bool, lhs: Self, rhs: Self) -> Self {\n let result = utils::conditional_assign(predicate, rhs.to_field(), lhs.to_field());\n Self { inner: result }\n }\n}\n\n#[test]\nfn compute_address() {\n let point = GrumpkinPoint { x: 1, y: 2 };\n let contract_address_salt = 3;\n let contract_class_id = ContractClassId::from_field(4);\n let initialization_hash = 5;\n let portal_contract_address = EthAddress::from_field(6);\n let deployer = AztecAddress::from_field(7);\n\n let address = AztecAddress::compute_from_public_key(\n point,\n contract_class_id,\n contract_address_salt,\n initialization_hash,\n portal_contract_address,\n deployer\n );\n\n let expected_computed_address_from_preimage = 0x027ea2b41ced2ec9a98305984e96dd28518536a4628883ccdc06e38aa8997220;\n assert(address.to_field() == expected_computed_address_from_preimage);\n}\n\n#[test]\nfn compute_address_from_partial_and_pubkey() {\n let point = GrumpkinPoint { x: 1, y: 2 };\n let partial_address = PartialAddress::from_field(3);\n\n let address = AztecAddress::compute(PublicKeysHash::compute(point), partial_address);\n let expected_computed_address_from_partial_and_pubkey = 0x0447f893197175723deb223696e2e96dbba1e707ee8507766373558877e74197;\n assert(address.to_field() == expected_computed_address_from_partial_and_pubkey);\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr"},"153":{"source":"use dep::std::cmp::Eq;\n\n// Trait: is_empty\n//\n// The general is_empty trait checks if a data type is is empty,\n// and it defines empty for the basic data types as 0.\n//\n// If a Field is equal to zero, then it is regarded as zero.\n// We will go with this definition for now, however it can be problematic \n// if a value can actually be zero. In a future refactor, we can \n// use the optional type for safety. Doing it now would lead to a worse devex\n// and would make it harder to sync up with the cpp code.\n// Preferred over Default trait to convey intent, as default doesn't necessarily mean empty.\ntrait Empty {\n fn empty() -> Self;\n}\n\nimpl Empty for Field { fn empty() -> Self {0} }\n\nimpl Empty for u1 { fn empty() -> Self {0} }\nimpl Empty for u8 { fn empty() -> Self {0} }\nimpl Empty for u32 { fn empty() -> Self {0} }\nimpl Empty for u64 { fn empty() -> Self {0} }\nimpl Empty for U128 { fn empty() -> Self {U128::from_integer(0)} }\n\npub fn is_empty<T>(item: T) -> bool where T: Empty + Eq {\n item.eq(T::empty())\n}\n\npub fn is_empty_array<T, N>(array: [T; N]) -> bool where T: Empty + Eq {\n array.all(|elem| is_empty(elem))\n}\n\ntrait Hash {\n fn hash(self) -> Field;\n}\n\ntrait ToField {\n fn to_field(self) -> Field;\n}\n\nimpl ToField for Field {\n fn to_field(self) -> Field {\n self\n }\n}\n\nimpl ToField for bool { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u1 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u8 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u32 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u64 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for U128 {\n fn to_field(self) -> Field {\n self.to_integer()\n }\n}\n\ntrait FromField {\n fn from_field(value: Field) -> Self;\n}\n\nimpl FromField for Field {\n fn from_field(value: Field) -> Self {\n value\n }\n}\n\nimpl FromField for bool { fn from_field(value: Field) -> Self { value as bool } }\nimpl FromField for u1 { fn from_field(value: Field) -> Self { value as u1 } }\nimpl FromField for u8 { fn from_field(value: Field) -> Self { value as u8 } }\nimpl FromField for u32 { fn from_field(value: Field) -> Self { value as u32 } }\nimpl FromField for u64 { fn from_field(value: Field) -> Self { value as u64 } }\nimpl FromField for U128 {\n fn from_field(value: Field) -> Self {\n U128::from_integer(value)\n }\n}\n\n// docs:start:serialize\ntrait Serialize<N> {\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\n// docs:start:deserialize\ntrait Deserialize<N> {\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr"},"186":{"source":"use crate::utils::field::field_from_bytes;\nuse dep::std::cmp::Eq;\nuse crate::traits::{Serialize, Deserialize, FromField, ToField};\n\nglobal SELECTOR_SIZE = 4;\n\nstruct FunctionSelector {\n // 1st 4-bytes of abi-encoding of function.\n inner: u32,\n}\n\nimpl Eq for FunctionSelector {\n fn eq(self, function_selector: FunctionSelector) -> bool {\n function_selector.inner == self.inner\n }\n}\n\nimpl Serialize<1> for FunctionSelector {\n fn serialize(self: Self) -> [Field; 1] {\n [self.inner as Field]\n }\n}\n\nimpl Deserialize<1> for FunctionSelector {\n fn deserialize(fields: [Field; 1]) -> Self {\n Self {\n inner: fields[0] as u32\n }\n }\n}\n\nimpl FromField for FunctionSelector {\n fn from_field(field: Field) -> Self {\n Self { inner: field as u32 }\n }\n}\n\nimpl ToField for FunctionSelector {\n fn to_field(self) -> Field {\n self.inner as Field\n }\n}\n\nimpl FunctionSelector {\n pub fn from_u32(value: u32) -> Self {\n Self { inner: value }\n }\n\n pub fn from_signature<N>(signature: str<N>) -> Self {\n let bytes = signature.as_bytes();\n let hash = dep::std::hash::keccak256(bytes, bytes.len() as u32);\n\n let mut selector_be_bytes = [0; SELECTOR_SIZE];\n for i in 0..SELECTOR_SIZE {\n selector_be_bytes[i] = hash[i];\n }\n\n FunctionSelector::from_field(field_from_bytes(selector_be_bytes, true))\n }\n\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/abis/function_selector.nr"},"201":{"source":"use crate::address::{AztecAddress, EthAddress};\nuse crate::mocked::VerificationKey;\nuse crate::abis::function_selector::FunctionSelector;\nuse crate::abis::contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage;\nuse crate::contract_class_id::ContractClassId;\nuse crate::abis::side_effect::{SideEffect};\nuse crate::utils::uint256::U256;\nuse crate::constants::{\n ARGS_HASH_CHUNK_COUNT, ARGS_HASH_CHUNK_LENGTH, FUNCTION_TREE_HEIGHT, NUM_FIELDS_PER_SHA256,\n GENERATOR_INDEX__SILOED_NOTE_HASH, GENERATOR_INDEX__OUTER_NULLIFIER, GENERATOR_INDEX__VK,\n GENERATOR_INDEX__CONSTRUCTOR, GENERATOR_INDEX__PARTIAL_ADDRESS, GENERATOR_INDEX__CONTRACT_ADDRESS,\n GENERATOR_INDEX__NOTE_HASH_NONCE, GENERATOR_INDEX__UNIQUE_NOTE_HASH, GENERATOR_INDEX__FUNCTION_ARGS\n};\nuse crate::messaging::l2_to_l1_message::L2ToL1Message;\nuse crate::merkle_tree::root::root_from_sibling_path;\n\nuse dep::std::hash::{pedersen_hash_with_separator, sha256};\n\npub fn sha256_to_field<N>(bytes_to_hash: [u8; N]) -> Field {\n let sha256_hashed = sha256(bytes_to_hash);\n\n // Convert it to a field element\n let mut v = 1;\n let mut high = 0 as Field;\n let mut low = 0 as Field;\n\n for i in 0..16 {\n high = high + (sha256_hashed[15 - i] as Field) * v;\n low = low + (sha256_hashed[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n let hash_in_a_field = low + high * v;\n\n hash_in_a_field\n}\n\npub fn hash_args<N>(args: [Field; N]) -> Field {\n if args.len() == 0 {\n 0\n } else {\n let mut chunks_hashes = [0; ARGS_HASH_CHUNK_COUNT];\n for i in 0..ARGS_HASH_CHUNK_COUNT {\n let mut chunk_hash = 0;\n let start_chunk_index = i * ARGS_HASH_CHUNK_LENGTH;\n if start_chunk_index < args.len() {\n let mut chunk_args = [0; ARGS_HASH_CHUNK_LENGTH];\n for j in 0..ARGS_HASH_CHUNK_LENGTH {\n let item_index = i * ARGS_HASH_CHUNK_LENGTH + j;\n if item_index < args.len() {\n chunk_args[j] = args[item_index];\n }\n }\n chunk_hash = pedersen_hash(chunk_args, GENERATOR_INDEX__FUNCTION_ARGS);\n }\n chunks_hashes[i] = chunk_hash;\n }\n pedersen_hash(chunks_hashes, GENERATOR_INDEX__FUNCTION_ARGS)\n }\n}\n\npub fn private_functions_root_from_siblings(\n selector: FunctionSelector,\n vk_hash: Field,\n function_leaf_index: Field,\n function_leaf_sibling_path: [Field; FUNCTION_TREE_HEIGHT]\n) -> Field {\n let function_leaf_preimage = ContractClassFunctionLeafPreimage { selector, vk_hash };\n let function_leaf = function_leaf_preimage.hash();\n root_from_sibling_path(function_leaf, function_leaf_index, function_leaf_sibling_path)\n}\n\npub fn silo_note_hash(address: AztecAddress, inner_commitment: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n inner_commitment\n ],\n GENERATOR_INDEX__SILOED_NOTE_HASH\n )\n}\n\npub fn silo_nullifier(address: AztecAddress, nullifier: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n nullifier\n ],\n GENERATOR_INDEX__OUTER_NULLIFIER\n )\n}\n\npub fn merkle_hash(left: Field, right: Field) -> Field {\n pedersen_hash([left, right], 0)\n}\n\npub fn stdlib_recursion_verification_key_compress_native_vk(_vk: VerificationKey) -> Field {\n // Original cpp code\n // stdlib::recursion::verification_key<CT::bn254>::compress_native(private_call.vk, GeneratorIndex::VK);\n // The above cpp method is only ever called on verification key, so it has been special cased here\n let _hash_index = GENERATOR_INDEX__VK;\n 0\n}\n\npub fn compute_l2_to_l1_hash(\n contract_address: AztecAddress,\n rollup_version_id: Field,\n chain_id: Field,\n message: L2ToL1Message\n) -> Field {\n let mut bytes: BoundedVec<u8, 160> = BoundedVec::new();\n\n let inputs = [\n contract_address.to_field(), rollup_version_id, message.recipient.to_field(), chain_id, message.content\n ];\n for i in 0..inputs.len() {\n // TODO are bytes be in fr.to_buffer() ?\n let item_bytes = inputs[i].to_be_bytes(32);\n for j in 0..32 {\n bytes.push(item_bytes[j]);\n }\n }\n\n sha256_to_field(bytes.storage)\n}\n\n// Computes sha256 hash of 2 input hashes stored in 4 fields.\n// \n// This method is bn254 specific. Two fields is needed in order to \n// encode the sha256 output. It can be abstracted away with any 4-2 hash function.\n//\n// TODO(Jan and David): This is used for the encrypted_log hashes.\n// Can we check to see if we can just use hash_to_field or pedersen_compress here?\n//\n// Returning a Field would be desirable because then this can be replaced with \n// poseidon without changing the rest of the code\n//\npub fn accumulate_sha256(input: [U128; 4]) -> [Field; NUM_FIELDS_PER_SHA256] {\n // This is a note about the cpp code, since it takes an array of Fields\n // instead of a U128.\n // 4 Field elements when converted to bytes will usually \n // occupy 4 * 32 = 128 bytes.\n // However, this function is making the assumption that each Field \n // only occupies 128 bits.\n //\n // TODO(David): This does not seem to be getting guaranteed anywhere in the code?\n //\n // Concatenate 4 u128 bit integers into a byte array.\n let mut hash_input_flattened = [0; 64];\n for offset in 0..4 {\n let input_as_bytes = input[offset].to_be_bytes();\n for byte_index in 0..16 {\n hash_input_flattened[offset * 16 + byte_index] = input_as_bytes[byte_index];\n }\n }\n\n let sha_digest = dep::std::hash::sha256(hash_input_flattened);\n\n U256::from_bytes32(sha_digest).to_u128_limbs()\n}\n\npub fn compute_logs_hash(\n previous_log_hash: [Field; 2],\n current_log_hash: [Field; 2]\n) -> [Field; NUM_FIELDS_PER_SHA256] {\n accumulate_sha256(\n [\n U128::from_integer(previous_log_hash[0]),\n U128::from_integer(previous_log_hash[1]),\n U128::from_integer(current_log_hash[0]),\n U128::from_integer(current_log_hash[1])\n ]\n )\n}\n\npub fn compute_note_hash_nonce(first_nullifier: Field, commitment_index: u64) -> Field {\n pedersen_hash(\n [\n first_nullifier,\n commitment_index as Field\n ],\n GENERATOR_INDEX__NOTE_HASH_NONCE\n )\n}\n\npub fn compute_unique_siloed_note_hash(nonce: Field, siloed_note_hash: Field) -> Field {\n pedersen_hash(\n [\n nonce,\n siloed_note_hash\n ],\n GENERATOR_INDEX__UNIQUE_NOTE_HASH\n )\n}\n\npub fn compute_unique_siloed_note_hashes<N>(\n first_nullifier: Field,\n siloed_note_hashes: [SideEffect; N]\n) -> [SideEffect; N] {\n let mut unique_siloed_note_hashes = [SideEffect::empty(); N];\n for i in 0..N {\n let siloed_note_hash = siloed_note_hashes[i];\n if siloed_note_hash.value != 0 {\n let nonce = compute_note_hash_nonce(first_nullifier, i);\n unique_siloed_note_hashes[i] = SideEffect {\n value: compute_unique_siloed_note_hash(nonce, siloed_note_hash.value),\n counter: siloed_note_hash.counter\n };\n }\n }\n unique_siloed_note_hashes\n}\n\npub fn pedersen_hash<N>(inputs: [Field; N], hash_index: u32) -> Field {\n dep::std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\n#[test]\nfn smoke_sha256_to_field() {\n let full_buffer = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,\n 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,\n 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,\n 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,\n 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,\n 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,\n 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,\n 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159\n ];\n let result = sha256_to_field(full_buffer);\n assert(result == 0x142a6d57007171f6eaa33d55976d9dbe739c889c8e920f115f7808dea184c718);\n}\n\n#[test]\nfn compute_var_args_hash() {\n let mut input = [0; 800];\n for i in 0..800 {\n input[i] = i as Field;\n }\n let hash = hash_args(input);\n assert(hash == 0x371960dd84ed3445ab099ac4c1af5ba90e0c713b593e0ca52ee532087c7f097);\n}\n\n#[test]\nfn compute_l2_l1_hash() {\n // All zeroes\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(0), 0, 0, L2ToL1Message::empty());\n assert(hash_result == 0x2266ac2f9f0c19c015239ef5ea85862fc6fac00db73779b220a4d49c4856c2e1);\n\n // Non-zero case\n let message = L2ToL1Message { recipient: EthAddress::from_field(3), content: 5 };\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(1), 2, 4, message);\n assert(hash_result == 0x0f24729168d4450a5681beafa5e3a899ac28bd17bf5a4877dab37bcd834e1634);\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr"},"205":{"source":"use crate::constants::{GENERATOR_INDEX__CONTRACT_LEAF};\nuse crate::traits::{ToField, FromField, Hash, Serialize, Deserialize};\n\nstruct ContractClassId {\n inner: Field\n}\n\nimpl Eq for ContractClassId {\n fn eq(self, other: ContractClassId) -> bool {\n other.inner == self.inner\n }\n}\n\nimpl ToField for ContractClassId {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl FromField for ContractClassId {\n fn from_field(value: Field) -> Self {\n Self { inner: value }\n }\n}\n\nimpl Serialize<1> for ContractClassId {\n fn serialize(self: Self) -> [Field; 1] {\n [self.inner]\n }\n}\n\nimpl Deserialize<1> for ContractClassId {\n fn deserialize(fields: [Field; 1]) -> Self {\n Self { inner: fields[0] }\n }\n}\n\nimpl ContractClassId {\n pub fn compute(\n artifact_hash: Field,\n private_functions_root: Field,\n public_bytecode_commitment: Field\n ) -> Self {\n let hash = dep::std::hash::pedersen_hash_with_separator(\n [\n artifact_hash,\n private_functions_root,\n public_bytecode_commitment\n ],\n GENERATOR_INDEX__CONTRACT_LEAF\n ); // TODO(@spalladino): Update generator index\n\n ContractClassId::from_field(hash)\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/contract_class_id.nr"},"248":{"source":"// Copied from noir-contracts/contracts/slow_tree_contract/src/capsule.nr\n// We should extract this to a shared lib in aztec-nr once we settle on a design for capsules\n\n#[oracle(popCapsule)]\nfn pop_capsule_oracle<N>() -> [Field; N] {}\n\n// A capsule is a \"blob\" of data that is passed to the contract through an oracle.\nunconstrained pub fn pop_capsule<N>() -> [Field; N] {\n pop_capsule_oracle()\n}\n","path":"/usr/src/noir-projects/noir-contracts/contracts/contract_class_registerer_contract/src/capsule.nr"},"250":{"source":"mod events;\nmod capsule;\n\ncontract ContractClassRegisterer {\n use dep::aztec::prelude::{AztecAddress, EthAddress, FunctionSelector, emit_unencrypted_log};\n use dep::aztec::protocol_types::{\n contract_class_id::ContractClassId,\n constants::{\n ARTIFACT_FUNCTION_TREE_MAX_HEIGHT, FUNCTION_TREE_HEIGHT,\n MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS, REGISTERER_CONTRACT_CLASS_REGISTERED_MAGIC_VALUE\n },\n traits::{Serialize}\n };\n\n use dep::aztec::log::{emit_unencrypted_log_from_private};\n\n use crate::events::{\n class_registered::ContractClassRegistered,\n private_function_broadcasted::{ClassPrivateFunctionBroadcasted, PrivateFunction},\n unconstrained_function_broadcasted::{ClassUnconstrainedFunctionBroadcasted, UnconstrainedFunction}\n };\n\n use crate::capsule::pop_capsule;\n\n #[aztec(private)]\n fn register(artifact_hash: Field, private_functions_root: Field, public_bytecode_commitment: Field) {\n // TODO: Validate public_bytecode_commitment is the correct commitment of packed_public_bytecode\n // TODO: Validate packed_public_bytecode is legit public bytecode\n\n let packed_public_bytecode: [Field; MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS] = pop_capsule();\n\n // Compute contract class id from preimage\n let contract_class_id = ContractClassId::compute(\n artifact_hash,\n private_functions_root,\n public_bytecode_commitment\n );\n\n // Emit the contract class id as a nullifier to be able to prove that this class has been (not) registered\n let event = ContractClassRegistered { contract_class_id, version: 1, artifact_hash, private_functions_root, packed_public_bytecode };\n context.push_new_nullifier(contract_class_id.to_field(), 0);\n\n // Broadcast class info including public bytecode\n dep::aztec::oracle::debug_log::debug_log_array_with_prefix(\n \"ContractClassRegistered\",\n [\n contract_class_id.to_field(),\n artifact_hash,\n private_functions_root,\n public_bytecode_commitment\n ]\n );\n emit_unencrypted_log_from_private(&mut context, event.serialize());\n }\n\n #[aztec(private)]\n fn broadcast_private_function(\n contract_class_id: ContractClassId,\n artifact_metadata_hash: Field,\n unconstrained_functions_artifact_tree_root: Field,\n private_function_tree_sibling_path: [Field; FUNCTION_TREE_HEIGHT],\n artifact_function_tree_sibling_path: [Field; ARTIFACT_FUNCTION_TREE_MAX_HEIGHT],\n function_data: PrivateFunction\n ) {\n let event = ClassPrivateFunctionBroadcasted {\n contract_class_id,\n artifact_metadata_hash,\n unconstrained_functions_artifact_tree_root,\n private_function_tree_sibling_path,\n artifact_function_tree_sibling_path,\n function: function_data\n };\n dep::aztec::oracle::debug_log::debug_log_array_with_prefix(\n \"ClassPrivateFunctionBroadcasted\",\n [\n contract_class_id.to_field(),\n artifact_metadata_hash,\n unconstrained_functions_artifact_tree_root,\n function_data.selector.to_field(),\n function_data.vk_hash,\n function_data.metadata_hash\n ]\n );\n emit_unencrypted_log_from_private(&mut context, event.serialize());\n }\n\n #[aztec(private)]\n fn broadcast_unconstrained_function(\n contract_class_id: ContractClassId,\n artifact_metadata_hash: Field,\n private_functions_artifact_tree_root: Field,\n artifact_function_tree_sibling_path: [Field; ARTIFACT_FUNCTION_TREE_MAX_HEIGHT],\n function_data: UnconstrainedFunction\n ) {\n let event = ClassUnconstrainedFunctionBroadcasted {\n contract_class_id,\n artifact_metadata_hash,\n private_functions_artifact_tree_root,\n artifact_function_tree_sibling_path,\n function: function_data\n };\n dep::aztec::oracle::debug_log::debug_log_array_with_prefix(\n \"ClassUnconstrainedFunctionBroadcasted\",\n [\n contract_class_id.to_field(),\n artifact_metadata_hash,\n private_functions_artifact_tree_root,\n function_data.selector.to_field(),\n function_data.metadata_hash\n ]\n );\n emit_unencrypted_log_from_private(&mut context, event.serialize());\n }\n}\n","path":"/usr/src/noir-projects/noir-contracts/contracts/contract_class_registerer_contract/src/main.nr"}}}
1
+ {"noir_version":"0.26.0+db2b0d0efaca8d38eab80c3fcc3edd9a0b9beea6","name":"ContractClassRegisterer","functions":[{"name":"register","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"private_global_variables","type":{"kind":"struct","path":"aztec::context::globals::private_global_variables::PrivateGlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]},"visibility":"private"},{"name":"artifact_hash","type":{"kind":"field"},"visibility":"private"},{"name":"private_functions_root","type":{"kind":"field"},"visibility":"private"},{"name":"public_bytecode_commitment","type":{"kind":"field"},"visibility":"private"}],"param_witnesses":{"artifact_hash":[{"start":30,"end":31}],"inputs":[{"start":0,"end":30}],"private_functions_root":[{"start":31,"end":32}],"public_bytecode_commitment":[{"start":32,"end":33}]},"return_type":{"abi_type":{"kind":"struct","path":"aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"max_block_number","type":{"kind":"struct","path":"aztec::protocol_types::abis::max_block_number::MaxBlockNumber","fields":[{"name":"_opt","type":{"kind":"struct","path":"std::option::Option","fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}},{"name":"note_hash_read_requests","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_key_validation_requests","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"aztec::protocol_types::abis::nullifier_key_validation_request::NullifierKeyValidationRequest","fields":[{"name":"public_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"secret_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_private_key::GrumpkinPrivateKey","fields":[{"name":"high","type":{"kind":"field"}},{"name":"low","type":{"kind":"field"}}]}}]}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffectLinkedToNoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"note_hash","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"private_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"encrypted_logs_hash","type":{"kind":"field"}},{"name":"unencrypted_logs_hash","type":{"kind":"field"}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[15042,15043,15044,15045,15046,15047,15048,15049,15050,15051,15052,15053,15054,15055,15056,15057,15058,15059,15060,15061,15062,15063,15064,15065,15066,15067,15068,15069,15070,15071,15072,15073,15074,15075,15076,15077,15078,15079,15080,15081,15082,15083,15084,15085,15086,15087,15088,15089,15090,15091,15092,15093,15094,15095,15096,15097,15098,15099,15100,15101,15102,15103,15104,15105,15106,15107,15108,15109,15110,15111,15112,15113,15114,15115,15116,15117,15118,15119,15120,15121,15122,15123,15124,15125,15126,15127,15128,15129,15130,15131,15132,15133,15134,15135,15136,15137,15138,15139,15140,15141,15142,15143,15144,15145,15146,15147,15148,15149,15150,15151,15152,15153,15154,15155,15156,15157,15158,15159,15160,15161,15162,15163,15164,15165,15166,15167,15168,15169,15170,15171,15172,15173,15174,15175,15176,15177,15178,15179,15180,15181,15182,15183,15184,15185,15186,15187,15188,15189,15190,15191,15192,15193,15194,15195,15196,15197,15198,15199,15200,15201,15202,15203,15204,15205,15206,15207,15208,15209,15210,15211,15212,15213,15214,15215,15216,15217,15218,15219,15220,15221,15222,15223,15224,15225,15226,15227,15228,15229,15230,15231,15232,15233,15234,15235,15236,15237,15238,15239,15240,15241,15242,15243,15244,15245,15246,15247,15248]},"bytecode":"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","debug_symbols":"1ZbdasMwDIXfxdehWLLkn7zK2EXWdRAIaWmywQh59zlt7KSbR1jCoL0KJuezjiVZuBPVcV+05bFuRN4JAJE/daI5FfWwbNri3IpcZuJQv/pvn4m3sjqIHBn67IcOpdWjFIHUpJaYUGvLPKq1A3ejfs4E4P1YUZusIAYpopUbrdAWK+x3GaWMhFFtU05ARjFIhCgGTqnJTTubSUvm4pof0rV+SNcm5RqQKARANjfeB8gmIUUqQGSXDuymCKDnjasvEVwygiEbICvNQgR/7uCHHMM8pT4Cyn+PkJyOYM00ahi/pxaTcwxBYxwKaBdsAatYCO3zGW3xteK7dP2UMSOl3Ozk5ALl1lDpPC9SsIrCP1MIO/VLnXTsBDe7N04HDBcxhQlMrcNoHcYrMNylbx/ISIGZmhCk7yu/+ijOZfFSHYanwfDzvd6Hl4Jftp+n65/+Cw=="},{"name":"compute_note_hash_and_nullifier","is_unconstrained":true,"custom_attributes":[],"abi":{"parameters":[{"name":"contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"nonce","type":{"kind":"field"},"visibility":"private"},{"name":"storage_slot","type":{"kind":"field"},"visibility":"private"},{"name":"note_type_id","type":{"kind":"field"},"visibility":"private"},{"name":"serialized_note","type":{"kind":"array","length":20,"type":{"kind":"field"}},"visibility":"private"}],"param_witnesses":{"contract_address":[{"start":0,"end":1}],"nonce":[{"start":1,"end":2}],"note_type_id":[{"start":3,"end":4}],"serialized_note":[{"start":4,"end":24}],"storage_slot":[{"start":2,"end":3}]},"return_type":{"abi_type":{"kind":"array","length":4,"type":{"kind":"field"}},"visibility":"public"},"return_witnesses":[24,25,26,27]},"bytecode":"H4sIAAAAAAAA/+2YzU7DMAyA0x/W/zJgsPIn9chxlXbYsQ/BC0yjErtsaC08PqLeYtXNGBfcg6VZipKmafLZSRM7ljrIY5ssXXbadKGOBd+XOp/9TwrGvmZDclpCOG0hnA4jJ7BN1LDr1B3ArtyMFwIYRwIYPQGMvgDGQABjKIAxEsAYC2BMBDCmAhgvBTCOBTBeCWC8FsB4I4BxIoDxVgDjnQDGKSOjRRhdXc7adN+mB3WI2Re63ledlFwM82IFPjsOnqm+gG9i44Pb1TnITeqQ3yZ1eMfguJ0OI3YdZnPo1+PuV8cKGbG/y2//hU/sxMg+lE32axbXIsakHnlGWwW6zHi3UtCxLZ0CMqbSc4TlKWmL7dAeuK6RHfxHXJvBH9+5xncpaTP6Rf9S8ervGTyewQxzEOsy+CCZ29nFZOO894J+Q/5+e3PuGnMSknps86zzsa6L+edhHqn+fow6UylJOSa2j/h5ioH03M9povv6Vrx7SGrYyjdslZI2CbFfOoD9LDIu9k05QM7MZ+ZTzJHq/+NYR99jbhu6UH8K2wfqeD9hVQgHpA6fpeHgHWyocJDAgeap7tAIibKJBoYLA9hs4bCBgBICNgiIIOAAh35Kxjjl5FJHGOVJ5y86f31f1/lqu2l2y1WTv22rOt9sm/yzrvKP3fpr2VTwXNXqB8Nw3LryGgAA","debug_symbols":"nZBLCoAgFEX38sYSFdnHrUSDVxkIoqIWhLj3lGgBObsfzuQEkHpDL7RywALUVdsBmwM4gyoPzqP1wNqREuBqT2mqI4FDSJ4ybeJCMkRLoL4EGkqg8SeU2oVW4Cp51pLPU22fpVT9bd4nPg=="},{"name":"broadcast_private_function","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"private_global_variables","type":{"kind":"struct","path":"aztec::context::globals::private_global_variables::PrivateGlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]},"visibility":"private"},{"name":"contract_class_id","type":{"kind":"struct","path":"aztec::protocol_types::contract_class_id::ContractClassId","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"artifact_metadata_hash","type":{"kind":"field"},"visibility":"private"},{"name":"unconstrained_functions_artifact_tree_root","type":{"kind":"field"},"visibility":"private"},{"name":"private_function_tree_sibling_path","type":{"kind":"array","length":5,"type":{"kind":"field"}},"visibility":"private"},{"name":"private_function_tree_leaf_index","type":{"kind":"field"},"visibility":"private"},{"name":"artifact_function_tree_sibling_path","type":{"kind":"array","length":5,"type":{"kind":"field"}},"visibility":"private"},{"name":"artifact_function_tree_leaf_index","type":{"kind":"field"},"visibility":"private"},{"name":"function_data","type":{"kind":"struct","path":"events::private_function_broadcasted::PrivateFunction","fields":[{"name":"selector","type":{"kind":"struct","path":"aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"metadata_hash","type":{"kind":"field"}},{"name":"vk_hash","type":{"kind":"field"}},{"name":"bytecode","type":{"kind":"array","length":3000,"type":{"kind":"field"}}}]},"visibility":"private"}],"param_witnesses":{"artifact_function_tree_leaf_index":[{"start":44,"end":45}],"artifact_function_tree_sibling_path":[{"start":39,"end":44}],"artifact_metadata_hash":[{"start":31,"end":32}],"contract_class_id":[{"start":30,"end":31}],"function_data":[{"start":45,"end":3048}],"inputs":[{"start":0,"end":30}],"private_function_tree_leaf_index":[{"start":38,"end":39}],"private_function_tree_sibling_path":[{"start":33,"end":38}],"unconstrained_functions_artifact_tree_root":[{"start":32,"end":33}]},"return_type":{"abi_type":{"kind":"struct","path":"aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"max_block_number","type":{"kind":"struct","path":"aztec::protocol_types::abis::max_block_number::MaxBlockNumber","fields":[{"name":"_opt","type":{"kind":"struct","path":"std::option::Option","fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}},{"name":"note_hash_read_requests","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_key_validation_requests","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"aztec::protocol_types::abis::nullifier_key_validation_request::NullifierKeyValidationRequest","fields":[{"name":"public_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"secret_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_private_key::GrumpkinPrivateKey","fields":[{"name":"high","type":{"kind":"field"}},{"name":"low","type":{"kind":"field"}}]}}]}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffectLinkedToNoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"note_hash","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"private_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"encrypted_logs_hash","type":{"kind":"field"}},{"name":"unencrypted_logs_hash","type":{"kind":"field"}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[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,3272,3273,3274,3275,3276,3277,3278,3279,3280,3281,3282,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308]},"bytecode":"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","debug_symbols":"1dnLaoNAGAXgd5m1lPmvjr5K6cKmKQSCCYktlJB3rzZeGjpQSDYnKxk8v5xR+EDmFLa7VdNtdu0x1KdAHOrnUzjum3ZYHrvm0IU6FmHdvvXXcxHeN9t1qNnoXPzJcUw+RplUlnTkTNqT2Zj2iqqr9EsRSHCqKE4Vw6niOFVKnCoJp0oFU4UjThXCqYKjLeNoyzjaMo62jKMt42jLONoyjraCo63gaCs42gqOtoKjreBoKzjaCo62gqOt4GirONoqjraKo63iaKs42iqOtoqjreJoqzjaKo62hqOt4WhrONoajraGo63haGs42hqOtoajreFo6zja+n3aMk9R5hTvrHKXttY/ZYwaK8/plGtCcQ5TZJrDZLm0VsuTyyWr5U9recjW+pCts9wLeRpnxFyvug9DWZjFSp2GXP/bMJnItAePvmzYLrWe8j/OlOZmVP3aTuXjWP4n92pMODNGt43xbWNyw5g/5d8IxXmKyrR84Ni/yX712Rw2zet2PRybDzc/2tV0it4vu6/95c75Gw=="},{"name":"broadcast_unconstrained_function","is_unconstrained":false,"custom_attributes":["aztec(private)"],"abi":{"parameters":[{"name":"inputs","type":{"kind":"struct","path":"aztec::context::inputs::private_context_inputs::PrivateContextInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"private_global_variables","type":{"kind":"struct","path":"aztec::context::globals::private_global_variables::PrivateGlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]},"visibility":"private"},{"name":"contract_class_id","type":{"kind":"struct","path":"aztec::protocol_types::contract_class_id::ContractClassId","fields":[{"name":"inner","type":{"kind":"field"}}]},"visibility":"private"},{"name":"artifact_metadata_hash","type":{"kind":"field"},"visibility":"private"},{"name":"private_functions_artifact_tree_root","type":{"kind":"field"},"visibility":"private"},{"name":"artifact_function_tree_sibling_path","type":{"kind":"array","length":5,"type":{"kind":"field"}},"visibility":"private"},{"name":"artifact_function_tree_leaf_index","type":{"kind":"field"},"visibility":"private"},{"name":"function_data","type":{"kind":"struct","path":"events::unconstrained_function_broadcasted::UnconstrainedFunction","fields":[{"name":"selector","type":{"kind":"struct","path":"aztec::protocol_types::abis::function_selector::FunctionSelector","fields":[{"name":"inner","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"metadata_hash","type":{"kind":"field"}},{"name":"bytecode","type":{"kind":"array","length":3000,"type":{"kind":"field"}}}]},"visibility":"private"}],"param_witnesses":{"artifact_function_tree_leaf_index":[{"start":38,"end":39}],"artifact_function_tree_sibling_path":[{"start":33,"end":38}],"artifact_metadata_hash":[{"start":31,"end":32}],"contract_class_id":[{"start":30,"end":31}],"function_data":[{"start":39,"end":3041}],"inputs":[{"start":0,"end":30}],"private_functions_artifact_tree_root":[{"start":32,"end":33}]},"return_type":{"abi_type":{"kind":"struct","path":"aztec::protocol_types::abis::private_circuit_public_inputs::PrivateCircuitPublicInputs","fields":[{"name":"call_context","type":{"kind":"struct","path":"aztec::protocol_types::abis::call_context::CallContext","fields":[{"name":"msg_sender","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"storage_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"portal_contract_address","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"function_selector","type":{"kind":"struct","path":"aztec::protocol_types::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":"side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"args_hash","type":{"kind":"field"}},{"name":"return_values","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"min_revertible_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"max_block_number","type":{"kind":"struct","path":"aztec::protocol_types::abis::max_block_number::MaxBlockNumber","fields":[{"name":"_opt","type":{"kind":"struct","path":"std::option::Option","fields":[{"name":"_is_some","type":{"kind":"boolean"}},{"name":"_value","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}},{"name":"note_hash_read_requests","type":{"kind":"array","length":32,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_read_requests","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::abis::read_request::ReadRequest","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"nullifier_key_validation_requests","type":{"kind":"array","length":1,"type":{"kind":"struct","path":"aztec::protocol_types::abis::nullifier_key_validation_request::NullifierKeyValidationRequest","fields":[{"name":"public_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_point::GrumpkinPoint","fields":[{"name":"x","type":{"kind":"field"}},{"name":"y","type":{"kind":"field"}}]}},{"name":"secret_key","type":{"kind":"struct","path":"aztec::protocol_types::grumpkin_private_key::GrumpkinPrivateKey","fields":[{"name":"high","type":{"kind":"field"}},{"name":"low","type":{"kind":"field"}}]}}]}}},{"name":"new_note_hashes","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffect","fields":[{"name":"value","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"new_nullifiers","type":{"kind":"array","length":16,"type":{"kind":"struct","path":"aztec::protocol_types::abis::side_effect::SideEffectLinkedToNoteHash","fields":[{"name":"value","type":{"kind":"field"}},{"name":"note_hash","type":{"kind":"field"}},{"name":"counter","type":{"kind":"integer","sign":"unsigned","width":32}}]}}},{"name":"private_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"public_call_stack_hashes","type":{"kind":"array","length":4,"type":{"kind":"field"}}},{"name":"new_l2_to_l1_msgs","type":{"kind":"array","length":2,"type":{"kind":"struct","path":"aztec::protocol_types::messaging::l2_to_l1_message::L2ToL1Message","fields":[{"name":"recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"content","type":{"kind":"field"}}]}}},{"name":"start_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"end_side_effect_counter","type":{"kind":"integer","sign":"unsigned","width":32}},{"name":"encrypted_logs_hash","type":{"kind":"field"}},{"name":"unencrypted_logs_hash","type":{"kind":"field"}},{"name":"encrypted_log_preimages_length","type":{"kind":"field"}},{"name":"unencrypted_log_preimages_length","type":{"kind":"field"}},{"name":"historical_header","type":{"kind":"struct","path":"aztec::protocol_types::header::Header","fields":[{"name":"last_archive","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"content_commitment","type":{"kind":"struct","path":"aztec::protocol_types::content_commitment::ContentCommitment","fields":[{"name":"tx_tree_height","type":{"kind":"field"}},{"name":"txs_effects_hash","type":{"kind":"field"}},{"name":"in_hash","type":{"kind":"field"}},{"name":"out_hash","type":{"kind":"field"}}]}},{"name":"state","type":{"kind":"struct","path":"aztec::protocol_types::state_reference::StateReference","fields":[{"name":"l1_to_l2_message_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"partial","type":{"kind":"struct","path":"aztec::protocol_types::partial_state_reference::PartialStateReference","fields":[{"name":"note_hash_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"nullifier_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}},{"name":"public_data_tree","type":{"kind":"struct","path":"aztec::protocol_types::abis::append_only_tree_snapshot::AppendOnlyTreeSnapshot","fields":[{"name":"root","type":{"kind":"field"}},{"name":"next_available_leaf_index","type":{"kind":"integer","sign":"unsigned","width":32}}]}}]}}]}},{"name":"global_variables","type":{"kind":"struct","path":"aztec::protocol_types::abis::global_variables::GlobalVariables","fields":[{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}},{"name":"block_number","type":{"kind":"field"}},{"name":"timestamp","type":{"kind":"integer","sign":"unsigned","width":64}},{"name":"coinbase","type":{"kind":"struct","path":"aztec::protocol_types::address::eth_address::EthAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}},{"name":"fee_recipient","type":{"kind":"struct","path":"aztec::protocol_types::address::aztec_address::AztecAddress","fields":[{"name":"inner","type":{"kind":"field"}}]}}]}}]}},{"name":"chain_id","type":{"kind":"field"}},{"name":"version","type":{"kind":"field"}}]},"visibility":"public"},"return_witnesses":[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,3272,3273,3274,3275,3276,3277,3278,3279,3280,3281,3282,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301]},"bytecode":"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","debug_symbols":"1dnLasJAGAXgd5l1kPlvk5m8SnGRWguCRNG0UMR3b1JzqTgg6Oa4kpBzwhkCH0JObrtb1e1m1xxddXLErno7ueO+bvrLY1sfWlf5wq2bj+73XLjPzXbtKjY6Fzc59jEMUSaVOe05kw7RbEiHROkqvSwcCc4UxZliOFMCzpQSZ0rEmZJgprDHmUI4U3C0ZRxtGUdbxtGWcbRlHG0ZR1vG0VZwtBUcbQVHW8HRVnC0FRxtBUdbwdFWcLQVHG0VR1vF0VZxtFUcbRVHW8XRVnG0VRxtFUdbxdHWcLQ1HG0NR1vD0dZwtDUcbQ1HW8PR1nC0NRxtA4624Tltmccoc/RPTnlKW+ueMkSNlad0zC0hP4XJM01hslxa0/zkcs5q+bdaXnK1vuTqLPcqIQ4dLTldbe9LWZi1lDSWorc7ByYTGc8QfJgPbJdZi/zfforTMkr/jpPCWAt3a8KZWvlYLT5WSw/UwiLfIj+1qIzzC+5ewbK7+q4Pm/p9u+4/m/c3v5rV+BW9u2x/9pc7518="}],"events":[],"file_map":{"82":{"source":"use crate::{\n context::{inputs::PrivateContextInputs, interface::ContextInterface},\n key::nullifier_key::validate_nullifier_key_against_address, messaging::process_l1_to_l2_message,\n oracle::{\n arguments, call_private_function::call_private_function_internal,\n enqueue_public_function_call::enqueue_public_function_call_internal, context::get_portal_address,\n header::get_header_at, nullifier_key::{get_nullifier_key_pair, NullifierKeyPair}\n}\n};\nuse dep::protocol_types::{\n abis::{\n call_context::CallContext, function_data::FunctionData, function_selector::FunctionSelector,\n max_block_number::MaxBlockNumber, nullifier_key_validation_request::NullifierKeyValidationRequest,\n private_call_stack_item::PrivateCallStackItem,\n private_circuit_public_inputs::PrivateCircuitPublicInputs,\n public_call_stack_item::PublicCallStackItem,\n public_circuit_public_inputs::PublicCircuitPublicInputs, read_request::ReadRequest,\n side_effect::{SideEffect, SideEffectLinkedToNoteHash}\n},\n address::{AztecAddress, EthAddress},\n constants::{\n MAX_NEW_NOTE_HASHES_PER_CALL, MAX_NEW_L2_TO_L1_MSGS_PER_CALL, MAX_NEW_NULLIFIERS_PER_CALL,\n MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL,\n MAX_PUBLIC_DATA_READS_PER_CALL, MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL,\n MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_READ_REQUESTS_PER_CALL,\n MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL, MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL,\n RETURN_VALUES_LENGTH\n},\n contrakt::{storage_read::StorageRead, storage_update_request::StorageUpdateRequest},\n grumpkin_private_key::GrumpkinPrivateKey, hash::hash_args_array, header::Header,\n messaging::l2_to_l1_message::L2ToL1Message, utils::reader::Reader, traits::is_empty\n};\n\n// TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n// use dep::std::collections::vec::Vec;\n\n// When finished, one can call .finish() to convert back to the abi\nstruct PrivateContext {\n // docs:start:private-context\n inputs: PrivateContextInputs,\n side_effect_counter: u32,\n\n min_revertible_side_effect_counter: u32,\n\n args_hash : Field,\n return_values : BoundedVec<Field, RETURN_VALUES_LENGTH>,\n\n max_block_number: MaxBlockNumber,\n\n note_hash_read_requests: BoundedVec<SideEffect, MAX_NOTE_HASH_READ_REQUESTS_PER_CALL>,\n nullifier_read_requests: BoundedVec<ReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_CALL>,\n nullifier_key_validation_requests: BoundedVec<NullifierKeyValidationRequest, MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL>,\n\n new_note_hashes: BoundedVec<SideEffect, MAX_NEW_NOTE_HASHES_PER_CALL>,\n new_nullifiers: BoundedVec<SideEffectLinkedToNoteHash, MAX_NEW_NULLIFIERS_PER_CALL>,\n\n private_call_stack_hashes : BoundedVec<Field, MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL>,\n public_call_stack_hashes : BoundedVec<Field, MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL>,\n new_l2_to_l1_msgs : BoundedVec<L2ToL1Message, MAX_NEW_L2_TO_L1_MSGS_PER_CALL>,\n // docs:end:private-context\n\n // Header of a block whose state is used during private execution (not the block the transaction is included in).\n historical_header: Header,\n\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n // encrypted_logs_preimages: Vec<Field>,\n // unencrypted_logs_preimages: Vec<Field>,\n\n nullifier_key: Option<NullifierKeyPair>,\n}\n\nimpl ContextInterface for PrivateContext {\n fn msg_sender(self) -> AztecAddress {\n self.inputs.call_context.msg_sender\n }\n\n fn this_address(self) -> AztecAddress {\n self.inputs.call_context.storage_contract_address\n }\n\n fn this_portal_address(self) -> EthAddress {\n self.inputs.call_context.portal_contract_address\n }\n\n fn chain_id(self) -> Field {\n self.inputs.private_global_variables.chain_id\n }\n\n fn version(self) -> Field {\n self.inputs.private_global_variables.version\n }\n\n fn selector(self) -> FunctionSelector {\n self.inputs.call_context.function_selector\n }\n\n fn get_args_hash(self) -> Field {\n self.args_hash\n }\n\n // Returns the header of a block whose state is used during private execution (not the block the transaction is\n // included in).\n fn get_header(self) -> Header {\n self.historical_header\n }\n\n fn push_new_note_hash(&mut self, note_hash: Field) {\n let side_effect = SideEffect { value: note_hash, counter: self.side_effect_counter };\n self.new_note_hashes.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n fn push_new_nullifier(&mut self, nullifier: Field, nullified_commitment: Field) {\n let side_effect = SideEffectLinkedToNoteHash { value: nullifier, note_hash: nullified_commitment, counter: self.side_effect_counter };\n self.new_nullifiers.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n}\n\nimpl PrivateContext {\n pub fn new(inputs: PrivateContextInputs, args_hash: Field) -> PrivateContext {\n let side_effect_counter = inputs.start_side_effect_counter;\n let mut min_revertible_side_effect_counter = 0;\n if is_empty(inputs.call_context.msg_sender) {\n min_revertible_side_effect_counter = side_effect_counter;\n }\n PrivateContext {\n inputs,\n side_effect_counter,\n min_revertible_side_effect_counter,\n args_hash,\n return_values: BoundedVec::new(),\n max_block_number: MaxBlockNumber::default(),\n note_hash_read_requests: BoundedVec::new(),\n nullifier_read_requests: BoundedVec::new(),\n nullifier_key_validation_requests: BoundedVec::new(),\n new_note_hashes: BoundedVec::new(),\n new_nullifiers: BoundedVec::new(),\n historical_header: inputs.historical_header,\n private_call_stack_hashes: BoundedVec::new(),\n public_call_stack_hashes: BoundedVec::new(),\n new_l2_to_l1_msgs: BoundedVec::new(),\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n // encrypted_logs_preimages: Vec::new(),\n // unencrypted_logs_preimages: Vec::new(),\n nullifier_key: Option::none()\n }\n }\n\n // Returns the header of an arbitrary block whose block number is less than or equal to the block number\n // of historical header.\n pub fn get_header_at(self, block_number: u32) -> Header {\n get_header_at(block_number, self)\n }\n\n pub fn finish(self) -> PrivateCircuitPublicInputs {\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n let encrypted_logs_hash = 0;\n let unencrypted_logs_hash = 0;\n let encrypted_log_preimages_length = 0;\n let unencrypted_log_preimages_length = 0;\n\n let priv_circuit_pub_inputs = PrivateCircuitPublicInputs {\n call_context: self.inputs.call_context,\n args_hash: self.args_hash,\n return_values: self.return_values.storage,\n min_revertible_side_effect_counter: self.min_revertible_side_effect_counter,\n max_block_number: self.max_block_number,\n note_hash_read_requests: self.note_hash_read_requests.storage,\n nullifier_read_requests: self.nullifier_read_requests.storage,\n nullifier_key_validation_requests: self.nullifier_key_validation_requests.storage,\n new_note_hashes: self.new_note_hashes.storage,\n new_nullifiers: self.new_nullifiers.storage,\n private_call_stack_hashes: self.private_call_stack_hashes.storage,\n public_call_stack_hashes: self.public_call_stack_hashes.storage,\n new_l2_to_l1_msgs: self.new_l2_to_l1_msgs.storage,\n start_side_effect_counter: self.inputs.start_side_effect_counter,\n end_side_effect_counter: self.side_effect_counter,\n encrypted_logs_hash,\n unencrypted_logs_hash,\n encrypted_log_preimages_length,\n unencrypted_log_preimages_length,\n historical_header: self.historical_header,\n chain_id: self.inputs.private_global_variables.chain_id,\n version: self.inputs.private_global_variables.version\n };\n priv_circuit_pub_inputs\n }\n\n pub fn capture_min_revertible_side_effect_counter(&mut self) {\n self.min_revertible_side_effect_counter = self.side_effect_counter;\n }\n\n // docs:start:max-block-number\n pub fn request_max_block_number(&mut self, max_block_number: u32) {\n // docs:end:max-block-number\n self.max_block_number = MaxBlockNumber::min_with_u32(self.max_block_number, max_block_number);\n }\n\n pub fn push_note_hash_read_request(&mut self, note_hash: Field) {\n let side_effect = SideEffect { value: note_hash, counter: self.side_effect_counter };\n self.note_hash_read_requests.push(side_effect);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n pub fn push_nullifier_read_request(&mut self, nullifier: Field) {\n let request = ReadRequest { value: nullifier, counter: self.side_effect_counter };\n self.nullifier_read_requests.push(request);\n self.side_effect_counter = self.side_effect_counter + 1;\n }\n\n pub fn request_nullifier_secret_key(&mut self, account: AztecAddress) -> GrumpkinPrivateKey {\n let key_pair = if self.nullifier_key.is_none() {\n let key_pair = get_nullifier_key_pair(account);\n validate_nullifier_key_against_address(account, key_pair.public_key);\n let request = NullifierKeyValidationRequest { public_key: key_pair.public_key, secret_key: key_pair.secret_key };\n self.nullifier_key_validation_requests.push(request);\n self.nullifier_key = Option::some(key_pair);\n key_pair\n } else {\n let key_pair = self.nullifier_key.unwrap_unchecked();\n // If MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL is larger than 1, need to update the way the key pair is cached.\n assert(MAX_NULLIFIER_KEY_VALIDATION_REQUESTS_PER_CALL == 1);\n assert(\n key_pair.account == account, \"Cannot query nullifier key for more than one account per call\"\n );\n key_pair\n };\n key_pair.secret_key\n }\n\n // docs:start:context_message_portal\n pub fn message_portal(&mut self, recipient: EthAddress, content: Field) {\n // docs:end:context_message_portal\n let message = L2ToL1Message { recipient, content };\n self.new_l2_to_l1_msgs.push(message);\n }\n\n // docs:start:context_consume_l1_to_l2_message\n // docs:start:consume_l1_to_l2_message\n pub fn consume_l1_to_l2_message(&mut self, content: Field, secret: Field, sender: EthAddress) {\n // docs:end:context_consume_l1_to_l2_message\n let nullifier = process_l1_to_l2_message(\n self.historical_header.state.l1_to_l2_message_tree.root,\n self.this_address(),\n sender,\n self.chain_id(),\n self.version(),\n content,\n secret\n );\n\n // Push nullifier (and the \"commitment\" corresponding to this can be \"empty\")\n self.push_new_nullifier(nullifier, 0)\n }\n // docs:end:consume_l1_to_l2_message\n\n pub fn accumulate_encrypted_logs<N>(&mut self, log: [Field; N]) {\n let _void1 = self.inputs;\n let _void2 = log;\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n }\n\n pub fn accumulate_unencrypted_logs<T>(&mut self, log: T) {\n let _void1 = self.inputs;\n let _void2 = log;\n // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1165)\n }\n\n pub fn call_private_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_private_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n pub fn static_call_private_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_private_function_with_packed_args(contract_address, function_selector, args_hash, true, false)\n }\n\n pub fn delegate_call_private_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_private_function_with_packed_args(contract_address, function_selector, args_hash, false, true)\n }\n\n pub fn call_private_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> [Field; RETURN_VALUES_LENGTH] {\n self.call_private_function_with_packed_args(contract_address, function_selector, 0, false, false)\n }\n\n pub fn static_call_private_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> [Field; RETURN_VALUES_LENGTH] {\n self.call_private_function_with_packed_args(contract_address, function_selector, 0, true, false)\n }\n\n pub fn delegate_call_private_function_no_args<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) -> [Field; RETURN_VALUES_LENGTH] {\n self.call_private_function_with_packed_args(contract_address, function_selector, 0, false, true)\n }\n\n pub fn call_private_function_with_packed_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n is_static_call: bool,\n is_delegate_call: bool\n ) -> [Field; RETURN_VALUES_LENGTH] {\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n let item = call_private_function_internal(\n contract_address,\n function_selector,\n args_hash,\n self.side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n assert_eq(item.public_inputs.call_context.side_effect_counter, self.side_effect_counter);\n assert_eq(item.public_inputs.start_side_effect_counter, self.side_effect_counter);\n self.side_effect_counter = item.public_inputs.end_side_effect_counter + 1;\n\n assert(contract_address.eq(item.contract_address));\n assert(function_selector.eq(item.function_data.selector));\n\n assert(args_hash == item.public_inputs.args_hash);\n\n // Assert that the call context of the enqueued call generated by the oracle matches our request.\n assert(item.public_inputs.call_context.is_delegate_call == is_delegate_call);\n assert(item.public_inputs.call_context.is_static_call == is_static_call);\n\n if (is_delegate_call) {\n // For delegate calls, we also constrain the execution context address for the nested call to be equal to our address.\n assert(\n item.public_inputs.call_context.storage_contract_address.eq(self.inputs.call_context.storage_contract_address)\n );\n assert(item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.msg_sender));\n } else {\n // For non-delegate calls, we also constrain the execution context address for the nested call to be equal to the address we called.\n assert(item.public_inputs.call_context.storage_contract_address.eq(contract_address));\n assert(\n item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.storage_contract_address)\n );\n }\n\n self.private_call_stack_hashes.push(item.hash());\n\n item.public_inputs.return_values\n }\n\n pub fn call_public_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, false)\n }\n\n pub fn static_call_public_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, true, false)\n }\n\n pub fn delegate_call_public_function<ARGS_COUNT>(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args: [Field; ARGS_COUNT]\n ) {\n let args_hash = hash_args_array(args);\n assert(args_hash == arguments::pack_arguments(args));\n self.call_public_function_with_packed_args(contract_address, function_selector, args_hash, false, true)\n }\n\n pub fn call_public_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) {\n self.call_public_function_with_packed_args(contract_address, function_selector, 0, false, false)\n }\n\n pub fn static_call_public_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) {\n self.call_public_function_with_packed_args(contract_address, function_selector, 0, true, false)\n }\n\n pub fn delegate_call_public_function_no_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector\n ) {\n self.call_public_function_with_packed_args(contract_address, function_selector, 0, false, true)\n }\n\n pub fn call_public_function_with_packed_args(\n &mut self,\n contract_address: AztecAddress,\n function_selector: FunctionSelector,\n args_hash: Field,\n is_static_call: bool,\n is_delegate_call: bool\n ) {\n let mut is_static_call = is_static_call | self.inputs.call_context.is_static_call;\n let fields = enqueue_public_function_call_internal(\n contract_address,\n function_selector,\n args_hash,\n self.side_effect_counter,\n is_static_call,\n is_delegate_call\n );\n\n let mut reader = Reader::new(fields);\n\n // Note: Not using PublicCirclePublicInputs::deserialize here, because everything below args_hash is 0 and\n // there is no more data in fields because there is only ENQUEUE_PUBLIC_FUNCTION_CALL_RETURN_SIZE fields!\n let item = PublicCallStackItem {\n contract_address: AztecAddress::from_field(reader.read()),\n function_data: reader.read_struct(FunctionData::deserialize),\n public_inputs: PublicCircuitPublicInputs {\n call_context: reader.read_struct(CallContext::deserialize),\n args_hash: reader.read(),\n return_values: [0; RETURN_VALUES_LENGTH],\n nullifier_read_requests: [ReadRequest::empty(); MAX_NULLIFIER_READ_REQUESTS_PER_CALL],\n nullifier_non_existent_read_requests: [ReadRequest::empty(); MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL],\n contract_storage_update_requests: [StorageUpdateRequest::empty(); MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL],\n contract_storage_reads: [StorageRead::empty(); MAX_PUBLIC_DATA_READS_PER_CALL],\n public_call_stack_hashes: [0; MAX_PUBLIC_CALL_STACK_LENGTH_PER_CALL],\n new_note_hashes: [SideEffect::empty(); MAX_NEW_NOTE_HASHES_PER_CALL],\n new_nullifiers: [SideEffectLinkedToNoteHash::empty(); MAX_NEW_NULLIFIERS_PER_CALL],\n new_l2_to_l1_msgs: [L2ToL1Message::empty(); MAX_NEW_L2_TO_L1_MSGS_PER_CALL],\n start_side_effect_counter: 0,\n end_side_effect_counter: 0,\n unencrypted_logs_hash: 0,\n unencrypted_log_preimages_length: 0,\n historical_header: Header::empty(),\n prover_address: AztecAddress::zero(),\n revert_code: 0\n },\n is_execution_request: true\n };\n reader.finish();\n\n assert(contract_address.eq(item.contract_address));\n assert(function_selector.eq(item.function_data.selector));\n\n assert_eq(item.public_inputs.call_context.side_effect_counter, self.side_effect_counter);\n // We increment the sideffect counter by one, to account for the call itself being a side effect.\n self.side_effect_counter = self.side_effect_counter + 1;\n\n assert(args_hash == item.public_inputs.args_hash);\n\n // Assert that the call context of the enqueued call generated by the oracle matches our request.\n assert(item.public_inputs.call_context.is_delegate_call == is_delegate_call);\n assert(item.public_inputs.call_context.is_static_call == is_static_call);\n\n if (is_delegate_call) {\n // For delegate calls, we also constrain the execution context address for the nested call to be equal to our address.\n assert(\n item.public_inputs.call_context.storage_contract_address.eq(self.inputs.call_context.storage_contract_address)\n );\n assert(item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.msg_sender));\n } else {\n // For non-delegate calls, we also constrain the execution context address for the nested call to be equal to the address we called.\n assert(item.public_inputs.call_context.storage_contract_address.eq(contract_address));\n assert(\n item.public_inputs.call_context.msg_sender.eq(self.inputs.call_context.storage_contract_address)\n );\n }\n\n self.public_call_stack_hashes.push(item.hash());\n }\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/context/private_context.nr"},"85":{"source":"use crate::context::{PrivateContext, PublicContext};\nuse crate::oracle;\nuse dep::protocol_types::{address::AztecAddress, grumpkin_point::GrumpkinPoint};\n\npub fn emit_encrypted_log<N>(\n context: &mut PrivateContext,\n contract_address: AztecAddress,\n storage_slot: Field,\n note_type_id: Field,\n encryption_pub_key: GrumpkinPoint,\n log: [Field; N]\n) {\n let _ = oracle::logs::emit_encrypted_log(\n contract_address,\n storage_slot,\n note_type_id,\n encryption_pub_key,\n log\n );\n context.accumulate_encrypted_logs(log);\n}\n\npub fn emit_unencrypted_log<T>(context: &mut PublicContext, log: T) {\n let contract_address = context.this_address();\n let event_selector = 5; // TODO: compute actual event selector.\n let _ = oracle::logs::emit_unencrypted_log(contract_address, event_selector, log);\n // context.accumulate_unencrypted_logs(log);\n}\n\n// TODO: We might want to remove this since emitting unencrypted logs from private functions is violating privacy.\n// --> might be a better approach to force devs to make a public function call that emits the log if needed then\n// it would be less easy to accidentally leak information.\n// If we decide to keep this function around would make sense to wait for traits and then merge it with emit_unencrypted_log.\npub fn emit_unencrypted_log_from_private<T>(context: &mut PrivateContext, log: T) {\n let contract_address = context.this_address();\n let event_selector = 5; // TODO: compute actual event selector.\n let _ = oracle::logs::emit_unencrypted_log(contract_address, event_selector, log);\n // context.accumulate_unencrypted_logs(log);\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/log.nr"},"96":{"source":"// Utility function to console.log data in the acir simulator\n// WARNING: sometimes when using debug logs the ACVM errors with: `thrown: \"solver opcode resolution error: cannot solve opcode: expression has too many unknowns x155\"`\n\n#[oracle(debugLog)]\nfn debug_log_oracle<T, N>(_msg: T, _num_args: Field) -> Field {}\n#[oracle(debugLog)]\nfn debug_log_format_oracle<T, N>(_msg: T, _args: [Field; N], _num_args: Field) -> Field {}\n#[oracle(debugLog)]\nfn debug_log_field_oracle(_field: Field) -> Field {}\n#[oracle(debugLog)]\nfn debug_log_array_oracle<T, N>(_arbitrary_array: [T; N]) -> Field {}\n#[oracle(debugLogWithPrefix)]\nfn debug_log_array_with_prefix_oracle<S, T, N>(_prefix: S, _arbitrary_array: [T; N]) -> Field {}\n\n/// NOTE: call this with a str<N> msg of length > 1\n/// Example:\n/// `debug_log(\"blah blah this is a debug string\");`\nunconstrained pub fn debug_log<T>(msg: T) {\n assert(debug_log_oracle(msg, 0) == 0);\n}\n\n/// NOTE: call this with a str<N> msg of form\n/// \"some string with {0} and {1} ... {N}\"\n/// and an array of N field which will be formatted\n/// into the string in the simulator.\n/// Example:\n/// debug_log_format(\"get_2(slot:{0}) =>\\n\\t0:{1}\\n\\t1:{2}\", [storage_slot, note0_hash, note1_hash]);\nunconstrained pub fn debug_log_format<T, N>(msg: T, args: [Field; N]) {\n assert(debug_log_format_oracle(msg, args, args.len() as Field) == 0);\n}\n\n/// Example:\n/// `debug_log_field(my_field);`\nunconstrained pub fn debug_log_field(field: Field) {\n assert(debug_log_field_oracle(field) == 0);\n}\n\n/// Example:\n/// `debug_log_array(my_array);`\nunconstrained fn debug_log_array<T, N>(arbitrary_array: [T; N]) {\n assert(debug_log_array_oracle(arbitrary_array) == 0);\n}\n\n/// Example:\n/// `debug_log_array_with_prefix(\"Prefix\", my_array);`\nunconstrained pub fn debug_log_array_with_prefix<S, T, N>(prefix: S, arbitrary_array: [T; N]) {\n assert(debug_log_array_with_prefix_oracle(prefix, arbitrary_array) == 0);\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/debug_log.nr"},"105":{"source":"use dep::protocol_types::{address::AztecAddress, grumpkin_point::GrumpkinPoint};\n\n// TODO: Should take encrypted data.\n#[oracle(emitEncryptedLog)]\nfn emit_encrypted_log_oracle<N>(\n _contract_address: AztecAddress,\n _storage_slot: Field,\n _note_type_id: Field,\n _encryption_pub_key: GrumpkinPoint,\n _preimage: [Field; N]\n) -> Field {}\n\nunconstrained pub fn emit_encrypted_log<N>(\n contract_address: AztecAddress,\n storage_slot: Field,\n note_type_id: Field,\n encryption_pub_key: GrumpkinPoint,\n preimage: [Field; N]\n) -> Field {\n emit_encrypted_log_oracle(\n contract_address,\n storage_slot,\n note_type_id,\n encryption_pub_key,\n preimage\n )\n}\n\n#[oracle(emitUnencryptedLog)]\nfn emit_unencrypted_log_oracle<T>(\n _contract_address: AztecAddress,\n _event_selector: Field,\n _message: T\n) -> Field {}\n\nunconstrained pub fn emit_unencrypted_log<T>(\n contract_address: AztecAddress,\n event_selector: Field,\n message: T\n) -> Field {\n // https://github.com/AztecProtocol/aztec-packages/issues/885\n emit_unencrypted_log_oracle(contract_address, event_selector, message)\n}\n","path":"/usr/src/noir-projects/aztec-nr/aztec/src/oracle/logs.nr"},"147":{"source":"use crate::{\n crate::address::{eth_address::EthAddress, partial_address::PartialAddress, public_keys_hash::PublicKeysHash},\n constants::{AZTEC_ADDRESS_LENGTH, GENERATOR_INDEX__CONTRACT_ADDRESS},\n contract_class_id::ContractClassId, hash::pedersen_hash, grumpkin_point::GrumpkinPoint,\n traits::{Empty, ToField, Serialize, Deserialize}, utils\n};\n\n// Aztec address\nstruct AztecAddress {\n inner : Field\n}\n\nimpl Eq for AztecAddress {\n fn eq(self, other : Self) -> bool {\n self.to_field() == other.to_field()\n }\n}\n\nimpl Empty for AztecAddress {\n fn empty() -> Self {\n Self {\n inner : 0\n }\n }\n}\n\nimpl ToField for AztecAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl Serialize<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn serialize(self: Self) -> [Field; AZTEC_ADDRESS_LENGTH] {\n [self.to_field()]\n }\n}\n\nimpl Deserialize<AZTEC_ADDRESS_LENGTH> for AztecAddress {\n fn deserialize(fields: [Field; AZTEC_ADDRESS_LENGTH]) -> Self {\n AztecAddress::from_field(fields[0])\n }\n}\n\nimpl AztecAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n pub fn from_field(field: Field) -> Self {\n Self { inner: field }\n }\n\n pub fn compute_from_public_key(\n pub_key: GrumpkinPoint,\n contract_class_id: ContractClassId,\n salt: Field,\n initialization_hash: Field,\n portal_contract_address: EthAddress,\n deployer: AztecAddress\n ) -> AztecAddress {\n AztecAddress::compute(\n PublicKeysHash::compute(pub_key),\n PartialAddress::compute(\n contract_class_id,\n salt,\n initialization_hash,\n portal_contract_address,\n deployer\n )\n )\n }\n\n pub fn compute(pub_keys_hash: PublicKeysHash, partial_address: PartialAddress) -> AztecAddress {\n AztecAddress::from_field(\n pedersen_hash(\n [pub_keys_hash.to_field(), partial_address.to_field()],\n GENERATOR_INDEX__CONTRACT_ADDRESS\n )\n )\n }\n\n pub fn is_zero(self) -> bool {\n self.inner == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n\n pub fn conditional_assign(predicate: bool, lhs: Self, rhs: Self) -> Self {\n let result = utils::conditional_assign(predicate, rhs.to_field(), lhs.to_field());\n Self { inner: result }\n }\n}\n\n#[test]\nfn compute_address() {\n let point = GrumpkinPoint { x: 1, y: 2 };\n let contract_address_salt = 3;\n let contract_class_id = ContractClassId::from_field(4);\n let initialization_hash = 5;\n let portal_contract_address = EthAddress::from_field(6);\n let deployer = AztecAddress::from_field(7);\n\n let address = AztecAddress::compute_from_public_key(\n point,\n contract_class_id,\n contract_address_salt,\n initialization_hash,\n portal_contract_address,\n deployer\n );\n\n let expected_computed_address_from_preimage = 0x027ea2b41ced2ec9a98305984e96dd28518536a4628883ccdc06e38aa8997220;\n assert(address.to_field() == expected_computed_address_from_preimage);\n}\n\n#[test]\nfn compute_address_from_partial_and_pubkey() {\n let point = GrumpkinPoint { x: 1, y: 2 };\n let partial_address = PartialAddress::from_field(3);\n\n let address = AztecAddress::compute(PublicKeysHash::compute(point), partial_address);\n let expected_computed_address_from_partial_and_pubkey = 0x0447f893197175723deb223696e2e96dbba1e707ee8507766373558877e74197;\n assert(address.to_field() == expected_computed_address_from_partial_and_pubkey);\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr"},"152":{"source":"use dep::std::cmp::Eq;\n\n// Trait: is_empty\n//\n// The general is_empty trait checks if a data type is is empty,\n// and it defines empty for the basic data types as 0.\n//\n// If a Field is equal to zero, then it is regarded as zero.\n// We will go with this definition for now, however it can be problematic \n// if a value can actually be zero. In a future refactor, we can \n// use the optional type for safety. Doing it now would lead to a worse devex\n// and would make it harder to sync up with the cpp code.\n// Preferred over Default trait to convey intent, as default doesn't necessarily mean empty.\ntrait Empty {\n fn empty() -> Self;\n}\n\nimpl Empty for Field { fn empty() -> Self {0} }\n\nimpl Empty for u1 { fn empty() -> Self {0} }\nimpl Empty for u8 { fn empty() -> Self {0} }\nimpl Empty for u32 { fn empty() -> Self {0} }\nimpl Empty for u64 { fn empty() -> Self {0} }\nimpl Empty for U128 { fn empty() -> Self {U128::from_integer(0)} }\n\npub fn is_empty<T>(item: T) -> bool where T: Empty + Eq {\n item.eq(T::empty())\n}\n\npub fn is_empty_array<T, N>(array: [T; N]) -> bool where T: Empty + Eq {\n array.all(|elem| is_empty(elem))\n}\n\ntrait Hash {\n fn hash(self) -> Field;\n}\n\ntrait ToField {\n fn to_field(self) -> Field;\n}\n\nimpl ToField for Field {\n fn to_field(self) -> Field {\n self\n }\n}\n\nimpl ToField for bool { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u1 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u8 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u32 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for u64 { fn to_field(self) -> Field { self as Field } }\nimpl ToField for U128 {\n fn to_field(self) -> Field {\n self.to_integer()\n }\n}\n\ntrait FromField {\n fn from_field(value: Field) -> Self;\n}\n\nimpl FromField for Field {\n fn from_field(value: Field) -> Self {\n value\n }\n}\n\nimpl FromField for bool { fn from_field(value: Field) -> Self { value as bool } }\nimpl FromField for u1 { fn from_field(value: Field) -> Self { value as u1 } }\nimpl FromField for u8 { fn from_field(value: Field) -> Self { value as u8 } }\nimpl FromField for u32 { fn from_field(value: Field) -> Self { value as u32 } }\nimpl FromField for u64 { fn from_field(value: Field) -> Self { value as u64 } }\nimpl FromField for U128 {\n fn from_field(value: Field) -> Self {\n U128::from_integer(value)\n }\n}\n\n// docs:start:serialize\ntrait Serialize<N> {\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\n// docs:start:deserialize\ntrait Deserialize<N> {\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr"},"202":{"source":"use crate::address::{AztecAddress, EthAddress};\nuse crate::mocked::VerificationKey;\nuse crate::abis::function_selector::FunctionSelector;\nuse crate::abis::contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage;\nuse crate::contract_class_id::ContractClassId;\nuse crate::abis::side_effect::SideEffect;\nuse crate::utils::{uint256::U256, field::field_from_bytes_32_trunc};\nuse crate::constants::{\n ARGS_HASH_CHUNK_COUNT, ARGS_HASH_CHUNK_LENGTH, MAX_ARGS_LENGTH, FUNCTION_TREE_HEIGHT,\n GENERATOR_INDEX__SILOED_NOTE_HASH, GENERATOR_INDEX__OUTER_NULLIFIER, GENERATOR_INDEX__VK,\n GENERATOR_INDEX__CONSTRUCTOR, GENERATOR_INDEX__PARTIAL_ADDRESS, GENERATOR_INDEX__CONTRACT_ADDRESS,\n GENERATOR_INDEX__NOTE_HASH_NONCE, GENERATOR_INDEX__UNIQUE_NOTE_HASH, GENERATOR_INDEX__FUNCTION_ARGS\n};\nuse crate::messaging::l2_to_l1_message::L2ToL1Message;\nuse crate::merkle_tree::root::root_from_sibling_path;\n\nuse dep::std::hash::{pedersen_hash_with_separator, sha256};\n\npub fn sha256_to_field<N>(bytes_to_hash: [u8; N]) -> Field {\n let sha256_hashed = sha256(bytes_to_hash);\n let hash_in_a_field = field_from_bytes_32_trunc(sha256_hashed);\n\n hash_in_a_field\n}\n\npub fn hash_args_array<N>(args: [Field; N]) -> Field {\n let mut args_vec = BoundedVec::new();\n args_vec.extend_from_array(args);\n hash_args(args_vec)\n}\n\npub fn hash_args(args: BoundedVec<Field, MAX_ARGS_LENGTH>) -> Field {\n if args.len() == 0 {\n 0\n } else {\n let mut chunks_hashes = [0; ARGS_HASH_CHUNK_COUNT];\n for i in 0..ARGS_HASH_CHUNK_COUNT {\n let mut chunk_hash = 0;\n let start_chunk_index = i * ARGS_HASH_CHUNK_LENGTH;\n if start_chunk_index < args.len() {\n let mut chunk_args = [0; ARGS_HASH_CHUNK_LENGTH];\n for j in 0..ARGS_HASH_CHUNK_LENGTH {\n let item_index = i * ARGS_HASH_CHUNK_LENGTH + j;\n if item_index < args.len() {\n chunk_args[j] = args.get_unchecked(item_index);\n }\n }\n chunk_hash = pedersen_hash(chunk_args, GENERATOR_INDEX__FUNCTION_ARGS);\n }\n chunks_hashes[i] = chunk_hash;\n }\n pedersen_hash(chunks_hashes, GENERATOR_INDEX__FUNCTION_ARGS)\n }\n}\n\npub fn private_functions_root_from_siblings(\n selector: FunctionSelector,\n vk_hash: Field,\n function_leaf_index: Field,\n function_leaf_sibling_path: [Field; FUNCTION_TREE_HEIGHT]\n) -> Field {\n let function_leaf_preimage = ContractClassFunctionLeafPreimage { selector, vk_hash };\n let function_leaf = function_leaf_preimage.hash();\n root_from_sibling_path(function_leaf, function_leaf_index, function_leaf_sibling_path)\n}\n\npub fn silo_note_hash(address: AztecAddress, inner_commitment: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n inner_commitment\n ],\n GENERATOR_INDEX__SILOED_NOTE_HASH\n )\n}\n\npub fn silo_nullifier(address: AztecAddress, nullifier: Field) -> Field {\n pedersen_hash(\n [\n address.to_field(),\n nullifier\n ],\n GENERATOR_INDEX__OUTER_NULLIFIER\n )\n}\n\npub fn merkle_hash(left: Field, right: Field) -> Field {\n pedersen_hash([left, right], 0)\n}\n\npub fn stdlib_recursion_verification_key_compress_native_vk(_vk: VerificationKey) -> Field {\n // Original cpp code\n // stdlib::recursion::verification_key<CT::bn254>::compress_native(private_call.vk, GeneratorIndex::VK);\n // The above cpp method is only ever called on verification key, so it has been special cased here\n let _hash_index = GENERATOR_INDEX__VK;\n 0\n}\n\npub fn compute_l2_to_l1_hash(\n contract_address: AztecAddress,\n rollup_version_id: Field,\n chain_id: Field,\n message: L2ToL1Message\n) -> Field {\n let mut bytes: BoundedVec<u8, 160> = BoundedVec::new();\n\n let inputs = [\n contract_address.to_field(), rollup_version_id, message.recipient.to_field(), chain_id, message.content\n ];\n for i in 0..inputs.len() {\n // TODO are bytes be in fr.to_buffer() ?\n let item_bytes = inputs[i].to_be_bytes(32);\n for j in 0..32 {\n bytes.push(item_bytes[j]);\n }\n }\n\n sha256_to_field(bytes.storage)\n}\n\n// Computes sha256 hash of 2 input hashes.\n//\n// NB: This method now takes in two 31 byte fields - it assumes that any input\n// is the result of a sha_to_field hash and => is truncated\n//\n// TODO(Jan and David): This is used for the encrypted_log hashes.\n// Can we check to see if we can just use hash_to_field or pedersen_compress here?\n//\npub fn accumulate_sha256(input: [Field; 2]) -> Field {\n // This is a note about the cpp code, since it takes an array of Fields\n // instead of a U128.\n // 4 Field elements when converted to bytes will usually \n // occupy 4 * 32 = 128 bytes.\n // However, this function is making the assumption that each Field \n // only occupies 128 bits.\n //\n // TODO(David): This does not seem to be getting guaranteed anywhere in the code?\n\n // Concatentate two fields into 32x2 = 64 bytes\n // accumulate_sha256 assumes that the inputs are pre-truncated 31 byte numbers\n let mut hash_input_flattened = [0; 64];\n for offset in 0..input.len() {\n let input_as_bytes = input[offset].to_be_bytes(32);\n for byte_index in 0..32 {\n hash_input_flattened[offset * 32 + byte_index] = input_as_bytes[byte_index];\n }\n }\n\n sha256_to_field(hash_input_flattened)\n}\n\npub fn compute_logs_hash(previous_log_hash: Field, current_log_hash: Field) -> Field {\n accumulate_sha256(\n [\n previous_log_hash,\n current_log_hash\n ]\n )\n}\n\npub fn compute_note_hash_nonce(first_nullifier: Field, commitment_index: u64) -> Field {\n pedersen_hash(\n [\n first_nullifier,\n commitment_index as Field\n ],\n GENERATOR_INDEX__NOTE_HASH_NONCE\n )\n}\n\npub fn compute_unique_siloed_note_hash(nonce: Field, siloed_note_hash: Field) -> Field {\n pedersen_hash(\n [\n nonce,\n siloed_note_hash\n ],\n GENERATOR_INDEX__UNIQUE_NOTE_HASH\n )\n}\n\npub fn compute_unique_siloed_note_hashes<N>(\n first_nullifier: Field,\n siloed_note_hashes: [SideEffect; N]\n) -> [SideEffect; N] {\n let mut unique_siloed_note_hashes = [SideEffect::empty(); N];\n for i in 0..N {\n let siloed_note_hash = siloed_note_hashes[i];\n if siloed_note_hash.value != 0 {\n let nonce = compute_note_hash_nonce(first_nullifier, i);\n unique_siloed_note_hashes[i] = SideEffect {\n value: compute_unique_siloed_note_hash(nonce, siloed_note_hash.value),\n counter: siloed_note_hash.counter\n };\n }\n }\n unique_siloed_note_hashes\n}\n\npub fn pedersen_hash<N>(inputs: [Field; N], hash_index: u32) -> Field {\n dep::std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\n#[test]\nfn smoke_sha256_to_field() {\n let full_buffer = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,\n 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,\n 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,\n 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,\n 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,\n 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,\n 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,\n 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159\n ];\n let result = sha256_to_field(full_buffer);\n\n assert(result == 0x448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184c7);\n\n // to show correctness of the current ver (truncate one byte) vs old ver (mod full bytes):\n let result_bytes = sha256(full_buffer);\n let truncated_field = crate::utils::field::field_from_bytes_32_trunc(result_bytes);\n assert(truncated_field == result);\n let mod_res = result + (result_bytes[31] as Field);\n assert(mod_res == 0x448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184e0);\n}\n\n#[test]\nfn compute_var_args_hash() {\n let mut input = BoundedVec::new();\n for i in 0..800 {\n input.push(i as Field);\n }\n let hash = hash_args(input);\n assert(hash == 0x05a1023fef839ac88731f49ae983e172c1b600a3c8f3393ad0ac25d819ac0f0f);\n}\n\n#[test]\nfn compute_l2_l1_hash() {\n // All zeroes\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(0), 0, 0, L2ToL1Message::empty());\n assert(hash_result == 0xb393978842a0fa3d3e1470196f098f473f9678e72463cb65ec4ab5581856c2);\n\n // Non-zero case\n let message = L2ToL1Message { recipient: EthAddress::from_field(3), content: 5 };\n let hash_result = compute_l2_to_l1_hash(AztecAddress::from_field(1), 2, 4, message);\n assert(hash_result == 0x3f88c1044a05e5340ed20466276500f6d45ca5603913b9091e957161734e16);\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr"},"206":{"source":"use crate::constants::{GENERATOR_INDEX__CONTRACT_LEAF};\nuse crate::traits::{ToField, FromField, Hash, Serialize, Deserialize};\n\nstruct ContractClassId {\n inner: Field\n}\n\nimpl Eq for ContractClassId {\n fn eq(self, other: ContractClassId) -> bool {\n other.inner == self.inner\n }\n}\n\nimpl ToField for ContractClassId {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl FromField for ContractClassId {\n fn from_field(value: Field) -> Self {\n Self { inner: value }\n }\n}\n\nimpl Serialize<1> for ContractClassId {\n fn serialize(self: Self) -> [Field; 1] {\n [self.inner]\n }\n}\n\nimpl Deserialize<1> for ContractClassId {\n fn deserialize(fields: [Field; 1]) -> Self {\n Self { inner: fields[0] }\n }\n}\n\nimpl ContractClassId {\n pub fn compute(\n artifact_hash: Field,\n private_functions_root: Field,\n public_bytecode_commitment: Field\n ) -> Self {\n let hash = dep::std::hash::pedersen_hash_with_separator(\n [\n artifact_hash,\n private_functions_root,\n public_bytecode_commitment\n ],\n GENERATOR_INDEX__CONTRACT_LEAF\n ); // TODO(@spalladino): Update generator index\n\n ContractClassId::from_field(hash)\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n","path":"/usr/src/noir-projects/noir-protocol-circuits/crates/types/src/contract_class_id.nr"},"249":{"source":"// Copied from noir-contracts/contracts/slow_tree_contract/src/capsule.nr\n// We should extract this to a shared lib in aztec-nr once we settle on a design for capsules\n\n#[oracle(popCapsule)]\nfn pop_capsule_oracle<N>() -> [Field; N] {}\n\n// A capsule is a \"blob\" of data that is passed to the contract through an oracle.\nunconstrained pub fn pop_capsule<N>() -> [Field; N] {\n pop_capsule_oracle()\n}\n","path":"/usr/src/noir-projects/noir-contracts/contracts/contract_class_registerer_contract/src/capsule.nr"},"251":{"source":"mod events;\nmod capsule;\n\ncontract ContractClassRegisterer {\n use dep::aztec::prelude::{AztecAddress, EthAddress, FunctionSelector, emit_unencrypted_log};\n use dep::aztec::protocol_types::{\n contract_class_id::ContractClassId,\n constants::{\n ARTIFACT_FUNCTION_TREE_MAX_HEIGHT, FUNCTION_TREE_HEIGHT,\n MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS, REGISTERER_CONTRACT_CLASS_REGISTERED_MAGIC_VALUE\n },\n traits::Serialize\n };\n\n use dep::aztec::log::emit_unencrypted_log_from_private;\n\n use crate::events::{\n class_registered::ContractClassRegistered,\n private_function_broadcasted::{ClassPrivateFunctionBroadcasted, PrivateFunction},\n unconstrained_function_broadcasted::{ClassUnconstrainedFunctionBroadcasted, UnconstrainedFunction}\n };\n\n use crate::capsule::pop_capsule;\n\n #[aztec(private)]\n fn register(artifact_hash: Field, private_functions_root: Field, public_bytecode_commitment: Field) {\n // TODO: Validate public_bytecode_commitment is the correct commitment of packed_public_bytecode\n // TODO: Validate packed_public_bytecode is legit public bytecode\n\n let packed_public_bytecode: [Field; MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS] = pop_capsule();\n\n // Compute contract class id from preimage\n let contract_class_id = ContractClassId::compute(\n artifact_hash,\n private_functions_root,\n public_bytecode_commitment\n );\n\n // Emit the contract class id as a nullifier to be able to prove that this class has been (not) registered\n let event = ContractClassRegistered { contract_class_id, version: 1, artifact_hash, private_functions_root, packed_public_bytecode };\n context.push_new_nullifier(contract_class_id.to_field(), 0);\n\n // Broadcast class info including public bytecode\n dep::aztec::oracle::debug_log::debug_log_array_with_prefix(\n \"ContractClassRegistered\",\n [\n contract_class_id.to_field(),\n artifact_hash,\n private_functions_root,\n public_bytecode_commitment\n ]\n );\n emit_unencrypted_log_from_private(&mut context, event.serialize());\n }\n\n #[aztec(private)]\n fn broadcast_private_function(\n contract_class_id: ContractClassId,\n artifact_metadata_hash: Field,\n unconstrained_functions_artifact_tree_root: Field,\n private_function_tree_sibling_path: [Field; FUNCTION_TREE_HEIGHT],\n private_function_tree_leaf_index: Field,\n artifact_function_tree_sibling_path: [Field; ARTIFACT_FUNCTION_TREE_MAX_HEIGHT],\n artifact_function_tree_leaf_index: Field,\n function_data: PrivateFunction\n ) {\n let event = ClassPrivateFunctionBroadcasted {\n contract_class_id,\n artifact_metadata_hash,\n unconstrained_functions_artifact_tree_root,\n private_function_tree_sibling_path,\n private_function_tree_leaf_index,\n artifact_function_tree_sibling_path,\n artifact_function_tree_leaf_index,\n function: function_data\n };\n dep::aztec::oracle::debug_log::debug_log_array_with_prefix(\n \"ClassPrivateFunctionBroadcasted\",\n [\n contract_class_id.to_field(),\n artifact_metadata_hash,\n unconstrained_functions_artifact_tree_root,\n function_data.selector.to_field(),\n function_data.vk_hash,\n function_data.metadata_hash\n ]\n );\n emit_unencrypted_log_from_private(&mut context, event.serialize());\n }\n\n #[aztec(private)]\n fn broadcast_unconstrained_function(\n contract_class_id: ContractClassId,\n artifact_metadata_hash: Field,\n private_functions_artifact_tree_root: Field,\n artifact_function_tree_sibling_path: [Field; ARTIFACT_FUNCTION_TREE_MAX_HEIGHT],\n artifact_function_tree_leaf_index: Field,\n function_data: UnconstrainedFunction\n ) {\n let event = ClassUnconstrainedFunctionBroadcasted {\n contract_class_id,\n artifact_metadata_hash,\n private_functions_artifact_tree_root,\n artifact_function_tree_sibling_path,\n artifact_function_tree_leaf_index,\n function: function_data\n };\n dep::aztec::oracle::debug_log::debug_log_array_with_prefix(\n \"ClassUnconstrainedFunctionBroadcasted\",\n [\n contract_class_id.to_field(),\n artifact_metadata_hash,\n private_functions_artifact_tree_root,\n function_data.selector.to_field(),\n function_data.metadata_hash\n ]\n );\n emit_unencrypted_log_from_private(&mut context, event.serialize());\n }\n}\n","path":"/usr/src/noir-projects/noir-contracts/contracts/contract_class_registerer_contract/src/main.nr"}}}